Sie sind auf Seite 1von 108

Ingeniera de Sistemas

Capa de Transporte
Telemtica
Ing. JOSE WALDO DE LA OSSA
Capa de Transporte

1 Generalidades
Protocolos del nivel de transporte
UDP
TCP
Elementos de los protocolos de transporte

Ing. JOSE WALDO DE LA OSSA


Generalidades
1 Introduccin

En un nico dispositivo, las personas pueden utilizar varios


servicios como correo electrnico, la Web y la mensajera
instantnea para enviar mensajes o recuperar informacin.

Los datos de cada una de estas aplicaciones se empaqueta,


se transporta y se entrega al demonio del servidor
adecuado o a la aplicacin en el dispositivo de destino.
Ing. JOSE WALDO DE LA OSSA
Generalidades
1 Introduccin

Los procesos descritos en la capa de Transporte del modelo


OSI aceptan los datos de la capa de Aplicacin y los
preparan para el direccionamiento en la capa de red. La
capa de Transporte es responsable de la transferencia de
extremo a extremo general de los datos de aplicacin.
Ing. JOSE WALDO DE LA OSSA
Generalidades
2 Servicios proporcionados

La meta fundamental de la capa de transporte es proporcionar


un servicio eficiente, confiable y econmico a sus usuarios,
que normalmente son procesos de la capa de aplicacin.
Para lograr este objetivo, la capa de transporte utiliza los
servicios proporcionados por la capa de red.
Ing. JOSE WALDO DE LA OSSA
Generalidades
2 Servicios proporcionados
El hardware o software de la capa de transporte que se encarga del trabajo se
llama entidad de transporte, la cual puede estar en el kernel (ncleo) del
sistema operativo, en un proceso de usuario independiente, en un paquete de
biblioteca que forma parte de las aplicaciones de red o en la tarjeta de red.

Ing. JOSE WALDO DE LA OSSA


Relacin (lgica) entre las capas de red, transporte y aplicacin.
Generalidades
2 Servicios proporcionados

As como hay dos tipos de


servicio de red, orientado y
no orientado a la conexin,
hay dos tipos de servicio
de transporte.

El servicio de transporte orientado a la conexin es parecido en muchos


sentidos al servicio de red orientado a la conexin. En ambos casos, las
conexiones tienen tres fases: establecimiento, transferencia de datos y
liberacin (o terminacin). El direccionamiento y el control de flujo tambin son
semejantes en ambas capas.

Ing. JOSE WALDO DE LA OSSA


Generalidades
2 Servicios proporcionados

Adems, el servicio de
transporte no orientado a
la conexin es muy
parecido al servicio de red
no orientado a la conexin.

El cdigo de transporte se ejecuta por completo en las mquinas de los usuarios,


pero la capa de red, por lo general, se ejecuta en los enrutadores, los cuales son
operados por la empresa portadora.

La capa de transporte puede detectar y compensar paquetes perdidos y datos


alterados.
Ing. JOSE WALDO DE LA OSSA
Generalidades
3 Propsito de la capa de transporte

La capa de transporte permite la segmentacin de datos y brinda el control


necesario para reensamblar las partes dentro de los distintos streams de
comunicacin. Las responsabilidades principales que debe cumplir son:

Rastreo de comunicacin individual entre aplicaciones en los hosts de origen y


destino.

Segmentacin de datos y manejo de cada parte.

Reensamble de segmentos en streams de datos de aplicacin.

Identificacin de diferentes aplicaciones.

Ing. JOSE WALDO DE LA OSSA


Generalidades
3 Propsito de la capa de transporte

Rastreo de conversaciones individuales. Cualquier host puede tener mltiples


aplicaciones que se comunican a travs de la red. Cada una de estas
aplicaciones se comunicar con una o ms aplicaciones en hosts remotos. Es
responsabilidad de la capa de transporte mantener los streams de comunicacin
mltiple entre estas aplicaciones.
Ing. JOSE WALDO DE LA OSSA
Generalidades
3 Propsito de la capa de transporte

Segmentacin de datos. As como cada aplicacin crea stream de datos para


enviarse a una aplicacin remota, estos datos se pueden preparar para enviarse a
travs de los medios en partes manejables. Dividir datos en pequeas partes y
enviarlas del origen al destino permite que muchas comunicaciones
diferentes se intercalen (multiplexadas) en la misma red.
Ing. JOSE WALDO DE LA OSSA
Generalidades
3 Propsito de la capa de transporte

Segmentacin de datos. La segmentacin de los datos, que cumple con los


protocolos de la capa de transporte, proporciona los medios para enviar y recibir
datos cuando se ejecutan varias aplicaciones de manera concurrente en un
computador.

Ing. JOSE WALDO DE LA OSSA


Generalidades
3 Propsito de la capa de transporte

Reensamble de segmentos. En el host de recepcin, cada seccin de datos se


puede direccionar a la aplicacin adecuada. Los protocolos en la capa de
transporte describen cmo se utiliza la informacin del encabezado de la capa
para reensamblar las partes de los datos en streams para pasarlos a la capa de
aplicacin.
Ing. JOSE WALDO DE LA OSSA
Generalidades
3 Propsito de la capa de transporte

Identificacin de aplicaciones. Para pasar streams de datos a las aplicaciones


adecuadas, la capa de transporte debe identificar la aplicacin meta. Para lograr
esto, la capa de transporte asigna un identificador a la aplicacin. Los
protocolos TCP/IP denominan a este identificador nmero de puerto. Este
nmero de puerto se utiliza en el encabezado de la capa de transporte para
indicar qu aplicacin se asocia a qu parte.

Ing. JOSE WALDO DE LA OSSA


Generalidades
4 Control de las comunicaciones

Adems de utilizar la informacin contenida en los encabezados, para las


funciones bsicas de segmentacin y reensamble de datos algunos protocolos en
la capa de transporte proporcionan:

Conversaciones orientadas a la conexin


Entrega confiable
Reconstruccin de datos ordenada
Control del flujo
Ing. JOSE WALDO DE LA OSSA
Generalidades
4 Control de las comunicaciones

Establecimiento de una sesin. La capa de transporte puede brindar esta orientacin a


la conexin creando una sesin entre las aplicaciones. Estas conexiones preparan las
aplicaciones para que se comuniquen entre s antes de que se transmitan los datos.

Entrega confiable. Por varias razones, es posible que una seccin de datos se corrompa
o se pierda por completo a medida que se transmite a travs de la red. La capa de
transporte puede asegurar que todas las partes alcancen su destino haciendo que el
dispositivo origen retransmita todos los datos perdidos.

Ing. JOSE WALDO DE LA OSSA


Generalidades
4 Control de las comunicaciones

Entrega en el mismo orden. Los datos pueden llegar en el orden equivocado, debido a
que las redes pueden proporcionar mltiples rutas que pueden tener diferentes tiempos
de transmisin. Al numerar y secuenciar los segmentos, la capa de transporte puede
asegurar que los mismos se reensamblen en el orden adecuado.

Control del flujo. Los hosts de la red cuentan con recursos limitados, como memoria o
ancho de banda. Cuando la capa de transporte advierte que estos recursos estn
sobrecargados, algunos protocolos pueden solicitar que la aplicacin que enva reduzca la
velocidad del flujo de datos. Esto se lleva a cabo en la capa de transporte regulando la
cantidad de datos que el origen transmite como grupo.

Ing. JOSE WALDO DE LA OSSA


Capa de Transporte

Generalidades
2 Protocolos del nivel de transporte
UDP
TCP
Elementos de los protocolos de transporte

Ing. JOSE WALDO DE LA OSSA


Protocolos del nivel de transporte
1 Objetivo principal

El objetivo principal del nivel de transporte es establecer una comunicacin


extremo a extremo a travs de una red. En otras palabras, actuar de interfaz
entre los niveles orientados a la aplicacin y los niveles orientados a la red de
la jerarqua de protocolos (tanto OSI como TCP/IP).
Ing. JOSE WALDO DE LA OSSA
Protocolos del nivel de transporte
2 Protocolos principales

Del nivel de transporte se destacan dos protocolos que se definen en la pila


TCP/IP: UDP y TCP.

UDP es no orientado a la conexin, mientras que TCP es orientado a la


conexin.

En el nivel de transporte se definen dos direcciones que lo relacionan con los


niveles superior e inferior:

La direccin IP, que ya conocemos, es la direccin que identifica un


subsistema dentro de una red.

El puerto identifica la aplicacin que requiere la comunicacin.

Ing. JOSE WALDO DE LA OSSA


Protocolos del nivel de transporte
2 Protocolos principales

Para identificar las diferentes aplicaciones, los protocolos TCP/IP marcan cada
paquete (o unidad de informacin) con un identificador de 16 bits llamado
puerto.

La verdadera utilidad de los puertos es que permiten multiplexar


aplicaciones sobre protocolos del nivel de transporte. Ello significa que un
mismo protocolo de transporte lleva informacin de diferentes aplicaciones y
estas ltimas son identificadas por el puerto.

Si alguna aplicacin que corre en un terminal quiere establecer una


comunicacin con un servidor o con otro terminal, debe utilizar un protocolo de
transporte: el TCP o el UDP. Como el destino puede encontrarse en una red
remota, los protocolos de transporte necesitan el protocolo Internet para poder
llegar al terminal o servidor remoto.

Ing. JOSE WALDO DE LA OSSA


Protocolos del nivel de transporte
2 Protocolos principales

Las aplicaciones utilizan uno de los dos protocolos de transporte para


comunicarse con equipos remotos. Para que un protocolo de aplicacin
se pueda comunicar con otro del mismo nivel situado en un terminal
remoto, debe transmitirle un flujo de bytes que es encapsulado por los
Ing. JOSE WALDO DE LA OSSA
protocolos del nivel de transporte.
Protocolos del nivel de transporte
2 Protocolos principales

El conjunto de bytes que transmite el nivel de transporte TCP se


conoce como segmento TCP, mientras que el conjunto de bytes
que transmite el protocolo de transporte UDP se llama
Ing. JOSE WALDO DE LA OSSA
datagrama UDP.
Protocolos del nivel de transporte
3 Comunicacin

En general, dos aplicaciones se comunican siguiendo el modelo


cliente/servidor. En una conexin es tpico que una aplicacin
(el cliente) inicie una comunicacin pidiendo una informacin a
otra aplicacin (el servidor).

Ing. JOSE WALDO DE LA OSSA


Protocolos del nivel de transporte
3 Comunicacin

Cliente Servidor

El cliente necesita conocer ambas direcciones puesto que el


servidor estar conectado a una red y, por tanto, tendr una
direccin IP que debe ser conocida para que se pueda establecer
una comunicacin con esta mquina remota. Dicha comunicacin
se consigue por medio del IP.
Ing. JOSE WALDO DE LA OSSA
Protocolos del nivel de transporte
3 Comunicacin

Cliente Servidor

El cliente conoce la direccin IP de origen (la suya), la direccin


IP de destino (la del servidor) y su puerto de origen (identifica la
aplicacin cliente). Sin embargo, tambin debe conocer el
nmero (puerto de destino) que identifica la aplicacin deseada
en el servidor, y lo hace por medio de los llamados puertos
Ing. JOSE WALDO DE LA OSSA conocidos (well-known port).
Protocolos del nivel de transporte
3 Comunicacin

Cliente Servidor

Evidentemente, el servidor no necesita conocer a priori el puerto


de origen, puesto que se limita a responder a cualquier peticin
de cualquier cliente.

Ing. JOSE WALDO DE LA OSSA


Protocolos del nivel de transporte
3 Comunicacin

Cliente Servidor

Un puerto conocido (well-known port) es un puerto (nmero)


reservado que identifica una aplicacin conocida. Estos puertos
son asignados por IANA (Internet Assigned Numbers Authority).
Ing. JOSE WALDO DE LA OSSA
Capa de Transporte

Generalidades
Protocolos del nivel de transporte
3 UDP
TCP
Elementos de los protocolos de transporte

Ing. JOSE WALDO DE LA OSSA


UDP
1 Introduccin a UDP

UDP (Protocolo de Datagramas de Usuario). Este protocolo


proporciona una forma para que las aplicaciones enven
datagramas IP encapsulados sin tener que establecer una
conexin.

El UDP es un protocolo no orientado a la conexin, de manera


que no proporciona ningn tipo de control de errores ni de flujo,
aunque utiliza mecanismos de deteccin de errores. En caso de
detectar un error, el UDP no entrega el datagrama a la
aplicacin, sino que lo descarta.

Ing. JOSE WALDO DE LA OSSA


UDP
2 Caractersticas de UDP

No garantiza la fiabilidad; es decir, no ofrece la seguridad de


que cada datagrama UDP transmitido llegue a su destino; es un
protocolo best-effort: el UDP hace todo lo posible para
transferir los datagramas de su aplicacin, pero no garantiza su
entrega.

No preserva la secuencia de la informacin que le


proporciona la aplicacin. Como est en modo datagrama y
utiliza un protocolo por debajo como el IP, que tambin est en
modo datagrama, la aplicacin puede recibir la informacin
desordenada. La aplicacin debe estar preparada para que
haya datagramas que se pierdan, lleguen con retardo o se
hayan desordenado.

Ing. JOSE WALDO DE LA OSSA


UDP
2 Caractersticas de UDP

Encapsulado en IP con el identificador 17.

Los datos enviados por la aplicacin se les aade la cabecera


UDP y se encapsulan en un datagrama IP.

UDP transmite datagramas que consisten en un encabezado


de 8 bytes seguido por la carga til.

En teora, los datos de UDP podrn ocupar como mximo


65535-20-8=65507 bytes suponiendo que no hay opciones en
la cabecera IP.

No realiza control de flujo, control de errores o retransmisin


cuando se recibe un segmento errneo.

Ing. JOSE WALDO DE LA OSSA


UDP
3 Relacin de UDP con IP

Los datagramas UDP estn limitados al mximo tamao de


un paquete IP (216 bytes.).

Los programas de aplicaciones no podrn enviar ni recibir


datos de un tamao superior al valor anterior.

Los datagramas UDP pueden perderse o llegar con errores,


siendo descartados por el receptor. En estos casos a nivel de
UDP no se solicita una retrasmisin.

Los datagramas UDP pueden llegar desordenados o


duplicados a la aplicacin.

Ing. JOSE WALDO DE LA OSSA


UDP
4 Cabecera UDP

8 bytes

El datagrama UDP consta de una cabecera y un cuerpo para


encapsular los datos.

Ing. JOSE WALDO DE LA OSSA


UDP
4 Cabecera UDP

8 bytes

Los campos Puerto de origen y Puerto de destino, que


identifican las aplicaciones en los terminales de origen y de
destino. Cada puerto tiene 16 bits.

Cuando llega un paquete UDP, su carga til se entrega al


proceso que est enlazado al puerto de destino.

Ing. JOSE WALDO DE LA OSSA


UDP
4 Cabecera UDP

8 bytes

El campo Longitud indica la longitud, en bytes, del datagrama


UDP incluyendo la cabecera UDP (es la diferencia de la
longitud del datagrama IP menos la cabecera IP). Como la
longitud mxima de un datagrama IP es de 65.535 bytes, con
una cabecera estndar de 20 bytes, la longitud mxima de un
datagrama UDP es de 65.515 bytes.

Ing. JOSE WALDO DE LA OSSA


UDP
4 Cabecera UDP

8 bytes

El campo Checksum (16 bits) es opcional y protege tanto la


cabecera como los datos UDP (es preciso recordar que el
checksum del datagrama IP slo cubre la cabecera IP).

Cuando el UDP recibe un datagrama y determina que hay


errores, lo descarta y no lo entrega a ninguna aplicacin.

Ing. JOSE WALDO DE LA OSSA


UDP
5 Usos de UDP

Direccionamiento IP

Unicast: El mensaje se dirige a un solo destino. Se utiliza en


UDP y TCP.

Broadcast: El mensaje se dirige a todos los hosts de una red


o subred. Solo se utiliza en UDP.

Multicast: El mensaje se dirige a un grupo de hosts


conectados a una red o subred. Solo se utiliza en UDP.

Ing. JOSE WALDO DE LA OSSA


UDP
5 Usos de UDP

Aplicaciones sobre UDP

DNS: Domain Name System.

Enrutamiento dinmico: RIP, OSPF, IGMP.

SNMP: Simple Network Management Protocol.

RTP: Real Time Protocol.

DHCP: Dynamic Host Configuration Protocol.

Ing. JOSE WALDO DE LA OSSA


Capa de Transporte

Generalidades
Protocolos del nivel de transporte
UDP
4 TCP
Elementos de los protocolos de transporte

Ing. JOSE WALDO DE LA OSSA


TCP
1 Introduccin a TCP

TCP (Protocolo de Control de Transmisin) se diseo


especficamente para proporcionar un flujo de bytes confiable
de extremo a extremo a travs de una interred no confiable.

TCP tiene un diseo que se adapta de manera dinmica a las


propiedades de la interred y que se sobrepone a muchos tipos
de fallas.

Cada mquina que soporta TCP tiene una entidad de


transporte TCP, ya sea un procedimiento de biblioteca, un
proceso de usuario o parte del kernel.

Ing. JOSE WALDO DE LA OSSA


TCP
1 Introduccin a TCP

Una entidad TCP acepta flujos de datos de usuario de procesos


locales, los divide en fragmentos que no excedan los 64 KB (en
la prctica, por lo general, 1460 bytes de datos que se ajustan
en una sola trama Ethernet con los encabezados IP y TCP), y
enva cada fragmento como un datagrama IP independiente.

Cuando los datagramas que contienen datos TCP llegan a una


mquina, se pasan a la entidad TCP, la cual reconstruye los
flujos de bytes originales.

Ing. JOSE WALDO DE LA OSSA


TCP
1 Introduccin a TCP

La capa IP no proporciona ninguna garanta de que los


datagramas se entregarn de manera apropiada, por lo que
corresponde a TCP terminar los temporizadores y retransmitir
los datagramas conforme sea necesario.

El servicio TCP se obtiene al hacer que tanto el servidor como


el cliente creen puntos terminales, llamados sockets.

Todas las conexiones TCP son de dplex total y de punto a


punto. Dplex total significa que el trfico puede ir en ambas
direcciones al mismo tiempo. Punto a punto significa que cada
conexin tiene exactamente dos puntos finales. TCP no
soporta la multidifusin ni la difusin.

Ing. JOSE WALDO DE LA OSSA


TCP
2 TCP proporciona fiabilidad

Para proporcionar un servicio fiable a la aplicacin, TCP se


basa en los siguientes principios:

1. Transmisin libre de error. TCP debe entregar a la


aplicacin de destino exactamente la misma informacin que
le entreg la aplicacin de origen. De hecho, se trata de una
entrega casi libre de errores, puesto que puede haber
algunos que un mecanismo de deteccin de errores no
pueda detectar.

Ing. JOSE WALDO DE LA OSSA


TCP
2 TCP proporciona fiabilidad

Para proporcionar un servicio fiable a la aplicacin, TCP se


basa en los siguientes principios:

2. Garanta de entrega de la informacin. TCP garantiza


que toda la informacin transmitida por la aplicacin de
origen se entregue a la aplicacin de destino. Si no es
posible, el TCP debe avisar a la aplicacin.

Ing. JOSE WALDO DE LA OSSA


TCP
2 TCP proporciona fiabilidad

Para proporcionar un servicio fiable a la aplicacin, TCP se


basa en los siguientes principios:

3. Garanta de mantenimiento de la secuencia de


transmisin. TCP garantiza la entrega del flujo de
informacin en el mismo orden en que le fue entregado por
la aplicacin de origen.

Ing. JOSE WALDO DE LA OSSA


TCP
2 TCP proporciona fiabilidad

Para proporcionar un servicio fiable a la aplicacin, TCP se


basa en los siguientes principios:

4. Eliminacin de duplicados. TCP garantiza que slo


entregar una copia de la informacin transmitida a la
aplicacin de destino. En caso de que reciba copias a causa
del funcionamiento de la red o de los protocolos que se
implementan por debajo del nivel de transporte, TCP las
eliminar.

Ing. JOSE WALDO DE LA OSSA


TCP
2 TCP proporciona fiabilidad

La fiabilidad de la transmisin que proporciona TCP se


consigue gracias a las siguientes estrategias:

TCP est orientado a la conexin: tiene una fase de


establecimiento de la conexin, una de transmisin de datos
y una de desconexin.

TCP utiliza el concepto buffered transfer: cuando se


transfiere informacin, TCP divide los flujos de datos (byte
stream) que le pasa la aplicacin en segmentos del tamao
que le convenga.

TCP utiliza una conexin full duplex: la transferencia de


informacin es en ambos sentidos. La aplicacin ve dos
flujos independientes.
Ing. JOSE WALDO DE LA OSSA
TCP
3 Algunos aspectos del protocolo TCP

Una caracterstica clave de TCP, y una que domina el diseo


del protocolo, es que cada byte de una conexin TCP tiene su
propio nmero de secuencia de 32 bits.

La entidad TCP emisora y la receptora intercambian datos en


forma de segmentos. Un segmento consiste en un
encabezado TCP fijo de 20 bytes (ms una parte opcional)
seguido de cero o ms bytes de datos.

Hay dos lmites que restringen el tamao de segmento.


Primero, cada segmento, incluido el encabezado TCP, debe
caber en la carga til de 65,515 bytes del IP. Segundo, cada
red tiene una unidad mxima de transferencia (MTU) y cada
segmento debe caber en la MTU. Este ultimo, define el lmite
superior del tamao de segmento.

Ing. JOSE WALDO DE LA OSSA


TCP
3 Algunos aspectos del protocolo TCP

El protocolo bsico usado por las entidades TCP es el


protocolo de ventana corrediza.

Cuando un transmisor enva un segmento, tambin inicia un


temporizador. Cuando llega el segmento al destino, la entidad
TCP receptora devuelve un segmento (con datos, si existen,
de otro modo sin ellos) que contiene un nmero de
confirmacin de recepcin igual al siguiente nmero de
secuencia que espera recibir.

Si el temporizador del emisor expira antes de la recepcin de


la confirmacin, el emisor enva de nuevo el segmento.

Ing. JOSE WALDO DE LA OSSA


TCP
4 Encabezado del segmento TCP

20 bytes

Cada segmento comienza con un encabezado de formato fijo de 20


bytes. El encabezado fijo puede ir seguido de opciones de
encabezado. Tras las opciones, si las hay, pueden continuar hasta
65,535 20 20 = 65,495 bytes de datos, donde los primeros 20 se
refieren al encabezado IP y los segundos al encabezado TCP.
Encapsulado en IP con el identificador 6.
Ing. JOSE WALDO DE LA OSSA
TCP
4 Encabezado del segmento TCP

20 bytes

El segmento TCP consta de una cabecera y un cuerpo para


encapsular datos. La cabecera consta de una serie de campos
que se detallan a continuacin.

Ing. JOSE WALDO DE LA OSSA


TCP
4 Encabezado del segmento TCP

20 bytes

Los campos de Puerto de origen y Puerto de destino


identifican aplicacin en el terminal origen y el terminal destino.

Ing. JOSE WALDO DE LA OSSA


TCP
4 Encabezado del segmento TCP

20 bytes

El campo Nmero de secuencia identifica el primer byte del campo de


datos. TCP no numeran segmentos, sino bytes. Por tanto, el nmero de
secuencia identifica el primer byte de los datos que enva el segmento:
al principio de la conexin se asigna un nmero de secuencia inicial
(ISN, del ingls initial sequence number), a partir del cual el TCP
numera los bytes consecutivamente.
Ing. JOSE WALDO DE LA OSSA
TCP
4 Encabezado del segmento TCP

20 bytes

El campo Nmero ACK. TCP reconoce datos por medio de la


tcnica de piggybacking. Al activar un bit de la cabecera (el bit
ACK), TCP tiene en cuenta el nmero de secuencia ACK que
indica al otro extremo TCP el prximo byte que est dispuesto a
recibir.
Ing. JOSE WALDO DE LA OSSA
TCP
4 Encabezado del segmento TCP

20 bytes

El campo Longitud de la cabecera indica la longitud de la


cabecera, que puede ser variable. La longitud tpica es de 20
bytes; sin embargo, si TCP utiliza el campo de opciones, puede
llegar a una longitud mxima de 60 bytes. De este modo, TCP
sabe dnde empiezan los datos.
Ing. JOSE WALDO DE LA OSSA
TCP
4 Encabezado del segmento TCP

20 bytes

El campo Longitud de la cabecera indica la longitud de la


cabecera, que puede ser variable. La longitud tpica es de 20
bytes; sin embargo, si TCP utiliza el campo de opciones, puede
llegar a una longitud mxima de 60 bytes. De este modo, TCP
sabe dnde empiezan los datos.
Ing. JOSE WALDO DE LA OSSA
TCP
4 Encabezado del segmento TCP

20 bytes

El campo Reservado, campo de 6 bits, tal como su nombre


indica, est reservado y se inicializa con ceros.

Ing. JOSE WALDO DE LA OSSA


TCP
4 Encabezado del segmento TCP

20 bytes

El campo Control (flags) est formado por seis indicadores


independientes, cada uno de los cuales seala una funcin
especfica del protocolo cuando est activo (a 1):

Ing. JOSE WALDO DE LA OSSA


TCP
4 Encabezado del segmento TCP

20 bytes

El campo Control (flags) est formado por seis indicadores


independientes, cada uno de los cuales seala una funcin
especfica del protocolo cuando est activo (a 1):

Ing. JOSE WALDO DE LA OSSA


TCP
4 Encabezado del segmento TCP

20 bytes

URG: indica que hay datos urgentes (y el campo Urgent pointer


indica la cantidad de datos urgentes existentes en el
segmento).

Ing. JOSE WALDO DE LA OSSA


TCP
4 Encabezado del segmento TCP

20 bytes

ACK: cuando este bit est activo, el campo Nmero ACK indica
el byte siguiente que espera recibir la conexin TCP. Si este bit
no est activo, el campo Nmero ACK no tiene ningn
significado para el TCP.

Ing. JOSE WALDO DE LA OSSA


TCP
4 Encabezado del segmento TCP

20 bytes

PSH: invoca la funcin push en el protocolo. Esta funcin dice al


receptor que entregue a la aplicacin todos los datos que tenga
disponibles en la memoria intermedia de recepcin sin esperar a
completarlos con datos adicionales. De este modo, los datos no
esperan en la memoria intermedia receptora hasta completar un
segmento de dimensin mxima.
Ing. JOSE WALDO DE LA OSSA
TCP
4 Encabezado del segmento TCP

20 bytes

RST: realiza un reset de la conexin.


SYN: se utiliza para iniciar una conexin y tambin sirve para
resincronizar los nmeros de secuencia.
FIN: indica que el transmisor ha acabado la conexin.

Ing. JOSE WALDO DE LA OSSA


TCP
4 Encabezado del segmento TCP

20 bytes

El campo Tamao de Ventana indica cuntos bytes componen


la ventana de transmisin del protocolo de control de flujo por
ventana deslizante. A diferencia de los protocolos del nivel de
enlace, en que la ventana era constante y contaba tramas, en el
TCP la ventana es variable y cuenta bytes.
Ing. JOSE WALDO DE LA OSSA
TCP
4 Encabezado del segmento TCP

20 bytes

Con cada segmento transmitido, un extremo TCP advierte al


otro extremo de la cantidad de datos que est dispuesto a
recibir en cada momento. De este modo, el extremo que recibe
un segmento actualiza el tamao de su ventana de transmisin.

Ing. JOSE WALDO DE LA OSSA


TCP
4 Encabezado del segmento TCP

20 bytes

El campo Checksum se utiliza para detectar errores. Es una


suma de verificacin del encabezado, los datos y el
pseudoencabezado. El pseudoencabezado contiene las
direcciones IP de 32 bits de las mquinas de origen y de
destino, el nmero de protocolo de TCP (6), y la cuenta de
Ing. JOSE WALDO DE LA OSSA bytes del segmento TCP (incluido el encabezado).
TCP
4 Encabezado del segmento TCP

20 bytes

El campo Urgent pointer tiene sentido cuando el bit de control


URG est activo. Indica que los datos que enva el origen son
urgentes e identifica el ltimo byte de dicho campo. La
aplicacin es la que indica que estos ltimos son urgentes y lo
sabe porque el TCP se lo indica en la recepcin.
Ing. JOSE WALDO DE LA OSSA
TCP
4 Encabezado del segmento TCP

20 bytes

El campo Opciones ofrece una forma de agregar


caractersticas extra no cubiertas por el encabezado normal.

Ing. JOSE WALDO DE LA OSSA


TCP
4 Encabezado del segmento TCP

El campo Opciones TCP permite aadir campos a la cabecera


para realizar las operaciones siguientes:

Marcar el tiempo (timestamp) en que se transmiti el


segmento y de este modo poder monitorizar los retardos que
experimentan los segmentos desde el origen hasta el destino.

Aumentar el tamao de la ventana.

Indicar el tamao mximo del segmento (MSS, del ingls


maximum segment size) que el origen est preparado para
recibir. Por tanto, el receptor no le puede transmitir segmentos
por encima de este valor.

Ing. JOSE WALDO DE LA OSSA


TCP
5 Establecimiento de una conexin TCP

Para establecer una conexin, TCP utiliza el protocolo three-


way handshake (acuerdo de tres vas). Este ltimo necesita
tres segmentos TCP para poder establecer la conexin. Para
establecer una conexin, un lado, digamos el servidor, espera
pasivamente una conexin entrante ejecutando las primitivas
LISTEN y ACCEPT.
Ing. JOSE WALDO DE LA OSSA
TCP
5 Establecimiento de una conexin TCP

1. Peticin de la
conexin (SYN)

El TCP cliente enva un segmento de peticin de conexin al


servidor. Dicho segmento, que se conoce como segmento SYN
porque tiene activado el bit SYN en el campo Control de la
cabecera del segmento TCP, especifica el nmero de secuencia
inicial TCP del cliente (ISN). El nmero de secuencia inicial se
elige al azar.
Ing. JOSE WALDO DE LA OSSA
TCP
5 Establecimiento de una conexin TCP

2. Confirmacin de la
conexin (SYN, ACK)

El servidor responde a la peticin de establecimiento de la conexin con


un segmento SYN que indica el nmero de secuencia inicial que
utilizar.

Asimismo, este segmento contiene un reconocimiento (ACK) del


segmento SYN del cliente que indica el ISN del cliente ms 1 (el nmero
Ing. JOSE WALDO DE LA OSSA
de secuencia inicial del cliente ms 1).
TCP
5 Establecimiento de una conexin TCP

2. Confirmacin de la
conexin (SYN, ACK)

Nota: Conviene recordar que TCP numera los ACK con el


nmero de secuencia del prximo byte que espera recibir
(en este caso, el servidor espera que el prximo byte enviado
por el cliente sea x + 1). En la figura anterior, sera el segmento
SYN (y), ACK ( x + 1), donde y es el ISN elegido por el TCP
servidor.
Ing. JOSE WALDO DE LA OSSA
TCP
5 Establecimiento de una conexin TCP

3. Reconocimiento de
la conexin (ACK)

El cliente reconoce el segmento SYN (y) del servidor con un


reconocimiento que contiene el ISN servidor ms 1. En la figura
anterior, sera el segmento ACK (y + 1).

Despus de estos tres pasos, podemos decir que ya se ha


establecido la conexin entre el cliente y el servidor.
Ing. JOSE WALDO DE LA OSSA
TCP
6 Liberacin de una conexin TCP

Cuando la transferencia de la
informacin ha finalizado, TCP
dispone de un protocolo de
terminacin de la conexin para
cerrarla.

En una conexin TCP full duplex, en


la que los datos fluyen en ambos
sentidos, independientes el uno del
otro, cualquier conexin debe
cerrarse independientemente.

Ing. JOSE WALDO DE LA OSSA


TCP
6 Liberacin de una conexin TCP

Es preciso tener en cuenta que tanto el cliente como el servidor


pueden cerrar la conexin. Sin embargo, la situacin normal es
que la aplicacin cliente inicie la peticin de conexin y tenga,
posiblemente, un usuario interactivo que le pida su cierre. Por
ejemplo, de una instruccin, que en telnet sera logout y en un
ftp sera bye.

Supongamos que es el cliente quien pide cerrar la conexin (si


fuera el servidor, sera similar). Los pasos que se siguen son los
siguientes:

Ing. JOSE WALDO DE LA OSSA


TCP
6 Liberacin de una conexin TCP

1. El cliente enva un segmento TCP del tipo FIN con el nmero


de secuencia correspondiente (J). Ello significa que a partir de
este momento no habr ms datos que fluyan en este sentido
(cliente servidor).

Ing. JOSE WALDO DE LA OSSA


TCP
6 Liberacin de una conexin TCP

2. El servidor enva una confirmacin del cierre por medio de un


ACK con el nmero de secuencia recibido ms 1 (J + 1).

Ing. JOSE WALDO DE LA OSSA


TCP
6 Liberacin de una conexin TCP

3. El servidor enva un segmento TCP del tipo FIN al cliente con


el nmero de secuencia correspondiente (K).

Ing. JOSE WALDO DE LA OSSA


TCP
6 Liberacin de una conexin TCP

4. El TCP cliente responde automticamente con un ACK (K +


1).

Ing. JOSE WALDO DE LA OSSA


TCP
7 Retransmisin de una conexin TCP

Un servicio de host de destino que utiliza TCP generalmente


slo da acuse de recibo de datos para bytes de
secuencia continuos. Si uno o ms segmentos se pierden,
slo se acusa recibo de los datos de los segmentos que
completan el stream.

Por ejemplo, si se recibieron los segmentos con nmeros de


secuencia de 1500 a 3000 y de 3400 a 3500, el nmero de
acuse de recibo sera 3001. Esto es porque hay segmentos
con nmeros de secuencia del 3001 al 3399 que no se han
recibido.

Ver animacin punto 4.3.3 del curso CCNA Cisco.

Ing. JOSE WALDO DE LA OSSA


TCP
8 Control de congestin de TCP

Control de flujo

El control del flujo contribuye con la confiabilidad de la


transmisin TCP ajustando la tasa efectiva de flujo de datos
entre los dos servicios de la sesin.

Cuando se le informa al origen que se recibi una cantidad


especfica de datos en los segmentos, puede seguir
enviando ms datos para esta sesin.

Ing. JOSE WALDO DE LA OSSA


TCP
8 Control de congestin de TCP

Control de flujo. El campo de Tamao de ventana en el


encabezado del TCP especifica la cantidad de datos que se
pueden transmitir antes de que se deba recibir un acuse de
recibo. El tamao inicial de la ventana se determina durante
el arranque de sesin por medio del enlace de tres vas.
Ing. JOSE WALDO DE LA OSSA
TCP
8 Control de congestin de TCP

Control de flujo. El mecanismo de retroalimentacin del


TCP ajusta la velocidad eficaz de transmisin de datos al
flujo mximo que la red y el dispositivo de destino pueden
admitir sin prdidas. TCP intenta gestionar la tasa de
transmisin de manera que todos los datos se reciban y se
reduzcan las retransmisiones.
Ing. JOSE WALDO DE LA OSSA
TCP
8 Control de congestin de TCP

Reduccin del tamao de la ventana

Otra forma de controlar el flujo de datos es utilizar tamaos


de ventana dinmicos. Cuando los recursos de la red son
limitados, TCP puede reducir el tamao de la ventana para
lograr que los segmentos recibidos sean reconocidos con
mayor frecuencia.

Ing. JOSE WALDO DE LA OSSA


TCP
8 Control de congestin de TCP

Reduccin del tamao de la ventana. El host receptor del


TCP enva el valor del tamao de la ventana al TCP emisor
para indicar el nmero de bytes que est preparado para
recibir como parte de la sesin.
Ing. JOSE WALDO DE LA OSSA
TCP
8 Control de congestin de TCP

Reduccin del tamao de la ventana. Si el destino necesita


disminuir la velocidad de comunicacin debido a su memoria de
bfer limitada, puede enviar un valor ms pequeo del tamao de
la ventana al origen como parte del acuse de recibo.
Ing. JOSE WALDO DE LA OSSA
Capa de Transporte

Generalidades
Protocolos del nivel de transporte
UDP
TCP
5 Elementos de los protocolos de transporte

Ing. JOSE WALDO DE LA OSSA


Elementos de los protocolos de transporte
1 Direccionamiento

Para diferenciar los segmentos y datagramas para cada


aplicacin, los protocolos del nivel de transporte cuentan con
campos de encabezado que pueden identificar de manera
exclusiva estas aplicaciones. Estos identificadores nicos
son nmeros de puertos.

En el encabezado de cada segmento o datagrama, hay un


puerto origen y uno de destino. El nmero de puerto de origen
es el nmero para esta comunicacin asociado con la
aplicacin que origina la comunicacin en el host local. El
nmero de puerto de destino es el nmero para esta
comunicacin asociado con la aplicacin de destino que origina
la comunicacin en el host local.

Ing. JOSE WALDO DE LA OSSA


Elementos de los protocolos de transporte
1 Direccionamiento

Los nmeros de puerto se asignan de distintas maneras, en


virtud de si el mensaje es una solicitud o una respuesta.
Mientras que los procesos del servidor tienen nmeros de
puerto estticos asignados, los clientes eligen de forma
dinmica un nmero de puerto para cada conversacin.

Ing. JOSE WALDO DE LA OSSA


Elementos de los protocolos de transporte
1 Direccionamiento

Cuando una aplicacin de cliente enva una solicitud a una


aplicacin de servidor, el puerto de destino contenido en el
encabezado es el nmero de puerto asignado al demonio de
servicio se ejecuta en el host remoto. El software del cliente
debe conocer el nmero de puerto asociado con el proceso del
servidor en el host remoto.
Ing. JOSE WALDO DE LA OSSA
Elementos de los protocolos de transporte
1 Direccionamiento

El puerto de origen en el encabezado de un segmento o de un


datagrama de la solicitud de un cliente se crea de forma
aleatoria desde los nmeros de puerto mayores de 1023. El
nmero de puerto de la aplicacin que realiza la solicitud se
utiliza como nmero de puerto de destino en la respuesta que
vuelve del servidor.
Ing. JOSE WALDO DE LA OSSA
Elementos de los protocolos de transporte
1 Direccionamiento

La combinacin del nmero de puerto de la capa de transporte y


de la direccin IP de la capa de red asignada al host identifica
de manera exclusiva un proceso en particular que se ejecuta en
un dispositivo host especfico. Esta combinacin se denomina
socket.
Ing. JOSE WALDO DE LA OSSA
Elementos de los protocolos de transporte
1 Direccionamiento

Por ejemplo, una solicitud de pgina Web HTTP que se enva a


un servidor Web (puerto 80) que se ejecuta en un host con una
direccin IPv4 de Capa 3 de 192.168.1.20 se destinara al
socket 192.168.1.20:80.

Ing. JOSE WALDO DE LA OSSA


Elementos de los protocolos de transporte
1 Direccionamiento

Si el explorador Web (cliente) que solicita una pgina Web se


ejecuta en el host 192.168.100.48 y el nmero de puerto
dinmico que se asign al explorador es 49152, el socket para la
pgina Web sera 192.168.100.48:49152.

Ing. JOSE WALDO DE LA OSSA


Elementos de los protocolos de transporte
2 Tipos de nmeros de puerto

La Autoridad de nmeros asignados de Internet (IANA) asigna


nmeros de puerto. IANA es un organismo normativo
responsable de asegurar diferentes estndares de
direccionamiento.

Puertos bien conocidos (nmeros del 0 al 1023): estos


nmeros se reservan para servicios y aplicaciones. Por lo
general, se utilizan para aplicaciones como HTTP (servidor
Web), POP3/SMTP (servidor de correo electrnico) y Telnet.

Al definir estos puertos bien conocidos para las aplicaciones de


los servidores, las aplicaciones cliente se pueden programar
para solicitar una conexin a dicho puerto y su servicio
asociado.

Ing. JOSE WALDO DE LA OSSA


Elementos de los protocolos de transporte
2 Tipos de nmeros de puerto

La Autoridad de nmeros asignados de Internet (IANA) asigna


nmeros de puerto. IANA es un organismo normativo
responsable de asegurar diferentes estndares de
direccionamiento.

Puertos registrados (nmeros del 1024 al 49151): estos


nmeros de puerto se asignan a procesos o aplicaciones del
usuario. Estos procesos son principalmente aplicaciones
individuales que el usuario elige instalar en lugar de
aplicaciones comunes que recibira un puerto bien conocido.

Ing. JOSE WALDO DE LA OSSA


Elementos de los protocolos de transporte
2 Tipos de nmeros de puerto

La Autoridad de nmeros asignados de Internet (IANA) asigna


nmeros de puerto. IANA es un organismo normativo
responsable de asegurar diferentes estndares de
direccionamiento.

Puertos dinmicos o privados (nmeros 49152 a 65535):


tambin conocidos como puertos efmeros, estn usualmente
asignados de forma dinmica a las aplicaciones cliente cuando
se inicia una conexin.

Ing. JOSE WALDO DE LA OSSA


Elementos de los protocolos de transporte
2 Tipos de nmeros de puerto

Puerto/protocolo Descripcin
7/tcp Protocolo Echo (Eco) Responde con eco a llamadas remotas
7/udp Protocolo Echo (Eco) Responde con eco a llamadas remotas

20/tcp FTP File Transfer Protocol (Protocolo de Transferencia de Ficheros) - datos


21/tcp FTP File Transfer Protocol (Protocolo de Transferencia de Ficheros) - control
22/tcp SSH, scp, SFTP

23/tcp Telnet manejo remoto de equipo, inseguro


25/tcp SMTP Simple Mail Transfer Protocol (Protocolo Simple de Transferencia de Correo)
53/tcp DNS Domain Name System (Sistema de Nombres de Dominio)
53/udp DNS Domain Name System (Sistema de Nombres de Dominio)
67/udp BOOTP BootStrap Protocol (Server), tambin usado por DHCP
68/udp BOOTP BootStrap Protocol (Client), tambin usado por DHCP

69/udp TFTP Trivial File Transfer Protocol (Protocolo Trivial de Transferencia de Ficheros)
80/tcp HTTP HyperText Transfer Protocol (Protocolo de Transferencia de HiperTexto) (WWW)

Ing. JOSE WALDO DE LA OSSA


Elementos de los protocolos de transporte
2 Tipos de nmeros de puerto
Puerto/protocolo Descripcin

88/tcp Kerberos Agente de autenticacin


110/tcp POP3 Post Office Protocol (E-mail)

135/tcp epmap
137/tcp NetBIOS Servicio de nombres
137/udp NetBIOS Servicio de nombres
138/tcp NetBIOS Servicio de envo de datagramas
138/udp NetBIOS Servicio de envo de datagramas
139/tcp NetBIOS Servicio de sesiones
139/udp NetBIOS Servicio de sesiones
143/tcp IMAP4 Internet Message Access Protocol (E-mail)

389/tcp LDAP Protocolo de acceso ligero a Bases de Datos


389/udp LDAP Protocolo de acceso ligero a Bases de Datos
443/tcp HTTPS/SSL usado para la transferencia segura de pginas web
445/tcp Microsoft-DS (Active Directory, comparticin en Windows, gusano Sasser, Agobot)
445/udp Microsoft-DS comparticin de ficheros

Ing. JOSE WALDO DE LA OSSA


Elementos de los protocolos de transporte
2 Tipos de nmeros de puerto
Puerto/protocolo Descripcin
465/tcp SMTP Sobre SSL. Utilizado para el envo de correo electrnico (E-mail)

500/udp IPSec ISAKMP, Autoridad de Seguridad Local


520/udp RIP
993/tcp IMAP4 sobre SSL (E-mail)
995/tcp POP3 sobre SSL (E-mail)
1080/tcp SOCKS Proxy
1433/tcp Microsoft-SQL-Server
1434/tcp Microsoft-SQL-Monitor
1434/udp Microsoft-SQL-Monitor

1521/tcp Oracle listener por defecto


1701/udp Enrutamiento y Acceso Remoto para VPN con L2TP.
1720/udp H323.
1723/tcp Enrutamiento y Acceso Remoto para VPN con PPTP.
1761/tcp Novell Zenworks Remote Control utility
1863/tcp MSN Messenger

Ing. JOSE WALDO DE LA OSSA


Elementos de los protocolos de transporte
2 Tipos de nmeros de puerto
Puerto/protocolo Descripcin
2049/tcp NFS Archivos del sistema de red
3074/tcp Xbox Live
3074/udp Xbox Live
3128/tcp HTTP usado por web caches y por defecto en Squid cache

3306/tcp MySQL sistema de gestin de bases de datos


3389/tcp RDP (Remote Desktop Protocol) Terminal Server
3690/tcp Subversion (sistema de control de versiones)
4662/tcp eMule (aplicacin de comparticin de ficheros)
4672/udp eMule (aplicacin de comparticin de ficheros)
RAdmin (Remote Administrator), herramienta de administracin remota
4899/tcp (normalmente troyanos)
5000/tcp Universal plug-and-play
5060/udp Session Initiation Protocol (SIP)
5190/tcp AOL y AOL Instant Messenger

5432/tcp PostgreSQL sistema de gestin de bases de datos


5631/tcp PC-Anywhere protocolo de escritorio remoto
5632/udp PC-Anywhere protocolo de escritorio remoto

Ing. JOSE WALDO DE LA OSSA


Elementos de los protocolos de transporte
2 Tipos de nmeros de puerto
Puerto/protocolo Descripcin
5500/tcp VNC protocolo de escritorio remoto (usado sobre HTTP)
5600/tcp VNC protocolo de escritorio remoto (usado sobre HTTP)
5700/tcp VNC protocolo de escritorio remoto (usado sobre HTTP)
5800/tcp VNC protocolo de escritorio remoto (usado sobre HTTP)
5900/tcp VNC protocolo de escritorio remoto (conexin normal)
6000/tcp X11 usado para X-windows
6346/tcp Gnutella comparticin de ficheros (Limewire, etc.)
6667/tcp IRC IRCU Internet Relay Chat
6881/tcp BitTorrent puerto por defecto
6969/tcp BitTorrent puerto de tracker
8080/tcp HTTP HTTP-ALT ver puerto 80. Tomcat lo usa como puerto por defecto.
8118/tcp privoxy
9898/tcp Gusano Dabber (troyano/virus)
10000/tcp Webmin (Administracin remota web)
19226/tcp Panda SecurityPuerto de comunicaciones de Panda Agent.
12345/tcp NetBus en:NetBus (troyano/virus)
31337/tcp Back Orifice herramienta de administracin remota (por lo general troyanos)
Ing. JOSE WALDO DE LA OSSA
Elementos de los protocolos de transporte
3 Estados de TCP

En TCP se describen los diferentes estados por los que pasa


una conexin desde su establecimiento hasta su terminacin,
incluyendo la etapa de transferencia de la informacin.

Los nombres de los estados TCP son los mismos que se


pueden consultar con la llamada al sistema netstat.

Ing. JOSE WALDO DE LA OSSA


Elementos de los protocolos de transporte
3 Estados de TCP

El estado ESTABLISHED se corresponde con la


transferencia de la informacin.

El resto de los estados se corresponden con el


establecimiento y la terminacin de la conexin, teniendo en
cuenta todas las maneras posibles de establecer y cerrar una
conexin en el TCP.

Los smbolos SYN, RST, FIN y ACK se corresponden con los


bits de indicacin de la cabecera TCP.

Consulte en Internet los diferentes estados de una


conexin TCP.

Ing. JOSE WALDO DE LA OSSA


Lectura complementaria

Capitulo 4 Curso CCNA Cisco


http://www.iana.org/assignments/port-numbers

Ing. JOSE WALDO DE LA OSSA


Muchas gracias por su atencin !

Lo ms seguro es no
ponerse en peligro

Francisco Quevedo (1580-1616)

Ing. JOSE WALDO DE LA OSSA

Das könnte Ihnen auch gefallen