Está en la página 1de 5

LA CAPA DE TRANSPORTE

Con el protocolo IP en la capa de red, que no es orientado a


conexin, tenemos poco control sobre lo que sucede a los
mensajes enviados. La capa de transporte suele ser
orientada a conexin para compensar la falta de seguridad
de la capa de red. El inconveniente de la orientacin a
conexin es el tiempo perdido en
mensajes de control entre emisor y Repaso: Qu son los puertos.
receptor, como puede verse en la Tanto en Internet como en una red local, cuando dos
mquinas se comunican, cada una de ellas reserva un
figura.
espacio en memoria y un nmero llamado nmero de
puerto para almacenar las informaciones que llegan o salen
en la comunicacin con la otra mquina.
De esta manera, el emisor de cada mensaje debe conocer
el puerto por el que el receptor espera recibir los datos en
la conexin que les une e indicarla, y viceversa.

Sockets.
Es la forma de identificar cada
conexin por la capa de transporte.
Un socket est formado por:
Direccin IP + n de puerto (16
bits).
Es la referencia que cada equipo tiene de cada una de las conexiones abiertas con otros.
Servicio o Aplicacin
Puerto Con 16 bits para indicar el n de puerto pueden
establecerse 65.536 nmeros de puerto. Cada n de
File Transfer Protocol (FTP)
21
puerto se hace corresponder con una direccin de
Telnet
23
Simple Mail Transfer Protocol (SMTP)
25
memoria desde la que se gestionan los datos
Gopher
70
transmitidos en la conexin.
Finger
79
Aunque la asignacin de puertos a los diferentes
Hypertext Transfer Protocol (HTTP)
80
servicios es de libre eleccin para los
Network News Transfer Protocol (NNTP) 119
administradores de sistema, existe un estndar en
este sentido que se sigue habitualmente segn expresa la tabla adjunta.
As, los nmeros de puerto 0 a 255 estn reservados y se llaman puertos bien conocidos.
Una vez iniciada la conexin y la sesin entre dos ordenadores, cada uno de ellos establece
un puerto por el que enva y recibe datos, de forma que los puertos asignados son
exclusivos para esa conexin concreta hasta que la conexin finalice y se liberen. Sin
embargo, esto no impide que se pueda utilizar un mismo puerto en ms de una conexin
simultnea, como sucede por ejemplo, con el puerto 80 de un servidor web.
El resultado es que un ordenador puede mantener al mismo tiempo varias conexiones con
diferentes ordenadores, cada una de ellas a travs de puertos diferentes y/ o compartidos.
De la misma manera, el emisor de cada mensaje debe conocer el puerto por el que el
receptor espera recibir los datos en la conexin que les une e indicarla en la cabecera de
transporte.
Protocolos de transporte en la familia TCPIP.
As como en la familia TCPIP slo existe un protocolo de red, que es IP, en la de
transporte, existen 2: TCP y UDP. Vamos a ver por qu y para qu se utiliza uno y otro.

Protocolo TCP.
Es un protocolo orientado a conexin. Esto significa que cada vez que se van a conectar 2
equipos, el servidor abre un socket en el puerto establecido y se pone a la escucha de
posibles peticiones. A partir de aqu, se realizan las conexiones en 3 pasos:
El cliente que necesita contactar enva un
mensaje solicitando conexin, indicndole el
n de puerto que ha abierto para la conexin.
El servidor examina la peticin: si el puerto
est cerrado enva un mensaje de rechazo de
la peticin, y est abierto, responde
aceptndola.
El cliente enva otro mensaje de
confirmacin al servidor.
Ahora empieza el envo de datos entre
ambos.
Cuando el cliente no necesita ms, enva un mensaje cerrando la conexin.

Cabeceras de la capa de transporte TCP.


Los campos de puerto de origen y puerto de destino identifican los puntos
terminales locales de la conexin. Cada host puede decidir por s mismo la manera
de asignar sus propios puertos comenzando por el 256.
El campo nmero de secuencia indica el n de datagrama
El campo nmero de acuse de recibo sirve para indicar al otro equipo un n de
secuencia que
ha
llegado
correctamente a
ste.
La longitud de
cabecera TCP
indica
la
cantidad
de
palabras de 32
bits contenidas
en la cabecera
TCP
A continuacin
viene un campo de 6 bits que no se usan.
Ahora vienen seis banderas de 1 bit. URG se establece en 1 si est en uso el
apuntador urgente. El apuntador urgente sirve para indicar un desplazamiento en
bytes a partir de un nmero actual de secuencia en el que se encuentran datos
urgentes.

El bit ACK se establece en 1 para indicar que el nmero de acuse de recibo es


vlido. Si el ACK es 0, el segmento no contiene un acuse de recibo, por lo que se
ignora el campo de nmero de acuse de recibo.
El bit PSH indica datos empujados (con PUSH). Por este medio se solicita
atentamente al receptor entregar los datos a la aplicacin a su llegada y no ponerlos
en buffer hasta la recepcin completa.
Se usa el bit RST para restablecer una conexin que se ha perdido debido a una
cada de host u otra razn; tambin sirve para rechazar un segmento no vlido o un
intento de abrir una conexin.
El bit SYN se usa para establecer conexiones. La solicitud de conexin tiene SYN =
1 y ACK = 0 para indicar que el campo de acuse de recibo incorporado no est en
uso. La respuesta de conexin s lleva un reconocimiento, por lo que tiene SYN = 1
y ACK = 1. En esencia, el bit SYN se usa para denotar CONNECTION REQUEST
Y CONNECTION ACCEPTED, usndose el bit ACK para distinguir entre ambas
posibilidades.
El bit FIN se usa para liberar una conexin; especifica que el transmisor no tiene
ms datos que transmitir y desea cerrarla.
El control de flujo en el TCP se maneja usando una ventana corrediza de tamao
variable. El campo de ventana indica la cantidad de bytes que pueden enviarse.
Secuencia de una conexin TCP.

Estados de una conexin TCP

0. CLOSED: No existe, solo para referencia.


1. LISTEN: Esperando solicitud de conexin de un TCP remoto.
2. SYN-SEN: Esperando un mensaje de solicitud de conexin despus de haber enviado una solicitud de
conexin.

3. SYN-RECEIVED: Esperando confirmacin de una reconocimiento de solicitud de conexin, despus de


haber enviado y recibido una solicitud de conexin.

4. ESTABLISHED: Representa un a conexin abierta. Los datos recibidos pueden ser enviados a un
protocolo de una capa superior. Este es el estado normal de la fase de transferencia de la conexin.

5. FIN-WAIT-1: Esperando la solicitud de fin de conexin de un TCP remoto, o un reconocimiento de una


solicitud de fin de transmisin enviada anteriormente.
6. FIN-WAIT-2: Esperando una solicitud de fin de conexin de un TCP remoto.
7. CLOSE-WAIT: Esperando una solicitud de fin de conexin de un protocolo de una capa superior.
8. CLOSING: Esperando el conocimiento de una solicitud de final de conexin de un TCP remoto.
9. LAST-ACK: Esperando el conocimiento de una solicitud de final de conexin enviada anteriormente al
TCP remoto.
10. TIME-WAIT: Esperando el tiempo necesario para que el TCP remoto haya recibido el conocimiento de
la solicitud del fin de conexin.

Protocolo UDP.
Es un protocolo de transporte, no orientado a
conexin, que tambin suministra TCP/IP para
aquellas comunicaciones que, necesitando
mucha velocidad, ahorran el tiempo ocupado
en establecer y cerrar la conexin a cambio de
la fiabilidad que provee la conexin.
Las llamadas a servidores DNS, por ejemplo,
utilizan este protocolo para conocer la
direccin IP de un host a partir de su nombre.
La razn es la necesidad de una respuesta
rpida. Sucede igual en aplicaciones por
internet que utilicen imgenes como la video-conferencia: es ms importante la velocidad
de transmisin que alguna pequea distorsin en la imagen, consecuencia de un error o un
datagrama perdido.

Formato del UDP


Octet +0

Octet +1

Octet +2

Octet +3

7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
+0

Source Port

Destination Port

+4

Message Length

Checksum
UDP Data

Pseudo-Cabecera UDP
Octet +0

Octet +1

Octet +2

Octet +3

7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
Source IP Adress
Destination IP Address
Zero

Protocol ID
Source Port

Destination Port

Message Length

Checksum
UDP Data

UDP Data

Length

Zero

A
veces,
la
cabecera UDP se
representa con
ms catos de los
que vienen ms
arriba, y que no
figuran en la
trama. Se le
llama
pseudo
cabecera UDP.

Solucin ejercicio sobre sockets