Esta es la técnica más común utilizada para admitir comunicaciones entre dos computadoras a través de una red. La capa de transporte es responsable de establecer un circuito virtual hacia el host de destino y garantiza que los datos se entreguen de manera confiable y en orden. El protocolo de transporte típico utilizado para establecer circuitos virtuales es TCP (Protocolo de control de transmisión). En TCP, el remitente transmite paquetes de datos al receptor, cada uno de los cuales contiene un número de secuencia. El receptor reconoce cada paquete que recibe y el remitente retransmite cualquier paquete del que no recibe un acuse de recibo. Además, el receptor debe almacenar en un buffer los paquetes entrantes si llegan más rápido de lo que la aplicación receptora puede procesarlos. La capa de transporte también proporciona control de flujo, lo que garantiza que el remitente no envíe datos más rápido de lo que el receptor puede procesarlos. El control de flujo se puede implementar mediante varios mecanismos, como el protocolo de ventana deslizante de TCP. Cada uno de los dos dispositivos a lo largo de un circuito virtual establece y gestiona una conexión de circuito virtual de forma independiente.
En la figura siguiente se muestra un ejemplo de dos procesos de aplicación que utilizan conexiones de circuitos virtuales para la comunicación, junto con los encabezados de protocolo correspondientes de cada capa en los dos dispositivos, tal como podrían aparecer para dos unidades de datos específicas que se intercambian (las llamamos paquete 1 y paquete 2). Los circuitos virtuales de la capa de transporte se admiten mediante el servicio de circuitos virtuales de la capa de red proporcionados por los dispositivos de interconexión de redes de nivel inferior. La capa de red utiliza mecanismos de enrutamiento para reenviar paquetes de datos desde el dispositivo emisor hacia el dispositivo receptor a través de las redes. El remitente (host A1 en la figura) tiene un circuito virtual hacia el receptor (host A3 en la figura) con un número de 2. Este circuito podría implicar una secuencia de subredes y conexiones de subred, posiblemente con varios dispositivos intermedios (B, C y D). Los mecanismos de enrutamiento de estos dispositivos les permiten reenviar datos correctamente en el contexto de un circuito virtual determinado.
Relación entre capas con puntos de acceso al servicio
Cada capa por encima de la capa física en una red debe obtener algún servicio de la capa inferior. Las entidades en una capa utilizan uno o más puntos de acceso a servicios (SAP) de entidades en la capa inferior para acceder a los servicios de esta(s) capa(s) inferior(es).
Servicios —En todas las capas de protocolo, una entidad de protocolo de capa superior utilizará uno o más puntos de acceso a servicios (SAP) de entidades de protocolo pares en la capa directamente debajo de ella para obtener servicios específicos. El uso de SAP permite los servicios proporcionados en una capa a múltiples instancias de protocolo implementadas en las capas superiores.
Los servicios generalmente se solicitan o brindan mediante primitivas:un tipo especial de mensaje intercambiado entre entidades en diferentes capas de protocolo. En el modelo OSI, las primitivas tienen diferentes nombres que reflejan la función que realizan, como por ejemplo:
- pedido
- indicación
- respuesta
- confirmar
Ejemplo de SAP:TCP e IP
Los servicios proporcionados por una instancia de protocolo de capa N se implementan mediante unidades de datos de protocolo (PDU) entregadas por esa instancia de protocolo a cualquiera de sus instancias de protocolo pares dentro de la misma capa; es decir, se entregan a sus SAP pares. De manera similar, las entidades de protocolo de capa 4 utilizan los SAP de capa 3 para intercambiar PDU de capa 4 (que normalmente contienen paquetes de datos de usuario o de aplicación). Cada interfaz de protocolo puede tener sólo un número limitado de tipos primitivos de servicio y un número muy limitado de SAP. Un ejemplo es la capa de transporte SAP de la interfaz del protocolo IP, que contiene solo dos primitivas de SAP (CONNECT y DATA) y solo un SAP asociado. Como resultado, todos los paquetes que contienen PDU que fluyen entre entidades de capa 3 y 4 deben utilizar este SAP único.