Está en la página 1de 35

1

ESCUELA ACADMICO
PROFESIONAL DE
INGENIERA DE SISTEMAS
2
SESIN N09

CONTENIDO CONCEPTUAL

9.1 Capa de Transporte.

Recordando
Datos de
usuario
Segmento de Aplicacin
14
Datos de
usuario
Head
Aplic.
Datos de
Aplicacin
Head
TCP
Datos de
Aplicacin
Head
Transp.
Head
IP
Datagrama IP
Datos de
Aplicacin
Head
Transp.
Head
Internet
Head
Ethernet
20 20 4
46 a 1500 Bytes
Trama Ethernet
Cola
Ethernet
Red
Fsica
Aplicacin
TCP
IP
Driver
Ethernet
Protocolos de acceso de red
Internet Protocol (IP)
Transmission Control Protocol (TCP) UDP
OSPF ICMP
BGP FTP HTTP SNMP TELNET SMTP
MIME
Recordando
Funciones de la capa de transporte
Segmentacin y
Reensamblaje de
Datos
Identificacin de las
aplicaciones (manejo
de puertos)
Incorporacin de protocolos
segn las aplicaciones
Separacin de
comunicaciones mltiples
(multiplexacin)
Protocolos de la capa de transporte
Protocolo de datagramas de usuario (UDP).-
UDP es un protocolo simple, no orientado a conexin.
Descrito en la RFC 768.
Provee la entrega de datos sin utilizar muchos recursos.
Enva los datagramas como "mejor intento".

Protocolo de control de transmisin (TCP).-
Protocolo orientado a la conexin
Descrito en la RFC 793.
Realiza funciones de entrega confiable
Realiza control de flujo.

Protocolos de la capa de transporte
Protocolo de Control de Transmisin
El Protocolo de Control de Tranmisin (TCP) fue creado entre los aos
1973 - 1974 por Vinton Cerf y Robert Kahn.
Reemplaz al protocolo NCP utilizado en Arpanet.
Constituye uno de los protocolos fundamentales en Internet.
Se encuentra documentado en el RFC 793.
El protocolo garantiza que los datos sern entregados en su destino sin
errores y en el mismo orden en que se transmitieron.
Brinda soporte a las aplicaciones ms populares de Internet (HTTP, FTP,
SMTP, etc.)
Qu ofrece TCP?
1. TCP es un protocolo orientado a conexin que asegura que los
datos se entreguen de manera confiable, en secuencia y sin
errores.
2. TCP proporciona control de flujo de datos, lo que permite al
receptor regular la cantidad de datos que el emisor debe enviar a
travs de un mecanismo de ventanas
3. TCP proporciona un mecanismo para distinguir distintas
aplicaciones dentro de una misma mquina (concepto de Puerto)
4. TCP permite saber si un datagrama lleg adecuadamente al host
receptor (acuse de recibo)
5. TCP se encarga de finalizar las conexiones en forma ordenada
6. TCP es un protocolo que se ajusta a las condiciones
de la red


Arquitectura TCP
Datos TCP
0 3 9 15
23 31
Opciones (si existen) Relleno
Suma de verificacin Puntero de urgencia
HLEN Reservado Code Bits Ventana
Nmero de acuse de recibo
Nmero de secuencia
Puerto fuente Puerto destino
C
a
b
e
c
e
r
a

(
2
4

b
y
t
e
s
)

Encapsulamiento TCP en IP
Datos TCP
Opciones (si existen) Relleno
Suma de
verificacin
Puntero
de urgencia
Hlen Rsv.
Code
Bits
Ventana
Nmero de acuse de recibo
Nmero de secuencia
Puerto fuente Puerto destino
CABECERA IP
Options
Ver Hlen TOS Total Lenght
Identification Fragment Off. Flag
TTL Protocol Checksum
Source IP Adress
Destination IP Adress
C
a
b
e
c
e
r
a

I
P

2
0

b
y
t
e
s

0 4 8 16 19 31
4
0

b
y
t
e
s

0 3 9 15 23 31
2
4

b
y
t
e
s

Campos del Protocolo TCP
Datos TCP
Opciones (si existen) Relleno
Suma de
verificacin
Puntero
de urgencia
Hlen Rsv.
Code
Bits
Ventana
Nmero de acuse de recibo
Nmero de secuencia
Puerto fuente Puerto destino
0 3 9 15 23 31
2
4

b
y
t
e
s

Puerto de fuente y destino:
Identifican los programas de aplicacin
en los extremos de la comunicacin.

Nmero de secuencia:
Indica la posicin de los datos en el
flujo de datos de origen. Indica el valor
del primer byte del segmento
transmitido.

Nmero de acuse de recibo:
Contiene el valor del siguiente nmero
de secuencia (siguiente byte) que se
espera recibir.

Datos TCP
Opciones (si existen) Relleno
Suma de
verificacin
Puntero
de urgencia
Hlen Rsv.
Code
Bits
Ventana
Nmero de acuse de recibo
Nmero de secuencia
Puerto fuente Puerto destino
0 3 9 15 23 31
2
4

b
y
t
e
s

HLEN:
Indica la longitud de la cabecera TCP.

Reservado:
Reservado para uso futuro.

Code Bits:
Indica el contenido del segmento
URG Campo Puntero de Urgencia es vlido
ACK Campo Acuse de Recibo es vlido
PSH Solicitud de una Peticin Forzada
RST Reinicio de la conexin
SYN Sincronizar nmero de secuencia
FIN El emisor finaliza el flujo de datos
Campos del Protocolo TCP
Campos del Protocolo TCP
Datos TCP
Opciones (si existen) Relleno
Suma de
verificacin
Puntero
de urgencia
Hlen Rsv.
Code
Bits
Ventana
Nmero de acuse de recibo
Nmero de secuencia
Puerto fuente Puerto destino
0 3 9 15 23 31
2
4

b
y
t
e
s

Ventana:
Especifica cuntos datos est
dispuesto a aceptar el receptor por
cada segmento enviado. Indica el
tamao de la memoria intermedia.

Suma de Verificacin:
Verifica y comprueba la integridad de
los datos y la cabecera TCP (con
Pseudo-cabecera IP)

Puntero de Urgencia:
Indica la posicin del segmento en
dnde terminan los datos urgentes.
Permite enviar datos fuera de banda.
Pseudo cabecera IP
0 3 9 15 23 31
Data
Opciones (si existen) Relleno
Suma de verificacin Puntero de urgencia
HLEN Reservado Code Bits Ventana
Nmero de acuse de recibo
Nmero de secuencia
Puerto fuente Puerto destino
00 Protocolo (IP) Longitud TCP
Direccin IP de destino
Direccin IP de origen
Pseudo
cabecera
Segmento
TCP
Cabecera
TCP
Datos TCP
0 0 0 0
Clculo del
Checksum
Proceso de Acuse de Recibo (ACK)
MENSAJES
EN LA RED
Envo del
segmento 1
Envo del
segmento 2
Recepcin del
ACK 1
Recepcin del
segmento 1
Envo del ACK 1
EMISOR RECEPTOR
Recepcin del
segmento 2
Envo del ACK
2
Recepcin del
ACK 2
ACK para retransmisin
MENSAJES
EN LA RED
Envo del
segmento 1
Re-envo del
segmento 1
Debera recibir
ACK 1
Debera llegar
segmento 1
Debera enviar
ACK 1
EMISOR RECEPTOR
Recepcin del
segmento 1
Envo del ACK
1
Recepcin del
ACK 1
FIN DEL TEMPORIZADOR
Segmento
Perdido
Recibo SYN
ACK (x+1)
seq=y
Establecimiento de conexin
MENSAJES
EN LA RED
Envo SYN
seq=x
Envo ACK
(y+1)
seq=(x+1)
Recibo SYN seq=x
Envo SYN ACK
(x+1) seq=y
EMISOR RECEPTOR
Establezco
conexin
Finalizacin de conexin
Recibo ACK
(x+1)
MENSAJES
EN LA RED
Envo SYN
seq=x (terminar
conexin)
Envo ACK (y+1)
(conexin
terminada)
Recibo
segmento FIN
Envo ACK (x+1)
Recibo ACK (y+1)
(conexin
terminada)
Recibo FIN y ACK
(y)
Envo FIN y ACK
(y)
EMISOR RECEPTOR
Inconvenientes del ACK
Duplicidad en el envo de segmentos y de la seal ACK .
Solucin:



Mal uso del ancho de banda de la red . Se enviar un
nuevo segmento slo si se recibe la seal ACK
Solucin:
Asignar a cada segmento un nmero de secuencia
Utilizacin de la ventana deslizante
Concepto de Ventana Deslizante
Es un algoritmo por el cual se toman un grupo determinado de bits
dentro de una ventana y se envan sin esperar el ACK de cada uno
de ellos.
El mecanismo de ventana deslizante, controla que el transmisor
mande informacin dentro de los lmites del buffer del receptor
Se envan varios segmentos antes de recibir un acuse de recibo
(ACK) .
Permite la utilizacin del ancho de banda de manera ms eficiente.
El protocolo define un tamao de ventana y se transmiten todos los
segmentos que encajen en la ventana.
0 1 2 3 4 5 6 7 8 9
Ventana deslizante
Concepto de Ventana Deslizante
1. Se definen una ventana de n segmentos (ejemplo n=2)
0 1 2 3 4 5 6 7 8 9


0 1 2 3 4 5 6 7 8 9


0 1 2 3 4 5 6 7 8 9


2. Se envan dos segmentos
3. Se recibe el ACK de los segmentos enviados y se desliza la ventana
0 1 2 3 4 5 6 7 8 9
0 1
8 9
Regiones de una Ventana TCP
0 1 2 3 4 5 6 7 8 9 10 11

2 3 4 5 6 7 8 9 0 1 10 11
Bytes enviados
y reconocidos
Bytes que no se
enviarn si la
ventana no se mueve
Bytes enviados pero
faltan reconocer
Bytes no enviados pero
se enviarn sin retardo
Ventana activa
Mensajes en una Ventana
MENSAJES
EN LA RED
Envo del segmento 1
Envo del segmento 2
Recepcin del
ACK 1
Recepcin del segmento 1
Recepcin del segmento 2
Recepcin del
ACK 2
EMISOR RECEPTOR
Envo ACK 1
Envo ACK 2
Se envan segmentos 1 y 2
antes de enviar el ACK
Control de Flujo en TCP
Contribuye con la confiabilidad de la transmisin TCP.
El campo Nmero de secuencia especifica el nmero del primer byte del
segmento que se transmite luego de recibir el ACK
El campo Acuse de recibo especifica el nmero del prximo byte
esperado
El campo Tamao de
Ventana especifica la
cantidad de bytes que
sern transmitidos.

Uso de la Ventana Deslizante
Problemas de la Ventana Deslizante
Sndrome de la ventana tonta
Se da cuando la velocidad del transmisor es mayor a la del receptor o
a la del medio.
Solucin
RFC1122: Plantea un control de ventana segn el tiempo de espera del
ACK

Tiempo lmite para la retransmisin (timeout)
Se da cuando expira el temporizador de ACK
Soluciones:
Algoritmo de Van Jacobson: Actualiza el timeout al ltimo tiempo de
ACK recibido.
Algoritmo de Karn: Se dobla automticamente el tiempo de timeout
hasta que el ACK llega sin timeout.

El concepto de Puerto
Un puerto es un nmero de 16 bits, empleado por TCP para
identificar a que protocolo del nivel superior o programa de aplicacin se
deben entregar los mensajes recibidos.
Los nmeros de puertos son controlados y asignados por IANA
Un SOCKET combinacin el nmero del puerto de la capa de Transporte
con una direccin IP de la capa de Red asignada al host. Se utiliza para
identificar un proceso en particular que la PC est ejecutando.
Por ejemplo, Un host que realiza una solicitud Web a un servidor, con
direccin IP 45.92.100.20, tendr un socket: 45.92.100.20:80.

Tipos de puertos
Tipos de puertos
Algunos Puertos bien conocidos
Puerto Descripcin
20/tcp FTP (File Transfer Protocol datos)
21/tcp FTP (File Transfer Protocol control)
23/tcp Telnet (comunicaciones de texto inseguras)
25/tcp SMTP (Simple Mail Transfer Protocol)
53/tcp y udp DNS (Sistema de Nombres de Dominio)
67/udp DHCP (Server)
68/udp DHCP (Client)
80/tcp HTTP (Protocolo de Transferencia de HiperTexto)
88/tcp Kerberos (Agente de autenticacin)
110/tcp POP3 (Post Office Protocol Email)
1863/tcp MSN Messenger (Sistema de Mensajera)
4662/tcp eMule (aplicacin de comparticin de ficheros)
9898/tcp Gusano Dabber (troyano/virus)
http://www.ietf.org/rfc/rfc1700.txt
Estos puertos se
encuentran
asignados en el
RFC 1700
El comando Netstat
El comando <netstat> permite conocer las conexiones TCP activas que se
encuentran en un host. Se utiliza para verificar las conexiones TCP; ya que las
conexiones TCP no descritas pueden representar una importante amenaza a la
seguridad.

Puerto de
Origen
Protocolo
Direccin o nombre
del host remoto
Puerto de Destino Estado de la conexin
Protocolo UDP
Est definido en la RFC 768
Proporciona los mecanismos para que una aplicacin enve
datagramas a otra aplicacin.
UDP suministra puertos para distinguir varias aplicaciones que se
ejecutan en una misma mquina; es decir realiza procesos de
multiplexacin y demultiplexacin.
Es un protocolo NO confiable y NO orientado a conexin.
UDP tiene las siguientes caractersticas:
No emplea acuse de recibo.
No ordena los mensajes entrantes.
No controla la velocidad de los datos en la red.
Sus principales aplicaciones son: DNS y SNMP
Formato UDP
Suma de verificacin UDP:
Es opcional (para ahorrar tiempo de procesamiento)
Datos
Longitud del mensaje UDP Suma de verificacin UDP
Puerto UDP de origen
0 15 16 31
Puerto UDP de destino
Longitud del mensaje UDP:
Indica el tamao en bytes del datagrama UDP (Cabecera + Datos)
Puerto de origen y puerto de Destino:
Son utilizados para la identificar a las aplicaciones en los host de
comunicacin.
Comparacin Final
Protocolo TCP Protocolo UDP
Orientado a Conexin No orientado a conexin
Permite identificar aplicaciones Permite identificar aplicaciones
Realiza multiplex. y demultiplex. Realiza multiplex. y demultiplex.
Realiza Suma de Verificacin Realiza Suma de Verificacin
Realiza control de flujo No realiza control de flujo
Garantiza entrega confiable No garantiza entrega confiable
Requiere establecer conexiones No requiere establecer conexiones
Permite el envo de ACK No permite el envo de ACK
Puede ordenar los mensajes No puede ordenar los mensajes
Soporta Telnet, FTP, HTTP, etc. Soporta DNS, RIP, VoIP, etc.

También podría gustarte