HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL

29

description

HDLC: HIGH-LEVEL DATA LINK CONTROLES EL MÁS IMPORTANTE PROTOCOLO DE CONTROL DE ENLACE DE DATOS: ES PARTE DE LA FAMILIA DE PROTOCOLO ORIENTADOS AL BIT.ES MUY USADO Y ES EL ORIGEN DE UNA FAMILIA DE PROTOCOLOS SIMILARES.DERIVA DEL SDLC DE IBM (CONTROL SINCRÓNICO DE ENLACE DE DATOS).

Transcript of HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL

Page 1: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL
Page 2: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL

HDLC: HIGH-LEVEL DATA LINK CONTROL:

• ES EL MÁS IMPORTANTE PROTOCOLO DE CONTROL DE ENLACE DE DATOS: ES PARTE DE LA FAMILIA DE PROT. ORIENTADOS AL BIT.

• ES MUY USADO Y ES EL ORIGEN DE UNA FAMILIA DE PROTOCOLOS SIMILARES.

• DERIVA DEL SDLC DE IBM (CONTROL SINCRÓNICO DE ENLACE DE DATOS).

Page 3: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL
Page 4: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL

Es un estándar a nivel de enlace de datos que incluye mecanismos para la detección y corrección de errores de propósito general en los enlaces digitales, ofrece una comunicación confiable entre el transmisor y el receptor.

Orientado a bit del nivel de enlace y usan el relleno de bits para lograr la transparencia de los datos; difieren sólo en aspectos menores. El relleno de bits lo define cuando añade un 0 siempre que haya cinco 1 consecutivos siguiendo a un 0.

Es muy extenso, por lo que rara vez se utiliza la implementación completa; lo normal es que se utilicen subconjuntos.

Transmisión síncrona.

Page 5: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL

SE DEFINEN TRES TIPOS DE ESTACIONES: ESTACIÓN PRIMARIA:

Controla el funcionamiento del enlace. Sus tramas se denominan órdenes.

ESTACIÓN SECUNDARIA: Es controlada por la estación primaria. Sus tramas se denominan respuestas. La primaria establece un enlace lógico con c/u de

las secundarias presentes en la línea. ESTACIÓN COMBINADA:

Combina las características de las primarias y de las secundarias.

Emite órdenes y respuestas.

Page 6: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL

Las tres posibles configuraciones del enlace (Estaciones) son: Configuración no balanceada:

Está formada por una estación primaria y una o más secundarias.

Permite transmisión semi-duplex ya que la estación primaria es la que realiza el control de acceso al medio y una estación secundaria podrá emitir tramas solamente cuando la estación primaria lo solicite.

Configuración balanceada. Consiste en dos estaciones combinadas. Permite transmisión full-duplex o semi-duplex.

Configuración simétrica.

Dos estaciones físicas, cada una con una estación lógica, de forma que se conectan una primaria de una estación física con la secundaria de la otra estación física.

Page 7: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL

• Se usa un único formato de trama para todos los intercambios de datos e información de control.

• La cabecera esta integrada por los campos de delimitación, de dirección y de control

• La cola esta integrada por los campos de FCS y de delimitación.

• El campo de datos o información está entre la cabecera y la cola.

Page 8: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL

Falg de inicio y fin: indica el comienzo y final de la trama.

Campo Dirección: identifica a la estación secundaria que ha transmitido o que va a recibir la trama.

Tiene 8 bit , pero puede llegar a tener un múltiplo de 7 bit. El bit menos significativo del octeto indica: Si es “1” el indica que es el ultimo octeto del campo dirección y “0” si no lo es. Los 7 bits restantes del octeto constituyen la dirección propia

Page 9: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL

Campo de control

En HDLC se definen tres tipos de tramas, cada una con formato diferente para el campo de control.

▫ Las tramas de información (tramas-I) transportan los datos generados por el usuario. En estas tramas también se incluye información para el control ARQ de errores y de flujo.

▫ Las tramas de supervisión (tramas-S) proporcionan el mecanismo ARQ cuando la incorporación de las confirmaciones en las tramas-I no es factible.

▫ Las tramas no numeradas (Tramas-N) proporcionan funciones complementarias para controlar el enlace.

• El primer o los dos primeros bits del campo de control se utilizan para identificar el tipo de trama.

Page 10: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL

Campo información

▫ Solo está presente en las tramas-I y en algunas tramas N.

▫ Este campo puede contener cualquier secuencia de bits, con la única restricción que el número de bits sea igual a un múltiplo entero de 8. La longitud de este campo es variable

Page 11: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL

• La secuencia de comprobación de la trama (FCS, Frame Check Sequence) es un código para la detección de errores calculado a partir de los bits de la trama excluyendo los delimitadores.

• Generalmente usa CRC (Comprobación de Redundancia Cíclica).

Page 12: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL

Formato de trama

Campo de dirección ampliado

Formato de campo de control de 8 bits

Page 13: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL

Formato de campo de control de 16 bits

Page 14: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL

• El tipo de trama se idéntica mediante el primero o los dos primero bits del campo de control. • Todos los formatos contiene el bit

sondeo/fin (P/F: POLL/FINAL): ▫ Su uso es dependiente del contexto ▫ En las tramas de órdenes se denomina bit P:

Se fija en 1 para solicitar (sondear) una trama de de respuesta a la entidad HDLC par.

En la tramas de repuestas se llama bit F: ▫ Se fija en 1 para identificar la trama de respuesta

devuelta luego de recibir una orden.

Page 15: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL

• El procedimiento de inserción de bits consiste en que: ▫ Al transmitir los bits existente entre los

delimitadores de comienzo y de fin: El emisor insertar un extra luego de cada secuencia

11111

▫ Al recibir y luego del delimitador inicial: El receptor analizará los bits recibidos y si detecta la

secuencia 11111: ▫ Eliminará el bit siguiente(sexto) si es 0. ▫ Considerará como delimitador si el sexto y el

séptimo son 10 ▫ Interpretará como una indicación de cierre

generada por el emisor si el sexto y el séptimo son 11.

Page 16: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL

• Inserción de bits: • Ejemplo:

• Un bit invertido divide una trama en dos

• Un bit invertido funde dos tramas en una.

Page 17: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL

• Se lleva a cabo mediante el intercambios de tramas –I, tramas –S y tramas-U entre dos estaciones, que transportan ordenes y

respuestas, entre las cuales se reseñan las principales.

Page 18: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL
Page 19: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL

Implica necesariamente 3 fases;

INICIALIZACION

TRANSFERENCIA DE DATOS

DESCONECCION

Page 20: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL

Inicialización: ▫ Cualquiera puede iniciar la transmisión, generando

alguna de las 6 posibles ordenes de modo.

▫ Esta orden cumple los siguientes tres propósitos.

Avisar al otro extremo que se ha solicitado la iniciación.

Especificar el modo solicitado (NRM, ABM o ARM)

Especificar si se utilizaran numero de secuencia de 3 o 7 bits.

▫ Si la solicitud del trasmisor se acepta, el receptor envía una trama de confirmación no numerada (UA)

▫ Si la solicitud se rechaza, el receptor envía una trama de modo desconectado(DM)

Page 21: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL

Modos de transferencia de datos: Con la iniciación solicitada y aceptad, se habrá establecido la conexión lógica. Ambos lados pueden comenzar a enviar datos mediante tramas-I, comenzando con el numero de secuencia 0. La secuencia de tramas-I se enumeran secuencialmente modulo 8 o 128, según se utilice 3 o 7 bits respectivamente, utilizando el campo N(s). El campo N(R) se utiliza para la confirmación de las tramas-I recibidas, por lo que se indica al otro extremo el numero de la próxima trama que se espera recibir(“reconocimiento inclusivo”).

Page 22: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL

• Las tramas-S se utilizan para el control de flujo y errores: ▫ RR: confirma la ultima trama-I recibida( implica la próxima

que aguarda. Se usa cuando no hay tráfico de tramas –I en el otro sentido)

▫ RNR: confirma la ultima trama.-I recibida pero solicita interrumpir los envíos de tramas. Cuando este listo, enviara una RR.

▫ REJ: rechaza la ultima tramas-I recibida y solicita la retransmisión de todas las tramas-I numeradas a partir de N( R)

▫ SREJ: rechaza una trama especifica, de la cual solicita retransmisión.

Page 23: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL

•Modos de transferencia de datos:

• Con la iniciación solicitada y aceptad, se habrá establecido la conexión lógica. Ambos lados pueden comenzar a enviar datos mediante tramas-I, comenzando con el numero de secuencia 0.

• La secuencia de tramas-I se enumeran secuencialmente modulo 8 o 128, según se utilice 3 o 7 bits respectivamente, utilizando el campo N(s).

• El campo N(R) se utiliza para la confirmación de las tramas-I recibidas, por lo que se indica al otro extremo el numero de la próxima trama que se espera recibir(“reconocimiento inclusivo”).

Page 24: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL

Desconexión. Cualquiera de los extremos puede solicitar la desconexión, ya sea por iniciativa propia (Detección de fallos) o por solicitud de una capa superior.

HDLC lleva a cabo la desconexión transmitiendo una trama de desconexión (DISC) a la que el otro extremo responderá con unja UA.

Page 25: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL

En los siguientes diagramas las filas especifican la trama (A-B) El bit P/F (POLL/FINAL) se fija en 0, salvo cuando explícitamente aparece, que estar indicado en 1.

A envía SABM y activa un temporizador. B responde con UA, inicializa sus variables de estado y contadores. Ambos quedan listos para iniciar el intercambio de tramas. Si B no respondiera al SABM dentro del tiempo del temporizador, A insistirá hasta obtener de B una respuesta UA o DM. Si no respondiera el ETD B a pesar de los intentos. A avisaría a las capas superiores. Se ilustra también la desconexión.

Page 26: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL

• Supuesta ya superada la iniciación del enlace:

• La trama I con N(S) =1 y N(R ) = 3 es un ejemplo de reconocimiento inclusivo.

• La ultima trama –S, RR, se envía de A hacia B ya que el primero no posee tramas-I para enviar con datos.

• Los buffers del receptor se pueden desbordar porque HDLC puede ser incapaz de procesar las tramas .I a la velocidad que le llegan, o bien porque el usuario no puede recibirlas tan rápidamente (p.ej. Limitación de una impresora).

• Envía RNR confirmando la ultima trama recibida, pero solicitando una pausa en el envió.

• B sondeará periódicamente a A con RR (bit P=1)

• Cuando A esta listo, envía RR (bit P=0)

Page 27: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL

• La trama –I numero 4, enviada por A se pierde por un error.

• B rechaza la trama 5, ya que esperaba la 4.

• Envía REJ4, por lo que A retransmite todas las tramas desde la 4 inclusive y posteriores.

• A envía una secuencia de tramas a B, perdiéndose la numero 3, que era la ultima de la transmisión de A.

• El EDT B detecta el error, pero no puede mandar hacia A una REJ, ya que no puede saber si la trama que se perdió es tipo 1.

• A había iniciado un temporizador al enviar la trama 1,3,0 por lo que vencido el mismo, sondeara con RR (P/F con P=1). Al responder B con el numero de trama que espera recibir, el A sabe que debe retransmitir la 1,3,0 y se evita el dead-lock

Page 28: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL

• exa.unne.edu.ar/depar/areas/informatica/.../ControldelEnlacedeDatos.pdf -Referenciado en agosto del 2015

• unalm-construcion2010.wikispaces.com/file/view/K)+H.D.L.C.pdf- referenciado en agosto del 2015.

• http://asmazter.tripod.com/pag19.htm - referenciado el agosto del 2015

Page 29: HDLC-CONTROL DE ENLACE DE DATOS DE ALTO NIVEL