Perfomance TCP Reno Clase 8-Nov-2005 – Notas Complemetarias.

Slides:



Advertisements
Presentaciones similares
Un nuevo protocolo de transporte SCTP-RR
Advertisements

Un nuevo protocolo de transporte SCTP-RR
Capa 4 Capa de Transporte
Análisis de Rendimiento
Preparado con materiales de: Carlos Vicente Servicios de Red/Universidad de Oregon Presentación: Carlos Armas Roundtrip Networks Hervey Allen NSRC.
Preparado con materiales de: Carlos Vicente Servicios de Red/Universidad de Oregon Presentación: Carlos Armas Roundtrip Networks Hervey Allen NSRC.
TCP MÓVIL.
Capa de Transporte.
Convertidores A/D y D/A
Capítulo 7 Multimedia en Redes de Computadores
Capítulo 20: TCP Servicio de transporte confiable
Capa de transporte.
para un enlace inalámbrico de larga distancia Inter-Islas
Control de Congestión Contenidos Disciplina de encolado
QUALITY OF SERVICE (QoS)
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.
Juan Andrés Negreira 22 de febrero de 2007
7: Multimedia en Redes de Computadores7-1 Capítulo 7 Multimedia en Redes de Computadores Computer Networking: A Top Down Approach Featuring the Internet,
2. ASYNCRONOUS TRANSFER MODE 2.1Características generales 2.2 Modelo de referencia del protocolo 2.3 Categorías de servicio ATM.
7: Multimedia en Redes de Computadores 7-1 Capítulo 7 Multimedia en Redes de Computadores Este material está basado en el texto: Computer Networking: A.
CAPA DE ENLACE DE DATOS El nivel de enlace de datos (en inglés data link level) o capa de enlace de datos es la segunda capa del modelo OSI, la cual es.
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.
Control de Congestion. Muchos paquetes en la red se retrasan o pierden provocando que se degrade el desempeño de la red. Congestión.
Capa de enlace de datos.
TCP-Friendly Rate Control
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 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.
CALIDAD DE Servicio María Alejandra Bautista Sánchez
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.
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.
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.
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.
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 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 de Ventana Deslizante 2008
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.
Enlaces Punto a Punto Contenido Codificación Tramado (Framing)
ELO3091 Conmutación y Re-envío Parte 2 Switching y Forwarding Contenido Conmutación de Celdas Segmentación y Re-ensamble.
1 Control de Congestión Claudio Enrique Righetti Teoría de las Comunicaciones Departamento de Computación Facultad de Ciencias Exactas y Naturales UBA.
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.
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.
Jorge De Nova Segundo. SSH File Transfer Protocol (también conocido como SFTP o Secure File Transfer Protocol) es un protocolo del nivel de aplicación.
DATA LINK LAYER Parada y Espera Ventana Deslizante
Tema 1 – Introducción a las Redes informáticas
Sistemas Distribuidos Redes e Inter-Redes Richard Jiménez V. sisdistrib.wordpress.com.
Sistemas de Comunicación Avanzados Profesor: Héctor Abarca A. Sistemas de Comunicación de Datos II. Héctor Abarca A.
PRÁCTICO 2 NIVEL DE ENLACE DE DATOS DELIMITADOR DE FRAMES DETECCIÓN DE ERRORES CONTROL DE FLUJO Comunicación de Datos I.
PROTOCOLOS Modelo TCP/IP
Análisis de un Servidor HTTP Carlos Miguel Tavares Calafate Arquitectura y Prestaciones de la Web 2002.
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 de Enlace Modelo OSI
ASIGNACION DE RECURSOS
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.
Redes Convergentes Calidad en el Servicio.
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.
UNIDAD 3 PROTOCOLOS DE TRANSPORTE Y RUTEO DINÁMICO.
REDES 1 ELIZABETH RIVERA RIOS GRANADOS JESUS MANIEL RIVAS HERNANDEZ ELSA MARIANA TCP RENO.
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 Go-back-N y Selective Repeat
Capítulo 3: Capa Transporte:Control de congestión en TCP
Transcripción de la presentación:

Perfomance TCP Reno Clase 8-Nov-2005 – Notas Complemetarias

Introducción

Referencias [1] V. Jacobson, Congestion Avoidance and Control. Proceedings of ACM SIGCOMM '88, Aug [2] M. Mathis, J. Semke, J. Mahdavi, T. Ott, “The Macroscopic Behavior of the TCP Congestion Avoidance Algorithm”, ACM Computer Communication Review, Volume: 27, Issue: 3, July 1997 [3]Padhye, J., Firoiu, V., Towsley, D., and Kurose, J., “Modeling TCP Throughput: a Simple Model and its Empirical Validation”, UMASS CMPSCI Tech Report TR98-008, Feb J. Padhye, V. Firoiu, D. Towsley, J. Kurose, “Modeling TCP Throughput: A Simple Model and its Empirical Validation”, IEEE/ACM Transaction on Networking, Volume: 8, Issue: 2, April 2000, Page(s):

Perfomance del Protocolo de Ventana deslizante Sea un Host A, que usa protocolo de ventana deslizante, si debe transmitir un archivo de unos 10 GB con un Host B Window size = 64KB RTT de la red es de 1 segundo Cual es la velocidad esperada con que el emisor envia datos? 64KB/s

Control de Congestion en TCP La conexión TCP tiene una ventana –Controla el numero de paquetes “ sin ACK “ Velocidad de la fuente : ~Window/RTT Se varia el tamaño de ventana para controlar la velocidad Se Introduce un nuevo parámetro llamado “congestion window (cwnd)” en el emisor

Congestion Window (cwnd) Limita la cantidad de datos que puedo enviar Implementada como # de bytes Descripta como # packets en este cuso y por varios autores EffectiveWindow = MaxWindow – (LastByteSent – LastByteAcked) MaxWindow = min(cwnd, AdvertisedWindow) LastByteAcked LastByteSent SE Incrementa el sequence_ number MaxWindow EffectiveWindow

Slow Start + Congestion Avoidance Asumimos : ss_thresh = 8 RTT Cwnd (en segmentos) ssthresh

Detección de la Congestion via Timeout Si tenemos packet loss, el ACK para ese paquete no se recibira El paquete eventualmente puede demorarse –No ACK se interpreta como señal de congestión

Congestion Avoidance: Multiplicative Decrease Timeout = congestion Cada vez que se detecta congestion ss_thresh = “datos en vuelo” / 2 (para que sea menor a RWND) cwnd = 1 –Se entra en slow-start

Variacion Cwnd Time ss_thresh Timeout Slow Start Congestion Avoidance cwnd ss_thresh

Implementaciones de TCP Las versiones de TCP han incluido diversos algoritmos –TCP Tahoe - Slow-Start, Congestion Avoidance y Fast Retransmit –TCP Reno - Tahoe + Fast Recovery A la fecha la mayoria de los kernels tienen implementados TCP Reno Los cuatro algortimos se detallan en RFC2001 [1997] y RFC 2581 [1999], los mismos fueron propuesto en [1] [Jac90] Otras propuestas: –TCP Vegas ( utilizacion del timing de ACKs para evitar perdidas ) –TCP SACK (ACK selectivo) –Etc, Etc etc ….

TCP Reno Si se reciben 3 ACKs duplicados [*], se RTX el segmento que se presume perdido (“fast retransmit”) No se ingresa en “ slow-start”. Se ingresa en “ slow- start modificado “ (“fast recovery”) [*] Se define un dupthresh=3

Fast Retransmit Se reenvía un segmento después de 3 ACKs duplicados –Un ACK duplicado significa un segmento recibido fuera de secuencia –ACK-n significan que los paquetes 1, …, n fueron todos recibidos ACK 1 segment 1 cwnd = 1 cwnd = 2 segment 2 segment 3 ACK 3 cwnd = 4 segment 4 segment 5 segment 6 segment 7 ACK 2 3 ACKs Duplicados ACK 3

Fast Recovery Despues de un fast-retransmit –ss_thresh = “datos en vuelo” / 2 –cwnd = ss_thresh + 3 MSS –Se dispara un “slow start modificado” con la nueva cwnd NO slow start desde cwnd = 1 –Al finalizar se vuelve a “Congestion Avoidance”, cwnd = ss_thresh Despues de un Timeout –ss_thresh = “datos en vuelo” / 2 –cwnd = 1 –Se ejecuta slow start –Similar a TCPTahoe

TCP Tahoe (1) Transmission round congestion window size (segments) Series1Series2 threshold TimeOut

TCP Tahoe (2) Transmission round congestion window size (segments) Series1Series2 threshold TCP Tahoe 3 Dup Ack

TCP Reno (3) Transmission round congestion window size (segments) Series1Series2 threshold TCP Tahoe TCP Reno 3 Dup Ack

Fast Retransmit and Fast Recovery RTX despues de 3 ACKs duplicados –Previene timeouts “costosos” “Slow start” solo una vez por sesion (si no se producen timeouts) En “regimen permanente” ( en una conexion TCP de “larga duracion” ), el valor de cwnd “oscila “ con respecto al valor ideal de “ window size” Time cwnd Slow Start Congestion Avoidance

TCP Reno : comportamiento “diente de sierra” Time Congestion Window Initial Slowstart Fast Retransmit and Recovery Slowstart to pace packets Pueden ocurrir Timeouts

Modelo TCP [2] Hallar una expresión para “ steady state throughput “ como una función del –RTT –Probabilidad de perdida de paquetes p, [ p/(1+p) ~ p si p es pequeño ]. Asumimos –Cada paquete droppeado con probabilidad p –RTT Cte, ancho de banda del enlace suficiente –Señal de congestión periódica ( el link 1/p paquetes seguidos por uno dropeado) Metodología : en régimen permanente en un conexión de larga vida –Cuantos paquetes se TX por ciclo ? –Cual es la duración de un ciclo?

Ciclos Sea W el maximo valor Por definicion de Congestion Avoidance la ventana minima debe ser W/2

Análisis de un Ciclo

Ciclo Dado indice de packet loss al final del ciclo

Throughput

TCP Model

TCP congestion control Limitando el throughput Cesnet  Uninett: MSS=1460 bytes, RTT=44ms, packet loss rate~5*10 -6, Timeout=250 ms Si aplicamos la ecuacion de Padhye [3] : BW ~ Mb/s Con la ecuacion que acabamos de presentar [2] : Mbps