capa de transporte

50
1

Upload: marialeo90

Post on 29-Jun-2015

837 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Capa de transporte

1

Page 2: Capa de transporte

Servicios

Servicios parecidos a la capa de red Orientados a conexión No orientados a conexión

¿ Porqué dos capas distintas ? La capa de transporte sólo depende

de los usuarios finales y la de red no Puede haber varias capas de

transporte especializadas en tipos de tráfico.

2

Page 3: Capa de transporte

Relación entre capas

3

Page 4: Capa de transporte

Anidado de TPDU

4

Page 5: Capa de transporte

Calidad de servicio

La capa de transporte debe mejorar la QoS de la subred

Posibles parámetros de QoS

Negociación de opciones

5

Page 6: Capa de transporte

Primitivas

Lo más interesante es el servicio orientado a conexión

Se trata de brindar un flujo confiable de datos de extremo a extremo

Ejemplo de primitivas de una capa de transporte:

6

Page 7: Capa de transporte

Diagrama de estadoscliente: línea sólida - servidor: línea punteada

7

Page 8: Capa de transporte

Primitivas con Berkeley sockets

8

Page 9: Capa de transporte

Capas de Enlace y Transporte Las funciones de capa de transporte

son similares a las de capa de enlace de datos

Control de errores Secuenciamiento Control de flujo

Pero hay diferencias...

9

Page 10: Capa de transporte

Capas de Enlace y Transporte

10

Diferencias:

• Direccionamiento

•Complejidad en el establecimiento de conexión

• Capacidad de almacenamiento en la red

• Diferencias de retardos

Page 11: Capa de transporte

Direccionamiento

Necesidad de conocer la máquina destino

Necesidad de identificar el servicio Ej en TCP/IP dirección IP + puerto

TCP Puertos bien conocidos Servidor de procesos (escucha en

todos los puertos) Servidor de nombres (ej. DNS)

11

Page 12: Capa de transporte

Direcciones: TSAP NSAP

12

Page 13: Capa de transporte

Servidor de procesos

13

Page 14: Capa de transporte

Establecimiento de conexión Más difícil de lo que parece Problema de los duplicados

retardados Posible repetición de conexiones

Posibles soluciones: Direcciones por una única vez Identificación de conexión (y caídas ?) Vida limitada de los paquetes

subred restringida, contador de saltos, timestamp

14

Page 15: Capa de transporte

Establecimiento de conexión (Tomlinson)

Establecer conexión Reloj de tiempo real en cada máquina

que no se apaga Tiempo T=múltiplo de tiempo de vida de

los paquetes Zona prohibida Conexión en tres tiempos con

secuencias independientes para cada extremo

15

Page 16: Capa de transporte

Números de secuenciaZona prohibida

16

Page 17: Capa de transporte

Establecimiento en 3 fases

17

Page 18: Capa de transporte

Fin de conexión

Terminar conexión simétrica

se cierran separadamente ambos sentidos complicación del problema de los dos

ejércitos asimétrica

puede provocar pérdida de datos

18

Page 19: Capa de transporte

Desconexión con pérdida de información

19

Page 20: Capa de transporte

Problema de los dos ejércitos

20

Page 21: Capa de transporte

Diferentes escenarios de corte

21

Page 22: Capa de transporte

Buffers y control de flujo

Máquinas con muchas conexiones simultáneas

¿ Cómo optimizar el buffer ? Políticas Buffer dinámico

Posible deadlock si se pierde actualización Limitaciones por capacidad de la red Ventana dependiendo de la carga: W = c.r

c = capacidad de la red en paquetes por segundo. r = tiempo de ida y vuelta.

22

Page 23: Capa de transporte

Diferentes políticas de manejo de buffers

23

Page 24: Capa de transporte

Posible deadlock

24

Page 25: Capa de transporte

Multiplexado

Multiplexado Upward multiplexing

políticas de precios en las conexiones de red varias conexiones de transporte sobre una de

red Downward multiplexing

enlaces rápidos pero la ventana limita una conexión de transporte abre varias

conexiones de red y reparte la carga

25

Page 26: Capa de transporte

Multiplexado:Upward y downward

26

Page 27: Capa de transporte

Recuperación de caídas

Recuperación frente a problemas Caídas de la red

con circuitos virtuales vs. datagramas Caídas en las máquinas de los extremos

No se puede hacer transparente a las capas superiores

Existen casos donde se pueden duplicar o perder según las políticas del transmisor y el receptor

27

Page 28: Capa de transporte

Caídas en las máquinasSegún estrategia del servidor y el cliente

A - Ack, W - Write, C - Crash

28

Page 29: Capa de transporte

Transmission Control Protocol TCP

Objetivo: Flujo confiable de bytes sobre una red no confiable Diferentes tecnologías de red en el medio Robusto frente a problemas de la red

Entidad TCP y protocolo TCP Recibe flujo de la capa superior y lo

parte en trozos que envía en paquetes IP El receptor lo reensambla

29

Page 30: Capa de transporte

Modelo de servicio de TCP

Conexión entre 2 sockets Identificación de los sockets formada por

dirección IP + puerto (puerto=TSAP) Las conexiones se identifican con las

direcciones de los sockets de ambos extremos

Puertos 0 - 256: puertos bien conocidos (RFC 1700)

Full duplex y punto a punto

30

Page 31: Capa de transporte

TCP

Las conexiones TCP son un flujo de bytes, no de mensajes (capas superiores)

Puede esperar para enviarlo según su política de buffer (Pero existe push)

También datos urgentes. (Ejemplo ^C)

31

Page 32: Capa de transporte

Mensajes y bytes

Un mensaje (ABCD) es enviado en 4 paquetes IP separados, pero devuelto a la aplicación destino como un conjunto de bytes ABCD

32

Page 33: Capa de transporte

Protocolo TCP

Número de secuencia de 32 bits Unidad de datos = Segmento Encabezado de de 20 bytes Máximo del segmento

carga del paquete IP 64 Kbytes MTU de la red. Típico 1500 bytes

Usa protocolo de ventanas deslizantes de tamaño de ventana variable

33

Page 34: Capa de transporte

Problemas con los segmentos Pérdidas de segmentos por rutas

congestionadas o enlaces caídos Segmentos llegan fuera de orden Segmentos se duplican por retardos

que obligan a la retransmisión

34

Page 35: Capa de transporte

Encabezado TCP

35

Page 36: Capa de transporte

Pseudo-encabezado para cálculo del checksum

36

Page 37: Capa de transporte

Opciones

Escala de la ventana. Repetición selectiva (nak)

37

Page 38: Capa de transporte

Manejo de conexiones

38

Page 39: Capa de transporte

Estados de la conexión

39

Page 40: Capa de transporte

Significado de los estados

40

Page 41: Capa de transporte

Política de transmisión en TCP El que recibe informa sobre el tamaño de

la ventana (tamaño de buffer disponible) Ventana 0 y siguiente anuncio se pierde

bloqueo urgentes y prueba para reanuncio de ventana

Posibilidad de retardar el envío (hasta 500 ms) para esperar a llenar ventana del receptor

41

Page 42: Capa de transporte

Manejo de ventana en TCP

42

Page 43: Capa de transporte

Problemas de performance

Algoritmo de Nagle esperar el ack del primer byte y luego

bufferear se puede enviar también cuando se llena

media ventana o el tamaño máximo del segmento

Malo en aplicaciones tipo X-Windows (mouse)

Síndrome de la ventana tonta Aviso de ventana de 1 byte Clark: No avisar disponibilidad de ventana

hasta segmento máximo o mitad del buffer libre

43

Page 44: Capa de transporte

Ventana tonta

44

Page 45: Capa de transporte

Control de congestión en TCP

Hipótesis: las pérdidas de paquetes son por congestión (los enlaces son buenos ahora)

Ventana de congestión Comienza con la mitad del tamaño máximo de

segmento (64Kbytes) como umbral Aumenta duplicando tamaño desde un

segmento a cada ACK (slow start !) A partir del umbral sigue lineal Pérdida o ICMP Source Quench: nivel a la

mitad de la ventana y ventana 1 segmento.

45

Page 46: Capa de transporte

Control de flujo y congestión

46

Page 47: Capa de transporte

Ventana de congestión

47

Page 48: Capa de transporte

Gestión de temporizadores Varios temporizadores

el más importante es el de retransmisión Jacobson:

RTT = RTT + ( 1 - ) M = 7/8 D = D + ( 1 - ) |RTT - M| Timeout = RTT + 4 * D

Karn: No calcular sobre retransmisiones Se duplica el timeout a cada pérdida.

Otros: persistencia, mantener vivo, espera al cerrar

48

Page 49: Capa de transporte

Dispersión de retardosen capa de enlace y de transporte

49

Page 50: Capa de transporte

UDP

UDP no orientado a conexión Básicamente es un paquete IP con un

encabezado mínimo de capa de transporte

50