Capa Transporte3-1 Capítulo 3: Capa Transporte - IV ELO322: Redes de Computadores Agustín J....

26
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 al texto Computer Networking: A Top Down Approach Featuring the Internet 3rd edition. Jim Kurose, Keith Ross Addison-Wesley, 2004. Material del curso anterior ELO322 del Prof. Tomás Arredondo Vidal

Transcript of Capa Transporte3-1 Capítulo 3: Capa Transporte - IV ELO322: Redes de Computadores Agustín J....

Page 1: 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 Transporte 3-1

Capiacutetulo 3 Capa Transporte - IVELO322 Redes de Computadores

Agustiacuten J Gonzaacutelez

Este material estaacute basado en Material de apoyo al texto Computer Networking A Top Down Approach Featuring the Internet 3rd edition Jim Kurose Keith Ross Addison-Wesley 2004

Material del curso anterior ELO322 del Prof Tomaacutes Arredondo Vidal

Capa Transporte 3-2

Capiacutetulo 3 Continuacioacuten

31 Servicios de la capa transporte

32 Multiplexing y demultiplexing

33 Transporte sin conexioacuten UDP

34 Principios de transferencia confiable de datos

35 Transporte orientado a la conexioacuten TCP Estructura de un segmento Transferencia confiable de

datos Control de flujo Administracioacuten de conexioacuten

36 Principios del control de congestioacuten

37 Control de congestioacuten en TCP

Capa Transporte 3-3

Principios del control de congestioacutenCongestioacuten Informalmente ldquodemasiadas fuentes enviando

demasiados datos demasiado raacutepido para que la red lo manejerdquo

Es distinto a control de flujo (entre dos aplicaciones) Manifestaciones

Peacuterdidas de paquetes (buffer overflow en routers) Grandes retardos (en las colas en los router)

Uno de los problemas top-10

Capa Transporte 3-4

Causascostos de congestioacuten

escenario 1 dos transmisores dos

receptores un router buffer tamantildeo

infinito sin retransmisioacuten λin datos enviados por la

aplicacioacuten (bytessec) λout datos recibidos por la

aplicacioacuten (bytessec) grandes retardos en

estado congestionado (muchos paquetes esperando en cola)

maacuteximo flujo posible (throughput = C) de datos

unlimited shared output link buffers (C = link capacity)

Host A

in original data

Host B

out

Capa Transporte 3-5

Causascostos de congestioacuten escenario 2

un router buffer finito transmisor retransmite paquetes perdidos

Buffer enlace de salida finito compartido

Host Ain original data

Host B

out

in original data plus

retransmitted data

Capa Transporte 3-6

Causascostos de congestioacuten escenario 2 (a) caso perfecto sin peacuterdidas ni retransmisiones λin = λrsquoin

(b) retransmisioacuten soacutelo en caso de peacuterdida de segmentos (no por

timeout prematuro) λrsquoin gt λout

(b) retransmisioacuten de paquetes hace que λrsquoin sea maacutes grande (que el

caso perfecto) para el mismo λout (No necesariamente R3 como cota) (c) retransmisiones innecesarias enlaces enviacutean muacuteltiples copias del

paquete (eg dos re-enviacuteos por paquete)

ldquocostosrdquo de congestioacuten maacutes trabajo (retransmisioacuten) para lograr el transporte de datos

ldquogoodputrdquo

R2

R2in

ou

t

b

R2

R2in

ou

t

a

R2

R2in

ou

t

c

R4

R3

Capa Transporte 3-7

Causascostos de congestioacuten

escenario 3 cuatro transmisores rutas con multihops timeoutretransmisiones

Q iquestQueacute pasa cuando λin

y λrsquoin se

incrementan

finite shared output link buffers

Host Ain original data

Host B out

in original data plus

retransmitted data

Capa Transporte 3-8

Causascostos de congestioacuten escenario 3

Otro ldquocostordquo de congestioacuten cuando se descartan paquetes cualquier

capacidad (router) usada anteriormente ldquoupstreamrdquo fue un recurso desperdiciado

Host A

Host B

out

Capa Transporte 3-9

Estrategias para control de congestioacuten

Control de congestioacuten extremo a extremo

No hay informacioacuten de realimentacioacuten expliacutecita de la red

La congestioacuten es inferida desde las peacuterdidas y retardos observados por terminales en los extremos

Es la estrategia usada por TCP

Control de congestioacuten asistido por la red

routers proveen realimentacioacuten a sistemas extremos Un Bit uacutenico indicando

congestioacuten (eg SNA DECbit TCPIP ECN ATM)

Expliacutecitamente se informa al Tx la tasa que el router puede soportar

Los podemos clasificar en dos grupos amplios

Capa Transporte 3-10

Caso de estudio Control de congestioacuten en ATM ABR (tecnologiacutea de red capa 3 y menores)ABR Available Bit Rate Es un servicio ldquoelaacutesticordquo o

flexible Si camino del Tx tiene

poca carga Tx deberiacutea usar ancho

de banda disponible Si camino de Tx estaacute

congestionado Tx reduce a un miacutenimo

la tasa garantizada

Celdas RM (resource

management) Enviadas a intervalos por Tx

entremedio de celdas de datos bits en celda RM modificados por

switches ndash en lenguaje ATM- (ldquoasistido por la redrdquo) Bit NI no incrementar tasa (=

congestioacuten moderada) Bit CI Congestion Indication

Celdas RM son retornadas al Tx

por el Rx con bits intactos ATM Asynchronous Transfer Mode

Capa Transporte 3-11

Caso de estudio Control de congestioacuten en ATM ABR

Campo ER (explicit rate) de dos bytes en celda RM Un Switch congestionado puede bajar valor de ER en la celda Tasa de enviacuteo del Tx se ajusta a la tasa miacutenima soportable en

el camino entre fuente y destino (la del switch maacutes criacutetico) Bit EFCI (explicit forward congestion indicator) en celdas

de datos es fijado a 1 por switch congestionado Si celda de datos precedente a celda RM tiene el EFCI

marcado el destino marca bit CI en celda RM retornada

Capa Transporte 3-12

Capiacutetulo 3 Continuacioacuten

31 Servicios de la capa transporte

32 Multiplexing y demultiplexing

33 Transporte sin conexioacuten UDP

34 Principios de transferencia confiable de datos

35 Transporte orientado a la conexioacuten TCP Estructura de un segmento Transferencia confiable de

datos Control de flujo Administracioacuten de conexioacuten

36 Principios del control de congestioacuten

37 Control de congestioacuten en TCP

Capa Transporte 3-13

Control de Congestioacuten en TCP Usa control extremo a extremo (sin

asistencia de la red) Tx limita su ventana de transmisioacuten

Si Rx tiene espacio aproximadamente

CongWin es dinaacutemica y funcioacuten de la congestioacuten percibida de la red

RcvWindow es el nuacutemero de segmentos (o bytes) que el Rx puede recibir en su buffer (y entonces el Tx puede enviar sin acuse de recibo)

iquestCoacutemo el Tx percibe la congestioacuten

Evento de peacuterdida = timeout oacute 3 acks duplicados

Tx TCP reduce tasa (CongWin) despueacutes de un evento de peacuterdida

Hay tres mecanismos AIMD (Additive-Increase

Multiplicative-Decrease) ldquoPartida lentardquo Conservativo despueacutes de

evento de timeout

tasa = CongWin

RTT Bytessec

LastByteSentminusLastByteAckedleminCongWin RcvWindow

Capa Transporte 3-14

TCP AIMD (Additive-Increase Multiplicative-Decrease)

Decrecimiento multiplicativo reducir CongWin a la mitad luego de peacuterdida

Aumento aditivo aumenta CongWin en 1 MSS cada RTT en ausencia de peacuterdida En algunas implementaciones CongWin incrementa en MSSx(MSSCongWin) por cada ACK

MSS (Maximum Segment Size) es la maacutexima cantidad de datos que se pueden enviar en cada segmento

Capa Transporte 3-15

Partida lenta en TCP (slow start)

Cuando la conexioacuten comienza CongWin = 1 MSS Ejemplo MSS = 500 bytes amp

RTT = 200 msec Tasa inicial = 20 kbps

Ancho de banda disponible puede ser gtgt MSSRTT Es deseable aumentar

raacutepidamente hasta una tasa respetable

Cuando la conexioacuten comienza aumentar tasa exponencialmente raacutepido hasta tener primer evento de peacuterdida

Slow Start porque parte muy tiacutemidamente

Capa Transporte 3-16

Partida Lenta en TCP (maacutes)

Cuando la conexioacuten comienza aumentar tasa exponencialmente hasta primera peacuterdida Duplicar CongWin cada

RTT Es hecho incrementando CongWin en 1 MSS por cada ACK recibido

Resumen tasa inicial es lenta pero se acelera exponencialmente raacutepido

Host A

one segment

RTT

Host B

time

two segments

four segments

Capa Transporte 3-17

Refinamiento a Partida Lenta en TCP Despueacutes de 3 ACKs

duplicados CongWin baja a la mitad Luego la ventana crece

linealmente Despueacutes de un timeout

CongWin es fijada en 1 MSS

Luego la ventana crece exponencialmente hasta un umbral luego crece linealmente

bull3 ACKs duplicados indican la red es capaz de transportar algunos segmentos (soacutelo llegan fuera de orden en el Rx) Se perdioacute uno pero llegaron los otros y por eso tenemos ACKs duplicadosbull timeout antes de 3 duplicados es ldquomaacutes alarmanterdquo (no llegaron)

Filosofiacutea

Capa Transporte 3-18

Refinamiento a Partida Lenta en TCP (cont)

Q iquestCuaacutendo deberiacutea cambiar el aumento de exponencial a lineal

A Un buen criterio es Cuando CongWin llega a 12 de su valor antes del timeout

Implementacioacuten Umbral variable (variable

threshold) Ante evento de peacuterdidas el

umbral es fijado en 12 de CongWin justo antes de la peacuterdida

Tahoe primera versioacuten de control de congestioacuten en TCP No distinguiacutea entre timeout o ACK duplicadosReno versioacuten siguiente en TCP Siacute distingue timeout de ACK duplicados Es como TCP opera hoy

3 ACKs Duplicados

Evento

umbral

Mejor

Capa Transporte 3-19

Resumen Control de Congestioacuten en TCP Cuando CongWin estaacute bajo el Threshold (umbral) Tx estaacute en fase slow-start la ventana de transmisioacuten crece exponencialmente

Cuando CongWin estaacute sobre Threshold Tx estaacute en fase abolicioacuten de congestioacuten la ventana crece linealmente

Cuando llegan tres ACK duplicados Threshold pasa a CongWin2 y CongWin pasa a Threshold

Cuando ocurre un timeout Threshold pasa a CongWin2 y CongWin se lleva a 1 MSS

Capa Transporte 3-20

Control de congestioacuten del Tx TCP

SS or CA

SS or CA

SS or CA

CongestionAvoidance (CA)

Slow Start (SS)

State

CongWin y Threshold no cambian

Increment duplicate ACK count for segment being acked

Duplicate ACK

Ingresa a Partida Lenta (slow start)

Threshold = CongWin2 CongWin = 1 MSSSet state to ldquoSlow Startrdquo

Timeout

Recuperacioacuten raacutepida implementando reduccioacuten multiplicativa CongWin no caeraacute bajo 1 MSS

Threshold = CongWin2 CongWin = ThresholdSet state to ldquoCongestion Avoidancerdquo

Loss event detected by triple duplicate ACK

Aumento aditivo resulta en aumento de CongWin en (aproximadamente) 1 MSS cada RTT

CongWin = CongWin+MSS (MSSCongWin)

ACK receipt for previously unacked data

Resulta en una duplicacioacuten de CongWin cada RTT

CongWin = CongWin + MSS If (CongWin gt Threshold) set state to ldquoCongestion Avoidancerdquo

ACK receipt for previously unacked data

CommentaryTCP Sender Action Event

Capa Transporte 3-21

Throughput Simplificado de TCP (tasa de transferencia de datos lograda) iquestCuaacutel es el throughput promedio de TCP como una

funcioacuten del tamantildeo de ventana CongWin y RTT Ignoremos slow start ya que al ser exponencial es una fase

muy corta TCP pide ancho de banda adiciona al incrementar W en

1 MSS por cada RTT hasta una peacuterdida Sea W el tamantildeo de la ventana (en bytes) cuando

ocurre una peacuterdida Cuando la ventana es W el throughput es WRTT Justo despueacutes de la peacuterdida la ventana cae a W2 y el

throughput a W2RTT Throughput promedio entre W2RTT y WRTT es 075

WRTT Esto debido a que el throughput crece linealmente entre

ambos valores

Capa Transporte 3-22

Futuro de TCP Ejemplo segmentos de 1500 bytes RTT de

100ms queremos throughput de 10 Gbps Requiere tamantildeo de ventana CongWin W =

83333 (segmentos en traacutensito) Throughput en teacuterminos de tasa de peacuterdida (L) es

L=(bytes perdidos)(Nuacutemero total enviados) Para el throughput deseado con el algoritmo de

control de congestioacuten actual se toleran probabilidades de peacuterdida de soacutelo L = 210-10 Wow (1 cada 5 mil millones de segmentos)

Se requieren nuevas versiones de TCP para enlaces de alta velocidad (ver RFC 3649)

AvgThroughput= 122lowastMSSRTT L

Capa Transporte 3-23

Objetivo de la Equidad (fairness) Si K sesiones TCP comparten un mismo enlace de ancho de banda R cada uno deberiacutea tener una tasa promedio de RK

TCP connection 1

Router cuello de botella decapacidad R

TCP connection 2

Equidad en TCP

Capa Transporte 3-24

iquestPor queacute TCP es justaSupongamos dos sesiones compitiendo Aumento aditivo da pendiente de 1 como aumento de throughout Reduccioacuten multiplicativa reduce throughput proporcionalmente

R

R

Igual bandwidth compartido

Throughput Conexioacuten 1

Th

roughput

Con

exioacute

n 2

Peacuterdida decrece ancho de banda en factor de 2

Abolicioacuten de congestioacuten aumento aditivo

Abolicioacuten de congestioacuten aumento aditivo

Peacuterdida decrece ancho de banda en factor de 2

Capa Transporte 3-25

Equidad (maacutes)

Equidad y UDP Aplicaciones Multimedia

no usan TCP No quieren tasa ahogada

por control de congestioacuten

En su lugar usan UDP Enviacutean audioviacutedeo a tasa

constante y toleran peacuterdidas de paquetes

Aacuterea de investigacioacuten Hacerlas amistosas con TCP (TCP friendly)

Equidad y conexiones TCP paralelas

Nada previene a las aplicaciones de abrir conexiones paralelas entre dos hosts

Navegadores WEB hacen esto Ejemplo Sea un enlace de

tasa R soportando 9 conexiones Una aplicacioacuten nueva pide 1

conexioacuten TCP obtendraacute R10 Si la aplicacioacuten nueva pide 11

conexiones TCP obtendraacute 11R20 maacutes de R2

Capa Transporte 3-26

Capiacutetulo 3 Resumen

Principios detraacutes de los servicios de capa transporte multiplexing demultiplexing Transferencia confiable de

datos Control de flujo Control de congestioacuten

Uso e implementacioacuten en Internet UDP TCP

A continuacioacuten Dejaremos la

ldquoperiferiardquo o ldquoedgerdquo de la red (capas aplicacioacuten y transporte)

Nos internaremos en el centro de la red ldquonetwork corerdquo

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
Page 2: 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 Transporte 3-2

Capiacutetulo 3 Continuacioacuten

31 Servicios de la capa transporte

32 Multiplexing y demultiplexing

33 Transporte sin conexioacuten UDP

34 Principios de transferencia confiable de datos

35 Transporte orientado a la conexioacuten TCP Estructura de un segmento Transferencia confiable de

datos Control de flujo Administracioacuten de conexioacuten

36 Principios del control de congestioacuten

37 Control de congestioacuten en TCP

Capa Transporte 3-3

Principios del control de congestioacutenCongestioacuten Informalmente ldquodemasiadas fuentes enviando

demasiados datos demasiado raacutepido para que la red lo manejerdquo

Es distinto a control de flujo (entre dos aplicaciones) Manifestaciones

Peacuterdidas de paquetes (buffer overflow en routers) Grandes retardos (en las colas en los router)

Uno de los problemas top-10

Capa Transporte 3-4

Causascostos de congestioacuten

escenario 1 dos transmisores dos

receptores un router buffer tamantildeo

infinito sin retransmisioacuten λin datos enviados por la

aplicacioacuten (bytessec) λout datos recibidos por la

aplicacioacuten (bytessec) grandes retardos en

estado congestionado (muchos paquetes esperando en cola)

maacuteximo flujo posible (throughput = C) de datos

unlimited shared output link buffers (C = link capacity)

Host A

in original data

Host B

out

Capa Transporte 3-5

Causascostos de congestioacuten escenario 2

un router buffer finito transmisor retransmite paquetes perdidos

Buffer enlace de salida finito compartido

Host Ain original data

Host B

out

in original data plus

retransmitted data

Capa Transporte 3-6

Causascostos de congestioacuten escenario 2 (a) caso perfecto sin peacuterdidas ni retransmisiones λin = λrsquoin

(b) retransmisioacuten soacutelo en caso de peacuterdida de segmentos (no por

timeout prematuro) λrsquoin gt λout

(b) retransmisioacuten de paquetes hace que λrsquoin sea maacutes grande (que el

caso perfecto) para el mismo λout (No necesariamente R3 como cota) (c) retransmisiones innecesarias enlaces enviacutean muacuteltiples copias del

paquete (eg dos re-enviacuteos por paquete)

ldquocostosrdquo de congestioacuten maacutes trabajo (retransmisioacuten) para lograr el transporte de datos

ldquogoodputrdquo

R2

R2in

ou

t

b

R2

R2in

ou

t

a

R2

R2in

ou

t

c

R4

R3

Capa Transporte 3-7

Causascostos de congestioacuten

escenario 3 cuatro transmisores rutas con multihops timeoutretransmisiones

Q iquestQueacute pasa cuando λin

y λrsquoin se

incrementan

finite shared output link buffers

Host Ain original data

Host B out

in original data plus

retransmitted data

Capa Transporte 3-8

Causascostos de congestioacuten escenario 3

Otro ldquocostordquo de congestioacuten cuando se descartan paquetes cualquier

capacidad (router) usada anteriormente ldquoupstreamrdquo fue un recurso desperdiciado

Host A

Host B

out

Capa Transporte 3-9

Estrategias para control de congestioacuten

Control de congestioacuten extremo a extremo

No hay informacioacuten de realimentacioacuten expliacutecita de la red

La congestioacuten es inferida desde las peacuterdidas y retardos observados por terminales en los extremos

Es la estrategia usada por TCP

Control de congestioacuten asistido por la red

routers proveen realimentacioacuten a sistemas extremos Un Bit uacutenico indicando

congestioacuten (eg SNA DECbit TCPIP ECN ATM)

Expliacutecitamente se informa al Tx la tasa que el router puede soportar

Los podemos clasificar en dos grupos amplios

Capa Transporte 3-10

Caso de estudio Control de congestioacuten en ATM ABR (tecnologiacutea de red capa 3 y menores)ABR Available Bit Rate Es un servicio ldquoelaacutesticordquo o

flexible Si camino del Tx tiene

poca carga Tx deberiacutea usar ancho

de banda disponible Si camino de Tx estaacute

congestionado Tx reduce a un miacutenimo

la tasa garantizada

Celdas RM (resource

management) Enviadas a intervalos por Tx

entremedio de celdas de datos bits en celda RM modificados por

switches ndash en lenguaje ATM- (ldquoasistido por la redrdquo) Bit NI no incrementar tasa (=

congestioacuten moderada) Bit CI Congestion Indication

Celdas RM son retornadas al Tx

por el Rx con bits intactos ATM Asynchronous Transfer Mode

Capa Transporte 3-11

Caso de estudio Control de congestioacuten en ATM ABR

Campo ER (explicit rate) de dos bytes en celda RM Un Switch congestionado puede bajar valor de ER en la celda Tasa de enviacuteo del Tx se ajusta a la tasa miacutenima soportable en

el camino entre fuente y destino (la del switch maacutes criacutetico) Bit EFCI (explicit forward congestion indicator) en celdas

de datos es fijado a 1 por switch congestionado Si celda de datos precedente a celda RM tiene el EFCI

marcado el destino marca bit CI en celda RM retornada

Capa Transporte 3-12

Capiacutetulo 3 Continuacioacuten

31 Servicios de la capa transporte

32 Multiplexing y demultiplexing

33 Transporte sin conexioacuten UDP

34 Principios de transferencia confiable de datos

35 Transporte orientado a la conexioacuten TCP Estructura de un segmento Transferencia confiable de

datos Control de flujo Administracioacuten de conexioacuten

36 Principios del control de congestioacuten

37 Control de congestioacuten en TCP

Capa Transporte 3-13

Control de Congestioacuten en TCP Usa control extremo a extremo (sin

asistencia de la red) Tx limita su ventana de transmisioacuten

Si Rx tiene espacio aproximadamente

CongWin es dinaacutemica y funcioacuten de la congestioacuten percibida de la red

RcvWindow es el nuacutemero de segmentos (o bytes) que el Rx puede recibir en su buffer (y entonces el Tx puede enviar sin acuse de recibo)

iquestCoacutemo el Tx percibe la congestioacuten

Evento de peacuterdida = timeout oacute 3 acks duplicados

Tx TCP reduce tasa (CongWin) despueacutes de un evento de peacuterdida

Hay tres mecanismos AIMD (Additive-Increase

Multiplicative-Decrease) ldquoPartida lentardquo Conservativo despueacutes de

evento de timeout

tasa = CongWin

RTT Bytessec

LastByteSentminusLastByteAckedleminCongWin RcvWindow

Capa Transporte 3-14

TCP AIMD (Additive-Increase Multiplicative-Decrease)

Decrecimiento multiplicativo reducir CongWin a la mitad luego de peacuterdida

Aumento aditivo aumenta CongWin en 1 MSS cada RTT en ausencia de peacuterdida En algunas implementaciones CongWin incrementa en MSSx(MSSCongWin) por cada ACK

MSS (Maximum Segment Size) es la maacutexima cantidad de datos que se pueden enviar en cada segmento

Capa Transporte 3-15

Partida lenta en TCP (slow start)

Cuando la conexioacuten comienza CongWin = 1 MSS Ejemplo MSS = 500 bytes amp

RTT = 200 msec Tasa inicial = 20 kbps

Ancho de banda disponible puede ser gtgt MSSRTT Es deseable aumentar

raacutepidamente hasta una tasa respetable

Cuando la conexioacuten comienza aumentar tasa exponencialmente raacutepido hasta tener primer evento de peacuterdida

Slow Start porque parte muy tiacutemidamente

Capa Transporte 3-16

Partida Lenta en TCP (maacutes)

Cuando la conexioacuten comienza aumentar tasa exponencialmente hasta primera peacuterdida Duplicar CongWin cada

RTT Es hecho incrementando CongWin en 1 MSS por cada ACK recibido

Resumen tasa inicial es lenta pero se acelera exponencialmente raacutepido

Host A

one segment

RTT

Host B

time

two segments

four segments

Capa Transporte 3-17

Refinamiento a Partida Lenta en TCP Despueacutes de 3 ACKs

duplicados CongWin baja a la mitad Luego la ventana crece

linealmente Despueacutes de un timeout

CongWin es fijada en 1 MSS

Luego la ventana crece exponencialmente hasta un umbral luego crece linealmente

bull3 ACKs duplicados indican la red es capaz de transportar algunos segmentos (soacutelo llegan fuera de orden en el Rx) Se perdioacute uno pero llegaron los otros y por eso tenemos ACKs duplicadosbull timeout antes de 3 duplicados es ldquomaacutes alarmanterdquo (no llegaron)

Filosofiacutea

Capa Transporte 3-18

Refinamiento a Partida Lenta en TCP (cont)

Q iquestCuaacutendo deberiacutea cambiar el aumento de exponencial a lineal

A Un buen criterio es Cuando CongWin llega a 12 de su valor antes del timeout

Implementacioacuten Umbral variable (variable

threshold) Ante evento de peacuterdidas el

umbral es fijado en 12 de CongWin justo antes de la peacuterdida

Tahoe primera versioacuten de control de congestioacuten en TCP No distinguiacutea entre timeout o ACK duplicadosReno versioacuten siguiente en TCP Siacute distingue timeout de ACK duplicados Es como TCP opera hoy

3 ACKs Duplicados

Evento

umbral

Mejor

Capa Transporte 3-19

Resumen Control de Congestioacuten en TCP Cuando CongWin estaacute bajo el Threshold (umbral) Tx estaacute en fase slow-start la ventana de transmisioacuten crece exponencialmente

Cuando CongWin estaacute sobre Threshold Tx estaacute en fase abolicioacuten de congestioacuten la ventana crece linealmente

Cuando llegan tres ACK duplicados Threshold pasa a CongWin2 y CongWin pasa a Threshold

Cuando ocurre un timeout Threshold pasa a CongWin2 y CongWin se lleva a 1 MSS

Capa Transporte 3-20

Control de congestioacuten del Tx TCP

SS or CA

SS or CA

SS or CA

CongestionAvoidance (CA)

Slow Start (SS)

State

CongWin y Threshold no cambian

Increment duplicate ACK count for segment being acked

Duplicate ACK

Ingresa a Partida Lenta (slow start)

Threshold = CongWin2 CongWin = 1 MSSSet state to ldquoSlow Startrdquo

Timeout

Recuperacioacuten raacutepida implementando reduccioacuten multiplicativa CongWin no caeraacute bajo 1 MSS

Threshold = CongWin2 CongWin = ThresholdSet state to ldquoCongestion Avoidancerdquo

Loss event detected by triple duplicate ACK

Aumento aditivo resulta en aumento de CongWin en (aproximadamente) 1 MSS cada RTT

CongWin = CongWin+MSS (MSSCongWin)

ACK receipt for previously unacked data

Resulta en una duplicacioacuten de CongWin cada RTT

CongWin = CongWin + MSS If (CongWin gt Threshold) set state to ldquoCongestion Avoidancerdquo

ACK receipt for previously unacked data

CommentaryTCP Sender Action Event

Capa Transporte 3-21

Throughput Simplificado de TCP (tasa de transferencia de datos lograda) iquestCuaacutel es el throughput promedio de TCP como una

funcioacuten del tamantildeo de ventana CongWin y RTT Ignoremos slow start ya que al ser exponencial es una fase

muy corta TCP pide ancho de banda adiciona al incrementar W en

1 MSS por cada RTT hasta una peacuterdida Sea W el tamantildeo de la ventana (en bytes) cuando

ocurre una peacuterdida Cuando la ventana es W el throughput es WRTT Justo despueacutes de la peacuterdida la ventana cae a W2 y el

throughput a W2RTT Throughput promedio entre W2RTT y WRTT es 075

WRTT Esto debido a que el throughput crece linealmente entre

ambos valores

Capa Transporte 3-22

Futuro de TCP Ejemplo segmentos de 1500 bytes RTT de

100ms queremos throughput de 10 Gbps Requiere tamantildeo de ventana CongWin W =

83333 (segmentos en traacutensito) Throughput en teacuterminos de tasa de peacuterdida (L) es

L=(bytes perdidos)(Nuacutemero total enviados) Para el throughput deseado con el algoritmo de

control de congestioacuten actual se toleran probabilidades de peacuterdida de soacutelo L = 210-10 Wow (1 cada 5 mil millones de segmentos)

Se requieren nuevas versiones de TCP para enlaces de alta velocidad (ver RFC 3649)

AvgThroughput= 122lowastMSSRTT L

Capa Transporte 3-23

Objetivo de la Equidad (fairness) Si K sesiones TCP comparten un mismo enlace de ancho de banda R cada uno deberiacutea tener una tasa promedio de RK

TCP connection 1

Router cuello de botella decapacidad R

TCP connection 2

Equidad en TCP

Capa Transporte 3-24

iquestPor queacute TCP es justaSupongamos dos sesiones compitiendo Aumento aditivo da pendiente de 1 como aumento de throughout Reduccioacuten multiplicativa reduce throughput proporcionalmente

R

R

Igual bandwidth compartido

Throughput Conexioacuten 1

Th

roughput

Con

exioacute

n 2

Peacuterdida decrece ancho de banda en factor de 2

Abolicioacuten de congestioacuten aumento aditivo

Abolicioacuten de congestioacuten aumento aditivo

Peacuterdida decrece ancho de banda en factor de 2

Capa Transporte 3-25

Equidad (maacutes)

Equidad y UDP Aplicaciones Multimedia

no usan TCP No quieren tasa ahogada

por control de congestioacuten

En su lugar usan UDP Enviacutean audioviacutedeo a tasa

constante y toleran peacuterdidas de paquetes

Aacuterea de investigacioacuten Hacerlas amistosas con TCP (TCP friendly)

Equidad y conexiones TCP paralelas

Nada previene a las aplicaciones de abrir conexiones paralelas entre dos hosts

Navegadores WEB hacen esto Ejemplo Sea un enlace de

tasa R soportando 9 conexiones Una aplicacioacuten nueva pide 1

conexioacuten TCP obtendraacute R10 Si la aplicacioacuten nueva pide 11

conexiones TCP obtendraacute 11R20 maacutes de R2

Capa Transporte 3-26

Capiacutetulo 3 Resumen

Principios detraacutes de los servicios de capa transporte multiplexing demultiplexing Transferencia confiable de

datos Control de flujo Control de congestioacuten

Uso e implementacioacuten en Internet UDP TCP

A continuacioacuten Dejaremos la

ldquoperiferiardquo o ldquoedgerdquo de la red (capas aplicacioacuten y transporte)

Nos internaremos en el centro de la red ldquonetwork corerdquo

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
Page 3: 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 Transporte 3-3

Principios del control de congestioacutenCongestioacuten Informalmente ldquodemasiadas fuentes enviando

demasiados datos demasiado raacutepido para que la red lo manejerdquo

Es distinto a control de flujo (entre dos aplicaciones) Manifestaciones

Peacuterdidas de paquetes (buffer overflow en routers) Grandes retardos (en las colas en los router)

Uno de los problemas top-10

Capa Transporte 3-4

Causascostos de congestioacuten

escenario 1 dos transmisores dos

receptores un router buffer tamantildeo

infinito sin retransmisioacuten λin datos enviados por la

aplicacioacuten (bytessec) λout datos recibidos por la

aplicacioacuten (bytessec) grandes retardos en

estado congestionado (muchos paquetes esperando en cola)

maacuteximo flujo posible (throughput = C) de datos

unlimited shared output link buffers (C = link capacity)

Host A

in original data

Host B

out

Capa Transporte 3-5

Causascostos de congestioacuten escenario 2

un router buffer finito transmisor retransmite paquetes perdidos

Buffer enlace de salida finito compartido

Host Ain original data

Host B

out

in original data plus

retransmitted data

Capa Transporte 3-6

Causascostos de congestioacuten escenario 2 (a) caso perfecto sin peacuterdidas ni retransmisiones λin = λrsquoin

(b) retransmisioacuten soacutelo en caso de peacuterdida de segmentos (no por

timeout prematuro) λrsquoin gt λout

(b) retransmisioacuten de paquetes hace que λrsquoin sea maacutes grande (que el

caso perfecto) para el mismo λout (No necesariamente R3 como cota) (c) retransmisiones innecesarias enlaces enviacutean muacuteltiples copias del

paquete (eg dos re-enviacuteos por paquete)

ldquocostosrdquo de congestioacuten maacutes trabajo (retransmisioacuten) para lograr el transporte de datos

ldquogoodputrdquo

R2

R2in

ou

t

b

R2

R2in

ou

t

a

R2

R2in

ou

t

c

R4

R3

Capa Transporte 3-7

Causascostos de congestioacuten

escenario 3 cuatro transmisores rutas con multihops timeoutretransmisiones

Q iquestQueacute pasa cuando λin

y λrsquoin se

incrementan

finite shared output link buffers

Host Ain original data

Host B out

in original data plus

retransmitted data

Capa Transporte 3-8

Causascostos de congestioacuten escenario 3

Otro ldquocostordquo de congestioacuten cuando se descartan paquetes cualquier

capacidad (router) usada anteriormente ldquoupstreamrdquo fue un recurso desperdiciado

Host A

Host B

out

Capa Transporte 3-9

Estrategias para control de congestioacuten

Control de congestioacuten extremo a extremo

No hay informacioacuten de realimentacioacuten expliacutecita de la red

La congestioacuten es inferida desde las peacuterdidas y retardos observados por terminales en los extremos

Es la estrategia usada por TCP

Control de congestioacuten asistido por la red

routers proveen realimentacioacuten a sistemas extremos Un Bit uacutenico indicando

congestioacuten (eg SNA DECbit TCPIP ECN ATM)

Expliacutecitamente se informa al Tx la tasa que el router puede soportar

Los podemos clasificar en dos grupos amplios

Capa Transporte 3-10

Caso de estudio Control de congestioacuten en ATM ABR (tecnologiacutea de red capa 3 y menores)ABR Available Bit Rate Es un servicio ldquoelaacutesticordquo o

flexible Si camino del Tx tiene

poca carga Tx deberiacutea usar ancho

de banda disponible Si camino de Tx estaacute

congestionado Tx reduce a un miacutenimo

la tasa garantizada

Celdas RM (resource

management) Enviadas a intervalos por Tx

entremedio de celdas de datos bits en celda RM modificados por

switches ndash en lenguaje ATM- (ldquoasistido por la redrdquo) Bit NI no incrementar tasa (=

congestioacuten moderada) Bit CI Congestion Indication

Celdas RM son retornadas al Tx

por el Rx con bits intactos ATM Asynchronous Transfer Mode

Capa Transporte 3-11

Caso de estudio Control de congestioacuten en ATM ABR

Campo ER (explicit rate) de dos bytes en celda RM Un Switch congestionado puede bajar valor de ER en la celda Tasa de enviacuteo del Tx se ajusta a la tasa miacutenima soportable en

el camino entre fuente y destino (la del switch maacutes criacutetico) Bit EFCI (explicit forward congestion indicator) en celdas

de datos es fijado a 1 por switch congestionado Si celda de datos precedente a celda RM tiene el EFCI

marcado el destino marca bit CI en celda RM retornada

Capa Transporte 3-12

Capiacutetulo 3 Continuacioacuten

31 Servicios de la capa transporte

32 Multiplexing y demultiplexing

33 Transporte sin conexioacuten UDP

34 Principios de transferencia confiable de datos

35 Transporte orientado a la conexioacuten TCP Estructura de un segmento Transferencia confiable de

datos Control de flujo Administracioacuten de conexioacuten

36 Principios del control de congestioacuten

37 Control de congestioacuten en TCP

Capa Transporte 3-13

Control de Congestioacuten en TCP Usa control extremo a extremo (sin

asistencia de la red) Tx limita su ventana de transmisioacuten

Si Rx tiene espacio aproximadamente

CongWin es dinaacutemica y funcioacuten de la congestioacuten percibida de la red

RcvWindow es el nuacutemero de segmentos (o bytes) que el Rx puede recibir en su buffer (y entonces el Tx puede enviar sin acuse de recibo)

iquestCoacutemo el Tx percibe la congestioacuten

Evento de peacuterdida = timeout oacute 3 acks duplicados

Tx TCP reduce tasa (CongWin) despueacutes de un evento de peacuterdida

Hay tres mecanismos AIMD (Additive-Increase

Multiplicative-Decrease) ldquoPartida lentardquo Conservativo despueacutes de

evento de timeout

tasa = CongWin

RTT Bytessec

LastByteSentminusLastByteAckedleminCongWin RcvWindow

Capa Transporte 3-14

TCP AIMD (Additive-Increase Multiplicative-Decrease)

Decrecimiento multiplicativo reducir CongWin a la mitad luego de peacuterdida

Aumento aditivo aumenta CongWin en 1 MSS cada RTT en ausencia de peacuterdida En algunas implementaciones CongWin incrementa en MSSx(MSSCongWin) por cada ACK

MSS (Maximum Segment Size) es la maacutexima cantidad de datos que se pueden enviar en cada segmento

Capa Transporte 3-15

Partida lenta en TCP (slow start)

Cuando la conexioacuten comienza CongWin = 1 MSS Ejemplo MSS = 500 bytes amp

RTT = 200 msec Tasa inicial = 20 kbps

Ancho de banda disponible puede ser gtgt MSSRTT Es deseable aumentar

raacutepidamente hasta una tasa respetable

Cuando la conexioacuten comienza aumentar tasa exponencialmente raacutepido hasta tener primer evento de peacuterdida

Slow Start porque parte muy tiacutemidamente

Capa Transporte 3-16

Partida Lenta en TCP (maacutes)

Cuando la conexioacuten comienza aumentar tasa exponencialmente hasta primera peacuterdida Duplicar CongWin cada

RTT Es hecho incrementando CongWin en 1 MSS por cada ACK recibido

Resumen tasa inicial es lenta pero se acelera exponencialmente raacutepido

Host A

one segment

RTT

Host B

time

two segments

four segments

Capa Transporte 3-17

Refinamiento a Partida Lenta en TCP Despueacutes de 3 ACKs

duplicados CongWin baja a la mitad Luego la ventana crece

linealmente Despueacutes de un timeout

CongWin es fijada en 1 MSS

Luego la ventana crece exponencialmente hasta un umbral luego crece linealmente

bull3 ACKs duplicados indican la red es capaz de transportar algunos segmentos (soacutelo llegan fuera de orden en el Rx) Se perdioacute uno pero llegaron los otros y por eso tenemos ACKs duplicadosbull timeout antes de 3 duplicados es ldquomaacutes alarmanterdquo (no llegaron)

Filosofiacutea

Capa Transporte 3-18

Refinamiento a Partida Lenta en TCP (cont)

Q iquestCuaacutendo deberiacutea cambiar el aumento de exponencial a lineal

A Un buen criterio es Cuando CongWin llega a 12 de su valor antes del timeout

Implementacioacuten Umbral variable (variable

threshold) Ante evento de peacuterdidas el

umbral es fijado en 12 de CongWin justo antes de la peacuterdida

Tahoe primera versioacuten de control de congestioacuten en TCP No distinguiacutea entre timeout o ACK duplicadosReno versioacuten siguiente en TCP Siacute distingue timeout de ACK duplicados Es como TCP opera hoy

3 ACKs Duplicados

Evento

umbral

Mejor

Capa Transporte 3-19

Resumen Control de Congestioacuten en TCP Cuando CongWin estaacute bajo el Threshold (umbral) Tx estaacute en fase slow-start la ventana de transmisioacuten crece exponencialmente

Cuando CongWin estaacute sobre Threshold Tx estaacute en fase abolicioacuten de congestioacuten la ventana crece linealmente

Cuando llegan tres ACK duplicados Threshold pasa a CongWin2 y CongWin pasa a Threshold

Cuando ocurre un timeout Threshold pasa a CongWin2 y CongWin se lleva a 1 MSS

Capa Transporte 3-20

Control de congestioacuten del Tx TCP

SS or CA

SS or CA

SS or CA

CongestionAvoidance (CA)

Slow Start (SS)

State

CongWin y Threshold no cambian

Increment duplicate ACK count for segment being acked

Duplicate ACK

Ingresa a Partida Lenta (slow start)

Threshold = CongWin2 CongWin = 1 MSSSet state to ldquoSlow Startrdquo

Timeout

Recuperacioacuten raacutepida implementando reduccioacuten multiplicativa CongWin no caeraacute bajo 1 MSS

Threshold = CongWin2 CongWin = ThresholdSet state to ldquoCongestion Avoidancerdquo

Loss event detected by triple duplicate ACK

Aumento aditivo resulta en aumento de CongWin en (aproximadamente) 1 MSS cada RTT

CongWin = CongWin+MSS (MSSCongWin)

ACK receipt for previously unacked data

Resulta en una duplicacioacuten de CongWin cada RTT

CongWin = CongWin + MSS If (CongWin gt Threshold) set state to ldquoCongestion Avoidancerdquo

ACK receipt for previously unacked data

CommentaryTCP Sender Action Event

Capa Transporte 3-21

Throughput Simplificado de TCP (tasa de transferencia de datos lograda) iquestCuaacutel es el throughput promedio de TCP como una

funcioacuten del tamantildeo de ventana CongWin y RTT Ignoremos slow start ya que al ser exponencial es una fase

muy corta TCP pide ancho de banda adiciona al incrementar W en

1 MSS por cada RTT hasta una peacuterdida Sea W el tamantildeo de la ventana (en bytes) cuando

ocurre una peacuterdida Cuando la ventana es W el throughput es WRTT Justo despueacutes de la peacuterdida la ventana cae a W2 y el

throughput a W2RTT Throughput promedio entre W2RTT y WRTT es 075

WRTT Esto debido a que el throughput crece linealmente entre

ambos valores

Capa Transporte 3-22

Futuro de TCP Ejemplo segmentos de 1500 bytes RTT de

100ms queremos throughput de 10 Gbps Requiere tamantildeo de ventana CongWin W =

83333 (segmentos en traacutensito) Throughput en teacuterminos de tasa de peacuterdida (L) es

L=(bytes perdidos)(Nuacutemero total enviados) Para el throughput deseado con el algoritmo de

control de congestioacuten actual se toleran probabilidades de peacuterdida de soacutelo L = 210-10 Wow (1 cada 5 mil millones de segmentos)

Se requieren nuevas versiones de TCP para enlaces de alta velocidad (ver RFC 3649)

AvgThroughput= 122lowastMSSRTT L

Capa Transporte 3-23

Objetivo de la Equidad (fairness) Si K sesiones TCP comparten un mismo enlace de ancho de banda R cada uno deberiacutea tener una tasa promedio de RK

TCP connection 1

Router cuello de botella decapacidad R

TCP connection 2

Equidad en TCP

Capa Transporte 3-24

iquestPor queacute TCP es justaSupongamos dos sesiones compitiendo Aumento aditivo da pendiente de 1 como aumento de throughout Reduccioacuten multiplicativa reduce throughput proporcionalmente

R

R

Igual bandwidth compartido

Throughput Conexioacuten 1

Th

roughput

Con

exioacute

n 2

Peacuterdida decrece ancho de banda en factor de 2

Abolicioacuten de congestioacuten aumento aditivo

Abolicioacuten de congestioacuten aumento aditivo

Peacuterdida decrece ancho de banda en factor de 2

Capa Transporte 3-25

Equidad (maacutes)

Equidad y UDP Aplicaciones Multimedia

no usan TCP No quieren tasa ahogada

por control de congestioacuten

En su lugar usan UDP Enviacutean audioviacutedeo a tasa

constante y toleran peacuterdidas de paquetes

Aacuterea de investigacioacuten Hacerlas amistosas con TCP (TCP friendly)

Equidad y conexiones TCP paralelas

Nada previene a las aplicaciones de abrir conexiones paralelas entre dos hosts

Navegadores WEB hacen esto Ejemplo Sea un enlace de

tasa R soportando 9 conexiones Una aplicacioacuten nueva pide 1

conexioacuten TCP obtendraacute R10 Si la aplicacioacuten nueva pide 11

conexiones TCP obtendraacute 11R20 maacutes de R2

Capa Transporte 3-26

Capiacutetulo 3 Resumen

Principios detraacutes de los servicios de capa transporte multiplexing demultiplexing Transferencia confiable de

datos Control de flujo Control de congestioacuten

Uso e implementacioacuten en Internet UDP TCP

A continuacioacuten Dejaremos la

ldquoperiferiardquo o ldquoedgerdquo de la red (capas aplicacioacuten y transporte)

Nos internaremos en el centro de la red ldquonetwork corerdquo

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
Page 4: 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 Transporte 3-4

Causascostos de congestioacuten

escenario 1 dos transmisores dos

receptores un router buffer tamantildeo

infinito sin retransmisioacuten λin datos enviados por la

aplicacioacuten (bytessec) λout datos recibidos por la

aplicacioacuten (bytessec) grandes retardos en

estado congestionado (muchos paquetes esperando en cola)

maacuteximo flujo posible (throughput = C) de datos

unlimited shared output link buffers (C = link capacity)

Host A

in original data

Host B

out

Capa Transporte 3-5

Causascostos de congestioacuten escenario 2

un router buffer finito transmisor retransmite paquetes perdidos

Buffer enlace de salida finito compartido

Host Ain original data

Host B

out

in original data plus

retransmitted data

Capa Transporte 3-6

Causascostos de congestioacuten escenario 2 (a) caso perfecto sin peacuterdidas ni retransmisiones λin = λrsquoin

(b) retransmisioacuten soacutelo en caso de peacuterdida de segmentos (no por

timeout prematuro) λrsquoin gt λout

(b) retransmisioacuten de paquetes hace que λrsquoin sea maacutes grande (que el

caso perfecto) para el mismo λout (No necesariamente R3 como cota) (c) retransmisiones innecesarias enlaces enviacutean muacuteltiples copias del

paquete (eg dos re-enviacuteos por paquete)

ldquocostosrdquo de congestioacuten maacutes trabajo (retransmisioacuten) para lograr el transporte de datos

ldquogoodputrdquo

R2

R2in

ou

t

b

R2

R2in

ou

t

a

R2

R2in

ou

t

c

R4

R3

Capa Transporte 3-7

Causascostos de congestioacuten

escenario 3 cuatro transmisores rutas con multihops timeoutretransmisiones

Q iquestQueacute pasa cuando λin

y λrsquoin se

incrementan

finite shared output link buffers

Host Ain original data

Host B out

in original data plus

retransmitted data

Capa Transporte 3-8

Causascostos de congestioacuten escenario 3

Otro ldquocostordquo de congestioacuten cuando se descartan paquetes cualquier

capacidad (router) usada anteriormente ldquoupstreamrdquo fue un recurso desperdiciado

Host A

Host B

out

Capa Transporte 3-9

Estrategias para control de congestioacuten

Control de congestioacuten extremo a extremo

No hay informacioacuten de realimentacioacuten expliacutecita de la red

La congestioacuten es inferida desde las peacuterdidas y retardos observados por terminales en los extremos

Es la estrategia usada por TCP

Control de congestioacuten asistido por la red

routers proveen realimentacioacuten a sistemas extremos Un Bit uacutenico indicando

congestioacuten (eg SNA DECbit TCPIP ECN ATM)

Expliacutecitamente se informa al Tx la tasa que el router puede soportar

Los podemos clasificar en dos grupos amplios

Capa Transporte 3-10

Caso de estudio Control de congestioacuten en ATM ABR (tecnologiacutea de red capa 3 y menores)ABR Available Bit Rate Es un servicio ldquoelaacutesticordquo o

flexible Si camino del Tx tiene

poca carga Tx deberiacutea usar ancho

de banda disponible Si camino de Tx estaacute

congestionado Tx reduce a un miacutenimo

la tasa garantizada

Celdas RM (resource

management) Enviadas a intervalos por Tx

entremedio de celdas de datos bits en celda RM modificados por

switches ndash en lenguaje ATM- (ldquoasistido por la redrdquo) Bit NI no incrementar tasa (=

congestioacuten moderada) Bit CI Congestion Indication

Celdas RM son retornadas al Tx

por el Rx con bits intactos ATM Asynchronous Transfer Mode

Capa Transporte 3-11

Caso de estudio Control de congestioacuten en ATM ABR

Campo ER (explicit rate) de dos bytes en celda RM Un Switch congestionado puede bajar valor de ER en la celda Tasa de enviacuteo del Tx se ajusta a la tasa miacutenima soportable en

el camino entre fuente y destino (la del switch maacutes criacutetico) Bit EFCI (explicit forward congestion indicator) en celdas

de datos es fijado a 1 por switch congestionado Si celda de datos precedente a celda RM tiene el EFCI

marcado el destino marca bit CI en celda RM retornada

Capa Transporte 3-12

Capiacutetulo 3 Continuacioacuten

31 Servicios de la capa transporte

32 Multiplexing y demultiplexing

33 Transporte sin conexioacuten UDP

34 Principios de transferencia confiable de datos

35 Transporte orientado a la conexioacuten TCP Estructura de un segmento Transferencia confiable de

datos Control de flujo Administracioacuten de conexioacuten

36 Principios del control de congestioacuten

37 Control de congestioacuten en TCP

Capa Transporte 3-13

Control de Congestioacuten en TCP Usa control extremo a extremo (sin

asistencia de la red) Tx limita su ventana de transmisioacuten

Si Rx tiene espacio aproximadamente

CongWin es dinaacutemica y funcioacuten de la congestioacuten percibida de la red

RcvWindow es el nuacutemero de segmentos (o bytes) que el Rx puede recibir en su buffer (y entonces el Tx puede enviar sin acuse de recibo)

iquestCoacutemo el Tx percibe la congestioacuten

Evento de peacuterdida = timeout oacute 3 acks duplicados

Tx TCP reduce tasa (CongWin) despueacutes de un evento de peacuterdida

Hay tres mecanismos AIMD (Additive-Increase

Multiplicative-Decrease) ldquoPartida lentardquo Conservativo despueacutes de

evento de timeout

tasa = CongWin

RTT Bytessec

LastByteSentminusLastByteAckedleminCongWin RcvWindow

Capa Transporte 3-14

TCP AIMD (Additive-Increase Multiplicative-Decrease)

Decrecimiento multiplicativo reducir CongWin a la mitad luego de peacuterdida

Aumento aditivo aumenta CongWin en 1 MSS cada RTT en ausencia de peacuterdida En algunas implementaciones CongWin incrementa en MSSx(MSSCongWin) por cada ACK

MSS (Maximum Segment Size) es la maacutexima cantidad de datos que se pueden enviar en cada segmento

Capa Transporte 3-15

Partida lenta en TCP (slow start)

Cuando la conexioacuten comienza CongWin = 1 MSS Ejemplo MSS = 500 bytes amp

RTT = 200 msec Tasa inicial = 20 kbps

Ancho de banda disponible puede ser gtgt MSSRTT Es deseable aumentar

raacutepidamente hasta una tasa respetable

Cuando la conexioacuten comienza aumentar tasa exponencialmente raacutepido hasta tener primer evento de peacuterdida

Slow Start porque parte muy tiacutemidamente

Capa Transporte 3-16

Partida Lenta en TCP (maacutes)

Cuando la conexioacuten comienza aumentar tasa exponencialmente hasta primera peacuterdida Duplicar CongWin cada

RTT Es hecho incrementando CongWin en 1 MSS por cada ACK recibido

Resumen tasa inicial es lenta pero se acelera exponencialmente raacutepido

Host A

one segment

RTT

Host B

time

two segments

four segments

Capa Transporte 3-17

Refinamiento a Partida Lenta en TCP Despueacutes de 3 ACKs

duplicados CongWin baja a la mitad Luego la ventana crece

linealmente Despueacutes de un timeout

CongWin es fijada en 1 MSS

Luego la ventana crece exponencialmente hasta un umbral luego crece linealmente

bull3 ACKs duplicados indican la red es capaz de transportar algunos segmentos (soacutelo llegan fuera de orden en el Rx) Se perdioacute uno pero llegaron los otros y por eso tenemos ACKs duplicadosbull timeout antes de 3 duplicados es ldquomaacutes alarmanterdquo (no llegaron)

Filosofiacutea

Capa Transporte 3-18

Refinamiento a Partida Lenta en TCP (cont)

Q iquestCuaacutendo deberiacutea cambiar el aumento de exponencial a lineal

A Un buen criterio es Cuando CongWin llega a 12 de su valor antes del timeout

Implementacioacuten Umbral variable (variable

threshold) Ante evento de peacuterdidas el

umbral es fijado en 12 de CongWin justo antes de la peacuterdida

Tahoe primera versioacuten de control de congestioacuten en TCP No distinguiacutea entre timeout o ACK duplicadosReno versioacuten siguiente en TCP Siacute distingue timeout de ACK duplicados Es como TCP opera hoy

3 ACKs Duplicados

Evento

umbral

Mejor

Capa Transporte 3-19

Resumen Control de Congestioacuten en TCP Cuando CongWin estaacute bajo el Threshold (umbral) Tx estaacute en fase slow-start la ventana de transmisioacuten crece exponencialmente

Cuando CongWin estaacute sobre Threshold Tx estaacute en fase abolicioacuten de congestioacuten la ventana crece linealmente

Cuando llegan tres ACK duplicados Threshold pasa a CongWin2 y CongWin pasa a Threshold

Cuando ocurre un timeout Threshold pasa a CongWin2 y CongWin se lleva a 1 MSS

Capa Transporte 3-20

Control de congestioacuten del Tx TCP

SS or CA

SS or CA

SS or CA

CongestionAvoidance (CA)

Slow Start (SS)

State

CongWin y Threshold no cambian

Increment duplicate ACK count for segment being acked

Duplicate ACK

Ingresa a Partida Lenta (slow start)

Threshold = CongWin2 CongWin = 1 MSSSet state to ldquoSlow Startrdquo

Timeout

Recuperacioacuten raacutepida implementando reduccioacuten multiplicativa CongWin no caeraacute bajo 1 MSS

Threshold = CongWin2 CongWin = ThresholdSet state to ldquoCongestion Avoidancerdquo

Loss event detected by triple duplicate ACK

Aumento aditivo resulta en aumento de CongWin en (aproximadamente) 1 MSS cada RTT

CongWin = CongWin+MSS (MSSCongWin)

ACK receipt for previously unacked data

Resulta en una duplicacioacuten de CongWin cada RTT

CongWin = CongWin + MSS If (CongWin gt Threshold) set state to ldquoCongestion Avoidancerdquo

ACK receipt for previously unacked data

CommentaryTCP Sender Action Event

Capa Transporte 3-21

Throughput Simplificado de TCP (tasa de transferencia de datos lograda) iquestCuaacutel es el throughput promedio de TCP como una

funcioacuten del tamantildeo de ventana CongWin y RTT Ignoremos slow start ya que al ser exponencial es una fase

muy corta TCP pide ancho de banda adiciona al incrementar W en

1 MSS por cada RTT hasta una peacuterdida Sea W el tamantildeo de la ventana (en bytes) cuando

ocurre una peacuterdida Cuando la ventana es W el throughput es WRTT Justo despueacutes de la peacuterdida la ventana cae a W2 y el

throughput a W2RTT Throughput promedio entre W2RTT y WRTT es 075

WRTT Esto debido a que el throughput crece linealmente entre

ambos valores

Capa Transporte 3-22

Futuro de TCP Ejemplo segmentos de 1500 bytes RTT de

100ms queremos throughput de 10 Gbps Requiere tamantildeo de ventana CongWin W =

83333 (segmentos en traacutensito) Throughput en teacuterminos de tasa de peacuterdida (L) es

L=(bytes perdidos)(Nuacutemero total enviados) Para el throughput deseado con el algoritmo de

control de congestioacuten actual se toleran probabilidades de peacuterdida de soacutelo L = 210-10 Wow (1 cada 5 mil millones de segmentos)

Se requieren nuevas versiones de TCP para enlaces de alta velocidad (ver RFC 3649)

AvgThroughput= 122lowastMSSRTT L

Capa Transporte 3-23

Objetivo de la Equidad (fairness) Si K sesiones TCP comparten un mismo enlace de ancho de banda R cada uno deberiacutea tener una tasa promedio de RK

TCP connection 1

Router cuello de botella decapacidad R

TCP connection 2

Equidad en TCP

Capa Transporte 3-24

iquestPor queacute TCP es justaSupongamos dos sesiones compitiendo Aumento aditivo da pendiente de 1 como aumento de throughout Reduccioacuten multiplicativa reduce throughput proporcionalmente

R

R

Igual bandwidth compartido

Throughput Conexioacuten 1

Th

roughput

Con

exioacute

n 2

Peacuterdida decrece ancho de banda en factor de 2

Abolicioacuten de congestioacuten aumento aditivo

Abolicioacuten de congestioacuten aumento aditivo

Peacuterdida decrece ancho de banda en factor de 2

Capa Transporte 3-25

Equidad (maacutes)

Equidad y UDP Aplicaciones Multimedia

no usan TCP No quieren tasa ahogada

por control de congestioacuten

En su lugar usan UDP Enviacutean audioviacutedeo a tasa

constante y toleran peacuterdidas de paquetes

Aacuterea de investigacioacuten Hacerlas amistosas con TCP (TCP friendly)

Equidad y conexiones TCP paralelas

Nada previene a las aplicaciones de abrir conexiones paralelas entre dos hosts

Navegadores WEB hacen esto Ejemplo Sea un enlace de

tasa R soportando 9 conexiones Una aplicacioacuten nueva pide 1

conexioacuten TCP obtendraacute R10 Si la aplicacioacuten nueva pide 11

conexiones TCP obtendraacute 11R20 maacutes de R2

Capa Transporte 3-26

Capiacutetulo 3 Resumen

Principios detraacutes de los servicios de capa transporte multiplexing demultiplexing Transferencia confiable de

datos Control de flujo Control de congestioacuten

Uso e implementacioacuten en Internet UDP TCP

A continuacioacuten Dejaremos la

ldquoperiferiardquo o ldquoedgerdquo de la red (capas aplicacioacuten y transporte)

Nos internaremos en el centro de la red ldquonetwork corerdquo

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
Page 5: 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 Transporte 3-5

Causascostos de congestioacuten escenario 2

un router buffer finito transmisor retransmite paquetes perdidos

Buffer enlace de salida finito compartido

Host Ain original data

Host B

out

in original data plus

retransmitted data

Capa Transporte 3-6

Causascostos de congestioacuten escenario 2 (a) caso perfecto sin peacuterdidas ni retransmisiones λin = λrsquoin

(b) retransmisioacuten soacutelo en caso de peacuterdida de segmentos (no por

timeout prematuro) λrsquoin gt λout

(b) retransmisioacuten de paquetes hace que λrsquoin sea maacutes grande (que el

caso perfecto) para el mismo λout (No necesariamente R3 como cota) (c) retransmisiones innecesarias enlaces enviacutean muacuteltiples copias del

paquete (eg dos re-enviacuteos por paquete)

ldquocostosrdquo de congestioacuten maacutes trabajo (retransmisioacuten) para lograr el transporte de datos

ldquogoodputrdquo

R2

R2in

ou

t

b

R2

R2in

ou

t

a

R2

R2in

ou

t

c

R4

R3

Capa Transporte 3-7

Causascostos de congestioacuten

escenario 3 cuatro transmisores rutas con multihops timeoutretransmisiones

Q iquestQueacute pasa cuando λin

y λrsquoin se

incrementan

finite shared output link buffers

Host Ain original data

Host B out

in original data plus

retransmitted data

Capa Transporte 3-8

Causascostos de congestioacuten escenario 3

Otro ldquocostordquo de congestioacuten cuando se descartan paquetes cualquier

capacidad (router) usada anteriormente ldquoupstreamrdquo fue un recurso desperdiciado

Host A

Host B

out

Capa Transporte 3-9

Estrategias para control de congestioacuten

Control de congestioacuten extremo a extremo

No hay informacioacuten de realimentacioacuten expliacutecita de la red

La congestioacuten es inferida desde las peacuterdidas y retardos observados por terminales en los extremos

Es la estrategia usada por TCP

Control de congestioacuten asistido por la red

routers proveen realimentacioacuten a sistemas extremos Un Bit uacutenico indicando

congestioacuten (eg SNA DECbit TCPIP ECN ATM)

Expliacutecitamente se informa al Tx la tasa que el router puede soportar

Los podemos clasificar en dos grupos amplios

Capa Transporte 3-10

Caso de estudio Control de congestioacuten en ATM ABR (tecnologiacutea de red capa 3 y menores)ABR Available Bit Rate Es un servicio ldquoelaacutesticordquo o

flexible Si camino del Tx tiene

poca carga Tx deberiacutea usar ancho

de banda disponible Si camino de Tx estaacute

congestionado Tx reduce a un miacutenimo

la tasa garantizada

Celdas RM (resource

management) Enviadas a intervalos por Tx

entremedio de celdas de datos bits en celda RM modificados por

switches ndash en lenguaje ATM- (ldquoasistido por la redrdquo) Bit NI no incrementar tasa (=

congestioacuten moderada) Bit CI Congestion Indication

Celdas RM son retornadas al Tx

por el Rx con bits intactos ATM Asynchronous Transfer Mode

Capa Transporte 3-11

Caso de estudio Control de congestioacuten en ATM ABR

Campo ER (explicit rate) de dos bytes en celda RM Un Switch congestionado puede bajar valor de ER en la celda Tasa de enviacuteo del Tx se ajusta a la tasa miacutenima soportable en

el camino entre fuente y destino (la del switch maacutes criacutetico) Bit EFCI (explicit forward congestion indicator) en celdas

de datos es fijado a 1 por switch congestionado Si celda de datos precedente a celda RM tiene el EFCI

marcado el destino marca bit CI en celda RM retornada

Capa Transporte 3-12

Capiacutetulo 3 Continuacioacuten

31 Servicios de la capa transporte

32 Multiplexing y demultiplexing

33 Transporte sin conexioacuten UDP

34 Principios de transferencia confiable de datos

35 Transporte orientado a la conexioacuten TCP Estructura de un segmento Transferencia confiable de

datos Control de flujo Administracioacuten de conexioacuten

36 Principios del control de congestioacuten

37 Control de congestioacuten en TCP

Capa Transporte 3-13

Control de Congestioacuten en TCP Usa control extremo a extremo (sin

asistencia de la red) Tx limita su ventana de transmisioacuten

Si Rx tiene espacio aproximadamente

CongWin es dinaacutemica y funcioacuten de la congestioacuten percibida de la red

RcvWindow es el nuacutemero de segmentos (o bytes) que el Rx puede recibir en su buffer (y entonces el Tx puede enviar sin acuse de recibo)

iquestCoacutemo el Tx percibe la congestioacuten

Evento de peacuterdida = timeout oacute 3 acks duplicados

Tx TCP reduce tasa (CongWin) despueacutes de un evento de peacuterdida

Hay tres mecanismos AIMD (Additive-Increase

Multiplicative-Decrease) ldquoPartida lentardquo Conservativo despueacutes de

evento de timeout

tasa = CongWin

RTT Bytessec

LastByteSentminusLastByteAckedleminCongWin RcvWindow

Capa Transporte 3-14

TCP AIMD (Additive-Increase Multiplicative-Decrease)

Decrecimiento multiplicativo reducir CongWin a la mitad luego de peacuterdida

Aumento aditivo aumenta CongWin en 1 MSS cada RTT en ausencia de peacuterdida En algunas implementaciones CongWin incrementa en MSSx(MSSCongWin) por cada ACK

MSS (Maximum Segment Size) es la maacutexima cantidad de datos que se pueden enviar en cada segmento

Capa Transporte 3-15

Partida lenta en TCP (slow start)

Cuando la conexioacuten comienza CongWin = 1 MSS Ejemplo MSS = 500 bytes amp

RTT = 200 msec Tasa inicial = 20 kbps

Ancho de banda disponible puede ser gtgt MSSRTT Es deseable aumentar

raacutepidamente hasta una tasa respetable

Cuando la conexioacuten comienza aumentar tasa exponencialmente raacutepido hasta tener primer evento de peacuterdida

Slow Start porque parte muy tiacutemidamente

Capa Transporte 3-16

Partida Lenta en TCP (maacutes)

Cuando la conexioacuten comienza aumentar tasa exponencialmente hasta primera peacuterdida Duplicar CongWin cada

RTT Es hecho incrementando CongWin en 1 MSS por cada ACK recibido

Resumen tasa inicial es lenta pero se acelera exponencialmente raacutepido

Host A

one segment

RTT

Host B

time

two segments

four segments

Capa Transporte 3-17

Refinamiento a Partida Lenta en TCP Despueacutes de 3 ACKs

duplicados CongWin baja a la mitad Luego la ventana crece

linealmente Despueacutes de un timeout

CongWin es fijada en 1 MSS

Luego la ventana crece exponencialmente hasta un umbral luego crece linealmente

bull3 ACKs duplicados indican la red es capaz de transportar algunos segmentos (soacutelo llegan fuera de orden en el Rx) Se perdioacute uno pero llegaron los otros y por eso tenemos ACKs duplicadosbull timeout antes de 3 duplicados es ldquomaacutes alarmanterdquo (no llegaron)

Filosofiacutea

Capa Transporte 3-18

Refinamiento a Partida Lenta en TCP (cont)

Q iquestCuaacutendo deberiacutea cambiar el aumento de exponencial a lineal

A Un buen criterio es Cuando CongWin llega a 12 de su valor antes del timeout

Implementacioacuten Umbral variable (variable

threshold) Ante evento de peacuterdidas el

umbral es fijado en 12 de CongWin justo antes de la peacuterdida

Tahoe primera versioacuten de control de congestioacuten en TCP No distinguiacutea entre timeout o ACK duplicadosReno versioacuten siguiente en TCP Siacute distingue timeout de ACK duplicados Es como TCP opera hoy

3 ACKs Duplicados

Evento

umbral

Mejor

Capa Transporte 3-19

Resumen Control de Congestioacuten en TCP Cuando CongWin estaacute bajo el Threshold (umbral) Tx estaacute en fase slow-start la ventana de transmisioacuten crece exponencialmente

Cuando CongWin estaacute sobre Threshold Tx estaacute en fase abolicioacuten de congestioacuten la ventana crece linealmente

Cuando llegan tres ACK duplicados Threshold pasa a CongWin2 y CongWin pasa a Threshold

Cuando ocurre un timeout Threshold pasa a CongWin2 y CongWin se lleva a 1 MSS

Capa Transporte 3-20

Control de congestioacuten del Tx TCP

SS or CA

SS or CA

SS or CA

CongestionAvoidance (CA)

Slow Start (SS)

State

CongWin y Threshold no cambian

Increment duplicate ACK count for segment being acked

Duplicate ACK

Ingresa a Partida Lenta (slow start)

Threshold = CongWin2 CongWin = 1 MSSSet state to ldquoSlow Startrdquo

Timeout

Recuperacioacuten raacutepida implementando reduccioacuten multiplicativa CongWin no caeraacute bajo 1 MSS

Threshold = CongWin2 CongWin = ThresholdSet state to ldquoCongestion Avoidancerdquo

Loss event detected by triple duplicate ACK

Aumento aditivo resulta en aumento de CongWin en (aproximadamente) 1 MSS cada RTT

CongWin = CongWin+MSS (MSSCongWin)

ACK receipt for previously unacked data

Resulta en una duplicacioacuten de CongWin cada RTT

CongWin = CongWin + MSS If (CongWin gt Threshold) set state to ldquoCongestion Avoidancerdquo

ACK receipt for previously unacked data

CommentaryTCP Sender Action Event

Capa Transporte 3-21

Throughput Simplificado de TCP (tasa de transferencia de datos lograda) iquestCuaacutel es el throughput promedio de TCP como una

funcioacuten del tamantildeo de ventana CongWin y RTT Ignoremos slow start ya que al ser exponencial es una fase

muy corta TCP pide ancho de banda adiciona al incrementar W en

1 MSS por cada RTT hasta una peacuterdida Sea W el tamantildeo de la ventana (en bytes) cuando

ocurre una peacuterdida Cuando la ventana es W el throughput es WRTT Justo despueacutes de la peacuterdida la ventana cae a W2 y el

throughput a W2RTT Throughput promedio entre W2RTT y WRTT es 075

WRTT Esto debido a que el throughput crece linealmente entre

ambos valores

Capa Transporte 3-22

Futuro de TCP Ejemplo segmentos de 1500 bytes RTT de

100ms queremos throughput de 10 Gbps Requiere tamantildeo de ventana CongWin W =

83333 (segmentos en traacutensito) Throughput en teacuterminos de tasa de peacuterdida (L) es

L=(bytes perdidos)(Nuacutemero total enviados) Para el throughput deseado con el algoritmo de

control de congestioacuten actual se toleran probabilidades de peacuterdida de soacutelo L = 210-10 Wow (1 cada 5 mil millones de segmentos)

Se requieren nuevas versiones de TCP para enlaces de alta velocidad (ver RFC 3649)

AvgThroughput= 122lowastMSSRTT L

Capa Transporte 3-23

Objetivo de la Equidad (fairness) Si K sesiones TCP comparten un mismo enlace de ancho de banda R cada uno deberiacutea tener una tasa promedio de RK

TCP connection 1

Router cuello de botella decapacidad R

TCP connection 2

Equidad en TCP

Capa Transporte 3-24

iquestPor queacute TCP es justaSupongamos dos sesiones compitiendo Aumento aditivo da pendiente de 1 como aumento de throughout Reduccioacuten multiplicativa reduce throughput proporcionalmente

R

R

Igual bandwidth compartido

Throughput Conexioacuten 1

Th

roughput

Con

exioacute

n 2

Peacuterdida decrece ancho de banda en factor de 2

Abolicioacuten de congestioacuten aumento aditivo

Abolicioacuten de congestioacuten aumento aditivo

Peacuterdida decrece ancho de banda en factor de 2

Capa Transporte 3-25

Equidad (maacutes)

Equidad y UDP Aplicaciones Multimedia

no usan TCP No quieren tasa ahogada

por control de congestioacuten

En su lugar usan UDP Enviacutean audioviacutedeo a tasa

constante y toleran peacuterdidas de paquetes

Aacuterea de investigacioacuten Hacerlas amistosas con TCP (TCP friendly)

Equidad y conexiones TCP paralelas

Nada previene a las aplicaciones de abrir conexiones paralelas entre dos hosts

Navegadores WEB hacen esto Ejemplo Sea un enlace de

tasa R soportando 9 conexiones Una aplicacioacuten nueva pide 1

conexioacuten TCP obtendraacute R10 Si la aplicacioacuten nueva pide 11

conexiones TCP obtendraacute 11R20 maacutes de R2

Capa Transporte 3-26

Capiacutetulo 3 Resumen

Principios detraacutes de los servicios de capa transporte multiplexing demultiplexing Transferencia confiable de

datos Control de flujo Control de congestioacuten

Uso e implementacioacuten en Internet UDP TCP

A continuacioacuten Dejaremos la

ldquoperiferiardquo o ldquoedgerdquo de la red (capas aplicacioacuten y transporte)

Nos internaremos en el centro de la red ldquonetwork corerdquo

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
Page 6: 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 Transporte 3-6

Causascostos de congestioacuten escenario 2 (a) caso perfecto sin peacuterdidas ni retransmisiones λin = λrsquoin

(b) retransmisioacuten soacutelo en caso de peacuterdida de segmentos (no por

timeout prematuro) λrsquoin gt λout

(b) retransmisioacuten de paquetes hace que λrsquoin sea maacutes grande (que el

caso perfecto) para el mismo λout (No necesariamente R3 como cota) (c) retransmisiones innecesarias enlaces enviacutean muacuteltiples copias del

paquete (eg dos re-enviacuteos por paquete)

ldquocostosrdquo de congestioacuten maacutes trabajo (retransmisioacuten) para lograr el transporte de datos

ldquogoodputrdquo

R2

R2in

ou

t

b

R2

R2in

ou

t

a

R2

R2in

ou

t

c

R4

R3

Capa Transporte 3-7

Causascostos de congestioacuten

escenario 3 cuatro transmisores rutas con multihops timeoutretransmisiones

Q iquestQueacute pasa cuando λin

y λrsquoin se

incrementan

finite shared output link buffers

Host Ain original data

Host B out

in original data plus

retransmitted data

Capa Transporte 3-8

Causascostos de congestioacuten escenario 3

Otro ldquocostordquo de congestioacuten cuando se descartan paquetes cualquier

capacidad (router) usada anteriormente ldquoupstreamrdquo fue un recurso desperdiciado

Host A

Host B

out

Capa Transporte 3-9

Estrategias para control de congestioacuten

Control de congestioacuten extremo a extremo

No hay informacioacuten de realimentacioacuten expliacutecita de la red

La congestioacuten es inferida desde las peacuterdidas y retardos observados por terminales en los extremos

Es la estrategia usada por TCP

Control de congestioacuten asistido por la red

routers proveen realimentacioacuten a sistemas extremos Un Bit uacutenico indicando

congestioacuten (eg SNA DECbit TCPIP ECN ATM)

Expliacutecitamente se informa al Tx la tasa que el router puede soportar

Los podemos clasificar en dos grupos amplios

Capa Transporte 3-10

Caso de estudio Control de congestioacuten en ATM ABR (tecnologiacutea de red capa 3 y menores)ABR Available Bit Rate Es un servicio ldquoelaacutesticordquo o

flexible Si camino del Tx tiene

poca carga Tx deberiacutea usar ancho

de banda disponible Si camino de Tx estaacute

congestionado Tx reduce a un miacutenimo

la tasa garantizada

Celdas RM (resource

management) Enviadas a intervalos por Tx

entremedio de celdas de datos bits en celda RM modificados por

switches ndash en lenguaje ATM- (ldquoasistido por la redrdquo) Bit NI no incrementar tasa (=

congestioacuten moderada) Bit CI Congestion Indication

Celdas RM son retornadas al Tx

por el Rx con bits intactos ATM Asynchronous Transfer Mode

Capa Transporte 3-11

Caso de estudio Control de congestioacuten en ATM ABR

Campo ER (explicit rate) de dos bytes en celda RM Un Switch congestionado puede bajar valor de ER en la celda Tasa de enviacuteo del Tx se ajusta a la tasa miacutenima soportable en

el camino entre fuente y destino (la del switch maacutes criacutetico) Bit EFCI (explicit forward congestion indicator) en celdas

de datos es fijado a 1 por switch congestionado Si celda de datos precedente a celda RM tiene el EFCI

marcado el destino marca bit CI en celda RM retornada

Capa Transporte 3-12

Capiacutetulo 3 Continuacioacuten

31 Servicios de la capa transporte

32 Multiplexing y demultiplexing

33 Transporte sin conexioacuten UDP

34 Principios de transferencia confiable de datos

35 Transporte orientado a la conexioacuten TCP Estructura de un segmento Transferencia confiable de

datos Control de flujo Administracioacuten de conexioacuten

36 Principios del control de congestioacuten

37 Control de congestioacuten en TCP

Capa Transporte 3-13

Control de Congestioacuten en TCP Usa control extremo a extremo (sin

asistencia de la red) Tx limita su ventana de transmisioacuten

Si Rx tiene espacio aproximadamente

CongWin es dinaacutemica y funcioacuten de la congestioacuten percibida de la red

RcvWindow es el nuacutemero de segmentos (o bytes) que el Rx puede recibir en su buffer (y entonces el Tx puede enviar sin acuse de recibo)

iquestCoacutemo el Tx percibe la congestioacuten

Evento de peacuterdida = timeout oacute 3 acks duplicados

Tx TCP reduce tasa (CongWin) despueacutes de un evento de peacuterdida

Hay tres mecanismos AIMD (Additive-Increase

Multiplicative-Decrease) ldquoPartida lentardquo Conservativo despueacutes de

evento de timeout

tasa = CongWin

RTT Bytessec

LastByteSentminusLastByteAckedleminCongWin RcvWindow

Capa Transporte 3-14

TCP AIMD (Additive-Increase Multiplicative-Decrease)

Decrecimiento multiplicativo reducir CongWin a la mitad luego de peacuterdida

Aumento aditivo aumenta CongWin en 1 MSS cada RTT en ausencia de peacuterdida En algunas implementaciones CongWin incrementa en MSSx(MSSCongWin) por cada ACK

MSS (Maximum Segment Size) es la maacutexima cantidad de datos que se pueden enviar en cada segmento

Capa Transporte 3-15

Partida lenta en TCP (slow start)

Cuando la conexioacuten comienza CongWin = 1 MSS Ejemplo MSS = 500 bytes amp

RTT = 200 msec Tasa inicial = 20 kbps

Ancho de banda disponible puede ser gtgt MSSRTT Es deseable aumentar

raacutepidamente hasta una tasa respetable

Cuando la conexioacuten comienza aumentar tasa exponencialmente raacutepido hasta tener primer evento de peacuterdida

Slow Start porque parte muy tiacutemidamente

Capa Transporte 3-16

Partida Lenta en TCP (maacutes)

Cuando la conexioacuten comienza aumentar tasa exponencialmente hasta primera peacuterdida Duplicar CongWin cada

RTT Es hecho incrementando CongWin en 1 MSS por cada ACK recibido

Resumen tasa inicial es lenta pero se acelera exponencialmente raacutepido

Host A

one segment

RTT

Host B

time

two segments

four segments

Capa Transporte 3-17

Refinamiento a Partida Lenta en TCP Despueacutes de 3 ACKs

duplicados CongWin baja a la mitad Luego la ventana crece

linealmente Despueacutes de un timeout

CongWin es fijada en 1 MSS

Luego la ventana crece exponencialmente hasta un umbral luego crece linealmente

bull3 ACKs duplicados indican la red es capaz de transportar algunos segmentos (soacutelo llegan fuera de orden en el Rx) Se perdioacute uno pero llegaron los otros y por eso tenemos ACKs duplicadosbull timeout antes de 3 duplicados es ldquomaacutes alarmanterdquo (no llegaron)

Filosofiacutea

Capa Transporte 3-18

Refinamiento a Partida Lenta en TCP (cont)

Q iquestCuaacutendo deberiacutea cambiar el aumento de exponencial a lineal

A Un buen criterio es Cuando CongWin llega a 12 de su valor antes del timeout

Implementacioacuten Umbral variable (variable

threshold) Ante evento de peacuterdidas el

umbral es fijado en 12 de CongWin justo antes de la peacuterdida

Tahoe primera versioacuten de control de congestioacuten en TCP No distinguiacutea entre timeout o ACK duplicadosReno versioacuten siguiente en TCP Siacute distingue timeout de ACK duplicados Es como TCP opera hoy

3 ACKs Duplicados

Evento

umbral

Mejor

Capa Transporte 3-19

Resumen Control de Congestioacuten en TCP Cuando CongWin estaacute bajo el Threshold (umbral) Tx estaacute en fase slow-start la ventana de transmisioacuten crece exponencialmente

Cuando CongWin estaacute sobre Threshold Tx estaacute en fase abolicioacuten de congestioacuten la ventana crece linealmente

Cuando llegan tres ACK duplicados Threshold pasa a CongWin2 y CongWin pasa a Threshold

Cuando ocurre un timeout Threshold pasa a CongWin2 y CongWin se lleva a 1 MSS

Capa Transporte 3-20

Control de congestioacuten del Tx TCP

SS or CA

SS or CA

SS or CA

CongestionAvoidance (CA)

Slow Start (SS)

State

CongWin y Threshold no cambian

Increment duplicate ACK count for segment being acked

Duplicate ACK

Ingresa a Partida Lenta (slow start)

Threshold = CongWin2 CongWin = 1 MSSSet state to ldquoSlow Startrdquo

Timeout

Recuperacioacuten raacutepida implementando reduccioacuten multiplicativa CongWin no caeraacute bajo 1 MSS

Threshold = CongWin2 CongWin = ThresholdSet state to ldquoCongestion Avoidancerdquo

Loss event detected by triple duplicate ACK

Aumento aditivo resulta en aumento de CongWin en (aproximadamente) 1 MSS cada RTT

CongWin = CongWin+MSS (MSSCongWin)

ACK receipt for previously unacked data

Resulta en una duplicacioacuten de CongWin cada RTT

CongWin = CongWin + MSS If (CongWin gt Threshold) set state to ldquoCongestion Avoidancerdquo

ACK receipt for previously unacked data

CommentaryTCP Sender Action Event

Capa Transporte 3-21

Throughput Simplificado de TCP (tasa de transferencia de datos lograda) iquestCuaacutel es el throughput promedio de TCP como una

funcioacuten del tamantildeo de ventana CongWin y RTT Ignoremos slow start ya que al ser exponencial es una fase

muy corta TCP pide ancho de banda adiciona al incrementar W en

1 MSS por cada RTT hasta una peacuterdida Sea W el tamantildeo de la ventana (en bytes) cuando

ocurre una peacuterdida Cuando la ventana es W el throughput es WRTT Justo despueacutes de la peacuterdida la ventana cae a W2 y el

throughput a W2RTT Throughput promedio entre W2RTT y WRTT es 075

WRTT Esto debido a que el throughput crece linealmente entre

ambos valores

Capa Transporte 3-22

Futuro de TCP Ejemplo segmentos de 1500 bytes RTT de

100ms queremos throughput de 10 Gbps Requiere tamantildeo de ventana CongWin W =

83333 (segmentos en traacutensito) Throughput en teacuterminos de tasa de peacuterdida (L) es

L=(bytes perdidos)(Nuacutemero total enviados) Para el throughput deseado con el algoritmo de

control de congestioacuten actual se toleran probabilidades de peacuterdida de soacutelo L = 210-10 Wow (1 cada 5 mil millones de segmentos)

Se requieren nuevas versiones de TCP para enlaces de alta velocidad (ver RFC 3649)

AvgThroughput= 122lowastMSSRTT L

Capa Transporte 3-23

Objetivo de la Equidad (fairness) Si K sesiones TCP comparten un mismo enlace de ancho de banda R cada uno deberiacutea tener una tasa promedio de RK

TCP connection 1

Router cuello de botella decapacidad R

TCP connection 2

Equidad en TCP

Capa Transporte 3-24

iquestPor queacute TCP es justaSupongamos dos sesiones compitiendo Aumento aditivo da pendiente de 1 como aumento de throughout Reduccioacuten multiplicativa reduce throughput proporcionalmente

R

R

Igual bandwidth compartido

Throughput Conexioacuten 1

Th

roughput

Con

exioacute

n 2

Peacuterdida decrece ancho de banda en factor de 2

Abolicioacuten de congestioacuten aumento aditivo

Abolicioacuten de congestioacuten aumento aditivo

Peacuterdida decrece ancho de banda en factor de 2

Capa Transporte 3-25

Equidad (maacutes)

Equidad y UDP Aplicaciones Multimedia

no usan TCP No quieren tasa ahogada

por control de congestioacuten

En su lugar usan UDP Enviacutean audioviacutedeo a tasa

constante y toleran peacuterdidas de paquetes

Aacuterea de investigacioacuten Hacerlas amistosas con TCP (TCP friendly)

Equidad y conexiones TCP paralelas

Nada previene a las aplicaciones de abrir conexiones paralelas entre dos hosts

Navegadores WEB hacen esto Ejemplo Sea un enlace de

tasa R soportando 9 conexiones Una aplicacioacuten nueva pide 1

conexioacuten TCP obtendraacute R10 Si la aplicacioacuten nueva pide 11

conexiones TCP obtendraacute 11R20 maacutes de R2

Capa Transporte 3-26

Capiacutetulo 3 Resumen

Principios detraacutes de los servicios de capa transporte multiplexing demultiplexing Transferencia confiable de

datos Control de flujo Control de congestioacuten

Uso e implementacioacuten en Internet UDP TCP

A continuacioacuten Dejaremos la

ldquoperiferiardquo o ldquoedgerdquo de la red (capas aplicacioacuten y transporte)

Nos internaremos en el centro de la red ldquonetwork corerdquo

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
Page 7: 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 Transporte 3-7

Causascostos de congestioacuten

escenario 3 cuatro transmisores rutas con multihops timeoutretransmisiones

Q iquestQueacute pasa cuando λin

y λrsquoin se

incrementan

finite shared output link buffers

Host Ain original data

Host B out

in original data plus

retransmitted data

Capa Transporte 3-8

Causascostos de congestioacuten escenario 3

Otro ldquocostordquo de congestioacuten cuando se descartan paquetes cualquier

capacidad (router) usada anteriormente ldquoupstreamrdquo fue un recurso desperdiciado

Host A

Host B

out

Capa Transporte 3-9

Estrategias para control de congestioacuten

Control de congestioacuten extremo a extremo

No hay informacioacuten de realimentacioacuten expliacutecita de la red

La congestioacuten es inferida desde las peacuterdidas y retardos observados por terminales en los extremos

Es la estrategia usada por TCP

Control de congestioacuten asistido por la red

routers proveen realimentacioacuten a sistemas extremos Un Bit uacutenico indicando

congestioacuten (eg SNA DECbit TCPIP ECN ATM)

Expliacutecitamente se informa al Tx la tasa que el router puede soportar

Los podemos clasificar en dos grupos amplios

Capa Transporte 3-10

Caso de estudio Control de congestioacuten en ATM ABR (tecnologiacutea de red capa 3 y menores)ABR Available Bit Rate Es un servicio ldquoelaacutesticordquo o

flexible Si camino del Tx tiene

poca carga Tx deberiacutea usar ancho

de banda disponible Si camino de Tx estaacute

congestionado Tx reduce a un miacutenimo

la tasa garantizada

Celdas RM (resource

management) Enviadas a intervalos por Tx

entremedio de celdas de datos bits en celda RM modificados por

switches ndash en lenguaje ATM- (ldquoasistido por la redrdquo) Bit NI no incrementar tasa (=

congestioacuten moderada) Bit CI Congestion Indication

Celdas RM son retornadas al Tx

por el Rx con bits intactos ATM Asynchronous Transfer Mode

Capa Transporte 3-11

Caso de estudio Control de congestioacuten en ATM ABR

Campo ER (explicit rate) de dos bytes en celda RM Un Switch congestionado puede bajar valor de ER en la celda Tasa de enviacuteo del Tx se ajusta a la tasa miacutenima soportable en

el camino entre fuente y destino (la del switch maacutes criacutetico) Bit EFCI (explicit forward congestion indicator) en celdas

de datos es fijado a 1 por switch congestionado Si celda de datos precedente a celda RM tiene el EFCI

marcado el destino marca bit CI en celda RM retornada

Capa Transporte 3-12

Capiacutetulo 3 Continuacioacuten

31 Servicios de la capa transporte

32 Multiplexing y demultiplexing

33 Transporte sin conexioacuten UDP

34 Principios de transferencia confiable de datos

35 Transporte orientado a la conexioacuten TCP Estructura de un segmento Transferencia confiable de

datos Control de flujo Administracioacuten de conexioacuten

36 Principios del control de congestioacuten

37 Control de congestioacuten en TCP

Capa Transporte 3-13

Control de Congestioacuten en TCP Usa control extremo a extremo (sin

asistencia de la red) Tx limita su ventana de transmisioacuten

Si Rx tiene espacio aproximadamente

CongWin es dinaacutemica y funcioacuten de la congestioacuten percibida de la red

RcvWindow es el nuacutemero de segmentos (o bytes) que el Rx puede recibir en su buffer (y entonces el Tx puede enviar sin acuse de recibo)

iquestCoacutemo el Tx percibe la congestioacuten

Evento de peacuterdida = timeout oacute 3 acks duplicados

Tx TCP reduce tasa (CongWin) despueacutes de un evento de peacuterdida

Hay tres mecanismos AIMD (Additive-Increase

Multiplicative-Decrease) ldquoPartida lentardquo Conservativo despueacutes de

evento de timeout

tasa = CongWin

RTT Bytessec

LastByteSentminusLastByteAckedleminCongWin RcvWindow

Capa Transporte 3-14

TCP AIMD (Additive-Increase Multiplicative-Decrease)

Decrecimiento multiplicativo reducir CongWin a la mitad luego de peacuterdida

Aumento aditivo aumenta CongWin en 1 MSS cada RTT en ausencia de peacuterdida En algunas implementaciones CongWin incrementa en MSSx(MSSCongWin) por cada ACK

MSS (Maximum Segment Size) es la maacutexima cantidad de datos que se pueden enviar en cada segmento

Capa Transporte 3-15

Partida lenta en TCP (slow start)

Cuando la conexioacuten comienza CongWin = 1 MSS Ejemplo MSS = 500 bytes amp

RTT = 200 msec Tasa inicial = 20 kbps

Ancho de banda disponible puede ser gtgt MSSRTT Es deseable aumentar

raacutepidamente hasta una tasa respetable

Cuando la conexioacuten comienza aumentar tasa exponencialmente raacutepido hasta tener primer evento de peacuterdida

Slow Start porque parte muy tiacutemidamente

Capa Transporte 3-16

Partida Lenta en TCP (maacutes)

Cuando la conexioacuten comienza aumentar tasa exponencialmente hasta primera peacuterdida Duplicar CongWin cada

RTT Es hecho incrementando CongWin en 1 MSS por cada ACK recibido

Resumen tasa inicial es lenta pero se acelera exponencialmente raacutepido

Host A

one segment

RTT

Host B

time

two segments

four segments

Capa Transporte 3-17

Refinamiento a Partida Lenta en TCP Despueacutes de 3 ACKs

duplicados CongWin baja a la mitad Luego la ventana crece

linealmente Despueacutes de un timeout

CongWin es fijada en 1 MSS

Luego la ventana crece exponencialmente hasta un umbral luego crece linealmente

bull3 ACKs duplicados indican la red es capaz de transportar algunos segmentos (soacutelo llegan fuera de orden en el Rx) Se perdioacute uno pero llegaron los otros y por eso tenemos ACKs duplicadosbull timeout antes de 3 duplicados es ldquomaacutes alarmanterdquo (no llegaron)

Filosofiacutea

Capa Transporte 3-18

Refinamiento a Partida Lenta en TCP (cont)

Q iquestCuaacutendo deberiacutea cambiar el aumento de exponencial a lineal

A Un buen criterio es Cuando CongWin llega a 12 de su valor antes del timeout

Implementacioacuten Umbral variable (variable

threshold) Ante evento de peacuterdidas el

umbral es fijado en 12 de CongWin justo antes de la peacuterdida

Tahoe primera versioacuten de control de congestioacuten en TCP No distinguiacutea entre timeout o ACK duplicadosReno versioacuten siguiente en TCP Siacute distingue timeout de ACK duplicados Es como TCP opera hoy

3 ACKs Duplicados

Evento

umbral

Mejor

Capa Transporte 3-19

Resumen Control de Congestioacuten en TCP Cuando CongWin estaacute bajo el Threshold (umbral) Tx estaacute en fase slow-start la ventana de transmisioacuten crece exponencialmente

Cuando CongWin estaacute sobre Threshold Tx estaacute en fase abolicioacuten de congestioacuten la ventana crece linealmente

Cuando llegan tres ACK duplicados Threshold pasa a CongWin2 y CongWin pasa a Threshold

Cuando ocurre un timeout Threshold pasa a CongWin2 y CongWin se lleva a 1 MSS

Capa Transporte 3-20

Control de congestioacuten del Tx TCP

SS or CA

SS or CA

SS or CA

CongestionAvoidance (CA)

Slow Start (SS)

State

CongWin y Threshold no cambian

Increment duplicate ACK count for segment being acked

Duplicate ACK

Ingresa a Partida Lenta (slow start)

Threshold = CongWin2 CongWin = 1 MSSSet state to ldquoSlow Startrdquo

Timeout

Recuperacioacuten raacutepida implementando reduccioacuten multiplicativa CongWin no caeraacute bajo 1 MSS

Threshold = CongWin2 CongWin = ThresholdSet state to ldquoCongestion Avoidancerdquo

Loss event detected by triple duplicate ACK

Aumento aditivo resulta en aumento de CongWin en (aproximadamente) 1 MSS cada RTT

CongWin = CongWin+MSS (MSSCongWin)

ACK receipt for previously unacked data

Resulta en una duplicacioacuten de CongWin cada RTT

CongWin = CongWin + MSS If (CongWin gt Threshold) set state to ldquoCongestion Avoidancerdquo

ACK receipt for previously unacked data

CommentaryTCP Sender Action Event

Capa Transporte 3-21

Throughput Simplificado de TCP (tasa de transferencia de datos lograda) iquestCuaacutel es el throughput promedio de TCP como una

funcioacuten del tamantildeo de ventana CongWin y RTT Ignoremos slow start ya que al ser exponencial es una fase

muy corta TCP pide ancho de banda adiciona al incrementar W en

1 MSS por cada RTT hasta una peacuterdida Sea W el tamantildeo de la ventana (en bytes) cuando

ocurre una peacuterdida Cuando la ventana es W el throughput es WRTT Justo despueacutes de la peacuterdida la ventana cae a W2 y el

throughput a W2RTT Throughput promedio entre W2RTT y WRTT es 075

WRTT Esto debido a que el throughput crece linealmente entre

ambos valores

Capa Transporte 3-22

Futuro de TCP Ejemplo segmentos de 1500 bytes RTT de

100ms queremos throughput de 10 Gbps Requiere tamantildeo de ventana CongWin W =

83333 (segmentos en traacutensito) Throughput en teacuterminos de tasa de peacuterdida (L) es

L=(bytes perdidos)(Nuacutemero total enviados) Para el throughput deseado con el algoritmo de

control de congestioacuten actual se toleran probabilidades de peacuterdida de soacutelo L = 210-10 Wow (1 cada 5 mil millones de segmentos)

Se requieren nuevas versiones de TCP para enlaces de alta velocidad (ver RFC 3649)

AvgThroughput= 122lowastMSSRTT L

Capa Transporte 3-23

Objetivo de la Equidad (fairness) Si K sesiones TCP comparten un mismo enlace de ancho de banda R cada uno deberiacutea tener una tasa promedio de RK

TCP connection 1

Router cuello de botella decapacidad R

TCP connection 2

Equidad en TCP

Capa Transporte 3-24

iquestPor queacute TCP es justaSupongamos dos sesiones compitiendo Aumento aditivo da pendiente de 1 como aumento de throughout Reduccioacuten multiplicativa reduce throughput proporcionalmente

R

R

Igual bandwidth compartido

Throughput Conexioacuten 1

Th

roughput

Con

exioacute

n 2

Peacuterdida decrece ancho de banda en factor de 2

Abolicioacuten de congestioacuten aumento aditivo

Abolicioacuten de congestioacuten aumento aditivo

Peacuterdida decrece ancho de banda en factor de 2

Capa Transporte 3-25

Equidad (maacutes)

Equidad y UDP Aplicaciones Multimedia

no usan TCP No quieren tasa ahogada

por control de congestioacuten

En su lugar usan UDP Enviacutean audioviacutedeo a tasa

constante y toleran peacuterdidas de paquetes

Aacuterea de investigacioacuten Hacerlas amistosas con TCP (TCP friendly)

Equidad y conexiones TCP paralelas

Nada previene a las aplicaciones de abrir conexiones paralelas entre dos hosts

Navegadores WEB hacen esto Ejemplo Sea un enlace de

tasa R soportando 9 conexiones Una aplicacioacuten nueva pide 1

conexioacuten TCP obtendraacute R10 Si la aplicacioacuten nueva pide 11

conexiones TCP obtendraacute 11R20 maacutes de R2

Capa Transporte 3-26

Capiacutetulo 3 Resumen

Principios detraacutes de los servicios de capa transporte multiplexing demultiplexing Transferencia confiable de

datos Control de flujo Control de congestioacuten

Uso e implementacioacuten en Internet UDP TCP

A continuacioacuten Dejaremos la

ldquoperiferiardquo o ldquoedgerdquo de la red (capas aplicacioacuten y transporte)

Nos internaremos en el centro de la red ldquonetwork corerdquo

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
Page 8: 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 Transporte 3-8

Causascostos de congestioacuten escenario 3

Otro ldquocostordquo de congestioacuten cuando se descartan paquetes cualquier

capacidad (router) usada anteriormente ldquoupstreamrdquo fue un recurso desperdiciado

Host A

Host B

out

Capa Transporte 3-9

Estrategias para control de congestioacuten

Control de congestioacuten extremo a extremo

No hay informacioacuten de realimentacioacuten expliacutecita de la red

La congestioacuten es inferida desde las peacuterdidas y retardos observados por terminales en los extremos

Es la estrategia usada por TCP

Control de congestioacuten asistido por la red

routers proveen realimentacioacuten a sistemas extremos Un Bit uacutenico indicando

congestioacuten (eg SNA DECbit TCPIP ECN ATM)

Expliacutecitamente se informa al Tx la tasa que el router puede soportar

Los podemos clasificar en dos grupos amplios

Capa Transporte 3-10

Caso de estudio Control de congestioacuten en ATM ABR (tecnologiacutea de red capa 3 y menores)ABR Available Bit Rate Es un servicio ldquoelaacutesticordquo o

flexible Si camino del Tx tiene

poca carga Tx deberiacutea usar ancho

de banda disponible Si camino de Tx estaacute

congestionado Tx reduce a un miacutenimo

la tasa garantizada

Celdas RM (resource

management) Enviadas a intervalos por Tx

entremedio de celdas de datos bits en celda RM modificados por

switches ndash en lenguaje ATM- (ldquoasistido por la redrdquo) Bit NI no incrementar tasa (=

congestioacuten moderada) Bit CI Congestion Indication

Celdas RM son retornadas al Tx

por el Rx con bits intactos ATM Asynchronous Transfer Mode

Capa Transporte 3-11

Caso de estudio Control de congestioacuten en ATM ABR

Campo ER (explicit rate) de dos bytes en celda RM Un Switch congestionado puede bajar valor de ER en la celda Tasa de enviacuteo del Tx se ajusta a la tasa miacutenima soportable en

el camino entre fuente y destino (la del switch maacutes criacutetico) Bit EFCI (explicit forward congestion indicator) en celdas

de datos es fijado a 1 por switch congestionado Si celda de datos precedente a celda RM tiene el EFCI

marcado el destino marca bit CI en celda RM retornada

Capa Transporte 3-12

Capiacutetulo 3 Continuacioacuten

31 Servicios de la capa transporte

32 Multiplexing y demultiplexing

33 Transporte sin conexioacuten UDP

34 Principios de transferencia confiable de datos

35 Transporte orientado a la conexioacuten TCP Estructura de un segmento Transferencia confiable de

datos Control de flujo Administracioacuten de conexioacuten

36 Principios del control de congestioacuten

37 Control de congestioacuten en TCP

Capa Transporte 3-13

Control de Congestioacuten en TCP Usa control extremo a extremo (sin

asistencia de la red) Tx limita su ventana de transmisioacuten

Si Rx tiene espacio aproximadamente

CongWin es dinaacutemica y funcioacuten de la congestioacuten percibida de la red

RcvWindow es el nuacutemero de segmentos (o bytes) que el Rx puede recibir en su buffer (y entonces el Tx puede enviar sin acuse de recibo)

iquestCoacutemo el Tx percibe la congestioacuten

Evento de peacuterdida = timeout oacute 3 acks duplicados

Tx TCP reduce tasa (CongWin) despueacutes de un evento de peacuterdida

Hay tres mecanismos AIMD (Additive-Increase

Multiplicative-Decrease) ldquoPartida lentardquo Conservativo despueacutes de

evento de timeout

tasa = CongWin

RTT Bytessec

LastByteSentminusLastByteAckedleminCongWin RcvWindow

Capa Transporte 3-14

TCP AIMD (Additive-Increase Multiplicative-Decrease)

Decrecimiento multiplicativo reducir CongWin a la mitad luego de peacuterdida

Aumento aditivo aumenta CongWin en 1 MSS cada RTT en ausencia de peacuterdida En algunas implementaciones CongWin incrementa en MSSx(MSSCongWin) por cada ACK

MSS (Maximum Segment Size) es la maacutexima cantidad de datos que se pueden enviar en cada segmento

Capa Transporte 3-15

Partida lenta en TCP (slow start)

Cuando la conexioacuten comienza CongWin = 1 MSS Ejemplo MSS = 500 bytes amp

RTT = 200 msec Tasa inicial = 20 kbps

Ancho de banda disponible puede ser gtgt MSSRTT Es deseable aumentar

raacutepidamente hasta una tasa respetable

Cuando la conexioacuten comienza aumentar tasa exponencialmente raacutepido hasta tener primer evento de peacuterdida

Slow Start porque parte muy tiacutemidamente

Capa Transporte 3-16

Partida Lenta en TCP (maacutes)

Cuando la conexioacuten comienza aumentar tasa exponencialmente hasta primera peacuterdida Duplicar CongWin cada

RTT Es hecho incrementando CongWin en 1 MSS por cada ACK recibido

Resumen tasa inicial es lenta pero se acelera exponencialmente raacutepido

Host A

one segment

RTT

Host B

time

two segments

four segments

Capa Transporte 3-17

Refinamiento a Partida Lenta en TCP Despueacutes de 3 ACKs

duplicados CongWin baja a la mitad Luego la ventana crece

linealmente Despueacutes de un timeout

CongWin es fijada en 1 MSS

Luego la ventana crece exponencialmente hasta un umbral luego crece linealmente

bull3 ACKs duplicados indican la red es capaz de transportar algunos segmentos (soacutelo llegan fuera de orden en el Rx) Se perdioacute uno pero llegaron los otros y por eso tenemos ACKs duplicadosbull timeout antes de 3 duplicados es ldquomaacutes alarmanterdquo (no llegaron)

Filosofiacutea

Capa Transporte 3-18

Refinamiento a Partida Lenta en TCP (cont)

Q iquestCuaacutendo deberiacutea cambiar el aumento de exponencial a lineal

A Un buen criterio es Cuando CongWin llega a 12 de su valor antes del timeout

Implementacioacuten Umbral variable (variable

threshold) Ante evento de peacuterdidas el

umbral es fijado en 12 de CongWin justo antes de la peacuterdida

Tahoe primera versioacuten de control de congestioacuten en TCP No distinguiacutea entre timeout o ACK duplicadosReno versioacuten siguiente en TCP Siacute distingue timeout de ACK duplicados Es como TCP opera hoy

3 ACKs Duplicados

Evento

umbral

Mejor

Capa Transporte 3-19

Resumen Control de Congestioacuten en TCP Cuando CongWin estaacute bajo el Threshold (umbral) Tx estaacute en fase slow-start la ventana de transmisioacuten crece exponencialmente

Cuando CongWin estaacute sobre Threshold Tx estaacute en fase abolicioacuten de congestioacuten la ventana crece linealmente

Cuando llegan tres ACK duplicados Threshold pasa a CongWin2 y CongWin pasa a Threshold

Cuando ocurre un timeout Threshold pasa a CongWin2 y CongWin se lleva a 1 MSS

Capa Transporte 3-20

Control de congestioacuten del Tx TCP

SS or CA

SS or CA

SS or CA

CongestionAvoidance (CA)

Slow Start (SS)

State

CongWin y Threshold no cambian

Increment duplicate ACK count for segment being acked

Duplicate ACK

Ingresa a Partida Lenta (slow start)

Threshold = CongWin2 CongWin = 1 MSSSet state to ldquoSlow Startrdquo

Timeout

Recuperacioacuten raacutepida implementando reduccioacuten multiplicativa CongWin no caeraacute bajo 1 MSS

Threshold = CongWin2 CongWin = ThresholdSet state to ldquoCongestion Avoidancerdquo

Loss event detected by triple duplicate ACK

Aumento aditivo resulta en aumento de CongWin en (aproximadamente) 1 MSS cada RTT

CongWin = CongWin+MSS (MSSCongWin)

ACK receipt for previously unacked data

Resulta en una duplicacioacuten de CongWin cada RTT

CongWin = CongWin + MSS If (CongWin gt Threshold) set state to ldquoCongestion Avoidancerdquo

ACK receipt for previously unacked data

CommentaryTCP Sender Action Event

Capa Transporte 3-21

Throughput Simplificado de TCP (tasa de transferencia de datos lograda) iquestCuaacutel es el throughput promedio de TCP como una

funcioacuten del tamantildeo de ventana CongWin y RTT Ignoremos slow start ya que al ser exponencial es una fase

muy corta TCP pide ancho de banda adiciona al incrementar W en

1 MSS por cada RTT hasta una peacuterdida Sea W el tamantildeo de la ventana (en bytes) cuando

ocurre una peacuterdida Cuando la ventana es W el throughput es WRTT Justo despueacutes de la peacuterdida la ventana cae a W2 y el

throughput a W2RTT Throughput promedio entre W2RTT y WRTT es 075

WRTT Esto debido a que el throughput crece linealmente entre

ambos valores

Capa Transporte 3-22

Futuro de TCP Ejemplo segmentos de 1500 bytes RTT de

100ms queremos throughput de 10 Gbps Requiere tamantildeo de ventana CongWin W =

83333 (segmentos en traacutensito) Throughput en teacuterminos de tasa de peacuterdida (L) es

L=(bytes perdidos)(Nuacutemero total enviados) Para el throughput deseado con el algoritmo de

control de congestioacuten actual se toleran probabilidades de peacuterdida de soacutelo L = 210-10 Wow (1 cada 5 mil millones de segmentos)

Se requieren nuevas versiones de TCP para enlaces de alta velocidad (ver RFC 3649)

AvgThroughput= 122lowastMSSRTT L

Capa Transporte 3-23

Objetivo de la Equidad (fairness) Si K sesiones TCP comparten un mismo enlace de ancho de banda R cada uno deberiacutea tener una tasa promedio de RK

TCP connection 1

Router cuello de botella decapacidad R

TCP connection 2

Equidad en TCP

Capa Transporte 3-24

iquestPor queacute TCP es justaSupongamos dos sesiones compitiendo Aumento aditivo da pendiente de 1 como aumento de throughout Reduccioacuten multiplicativa reduce throughput proporcionalmente

R

R

Igual bandwidth compartido

Throughput Conexioacuten 1

Th

roughput

Con

exioacute

n 2

Peacuterdida decrece ancho de banda en factor de 2

Abolicioacuten de congestioacuten aumento aditivo

Abolicioacuten de congestioacuten aumento aditivo

Peacuterdida decrece ancho de banda en factor de 2

Capa Transporte 3-25

Equidad (maacutes)

Equidad y UDP Aplicaciones Multimedia

no usan TCP No quieren tasa ahogada

por control de congestioacuten

En su lugar usan UDP Enviacutean audioviacutedeo a tasa

constante y toleran peacuterdidas de paquetes

Aacuterea de investigacioacuten Hacerlas amistosas con TCP (TCP friendly)

Equidad y conexiones TCP paralelas

Nada previene a las aplicaciones de abrir conexiones paralelas entre dos hosts

Navegadores WEB hacen esto Ejemplo Sea un enlace de

tasa R soportando 9 conexiones Una aplicacioacuten nueva pide 1

conexioacuten TCP obtendraacute R10 Si la aplicacioacuten nueva pide 11

conexiones TCP obtendraacute 11R20 maacutes de R2

Capa Transporte 3-26

Capiacutetulo 3 Resumen

Principios detraacutes de los servicios de capa transporte multiplexing demultiplexing Transferencia confiable de

datos Control de flujo Control de congestioacuten

Uso e implementacioacuten en Internet UDP TCP

A continuacioacuten Dejaremos la

ldquoperiferiardquo o ldquoedgerdquo de la red (capas aplicacioacuten y transporte)

Nos internaremos en el centro de la red ldquonetwork corerdquo

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
Page 9: 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 Transporte 3-9

Estrategias para control de congestioacuten

Control de congestioacuten extremo a extremo

No hay informacioacuten de realimentacioacuten expliacutecita de la red

La congestioacuten es inferida desde las peacuterdidas y retardos observados por terminales en los extremos

Es la estrategia usada por TCP

Control de congestioacuten asistido por la red

routers proveen realimentacioacuten a sistemas extremos Un Bit uacutenico indicando

congestioacuten (eg SNA DECbit TCPIP ECN ATM)

Expliacutecitamente se informa al Tx la tasa que el router puede soportar

Los podemos clasificar en dos grupos amplios

Capa Transporte 3-10

Caso de estudio Control de congestioacuten en ATM ABR (tecnologiacutea de red capa 3 y menores)ABR Available Bit Rate Es un servicio ldquoelaacutesticordquo o

flexible Si camino del Tx tiene

poca carga Tx deberiacutea usar ancho

de banda disponible Si camino de Tx estaacute

congestionado Tx reduce a un miacutenimo

la tasa garantizada

Celdas RM (resource

management) Enviadas a intervalos por Tx

entremedio de celdas de datos bits en celda RM modificados por

switches ndash en lenguaje ATM- (ldquoasistido por la redrdquo) Bit NI no incrementar tasa (=

congestioacuten moderada) Bit CI Congestion Indication

Celdas RM son retornadas al Tx

por el Rx con bits intactos ATM Asynchronous Transfer Mode

Capa Transporte 3-11

Caso de estudio Control de congestioacuten en ATM ABR

Campo ER (explicit rate) de dos bytes en celda RM Un Switch congestionado puede bajar valor de ER en la celda Tasa de enviacuteo del Tx se ajusta a la tasa miacutenima soportable en

el camino entre fuente y destino (la del switch maacutes criacutetico) Bit EFCI (explicit forward congestion indicator) en celdas

de datos es fijado a 1 por switch congestionado Si celda de datos precedente a celda RM tiene el EFCI

marcado el destino marca bit CI en celda RM retornada

Capa Transporte 3-12

Capiacutetulo 3 Continuacioacuten

31 Servicios de la capa transporte

32 Multiplexing y demultiplexing

33 Transporte sin conexioacuten UDP

34 Principios de transferencia confiable de datos

35 Transporte orientado a la conexioacuten TCP Estructura de un segmento Transferencia confiable de

datos Control de flujo Administracioacuten de conexioacuten

36 Principios del control de congestioacuten

37 Control de congestioacuten en TCP

Capa Transporte 3-13

Control de Congestioacuten en TCP Usa control extremo a extremo (sin

asistencia de la red) Tx limita su ventana de transmisioacuten

Si Rx tiene espacio aproximadamente

CongWin es dinaacutemica y funcioacuten de la congestioacuten percibida de la red

RcvWindow es el nuacutemero de segmentos (o bytes) que el Rx puede recibir en su buffer (y entonces el Tx puede enviar sin acuse de recibo)

iquestCoacutemo el Tx percibe la congestioacuten

Evento de peacuterdida = timeout oacute 3 acks duplicados

Tx TCP reduce tasa (CongWin) despueacutes de un evento de peacuterdida

Hay tres mecanismos AIMD (Additive-Increase

Multiplicative-Decrease) ldquoPartida lentardquo Conservativo despueacutes de

evento de timeout

tasa = CongWin

RTT Bytessec

LastByteSentminusLastByteAckedleminCongWin RcvWindow

Capa Transporte 3-14

TCP AIMD (Additive-Increase Multiplicative-Decrease)

Decrecimiento multiplicativo reducir CongWin a la mitad luego de peacuterdida

Aumento aditivo aumenta CongWin en 1 MSS cada RTT en ausencia de peacuterdida En algunas implementaciones CongWin incrementa en MSSx(MSSCongWin) por cada ACK

MSS (Maximum Segment Size) es la maacutexima cantidad de datos que se pueden enviar en cada segmento

Capa Transporte 3-15

Partida lenta en TCP (slow start)

Cuando la conexioacuten comienza CongWin = 1 MSS Ejemplo MSS = 500 bytes amp

RTT = 200 msec Tasa inicial = 20 kbps

Ancho de banda disponible puede ser gtgt MSSRTT Es deseable aumentar

raacutepidamente hasta una tasa respetable

Cuando la conexioacuten comienza aumentar tasa exponencialmente raacutepido hasta tener primer evento de peacuterdida

Slow Start porque parte muy tiacutemidamente

Capa Transporte 3-16

Partida Lenta en TCP (maacutes)

Cuando la conexioacuten comienza aumentar tasa exponencialmente hasta primera peacuterdida Duplicar CongWin cada

RTT Es hecho incrementando CongWin en 1 MSS por cada ACK recibido

Resumen tasa inicial es lenta pero se acelera exponencialmente raacutepido

Host A

one segment

RTT

Host B

time

two segments

four segments

Capa Transporte 3-17

Refinamiento a Partida Lenta en TCP Despueacutes de 3 ACKs

duplicados CongWin baja a la mitad Luego la ventana crece

linealmente Despueacutes de un timeout

CongWin es fijada en 1 MSS

Luego la ventana crece exponencialmente hasta un umbral luego crece linealmente

bull3 ACKs duplicados indican la red es capaz de transportar algunos segmentos (soacutelo llegan fuera de orden en el Rx) Se perdioacute uno pero llegaron los otros y por eso tenemos ACKs duplicadosbull timeout antes de 3 duplicados es ldquomaacutes alarmanterdquo (no llegaron)

Filosofiacutea

Capa Transporte 3-18

Refinamiento a Partida Lenta en TCP (cont)

Q iquestCuaacutendo deberiacutea cambiar el aumento de exponencial a lineal

A Un buen criterio es Cuando CongWin llega a 12 de su valor antes del timeout

Implementacioacuten Umbral variable (variable

threshold) Ante evento de peacuterdidas el

umbral es fijado en 12 de CongWin justo antes de la peacuterdida

Tahoe primera versioacuten de control de congestioacuten en TCP No distinguiacutea entre timeout o ACK duplicadosReno versioacuten siguiente en TCP Siacute distingue timeout de ACK duplicados Es como TCP opera hoy

3 ACKs Duplicados

Evento

umbral

Mejor

Capa Transporte 3-19

Resumen Control de Congestioacuten en TCP Cuando CongWin estaacute bajo el Threshold (umbral) Tx estaacute en fase slow-start la ventana de transmisioacuten crece exponencialmente

Cuando CongWin estaacute sobre Threshold Tx estaacute en fase abolicioacuten de congestioacuten la ventana crece linealmente

Cuando llegan tres ACK duplicados Threshold pasa a CongWin2 y CongWin pasa a Threshold

Cuando ocurre un timeout Threshold pasa a CongWin2 y CongWin se lleva a 1 MSS

Capa Transporte 3-20

Control de congestioacuten del Tx TCP

SS or CA

SS or CA

SS or CA

CongestionAvoidance (CA)

Slow Start (SS)

State

CongWin y Threshold no cambian

Increment duplicate ACK count for segment being acked

Duplicate ACK

Ingresa a Partida Lenta (slow start)

Threshold = CongWin2 CongWin = 1 MSSSet state to ldquoSlow Startrdquo

Timeout

Recuperacioacuten raacutepida implementando reduccioacuten multiplicativa CongWin no caeraacute bajo 1 MSS

Threshold = CongWin2 CongWin = ThresholdSet state to ldquoCongestion Avoidancerdquo

Loss event detected by triple duplicate ACK

Aumento aditivo resulta en aumento de CongWin en (aproximadamente) 1 MSS cada RTT

CongWin = CongWin+MSS (MSSCongWin)

ACK receipt for previously unacked data

Resulta en una duplicacioacuten de CongWin cada RTT

CongWin = CongWin + MSS If (CongWin gt Threshold) set state to ldquoCongestion Avoidancerdquo

ACK receipt for previously unacked data

CommentaryTCP Sender Action Event

Capa Transporte 3-21

Throughput Simplificado de TCP (tasa de transferencia de datos lograda) iquestCuaacutel es el throughput promedio de TCP como una

funcioacuten del tamantildeo de ventana CongWin y RTT Ignoremos slow start ya que al ser exponencial es una fase

muy corta TCP pide ancho de banda adiciona al incrementar W en

1 MSS por cada RTT hasta una peacuterdida Sea W el tamantildeo de la ventana (en bytes) cuando

ocurre una peacuterdida Cuando la ventana es W el throughput es WRTT Justo despueacutes de la peacuterdida la ventana cae a W2 y el

throughput a W2RTT Throughput promedio entre W2RTT y WRTT es 075

WRTT Esto debido a que el throughput crece linealmente entre

ambos valores

Capa Transporte 3-22

Futuro de TCP Ejemplo segmentos de 1500 bytes RTT de

100ms queremos throughput de 10 Gbps Requiere tamantildeo de ventana CongWin W =

83333 (segmentos en traacutensito) Throughput en teacuterminos de tasa de peacuterdida (L) es

L=(bytes perdidos)(Nuacutemero total enviados) Para el throughput deseado con el algoritmo de

control de congestioacuten actual se toleran probabilidades de peacuterdida de soacutelo L = 210-10 Wow (1 cada 5 mil millones de segmentos)

Se requieren nuevas versiones de TCP para enlaces de alta velocidad (ver RFC 3649)

AvgThroughput= 122lowastMSSRTT L

Capa Transporte 3-23

Objetivo de la Equidad (fairness) Si K sesiones TCP comparten un mismo enlace de ancho de banda R cada uno deberiacutea tener una tasa promedio de RK

TCP connection 1

Router cuello de botella decapacidad R

TCP connection 2

Equidad en TCP

Capa Transporte 3-24

iquestPor queacute TCP es justaSupongamos dos sesiones compitiendo Aumento aditivo da pendiente de 1 como aumento de throughout Reduccioacuten multiplicativa reduce throughput proporcionalmente

R

R

Igual bandwidth compartido

Throughput Conexioacuten 1

Th

roughput

Con

exioacute

n 2

Peacuterdida decrece ancho de banda en factor de 2

Abolicioacuten de congestioacuten aumento aditivo

Abolicioacuten de congestioacuten aumento aditivo

Peacuterdida decrece ancho de banda en factor de 2

Capa Transporte 3-25

Equidad (maacutes)

Equidad y UDP Aplicaciones Multimedia

no usan TCP No quieren tasa ahogada

por control de congestioacuten

En su lugar usan UDP Enviacutean audioviacutedeo a tasa

constante y toleran peacuterdidas de paquetes

Aacuterea de investigacioacuten Hacerlas amistosas con TCP (TCP friendly)

Equidad y conexiones TCP paralelas

Nada previene a las aplicaciones de abrir conexiones paralelas entre dos hosts

Navegadores WEB hacen esto Ejemplo Sea un enlace de

tasa R soportando 9 conexiones Una aplicacioacuten nueva pide 1

conexioacuten TCP obtendraacute R10 Si la aplicacioacuten nueva pide 11

conexiones TCP obtendraacute 11R20 maacutes de R2

Capa Transporte 3-26

Capiacutetulo 3 Resumen

Principios detraacutes de los servicios de capa transporte multiplexing demultiplexing Transferencia confiable de

datos Control de flujo Control de congestioacuten

Uso e implementacioacuten en Internet UDP TCP

A continuacioacuten Dejaremos la

ldquoperiferiardquo o ldquoedgerdquo de la red (capas aplicacioacuten y transporte)

Nos internaremos en el centro de la red ldquonetwork corerdquo

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
Page 10: 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 Transporte 3-10

Caso de estudio Control de congestioacuten en ATM ABR (tecnologiacutea de red capa 3 y menores)ABR Available Bit Rate Es un servicio ldquoelaacutesticordquo o

flexible Si camino del Tx tiene

poca carga Tx deberiacutea usar ancho

de banda disponible Si camino de Tx estaacute

congestionado Tx reduce a un miacutenimo

la tasa garantizada

Celdas RM (resource

management) Enviadas a intervalos por Tx

entremedio de celdas de datos bits en celda RM modificados por

switches ndash en lenguaje ATM- (ldquoasistido por la redrdquo) Bit NI no incrementar tasa (=

congestioacuten moderada) Bit CI Congestion Indication

Celdas RM son retornadas al Tx

por el Rx con bits intactos ATM Asynchronous Transfer Mode

Capa Transporte 3-11

Caso de estudio Control de congestioacuten en ATM ABR

Campo ER (explicit rate) de dos bytes en celda RM Un Switch congestionado puede bajar valor de ER en la celda Tasa de enviacuteo del Tx se ajusta a la tasa miacutenima soportable en

el camino entre fuente y destino (la del switch maacutes criacutetico) Bit EFCI (explicit forward congestion indicator) en celdas

de datos es fijado a 1 por switch congestionado Si celda de datos precedente a celda RM tiene el EFCI

marcado el destino marca bit CI en celda RM retornada

Capa Transporte 3-12

Capiacutetulo 3 Continuacioacuten

31 Servicios de la capa transporte

32 Multiplexing y demultiplexing

33 Transporte sin conexioacuten UDP

34 Principios de transferencia confiable de datos

35 Transporte orientado a la conexioacuten TCP Estructura de un segmento Transferencia confiable de

datos Control de flujo Administracioacuten de conexioacuten

36 Principios del control de congestioacuten

37 Control de congestioacuten en TCP

Capa Transporte 3-13

Control de Congestioacuten en TCP Usa control extremo a extremo (sin

asistencia de la red) Tx limita su ventana de transmisioacuten

Si Rx tiene espacio aproximadamente

CongWin es dinaacutemica y funcioacuten de la congestioacuten percibida de la red

RcvWindow es el nuacutemero de segmentos (o bytes) que el Rx puede recibir en su buffer (y entonces el Tx puede enviar sin acuse de recibo)

iquestCoacutemo el Tx percibe la congestioacuten

Evento de peacuterdida = timeout oacute 3 acks duplicados

Tx TCP reduce tasa (CongWin) despueacutes de un evento de peacuterdida

Hay tres mecanismos AIMD (Additive-Increase

Multiplicative-Decrease) ldquoPartida lentardquo Conservativo despueacutes de

evento de timeout

tasa = CongWin

RTT Bytessec

LastByteSentminusLastByteAckedleminCongWin RcvWindow

Capa Transporte 3-14

TCP AIMD (Additive-Increase Multiplicative-Decrease)

Decrecimiento multiplicativo reducir CongWin a la mitad luego de peacuterdida

Aumento aditivo aumenta CongWin en 1 MSS cada RTT en ausencia de peacuterdida En algunas implementaciones CongWin incrementa en MSSx(MSSCongWin) por cada ACK

MSS (Maximum Segment Size) es la maacutexima cantidad de datos que se pueden enviar en cada segmento

Capa Transporte 3-15

Partida lenta en TCP (slow start)

Cuando la conexioacuten comienza CongWin = 1 MSS Ejemplo MSS = 500 bytes amp

RTT = 200 msec Tasa inicial = 20 kbps

Ancho de banda disponible puede ser gtgt MSSRTT Es deseable aumentar

raacutepidamente hasta una tasa respetable

Cuando la conexioacuten comienza aumentar tasa exponencialmente raacutepido hasta tener primer evento de peacuterdida

Slow Start porque parte muy tiacutemidamente

Capa Transporte 3-16

Partida Lenta en TCP (maacutes)

Cuando la conexioacuten comienza aumentar tasa exponencialmente hasta primera peacuterdida Duplicar CongWin cada

RTT Es hecho incrementando CongWin en 1 MSS por cada ACK recibido

Resumen tasa inicial es lenta pero se acelera exponencialmente raacutepido

Host A

one segment

RTT

Host B

time

two segments

four segments

Capa Transporte 3-17

Refinamiento a Partida Lenta en TCP Despueacutes de 3 ACKs

duplicados CongWin baja a la mitad Luego la ventana crece

linealmente Despueacutes de un timeout

CongWin es fijada en 1 MSS

Luego la ventana crece exponencialmente hasta un umbral luego crece linealmente

bull3 ACKs duplicados indican la red es capaz de transportar algunos segmentos (soacutelo llegan fuera de orden en el Rx) Se perdioacute uno pero llegaron los otros y por eso tenemos ACKs duplicadosbull timeout antes de 3 duplicados es ldquomaacutes alarmanterdquo (no llegaron)

Filosofiacutea

Capa Transporte 3-18

Refinamiento a Partida Lenta en TCP (cont)

Q iquestCuaacutendo deberiacutea cambiar el aumento de exponencial a lineal

A Un buen criterio es Cuando CongWin llega a 12 de su valor antes del timeout

Implementacioacuten Umbral variable (variable

threshold) Ante evento de peacuterdidas el

umbral es fijado en 12 de CongWin justo antes de la peacuterdida

Tahoe primera versioacuten de control de congestioacuten en TCP No distinguiacutea entre timeout o ACK duplicadosReno versioacuten siguiente en TCP Siacute distingue timeout de ACK duplicados Es como TCP opera hoy

3 ACKs Duplicados

Evento

umbral

Mejor

Capa Transporte 3-19

Resumen Control de Congestioacuten en TCP Cuando CongWin estaacute bajo el Threshold (umbral) Tx estaacute en fase slow-start la ventana de transmisioacuten crece exponencialmente

Cuando CongWin estaacute sobre Threshold Tx estaacute en fase abolicioacuten de congestioacuten la ventana crece linealmente

Cuando llegan tres ACK duplicados Threshold pasa a CongWin2 y CongWin pasa a Threshold

Cuando ocurre un timeout Threshold pasa a CongWin2 y CongWin se lleva a 1 MSS

Capa Transporte 3-20

Control de congestioacuten del Tx TCP

SS or CA

SS or CA

SS or CA

CongestionAvoidance (CA)

Slow Start (SS)

State

CongWin y Threshold no cambian

Increment duplicate ACK count for segment being acked

Duplicate ACK

Ingresa a Partida Lenta (slow start)

Threshold = CongWin2 CongWin = 1 MSSSet state to ldquoSlow Startrdquo

Timeout

Recuperacioacuten raacutepida implementando reduccioacuten multiplicativa CongWin no caeraacute bajo 1 MSS

Threshold = CongWin2 CongWin = ThresholdSet state to ldquoCongestion Avoidancerdquo

Loss event detected by triple duplicate ACK

Aumento aditivo resulta en aumento de CongWin en (aproximadamente) 1 MSS cada RTT

CongWin = CongWin+MSS (MSSCongWin)

ACK receipt for previously unacked data

Resulta en una duplicacioacuten de CongWin cada RTT

CongWin = CongWin + MSS If (CongWin gt Threshold) set state to ldquoCongestion Avoidancerdquo

ACK receipt for previously unacked data

CommentaryTCP Sender Action Event

Capa Transporte 3-21

Throughput Simplificado de TCP (tasa de transferencia de datos lograda) iquestCuaacutel es el throughput promedio de TCP como una

funcioacuten del tamantildeo de ventana CongWin y RTT Ignoremos slow start ya que al ser exponencial es una fase

muy corta TCP pide ancho de banda adiciona al incrementar W en

1 MSS por cada RTT hasta una peacuterdida Sea W el tamantildeo de la ventana (en bytes) cuando

ocurre una peacuterdida Cuando la ventana es W el throughput es WRTT Justo despueacutes de la peacuterdida la ventana cae a W2 y el

throughput a W2RTT Throughput promedio entre W2RTT y WRTT es 075

WRTT Esto debido a que el throughput crece linealmente entre

ambos valores

Capa Transporte 3-22

Futuro de TCP Ejemplo segmentos de 1500 bytes RTT de

100ms queremos throughput de 10 Gbps Requiere tamantildeo de ventana CongWin W =

83333 (segmentos en traacutensito) Throughput en teacuterminos de tasa de peacuterdida (L) es

L=(bytes perdidos)(Nuacutemero total enviados) Para el throughput deseado con el algoritmo de

control de congestioacuten actual se toleran probabilidades de peacuterdida de soacutelo L = 210-10 Wow (1 cada 5 mil millones de segmentos)

Se requieren nuevas versiones de TCP para enlaces de alta velocidad (ver RFC 3649)

AvgThroughput= 122lowastMSSRTT L

Capa Transporte 3-23

Objetivo de la Equidad (fairness) Si K sesiones TCP comparten un mismo enlace de ancho de banda R cada uno deberiacutea tener una tasa promedio de RK

TCP connection 1

Router cuello de botella decapacidad R

TCP connection 2

Equidad en TCP

Capa Transporte 3-24

iquestPor queacute TCP es justaSupongamos dos sesiones compitiendo Aumento aditivo da pendiente de 1 como aumento de throughout Reduccioacuten multiplicativa reduce throughput proporcionalmente

R

R

Igual bandwidth compartido

Throughput Conexioacuten 1

Th

roughput

Con

exioacute

n 2

Peacuterdida decrece ancho de banda en factor de 2

Abolicioacuten de congestioacuten aumento aditivo

Abolicioacuten de congestioacuten aumento aditivo

Peacuterdida decrece ancho de banda en factor de 2

Capa Transporte 3-25

Equidad (maacutes)

Equidad y UDP Aplicaciones Multimedia

no usan TCP No quieren tasa ahogada

por control de congestioacuten

En su lugar usan UDP Enviacutean audioviacutedeo a tasa

constante y toleran peacuterdidas de paquetes

Aacuterea de investigacioacuten Hacerlas amistosas con TCP (TCP friendly)

Equidad y conexiones TCP paralelas

Nada previene a las aplicaciones de abrir conexiones paralelas entre dos hosts

Navegadores WEB hacen esto Ejemplo Sea un enlace de

tasa R soportando 9 conexiones Una aplicacioacuten nueva pide 1

conexioacuten TCP obtendraacute R10 Si la aplicacioacuten nueva pide 11

conexiones TCP obtendraacute 11R20 maacutes de R2

Capa Transporte 3-26

Capiacutetulo 3 Resumen

Principios detraacutes de los servicios de capa transporte multiplexing demultiplexing Transferencia confiable de

datos Control de flujo Control de congestioacuten

Uso e implementacioacuten en Internet UDP TCP

A continuacioacuten Dejaremos la

ldquoperiferiardquo o ldquoedgerdquo de la red (capas aplicacioacuten y transporte)

Nos internaremos en el centro de la red ldquonetwork corerdquo

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
Page 11: 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 Transporte 3-11

Caso de estudio Control de congestioacuten en ATM ABR

Campo ER (explicit rate) de dos bytes en celda RM Un Switch congestionado puede bajar valor de ER en la celda Tasa de enviacuteo del Tx se ajusta a la tasa miacutenima soportable en

el camino entre fuente y destino (la del switch maacutes criacutetico) Bit EFCI (explicit forward congestion indicator) en celdas

de datos es fijado a 1 por switch congestionado Si celda de datos precedente a celda RM tiene el EFCI

marcado el destino marca bit CI en celda RM retornada

Capa Transporte 3-12

Capiacutetulo 3 Continuacioacuten

31 Servicios de la capa transporte

32 Multiplexing y demultiplexing

33 Transporte sin conexioacuten UDP

34 Principios de transferencia confiable de datos

35 Transporte orientado a la conexioacuten TCP Estructura de un segmento Transferencia confiable de

datos Control de flujo Administracioacuten de conexioacuten

36 Principios del control de congestioacuten

37 Control de congestioacuten en TCP

Capa Transporte 3-13

Control de Congestioacuten en TCP Usa control extremo a extremo (sin

asistencia de la red) Tx limita su ventana de transmisioacuten

Si Rx tiene espacio aproximadamente

CongWin es dinaacutemica y funcioacuten de la congestioacuten percibida de la red

RcvWindow es el nuacutemero de segmentos (o bytes) que el Rx puede recibir en su buffer (y entonces el Tx puede enviar sin acuse de recibo)

iquestCoacutemo el Tx percibe la congestioacuten

Evento de peacuterdida = timeout oacute 3 acks duplicados

Tx TCP reduce tasa (CongWin) despueacutes de un evento de peacuterdida

Hay tres mecanismos AIMD (Additive-Increase

Multiplicative-Decrease) ldquoPartida lentardquo Conservativo despueacutes de

evento de timeout

tasa = CongWin

RTT Bytessec

LastByteSentminusLastByteAckedleminCongWin RcvWindow

Capa Transporte 3-14

TCP AIMD (Additive-Increase Multiplicative-Decrease)

Decrecimiento multiplicativo reducir CongWin a la mitad luego de peacuterdida

Aumento aditivo aumenta CongWin en 1 MSS cada RTT en ausencia de peacuterdida En algunas implementaciones CongWin incrementa en MSSx(MSSCongWin) por cada ACK

MSS (Maximum Segment Size) es la maacutexima cantidad de datos que se pueden enviar en cada segmento

Capa Transporte 3-15

Partida lenta en TCP (slow start)

Cuando la conexioacuten comienza CongWin = 1 MSS Ejemplo MSS = 500 bytes amp

RTT = 200 msec Tasa inicial = 20 kbps

Ancho de banda disponible puede ser gtgt MSSRTT Es deseable aumentar

raacutepidamente hasta una tasa respetable

Cuando la conexioacuten comienza aumentar tasa exponencialmente raacutepido hasta tener primer evento de peacuterdida

Slow Start porque parte muy tiacutemidamente

Capa Transporte 3-16

Partida Lenta en TCP (maacutes)

Cuando la conexioacuten comienza aumentar tasa exponencialmente hasta primera peacuterdida Duplicar CongWin cada

RTT Es hecho incrementando CongWin en 1 MSS por cada ACK recibido

Resumen tasa inicial es lenta pero se acelera exponencialmente raacutepido

Host A

one segment

RTT

Host B

time

two segments

four segments

Capa Transporte 3-17

Refinamiento a Partida Lenta en TCP Despueacutes de 3 ACKs

duplicados CongWin baja a la mitad Luego la ventana crece

linealmente Despueacutes de un timeout

CongWin es fijada en 1 MSS

Luego la ventana crece exponencialmente hasta un umbral luego crece linealmente

bull3 ACKs duplicados indican la red es capaz de transportar algunos segmentos (soacutelo llegan fuera de orden en el Rx) Se perdioacute uno pero llegaron los otros y por eso tenemos ACKs duplicadosbull timeout antes de 3 duplicados es ldquomaacutes alarmanterdquo (no llegaron)

Filosofiacutea

Capa Transporte 3-18

Refinamiento a Partida Lenta en TCP (cont)

Q iquestCuaacutendo deberiacutea cambiar el aumento de exponencial a lineal

A Un buen criterio es Cuando CongWin llega a 12 de su valor antes del timeout

Implementacioacuten Umbral variable (variable

threshold) Ante evento de peacuterdidas el

umbral es fijado en 12 de CongWin justo antes de la peacuterdida

Tahoe primera versioacuten de control de congestioacuten en TCP No distinguiacutea entre timeout o ACK duplicadosReno versioacuten siguiente en TCP Siacute distingue timeout de ACK duplicados Es como TCP opera hoy

3 ACKs Duplicados

Evento

umbral

Mejor

Capa Transporte 3-19

Resumen Control de Congestioacuten en TCP Cuando CongWin estaacute bajo el Threshold (umbral) Tx estaacute en fase slow-start la ventana de transmisioacuten crece exponencialmente

Cuando CongWin estaacute sobre Threshold Tx estaacute en fase abolicioacuten de congestioacuten la ventana crece linealmente

Cuando llegan tres ACK duplicados Threshold pasa a CongWin2 y CongWin pasa a Threshold

Cuando ocurre un timeout Threshold pasa a CongWin2 y CongWin se lleva a 1 MSS

Capa Transporte 3-20

Control de congestioacuten del Tx TCP

SS or CA

SS or CA

SS or CA

CongestionAvoidance (CA)

Slow Start (SS)

State

CongWin y Threshold no cambian

Increment duplicate ACK count for segment being acked

Duplicate ACK

Ingresa a Partida Lenta (slow start)

Threshold = CongWin2 CongWin = 1 MSSSet state to ldquoSlow Startrdquo

Timeout

Recuperacioacuten raacutepida implementando reduccioacuten multiplicativa CongWin no caeraacute bajo 1 MSS

Threshold = CongWin2 CongWin = ThresholdSet state to ldquoCongestion Avoidancerdquo

Loss event detected by triple duplicate ACK

Aumento aditivo resulta en aumento de CongWin en (aproximadamente) 1 MSS cada RTT

CongWin = CongWin+MSS (MSSCongWin)

ACK receipt for previously unacked data

Resulta en una duplicacioacuten de CongWin cada RTT

CongWin = CongWin + MSS If (CongWin gt Threshold) set state to ldquoCongestion Avoidancerdquo

ACK receipt for previously unacked data

CommentaryTCP Sender Action Event

Capa Transporte 3-21

Throughput Simplificado de TCP (tasa de transferencia de datos lograda) iquestCuaacutel es el throughput promedio de TCP como una

funcioacuten del tamantildeo de ventana CongWin y RTT Ignoremos slow start ya que al ser exponencial es una fase

muy corta TCP pide ancho de banda adiciona al incrementar W en

1 MSS por cada RTT hasta una peacuterdida Sea W el tamantildeo de la ventana (en bytes) cuando

ocurre una peacuterdida Cuando la ventana es W el throughput es WRTT Justo despueacutes de la peacuterdida la ventana cae a W2 y el

throughput a W2RTT Throughput promedio entre W2RTT y WRTT es 075

WRTT Esto debido a que el throughput crece linealmente entre

ambos valores

Capa Transporte 3-22

Futuro de TCP Ejemplo segmentos de 1500 bytes RTT de

100ms queremos throughput de 10 Gbps Requiere tamantildeo de ventana CongWin W =

83333 (segmentos en traacutensito) Throughput en teacuterminos de tasa de peacuterdida (L) es

L=(bytes perdidos)(Nuacutemero total enviados) Para el throughput deseado con el algoritmo de

control de congestioacuten actual se toleran probabilidades de peacuterdida de soacutelo L = 210-10 Wow (1 cada 5 mil millones de segmentos)

Se requieren nuevas versiones de TCP para enlaces de alta velocidad (ver RFC 3649)

AvgThroughput= 122lowastMSSRTT L

Capa Transporte 3-23

Objetivo de la Equidad (fairness) Si K sesiones TCP comparten un mismo enlace de ancho de banda R cada uno deberiacutea tener una tasa promedio de RK

TCP connection 1

Router cuello de botella decapacidad R

TCP connection 2

Equidad en TCP

Capa Transporte 3-24

iquestPor queacute TCP es justaSupongamos dos sesiones compitiendo Aumento aditivo da pendiente de 1 como aumento de throughout Reduccioacuten multiplicativa reduce throughput proporcionalmente

R

R

Igual bandwidth compartido

Throughput Conexioacuten 1

Th

roughput

Con

exioacute

n 2

Peacuterdida decrece ancho de banda en factor de 2

Abolicioacuten de congestioacuten aumento aditivo

Abolicioacuten de congestioacuten aumento aditivo

Peacuterdida decrece ancho de banda en factor de 2

Capa Transporte 3-25

Equidad (maacutes)

Equidad y UDP Aplicaciones Multimedia

no usan TCP No quieren tasa ahogada

por control de congestioacuten

En su lugar usan UDP Enviacutean audioviacutedeo a tasa

constante y toleran peacuterdidas de paquetes

Aacuterea de investigacioacuten Hacerlas amistosas con TCP (TCP friendly)

Equidad y conexiones TCP paralelas

Nada previene a las aplicaciones de abrir conexiones paralelas entre dos hosts

Navegadores WEB hacen esto Ejemplo Sea un enlace de

tasa R soportando 9 conexiones Una aplicacioacuten nueva pide 1

conexioacuten TCP obtendraacute R10 Si la aplicacioacuten nueva pide 11

conexiones TCP obtendraacute 11R20 maacutes de R2

Capa Transporte 3-26

Capiacutetulo 3 Resumen

Principios detraacutes de los servicios de capa transporte multiplexing demultiplexing Transferencia confiable de

datos Control de flujo Control de congestioacuten

Uso e implementacioacuten en Internet UDP TCP

A continuacioacuten Dejaremos la

ldquoperiferiardquo o ldquoedgerdquo de la red (capas aplicacioacuten y transporte)

Nos internaremos en el centro de la red ldquonetwork corerdquo

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
Page 12: 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 Transporte 3-12

Capiacutetulo 3 Continuacioacuten

31 Servicios de la capa transporte

32 Multiplexing y demultiplexing

33 Transporte sin conexioacuten UDP

34 Principios de transferencia confiable de datos

35 Transporte orientado a la conexioacuten TCP Estructura de un segmento Transferencia confiable de

datos Control de flujo Administracioacuten de conexioacuten

36 Principios del control de congestioacuten

37 Control de congestioacuten en TCP

Capa Transporte 3-13

Control de Congestioacuten en TCP Usa control extremo a extremo (sin

asistencia de la red) Tx limita su ventana de transmisioacuten

Si Rx tiene espacio aproximadamente

CongWin es dinaacutemica y funcioacuten de la congestioacuten percibida de la red

RcvWindow es el nuacutemero de segmentos (o bytes) que el Rx puede recibir en su buffer (y entonces el Tx puede enviar sin acuse de recibo)

iquestCoacutemo el Tx percibe la congestioacuten

Evento de peacuterdida = timeout oacute 3 acks duplicados

Tx TCP reduce tasa (CongWin) despueacutes de un evento de peacuterdida

Hay tres mecanismos AIMD (Additive-Increase

Multiplicative-Decrease) ldquoPartida lentardquo Conservativo despueacutes de

evento de timeout

tasa = CongWin

RTT Bytessec

LastByteSentminusLastByteAckedleminCongWin RcvWindow

Capa Transporte 3-14

TCP AIMD (Additive-Increase Multiplicative-Decrease)

Decrecimiento multiplicativo reducir CongWin a la mitad luego de peacuterdida

Aumento aditivo aumenta CongWin en 1 MSS cada RTT en ausencia de peacuterdida En algunas implementaciones CongWin incrementa en MSSx(MSSCongWin) por cada ACK

MSS (Maximum Segment Size) es la maacutexima cantidad de datos que se pueden enviar en cada segmento

Capa Transporte 3-15

Partida lenta en TCP (slow start)

Cuando la conexioacuten comienza CongWin = 1 MSS Ejemplo MSS = 500 bytes amp

RTT = 200 msec Tasa inicial = 20 kbps

Ancho de banda disponible puede ser gtgt MSSRTT Es deseable aumentar

raacutepidamente hasta una tasa respetable

Cuando la conexioacuten comienza aumentar tasa exponencialmente raacutepido hasta tener primer evento de peacuterdida

Slow Start porque parte muy tiacutemidamente

Capa Transporte 3-16

Partida Lenta en TCP (maacutes)

Cuando la conexioacuten comienza aumentar tasa exponencialmente hasta primera peacuterdida Duplicar CongWin cada

RTT Es hecho incrementando CongWin en 1 MSS por cada ACK recibido

Resumen tasa inicial es lenta pero se acelera exponencialmente raacutepido

Host A

one segment

RTT

Host B

time

two segments

four segments

Capa Transporte 3-17

Refinamiento a Partida Lenta en TCP Despueacutes de 3 ACKs

duplicados CongWin baja a la mitad Luego la ventana crece

linealmente Despueacutes de un timeout

CongWin es fijada en 1 MSS

Luego la ventana crece exponencialmente hasta un umbral luego crece linealmente

bull3 ACKs duplicados indican la red es capaz de transportar algunos segmentos (soacutelo llegan fuera de orden en el Rx) Se perdioacute uno pero llegaron los otros y por eso tenemos ACKs duplicadosbull timeout antes de 3 duplicados es ldquomaacutes alarmanterdquo (no llegaron)

Filosofiacutea

Capa Transporte 3-18

Refinamiento a Partida Lenta en TCP (cont)

Q iquestCuaacutendo deberiacutea cambiar el aumento de exponencial a lineal

A Un buen criterio es Cuando CongWin llega a 12 de su valor antes del timeout

Implementacioacuten Umbral variable (variable

threshold) Ante evento de peacuterdidas el

umbral es fijado en 12 de CongWin justo antes de la peacuterdida

Tahoe primera versioacuten de control de congestioacuten en TCP No distinguiacutea entre timeout o ACK duplicadosReno versioacuten siguiente en TCP Siacute distingue timeout de ACK duplicados Es como TCP opera hoy

3 ACKs Duplicados

Evento

umbral

Mejor

Capa Transporte 3-19

Resumen Control de Congestioacuten en TCP Cuando CongWin estaacute bajo el Threshold (umbral) Tx estaacute en fase slow-start la ventana de transmisioacuten crece exponencialmente

Cuando CongWin estaacute sobre Threshold Tx estaacute en fase abolicioacuten de congestioacuten la ventana crece linealmente

Cuando llegan tres ACK duplicados Threshold pasa a CongWin2 y CongWin pasa a Threshold

Cuando ocurre un timeout Threshold pasa a CongWin2 y CongWin se lleva a 1 MSS

Capa Transporte 3-20

Control de congestioacuten del Tx TCP

SS or CA

SS or CA

SS or CA

CongestionAvoidance (CA)

Slow Start (SS)

State

CongWin y Threshold no cambian

Increment duplicate ACK count for segment being acked

Duplicate ACK

Ingresa a Partida Lenta (slow start)

Threshold = CongWin2 CongWin = 1 MSSSet state to ldquoSlow Startrdquo

Timeout

Recuperacioacuten raacutepida implementando reduccioacuten multiplicativa CongWin no caeraacute bajo 1 MSS

Threshold = CongWin2 CongWin = ThresholdSet state to ldquoCongestion Avoidancerdquo

Loss event detected by triple duplicate ACK

Aumento aditivo resulta en aumento de CongWin en (aproximadamente) 1 MSS cada RTT

CongWin = CongWin+MSS (MSSCongWin)

ACK receipt for previously unacked data

Resulta en una duplicacioacuten de CongWin cada RTT

CongWin = CongWin + MSS If (CongWin gt Threshold) set state to ldquoCongestion Avoidancerdquo

ACK receipt for previously unacked data

CommentaryTCP Sender Action Event

Capa Transporte 3-21

Throughput Simplificado de TCP (tasa de transferencia de datos lograda) iquestCuaacutel es el throughput promedio de TCP como una

funcioacuten del tamantildeo de ventana CongWin y RTT Ignoremos slow start ya que al ser exponencial es una fase

muy corta TCP pide ancho de banda adiciona al incrementar W en

1 MSS por cada RTT hasta una peacuterdida Sea W el tamantildeo de la ventana (en bytes) cuando

ocurre una peacuterdida Cuando la ventana es W el throughput es WRTT Justo despueacutes de la peacuterdida la ventana cae a W2 y el

throughput a W2RTT Throughput promedio entre W2RTT y WRTT es 075

WRTT Esto debido a que el throughput crece linealmente entre

ambos valores

Capa Transporte 3-22

Futuro de TCP Ejemplo segmentos de 1500 bytes RTT de

100ms queremos throughput de 10 Gbps Requiere tamantildeo de ventana CongWin W =

83333 (segmentos en traacutensito) Throughput en teacuterminos de tasa de peacuterdida (L) es

L=(bytes perdidos)(Nuacutemero total enviados) Para el throughput deseado con el algoritmo de

control de congestioacuten actual se toleran probabilidades de peacuterdida de soacutelo L = 210-10 Wow (1 cada 5 mil millones de segmentos)

Se requieren nuevas versiones de TCP para enlaces de alta velocidad (ver RFC 3649)

AvgThroughput= 122lowastMSSRTT L

Capa Transporte 3-23

Objetivo de la Equidad (fairness) Si K sesiones TCP comparten un mismo enlace de ancho de banda R cada uno deberiacutea tener una tasa promedio de RK

TCP connection 1

Router cuello de botella decapacidad R

TCP connection 2

Equidad en TCP

Capa Transporte 3-24

iquestPor queacute TCP es justaSupongamos dos sesiones compitiendo Aumento aditivo da pendiente de 1 como aumento de throughout Reduccioacuten multiplicativa reduce throughput proporcionalmente

R

R

Igual bandwidth compartido

Throughput Conexioacuten 1

Th

roughput

Con

exioacute

n 2

Peacuterdida decrece ancho de banda en factor de 2

Abolicioacuten de congestioacuten aumento aditivo

Abolicioacuten de congestioacuten aumento aditivo

Peacuterdida decrece ancho de banda en factor de 2

Capa Transporte 3-25

Equidad (maacutes)

Equidad y UDP Aplicaciones Multimedia

no usan TCP No quieren tasa ahogada

por control de congestioacuten

En su lugar usan UDP Enviacutean audioviacutedeo a tasa

constante y toleran peacuterdidas de paquetes

Aacuterea de investigacioacuten Hacerlas amistosas con TCP (TCP friendly)

Equidad y conexiones TCP paralelas

Nada previene a las aplicaciones de abrir conexiones paralelas entre dos hosts

Navegadores WEB hacen esto Ejemplo Sea un enlace de

tasa R soportando 9 conexiones Una aplicacioacuten nueva pide 1

conexioacuten TCP obtendraacute R10 Si la aplicacioacuten nueva pide 11

conexiones TCP obtendraacute 11R20 maacutes de R2

Capa Transporte 3-26

Capiacutetulo 3 Resumen

Principios detraacutes de los servicios de capa transporte multiplexing demultiplexing Transferencia confiable de

datos Control de flujo Control de congestioacuten

Uso e implementacioacuten en Internet UDP TCP

A continuacioacuten Dejaremos la

ldquoperiferiardquo o ldquoedgerdquo de la red (capas aplicacioacuten y transporte)

Nos internaremos en el centro de la red ldquonetwork corerdquo

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
Page 13: 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 Transporte 3-13

Control de Congestioacuten en TCP Usa control extremo a extremo (sin

asistencia de la red) Tx limita su ventana de transmisioacuten

Si Rx tiene espacio aproximadamente

CongWin es dinaacutemica y funcioacuten de la congestioacuten percibida de la red

RcvWindow es el nuacutemero de segmentos (o bytes) que el Rx puede recibir en su buffer (y entonces el Tx puede enviar sin acuse de recibo)

iquestCoacutemo el Tx percibe la congestioacuten

Evento de peacuterdida = timeout oacute 3 acks duplicados

Tx TCP reduce tasa (CongWin) despueacutes de un evento de peacuterdida

Hay tres mecanismos AIMD (Additive-Increase

Multiplicative-Decrease) ldquoPartida lentardquo Conservativo despueacutes de

evento de timeout

tasa = CongWin

RTT Bytessec

LastByteSentminusLastByteAckedleminCongWin RcvWindow

Capa Transporte 3-14

TCP AIMD (Additive-Increase Multiplicative-Decrease)

Decrecimiento multiplicativo reducir CongWin a la mitad luego de peacuterdida

Aumento aditivo aumenta CongWin en 1 MSS cada RTT en ausencia de peacuterdida En algunas implementaciones CongWin incrementa en MSSx(MSSCongWin) por cada ACK

MSS (Maximum Segment Size) es la maacutexima cantidad de datos que se pueden enviar en cada segmento

Capa Transporte 3-15

Partida lenta en TCP (slow start)

Cuando la conexioacuten comienza CongWin = 1 MSS Ejemplo MSS = 500 bytes amp

RTT = 200 msec Tasa inicial = 20 kbps

Ancho de banda disponible puede ser gtgt MSSRTT Es deseable aumentar

raacutepidamente hasta una tasa respetable

Cuando la conexioacuten comienza aumentar tasa exponencialmente raacutepido hasta tener primer evento de peacuterdida

Slow Start porque parte muy tiacutemidamente

Capa Transporte 3-16

Partida Lenta en TCP (maacutes)

Cuando la conexioacuten comienza aumentar tasa exponencialmente hasta primera peacuterdida Duplicar CongWin cada

RTT Es hecho incrementando CongWin en 1 MSS por cada ACK recibido

Resumen tasa inicial es lenta pero se acelera exponencialmente raacutepido

Host A

one segment

RTT

Host B

time

two segments

four segments

Capa Transporte 3-17

Refinamiento a Partida Lenta en TCP Despueacutes de 3 ACKs

duplicados CongWin baja a la mitad Luego la ventana crece

linealmente Despueacutes de un timeout

CongWin es fijada en 1 MSS

Luego la ventana crece exponencialmente hasta un umbral luego crece linealmente

bull3 ACKs duplicados indican la red es capaz de transportar algunos segmentos (soacutelo llegan fuera de orden en el Rx) Se perdioacute uno pero llegaron los otros y por eso tenemos ACKs duplicadosbull timeout antes de 3 duplicados es ldquomaacutes alarmanterdquo (no llegaron)

Filosofiacutea

Capa Transporte 3-18

Refinamiento a Partida Lenta en TCP (cont)

Q iquestCuaacutendo deberiacutea cambiar el aumento de exponencial a lineal

A Un buen criterio es Cuando CongWin llega a 12 de su valor antes del timeout

Implementacioacuten Umbral variable (variable

threshold) Ante evento de peacuterdidas el

umbral es fijado en 12 de CongWin justo antes de la peacuterdida

Tahoe primera versioacuten de control de congestioacuten en TCP No distinguiacutea entre timeout o ACK duplicadosReno versioacuten siguiente en TCP Siacute distingue timeout de ACK duplicados Es como TCP opera hoy

3 ACKs Duplicados

Evento

umbral

Mejor

Capa Transporte 3-19

Resumen Control de Congestioacuten en TCP Cuando CongWin estaacute bajo el Threshold (umbral) Tx estaacute en fase slow-start la ventana de transmisioacuten crece exponencialmente

Cuando CongWin estaacute sobre Threshold Tx estaacute en fase abolicioacuten de congestioacuten la ventana crece linealmente

Cuando llegan tres ACK duplicados Threshold pasa a CongWin2 y CongWin pasa a Threshold

Cuando ocurre un timeout Threshold pasa a CongWin2 y CongWin se lleva a 1 MSS

Capa Transporte 3-20

Control de congestioacuten del Tx TCP

SS or CA

SS or CA

SS or CA

CongestionAvoidance (CA)

Slow Start (SS)

State

CongWin y Threshold no cambian

Increment duplicate ACK count for segment being acked

Duplicate ACK

Ingresa a Partida Lenta (slow start)

Threshold = CongWin2 CongWin = 1 MSSSet state to ldquoSlow Startrdquo

Timeout

Recuperacioacuten raacutepida implementando reduccioacuten multiplicativa CongWin no caeraacute bajo 1 MSS

Threshold = CongWin2 CongWin = ThresholdSet state to ldquoCongestion Avoidancerdquo

Loss event detected by triple duplicate ACK

Aumento aditivo resulta en aumento de CongWin en (aproximadamente) 1 MSS cada RTT

CongWin = CongWin+MSS (MSSCongWin)

ACK receipt for previously unacked data

Resulta en una duplicacioacuten de CongWin cada RTT

CongWin = CongWin + MSS If (CongWin gt Threshold) set state to ldquoCongestion Avoidancerdquo

ACK receipt for previously unacked data

CommentaryTCP Sender Action Event

Capa Transporte 3-21

Throughput Simplificado de TCP (tasa de transferencia de datos lograda) iquestCuaacutel es el throughput promedio de TCP como una

funcioacuten del tamantildeo de ventana CongWin y RTT Ignoremos slow start ya que al ser exponencial es una fase

muy corta TCP pide ancho de banda adiciona al incrementar W en

1 MSS por cada RTT hasta una peacuterdida Sea W el tamantildeo de la ventana (en bytes) cuando

ocurre una peacuterdida Cuando la ventana es W el throughput es WRTT Justo despueacutes de la peacuterdida la ventana cae a W2 y el

throughput a W2RTT Throughput promedio entre W2RTT y WRTT es 075

WRTT Esto debido a que el throughput crece linealmente entre

ambos valores

Capa Transporte 3-22

Futuro de TCP Ejemplo segmentos de 1500 bytes RTT de

100ms queremos throughput de 10 Gbps Requiere tamantildeo de ventana CongWin W =

83333 (segmentos en traacutensito) Throughput en teacuterminos de tasa de peacuterdida (L) es

L=(bytes perdidos)(Nuacutemero total enviados) Para el throughput deseado con el algoritmo de

control de congestioacuten actual se toleran probabilidades de peacuterdida de soacutelo L = 210-10 Wow (1 cada 5 mil millones de segmentos)

Se requieren nuevas versiones de TCP para enlaces de alta velocidad (ver RFC 3649)

AvgThroughput= 122lowastMSSRTT L

Capa Transporte 3-23

Objetivo de la Equidad (fairness) Si K sesiones TCP comparten un mismo enlace de ancho de banda R cada uno deberiacutea tener una tasa promedio de RK

TCP connection 1

Router cuello de botella decapacidad R

TCP connection 2

Equidad en TCP

Capa Transporte 3-24

iquestPor queacute TCP es justaSupongamos dos sesiones compitiendo Aumento aditivo da pendiente de 1 como aumento de throughout Reduccioacuten multiplicativa reduce throughput proporcionalmente

R

R

Igual bandwidth compartido

Throughput Conexioacuten 1

Th

roughput

Con

exioacute

n 2

Peacuterdida decrece ancho de banda en factor de 2

Abolicioacuten de congestioacuten aumento aditivo

Abolicioacuten de congestioacuten aumento aditivo

Peacuterdida decrece ancho de banda en factor de 2

Capa Transporte 3-25

Equidad (maacutes)

Equidad y UDP Aplicaciones Multimedia

no usan TCP No quieren tasa ahogada

por control de congestioacuten

En su lugar usan UDP Enviacutean audioviacutedeo a tasa

constante y toleran peacuterdidas de paquetes

Aacuterea de investigacioacuten Hacerlas amistosas con TCP (TCP friendly)

Equidad y conexiones TCP paralelas

Nada previene a las aplicaciones de abrir conexiones paralelas entre dos hosts

Navegadores WEB hacen esto Ejemplo Sea un enlace de

tasa R soportando 9 conexiones Una aplicacioacuten nueva pide 1

conexioacuten TCP obtendraacute R10 Si la aplicacioacuten nueva pide 11

conexiones TCP obtendraacute 11R20 maacutes de R2

Capa Transporte 3-26

Capiacutetulo 3 Resumen

Principios detraacutes de los servicios de capa transporte multiplexing demultiplexing Transferencia confiable de

datos Control de flujo Control de congestioacuten

Uso e implementacioacuten en Internet UDP TCP

A continuacioacuten Dejaremos la

ldquoperiferiardquo o ldquoedgerdquo de la red (capas aplicacioacuten y transporte)

Nos internaremos en el centro de la red ldquonetwork corerdquo

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
Page 14: 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 Transporte 3-14

TCP AIMD (Additive-Increase Multiplicative-Decrease)

Decrecimiento multiplicativo reducir CongWin a la mitad luego de peacuterdida

Aumento aditivo aumenta CongWin en 1 MSS cada RTT en ausencia de peacuterdida En algunas implementaciones CongWin incrementa en MSSx(MSSCongWin) por cada ACK

MSS (Maximum Segment Size) es la maacutexima cantidad de datos que se pueden enviar en cada segmento

Capa Transporte 3-15

Partida lenta en TCP (slow start)

Cuando la conexioacuten comienza CongWin = 1 MSS Ejemplo MSS = 500 bytes amp

RTT = 200 msec Tasa inicial = 20 kbps

Ancho de banda disponible puede ser gtgt MSSRTT Es deseable aumentar

raacutepidamente hasta una tasa respetable

Cuando la conexioacuten comienza aumentar tasa exponencialmente raacutepido hasta tener primer evento de peacuterdida

Slow Start porque parte muy tiacutemidamente

Capa Transporte 3-16

Partida Lenta en TCP (maacutes)

Cuando la conexioacuten comienza aumentar tasa exponencialmente hasta primera peacuterdida Duplicar CongWin cada

RTT Es hecho incrementando CongWin en 1 MSS por cada ACK recibido

Resumen tasa inicial es lenta pero se acelera exponencialmente raacutepido

Host A

one segment

RTT

Host B

time

two segments

four segments

Capa Transporte 3-17

Refinamiento a Partida Lenta en TCP Despueacutes de 3 ACKs

duplicados CongWin baja a la mitad Luego la ventana crece

linealmente Despueacutes de un timeout

CongWin es fijada en 1 MSS

Luego la ventana crece exponencialmente hasta un umbral luego crece linealmente

bull3 ACKs duplicados indican la red es capaz de transportar algunos segmentos (soacutelo llegan fuera de orden en el Rx) Se perdioacute uno pero llegaron los otros y por eso tenemos ACKs duplicadosbull timeout antes de 3 duplicados es ldquomaacutes alarmanterdquo (no llegaron)

Filosofiacutea

Capa Transporte 3-18

Refinamiento a Partida Lenta en TCP (cont)

Q iquestCuaacutendo deberiacutea cambiar el aumento de exponencial a lineal

A Un buen criterio es Cuando CongWin llega a 12 de su valor antes del timeout

Implementacioacuten Umbral variable (variable

threshold) Ante evento de peacuterdidas el

umbral es fijado en 12 de CongWin justo antes de la peacuterdida

Tahoe primera versioacuten de control de congestioacuten en TCP No distinguiacutea entre timeout o ACK duplicadosReno versioacuten siguiente en TCP Siacute distingue timeout de ACK duplicados Es como TCP opera hoy

3 ACKs Duplicados

Evento

umbral

Mejor

Capa Transporte 3-19

Resumen Control de Congestioacuten en TCP Cuando CongWin estaacute bajo el Threshold (umbral) Tx estaacute en fase slow-start la ventana de transmisioacuten crece exponencialmente

Cuando CongWin estaacute sobre Threshold Tx estaacute en fase abolicioacuten de congestioacuten la ventana crece linealmente

Cuando llegan tres ACK duplicados Threshold pasa a CongWin2 y CongWin pasa a Threshold

Cuando ocurre un timeout Threshold pasa a CongWin2 y CongWin se lleva a 1 MSS

Capa Transporte 3-20

Control de congestioacuten del Tx TCP

SS or CA

SS or CA

SS or CA

CongestionAvoidance (CA)

Slow Start (SS)

State

CongWin y Threshold no cambian

Increment duplicate ACK count for segment being acked

Duplicate ACK

Ingresa a Partida Lenta (slow start)

Threshold = CongWin2 CongWin = 1 MSSSet state to ldquoSlow Startrdquo

Timeout

Recuperacioacuten raacutepida implementando reduccioacuten multiplicativa CongWin no caeraacute bajo 1 MSS

Threshold = CongWin2 CongWin = ThresholdSet state to ldquoCongestion Avoidancerdquo

Loss event detected by triple duplicate ACK

Aumento aditivo resulta en aumento de CongWin en (aproximadamente) 1 MSS cada RTT

CongWin = CongWin+MSS (MSSCongWin)

ACK receipt for previously unacked data

Resulta en una duplicacioacuten de CongWin cada RTT

CongWin = CongWin + MSS If (CongWin gt Threshold) set state to ldquoCongestion Avoidancerdquo

ACK receipt for previously unacked data

CommentaryTCP Sender Action Event

Capa Transporte 3-21

Throughput Simplificado de TCP (tasa de transferencia de datos lograda) iquestCuaacutel es el throughput promedio de TCP como una

funcioacuten del tamantildeo de ventana CongWin y RTT Ignoremos slow start ya que al ser exponencial es una fase

muy corta TCP pide ancho de banda adiciona al incrementar W en

1 MSS por cada RTT hasta una peacuterdida Sea W el tamantildeo de la ventana (en bytes) cuando

ocurre una peacuterdida Cuando la ventana es W el throughput es WRTT Justo despueacutes de la peacuterdida la ventana cae a W2 y el

throughput a W2RTT Throughput promedio entre W2RTT y WRTT es 075

WRTT Esto debido a que el throughput crece linealmente entre

ambos valores

Capa Transporte 3-22

Futuro de TCP Ejemplo segmentos de 1500 bytes RTT de

100ms queremos throughput de 10 Gbps Requiere tamantildeo de ventana CongWin W =

83333 (segmentos en traacutensito) Throughput en teacuterminos de tasa de peacuterdida (L) es

L=(bytes perdidos)(Nuacutemero total enviados) Para el throughput deseado con el algoritmo de

control de congestioacuten actual se toleran probabilidades de peacuterdida de soacutelo L = 210-10 Wow (1 cada 5 mil millones de segmentos)

Se requieren nuevas versiones de TCP para enlaces de alta velocidad (ver RFC 3649)

AvgThroughput= 122lowastMSSRTT L

Capa Transporte 3-23

Objetivo de la Equidad (fairness) Si K sesiones TCP comparten un mismo enlace de ancho de banda R cada uno deberiacutea tener una tasa promedio de RK

TCP connection 1

Router cuello de botella decapacidad R

TCP connection 2

Equidad en TCP

Capa Transporte 3-24

iquestPor queacute TCP es justaSupongamos dos sesiones compitiendo Aumento aditivo da pendiente de 1 como aumento de throughout Reduccioacuten multiplicativa reduce throughput proporcionalmente

R

R

Igual bandwidth compartido

Throughput Conexioacuten 1

Th

roughput

Con

exioacute

n 2

Peacuterdida decrece ancho de banda en factor de 2

Abolicioacuten de congestioacuten aumento aditivo

Abolicioacuten de congestioacuten aumento aditivo

Peacuterdida decrece ancho de banda en factor de 2

Capa Transporte 3-25

Equidad (maacutes)

Equidad y UDP Aplicaciones Multimedia

no usan TCP No quieren tasa ahogada

por control de congestioacuten

En su lugar usan UDP Enviacutean audioviacutedeo a tasa

constante y toleran peacuterdidas de paquetes

Aacuterea de investigacioacuten Hacerlas amistosas con TCP (TCP friendly)

Equidad y conexiones TCP paralelas

Nada previene a las aplicaciones de abrir conexiones paralelas entre dos hosts

Navegadores WEB hacen esto Ejemplo Sea un enlace de

tasa R soportando 9 conexiones Una aplicacioacuten nueva pide 1

conexioacuten TCP obtendraacute R10 Si la aplicacioacuten nueva pide 11

conexiones TCP obtendraacute 11R20 maacutes de R2

Capa Transporte 3-26

Capiacutetulo 3 Resumen

Principios detraacutes de los servicios de capa transporte multiplexing demultiplexing Transferencia confiable de

datos Control de flujo Control de congestioacuten

Uso e implementacioacuten en Internet UDP TCP

A continuacioacuten Dejaremos la

ldquoperiferiardquo o ldquoedgerdquo de la red (capas aplicacioacuten y transporte)

Nos internaremos en el centro de la red ldquonetwork corerdquo

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
Page 15: 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 Transporte 3-15

Partida lenta en TCP (slow start)

Cuando la conexioacuten comienza CongWin = 1 MSS Ejemplo MSS = 500 bytes amp

RTT = 200 msec Tasa inicial = 20 kbps

Ancho de banda disponible puede ser gtgt MSSRTT Es deseable aumentar

raacutepidamente hasta una tasa respetable

Cuando la conexioacuten comienza aumentar tasa exponencialmente raacutepido hasta tener primer evento de peacuterdida

Slow Start porque parte muy tiacutemidamente

Capa Transporte 3-16

Partida Lenta en TCP (maacutes)

Cuando la conexioacuten comienza aumentar tasa exponencialmente hasta primera peacuterdida Duplicar CongWin cada

RTT Es hecho incrementando CongWin en 1 MSS por cada ACK recibido

Resumen tasa inicial es lenta pero se acelera exponencialmente raacutepido

Host A

one segment

RTT

Host B

time

two segments

four segments

Capa Transporte 3-17

Refinamiento a Partida Lenta en TCP Despueacutes de 3 ACKs

duplicados CongWin baja a la mitad Luego la ventana crece

linealmente Despueacutes de un timeout

CongWin es fijada en 1 MSS

Luego la ventana crece exponencialmente hasta un umbral luego crece linealmente

bull3 ACKs duplicados indican la red es capaz de transportar algunos segmentos (soacutelo llegan fuera de orden en el Rx) Se perdioacute uno pero llegaron los otros y por eso tenemos ACKs duplicadosbull timeout antes de 3 duplicados es ldquomaacutes alarmanterdquo (no llegaron)

Filosofiacutea

Capa Transporte 3-18

Refinamiento a Partida Lenta en TCP (cont)

Q iquestCuaacutendo deberiacutea cambiar el aumento de exponencial a lineal

A Un buen criterio es Cuando CongWin llega a 12 de su valor antes del timeout

Implementacioacuten Umbral variable (variable

threshold) Ante evento de peacuterdidas el

umbral es fijado en 12 de CongWin justo antes de la peacuterdida

Tahoe primera versioacuten de control de congestioacuten en TCP No distinguiacutea entre timeout o ACK duplicadosReno versioacuten siguiente en TCP Siacute distingue timeout de ACK duplicados Es como TCP opera hoy

3 ACKs Duplicados

Evento

umbral

Mejor

Capa Transporte 3-19

Resumen Control de Congestioacuten en TCP Cuando CongWin estaacute bajo el Threshold (umbral) Tx estaacute en fase slow-start la ventana de transmisioacuten crece exponencialmente

Cuando CongWin estaacute sobre Threshold Tx estaacute en fase abolicioacuten de congestioacuten la ventana crece linealmente

Cuando llegan tres ACK duplicados Threshold pasa a CongWin2 y CongWin pasa a Threshold

Cuando ocurre un timeout Threshold pasa a CongWin2 y CongWin se lleva a 1 MSS

Capa Transporte 3-20

Control de congestioacuten del Tx TCP

SS or CA

SS or CA

SS or CA

CongestionAvoidance (CA)

Slow Start (SS)

State

CongWin y Threshold no cambian

Increment duplicate ACK count for segment being acked

Duplicate ACK

Ingresa a Partida Lenta (slow start)

Threshold = CongWin2 CongWin = 1 MSSSet state to ldquoSlow Startrdquo

Timeout

Recuperacioacuten raacutepida implementando reduccioacuten multiplicativa CongWin no caeraacute bajo 1 MSS

Threshold = CongWin2 CongWin = ThresholdSet state to ldquoCongestion Avoidancerdquo

Loss event detected by triple duplicate ACK

Aumento aditivo resulta en aumento de CongWin en (aproximadamente) 1 MSS cada RTT

CongWin = CongWin+MSS (MSSCongWin)

ACK receipt for previously unacked data

Resulta en una duplicacioacuten de CongWin cada RTT

CongWin = CongWin + MSS If (CongWin gt Threshold) set state to ldquoCongestion Avoidancerdquo

ACK receipt for previously unacked data

CommentaryTCP Sender Action Event

Capa Transporte 3-21

Throughput Simplificado de TCP (tasa de transferencia de datos lograda) iquestCuaacutel es el throughput promedio de TCP como una

funcioacuten del tamantildeo de ventana CongWin y RTT Ignoremos slow start ya que al ser exponencial es una fase

muy corta TCP pide ancho de banda adiciona al incrementar W en

1 MSS por cada RTT hasta una peacuterdida Sea W el tamantildeo de la ventana (en bytes) cuando

ocurre una peacuterdida Cuando la ventana es W el throughput es WRTT Justo despueacutes de la peacuterdida la ventana cae a W2 y el

throughput a W2RTT Throughput promedio entre W2RTT y WRTT es 075

WRTT Esto debido a que el throughput crece linealmente entre

ambos valores

Capa Transporte 3-22

Futuro de TCP Ejemplo segmentos de 1500 bytes RTT de

100ms queremos throughput de 10 Gbps Requiere tamantildeo de ventana CongWin W =

83333 (segmentos en traacutensito) Throughput en teacuterminos de tasa de peacuterdida (L) es

L=(bytes perdidos)(Nuacutemero total enviados) Para el throughput deseado con el algoritmo de

control de congestioacuten actual se toleran probabilidades de peacuterdida de soacutelo L = 210-10 Wow (1 cada 5 mil millones de segmentos)

Se requieren nuevas versiones de TCP para enlaces de alta velocidad (ver RFC 3649)

AvgThroughput= 122lowastMSSRTT L

Capa Transporte 3-23

Objetivo de la Equidad (fairness) Si K sesiones TCP comparten un mismo enlace de ancho de banda R cada uno deberiacutea tener una tasa promedio de RK

TCP connection 1

Router cuello de botella decapacidad R

TCP connection 2

Equidad en TCP

Capa Transporte 3-24

iquestPor queacute TCP es justaSupongamos dos sesiones compitiendo Aumento aditivo da pendiente de 1 como aumento de throughout Reduccioacuten multiplicativa reduce throughput proporcionalmente

R

R

Igual bandwidth compartido

Throughput Conexioacuten 1

Th

roughput

Con

exioacute

n 2

Peacuterdida decrece ancho de banda en factor de 2

Abolicioacuten de congestioacuten aumento aditivo

Abolicioacuten de congestioacuten aumento aditivo

Peacuterdida decrece ancho de banda en factor de 2

Capa Transporte 3-25

Equidad (maacutes)

Equidad y UDP Aplicaciones Multimedia

no usan TCP No quieren tasa ahogada

por control de congestioacuten

En su lugar usan UDP Enviacutean audioviacutedeo a tasa

constante y toleran peacuterdidas de paquetes

Aacuterea de investigacioacuten Hacerlas amistosas con TCP (TCP friendly)

Equidad y conexiones TCP paralelas

Nada previene a las aplicaciones de abrir conexiones paralelas entre dos hosts

Navegadores WEB hacen esto Ejemplo Sea un enlace de

tasa R soportando 9 conexiones Una aplicacioacuten nueva pide 1

conexioacuten TCP obtendraacute R10 Si la aplicacioacuten nueva pide 11

conexiones TCP obtendraacute 11R20 maacutes de R2

Capa Transporte 3-26

Capiacutetulo 3 Resumen

Principios detraacutes de los servicios de capa transporte multiplexing demultiplexing Transferencia confiable de

datos Control de flujo Control de congestioacuten

Uso e implementacioacuten en Internet UDP TCP

A continuacioacuten Dejaremos la

ldquoperiferiardquo o ldquoedgerdquo de la red (capas aplicacioacuten y transporte)

Nos internaremos en el centro de la red ldquonetwork corerdquo

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
Page 16: 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 Transporte 3-16

Partida Lenta en TCP (maacutes)

Cuando la conexioacuten comienza aumentar tasa exponencialmente hasta primera peacuterdida Duplicar CongWin cada

RTT Es hecho incrementando CongWin en 1 MSS por cada ACK recibido

Resumen tasa inicial es lenta pero se acelera exponencialmente raacutepido

Host A

one segment

RTT

Host B

time

two segments

four segments

Capa Transporte 3-17

Refinamiento a Partida Lenta en TCP Despueacutes de 3 ACKs

duplicados CongWin baja a la mitad Luego la ventana crece

linealmente Despueacutes de un timeout

CongWin es fijada en 1 MSS

Luego la ventana crece exponencialmente hasta un umbral luego crece linealmente

bull3 ACKs duplicados indican la red es capaz de transportar algunos segmentos (soacutelo llegan fuera de orden en el Rx) Se perdioacute uno pero llegaron los otros y por eso tenemos ACKs duplicadosbull timeout antes de 3 duplicados es ldquomaacutes alarmanterdquo (no llegaron)

Filosofiacutea

Capa Transporte 3-18

Refinamiento a Partida Lenta en TCP (cont)

Q iquestCuaacutendo deberiacutea cambiar el aumento de exponencial a lineal

A Un buen criterio es Cuando CongWin llega a 12 de su valor antes del timeout

Implementacioacuten Umbral variable (variable

threshold) Ante evento de peacuterdidas el

umbral es fijado en 12 de CongWin justo antes de la peacuterdida

Tahoe primera versioacuten de control de congestioacuten en TCP No distinguiacutea entre timeout o ACK duplicadosReno versioacuten siguiente en TCP Siacute distingue timeout de ACK duplicados Es como TCP opera hoy

3 ACKs Duplicados

Evento

umbral

Mejor

Capa Transporte 3-19

Resumen Control de Congestioacuten en TCP Cuando CongWin estaacute bajo el Threshold (umbral) Tx estaacute en fase slow-start la ventana de transmisioacuten crece exponencialmente

Cuando CongWin estaacute sobre Threshold Tx estaacute en fase abolicioacuten de congestioacuten la ventana crece linealmente

Cuando llegan tres ACK duplicados Threshold pasa a CongWin2 y CongWin pasa a Threshold

Cuando ocurre un timeout Threshold pasa a CongWin2 y CongWin se lleva a 1 MSS

Capa Transporte 3-20

Control de congestioacuten del Tx TCP

SS or CA

SS or CA

SS or CA

CongestionAvoidance (CA)

Slow Start (SS)

State

CongWin y Threshold no cambian

Increment duplicate ACK count for segment being acked

Duplicate ACK

Ingresa a Partida Lenta (slow start)

Threshold = CongWin2 CongWin = 1 MSSSet state to ldquoSlow Startrdquo

Timeout

Recuperacioacuten raacutepida implementando reduccioacuten multiplicativa CongWin no caeraacute bajo 1 MSS

Threshold = CongWin2 CongWin = ThresholdSet state to ldquoCongestion Avoidancerdquo

Loss event detected by triple duplicate ACK

Aumento aditivo resulta en aumento de CongWin en (aproximadamente) 1 MSS cada RTT

CongWin = CongWin+MSS (MSSCongWin)

ACK receipt for previously unacked data

Resulta en una duplicacioacuten de CongWin cada RTT

CongWin = CongWin + MSS If (CongWin gt Threshold) set state to ldquoCongestion Avoidancerdquo

ACK receipt for previously unacked data

CommentaryTCP Sender Action Event

Capa Transporte 3-21

Throughput Simplificado de TCP (tasa de transferencia de datos lograda) iquestCuaacutel es el throughput promedio de TCP como una

funcioacuten del tamantildeo de ventana CongWin y RTT Ignoremos slow start ya que al ser exponencial es una fase

muy corta TCP pide ancho de banda adiciona al incrementar W en

1 MSS por cada RTT hasta una peacuterdida Sea W el tamantildeo de la ventana (en bytes) cuando

ocurre una peacuterdida Cuando la ventana es W el throughput es WRTT Justo despueacutes de la peacuterdida la ventana cae a W2 y el

throughput a W2RTT Throughput promedio entre W2RTT y WRTT es 075

WRTT Esto debido a que el throughput crece linealmente entre

ambos valores

Capa Transporte 3-22

Futuro de TCP Ejemplo segmentos de 1500 bytes RTT de

100ms queremos throughput de 10 Gbps Requiere tamantildeo de ventana CongWin W =

83333 (segmentos en traacutensito) Throughput en teacuterminos de tasa de peacuterdida (L) es

L=(bytes perdidos)(Nuacutemero total enviados) Para el throughput deseado con el algoritmo de

control de congestioacuten actual se toleran probabilidades de peacuterdida de soacutelo L = 210-10 Wow (1 cada 5 mil millones de segmentos)

Se requieren nuevas versiones de TCP para enlaces de alta velocidad (ver RFC 3649)

AvgThroughput= 122lowastMSSRTT L

Capa Transporte 3-23

Objetivo de la Equidad (fairness) Si K sesiones TCP comparten un mismo enlace de ancho de banda R cada uno deberiacutea tener una tasa promedio de RK

TCP connection 1

Router cuello de botella decapacidad R

TCP connection 2

Equidad en TCP

Capa Transporte 3-24

iquestPor queacute TCP es justaSupongamos dos sesiones compitiendo Aumento aditivo da pendiente de 1 como aumento de throughout Reduccioacuten multiplicativa reduce throughput proporcionalmente

R

R

Igual bandwidth compartido

Throughput Conexioacuten 1

Th

roughput

Con

exioacute

n 2

Peacuterdida decrece ancho de banda en factor de 2

Abolicioacuten de congestioacuten aumento aditivo

Abolicioacuten de congestioacuten aumento aditivo

Peacuterdida decrece ancho de banda en factor de 2

Capa Transporte 3-25

Equidad (maacutes)

Equidad y UDP Aplicaciones Multimedia

no usan TCP No quieren tasa ahogada

por control de congestioacuten

En su lugar usan UDP Enviacutean audioviacutedeo a tasa

constante y toleran peacuterdidas de paquetes

Aacuterea de investigacioacuten Hacerlas amistosas con TCP (TCP friendly)

Equidad y conexiones TCP paralelas

Nada previene a las aplicaciones de abrir conexiones paralelas entre dos hosts

Navegadores WEB hacen esto Ejemplo Sea un enlace de

tasa R soportando 9 conexiones Una aplicacioacuten nueva pide 1

conexioacuten TCP obtendraacute R10 Si la aplicacioacuten nueva pide 11

conexiones TCP obtendraacute 11R20 maacutes de R2

Capa Transporte 3-26

Capiacutetulo 3 Resumen

Principios detraacutes de los servicios de capa transporte multiplexing demultiplexing Transferencia confiable de

datos Control de flujo Control de congestioacuten

Uso e implementacioacuten en Internet UDP TCP

A continuacioacuten Dejaremos la

ldquoperiferiardquo o ldquoedgerdquo de la red (capas aplicacioacuten y transporte)

Nos internaremos en el centro de la red ldquonetwork corerdquo

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
Page 17: 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 Transporte 3-17

Refinamiento a Partida Lenta en TCP Despueacutes de 3 ACKs

duplicados CongWin baja a la mitad Luego la ventana crece

linealmente Despueacutes de un timeout

CongWin es fijada en 1 MSS

Luego la ventana crece exponencialmente hasta un umbral luego crece linealmente

bull3 ACKs duplicados indican la red es capaz de transportar algunos segmentos (soacutelo llegan fuera de orden en el Rx) Se perdioacute uno pero llegaron los otros y por eso tenemos ACKs duplicadosbull timeout antes de 3 duplicados es ldquomaacutes alarmanterdquo (no llegaron)

Filosofiacutea

Capa Transporte 3-18

Refinamiento a Partida Lenta en TCP (cont)

Q iquestCuaacutendo deberiacutea cambiar el aumento de exponencial a lineal

A Un buen criterio es Cuando CongWin llega a 12 de su valor antes del timeout

Implementacioacuten Umbral variable (variable

threshold) Ante evento de peacuterdidas el

umbral es fijado en 12 de CongWin justo antes de la peacuterdida

Tahoe primera versioacuten de control de congestioacuten en TCP No distinguiacutea entre timeout o ACK duplicadosReno versioacuten siguiente en TCP Siacute distingue timeout de ACK duplicados Es como TCP opera hoy

3 ACKs Duplicados

Evento

umbral

Mejor

Capa Transporte 3-19

Resumen Control de Congestioacuten en TCP Cuando CongWin estaacute bajo el Threshold (umbral) Tx estaacute en fase slow-start la ventana de transmisioacuten crece exponencialmente

Cuando CongWin estaacute sobre Threshold Tx estaacute en fase abolicioacuten de congestioacuten la ventana crece linealmente

Cuando llegan tres ACK duplicados Threshold pasa a CongWin2 y CongWin pasa a Threshold

Cuando ocurre un timeout Threshold pasa a CongWin2 y CongWin se lleva a 1 MSS

Capa Transporte 3-20

Control de congestioacuten del Tx TCP

SS or CA

SS or CA

SS or CA

CongestionAvoidance (CA)

Slow Start (SS)

State

CongWin y Threshold no cambian

Increment duplicate ACK count for segment being acked

Duplicate ACK

Ingresa a Partida Lenta (slow start)

Threshold = CongWin2 CongWin = 1 MSSSet state to ldquoSlow Startrdquo

Timeout

Recuperacioacuten raacutepida implementando reduccioacuten multiplicativa CongWin no caeraacute bajo 1 MSS

Threshold = CongWin2 CongWin = ThresholdSet state to ldquoCongestion Avoidancerdquo

Loss event detected by triple duplicate ACK

Aumento aditivo resulta en aumento de CongWin en (aproximadamente) 1 MSS cada RTT

CongWin = CongWin+MSS (MSSCongWin)

ACK receipt for previously unacked data

Resulta en una duplicacioacuten de CongWin cada RTT

CongWin = CongWin + MSS If (CongWin gt Threshold) set state to ldquoCongestion Avoidancerdquo

ACK receipt for previously unacked data

CommentaryTCP Sender Action Event

Capa Transporte 3-21

Throughput Simplificado de TCP (tasa de transferencia de datos lograda) iquestCuaacutel es el throughput promedio de TCP como una

funcioacuten del tamantildeo de ventana CongWin y RTT Ignoremos slow start ya que al ser exponencial es una fase

muy corta TCP pide ancho de banda adiciona al incrementar W en

1 MSS por cada RTT hasta una peacuterdida Sea W el tamantildeo de la ventana (en bytes) cuando

ocurre una peacuterdida Cuando la ventana es W el throughput es WRTT Justo despueacutes de la peacuterdida la ventana cae a W2 y el

throughput a W2RTT Throughput promedio entre W2RTT y WRTT es 075

WRTT Esto debido a que el throughput crece linealmente entre

ambos valores

Capa Transporte 3-22

Futuro de TCP Ejemplo segmentos de 1500 bytes RTT de

100ms queremos throughput de 10 Gbps Requiere tamantildeo de ventana CongWin W =

83333 (segmentos en traacutensito) Throughput en teacuterminos de tasa de peacuterdida (L) es

L=(bytes perdidos)(Nuacutemero total enviados) Para el throughput deseado con el algoritmo de

control de congestioacuten actual se toleran probabilidades de peacuterdida de soacutelo L = 210-10 Wow (1 cada 5 mil millones de segmentos)

Se requieren nuevas versiones de TCP para enlaces de alta velocidad (ver RFC 3649)

AvgThroughput= 122lowastMSSRTT L

Capa Transporte 3-23

Objetivo de la Equidad (fairness) Si K sesiones TCP comparten un mismo enlace de ancho de banda R cada uno deberiacutea tener una tasa promedio de RK

TCP connection 1

Router cuello de botella decapacidad R

TCP connection 2

Equidad en TCP

Capa Transporte 3-24

iquestPor queacute TCP es justaSupongamos dos sesiones compitiendo Aumento aditivo da pendiente de 1 como aumento de throughout Reduccioacuten multiplicativa reduce throughput proporcionalmente

R

R

Igual bandwidth compartido

Throughput Conexioacuten 1

Th

roughput

Con

exioacute

n 2

Peacuterdida decrece ancho de banda en factor de 2

Abolicioacuten de congestioacuten aumento aditivo

Abolicioacuten de congestioacuten aumento aditivo

Peacuterdida decrece ancho de banda en factor de 2

Capa Transporte 3-25

Equidad (maacutes)

Equidad y UDP Aplicaciones Multimedia

no usan TCP No quieren tasa ahogada

por control de congestioacuten

En su lugar usan UDP Enviacutean audioviacutedeo a tasa

constante y toleran peacuterdidas de paquetes

Aacuterea de investigacioacuten Hacerlas amistosas con TCP (TCP friendly)

Equidad y conexiones TCP paralelas

Nada previene a las aplicaciones de abrir conexiones paralelas entre dos hosts

Navegadores WEB hacen esto Ejemplo Sea un enlace de

tasa R soportando 9 conexiones Una aplicacioacuten nueva pide 1

conexioacuten TCP obtendraacute R10 Si la aplicacioacuten nueva pide 11

conexiones TCP obtendraacute 11R20 maacutes de R2

Capa Transporte 3-26

Capiacutetulo 3 Resumen

Principios detraacutes de los servicios de capa transporte multiplexing demultiplexing Transferencia confiable de

datos Control de flujo Control de congestioacuten

Uso e implementacioacuten en Internet UDP TCP

A continuacioacuten Dejaremos la

ldquoperiferiardquo o ldquoedgerdquo de la red (capas aplicacioacuten y transporte)

Nos internaremos en el centro de la red ldquonetwork corerdquo

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
Page 18: 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 Transporte 3-18

Refinamiento a Partida Lenta en TCP (cont)

Q iquestCuaacutendo deberiacutea cambiar el aumento de exponencial a lineal

A Un buen criterio es Cuando CongWin llega a 12 de su valor antes del timeout

Implementacioacuten Umbral variable (variable

threshold) Ante evento de peacuterdidas el

umbral es fijado en 12 de CongWin justo antes de la peacuterdida

Tahoe primera versioacuten de control de congestioacuten en TCP No distinguiacutea entre timeout o ACK duplicadosReno versioacuten siguiente en TCP Siacute distingue timeout de ACK duplicados Es como TCP opera hoy

3 ACKs Duplicados

Evento

umbral

Mejor

Capa Transporte 3-19

Resumen Control de Congestioacuten en TCP Cuando CongWin estaacute bajo el Threshold (umbral) Tx estaacute en fase slow-start la ventana de transmisioacuten crece exponencialmente

Cuando CongWin estaacute sobre Threshold Tx estaacute en fase abolicioacuten de congestioacuten la ventana crece linealmente

Cuando llegan tres ACK duplicados Threshold pasa a CongWin2 y CongWin pasa a Threshold

Cuando ocurre un timeout Threshold pasa a CongWin2 y CongWin se lleva a 1 MSS

Capa Transporte 3-20

Control de congestioacuten del Tx TCP

SS or CA

SS or CA

SS or CA

CongestionAvoidance (CA)

Slow Start (SS)

State

CongWin y Threshold no cambian

Increment duplicate ACK count for segment being acked

Duplicate ACK

Ingresa a Partida Lenta (slow start)

Threshold = CongWin2 CongWin = 1 MSSSet state to ldquoSlow Startrdquo

Timeout

Recuperacioacuten raacutepida implementando reduccioacuten multiplicativa CongWin no caeraacute bajo 1 MSS

Threshold = CongWin2 CongWin = ThresholdSet state to ldquoCongestion Avoidancerdquo

Loss event detected by triple duplicate ACK

Aumento aditivo resulta en aumento de CongWin en (aproximadamente) 1 MSS cada RTT

CongWin = CongWin+MSS (MSSCongWin)

ACK receipt for previously unacked data

Resulta en una duplicacioacuten de CongWin cada RTT

CongWin = CongWin + MSS If (CongWin gt Threshold) set state to ldquoCongestion Avoidancerdquo

ACK receipt for previously unacked data

CommentaryTCP Sender Action Event

Capa Transporte 3-21

Throughput Simplificado de TCP (tasa de transferencia de datos lograda) iquestCuaacutel es el throughput promedio de TCP como una

funcioacuten del tamantildeo de ventana CongWin y RTT Ignoremos slow start ya que al ser exponencial es una fase

muy corta TCP pide ancho de banda adiciona al incrementar W en

1 MSS por cada RTT hasta una peacuterdida Sea W el tamantildeo de la ventana (en bytes) cuando

ocurre una peacuterdida Cuando la ventana es W el throughput es WRTT Justo despueacutes de la peacuterdida la ventana cae a W2 y el

throughput a W2RTT Throughput promedio entre W2RTT y WRTT es 075

WRTT Esto debido a que el throughput crece linealmente entre

ambos valores

Capa Transporte 3-22

Futuro de TCP Ejemplo segmentos de 1500 bytes RTT de

100ms queremos throughput de 10 Gbps Requiere tamantildeo de ventana CongWin W =

83333 (segmentos en traacutensito) Throughput en teacuterminos de tasa de peacuterdida (L) es

L=(bytes perdidos)(Nuacutemero total enviados) Para el throughput deseado con el algoritmo de

control de congestioacuten actual se toleran probabilidades de peacuterdida de soacutelo L = 210-10 Wow (1 cada 5 mil millones de segmentos)

Se requieren nuevas versiones de TCP para enlaces de alta velocidad (ver RFC 3649)

AvgThroughput= 122lowastMSSRTT L

Capa Transporte 3-23

Objetivo de la Equidad (fairness) Si K sesiones TCP comparten un mismo enlace de ancho de banda R cada uno deberiacutea tener una tasa promedio de RK

TCP connection 1

Router cuello de botella decapacidad R

TCP connection 2

Equidad en TCP

Capa Transporte 3-24

iquestPor queacute TCP es justaSupongamos dos sesiones compitiendo Aumento aditivo da pendiente de 1 como aumento de throughout Reduccioacuten multiplicativa reduce throughput proporcionalmente

R

R

Igual bandwidth compartido

Throughput Conexioacuten 1

Th

roughput

Con

exioacute

n 2

Peacuterdida decrece ancho de banda en factor de 2

Abolicioacuten de congestioacuten aumento aditivo

Abolicioacuten de congestioacuten aumento aditivo

Peacuterdida decrece ancho de banda en factor de 2

Capa Transporte 3-25

Equidad (maacutes)

Equidad y UDP Aplicaciones Multimedia

no usan TCP No quieren tasa ahogada

por control de congestioacuten

En su lugar usan UDP Enviacutean audioviacutedeo a tasa

constante y toleran peacuterdidas de paquetes

Aacuterea de investigacioacuten Hacerlas amistosas con TCP (TCP friendly)

Equidad y conexiones TCP paralelas

Nada previene a las aplicaciones de abrir conexiones paralelas entre dos hosts

Navegadores WEB hacen esto Ejemplo Sea un enlace de

tasa R soportando 9 conexiones Una aplicacioacuten nueva pide 1

conexioacuten TCP obtendraacute R10 Si la aplicacioacuten nueva pide 11

conexiones TCP obtendraacute 11R20 maacutes de R2

Capa Transporte 3-26

Capiacutetulo 3 Resumen

Principios detraacutes de los servicios de capa transporte multiplexing demultiplexing Transferencia confiable de

datos Control de flujo Control de congestioacuten

Uso e implementacioacuten en Internet UDP TCP

A continuacioacuten Dejaremos la

ldquoperiferiardquo o ldquoedgerdquo de la red (capas aplicacioacuten y transporte)

Nos internaremos en el centro de la red ldquonetwork corerdquo

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
Page 19: 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 Transporte 3-19

Resumen Control de Congestioacuten en TCP Cuando CongWin estaacute bajo el Threshold (umbral) Tx estaacute en fase slow-start la ventana de transmisioacuten crece exponencialmente

Cuando CongWin estaacute sobre Threshold Tx estaacute en fase abolicioacuten de congestioacuten la ventana crece linealmente

Cuando llegan tres ACK duplicados Threshold pasa a CongWin2 y CongWin pasa a Threshold

Cuando ocurre un timeout Threshold pasa a CongWin2 y CongWin se lleva a 1 MSS

Capa Transporte 3-20

Control de congestioacuten del Tx TCP

SS or CA

SS or CA

SS or CA

CongestionAvoidance (CA)

Slow Start (SS)

State

CongWin y Threshold no cambian

Increment duplicate ACK count for segment being acked

Duplicate ACK

Ingresa a Partida Lenta (slow start)

Threshold = CongWin2 CongWin = 1 MSSSet state to ldquoSlow Startrdquo

Timeout

Recuperacioacuten raacutepida implementando reduccioacuten multiplicativa CongWin no caeraacute bajo 1 MSS

Threshold = CongWin2 CongWin = ThresholdSet state to ldquoCongestion Avoidancerdquo

Loss event detected by triple duplicate ACK

Aumento aditivo resulta en aumento de CongWin en (aproximadamente) 1 MSS cada RTT

CongWin = CongWin+MSS (MSSCongWin)

ACK receipt for previously unacked data

Resulta en una duplicacioacuten de CongWin cada RTT

CongWin = CongWin + MSS If (CongWin gt Threshold) set state to ldquoCongestion Avoidancerdquo

ACK receipt for previously unacked data

CommentaryTCP Sender Action Event

Capa Transporte 3-21

Throughput Simplificado de TCP (tasa de transferencia de datos lograda) iquestCuaacutel es el throughput promedio de TCP como una

funcioacuten del tamantildeo de ventana CongWin y RTT Ignoremos slow start ya que al ser exponencial es una fase

muy corta TCP pide ancho de banda adiciona al incrementar W en

1 MSS por cada RTT hasta una peacuterdida Sea W el tamantildeo de la ventana (en bytes) cuando

ocurre una peacuterdida Cuando la ventana es W el throughput es WRTT Justo despueacutes de la peacuterdida la ventana cae a W2 y el

throughput a W2RTT Throughput promedio entre W2RTT y WRTT es 075

WRTT Esto debido a que el throughput crece linealmente entre

ambos valores

Capa Transporte 3-22

Futuro de TCP Ejemplo segmentos de 1500 bytes RTT de

100ms queremos throughput de 10 Gbps Requiere tamantildeo de ventana CongWin W =

83333 (segmentos en traacutensito) Throughput en teacuterminos de tasa de peacuterdida (L) es

L=(bytes perdidos)(Nuacutemero total enviados) Para el throughput deseado con el algoritmo de

control de congestioacuten actual se toleran probabilidades de peacuterdida de soacutelo L = 210-10 Wow (1 cada 5 mil millones de segmentos)

Se requieren nuevas versiones de TCP para enlaces de alta velocidad (ver RFC 3649)

AvgThroughput= 122lowastMSSRTT L

Capa Transporte 3-23

Objetivo de la Equidad (fairness) Si K sesiones TCP comparten un mismo enlace de ancho de banda R cada uno deberiacutea tener una tasa promedio de RK

TCP connection 1

Router cuello de botella decapacidad R

TCP connection 2

Equidad en TCP

Capa Transporte 3-24

iquestPor queacute TCP es justaSupongamos dos sesiones compitiendo Aumento aditivo da pendiente de 1 como aumento de throughout Reduccioacuten multiplicativa reduce throughput proporcionalmente

R

R

Igual bandwidth compartido

Throughput Conexioacuten 1

Th

roughput

Con

exioacute

n 2

Peacuterdida decrece ancho de banda en factor de 2

Abolicioacuten de congestioacuten aumento aditivo

Abolicioacuten de congestioacuten aumento aditivo

Peacuterdida decrece ancho de banda en factor de 2

Capa Transporte 3-25

Equidad (maacutes)

Equidad y UDP Aplicaciones Multimedia

no usan TCP No quieren tasa ahogada

por control de congestioacuten

En su lugar usan UDP Enviacutean audioviacutedeo a tasa

constante y toleran peacuterdidas de paquetes

Aacuterea de investigacioacuten Hacerlas amistosas con TCP (TCP friendly)

Equidad y conexiones TCP paralelas

Nada previene a las aplicaciones de abrir conexiones paralelas entre dos hosts

Navegadores WEB hacen esto Ejemplo Sea un enlace de

tasa R soportando 9 conexiones Una aplicacioacuten nueva pide 1

conexioacuten TCP obtendraacute R10 Si la aplicacioacuten nueva pide 11

conexiones TCP obtendraacute 11R20 maacutes de R2

Capa Transporte 3-26

Capiacutetulo 3 Resumen

Principios detraacutes de los servicios de capa transporte multiplexing demultiplexing Transferencia confiable de

datos Control de flujo Control de congestioacuten

Uso e implementacioacuten en Internet UDP TCP

A continuacioacuten Dejaremos la

ldquoperiferiardquo o ldquoedgerdquo de la red (capas aplicacioacuten y transporte)

Nos internaremos en el centro de la red ldquonetwork corerdquo

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
Page 20: 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 Transporte 3-20

Control de congestioacuten del Tx TCP

SS or CA

SS or CA

SS or CA

CongestionAvoidance (CA)

Slow Start (SS)

State

CongWin y Threshold no cambian

Increment duplicate ACK count for segment being acked

Duplicate ACK

Ingresa a Partida Lenta (slow start)

Threshold = CongWin2 CongWin = 1 MSSSet state to ldquoSlow Startrdquo

Timeout

Recuperacioacuten raacutepida implementando reduccioacuten multiplicativa CongWin no caeraacute bajo 1 MSS

Threshold = CongWin2 CongWin = ThresholdSet state to ldquoCongestion Avoidancerdquo

Loss event detected by triple duplicate ACK

Aumento aditivo resulta en aumento de CongWin en (aproximadamente) 1 MSS cada RTT

CongWin = CongWin+MSS (MSSCongWin)

ACK receipt for previously unacked data

Resulta en una duplicacioacuten de CongWin cada RTT

CongWin = CongWin + MSS If (CongWin gt Threshold) set state to ldquoCongestion Avoidancerdquo

ACK receipt for previously unacked data

CommentaryTCP Sender Action Event

Capa Transporte 3-21

Throughput Simplificado de TCP (tasa de transferencia de datos lograda) iquestCuaacutel es el throughput promedio de TCP como una

funcioacuten del tamantildeo de ventana CongWin y RTT Ignoremos slow start ya que al ser exponencial es una fase

muy corta TCP pide ancho de banda adiciona al incrementar W en

1 MSS por cada RTT hasta una peacuterdida Sea W el tamantildeo de la ventana (en bytes) cuando

ocurre una peacuterdida Cuando la ventana es W el throughput es WRTT Justo despueacutes de la peacuterdida la ventana cae a W2 y el

throughput a W2RTT Throughput promedio entre W2RTT y WRTT es 075

WRTT Esto debido a que el throughput crece linealmente entre

ambos valores

Capa Transporte 3-22

Futuro de TCP Ejemplo segmentos de 1500 bytes RTT de

100ms queremos throughput de 10 Gbps Requiere tamantildeo de ventana CongWin W =

83333 (segmentos en traacutensito) Throughput en teacuterminos de tasa de peacuterdida (L) es

L=(bytes perdidos)(Nuacutemero total enviados) Para el throughput deseado con el algoritmo de

control de congestioacuten actual se toleran probabilidades de peacuterdida de soacutelo L = 210-10 Wow (1 cada 5 mil millones de segmentos)

Se requieren nuevas versiones de TCP para enlaces de alta velocidad (ver RFC 3649)

AvgThroughput= 122lowastMSSRTT L

Capa Transporte 3-23

Objetivo de la Equidad (fairness) Si K sesiones TCP comparten un mismo enlace de ancho de banda R cada uno deberiacutea tener una tasa promedio de RK

TCP connection 1

Router cuello de botella decapacidad R

TCP connection 2

Equidad en TCP

Capa Transporte 3-24

iquestPor queacute TCP es justaSupongamos dos sesiones compitiendo Aumento aditivo da pendiente de 1 como aumento de throughout Reduccioacuten multiplicativa reduce throughput proporcionalmente

R

R

Igual bandwidth compartido

Throughput Conexioacuten 1

Th

roughput

Con

exioacute

n 2

Peacuterdida decrece ancho de banda en factor de 2

Abolicioacuten de congestioacuten aumento aditivo

Abolicioacuten de congestioacuten aumento aditivo

Peacuterdida decrece ancho de banda en factor de 2

Capa Transporte 3-25

Equidad (maacutes)

Equidad y UDP Aplicaciones Multimedia

no usan TCP No quieren tasa ahogada

por control de congestioacuten

En su lugar usan UDP Enviacutean audioviacutedeo a tasa

constante y toleran peacuterdidas de paquetes

Aacuterea de investigacioacuten Hacerlas amistosas con TCP (TCP friendly)

Equidad y conexiones TCP paralelas

Nada previene a las aplicaciones de abrir conexiones paralelas entre dos hosts

Navegadores WEB hacen esto Ejemplo Sea un enlace de

tasa R soportando 9 conexiones Una aplicacioacuten nueva pide 1

conexioacuten TCP obtendraacute R10 Si la aplicacioacuten nueva pide 11

conexiones TCP obtendraacute 11R20 maacutes de R2

Capa Transporte 3-26

Capiacutetulo 3 Resumen

Principios detraacutes de los servicios de capa transporte multiplexing demultiplexing Transferencia confiable de

datos Control de flujo Control de congestioacuten

Uso e implementacioacuten en Internet UDP TCP

A continuacioacuten Dejaremos la

ldquoperiferiardquo o ldquoedgerdquo de la red (capas aplicacioacuten y transporte)

Nos internaremos en el centro de la red ldquonetwork corerdquo

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
Page 21: 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 Transporte 3-21

Throughput Simplificado de TCP (tasa de transferencia de datos lograda) iquestCuaacutel es el throughput promedio de TCP como una

funcioacuten del tamantildeo de ventana CongWin y RTT Ignoremos slow start ya que al ser exponencial es una fase

muy corta TCP pide ancho de banda adiciona al incrementar W en

1 MSS por cada RTT hasta una peacuterdida Sea W el tamantildeo de la ventana (en bytes) cuando

ocurre una peacuterdida Cuando la ventana es W el throughput es WRTT Justo despueacutes de la peacuterdida la ventana cae a W2 y el

throughput a W2RTT Throughput promedio entre W2RTT y WRTT es 075

WRTT Esto debido a que el throughput crece linealmente entre

ambos valores

Capa Transporte 3-22

Futuro de TCP Ejemplo segmentos de 1500 bytes RTT de

100ms queremos throughput de 10 Gbps Requiere tamantildeo de ventana CongWin W =

83333 (segmentos en traacutensito) Throughput en teacuterminos de tasa de peacuterdida (L) es

L=(bytes perdidos)(Nuacutemero total enviados) Para el throughput deseado con el algoritmo de

control de congestioacuten actual se toleran probabilidades de peacuterdida de soacutelo L = 210-10 Wow (1 cada 5 mil millones de segmentos)

Se requieren nuevas versiones de TCP para enlaces de alta velocidad (ver RFC 3649)

AvgThroughput= 122lowastMSSRTT L

Capa Transporte 3-23

Objetivo de la Equidad (fairness) Si K sesiones TCP comparten un mismo enlace de ancho de banda R cada uno deberiacutea tener una tasa promedio de RK

TCP connection 1

Router cuello de botella decapacidad R

TCP connection 2

Equidad en TCP

Capa Transporte 3-24

iquestPor queacute TCP es justaSupongamos dos sesiones compitiendo Aumento aditivo da pendiente de 1 como aumento de throughout Reduccioacuten multiplicativa reduce throughput proporcionalmente

R

R

Igual bandwidth compartido

Throughput Conexioacuten 1

Th

roughput

Con

exioacute

n 2

Peacuterdida decrece ancho de banda en factor de 2

Abolicioacuten de congestioacuten aumento aditivo

Abolicioacuten de congestioacuten aumento aditivo

Peacuterdida decrece ancho de banda en factor de 2

Capa Transporte 3-25

Equidad (maacutes)

Equidad y UDP Aplicaciones Multimedia

no usan TCP No quieren tasa ahogada

por control de congestioacuten

En su lugar usan UDP Enviacutean audioviacutedeo a tasa

constante y toleran peacuterdidas de paquetes

Aacuterea de investigacioacuten Hacerlas amistosas con TCP (TCP friendly)

Equidad y conexiones TCP paralelas

Nada previene a las aplicaciones de abrir conexiones paralelas entre dos hosts

Navegadores WEB hacen esto Ejemplo Sea un enlace de

tasa R soportando 9 conexiones Una aplicacioacuten nueva pide 1

conexioacuten TCP obtendraacute R10 Si la aplicacioacuten nueva pide 11

conexiones TCP obtendraacute 11R20 maacutes de R2

Capa Transporte 3-26

Capiacutetulo 3 Resumen

Principios detraacutes de los servicios de capa transporte multiplexing demultiplexing Transferencia confiable de

datos Control de flujo Control de congestioacuten

Uso e implementacioacuten en Internet UDP TCP

A continuacioacuten Dejaremos la

ldquoperiferiardquo o ldquoedgerdquo de la red (capas aplicacioacuten y transporte)

Nos internaremos en el centro de la red ldquonetwork corerdquo

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
Page 22: 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 Transporte 3-22

Futuro de TCP Ejemplo segmentos de 1500 bytes RTT de

100ms queremos throughput de 10 Gbps Requiere tamantildeo de ventana CongWin W =

83333 (segmentos en traacutensito) Throughput en teacuterminos de tasa de peacuterdida (L) es

L=(bytes perdidos)(Nuacutemero total enviados) Para el throughput deseado con el algoritmo de

control de congestioacuten actual se toleran probabilidades de peacuterdida de soacutelo L = 210-10 Wow (1 cada 5 mil millones de segmentos)

Se requieren nuevas versiones de TCP para enlaces de alta velocidad (ver RFC 3649)

AvgThroughput= 122lowastMSSRTT L

Capa Transporte 3-23

Objetivo de la Equidad (fairness) Si K sesiones TCP comparten un mismo enlace de ancho de banda R cada uno deberiacutea tener una tasa promedio de RK

TCP connection 1

Router cuello de botella decapacidad R

TCP connection 2

Equidad en TCP

Capa Transporte 3-24

iquestPor queacute TCP es justaSupongamos dos sesiones compitiendo Aumento aditivo da pendiente de 1 como aumento de throughout Reduccioacuten multiplicativa reduce throughput proporcionalmente

R

R

Igual bandwidth compartido

Throughput Conexioacuten 1

Th

roughput

Con

exioacute

n 2

Peacuterdida decrece ancho de banda en factor de 2

Abolicioacuten de congestioacuten aumento aditivo

Abolicioacuten de congestioacuten aumento aditivo

Peacuterdida decrece ancho de banda en factor de 2

Capa Transporte 3-25

Equidad (maacutes)

Equidad y UDP Aplicaciones Multimedia

no usan TCP No quieren tasa ahogada

por control de congestioacuten

En su lugar usan UDP Enviacutean audioviacutedeo a tasa

constante y toleran peacuterdidas de paquetes

Aacuterea de investigacioacuten Hacerlas amistosas con TCP (TCP friendly)

Equidad y conexiones TCP paralelas

Nada previene a las aplicaciones de abrir conexiones paralelas entre dos hosts

Navegadores WEB hacen esto Ejemplo Sea un enlace de

tasa R soportando 9 conexiones Una aplicacioacuten nueva pide 1

conexioacuten TCP obtendraacute R10 Si la aplicacioacuten nueva pide 11

conexiones TCP obtendraacute 11R20 maacutes de R2

Capa Transporte 3-26

Capiacutetulo 3 Resumen

Principios detraacutes de los servicios de capa transporte multiplexing demultiplexing Transferencia confiable de

datos Control de flujo Control de congestioacuten

Uso e implementacioacuten en Internet UDP TCP

A continuacioacuten Dejaremos la

ldquoperiferiardquo o ldquoedgerdquo de la red (capas aplicacioacuten y transporte)

Nos internaremos en el centro de la red ldquonetwork corerdquo

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
Page 23: 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 Transporte 3-23

Objetivo de la Equidad (fairness) Si K sesiones TCP comparten un mismo enlace de ancho de banda R cada uno deberiacutea tener una tasa promedio de RK

TCP connection 1

Router cuello de botella decapacidad R

TCP connection 2

Equidad en TCP

Capa Transporte 3-24

iquestPor queacute TCP es justaSupongamos dos sesiones compitiendo Aumento aditivo da pendiente de 1 como aumento de throughout Reduccioacuten multiplicativa reduce throughput proporcionalmente

R

R

Igual bandwidth compartido

Throughput Conexioacuten 1

Th

roughput

Con

exioacute

n 2

Peacuterdida decrece ancho de banda en factor de 2

Abolicioacuten de congestioacuten aumento aditivo

Abolicioacuten de congestioacuten aumento aditivo

Peacuterdida decrece ancho de banda en factor de 2

Capa Transporte 3-25

Equidad (maacutes)

Equidad y UDP Aplicaciones Multimedia

no usan TCP No quieren tasa ahogada

por control de congestioacuten

En su lugar usan UDP Enviacutean audioviacutedeo a tasa

constante y toleran peacuterdidas de paquetes

Aacuterea de investigacioacuten Hacerlas amistosas con TCP (TCP friendly)

Equidad y conexiones TCP paralelas

Nada previene a las aplicaciones de abrir conexiones paralelas entre dos hosts

Navegadores WEB hacen esto Ejemplo Sea un enlace de

tasa R soportando 9 conexiones Una aplicacioacuten nueva pide 1

conexioacuten TCP obtendraacute R10 Si la aplicacioacuten nueva pide 11

conexiones TCP obtendraacute 11R20 maacutes de R2

Capa Transporte 3-26

Capiacutetulo 3 Resumen

Principios detraacutes de los servicios de capa transporte multiplexing demultiplexing Transferencia confiable de

datos Control de flujo Control de congestioacuten

Uso e implementacioacuten en Internet UDP TCP

A continuacioacuten Dejaremos la

ldquoperiferiardquo o ldquoedgerdquo de la red (capas aplicacioacuten y transporte)

Nos internaremos en el centro de la red ldquonetwork corerdquo

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
Page 24: 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 Transporte 3-24

iquestPor queacute TCP es justaSupongamos dos sesiones compitiendo Aumento aditivo da pendiente de 1 como aumento de throughout Reduccioacuten multiplicativa reduce throughput proporcionalmente

R

R

Igual bandwidth compartido

Throughput Conexioacuten 1

Th

roughput

Con

exioacute

n 2

Peacuterdida decrece ancho de banda en factor de 2

Abolicioacuten de congestioacuten aumento aditivo

Abolicioacuten de congestioacuten aumento aditivo

Peacuterdida decrece ancho de banda en factor de 2

Capa Transporte 3-25

Equidad (maacutes)

Equidad y UDP Aplicaciones Multimedia

no usan TCP No quieren tasa ahogada

por control de congestioacuten

En su lugar usan UDP Enviacutean audioviacutedeo a tasa

constante y toleran peacuterdidas de paquetes

Aacuterea de investigacioacuten Hacerlas amistosas con TCP (TCP friendly)

Equidad y conexiones TCP paralelas

Nada previene a las aplicaciones de abrir conexiones paralelas entre dos hosts

Navegadores WEB hacen esto Ejemplo Sea un enlace de

tasa R soportando 9 conexiones Una aplicacioacuten nueva pide 1

conexioacuten TCP obtendraacute R10 Si la aplicacioacuten nueva pide 11

conexiones TCP obtendraacute 11R20 maacutes de R2

Capa Transporte 3-26

Capiacutetulo 3 Resumen

Principios detraacutes de los servicios de capa transporte multiplexing demultiplexing Transferencia confiable de

datos Control de flujo Control de congestioacuten

Uso e implementacioacuten en Internet UDP TCP

A continuacioacuten Dejaremos la

ldquoperiferiardquo o ldquoedgerdquo de la red (capas aplicacioacuten y transporte)

Nos internaremos en el centro de la red ldquonetwork corerdquo

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
Page 25: 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 Transporte 3-25

Equidad (maacutes)

Equidad y UDP Aplicaciones Multimedia

no usan TCP No quieren tasa ahogada

por control de congestioacuten

En su lugar usan UDP Enviacutean audioviacutedeo a tasa

constante y toleran peacuterdidas de paquetes

Aacuterea de investigacioacuten Hacerlas amistosas con TCP (TCP friendly)

Equidad y conexiones TCP paralelas

Nada previene a las aplicaciones de abrir conexiones paralelas entre dos hosts

Navegadores WEB hacen esto Ejemplo Sea un enlace de

tasa R soportando 9 conexiones Una aplicacioacuten nueva pide 1

conexioacuten TCP obtendraacute R10 Si la aplicacioacuten nueva pide 11

conexiones TCP obtendraacute 11R20 maacutes de R2

Capa Transporte 3-26

Capiacutetulo 3 Resumen

Principios detraacutes de los servicios de capa transporte multiplexing demultiplexing Transferencia confiable de

datos Control de flujo Control de congestioacuten

Uso e implementacioacuten en Internet UDP TCP

A continuacioacuten Dejaremos la

ldquoperiferiardquo o ldquoedgerdquo de la red (capas aplicacioacuten y transporte)

Nos internaremos en el centro de la red ldquonetwork corerdquo

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26
Page 26: 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 Transporte 3-26

Capiacutetulo 3 Resumen

Principios detraacutes de los servicios de capa transporte multiplexing demultiplexing Transferencia confiable de

datos Control de flujo Control de congestioacuten

Uso e implementacioacuten en Internet UDP TCP

A continuacioacuten Dejaremos la

ldquoperiferiardquo o ldquoedgerdquo de la red (capas aplicacioacuten y transporte)

Nos internaremos en el centro de la red ldquonetwork corerdquo

  • Slide 1
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Slide 7
  • Slide 8
  • Slide 9
  • Slide 10
  • Slide 11
  • Slide 12
  • Slide 13
  • Slide 14
  • Slide 15
  • Slide 16
  • Slide 17
  • Slide 18
  • Slide 19
  • Slide 20
  • Slide 21
  • Slide 22
  • Slide 23
  • Slide 24
  • Slide 25
  • Slide 26