Pro Yearly is on sale from $80 to $50! »

Ayudantía 10 Redes de Computadores (Stgo, 2011-1)

Ayudantía 10 Redes de Computadores (Stgo, 2011-1)

Ayudantía 10 del ramo Redes de Computadores dictado el primer semestre del 2011 en el campus Santiago San Joaquín de la USM.

3f4a05fa73be3e28667149056fbd50a1?s=128

Gonzalo Correa

November 13, 2011
Tweet

Transcript

  1. Redes de Computadores Ayudantía 10 Gonzalo Correa gonzalo.correa@alumnos.usm.cl ILI-256, Redes

    de Computadores 09-06-2011
  2. CAPA DE ENLACE Introducción 2 ILI-256, Redes de Computadores

  3. Capa de Enlace • Hasta ahora, sabemos como mover datos

    de un destino a otro, partiendo desde una aplicación, pasando los datos al socket, para posteriormente ser encapsulados y enviados a través de una ruta, ojalá óptima. • Pero, ¿Qué pasa en un enlace? ¿Hay transferencia segura de datos entre dos routers? ILI-256, Redes de Computadores 3
  4. Terminología • Nodos – Llamaremos nodos a los hosts y

    a los routers, de manera indistinta • Enlaces (o links) – Los canales de comunicación que conectan a dos nodos adyacentes, serán llamados enlaces o links. • Frames – Los paquetes en esta capa son frames, que llevan datagramas de la capa de red. ILI-256, Redes de Computadores 4
  5. Capa de Enlace • La capa de red se encarga

    de transferir datagramas desde un nodo a otro nodo adyacente a través de un link. • Ejemplo: Viaje. ILI-256, Redes de Computadores 5
  6. Capa de Enlace • Es importante tener en cuenta, que

    cada enlace puede tener su propio protocolo! – Primer link: Ethernet – Segundo link: PPP – Tercer link: WiFi • Esto lleva a más trabajo para la capa de red! – Asegurar enlace lógico end-to-end, en una serie de enlaces heterogéneos ILI-256, Redes de Computadores 6
  7. Servicios • Framing – Encapsular un datagrama en un frame.

    • Acceso al enlace – Un protocolo de control de acceso al medio (MAC, medium access control) establece reglas para transmitir un frame por un link. • Entrega asegurada – Asegurar que un datagrama llegará de un nodo a otro sin errores. – En caso de error, se usa ACK y retransmisión. – Su uso, depende del tipo de enlace usado. ILI-256, Redes de Computadores 7
  8. Servicios • Control de flujo – Para evitar que emisor

    inunde con frames al receptor. Similar a TCP. • Detección de errores – Errores pueden presentarse por ruido electromagnético o atenuación de señal – La detección de errores se realiza a nivel de hardware, y de una manera más sofisticada que lo que hacen la capa de transporte y la de red. ILI-256, Redes de Computadores 8
  9. Servicios • Corrección de errores – Además de detectar errores,

    estos pueden ser corregidos. – Generalmente la corrección se aplica solo al header del frame. • Half-duplex y Full-duplex – Full-duplex: Enviar y recibir frames a través del link, al mismo tiempo. – Half-duplex: Solo enviar o recibir frames en un instante dado, a través del link. ILI-256, Redes de Computadores 9
  10. Implementación de la capa de enlace ILI-256, Redes de Computadores

    10 La capa de enlace es la capa del stack de protocolos de internet en donde el software y el hardware “conviven”
  11. DETECCIÓN Y CORRECCIÓN DE ERRORES ILI-256, Redes de Computadores 11

  12. • Recordar que la detección de errores no es a

    prueba de fallas • Existen tres técnicas – Chequeo de paridad (Parity Check) – Checksum – Cyclic Redundancy Check (CRC) • Veremos solo las nuevas técnicas ILI-256, Redes de Computadores 12
  13. Parity Check • Se agrega un bit a los datos

    (bit de paridad), para poder realizar algún tipo de paridad • Esquema de paridad par – El bit de paridad es 1 solo si la cantidad de 1s en los datos es impar. • Esquema de paridad impar – El bit de paridad es 1 solo si la cantidad de 1s en los datos es par. ILI-256, Redes de Computadores 13
  14. Parity Check Datos Bit de Paridad Datos Bit de Paridad

    0111 0001 1010 1011 0 0101 0001 1010 1011 0 ILI-256, Redes de Computadores 14 Paridad Impar Paridad Par 1 0 1 0 1 1 1 1 1 1 0 0 0 1 1 1 0 1 0 0 1 0 1 1 0 1 0 1 1 1 0 1 1 0 0 0 1 1 1 0 1 0 0 1 0 1 Paridad Par en 2 Dimensiones
  15. Parity Check • La detección en dos dimensiones nos permite

    identificar el bit exacto que está corrupto • Las técnicas que además de detectar errores, los pueden corregir, se llaman forward error correction (FEC) ILI-256, Redes de Computadores 15
  16. CRC • Para calcular el CRC, se tiene lo siguiente

    • La idea es encontrar un valor R tal que sea divisible por un patrón inicial, G (r+1 bits) ILI-256, Redes de Computadores 16
  17. CRC • O sea, • Ejemplo – D: 101110 –

    r: 3 – G: 1001 ILI-256, Redes de Computadores 17
  18. MULTIPLE ACCESS PROTOCOLS MAP ILI-256, Redes de Computadores 18

  19. MAPs • Existen dos tipos de enlaces de red –

    Punto-a-punto • Un emisor en un extremo, un receptor en el otro extremo del enlace. • Ej: PPP – Broadcast • Muchos emisores y receptores a tráves de un solo canal • Ej: Ethernet, WiFi ILI-256, Redes de Computadores 19
  20. Multiple Access Problem • Problema al tener enlace broadcast –

    Coordinar a los emisores/receptores para usar el canal compartido • Ejemplo: Clase – “Todos tienen la oportunidad de hablar” – “No hablar hasta que se les ha hablado” – “No monopolizar la conversación” – “Levantar la mano si se tiene una pregunta” – “No interrumpir a alguien que está hablando” – “No dormirse mientras alguien te está hablando” ILI-256, Redes de Computadores 20
  21. MAPs • Si varios nodos mandan frames al mismo tiempo,

    los demás nodos reciben multiples frames al mismo tiempo – Colisión de frames • En este caso, ninguno de los frames es recibido, y son descartados. El tiempo de utilización del canal fue desperdiciado! • La idea de los MAPs es coordinar las transmisiones de los emisores, para evitar o eliminar la posibilidad de colisión ILI-256, Redes de Computadores 21
  22. MAPs • Cuatro características que debería tener un MAP en

    un enlace de velocidad R bps – Cuando un solo nodo quiere enviar datos, tendrá un throughput de R bps. – Cuando M nodos quieren enviar datos, todos tienen un throughput de R/M bps. Ojo, que no es throughput instantáneo! – El protocolo es descentralizado – El protocolo es simple ILI-256, Redes de Computadores 22
  23. Tipos de MAPs • Channel Partitioning – TDM • N

    nodos = N slots por frame • R/N bps asegurados por frame – FDM • N nodos = N canales • R/N bps asegurados por canal – CDMA • Lo veremos más adelante  ILI-256, Redes de Computadores 23
  24. Tipos de MAPs • Random Access – ALOHA ranurado (slotted)

    – ALOHA – CSMA ILI-256, Redes de Computadores 24
  25. ALOHA ranurado • Se asume que – Todos los frames

    son de L bits – Tiempo dividido en slots de L/R segundos – Los nodos empiezan a transmitir frames solo al inicio de un slot – Los nodos están sincronizados, y saben cuando empieza un slot – Cuando hay colisión en un slot, todos los nodos detectan la colisión antes de que termine el slot ILI-256, Redes de Computadores 25
  26. ALOHA ranurado • Cuando hay colisión, el nodo intentará retransmitir

    el frame en todos los slots subsecuentes, con una probabilidad p – Es decir, el frame será retransmitido con una probabilidad p, o se esperará al siguiente slot con una probabilidad 1-p ILI-256, Redes de Computadores 26
  27. ALOHA ranurado ILI-256, Redes de Computadores 27

  28. ALOHA ranurado • Probabilidad de que un nodo haga una

    transmisión exitosa N*p(1-p)^(N-1) • En la realidad, la eficiencia de este protocolo es de solo el 37% ILI-256, Redes de Computadores 28
  29. ALOHA • A diferencia de ALOHA ranurado, en caso de

    colisión, el nodo retransmite inmediatamente el frame con probabilidad p, o espera un tiempo determinado antes de retransmitir con probabilidad 1-p. ILI-256, Redes de Computadores 29
  30. ALOHA ILI-256, Redes de Computadores 30

  31. ALOHA • Probabilidad de que un solo nodo empiece a

    transmitir en un tiempo t – (1-p)^(N-1) • Probabilidad de que mientras un nodo transmite, los demás no transmitan – (1-p)^(N-1) • Finalmente, la eficiencia de ALOHA es la mitad que ALOHA ranurado! ILI-256, Redes de Computadores 31
  32. CSMA • CSMA: Carrier Sense Multiple Access • La idea

    – Escuchar antes de hablar (Carrier Sensing). Si un frame de otro nodo está siendo transmitido, el nodo espera un tiempo random, y vuelve a escuchar (Back off). – Si alguien empieza a hablar al mismo tiempo, dejar de hablar (Collision detection) • Estás reglas se aplican a CSMA y CSMA/CD (CSMA con detección de colisiones) ILI-256, Redes de Computadores 32
  33. Colisión en CSMA ILI-256, Redes de Computadores 33

  34. Colisión en CSMA/CD ILI-256, Redes de Computadores 34

  35. TAKING-TURNS PROTOCOLS Protocolos de Toma de Turnos ILI-256, Redes de

    Computadores 35
  36. Taking-Turns Protocols • Tanto CSMA como ALOHA solo proveen una

    de las características que habíamos visto – Cuando un solo nodo está activo, entonces tiene un throughput de R bps. • Pero, no cumplen con otro muy importante – Cuando M nodos están activos, cada uno tendrá un throughput cercano a R/M bps. • Existen procotolos que cumplen con ambas características, llamados Taking-Turns Protocols (Protocolos de Toma de Turnos) ILI-256, Redes de Computadores 36
  37. Polling Protocol • Se necesita un nodo maestro • El

    maestro controla que nodos pueden transmitir • Cuando un nodo termina de transmitir, el maestro lo detecta por la ausencia de señal, y le avisa al siguiente nodo que puede empezar a transmitir • Este procedimiento es round-robin. • Problemas – Delay para avisarle a un nodo que puede transmitir – Si el maestro falla, la red falla • Ejemplo – Bluetooth ILI-256, Redes de Computadores 37
  38. Token-Passing Protocol • No hay maestro • Los nodos se

    van pasando un frame especial, llamado token. – Nodo 1 se lo pasa a nodo 2, nodo 2 al nodo 3, …, nodo N al nodo 1 • Cuando un nodo tiene el token, pueden transmitir. • Si no tiene nada que transmitir, pasa el token inmediatamente. • Problemas – Si un nodo se cae, se rompe la cadena. – Si un nodo no pasa el token, hay que buscar una manera de hacer circular de nuevo. ILI-256, Redes de Computadores 38
  39. ADDRESSING EN LA CAPA DE ENLACE Link-Layer Addressing ILI-256, Redes

    de Computadores 39
  40. Addressing • Los nodos tienen direcciones en la capa de

    enlace, al igual que en la capa de red. • En realidad, cada interfaz tiene una dirección en la capa de enlace. • Veremos las direcciones MAC, que identifican a cada interfaz en la capa de enlace. ILI-256, Redes de Computadores 40
  41. Direcciones MAC ILI-256, Redes de Computadores 41

  42. Direcciones MAC • Direcciones de 6 bytes, expresadas en notación

    hexadecimal. • Cada byte es expresado como un par de números hexadecimales. • Comparación con la dirección IP – Ejemplo dirección de casa y RUN ILI-256, Redes de Computadores 42
  43. Direcciones MAC • Al enviar un frame en una red

    tipo broadcast (Ethernet, ya lo veremos), todos los nodos reciben el frame y analizan la dirección MAC de destino. Si no es para ellos, descartan el frame. • Dirección MAC de broadcast – FF-FF-FF-FF-FF-FF ILI-256, Redes de Computadores 43
  44. ADDRESS RESOLUTION PROTOCOL ARP ILI-256, Redes de Computadores 44

  45. ARP • Como tenemos direcciones en la capa de red

    y en la capa de enlace, es necesario poder traducir de una a otra. Esto lo realiza el protocolo ARP. • Cuando un nodo quiere enviar un datagrama a otro nodo, conoce la dirección IP, pero necesita conocer la dirección MAC. – ARP funciona solo dentro de subredes! ILI-256, Redes de Computadores 45
  46. ARP ILI-256, Redes de Computadores 46

  47. ARP Dirección IP Dirección MAC TTL 222.222.222.221 88-B2-2F-54-1A-0F 13:45:00 222.222.222.223

    5C-66-AB-90-75-B1 13:52:00 ILI-256, Redes de Computadores 47
  48. ARP • ARP va encapsulado en frames, además de llevar

    direcciones de la capa de red, por lo que debería ser un protocolo de la capa de red. • Pero, un paquete ARP tiene campos con datos de la capa de enlace, por lo que debería ser un protocolo de la capa de enlace. • Finalmente, ARP es un protocolo entre ambas capas! ILI-256, Redes de Computadores 48
  49. Enviando datagramas fuera de la subred ILI-256, Redes de Computadores

    49
  50. ETHERNET ILI-256, Redes de Computadores 50

  51. Ethernet • La tecnología LAN mas conocida y usada. •

    Barato en comparación a token ring, FDDI y ATM • Veremos todos los detalles de este tipo de enlaces ILI-256, Redes de Computadores 51
  52. Ethernet ILI-256, Redes de Computadores 52 hub

  53. Ethernet • Hub – Recrea bits • Al llegar un

    bit por una interfaz, lo copia, aumenta su energía, y lo envía a las demás interfaces. • Red broadcast – Problemas con colisiones • Si llegan dos frames al mismo tiempo, por dos interfaces distintas, hay colisión y los nodos deben retransmitir. ILI-256, Redes de Computadores 53
  54. Ethernet • Switch – Sin colisiones – Realiza store-and-forward packet

    switching – Opera solo hasta la capa 2 – Veremos más detalles, pronto  ILI-256, Redes de Computadores 54
  55. Frame Ethernet ILI-256, Redes de Computadores 55 • Preámbulo tiene

    7 bytes con (10101010) y el último byte con (10101011) • Tipo une capa de enlace con capa de red Preámbulo Dirección de destino Dirección de fuente Tipo Datos CRC 8 bytes 6 bytes 6 bytes 2 bytes 46 a 1500 bytes 4 bytes
  56. Ethernet • Ethernet tiene las siguientes características – Ocupa transmisión

    de banda base • El adaptador manda una señal digital directamente al canal de broadcast, a diferencia de ADSL, que cambian la frecuencia de la señal a otra banda de frecuencias. – Utiliza codificación Manchester • Cada bit contiene una transición ILI-256, Redes de Computadores 56
  57. Codificación Manchester Stream 1 0 0 0 1 0 0

    1 1 1 1 Binario Manchester ILI-256, Redes de Computadores 57
  58. Ethernet • Ethernet entrega un servicio sin conexión (connectionless), no

    confiable – No hay handshake – Si un frame falla o no el chequeo CRC, no se envían ni ACKs ni NAKs • Si frame falla, se descarta. • Recordar que RDT lo entrega TCP! ILI-256, Redes de Computadores 58
  59. CSMA/CD: El MAP de Ethernet • Cuando se tiene un

    hub interconectando los nodos, se tiene una LAN de broadcast. • Ethernet ocupa CSMA/CD como MAP para manejar el broadcast. • El carrier sensing se realiza midiendo el voltaje del enlace • El protocolo CSMA/CD en un adaptador, funciona de la siguiente manera: ILI-256, Redes de Computadores 59
  60. CSMA/CD en Ethernet 1. El adaptador obtiene un datagrama de

    la capa de red, prepara un frame Ethernet y lo pone en un buffer del adaptador 2. Si el adaptador detecta el canal desocupado, es decir, no hay señal en 96 bits de tiempo, transmite el frame. Si no, espera hasta que no haya señal (otros 96 bits de tiempo) y empieza a transmitir. ILI-256, Redes de Computadores 60
  61. CSMA/CD en Ethernet 3. Mientras transmite, el adaptador monitorea si

    es que llega señal de energía de otros adaptadores. Si el adaptador transmite todo el frame sin detectar señal de otros adaptadores, el adaptador terminó su trabajo con el frame. 4. En caso de que haya detectado señal de otros adaptadores, termina de transmitir y manda una señal de interferencia (jam signal) de 48 bits ILI-256, Redes de Computadores 61
  62. CSMA/CD en Ethernet 5. Después de abortar (al terminar de

    enviar la jam signal), el adaptador empieza un backoff exponencial, es decir – Después de tener la n-ésima colisión consecutiva con el mismo frame, el adaptador elige un número K al azar desde {0,1,2,…,(2^m)-1}, donde m = min(n, 10) – El adaptador espera K * 512 bits de tiempo, y después regresa al paso 2. ILI-256, Redes de Computadores 62
  63. SWITCHES DE LA CAPA DE ENLACE ILI-256, Redes de Computadores

    63
  64. Switches • Función principal – Recibir frames de la capa

    de enlace y realizar forwarding hacia un enlace de salida • Transparente para los nodos • Cada interfaz tiene un buffer • Veremos más en detalle estás características ILI-256, Redes de Computadores 64
  65. Forwarding y Filtrado • Filtrado – Determinar si un frame

    debe ser “forwardeado” o descartado • Forwarding – Misma definición que en capa de red para los routers • Estas dos funcionalidades son realizadas en base a una tabla de switching que contiene – Direcciones MAC – Interfaces – Timestamp de la entrada ILI-256, Redes de Computadores 65
  66. Forwarding y Filtrado • Si llega un frame con dirección

    de destino DD- DD-DD-DD-DD-DD, pueden pasar 3 cosas – Si no hay una entrada para esa dirección, se realiza broadcast del frame – Hay una entrada asociada, pero para la misma interfaz por donde llega el frame, por lo que el frame se descarta (Filtrado) – Hay una entrada asociada para una interfaz distinta a la de llegada. El frame se envía al buffer de la interfaz de salida. (Forwarding) ILI-256, Redes de Computadores 66
  67. Auto aprendizaje • La tabla de switching se construye de

    manera automática, dinámica y autónoma. • Es decir – La tabla empieza vacía – Cuando llega un frame, almacena la dirección MAC de fuente, la interfaz por donde llegó, y el timestamp. – Si no llegan frames hacía una dirección MAC dada después de un tiempo (aging time), la entrada es eliminada. • Se puede concluir que los switch son Plug-and- Play ILI-256, Redes de Computadores 67
  68. Propiedades de un switch • Elimina colisiones • Puede usar

    enlaces heterogéneos • Administración simple ILI-256, Redes de Computadores 68
  69. Switches vs Routers Hubs Routers Switches Aislamiento del tráfico NO

    SI SI Plug-and-Play SI NO SI Routing óptimo NO SI NO ILI-256, Redes de Computadores 69