Vous êtes sur la page 1sur 10

UNIVERSIDAD DE CUENCA

FACULTAD DE INGENIERIA ESCUELA DE ELECTRONICA Y TELECOMUNICACIONES Redes de computadores. Profesor: Ral Ortiz Gaona Realizado por: Danilo Calle Juan Pablo Loja Duchi Lectura 3 La capa de enlace de datos.
ndice: Objetivos..pg. 2 Antecedentes...pg. 2 3.1. Cuestiones de diseo de la capa de enlace datos.pg. 2 3.1.1. Servicios proporcionados a la capa de red.pg. 2 3.1.2. Entramadopg. 3 3.1.3. Control de errores..pg. 5 3.1.4 Control de flujo..pg. 5 3.2 DETECCIN Y CORRECCIN DE ERRORES.pg. 5 3.2.1 Cdigos de correccin de errores.pg. 6 3.2.1 Cdigos de deteccin de errores..pg. 7 Conclusiones.pg. 10

-1-

Objetivos: Tener nociones previas sobre los temas que sern abordados en el captulo 3 Conocer la importancia de la capa de red en la transicin de informacin. Saber los errores que se producen a los momentos de transmitir datos, as como estudiar formas de detectar e intentar corregir estos errores.

Antecedentes.- se estudiara los principios de diseo de la capa 2 (capa de enlace de datos), el cual se basa en algoritmos para realizar una comunicacin confiable. Dado que la una maquina A solo pone los bits en la lnea de transmisin, durante el tiempo que viaja hacia una maquina ve, la informacin est sujeta a errores debido a varios factores como el tiempo de propagacin, entre otros; por esto se requiere de un protocolo que considere estos factores; as aparece la capa de enlace de datos. 3.1. Cuestiones de diseo de la capa de enlace datos. Las principales funciones de la capa fsica es la proporcionar una interfaz de servicio bien definido con la capa fsica, manejar los errores de transmisin y regular la velocidad de flujo para que receptores lentos no sean saturados por emisores rpidos. Para esto la capa de enlace de datos debe tomar de la capa de red los paquetes de informacin y dividirlos en tramos (encapsular) para su envo, cada encapsulado consta de un encabezado, cuerpo til (donde va la informacin) y un final como se observa en la siguiente figura.

3.1.1. Servicios proporcionados a la capa de red. La finalidad de esta capa es suministrar servicios a la capa de red. La funcin principal es enviar los datos de la capa de red de una maquina A hacia la capa de red de una maquina B.

-2-

En la figura b se observa en esquema real de transmisin de datos, en cambio en la figura a se observa el modelo simplificados basado en la capa de enlace de datos. La capa de enlace de datos ofrece varios servicios. Los servicios reales ofrecidos pueden variar de sistema a sistema. Tres posibilidades servicios son: Servicio no orientado a la conexin sin confirmacin de recepcin, servicio no orientado a la conexin con confirmacin de recepcin y servicio orientado a la conexin con confirmacin de recepcin. El servicio no orientado a la conexin sin confirmacin de recepcin consiste en que la mquina de origen enve tramas independientes a la mquina de destino sin pedir confirmacin de llegada, adems no necesita establecer una conexin. Si se pierde la capa no intenta recuperarla. Es utilizado en trfico en tiempo real y donde la tasa de error es muy baja (mayora de LANs). El servicio no orientado a la conexin con confirmacin de recepcin es ms fiable que a anterior ya que si la informacin no llego a su destino puede reenviarla, ejemplo sistemas inalmbricos (conexin inestable). Por ltimo el servicio ms confiable es el orientado a la conexin ya que establece un flujo de bits entre ambas maquinas (canal) antes de iniciar la transmisin. Cuando se utiliza un servicio orientado a la conexin, las transferencias tienen tres fases distintas. En la primera, la conexin se establece haciendo que ambos lados inicialicen las variables y los contadores necesarios para seguir la pista de las tramas que han sido recibidas y las que no. En la segunda fase se transmiten una o ms tramas. En la tercera fase, la conexin se cierra y libera las variables, los bferes y otros recursos utilizados para mantener la conexin.

Ubicacin de protocolo de enlace de datos. 3.1.2. Entramado. Para que la capa de enlace de datos pueda proporcionar servicios a la capa de red debe utilizar los servicios que le proporciona la capa fsica (acepta los bits e intenta entregarlos al destino). Los bits enviados estn sujetos a errores; es responsabilidad de la capa de enlace detectarlos y corregirlos. El mtodo comn es que la capa de enlace de datos divida el flujo de bits en tramas separadas y que verificacin de cada trama. Cuando una trama llega al destino, se recalcula la suma de verificacin. Si la nueva suma de verificacin calculada es distinta de la contenida en la trama, la capa de enlace de datos sabe que ha ocurrido un error y toma medidas para manejarlo. Una manera de lograr esta divisin en tramas es introducir intervalos de tiempo entre las tramas, de la misma manera que los espacios entre las palabras en el texto comn. Sin embargo, las redes pocas veces ofrecen garantas sobre la temporizacin, por lo que es posible que estos -3-

intervalos sean eliminados o que puedan introducirse otros intervalos durante la transmisin. Adems de este existen otros mtodos como son: conteo de caracteres, banderas con relleno de caracteres, Banderas de inicio y fin, con relleno de bits y violaciones de codificacin de la capa fsica. El conteo de caracteres se vale de un encabezado para especificar el nmero de caracteres en la trama. Cuando la capa de enlace de datos del destino ve la cuenta de caracteres, sabe cuntos caracteres siguen y, por lo tanto, dnde est el fin de la trama. La siguiente figura muestra este mtodo para cuatro tramas de 5, 5, 8 y 8 caracteres de longitud, respectivamente.

El problema de este mtodo es que ante la presencia de un error, a pesar de que este sea detectado se pierde la sincrona de tramos por lo que ya no tendr forma de saber dnde inician los siguientes tramos. El mtodo banderas con relleno de caracteres, evita el problema de tener que volver a sincronizase nuevamente tras la presencia de un error, ya que cada tramo tiene un inicio y fin definidos con bits especiales, estos bits son conocidos como banderas, en la actualidad los bits de inicio y fin son los mismos.

Se puede dar el caso con mucha facilidad de que el patrn de bits de la bandera aparezca en los datos (payload), lo que interferira en el entramado. Para intentar evitar este tipo de error se utiliza el mtodo de relleno de caracteres (parte b de la figura anterior) Una desventaja importante del uso de esta tcnica de entramado es que est fuertemente atada a los caracteres de 8 bits. No todos los cdigos utilizan caracteres de 8 bits. Por ejemplo, UNICODE utiliza caracteres de 16 bits. El nuevo mtodo permite que los tramos contengan cualquier tamao de bits, este mtodo funciona de la siguiente manera: cada trama comienza y termina con un patrn especial de bits, -4-

01111110 (que es de hecho una bandera). Cada vez que la capa de enlace de datos del emisor encuentra cinco unos consecutivos en los datos, automticamente inserta un bit 0 en el flujo de bits saliente. Este relleno de bits es anlogo al relleno de caracteres, en el cual un byte de escape se inserta en el flujo de caracteres saliente antes de un byte igual a la bandera de entramado en los datos. Cuando el receptor ve cinco bits 1 de entrada consecutivos, seguidos de un bit 0, automticamente borra el bit 0 de relleno.

3.1.3. Control de errores. La manera normal de asegurar la entrega confiable de datos (en orden) es proporcionar retroalimentacin al emisor sobre lo que est ocurriendo en el otro lado de la lnea. Por lo general, el protocolo exige que el receptor regrese tramas de control especiales que contengan confirmaciones de recepcin positiva o negativa de las tramas que llegan. Si el emisor recibe una confirmacin de recepcin positiva de una trama, sabe que la trama lleg correctamente. Por otra parte, una confirmacin de recepcin negativa significa que algo fall y que la trama debe transmitirse otra vez. Cuando el emisor enva un tramo tambin se activa un temporizador, de esta manera si un tramo se pierde por completo en el viaje, el emisor sabr que debe reenviar el tramo. Por otro lado si se vuelve a renviar varios tramos puede ocurrir que un tramo sea enva varias veces a la capa de subred, para evitar estos se asigna nmeros de secuencia a los tramos. 3.1.4 Control de flujo Esto es necesario cuando un emisor enva las tramas a alta velocidad hasta que satura por completo al receptor. Aunque la transmisin est libre de errores, en cierto punto el receptor simplemente no ser capaz de manejar las tramas conforme lleguen y comenzar a perder algunas. Es obvio que tiene que hacerse algo para evitar esta situacin. Se utilizan dos mtodos. En el primero, el control de flujo basado en retroalimentacin, el receptor regresa informacin al emisor autorizndolo para enviar ms datos o indicndole su estado. En el segundo, el control de flujo basado en tasa, el protocolo tiene un mecanismo integrado que limita la tasa a la que el emisor puede transmitir los datos, sin recurrir a retroalimentacin por parte del receptor. 3.2 DETECCIN Y CORRECCIN DE ERRORES Por lo general, los errores ms comunes se dan en los circuitos locales, y son muy raros en la parte digital. Estos errores de transmisin son inevitables, razn por la cual existen alternativas que nos permite discutir con dichos errores. Una es incluir suficiente informacin redundante en cada bloque de datos transmitido para que el receptor pueda deducir lo que debi ser el carcter transmitido, esta estrategia utiliza cdigos de correccin de errores. La segunda es incluir solo la informacin redundante bsica para que el receptor sepa que ha ocurrido un error (pero no que error) y solicite la retransmisin, esta utiliza cdigos de deteccin de errores.

-5-

3.2.1 Cdigos de correccin de errores Estos cdigos se utilizan en canales de poca fiabilidad que causan muchos errores (enlaces inalmbricos). Por lo tanto, es necesario incluir la suficiente redundancia para que el receptor pueda deducir cual era el bloque original transmitido y no solicite una retransmisin, en el cual tambin podra surgir errores. Cuando consideramos una trama de m bits de datos (es decir, de mensaje) y r bits redundantes o de verificacin, con una longitud total de n= m+r se le conoce como palabra codificada de n bits. Adicionalmente la operacin OR exclusivo de dos palabras codificadas cualesquiera, nos da la cantidad de posiciones de bits diferentes, a la cual se le denomina distancia de Hamming. Ejemplo: Si tenemos dos palabras codificadas diferentes 10001001 y 10110001 entonces su distancia de Hamming ser d=3:

El significado es que si dos palabras codificadas estn separadas una distancia de Hamming d, se requieren d errores de bit para convertir una en la otra. En general, las propiedades de deteccin y correccin de errores de un cdigo depende de su distancia de Hamming. Para detectar d errores se requiere una distancia de d+1. Para corregir d errores, se requiere una distancia de 2d+1. Un ejemplo sencillo de deteccin de errores es la paridad, consiste en aadir un bit, denominado bit de paridad, que indique si el nmero de los bits de valor 1 en los datos precedentes es par o impar. Si un solo bit cambiara por error en la transmisin, el mensaje cambiar de paridad y el error se puede detectar (ntese que el bit donde se produzca el error puede ser el mismo bit de paridad). La convencin ms comn es que un valor de paridad 1 indica que hay un nmero impar de unos en los datos, y un valor de paridad de 0 indica que hay un nmero par de unos en los datos. La comprobacin de paridad no es muy robusta, dado que si cambia de forma uniforme ms de un solo bit, el bit de paridad ser vlido y el error no ser detectado. Se puede utilizar para detectar errores individuales. El cdigo de Hamming esta diseado para corregir errores simples. Los cdigos de Hamming son una familia de bloques de correccin de error de (n,m) con los siguientes parmetros: Longitud del bloque: n = 2r 1

Nmero de bits de dato: m = 2r r 1 Nmero de bits de chequeo: n m = r Distancia mnima: dmin = 3 Dado m, esto impone un lmite inferior a la cantidad de bits de verificacin necesarios para corregir errores individuales. Para el clculo de la palabra cdigo a ser enviada se deben seguir los siguientes pasos: Los bits de datos y de chequeo se reorganizan como se describe a continuacin: o Partiendo de la posicin menos significativa (mas a la derecha), los r bits de chequeo de Hamming se insertan en las posiciones que son potencias de 2 (es decir, posiciones 1,2, 4, 2r). -6-

Los bits restantes son bits de datos.

Para calcular los valores de los bits de chequeo se tiene que, para cada uno de los bits de datos que tienen un valor de 1, se debe representar su posicin en binario. Por ejemplo, si el bit en la novena posicin tiene un valor de uno, su posicin es representado como 1001. Todos los valores posicinales calculados anteriormente son relacionados usando un XOR.

Cada bit de verificacin obliga a que la paridad de un grupo de bits, incluyndolo a l mismo, sea par (o impar). Cuando llega una palabra codificada, el receptor inicializa a cero un contador y luego examina cada bit de verificacin, k (k = 1, 2, 4, 8,...), para ver si tiene la paridad correcta. Si no, suma k al contador. Si el contador es igual a cero tras haber examinado todos los bits de verificacin (es decir, si todos fueron correctos), la palabra codificada se acepta como vlida. Si el contador es diferente de cero, contiene el nmero del bit incorrecto. A pesar que el cdigo Hamming solo corrige errores individuales, se le puede extender para que corrija errores de rfaga mediante el uso de matrices. Se dispone como matriz una secuencia de k palabras codificadas consecutivas, con una palabra codificada por fila. Normalmente se transmitira una palabra codificada a la vez, de izquierda a derecha. Para corregir los errores en rfaga, los datos deben transmitirse una columna a la vez, comenzando por la columna del extremo izquierdo. Cuando todos los bits k han sido enviados, se enva la segunda columna, y as sucesivamente. Cuando la trama llega al receptor, la matriz se reconstruye, una columna a la vez. Si ocurre un error en rfaga de longitud k, cuando mucho se habr afectado 1 bit de cada una de las k palabras codificadas; sin embargo, el cdigo de Hamming puede corregir un error por palabra codificada, as que puede restaurarse la totalidad del bloque. Este mtodo usa kr bits de verificacin para inmunizar bloques de km bits de datos contra un solo error en rfaga de longitud k o menos. 3.2.1 Cdigos de deteccin de errores Por otra parte, estos cdigos se utilizan para canales que son altamente confiables (fibra ptica), para simplemente retransmitir los bloques defectuosos que surgen ocasionalmente. Como un ejemplo simple, considere un canal en el que los errores son aislados y la tasa de errores es de 106 por bit. Sea el tamao de bloque 1000 bits. Para proporcionar correccin de errores en bloques de 1000 bits se requieren 10 bits de verificacin; un megabit de datos requerir 10000 bits de verificacin. Para detectar un solo bloque con 1 bit de error, basta con un bit de paridad por bloque. Por cada 1000 bloques se tendr que transmitir un bloque extra (1001 bits). La sobrecarga total del mtodo de deteccin de errores + retransmisin es de slo 2001 bits por megabit de datos, contra 10,000 bits con un cdigo de Hamming. Generalmente, para la deteccin de errores en la prctica se utiliza el cdigo cdigo polinomial tambin conocido como cdigo de redundancia cclica (cdigo CRC). Los cdigos polinomiales se basan en el tratamiento de cadenas de bits como representaciones de polinomios con coeficientes de 0 y 1 solamente. Una trama de k bits se considera como la lista de coeficientes de un polinomio con k trminos que van de 1 a x0. Se dice que tal polinomio es de grado k 1. El bit de orden mayor (que se encuentra ms a la izquierda) es el coeficiente de 1 , el siguiente bit es el coeficiente de 2 y as sucesivamente. Por ejemplo, 110001 tiene 6 bits y, por lo tanto, representa un polinomio de seis trminos con coeficientes 1, 1, 0, 0, 0 y 1: 5 + 4 +1.

-7-

La aritmtica polinomial se hace mediante una operacin mdulo 2, de acuerdo con las reglas de la teora de campos algebraicos. No hay acarreos para la suma, ni prstamos para la resta. Tanto la suma como la resta son idnticas a un OR exclusivo. Por ejemplo:

La divisin se lleva a cabo de la misma manera que en binario, excepto que la resta es mdulo 2, igual que antes. Se dice que un divisor cabe en un dividendo si ste tiene tantos bits como el divisor. En este mtodo el emisor y el receptor deben acordar por adelantado un polinomio generador G(x); adems tanto los bits de orden mayor y menor del generador deben ser 1. Para calcular la suma de verificacin para una trama con m bits, correspondiente al polinomio M(x), la trama debe ser ms larga que el polinomio generador. La idea es incluir una suma de verificacin al final de la trama de tal manera que el polinomio representado por la trama con suma de verificacin sea divisible entre G(x). Cuando el receptor recibe la trama con suma de verificacin, intenta dividirla entre G(x). Si hay un residuo, ha habido un error de transmisin. Bsicamente esta tcnica consta del siguiente algoritmo: 1. Sea r el grado de G(x). Anexe r bits cero al final de la trama, para que ahora contenga m + r bits y corresponda al polinomio M(x). 2. Divida la cadena de bits correspondiente a G(x) entre la correspondiente a M(x) usando una divisin mdulo 2. 3. Reste el residuo (que siempre es de r o menos bits) a la cadena de bits correspondiente a M(x) usando una resta mdulo 2. El resultado es la trama con suma de verificacin que va a transmitirse. Llame a su polinomio T(x). Ejemplo: el clculo para la trama 1101011011 cuyo polinomio generador es 4 + +1 se muestra en la figura 3.8

-8-

Ahora los posible errores que se podran tener en este mtodo: 1. Imagine queocurre un error de transmisin tal que en lugar de que llegue la cadena de bits para T(x), llega T(x) + E(x). Cada bit 1 en E(x) corresponde a un bit que ha sido invertido. Si hay k bits 1 en E(x), han ocurrido k errores de un solo bit. Una rfaga de errores individual se caracteriza por un 1 inicial, una mezcla de ceros y unos, y un 1 final, siendo los dems bits 0. Al recibir la trama con suma de verificacin, el receptor la divide entre G(x); es decir, calcula [T(x) + E(x)]/G(x). T(x)/G(x) es 0, por lo que el resultado del clculo es simplemente E(x)/G(x). No se detectarn los errores que por casualidad correspondan a polinomios que contengan G(x) como factor; todos los dems errores sern atrapados. 2. Si ha ocurrido un error de un solo bit, E(x) = , donde i determina qu bit es errneo. Si G(x) contiene dos o ms trminos, nunca ser divisor exacto de E(x), por lo que se detectarn los errores de un solo bit.

-9-

3. M;; Si han ocurrido dos errores de un solo bit aislados, E(x) = + , donde i > j. Esto tambin se puede escribir como E(x) = ( + 1). Si suponemos que G(x) no es divisible entre x, una condicin suficiente para detectar todos los errores dobles es que G(x) no divida a + 1 para ninguna k hasta el valor mximo de i j (es decir, hasta la longitud mxima de la trama). Se conocen polinomios sencillos de bajo grado que dan proteccin a tramas largas. Por ejemplo 15 + 14 + 1 no ser divisor exacto de + 1 para ningn valor de k menor que 32,768. 4. Si hay una cantidad impar de bits con error, E(x) contiene un nmero impar de trminos (por ejemplo, 5 + 2 + 1, pero no 2 + 1). Curiosamente, ningn polinomio con un nmero impar de trminos posee a x + 1 como un factor en el sistema de mdulo 2. Haciendo x + 1 un factor de G(x), podemos atrapar todos los errores consistentes en un nmero impar de bits invertidos. 5. Por ltimo, y lo que es ms importante, un cdigo polinomial con r bits de verificacin detectar todos los errores en rfaga de longitud r. Un error en rfaga de longitud k puede representarse mediante xi(xk1 +. . .+ 1), donde i determina la distancia a la que se encuentra la rfaga desde el extremo derecho de la trama recibida. Si G(x) contiene un trmino x0, no tendr xi como factor, por lo que, si el grado de la expresin entre parntesis es menor que el grado de G(x), el residuo nunca puede ser cero. Conclusiones: El propsito de la capa de enlace de datos es la de proporcionar servicios a la capa de red valindose de la capa fsica; la capa de enlace de datos se encarga principalmente de entregar la informacin de una capa de red (emisora) a otra (receptora). Dado que la transicin se hace por medio de la capa fsica la informacin es propensa a sufrir errores por retrasos, prdidas, etc.; por lo que la capa de enlace de datos tambin debe encargarse de la deteccin de estos errores mediante mtodos o algoritmos, los cuales se vieron en la presente lectura.

- 10 -

Vous aimerez peut-être aussi