You are on page 1of 17

Capas de Transporte OSI y TCP

Facultad de Ingeniería
Universidad de Buenos Aires
Laboratorio de Sistemas Distribuidos Heterogéneos

75.43 Introducción a los Sistemas Distribuidos


75.33 Redes y Teleprocesamiento I

Capas de Transporte del modelo


OSI y del Modelo TCP/IP
Servicios y Protocolos
Conceptos y características
Prof. María Feldgen

2º Cuatrimestre de 2005
Tema: Capa de Transporte Prof. María Feldgen 1
Laboratorio de Sistemas Distribuidos Heterogéneos

Servicios que provee a las


capas superiores
Host A Host B

Capas superiores Capas superiores


Aplicación, Aplicación,
presentación y presentación y
Dirección de sesión sesión
transporte interfase

Entidad de Entidad de
transporte TPDU transporte

Dirección interfase Dirección


de red de red

Capa de red Capa de red

Las capas de transporte, red y capas superiores.


Tema: Capa de Transporte Prof. María Feldgen 2
Laboratorio de Sistemas Distribuidos Heterogéneos

75.43 Introducción a los Sistemas Distribuidos


75.33 Redes y Teleprocesamiento I (Prof. María Feldgen) 1
Capas de Transporte OSI y TCP

Relación entre unidades

(carga útil o área de datos)

Las cabeceras (headers) de TPDUs, paquetes y


tramas (frames).
Tema: Capa de Transporte Prof. María Feldgen 3
Laboratorio de Sistemas Distribuidos Heterogéneos

Funciones de la Capa de Transporte


OSI
 Conexión:  Transferencia:
– Mapeo de direcciones – Secuenciamiento, bloqueo,
– Conexión de red segun concatenación, segmentación
requerimientos – Multiplexado o splitting
– Multiplexado o splitting – Control de flujo
– Establecer unidad de transporte – Detección o recuperación de
– Funciones para la fase de errores
transferencia – Datos urgentes
– Identificación de las puntas de – Delimitación de segmento
transporte – Identificación de conexión de
– Transferir datos iniciales transporte

 Liberación: 
– Notificación de desconexión – Transferencia limitada de datos
– Identificación de la conexión liberada

Tema: Capa de Transporte Prof. María Feldgen 4


Laboratorio de Sistemas Distribuidos Heterogéneos

75.43 Introducción a los Sistemas Distribuidos


75.33 Redes y Teleprocesamiento I (Prof. María Feldgen) 2
Capas de Transporte OSI y TCP

Características de un servicio
CON CONEXION
(Repaso)

 Unidades relacionadas
 Establecimiento o
 Los datos llegan en orden
conexión (Nº de secuencia)
 Transferencia  Control de errores
 Liberación o  Retransmisión
desconexión  Control de flujo

Tema: Capa de Transporte Prof. María Feldgen 5


Laboratorio de Sistemas Distribuidos Heterogéneos

Modelo Cliente-Servidor
 Es un grupo de procesos cooperantes, llamados servers
(servidores) que brindan servicios a los usuarios,
llamados clients (clientes)
 La aplicación se basan en un protocolo de
pregunta/respuesta (request/reply)

Request
Cliente Servidor
5 Request/Reply
Reply 4
Capas 1 a 4 Capas 1 a 4
3
2
1
Red
Modelo de Capas
Tema: Capa de Transporte Prof. María Feldgen 6
Laboratorio de Sistemas Distribuidos Heterogéneos

75.43 Introducción a los Sistemas Distribuidos


75.33 Redes y Teleprocesamiento I (Prof. María Feldgen) 3
Capas de Transporte OSI y TCP

Modelo Cliente-Servidor

REQUEST

REPLY

Cliente: inicia la Servidor: Espera por el


interacción cliente
ACTIVO PASIVO

Tema: Capa de Transporte Prof. María Feldgen 7


Laboratorio de Sistemas Distribuidos Heterogéneos

Distintos modelos
1.
Cliente Servidor Direccionamiento al server
1. Request a 243.0.0.1
2. 2. Reply a 199.0.0.2

Red

3. Direccionamiento al proceso
Cliente Servidor por broadcast
1. 4. 2. 1. Broadcast
2. Respuesta al broadcast
3. Request
Red 4. Reply
1. Direccionamiento
3.
Servidor Cliente Name Server por Name Server
1. Lookup
4. 2. 2. NS reply
3. Request
Red 4. Reply
Tema: Capa de Transporte Prof. María Feldgen 8
Laboratorio de Sistemas Distribuidos Heterogéneos

75.43 Introducción a los Sistemas Distribuidos


75.33 Redes y Teleprocesamiento I (Prof. María Feldgen) 4
Capas de Transporte OSI y TCP

Primitivas de servicio de Transporte OSI


Servidor Cliente
TPDU del CONNECT Primitiva CONNECT
REQUEST recibida REQUEST ejecutada
IDLE

Establecimiento Establecimiento
pasivo activo
pendiente pendiente

Primitiva CONNECT TPDU del CONNECT


INDICATION ejecutada ACCEPT recibida

Conectado
TPDU del DISCONNECT Primitiva DISCONNECT
REQUEST recibida REQUEST ejecutada

Desconexión Desconexión
pasiva activa
pendiente pendiente

Primitiva DISCONNECT TPDU del DISCONNECT


INDICATION ejecutada ACCEPT recibida
IDLE
Diagrama de estados de la administración de la conexión y desconexión. Las
transiciones en rojo son causadas por la llegada de un segmento. La zona en
amarillo muestra el estado del servidor luego de cada interacción. La zona en
verde, la del cliente.
Tema: Capa de Transporte Prof. María Feldgen 9
Laboratorio de Sistemas Distribuidos Heterogéneos

Direccionamiento en la capa de
transporte OSI
Proceso
Proceso Proceso
usuario
servidor 1 servidor 1
(cliente)
TSAPs
TSAP 1243 TSAP 1888 TSAP 1666 TSAPs
Conexión de 4 Transporte
transporte

3 Red NSAPs
NSAPs
2 Enlace

1 Física

Relación entre TSAPs y NSAPs en la conexiones de transporte


Tema: Capa de Transporte Prof. María Feldgen 10
Laboratorio de Sistemas Distribuidos Heterogéneos

75.43 Introducción a los Sistemas Distribuidos


75.33 Redes y Teleprocesamiento I (Prof. María Feldgen) 5
Capas de Transporte OSI y TCP

Establecimiento de la conexión:
Números de secuencia

Gráfico del libro de Tanenbaum

(a) Los Nº de segmentos de las TPDUs no pueden


estar en la región prohibida
(b) El problema de resincronización
Tema: Capa de Transporte Prof. María Feldgen 11
Laboratorio de Sistemas Distribuidos Heterogéneos

Control de Flujo y Buffering

Espacio
libre
Gráfico del libro de Tanenbaum

(a) Buffers de tamaño fijo, encadenados.


(b) Buffers de tamaño variable encadenados.
(c) Un buffer grande circular por conexión

Tema: Capa de Transporte Prof. María Feldgen 12


Laboratorio de Sistemas Distribuidos Heterogéneos

75.43 Introducción a los Sistemas Distribuidos


75.33 Redes y Teleprocesamiento I (Prof. María Feldgen) 6
Capas de Transporte OSI y TCP

RETRANSMISION

 Los mecanismos de retransmisión se


conocen como:
Automatic Repeat Request (ARQ):
– Stop and Wait ARQ
– Créditos (en la capa de transporte OSI)
– Go-Back N ARQ (en la capa transporte TCP)
– Selective Reject ARQ

Tema: Capa de Transporte Prof. María Feldgen 13


Laboratorio de Sistemas Distribuidos Heterogéneos

Créditos OSI y control de flujo


En una transmisión de datos de un host A a un host B
A Mensaje B Comentario
1 Establecimiento buf=8 A garantiza lugar para recibir 8 mensajes
2 Establecimiento ack buf=4 B garantiza lugar para recibir 4 mensajes
3 Nº sec=0 data =m0 A puede enviar 3 mensajes mas
4 Nº sec=1 data =m1 A puede enviar 2 mensajes mas
5 Nº sec=2 data =m2 … El mensaje se pierde, A puede enviar 1 mas
6 Ack = 1 buf = 3 B confirma mensaje 0, y permite el mensaje 1 a 3
7 Nº sec=3 data =m3 A No puede enviar mas, bloqueado
8 Nº sec=1 data =m1 Timeout del mensaje 1, retransmisión
9 Ack = 4 buf = 2 B confirma mensaje 1 a 3 y permite el mensaje 4 a 5
10 Nº sec=4 data =m4 A puede enviar 1 mas
11 Nº sec=5 data =m5 A no puede enviar mas, bloqueado
12 Ack = 5 buf = 0 B confirma mensaje 4 y permite 0 mensajes
13 Ack = 6 buf = 1 B confirma mensaje 5 y permite el mensaje 6
14 Nº sec=6 data =m6 A no puede enviar mas, bloqueado
15 Ack = 6 buf = 0 B confirma mensaje 6 y permite 0 mensajes
16 … Ack = 6 buf = 2 B confirma y se pierde: deadlock potencial

Tema: Capa de Transporte Prof. María Feldgen 14


Laboratorio de Sistemas Distribuidos Heterogéneos

75.43 Introducción a los Sistemas Distribuidos


75.33 Redes y Teleprocesamiento I (Prof. María Feldgen) 7
Capas de Transporte OSI y TCP

Capa de Transporte OSI

Tipos de redes Tasa error Tipos de TPDU


ACEPTABLE  CR: Connect Request
residual señalados  CC: Connect Confirm
 A: CONS confiable SI SI  DR: Disconnect Request
 B: CONS c/ errores SI NO  DC: Disconnect Confirm
 C: CLNS NO NO  DT: Datos
 ED: Expedited Data
Clases de protocolos Tipo de red
 AK: ACK de datos
 0 Clase simple A  EA: ACK Expedited Data
 1 Recup.básica errores B  RJ: Reject
 2 Clase multiplexado A  ER: Error en TPDU
 3 Recup. errores y Mux B  PI: Ident. de transp.
 4 Detección y Recup errores C

Tema: Capa de Transporte Prof. María Feldgen 15


Laboratorio de Sistemas Distribuidos Heterogéneos

Capas de Transporte en TCP/IP


 CON CONEXIÓN: TCP (Transport Control Protocol)
Similar a TP4 del modelo OSI
 SIN CONEXIÓN: UDP (User Datagram Protocolo)
Modelo Cliente Servidor
Cliente Servidor

Request enviado al port y dirección de IP del


servidor
(TCP/UDP) + IP
PORT PORT

Reply enviado al port y dirección de IP del origen

Tema: Capa de Transporte Prof. María Feldgen 16


Laboratorio de Sistemas Distribuidos Heterogéneos

75.43 Introducción a los Sistemas Distribuidos


75.33 Redes y Teleprocesamiento I (Prof. María Feldgen) 8
Capas de Transporte OSI y TCP

Direccionamiento en TCP
Host Host
MAFALDA SUSANITA
conexión
Servidor Cliente

(tcp, * ; 21) (tcp, SUSANITA,1500)

Port bien conocido Port asignado


Socket o half association pasivo Socket o half association activo
Association (conexión): (tcp, MAFALDA,21, SUSANITA,1500)
Dir local Dir remota Comportamiento del server:
IPL+portL IPR+portR acepta a un solo cliente (*)
IPL+portL *.* acepta datagramas para IPL
*.portL *.* acepta todos los datagramas para portL
Tema: Capa de Transporte Prof. María Feldgen 17
Laboratorio de Sistemas Distribuidos Heterogéneos

User Datagram Protocol (UDP)


 Es un protocolo de datagramas (protocolo sin conexión).
 En cada operación se procesa exactamente un datagrama,
que se envia en un datagrama de IP.
RFC 768

Header IP Header UDP


20 bytes (8 bytes) Datos UDP

Datagrama UDP

Datagrama IP

Tema: Capa de Transporte Prof. María Feldgen 18


Laboratorio de Sistemas Distribuidos Heterogéneos

75.43 Introducción a los Sistemas Distribuidos


75.33 Redes y Teleprocesamiento I (Prof. María Feldgen) 9
Capas de Transporte OSI y TCP

Datagrama UDP
0 15 16 31

Dirección de IP de origen (32 bits)

UDP
Dirección de IP de destino (32 bits) Pseudo
Header
cero Protocolo (8 bits)
Longitud de UDP (16 bits)
17

Nro Port Origen (16 bits) Nro Port Destino (16 bits) UDP
Header
Longitud de UDP (16 bits) Checksum (16 bits)

Datos

Tema: Capa de Transporte Prof. María Feldgen 19


Laboratorio de Sistemas Distribuidos Heterogéneos

Transport Control Protocol (TCP)

 Es un servicio con conexión, byte stream RFC 793


 La conexión requiere de las tres etapas:
– Establecimiento de la conexión
– Transferencia de datos
– Liberación de la conexión

Header IP Header TCP


20 bytes (20 bytes) Datos TCP

Segmento de TCP

Datagrama IP

Tema: Capa de Transporte Prof. María Feldgen 20


Laboratorio de Sistemas Distribuidos Heterogéneos

75.43 Introducción a los Sistemas Distribuidos


75.33 Redes y Teleprocesamiento I (Prof. María Feldgen) 10
Capas de Transporte OSI y TCP

Segmento TCP
0 15 16 31

Nro. de Port Origen (16 bits) Nro. de Port Destino (16 bits)

Nro de Secuencia (32 bits)

Nro. de ACK (32 bits) TCP


Header
Long.Header Reservado U A P P S F
(4 bits) (6 bits) R C S S Y I Tamaño ventana (16 bits)
G K H T N N

Checksum (16 bits) Puntero a Urgente (16 bits)

Opciones (si hay)

Datos

Tema: Capa de Transporte Prof. María Feldgen 21


Laboratorio de Sistemas Distribuidos Heterogéneos

CONCEPTOS de TCP
Establecimiento : Liberación :
three-way handshake
 Open Activo  Half Close
 Open Pasivo  Estado 2MSL Wait
 N°de secuencia inicial  Estados FIN_WAIT
 Negociación de MSS  Close simultáneo
 Open simultáneo  Timeout
 Backlog
 Timeout

Tema: Capa de Transporte Prof. María Feldgen 22


Laboratorio de Sistemas Distribuidos Heterogéneos

75.43 Introducción a los Sistemas Distribuidos


75.33 Redes y Teleprocesamiento I (Prof. María Feldgen) 11
Capas de Transporte OSI y TCP

Establecimiento y Terminación de una conexión TCP


Establecimiento:
segmento SYN ISNC = 1200 win = 4096 <mss = 1024>
1
segmento
SYN ISNC = 8300 ACK = 1201 win = 4096 <mss = 1024> 2

segmento
ACK = 8301
3

Terminación:
segmento FIN ISNC = 1201 ACK = 8301
1
segmento
ACK = 1202 2

FIN ISNC = 8301 ACK = 1202 segmento


segmento 3
ACK = 8302
4

Tema: Capa de Transporte Prof. María Feldgen 23


Laboratorio de Sistemas Distribuidos Heterogéneos

Diagrama de transición (Comienzo)


de estados de TCP CLOSED
listen / connect / SYN

SYN / SYN + ACK LISTEN


(open pasivo) close o
RST / send / SYN timeout
SYN / SYN + ACK
SYN_RCVD (open simultáneo) SYN_SEND
(open activo)
close / FIN ACK / SYN + ACK / ACK
ESTABLISHED
close / FIN FIN / ACK
(transf. datos)
(cierre simultáneo) CLOSE_WAIT
FIN_WAIT_1 FIN / ACK
CLOSING close / FIN
FIN + ACK / ACK ACK /
ACK / LAST_ACK
ACK /
FIN_WAIT_2 TIME_WAIT timeout
FIN / ACK
(2MSL timeout)
(cierre activo) (cierre pasivo)

Tema: Capa de Transporte Prof. María Feldgen 24


Laboratorio de Sistemas Distribuidos Heterogéneos

75.43 Introducción a los Sistemas Distribuidos


75.33 Redes y Teleprocesamiento I (Prof. María Feldgen) 12
Capas de Transporte OSI y TCP

Retransmisión en TCP:
Sliding Windows ARQ
 Categorías de Transmisión:
– Cada una de las dos capas que están conectadas deben controlar la
cantidad de datos que envían y reciben del otro. Esto se realiza
dividiendo los bytes en categorías. El transmisor debe dividir los datos
enviados en categorías tal de diferenciar los datos enviados y ya
confirmados de los enviados y no confirmados todavía, ya que debe
esperar la confirmación (ACK) del receptor o puede ser necesario
retransmitirlos.
– Para los datos de la capa superior que se transmitieron hay 4 categorías:
1. Transmit Category #1: Bytes Enviados y que fueron Confirmados
(Acknowledged)
2. Transmit Category #2: Bytes Enviados pero que NO fueron
confirmados todavía (falta el ACK)
3. Transmit Category #3: Bytes que NO se enviaron todavía y que el
receptor esta dispuesto a acceptar (están dentro de la ventana)
4. Transmit Category #4: Bytes que NO se enviaron todavía y que
están en la siguiente ventana (el receptor NO permite aún su envío)

Tema: Capa de Transporte Prof. María Feldgen 25


Laboratorio de Sistemas Distribuidos Heterogéneos

Retransmisión en TCP:
Sliding Windows ARQ
 Categorías de Recepción:
– Para los datos que se reciben no es necesario separar entre datos
recibidos y confirmados y datos recibidos y no confirmados como
hace el transmisor, ya que no debe esperar por los ACKs.
1. Receive Category #1+2: Bytes Recibidos y confirmados al
transmisor. Son las complementarias de las Transmit
Categories #1 and #2 del transmisor.
2. Receive Category #3: Bytes que no se recibieron todavia,
pero que está dentro de la ventana (Receptor listo para
recibirlas). Es la complementaria a Transmit Category #3.
3. Receive Category #4: Bytes que no se recibieron y que
marcan el comienzo de la siguiente ventana (Receptor NO
está listo para recibirlos todavia). Es la complementaria a
Transmit Category #4.

Tema: Capa de Transporte Prof. María Feldgen 26


Laboratorio de Sistemas Distribuidos Heterogéneos

75.43 Introducción a los Sistemas Distribuidos


75.33 Redes y Teleprocesamiento I (Prof. María Feldgen) 13
Capas de Transporte OSI y TCP

Sliding Windows en TCP


# Send Unacknowledged (SND.UNA): Es el Nº de secuencia del 1º byte de datos enviado sin ACK. Es el primer
byte de la Transmit Category #2; todos los Nº de secuencia anteriores corresponden a bytes en Transmit Category
#1.
# Send Next (SND.NXT): Es el Nº de secuencia del siguiente byte de datos a enviar. Esto marca el primer byte de
Transmit Category #3.
# Send Window (SND.WND): El tamaño de la ventana de emisión en bytes que puede enviar sin esperar el ACK.
La suma de (SND.UNA) + (SND.WND) marca el primer byte de Transmit Category #4.

Tema: Capa de Transporte Gráfico de www.tcpipguide.com/free Prof. María Feldgen 27


Laboratorio de Sistemas Distribuidos Heterogéneos

Tipos de transferencia
de datos
 Flujo de datos interactivo
(Telnet y Rlogin)
 Flujo de datos masivo (Bulk data)
(ftp, correo electrónico, etc)

Tema: Capa de Transporte Prof. María Feldgen 28


Laboratorio de Sistemas Distribuidos Heterogéneos

75.43 Introducción a los Sistemas Distribuidos


75.33 Redes y Teleprocesamiento I (Prof. María Feldgen) 14
Capas de Transporte OSI y TCP

Características del flujo interactivo


Cliente Servidor
tecla A “A” (PUSH)

ack Monitor de
consola procesa
eco de “A” (PUSH) eco
display
A ack

 Algoritmo de Nagle
 Deshabilitación del Algoritmo de Nagle

Tema: Capa de Transporte Prof. María Feldgen 29


Laboratorio de Sistemas Distribuidos Heterogéneos

Flujo de datos masivos


 Flujo de datos normal
 Retransmisión:
– Ventanas deslizantes (sliding window)
– Tamaño de la ventana
 Control de congestión:
– Slow start:
• ventana del receptor (wnd)
• ventana de congestión (cwnd)
 Síndrome Silly Window (Clark 1982)
 Modo Urgente
Tema: Capa de Transporte Prof. María Feldgen 30
Laboratorio de Sistemas Distribuidos Heterogéneos

75.43 Introducción a los Sistemas Distribuidos


75.33 Redes y Teleprocesamiento I (Prof. María Feldgen) 15
Capas de Transporte OSI y TCP

Comparación TP4 - TCP


 TP4  TCP
– Orientado a unidades – Orientado a streams
– desconexión abrupta – Graceful release
– Expedited Data – Datos urgentes
 Otras:  Otras:
– Múltiples TPDU’s – Una TPDU
– Créditos – Ventanas deslizantes
– Checksum (Fletcher) – Checksum (compl. a 1)
– Retransmisión – Retransm. (Jacobson)
– TS-Bridge(Internetworking) – No existe

Tema: Capa de Transporte Prof. María Feldgen 31


Laboratorio de Sistemas Distribuidos Heterogéneos

Tipos de servidores

Iterativo Iterativo
SIN Conexión CON Conexión

Concurrente Concurrente
SIN Conexión CON Conexión

Tema: Capa de Transporte Prof. María Feldgen 32


Laboratorio de Sistemas Distribuidos Heterogéneos

75.43 Introducción a los Sistemas Distribuidos


75.33 Redes y Teleprocesamiento I (Prof. María Feldgen) 16
Capas de Transporte OSI y TCP

Server Concurrente

Host MAFALDA

server Request Host Susanita


Conexión

(tcp, * ,21)
fork Cliente
server (tcp, Susanita, 1500)
Conexión
hijo
(tcp, Mafalda, 21)

Tema: Capa de Transporte Prof. María Feldgen 33


Laboratorio de Sistemas Distribuidos Heterogéneos

Server Concurrente
Host Mafalda Host Susanita
Request
Conexión
server
Cliente
Conexión
(tcp, * ,21)
fork (tcp, Susanita, 1500)
server
hijo Host Manolito
(tcp, Mafalda, 21) Request
Conexión
server Cliente
hijo
Conexión
(tcp, Mafalda, 21) (tcp, Manolito, 1500)

Tema: Capa de Transporte Prof. María Feldgen 34


Laboratorio de Sistemas Distribuidos Heterogéneos

75.43 Introducción a los Sistemas Distribuidos


75.33 Redes y Teleprocesamiento I (Prof. María Feldgen) 17

You might also like