introduccion a los protocolos de comunicacion
TRANSCRIPT
SCD-Tema 6-2000/01 1
TEMA 6: INTRODUCCIÓN A LOS PROTOCOLOSDE COMUNICACIÓN
➨ Tipos de Servicio
➨ Tipos de Protocolos y funciones asociadas
➨ Unidad de Datos de Protocolo (UDP)
➨ Gestión de la conexión
➨ Control de errores y secuenciamiento
➨ Control de flujo
➨ Estimación de la eficiencia de un protocolo
SCD-Tema 6-2000/01 2
Tipos de Servicio
➨ Servicio orientado a conexión
• Establecimiento (conexión a nivel de........)
• Transferencia de información
• Liberación (conexión a nivel de.........)
➨ Servicio no orientado a conexión
• Transferencia de información
SCD-Tema 6-2000/01 3
Servicio no orientado a conexión
DATOS
TransferenciaDATOS
DATOS
A B
SCD-Tema 6-2000/01 4
Servicio orientado a conexión
A B
Transferencia
Transferencia
Establecimiento
Establecimiento
Liberación
Liberación
SCD-Tema 6-2000/01 5
Protocolos no orientados a conexión (Funciones)
• Estructurar la UDP de su nivel
• Direccionar máquinas / Identificar procesos
• Detectar errores ⇒ Entrega libre de errores
SCD-Tema 6-2000/01 6
Protocolos orientados a conexión (Funciones)
• Estructurar la UDP de su nivel
• Direccionar máquinas / Identificar procesos
• Detectar errores
• Gestión de la conexión
• Control de errores
• Secuenciamiento
• Control de flujo
SCD-Tema 6-2000/01 7
UDP - Unidad de datos de protocolo
F LON D.D. D.O. TIPO T.P. DATOS SVT F
CABECERA COLA DATOS
• Posibles campos de una UDP genérica
SCD-Tema 6-2000/01 8
Campos de una UDP genérica (1)
F LON D.D. D.O. TIPO T.P. DATOS SVT F
F F Identificadores deCOMIENZO y FINAL de la UDP
• Solo en UDP’s de nivel de enlace
SCD-Tema 6-2000/01 9
Campos de una UDP genérica (2)
F LON D.D. D.O. TIPO T.P. DATOS SVT F
LONGITUD
• Cuando no está predefinido el tamaño del algún campo
SCD-Tema 6-2000/01 10
Campos de una UDP genérica (3)
F LON D.D. D.O. TIPO T.P. DATOS SVT F
DIREC. DESTINO DIREC. ORIGEN
• Direcciones físicas o lógicas
• Direcciones individuales, de grupo o de difusión
SCD-Tema 6-2000/01 11
Campos de una UDP genérica (4)
F LON D.D. D.O. TIPO T.P. DATOS SVT F
TIPO DE UDP
• Tipo de UDP, Información o Control y sus campos
asociados
SCD-Tema 6-2000/01 12
Campos de una UD genérica (5)
F LON D.D. D.O. TIPO T.P. DATOS SVT F
TIPO DEPROTOCOLO
• Tipo de protocolo encapsulado ⇒ capacidad multiprotocolo
SCD-Tema 6-2000/01 13
Campos de una UDP genérica (6)
F LON D.D. D.O. TIPO T.P. DATOS SVT F
DATOSDATOS
• Específico de las UDP’s de Información (I)
• Encapsulado de la UDP de nivel superior
SCD-Tema 6-2000/01 14
Campos de una UDP genérica (7)
F LON D.D. D.O. TIPO T.P. DATOS SVT F
SECUENCIA DEVERIFICACIÓN
DE TRAMA
• Campo de redundancia para detectar posibles errores de
transmisión
SCD-Tema 6-2000/01 15
Ejemplos de UDP’s
• Trama HDLC (prot. enlace OSI orientado a conexión)
F Dirección. Control/Tipo DATOS SVT F
Cabecera Cola
• Datagrama UDP (prot. transporte TCP/IP no orientado a conexión)
PROC. ORIGEN PROC: DESTINO
LONGITUD REDUND. Cab.
DATOS
Cabecera
SCD-Tema 6-2000/01 16
Tipos de Errores
➨ Agrupados en ráfagas
• Longitud ráfaga L bits
➨ Estadísticamente independientes
• Tasa de error Pe
SCD-Tema 6-2000/01 17
Algoritmo de Detección de errores
Mensaje ALGORITMO Redundancia
MensajeRedundancia
Tx Rx
Redundancia Rec.
+
¿IGUALES?
ALGORITMO
Redundancia
Mensaje Recibido
SCD-Tema 6-2000/01 18
Códigos de detección de errores
➨ Códigos de redundancia cíclica
➨ Códigos basados en controles de paridad
• Paridad simple (bit de paridad)
• Paridad transversal (carácter de paridad)
• Paridad doble (bit/carácter de paridad)
➨ Códigos de comprobación de suma
SCD-Tema 6-2000/01 19
Códigos basados en controles de paridad (1)
• Paridad simple (bit de paridad) Carácter B. P.
• Paridad transversal (carácter de paridad)
Carácter 1
Carácter 2
Carácter n
C. Paridad
Detectan errores impares
SCD-Tema 6-2000/01 20
Códigos basados en controles de paridad (2)
• Paridad doble (bit/carácter de paridad)
Carácter 1 B. P.
Carácter 2 B. P.
Carácter n B. P.
C. Paridad 1 B. P.
Cada bit es controlado dos veces, se detectan errores dobles e impares
Los códigos basados en controles de paridad no son válidos para detectar RAFAGAS DE ERRORES
SCD-Tema 6-2000/01 21
Códigos de Redundancia Ciclica (CRC)
• Permiten detectar Ráfagas de Errores
Característica: Cualquier combinación válida hade ser múltiplo de un cierto valor constante
Mensaje Fuente
K
Redundancia
(n-K)
n bits
Mensaje protegido
SCD-Tema 6-2000/01 22
Códigos Polinomiales
• Las secuencias de “0” y “1” se representan mediante
polinomios.
Para desarrollar los algoritmos de forma más cómoda
10010010 =
• Las operaciones se realizan en módulo 2
x7 + x4 + x
SCD-Tema 6-2000/01 23
Caracterización de los CRC
• Por su dimensión (n,K)
n: nº total de bits del mensaje protegido
K: nº de bits del mensaje fuente
• Por el polinomio generador g(x), es el valor constante
del que deben se múltiplo todas las combinaciones válidas.
g(x) →→→→ grado n-K
• Por el algoritmo empleado para obtener la redundancia
Algoritmo de Generación Sistemática.
SCD-Tema 6-2000/01 24
Capacidad de detección de los CRC
• Si L < n-K+1, se detectan todas las posibles ráfagas
Grado del polinomio generador (n-K), equivalente al nº de
bits de redundancia, determinan la capacidad de detección
de ráfagas de una determinada longitud L.
• Si L = n-K+1, se detectan todas las ráfagas menos una
• Si L > n-K+1, solo se detectan algunas ráfagas
SCD-Tema 6-2000/01 25
V.41
• Detecta todas las posibles ráfagas de hasta 16 bits de
longitud
Basado en el polinomio generador: x16 + x12 + x5 +1
• Detecta todas las ráfagas de 17 bits menos una, la
probabilidad de detección es del 99,997%
• Detecta las ráfagas de más de 17 bits con una probabilidad
del 99,998%.
Como n-K+1 = 17:
SCD-Tema 6-2000/01 26
Códigos de comprobación de suma (Check Sum)
• La información a transmitir se considera como un
conjunto de palabras de n bits, y la redundancia es otra
palabra de n bits, que inicialmente están a “0”.
• Emisor:
La redundancia se calcula como el complemento a 1 de la
suma en complemento a 1 de las palabras de información.
• Receptor:
Se suman en complemento a 1 tanto las palabras de
información como la de redundancia, y si el resultado es una
palabra con todos los bits a “1”se da por buena.
SCD-Tema 6-2000/01 27
Gestión de la conexiónA B
ESTABLECIMIENTO
LIBERACION
Transferencia
Ambas fases se realiza mediante el envío de UDP’s de control
SCD-Tema 6-2000/01 28
Establecimiento Conexión (1)
A B
Solicitud-Establ.
Aceptación-Establ.
SCD-Tema 6-2000/01 29
Establecimiento Conexión (2)
Solicitud-Establ.
Aceptación-Establ.
A B
NEGOCIACION
AUTENTIFICACION
SCD-Tema 6-2000/01 30
Liberación Conexión
A B
Solicitud-Liber.
Aceptación-Liber.
SCD-Tema 6-2000/01 31
Fase de transferencia
A B
Establecimiento
Liberación
TRANSFERENCIA
UDP_I
Control de errores
Secuenciamiento
Control de flujo
SCD-Tema 6-2000/01 32
Control de errores
Paro y Espera
Transmisión continua:
Retransmisión No Selectiva (garantiza el secuenciamiento)
Retransmisión Selectiva (No garantiza el secuenciamiento)
• Corrección por retransmisión o ARQ (Automatic Repeat reQuest) , basada en códigos detectores:
• Corrección en el receptor, basada en códigos correctores
SCD-Tema 6-2000/01 33
Paro y Espera (Sin errores)
A B
I(0)
• UDP’s: I y CONF/ACK
I(0)
I(0)
I(1)CONF(1)
0
I(0)
I(1)
CONF(0)1
•••
SCD-Tema 6-2000/01 34
Paro y Espera (UDP-I errónea)
A B• UDP’s: I y CONF/ACK
I(0)
I(0)I(0)
I(0)ΧΧΧΧTime-out
CONF(1) 0
I(1)
I(1)
SCD-Tema 6-2000/01 35
Paro y Espera (UDP-I perdida)
A B• UDP’s: I y CONF/ACK
I(0)
I(0)I(0)
I(1)
CONF(1)
1
I(0)
Time-out
0
I(1)
SCD-Tema 6-2000/01 36
Paro y Espera (Error en CONF/ACK)
A B
I(0)
• UDP’s: I y CONF/ACK
I(0)
I(0)
I(1)
0
I(0)
I(1)
CONF(1)
1
CONF(1)XTime-out
Detecta duplicado0
SCD-Tema 6-2000/01 37
Paro y Espera (UDP-I errónea)
A B
• UDP’s: I , CONF/ACK y RECH
I(0)
I(0)I(0)
I(1)
CONF(1)
1
I(0)ΧΧΧΧTime-out
0
I(1)
RECH(0)
SCD-Tema 6-2000/01 38
Transmisión continua (sin errores)
I(2)
I(1)
I(0)
CONF(2)
CONF(3)
CONF(1)
SCD-Tema 6-2000/01 39
Listas de Retransmisión y de Recepción
I(0)
I(2)
I(1)
I(0)
CONF(2)
CONF(3)
I(0)
I(0)I(1)
I(1)
I(1)I(2)
I(2)
0
0 1
0 21
Lista de RetransmisiónLista de Recepción
CONF(1)
SCD-Tema 6-2000/01 40
Retransmisión No Selectiva (UDP-I errónea)
I(2)
I(1)
I(0)
CONF(1)Time-out
I(1)
I(2) CONF(2)
CONF(3)
SCD-Tema 6-2000/01 41
Superposición
CONF(1)
I(0)
I(1)
I’(0)
CONF(2)
CONF(1)
I(0,0)
I(1,0)
I’(0,2)• Las UDP_I permiten confirmar
• I(send, receive)
SCD-Tema 6-2000/01 42
Control de flujo
• Mecanismos de ventana deslizante
Limitación de las UDP’s en tránsito
– Ventana de tamaño fijo.
– Ventana de tamaño variable.
• Aviso explícito de sobrecarga :
UDP’s de control específicas
SCD-Tema 6-2000/01 43
C.F. por ventana deslizante (K=3)
I(0)I(0)
I(1)I(1) I(0)
I(1) CONF(O)
I(1) I(2)I(2)
I(2)I(3) CONF(1)
CONF(5)
I(3) CONF(2)I(4)
CONF(3)I(4)I(5)CONF(4)
I(5)
I(1)I(2) I(3)I(3)V. LLENA
I(2)I(3)I(4)
I(4)V.LLENA
I(3)I(4) I(5)I(5)V.LLENA
SCD-Tema 6-2000/01 44
Desplazamiento ventana de emisión (K=3)
0 1 2 3 4 5 6 7 0
0 1 2 3 4 5 6 7 0I(0)
0 1 2 3 4 5 6 7 0I(1)
0 1 2 3 4 5 6 7 0I(2)
CONF(0) 0 1 2 3 4 5 6 7 0