Capa Transporte3-1 Capítulo 3: Continuación r 3.1 Servicios de la capa transporte r 3.2 Multiplexing y demultiplexing r 3.3 Transporte sin conexión: UDP.

Slides:



Advertisements
Presentaciones similares
INSTITUTO NACIONAL DE INVESTIGACION Y CAPACITACION DE TELECOMUNICACIONES, INICTEL-UNI Propiedad intelectual de Daniel 2011.
Advertisements

Capa 4 Capa de Transporte
Page 1 Martínez Navarro, Germán Fco. Page 2 Índice Introducción Paquetes Cuerpo del mensaje Circuitos Sistema de mensajes Arquitectura del cliente Arquitectura.
TEMA1. Servicios de Red e Internet
© 2007 Cisco Systems, Inc. All rights reserved. Traducido en apoyo a la capacitación de Instructores de la Red Proydesa Capa de Transporte de OSI Fundamentos.
CAPA DE TRANSPORTE DEL MODELO OSI
Prácticas sobre el protocolo TCP
Capa de Transporte.
Capa de Transporte del modelo OSI
Fragmentación práctico 0: Se envía un paquete de H1 a H2 de 1300 bits (1320 en total con encabezamiento) P P P24600 P IdDespFinalBits.
Capítulo 7 Multimedia en Redes de Computadores
Capítulo 20: TCP Servicio de transporte confiable
SOCKETS INTRODUCCIÓN DEFINICIÓN TIPOS DE SOCKETS USO DE SOCKETS.
Protocolos de transporte y aplicación
Datagram IP, Fragmentación
Capa de transporte.
MODELO TCP/IP.
1 Uciel Fragoso RodríguezITAMRedes TCP/IP Protocolo TCP (Transmission Control Protocol)
Tema 3: Nivel de Transporte
TCP/IP V4 Redes de Computadoras uclv.
Sebastián Barbieri IP - ICMP Comunicación de Datos II Ingeniería en Sistemas – Facultad Cs. Exactas Universidad Nacional de Centro de la Prov. de Bs. As.
PROTOCOLO DE TRANSPORTE Profesor Daniel Díaz Ataucuri Introducción
Universidad Nacional de Luján - Asignatura Teleinformática y Redes Tema: Capa de Transporte - TCP 1 Capa de Transporte “Ofrece a sus usuarios un sistema.
TCP Tema 2.- Nivel de transporte en Internet Dr. Daniel Morató Redes de Computadores Ingeniero Técnico en Informática de Gestión, 2º curso Material parcialmente.
Capa de aplicación y transporte de TCP/IP Semestre 1 Capítulo 11
Capa Transporte3-1 Capítulo 3: Continuación r 3.1 Servicios de la capa transporte r 3.2 Multiplexing y demultiplexing r 3.3 Transporte sin conexión: UDP.
Capa Transporte3-1 Capítulo 3: Capa transporte (Continuación) ELO322: Redes de Computadores Agustín J. González Este material está basado en el material.
Capa Transporte3-1 Capítulo 3: Continuación r 3.1 Servicios de la capa transporte r 3.2 Multiplexing y demultiplexing r 3.3 Transporte sin conexión: UDP.
1 Control de Congestión Adaptación de Agustín J. González de la versión por Jennifer Rexford os461/
Sistemas de Comunicación Magistral Nro. 8 Capa 4: Transporte Las funciones principales de la capa de transporte son transportar y regular el flujo de información.
Funciones Capa de Transporte
Conceptos avanzados Dr. Daniel Morató Area de Ingeniería Telemática Departamento de Automática y Computación Universidad Pública de Navarra
Capítulo 12: Protocolos y Capas
7: Multimedia en Redes de Computadores7-1 Capítulo 7 Multimedia en Redes de Computadores Material tomado de: Computer Networking: A Top Down Approach Featuring.
CAPITULO 6 CAPA DE TRANSPORTE
Introducción1-1 Capítulo 1: Introducción ELO322: Redes de Computadores Agustín J. González Este material está basado en el material preparado como apoyo.
Capa Transporte3-1 Capítulo 3: Capa Transporte - III ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material de apoyo.
Capa Transporte 1 Capítulo 3: Capa Transporte - II ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material de apoyo.
Adaptación de Agustín J. González de la versión por
Capa Transporte 3-1 Capítulo 3: Capa Transporte - IV ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material de apoyo.
Capítulo 3: Capa Transporte - III
Capa Transporte3-1 Capítulo 3: Capa transporte ELO322: Redes de Computadores Agustín J. González Este material está basado en el material preparado como.
Capa Transporte1 Capítulo 3: Capa Transporte - I ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material de apoyo al.
Capa Transporte3-1 Capítulo 3: Capa Transporte - IV ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material de apoyo.
Capa Transporte3-1 Capítulo 3: Capa Transporte - IV ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material de apoyo.
Capa Transporte3-1 Capítulo 3: Capa Transporte - IV ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material de apoyo.
ELO3091 Conmutación y Re-envío Parte 2 Switching y Forwarding Contenido Conmutación de Celdas Segmentación y Re-ensamble.
Control de Congestión Administración de Ventanas (II Parte) Expositor: Mauricio Fierro E.
Capa Transporte1 Capítulo 3: Capa Transporte - II ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material de apoyo al.
Redes de Datos Integrantes: Guízar Gómez Gerardo Nassir López Ortega Juan Manuel Rodríguez Castro Ronald Michel Silva Rangel Ángel Eduardo Capa 5. Sesión.
Capa Transporte 3-1 Capítulo 3: Capa Transporte - IV ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material de apoyo.
TCP garantiza que la información es recibida en orden. Para ello, cada paquete enviado tiene un número de secuencia. Cada uno de los dos procesos involucrados.
4. Introducción a IP,TCP,UDP,ARP,ICMP
Capítulo 3: Capa Transporte - I
Tema 1 – Introducción a las Redes informáticas
Nivel de Transporte en Internet
Capa Transporte3-1 Capítulo 3: Capa Transporte - IV ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material de apoyo.
Modelo OSI Para redes………
Control de Flujo y de Errores
Capa Transporte3-1 Capítulo 3: Capa Transporte - IV ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material de apoyo.
Protocolo RTP Real-time Transport Protocol. RTP Videoconferencias Fue creado para cubrir la demanda de recursos en tiempo real por parte de los usuarios:
Redes de Computadores Tema 4: TCP/IP Parte III.
Capa Transporte 1 Capítulo 3: Capa Transporte - I ELO322: Redes de Computadores Agustín J. González Este material está basado en:  Material de apoyo al.
Aspectos avanzados de la capa de transporte1 Capítulo 2 Aspectos avanzados de la capa de transporte Departamento de Tecnología Electrónica Algunas de las.
Capítulo 3: Capa Transporte - III
Capítulo 3: Capa Transporte - III
Capítulo 3: Capa Transporte - III
Capítulo 3: Capa Transporte Go-back-N y Selective Repeat
Capítulo 3: Capa Transporte Transporte Orientado a la Conexión: TCP
Capítulo 3: Capa Transporte: Principios del control de congestión
Transcripción de la presentación:

Capa Transporte3-1 Capítulo 3: Continuación r 3.1 Servicios de la capa transporte r 3.2 Multiplexing y demultiplexing r 3.3 Transporte sin conexión: UDP r 3.4 Principios de transferencia confiable de datos r 3.5 Transporte orientado a la conexión: TCP m Estructura de un segmento m Transferencia confiable de datos m Control de flujo m Gestión de la conexión r 3.6 Principios del control de congestión r 3.7 Control de congestión en TCP

Capa Transporte3-2 TCP: Generalidades RFCs: 793, 1122, 1323, 2018, 2581 r Transferencia full duplex (dos sentidos): m Flujo de datos bi- direccionales en la misma conexión m MSS: maximum segment size r Orientado a la conexión: m handshaking (intercambio de mensajes de control) inicializa al Tx y Rx antes del intercambio de datos r Usa control de flujo: m Tx no sobrecargará al Rx r Punto-a punto: m Un Tx y un Rx r confiable, en orden flujo de bytes: m no hay “límites de inicio/término de menaje” r Usa pipeline: m El tamaño de la ventana TCP es definido por el control de congestión y control de flujo r Usa buffer en Tx & Rx socket door TCP send buffer TCP receive buffer socket door segment application writes data application reads data

Capa Transporte3-3 Estructura de un segmento TCP # puerto origen # puerto dest. 32 bits Datos de la aplicación (largo variable) Número de secuencia Número de acknowledgement Ventana receptor Puntero dato urgente checksum F SR PAU largo head No usado Opciones (largo variable) URG: urgent data (generalmente no usado) ACK: ACK # válido PSH: push data now ( Indica entregar datos a aplic. ahora ) RST, SYN, FIN: Establecimiento de conexión (comandos de inicio y cierre) # bytes El Rx está dispuesto a aceptar Cuenta bytes de datos (no segmentos) checksum (como en UDP)

Capa Transporte3-4 # de sec. y ACKs en TCP # de Sec.: m “número” del byte dentro del flujo correspondiente al primer byte del segmento de datos ACKs: m # sec. del próximo byte esperado desde el otro lado m ACK es acumulativo Q: ¿Cómo el receptor maneja segmentos fuera de orden? m R: la especificación de TCP lo deja a criterio del implementador Host A Host B Seq=42, ACK=79, data = ‘C’ Seq=79, ACK=43, data = ‘C’ Seq=43, ACK=80 User tipea ‘C’ host acusa recibo de eco ‘C’ host acusa recibo de ‘C’ y envía echo de ‘C’ tiempo Escenario telnet simple Con conexión ya establecida

Capa Transporte3-5 Round Trip Time y Timeout en TCP Q: ¿Cómo fijar valor de timeout en TCP? r Mayor que RTT m pero RTT varía r Muy corto: timeout prematuro m Retransmisiones innecesarias r Muy largo: lenta reacción a pérdidas de segmentos Q: ¿Cómo estimar el RTT?  SampleRTT : mide timepo desde tx del segmento hasta recibo de ACK m Ignora retransmisiones  SampleRTT varía, hay que suavizar el RTT estimado  Promediar varias medidas recientes, no considerar sólo el último SampleRTT

Capa Transporte3-6 Round Trip Time y Timeout en TCP EstimatedRTT = (1-  )*EstimatedRTT +  *SampleRTT r Promedio móvil ponderado exponencial r Influencia de las muestras pasadas decrece exponencialmente rápido  Valor típico:  = = (1/8) = 3 right shifts

Capa Transporte3-7 Ejemplo de estimación de RTT:

Capa Transporte3-8 Round Trip Time y Timeout en TCP Definición del timeout  EstimtedRTT más un “margen de seguridad”  Si hay gran variación en EstimatedRTT -> usar gran margen r Primero estimamos cuánto el SampleRTT se desvía del EstimatedRTT: TimeoutInterval = EstimatedRTT + 4*DevRTT DevRTT = (1-  )*DevRTT +  *|SampleRTT-EstimatedRTT| (typically,  = 0.25) Entonces fijamos el timeout como:

Capa Transporte3-9 Capítulo 3: Continuación r 3.1 Servicios de la capa transporte r 3.2 Multiplexing y demultiplexing r 3.3 Transporte sin conexión: UDP r 3.4 Principios de transferencia confiable de datos r 3.5 Transporte orientado a la conexión: TCP m Estructura de un segmento m Transferencia confiable de datos m Control de flujo m Gestión de la conexión r 3.6 Principios del control de congestión r 3.7 Control de congestión en TCP

Capa Transporte3-10 Transferencia confiable de datos en TCP r TCP crea un servicio de transferencia confiable sobre el servicio no confiable de IP r Usa segmentos en pipeline r Acks acumulativos r TCP usa un timer de retransmisión único r Retransmisiones son activadas por: m Eventos timeout m Acks duplicados r Inicialmente consideremos un Tx TCP simplificado: m ignora acks duplicados m ignora control de flujo y control de congestión

Capa Transporte3-11 Eventos del transmisor en TCP: Datos recibidos desde aplicación: r Crea segemto con # de sec. r # sec es el número dentro del flujo para el primer byte del segmento r inicia timer si no está ya corriendo (asociar el timer al segmento más viejo sin acuse de recibo)  Tiempo de expiración: TimeOutInterval timeout: r Retransmitir el segmento que causó el timeout r Re-iniciar el timer Recepción de Ack: r Si es el ack de un segmento previo sin acuse de recibo m Actualizar estado sobre acuses recibidos m Iniciar timer si hay segmentos sin acuses de recibo.

Capa Transporte3-12 Tx TCP (simplificado NextSeqNum = InitialSeqNum SendBase = InitialSeqNum loop (forever) { switch(event) event: datos recibidos desde la aplicación Crear segmento TCP con número de sec. NextSeqNum if (timer actualmente no está corriendo) iniciar timer pasar segmento a IP NextSeqNum = NextSeqNum + length(data) break; event: timeout del timer retransmitir segmento con menor # de sec. sin acuse iniciar timer break; event: recepción de ACK con campo ACK de valor y if (y > SendBase) { SendBase = y if (hay segmentos sin acuse de recibo aún) iniciar timer } } /* end of loop forever */ Comentarios: SendBase-1: último Byte con ACK Ejemplo: SendBase-1 = 71; y= 73, el Rx quiere bytes 73+ ; como y > SendBase, llegó acuse de recibo de nuevo dato

Capa Transporte3-13 TCP: escenarios de retransmisión Host A Seq=100, 20 bytes data ACK=100 time Timeout prematuro Host B Seq=92, 8 bytes data ACK=120 Seq=92, 8 bytes data Seq=92 timeout ACK=120 Host A Seq=92, 8 bytes data ACK=100 loss timeout Pérdida de ACK Host B X Seq=92, 8 bytes data ACK=100 time Seq=92 timeout SendBase = 100 SendBase = 120 SendBase = 120 Sendbase = 100

Capa Transporte3-14 TCP escenarios de retransmisión (más) Host A Seq=92, 8 bytes data ACK=100 loss timeout ACK acumulado Host B X Seq=100, 20 bytes data ACK=120 time SendBase = 120

Capa Transporte3-15 Generación de ACK en TCP [RFC 1122, RFC 2581] Evento en Receptor Llegada de segmento en orden con # sec. esperado. Ya se envió el ACK de todo lo previo. Llegada de segmento en orden con # sec. esperado. Algún segmento tiene ACK pendiente Llegada de segmento fuera de orden con # sec. mayor al esperado. Se detecta un vacío. Llegada de segmento que llena el vacío parcialmente o completamente TCP acción del receptor ACK retardado. Espera hasta 500ms por próximo segmento. Si no llega otro segmento enviar ACK Enviar inmediatamente un ACK acumulado se da acuse así a ambos segmentos en orden. Enviar inmediatamente un ACK duplicado, indicando # sec. Próximo byte esperado Enviar inmediatamente un ACK cuando segmento se ubique al inicio del vacío.

Capa Transporte3-16 Retransmisiones Rápidas r Periodo de Time-out es a menudo largo: m Largo retardo antes de re-envío de paquetes perdidos r Se detecta paquetes perdidos vía ACKs duplicados. m Tx a menudo envía muchos segmentos seguidos m Si un segmento es perdido, probablemente habrá muchos ACKs duplicados. r Si Tx recibe 3 ACKs de un mismo dato, éste supone que el segmento después de este dato se perdió: m Retransmisiones rápidas: reenviar el segmento antes que el timer expire.

Capa Transporte3-17 event: Llega ACK, con campo ACK de valor y if (y > SendBase) { SendBase = y if (hay segmentos sin acuse de recibo aún) iniciar timer } else { // y==SendBase incrementar cuenta de ACKs de y duplicados if (cuenta de ACKs de y duplicados = 3) { re-enviar segmento con # de secuencia y } Algoritmo de retransmisión rápida: ACK duplicado de un segmento con ACK recibido Retransmisión rápida

Capa Transporte3-18 Capítulo 3: Continuación r 3.1 Servicios de la capa transporte r 3.2 Multiplexing y demultiplexing r 3.3 Transporte sin conexión: UDP r 3.4 Principios de transferencia confiable de datos r 3.5 Transporte orientado a la conexión: TCP m Estructura de un segmento m Transferencia confiable de datos m Control de flujo m Administración de conexión r 3.6 Principios del control de congestión r 3.7 Control de congestión en TCP