Académique Documents
Professionnel Documents
Culture Documents
Facultad de Ingeniería
Universidad de Buenos Aires
Laboratorio de Sistemas Distribuidos Heterogéneos
2º Cuatrimestre de 2005
Tema: Capa de Transporte Prof. María Feldgen 1
Laboratorio de Sistemas Distribuidos Heterogéneos
Entidad de Entidad de
transporte TPDU transporte
Liberación:
– Notificación de desconexión – Transferencia limitada de datos
– Identificación de la conexión liberada
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
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
Modelo Cliente-Servidor
REQUEST
REPLY
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
Establecimiento Establecimiento
pasivo activo
pendiente pendiente
Conectado
TPDU del DISCONNECT Primitiva DISCONNECT
REQUEST recibida REQUEST ejecutada
Desconexión Desconexión
pasiva activa
pendiente pendiente
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
Establecimiento de la conexión:
Números de secuencia
Espacio
libre
Gráfico del libro de Tanenbaum
RETRANSMISION
Direccionamiento en TCP
Host Host
MAFALDA SUSANITA
conexión
Servidor Cliente
Datagrama UDP
Datagrama IP
Datagrama UDP
0 15 16 31
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
Segmento de TCP
Datagrama IP
Segmento TCP
0 15 16 31
Nro. de Port Origen (16 bits) Nro. de Port Destino (16 bits)
Datos
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
segmento
ACK = 8301
3
Terminación:
segmento FIN ISNC = 1201 ACK = 8301
1
segmento
ACK = 1202 2
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)
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.
Tipos de transferencia
de datos
Flujo de datos interactivo
(Telnet y Rlogin)
Flujo de datos masivo (Bulk data)
(ftp, correo electrónico, etc)
ack Monitor de
consola procesa
eco de “A” (PUSH) eco
display
A ack
Algoritmo de Nagle
Deshabilitación del Algoritmo de Nagle
Tipos de servidores
Iterativo Iterativo
SIN Conexión CON Conexión
Concurrente Concurrente
SIN Conexión CON Conexión
Server Concurrente
Host MAFALDA
(tcp, * ,21)
fork Cliente
server (tcp, Susanita, 1500)
Conexión
hijo
(tcp, Mafalda, 21)
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)