El nivel de transporte
El quinto nivel utiliza los servicios
del nivel de red para proveer un servicio eficiente
y confiable a sus clientes, que normalmente son los
procesos en el nivel de aplicación. El hardware
y software dentro del nivel de transporte se llaman
la entidad de transporte. Puede estar en el
corazón del sistema operativo, en un programa,
en una tarjeta, etc. Sus servicios son muy semejantes
a los del nivel de red. Las direcciones y el control
de flujo son semejantes también. Por lo tanto,
¿por qué tenemos un nivel de transporte?
¿Por qué no solamente el nivel de red?
La razón es que el nivel de red es una parte
de la subred y los usuarios no tienen ningún
control sobre ella. El nivel de transporte permite que
los usuarios puedan mejorar el servicio del nivel de
red (que puede perder paquetes, puede tener routers
que no funcionan a veces, etc.). El nivel de transporte
permite que tengamos un servicio más confiable
que el nivel de red. También, las funciones del
nivel de transporte pueden ser independiente de las
funciones del nivel de red. Las aplicaciones pueden
usar estas funciones para funcionar en cualquier tipo
de red.
Protocolos
de transporte
Los protocolos de transporte se parecen
los protocolos de enlace. Ambos manejan el control de
errores, el control de flujo, la secuencia de paquetes,
etc. Pero hay diferencias:
En el nivel de transporte, se necesita
una manera para especificar la dirección del
destino. En el nivel de enlace está solamente
el enlace.
En el nivel de enlace es fácil
establecer la conexión; el host en el otro extremo
del enlace está siempre allí. En el nivel
de transporte este proceso es mucho más difícil.
Establecimiento
de una conexión
Desconexión
La desconexión asimétrica
puede perder datos. La desconexión simétrica
permite que cada lado pueda liberar una dirección
de la conexión a la vez.
Control de flujo
Se debe controlar que el número
de paquetes enviados a un destino para que no colapse
a este.
Multiplexación
A veces el nivel de transporte tiene
que multiplexar las conexiones. Si se desea una transmisión
de datos muy rápida se abrirán varias
conexiones y los datos se dividirán para hacerlos
pasar por estas.
Si solo se tiene una conexión
pero se quieren pasar varios datos se deberá
multiplexar el canal. Por tiempos transmitirá
una conexión u otra.
Recuperación de caídas
Si una parte de la subred se cae
durante una conexión, el nivel de transporte
puede establecer una conexión nueva y recuperar
de la situación.
El encabezamiento
de TCP
TCP (Protocolo de control de transmisión)
es el método usado por el protocolo IP (Internet
protocol) para enviar datos a través de la red.
Mientras IP cuida del manejo del envío de los
datos, TCP cuida el trato individual de cada uno de
ellos (llamados comúnmente "paquetes")
para el correcto enrutamiento de los mismos a través
de Internet.
El encabezamiento de TCP para la
transmisión de datos tienen este aspecto :

La puerta de la fuente y del destino
identifican la conexión. El número
de secuencia y el número de acuse de recibo son
normales. El último especifica el próximo
byte esperado. La longitud (4 bits) indica el número
de palabras de 32 bits en el encabezamiento, ya que
el campo de opciones tiene una longitud variable.
Los flags:
URG. Indica que el
segmento contiene datos urgentes. El puntero
urgente punta al desplazamiento del número
de secuencia corriente donde están los
datos urgentes.
ACK. Indica que hay
un número de acuse en el campo de acuse.
PSH (Push). El recibidor
no debiera almacenar los datos antes de entregarlos.
RST (Reset). Hay un
problema en la conexión.
SYN. Se usa para establecer
las conexiones. Una 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. Indica que el
mandador no tiene más datos a mandar.
La desconexión es simétrica.
TCP usa una ventana de tamaño
variable. Este campo indica cuantos bytes se pueden
mandar después del byte de acuse. El checksum
provee más confiabilidad. Las opciones permiten
que los hosts puedan especificar el segmento máximo
que están listos para aceptar (tienen que poder
recibir segmentos de 556 bytes), usar una ventana mayor
que 64K bytes, y usar repetir selectivamente en
vez de repetir un número indeterminado de veces.
 |