PRIMERA PARTE Tema 1: Capítulo 2 Nivel de Transporte. Javier Yágüez Profesor Titular de Universidad

Tamaño: px
Comenzar la demostración a partir de la página:

Download "PRIMERA PARTE Tema 1: Capítulo 2 Nivel de Transporte. Javier Yágüez Profesor Titular de Universidad"

Transcripción

1 PRIMERA PARTE Tema 1: Capítulo 2 Javier Yágüez Profesor Titular de Universidad 1

2 NIVEL DE TRANSPORTE TRANSPORTE FIABLE TCP Soy TCP 2012 Cisco and/or its affiliates. All rights reserved. 2

3 NIVELES SUPERIORES SISTEMA FINAL APLICACIÓN TCP/UDP Transporte y Aplicación NIVELES SUPERIORES TCP/IP NIVELES EXTREMO a EXTREMO EXTREMO A EXTREMO EXTREMO A EXTREMO NIVELES SUPERIORES SISTEMA FINAL APLICACIÓN TCP/UDP IP IP IP IP INTERFAZ DE RED INTERFAZ DE RED INTERFAZ DE RED INTERFAZ DE RED INTERFAZ DE RED INTERFAZ DE RED Ethernet WiFi NIVELES INFERIORES ROUTER (SISTEMA INTERMEDIO) ROUTER (SISTEMA INTERMEDIO) NIVELES INFERIORES 3

4 PROTOCOLO TCP (Transmission Control Protocol) RFC-793, STD 0007 Transporte fiable de los mensajes de aplicación encapsulados en segmentos TCP Responsable de la recuperación de todos los segmentos perdidos en el nivel de enlace y red SISTEMA FINAL APLICACIÓN TCP IP Las unidades de datos del protocolo TCP ( PDUs TCP ) se denominan segmentos TCP ORIENTADO A CONEXIÓN y FIABLE (control de errores y flujo) ROUTER IP mensajes ROUTER IP SISTEMA FINAL APLICACIÓN TCP IP INTERFAZ DE RED INTERFAZ DE RED INTERFAZ DE RED INTERFAZ DE RED INTERFAZ DE RED INTERFAZ DE RED Ethernet Ethernet Ethernet CRC (Errores Físicos) Ethernet CRC (Errores Físicos) ERRORES: IPv4 checksum, destino inalcanzable, TTL = 0, CONGESTIÓN: Desborde del buffer del interfaz de salida 4

5 Las Pérdidas de los segmentos TCP, o de los paquetes IP que los encapsulan, se suelen ocasionar en los Routers por congestión enlaces de entrada La congestión en Internet es la pérdida de 1 o más paquetes IP debido al desborde del buffer de la cola del interfaz de salida de un router cuando las tasas de entrada superan las capacidades de salida Caudal IP IP IP IP IP enlaces de entrada buffer de la cola del interfaz de salida enlace de salida Descarte del último paquete CONGESTIONES O PERDIDAS DE PAQUETES IP EN UN ROUTER DE ACCESO, ESPECIALMENTE CRÍTICO EN ENLACES DE ENTRADA DE ALTA CAPACIDAD Y ENLACES DE SALIDA DE MENOR CAPACIDAD 5

6 Ejemplo Gráfico de los potenciales enlaces en algunos routers en el núcleo de Internet SITUACIÓN ESPECIALMENTE CRÍTICA TCP recupera el contenido de los paquetes en caso de errores IP Red Troncal (backbone) de Internet 6

7 FIABILIDAD TCP CONTROL DE ERRORES CONTROL DE FLUJO 7

8 Control de Errores TCP Fallos en la Comunicación TODOS LOS OCTETOS DE DATOS contenidos en el CAMPO DE DATOS de cada segmento de información VAN NUMERADOS (cada octeto tiene su propio nº de secuencia) y dichos octetos tienen asociados Una CONFIRMACIÓN Las confirmaciones, por parte de la entidad receptora TCP, reconocen octetos de datos recibidos correctamente y no los segmentos de información que los contienen porque éstos no van numerados Un TEMPORIZADOR de espera de CONFIRMACIÓN Al vencimiento del temporizador, al no llegar la confirmación, durante el plazo de espera establecido, se produce una retransmisión 8

9 Diseño Operacional TCP Todo proceso o protocolo de aplicación montado sobre TCP se despreocupa de delimitar sus mensajes El proceso de aplicación pasa el chorro o flujo de octetos (byte-stream) de su mensaje de aplicación a su entidad TCP A medida que va recibiendo octetos del proceso de aplicación, la entidad TCP va, RECOGIENDO, ALMACENADO (buffer de transmisión), NUMERANDO y, posteriormente, AGRUPANDO dichos octetos en segmentos de datos TCP en función del tamaño de su MSS (campo datos) y de la MTU (1500 octetos) de salida Por esta razón, TCP no numera los segmentos de datos sino los octetos de datos transmitidos 9

10 Números de secuencia: Todos los octetos del campo datos de un segmento de información disponen de un número de secuencia Los números de secuencia permiten pasar al nivel de aplicación los octetos de datos (cabecera de aplicación + campo datos de usuario o carga útil) ordenadamente y detectar octetos duplicados si han llegado las confirmaciones con errores físicos o simplemente no han llegado Confirmaciones: Todos los octetos del campo datos de un segmento de información tienen asociados una confirmación Temporizadores: Todos los octetos del campo datos de un segmento de información disponen de un plazo de espera para la confirmación de dichos octetos de datos y al vencimiento sin confirmación se produce una retransmisión 3 MECANISMOS DE CONTROL DE ERRORES Fallos en la Comunicación 10

11 MECANISMOS DE CONTROL DE ERRORES Los TEMPORIZADORES permiten controlar las pérdidas de segmentos de información en un router Temporizadores: Todos los octetos del campo datos de un segmento de información disponen de un plazo de espera para la confirmación de dichos octetos de datos y al vencimiento sin confirmación se produce una retransmisión Pérdida del paquete IP en un router Temporizador de Retransmisión 11

12 MECANISMOS DE CONTROL DE ERRORES Los TEMPORIZADORES permiten controlar las pérdidas de segmentos de información por errores de transmisión en el destinatario Temporizador de Retransmisión Checksum al segmento completo Segmento con errores físicos OJO!!! Se elimina cualquier segmento de información con errores físicos 12

13 MECANISMOS DE CONTROL DE ERRORES También, los TEMPORIZADORES permiten controlar las pérdidas de confirmaciones ya sean por pérdidas en un router o por errores de transmisión detectados en el destinatario Temporizador de Retransmisión Confirmaciones Todos los octetos del campo datos de un segmento de información tienen asociados una confirmación 13

14 MECANISMOS DE CONTROL DE ERRORES Los NÚMEROS DE SECUENCIA PERMITEN CONTROLAR OCTETOS DE DATOS PERDIDOS, DESORDENADOS Y DUPLICADOS SOLUCIÓN PARA DETECTAR DUPLICIDAD EN PÉRDIDAS DE CONFIRMACIONES Números de secuencia: Cada octeto del campo datos de un segmento de información dispone de un número de secuencia Temporizador de Retransmisión Pasar Octeto de Datos al nivel Superior DETECCIÓN DE DUPLICIDAD Para evitar una nueva retransmisión innecesaria por timeout 14

15 FIABILIDAD TCP CONTROL DE ERRORES CONTROL DE FLUJO 15

16 MECANISMO DE CONTROL DE FLUJO Hablas muy deprisa, no te entiendo. Repite!!! 16

17 Envío Buffer de Transmisión (Ventana de Transmisión) MECANISMO DE CONTROL DE FLUJO CADA PROCESO o ENTIDAD TCP DISPONE DE 2 BUFFERS y 2 VENTANAS DESLIZANTES W T (buffer de transmisión) y W R A Aplicación TCP IP Recepción Buffer de Recepción (Ventana de Recepción) (buffer de recepción) Envío Buffer de Transmisión (Ventana de Transmisión) B Aplicación TCP IP Recepción Buffer de Recepción (Ventana de Recepción) Control de los números BUFFER DE TRANSMISIÓN del buffer Los octetos de datos procedentes del Nº SEC = n Nº SEC = n+1 Nº SEC = n+2 proceso de aplicación se recogen, almacenan y numeran en el buffer de transmisión Primer octeto Segundo octeto Tercer octeto VENTANA DESLIZANTE DE TRANSMISIÓN Lista de números de secuencia consecutivos de los octetos de datos que, en un momento dado, el emisor ha enviado pendientes de confirmación TCP va creando segmentos de datos y los va transmitiendo sin esperar a que se llene el buffer de transmisión 17...

18 Envío Buffer de Transmisión (Ventana de Transmisión) MECANISMO DE CONTROL DE FLUJO CADA PROCESO o ENTIDAD TCP DISPONE DE 2 BUFFERS y 2 VENTANAS DESLIZANTES W T (buffer de transmisión) y W R A Aplicación TCP IP Recepción Buffer de Recepción (Ventana de Recepción) (buffer de recepción) Envío Buffer de Transmisión (Ventana de Transmisión) B Aplicación TCP IP Recepción Buffer de Recepción (Ventana de Recepción) Los octetos de datos procedentes de la entidad TCP emisora y que espera recibir la entidad TCP receptora, se recogen y almacenan por su nº de secuencia, en el buffer de recepción Control de los números del buffer BUFFER DE RECEPCIÓN Nº SEC = n Nº SEC = n+1 Nº SEC = n+2 Primer octeto Segundo octeto Tercer octeto VENTANA DESLIZANTE DE RECEPCIÓN Lista de números de secuencia consecutivos de los octetos de datos que, en un momento dado, el receptor puede aceptar... TCP va pasando octetos de datos,, si llegan correctamente a partir del límite inferior sin esperar a que se llene el buffer de recepción 18

19 RFC-793 CUANDO SE LLENA EL BUFFER DE TRANSMISIÓN, LA ENTIDAD TCP EMISORA VA CREANDO SEGMENTOS DE DATOS CUANDO SE LLENA EL BUFFER DE RECEPCIÓN, LA ENTIDAD TCP RECEPTORA VA PASANDO LOS DATOS AL PROCESO DE APLICACIÓN CUANDO ÉSTE LO SOLICITE Proliferación en Internet de aplicaciones en tiempo real Aplicaciones interactivas (VoIP, juegos en red, etc) y no interactivas (streamings de audio y video, p.ej., en HTTP) en tiempo real Mayores velocidades de transmisión en Internet Excepciones: Funcionamiento de la Entidades TCP Emisora y Receptora Riesgo de que se llene inmediatamente un buffer de recepción No se espera a que se llene el BUFFER DE TRANSMISIÓN para enviar segmentos de datos No se espera a que se llene el BUFFER DE RECEPCIÓN para pasar octetos de datos al proceso de aplicación receptor, es decir, se pasan inmediatamente, DE FORMA ORDENADA, siempre y cuando el proceso de aplicación lo solicite Los procesos receptores de aplicación suelen estar de manera continúa a la espera de recepción de datos, es decir, solicitando datos 19

20 El Control de Flujo TCP Características El Control de Flujo lo ejerce el proceso TCP receptor, a través de su W R, sobre el proceso TCP emisor para evitar que éste desborde el buffer del receptor W T en el lado emisor es ESCLAVA de W R en el lado receptor W T va variando puntualmente, en fase de transferencia de datos, en función de la W R del otro extremo 20

21 Sincronización de W R y W T para un Correcto Control de Flujo Las implementaciones TCP son muy diferentes en cuanto a los algoritmos auxiliares empleados (p.ej., algoritmos de gestión de ventanas), dependiendo del sistema operativo y su distribución o versión W R inicial = Tamaño máximo del buffer de recepción Posteriormente, en fase de transferencia de datos, W R va variando, puntualmente, en función de los octetos libres de su buffer de recepción Límite inferior de W R = Primer octeto de datos esperado Límite superior de W R = Último octeto de datos esperado WR = Límite superior Límite Inferior + 1 Los datos correctos se almacenan en el buffer de recepción cuando llegan y se entregan al proceso de aplicación por una llamada de solicitud de datos (read) o cuando lo considera conveniente la propia entidad TCP CUANDO LLEGAN OCTETOS DE DATOS CORRECTOS (primer octeto coincide con el límite inferior de WR) La entidad TCP receptora: ALMACENA los octetos de datos recibidos CONFIRMA los octetos de datos recibidos PASA los octetos de datos recibidos al proceso de aplicación Se DESLIZA W R (límites inferior y superior) en función del tamaño máximo (inicial) del buffer de recepción (W R inicial) 21

22 Sincronización de W R y W T para un Correcto Control de Flujo W T inicial = Tamaño máximo del buffer de transmisión W T inicial = W R inicial (tamaño máximo del buffer de recepción del otro extremo) Límite inferior de W T = Primer octeto de datos enviado pendiente de confirmación Límite superior de W T = Último octeto de datos enviado pendiente de confirmación WT= Límite superior Límite Inferior + 1 W T variando en fase de transferencia de datos en función de la W R del otro extremo CONFIRMACIÓN (ACK) de la entidad TCP receptora: Primer octeto del campo de datos del siguiente segmento de información que se espera recibir, con lo cual los octetos anteriores están todos confirmados SIEMPRE INDICA EL LÍMITE INFERIOR DE W T El ACTUAL si ha habido SEGMENTOS PERDIDOS La entidad TCP emisora NO REALIZA NINGUNA ACCIÓN Uno NUEVO si NO ha habido segmentos perdidos La entidad TCP emisora: DESACTIVA el temporizador asociado a los octetos confirmados ELIMINA copia de los octetos confirmados en el buffer de transmisión DESLIZA W T (límites inferior y superior) en función del tamaño máximo (inicial) del buffer de recepción (W R inicial) 22

23 W T = 6 GIRO W T GIRO W T GIRO CONF=1 LI= LS=6 W T W R = 6 (MSS =2) LI= LS=6 LI= LS=6 LI=1 0, A L LI=3 A R LI=5 M A LI= LS= PREVIO LS=10 CONF=1 W R = 6 Nº SEC=0 ALARMA CONF=3, W R = 6 AR CONF=5, W R = 6 MA MSS=2 SIN ERRORES AL LS=12 CONF=7, W R = 6 A L LI=3 LI=3 A R LI=5 LI=5 M A LI= LS= APLICACIÓN LS=6 LS=8 LS=8 LS=10 LS=12 A L GIRO W R APLICACIÓN AR GIRO W R APLICACIÓN MA GIRO W R 23

24 GIRO W T PREVIO W T = 6 LI= LS=6 CONF=1 LI= LS=6 A L A R LI=1 A L LI=5 W T M A A R LS= LS=10 CONF=1 W R = 6 AL Nº SEC=0 ALARMA AR MSS=2 ERRORES CONF=1, W R = 4 AL ( timeout ) CONF=5, W R = 6 MA LI= LS=12 CONF=7, W R = 6 GIRO W R = 6 (MSS =2) LI= LS=6 LI=1 LI=1 A L LI=5 LI=5 M A LI=7 Hasta que no lleguen A L permanecen en buffer ENTREGA ORDENADA A R A R LS= LS=6 LS=6 GIRO LS=10 LS=12 APLICACIÓN ALAR W R APLICACIÓN MA GIRO W R 24

25

26 Servicio Multiplexado TCP SIMULTÁNEO y DIFERENCIADO a través de los números de puerto, aplicando mecanismos y recursos de fiabilidad por separado Aplicación multimedia en tiempo real Telnet FTP SMTP... HTTP DNS DHCP RTP... Protocolos entre TCP Routers Avanzados (OSPF) ARP ICMP IP INTERFAZ DE LA RED DE ACCESO Ethernet, WiFi PPP HARDWARE UDP ICMP RED DE ACCESO 26

27 TCP ofrece un SERVICIO ORIENTADO A CONEXIÓN FIABLE a los Procesos del Nivel de Aplicación Un SERVICIO ORIENTADO A CONEXIÓN dispone de TRES FASES 1. ESTABLECIMIENTO DE LA CONEXIÓN 2. TRASFERENCIA DE DATOS 3. LIBERACIÓN DE LA CONEXIÓN Cómo accede la entidad de aplicación al servicio TCP? Haciendo uso tanto en el código del cliente como en el código del servidor de unas funciones de comunicaciones estándares pertenencientes a un API de Programación de Aplicaciones en red (API de Red o API de Sockets) denominado INTERFAZ DE SOCKETS 27

28 INTERFAZ DE SOCKETS IMPLEMENTACIÓN DEL SERVICIO TCP APLICACIÓN TCP Localización conceptual Interfaz de sockets IP RED DE ACCESO ETHERNET HARDWARE 28

29 El programador tiene que trabajar a bajo nivel y llamar directamente a las funciones de comunicaciones del API de programación proporcionado por un sistema basado en un interfaz de sockets INTERFAZ DE SOCKETS Universidad de Berkeley Aplicación de Usuario Interfaz de Sockets TCP UDP IP Interfaz de Acceso y Hardware Red 29

30 PROTOCOLO TCP (RFC-793) Formato de un Segmento TCP Engloba dos tipos de información: Cabecera + Datos INFORMACIÓ DE CONTROL CARGA ÚTIL para TCP CABECERA (Variable) DATOS (Variable) 20 octetos sin opciones Hasta un máximo conocido como MSS TCP calcula un MSS de tal forma que los datagramas IP resultantes se correspondan con la MTU de la red de acceso Maximum Segment Size (MSS) = Carga Útil = = SDU del Nivel de Aplicación = 1024 octetos (MSS por omisión) MSS = MTU (1500 octetos)- cabecera IP - cabecera TCP 30

31 CABECERA TCP Mínima por Omisión =20 octetos Máxima=60 octetos DESP = Nº de bloques de 4 octetos que ocupa la cabecera Por omisión 5 bloques (0101), como máximo 15 bloques (1111) Cabecera TCP + DATOS Primer octeto del campo de datos del segmento de información que se va a enviar= Nº de secuencia= 32 bits= Módulo 2 32 = 0, 1, 2, , 0, 1,, , 0, ESTÁN CONFIRMADOS) 31 Proceso de aplicación emisor (cliente o servidor) 4 bits 6 bits PUERTO ORIGEN NÚMERO DE SECUENCIA PUERTO DESTINO NÚMERO DE CONFIRMACIÓN (ACK) DESP RESERVADO URG ACK PSH RST SYN FIN SUMA DE COMPROBACIÓN OPCIONES VENTANA PUNTERO A DATOS URGENTES DE CONTROL DATOS (variable en función de la MTU) Primer octeto del campo de datos del siguiente segmento de información que se espera recibir (LOS OCTETOS ANTERIORES Proceso de aplicación receptor (cliente o servidor) (Buffer de recepción MÁX = octetos) (caracteres de control de la aplicación) RELLENO (Bits que se añaden al campo Opciones para que la cabecera tenga longitud total múltiplo de 32 bits) SYN=1 ACK=0, Solicitud conexión SYN=1 ACK=1, Respuesta OK! Ventana deslizante de recepción: Nº de octetos de datos que el emisor de esta Cantidad de octetos libres información puede manejar en función del que se pueden almacenar tamaño puntual de su buffer de recepción = en el buffer de recepción = 0 octetos (descanso), 1 octeto, 2 octetos hasta octetos ( octetos ) 31

32 Bit Push El bit PSH se utiliza en TCP para forzar el envío de datos en segmentos de datos cortos e independientes Cuando el proceso de aplicación emisor desea que los datos entregados a TCP salgan inmediatamente, sin que la ENTIDAD TCP EMISORA espere más datos de la aplicación, lo indica en la llamada solicitando una operación PUSH De esta forma, no se corre el riesgo de que TCP esté se quede esperando más octetos de datos de la aplicación para construir un segmento mayor LA ENTIDAD TCP RECEPTORA debe pasar cuanto antes los octetos de datos de un segmento con el bit PUSH = 1 32

33 Fase de Transferencia de Datos Casos excepcionales Datos Pushed (bit PSH) El proceso de aplicación envía un CHORRO DE BYTES (BYTE STREAM) y solicita mediante una llamada a su entidad TCP (parámetro indicador PUSH en la llamada) que los envíe lo antes posible en un segmento de datos con el bit PSH = 1 A su vez, la entidad TCP receptora los pondrá a disposición del proceso de aplicación en el momento en que dicho proceso lo solicite a través de la correspondiente llamada No modifica el orden de cómo se procesan los datos en la aplicación Datos Urgentes (bit URG y Urgent Offset = Puntero a Datos Urgentes de Control) Los datos se quieren entregar a la aplicación remota sin esperar a que esta los pida Ejemplo: Abortar un programa con CTRL-C en una sesión telnet Modifica el orden, ya que cuela unos datos por delante de otros 33

34 Opciones TCP CABECERA TCP 4 bits 6 bits PUERTO ORIGEN NÚMERO DE SECUENCIA PUERTO DESTINO NÚMERO DE CONFIRMACIÓN (ACK) DESP RESERVADO URG ACK PSH RST SYN FIN SUMA DE COMPROBACIÓN OPCIONES VENTANA (Buffer de recepción MÁX = octetos) PUNTERO A DATOS URGENTES DE CONTROL (caracteres de control de la aplicación) RELLENO (Bits que se añaden al campo Opciones para que la cabecera tenga longitud total múltiplo de 32 bits) DATOS (Variable) 34

35 Formato de las Opciones TCP Campo de Información de Control de Longitud Variable para Servicios Adicionales RFC-793 y RFC-1323 Formato TLV: Tipo-Longitud-Valor o Datos TIPO LONGITUD DATOS OPCIÓN 8 bits 8 bits (variable) Longitud completa de la opción en octetos (TIPO + LONGITUD + DATOS) 35

36 Opciones TCP más Relevantes Descripción TIPO LONGITUD DATOS Descripción (octetos) 2 4 Valor MSS MSS 3 3 Tamaño de la Ventana Escala de la Ventana SACK PERMITTED (Fase de establecimiento) 5 Variable - SACK (Fase de transferencia de datos) 8 10 Valor actual reloj emisor (4 octetos) + Respuesta Eco (4 octetos) Marca de Tiempo 36

37 CAMPO DE OPCIONES DE INFORMACIÓN DE CONTROL (LONGITUD VARIABLE DE HASTA 40 OCTETOS) Según la implementación TCP que disponga el sistema operativo, habrá más o menos opciones SE ESPECIFICAN EN LA FASE DE ESTABLECIMIENTO DE LA CONEXIÓN (sólo en aquellos segmentos de control con el bit SYN = 1) Tamaño Máximo de Segmento (MSS): Nº máximo de octetos de la carga útil (campo de datos) que el receptor (emisor de esta información) desea recibir para un procesado más óptimo de dicha carga Por omisión: 1024 octetos (otros: 512, 256, 128, 64, ) No confundir MSS con el tamaño del buffer de recepción Factor de Escala de la Ventana (RFC-1323): Permite ampliar el campo VENTANA de 16 bits ( octetos) hasta un máximo de 2 30 = 1 Gbyte Por omisión, el tamaño máximo de la ventana de recepción es de octetos ( octetos) Marca o sello de tiempo (timestamp): Tipo =8 Longitud = 10 Valor actual del reloj emisor Eco del valor actual del reloj emisor No es lo mismo que el destino esté ubicado en la misma Ethernet o WiFi que disperso geográficamente por Internet Permite al emisor configurar sus TEMPORIZADORES DE ESPERA DE CONFIRMACIÓN mediante el cálculo del valor RTT (Round Trip Time): TIEMPO DE IDA Y VUELTA desde que se envía un segmento de información hasta que se recibe su ACK El emisor pone el valor de su reloj El receptor pone el valor de su reloj y devuelve el mismo valor (eco) en el ACK del segmento Valor actual del reloj del emisor = valor monótamente creciente (formato UT = nº de mseg después de medianoche) El eco es válido si el bit ACK = 1 en la cabecera del segmento 37

38 Temporizadores: Valores de Timeout Los valores de los temporizadores de espera de respuesta se establecen dinámicamente mediante ALGORITMOS AUTOADAPTATIVOS que ajustan los valores a la dispersión geográfica y al estado de la red, según es percibido éste por la entidad de transporte emisora Algoritmo autoadaptativo de Karn para el cálculo del RTT (Round Trip Time) Se toma una muestra RTT de cada segmento de información transmitido (opción Marca de Tiempo) Se obtiene un promedio de dichas muestras Se le añade un margen de seguridad 38

39 Fase de Establecimiento de una Conexión TCP Intercambio de 3 segmentos CLIENTE APLICACIÓN TCP A SERVIDOR APLICACIÓN TCP B Con SYN = 1, se negocian los números de secuencia, las W R y las opciones deseadas (p.ej., MSS) Las confirmaciones de SEC en segmentos SYN consumen un nº de secuencia CONF = último nºsec recibido + 1 SEC = última CONF CONF = último nºsec recibido

40 Imposición de WR y MSS WR y MSS no se negocian, se imponen La WR MÁXIMA INICIAL, al principio, se indica mediante el bit SYN = 1 La WR MÁXIMA INICIAL de hasta bytes (y a partir de hasta 1 Gbyte con escalado de ventana) puede variar en cualquier momento aumentando o disminuyendo Dependen de los recursos (espacio en buffer) de cada entidad TCP y puede ser diferente para cada sentido El valor por omisión de MSS es de 1024 bytes El MSS elegido puede ser mayor o menor que el valor por omisión y se indica mediante una opción de la cabecera TCP con el bit SYN = 1 Cada entidad TCP indica a su entidad par que MSS está dispuesto a aceptar, y el otro debe obedecer (puede usar ese valor u otro menor, pero no mayor) El MSS se mide en bytes y sólo toma en cuenta los datos, no la cabecera TCP 40

41 Identificadores de conexión (ISN: Initial Sequence Number) Cuando una entidad TCP va a establecer una conexión TCP elige un ISN El ISN evita el riesgo de que un segmento de datos duplicado y retrasado de una conexión anterior provoque una conexión espúria Cada TCP elige independientemente el ISN que utilizará para esa conexión, por tanto siempre hay dos ISN asociados, uno por cada lado de la conexión 41

42 Elección del ISN Según el RFC 793 (TCP), el ISN debe ser un entero de 32 bits sin signo que se incremente en 1 cada 4 microsegundos Así un ISN puede reaparecer al cabo de unas 4 horas, tiempo más que suficiente para que los posibles duplicados retrasados que utilicen el mismo ISN ya hayan desaparecido En la práctica los sistemas operativos (Unix) utilizan generalmente algoritmos más sencillos para construir los ISN, con el fin de consumir menos CPU UNIX BSD incrementa el ISN en cada medio segundo Además, el ISN se incrementa en cada vez que se establece una conexión, de modo que dos conexiones consecutivas siempre tendrán diferente ISN, aunque ocurran muy próximas en el tiempo 42

43 Establecimiento de una conexión TCP TCP A :1304 (estados) SYN-SENT (ISN 100) TCP B :80 LISTEN (estados) SYN-RECEIVED (ISN 300) Tiempo ESTABLISHED ESTABLISHED 43

44 Fase de Transferencia de Datos 2 Tipos de Tráfico TRÁFICO INTERACTIVO REDES DE Generado por aplicaciones que transmiten los datos en pequeñas cantidades Generalmente crean segmentos de tamaños muy pequeños en los dos sentidos con el bit PSH = 1 P. ej., SSH, telnet, rlogin, etc, TRÁFICO MASIVO Generado por aplicaciones que transmiten los datos en grandes cantidades Generalmente crean segmentos de tamaños muy pequeños en un sentido con el bit PSH = 1 (solicitudes, p.ej., GET en FTP y HTTP) y de tamaño máximo en el otro sentido con el bit PSH = 0 P. ej., FTP, HTTP (Web), 44

45 Datos Pushed (bit PSH) en Emisión y Recepción El proceso de aplicación emisor envía un CHORRO DE BYTES (BYTE STREAM) y solicita mediante una llamada a su entidad TCP emisora (parámetro indicador PUSH en la llamada) que los envíe lo antes posible en un segmento de datos con el bit PSH = 1 Sin esperar a que se llene el buffer de transmisión Por ejemplo, solicitudes GET y respuestas HTTP OK del HTTP La entidad TCP receptora los pondrá a disposición de dicho proceso de aplicación Sólo cuando el proceso de aplicación solicite datos a través de una llamada Sin esperar a que se llene el buffer de recepción Siempre y cuando el primer byte coincida con el límite inferior de WR ENTREGA ORDENADA: No modifica el orden de cómo se procesan los datos en la aplicación, es decir, no cuela unos datos por delante de otros 45

46 EJEMPLO de Fase de Establecimiento de una Conexión TCP Intercambio de 3 segmentos con la Opción MSS en un extremo ( B ) Con VENTANA en A de 300 octetos y en B de 900 octetos y MSS de 300 en B CLIENTE APLICACIÓN TCP A SERVIDOR APLICACIÓN TCP B MSS=300 Tamaño máximo de VENTANA DE RECEPCIÓN que desea A WT = 900 bytes LI = 3 LS = 902 CONF = SEC + 1 Tamaño máximo de VENTANA DE RECEPCIÓN que desea B SEC = última CONF CONF = SEC

47 Ejemplo de Transferencia de Datos sin Errores Transmisión unidireccional de datos (de A a B ) sin errores y con VENTANA en A de 300 octetos y en B de 900 octetos CLIENTE APLICACIÓN TCP A TCP B MSS=300 SERVIDOR APLICACIÓN CONF (enviada)= SEC+ DATOS (del último segmento recibido) SEC (enviado) = SEC+ DATOS (del último segmento enviado) CONF (enviada)= SEC+ DATOS (del último segmento recibido) OJO!!! EN SEMIDÚPLEX PARA UNA MAYOR COMPRENSIÓN 47

48 A transmite un primer segmento de 300 octetos pendientes de confirmación Si se recibe UNA CONF NUEVA, se DESACTIVA el temporizador, se ELIMINA COPIA y se DESLIZA W T Ejemplo de Transferencia de Datos con Errores Transmisión unidireccional de datos (de A a B ) con errores (pérdidas de paquetes IP) y con VENTANA en A de 300 octetos y en B de 900 octetos WT = 900 octetos LI = 3 LS = 902 TCP A TCP B MSS=300 B ante la llegada de los 300 primeros octetos procede a almacenarlos, confirmarlos, pasarlos al nivel superior y deslizar W R CONFIRMACIÓN DUPLICADA No produce ningún efecto B vuelve a confirmar los 300 primeros octetos (NO CONF=903 porque se confirmarían los octetos del 2º segmento) Si se recibe UNA CONF NUEVA, se DESACTIVA el temporizador, se ELIMINA COPIA y se DESLIZA W T time-out time-out CONFIRMACIÓN DUPLICADA No produce ningún efecto DETECCIÓN DE DUPLICACIÓN Si los dos segmentos vienen seguidos, se envía una única CONF una vez recibido el 2º (MENOS TRÁFICO Y PROCESO) 48

49 Temporizador de Espera de Datos (ACK piggybacked ) Cuando una entidad TCP recibe uno o varios segmentos de datos y, a su vez, no tiene datos que enviar de vuelta, no envía el ACK inmediatamente Espera un poco por si el proceso de aplicación genera datos y de ese modo aprovecha para enviar el ACK en el segmento de datos (ACK piggybacked ) En muchos sistemas ese temporizador (espera de datos de la aplicación) suele ser de unos 200 ms Si se agota el timer sin que la aplicación haya producido datos se envía un segmento sin datos con el ACK 49

50 Timer de ACK Retrasado en Servidor Rápido Timer de Espera de Datos = 200 ms Cliente Aplicación TCP Servidor Aplicación TCP 200 bytes 50 ms (antes de 200 ms) 200 ms ACK piggybacked 50

51 Opciones TCP más Relevantes Descripción TIPO LONGITUD DATOS Descripción (octetos) 2 4 Valor MSS MSS 3 3 Tamaño de la Ventana Escala de la Ventana SACK PERMITTED (Fase de establecimiento) 5 Variable - SACK (Fase de transferencia de datos) 8 10 Valor actual reloj emisor (4 octetos) + Respuesta Eco (4 octetos) Marca de Tiempo 51

52 TCP SACK TCP de Reconocimiento Selectivo Selective Acknowledgment (SACK) Definido en el RFC-2018 y, posteriormente, extendido en el RFC-2883 Se recomienda la opción SACK, especialmente, cuando hay múltiples pérdidas de segmentos TCP En la actual Red Internet, es una opción TCP por omisión Evita innecesarias retransmisiones de los octetos de datos de segmentos de información no contiguos que ya fueron entregados al receptor 52

53 TCP SACK TCP de Reconocimiento Selectivo Selective Acknowledgment (SACK) Para poder hacer uso de la opción Tipo 5 SACK en fase de transferencia de datos hay que indicarlo previamente en fase de establecimiento de la conexión TCP Se indica mediante la opción Tipo 4 TCP SACK-PERMITTED en la fase de establecimiento de la conexión TCP en un segmento SYN = 1 Si el receptor no ha recibido la opción Tipo 4 TCP SACK- PERMITTED en el establecimiento de la conexión, no debe usar la opción Tipo 5 TCP SACK-PERMITTED en la fase de transferencia de datos 53

54 RETRANSMISIÓN INNECESARIA DE SEGMENTOS NO CONTIGUOS TCP A TCP B SEGMENTOS NO CONTIGUOS LLEGÓ CORRECTAMENTE time-out time-out RETRANSMISIÓN INNECESARIA 54

55 Ejemplo de un Paquete SACK TCP A TCP B SEGMENTO CONTIGUO (al último recibido correctamente) SEGMENTO NO CONTIGUO B emplea SACK SE DESACTIVA EL TEMPORIZADOR PRIMER OCTETO DE DATOS QUE SE ESPERA RECIBIR DEL SIGUIENTE SEGMENTO DE INFORMACIÓN NO CONTIGUO Y CONSECUTIVO timeout PRIMER OCTETO DE DATOS RECIBIDO DEL PRIMER SEGMENTO DE INFORMACIÓN NO CONTIGUO QUE HA HECHO ENVIAR EL PRIMER PAQUETE SACK última CONF realizada 55

56 Paquete SACK con 1 Bloque para Segmentos No Contiguos y Consecutivos (Sin Pérdidas) USO DE LA OPCIÓN SACK CON CAMPO DATOS OPCIÓN DE UN ÚNICO BLOQUE TIPO=5 LONGITUD (variable) DATOS OPCIÓN X 1 Y 1 X 1 (32 bits) = BORDE IZQUIERDO DEL BLOQUE 1 = PRIMER OCTETO DE DATOS RECIBIDO DEL PRIMER SEGMENTO DE INFORMACIÓN NO CONTIGUO X 1 es el mismo valor para todos los paquetes SACK siempre que los siguientes segmentos de información no contiguos recibidos sean consecutivos Y 1 (32 bits) = BORDE DERECHO DEL BLOQUE 1 = PRIMER OCTETO DE DATOS QUE SE ESPERA RECIBIR DEL SIGUIENTE SEGMENTO DE INFORMACIÓN NO CONTIGUO Y CONSECUTIVO Si los octetos de datos recibidos, de los siguientes segmentos de información no contiguos, son consecutivos, entonces, se agrupan éstos en el mismo bloque X 1 -Y 1 56

57 Extensión con N Bloques del Paquete SACK para Segmentos No Contiguos y No Consecutivos (Con Pérdidas) TIPO=5 LONGITUD (variable) DATOS OPCIÓN Informa del segmento recibido más recientemente X 1 Y 1 X n Y n Se pueden enviar hasta 4 bloques NO CONSECUTIVOS SACK (32 octetos) Se recuerda que si los nuevos octetos de datos son consecutivos con los anteriores ya recibidos, entonces, se agrupan en un mismo primer bloque X 1 -Y 1 El bloque 1 (X 1 Y 1 ) debe informar del segmento recibido más recientemente Asegura que el ACK con la opción SACK refleje el cambio más reciente en el buffer de recepción. Así el emisor tiene información actualizada del estado de la red y del estado de la cola de recepción Después del primer bloque SACK, los siguientes pueden estar listados en orden arbitrario 57

58 Extensión con N Bloques del Paquete SACK para Segmentos No Contiguos y No Consecutivos (Con Pérdidas) (RESUMEN) Si hay espacio en el campo de opciones TCP (máximo 60 octetos), se pueden enviar hasta 4 bloques de información de control TIPO=5 LONGITUD (variable) DATOS OPCIÓN X 1 Y 1 X n Y n El bloque (X 1 Y 1 ) debe informar del segmento no contiguo recibido más recientemente RECORDATORIO DE UN SEGMENTO DE INFORMACIÓN NO CONTIGUO YA RECIBIDO 58

59 TCP A TCP B TIMEOUT SEGMENTOS NO CONTIGUOS Y CONSECUTIVOS Se intenta agrupar el máximo de octetos de datos consecutivos en cada paquete SACK CONF = última CONF realizada 59

60 TCP A TCP B TIMEOUTS CONFIRMACIONES A SEGMENTOS NO CONTIGUOS Y NO CONSECUTIVOS última CONF realizada 60

61 2 Tipos de Liberación de la Conexión Ordenada o consensuada (simétrica) La mayoría de los programas al terminar intentan cerrar ordenadamente todas las conexiones abiertas Bit FIN en los dos sentidos (FIN = invitación al otro extremo a cerrar también) Aunque las conexiones son dúplex, para entender mejor la liberación total de la conexión, ésta se considera formada por dos conexiones o circuitos simplex (en un solo sentido) y cada equipo solo puede desconectar el sentido en el que él emite datos La desconexión puede iniciarla cualquiera de los dos equipos (el cliente o el servidor) invitando al otro a cerrar El cierre de un sentido por parte de un equipo se interpreta como una invitación a cerrar al otro El que toma la iniciativa realiza un cierre activo o active close y el otro lleva a cabo un cierre pasivo o passive close La desconexión simétrica de TCP ofrece una seguridad razonable (pero no absoluta) de que no se pierden datos de la aplicación Una vez efectuada la desconexión el equipo que realizó el active close mantiene un cierto tiempo (2 MSL) la conexión viva por si aparecen segmentos retrasados Desordenada o abrupta o unilateral (asimétrica) Bit RST sin datos en un sentido Un equipo termina y cierra sin esperar a recibir confirmación No da oportunidad al otro equipo de enviar los datos que tuviera pendientes de la aplicación, por lo que puede provocar la pérdida de información 61

62 Liberación Ordenada de la Conexión 4 envíos LA CONEXIÓN TCP SE LIBERA COMPLETAMENTE cuando cada entidad TCP, después de haber transmitido todos sus datos, envía en cada sentido un SEGMENTO SIN DATOS con el bit FIN activado La confirmación al FIN=1 recibido, SIEMPRE CON UN SEGMENTO SIN DATOS 62

63 Liberación Ordenada de la Conexión TCP A (cierre activo) :80 ESTABLISHED (estados) FIN-WAIT-1 Las confirmaciones de SEC en segmentos FIN (al igual que en los segmentos SYN) consumen un nº de secuencia TCP B (cierre pasivo) :1030 ESTABLISHED (estados) CLOSE-WAIT Conexión medio cerrada FIN-WAIT-2 LAST-ACK Conexión medio cerrada TIME-WAIT 2 MSL CLOSED MSL: Maximum Segment Lifetime Confirmación al FIN=1 recibido, siempre con un segmento sin datos CLOSED 63

64 CLIENTE APLICACIÓN close Fase de Liberación de la Conexión TCP A TCP B SERVIDOR APLICACIÓN Fase de transferencia de datos (SEC=m+DATOS=0) SEC = última CONF CONF = SEC + 1 CONEXIÓN CERRADA en A SEC = última CONF SEC = última CONF close CONF = SEC + 1 LIBERA LA CONEXIÓN, CONFIRMA y ESPERA TEMPORIZADOR (2 VECES el promedio del RTT = MSL (Maximum Segment Lifetime)) Eliminación de segmentos retrasados CONEXIÓN LIBERADA CONEXIÓN CERRADA en B 64

65 CLIENTE APLICACIÓN Ejemplo de la Fase de Liberación de la Conexión TCP A TCP B SERVIDOR APLICACIÓN close Fase de transferencia de datos (SEC=1501+DATOS=0) CONF = SEC (último)+ DATOS (último) SEC = última CONF CONF = SEC + 1 close SEC = última CONF CONF = SEC + 1 CONEXIÓN LIBERADA en A CONEXIÓN LIBERADA en B 65

66 CLIENTE APLICACIÓN close Ejemplo de la Fase de Liberación de la Conexión Con Datos Conexión cerrada en A pero abierta en B SEC = última CONF CONF = SEC + 1 CONEXIÓN CERRADA en A TCP A TCP B SERVIDOR APLICACIÓN FASE DE TRANSFERENCIA DE DATOS CONF (enviada)= SEC+ DATOS (del último segmento recibido) SEC = última CONF CONF = SEC + 1 CONF (enviada)= SEC+ DATOS (del último segmento recibido) SEC = última CONF close SEC = última CONF CONF = SEC + 1 CONEXIÓN LIBERADA FASE DE TRANSFERENCIA DE DATOS Entrega por parte de B de 300 octetos de datos Fase de transferencia de datos (SEC=904+DATOS=0) CONF (enviada)= SEC+ DATOS (del último segmento recibido) SEC = última CONF CONEXIÓN CERRADA en B 66

67 Desconexión Ordenada del Cliente con 3 mensajes TCP A El Servidor envía un FIN en lugar de un ACK previo TCP B (cierre activo) (cierre pasivo) : :1030 ESTABLISHED ESTABLISHED (estados) (estados) FIN-WAIT-1 Conexión medio cerrada CLOSE-WAIT LAST-ACK Conexión medio cerrada TIME-WAIT 2 MSL CLOSED CLOSED MSL: Maximum Segment Lifetime 67

68 Desconexión ordenada del Servidor con 3 mensajes y 1 mensaje Equipo 1 Equipo 2 Inactividad Libera conexión Envía FIN y arranca timer Equipo 1 Inactividad Equipo 2 Envía FIN y arranca timer CLOSED (Timeout) libera conexión CLOSED 68

69 Pérdida de Segmentos en la Desconexión Equipo 1 Envía FIN y arranca timer Libera conexión Envía ACK Equipo 2 Envía FIN y arranca timer Pérdida del ACK final (Timeout) libera conexión Equipo 1 Equipo 2 Envía FIN y arranca timer (Timeout) envía FIN y arranca timer Libera conexión Envía ACK Envía FIN y arranca timer Envía FIN y arranca timer Libera conexión Pérdida del segundo FIN Equipo 1 Equipo 2 Equipo 1 Equipo 2 Envía FIN y arranca timer Envía FIN y arranca timer Envía FIN y arranca timer Conectado (timeout) envía FIN y arranca timer (N timeouts) Libera conexión (Timeout) libera conexión Pérdida del segundo y tercer FIN (timeout) envía FIN y arranca timer (N timeouts) Libera conexión Conectado Cable cortado o desconectado Conexión medio abierta 69

70 Desconexión Desordenada o Abrupta o Unilateral Ocurre cuando uno de los dos equipos quiere cerrar inmediatamente la conexión, sin esperar la confirmación del otro Se lleva a cabo enviando un segmento con el bit RST sin datos El equipo que emite el RST pasa inmediatamente al estado CLOSED perdiéndose los datos que pudieran venir de camino del otro equipo No se espera 2MSL El equipo que recibe el RST pasa también a estado CLOSED de manera inmediata 70

71 Desconexión Desordenada o Abrupta TCP A :1039 ESTABLISHED (estados) TCP B :80 ESTABLISHED (estados) Tiempo Proceso abortado CLOSED CLOSED Datos perdidos 71

72 NIVEL DE TRANSPORTE TCP CONTROL DE LA CONGESTIÓN 2012 Cisco and/or its affiliates. All rights reserved. 72

73 Congestión en Internet RFC-5681: TCP Congestión Control Congestión = Pérdida de 1 o más paquetes o datagramas IP Causa posible: Desborde del buffer de la cola del interfaz de salida de un ROUTER Exceso de tráfico de entrada en alguna o algunas redes de Internet: Tasas de paquetes de entrada superan las capacidades de los enlaces salida La situación se complica si los enlaces de salida son de menor capacidad que los enlaces de entrada En principio, no se puede conocer el estado de todos los sistemas intermedios Cuando los paquetes llegan a la parte congestionada de la red, como el router de acceso no puede aceptar todo el tráfico entrante, empezará a acumularlos en su buffer de la cola del interfaz de salida y cuando éste se llene, empezará a descartar Basta que uno de los enlaces del trayecto se vea afectado por la congestión para limitar el tráfico en todo el camino y, por tanto, el rendimiento de la comunicación entre los sistemas finales Las aplicaciones se bloquean o dejan de funcionar La congestión se detecta en TCP por vencimiento de temporizadores o timeouts (alta probabilidad de congestión) La entidad TCP receptora recibirá sólo una parte de los segmentos por lo que la entidad TCP emisora retransmitirá por timeout aquéllos que no hayan sido confirmados 73

74 Pérdidas de Paquetes en los Routers enlaces de entrada La congestión en Internet es la pérdida de 1 o más paquetes IP debido al desborde del buffer de la cola del interfaz de salida de un router cuando las tasas de entrada superan las capacidades de salida Proceso Caudal IP IP IP IP IP enlaces de entrada buffer de la cola del interfaz de salida enlace de salida Descarte del último CONGESTIONES O PERDIDAS DE PAQUETES IP EN UN ROUTER DE ACCESO, ESPECIALMENTE CRÍTICO EN ENLACES DE ENTRADA DE ALTA CAPACIDAD Y ENLACES DE SALIDA DE MENOR CAPACIDAD 74

75 Flujo y Congestión: Conceptos Diferentes RECORDATORIO La VENTANA DE RECEPCIÓN W R garantiza que no se inunde al receptor ejerciendo un CONTROL DE FLUJO sobre el emisor Sin embargo, los problemas podrían estar en Internet: Muchas veces el cuello de botella está en la red y no en el receptor Los buffers de las colas de salida de los routers pueden desbordarse Además, del CONTROL DE FLUJO necesitamos un CONTROL DE CONGESTIÓN Cómo notificar a la entidad TCP emisora de que hay una saturación en algún punto del trayecto y de que debe bajar el ritmo de transmisión? Respuesta: Mediante una VENTANA DE CONGESTIÓN W C que indica el número de segmentos que el emisor puede enviar en un momento dado sin congestionar a ningún router en Internet La W C actúa simultáneamente y en paralelo con W R En cada momento, el emisor tomará en consideración la más pequeña de las dos ventanas para asegurarse de que no satura al receptor ni provoca, o contribuye a agravar, una situación de congestión en la red W T = min (W R, W C ) 75

76 Flujo y Congestión: Conceptos Diferentes La W R se notifica al emisor por el receptor: EL CONTROL DE FLUJO LO EJERCE LA ENTIDAD TCP RECEPTORA La W C la calcula el emisor a partir de la cantidad de retransmisiones (pérdidas de segmentos TCP o timeouts ) que tiene que realizar: EL CONTROL DE LA CONGESTIÓN LO EJERCE LA ENTIDAD TCP EMISORA El emisor va tanteando la red, transmitiendo tan rápido como sea posible hasta que se produzca un timeout, a partir de ahí reduce, drásticamente, el ritmo de sus envíos (W C y, por tanto W T ) y va aumentando dicho ritmo, paulatinamente, hasta un nuevo timeout (nueva pérdida y retransmisión), repitiendo de nuevo el proceso 76

77 Mecanismos de Control de la Congestión RFC-5681 Implemetados en cualquier distribución actual TCP/IP y utilizados por el protocolo TCP cuando los routers en Internet descartan o pierden paquetes IP al desbordarse la capacidad de almacenamiento de los buffers asociados a las colas de los interfaces de salida 1. Comienzo Lento (Slow Start) 2. Prevención de la Congestion (Congestion Avoidance) 3. Retransmisión Rápida (Fast Retransmit) 4. Recuperación Rápida (Fast Recovery) 77

78 Mecanismo de Control de la Congestión Comienzo Lento o SS (Slow Start) Con SS se transmiten segmentos de información de forma exponencial (1, 2, 4, 8,...) al ritmo al que se reciben los ACK desde el otro extremo W C, que SE MIDE EN SEGMENTOS con un campo datos, por omisión, de 1024 octetos (1 segmento = 1 MSS, por omisión, de 1Kbyte o 1024 octetos), crece exponencialmente sólo si todos los segmentos de información enviados han sido confirmados Si hay un ACK retrasado, el incremento, en el tamaño de W C, no es exponencial Se denomina COMIENZO LENTO porque se empieza a transmitir lentamente, primero 1 segmento, luego 2 segmentos y, así, sucesivamente; pero en realidad se transmite muy rápido (exponencialmente): 1, 2, 4, 8, 16, 32, 64) y en sólo 7 interacciones (envío de un grupo de 64 segmentos de información) se llega a octetos (asumiendo un MSS típico de 1024 octetos) que es el valor máximo por omisión de TCP para W R y que coincide con el VALOR INICIAL DEL UMBRAL DE CONGESTIÓN o UMBRAL DE PELIGRO o LÍMITE DE CRECIMIENTO DE W C impuesto por TCP, el cual va variando posteriormente en función de la congestión en Internet 78 78

79 Inicio de la Fase de Transferencia de Datos con Comienzo Lento o SS (Slow Start): Sin Congestión en la Red Con SS se envían segmentos de información a la red de forma exponencial (1, 2, 4, 8, etc.) al ritmo al que se reciben los ACK desde el otro extremo TCP A W C = 1 TCP B ACK W C = 2 Cada ráfaga confirmada ACKs duplica W C W C = 4 ACKs Si hay un ACK retrasado el incremento en el tamaño de la ventana es menor que la potencia de 2 79

80 Comienzo Lento o SS (Slow Start) Sin Congestión en la Red W C SE MIDE EN SEGMENTOS con 1 MSS, por omisión, de 1Kbyte o 1024 octetos. Por tanto, 1 segmento = 1024 octetos W C se inicializa a 1 segmento o 1 MSS de 1 Kbyte (1024 octetos) A su vez, p.ej., W R = octetos Todos los segmentos tienen un MSS por omisión = 1024 octetos = 1Kbyte y se activa el primer timer. W T = min (W R = octetos, W C = 1) Si ACK llega antes del timeout W T = W C = 2 Kbytes y se envían 2 segmentos y se activan 2 timers. Si llegan los ACK a tiempo W T = W C = 4 Kbytes y se envían 4 segmentos y se activan 4 timers. W C va creciendo EXPONENCIALMENTE duplicándose en cada envío. Sin congestión, W C crece rápidamente y en sólo 7 interacciones (1, 2, 4, 8, 16, 32, 64) se llegaría a octetos (valor máximo de TCP para W R ) 1ª interacción 2ª interacción 3ª interacción 4ª interacción 80

81 1. W C = 1 (inicialmente 1 segmento o 1 MSS del tamaño máximo para la conexión) 2. Valor inicial del umbral de congestión = 64 segmentos o octetos (valor máximo de W R ) 3. W C = 1, 2, 4, 8,, (W T = W C ) va creciendo exponencialmente (mientras se reciben todos los ACK) hasta superar: La W R actual y puntual en el otro extremo TCP (se establece un control de flujo) El valor inicial del umbral de congestión o umbral de peligro o límite de crecimiento máximo impuesto por TCP inicialmente para W R de octetos El buffer de algún router y se produzca la primera pérdida de paquete o timeout 4. Cada vez que se detecta un timeout o pérdida se obtiene un nuevo UMBRAL DE CONGESTIÓN, que toma como valor la mitad del tamaño actual de W C. A su vez, W C se reduce de una manera drástica al valor inicial de 1 segmento. Ahora, W C empieza a crecer exponencialmente como antes (W C = 1, 2, 4, 8,, ) pero sólo hasta el nuevo umbral de congestión donde permanece aunque no haya pérdidas Nuevo umbral de congestión o límite de crecimiento de W C = W C (actual)/2 W C = 1 (y, luego, 2, 4, 8, ) Reducción rápida y significativa del tráfico para que el router se recupere Mientras el tamaño máximo de W C permanezca en el umbral de congestión, no se enviará una ráfaga de mayor longitud, sin importar la cantidad de espacio de W R ofrecida por el receptor en el supuesto de ser superior Mecanismo de Control de la Congestión Comienzo Lento o SS (Slow Start) 81

82 Mecanismo de Control de la Congestión Prevención de la Congestion o CA (Congestion Avoidance) Para aumentar el rendimiento en la transferencia, se combina SS y CA con el objetivo de seguir transmitiendo a partir de donde SS finaliza, es decir, desde el nuevo umbral de congestión calculado en SS Para ello, se incrementa W C LINEALMENTE (de 1 en 1 ) desde el nuevo umbral hasta que se supere el tamaño actual de W R en el otro extremo TCP (control de flujo) o el buffer de algún router (vencimiento de temporizador), REPITIÉNDOSE EL PROCESO Una nueva pérdida (congestión), momento a partir del cual se aplica de nuevo SS, obteniéndose un nuevo umbral de congestión, en un valor igual a la mitad del tamaño actual de W C. A su vez, W C se reduce de una manera drástica al valor inicial de 1 segmento. Ahora, W C de nuevo empieza a crecer exponencialmente, pero sólo hasta el nuevo umbral de congestión a partir del cual se vuelve a aplicar CA El objetivo es no quedarse bloqueado en el nuevo umbral (SS) sino seguir transmitiendo lentamente desde dicho nuevo umbral dando tiempo a que el router se recupere 82

83 Prevención de la Congestión (Congestion Avoidance) y Comienzo Lento (Slow Start) Funcionamiento conjunto Objetivo de cada algoritmo: Comienzo Lento o SS (Slow Start): Tantear la red, transmitiendo, tan rápido como sea posible, hasta que se produce una congestión, momento a partir del cual se calcula el nuevo umbral, se reduce W C = 1 y se transmite exponencialmente hasta el nuevo umbral Prevención de la Congestión o CA (Congestion Avoidance) = Una vez que se ha producido la congestión, y en combinación con SS, sigue transmitiendo linealmente a partir de donde SS finaliza (nuevo umbral de congestión), dando tiempo a que el router se recupere 83

84 Ejemplo de Funcionamiento Conjunto de SS y CA: Se producen perdidas de segmentos de información cuando W C es mayor de 20 segmentos o 20 Kbytes (1 segmento = 1 MSS de 1 Kbyte) FASE Primera UMBRAL DE CONGESTIÓN en KBytes 64 segmentos (valor inicial) W C en KBytes (VENTANA DE CONGESTIÓN) Segunda Tercera 84

85 Ejemplo de Funcionamiento Conjunto de SS y CA: Se producen perdidas de segmentos de información cuando W C es mayor de 20 segmentos o 20 Kbytes (1 segmento = 1 MSS de 1 Kbyte) FASE UMBRAL DE CONGESTIÓN en KBytes W C en KBytes (VENTANA DE CONGESTIÓN) Primera 64 (valor inicial) 1,2,4,8,16,32 A partir del umbral =16, W C se incrementa de 1 en 1 Segunda 16 1,2,4,8,16,17,18,19,20,21 A partir del umbral =10,5, W C se incrementa de 1 en 1 Tercera 10,5 1,2,4,8,10,11,12,13,14,15, Umbral de congestión = 10 porque si se envían 11 segmentos > 10,5 Se produce un timeout cuando W C = 32 SS SS CA 16,17,18,19,20,21 85

86 2 Tipos de Retransmisiones TCP En las implementaciones actuales TCP, hay una RETRANSMISIÓN si: Expira un temporizador de retransmisión = PÉRDIDA SEGURA DE SEGMENTO = Alta seguridad de que haya congestión en Internet Llegan 3 CONFIRMACIONES (ACKs) duplicadas = PÉRDIDA PROBABLE DE SEGMENTO = No hay seguridad de que haya congestión en Internet PERO, POR SI ACASO, no se espera al vencimiento del temporizador y se aplica el mecanismo de Retransmisión Rápida 86

87 2 Tipos de Control de la Congestión Si la detección se debe a un vencimiento de temporizador = ALTA SEGURIDAD DE CONGESTIÓN y se aplica SS y CA CONTROL DE LA CONGESTIÓN (Comienzo Lento y Prevención de la Congestión) A PARTIR DE UN TIMEOUT Si la detección de debe a 3 ACKs duplicados = BAJA SEGURIDAD DE CONGESTIÓN y, en principio, se aplica RETRANSMISIÓN RÁPIDA CONTROL DE LA CONGESTIÓN (Prevención de la Congestión) A PARTIR DE 3 ACKs DUPLICADOS que implica como ventaja adicional una recuperación más rápida del potencial segmento de información perdido sin esperar a que expire su temporizador Puede ser que a lo mejor no se ha perdido el segmento, es decir, no hay congestión y no es necesario que W C = 1 87

88 Mecanismo de Control de la Congestión: Retransmisión Rápida (Fast Retransmit) Retransmisión de un segmento después de la recepción de 3 ACKs duplicados, sin esperar al timeout 3 ACKs duplicados significa que, probablemente, se ha perdido 1 segmento Si se han recibido 3 ACKs hay una probabilidad baja de congestión, se puede haber perdido un segmento pero 3 segmentos ya han llegado ya que se han recibido 3 ACKs 3 ACKs duplicados = 4 ACKs idénticos en secuencia RETRANSMISIÓN Por si acaso, no se espera a que se dispare el temporizador de retransmisión de b Si se reciben 3 ACKs duplicados seguidos, retransmitir de inmediato 88

89 Retransmisión Rápida No es un mecanismo estricto de control de la congestión en Internet Es un mecanismo de retransmisión de la forma más rápida posible (sin esperar el vencimiento del temporizador) de un segmento de información y que, posiblemente (no es seguro), se ha perdido debido a una presumible congestión en un router por la llegada de 3 confirmaciones duplicadas Pero en combinación, a su vez, con el mecanismo de Prevención de la Congestión (CA) da origen a un nuevo mecanismo de control de la congestión denominado Recuperación Rápida (Fast Recovery) 89

90 Mecanismo de Control de la Congestión: Recuperación Rápida (Fast Recovery) Si la probable congestión se debe a 3 ACKs DUPLICADOS = Se hace una Recuperación Rápida = Retransmisión rápida y CA (a partir del nuevo umbral) Se retransmite inmediatamente el segmento afectado (RETRANSMISIÓN RÁPIDA), se calcula el nuevo umbral de congestión y se comienza DIRECTAMENTE en una nueva fase de CA a partir del nuevo umbral (sin comenzar desde 1 segmento a crecer exponencialmente hasta el nuevo umbral y, luego, linealmente) P. ej., si se han recibido 3 ACKs, se calcula el nuevo umbral = 6, se retransmite inmediatamente el segmento afectado y se comienza linealmente a partir de 7, 8, 9, (y no a partir de 1, 2, 4, 6, 7, 8, 9,, etc., porque tal vez no hay congestión y no es necesario que W C = 1) 90

91 Ejemplo de Recuperación Rápida: Se produce timeout cuando W C = 20 segmentos y el nuevo umbral de congestión = 16 segmentos. Posteriormente, se reciben 3 ACKs cuando se envían 12 segmentos FASE UMBRAL DE CONGESTIÓN En un momento anterior, W C =32, se produjo timeout y el nuevo umbral de congestión pasó a valer 16 W C máxima en segmentos (VENTANA DE CONGESTIÓN) =32 Primera 16 1, 2, 4, 8, 16, 17, 18, 19, 20 (timeout) Segunda 10 1, 2, 4, 8, 10, 11, 12 (3 ACKs) Tercera 6 7, 8, 9,, 20 (timeout) SS SS CA CA CA 91

92 Implementaciones TCP RFC-793, STD 0007 (1981): TCP Sin control de congestión RFC-5681 (1999): TCP con control de la congestión Implementación TCP Tahoe (1988) Algoritmo básico de control de congestión (Comienzo lento) Implementación TCP Reno (1990) Tahoe + Prevención de la congestión + Retransmisión rápida + Recuperación rápida Implementación TCP New Reno (1996) El Reno optimizado es la implementación, por omisón, que se encuentra en la mayoría de las distribuciones TCP/IP e incluye los cuatro mecanismos de control de la congestión 92

93 2 Notificaciones de Congestion en TCP Notificación o señalización implícita por: Vencimiento de temporizador ( timeout ) Mecanismos: SS y CA Recepción de 3 ACKs duplicados Mecanismos: Recuperación rápida = Retransmisión rápida y CA (a partir del nuevo umbral) Notificación o señalización explícita por indicación del router ECN (Explicit Congestion Notification): RFC-3168 y RFC-2884 La transmisión se ajusta en la entidad TCP emisora sólo cuando una entidad IP intermedia, que empieza a acercarse a su umbral de congestión, se lo notifica explícitamente a la entidad TCP receptora y ésta se lo comunica, finalmente, a la entidad TCP emisora VENTAJA: En vez de descartar, y que se produzcan timeouts, el router señaliza al receptor antes de que los buffers se llenen Despúes, el receptor avisa al emisor y éste disminuye el ritmo de envío Ya hay algunas implementaciones de ECN (Linux) Alternativa de señalización explícita: Mensaje ICMPv4 de frenado en el origen (Tipo=4 Código=0): No se usa por seguridad (prevención de ataque a un router). Además, no existe el mensaje ICMPv6 de frenado en el origen 93

94 DATAGRAMA IPv4 Recordatorio Los 2 bits de menor orden del campo ToS de la cabecera IPv4 se usan para la notificación explícita de congestión CABECERA VERSIÓN Longitud Cabecera IDENTIFICADOR TIEMPO DE VIDA (TTL) TIPO DE SERVICIO 000 R C F 00 PROTOCOLO 0 D F LONGITUD TOTAL M F DIRECCIÓN ORIGEN DESPLAZAMIENTO SUMA DE COMPROBACIÓN (CABECERA) DIRECCIÓN DESTINO OPCIONES RELLENO DATOS 94

95 VERSIÓN Longitud Cabecera (TTL) TIPO DE SERVICIO IDENTIFICADOR TIEMPO DE VIDA Cabecera IPv4:DSCP-ECN Punto de Código de Servicios Diferenciados Differentiated Services Code Point DSCP E C T PROTOCOLO E C 0 D F 16 LONGITUD TOTAL M F DIRECCIÓN ORIGEN Para control de la congestión ECT (Explicit Congestion Notification) Capable Transport = Bit de Transporte de Notificación Explícita de Congestión EC (Experienced Congestion) = Bit de Detección de Congestión DESPLAZAMIENTO SUMA DE COMPROBACIÓN (CABECERA) CABECERA DIRECCIÓN DESTINO OPCIONES RELLENO DATOS 70 95

96 Cabecera Fija IPv6:DSCP-ECN Differentiated Services Code Point Punto de Código de Servicios Diferenciados Versión Prioridad (8bits) xxxxxxxx Longitud de la carga útil ECT/EC Etiqueta de flujo (20 bits) Cabecera siguiente Límite de saltos Dirección de origen (16 octetos) 40 octetos Dirección de destino (16 octetos) 96

97 RESERVADO 4 BITS Formato de un Segmento TCP-ECN (Explicit Congestion Notification) Los 2 bits de menor orden del campo RESERVADO de la cabecera TCP se usan para el control de la congestión PUERTO ORIGEN PUERTO DESTINO NÚMERO DE SECUENCIA NÚMERO DE CONFIRMACIÓN (ACK) C E DESP W C URG ACK PSH RST SYN FIN R N SUMA DE COMPROBACIÓN OPCIONES VENTANA PUNTERO URGENTE RELLENO DATOS (Variable) Explicit Congestion Notification-Echo = = Bit de Eco de Notificación Explícita de Congestión Congestion Window Reduced = = Bit de Ventana de Congestión Reducida 97

98 Cabecera Fija IPv6:DSCP-ECN Differentiated Services Code Point Punto de Código de Servicios Diferenciados Versión Prioridad (8bits) xxxxxxxx Longitud de la carga útil ECT/EC Etiqueta de flujo (20 bits) Cabecera Límite siguiente de saltos Dirección de origen (16 octetos) 40 octetos Dirección de destino (16 octetos) 98

99 Cabecera TCP-ECN El uso de ECN en fase de transferencia de datos obliga a indicarlo previamente en fase de establecimiento de la conexión TCP El EMISOR activa los 2 bits (CWR y ECN-ECHO) en el segmento de solicitud de establecimiento de la conexión y el RECEPTOR activa el bit ECN-ECHO en el segmento de respuesta SYN =1, ACK =0 SYN = 1, ACK = 0 (SOLICITUD con los bits CWR = 1 y ECN-ECHO = 1) SYN = 1, ACK = 1 (RESPUESTA con los bits CWR = 0 y ECN-ECHO = 1) 99

100 Control de la Congestion en TCP Metodología por Señalización Explícita ECN (Explicit Notification Congestion): RFC-3168 y RFC-2884 El emisor activa el bit de Transporte de Notificación Explícita de Congestión o ECT (ECN Capable Transport) de la cabecera IP solicitando bit de Eco de Notificación Explícita de Congestión (ECN) para dicho paquete a cualquier router que detecte congestión El router, al empezar a acercarse a su umbral de congestión, activa el bit EC=1, activa el bit de Detección de Congestión o EC (Experienced Congestion) de la cabecera IP y lo encamina a la entidad TCP receptora La entidad receptora TCP, al recibir dicha cabecera IP, detecta que hay principio de congestión en el camino y activa el bit de Eco de Notificación Explícita de Congestión (ECN-ECHO) de la cabecera TCP y se lo envía a la entidad TCP emisora para que ésta active el control de la congestión La entidad emisora TCP, al recibir ECN-ECHO = 1, activa el bit de Ventana de Congestión Reducida o CWR (Congestion Window Reduced) de la cabecera TCP y se lo envía a la entidad TCP receptora para indicar que ya se enterado, que ya ha activado el control de congestión, que ya ha reducido su ritmo de transmisión y que no es necesario que le vuelva a enviar un ECN-ECHO = 1 100

101 Esquema IP-ECN/TCP-ECN Bit de Transporte de Bit de Notificación Explícita de Congestión Detección de Congestión Transmisor Router (cercano a la congestión) ECT EC ECT EC IP TCP CWR CWR Receptor 1 TCP ECN-ECHO TCP 1 3 CWR Bit de Ventana de de Congestión Reducida 4 Bit de Eco de Notificación Explícita de Congestión 101

102 NIVEL DE TRANSPORTE TRANSPORTE RÁPIDO UDP 2012 Cisco and/or its affiliates. All rights reserved. 102

103 Problemática de la Fiabilidad TCP Problema con TCP: Si se desea rapidez en el transporte, TCP retarda dicho transporte porque ofrece un servicio orientado a conexión FIABLE (tres fases y mecanismos de FIABILIDAD) Hay aplicaciones que no toleran el retardo extremo a extremo producido por los ACKs, los temporizadores, las retransmisiones y controles de TCP Además, el control de congestión TCP reduce la tase de envío (throughput o rendimiento o velocidad real) en el emisor Si la aplicación requiere un transporte rápido se monta sobre UDP Las retransmisiones TCP son inaceptables para aplicaciones en tiempo real, al incrementar el retardo extremo a extremo Cada vez hay más aplicaciones sobre UDP Tráfico interactivo en tiempo real Vídeoconferencias o vídeollamadas, VoIP Tráfico no interactivo en tiempo real Streaming de audio y vídeo 103

104 Protocolo UDP (User Datagram Protocol) RFC-768, STD 0006 Se utiliza en los siguientes escenarios: En Aplicaciones interactivas (vídeoconferencias o vídeollamadas, VoIP, etc.) y no interactivas (streaming de audio y vídeo, etc.) en tiempo real Cuando el intercambio de mensajes es muy escaso y los mensajes son cortos, por ejemplo, consultas al DNS Los mensajes se envían en una RAL del tipo Ethernet (sin errores físicos): DHCP, SNMP, Cuando los mensajes se producen regularmente y no importa si se pierde alguno: SNMP, NTP, Cuando se envía tráfico de broadcast/multicast 104

105 Protocolo UDP (User Datagram Protocol) RFC-768, STD 0006 Transporte NO FIABLE PERO RÁPIDO de los mensajes de aplicación encapsulados en datagramas UDP SISTEMA FINAL APLICACIÓN UDP IP INTERFAZ DE RED INTERFAZ DE RED SIN CONTROLES EXTREMO A EXTREMO SERVICIO NO ORIENTADO A CONEXIÓN y NO FIABLE PERO RÁPIDO ROUTER IP INTERFAZ DE RED mensajes ROUTER INTERFAZ DE RED IP INTERFAZ DE RED SISTEMA FINAL APLICACIÓN UDP IP INTERFAZ DE RED Ethernet WiFi Las unidades de datos del protocolo UDP ( PDUs UDP ) se denominan datagramas UDP o mensajes UDP 105

106 Protocolo UDP (User Datagram Protocol) RFC-768, STD 0006 Protocolo muy sencillo que añade un mínimo de sobrecarga Añade muy poco al servicio de IP como es proporcionar comunicación proceso a proceso en lugar de máquina a máquina SERVICIO NO ORIENTADO A CONEXIÓN y NO FIABLE Con detección (opcional) y no recuperación de errores físicos Sin control (detección y recuperación) de errores lógicos (datagramas UDP perdidos y desordenados) Sin control de flujo Multiplexación/Demultiplexación Transferencias simúltáneas en los dos sentidos (fulldúplex) 106

107 UDP ofrece un SERVICIO NO ORIENTADO A CONEXIÓN y NO FIABLE a los Procesos del Nivel de Aplicación Un SERVICIO NO ORIENTADO A CONEXIÓN dispone de UNA FASE 1. TRASFERENCIA DE DATOS Cómo accede la entidad de aplicación al servicio UDP? Haciendo uso tanto en el código del cliente como en el código del servidor de unas funciones de comunicaciones estándares pertenencientes a un API de programación de aplicaciones en red (API de Red o API de Sockets) denominado INTERFAZ DE SOCKETS 107

108 INTERFAZ DE SOCKETS IMPLEMENTACIÓN DEL SERVICIO UDP APLICACIÓN UDP Localización conceptual Interfaz de sockets IP RED DE ACCESO ETHERNET HARDWARE 108

109 INTERFAZ DE SOCKETS Universidad de Berkeley El programador tiene que trabajar a bajo nivel y llamar directamente a las funciones de comunicaciones del API de programación proporcionado por un sistema basado en un interfaz de sockets Aplicación de Usuario Interfaz de Sockets TCP UDP IP Interfaz de Acceso y Hardware Red 109

110 PROTOCOLO UDP Formato de un Datagrama UDP RFC-768, STD 0006 Engloba dos tipos de información: Cabecera + Datos Longitud Máxima Teórica INFORMACIÓ DE CONTROL CABECERA Longitud Fija 8 octetos octetos CARGA ÚTIL para UDP Longitud variable en función del tamaño de los mensajes de aplicación, los cuales deben estar delimitados, a su vez, en función de la MTU de salida DATOS (Variable) SDU del Nivel de Aplicación = La aplicación debe encargarse de delimitar el tamaño máximo del campo DATOS en función de la MTU de salida ) 110

Tema 4 CURSO 2015/16 (PLAN 2009) PRIMER SEMESTRE. Internet

Tema 4 CURSO 2015/16 (PLAN 2009) PRIMER SEMESTRE. Internet Tema 4 SUPUESTO 1 CURSO 2015/16 (PLAN 2009) PRIMER SEMESTRE A B Una entidad TCP de un equipo A desea establecer una conexión con otra entidad TCP de otro equipo "B" remoto por. La entidad TCP de "A" maneja

Más detalles

TCP Transmission Control Protocol

TCP Transmission Control Protocol 1 TCP Transmission Control Protocol TCP es un protocolo orientado a conexión que crea una conexión virtual entre dos TCPs para enviar datos. Además, TCP usa mecanismos de control de flujo y error en la

Más detalles

Tema 4 Nivel de Transporte y Aplicación. Redes de Computadores

Tema 4 Nivel de Transporte y Aplicación. Redes de Computadores Tema 4 Nivel de Redes de Computadores Curso 2017/2018 Segundo Semestre 1 Índice 4.1 Nivel de Transporte 4.2 Nivel de Aplicación 2 4.1 Nivel de transporte 3 NIVELES SUPERIORES Equipo Final APLICACIONES

Más detalles

TRANSFERENCIA DE FLUJO DE OCTETOS

TRANSFERENCIA DE FLUJO DE OCTETOS TEMA 5: PROTOCOLOS TCP Y UDP 1. PROTOCOLO TCP TCP es un protocolo de nivel de transporte que proporciona un servicio de flujo de octetos, orientado a la conexión y, por tanto, fiable y sin congestiones.

Más detalles

Tema 14: El protocolo TCP

Tema 14: El protocolo TCP Tema 14: El protocolo TCP 1 Introducción 2 Puertos y conexiones 3 Control de flujo Recuperación n de errores 4 Control de congestión 5 Formato de un segmento TCP 6 Establecimiento y cierre de una conexión

Más detalles

Bloque III: El nivel de transporte. Tema 7: Intercambio de datos TCP

Bloque III: El nivel de transporte. Tema 7: Intercambio de datos TCP Bloque III: El nivel de transporte Tema 7: Intercambio de datos TCP Índice Bloque III: El nivel de transporte Tema 7: Intercambio de datos TCP Flujo de datos interactivo ACKs retardados Algoritmo de Nagle

Más detalles

Bloque III: El nivel de transporte. Tema 7: Intercambio de datos TCP

Bloque III: El nivel de transporte. Tema 7: Intercambio de datos TCP Bloque III: El nivel de transporte Tema 7: Intercambio de datos TCP Índice Bloque III: El nivel de transporte Tema 7: Intercambio de datos TCP Flujo de datos interactivo ACKs retardados Algoritmo de Nagle

Más detalles

Bloque III: El nivel de transporte. Tema 5: UDP y TCP

Bloque III: El nivel de transporte. Tema 5: UDP y TCP Bloque III: El nivel de transporte Tema 5: UDP y TCP Índice Bloque III: El nivel de transporte Tema 5: UDP y TCP UDP Cabecera UDP TCP Cabecera TCP Referencias Capítulo 3 de Redes de Computadores: Un enfoque

Más detalles

ÍNDICE TEMÁTICO I. ARQUITECTURA TCP/IP

ÍNDICE TEMÁTICO I. ARQUITECTURA TCP/IP ARQUITECTURA DE REDES DE COMUNICACIONES ÍNDICE TEMÁTICO I. ARQUITECTURA TCP/IP 1. Protocolo IPv6 (ICMPv6) 2. IP móvil en IPv4 e IPv6 3. Transición de IPv4 a IPv6 4. Encaminamiento dinámico de unidifusión

Más detalles

Internet. Tema 4. Cliente HTTP. Servidor HTTP. Curso 2017/18 Semestre 2 SUPUESTO 1

Internet.   Tema 4. Cliente HTTP. Servidor HTTP. Curso 2017/18 Semestre 2 SUPUESTO 1 Tema 4 Curso 2017/18 Semestre 2 SUPUESTO 1 Cliente Internet www.noticias.com Servidor Un usuario, desde su equipo ejecuta un navegador o cliente que utiliza el protocolo 2.0 para acceder a un servidor

Más detalles

Redes (9359). Curso Ingeniería Técnica en Informática de Sistemas (plan 2001)

Redes (9359). Curso Ingeniería Técnica en Informática de Sistemas (plan 2001) Redes (9359). Curso 2009-10 Ingeniería Técnica en Informática de Sistemas (plan 2001) Carlos A. Jara Bravo (cajb@dfists.ua.es) Grupo de Innovación Educativa en Automática 2009 GITE IEA Redes (9359). Curso

Más detalles

Redes (9359). Curso Ingeniería Técnica en Informática de Sistemas (plan 2001)

Redes (9359). Curso Ingeniería Técnica en Informática de Sistemas (plan 2001) Redes (9359). Curso 2010-11 Ingeniería Técnica en Informática de Sistemas (plan 2001) Carlos A. Jara Bravo (cajb@dfists.ua.es) Grupo de Innovación Educativa en Automática 2009 GITE IEA Redes (9359). Curso

Más detalles

Problema de agotamiento de direcciones

Problema de agotamiento de direcciones Problema de agotamiento de direcciones Area de Ingeniería Telemática http://www.tlm.unavarra.es Laboratorio de Programación de Redes 3º Ingeniería Técnica en Informática de Gestión Objetivo Ver diferentes

Más detalles

Redes de Ordenadores Control de congestión en TCP. Mikel Izal Azcárate

Redes de Ordenadores Control de congestión en TCP. Mikel Izal Azcárate Redes de Ordenadores Control de congestión en TCP Mikel Izal Azcárate (mikel.izal@unavarra.es) En clases anteriores TCP y UDP TCP > Transporte fiable > Control de flujo > Manejo de conexiones El problema

Más detalles

Transporte: Servicios y Protocolos. Prof. Wílmer Pereira

Transporte: Servicios y Protocolos. Prof. Wílmer Pereira Transporte: Servicios y Protocolos Prof. Wílmer Pereira Modelo de Capas Imperante Transporte corre en máquina del destino u origen independiente de la red sea o no confiable Protocolo transporte Interfaz

Más detalles

Bloque III: El nivel de transporte. Tema 6: Conexiones TCP

Bloque III: El nivel de transporte. Tema 6: Conexiones TCP Bloque III: El nivel de transporte Tema 6: Conexiones TCP Índice Bloque III: El nivel de transporte Tema 6: Conexiones TCP Establecimiento de conexión Finalización de conexión Diagrama de estados Segmentos

Más detalles

Bloque III: El nivel de transporte. Tema 6: Conexiones TCP

Bloque III: El nivel de transporte. Tema 6: Conexiones TCP Bloque III: El nivel de transporte Tema 6: Conexiones TCP Índice Bloque III: El nivel de transporte Tema 6: Conexiones TCP Establecimiento de conexión Finalización de conexión Diagrama de estados Segmentos

Más detalles

TCP: Características Establecimiento y finalización de conexiones

TCP: Características Establecimiento y finalización de conexiones TCP: Características Establecimiento y finalización de conexiones Area de Ingeniería Telemática http://www.tlm.unavarra.es Arquitectura de Redes, Sistemas y Servicios 3º Ingeniería de Telecomunicación

Más detalles

Sistemas de Transportes de Datos (STD) Tema III: UDP Y TCP (Entrega 3) Grupo de Aplicaciones Telemáticas. Grupo de Aplicaciones Telemáticas

Sistemas de Transportes de Datos (STD) Tema III: UDP Y TCP (Entrega 3) Grupo de Aplicaciones Telemáticas. Grupo de Aplicaciones Telemáticas Control de congestión El control de flujo permite al receptor controlar el ritmo de envío del transmisor en función de sus recursos (buffer de recepción). Cumple su cometido si ambos están en la misma

Más detalles

Tema 4: Protocolos de comunicación punto a punto. Tema 4: Protocolos de comunicación punto a punto

Tema 4: Protocolos de comunicación punto a punto. Tema 4: Protocolos de comunicación punto a punto Tema : Protocolos Tema : Protocolos Tema : Protocolos Tema : Protocolos Tema : Protocolos Tema : Protocolos Una vez tenemos un método para detectar errores, nos falta determinar el mecanismo que nos permita

Más detalles

La tarea de esta capa es proporcionar un transporte de datos confiable de la máquina de origen a la máquina de destino, independientemente de la red

La tarea de esta capa es proporcionar un transporte de datos confiable de la máquina de origen a la máquina de destino, independientemente de la red CAPA DE TRANSPORTE La tarea de esta capa es proporcionar un transporte de datos confiable de la máquina de origen a la máquina de destino, independientemente de la red o redes físicas en uso. Transmission

Más detalles

Sistemas de Transportes de Datos (STD) Tema III: UDP Y TCP (Entrega 1) Nivel de. Proceso. Nivel de Transporte. Nivel de Red.

Sistemas de Transportes de Datos (STD) Tema III: UDP Y TCP (Entrega 1) Nivel de. Proceso. Nivel de Transporte. Nivel de Red. TEMA III: UDP Y TCP 3. Protocols UDP i TCP 3.1 El protocol UDP 3.2 Funcionalitats de TCP 3.3 Els estats de TCP 3.3.1 Establiment de la conexió(3whs) 3.3.2 Finalització de la conexió 3.4 Control d'errors

Más detalles

Redes de Computadores Más sobre TCP. Área de Ingeniería Telemática Dpto. Automática y Computación

Redes de Computadores Más sobre TCP. Área de Ingeniería Telemática Dpto. Automática y Computación Redes de Computadores Más sobre TCP Área de Ingeniería Telemática Dpto. Automática y Computación http://www.tlm.unavarra.es/ En clases anteriores Nivel de transporte UDP Introducción a TCP y transporte

Más detalles

Nivel de Transporte LSUB, GYSC, URJC

Nivel de Transporte LSUB, GYSC, URJC Nivel de Transporte LSUB, GYSC, URJC Transporte Transporte El nivel de transporte da acceso a la red extremo a extremo Puede haber más de un extremo en una máquina: puertos Puertos Puertos Los puertos

Más detalles

Bloque III: El nivel de transporte. Tema 8: Retransmisiones y temporizadores en TCP

Bloque III: El nivel de transporte. Tema 8: Retransmisiones y temporizadores en TCP Bloque III: El nivel de transporte Tema 8: Retransmisiones y temporizadores en TCP Índice Bloque III: El nivel de transporte Tema 8: Retransmisiones y temporizadores en TCP Retransmisiones Control de congestión

Más detalles

GUÍA DE ESTUDIO TEMA 2. MODELO OSI. ESTÁNDARES Y PROTOCOLOS. MODELO TCP/IP.

GUÍA DE ESTUDIO TEMA 2. MODELO OSI. ESTÁNDARES Y PROTOCOLOS. MODELO TCP/IP. GUÍA DE ESTUDIO TEMA 2. MODELO OSI. ESTÁNDARES Y PROTOCOLOS. MODELO TCP/IP. OBJETIVOS Introducir conceptos de las comunicaciones: protocolo, jerarquías de protocolos y estándares utilizados. Conocer los

Más detalles

TEMA 3. Conceptos Avanzados del Protocolo TCP

TEMA 3. Conceptos Avanzados del Protocolo TCP AMPLIACIÓN DE SISTEMAS OPERATIVOS Y REDES Grados Ingeniería en Informática Universidad Complutense de Madrid TEMA 3. Conceptos Avanzados del Protocolo TCP PROFESORES: Rafael Moreno Vozmediano Rubén Santiago

Más detalles

REDES DE ORDENADORES HOJA DE PROBLEMAS 3

REDES DE ORDENADORES HOJA DE PROBLEMAS 3 Página 1 REDES DE ORDENADORES HOJA DE PROBLEMAS 3 TCP 1) Suponga que se ha recogido la siguiente traza de una conexión TCP colocando el tcpdump en la máquina 130.206.169.222. Se sabe que las dos máquinas

Más detalles

Introducción (I) La capa de transporte en Internet: TCP es: UDP es:

Introducción (I) La capa de transporte en Internet: TCP es: UDP es: Introducción (I) La capa de transporte en Internet: Esta formada por un gran número de protocolos distintos. Los más utilizados son TCP y UDP. TCP es: Fiable. Orientado a conexión. Con control de flujo.

Más detalles

Capa de Transporte, TCP y UDP

Capa de Transporte, TCP y UDP Capa de Transporte, TCP y UDP Mg. Gabriel H. Tolosa tolosoft@unlu.edu.ar Be conservative in what you do, be liberal in what you accept from others Jon Postel Principio de Robustez Capa de Transporte Ofrece

Más detalles

Internet y TCP/IP La Capa de Transporte en Internet: Control de Flujo y Congestión

Internet y TCP/IP La Capa de Transporte en Internet: Control de Flujo y Congestión Internet y /IP La Capa de Transporte en Internet: Control de Flujo y Congestión mayo de 2008 Índice Administración de ventanas en. El síndrome de la ventana tonta y la solución de Clark. El algoritmo de

Más detalles

Bloque III: El nivel de transporte. Tema 8: Retransmisiones y temporizadores en TCP

Bloque III: El nivel de transporte. Tema 8: Retransmisiones y temporizadores en TCP Bloque III: El nivel de transporte Tema 8: Retransmisiones y temporizadores en TCP Índice Bloque III: El nivel de transporte Tema 8: Retransmisiones y temporizadores en TCP Retransmisiones Control de congestión

Más detalles

Transparencias de Redes de Ordenadores. Tema 10 Nivel de Transporte: TCP 1ª Parte TCP. Uploaded by. IngTeleco

Transparencias de Redes de Ordenadores. Tema 10 Nivel de Transporte: TCP 1ª Parte TCP. Uploaded by. IngTeleco Transparencias de Redes de Ordenadores Tema 10 Nivel de Transporte: TCP 1ª Parte TCP Uploaded by IngTeleco http://ingteleco.iespana.es ingtelecoweb@hotmail.com La dirección URL puede sufrir modificaciones

Más detalles

Bibliografía [COM06] Internetworking with TCP/IP, Cap. 12. Arquitectura de Redes y Servicios de Telecomunicación (ARST)

Bibliografía [COM06] Internetworking with TCP/IP, Cap. 12. Arquitectura de Redes y Servicios de Telecomunicación (ARST) Tema 3: El protocolo TCP Introducción Puertos y conexiones Control de flujo. Recuperación de errores Control de congestión Formato de un segmento TCP Establecimiento y cierre de una conexión Conclusiones

Más detalles

Capa de Transporte, TCP y UDP

Capa de Transporte, TCP y UDP Capa de Transporte, TCP y UDP Mg. Gabriel H. Tolosa tolosoft@unlu.edu.ar Be conservative in what you do, be liberal in what you accept from others. Jon Postel Principio de Robustez Capa de Transporte Ofrece

Más detalles

Sistemas de Transportes de Datos (STD) Tema III: UDP Y TCP (Entrega 2) Maximum Segment Size (MSS) No fragmentar datagrama IP

Sistemas de Transportes de Datos (STD) Tema III: UDP Y TCP (Entrega 2) Maximum Segment Size (MSS) No fragmentar datagrama IP Herramienta de visualización: tcpdump Programa que coloca a la tarjeta de red en modo promíscuo: todo lo que pasa por la red es recogido y pasado a los módulos IP y. Tcpdump presenta la información al

Más detalles

El nivel de transporte

El nivel de transporte El nivel de transporte Jesús Moreno León Alberto Molina Coballes Redes de Área Local Septiembre 2009 Nivel de transporte Gobierna el acceso múltiple a la red de los diversos procesos de la máquina que

Más detalles

Bloque IV: El nivel de red. Tema 9: IP

Bloque IV: El nivel de red. Tema 9: IP Bloque IV: El nivel de red Tema 9: IP Índice Bloque IV: El nivel de red Tema 9: IP Introducción Cabecera IP Fragmentación IP Referencias Capítulo 4 de Redes de Computadores: Un enfoque descendente basdado

Más detalles

Computer Networks I CAPA DE TRANSPORTE

Computer Networks I CAPA DE TRANSPORTE 1 Version 15/03/2018 Computer Networks I applicatio n transporte network link CAPA DE TRANSPORTE physical Contenidos Conceptos generales Entrega proceso a proceso Sockets Multiplexación y demultiplexación

Más detalles

TCP. Temario. Temario

TCP. Temario. Temario Area de Ingeniería Telemática http://www.tlm.unavarra.es Arquitectura de Redes, Sistemas y Servicios 3º Ingeniería de Telecomunicación Introducción Temario Arquitecturas, protocolos y estándares Conmutación

Más detalles

Propósito de la capa de transporte

Propósito de la capa de transporte Propósito de la capa de transporte Seguimiento de conversaciones individuales. Es responsabilidad de la capa de transporte mantener los diversos strams comunicación entre sus aplicaciones. Segmentación

Más detalles

Figura 6.3 Descripción de la ventana deslizante.

Figura 6.3 Descripción de la ventana deslizante. Figura 6.3 Descripción de la ventana deslizante. Dada una longitud para los números de secuencia, el tamaño de la ventana real no necesita ser el máximo posible. Por ejemplo, si se usan números de secuencia

Más detalles

Transporte fiable Ventana deslizante

Transporte fiable Ventana deslizante Transporte fiable Ventana deslizante Area de Ingeniería Telemática http://www.tlm.unavarra.es Arquitectura de Redes, Sistemas y Servicios Grado en Ingeniería en Tecnologías de Telecomunicación, 2º Stop

Más detalles

Xarxes de Computadors. Tema 3 Protocolos UDP y TCP

Xarxes de Computadors. Tema 3 Protocolos UDP y TCP Xarxes de Computadors Tema 3 Protocolos UDP y TCP Temario } 1) Introducción } 2) Redes IP } 3) Protocolos UDP y TCP } 4) Redes de área local (LAN) } 5) Protocolos del nivel aplicación Tema 3 Protocolos

Más detalles

Contenido. UDP y TCP NAT Proxy El Laboratorio de Telemática. 17 Nov Conceptos avanzados 1/21

Contenido. UDP y TCP NAT Proxy El Laboratorio de Telemática. 17 Nov Conceptos avanzados 1/21 Conceptos avanzados Dr. Daniel Morató Area de Ingeniería Telemática Departamento de Automática y Computación Universidad Pública de Navarra daniel.morato@unavarra.es Laboratorio de Programación de Redes

Más detalles

TCP: Características Establecimiento y finalización de conexiones Tema 4.- Nivel de transporte en Internet

TCP: Características Establecimiento y finalización de conexiones Tema 4.- Nivel de transporte en Internet TCP: Características Establecimiento y finalización de conexiones Tema 4.- Nivel de transporte en Internet http://www.tlm.unavarra.es Redes de Ordenadores Ingeniero Técnico de Telecomunicación Especialidad

Más detalles

ELO322 Redes de Computadores I 07/06/2013. Segundo Certamen ACK1 ACK1 ACK1 ACK1 ACK5

ELO322 Redes de Computadores I 07/06/2013. Segundo Certamen ACK1 ACK1 ACK1 ACK1 ACK5 Segundo Certamen Pregunta : Para el protocolo TCP- ptos puntos cada una, el resultado se multiplica por /6 a Explique y dé un ejemplo en un diagrama temporal del algoritmo de retransmisión rápida El algoritmo

Más detalles

Protocolos de ventana deslizante (sliding-window protocols)

Protocolos de ventana deslizante (sliding-window protocols) Protocolos de ventana deslizante (sliding-window protocols) Area de Ingeniería Telemática http://www.tlm.unavarra.es Arquitectura de Redes, Sistemas y Servicios 3º Ingeniería de Telecomunicación Temario

Más detalles

Planificación y Administración de Redes: El nivel de Transporte. Jesús Moreno León Raúl Ruiz Padilla Septiembre 2010

Planificación y Administración de Redes: El nivel de Transporte. Jesús Moreno León Raúl Ruiz Padilla Septiembre 2010 Planificación y Administración de Redes: El nivel de Transporte Jesús Moreno León Raúl Ruiz Padilla j.morenol@gmail.com Septiembre 2010 Estas diapositivas son una obra derivada de las transparencias del

Más detalles

El Nivel de Transporte. en Internet

El Nivel de Transporte. en Internet El Nivel de Transporte en Internet Sumario Funciones del nivel de transporte Protocolo UDP Protocolo TCP Multiplexación Conexión/Desconexión Intercambio de datos y control de flujo Casos de baja eficiencia

Más detalles

CONTROL DE ERRORES DETECCIÓN DE ERRORES

CONTROL DE ERRORES DETECCIÓN DE ERRORES CONTROL DE ERRORES DETECCIÓN DE ERRORES Ejecutada por el receptor y consiste en tener mecanismos para saber si lo que ha llegado está correcto o no. Si está correcto debe ser procesada y enviada al nivel

Más detalles

Conceptos avanzados. Contenido

Conceptos avanzados. Contenido Conceptos avanzados Daniel Morató Area de Ingeniería Telemática Departamento de Automática y Computación Universidad Pública de Navarra daniel.morato@unavarra.es Laboratorio de Programación de Redes http://www.tlm.unavarra.es/asignaturas/lpr

Más detalles

Protocolos, Servicios e Interfaces

Protocolos, Servicios e Interfaces Protocolos, Servicios e Interfaces Area de Ingeniería Telemática http://www.tlm.unavarra.es Arquitectura de Redes, Sistemas y Servicios 3º Ingeniería de Telecomunicación Temario 1. Introducción 2. Arquitecturas,

Más detalles

Transporte fiable Selective repeat

Transporte fiable Selective repeat Transporte fiable Selective repeat Area de Ingeniería Telemática http://www.tlm.unavarra.es Arquitectura de Redes, Sistemas y Servicios Grado en Ingeniería en Tecnologías de Telecomunicación, 2º Temario

Más detalles

CUESTIONARIO PARA EL PROTOCOLO TCP/IP PREGUNTAS

CUESTIONARIO PARA EL PROTOCOLO TCP/IP PREGUNTAS CUESTIONARIO PARA EL PROTOCOLO TCP/IP PREGUNTAS TEMA I 1. - Qué significa TCP/IP? 2. - Por que es necesario usar TCP/IP? 3. - Cuáles son algunas funciones del nivel de aplicación? 4. - Qué es una PDU?

Más detalles

TCP: Ventana de control de flujo y timers

TCP: Ventana de control de flujo y timers Gestión y Planificación de Redes y Servicios TCP: Ventana de control de flujo y timers Area de Ingeniería Telemática http://www.tlm.unavarra.es Grado en Ingeniería en Tecnologías de Telecomunicación, 4º

Más detalles

Redes de Computadores

Redes de Computadores es de Computadores Tema 4 Nivel, TCP, UDP Arquitectura en capas de comunicación de datos 1 Capas Mensajes SW App Extremos Formatos Sesiones Segmentos SO Paquetes HW NIC Infra Tramos Tramas Bits Capas y

Más detalles

Protocolos, Servicios e Interfaces

Protocolos, Servicios e Interfaces Protocolos, Servicios e Interfaces Area de Ingeniería Telemática http://www.tlm.unavarra.es Arquitectura de Redes, Sistemas y Servicios 3º Ingeniería de Telecomunicación Temario 1. Introducción 2. Arquitecturas,

Más detalles

Capítulo 3: Capa Transporte - III

Capítulo 3: Capa Transporte - III Capítulo 3: Capa Transporte - III ELO322: Redes de Computadores Tomás Arredondo Vidal Este material está basado en: material de apoyo al texto Computer Networking: A Top Down Approach Featuring the Internet

Más detalles

Redes de Computadores - Problemas y cuestiones

Redes de Computadores - Problemas y cuestiones Redes de Computadores - Problemas y cuestiones Cuestiones: ARP y direcciones IP 1. Convierte la dirección IP cuya representación hexadecimal es C22F1582 a notación decimal con puntos. 2. Interpreta las

Más detalles

TCP Tema 3.- Nivel de transporte en Internet

TCP Tema 3.- Nivel de transporte en Internet TCP Tema 3.- Nivel de transporte en Internet Dr. Daniel Morató Redes de Computadores Ingeniero Técnico en Informática de Gestión, 2º curso Material parcialmente adaptado del libro Computer Networking:

Más detalles

TEMA 12: La capa de transporte en Internet.

TEMA 12: La capa de transporte en Internet. TEMA 12:. 12.1 Introducción. En este tema nos centraremos exclusivamente en la capa de transporte en Internet, sin entrar en generalidades sobre el funcionamiento de la capa de transporte. posee un gran

Más detalles

Universisdad de Los Andes Facultad de Ingeniería Escuela de Sistemas. Capa de Transporte. Mérida - Venezuela Prof. Gilberto Díaz

Universisdad de Los Andes Facultad de Ingeniería Escuela de Sistemas. Capa de Transporte. Mérida - Venezuela Prof. Gilberto Díaz Universisdad de Los Andes Facultad de Ingeniería Escuela de Sistemas Capa de Transporte Mérida - Venezuela Prof. Gilberto Díaz Transmission Control Protocol (TCP) Fue diseñado para proporcionar una transferencia

Más detalles

Tema 1bis. TCP y UDP (aka Tema 5. TCP y UDP)

Tema 1bis. TCP y UDP (aka Tema 5. TCP y UDP) Tema 1bis. TCP y UDP (aka Tema 5. TCP y UDP) Ingeniería de protocolos Curso 2012/13 Jaime Benjumea Mondéjar Dpto. Tecnología Electrónica (Univ. de Sevilla) Indice Protocolos de nivel de transporte. Servicios

Más detalles

Redes y Servicios. Módulo I. Fundamentos y modelos de red. Tema 2. Fundamentos. Parte B. Nivel de enlace

Redes y Servicios. Módulo I. Fundamentos y modelos de red. Tema 2. Fundamentos. Parte B. Nivel de enlace 1 Redes y Servicios Módulo I. Fundamentos y modelos de red Tema 2. Fundamentos Parte B. Nivel de enlace 2 Introducción Dos funciones básicas del nivel de enlace: Motivación? Control de flujo Motivación?

Más detalles

ARQUITECTURA DE REDES DE COMUNICACIONES 17 de junio de 2008

ARQUITECTURA DE REDES DE COMUNICACIONES 17 de junio de 2008 ARQUITECTURA DE REDES DE COMUNICACIONES 17 de junio de 2008 Problema 1 CONTESTAR RAZONADAMENTE a las siguientes cuestiones, utilizando exclusivamente el espacio reservado tras las mismas 1.1 Indique, en

Más detalles

Redes de computadores. Práctica 3

Redes de computadores. Práctica 3 Ingenieria Informática. Redes de computadores Práctica 3 El protocolo TCP 1 El protocolo TCP Introducción a TCP TCP es un protocolo de nivel de transporte completo que proporciona un servicio de transferencia

Más detalles

Preparado con materiales de: Presentación: Carlos Vicente Servicios de Red/Universidad de Oregon. Carlos Armas Roundtrip Networks.

Preparado con materiales de: Presentación: Carlos Vicente Servicios de Red/Universidad de Oregon. Carlos Armas Roundtrip Networks. Preparado con materiales de: Carlos Vicente Servicios de Red/Universidad de Oregon Presentación: Carlos Armas Roundtrip Networks Hervey Allen NSRC Planificación de la gestión del rendimiento Métricas Red

Más detalles

2.3.4 Capa de transporte. Protocolos

2.3.4 Capa de transporte. Protocolos 2.3.4 Capa de transporte Protocolos TCP El Protocolo de Control de Transmisión (TCP en sus siglas en inglés, Transmission Control Protocol que fue creado entre los años 1973-1974 por Vint Cerf y Robert

Más detalles

75.43 Introducción a los Sistemas Distribuidos

75.43 Introducción a los Sistemas Distribuidos 75.43 Introducción a los Sistemas Distribuidos Práctica 1: Capa de Transporte Resumen La capa de transporte provee una comunicación confiable y eficiente entre dos máquinas, independientemente de aspectos

Más detalles

Práctica 2 Programación de Aplicaciones Distribuidas: Sockets TCP. Laboratorio de Comunicación de Datos ITT Telemática 26 de Septiembre 2011

Práctica 2 Programación de Aplicaciones Distribuidas: Sockets TCP. Laboratorio de Comunicación de Datos ITT Telemática 26 de Septiembre 2011 Práctica 2 Programación de Aplicaciones Distribuidas: Sockets TCP Laboratorio de Comunicación de Datos ITT Telemática 26 de Septiembre 2011 Introducción Aplicaciones Orientadas a Conexión TCP:Servicio

Más detalles

TCP Transporte fiable en Internet

TCP Transporte fiable en Internet TCP Transporte fiable en Internet Area de Ingeniería Telemática http://www.tlm.unavarra.es Redes 4º Ingeniería Informática Hoy... 1. Introducción a las redes 2. Tecnologías para redes de área local 3.

Más detalles

Transporte Introducción y transporte fiable

Transporte Introducción y transporte fiable Transporte Introducción y transporte fiable Area de Ingeniería Telemática http://www.tlm.unavarra.es Redes 4º Ingeniería Informática Hoy... 1. Introducción a las redes 2. Tecnologías para redes de área

Más detalles

Bloque IV: El nivel de red. Tema 12: ICMP

Bloque IV: El nivel de red. Tema 12: ICMP Bloque IV: El nivel de red Tema 12: ICMP Índice Bloque IV: El nivel de red Tema 12: ICMP Introducción ICMP: Puerto inalcanzable ICMP: Fragmentación requerida Ping Traceroute Referencias Capítulo 4 de Redes

Más detalles

Redes de Computadoras Septiembre de 2006. Teoría y problemas (75 %).

Redes de Computadoras Septiembre de 2006. Teoría y problemas (75 %). Redes de Computadoras Septiembre de 2006 Nombre: DNI: Teoría y problemas (75 ). 1. (2 puntos) Verdadero o falso? Razone además su respuesta. a) Un host A envía a un host B un fichero muy grande a través

Más detalles

5 Compresión de Cabeceras de Van Jacobson

5 Compresión de Cabeceras de Van Jacobson 5 Compresión de Cabeceras de Van Jacobson 5.1 INTRODUCCIÓN El acceso a servicios de Internet a través de líneas de baja velocidad tanto alámbricas como inalámbricas pone de manifiesto el hecho de la gran

Más detalles

Este documento es producto de trabajo realizado por Network Startup Resource Center (NSRC at Este documento puede ser

Este documento es producto de trabajo realizado por Network Startup Resource Center (NSRC at  Este documento puede ser Este documento es producto de trabajo realizado por Network Startup Resource Center (NSRC at http://www.nsrc.org). Este documento puede ser libremente copiado o re-utilizado con la condicion de que toda

Más detalles

Protocolos de transporte y aplicación

Protocolos de transporte y aplicación Protocolos de transporte y aplicación Tema 1 SRI Vicente Sánchez Patón I.E.S Gregorio Prieto Funciones protocolos de aplicación Los protocolos de la capa de aplicación los utilizan tanto los dispositivos

Más detalles

UNIDAD VI CONTROL DEL ENLACE DE DATOS Y MULTIPLEXACIÓN.

UNIDAD VI CONTROL DEL ENLACE DE DATOS Y MULTIPLEXACIÓN. UNIDAD VI 6.1 Introducción. CONTROL DEL ENLACE DE DATOS Y MULTIPLEXACIÓN. Nuestro estudio hasta ahora se ha concentrado en el envío de señales a través del enlace de transmisión. Para conseguir que la

Más detalles

Control de flujo en TCP

Control de flujo en TCP Clase 20 Control de flujo en TCP Tema 5.- Nivel de transporte en Internet Dr. Daniel Morató Redes de Ordenadores Ingeniero Técnico de Telecomunicación Especialidad en Sonido e Imagen, 3º curso Temario

Más detalles

Control de Congestión. Definición de Congestión

Control de Congestión. Definición de Congestión Control de Congestión Redes y Servicios de Comunicaciones I Definición de Congestión Fenómeno producido cuando a la red (o parte de ella) se le ofrece más tráfico del que puede cursar. Causa: Las memorias

Más detalles

Transporte fiable. Area de Ingeniería Telemática

Transporte fiable. Area de Ingeniería Telemática Transporte fiable Area de Ingeniería Telemática http://www.tlm.unavarra.es Arquitectura de Redes, Sistemas y Servicios Grado en Ingeniería en Tecnologías de Telecomunicación, 2º Temario 1. Introducción

Más detalles

Bloque IV: El nivel de red. Tema 12: ICMP

Bloque IV: El nivel de red. Tema 12: ICMP Bloque IV: El nivel de red Tema 12: ICMP Índice Bloque IV: El nivel de red Tema 12: ICMP Introducción ICMP: Puerto inalcanzable ICMP: Fragmentación requerida Ping Traceroute Referencias Capítulo 4 de Redes

Más detalles

Capítulo 4. Transporte UDP y TCP. Redes de Ordenadores 2º Grado en Ingeniería en Tecnologías de Telecomunicación

Capítulo 4. Transporte UDP y TCP. Redes de Ordenadores 2º Grado en Ingeniería en Tecnologías de Telecomunicación Capítulo 4. Transporte UDP y TCP Redes de Ordenadores 2º Grado en Ingeniería en Tecnologías de Telecomunicación 1 2 Índice Hora 1 1 Paradigmas de comunicaciones 1.1 Paradigma cliente/servidor 1.2 Paradigma

Más detalles

8. ARQUITECTURA TCP/IP (I)

8. ARQUITECTURA TCP/IP (I) 8. ARQUITECTURA TCP/IP (I) ARQUITECTURA TCP/IP HISTORIA DE TCP/IP E INTERNET PROTOCOLO IP Datagrama IP Direccionamiento IP Subredes Direccionamiento CIDR Arquitectura de una red IP OTROS PROTOCOLOS DEL

Más detalles

Redes de Computadores Nivel de Enlace: Introducción y control de acceso al medio

Redes de Computadores Nivel de Enlace: Introducción y control de acceso al medio Redes de Computadores Nivel de Enlace: Introducción y control de acceso al medio Área de Ingeniería Telemática Dpto. Automática y Computación http://www.tlm.unavarra.es/ En clases anteriores... Nivel de

Más detalles

La implementación del Sender y del Receiver van a depender del modelo del canal que está por debajo y complejidad.

La implementación del Sender y del Receiver van a depender del modelo del canal que está por debajo y complejidad. Introducción 1) Principio de transferencia de datos Confiable Un canal confiable implica un canal donde los datos de entrada no sufren alteraciones a la salida (0 1, ó 1 0, etc.). La idea es que la capa

Más detalles

Examen prueba final (9 de enero de 2017)

Examen prueba final (9 de enero de 2017) Examen prueba final (9 de enero de 2017) Nombre y apellidos: La red de comunicaciones de una determinada compañía, formada por una sede central y una delegada, es la representada en la figura. En ella

Más detalles

TEMA 7 PROTOCOLOS DE TRANSPORTE. TCP Y UDP.

TEMA 7 PROTOCOLOS DE TRANSPORTE. TCP Y UDP. TEMA 7 PROTOCOLOS DE TRANSPORTE. TCP Y UDP. 7.1 Generalidades El nivel de transporte proporciona un servicio extremo a extremo, puede ser. o Confiable, u orientado a conexión como TCP o No confiable, o

Más detalles

Tema 3: El protocolo TCP

Tema 3: El protocolo TCP 1 Tema 3: El protocolo TCP Capítulos: Introducción Puertos y conexiones Control de flujo. Recuperación de errores Control de congestión Formato de un segmento TCP Establecimiento y cierre de una conexión

Más detalles

SISTEMAS OPERATIVOS Y TCP/IP. - El Modelo de Referencia TCP/IP -

SISTEMAS OPERATIVOS Y TCP/IP. - El Modelo de Referencia TCP/IP - SISTEMAS OPERATIVOS Y TCP/IP - El Modelo de Referencia TCP/IP - Objetivos Describir el modelo de referencia TCP/IP Comparar el modelo TCP/IP con el modelo OSI Analizar el formato general del datagrama

Más detalles

Tema 8: Frame Relay Ejercicios Resueltos

Tema 8: Frame Relay Ejercicios Resueltos Ejercicios de Redes de Ordenadores Tema 8: Frame Relay Ejercicios Resueltos Uploaded by Ingteleco http://ingteleco.iespana.es ingtelecoweb@hotmail.com La dirección URL puede sufrir modificaciones en el

Más detalles

Tema 4. Protocolos Multimedia

Tema 4. Protocolos Multimedia Tema 4 Protocolos Multimedia aracterización de las aplicaciones multimedia Requieren mucho ancho de banda Canales continuos (streams) Calidad de servicio (QoS) garantizada Conexiones multipunto Sincronización

Más detalles

Figura 6.5 ARQ mediante parada-y-espera.

Figura 6.5 ARQ mediante parada-y-espera. Comunicación de Datos Posteriormente, A transmite la trama etiquetada con 1 pero ahora se pierde su correspondiente ACK0. El temporizador en A expira y se retransmite la trama. Al recibir B dos tramas

Más detalles

Redes (IS20) Ingeniería Técnica en Informática de Sistemas. http://www.icc.uji.es. CAPÍTULO 8: El nivel de transporte en Internet

Redes (IS20) Ingeniería Técnica en Informática de Sistemas. http://www.icc.uji.es. CAPÍTULO 8: El nivel de transporte en Internet Redes (IS20) Ingeniería Técnica en Informática de Sistemas http://www.icc.uji.es CAPÍTULO 8: El nivel de transporte en Internet ÍNDICE 1. Introducción Curso 2002-2003 - Redes (IS20) -Capítulo 8 1 1. Introducción

Más detalles

Arquitectura de redes I Test de clase 5 de diciembre de :00 16:45 Modelo 1 NOMBRE Y APELLIDOS (MAYÚSCULAS) GRUPO:

Arquitectura de redes I Test de clase 5 de diciembre de :00 16:45 Modelo 1 NOMBRE Y APELLIDOS (MAYÚSCULAS) GRUPO: Arquitectura de redes I Test de clase 5 de diciembre de 2011 16:00 16:45 Modelo 1 NOMBRE Y APELLIDOS (MAYÚSCULAS) GRUPO: Tiempo: Tres cuartos de hora Sin libros ni apuntes Calificación: Respuesta correcta:

Más detalles

75.43 Introducción a los Sistemas Distribuidos

75.43 Introducción a los Sistemas Distribuidos 75.43 Introducción a los Sistemas Distribuidos Práctica 9: Capa de Transporte Resumen La capa de transporte provee una comunicación confiable y eficiente entre dos máquinas, independientemente de aspectos

Más detalles

BLOQUE I. Introducción a la Telemática

BLOQUE I. Introducción a la Telemática BLOQUE I. Introducción a la Telemática REDES DE DIFUSIÓN Y REDES DE CONMUTACIÓN (II). María Dolores Cano Baños Contenidos 1. Introducción 2. Cambios en los factores tecnológicos, organizativos y económicos

Más detalles