Está en la página 1de 129

UNIDAD DE TRABAJO 4:

CAPA DE TRANSPORTE
PLANIFICACIÓN Y ADMINISTRACIÓN DE REDES | 1º ASIR
Profesora: María del Pilar Gómez Cárdenas
2023-2024
FUNCIONES DE LA
CAPA DE
TRANSPORTE

Los programas de capa de aplicación


generan datos que deben intercambiarse
entre los hosts de origen y de destino.

La capa de transporte es responsable de


las comunicaciones lógicas entre
aplicaciones que se ejecutan en
diferentes hosts. Esto puede incluir
servicios como el establecimiento de una
sesión temporal entre dos hosts y la
transmisión fiable de información para
una aplicación.
FUNCIONES DE LA CAPA
DE TRANSPORTE
Sus funciones son:
1. Rastreo de comunicación individual
entre aplicaciones en los hosts de
origen y destino
2. Segmentación de datos y manejo de
cada parte
3. Reensamble de segmentos (o
datagramas) en streams (flujos) de
datos de aplicación
4. Identificación de diferentes
aplicaciones
5. Separación de comunicaciones
múltiples
FUNCIONES DE LA
CAPA DE TRANSPORTE
1.- Rastreo de conversaciones
individuales:
• Un host tiene múltiples
aplicaciones que se comunican
a través de la red.
• Cada aplicación se comunica
con una o más aplicaciones en
hosts remotos.
• La capa de transporte mantiene
los flujos de comunicación
múltiple entre estas
aplicaciones.
FUNCIONES DE LA CAPA DE
TRANSPORTE

2.- Segmentación de datos


• Los protocolos de capa de transporte describen cómo
segmentar los datos de la capa de aplicación.
• Cada sección de datos es encapsulada con el
encabezado de la capa de transporte
• La capa de transporte determina la cantidad de datos
que se pueden incluir en una simple PDU.
FUNCIONES DE LA CAPA DE
TRANSPORTE

3.- Reensamblaje de segmentos


• En el host destino se unen las secciones de datos
para reconstruir el mensaje original.
• Para este proceso se utiliza la información contenida
en el encabezado de la capa de transporte.
FUNCIONES DE LA CAPA DE
TRANSPORTE

4.- Identificación de aplicaciones


Las aplicaciones generan datos que se envían desde una aplicación a otra sin
tener en cuenta el tipo de host destino, el tipo de medios sobre los que los
datos deben viajar, el paso tomado por los datos, la congestión en un enlace o
el tamaño de la red.
• Los datos se deben entregar a la aplicación adecuada.
• La aplicación se identifica mediante el número de puerto.
FUNCIONES DECAPA
FUNCIONES DE LA LA CAPA DE TRANSPORTE
DE TRANSPORTE

La capa de transporte es el
enlace entre la capa de
aplicación y la capa de red
(responsable de la transmisión
de la red). Esta capa acepta los
datos de diferentes
conversaciones y las pasa a las
capas inferiores como partes
manejables que se pueden
multiplexar1 de forma eventual
en la red.

1La multiplexación permite que todos los mensajes, o conversaciones puedan ser enviados por un mismo
medio manteniendo su integridad individual de tal forma que puedan ser legibles para el receptor.
Técnicamente: combinación de 2 o más canales de información en un mismo medio de transmisión.
FUNCIONES DE
FUNCIONES DELALACAPA
CAPADEDE
TRANSPORTE
TRANSPORTE
• Los segmentos deben llegar en una secuencia específica
• Una aplicación puede tolerar cierta pérdida de datos
• …

Las capas inferiores no tienen conocimiento de que


existen varias aplicaciones que envían datos en la
red

• los segmentos deben llegar en una


Aplicaciones con secuencia específica
• una aplicación puede tolerar cierta
diferentes requisitos pérdida de datos
• …

Múltiples protocolos en la
capa de transporte
FUNCIONES DE LA CAPA DE TRANSPORTE
5.- Separación de comunicaciones múltiples

En la capa de transporte, cada conjunto


de datos que fluye entre una aplicación
de origen y una aplicación de destino se
conoce como una conversación y se
rastrea por separado. Es
responsabilidad de la capa de transporte
mantener y hacer un seguimiento de
todas estas conversaciones.

Un host puede mantener varias


conversaciones simultáneamente con
diferentes servicios. Sin embargo. los
datos no se mezclan.
FUNCIONES DE LA CAPA DE TRANSPORTE

Dividir datos en pequeñas


partes y enviarlas del origen
al destino permite que
muchas comunicaciones
diferentes se intercalen
(multiplexadas) en la
misma red
FUNCIONES DE LA CAPA DE TRANSPORTE
CONTROL DE LAS CONVERSACIONES
¿Esto no lo hacía
1.- Establecimiento de una conexión (o la capa de
sesión?
sesión temporalmente)
• Permite establecer conversaciones
orientadas a la conexión.
• Asegura que la aplicación está lista para
recibir los datos

• Prepara las aplicaciones para que se


comuniquen entre sí antes de que se
transmitan los datos.

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


CONTROL DE LAS CONVERSACIONES
1.- Establecimiento de una sesión
La capa de sesión realiza un establecimiento a nivel de sesión entre
aplicaciones y la c. de transporte realizan un establecimiento a nivel de
conexión o sesión (cuando le pasa el testigo la c. de sesión) entre
aplicaciones.

Función C. sesión C. transporte

Trabajan en tres fases: establecimiento, A nivel conexión


A nivel sesión
utilización y liberación normalmente

S-RELEASE.request T-DISCONNECT.request
Liberación ordenada, Liberación abrupta que
Terminar la sesión o la conexión puede producir pérdida de
sin errores
datos

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


CONTROL DE LAS CONVERSACIONES 1.- Establecimiento de una sesión

Función C. sesión C. transporte



Mantiene un seguimiento de a quien le corresponde
Administración del diálogo el turno de hablar y de hacerlo cumplir (mediante un No
testigo). Decide cuando inicia la sesión, si la
comunicación será dúplex o semidúplex.

Sincronización. Se utiliza para llevar las Sí


Los usuarios de sesión pueden dividir el texto en
entidades de sesión de vuelta a un estado
páginas, e insertar un punto de sincronización entre No
conocido, en caso de que haya un error o cada una de ellas.
algún desacuerdo

En caso de presentarse un problema, restablece el
Resincronización estado de la sesión a un punto previo de No
sincronización, para desde ahí continuar

Notificación de excepciones (errores Si


Notifica a su corresponsal utilizando la primitiva S-U-
inesperados) No
EXCEPTION-REPORT.request.

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


CONTROL DE LAS CONVERSACIONES

2.- Entrega confiable


• Si la aplicación que inicia la comunicación utiliza
protocolo TCP, se puede garantizar una entrega
confiable. Estudiaremos más adelante el protocolo
TCP

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


CONTROL DE LAS CONVERSACIONES

3.- Reconstrucción de datos ordenada


• La capa de transporte numera y secuencia los
segmentos.
• Así puede asegurar que estos datos se
reensamblen en el orden adecuado.

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


CONTROL DE LAS CONVERSACIONES

4.- Control de flujo


• La capa de transporte puede detectar que los
recursos de los hosts están sobrecargados.
• Para solucionarlo puede solicitar que la aplicación
emisora reduzca la velocidad del flujo de datos
• Con estas medidas se puede evitar:
➢ La pérdida de segmentos en la red
➢ La necesidad de la retransmisión

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


TCP Y UDP PROTOCOLOS TCP/IP
(de la capa de transporte)
Especifican cómo transferir mensajes entre hosts y son responsables de
administrar los requisitos de fiabilidad de una conversación. La capa de
transporte incluye los protocolos TCP y UDP. Las diferentes aplicaciones
tienen diferentes requisitos de confiabilidad de transporte.

Protocolo de Control de Transmisión (TCP)


Protocolo de Datagramas de Usuario (UDP)

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


SOPORTE DE COMUNICACIÓN CONFIABLE
no requieren confiabilidad

requieren confiabilidad
Protocolos que

Protocolos que
CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE
TCP Y UDP

Protocolo de Datagramas de Usuario (UDP)

• Definido en el RFC 768


• Protocolo simple, sin conexión
• Provee la entrega de datos sin utilizar muchos
recursos
• Las porciones de comunicación en UDP se
denominan datagramas

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


TCP Y UDP

Aplicaciones que utilizan UDP

• Sistema de nombres de dominio (DNS)


• Protocolo de asignación de IPs (DHCP)
• Trivial FTP (TFTP)
• Streaming video
• Voz sobre IP (VoIP)

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


TCP Y UDP

Protocolo de Control de Transmisión (TCP)

• Definido en el RFC 793


• Protocolo orientado a la conexión
• Funciones adicionales: entrega confiable y de
control de flujo.
• Las porciones de comunicación en TCP se
denominan segmentos

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


TCP Y UDP

Aplicaciones que utilizan TCP

• Navegadores web (HTTP)


• Correo electrónico entrante (POP3)
• Correo saliente (SMTP, TLS)
• Transferencia de archivos (FTP, FTPES
y SFTP)
• Administrar equipos de forma local y
remota (SSH)

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


TCP Y UDP

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO

Para diferenciar los segmentos y datagramas para


cada aplicación

Identificadores únicos

NÚMERO DE PUERTO

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO

Número de puerto de origen

Aplicación que origina la comunicación


en el host local

Número de puerto de destino

Aplicación de destino que origina la


comunicación en el host local

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO
Asignación de número de puerto depende de si el
mensaje es una solicitud o una respuesta

Procesos del cliente Procesos del servidor

Nº de puerto Nº de puerto
dinámicos estáticos
asignados asignados

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO

Ej. → Servidor web (puerto TCP 80)

Aplicación Solicitud Aplicación


de cliente de servidor

Nª de puerto asignado al demonio de


servicio se ejecuta en el host remoto,
normalmente es un puerto fijo.
(conocido por el software del cliente)

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO

Aplicación Solicitud Aplicación


de cliente de servidor

• Se crea de forma aleatoria


• Números de puerto mayores de 1023
• Sirve de dirección de retorno para la aplicación que
realiza la solicitud

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO

• No puede haber un conflicto con otros puertos en uso


en el sistema
• El número de puerto de la aplicación que realiza la
solicitud se utiliza como número de puerto de destino
en la respuesta que vuelve del servidor

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO
Número de puerto + Dirección IP

SOCKET

Identifica de manera exclusiva un proceso en


particular que se ejecuta en un host específico

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO

Ejemplo:

Una solicitud de página Web HTTP que se envía a un


servidor Web (puerto 80) que se ejecuta en un host con
una dirección IPv4 de Capa 3 de 192.168.1.20
Socket → 192.168.1.20:80

Si el explorador Web que solicita una página Web se


ejecuta en el host 192.168.100.48 y el número de puerto
dinámico que se asignó al explorador es 49152

Socket → 192.168.100.48:49152

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO

La organización responsable de asignar los números de


puerto es la IANA (Internet Assigned Numbers
Authority)
Este organismo es el mismo que asigna las direcciones
IP a los ISPs y la administración de los servidores DNS
raíz.

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO
Tipos de números de puerto

• 0 a 1023: se reservan para servicios y aplicaciones de los


servidores
• 1024 a 49151: se asignan a procesos o aplicaciones del
usuario
• 49152 a 65535: son puertos dinámicos o privados. Se
asignan de forma dinámica a las aplicaciones al iniciarse
la sesión. Se usan en redes P2P.
CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE
DIRECCIONAMIENTO DE PUERTO
PUERTOS TCP

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO

PUERTOS UDP

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO

PUERTOS TCP/UDP

http://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO

http://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO

Comando Netstat
Herramienta para conocer las conexiones TCP activas
que están abiertas y en ejecución en el host de red.
Este comando nos indica:
• el protocolo en uso
• la dirección y el número de puerto locales
• la dirección y el número de puerto ajenos (remota)
• el estado de la conexión

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO

Es una herramienta en línea de comandos.


Para aprovechar al máximo sus capacidades es necesario
ejecutarlo con privilegios de administrador.

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO

Si ejecutamos el comando sin parámetros nos muestra


las conexiones activas en nuestro sistema:

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO

El estado puede ser uno de los siguientes:

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO
Podemos ver la ayuda con el modificador /?

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO

-b: podemos ver las aplicaciones asociadas a los puertos.

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO

-n: nos muestra las direcciones en formato numérico.

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO
-o: muestra los PID de los procesos.

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO
-e: muestra las estadísticas de la red

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO
-r: muestra la tabla de rutas

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO
-s: muestra las estadísticas por protocolos

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO
Ejemplos de usos de netstat.

Conocer los puertos que están a la escucha

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO

Saber las conexiones establecidas de un protocolo en


concreto.

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


DIRECCIONAMIENTO DE PUERTO

Podemos usar el comando tasklist para saber el


ejecutable que corresponde a un proceso.

Para saber más:


Practica con tasklist
https://norfipc.com/redes/netstat-conocer-ver-
conexiones-activas.html
CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE
SEGMENTACIÓN Y REENSAMBLAJE

Dividir los datos de la aplicación en partes asegura que:


• Éstos se transmitan dentro de los límites de los
medios
• Que se puedan multiplexar en el medio

Segmentación UDP  Segmentación TCP

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


SEGMENTACIÓN Y REENSAMBLAJE

Segmentación UDP Segmentación TCP

• Genera menos carga • Permite reensamblar


que TCP. los segmentos en el
mismo orden en el
• Una transferencia de
cual se transmitieron.
datos más rápida
• La aplicación de
destino tiene los
datos en la misma
forma que el emisor
la planeó.

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


SEGMENTACIÓN Y REENSAMBLAJE

CAPA DE TRANSPORTE | FUNCIONES DE LA CAPA DE TRANSPORTE


PROTOCOLO TCP

La diferencia entre el protocolo TCP y el protocolo UDP


es la confiabilidad.

Se consigue de dos maneras:


• Sesiones orientadas a la conexión
• Acuse de recibo

CAPA DE TRANSPORTE | PROTOCOLO TCP


PROTOCOLO TCP

Sesiones orientadas a la conexión.


• Antes de que un host que utiliza TCP envíe datos a
otro host, la capa de transporte inicia un proceso
para crear una conexión con el destino
• Esta conexión permite el rastreo de una sesión, o
stream de comunicación entre los hosts
• Los hosts se preparan para la comunicación en
ambas direcciones

CAPA DE TRANSPORTE | PROTOCOLO TCP


PROTOCOLO TCP

Acuse de recibo al origen.


• Forma la base de la confiabilidad dentro de la
sesión TCP
• Si el origen recibe un acuse de recibo -> Reconoce
que los datos se han entregado con éxito y puede
dejar de rastrearlos
• Si el origen no recibe un acuse de recibo ->
Retransmite esos datos al destino

CAPA DE TRANSPORTE | PROTOCOLO TCP


PROTOCOLO TCP

El uso de TCP genera una carga adicional:


• El tráfico de red generado por los acuses de recibo y
las retransmisiones
• Más los segmentos adicionales intercambiados, al
establecer las sesiones
• Más la sobrecarga en los hosts individuales creada
por la necesidad de mantener un registro de los
segmentos que esperan un acuse de recibo y por el
proceso de retransmisión

CAPA DE TRANSPORTE | PROTOCOLO TCP


PROTOCOLO TCP
TCP incluye campos que garantizan la entrega de los datos de la aplicación.
Estos campos requieren un procesamiento adicional por parte de los hosts
de envío y recepción.

CAPA DE TRANSPORTE | PROTOCOLO TCP


PROCESOS DEL SERVIDOR TCP

¿Qué ocurre en el servidor cuando se establece una


comunicación TCP?
Los procesos del servidor (de aplicación) esperan hasta
que el cliente inicia comunicación con una solicitud de
información u otros servicios
Cada proceso de aplicación tiene asignado un número
de puerto. Puede ser:
• Predeterminado (p.e. FTP en el 21)
• Asignado manualmente por administrador (FTP en 2121)

CAPA DE TRANSPORTE | PROTOCOLO TCP


PROCESOS DEL SERVIDOR TCP

Un servidor individual no puede tener dos servicios


asignados al mismo número de puerto dentro de los
mismos servicios de la capa de transporte

Ejemplo

Aplicación de servidor Web


Puerto TCP 8080
Aplicación de transferencia
de archivos

CAPA DE TRANSPORTE | PROTOCOLO TCP


PROCESOS DEL SERVIDOR TCP

Cuando a una aplicación del servidor se le asigna a un


puerto específico se dice que hay un puerto abierto en
ese servidor.

Un puerto abierto significa


que la capa de transporte
acepta y procesa segmentos
direccionados a ese puerto

CAPA DE TRANSPORTE | PROTOCOLO TCP


PROCESOS DEL SERVIDOR TCP

Lo habitual es que en un servidor haya varios puertos


abiertos simultáneamente. Uno para cada aplicación de
servidor activa.
Se puede mejorar la seguridad del servidor restringiendo
el acceso al servidor únicamente a aquellos puertos
asociados con los servicios y aplicaciones que deberían
estar accesibles para los solicitantes autorizados

CAPA DE TRANSPORTE | PROTOCOLO TCP


PROCESOS DEL SERVIDOR TCP. Actividad
Necesitas:
1 máquinas virtuales Linux
Wireshark
Abre tres terminales cada una será para:
1. Establecer sesión de Servidor
2. Establecer sesión de Cliente
3. Ver lo que se escucha por el puerto 3000
Para cada ventana ejecuta los siguientes comandos
1. nc –l 3000
2. Nc 127.0.0.1 3000
3. netstat –anp | grep 3000
Empieza escribiendo una frase en el cliente
Ejecuta nuevamente la orden 1. Observa lo que sucede y saca captura
Contesta por la ventana del servidor
Ejecuta nuevamente la orden 1. Observa lo que sucede y saca captura
Repite nuevamente pasos a, b y c
Analiza lo que ha pasado.
Investiga el comando netstat en Linux y sus parámetros.
Realiza una conclusión de la practica
PROCESOS DEL SERVIDOR TCP
Asignación típica de puertos de origen y destino en operaciones de
cliente o servidor TCP

1.- Solicitar puertos de destino

CAPA DE TRANSPORTE | PROTOCOLO TCP


PROCESOS DEL SERVIDOR TCP

2.- Solicitar puertos de origen

CAPA DE TRANSPORTE | PROTOCOLO TCP


PROCESOS DEL SERVIDOR TCP

3.- Respuesta de puertos de destino

CAPA DE TRANSPORTE | PROTOCOLO TCP


PROCESOS DEL SERVIDOR TCP

4.- Respuesta de puertos de origen

CAPA DE TRANSPORTE | PROTOCOLO TCP


Víctor J. González

ESTABLECIMIENTO Y FINALIZACIÓN DE LA CONEXIÓN

Establecimiento de la conexión
Para establecer una conexión entre el origen y el
destino se siguen una serie de pasos:
1. Se establece una conexión
2. Se intercambian los datos
3. Se completa la comunicación
4. Se cierran las sesiones
5. La conexión finaliza

CAPA DE TRANSPORTE | PROTOCOLO TCP


Cada aplicación o servicio (email, youtube, skype, spotify...) que abrimos
en Internet, se almacena en nuestro ordenador en un buffer.

Al establecerse la conexión, la CPU genera un TCB (transmission Control


Block) por cada aplicación o servicio, que contiene información relativa a
esa conexión (todos los datos de conexión que necesita TCP para la
conexión, se almacenan aquí):
Cuando el cliente inicia solicitud de conexión (Active open) se comunica
con la capa de transporte para comunicarselo, entonces se crea el TCB
y acto seguido el TCP envia el primer segmento hacia el servidor para
intentar conectarse con él.
El servidor ya tiene creados varios TCB (TCBs no especificados) para
cada tipo de proceso antes de que se inicie cualquier conexión
(operación Passive Open) y se los va comunicando a la capa de
transporte para que ésta tenga conocimiento el puerto por el que
escucha a cada proceso.
Cuando llega el primer mensaje de establecimiento conexión
desde un cliente, el TCB correspondiente a la aplicación
solicitada, es rellenado con los datos del segmento de origen
para dejar especificado a quién le pertenece cada TCB.

¿Porqué el servidor crea los TCB antes de la conexión? Porque


debe estar en modo listening para responder rápidas a las
peticiones de los clientes.
Cuando se solicita el establecimiento de conexión en el header,
el cliente envia el primer segmento, llamado segmento SYN, y en
el header se activa el campo SYN (se pone a 1).
Cuando responde el servidor para establecer la conexión,envia
un mensaje ACK, para notificar que recibió el segmento, y se
activa en el header el campo ACK (se pone a 1).
Establecimiento y finalización de la comunicación
3-way handshake
ESTABLECIMIENTO Y FINALIZACIÓN DE LA CONEXIÓN

1 El cliente de origen envía un segmento que contiene un


valor de secuencia inicial, el cual sirve como solicitud para
que el servidor comience una sesión de comunicación

SYN → sincronizar números de


secuencia

CAPA DE TRANSPORTE | PROTOCOLO TCP


ESTABLECIMIENTO Y FINALIZACIÓN DE LA CONEXIÓN

2 El servidor responde con un segmento que contiene:


• Un valor de reconocimiento igual al valor de
secuencia recibido más 1
• Su propio valor de secuencia de sincronización.

El valor es uno mayor que el número de secuencia porque


el ACK es siempre el próximo Byte u Octeto esperado. Este
valor de reconocimiento permite al cliente unir la
respuesta al segmento original que fue enviado al servidor

CAPA DE TRANSPORTE | PROTOCOLO TCP


ESTABLECIMIENTO Y FINALIZACIÓN DE LA CONEXIÓN

ACK → campo de
reconocimiento
importante

CAPA DE TRANSPORTE | PROTOCOLO TCP


ESTABLECIMIENTO Y FINALIZACIÓN DE LA CONEXIÓN

3 El cliente que inicia la conexión responde con un valor de


reconocimiento igual al valor de secuencia que recibió
más uno.
Esto completa el proceso de establecimiento de la
conexión

CAPA DE TRANSPORTE | PROTOCOLO TCP


ESTABLECIMIENTO Y FINALIZACIÓN DE LA CONEXIÓN

CAPA DE TRANSPORTE | PROTOCOLO TCP


ESTABLECIMIENTO Y FINALIZACIÓN DE LA CONEXIÓN

CAPA DE TRANSPORTE | PROTOCOLO TCP


Víctor J. González

ESTABLECIMIENTO Y FINALIZACIÓN DE LA CONEXIÓN

Finalización de la conexión
Para finalizar la conexión se utiliza un enlace de dos
vías:
• Un segmento FIN
• Un segmento ACK

Como el proceso de finalización lo pueden iniciar dos


hosts cualquiera se requieren cuatro intercambios para
finalizar ambas sesiones

CAPA DE TRANSPORTE | PROTOCOLO TCP


Víctor J. González

ESTABLECIMIENTO Y FINALIZACIÓN DE LA CONEXIÓN

1 Cuando el cliente ni tiene más datos para enviar en el


stream, envía un segmento con el señalador FIN
establecido

FIN → no hay más


datos del emisor

CAPA DE TRANSPORTE | PROTOCOLO TCP


Víctor J. González

ESTABLECIMIENTO Y FINALIZACIÓN DE LA CONEXIÓN

2 El servidor envía un ACK para acusar de recibo el FIN para


terminar la sesión de cliente a servidor

CAPA DE TRANSPORTE | PROTOCOLO TCP


Víctor J. González

ESTABLECIMIENTO Y FINALIZACIÓN DE LA CONEXIÓN

3 El servidor envía un FIN al cliente para terminar la sesión


de servidor a cliente

CAPA DE TRANSPORTE | PROTOCOLO TCP


Víctor J. González

ESTABLECIMIENTO Y FINALIZACIÓN DE LA CONEXIÓN

3 El cliente responde con un ACK para dar acuse de recibo


del FIN desde el servidor

CAPA DE TRANSPORTE | PROTOCOLO TCP


Víctor J. González

ESTABLECIMIENTO Y FINALIZACIÓN DE LA CONEXIÓN

CAPA DE TRANSPORTE | PROTOCOLO TCP


Víctor J. González

ADMINISTRACIÓN DE SESIONES TCP

Cuando los servicios envían datos mediante el TCP Los


segmentos pueden llegar a su destino desordenados

Para que el receptor comprenda el mensaje original los


datos en estos segmentos se reensamblan en el orden
original.

El reensamblado se consigue asignando números de


secuencia en el encabezado de cada paquete.

CAPA DE TRANSPORTE | ADMINISTRACIÓN DE SESIONES TCP


Víctor J. González

ADMINISTRACIÓN DE SESIONES TCP

El proceso es:
• Los segmentos se almacenan en un buffer de
recepción a medida que llegan.
• Si los segmentos llegan en orden se ensamblan y
se envían a la capa de aplicación.
• Si llegan segmentos no contiguos se mantienen en
el buffer hasta que lleguen los segmentos que les
preceden.

CAPA DE TRANSPORTE | ADMINISTRACIÓN DE SESIONES TCP


Víctor J. González

ADMINISTRACIÓN DE SESIONES TCP

CAPA DE TRANSPORTE | ADMINISTRACIÓN DE SESIONES TCP


https://www.youtube.com/watch?v=nxtrJEJAIA4
Víctor J. González

ACUSE DE RECIBO CON USO DE VENTANAS

Otra característica de TCP es que dispone de acuse de


recibo.
Para asegurar que cada segmento llegue a su destino los
servicios TCP en el host de destino envían a la aplicación
de origen un acuse de recibo de los datos recibidos.
Con este acuse se le informa al origen que el destino ha
recibido todos los bytes de este stream de datos

CAPA DE TRANSPORTE | ADMINISTRACIÓN DE SESIONES TCP


https://www.youtube.com/watch?v=084puXRb8nc
Víctor J. González

ACUSE DE RECIBO CON USO DE VENTANAS

El host emisor envía un segmento que utiliza un número


de secuencia que es igual al número de acuse de recibo
CAPA DE TRANSPORTE | ADMINISTRACIÓN DE SESIONES TCP
Víctor J. González

ACUSE DE RECIBO CON USO DE VENTANAS

¿Qué sucedería si el host emisor tuviera que esperar el


acuse de recibo por la recepción de cada uno de los 10
bytes?

La red estaría demasiado sobrecargada

Para reducir la Los segmentos de datos múltiples


sobrecarga de pueden enviarse previamente y ser
estos acuses reconocidos con un mensaje TCP
de recibo simple en la dirección opuesta

CAPA DE TRANSPORTE | ADMINISTRACIÓN DE SESIONES TCP


Víctor J. González

ACUSE DE RECIBO CON USO DE VENTANAS

Ejemplo

Se comienza con un número de secuencia 2000


Se reciben 10 segmentos de 1000 bytes cada uno
Se devolverá al origen un número de acuse de recibo
igual a 12000 (2000 + 10*1000)

CAPA DE TRANSPORTE | ADMINISTRACIÓN DE SESIONES TCP


Víctor J. González

ACUSE DE RECIBO CON USO DE VENTANAS

TAMAÑO DE LA VENTANA

Cantidad de datos que un origen puede transmitir antes


de que se deba recibir un acuse de recibo

El tamaño de ventana permite la administración de datos


perdidos y el control del flujo.

CAPA DE TRANSPORTE | ADMINISTRACIÓN DE SESIONES TCP


Víctor J. González

ACUSE DE RECIBO CON USO DE VENTANAS

CAPA DE TRANSPORTE | ADMINISTRACIÓN DE SESIONES TCP


Víctor J. González

RETRANSMISIÓN TCP

La retransmisión TCP se utiliza para gestionar pérdidas


ocasionales de segmentos, es decir, cuando no recibe un
acuse de recibo de un determinado segmento.

Cuando el TCP en el host de origen no recibe un acuse


de recibo espera un tiempo y vuelve a transmitir los
datos desde que recibió en último acuse de recibo.

CAPA DE TRANSPORTE | ADMINISTRACIÓN DE SESIONES TCP


Víctor J. González

RETRANSMISIÓN TCP

Retransmisión automática sin ventana


CAPA DE TRANSPORTE | ADMINISTRACIÓN DE SESIONES TCP
Víctor J. González

RETRANSMISIÓN TCP

TCP generalmente sólo da acuse de recibo de datos


para bytes de secuencia continuos. Esto quiere decir que
si se pierde un segmento deberá reenviar todos los
segmentos posteriores.
Ejemplo

Se recibieron los segmentos con números de secuencia


de 2000 a 3000 y de 4000 a 5000.
El número de acuse de recibo sería 3001.
Esto es porque hay segmentos con números de
secuencia del 3001 al 4000 que no se han recibido

CAPA DE TRANSPORTE | ADMINISTRACIÓN DE SESIONES TCP


Víctor J. González

RETRANSMISIÓN TCP

CAPA DE TRANSPORTE | ADMINISTRACIÓN DE SESIONES TCP


Víctor J. González

CONTROL DE FLUJO

El control de flujo ajusta la tasa efectiva de flujo de


datos entre los dos servicios de una sesión

Cuando se le informa al origen que se recibió una


cantidad específica de datos en los segmentos puede
seguir enviando más datos para esta sesión.

CAPA DE TRANSPORTE | ADMINISTRACIÓN DE SESIONES TCP


Víctor J. González

CONTROL DE FLUJO

TCP intenta gestionar la tasa de transmisión de manera


que todos los datos se reciban y se reduzcan las
retransmisiones

Se gestiona mediante el tamaño de la ventana y los


acuses de recibo

CAPA DE TRANSPORTE | ADMINISTRACIÓN DE SESIONES TCP


Víctor J. González

CONTROL DE FLUJO

CAPA DE TRANSPORTE | ADMINISTRACIÓN DE SESIONES TCP


Víctor J. González

CONTROL DE FLUJO

Tamaño de la ventana dinámico


CAPA DE TRANSPORTE | ADMINISTRACIÓN DE SESIONES TCP
Víctor J. González

CONTROL DE FLUJO

Si el destino necesita disminuir la velocidad de


comunicación debido a su memoria de búfer limitada,
puede enviar un valor más pequeño del tamaño de la
ventana al origen como parte del acuse de recibo

Después de períodos de transmisión sin pérdidas de


datos o recursos limitados, el receptor comenzará a
aumentar el tamaño de la ventana

CAPA DE TRANSPORTE | ADMINISTRACIÓN DE SESIONES TCP


Víctor J. González

CONTROL DE FLUJO

CAPA DE TRANSPORTE | ADMINISTRACIÓN DE SESIONES TCP


Víctor J. González

CABECERA TCP

Cabecera TCP

CAPA DE TRANSPORTE | ADMINISTRACIÓN DE SESIONES TCP


Víctor J. González

PROTOCOLO UDP

UDP (User Datagram Protocol)

Protocolo simple que provee las funciones básicas de la


capa de transporte
• No está orientado a la conexión
• No proporciona mecanismos sofisticados de
retransmisión, secuenciamiento y control de flujo.
• Tiene mucha menor sobrecarga que TCP

CAPA DE TRANSPORTE | PROTOCOLO UDP


Víctor J. González

PROTOCOLO UDP

Protocolos de la capa de aplicación que utilizan UDP


• Sistema de nombres de dominio (DNS)
• Protocolo simple de administración de red (SNMP,
Simple Network Management Protocol)
• Protocolo de configuración dinámica de host (DHCP)
• Protocolo de información de enrutamiento (RIP)
• Protocolo de transferencia de archivos trivial (TFTP)
• Juegos en línea

CAPA DE TRANSPORTE | PROTOCOLO UDP


Víctor J. González

PROTOCOLO UDP

+ pérdidas de datos
UDP
- Demoras (TCP detecta la pérdida de datos y los retransmite)

La baja sobrecarga del UDP es deseada por muchas


aplicaciones

CAPA DE TRANSPORTE | PROTOCOLO UDP


Víctor J. González

PROTOCOLO UDP

Ejemplo → Juegos en
línea
VoIP

Encabezado de datagrama
pequeño sin tráfico de
administración de red

CAPA DE TRANSPORTE | PROTOCOLO UDP


Víctor J. González

PROTOCOLO UDP

UDP está basado en transacciones (no conexión).

Cuando una aplicación tiene datos que enviar, sólo los


envía

Según la aplicación puede enviar:


• Pequeñas cantidades de datos que
pueden ajustarse en un segmento o
datagrama
• Cantidades más grandes que deben
dividirse en varios segmentos
CAPA DE TRANSPORTE | PROTOCOLO UDP
Víctor J. González

PROTOCOLO UDP

UDP simplemente reensambla los datos en el orden en


que se recibieron y los envía a la aplicación

Si la secuencia de los datos es importante para la


aplicación, la misma deberá identificar la secuencia
adecuada y determinar cómo procesarlos

CAPA DE TRANSPORTE | PROTOCOLO UDP


Víctor J. González

PROTOCOLO UDP

CAPA DE TRANSPORTE | PROTOCOLO UDP


Víctor J. González

PROTOCOLO UDP
Al igual que TCP utiliza números de puerto bien
conocidos o registrados en el servidor.

CAPA DE TRANSPORTE | PROTOCOLO UDP


Víctor J. González

CABECERA UDP

Cabecera UDP

CAPA DE TRANSPORTE | PROTOCOLO UDP


BIBLIOGRAFÍA

Sánchez, V. (09/2012. Funciones protocolos de aplicación. Vicente Sánchez


Patón. https://vicentesanchezsri.files.wordpress.com/2012/09/protocolos-
de-transporte-y-aplicacic3b3n.pdf
De León, E. (18/10/2017). ¿Qué es la Multiplexación?. Eliezer De León.
https://www.youtube.com/watch?v=1B4SiOewm5Q

También podría gustarte