Capítulo 5 Capa de enlace y LANs 5: DataLink Layer 5-1 Capítulo 5: La capa de enlace de datos Objetivos: Entender los principios detrás de los servicios de la capa de enlace de datos: Detección de errores, correción Compartir un canal broadcast: acceso múltiple Direccionamiento de capa de enlace Transferencia confiable, control de flujo Implementación de varias tecnologías de capa de enlace 5: DataLink Layer 5-2 Capa de enlace 5.1 Introducción y 5.6 Switches de capa de 5.7 PPP servicios 5.2 Detección y corrección de errores 5.3 Protocolos de acceso Múltiple 5.4 Direccionamiento de Capa de Enlace 5.5 Ethernet enlace 5.8 Virtualización de enlaces: ATM, MPLS 5: DataLink Layer 5-3 1 Capa de enlace: Introducción Algo de terminología: hosts y ruteadores son nodos Canales de comunicación que conectan nodos adyacentes a través de caminos de comunicación son links Enlaces cableados Enlaces inalámbricos LANs El PDU de capa 2 es el frame, que encapsula un datagrama La capa de enlace de datos tiene la responsabilidad de transferir datagramas desde un nodo a otro nodo adyacente, a través de un link 5: DataLink Layer 5-4 Capa de enlace: contexto Los datagramas son transferidos por diferentes protocolos de enlace sobre diferentes enlaces: Ejemplo, Ethernet en el primer enlace, Frame relay en los enlaces intermedios, , 802.11 en el último enlace link Cada protocolo de enlace brinda diferentes servicios ejemplo., puede o no proveer rdt (reliable data transfer) sobre el enlace Analogía transorte Viaje desde Princeton a Lausanne limosina: Princeton a JFK avión: JFK a Geneva tren: Geneva a Lausanne turista = datagrama Segmento de la transportación = enlace de comunicación Modo de transporte = protocolo de capa de enlace Agencia de viaje = algoritmo de enrutamiento 5: DataLink Layer 5-5 Servicios de Capa de enlace Entramado (framing), link access: Encapsulado del datagrama dentro del frame, añadiendo encabezado (header) y cola (trailer) Acceso al canal si es um medio compartido Direcciones “MAC” en el encabezado del frame para identificar la fuente y el destino • Diferente de la dirección IP! Entrega confiable entre nodos adyacentes Rara vez utilizado en enlaces de pocos errores (fibra óptica, algunos pares trenzados) Enlaces inalámbricos: alta tasa de errores • Q: Por qué confiabilidad a nivel de enlace y end-end? 5: DataLink Layer 5-6 2 Servicios de la capa de enlace (más) flow control: Detección de error : Acuerdo entre los nodos adyacentes emisor y receptor Errores causado por la atenuación de la señal, ruido. El receptor detecta la presencia de errores: • Señaliza al transmisor para una retransmisión o descarta la trama Corrección de error: El receptor identifica y corrige el/los error/es en bit/s sin necesidad de retransmisión half-duplex y full-duplex Con half duplex, los nodos en los extremos del enlace pueden transmitir, pero no al mismo tiempo 5: DataLink Layer 5-7 Donde está implementada la capa de enlace? En todos los hosts En el adaptador ( network interface card NIC) Tarjeta Ethernet, tarjeta PCMCI card, tarjeta 802.11 host schematic application transport network link cpu memory host bus (e.g., PCI) controller Incorporada a los buses link physical del sistema de los hosts Combinación de hardware, software, firmware physical transmission network adapter card 5: DataLink Layer 5-8 Comunicación de adaptadores datagram datagram controller controller receiving host sending host datagram frame Lado emisor: Lado receptor Encapsula el datagrama en Busca errores, rdt, flow frames control, etc Agrega bits de chequeo Extrae el datagrama y lo de error, rdt, flow pasa a las capas control, etc. superiores en el lado receptor 5: DataLink Layer 5-9 3 Capa de enlace 5.1 Introducción y 5.6 Switches de capa de 5.7 PPP servicios 5.2 Detección y corrección de errores 5.3 Protocolos de acceso Múltiple 5.4 Direccionamiento de Capa de Enlace 5.5 Ethernet enlace 5.8 Virtualización de enlaces: ATM, MPLS 5: DataLink Layer 5-10 Detección de errores EDC= Error Detection and Correction bits (redundancia) D = Datos protegidos por chequeo de errores, puede incluir campos del encabezado • La detección de errores no es 100% confiable! • el protocolo puede perder algunos errores, pero ocurre rara vez • campos EDC largos proporciona mejor detección y corrección otherwise 5: DataLink Layer 5-11 Chequeo de paridad Paridad de un solo Bit : Paridad de bit en dos dimensiones: Detect and correct single bit errors Detecta errores de un solo bit, paridad impar 0 0 5: DataLink Layer 5-12 4 Internet checksum (suma de comprobación) Objetivo: detectar “errores” (ejemplo, bits cambiados) en el paquete transmtido (nota: utilizado solamente en la capa de transporte) Receptor: Transmisor: Trata al contenido del segmento com una secuencia de 16-bit enteros checksum: suma (1’s complemento suma) el contenido del segmento Transmisor pone el valor del checksum dentro del campo checksum UDP Computa el checksum del segmento recibido Revisa si el checksum calculado es igual al valor en el campo checksum: NO – error detectado YES – error no detectado. Pero sin embargo puede haber errores? 5: DataLink Layer 5-13 Checksumming: Cyclic Redundancy Check Vista de los bits de datos, D, como un numero binario Escoger patrón de r+1 bit (generador), G objetivo: escoger r CRC bits, R, de tal manera <D,R> sea exactamente divisible para G (modulo 2) Receptor conoce G, divide <D,R> para G. Si el residuo no es cero: error detectado! Puede detectar todas las ráfagas de errores menores de r+1 bits En la práctica muy usado (Ethernet, 802.11 WiFi, ATM) 5: DataLink Layer 5-14 CRC El objetivo es que T/G no tenga residuo. Es claro que: T = 2rD ⊕ (xor) R 2rD desplaza el mensaje a la izquierda y lo rellena de r ceros (0). 2r D entre G: Dividir 2rD/G= Q Con Residuo R la suma modulo 2 basada en la operación OR- exclusivo: 0 ⊕ 0 = 0 0 ⊕ 1 = 1 1 ⊕ 0 = 1 1 ⊕ 1 = 0. Entonces, dividir 2rD entre G y usar el residuo como el CRC. 5: DataLink Layer 5-15 5 CRC Transmisor: Mensaje 10011010 Generador 1101 Mensaje Generador 10011010000 1101 1101 11111001 1001 1101 1000 1101 1011 1101 1100 1101 1000 1101 101 Residuo 5: DataLink Layer 5-16 CRC Receptor: Mensaje Divide lo recibido para generador Residuo debe ser 0; de otra manera, hubo error en transmisión Generador 10011010101 1101 1101 11111001 1001 1101 1000 1101 1011 1101 1100 1101 1101 1101 0 Residuo 5: DataLink Layer 5-17 Capa de enlace 5.1 Introducción y 5.6 Switches de capa de 5.7 PPP servicios 5.2 Detección y corrección de errores 5.3 Protocolos de acceso Múltiple 5.4 Direccionamiento de Capa de Enlace 5.5 Ethernet enlace 5.8 Virtualización de enlaces: ATM, MPLS 5: DataLink Layer 5-18 6 Protocolos y enlaces de acceso múltiple Dos tipos de “enlaces”: Punto a punto PPP para acceso dial-up Enlace punto a punto entre Ethernet switch y host broadcast (cable o medio compartido) old-fashioned Ethernet HFC: Hybrid Fiber Cable 802.11 LAN inalámbrica Cable compartido (e.g., cable Ethernet) RF compartido (e.g., 802.11 WiFi) Personas en una fiesta RF compartido (aire compartido, acoustical) (satellite) 5: DataLink Layer 5-19 Protocolos de acceso Múltiple Unico canal broadcast compartido Dos o más transmisiones simúltaneas: interferencia colisión si un nodo recibe dos o más señales al mismo tiempo Protocolo de acceso multiple Algoritmo distribuído que determina cómo los nodos comparten el canal, y determina cuando el nodo puede transmitir La comunicación acerca de compartir el canal debe utilizar el mismo canal! No canal out-of-band para coordinación 5: DataLink Layer 5-20 Protocolo de acceso múltiple ideal Canal Broadcast con velocidad R bps 1. Cuando un nodo quiere transmitir, lo hará a una velocidad R. 2. Cuando M nodos quieren transmitir, cada uno enviará a una velocidad promedio R/M 3. Totalmente descentralizado: No hay un nodo especial para coordinar las transmisiones No hay sincronización de relojes, slots 4. simple 5: DataLink Layer 5-21 7 Protocolos MAC : taxonomía Tres grandes clases: Canal particionado divide al canal en “piezas” pequeñas (time slots, frecuencia, código) Asigna una pieza a un nodo para su uso exclusivo Acceso randómico Canal no dividido, permite colisiones “recuperación” de las colisiones “Toma turnos” Los nodos toman turnos, pero los nodos con más tramas (frames) para enviar podrían tomar turnos más largos 5: DataLink Layer 5-22 Protocolos MAC de canal particionando :TDMA TDMA: time division multiple access Acceso al canal en "rondas" Cada estación tiene un slot de longitud fija (longitud = tiempo de transmisión de la trama) en cada ronda Los slots sin usar quedan libres ejemplo: Lan con 6-estaciones, 1,3,4 tienen paquetes, slots 2,5,6 quedan libres 6-slot frame 1 3 4 1 3 4 5: DataLink Layer 5-23 Protocolos MAC de canal particionado: FDMA FDMA: frequency division multiple access El espectro del canal se divide en bandas de frecuencia A cada estación se le asigna una banda de frecuencia fija El tiempo de transmisión no utilizado en las bandas de frecuencia queda libre ejemplo: LAN con 6-estaciones 1,3,4 tienen paquetes, las bandas de frecuencias 2,5,6 están libres FDM cable frequency bands time 5: DataLink Layer 5-24 8 Protocolos de acceso randómico Cuando un nodo tiene un paquete para enviar Transmite a la velocidad total del canal R. No existe “a priori “ coordinación entre nodos Dos o más nodos transmitiendo ➜ “colisión”, Protocolo MAC de acceso randómico especifican: Cómo detectar colisiones Cómo recuperarse de las colisiones (ejemplo, a través de retransmisiones retrasadas) Ejemplos de protocolos MAC de acceso randómico: ALOHA ranurado, ALOHA CSMA, CSMA/CD, CSMA/CA 5: DataLink Layer 5-25 ALOHA ranurado Hipótesis: Todas las tramas del mismo tamaño El tiempo está dividido en slots de igual tamaño ( tiempo para transmitir 1 trama) Los nodos comienzan a transmitir solo al comienzo de cada slot Los nodos están sincronizados (saben cuando comienza cada slot) si 2 o más nodos transmiten en un slot, todos los nodos detectan la colisión antes que termine el slot Operación: Cuando un nodo obtiene una trama nueva , transmite en el siguiente slot Si no hay colisión: el nodo puede enviar una nueva trama en el siguiente slot Si hay colisión: el nodo retransmite la trama en cada slot subsiguiente con probabilidad p hasta que tenga exito 5: DataLink Layer 5-26 ALOHA ranurado Ventajas Un único nodo activo (con tramas para enviar) puede transmitir continuamente a la velocidad máxima del canal R Altamente descentralizado: sólo los slots necesitan estar sincronizados, cada nodo decide por si mismos simple Desventajas Colisiones, desperdicio de slots Slots vacíos Los nodos deberían ser capaces de detectar colisiones en un tiempo menor al tiempo de transmisión del paquete Sincronización de reloj 5: DataLink Layer 5-27 9 Eficiencia ALOHA ranurado Eficiencia : Fracción de slots exitosos en un tiempo largo, con muchos nodos y todos con muchas tramas para enviar supuesto: N nodos con varias tramas (nuevas y viejas) para enviar, cada uno transmite en un slot con probabilidad p Probabilidad que un nodo dado tenga éxito en un slot= p(1p)N-1 Probabilidad de que un nodo arbitrario tenga éxito en un slot= Np(1-p)N-1 Máx eficiencia: encontrar p* que maximize Np(1-p)N-1 Para algunos nodos, tome el limite de Np*(1-p*)N-1 cuandos N tiende a infinito, nos da : Max eficiencia = 1/e = .37 Lo mejor posible: canal utilizado exitosamente el 37% del tiempo! 5: DataLink Layer ! 5-28 ALOHA puro (no ranurado) Aloha sin slots: más simple, sin sincronización Cuando la primera trama llega transmite inmediatamente La probabilidad de colisión se incrementa: La trama enviada en t0 colisiona con otras tramas enviadas en [t0-1,t0+1] 5: DataLink Layer 5-29 Eficiencia del Aloha puro P(éxito para un nodo dado) = P(nodo transmita) . P(otros nodos no transmitan en [t0-1,t0] . P(otros nodos no transmitan en [t0,t0 +1] = p . (1-p)N-1 . (1-p)N-1 = p . (1-p)2(N-1) … calculando el p optimo y luego con N -> infinito ... Eficiencia máxima = 1/(2e) = .18 Aún peor que el Aloha ranurado! 5: DataLink Layer 5-30 10 CSMA (Carrier Sense Multiple Access) CSMA: escuchar antes de transmitir: Si el canal esta libre: transmitir la trama entera Si el canal sensado está ocupado, diferir la transmisión Analogía humana: ¡no interrumpir a los otros! Colisiones CSMA 5: DataLink Layer 5-31 5: DataLink Layer 5-32 spatial layout of nodes Las colisiones pueden aún ocurrir: El retardo de propagación tiene como consecuencia que dos nodos puedan no oir la transmisión del otro colisión: El tiempo completo de la transmisión de la trama se desperdicia nota: El rol de la distancia & el retardo de propagación para inferir la probabilidad de colisión CSMA/CD (Collision Detection) CSMA/CD: si hay presencia de portadora se difiere la transmisión , como en CSMA Colisiones detectadas dentro de un corto tiempo Las transmisiones que colisionan son abortadas, reduciendo el desperdicio de canal Detección de colisión: Fácil en LANs alambradas: medición de la señal potencia, comparar señales transmitidas y recibidas Dificultad en LANs inalámbricas: potencia de señal recibida abrumada por la potencia de la transmisión local. Analogía humana: el conversador educado 5: DataLink Layer 5-33 11 CSMA/CD collision detection 5: DataLink Layer 5-34 “Tomando turnos” protocolos MAC Protocolos MAC canal particionado: Eficiencia de canal compartido e imparcialidad en cargas altas Ineficiente a cargas bajas: retardo en acceso al canal, 1/N ancho de banda asignado incluso si unicamente hay 1 nodo activo! Protocolos MAC de acceso randómico Eficiente a cargas bajas: un solo nodo puede utilizar totalmente el canal Carga alta: sobre carga por colisión Protocolos “tomando turnos” protocols Busca lo mejor de los dos mundos! 5: DataLink Layer 5-35 Protocolos MAC ”Tomando Turnos” Polling: El nodo master “invita” a los nodos esclavo (slaves) a transmitir en turnos Tipicamente utilizado con dispositivos slaves “tontos” preocupaciones: overhead por polling latencia Único punto de falla (master) data poll master data slaves 5: DataLink Layer 5-36 12 MAC protocolos “Tomando turnos” Token passing: Token mensaje de control pasado de un nodo a otro secuencialmente. No existe master Preocupaciones: T (nada para enviar) T Overhead por el token latencia Unico punto de falla (token) data 5: DataLink Layer 5-37 Resumen de protocolos MAC Canal particionado, en tiempo, frecuencia Time Division, Frequency Division Acceso Randómico (dinámico), ALOHA, S-ALOHA, CSMA, CSMA/CD Escucha la portadora: fácil en algunas tecnologías (cableada), difícil en otros (inalámbrico) CSMA/CD usado en Ethernet CSMA/CA usado en 802.11 Tomando turnos polling desde un sitio central, token passing Bluetooth, FDDI, IBM Token Ring 5: DataLink Layer 5-38 Capa de enlace 5.1 Introducción y 5.6 Switches de capa de 5.7 PPP servicios 5.2 Detección y corrección de errores 5.3 Protocolos de acceso Múltiple 5.4 Direccionamiento de Capa de Enlace 5.5 Ethernet enlace 5.8 Virtualización de enlaces: ATM, MPLS 5: DataLink Layer 5-39 13 Direcciones MAC y ARP Dirección IP 32-bit: Dirección de capa de red Usado para que el datagrama llegue a su destino en una subnet IP Dirección MAC (o LAN o física o Ethernet): funcion: llevar la trama dese una interface a otra interface Dirección MAC de 48 bit (para la mayoría de LANs) conectada físicamente a la misma red • quemada en la ROM de la NIC, también algunas veces configurable por software 5: DataLink Layer 5-40 Dirección LAN y ARP Cada adaptador en la LAN tiene una única dirección LAN 1A-2F-BB-76-09-AD 71-65-F7-2B-08-53 LAN (cableado e inalámbrico) Dirección Broadcast = FF-FF-FF-FF-FF-FF = adaptador 58-23-D7-FA-20-B0 0C-C4-11-6F-E3-98 5: DataLink Layer 5-41 Direcciones LAN (más) Direcciones MAC asignación administrada por la IEEE Los fabricantes compran una porción del espacio de direcciones MAC (para asegurar irrepetibilidad) analogía: (a) Dirección MAC : como el número de cédula de identidad (b) Dirección IP: como la dirección postarl Direcciones MAC planas ➜ portabilidad Puede moverse una tarjeta LAN de una LAN a otra Direcciones IP son jerárquicas y NO portables direcciones depende de la subnet IP a la cual el nodo esta conectada 5: DataLink Layer 5-42 14 ARP: Address Resolution Protocol Cada nodo IP (host, Pregunta: como determinar La dirección MAC de B Conociendo su dirección IP? 137.196.7.78 1A-2F-BB-76-09-AD 137.196.7.23 137.196.7.14 router) en una LAN tiene una tabla ARP Tabla ARP : correspondencia de direcciones IP/MAC para algunos nodos de la LAN < dirección IP ; dirección MAC; TTL> LAN 71-65-F7-2B-08-53 137.196.7.88 58-23-D7-FA-20-B0 0C-C4-11-6F-E3-98 TTL (Time To Live): tiempo después del cual la dirección mapeada será olvidad (típicamente 20 min) 5: DataLink Layer 5-43 Protocolo ARP: La misma LAN (network) A quiere envier un datagrama a B, y la dirección MAC de B no esta en la tabla ARP de A. Un paquete de consulta ARP broadcasts conteniendo la dirección IP de B es enviado Dirección destino MAC = FF-FF-FF-FF-FF-FF Todas las máquinas en la LAN reciben la consulta ARP B recibe el paquete ARP, contesta a A con su dirección MAC La trama es enviada a la dirección MAC de A (unicast) A cachea (guarda) el mapeo de direccioes IP-to-MAC en parejas en su direcci tabla ARP hasta que la información se convierta en vieja (times out) soft state: la information vieja expira a menos que sea actualizada (refrescada) ARP es “plug-and-play”: Los nodos crean sus tablas ARP sin intervención del administrador de red 5: DataLink Layer 5-44 Direccionamiento: enrutamiento a otra LAN Escenario: envío de un datagrama desde A a B via R, asuma que A conoce la dirección IP de B 88-B2-2F-54-1A-0F 74-29-9C-E8-FF-55 A 111.111.111.111 E6-E9-00-17-BB-4B 1A-23-F9-CD-06-9B 222.222.222.220 111.111.111.110 111.111.111.112 R 222.222.222.221 222.222.222.222 B 49-BD-D2-C7-56-2A CC-49-DE-D0-AB-7D 2 tablas ARP en el router R, una para cada red IP (LAN) 5: DataLink Layer 5-45 15 A crea un datagrama IP con origen A, destino B A usa ARP para obtener la dirección MAC de R para 111.111.111.110 A crea una trama de enlace de datos con la dirección MAC de R como destino, la trama conitene un datagrama IP A-to-B La NIC de A envía la trama La NIC de R recibe la trama R remueve el datagrama IP de la trama Ethernet, mira si esta destinado para B R usa ARP para obtener la dirección MAC de B R crea una trama que contiene el datagrama IP A-to-B y lo envía a B 88-B2-2F-54-1A-0F 74-29-9C-E8-FF-55 A E6-E9-00-17-BB-4B 222.222.222.221 1A-23-F9-CD-06-9B 111.111.111.111 222.222.222.220 111.111.111.110 111.111.111.112 R 222.222.222.222 B 49-BD-D2-C7-56-2A CC-49-DE-D0-AB-7D 5: DataLink Layer 5-46 Capa de enlace 5.1 Introducción y 5.6 Switches de capa de 5.7 PPP servicios 5.2 Detección y corrección de errores 5.3 Protocolos de acceso Múltiple 5.4 Direccionamiento de Capa de Enlace 5.5 Ethernet enlace 5.8 Virtualización de enlaces: ATM, MPLS 5: DataLink Layer 5-47 Ethernet Tecnología LAN alambrada “dominante” : barata $20 por NIC Tecnología LAN usada primero ampliamente simple, barata comparada con LANs token y ATM Se ha mantenido con velocidades: 10 Mbps – 10 Gbps Bosquejo de la Ethernet de Metcalfe 5: DataLink Layer 5-48 16 Topología estrella Topología de bus muy popular a mediados de lo 90s Todos los nodos están en el mismo dominio de colisión (pueden colisionar con cualquier otro) Hoy: prevalece la topología estrella Un switch activo en el centro Cada “spoke” core un protocolo Ethernet (separado) Los nodos no colisionan unos con otros switch bus: coaxial cable star 5: DataLink Layer 5-49 Estructura de la trama Ethernet El adaptador transmisor encapsula el datagrama IP (u otro paquete de otro protocolo de red) en una trama Ethernet Preambulo: 7 bytes con un patrón 10101010 seguidos por un byte con el patrón 10101011 usado para sincronización con el receptor, velocidad del reloj de transmisor 5: DataLink Layer 5-50 Estructura de la trama Ethernet (más) Direcciones: 6 bytes Si el adaptador receptor recibe una trama que concuerde con la driección destino o con dirección broadcast (ejemplo paquete ARP), el pasa el dato del frame al protocolo de capa de red De otra manera, el adaptador descarta la trama Tipo: indica el protocolo de capa superior (mayormente IP pero puede haber otras opciones como Novell IPX, AppleTalk) CRC: Revisado en el receptor, si un error es detectado, la trama es descartada 5: DataLink Layer 5-51 17 Ethernet: no confiabe, no orientado a la conexión No orientado a la conexión (connectionless): no hay handshaking entre las NICs del transmisor y el receptor No confiabler (unreliable): La NIC del receptor no envía acks o nacks a la NIC transmisor flujo de datagramas que pasan a la capa de red pueden tener gaps (datagramas perdidos) gaps serán llenados si la aplicación utiliza TCP De otra forma la aplicación verá los gaps Protocolo MAC Ethernet: sin ranuras CSMA/CD 5: DataLink Layer 5-52 Algoritmo Ethernet CSMA/CD 4. Si el NIC detecta otra 1. NIC recibe el datagrama transmisión mientras desde la capa de red , crea estaba transmitiendo, la trama aborta y envía una señal de 2. Si la NIC sensa jam desocupado el canal, inicia la transmisión del a trama 5. Después de abortar, el NIC entra al algoritmo si la NIC sensa el canal exponential backoff: ocupado, espera hasta que despué de la colisión mth, el canal se desocupe y luego transmite el NIC escoje randomicamente K de 3. Si el NIC transmite toda {0,1,2,…,2m-1}. NIC espera la trama sin detectar otra K·512 bit times, regresa al transmisión, el NIC tuvo paso 2 exito! 5: DataLink Layer 5-53 Ethernet’s CSMA/CD (más) Señal Jam: asegura que todos Exponential Backoff: los transmisores están Objetivo: adaptar los enterados de la colisión; 48 intentos de retransmisione a bits un estimado de carga actual Bit time: .1 microsegundo para Carga pesada: espera Ethernet de 10 Mbps randomica será larga Ethernet ; Primera colisión: escoje un K para K=1023, tiempo de entre {0,1}; retardo es is K· espera es 50 msec 512 bit transmission times Despúes de la segunda colisión: escojerá K entre {0,1,2,3}… Luego de 10 colisiones, se escojerá a K entre (0,1,2,3,4,…,1023} 5: DataLink Layer 5-54 18 Eficiencia CSMA/CD Tprop = máximo retardo de propagación entre dos nodos de la LAN ttrans = tiempo para transmitir una tram de tamaño máximo efficiency = 1 1 + 5t prop /t trans eficiencia se acerca a 1 cuando tprop se acerca a 0 cuando ttrans se acerca a infinito Mejor desempeño que ALOHA: y además simple, barato y descentralizado! 5: DataLink Layer 5-55 802.3 Ethernet Standards: Capas enlace & física algunos diferentes estandares Ethernet En común el protocolo MAC y el formato de la trama Velocidades diferentes: 2 Mbps, 10 Mbps, 100 Mbps, 1Gbps, 10G bps Medio de capa física diferente: fiber, cable application transport network link physical MAC protocol and frame format 100BASE-TX 100BASE-T2 100BASE-FX 100BASE-T4 100BASE-SX 100BASE-BX copper (twister pair) physical layer fiber physical layer 5: DataLink Layer 5-56 Codificación Manchester Usada en 10BaseT Cada bit tiene una transición Permite a los relojes en los nodos transmisor y receptor sincronizarse con el otro No necesita un reloj global centralizado entre los nodos! 5: DataLink Layer 5-57 19 Capa de enlace 5.1 Introducción y 5.6 Switches de capa de 5.7 PPP servicios 5.2 Detección y corrección de errores 5.3 Protocolos de acceso Múltiple 5.4 Direccionamiento de Capa de Enlace 5.5 Ethernet enlace 5.8 Virtualización de enlaces: ATM, MPLS 5: DataLink Layer 5-58 Hubs … capa física (“tontos”) repetidores: Los bits entrantes por un enlace salen por todos los otros enlaces a la misma velocidad Todos los nodos conectados a un hub pueden colisionar con otro No hay buffering de trama No hay CSMA/CD en un hub: las NICs de los hosts detectan las colisiones twisted pair hub 5: DataLink Layer 5-59 Switch Dispositivo de capa de enlace: más listo que un hub, toma rol activo guarda, forward tramas Ethernet las direcciones MAC de las tramas entrantes, selectivamente forward la trama a uno o algunos enlaces de salida cuando la trama es entregada en un segmento usa CSMA/CD para acceder al mismo Examina transparente Los hosts desconecen la presencia de los switches plug-and-play, self-learning 5: DataLink Layer switches no necesitan de mayor configuración 5-60 20 Switch: permiete múltiples transmisiones simultáneas Los hosts tienen conexiones directas dedicadas al switch El switch hacen buffer de los paquetes Protocolo Ethernet es usado en cada enlace de entrada, no hay colisiones; full duplex C’ B 6 1 2 3 4 5 C Cada enlace está en su propio dominio de colisión B’ switching: simultáneamente Ato-A’ y B-to-B’ , sin colisiones A No es posible con el hub tonto A’ switch with six interfaces (1,2,3,4,5,6) 5: DataLink Layer 5-61 Tabla del Switch P: Como el switch conoce que A’ es alcanzable via interface 4, B’ es alcanzable via interface 5? R: cada switch tiene una tabla de switch, en cada entrada: A C’ B 6 Dirección MAC del host, interface para alcanzar al host, tiempo 1 2 3 4 5 Parecido a una tabla de C enrutamiento! P: como se crean las entradas, como se mantienen en la tabla de switch? B’ Algo parecido a los protocolos de enrutamiento? A’ switch with six interfaces (1,2,3,4,5,6) 5: DataLink Layer Switch: auto-aprendizaje aprende cual hosts puede ser alcanzado a través de cual interface El switch 5-62 Source: A Dest: A’ A A A’ C’ Cuando una trama es recibida, el switch “aprende” la localización del transmisor: segmento de LAN entrante Graba la pareja transmisor/localización en la tabla de switch B 6 5 2 3 4 C B’ A’ MAC addr interface TTL A 1 1 60 Tabla Switch (inicialmente vacía) 5: DataLink Layer 5-63 21 Switch: filtro/entrega de trama Cuando la trama es recibida: 1. Graba el enlace asociado con el host transmisor 2. Busca en la tabla de switch usando la dirección destino MAC 3. if la entrada es encontrada para el destino then { if destino esta en el mimo segmento del cual la trama arribo then descarta la trama else entregue la trama a la interface indicada forward en todos menos en la interface } Por donde fue recibido else inundar 5: DataLink Layer Autoaprendizaje, ejemplo de forwarding: 5-64 Source: A Dest: A’ A A A’ C’ B Destino de la trama no conocido: inundación Localización conocida para el destino A : A6A’ 1 2 3 4 5 C A’ A envío selecitivo B’ A’ MAC addr interface TTL A A’ 1 4 60 Tabla de Switch 60 (inicialmente vacío) 5: DataLink Layer 5-65 Red institucional to external network mail server router web server IP subnet 5: DataLink Layer 5-66 22 Switches vs. Routers Ambos son dispositivos store-and-forward routers: dispositivos de capa de red (examina los headers de capa de red) switches son dispositivos de capa de enlace Los routers mantienen las tablas de enrutamiento, implementan los algoritmos de enrutamiento Los switches mantienen las tablas de switches, implementa filtering, algoritmos de aprendizaje 5: DataLink Layer 5-67 5: DataLink Layer 5-68 5: DataLink Layer 5-69 A switch using VLAN software Two switches in a backbone using VLAN software 23 Capa de enlace 5.1 Introducción y 5.6 Switches de capa de 5.7 PPP servicios 5.2 Detección y corrección de errores 5.3 Protocolos de acceso Múltiple 5.4 Direccionamiento de Capa de Enlace 5.5 Ethernet enlace 5.8 Virtualización de enlaces: ATM, MPLS 5: DataLink Layer 5-70 Control de Enlace de datos punto a punto Un transmisor, un receptor, un enlace: más fácil que el enlace broadcast: no Media Access Control no necesita un direccionamiento MAC explícito ejemplo, enlace dialup, línea ISDN Protocolos populares punto a punto de control de enlace de datos: PPP (point-to-point protocol) HDLC: High level data link control 5: DataLink Layer 5-71 Requerimientos del diseño PPP [RFC 1557] packet framing: encapsulación del datagrama de capa de red en una trama de enlace de datos Lleva el dato de la capa de red de cualquier protocolo de capa de red (no solamente IP) al mismo tiempo Transparencia de bit: deberá llevar algún patrón de bit en el campo de datos Detección de errores (no corrección) connection liveness: detecta, falla en la señal de enlace y le informa a la capa de red Negociación de direccionamiento de capa de red: endpoint puede aprender/configurar cada una de las otras direcciones de red 5: DataLink Layer 5-72 24 PPP ( no-requerido) no corrección de errores/recuperación no control de flujo Entrega fuera de orden OK No necesidad de soportar enlaces multipuntos (Ejemplo, polling) Recuperación de errores, control de flujo, re-ordenamiento de datos todo esto relegado a las capas superiores! 5: DataLink Layer 5-73 Trama de Datos PPP Flag: delimitador (framing) Address (dirección): solamente una opción, no hace nada Control: no hace nada; en el futuro posiblemente múltples campos de control Protocolo: protocolo de capa superior al cual la trama es entregada(ejemplo, PPP-LCP, IP, IPCP, etc) 5: DataLink Layer 5-74 Trama de datos PPP info: dato de la capa superior que es llevado check: para detección de error, cyclic redundancy check 5: DataLink Layer 5-75 25 Byte Stuffing requerimiento “transparencia de datos” : campo de datos deberá permitirsele incluir el patrón de flag <01111110> P: si se recibe <01111110> es dato o flag? Transmisor: añade (“stuffs”) extra byte < 01111101> después de cada byte de dato < 01111110> Receptor: Dos bytes 01111101 en una fila: descartar el primer byte, continue la recepción de datos Solo 01111110: byte de flag 5: DataLink Layer 5-76 5: DataLink Layer 5-77 5: DataLink Layer 5-78 Byte Stuffing flag byte pattern in data to send flag byte pattern plus stuffed byte in transmitted data PPP Data Control Protocol Antes del intercambio de datos de la capa de red, los peers de enlace de datos deben, Configurar el enlace PPP (longuitud max. de la trama, autenticación) Aprender/configurar la red información de capa Para IP: carry IP Control Protocol (IPCP) msgs (protocol field: 8021) para configurar/aprender direcciones IP 26