La tarea principal de la capa de enlace de datos es tomar una transmisin de datos " cruda " y transformarla en una abstraccin libre de errores de transmisin para la capa de red. Logra esta funcin dividiendo los datos de entrada en marcos de datos ( de unos cuantos cientos de bytes ), transmite los marcos en forma secuencial, y procesa los marcos de estado que enva el nodo destino.
Dado que la capa fsica solamente acepta y transmite un flujo de bits sin ninguna consideracin de significado o estructura, est asignado a la capa de enlace de datos crear y reconocer los limites de un marco de datos. Esto se logra aadiendo patrones de bits especiales al comienzo y final del marco de datos .Si estos patrones de bits pueden aparecer en los datos, se debe tomar un especial nfasis para evitar alguna confusin. Funciones Sus principales funciones son: Delimita marcos Delimita marcos Mantiene la integridad de los marcos Provee transparencia de datos Deteccin de errores Retransmisin de Marcos para recuperarse de errores Permite el control de flujo Supervisa las funciones de enlace Servicios La capa de enlace de datos pude disearse para ofrecer varios servicios que varan de acuerdo al sistema tales como: Servicio sin acuse sin conexin La maquina fuente envia marcos independientes a la maquina destino sin esperar que los reconozca o acuse el recibo. No se establece conexin de antemano ni se libera despus. Si se pierde un marco por ruido no se intenta recuperarlo en la capa de enlace de datos. Esta clase de servicio es apropiada cuando la taza de errores es muy baja , para el trafico en tiempo real , como la voz. Servicio con acuse sin conexin Cada marco enviado es reconocido individualmente, as el transmisor sabe si el marco ha llegado bien o no, si no ha llegado en un tiempo especificado, puede enviarse de nuevo. El problema con esta estrategia es que los mensaje tardan mucho en pasar. Este servicio es til en canales inestables, como los de los sistemas inalmbricos Servicio con acuse orientado a la conexin Las maquinas de origen y destino establecen una conexin antes de transferir los datos la cual se explicara a continuacin Comunicacion entre nodos Para permitir el intercambio de datos entre dos mquinas es necesario establecer un protocolo que permita la transferencia de una manera confiable. 1. El nodo fuente enva un marco de datos al nodo destino e inicializa un reloj de conteo. 2. El nodo destino recibe el paquete, recalcula el Checksum y lo compara con el recibido . o Si no hubo error, el nodo destino enva un marco de datos de confirmacin (ACK). o Si hubo error, no enva ningun marco de confirmacin de regreso. 3. Si el nodo fuente recibe un ACK antes de que se acabe su tiempo de transferencia de reloj, enva el siguiente marco de datos. 4. Si el nodo fuente no recibe un ACK antes del fin de reloj, vuelve a enviar el marco de datos y reinicializa el reloj.
Esquema de comunicaciones entre 2 nodos
Metodos de Enmarcado Conteo de caracteres Se vale de un campo del encabezado para especificar el nmero de caracteres en el marco, as la capa de enlace destino ve la cuenta de caracteres y sabe donde esta el fin del marco, el problema es que la cuenta puede alterarse por un error de la transmisin, el destino perder la sincrona y ser incapaz de localizar el inicio del siguiente marco; este mtodo casi ya no se usa en la actualidad. Caracteres de inicio y fin con relleno de caracteres Este supera el problema de sincronizacin tras un error, hace que cada marco comience con la secuencia de caracteres ASCII DLE STX y termine con la secuencia DLE ETX(DLE Escape de Enlace de Datos; STX Inicio de Texto; ETX Fin de Texto), as si el destino pierde la pista de los lmites del marco lo que tiene que hacer es buscar los caracteres DLE STX o DLE para determinarlos. El problema con este mtodo cuando se transmiten datos binarios, como programas objeto o numero de punto flotante puede ocurrir fcilmente que los caracteres correspondientes a DLE STX o a DLE ETX se mezclen en los datos; para resolver esto la capa de enlace inserta un carcter ASCII DLE justo antes de cada carcter DLE "Accidental" de los datos, la capa de enlace receptora quita el DLE antes de entregar los datos a la capa de red. La desventaja es que esta tcnica esta atada a los caracteres de 8 bits en general y al cdigo ASSCII Indicadores de inicio y fin con relleno de bits Cada marco comienza y termina con un patron especial de bits, 01111110 llamado byte indicador . cada vez que la capa de enlace de datos del transistor encuentra cinco unos seguidos(11111) inserta un bit cero(0) en la cadena de bit. Cuando el receptor ve 5 bits uno (11111) de entrada consecutiva seguidos de un bit cero(0) de relleno. Este relleno es transparente para la capa de red . Cdigos de correccin de Errores Son estrategias que consisten en incluir suficiente informacin redundante en cada bloque de datos transmitidos para que el receptor pueda deducir lo que debi ser el carcter transmitido. Palabra cdigo de n bits : un marco consiste en m bits y r bits de comprobacin entonces (n=m+r) Distancia de Hamming : es la cantidad de posiciones de bit en la que difieren dos palabras cdigo Bit de paridad : se escoge de manera que la cantidad de bits 1 en la palabra cdigo sea par o impar Protocolo Simplex sin restriciones Dos procedimientos diferentes, una transmisor y uno receptor. El trasmisor se ejecuta en la capa de enlace de datos de la maquina de origen y el receptor se ejecuta en la capa de enlace de datos de la maquina de destino. El trasmisor esta en un ciclo while infinito que solo enva datos a la lnea rpidamente. El cuerpo del ciclo consiste en tres acciones: obtener un paquete de la capa de red, construir un marco de salidas y enviar el marco a su destino. El receptor espera que algo ocurra y en algn momento el marco llega. La llamada remueve el marco recin llegado del buffer de hardware y lo pone en la variable r. Por ultimo, la parte de datos se pasa a la capa de red y la capa de enlace de datos se retira para esperar el siguiente marco. Protocolo Simplex de Parada y Espera El problema principal es como evitar que transmisor enviando datos de mayor velocidad de la que este ultimo puede procesarlos. Una solucin mas general para hacer que el receptor proporcione realimentacin al trasmisor. Tras haber pasado un empaque a su capa de red, el receptor enva un pequeo marco ficticio de regreso al trasmisor, autoriza al trasmisor para trasmitir el siguiente marco. Los protocolos en los que el trasmisor enva un marco y luego espera un acuse antes de continuar se denomina de parada y espera. Protocolo Simplex para un canal ruidoso Una vez que el marco se recibe correctamente, el receptor enva un acuse de regreso al trasmisor, es aui donde surge un problema potencial. Basta con un numero de secuencia de 1 bit (0 o 1). En cada instante cualquier marco de entrada que contenga un numero de secuencia equivocada se rechaza como duplicado. Protocolo de Ventana Corrediza Al llegar un marco de datos, en lugar de enviar inmediatamente un marco de control independiente, el receptor se aguanta y espera hasta que la capa de red le pase el siguiente paquete. El acuse se anexa al marco de datos de salida. La tcnica de retardar temporalmente los acuses para que puedan colgarse del siguiente marco de datos de salida se conoce como incorporacin. La ventaja principal de usar la incorporacin en lugar de tener marcos de acuse independiente es un mejor aprovechamiento del ancho de banda disponible del canal. Adems, el envo de menos marcos implica menos interrupciones. Protocolo de Ventana Corrediza de un bit Usa parada y espera ya que el trasmisor enva un marco y espera su acuse antes de trasmitir el siguiente. Normalmente una de las dos capas de enlace de datos es la que comienza. La maquina que arranca obtiene el primer paquete de su capa de red, construye un marco a partir de el y lo enva. Al llegar la capa de enlace de datos receptora lo revisa para ver si es un duplicado. Si el marco es el esperado se pasa la capa de red y la ventana del receptor se recorre hacia arriba. El campo de acuse contiene el numero del ultimo marco recibido sin error. Si este numero concuerda con el numero de secuencia del marco que esta tratando debe enviar al trasmisor, este sabe que ha terminado con el marco almacenado en el buffer y que puede obtener el siguiente paquete de su capa de red. Protocolo que usa regresar n Hay dos enfoques bsicos para manejar los errores durante el entubamiento llamado regresa n ,el receptor simplemente descarta todos los marcos subsecuentes. La capa de enlace de datos se niega a aceptar cualquier marco excepto el siguiente que debe entregar a la capa de red. Si la ventana del trasmisor se llena antes de terminar el temporizador, el entubamiento comenzara a vaciarse. En algn momento, el trasmisor terminara de esperar y retransmitir todos los marcos no conocidos en orden comenzando por el daado o perdido. Protocolo usando repeticin selectiva La otra estrategia llamada repeticin selectiva, almacena todos los marcos correctos a continuacin del equivocado. Cuando el trasmisor por fin se da cuenta que algo esta mal, solo retransmite el marco malo, no todos sus sucesores Protocolo Punto a Punto Realiza deteccin de errores, y permite la verificacin de autenticidad. 1. Un mtodo de enmarcado que delinea sin ambigedades el final de un marco y el inicio del siguiente. El formato de marco tambin maneja la deteccin de errores 2. Un protocolo de control de enlace para activar lneas, probarlas, negociar opciones y desactivarlas ordenadamente cuando ya no son necesarias. Este protocolo se llama LCP 3. Un mecanismo para negociar opciones de cada red con independencia del protocolo de red usado. El mtod escogido consiste en tener un NCP distinto para cada capa de red reconocida Subcapa Mac Los protocolos usados para determinar quien sigue en un canal multiacceso pertenecen a una subcapa de la capa de enlace de datos llamado subcapa de MAC. La subcapa MAC tiene especial importancia en las LAN, casi todas las cuales usan un canal multiacceso como base de su comunicacin. El tema central es la forma de repartir un solo canal de difusin entre usuarios competidores. La manera tradicional de repartir un canal sencillo, como una troncal telefonica, varios usuarios es la multiplexion por divisin en frecuencia. Si solo hay N usuarios, el ancho de banda se divide en N partes de igual tamao, asignndosele a cada usuario cada parte. Cada usuario tiene una banda de frecuencia privada, no hay interferencia entre usuarios. Cuando solo hay una pequea cantidad fija de usuarios, la FDM es un mecanismo de reparto sencillo y eficiente; el trafico es en rfagas, la FDM presenta algunos problemas. Si mas de N usuarios quieren comunicarse, a algunos de ellos se les negara el permiso por falta de ancho de banda; si hay usuarios inactivos su ancho de banda simplemente se pierde Aloha Hay dos versiones del ALOHA: la pura y la ranura Aloha puro Permite que los usuarios transmitan cuando tengan datos que enviar. Habra colisiones, y los marcos en colision se destruiran. Sin embargo debido a la propiedad de retroalimentacin de la difusin, un transmisor siempre puede saber si el marco o no escuchando el canal; si el marco fue destruido, el transmisor simplemente espera un tiempo aleatorio y lo envia de nuevo. El tiempo de espera debe ser aleatorio o los mismos marcos chocaran una y otra vez, en sincrona. Aloha ranurado Divide el tiempo en intervalos discretos, correspondientes cada uno a un marco. Este enfoque requiere que los usuarios acuerden limites de ranura. Una manera de lograr la sincronizacion seria tener una estacion especial que emitiera una seal al comienzo de cada intervalo, como un reloj.