Capa de transporte
En redes informáticas, la capa de transporte, nivel de transporte o transport layer es una división conceptual de métodos en la arquitectura en capas de protocolos en la pila de red en el conjunto de protocolos de Internet y el modelo OSI. Los protocolos de esta capa proporcionan servicios de comunicación de extremo a extremo para las aplicaciones. Proporciona servicios como comunicación orientada a la conexión, confiabilidad, control de flujo y multiplexación.
Los detalles de implementación y semántica de la capa de transporte del conjunto de protocolos de Internet, que es la base de Internet, y el modelo OSI de red general son diferentes. Todos los protocolos que se usan hoy en día en esta capa para Internet se originaron en el desarrollo de TCP/IP. En el modelo OSI, la capa de transporte a menudo se denomina Capa 4 o L4, mientras que las capas numeradas no se utilizan en TCP/IP.
El protocolo de transporte más conocido del conjunto de protocolos de Internet es el Protocolo de control de transmisión (TCP). Se usa para transmisiones orientadas a conexión, mientras que el Protocolo de datagramas de usuario (UDP) sin conexión se usa para transmisiones de mensajes más simples. TCP es el protocolo más complejo, debido a su diseño con estado que incorpora transmisión confiable y servicios de flujo de datos. Juntos, TCP y UDP comprenden esencialmente todo el tráfico en Internet y son los únicos protocolos implementados en todos los principales sistemas operativos. Los protocolos adicionales de la capa de transporte que se han definido e implementado incluyen el Protocolo de control de congestión de datagramas (DCCP) y el Protocolo de transmisión de control de flujo (SCTP).
Servicios
Los servicios de la capa de transporte se transmiten a una aplicación a través de una interfaz de programación a los protocolos de la capa de transporte. Los servicios pueden incluir las siguientes características:
- Comunicación orientada a la conexión: normalmente es más fácil para una aplicación interpretar una conexión como un flujo de datos en lugar de tener que lidiar con los modelos sin conexión subyacentes, como el modelo de datagrama del Protocolo de datagramas de usuario (UDP) y de Internet. Protocolo (IP).
- Entrega en el mismo orden: la capa de red generalmente no garantiza que los paquetes de datos lleguen en el mismo orden en que se enviaron, pero a menudo esta es una característica deseable. Esto generalmente se hace mediante el uso de la numeración de segmentos, y el receptor los pasa a la aplicación en orden. Esto puede causar el bloqueo de la cabeza de línea.
- Confiabilidad: los paquetes pueden perderse durante el transporte debido a errores y congestión de la red. Por medio de un código de detección de errores, como una suma de verificación, el protocolo de transporte puede verificar que los datos no estén dañados y verificar la recepción correcta enviando un mensaje ACK o NACK al remitente. Se pueden utilizar esquemas de solicitud de repetición automática para retransmitir datos perdidos o corruptos.
- Control de flujo: la tasa de transmisión de datos entre dos nodos a veces debe administrarse para evitar que un remitente rápido transmita más datos de los que puede admitir el búfer de datos de recepción, lo que provoca una saturación del búfer. Esto también se puede utilizar para mejorar la eficiencia mediante la reducción del agotamiento del búfer.
- Prevención de la congestión: el control de la congestión puede controlar la entrada de tráfico en una red de telecomunicaciones, a fin de evitar el colapso congestivo al intentar evitar la sobresuscripción de cualquiera de las capacidades de procesamiento o enlace de los nodos y redes intermedios y tomar medidas para reducir los recursos, como reducir la tasa de enviar paquetes. Por ejemplo, las solicitudes de repetición automática pueden mantener la red en un estado congestionado; esta situación se puede evitar agregando prevención de congestión al control de flujo, incluido el inicio lento. Esto mantiene el consumo de ancho de banda en un nivel bajo al comienzo de la transmisión o después de la retransmisión del paquete.
- Multiplexación: los puertos pueden proporcionar múltiples puntos finales en un solo nodo. Por ejemplo, el nombre en una dirección postal es una especie de multiplexación y distingue entre diferentes destinatarios de la misma ubicación. Cada una de las aplicaciones informáticas escuchará la información en sus propios puertos, lo que permite el uso de más de un servicio de red al mismo tiempo. Es parte de la capa de transporte en el modelo TCP/IP, pero de la capa de sesión en el modelo OSI.
Análisis
La capa de transporte es responsable de entregar datos al proceso de aplicación apropiado en las computadoras host. Esto implica la multiplexación estadística de datos de diferentes procesos de aplicación, es decir, la formación de segmentos de datos y la adición de números de puerto de origen y destino en el encabezado de cada segmento de datos de la capa de transporte. Junto con la dirección IP de origen y de destino, los números de puerto constituyen un conector de red, es decir, una dirección de identificación de la comunicación de proceso a proceso. En el modelo OSI, esta función es compatible con la capa de sesión.
Algunos protocolos de la capa de transporte, por ejemplo, TCP, pero no UDP, admiten circuitos virtuales, es decir, proporcionan comunicación orientada a conexión sobre una red de datagramas subyacente orientada a paquetes. Se entrega un flujo de bytes mientras se oculta la comunicación en modo paquete para los procesos de la aplicación. Esto implica el establecimiento de la conexión, la división del flujo de datos en paquetes llamados segmentos, la numeración de segmentos y la reordenación de datos desordenados.
Por último, algunos protocolos de la capa de transporte, por ejemplo TCP, pero no UDP, proporcionan una comunicación fiable de extremo a extremo, es decir, recuperación de errores mediante el código de detección de errores y el protocolo de solicitud de repetición automática (ARQ). El protocolo ARQ también proporciona control de flujo, que puede combinarse con prevención de congestión.
UDP es un protocolo muy simple y no proporciona circuitos virtuales, ni comunicación confiable, delegando estas funciones al programa de aplicación. Los paquetes UDP se denominan datagramas, en lugar de segmentos.
TCP se utiliza para muchos protocolos, incluida la navegación web HTTP y la transferencia de correo electrónico. UDP puede usarse para multidifusión y transmisión, ya que las retransmisiones no son posibles a una gran cantidad de hosts. Normalmente, UDP proporciona un mayor rendimiento y una latencia más corta y, por lo tanto, a menudo se utiliza para la comunicación multimedia en tiempo real donde ocasionalmente se puede aceptar la pérdida de paquetes, por ejemplo, IP-TV y telefonía IP, y para juegos de computadora en línea.
Muchas redes no basadas en IP, como X.25, Frame Relay y ATM, implementan la comunicación orientada a la conexión en la capa de enlace de datos o red en lugar de la capa de transporte. En X.25, en los módems de red telefónica y en los sistemas de comunicación inalámbricos, la comunicación confiable de nodo a nodo se implementa en las capas de protocolo más bajas.
La especificación del protocolo de capa de transporte en modo de conexión OSI define cinco clases de protocolos de transporte: TP0, que proporciona la menor recuperación de errores, a TP4, que está diseñado para redes menos confiables.
Protocolos
Esta lista muestra algunos protocolos que se colocan comúnmente en las capas de transporte del conjunto de protocolos de Internet, el conjunto de protocolos OSI, IPX/SPX de NetWare, AppleTalk y Fibre Channel.
- ATP, Protocolo de transacciones AppleTalk
- CUDP, UDP cíclico
- DCCP, protocolo de control de congestión de datagramas
- FCP, protocolo de canal de fibra
- IL, Protocolo IL
- MPTCP, TCP de rutas múltiples
- NORM, multidifusión confiable orientada a NACK
- RDP, protocolo de datos confiable
- RUDP, protocolo de datagramas de usuario confiable
- SCTP, protocolo de transmisión de control de flujo
- SPX, intercambio de paquetes secuenciados
- SST, transporte de flujo estructurado
- TCP, Protocolo de control de transmisión
- UDP, protocolo de datagramas de usuario
- UDP-Lite
- µTP, protocolo de microtransporte
Comparación de protocolos de capa de transporte de Internet
Rasgo | UDP | UDP-Lite | TCP | TCP de rutas múltiples | SCTP | DCCP | RUDP |
---|---|---|---|---|---|---|---|
Tamaño del encabezado del paquete | 8 bytes | 8 bytes | 20–60 bytes | 50–90 bytes | 12 bytes | 12 o 16 bytes | 14+ bytes |
Sobrecarga típica de paquetes de datos | 8 bytes | 8 bytes | 20 bytes | ?? bytes | 44–48+ bytes | 12 o 16 bytes | 14 bytes |
Entidad de paquete de la capa de transporte | datagrama | datagrama | Segmento | Segmento | datagrama | datagrama | datagrama |
Orientado a la conexión | No | No | Sí | Sí | Sí | Sí | Sí |
Transporte confiable | No | No | Sí | Sí | Sí | No | Sí |
Transporte poco fiable | Sí | Sí | No | No | Sí | Sí | Sí |
Conservar el límite del mensaje | Sí | Sí | No | No | Sí | Sí | Sí |
Entrega | desordenado | desordenado | Ordenado | Ordenado | Ordenado / No ordenado | desordenado | desordenado |
Suma de comprobación de datos | Opcional | Sí | Sí | Sí | Sí | Sí | Opcional |
Tamaño de la suma de comprobación | 16 bits | 16 bits | 16 bits | 16 bits | 32 bits | 16 bits | 16 bits |
Suma de comprobación parcial | No | Sí | No | No | No | Sí | No |
Ruta MTU | No | No | Sí | Sí | Sí | Sí | ? |
Control de flujo | No | No | Sí | Sí | Sí | No | Sí |
Control de congestión | No | No | Sí | Sí | Sí | Sí | ? |
Notificación de congestión explícita | No | No | Sí | Sí | Sí | Sí | ? |
Múltiples flujos | No | No | No | No | Sí | No | No |
Multi-homing | No | No | No | Sí | Sí | No | No |
Empaquetado / Nagle | No | No | Sí | Sí | Sí | No | ? |
- ^ RUDP no está oficialmente estandarizado. No ha habido novedades relacionadas con las normas desde 1999.
- ^ Excluyendo encabezados de fragmentos de datos y fragmentos generales. Sin fragmentos incrustados, un paquete SCTP es esencialmente inútil.
- ^ Contados de la siguiente manera: 12 bytes de encabezado SCTP + 16 bytes de encabezado de fragmento de DATOS o 20 bytes de encabezado de fragmento de I-DATA + 16+ bytes de fragmento SACK. Fragmentos adicionales que no son de datos (por ejemplo, AUTH) y/o encabezados para fragmentos de datos adicionales, que podrían aumentar fácilmente la sobrecarga con 50 bytes o más, sin contar.
Comparación de protocolos de transporte OSI
ISO/IEC 8073/UIT-T Recomendación X.224, "Tecnología de la información - Interconexión de sistemas abiertos - Protocolo para proporcionar el servicio de transporte en modo conexión", define cinco clases de protocolos de transporte en modo conexión designados de clase 0 (TP0) a clase 4 (TP4). La clase 0 no contiene recuperación de errores y fue diseñada para usarse en capas de red que brindan conexiones sin errores. La clase 4 es la más cercana a TCP, aunque TCP contiene funciones, como el cierre correcto, que OSI asigna a la capa de sesión. Todas las clases de protocolo de modo de conexión OSI proporcionan datos acelerados y preservación de los límites de registro. Las características detalladas de las clases se muestran en la siguiente tabla:
Servicio | TP0 | TP1 | TP2 | TP3 | TP4 |
---|---|---|---|---|---|
Red orientada a la conexión | Sí | Sí | Sí | Sí | Sí |
Red sin conexión | No | No | No | No | Sí |
Concatenación y separación | No | Sí | Sí | Sí | Sí |
Segmentación y reensamblaje | Sí | Sí | Sí | Sí | Sí |
Error de recuperación | No | Sí | No | Sí | Sí |
Reiniciar la conexión (si no se reconoce un número excesivo de PDU) | No | Sí | No | Sí | No |
Multiplexación y demultiplexación sobre un único circuito virtual | No | No | Sí | Sí | Sí |
Control de flujo explícito | No | No | Sí | Sí | Sí |
Retransmisión en tiempo de espera | No | No | No | No | Sí |
Servicio de Transporte Confiable | No | Sí | No | Sí | Sí |
También existe un protocolo de transporte sin conexión, especificado por la recomendación ISO/IEC 8602/ITU-T X.234.
Contenido relacionado
Telnet
TCP
IPv4