La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

TCP Transmission Control Protocol

Presentaciones similares


Presentación del tema: "TCP Transmission Control Protocol"— Transcripción de la presentación:

1 TCP Transmission Control Protocol

2 Esquema de Capas de TCP/IP
Capa Física Capa de Red Capa de Transporte Capa de Aplicación

3 El protocolo TCP Características: orientado a la conexión
comunicación punto a punto confiable (establecimiento, transmisión y desconexión) comunicación full-duplex comunicación por flujo

4 Esquema de Conexión TCP
EMISOR TCP ve a IP como un mecanismo que le permite intercambiar mensaje con un TCP remoto RECEPTOR Aplicación Aplicación TCP TCP IP ROUTER IP IP Interfaz Red Interfaz Red Interfaz Red RED 1 RED 2

5 Resumen de mejoras y especificaciones de implementación
Normas TCP RFC 793 (1981) Definición Oficial de TCP Resumen de mejoras y especificaciones de implementación RFC 1122 (1989)

6 Logrando la Confiabilidad
PROBLEMA SOLUCIÓN Pérdidas de paquetes Retransmisión (timeout adaptivo) Distintas velocidades de tx./rx. en las máquinas que se comunican Control de Flujo (buffers, ventana deslizante) 1 Congestión en la red Control de Congestión 2 3 Rebooteos, desconexiones, máquinas apagadas, etc. 3-way handshaking (saludo de 3 etapas)

7 Logrando la Confiabilidad
PROBLEMA SOLUCIÓN Pérdidas de paquetes Retransmisión (timeout adaptivo) Distintas velocidades de tx./rx. en las máquinas que se comunican Control de Flujo (buffers, ventana deslizante) 1 Congestión en la red Control de Congestión 2 3 Rebooteos, desconexiones, máquinas apagadas, etc. 3-way handshaking (saludo de 3 etapas)

8 Existen métodos para asignar un valor adecuado al tiempo tout
Retransmisiones TX RX Envía información Corre tout Recibe información Envía reconocimiento (ACK) Recibe ACK antes de que expire tout Envía más información Corre tout Existen métodos para asignar un valor adecuado al tiempo tout Expira tout Retransmite

9 Establecimiento de la Conexión
TX RX Envía SYN con Seq = x Envía SYN seq = y, ACK x +1 Recibe segmento SYN Recibe SYN + ACK Envía ACK y + 1 Recibe ACK Los números de secuencia inicial son elegidos aleatoriamente.

10 Cerrando la Conexión TX RX Envía FIN con Seq = x (La aplicación cierra la conexión) Recibe segmento FIN Envía ACK x +1 Recibe segmento ACK (La aplicación cierra la conexión) Envía FIN con Seq = y, ACK x + 1 Recibe segmento FIN + ACK Envía ACK y +1 Recibe segmento ACK Además, existe la posibilidad de cerrar la conexión abruptamente mediante un segmento con RST.

11 Esquema de Conexión TCP
SYN 1 RTT SYN Tiempo 1 RTT ACK DATA Conexión Establecida DATA DATA conexión cerrada por Tx FIN  = Tiempo de procesamiento en el Host ACK DATA conexión cerrada por Rx FIN ACK

12 TCP y la Conexión El protocolo TCP usa una conexión virtual (por SW) para transmitir la información. TCP conecta dos puntos usando la dirección de la máquina y el puerto al cual se conecta. El puerto puede ser compartido por distintas conexiones al mismo tiempo.

13 Ventanas Deslizantes en TCP
La ventana deslizante es un método para enviar los paquetes en una conexión en forma mas eficiente que esperando por el ACK de cada uno de los paquetes en forma secuencial. La ventana deslizante será útil dependiendo del tamaño de la ventana y la velocidad de la red para recibir los paquetes que se quieren enviar.

14 Ventanas Deslizantes en TCP
La ventana en TCP opera sobre Octetos y no sobre paquetes es por eso que requiere de punteros para seguir el envío de esos Octetos. Las ventanas son de ancho variable el cual esta dado por el “window advertisement” que esta contenido en todos los ACK y que ayuda al control de flujo y a la eficiencia de la conexión.

15 Ventanas Deslizantes en TCP
Ventana Inicial Secuencia de Paquetes 1 2 3 4 5 6 7 8 9 10 Ventana Deslizada

16 Ventanas Deslizantes en TCP
Octetos que se han enviado pero no se han ACK Octeto enviado y ACK 1 2 3 4 5 6 7 8 9 10 Puntero al principio de la ventana Puntero al final de la ventana (variable)

17 Efecto de la ventana variable
DATA DATA ACK 1 RTT +2 DATA 3 RTT +2 ACK ACK DATA ACK Ventana de ancho 1 Ventana de ancho 3 Esquema simplificado de conexión TCP

18 Formato del Segmento en TCP
4 10 16 24 31 SOURCE PORT DESTINATION PORT SEQUENCE NUMBER ACKNOWLEDGEMENT NUMBER HLEN RESERVED CODE BITS WINDOW CHECKSUM URGENT POINTER OPTIONS (IF ANY) PADDING DATA ... CODE BITS = URG-ACK-PSH-RST-SYN-FIN

19 Fragmentación y Checksum
TCP esta implementado en muchos tipos de redes, con la dificultad clara de que estas redes se comunican a distinta velocidad y que soportan distintos tamaños de datagramas. TCP negocia el tamaño del datagrama a enviar, esto lo hace en el comienzo de la conexión enviando el tamaño máximo de datagrama que puede manejar.

20 Fragmentación y Checksum
Cuando TCP envía el tamaño máximo de datagrama que puede manejar el otro extremo hace lo mismo y se conectan con el tamaño de datagrama menor. Esta conexión es entre dos puntos y no toma en cuenta la ruta que tomaran los paquetes en la red.

21 Fragmentación y Checksum
La ruta es un problema, pues el datagrama puede pasar por redes de menor tamaño, con lo cual se tendrá que fragmentar el datagrama para que pueda pasar por esa red. En implementaciones típicas se suele usar que un tamaño seguro de paquete es de 576 octetos, el cual debiera ser soportado por cualquier tipo de red.

22 Fragmentación y Checksum
El header IP contiene toda la información sobre las particiones de los datagramas. Las redes Ethernet aceptan paquetes de 1500 octetos de largo. Cuando los datagramas llegan a su destino deben ser re-ensamblados por TCP para poder ser utilizados.

23 Fragmentación y Checksum
Luego de tener los paquetes enteros, si es que estos pudieron llegar y ser re-ensamblados se procede a hacer el Checksum para comprobar si lo que se ha transmitido esta realmente correcto. El Checksum es del mismo tipo que el de UDP y esta basado en el pseudo-header que se calcula en ambas partes de la conexión para ver si es valida.

24 BIBLIOGRAFIA “The World of Networks” Cap.2 (Protocols)
“Internetworking with TCP/IP” Cap.13 Douglas E. Comer. “Introduction to the Internet Protocols” Computer Science Facilities Group Rutgers University New Jersey RFC 793,RFC 1180, RFC 1263


Descargar ppt "TCP Transmission Control Protocol"

Presentaciones similares


Anuncios Google