Transmisión de Paquetes Redes de Computadores 2001 Agustín J. González Transmisión de Paquetes • La información a transmitir (datos) es dividida en pequeños bloques llamados “paquetes”. • Las redes que usan esta tecnología son las Redes de Paquetes o Conmutación de Paquetes • Ventajas: – Ayuda a recuperarse de errores durante la transmisión. – Permite compartir conexiones físicas y hardware asociado a éstas. Esto también mejora la utilización de los recursos. Transmisión Síncrona • Cuando se envían paquetes se utiliza transmisión síncrona a nivel del bit y byte (8 bits). • La RS-232 no resulta eficiente para la transmisión de paquetes (al menos 2 bits adicionales por caracter). • Además, la sincronización al caracter es menos confiable en largas tiras de bits debido a que el reloj del receptor utiliza sólo el 1er bit para extraer la información de sincronización. • La transmisión síncrona consiste en enviar muchos bits de información enmarcándolos en una secuencia conocida de bits de inicio - para que el reloj del receptor pueda extraer la información de sincronización - y un tren de bits acordado para señalar el término de los datos. La secuencia: encabezado de sincronización, datos y demarcaciónde término se conoce como trama. Paquetes v/s Tramas • Transmisión de paquetes es una idea general que apunta a al forma como la información es enviada (división en pequeños bloques que pueden tomar rutas distintas) • La definición específica de paquetes para una tecnología dada es conocida bajo el término trama (frame). La trama corresponde a la información “útil” más la información de control necesaria para recibir cada paquete. • Las tramas contienen un patrón de inicio y otro de término. Su formato depende si es transmisión orientada al caracter o bit. Transmisión orientada al caracter y al bit • En la práctica se usan dos esquemas : • La transmisión síncrona orientada al carácter – El bloque de datos es tratado como una sequencia de caracteres (usualmente de 8 bits). SYN SYN 1 o más SYN • Más Caracteres de control Datos Caracteres de control La transmisión síncrona orientada al bit – El bloque de datos es tratado como una sequencia de bits Campo de datos flag Campo de control flag Campo de control Marcas de inicio y fin de trama • Desventajas de poner marcas de inicio y fin de trama: – Overhead: i.e. El uso de símbolos que no portan información “útil”. Considere secuencia de paquetes adyacentes. • Ventaja: – permiten detectar fallas en los computadores y/o enlaces. • Qué pasa si estos símbolos aparecen en los datos? Bytes y bits de Relleno • No podemos reservar dos símbolos para uso exclusivo de la red. • El tx modifica levemente la secuencia que envía para asegurar que las marcas de inicio y término sean únicas. • La red inserta bytes o bits extras cuando las marcas aparece en los datos. Esta técnica se conoce como byte stuffing o bit stuffing. Ejemplo: byte stuffing Errores de Transmisión • Son producidos por: rayos, bajas de energía, y otras interferencias electromagnéticas (motores eléctricos). • La interferencia puede: – destruir parcialmente la señal. – destruir completamente la señal. – crear ruido aleatorios que parecer datos reales. • Mecanismos de detección: – – – – Bit de paridad Sumas de chequeo Chequeo de redundancia longitudinal Chequeo de redundancia cíclica Chequeos vía bits de Paridad • Similar al bit de paridad de la RS-232 • Principal problema es que este técnica no es capaz de detectar patrones de error típicos. Ej. como errores dobles. • Alternativas: agregar más bits de paridad. • Sumas de chequeo: • El tx envía la suma palabras de 16 o 32 bits de un paquete. • El receptor efectúa la misma evaluación para detectar errores. Puede ser suma simple también OR-EX Chequeos de Redundancia Cíclicas • Las sumas de chequeo son superadas por los chequeos de redundancia cíclicas (Cyclic Redundancy Check o CRC) en su capacidad para detectar errores. • También son conocidos como secuencias de chequeo de trama (Frame Check Sequence o FSC) • La idea es interpretar los datos a codificar como un polinomio. Este es multiplicado por una potencia de dos (2n*M)y luego dividido por otro polinomio de menor grado (P). Finalmente se envía 2n*M+R, donde R es el resto de la división Ejemplo de CRC • Considere: – Mensaje M = 1010001101 (10 bits) – “Polinomio” codificador: 110101 (6 bits) – Resto (CRC o FCS): por ser calculado (5 bits) • Pasos: – El mensaje se multiplica por 25 (siempre es uno menos que el numero de bits del polinomio codificador) – El producto se divide por P. Se usa aritmética módulo 2. – El resto es sumado al producto 25 * M. – El receptor detecta la presencia de errores cuando al hacer su división el resto resulta no nulo. Implementación en hardware • Si P = 10001000000100001 • En otras palabras: P(X)=X16+X12+X5+1 • El circuito de hardware es como sigue: • AL término del mensaje el resto es el valor del registro de desplazamiento