Sei sulla pagina 1di 42

UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

(Universidad del Perú , DECANA DE AMËRICA)


FACULTAD DE INGENIERIA ELECTRÓNICA

La Capa de Transporte
Capa de Transporte
• Proporciona el transporte de datos confiable y económico de la
máquina origen a la máquina destino independientemente de la
subred o redes físicas.

LA CAPA DE TRANSPORTE 2
Capa de Transporte
• Servicio que proporciona a las capas superiores:

• Provee un transporte confiable a los procesos de la capa de


aplicación

• Asegurándose de que los datos lleguen sin errores y en la


secuencia correcta

• Ofrece direccionamiento y control de flujo

• Garantiza la calidad de servicio

• Detecta y compensa paquetes perdidos y datos alterados


3
Capa de Transporte
• Las 04 capas inferiores del OSI se conocen como proveedor de
servicio de transporte y las capas superiores como usuario del
servicio de transporte

Host 1 Host 2

Capa de Aplicación Capa de Aplicación


(o de sesión) Dirección de (o de sesión)
Transporte
Interfáz
aplicación/transporte
Entidad de Entidad de
TPDU
transporte Protocolo de transporte
transporte

Dirección de Interfáz
red transporte/red
Capa de Red Capa de Red

Las capas de Red, Transporte y Aplicación 4


Capa de Transporte
• Las entidades de transporte se comunican con TPDUs
(Transport Protocol Data Units)

Cabecera Cabecera Cabecera de


del marco del paquete la TPDU

Carga útil
de la TPDU

Carga útil del paquete

Carga útil del marco

Anidamiento de las TPDU, los paquetes y los marcos

5
Capa de Transporte
• Funciones de un protocolo de transporte: Considerados para una
red no segura

• Direccionamiento

• Establecimiento / liberación de una conexión

• Control de flujo

• Detección de duplicados

• Multiplexación
6
• Recuperación de caidas
Capa de Transporte
• Direccionamiento: Si una aplicación quiere establecer una conexión
con otra aplicación, necesita dar la dirección

Host 1 Host 2

En la Internet un TSAP Una dirección del


Proceso de es un par que consiste Capa de Servidor nivel de transporte se
TSAP 6
Aplicación en la dirección de IP Aplicación llama un TSAP
(NSAP) y el puerto (Transport Service
La conexión Access Point) y las
La conexión Capa de TSAP direcciones del nivel
de red de transporte
comienza aquí Transporte 122 de red se llaman
comienza aquí NSAP (Network
NSAP NSAP Service Access
Capa de Points)
Red

Capa de
Enlace

Capa
Física
Medio de Tx
7
TSAP, NSAP y conexiones
Capa de Transporte
• Puertos:
• La capa de transporte añade la noción de puerto para
distinguir entre los muchos destinos dentro de un mismo host

Dirección IP: 194.35.133.5 Dirección IP: 135.22.8.165


Puerto: 1256 Puerto: 80

Host 1 Host 2

La capa de transporte transmite mensajes entre las aplicaciones de dos


ordenadores. Por ejemplo, entre un navegador de páginas web y un
servidor de páginas web.

Transmisión de mensajes en la Capa de Transporte


8
Capa de Transporte
• El puerto es un número entero entre 0 y 65535
• Un puerto es un número de 16 bits, por lo que existen 65536
puertos en cada ordenador
• Las aplicaciones utilizan estos puertos para recibir y transmitir
mensajes
• Los números de puerto tienen los siguientes intervalos
asignados:
➢ Los números inferiores a 255 corresponden a aplicaciones
públicas
➢ Los números entre 255-1023 se asignan a empresas para
aplicaciones comercializables
➢ Los números superiores a 1023 no están regulados
9
Capa de Transporte

Palabra Clave Puerto Descripcion


Echo 7 /TCP/UDP Eco
Daytime 13/TCP/UDP Fecha y Hora del sistema
Protocolo de Transferencia de
FTP 21/TCP
Archivos
Telnet 23/TCP Protocolo de Terminal Remoto
Protocolo Simple de Transferencias
SMTP 25/TCP
de Correo
DNS 53/TCP/UDP Servidor de Dominio de Nombres
Protocolo de Transferencia Trivial de
TFTP 69/UDP
Archivos
WWW-HTTP 80/TCP World Wide Web HTTP
POP3 110/TCP Post Office Protocol Version 3
Protocolo Simple de Administracion
SNMP 161/UDP
de Red

Los puertos well-known más usuales

10
Capa de Transporte
• Establecimiento de conexión:

• Permite asegurar la existencia de los dos extremos

• Permite la negociación de parámetros: números de secuencia


inicial para lograr sincronismo, tamaño de segmento, tamaño
máximo de ventana, calidad de servicio

• Pone en marcha la reserva de recursos de la entidad de


transporte: espacio de memoria, entradas en las tablas de
conexiones

11
Capa de Transporte
• En el establecimiento de una conexión se utiliza el Protocolo de
Acuerdo de Tres Vías (three-way handshake)
Host 1 Host 2 Host 1 Host 2 Host 1
Tiempo

Tiempo

Tiempo
Duplicado
viejo

a) Operación normal b) Solicitud de Conexión


duplicada vieja que aparece de la
nada
•Host 1 manda un Connect Request (CR) con su número de secuencia, x
•Host 2 responde con una TPDU Connection Accepted reconociendo x, c) Solicitud de Conexión
anunciando su propio número de secuencia inicial, y duplicada y AKC duplicada
•Host 1 reconoce el número de secuencia del host 2 en la primera TPDU de datos
que envía
Tres situaciones de protocolo para establecer una conexión usando un protocolo 12
de acuerdo de tres vías
Capa de Transporte
• Liberación de una conexión: Para la desconexión se usa el
protocolo siguiente:
Host 1 Host 2 Host 1 Host 2

Envía DR
Envía DR e inicia
e inicia temporizador
temporizador Envía DR
Liberar e inicia
Envía DR conexión
Liberar temporizador
e inicia
conexión .
temporizador
.
.
Enviar Enviar .
ACK Liberar ACK (Timeout)
conexión Liberar
conexión

(a) Caso normal del protocolo de (b) Pérdida del último ACK
acuerdo de tres vías
•El Host 1 manda un Disconnect Request (DR) e inicia un temporizador
•El Host 2 entonces manda un DR e inicia también un temporizador
•Al llegar el DR, el Host 1 manda un ACK y libera la conexión
•El Host 2 lo recibe y libera la conexión también 13
Capa de Transporte
Host 1 Host 2 Host 1 Host 2

Envía DR Envía DR
e inicia Envía DR e inicia Envía DR
temporizador e inicia temporizador e inicia
temporizador . temporizador
. .
(Timeout) .
.
Envía DR e inicia .
temporizador (Timeout) .
Envía DR Envía DR e inicia .
e inicia temporizador .
temporizador . .
Liberar .
.
conexión .
.
.
Envía ACK
Liberar
conexión (N Timeouts) (N Timeouts)
Liberar Liberar
conexión conexión
(c) Respuesta perdida
(d) Respuesta perdida y pérdida de
las DR subsiguientes

Cuatro situaciones del protocolo de liberación de una conexión


14
Capa de Transporte
• Control de Flujo:

• Emplea el concepto de ventanas deslizantes como en el nivel


de enlace
• El receptor puede decidir cuánto espacio en buffers quiere
dedicar a sus conexiones
• Se emplean tres parámetros para el control de flujo: número
de secuencia, número de confirmación, tamaño de ventana
➢ Cuando una entidad transporte envía un segmento incluye
el número de secuencia del primer octeto de datos
➢ Cuando una entidad de transporte confirma un segmento
envía el número de secuencia del siguiente octeto que
espera recibir y el número de octetos permitidos para
enviar
15
Capa de Transporte
Entidad de Transporte A Entidad de Transporte B

1000 1001 2400 2401 1000 1001 2400 2401

A puede enviar 1400 octetos B esta preparada para recibir 1400 octetos

1000 1001 1601 2401


1600 1601 2601
A disminuye su ventana de transmisión
con cada envío B aumenta su tamaño de ventana a 1000 (aceptará
los octetos desde 1601 hasta 2601)

1000 1001 2001 2401

1600 1601 2001 2601

1600 1601 2001 2601

A ajusta su ventana con cada anuncio

1600 1601 2600 2601

2600 2601 4000 4001

B confirma 05 segmentos e incremeta su


2600 2601 4000 4001 ventana a 1400 octetos
16
Ejemplo de Control de Flujo
Capa de Transporte
• Detección de duplicados: El receptor debe ser capaz de
reconocer los duplicados a través de los números de secuencia
Entidad de Transporte A Entidad de Transporte B

A envió 03 segmentos: SEQ=1,


SEQ=201, SEQ-=401

•El espacio de
Expira temporizador en A y retransmite
segmento SEQ-=1 números de secuencia
Expira temporizador en A y retransmite
deben ser lo
segmento SEQ-=201 suficientemente
grandes para no
agotarse antes del
tiempo de vida de un
segmento

Llega a B segmento SEQ=1


Duplicado viejo

17
Ejemplo de una detección incorrecta de duplicados
Capa de Transporte
• Multiplexación:
Direcciones de
Transporte
Capas

Direcciones de
4 Red

Líneas de
2 enrutamiento

a) Multiplexación hacia arriba b) Multiplexación hacia abajo

18
Capa de Transporte
• Protocolo de Transporte de Internet (UDP y TCP):
• Internet tiene dos protocolos principales en la capa de
transporte, uno orientado a conexiones (TCP) y uno sin
conexiones (UDP)
MIME

BGP FTP HTTP SMTP TELNET SNMP TFTP

TCP UDP

ICMP IGMP OSPF RSVP

IP
La Capa de Transporte de Internet
19
Protocolo UDP
• Protocolo de Datos de Usuario (UDP):

• Características principales:

• Sin conexión: No emplea ninguna sincronización origen-


destino
• Trabaja con paquetes o datagramas enteros: No con bytes
individuales como el TCP. Una aplicación utilizando UDP
implica el envío y recepción de un paquete completo
• No es fiable: No emplea control de flujo, ni ordena los
paquetes
• Provoca poca carga adicional a la red: Es sencillo y emplea
cabeceras muy simples
20
Protocolo UDP
• Datagrama UDP:

• Un paquete de datos UDP se denomina Datagrama UDP


• Consta de una cabecera de 08 bytes seguida de los datos

Cabecera
Datagrama UDP
UDP
Área de Datos
(20 Bytes (08 Bytes)
mínimo)

Cabecera
Datagrama IP
IP
Área de Datos

21
Protocolo UDP
• Formato de Datagrama UDP:

• Básicamente es un paquete IP con un encabezado mínimo de


capa de transporte

0 15 16 31
Puerto fuente Puerto destino
Longitud UDP Suma de Comprobación
Datos
….

Formato de un Datagrama UDP

22
Protocolo UDP
• Campos puerto de origen y puerto de destino (16 bits):
Identifican los puntos terminales locales de la conexión

• Campo longitud (16 bits): Indica la longitud del mensaje,


incluyendo los campos de cabecera

• Campo suma de comprobación (16 bits): El uso de este campo


en UDP es opcional; cuando se envía información en tiempo real
(audio o vídeo digitalizado) su uso puede omitir

• Para su cálculo se aplica el mismo algoritmo que en TCP

23
Protocolo TCP
• Protocolo de Control de Transmisiones (TCP):
• Características principales:
• Trabaja con un flujo de bytes: TCP agrupa los bytes en
segmentos de tamaño adecuado para mejorar el rendimiento
y evitar la fragmentación a nivel IP
• Transmisión orientada a la conexión: Se requiere una
secuencia de conexión previa al envío- recepción de datos
entre cliente y servidor y una desconexión final
• Fiable: Emplea control de flujo mediante ventanas
deslizantes de envío continuo y asentamiento positivos
(ACK). La ventana deslizante se aplica a los bytes.
• Flujos de bytes ordenado: Un receptor TCP ordena los
segmentos que recibe para entregar los bytes al nivel superior
24
en orden
Protocolo TCP
• Segmento TCP:

• Un paquete de datos TCP se denomina Segmento TCP


• Consta de una cabecera de 20 bytes como mínimo seguida de
los datos

Cabecera
Segmento TCP
TCP
Área de Datos
(20 Bytes (20 Bytes
mínimo) mínimo)

Cabecera
Datagrama IP
IP
Área de Datos

25
Protocolo TCP
• Formato del Segmento TCP:

• Un segmento consiste en una cabecera TCP fija de 20 bytes


(mas opciones) seguida de bytes de datos
0 4 15 16 31
Puerto fuente Puerto destino
Número de Secuencia
Número ACK
Longitude
PSH

SYN
URG

RST
ACK

Cabecera FIN Tamaño de la ventana del receptor


TCP
Suma de Comprobación Apuntador Urgente
Opciones (si las hay) + Relleno
Datos
….

Formato de un Segmento TCP 26


Protocolo TCP
• Campos puerto de origen y puerto de destino (16 bits):
Identifican los puntos terminales locales de la conexión

• Campo número de secuencia (32 bits): Número del primer


byte del campo de datos

• Campo número de acuse de recibo (32 bits): Especifica el


siguiente byte esperado

• Campo longitud de cabecera tcp (4 bits): Indica la cantidad de


palabras de 32 bits contenidas en la cabecera TCP

27
Protocolo TCP
• A continuación viene un campo de 6 bits que no se usan y seis
flags de 01 bit:

• URG: Indica que el segmento contiene datos urgentes

• Campo Apuntador Urgente: Sirve para indicar un


desplazamiento en bytes a partir del número actual de secuencia
en el que se encuentran datos urgentes

• Ack: Indica que el número de acuse de recibo es válido

28
Protocolo TCP
• PSH (Push): Indica datos empujados, el receptor no almacena
los datos antes de entregarlos

• RST (reset): Se usa para restablecer una conexión debido a una


caída de host u otra razón. Indica un problema en la conexión

• Syn: Se usa para establecer las conexiones. La solicitud de


conexión tiene Syn = 1 y Ack = 0

• Mientras que la aceptación de una conexión tiene Syn = 1 y Ack


=1

• Fin: Se usa para liberar una conexión

29
PROTOCOLO TCP
• Campo ventana del receptor (16 bits): Número de bytes que el
emisor del segmento está dispuesto a aceptar por parte del
destino

• Suma de verificación (24 bits): Suma de comprobación de


errores del segmento actual

• Para su cálculo se utiliza una pseudo-cabecera que también


incluye las direcciones IP origen y destino
0 7 8 15 16 31
Dirección IP del Origen
Dirección IP del Destino
Cero Protocolo = 6 Longitud del segmento TCP

Formato de pseudo-cabecera incluida 30


Protocolo TCP
• Campo de Opciones (32 bits): Se diseñó para contar con una
manera de agregar características extra no cubiertas por la
cabecera normal

• Entre las más interesantes se encuentran las siguientes:


➢ Tamaño máximo de segmento
➢ Uso de repetición selectiva (en vez de retroceso n)
➢ Uso de NAK (acuse de recibo negativo en caso de no
recepción de un segmento)
➢ Uso de ventana extendida (mayor de 64 kbytes)

31
Protocolo TCP
• Conexiones TCP:

• En el TCP se establecen las conexiones usando el Protocolo de


Acuerdo de las Tres Vías
Host 1 Host 2

Cliente TCP TCP Servidor


Active Enviar Pasive
open SYN open

Enviar Open
SYN received
Open Enviar
sucess ACK

32
Establecimiento de una conexión TCP (Acuerdo de Tres Vías)
Protocolo TCP
Host 1 Host 2
Cliente TCP TCP Servidor

Close Enviar
FIN Enviar
datos Closing
Enviar pen-
Terminate
ACK dientes

Enviar
Enviar FIN Close
ACK

Terminate

Liberación de una conexión TCP


33
PROTOCOLO TCP
•Política de Transmisión TCP
Transmisor Receptor Buffer del
La aplicación receptor
0 4K
hace una
escritura de 2K

La aplicación
hace una
escritura de 3K

Transmisor
bloqueado La aplicación
lee 2K

El transmisor
puede enviar
hasta 2K

34
Administración de ventanas en TCP
Protocolo TCP
• Para mejorar el desempeño, la entidad TCP puede demorar los
acuses y las actualizaciones de ventana por 500mseg para
esperar la llegada de más datos

• El Algoritmo de Nagle trata de evitar el envío de segmentos con


solo un byte de información

• Al llegar datos al transmisor de un byte a la vez, se envía el


primer byte y se pone en buffer los demás hasta el acuse de recibo
del byte pendiente

• Cuando llega el acuse se transmiten todos los caracteres en buffer


en un segmento TCP

• Luego se vuelve a poner los datos en buffer hasta que se hayan


reconocido los anteriores 35
Protocolo TCP
• Un problema que puede arruinar el desempeño del TCP es el
Síndrome de ventana tonta

Buffer del receptor lleno

La aplicación lee 1 byte

Espacio para un byte más

Envío de segmento de actualización de ventana

Llega un byte nuevo

1 byte Buffer del receptor lleno

36
Síndrome de ventana tonta
Protocolo TCP
• La Solución de Clark consiste en evitar que el receptor envíe una
actualización de ventana de 01 byte

• Se obliga al receptor a enviar una actualizacion de ventana hasta que


el buffer del receptor esté medio vacío o hasta que haya suficiente
espacio en la ventana para recibir un segmento completo

• Además, el transmisor también puede ayudar al no enviar


segmentos muy pequeños

• Debe acumular suficientes datos en la ventana de tal forma que


estos ocupen un segmento completo o la mitad del buffer del
receptor

37
Protocolo TCP
• Control de Congestionamientos:

• Cuando la carga ofrecida en una red es mayor que la que puede


manejar se genera un congestionamiento

• Hay dos problemas que se deben abordar:


➢ La capacidad de la red
➢ La capacidad del receptor

• El primer paso es detectar la congestión. La mayoría de los


timeouts son debidos a la congestión

38
Protocolo TCP

Control de Flujo y Congestión


39
Protocolo TCP
• Para controlar los congestionamientos en TCP se utiliza el
Algoritmo de Arranque Lento

• Para ello el transmisor trabaja con 02 ventanas:

➢ Una ventana se negocia con el receptor, y su tamaño es


basado en el tamaño del buffer del receptor
➢ La otra ventana es la Ventana de Congestionamiento

• Además se considera un tercer parámetro, el umbral, que al


principio tiene un valor de 64KB

• El transmisor solamente puede mandar el mínimo de las dos


ventanas
40
Protocolo TCP
• Cuando se establece una conexión, el transmisor inicializa la
Ventana de Congestionamiento con el tamaño del segmento
máximo

• Si un segmento máximo enviado es reconocido antes que termine


el temporizador, el transmisor duplica el tamaño de la ventana de
congestionamiento y envía 02 segmentos máximos, así
sucesivamente hasta que se produzca un timeout

• Cuando hay un timeout, el valor del umbral se establece a la


mitad de la ventana de congestionamiento actual, y la ventana de
congestionamiento se restablece a un segmento máximo

• Otra vez se usa arranque lento, para determinar lo que puede


manejar la red creciendo exponencialmente, pero después de
llegar al umbral la ventana crece linealmente hasta el tamaño
41
de
la ventana del receptor
Protocolo TCP

Ventana de Congestionamiento 42

Potrebbero piacerti anche