Вы находитесь на странице: 1из 54

Codificadores VoIP y Ancho de Banda

Anlisis Preliminar. Los codificadores VOIP utilizados hoy en da son de tasa de datos constante, lo cual da lugar a un trfico que posee dos caractersticas bien definidas: Tasa de paquetes (Pr) constante. Tamao de paquete (Pl) fijo.

Por tanto, un mtodo prctico de calcular el ancho de banda en el sistema una vez obtenidos los parmetros anteriores sera simplemente multiplicar los mismos, o sea: BW=(Pr)(Pl). Entonces, para el clculo del ancho de banda en VOIP, nos enfocaramos primeramente en encontrar dichos parmetros.

Modelo de codificacin y paquetizacin. Para hacer un anlisis concreto se ha hecho un diagrama en bloques del telfono IP o Gateway.

Existen parmetros que son propios a cada codificador. El primero es simplemente el factor de compresin (Cr), esto es, la tasa de entrada divida por la tasa de salida. Por ejemplo, como la tasa de entrada siempre se considera 64kbps, si la tasa de datos de la voz codificada (DRc) es 8kpbs, entonces Cr ser 8, si es 6.4kbps, ser 10. Cuando se codifica la seal digital entrante, se la almacena durante un tiempo y cuando se recolecto la informacin suficiente, se la comprime. Esto da lugar a rfagas de datos comprimidos a la salida del codificador. A este tiempo de duracin entre rfagas se lo llama tamao de trama (Tt) y se mide en unidades de tiempo (normalmente milisegundos). La salida del codificador tendr una longitud en bytes dependiente del tamao de la trama que la llamamos longitud de trama (Lt).

Por tanto, del codificador salen tramas de longitud (Lt) y duracin (Tt) que entran al paquetizador. Lo que hace este ltimo bloque es simplemente acumular N tramas y colocarlas sobre un paquete IP. Podramos atribuirle a este bloque la funcin de agregar el nivel 2 tambin. Entonces a toda esta informacin que agrega el paquetizador la llamamos encabezado (H).

Para calcular entonces el tamao total del paquete habr que sumar el encabezado H, ms la longitud de trama (Lt) multiplicada por la cantidad de tramas por paquete (N), o sea: Pl=H+(Lt)(N)

Ahora nos falta calcular la tasa de paquetes, pero esto es muy simple ya que el codificador saca 1 trama cada Tt segundos, pero el paquetizador acumula N tramas y luego agrega H y las saca. Por lo que sacar 1 paquete cada N.Tt segundos, lo que da una tasa de 1/(N.Tt), o sea: Pr(paquetes/segundo)=1/(NxTt)

Finalmente entonces, la ecuacin del ancho de banda (BW) no es otra cosa que la multiplicacin del tamao total del paquete (Pl) pasado a bits y la tasa de paquetes (Pr), por tanto:
BW=DR(bps)=(Pl)(Pr)(8 bits/byte)

Funcionamiento bsico de los codificadores de audio para VoIP.

Como podemos observar en las figura, la mayora de los codificadores presentan tres parmetros bsicos, los cuales son: 1. El tiempo de trama (Tt). 2. El retardo de look-ahead (Tla). 3. El tiempo de procesamiento (Tproc). A ste tipo de codificadores se los denomina basados en tramas, no todos los codificadores funcionan exactamente de esta forma pero si muchos de los ms importantes como el G.711, G.723 y el G.729.

Ntese en el diagrama, que a la entrada del codificador tenemos una cantidad de informacin (TRAMA 1 por ejemplo) que requiere ser codificada y transmitida. La informacin en TRAMA 1, correspondera a (Tt) milisegundos de voz y a M bytes de longitud. La longitud M saldra simplemente de multiplicar 8000 muestras (bytes) por segundo por el tiempo de trama (Tt). Luego de comprimirse la informacin, la salida ser TRAMA 1c que contendr la informacin de audio correspondiente a (Tt) milisegundos pero una longitud en bytes (Lt) que ser M/(Cr), donde (Cr) es el factor de compresin.

Se puede observar tambin que a pesar de que la informacin de voz corresponde a (Tt) milisegundos, para empezar la compresin se necesitan (Tt + Tla) milisegundos. Esto se debe al funcionamiento de los algoritmos que se utilizan para realizar el clculo. Estos algoritmos precisan conocer muestras del futuro para estimar mejor la seal de audio y poder as lograr una compresin mayor. A esta informacin ms all del Tt se la conoce como retardo de "look-ahead" y su valor depende especficamente de cada codificador. Una vez tomados milisegundos de informacin de voz a la entrada del codificador, comienza la compresin. La compresin tiene un tiempo de procesamiento que depender del procesador utilizado y de la complejidad del algoritmo. A ese tiempo lo llamamos tiempo de procesamiento Tproc.

En sntesis, el retardo inicial desde que entra el primer bit sin comprimir hasta que sale del codificador transcurren (Tt+Tla+Tproc), el espaciamiento entre tramas y la duracin de la informacin de audio contenida en cada trama es (Tt), y se necesitan (Tt+Tla) milisegundos a la entrada para poder comenzar a realizar la compresin en este tipo de codificadores.

En la siguiente tabla podemos encontrar los codificadores ms utilizados actualmente y sus principales caractersticas:

Clculo de la longitud del paquete.

La voz corre sobre RTP, que corre sobre UDP que corre sobre IP. Estos protocolos estn siempre en una comunicacin de VoIP. En cambio el protocolo de nivel 2 puede ser cualquiera que pueda transportar IP. Empecemos por los protocolos ms simples en lo que refiere a tamao. En UDP el tamao del encabezado es de 8 bytes como se muestra en la figura. En cuanto a IP el encabezado en la mayora de los casos es de 20 bytes, pero podra crecer hasta 60 bytes. En cuanto al RTP tiene tamao variable tambin aunque siempre que no haya mezcla de audio, esto es, una conferencia, el tamao ser de 12 bytes.

Como se muestra en la figura, cada fila posee 32 bits (4 bytes), y los campos en negro son los que se transmitirn normalmente. El campo SSRC es el que identifica a la fuente de audio. En el caso de conferencias el tamao ser de stos 12 bytes + 4 bytes por cada fuente contribuyente. Es decir, cuando un dispositivo mezcla rfagas de audio, el dispositivo que mezcla est identificado por el SSRC mientras que las rfagas de audio que recibe el mezclador con un determinado SSRC son identificadas por el CSRC que posee 4 bytes. La cantidad de fuentes de audio mezcladas est indicada con el contador de contribuyentes (CC). Cuando no se mezcla audio el CC va en cero.

La voz codificada posee un tamao que depende del codificador, y se calcula como (Lt)(N), donde Lt es:

N es la cantidad de tramas por paquete.

En la siguiente tabla mostramos los parmetros y resultados del clculo de ancho de banda para distintos codificadores y distintos tamaos de trama:

Ancho de banda, retardo y tasa de error.


La disminucin del ancho de banda en el sistema tiene como costo el aumento de retardo y el aumento en la tasa de error. En la siguiente tabla se muestra el aumento de retardo en funcin del aumento de N (cantidad de tramas por paquete), y la disminucin del ancho de banda.

Ntese que a menor ancho de banda, mayor retardo. El retardo en esta tabla es solo el Tt multiplicado por N, a este habra que sumar 5ms ms de lookahead, como mximo 10ms ms de procesamiento, el retardo en la red, y el retardo de decodificacin que est asociado a la configuracin del jitter buffer que suele estar en el orden de los 20ms. A partir de los 100-150ms la percepcin de la calidad de la voz en comunicaciones interactivas empieza a disminuir notablemente con lo que no se recomendara en este caso, elegir un valor de N superior a 5.

Clculo de la longitud del encabezado de nivel 3. IPv4 encapsula o empaqueta el datagrama o segmento de la capa de Transporte para que la red pueda entregarlo a su host de destino. La encapsulacin de IPv4 permanece en su lugar desde el momento en que el paquete deja la capa de Red del host de origen hasta que llega a la capa de Red del host de destino.

El proceso de encapsular datos por capas permite que los servicios en las diferentes capas se desarrollen y escalen sin afectar otras capas. Esto significa que los segmentos de la capa de Transporte pueden ser empaquetados fcilmente por los protocolos de la capa de Red existentes, como IPv4 e IPv6, o por cualquier protocolo nuevo que pueda desarrollarse en el futuro.

En todos los casos, la porcin de datos del paquete, es decir, el PDU de la Capa de transporte encapsulada, permanece sin cambios durante los procesos de la capa de red.

Un protocolo IPv4 define muchos campos diferentes en el encabezado del paquete. Estos campos contienen valores binarios que los servicios IPv4 toman como referencia a medida que envan paquetes a travs de la red. Se considerarn estos 6 campos clave: Direccin IP origen, Direccin IP destino, Tiempo de existencia (TTL), Tipo de servicio (ToS), Protocolo, y Desplazamiento del fragmento.

Direccin IP destino. El campo de Direccin IP destino contiene un valor binario de 32 bits que representa la direccin de host de capa de red de destino del paquete. Direccin IP origen. El campo de Direccin IP origen contiene un valor binario de 32 bits que representa la direccin de host de capa de red de origen del paquete. Protocolo. Este valor binario de 8 bits indica el tipo de relleno de carga que el paquete traslada. El campo de protocolo permite a la Capa de red pasar los datos al protocolo apropiado de la capa superior.

Tiempo de vida. El tiempo de vida (TTL) es un valor binario de 8 bits que indica el tiempo remanente de "vida" del paquete. El valor TTL disminuye al menos en uno cada vez que el paquete es procesado por un router (es decir, en cada salto). Cuando el valor se vuelve cero, el router descarta o elimina el paquete y es eliminado del flujo de datos de la red. Este mecanismo evita que los paquetes que no pueden llegar a destino sean enviados indefinidamente entre los routers en un routing loop.

Tipo de servicio. El campo de tipo de servicio contiene un valor binario de 8 bits que se usa para determinar la prioridad de cada paquete. Este valor permite aplicar un mecanismo de Calidad del Servicio (QoS) a paquetes de alta prioridad, como aquellos que llevan datos de voz en telefona. El router que procesa los paquetes puede ser configurado para decidir qu paquete es enviado primero basado en el valor del Tipo de servicio.

Desplazamiento de fragmentos. Como se mencion antes, un router puede tener que fragmentar un paquete cuando lo enva desde un medio a otro medio que tiene una MTU ms pequea. Cuando se produce una fragmentacin, el paquete IPv4 utiliza el campo Desplazamiento de fragmento y el sealizador MF en el encabezado IP para reconstruir el paquete cuando llega al host destino. El campo de desplazamiento del fragmento identifica el orden en el cual ubicar el fragmento del paquete en la reconstruccin.

Sealizador de Ms fragmentos. El sealizador de Ms fragmentos (MF) es un nico bit en el campo del sealizador usado con el Desplazamiento de fragmentos para la fragmentacin y reconstruccin de paquetes. Cuando est configurado el sealizador Ms fragmentos, significa que no es el ltimo fragmento de un paquete.

Sealizador de No Fragmentar. El sealizador de No Fragmentar (DF) es un solo bit en el campo del sealizador que indica que no se permite la fragmentacin del paquete. Si se establece el bit del sealizador No Fragmentar, entonces la fragmentacin de este paquete NO est permitida.

Otros Campos IPv4 del encabezado. Versin: Contiene el nmero IP de la versin (4). Longitud del encabezado (IHL): Especifica el tamao del encabezado del paquete. Longitud del Paquete: Este campo muestra el tamao completo del paquete, incluyendo el encabezado y los datos, en bytes. Identificacin: Este campo es principalmente utilizad para identificar nicamente fragmentos de un paquete IP original. Checksum del encabezado: El campo de checksum se utiliza para controlar errores del encabezado del paquete. Opciones: Existen medidas para campos adicionales en el encabezado IPv4 para proveer otros servicios pero stos son rara vez utilizados.

Clculo de la longitud del encabezado de nivel 2. Debemos calcular cual es el valor del encabezado que habra que sumar al paquete IP en funcin del nivel de enlace que se utilice.

Ethernet.

Si sumamos en la figura la cantidad de bytes de encabezado ms el triler, obtendremos 38 bytes, y este es el valor que habra que utilizar en el clculo. Muchas veces se olvida considerar los campos que estn en gris debido a que no poseen informacin concreta sino que cumplen funciones de sincronismo a nivel de acceso al medio.

802.1q.

En el caso de trabajar con tramas Ethernet con formato 802.1q, normalmente en puertos del tipo trunk en los switches o routers, habr que sumar 4 bytes ms, es decir, el total es de 42 bytes. Si se utiliza QinQ o VLAN STACKING, habra que simplemente sumar 4 bytes ms a los 42.

PPPoE (RFC 2516). En este caso hay que sumar 6 bytes ms al encabezado de Ethernet. Cuatro bytes de PPPoE y dos bytes de PPP. PPP (Basado en RFC1661 y RFC1662). Segn la RFC 1661, el protocolo PPP esta desarrollado para transportarse con distintos protocolos de enlace, pero la forma ms utilizada es con HDLC. Este transporte est definido en la RFC1662 y el formato de trama es el siguiente:

Segn se ve en la figura, el tamao del encabezado sera de entre 6 y 9 bytes dependiendo del tamao del campo Protocolo. Si se utiliza la compresin de header definida en PPP, los campos de Direccin y control no se transmiten ya que son constantes y no hay ambigedad ya que el campo de protocolo no puede ser 0xFF. En la prctica se suelen considerar 6 bytes de encabezado.

ATM (RFC1483). El caso de ATM difiere del resto de los casos de nivel 2 ya que el tamao de las celdas es fijo, de 53 bytes, donde 5 son de encabezado por lo que quedaran solo 48 bytes para acomodar la VOZ/RTP/UDP/IP. El resto de los protocolos admite un mximo de tamao de datos que es mayor al tamao del paquete de voz, por lo que sera una situacin poco comn que el paquete se fraccione debido a la configuracin del MTU (No sera un buen diseo configurar un MTU menor que el tamao de los paquetes de voz).

Pero como dijimos, el caso de ATM es distinto y si consideramos que IP + UDP + RTP ya suman 40 bytes, quedan solo 8 bytes para acomodar la voz, sin contar los campos del AAL y los que se utilizan para adaptar IP o Ethernet sobre ATM.

MPLS. Cuando se usa este tipo de tecnologa, lo que se suele hacer es agregar una etiqueta de 4 bytes entre el protocolo de enlace y el de red.

Para el clculo de ancho de banda habra entonces que sumar los 4 bytes de MPLS al encabezado de nivel 2. En el caso de que se concatenen etiquetas, se deberan sumar 4 bytes ms por cada etiqueta.

Ej1. Calcular el ancho de banda sobre IP si se utiliza G.729 con 3 tramas por paquete.
Solucin. Clculo de longitud de paquete (Pl). Como la conexin es sobre IP, el encabezado total ser entonces la suma de los encabezados IP, UDP y RTP. Por tanto, para el clculo de H: Encabezado IP= 20 bytes. Encabezado UDP= 8 bytes. Encabezado RTP= 12 bytes. Por tanto: H= IP + UDP + RTP. H= 20 bytes + 8 bytes + 12 bytes. H= 40 bytes.

Luego, como el CODEC utilizado es G.729, tenemos que: N= 3 (dato del problema). Lt= 10 bytes. Por tanto, la longitud de paquete final ser: Pl= H + NxLt= 40 bytes + (3)(10) bytes. Pl=70 bytes. Clculo de la tasa de paquetes (Pr). Pr= 1/(NxTt). Como el CODEC utilizado es G.729, entonces Tt= 10ms, por tanto: Pr= 1/(3x0.01)=100/3. Pr= 33.33 paquetes/segundo.

Finalmente, el ancho de banda ser de: BW= Pr x Pl x 8(bits/bytes). BW= 70 x 33.33 x 8. BW= 18666 bps. Por tanto:

BW=18.7 kbps.

Ej2. Realizar el ejercicio anterior pero sobre Ethernet. Solucin. El procedimiento de clculo es idntico al ejercicio anterior pero en este caso debemos considerar el encabezado de capa 2, por tanto: Clculo de longitud de paquete (Pl). Como la conexin es sobre IP, y ya consideramos el encabezado de capa 2, para el clculo de H: Encabezado IP= 20 bytes. Encabezado UDP= 8 bytes. Encabezado RTP= 12 bytes. Ethernet= 38 bytes.

Por tanto: H= IP + UDP + RTP + Ethernet. H= 20 bytes + 8 bytes + 12 bytes + 38 bytes. H= 78 bytes.

Luego, como el CODEC utilizado sigue siendo G.729, tenemos que: N= 3 (dato del problema). Lt= 10 bytes. Por tanto, la longitud de paquete final ser: Pl= H + NxLt= 78 bytes + (3)(10) bytes. Pl= 108 bytes. Clculo de la tasa de paquetes (Pr). Pr= 1/(NxTt). Como el CODEC utilizado es G.729, entonces Tt= 10ms, por tanto: Pr= 1/(3x0.01)=100/3. Pr= 33.33 paquetes/segundo.

Finalmente, el ancho de banda ser de: BW= Pr x Pl x 8(bits/bytes). BW= 108 x 33.33 x 8. BW= 28800 bps.

Por tanto:

BW=28.8 kbps.

Ej3. Realizar el clculo del ejercicio anterior pero se transporta con una etiqueta MPLS.
Solucin. Para este caso lo nico que debe hacerse es agregar una etiqueta de 4 bytes al total de bytes de encabezado, por tanto: Clculo de longitud de paquete (Pl). Como la conexin es sobre IP, y ya consideramos el encabezado de capa 2, para el clculo de H: Encabezado IP= 20 bytes. Encabezado UDP= 8 bytes. Encabezado RTP= 12 bytes. Ethernet= 38 bytes. Etiqueta= 4 bytes.

Por tanto: H= IP + UDP + RTP + Ethernet + MPLS. H= 20bytes+8bytes+12bytes+38bytes+4bytes. H= 82 bytes.

Luego, como el CODEC utilizado sigue siendo G.729, tenemos que: N= 3 (dato del problema). Lt= 10 bytes. Por tanto, la longitud de paquete final ser: Pl= H + NxLt= 82 bytes + (3)(10) bytes. Pl= 112 bytes. Clculo de la tasa de paquetes (Pr). Pr= 1/(NxTt). Como el CODEC utilizado es G.729, entonces Tt= 10ms, por tanto: Pr= 1/(3x0.01)=100/3. Pr= 33.33 paquetes/segundo.

Finalmente, el ancho de banda ser de: BW= Pr x Pl x 8(bits/bytes). BW= 112 x 33.33 x 8. BW= 29866 bps. Por tanto:

BW=29.9 kbps.

Вам также может понравиться