Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Tema 6
Tema 6
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
2 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
3 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
Transporte
Red Enlace Fsica
Transporte
Red Enlace Fsica
19/04/2005
4 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
5 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
6 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
A APLICACIN PRESENTACIN SESIN
TSAP
ENTIDAD DE TRANSPORTE
NSAP
ENTIDAD DE TRANSPORTE
NSAP
TPDU
La Entidad de Transporte o Peer Protocol Entity (PPE) es el programa que ejecuta el protocolo. La Interfaz entre la capa de transporte y la de sesin se utiliza para abrir/usar/cerrar puntos de TSAPs. Un ejemplo de este tipo de interfaz son los sockets.
19/04/2005
7 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
8 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
9 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
19/04/2005
10 de 38
Tema 6.
Nivel de Transporte
ndice
T-CONNECT. request
Escenarios Comunes
Las secuencias vlidas ms comunes de las primitivas de transporte OSI son las siguientes:
T-CONNECT. request
T-DISCONNECT. indication
19/04/2005
11 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
T-DISCONNECT. request
Escenarios Comunes
T-DISCONNECT. request T-DISCONNECT. indication T-DISCONNECT. indication
T-DATA. request
T-DATA. indication
T-EXPEDITED-DATA. request
T-EXPEDITED-DATA. indication
19/04/2005
12 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO
Protocolos e Industria
23 1 4 23
23
B
5
C
6
D
7-10 19/04/2005
13 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO
B C ESTADO A Aislado Pendiente de conex. al exterior Pendiente de conex. del exterior
A
23
5 D
Conexin D establecida
7-10
SIGNIFICADO DE LA TRANSICIN
Protocolos e Industria
1 2 3 4 5 6 7 8 9 10
T-CONNECT.request recibida desde el usuario del T-servicio T-DISCONNECT.indication recibida desde el proveedor del T-servicio T-DISCONNECT.request recibida desde el usuario del T-servicio T-CONNECT.indication recibida desde el proveedor del T-servicio T-CONNECT.confirm recibida desde el proveedor del T-servicio T-CONNECT.response recibida desde el usuario del T-servicio T-DATA.request recibida desde el usuario del T-servicio T-DATA.indication recibida desde el proveedor del T-servicio T-EXPEDITED-DATA.request recibida desde el usuario del T-servicio T-EXPEDITED-DATA.indication recibida desde el proveedor del T-servicio 19/04/2005
14 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
Protocolos de Transporte
El servicio de transporte lo implementa un protocolo de transporte ejecutado por dos entidades de transporte cooperantes. El protocolo de transporte tiene funciones similares al de enlace de datos: ambos realizan control de errores, secuenciamiento y control del flujo. Por otro lado existen diferencias importantes entre la capa de transporte (TL) y la de enlace (DLL), debido a que en la capa de enlace la comunicacin es sobre un canal fsico mientras que en la de transporte se utiliza la subred.
Entorno DLL IMP
CANAL FSICO
IMP
Entorno TL
HOST
SUBRED DE COMUNICACIN
HOST
19/04/2005
15 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
Protocolos de Transporte
Diferencias:
CAPA DE ENLACE LGICO (NIVEL 2) No es necesario direccionar al destino Manipulacin fcil de la conexin Aparicin-desaparicin controlada de paquetes Preasigna buffers por conexin y CdF Diseo orientado a la eficiencia CAPA DE TRANSPORTE (NIVEL 4) Se necesita direccionar explcitamente Mltiples consideraciones en conexiones La subred almacena paquetes inoportunos Demasiadas conexiones dinmicas: no preasignar recursos Ms importante el servicio de red utilizado
19/04/2005
16 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
Hay 5 variantes OSI del protocolo de transporte que se denotan por TP[0..4]. El protocolo TCP est basado en TP4.
CLASE 0 1 2 3 4 TIPO DE RED A B A B C NOMBRE Clase Simple Clase de Recuperacin de Errores Bsicos Clase de Multiplexado Clase de Multiplexado y Recuperacin de Errores Clase de Mx. Deteccin y Recuperacin de Errores
19/04/2005
17 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
18 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
Establecimiento de la Conexin
Abrir una conexin no es tarea simple. Pueden aparecer paquetes duplicados o retrasados que si no se manejan adecuadamente aparentan operaciones correctas (y, por ejemplo, hacer una extraccin ficticia adicional de dinero).
SOLUCIN No usar dos direcciones TSAP iguales. Cada vez que se necesite se genera de forma nica (usando el tiempo, por ejemplo) Usar identificadores de conexin incrementados en secuencia. El sistema guarda pares (T-entidad, IdC-usado) Imponer un tiempo de vida mximo: restringiendo la topologa a una controlable, insertando el nmero de saltos en cada paquete o marcando cada paquete con el tiempo real DESVENTAJAS Es imposible as utilizar un modelo con servidor de procesos (superservidor)
La historia de los IdC debe mantenerse indefinidamente. Si la mquina cae y olvida la historia hay inconsistencia Difcil seleccin del tiempo de vida. Se suele elegir como un mltiplo pequeo del tiempo de vida real medio estimado de cada paquete
19/04/2005
19 de 38
Tema 6.
Nivel de Transporte
ndice
o
Establecimiento de la Conexin
Mtodo TOMLINSON:
o
Utiliza tiempos de vida acotados para abrir conexiones de forma segura. Cada host tiene un reloj (no importan las cadas pues sigue funcionando). No se necesita sincronizacin entre los hosts. Un reloj es un contador binario actualizado a intervalos regulares. El nmero de bits debe igualar o superar al tamao de un nmero de secuencia. Nunca existen dos TPDUs con el mimo nmero de secuencia a la vez. Al abrir una conexin se usan los k bits menos significativos del reloj como nmero inicial de secuencia. El periodo de repeticin debe ser largo (32 bits) para que las TPDUs viejas desaparezcan antes de reutilizar el mismo nmero. Las T-entidades pueden despus acordar el nmero inicial de secuencia para sus TPDUs y controlar el flujo por ventana. Debe evitarse usar el mismo nmero de secuencia antes del tiempo de vida desde la ltima vez que us. Otro problema es que las TPDUs de control tambin tienen nmero de secuencia y el problema es el mismo que con los datos
19/04/2005
Protocolos e Industria
20 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
o
Establecimiento de la Conexin
Protocolo THREE WAY HANDSHAKE (TWH)
Es un protocolo a dos bandas (de ida y vuelta) que utiliza el mtodo Tomlinson. o Si una TPDU de control que lleva el nmero inicial de secuencia a usar en la conexin se retrasa y se enva una copia podra provocarse una apertura errnea de conexin con la entidad destino. TWH evita esos problemas. o No se necesita que ambos extremos empiecen a enviar con el mismo nmero de secuencia, y por tanto puede usarse con mecanismos de sincronizacin no basados en un reloj global.
A
CR (seq=x) CR (seq=x) CC (seq=y,ack=x) CC (seq=y,ack=x) DATA (seq=x,ack=y) DATA (seq=x,ack=y)
19/04/2005
21 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
Establecimiento de la Conexin
A B
Dupl. Viejo CR (seq=x) CC (seq=y,ack=x) CC (seq=y,ack=x) REJ (ack=y) REJ (ack=y)
(b) Cuando B intenta confirmar que A est abriendo una conexin se la niegan y se da cuenta del error
Dupl. Viejo
CR (seq=x) CC (seq=y,ack=x)
Dupl. Viejo
(c) Adems de descubrir que A no desea conexin (reject) los datos son de otra conexin (pues ack='z' no 'y')
19/04/2005
22 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
Liberacin de la Conexin
Conocemos varias formas de liberar una conexin: El usuario saca T-DISCONNECT.request y la capa de transporte saca la indicacin apropiada en el otro extremo. Esta es la desconexin normal. Los dos usuarios hacen T-DISCONNECT.request a la vez. La capa de transporte saca T-DISCONNECT.indication en ambos extremos. El usuario saca T-DISCONNECT.request y antes de que llegue la indicacin desde el otro extremo la propia capa de transporte cierra la conexin. Todas estas desconexiones tienen en comn que pueden provocar la prdida de datos en trnsito (se denomina cierre abrupto). Vase un ejemplo en la siguiente transparencia.
19/04/2005
23 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
Liberacin de la Conexin
A
T-CONNECT.request T-CONNECT.indication T-CONNECT.response T-CONNECT.confirm T-DATA.request T-DATA.request T-DISCONNECT.request T-DATA.indication T-DISCONNECT.request No hay T-DATA.indication tras terminar la conexin
El protocolo de desconexin debe ser ms elaborado. Una solucin es que un extremo antes de desconectar se asegure de que el otro extremo recibi todos sus datos y de que dicho extremo remoto no tiene datos an por enviar. Esto significa que el extremo local informa de que ha terminado y pregunta al remoto si ha terminado. Si es as, entonces pueden liberar la conexin.
19/04/2005
24 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
Liberacin de la Conexin
Se puede demostrar que en una red general una desconexin segura es imposible de conseguir. En la prctica esta situacin no dura indefinidamente y en algn momento se est seguro de cerrar la conexin sin perder datos. Desconexin usando THREE WAY HANDSHAKE (TWH): Es un mecanismo de desconexin muy usado ya que supone una mejora al mecanismo de desconexin OSI. Veamos 4 posibles escenarios de desconexin manejados correctamente:
A
Enviar DR + Arrancar Temporizador
B
Enviar DR + Arrancar Temporizador
19/04/2005
25 de 38
Tema 6.
Nivel de Transporte
Enviar DR + Arrancar Temporizador
Liberacin de la Conexin
A B
Enviar DR + Arrancar Temporizador
Llega DR Enviar DC + Arrancar Temporizador Llega DR Enviar DC + Arrancar Temporizador Llega ACK+ Liberar Conexin
ndice
Servicios Recomendaciones ISO Protocolos e Industria
Liberar una conexin hace que la T-entidad borre la informacin sobre la conexin de su tabla de conexiones abiertas y se lo indique al T-usuario. Esto es bien distinto de un T-usuario que pide T-DISCONNECT.request. Se podra cerrar si no se reciben TPDUs tras un tiempo dado: el protocolo debe mantener la lnea activa (paquetes fantasma) si pasa mucho tiempo entre envos sucesivos de datos.
19/04/2005
26 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
27 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
5 4
TPDU
5 4
SERVICIOS DE RED
19/04/2005
28 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
29 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
Protocolos de la Industria
Los protocolos X.214 tienen una especificacin cercana a la de protocolos reales como TCP y UDP. Sin embargo existen ms protocolos distintos de estos mencionados: TP4: es muy similar a TCP. La razn es que ambos suponen que la red subyacente es de clase C. TOP y MAP: al igual que el nivel de red de TOP y MAP tiene un funcionamiento similar al de IP, el nivel de transporte es muy similar a TCP. Por tanto, la importancia de conocer TCP y UDP es doble, no slo por ser los protocolos de transporte ms utilizados en la actualidad, sino porque muchos otros, tanto formales como reales, tienen un funcionamiento similar.
19/04/2005
30 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
31 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
32 de 38
Tema 6.
Nivel de Transporte
ndice
CHECKSUM
- PUERTOS ORIGEN Y DESTINO: TSAPs que identifican los extremos de la conexin. - NMERO DE SECUENCIA Y CONFIRMACIN DE PIGGYBACK: Cada octeto se numera individualmente. - LONGITUD DE CABECERA TCP: N de palabras de 32 bits de la cabecera. Necesario porque el campo de OPCIONES es de longitud variable.
19/04/2005
33 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
- VENTANA: Para control del flujo. 16 bits que indican cuntos octetos ms a partir del ltimo confirmado pueden enviarse (no cuantas TPDUs). - CHECKSUM: Comp-1 de la suma de todos los datos, en bloques de 16 bits. - OPCIONES: Para comunicar tamaos de buffer durante la apertura de la conexin, etc...
19/04/2005
34 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios
0
^1 +4 / -10 ^3 ^2 / -4 ^6 / -4 ^3
1
+5
Recomendaciones ISO
2
4
^7 / -5
Protocolos e Industria
^3 / -9 ^3 / -9
+8
^3 / -9 +8
+9 / -8
7
+8
+11 / -8
8
+8 ^12
passive_open active_open close syn reset send time-out ack fin syn+ack fin+ack wait
+9 / -8
10
19/04/2005
35 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
La cabecera tiene una longitud fija de 64 bits, y est compuesta por los siguientes campos:
PUERTOS ORIGEN Y DESTINO: TSAPs que identifican los extremos de la conexin. Se utilizan para multiplexar datagramas entre los procesos que esperan recibirlos. El puerto origen es opcional. LONGITUD: N total de octetos en el datagrama UDP, incluyendo la cabecera y los datos. CHECKSUM: Es opcional y se rellena a ceros cuando no se quiere usar. Es la nica alternativa para asegurar que los datos llegan correctos.
19/04/2005
36 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
19/04/2005
37 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
19/04/2005
38 de 38
Tema 6.
Nivel de Transporte
ndice
Servicios Recomendaciones ISO Protocolos e Industria
19/04/2005