La capa de enlace de datos es responsable de la transferencia fiable de información entre dos máquinas conectadas directamente. Organiza los datos en tramas con cabeceras que incluyen las direcciones físicas de origen y destino, y realiza funciones como detección y corrección de errores para garantizar la transmisión sin fallos. El protocolo ARP resuelve direcciones IP en direcciones físicas MAC para permitir el envío de paquetes entre máquinas en una red local.
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
Capa Enlace Datos: Transferencia Información
1. Capa de Enlace de Datos La capa de enlace de datos es responsable de la transferencia fiable de información a través de un circuito de transmisión de datos. Recibe peticiones del nivel de red y utiliza los servicios del nivel físico. El objetivo del nivel de enlace es conseguir que la información fluya, libre de errores, entre dos máquinas que estén conectadas directamente (servicio orientado a conexión).Para lograr este objetivo tiene que montar bloques de información (llamados tramasen este nivel), dotarles de una dirección de nivel de enlace, gestionar la detección o corrección de errores, y ocuparse del control de flujo entre equipos (para evitar que un equipo más rápido desborde a uno más lento).
2.
3. Principales Funciones Establece los medios necesarios para una comunicación confiable y eficiente entre dos máquinas en red. Agrega una secuencia especial de bits al principio y al final del flujo inicial de bits de los paquetes, estructurando este flujo bajo un formato predefinido llamado trama o marco, que suele ser de unos cientos de bytes. Los sucesivos marcos forman trenes de bits, que serán entregados a la Capa Física para su transmisión. Sincroniza el envío de las tramas, transfiriéndolas de una forma confiable libre de errores. Para detectar y controlar los errores se añaden bits de paridad, se usan CRC (Códigos Cíclicos Redundantes) y envío de acuses de recibo positivos y negativos, y para evitar tramas repetidas se usan números de secuencia en ellas. Envía los paquetes de nodo a nodo, ya sea usando un circuito virtual o como datagramas.
4. Tarjetas de red Para realizar todas estas funciones, la Capa de Enlace de Datos se basa en un componente físico fundamental, la tarjeta de red. El componente físico fundamental de esta capa es la tarjeta de red, también denominada NIC, situada normalmente en un PC en la parte trasera del mismo, encontrándose conectada al medio de transmisión mediante conectores Jack RJ-45.
5. Tarjetas de red Cada tarjeta de red posée un número identificador único, grabado en la memoria ROM de la misma por el fabricante, que se denomina dirección física o dirección de Control de Acceso al Medio, MAC , que identifica de forma unívoca al ordenador que la posée. Cuando se arranca una máquina, la dirección MAC se copia en la memoria RAM, para tenerla siempre a mano. La dirección física está formada por 32 bits, que se representan por medio de 6 bytes hexadecimales, del tipo 00-00-0D-1A-12-35, de los cuales los 3 primeros (24 bits), denominados Identificador OrganicionalUnico (UOI) son asignados al fabricante concreto, y los 3 últimos (24 bits) los asigna éste secuencialmente. No existen dos tarjetas de red con la misma dirección MAC, por lo que la misma se puede usar (y así se hace) para identificar en una red a la máquina en la que está instalada.
6. Tarjetas de red El grán problema de estas direcciones es que están conformadas como un sistema de direccionamiento plano, sin ninguna jerarquía, por lo que la tarjeta de número 00-00-0D-1A-12-35 no nos dice nada ni de la red en la que se encuentra la máquina que la tiene instalada, ni tiene relación alguna con la ubicación de la máquina de número de tarjeta 00-00-0D-1A-12-36. Digamos que es un sistema de identificación análogo al del D.N.I. español, en el que el número del mismo no dice nada de la persona poseedora del documento. Creación de tramas Una vez que los datos procedentes de las capas superiores son enpaquetados en datagramas en la Capa de Red son transferidos a la Capa de Enlace de Datos para su transmisión al medio físico. Para que estos datos se puedan enviar de forma correcta hasta el destinatario de los mismos hay que darles un formato adecuado para su transmisión por los medios físicos, incluyéndoles además algún mecanismo de identificación de ambos host (emisor y receptor) para que la transferencia quede perfectamente identificada. Esto lo consigue la Capa de Enlace de Datos disponiendo los datagramas en forma de tramas.
7. Tramas En la capa de enlace, los datos se organizan en unidades llamadas tramas. Cada trama tiene una cabecera que incluye una dirección e información de control y una cola que se usa para la detección de errores. La cabecera de una trama de red de área local(LAN) contiene las direcciones físicas del origen y el destino de la LAN. La cabecera de una trama que se transmite por una red de área extensa(WAN) contiene un identificador de circuito en su campo de dirección.
10. Subcapas de Enlace de Datos En la actual tecnología TCP/IP, el estándar más aceptado para la Capa de Enlace de Datos es el definido por la IEE, que diferencia dos subcapas independientes:
11. Subcapa de Control de acceso al medio (MAC) Subcapa de Control de acceso al medio (MAC), que se refiere a los protocolos que sigue el host para acceder a los medios físicos, fijando así cuál de los computadores transmitirá datos binarios en un grupo en el que todos los computadores están intentando transmitir al mismo tiempo. Control de acceso al medio Una red es un entorno en el que diferentes host y dispositivos comparten un medio de transmisión común. Es necesario por ello establecer técnicas que permitan definir qué host está autorizado para transmitir por el medio común en cada momento. Esto se consigue por medio de una serie de protocolos conocidos con el nombre de Control de Acceso al Medio (protocolos MAC). Según la forma de acceso al medio, los protocolos MAC pueden ser: Determinísticos: en los que cada host espera su turno para transmitir. Un ejemplo de este tipo de protocolos determinísticos es Token Ring, en el que por la red circula una especie de paquete especial de datos, denominado token, que da derecho al host que lo posée a transmitir datos, mientras que los demás deben esperar a que quede el token libre. No determinísticos: que se basan en el sistema de "escuchar y transmitir". Un ejemplo de este tipo de protocolos es el usado en las LAN Ethernet, en las que cada host "escucha" el medio para ver cuando no hay ningún host transmitiendo, momento en el que transmite sus datos.
12.
13.
14.
15. PROTOCOLOS Los protocolos MAC se encargan en líneas generales de repartir el uso del medio. Por tanto, deben garantizar que el medio esté libre si alguno de los dispositivos que lo comparte ha de transmitir alguna información, e igualmente deben evitar las colisiones debidas a la transmisión simultánea, permitiendo al mismo tiempo el uso eficaz de la capacidad de transmisión disponible El principal propósito de los protocolos de enlace de datos es garantizar que la comunicación entre dos máquinas directamente conectadas está libre de errores. los protocolos de enlace de datos deben realizar las siguientes funciones: 1._ Proporcionar un servicio bien definido al nivel superior (de red). 2._Agrupar los bits o caracteres recibidos por el nivel físico en bloques de información, tramas (o frames), a los que va asociada información de control para proporcionar los servicios. 3._Detectar y solucionar los errores generados en el canal de transmisión. 4._Control de flujo, para evitar saturar al receptor. 5._Control de diálogo, en canales semi - dúplex será necesario establecer los turnos de transmisión.
16. PROTOCOLOS DE ENLACE DE DATOS Protocolo simplex sin restricciones: Los datos se transmiten en una dirección, las capas de red en el transmisor y receptor siempre están listas, el tiempode procesamiento puede ignorarse, espacio infinito de buffer, canal libre errores. Dos procedimientosdiferentes, uno transmisor y uno receptor que se ejecutan en la capas de enlace. Transmisor solo envía datos a la línea, obtiene un paquete de la capa de red, construye un frame de salida y lo envía a su destino. Receptor espera la llegada de un frame. Protocolo simplex de parada y espera: El receptor no es capaz de procesar datos de entrada con una rapidez infinita Receptor debe proporcionar realimentación al transmisor, el transmisor envía un frame y luego espera acuse antes de continuar. Protocolo simplex para un canal ruidoso: Canal presenta errores, los frame pueden llegar dañados o perderse por completo Agregar un temporizador, falla si el frame de acuse se pierde pues se retransmitirá el frame. Se debe agregar un numero de secuencia en el encabezado de cada frame que se envía.
17. Protocolo de ventana corrediza: Usar el mismo circuito para datos en ambas direcciones Se mezclan los frames de datos con los frame de acuse de recibido Receptor analiza el campo de tipo en el encabezado de un frame de entrada para determinar si es de datos o acuse. En todos los protocolosde ventana corrediza, cada frame de salida contiene un número de secuencia con un intervalo que va desde 0 hasta algún máximo. El máximo es generalmente 2(n) -1, por lo que el número de secuencia cabe bien en un campo de n bits. Protocolo de ventana corrediza de un bit: Usa parada y espera, ya que el transmisor envía un frame y espera su acuse antes de transmitir el siguiente. La máquina que arranca obtiene su primer paquete de su capa de red, construye un frame a partir de él y lo envía. Al llegar este frame, la capa de enlace de datos receptor lo revisa para ver si es un duplicado. Si el marco es el esperado, se pasa a la capa de red y la ventana del receptor se recorre hacia arriba.
18. Protocolo que usa regresar y protocolo de repetición selectiva: Hasta ahora hemos supuesto insignificante el tiempo necesario para que un frame llegue al receptor más el tiempo para que regrese el acuse. PPP- PROTOCOLO PUNTO A PUNTO: punto a punto que resolviera todos estos problemasy que pudiera volverse un estándar oficial de Internet. Este trabajoculmino con el PPP (Point-to-Point Protocol, protocolo punto a punto). El PPP realiza detección de errores, reconoce múltiples protocolos, permite la negociaciónde direcciones de IPen el momento de la conexión, permite la verificación de autenticidad y tiene muchas mejoras respecto a SLIP. Aunque muchos proveedoresde servicios de Internetaun reconocen tanto SLIP como PPP, el futuro claramente esta en PPP, no solo en las líneas por discado sino también en las líneas arrendadas de enrutador a enrutador.
20. Direccionamiento Físico Como hemos visto, la Capa de Enlace de Datos se encarga de determinar qué ordenadores se están comunicando entre sí, cuándo comienza y termina esta comunicación, qué host tiene el turno para transmitir y qué errores se han producido en la transmisión. Ahora bien ¿cómo se produce esta comunicación entre dos host de una misma red?. La respuesta es mediante el direccionamiento físico, basado en los números de las trajetas de red de ambos host (direcciones físicas). Cuando el host A deséa enviar una trama al host B, introduce en el campo "dirección" de la trama tanto su dirección física como la del host destino y, una vez que queda el medio libre, las transmite al mismo. Todos los host conectados a la misma red tienen acceso a la trama. La Capa de Acceso a la Red de cada host analiza las tramas que circulan por la red y compara la dirección física de destino de las mismas con la suya propia. Si coinciden, toma la trama y la pasa a las capas superiores; si no, la rechaza. De esta forma, solo el host destino recoge la trama a él dirigida, aunque todos los host de la misma red tienen acceso a todas las tramas que circulan por la misma.
21. Protocolo ARP Una vez que un paquete llega a una red local mediante el ruteo IP, el encaminamiento necesario para la entrega del mismo al host destino se debe realizar forzosamente mediante la dirección MAC del mismo (número de la tarjeta de red), por lo que hace falta algún mecanismo capaz de transformar la dirección IP que figura como destino en el paquete en la dirección MAC equivalente, es decir, de obtener la relación dirección lógica-dirección física. Esto sucede así porque las direcciones Ethernet y las direcciones IP son dos números distintos que no guardan ninguna relación entre ellos. De esta labor se encarga el protocolo ARP (Protocolo de Resolución de Direcciones), que en las LAN equipara direcciones IP con direcciones Ethernet (de 48 bits) de forma dinámica, evitando así el uso de tablas de conversión. Mediante este protocolo una máquina determinada (generalmente un router de entrada a la red o un swicht) puede hacer un broadcast mandando un mensaje, denominado petición ARP, a todas las demás máquinas de su red para preguntar qué dirección local pertenece a alguna dirección IP, siendo respondido por la máquina buscada mediante un mensaje de respuesta ARP, en el que le envía su dirección Ethernet. Una vez que la máquina peticionaria tiene este dato envía los paquetes al host destino usando la direción física obtenida.
22. Protocolo ARP El protocolo ARP permite pués que un host encuentre la dirección física de otro dentro de la misma red con sólo proporcionar la dirección IP de su objetivo. La información así obtenida se guarda luego en una tabla ARP de orígenes y destinos, de tal forma que en los próximos envíos al mismo destinatario no será ya necesario realizar nuevas peticiones ARP, pués su dirección MAC es conocida.
23. Protocolo ARP ARP es pués un protocolo de bajo nivel que oculta el direccionamiento de la red en las capas inferiores, permitiendo asignar al administrador de la red direcciones IP a los host pertenecientes a una misma red física. Los mensajes de petición ARP (ARP request) contienen las direcciones IP y Ethernet del host que solicita la información, junto con la dirección IP de la máquina destino. Los mensajes de respuesta ARP (ARP reply) son creados por el ordenador propietario de la IP buscada, que rellena el campo vacío con su dirección Ethernet y lo envía directamente al host que cursó la solicitud. Cuando el host origen recibe la respuesta ARP y conoce la dirección física del host destino introduce esos datos en una tabla especial alojada en su caché, y lo mismo va haciendo con cada una de las parejas dirección IP-dirección física que utiliza en sus diferentes comunicaciones con otros host. Y no sólo eso; como las peticiones ARP se realizan por multidifusión, cada vez que pasa ante él un mensaje de respuesta ARP extráe del mismo la pareja IP-MAC y la incorpora a su tabla. De esta forma se va construyendo la tabla dinámicamente.
24. En sucesivas comunicaciones entre ambos host ya no será preciso realizar una nueva petición ARP, ya que ambos host saben las direcciones del otro. Estas tablas se denominantablas ARP o caché ARP, y son fundamentales para el funcionamiento y rendimiento óptimo de una red, pués reducen el tráfico en la misma al evitar preguntas ARP innecesarias. tabla ARP dirección IP dirección física 212.5.26.1 26-5A-C5-42-FD-11 212.5.26.2 2C-2A-48-A6-36-00 212.5.26.3 5D-F1-80-02-A7-93 Protocolo ARP
25. Protocolo ARP Las tablas ARP son necesarias para poder dirigir tramas en una red, ya que las direcciones IP y las direcciones de las tarjetas de red son independientes, y no tienen ninguna equivalencia entre ellas, siendo necesario entonces algún método para poder obtener la equivalencia entre ambas. De forma general, cuando una máquina desea comunicarse con otra a partir de su IP, lo primero que hace es mirar en su tabla ARP si tiene la dirección física asociada a esa dirección lógica. Si es así, envía directamente los paquetes al host destino. Si no encuentra la entrada adecuada en la tabla, lanza una petición ARP multidifusión a todos los host de su red, hasta encontrar respuesta, momento en el que incorpora la nueva entrada en su tabla ARP y envía los paquetes al destino. Si la máquina destino no existe, no habrá respuesta ARP alguna. En estos casos, el protocolo IP de la máquina origen descartará las tramas dirigidas a esa dirección IP.
26. Protocolo ARP Cuando un host realiza una petición ARP y es contestado, o cuando recibe una petición o trama, actualiza su tabla ARP con las direcciones obtenidas. Estas entradas en la tabla tienen un tiempo de vida limitado, con objeto de no sobrecargar la tabla con datos innecesarios, que suele ser de unos 20 minutos. Si queréis ver la tabla ARP de vuestra máquina, tan sólo tenéis que abrir la consola del sistema y escribir el comando "arp -a". Si no encontráis entradas, abrid el navegador y hacer una petición HTTP a cualquier página web. Si volvéis a introducir en la consola el camando os aparecerá la entrada ARP del router o proxy que uséis para salir a Internet. En mi caso he obtenido la siguiente entrada:
27. Subcapa de Enlace Lógico (LLC) Permite que parte de la capa de enlace de datos funcione independientemente de las tecnologías existentes. Esta subcapa proporciona versatilidad en los servicios de los protocolos de la capa de red que está sobre ella, mientras se comunica de forma efectiva con las diversas tecnologías que están por debajo. El LLC, como subcapa, participa en el proceso de encapsulamiento. La Subcapa de Enlace Lógico transporta los datos de protocolo de la red, un paquete IP, y agrega más información de control para ayudar a entregar ese paquete IP en el destino, agregando dos componentes de direccionamiento:elPunto de Acceso al Servicio Destino (DSAP) y el Punto de Acceso al Servicio Fuente (SSAP). Luego este paquete IP reempaquetado viaja hacia la subcapa MAC para que la tecnología específica requerida le adicione datos y lo encapsule.La subcapa LLC de la Capa de Enlace de Datos administra la comunicación entre los dispositivos a través de un solo enlace a una red. LLC se define en la especificación IEEE 802.2 y soporta tanto servicios orientados a conexión como servicios no orientados a conexión, utilizados por los protocolos de las capas superiores. IEEE 802.2 define una serie de campos en las tramas de la capa de enlace de datos que permiten que múltiples protocolos de las capas superiores compartan un solo enlace de datos físico.
28. Control de enlace lógico ( LLC ) Esta capa es la encargada de transmitir tramas entre dos estaciones sin tener que pasar por ningún nodo intermedio . Esta capa debe permitir el acceso múltiple . Esta capa debe identificar todos los posibles accesos a ella , ya sean de una capa superior como estaciones destino u otros . Servicios LLC : el LLC debe controlar el intercambio de datos entre dos usuarios , y para ello puede establecer una conexión permanente , una conexión cuando se requiera el intercambio de datos o una mezcla de ambas ( sólo se establece conexión permanente cuando sea necesaria ) . Protocolo LLC : hay varias formas de utilización de este protocolo que van desde envíos de tramas con requerimiento de trama de confirmación hasta conexiones lógicas entre dos estaciones previo intercambio de tramas de petición de conexión .
29. Control de enlace lógico ( LLC ) Interfaz con las capas superiores y control de errores y de flujo . Cada capa toma las tramas y le añade una serie de datos de control antes de pasarla a la siguiente capa . /<--- segmento TCP ---->/ /<----------- datagrama IP ---------------->/ /<--------- unidad de datos de protocolo LLC ------------->/ /<------------------------------------------ trama MAC ------------------------>/