Você está na página 1de 97

(07BJ) (05BR) (09BM)

Redes Redes de Computadores Redes y Sistemas Distribuidos

Tema 4 Funciones y protocolos del nivel de enlace

Tema 4
Funciones y protocolos del nivel de enlace

ndice

1. Introduccin 2. Funciones del nivel de enlace ([TAN03] Captulo 3.1)


2.1 Sincronizacin de trama 2.2 Coordinacin de la comunicacin 2.3 Deteccin de errores 2.4 Control de flujo ([STA04] Captulo 7) 2.4.1 Tcnicas de control de flujo 2.4.2 Tcnicas de recuperacin de errores

3. Protocolo HDLC ([FOR07] Captulo 11.6) 4. Protocolo PPP ([FOR07] Captulo 11.7)

Tema 4
Funciones y protocolos del nivel de enlace

ndice

1. Introduccin 2. Funciones del nivel de enlace ([TAN03] Captulo 3.1)


2.1 Sincronizacin de trama 2.2 Coordinacin de la comunicacin 2.3 Deteccin de errores 2.4 Control de flujo ([STA04] Captulo 7) 2.4.1 Tcnicas de control de flujo 2.4.2 Tcnicas de recuperacin de errores

3. Protocolo HDLC ([FOR07] Captulo 11.6) 4. Protocolo PPP ([FOR07] Captulo 11.7)

Tema 4
Funciones y protocolos del nivel de enlace

1. Introduccin

Modelo OSI:

El nivel de enlace mejora el servicio bsico de transmisin de datos proporcionado por el nivel fsico Resolver los problemas planteados por la falta de fiabilidad del servicio bsico de transmisin de datos del nivel fsico Definir reglas para iniciar y terminar el enlace Controlar la transferencia de informacin Detectar errores y recuperarse ante ellos Sin conexin no fiable (sin asentimiento) Sin conexin fiable (con asentimiento) Servicio orientado a la conexin (con asentimiento)
4

Objetivos:

Servicios proporcionados por el nivel de enlace al nivel de red:

Tema 4
Funciones y protocolos del nivel de enlace

ndice

1. Introduccin 2. Funciones del nivel de enlace ([TAN03] Captulo 3.1)


2.1 Sincronizacin de trama 2.2 Coordinacin de la comunicacin 2.3 Deteccin de errores 2.4 Control de flujo ([STA04] Captulo 7) 2.4.1 Tcnicas de control de flujo 2.4.2 Tcnicas de recuperacin de errores

3. Protocolo HDLC ([FOR07] Captulo 11.6) 4. Protocolo PPP ([FOR07] Captulo 11.7)

Tema 4
Funciones y protocolos del nivel de enlace

2. Funciones del nivel de enlace

Funciones bsicas de los protocolos del nivel de enlace

Sincronizacin de trama

Delimitacin del comienzo y fin de cada trama


Coordinacin de la comunicacin

Comparticin del enlace



Necesidad de un mecanismo de control de acceso al medio Necesidad de un esquema de direccionamiento fsico

Deteccin de errores de transmisin

Cdigos detectores de errores (redundancia) Cdigos correctores de errores (redundancia)


Control de flujo

Regulacin del trfico entre el emisor y el receptor


Control de errores

Recuperacin ante fallos (tramas errneas, perdidas o duplicadas)


6

Tema 4
Funciones y protocolos del nivel de enlace

ndice

1. Introduccin 2. Funciones del nivel de enlace ([TAN03] Captulo 3.1)


2.1 Sincronizacin de trama 2.2 Coordinacin de la comunicacin 2.3 Deteccin de errores 2.4 Control de flujo ([STA04] Captulo 7) 2.4.1 Tcnicas de control de flujo 2.4.2 Tcnicas de recuperacin de errores

3. Protocolo HDLC ([FOR07] Captulo 11.6) 4. Protocolo PPP ([FOR07] Captulo 11.7)

Tema 4
Funciones y protocolos del nivel de enlace

2.1 Sincronizacin de trama

Nivel fsico:

Emisor: datos codificados transmitidos en serie Receptor: datos recuperados muestreando la seal recibida Sincronizacin de bit:

Bit de comienzo mas elemento de parada por cada carcter Esquema de codificacin que facilita la sincronizacin

Nivel de enlace:
Los datos de los niveles superiores se dividen en tramas Trama: delimitadores, control, datos y redundancia

Delimitadores

La redundancia se inserta al final de la trama

Caracteres o patrones de bits especficos Limitan la naturaleza de los datos Se requieren mecanismos de transparencia para evitarlo Violaciones de cdigo Patrones de bits de cdigo no usados (codificacin por bloques)

La utilizacin de tramas simplifica el control de acceso al medio, la deteccin de errores, y el control de flujo/errores
8

Tema 4
Funciones y protocolos del nivel de enlace

2.1 Sincronizacin de trama

Delimitadores de principio y fin con relleno de caracteres

Principio de trama: carcter de inicio (STX o SOH) Fin de trama: carcter de fin (ETX o ETB) El receptor sabe donde comienza y finaliza cada trama Problema: los caracteres de control aparecen en los datos

Ocurre cuando se transmiten datos binarios


Solucin: caracteres de escape (DLE) para transparencia

Se inserta un carcter de escape DLE delante de cada carcter de


inicio o de fin incluido en el campo de datos de la trama Los caracteres DLE incluidos en el campo de datos de la trama tambin se duplican Ejemplo:

Datos: Trama:

a 9 STX ACK 2 6 DLE ETX 3 t y STX a 9 DLE STX ACK 2 6 DLE DLE DLE ETX 3 t y ETX

En el peor caso, la eficiencia cae hasta el 50%


9

Tema 4
Funciones y protocolos del nivel de enlace

2.1 Sincronizacin de trama

Delimitadores de principio y fin con relleno de bits

Sincronizacin independiente de la estructura de los datos Principio/fin de trama: patrn de bits (delimitador, flag o guin) El receptor sabe donde comienza y finaliza cada trama Problema: el delimitador aparece en la trama

Ocurre en cualquier parte de la trama (control/datos/redundancia)


Solucin: el emisor identifica el delimitador y lo modifica

Ejemplo con 01111110 como guin de principio/fin de la trama:



El emisor evita ms de cinco 1s consecutivos insertando un 0 El receptor analiza el bit que sigue a cinco 1s consecutivos Si es un 0 lo elimina Si es un 1 identifica el principio/fin de la trama Datos: 000111101111111100011111000110 Trama: 011111100001111011111011100011111000011001111110

En el peor caso, la eficiencia cae hasta un 83,3% (5/6)


10

Tema 4
Funciones y protocolos del nivel de enlace

ndice

1. Introduccin 2. Funciones del nivel de enlace ([TAN03] Captulo 3.1)


2.1 Sincronizacin de trama 2.2 Coordinacin de la comunicacin 2.3 Deteccin de errores 2.4 Control de flujo ([STA04] Captulo 7) 2.4.1 Tcnicas de control de flujo 2.4.2 Tcnicas de recuperacin de errores

3. Protocolo HDLC ([FOR07] Captulo 11.6) 4. Protocolo PPP ([FOR07] Captulo 11.7)

11

Tema 4
Funciones y protocolos del nivel de enlace

2.2 Coordinacin de la comunicacin

La comparticin de un enlace conlleva la necesidad de un mecanismo de control para determinar quin usa el enlace Los protocolos de coordinacin tienen tres fases:

Establecimiento del enlace Transferencia de informacin (tramas) Terminacin del enlace Centralizada:

Dos tipos bsicos de coordinacin:

Controlador central (o moderador) que determina el turno de


transmisin de los interlocutores

Debe conceder el turno de transmisin de forma equitativa y/o gestionar prioridades Tpica de los primeros sistemas de cmputo: controlador + terminales

Por contienda (o distribuida):

No existe ningn controlador central Los interlocutores pueden transmitir cuando lo deseen
12

Tema 4
Funciones y protocolos del nivel de enlace

2.2 Coordinacin de la comunicacin

Coordinacin centralizada

Seleccin (para envo)

El controlador enva un mensaje de seleccin al terminal que


responde indicando su disponibilidad mediante el envo de un reconocimiento Si el enlace se establece, el controlador enva tramas y el terminal confirma su recepcin mediante reconocimientos Cuando el controlador termina de enviar todas las tramas, se termina el enlace Seleccin rpida

Sondeo (para recepcin)


tramas que transmitir

El controlador interroga a los terminales para ver si tienen


Sondeo por lista: el controlador interroga a los terminales
siguiendo una lista ordenada Sondeo por grupos: los terminales estn agrupados, y el controlador los interroga siguiendo una lista ordenada
13

Tema 4
Funciones y protocolos del nivel de enlace

2.2 Coordinacin de la comunicacin

Coordinacin por contienda (o distribuida)

Ni existe ningn controlador ni se usa testigo alguno Posibilidad de que se produzcan colisiones:

Transmisin simultnea de dos o ms tramas


Tcnicas para evitar colisiones:

Tcnicas de auscultacin (CSMA) Tcnicas de deteccin de colisiones (CSMA/CD)


Tcnicas de recuperacin ante posibles colisiones:

Uso de plazos de espera aleatorios (para evitar que se produzcan


bloqueos) asociados a tramas para gestionar las retransmisiones

Utilizada en redes de acceso mltiple (LAN):

Contraste con el enfoque centralizado Esquema de direccionamiento fsico para determinar quin es el
destinatario de cada trama Subcapa de control de acceso al medio (MAC, Media Access Control)
14

Tema 4
Funciones y protocolos del nivel de enlace

ndice

1. Introduccin 2. Funciones del nivel de enlace ([TAN03] Captulo 3.1)


2.1 Sincronizacin de trama 2.2 Coordinacin de la comunicacin 2.3 Deteccin de errores 2.4 Control de flujo ([STA04] Captulo 7) 2.4.1 Tcnicas de control de flujo 2.4.2 Tcnicas de recuperacin de errores

3. Protocolo HDLC ([FOR07] Captulo 11.6) 4. Protocolo PPP ([FOR07] Captulo 11.7)

15

Tema 4
Funciones y protocolos del nivel de enlace

2.3 Deteccin de errores

Durante la transmisin pueden producirse errores que dan lugar a tramas errneas:

Uso de informacin adicional (redundancia) para comprobar la integridad de las tramas Uso de asentimientos positivos o negativos (retransmisin) Tramas perdidas:

Si el nivel de enlace proporciona servicio fiable al nivel de red:

Uso de temporizadores asociados a las tramas Valor de los temporizadores: envo, proceso, asentimiento Retransmisin de tramas cuando expira el temporizador

Tramas duplicadas:

La retransmisin de tramas puede conllevar duplicidad Uso de nmeros de secuencia para etiquetar las tramas
La implementacin de un servicio fiable est ntimamente relacionada con el control de flujo
16

Tema 4
Funciones y protocolos del nivel de enlace

2.3 Deteccin de errores

Tipos de errores:

Errores aislados Errores en rfagas (bursts)


Ms comunes en LANs
Cdigos detectores de errores (redundancia)

17

Tema 4
Funciones y protocolos del nivel de enlace

2.3 Deteccin de errores

Problema 1. Si se transmiten tramas de 1000 bits, y la probabilidad de que se produzca un error es de 0,0001 por bit transmitido, cuntas tramas errneas recibir el receptor en promedio?

El 10% de las tramas contendr un bit errneo


Problema 2. Cuntos bits se vern afectados por un pico de ruido impulsivo de 1 ms en una lnea que transmite a 1 Mbps? Y si transmite a 1 Gbps?

Para 1 Mbps, se vern afectados 103 bits Para 1 Gbps, se vern afectados 106 bits
18

Tema 4
Funciones y protocolos del nivel de enlace

2.3 Deteccin de errores

CRC (Cyclic Redundary Check)

Mtodo ms comnmente utilizado Bloques de bits representan coeficientes (1s y 0s) de


polinomios Una trama de k bits equivale a un polinomio de k trminos, es decir, de grado k-1

Ejemplo:

10100111 es el polinomio x7+x5+x2+x+1 (grado 7)

Aritmtica en mdulo 2: suma y resta igual que XOR


19

Tema 4
Funciones y protocolos del nivel de enlace

2.3 Deteccin de errores

CRC (Cyclic Redundary Check)

Emisor y receptor acuerdan polinomio generador G(x) El bloque de bits de datos representa al polinomio M(x) Algoritmo:

Agregar k-1 bits (grado de G(x)) a 0 a M(x) (extremo inferior) Dividir el polinomio resultante por G(x) utilizando aritmtica en
mdulo 2 (el resto de la divisin es R(x)) La trama a transmitir, T(x), es igual M(x)0..k-1..0 XOR R(x) El receptor divide M(x)R(x) entre G(x), y obtiene un resto 0 si la trama lleg correctamente, o un resto 0 en caso contrario

20

Tema 4
Funciones y protocolos del nivel de enlace

2.3 Deteccin de errores

Ejemplo CRC:

G(x) M(x) T(x)

= x3 + x2 + 1, es decir, 1101 = x5 + x2, es decir, 100100 = 100100 001 CRC

21

Tema 4
Funciones y protocolos del nivel de enlace

2.3 Deteccin de errores

CRC (Cyclic Redundary Check)

La eleccin de G(x) es crucial para que el mtodo sea eficaz Algunos polinomios que son estndares internacionales:

CRC-12: x12+x11+x3+x2+x+1 CRC-16: x16+x15+x2+1 CRC-CCITT: x16+x12+x5+1 (HDLC) CRC-32: x32 + x26 + x23 + x22 + x16 + x12 + x11 + x10 + x8 + x7 + x5 + x4 + x2 + x + 1 (IEEE 802)

Todos contienen el trmino x+1 como factor primo porque no hay polinomios con un nmero impar de trminos divisibles por x+1 Un CRC de grado 16 captura: Todos los errores simples y dobles Todos los errores con un nmero impar de bits Todos los errores en rfagas con longitudes de hasta 16 bits El 99,997% de los errores en rfagas de 17 bits El 99,998% de los errores en rfagas de 18 o ms bits
22

Tema 4
Funciones y protocolos del nivel de enlace

2.3 Deteccin de errores

Problema 3. Se desea transmitir el bloque de bits 10100001 con un CRC generado a partir del polinomio x3+1. Cul sera la trama transmitida? Qu pasara si el receptor recibe el bloque de bits 11000001?

23

Tema 4
Funciones y protocolos del nivel de enlace

ndice

1. Introduccin 2. Funciones del nivel de enlace ([TAN03] Captulo 3.1)


2.1 Sincronizacin de trama 2.2 Coordinacin de la comunicacin 2.3 Deteccin de errores 2.4 Control de flujo ([STA04] Captulo 7) 2.4.1 Tcnicas de control de flujo 2.4.2 Tcnicas de recuperacin de errores

3. Protocolo HDLC ([FOR07] Captulo 11.6) 4. Protocolo PPP ([FOR07] Captulo 11.7)

24

Tema 4
Funciones y protocolos del nivel de enlace

2.4 Control de flujo

Regulacin del flujo de datos entre emisor y receptor

El flujo de datos no debe desbordar al receptor:


El receptor utiliza buffers (almacenamiento temporal) para
almacenar los datos hasta que son procesados Velocidad limitada de procesamiento de datos recibidos Capacidad limitada de almacenamiento temporal El receptor debe indicar cundo se han alcanzado los lmites

Confirmacin de las tramas (fiabilidad):


De forma individual o colectiva (confirmacin mltiple) Asentimiento positivo (ACK) o negativo (NAK)
Tcnicas de control de flujo:

Parada y espera (stop-and-wait) Ventana deslizante (sliding window)


25

Tema 4
Funciones y protocolos del nivel de enlace

ndice

1. Introduccin 2. Funciones del nivel de enlace ([TAN03] Captulo 3.1)


2.1 Sincronizacin de trama 2.2 Coordinacin de la comunicacin 2.3 Deteccin de errores 2.4 Control de flujo ([STA04] Captulo 7) 2.4.1 Tcnicas de control de flujo 2.4.2 Tcnicas de recuperacin de errores

3. Protocolo HDLC ([FOR07] Captulo 11.6) 4. Protocolo PPP ([FOR07] Captulo 11.7)

26

Tema 4
Funciones y protocolos del nivel de enlace

2.4.1 Tcnicas de control de flujo

Parada y espera (stop-and-wait)

El emisor espera una confirmacin por cada trama transmitida La siguiente trama se enva slo cuando se recibe la confirmacin El tiempo total para transmitir una trama incluyendo su confirmacin

tprop: tframe: tproc: tack:

T = tprop + tframe + tproc + tprop + tack + tproc


tiempo de propagacin tiempo de enviar una trama tiempo de procesamiento de una trama o una confirmacin tiempo de enviar una confirmacin

Ventaja: simplicidad (cada trama se transmite y se confirma individualmente) Desventaja: ineficiencia (cada trama y su confirmacin recorren todo el camino entre el emisor y el receptor antes de poder enviar la siguiente trama)
27

Tema 4
Funciones y protocolos del nivel de enlace

2.4.1 Tcnicas de control de flujo

Parada y espera (stop-and-wait) T = tprop + tframe + tproc + tprop + tack + tproc


U= tinformacin ttotal = n * t frame n * (2t prop + t frame ) = t frame 2t prop + t frame

La utilizacin o eficiencia de la lnea se define como: Si definimos a tcomo:


a=
prop

t frame

U =

a es constante en enlaces punto a punto (tprop y tframe


son constantes) a es variable en enlaces multipunto
Tiempo de Propagacin RD = V = Tiempo de Transmisin L VL R D
D = distancia del enlace V = velocidad de propagacin L = longitud de la trama R = velocidad de transmisin
28

1 1 + 2a

Mxima utilizacin de la lnea

a=

Tema 4
Funciones y protocolos del nivel de enlace

2.4.1 Tcnicas de control de flujo

Parada y espera (stop-and-wait)

29

Tema 4
Funciones y protocolos del nivel de enlace

2. Funciones del nivel de enlace

Problema 4. Se desea transmitir una serie de tramas de 1000 bits con un protocolo de nivel de enlace con control de flujo/errores mediante parada y espera. Calcula la eficiencia del enlace (sin errores) suponiendo una velocidad de transmisin de 1 Kbps y de 1 Mbps en los siguientes supuestos: (a) par trenzado de 1 Km, (b) cable coaxial de 200 Km, y (c) conexin por satlite de 50.000 Km.

Sol.:
U = 0,999 / U = 0,990 U = 0,998 / U = 0,333 U = 0,750 / U = 0,003
30

Tema 4
Funciones y protocolos del nivel de enlace

2.4.1 Tcnicas de control de flujo

Ventana deslizante (sliding window)

El emisor puede enviar varias tramas antes de recibir una confirmacin

Permite aprovechar de forma ms eficiente la capacidad del canal


El receptor confirma la recepcin de tramas de vez en cuando

Una o ms tramas pueden ser confirmadas en cualquier momento


La ventana (buffer) almacena un nmero determinado de tramas Esta tcnica requiere un esquema de numeracin de tramas para poder realizar un seguimiento de las tramas enviadas y recibidas:

La numeracin depende del tamao de la ventana Las tramas se numeran en mdulo n, es decir, de 0 a n-1 El tamao mximo de la ventana es n-1 ( y no n !!!)
Confirmacin de las tramas:

Confirmacin de varias tramas (mltiple) con un nico ACK Los ACKs incluyen el nmero de la prxima trama esperada Como mximo se pueden enviar n-1 tramas antes de recibir un ACK
31

Tema 4
Funciones y protocolos del nivel de enlace

2.4.1 Tcnicas de control de flujo

Ventana deslizante (sliding window)

Ventana del emisor:


La ventana tiene inicialmente espacio para n-1 tramas El tamao de la ventana en cada momento equivale al nmero
de tramas que se pueden enviar Envo de una trama

El lmite izquierdo de la ventana avanza

Recepcin de un ACK
El lmite derecho de la ventana avanza

32

Tema 4
Funciones y protocolos del nivel de enlace

2.4.1 Tcnicas de control de flujo

Ventana deslizante (sliding window)

Ventana del receptor:


La ventana tiene inicialmente espacio para n-1 tramas El tamao de la ventana en cada momento equivale al nmero
de tramas que se pueden aceptar Recepcin de una trama

El lmite izquierdo de la ventana avanza

Envo de un ACK
El lmite derecho de la ventana avanza

33

Tema 4
Funciones y protocolos del nivel de enlace

2.4.1 Tcnicas de control de flujo

Ventana deslizante (sliding window)

34

Tema 4
Funciones y protocolos del nivel de enlace

2.4.1 Tcnicas de control de flujo

Ventana deslizante (sliding window)

Por qu el tamao mximo de la ventana es n-1?


La justificacin se basa en la resolucin de una posible
ambigedad en el asentimiento de las tramas Ejemplo:

Dada una ventana de tamao 8 y numeracin mdulo 8 Se envan las trama 0..7 y se enva un ACK 0 El ACK 0 se pierde (no es reconocido como trama vlida) Se reenvan las tramas 0..7 pasado un cierto tiempo Cmo sabe el receptor que son tramas duplicadas?

Transmisin full-dplex
Cada interlocutor mantiene una ventana de emisin y otra de
recepcin (emisin y recepcin simultneas) Optimizacin: superposicin (piggybacking)

Las confirmaciones se incluyen en las tramas de datos

35

Tema 4
Funciones y protocolos del nivel de enlace

2.4.1 Tcnicas de control de flujo

Ventana deslizante (sliding window)

La utilizacin o eficiencia de la lnea se define como:


U =1
si N 2a + 1

U =

N
1 + 2a

si N < 2a + 1

N es el tamao mximo de la ventana (numeracin t


mdulo N+1) y a = t prop frame N = 1 Parada y espera (stop-and-wait)
36

Tema 4
Funciones y protocolos del nivel de enlace

2.4.1 Tcnicas de control de flujo

Ventana deslizante (sliding window)

U =1

si N 2a + 1

37

Tema 4
Funciones y protocolos del nivel de enlace

2.4.1 Tcnicas de control de flujo

Ventana deslizante (sliding window)

U =

N
1 + 2a

si N < 2a + 1

38

Tema 4
Funciones y protocolos del nivel de enlace

2. Funciones del nivel de enlace

Problema 5. Se desea transmitir una serie de tramas de 1000 bits con un protocolo de nivel de enlace con control de flujo/errores mediante ventana deslizante. Calcula la eficiencia del enlace (sin errores) en los siguientes supuestos: (a) enlace de 100 m, VT de 1 Gbps y N = 1, (b) enlace de 10 Km, VT de 100 Mbps y N = 7, y (c) enlace de 10.000 Km, VT de 1 Mbps y N = 127.

Sol.:

U = 0,5 U = 0,63 U=1


39

Tema 4
Funciones y protocolos del nivel de enlace

ndice

1. Introduccin 2. Funciones del nivel de enlace ([TAN03] Captulo 3.1)


2.1 Sincronizacin de trama 2.2 Coordinacin de la comunicacin 2.3 Deteccin de errores 2.4 Control de flujo ([STA04] Captulo 7) 2.4.1 Tcnicas de control de flujo 2.4.2 Tcnicas de recuperacin de errores

3. Protocolo HDLC ([FOR07] Captulo 11.6) 4. Protocolo PPP ([FOR07] Captulo 11.7)

40

Tema 4
Funciones y protocolos del nivel de enlace

2.4.2 Tcnicas de recuperacin de errores

Extensin del mecanismo de control de flujo para recuperacin de errores (tramas perdidas o errneas) ARQ (Automatic Repeat reQuest)

Cuando se recibe una trama errnea, se enva una trama NAK Las tramas especificadas por la trama NAK se retransmiten Se garantiza la robustez del mecanismo de control de flujo ante: Tramas de datos perdidas o errneas Tramas de asentimiento (ACK o NAK) perdidas La recuperacin de errores mediante ARQ se implementa junto con el control de flujo

Parada y espera como:



Parada y espera con ARQ (stop-and-wait ARQ) Vuelta atrs N (go-back-n) Rechazo selectivo (selective reject)
41

Ventana deslizante como (ventana deslizante con ARQ):

Tema 4
Funciones y protocolos del nivel de enlace

2.4.2 Tcnicas de recuperacin de errores

Parada y espera con ARQ (stop-and-wait ARQ)

El emisor guarda una copia de la ltima trama


transmitida hasta que recibe el ACK correspondiente El receptor puede responder con un ACK o un NAK:

Las tramas de datos y las tramas ACK se numeran con 0/1


alternativamente:

Una trama de datos 0 se asiente mediante una trama ACK 1 y

Las tramas NAK no van numeradas:

viceversa Permite identificar y descartar las tramas duplicadas

El emisor dispone de un temporizador de forma que si


no se recibe un asentimiento (ACK o NAK) antes de que expire, se retransmite la ltima trama de datos
42

Asienten negativamente una trama de datos errnea Indican la retransmisin de la ltima trama de datos

Tema 4
Funciones y protocolos del nivel de enlace

2.4.2 Tcnicas de recuperacin de errores

Parada y espera con ARQ (stop-and-wait ARQ)

Funcionamiento normal

43

Tema 4
Funciones y protocolos del nivel de enlace

2.4.2 Tcnicas de recuperacin de errores

Parada y espera con ARQ (stop-and-wait ARQ)

Trama de datos perdida

44

Tema 4
Funciones y protocolos del nivel de enlace

2.4.2 Tcnicas de recuperacin de errores

Parada y espera con ARQ (stop-and-wait ARQ)

Trama ACK perdida

45

Tema 4
Funciones y protocolos del nivel de enlace

2.4.2 Tcnicas de recuperacin de errores

Parada y espera con ARQ (stop-and-wait ARQ)

Por qu se numeran las tramas ACK?

46

Tema 4
Funciones y protocolos del nivel de enlace

2.4.2 Tcnicas de recuperacin de errores

Ventana deslizante con ARQ

El emisor guarda copias de las tramas transmitidas hasta que recibe el ACK correspondiente El receptor puede responder con un ACK o un NAK:

Las tramas de datos, las tramas ACK y las tramas NAK estn
numeradas:

Las tramas ACK llevan el nmero de la trama esperada Las tramas NAK llevan el nmero de la trama errnea y tambin sirven para confirmar positivamente todas las tramas anteriores a la errnea

El emisor tambin dispone de un temporizador de forma que si no se recibe un asentimiento (ACK o NAK) antes de que expire, se retransmiten las tramas pendientes de confirmacin Vuelta atrs N (go-back-n): rechazo de la trama errnea y subsiguientes Rechazo selectivo (selective reject): rechazo slo de la trama errnea
47

Dos variantes en funcin del rechazo:

Tema 4
Funciones y protocolos del nivel de enlace

2.4.2 Tcnicas de recuperacin de errores

Vuelta atrs N (go-back-n)

Trama de datos perdida

48

Tema 4
Funciones y protocolos del nivel de enlace

2.4.2 Tcnicas de recuperacin de errores

Vuelta atrs N (go-back-n)

Trama de datos errnea

49

Tema 4
Funciones y protocolos del nivel de enlace

2.4.2 Tcnicas de recuperacin de errores

Vuelta atrs N (go-back-n)

Trama ACK perdida

50

Tema 4
Funciones y protocolos del nivel de enlace

2.4.2 Tcnicas de recuperacin de errores

Rechazo selectivo (selective reject)

Difiere de vuelta atrs N en que:


El emisor debe disponer de un mecanismo de bsqueda que
le permita seleccionar la trama cuya retransmisin fue solicitada (el receptor detect una trama de datos perdida o errnea y solicit su retransmisin mediante una trama NAK)

El emisor slo retransmite la trama de datos perdida o errnea El receptor debe almacenar las tramas recibidas despus de
enviar un NAK hasta que la trama daada sea reemplazada

El receptor debe ser capaz de reordenar las tramas recibidas El tamao mximo de la ventana es (N+1)l2
51

Tema 4
Funciones y protocolos del nivel de enlace

2.4.2 Tcnicas de recuperacin de errores

Rechazo selectivo (selective reject)

Trama de datos errnea

52

Tema 4
Funciones y protocolos del nivel de enlace

2.4.2 Tcnicas de recuperacin de errores

Rechazo selectivo (selective reject)

Por qu el tamao mximo de ventana es (N+1)l2?


La justificacin se basa en la resolucin de una posible
ambigedad en el asentimiento de las tramas Ejemplo:

Dada una ventana de tamao 7 y numeracin mdulo 8 Se envan las trama 0..6 y se enva un ACK 7 El ACK 7 se pierde (no es reconocido como trama vlida) Se reenva la trama 0 pasado un cierto tiempo Cmo sabe el receptor que es una trama duplicada?

53

Tema 4
Funciones y protocolos del nivel de enlace

2.4.2 Tcnicas de recuperacin de errores

Recuperacin de errores con ARQ

La utilizacin o eficiencia de la lnea se define como:


Nr: nmero esperado de retransmisiones por trama P: probabilidad que una trama sea errnea Pk-1(1-P): probabilidad de que se necesiten k intentos para
transmitir con xito la trama

Parada y espera con ARQ Ventana deslizante con ARQ


Vuelta atrs N
U= 1 P si N 2a + 1 1 + 2aP N( 1 P) U= si N < 2a + 1 (1 + 2a)(1 P + NP )
1 1 P U= dnde N r = iP i 1 (1 P) = (1 P) 1 , es decir, U = N r (1 + 2a ) 1 + 2a i =1

Rechazo selectivo
U = (1 P ) si N 2a + 1

U=

N( 1 P) si N < 2a + 1 1 + 2a

54

Tema 4
Funciones y protocolos del nivel de enlace

2.4.2 Tcnicas de recuperacin de errores

Recuperacin de errores con ARQ

N es el tamao mximo de la ventana (numeracin


mdulo N+1) y P = 10-3 N = 1 Parada y espera (stop-and-wait)
55

Tema 4
Funciones y protocolos del nivel de enlace

2. Funciones del nivel de enlace

Problema 6. Se desea transmitir una serie de tramas de 1000 bits por un enlace de 100 Km a 20 Mbps. Calcula la eficiencia del enlace si la tasa de errores por bit es de 0,00004 en los siguientes supuestos: (a) parada y espera (b) vuelta atrs N (N = 7), y (c) rechazo selectivo (N = 7).

Sol.:
U = 0,046 U = 0,258 U = 0,320

56

Tema 4
Funciones y protocolos del nivel de enlace

ndice

1. Introduccin 2. Funciones del nivel de enlace ([TAN03] Captulo 3.1) 3. Protocolos del nivel de enlace
3.1 Protocolo HDLC ([FOR02] Captulo 11.4) 3.2 Protocolo PPP ([FOR02] Captulo 15)

57

Tema 4
Funciones y protocolos del nivel de enlace

3. Protocolos del nivel de enlace

Caractersticas deseables de los protocolos del nivel de enlace:

Independencia del nivel fsico Soporte de actividad bidireccional simultnea Adaptacin a diferentes aplicaciones/entornos Eficiencia (relacin entre los bits de informacin
transportados y los bits de control del protocolo) Robustez Fiabilidad

58

Tema 4
Funciones y protocolos del nivel de enlace

3. Protocolos del nivel de enlace

Tipos de protocolos del nivel de enlace:

Conexin directa entre hosts


Enlace punto a punto entre dos DTEs Extremo a extremo Servicio orientado a conexin Control de flujo:
Parada y espera (R): Kermit Ventana deslizante (d o R): HDLC (High-Level Data Link
Control)

59

Tema 4
Funciones y protocolos del nivel de enlace

3. Protocolos del nivel de enlace

Tipos de protocolos del nivel de enlace:

Controlador + terminales
Enlace multipunto
Un DTE maestro y varios DTEs esclavos

Coordinacin centralizada (sondeo/seleccin) Extremo a extremo Servicio orientado a conexin Control de flujo:
Parada y espera (R): BSC (Binary Synchronous Control) Ventana deslizante (d o R): HDLC

60

Tema 4
Funciones y protocolos del nivel de enlace

3. Protocolos del nivel de enlace

Tipos de protocolos del nivel de enlace:

Redes WAN
Enlace punto a punto Significado local (entre DTE y DCE, o entre DCE y DCE) Servicio orientado a conexin Control de flujo:
PPP (Point-to-Point Protocol): basado en HDLC Acceso domstico (mdems, ADSL) Interconexin de routers

61

Tema 4
Funciones y protocolos del nivel de enlace

3. Protocolos del nivel de enlace

Tipos de protocolos del nivel de enlace:

Redes LAN
Enlace multipunto Extremo a extremo d, R y tasa de errores muy baja
Control de flujo en niveles superiores

Protocolo dividido en dos subcapas (Ethernet):


LLC (Logical Link Control): basado en HDLC MAC (Media Access Control): coordinacin por contienda

62

Tema 4
Funciones y protocolos del nivel de enlace

ndice

1. Introduccin 2. Funciones del nivel de enlace ([TAN03] Captulo 3.1) 3. Protocolos del nivel de enlace
3.1 Protocolo HDLC ([FOR07] Captulo 11.6) 3.2 Protocolo PPP ([FOR07] Captulo 11.7)

63

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo HDLC

Todos los protocolos del nivel de enlace actuales son subclases de HDLC o se basan en HDLC

Comunicacin semi-dplex o full-dplex


Diferentes tipos de hosts: estaciones primarias, secundarias y
combinadas Configuracin del enlace: punto a punto y multipunto Modos de operacin: NRM, ARM y ABM

Tramas monoformato: tramas I, tramas S y tramas U Clases de procedimiento: subclases de HDLC Interfaz del protocolo Marco de referencia para el diseo de otros protocolos:
LLC, PPP, LAPB (X.25), LAPD (RDSI), 802.11
64

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo HDLC

Tipos de estaciones

Estacin primaria: tiene el control total del enlace Estacin secundaria: no puede controlar el enlace Estacin combinada: acta alternativamente como primaria y como secundaria Configuracin no balanceada (o maestro/esclavo)

Configuracin del enlace

Una estacin primaria y una o varias estaciones secundarias La estacin primaria enva rdenes a las secundarias que responden
a la primaria Si slo hay una estacin secundaria, el enlace es punto a punto Si hay varias estaciones secundarias, el enlace es multipunto

Configuracin balanceada

Dos estaciones combinadas Enlace punto a punto


HDLC no soporta configuraciones balanceadas multipunto
65

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo HDLC

66

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo HDLC

Modos de operacin:

Modo de respuesta normal (NRM, Normal Response Mode)


Configuracin no balanceada punto a punto o multipunto Una estacin secundaria slo puede transmitir cuando la estacin
primaria le da permiso para hacerlo (semi-dplex)

Modo de respuesta asncrono (ARM, Asynchronous


Response Mode)

Configuracin no balanceada punto a punto o multipunto (slo una de las estaciones secundarias puede estar activa) Una estacin secundaria puede empezar a transmitir sin pedir el
permiso de la estacin primaria (full-dplex)

Modo balanceado asncrono (ABM, Asynchronous Balanced


Mode)

Configuracin balanceada punto a punto Cualquiera de las dos estaciones combinadas puede transmitir en
cualquier momento sin tener que solicitar el permiso de la otra estacin (full-dplex)

Tanto en NRM como en ARM, todas las transmisiones son


desde o hacia la estacin primaria
67

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo HDLC

Formato de la trama

Monoformato con campos de significado posicional


Delimitador de inicio y fin (01111110) con relleno de bits Direccin (uno o ms bytes) de la estacin secundaria,
o direccin de la estacin combinada que desempea el papel de estacin secundaria Control (uno o dos bytes) Informacin (longitud mxima dependiente de implementacin) FCS (Frame Check Sequence): CRC-CCITT (dos bytes) o CRC-32 (cuatro bytes)

68

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo HDLC

Trama I (informacin)

Datos e informacin de control asociada a los datos Campo de control


N(S): nmero de la trama que se est enviando N(R): nmero de la trama esperada
Las tramas I permiten la utilizacin de la tcnica de
superposicin (piggybacking)

Numeracin mdulo 8 128 (modo extendido) Variables asociadas:


V(S): nmero de la prxima trama a enviar V(R): nmero de la prxima trama esperada

69

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo HDLC

Trama S (supervisin)

Se utiliza para asentir, positiva o negativamente,


cuando no se tienen datos que transmitir (control de flujo y recuperacin de errores) Campo de control

N(R): nmero de la trama esperada Numeracin mdulo 8 128 (modo extendido) No contiene subcampo N(S) porque las tramas S no
transportan datos Subcampo Code: comando
Code 00 01 10 11 Comando RR (Receive Ready) REJ (REJect) RNR (Receive Not Ready) SREJ (Selective REJect)
70

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo HDLC

Trama U (no numerada)

Gestin del enlace Campo de control


No contiene campos N(R) ni N(S) puesto que estas tramas no
intervienen en el envo/recepcin de datos Subcampo Code: hasta 32 rdenes/respuestas no numeradas

Seleccin de modo de operacin: SNRM(E), SARM(E), SABM(E) Intercambio de informacin: UI (trama de datos no numerada), UA (respuesta positiva a la seleccin del modo de operacin) Desconexin: DISC (desconexin), DM (respuesta negativa a la seleccin del modo de operacin) Miscelneas: FRMR (rechazar trama con formato incorrecto)

71

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo HDLC

Tramas I, S y U

Campo de control
El subcampo P/F se usa para dos propsitos distintos:
Cuando est activo significa sondeo o final: Sondeo cuando la trama la enva la estacin primaria a una
estacin secundaria (orden) Final cuando la enva una estacin secundaria a la estacin primaria (respuesta) Mecanismo de punteo (checkpointing): Permite asociar una respuesta (F) con la orden correspondiente (P)

72

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo HDLC

Utilizacin de las tramas S

Una trama S se utiliza para asentir, positiva o negativamente, cuando no se tienen datos que transmitir (control de flujo y recuperacin de errores) Su significado depende del subcampo Code y del contexto: RR tiene 4 posibles usos:

RNR tiene 3 posibles usos:

ACK: asiente tramas hasta N(R) 1 sin piggybacking Sondeo: trama RR de primaria a secundaria con el bit P activo Respuesta negativa al sondeo: trama RR de secundaria a primaria con el bit F activo (si tuviera algo que transmitir enviara una trama I, y no una S) Respuesta positiva a la seleccin: trama RR de secundaria a primaria con el bit F activo

REJ: rechazo de la trama N(R) y subsiguientes SREJ: rechazo selectivo de la trama N(R)

ACK: asiente tramas hasta N(R) 1 y solicita que no se enven ms hasta que enve un RR Seleccin: trama RNR de primaria a secundaria con el bit P activo Respuesta negativa a la seleccin: trama RNR de secundaria a primaria con el bit F activo
73

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo HDLC

Sondeo
(RR,REJ,SREJ o trama I, mas P = 1)

Seleccin

Respuesta positiva al sondeo

Posible respuesta positiva a la seleccin

Respuesta negativa al sondeo

Respuesta negativa a la seleccin

74

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo HDLC

Clases de procedimiento

Especificacin precisa de las diferentes alternativas


ofrecidas por HDLC Modo de operacin (repertorio bsico de rdenes y respuestas) con opciones
UN
Orden I RR RNR Respuesta I RR RNR UA SNRM DM DISC FRMR Mdulo 8 Orden I RR RNR

UA
Respuesta I RR RNR UA SARM DM DISC FRMR Mdulo 8 Orden I RR RNR

BA
Respuesta I RR RNR UA SABM DM DISC FRMR Mdulo 8
75

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo HDLC

Clases de procedimiento

Opciones
Opcin 2 3 4 7 8 9 10 Orden Respuesta Descripcin Rechazo simple (vuelta atrs N) Rechazo selectivo Informacin no numerada Direcciones multiocteto Sin respuestas I (el bit F no puede estar activo) Sin rdenes I (el bit P no puede estar activo) Mdulo 128 REJ REJ SREJ SREJ UI UI Campo direccin extendido Quitar I Quitar I Campo control extendido

Ejemplos

UN 2,4 equivale a modo NRM con rechazo vuelta atrs N y tramas


no numeradas UA 2,9 equivale a modo ARM con rechazo vuelta atrs N y sin tramas I con bit P activo BA 3,8 equivale a modo ABM con rechazo selectivo y sin tramas I con bit F activo
76

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo HDLC


A B C

P UN 3,4 (sin errores) t0/1/2: conexin A/B/C y envo informacin no numerada t3: sondeo A t4: sondeo B con envo de una trama de datos que enva, a su vez, tres tramas de datos t5: envo de cinco tramas de datos a A t6: P agota su ventana y selecciona a A para poder seguir enviando tramas t7: sondeo C t8: P solicita confirmacin de tramas pendientes a A t9: P confirma tramas pendientes de B t10/11/12: desconexin A/B/C

t0 t1 t2

A,SNRM,P A,UA,F B,SNRM,P B,UA,F C,SNRM,P C,UA,F G,UI A,RR,0,P A,RR,0,F B,I,0,0,P B,I,0,1,* B,I,1,1,* B,I,2,1,F A,I,0,0,* A,I,1,0,* A,I,2,0,* A,I,3,0,* A,RNR,0,P A,RR,4,F A,I,4,0,* C,RR,0,P C,RR,0,F A,RNR,0,P A,RR,5,F B,RNR,3,P B,RR,1,F A,DISC,P A,UA,F B,DISC,P B,UA,F C,DISC,P C,UA,F

t3 t4

t5

t6

t7 t8 t9 t10 t11 t12

77

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo HDLC


A B C

P UN 2,4 (con errores) t0/1/2: conexin A/B/C t3: sondeo A con envo de una trama de datos que se pierde t4: expira el timeout y P intenta averiguar el estado de A t5: P recibe una trama ACK 1 y reenva la trama de datos perdida en t6 t7: sondeo B que enva dos tramas de datos t8: la trama se pierde t9: sondeo C t10: sondeo A t11: sondeo B, indicando la recepcin previa de una trama fuera de secuencia, que reenva la trama perdida y subsiguientes t12: P confirma tramas pendientes de B t13/14/15: desconexin A/B/C

t0 t1 t2

A,SNRM,P A,UA,F B,SNRM,P B,UA,F C,SNRM,P C,UA,F A,I,0,0,* A,I,1,0,P timeout A,RNR,0,P A,RR,1,F A,I,1,0,P A,RR,2,F B,RR,0,P B,I,0,0,* B,I,1,0,F C,RR,0,P C,RR,0,F A,RR,0,P A,RR,2,F B,REJ,0,P B,I,0,0,* B,I,1,0,F B,RNR,2,P B,RR,0,F A,DISC,P A,UA,F B,DISC,P B,UA,F C,DISC,P C,UA,F

t3 t4 t5 t6 t7 t8 t9 t10 t11

t12 t13 t14 t15

78

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo HDLC


A B C

P UN 2,4 (con errores) t0/1/2: conexin A/B/C t3: sondeo A con envo de una trama de datos que llega a B errnea t4: expira el timeout y P intenta averiguar el estado de A t5: P recibe una trama NAK 1 y reenva la trama de datos errnea en t6 t7: sondeo B que enva dos tramas de datos t8: la trama se pierde t9: sondeo C t10: sondeo A t11: sondeo B, indicando la recepcin previa de una trama fuera de secuencia, que reenva la trama perdida y subsiguientes t12: P confirma tramas pendientes de B t13/14/15: desconexin A/B/C

t0 t1 t2

A,SNRM,P A,UA,F B,SNRM,P B,UA,F C,SNRM,P C,UA,F A,I,0,0,* A,I,1,0,P timeout A,RNR,0,P A,REJ,1,F A,I,1,0,P A,RR,2,F B,RR,0,P B,I,0,0,* B,I,1,0,F C,RR,0,P C,RR,0,F A,RR,0,P A,RR,2,F B,REJ,0,P B,I,0,0,* B,I,1,0,F B,RNR,2,P B,RR,0,F A,DISC,P A,UA,F B,DISC,P B,UA,F C,DISC,P C,UA,F

t3 t4 t5 t6 t7 t8 t9 t10 t11

t12 t13 t14 t15

79

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo HDLC

BA 3,8 (con errores) t0: conexin A/B t18: B desea saber el estado de A e inicia un ciclo de punteo que tambin detecta la trama perdida pero ms tarde que con el rechazo explcito t20: A recibe una trama fuera de secuencia y enva una trama NAK 3 t25: A desea terminar el enlace y se asegura de que no haya tramas en trnsito t29: desconexin A/B Con enlaces full-dplex no se puede usar el nmero de trama esperada para detectar errores, por qu?

t0 t1

B,SABM,P

B,UA,F

t2 t3

t5 B,I,0,0,P t7 t7 A,I,0,0,P t9 B,RR,1,F t10 A,I,1,1,* t12 A,I,2,1,* t14 A,I,3,1,* t16 A,I,4,2,* t18 A,I,5,2,P t20 t22 A,I,3,3,* t24 t25 B,RNR,6,P t26 t27 B,RR,3,F t28 t29 t30
B,DISC,P

B,I,1,0,*

A,RR,2,F

t14 t15

t18 B,I,2,3,* t20 B,SREJ,3,* t21 A,RR,3,F t23

B,UA,F

t31 t32

80

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo HDLC

Interfaz del protocolo

Servicio orientado a la conexin (con asentimiento)

81

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo HDLC

Interfaz del protocolo

82

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo HDLC

PROBLEMA 7 (Examen de Febrero de 2005). Dos mquinas A y B se comunican sobre un enlace full-dplex mediante un protocolo de nivel de enlace derivado de HDLC del tipo BA 3 (repertorio bsico + rechazo selectivo con SREJ + numeracin mdulo 8), con las siguientes rdenes: SABM, DISC, I, RR, RNR; y respuestas: UA, DM, FRMR, I, RR, RNR. El tiempo de transmisin es de 2 ms para cada trama de informacin y de 1 ms para el resto. El tiempo de propagacin es de 2 ms. El tiempo de procesamiento puede despreciarse. El contenido de cada trama debe especificarse mediante la siguiente nomenclatura: [DIRECCIN, COMANDO/RESPUESTAS, N(S), N(R), P/F]. Si algn campo no es aplicable, sustityalo por un asterisco.

Dibuje un esquema detallado indicando las tramas que intercambian A y B si en t0 A inicia la transmisin de la trama de establecimiento de conexin. Dibuje un esquema detallado indicando las tramas que intercambian A y B, suponiendo que en t8 A comienza a transmitir 5 tramas de datos, que la segunda trama de datos que enva A se pierde, que en t9 B comienza a transmitir 2 tramas de datos, y que la segunda trama de datos que enva B llega a A errnea, hasta que todas las tramas de informacin son confirmadas.

Notas: Describa brevemente el significado de cada una de las instrucciones y respuestas que utilice. El bit P se activar slo en las tramas de informacin cuando la estacin no pueda enviar ms tramas de informacin. La confirmacin de tramas se realizar mediante piggybacking, es decir, slo se enviarn tramas RR como respuesta a un ciclo P/F cuando la estacin no pueda enviar ms tramas de informacin.

83

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo HDLC

PROBLEMA 7 (Examen de Febrero de 2005)

BA 3 (con errores)

t0 t1
B,SAB M,P

t0: conexin A/B t8: A comienza a transmitir t9: B comienza a transmitir t14: A no puede enviar ms tramas de informacin e inicia un ciclo de punteo t15: A recibe una trama errnea y enva una trama NAK 1 en t16 t16: B recibe una trama fuera de secuencia y enva una trama NAK 1 t18: B cierra el ciclo de punteo con una trama ACK 1 t19: A recibe una trama NAK 1 y reenva la trama errnea t19: B recibe una trama NAK 1 y reenva la trama errnea iniciando un ciclo de punteo t21: A enva la ltima trama de datos iniciando un ciclo de punteo t23: A cierra el ciclo de punteo con una trama ACK 2 t25: B cierra el ciclo de punteo con una trama ACK 5

t3 t4
B,UA,F

t6 t8 B,I,0,0,* t10 B,I,1,0,* t12 B,I,2,0,* t14 B,I,3,1,P A,SREJ,1,* t16 t17 t19 B,I,1,1,* t21 B,I,4,1,P A,RR,2,F t23 t24 t25 t26 t28 B,RR,5,F t21 t16 t17 t18 t19 B,SREJ,1,* B,RR,1,F A,I,1,1,P t13 t11 A,I,1,0,P t9 A,I,0,0,*

84

Tema 4
Funciones y protocolos del nivel de enlace

ndice

1. Introduccin 2. Funciones del nivel de enlace ([TAN03] Captulo 3.1) 3. Protocolos del nivel de enlace
3.1 Protocolo HDLC ([FOR07] Captulo 11.6) 3.2 Protocolo PPP ([FOR07] Captulo 11.7)

85

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo PPP

Necesidad de protocolos de nivel de enlace para comunicacin full-dplex sobre enlaces punto a punto

PPP sobre medio fsico (mdems) PPP sobre ATM (router ADSL) PPP sobre Ethernet (interconexin de routers) Diferentes protocolos de autenticacin Mltiples protocolos del nivel de red de manera simultnea Asignacin dinmica de direcciones de red Deteccin de errores (tramas PPP errneas) Deteccin de fallos en el enlace y notificacin al nivel de red

PPP (Point-to-Point Protocol) soporta:

PPP no soporta ni control de flujo ni enlaces multipunto

86

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo PPP

Diagrama de estados

87

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo PPP

Estados

Inactivo (Idle): el enlace no est siendo usado Establecimiento del enlace (Establishing)
Negociacin de opciones del protocolo de enlace
mediante el protocolo de control del enlace LCP

Autenticacin (Authenticating)
Verificacin de la identidad del usuario
PAP CHAP

Red (Networking)
Negociacin de opciones del protocolo de red
mediante el protocolo de gestin de red NCP Transmisin de datos (paquetes del nivel de red)

Terminacin del enlace (Terminating)

88

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo PPP

Formato de la trama

Monoformato con campos de significado posicional


Delimitador de inicio/fin de HDLC (0111110) con relleno de
caracteres (carcter ESC 01111101) Direccin: fijo (11111111), es decir, no hay direcciones Control: fijo (UI), es decir, transmisin no fiable Protocolo: identifica el tipo de paquete del campo de datos

Protocolo del nivel de red (IP, IPX, AppleTalk,) o protocolo de


gestin de otro protocolo (LCP, NCP,)

Informacin FCS (Frame Check Sequence) de HDLC

89

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo PPP

Protocolo LCP (Link Control Protocol)

Las paquetes LCP van encapsulados dentro de las


tramas PPP (Protocol: C02116)

Establecimiento, configuracin y terminacin del enlace Monitorizacin del estado del enlace Cdigo: tipo de paquete LCP ID: correspondencia entre peticiones y respuestas Longitud: tamao total del paquete LCP

Formato de los paquetes LCP

90

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo PPP

Protocolo LCP (Link Control Protocol)


Cdigo 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 0x0A 0x0B Tipo de paquete Peticin de configuracin ACK de configuracin NAK de configuracin NAK de configuracin Peticin de terminacin ACK de terminacin Rechazo de cdigo Rechazo de protocolo Peticin de eco Respuesta de eco Peticin de descarte Descripcin Lista de opciones de configuracin Acepta las opciones propuestas Algunas opciones no son aceptables Algunas opciones no son reconocidas Solicita la terminacin del enlace Acepta la terminacin del enlace Cdigo desconocido Protocolo desconocido Intercambio de paquetes (comprobacin del enlace) Peticin para descartar el paquete (comprobacin local) Valor por defecto 1500 bytes Ninguno Desactivado Desactivado

Opcin ms comunes Tamao mximo del paquete Protocolo de autenticacin Compresin del campo de protocolo Compresin del campo de control/direccin

91

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo PPP

Autenticacin

PAP (Password Authentication Protocol)

92

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo PPP

Autenticacin

CHAP (CHallenge Authentication Protocol)

93

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo PPP

Protocolo NCP (Network Control Protocol)

Conjunto de protocolos que permiten negociar opciones


para diferentes protocolos del nivel de red

Protocolo de control protocolo entre redes (IPCP, Internetwork


Protocol Control Protocol)

Gestin de direcciones IP dinmicas, tamao mximo del


paquete, compresin de los datos,

La trama IPCP va encapsulada dentro de la trama PPP


(Protocol: 802116) Formato de los paquetes IPCP:

94

Tema 4
Funciones y protocolos del nivel de enlace

3.1 Protocolo PPP

Ejemplo

LCP CHAP IPCP


IP sobre PPP (002116)

95

Tema 4
Funciones y protocolos del nivel de enlace

Resumen

Sincronizacin de trama:

Delimitadores de principio/fin de trama Transparencia mediante relleno de caracteres/bits


Coordinacin de la comunicacin:

Centralizada (seleccin y sondeo) Por contienda


Deteccin de errores: CRC Control de flujo y recuperacin de errores:

Parada y espera con ARQ (Automatic Repeat reQuest) Ventana deslizante con ARQ
Vuelta atrs N (go-back-n) Rechazo selectivo (selective reject)
96

Tema 4
Funciones y protocolos del nivel de enlace

Resumen

HDLC

Tipos de estaciones: primarias, secundarias y


combinadas Configuracin del enlace: punto a punto y multipunto Modos de operacin: NRM, ARM y ABM Tramas monoformato: tramas I, tramas S y tramas U Clases de procedimiento: subclases de HDLC Interfaz del protocolo

PPP

Tramas monoformato Diagrama de estados Autenticacin: PAP y CHAP Protocolos LCP y NCP
97

Você também pode gostar