1 / 32

Protocolos elementales de enlace

Protocolos elementales de enlace. Formato de la trama básica: tipo, seq, ack, información Protocolo Simplex (Figura 3-9) Una sola dirección Capas siempre prontas Tiempo de procesamiento nulo Buffer infinito Canal perfecto. Protocolo simple stop-and-wait. Pare y espere (Figura 3-10)

beryl
Download Presentation

Protocolos elementales de enlace

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Protocolos elementales de enlace • Formato de la trama básica: • tipo, seq, ack, información • Protocolo Simplex (Figura 3-9) • Una sola dirección • Capas siempre prontas • Tiempo de procesamiento nulo • Buffer infinito • Canal perfecto

  2. Protocolo simple stop-and-wait • Pare y espere (Figura 3-10) • Velocidad de recepción finita o lo que es equivalente tamaño máximo de buffer en RX • Solución 1: insertar retardo • Como se calcula el retardo ? • si es demasiado corto retransmito de más, • si es muy largo uso bajo del canal • Puede haber variaciones según la carga del receptor • Solución 2: reconocimiento positivo (ACK) • uso half-duplex del canal

  3. Protocolo simple sobre canal con ruido (1) • Las tramas se pueden corromper o perder totalmente. Si se corrompen la suma de comprobación lo detecta • Se agrega código detector • Sólo se reconocen las tramas que llegan bien • Temporizadores para recuperación de errores si no llega el reconocimiento.

  4. Protocolo simple sobre canal con ruido (2) • Problema: • se pierde ACK y se duplica una trama • Necesidad de números de secuencia • Cuantos números de secuencia se necesitan ? • En este protocolo solo 2: 0 y 1 pues hasta no recibir reconocimiento del 0 no intento mandar el 1 • Cuando se espera la trama 0 se rechazan las que no sean 0 y al recibirse se espera por la 1 • Reconocimiento positivo y negativo

  5. Piggybacking • Es interesante el uso del canal para datos en ambas direcciones • Como el campo ACK es parte del encabezado, puedo mandar información en la misma trama de ACK • Esto se llama píggybacking • Problema: Cuanto esperar ? • POCO: debo mandar trama solo con ACK • MUCHO: el TX da timeout

  6. Ventanas deslizantes (1) • Más robustos frente a problemas • Números de secuencia de 0 a 2n-1 (n bits) • Ventana de transmisión • números de secuencia que se pueden transmitir • Ventana de recepción • números de secuencia que se pueden aceptar • Las ventanas de TX y RX no tienen porque tener los mismos límites ni el mismo tamaño

  7. Ventanas deslizantes (2) • Se le permite a la capa 2 más libertad en el órden de transmisión y recepción de tramas • PERO: las debe mandar en orden a la red y la capa física las manda en orden • Los números de secuencia en la ventana del TX son tramas enviadas pero no reconocidas • El TX debe mantener las tramas para eventualmente reenviarlas

  8. Ventanas deslizantes (3) • Si no se dispone lugar en la ventana no se deben aceptar paquetes de la red • La ventana del RX son los números de secuencia que puede aceptar • Si se recibe algo fuera de la ventana se “descarta silenciosamente” • Si lo recibido coincide con el límite inferior, se pasa a la red, se manda ACK y se rota la ventana

  9. Ventanas deslizantes (4) • Caso simple de tamaño de ventana = 1 • Normalmente no hay problemas • PERO: Si ambos extremos empiezan simultáneamente

  10. Problemas de simultaneidad

  11. Uso del canal • Se ha supuesto retardo en viaje de tramas y reconocimientos bajo • Si no lo es, el uso del canal sería muy bajo • Ej. Satélite 50 kpbs con 500 ms de retardo de ida y vuelta • tramas de 1000 bits • se gastaría el 96% del tiempo esperando • La combinación de alto retardo, gran ancho de banda y trama corta es desastrosa

  12. Mejora de uso del canal (1) • No esperar reconocimiento trama a trama • Agrandar la ventana del transmisor • Se mandan tramas para llenar el canal y luego se esperan los reconocimientos • Largo de trama: L bits • Capacidad del canal: b bps • Retardo de ida y vuelta: R segundos • En stop-and-wait el canal se usa • L/b / (L/b+R) = L/(L+bR) si L < bR efic<50%

  13. Mejora de uso del canal (2) • Si en una larga secuencia se pierde una trama que hacemos ? • Descartamos la mala • Mientras el TX se entera ya mandó muchas que pueden haber llegado bien • Dos soluciones: • go back n (RXWin=1) bajo uso del canal • selective repeat (RXwin>1)

  14. Go back n/selective repeat

  15. Números de secuencia y ventanas • Ventana de transmisión TXWin • Si TXWin = MAX_SEQ + 1 • mando 0 a 7 (ventana 8) • recibo ACK=7 • mando otros 0 a 7 • recibo ACK=7 • no se si es que los segundos 0 a 7 llegaron bien o que no llego ninguno • Por eso TXWin <= MAX_SEQ

  16. Números de secuencia y ventanas • Ventana de recepción RXWin • Si se usa repetición selectiva, (RXWin>1) y se aceptan tramas fuera de orden, hay problemas • Si RXWin = MAX_SEQ • TX envía 0 a 6, RX los recibe bien y manda ACKs • RX avanza la ventana para admitir 7 a 5 • se pierden los ACKs y el TX retransmite el 0 • cae en la ventana del RX, se acepta como nuevo • Falla: la nueva vent. se superpone con la vieja • Por eso: RXWin <=(MAX_SEQ+1)/2

  17. Ventanas de TX y RX

  18. Números de secuencia y ventanas • número de buffers del receptor = ventana de recepción y no la cantidad de números de secuencia • Mejora adicional: uso de reconocimientos negativos NAK • cuando se recibe una trama con error • cuando se recibe una trama fuera de secuencia

  19. Especificación y verificación de Protocolos • Alta complejidad en la implementación de protocolos • Se buscan técnicas para la especificación y verificación de protocolos • Problemas • bloqueo (deadlock) • recepción de eventos inesperados • Máquina de estados finita • Redes de Petri

  20. Diagrama de estados

  21. Redes de Petri

  22. Ejemplos • HDLC High-level Data Link Control • Origen SDLC de IBM modificado por ANSI a ADCCP, modificado por ISO a HDLC. • HDLC modificado por ITU-T a LAP y re-modificado luego a LAPB para hacerlo más compatible con las últimas versiones de HDLC • Usado en X25, enlaces punto a punto, etc • Orientado a bits y usa relleno de bits para transparencia de datos

  23. Trama básica de HDLC

  24. Tipos de tramas en HDLC

  25. Enlace de Datos en Internet en enlaces punto a punto • SLIP • Serial Link IP • Objetivo: conectarse a una red con TCP/IP • PPP • Point to Point Protocol • Objetivo: generalizar SLIP

  26. Conexión a Internet

  27. Protocolo SLIP • Flag 0xC0 al final0xC0 => 0xD0 0xC00xD0 => 0xD0 0xD0 • Compresión de encabezamiento • Problemas: • No detecta errores • Sólo soporta IP • Se debe conocer la dirección IP • No hay autentificación de usuario • No es estandard

  28. Protocolo PPP • Provee de: • Entramado (framing) con detección de error • LCP: para conectarse, testear la línea, negociar opciones y terminar una conexión • NCP: una manera de negociar opciones a nivel de capa de red (por ej. la dirección)

  29. Formato de trama en PPP

  30. Diagrama simplificado

  31. 5 48 ATM

More Related