Вы находитесь на странице: 1из 64

Modelo TCP/IP Modelo TCP/IP

Orgenes Orgenes

Modelo Modelo General General

Direccionamiento Direccionamiento IPv4 IPv4

Clases de Clases de Redes Redes Estudio de Estudio de Protocolos Protocolos

Mscara Mscara de Subred de Subred

CIDR CIDR

ARP ARP Direccionamiento Direccionamiento MAC MAC Tramas Tramas Ethernet Ethernet Tabla Tabla ARP ARP

ICMP ICMP Formato Formato Mensaje Mensaje Cdigos Cdigos de error de error Cdigos Cdigos Solicitud / Solicitud / Respuesta Respuesta

IPv4 IPv4 Formato Formato Datagrama IP Datagrama IP Encaminamiento Encaminamiento de Datagramas de Datagramas

UDP UDP Caractersticas y Caractersticas y funcionalidad funcionalidad Formato Formato Datagrama UDP Datagrama UDP

TCP TCP Caractersticas y Caractersticas y funcionalidad funcionalidad Formato Formato Segmento TCP Segmento TCP Establecimiento Establecimiento Conexin Conexin Desconexin Desconexin 1

Arquitectura TCP/IP
NDICE

Objetivo:

Describir y analizar la familia de protocolos TCP-IP

Qu vamos a estudiar?

Direccionamiento MAC/IP. Protocolos ARP, RARP Protocolo de sealizacin ICMP Protocolo de red IP. Protocolos de transporte TCP/UDP.

Documentacin adicional

RFC (Request For Comments): http://www.rfc-editor.org/rfc.html TCP/IP Illustrated. Vol.1 W.R. Stevens, Addsion Wesley

SITR: TCP/IP

Familia Protocolos TCP/IP


Capa Aplicacin
PING

Telnet

FTP

SMTP

HTTP

SNMP

BOOTP

NFS/RPC

DNS

Capa Transporte

TCP

UDP

Capa Red

ICMP

IP

IGMP

Capa Enlace

ARP

Enlace

RARP

Medio Fsico
SITR: TCP/IP 3

Protocolos (1)

El origen de esta familia de protocolos fue la red ARPANET (en ella se desarrollaron los conceptos fundamentales de diseo y gestin de redes) Los niveles ms bajos (enlace y fsico) no estn implementados ya que se dise para no depender de una red fsica concreta

Los protocolos ARP (Adress Resolution Protocol) y RARP (Reverse Adress Resolution Protocol) se encargan de enlazar los sistemas de direccionamiento IP y el de la red fsica utilizada

SITR: TCP/IP

Protocolos (2)

Capa de Red:

La base de la familia de protocolos es el nivel de Red (IP Internet Protocol). Es un protocolo de conmutacin de paquetes muy sencillo, de tipo datagrama, de forma que se pueda implementar en cualquier tipo de mquina. A diferencia de OSI, no se distingue claramente entre servicio, interfaz y protocolo (est entremezclado) Existen actualmente dos versiones IPv4, IPv6 Protocolos de apoyo: ICMP (Internet Control Message Protocol) : comunicacin de mensajes entre nodos de la red IGMP (Internet Group Mangement Protocol) : envo de mensajes a grupos de usuarios

SITR: TCP/IP

Protocolos (3)

La capa de transporte:

Implementa protocolos extremo a extremo (entre nodo origen y destino de la informacin). Se definen dos protocolos: TCP (Transmission Control Protocol):

Es un protocolo orientado a la conexin con control de errores Se encarga tambin del control de flujo Troceado y reensamblado de flujos (garanta de secuenciamiento) Es un protocolo sin conexin (datagrama) No realiza control de errores No garantiza el secuenciamiento de la informacin Es muy rpido til para peticiones aisladas, o transmisin de audio o vdeo.
SITR: TCP/IP 6

UDP (User Datagram Protocol) :


Protocolos (4)

Capa Aplicacin: (protocolos de alto nivel) Protocolos basados en ICMP:


PING : solicitud de eco

Protocolos basados en TCP:


TELNET: terminal remoto FTP (File Transfer Protocol): transmisin de ficheros SMTP (Simple Mail Transfer Protocol): correo electrnico HTTP (HyperText Transfer Protocol: pginas web RPC (Remote Procedure Call): ejecucin de procesos remotos

Protocolos basados en UDP:


SNMP (Simple Network Management Protocol): gestin de red BOOTP : arranque remoto DNS (Domain Name System) RPC (Remote Procedure Call): ejecucin de procesos remotos

NFS/RPC (Network File System) (gestin de ficheros en red)

SITR: TCP/IP

Direccionamiento IPv4 (1)


Las direcciones IPv4 tienen una longitud de 32 bits (4 bytes) Tienen dos partes :

Parte de red Parte de subred/nodo Clase A Clase B Clase C


Red 0xxx xxxx Subred/Nodo

Clases de direcciones:

xxxx xxxx

.
.

xxxx xxxx

.
.

xxxx xxxx

1111 1111 .
Red 10xx xxxx

Mscara

Subred/Nodo xxxx xxxx

xxxx xxxx

.
.

xxxx xxxx

1111 1111 . 1111 1111 .


Red 110x xxxx

Mscara

Subred/Nodo

xxxx xxxx

xxxx xxxx

xxxx xxxx

1111 1111 . 1111 1111 . 1111 1111 .


SITR: TCP/IP

Mscara
8

Direccionamiento IPv4 (2)


Multicast (28 bits)

Clase D

1110 xxxx

xxxx xxxx

xxxx xxxx

xxxx xxxx

Clase E
11110 xxx

Futuras ampliaciones (27 bits)

xxxx xxxx

xxxx xxxx

xxxx xxxx

Clase
A B C D E

Rangos de direcciones IP Mscara Nodos por Dir. clase Comienzo


16.777.214 255.0.0.0 65534 255.255.0.0 254 255.255.255.0 0.0.0.0 128.0.0.0 192.0.0.0 224.0.0.0 240.0.0.0

Dir. final
127.255.255.255 191.255.255.255 223.255.255.255 239.255.255.255 255.255.255.255

Rangos de direcciones IP reservadas


Clase A B C Mscara 255.0.0.0 255.255.0.0 255.255.255.0 Dir. Comienzo 10.0.0.0 172.16.0.0 192.168.0.0 Dir. Final 10.255.255.2555 172.31.255.255 192.168.255.255

SITR: TCP/IP

Direccionamiento IPv4 (3)


Mscara de Subred:

Una red se puede dividir en subredes El campo de Subred/Mquina se puede dividir en: Direccionamiento de subredes Direccionamiento de mquinas (dentro de la subred)
Red Subred xxxx xxxx Nodo

Clase B

10xx xxxx

xxxx xxxx

xxxx xxxx

1111 1111 . 1111 1111 . 11111111 .

Mscara
Mscara de Subred (permite calcular si un paquete debe ser enviado fuera de la subred) Mquina 5

Ejemplo:

147. 125.

3.

Red clase 147.125


SITR: TCP/IP

Subred 3
10

Direccionamiento IPv4 (4)


Utilizacin de la mscara de red:


Mscara 11111111 .11111111.11111111 . 0 Direccin IP destino 147.123.6.67 147.123.3.5

Direccin IP adaptador origen

AND

AND

147.123.3.0

147.123.6.0

XOR Si el resultado es 0 pertenecen a la misma subred. 0. 0. 5 .0 El valor 5 indica que pertenecen a subredes diferentes
SITR: TCP/IP 11

Direccionamiento IPv4 (5)


Direccionamiento de mquina

Existen dos valores de los bits del campo de mquina reservados: 0000 0000 (todos los bits a 0) identifica la red/subred 1111 1111 (todos los bits a 1) direccin de broadcast (envo simultneo de paquetes a todas las mquinas conectadas a la subred) Por seguridad el uso de paquetes de broadcast est limitado a la subred. Ejemplo: 255. 255. 255. 0
147. 125. 3. 0 147. 125. 3. 255
Clase B Subred
SITR: TCP/IP 12

Mscara de Subred Identificador de la subred 147.125.3 Paquete de broadcast a toda la subred 147.125.3

Direccionamiento IPv4 (6)


Bucle local (Loopback Driver):


Es una interface que permite a un cliente y un servidor estar situados en la misma mquina. Se reserva el identificador de red 127. Generalmente se usa la direccin 127.0.0.1 Se le asigna el nombre localhost
IP 194.136.32.1 TCP Mensaje destino 194.136.32.1 Mensaje 127.0.0.1

IP

Mensaje a Loopback Driver


SITR: TCP/IP 13

Direccionamiento IPv4 CIDR


Implementa un mtodo de enrutamiento interdominios sin clases (RFC 1519) Las redes de clase B son demasiado grandes y las de clase C son demasiado pequeas CIDR permite unir varias redes de clase C contiguas, marcando los bits de la mscara de red como mquina (bit a 0)
Red 194 Nodo

169

1000 10xx

xxxx xxxx

1111 1111 . 1111 1111 . 1111 1100 . 000 0000


Mscara
Bits CIDR Unin de redes Clase C

Estn clasificados por regiones para facilitar las tareas de enrutamiento


Regin Europa Norteamrica Centro y Sudamrica Asia y Pacfico Reserva Dir. Comienzo 194.0.0.0 198.0.0.0 200.0.0.0 202.0.0.0 204.0.0.0
SITR: TCP/IP

Dir. final 195.255.255.255 199.255.255.255 201.255.255.255 203.255.255.255 205.255.255.255


14

Ejemplo Direccionamiento IP

Para la red mostrada en la figura se pide:


Asignar una direccin IP de Red de clase C Especificar la mscara de subred adecuada para cada una de las subredes Asignar las direcciones IP de cada subred. Asignar las direcciones IP a cada nodo (Estaciones y Routers).

15

RED INTERNET

GATEWAY

....... (16 PCs)...

PUENTE/ROUTER

....... (62 PCs)...

....... (32 PCs)...

SITR: TCP/IP

16

Nivel de Enlace LLC/MAC (1)


Como comentamos, TCP/IP no define el nivel de enlace Estudiaremos un caso muy usual: disponer de un adaptador de Red Ethernet Existen dos tipos de tramas : IEEE 802.2/802.3(RFC 1042) Ethernet (RFC 894)

Encapsulacin IEEE 802.2/802.3 (RFC 1042)


MAC Destino 6 MAC Fuente 6 DSAP SSAP 1 1 Cntl 1 Org. Code 3 Tipo 2

Long. 2

Datos: Datagrama IP 38-1492

CRC
4

Cabecera Encapsulacin Ethernet (RFC 894)


MAC Destino 6 MACFuente 6 Tipo 2

Datos: Datagrama IP 46 - 1500 SITR: TCP/IP

CRC
4

Cabecera

20

Nivel de Enlace LLC/MAC (2)


MTU (Maximun Transmission Unit)


Depende del tipo de adpatador de red Si un datagrama IP es mayor que el MTU se fragmenta (a nivel IP) Se puede averiguar ejecutando el comando netstat -i

$ netstat -i Name lo0 hme0 Mtu Net/Dest 8232 loopback 1500 lorca Address localhost lorca Ipkts Ierrs Opkts Oerrs Collis Queue 1375284 0 1375284 0 0 0 7246270 70 6586492 1 619142 0

SITR: TCP/IP

21

Direccionamiento MAC

Para que un datagrama IP alcance su destino es preciso conocer su direccin fsica Se trata de una combinacin de 48 bits agrupados en 6 bytes, Los tres primeros bytes identifican al fabricante Los tres ltimos bytes identifican la tarjeta La direccin MAC es nica e irrepetible Existe una direccin reservada que tiene todos los bits a 1 FF:FF:FF:FF:FF:FF, se utiliza para enviar una trama a todas las mquinas de la red (broadcast)
02:60:8C:0D:0A:5C
Fabricante: 3Com
22

SITR: TCP/IP

Direccionamiento MAC

Para conocer la direccin MAC propia basta con interrogar al adaptador de red

Windows 95: Windows NT/2000/XP: UNIX/Linux:

winipcfg ipconfig ifconfig

SITR: TCP/IP

23

Familia Protocolos TCP/IP


Capa Aplicacin
PING

Telnet

FTP

SMTP

HTTP

SNMP

BOOTP

NFS/RPC

DNS

Capa Transporte

TCP

UDP

Capa Red

ICMP

IP

IGMP

Capa Enlace

ARP

Enlace

RARP

Medio Fsico
SITR: TCP/IP 24

Protocolo ARP (1)


Para enviar un datagrama necesitamos tambin la direccin MAC de destino Protocolo ARP (Address Resolution Protocol) obtiene la direccin MAC correspondiente a una direccin IP

Enva una trama de Peticin ARP a todas las mquinas de la red (broadcast) El protocolo ARP de la mquina destino verifica que el solicitante pide su direccin IP. Emite una trama de Respuesta ARP incorporando su direccin MAC e IP Se recibe la respuesta guardando el resultado en una tabla, pudiendo emitir a partir de entonces datagramas IP
SITR: TCP/IP 25

Protocolo ARP (2)


02:60:8C:0D:0A:5C 02:60:8C:0D:0A:5D 02:60:8C:0D:0A:5E

192.147.136.7

192.147.136.8

192.147.136.9

ARP Reply(02:60:8C:0D:0A:5E)

ARP Request 192.147.136.9 (Broadcast) Cabecera Ethernet


MACSRC 6 Hard type 2 Prot type 2 1 1 Hard Size Prot Size MAC DST 6 -

TRAMA ARP
Snd MAC Addr
6

Type 2

OP 2

Snd IP Addr
4

Target MAC Addr


6

Target IP Addr
4

Type: 0x0806 (trama ARP) Hard type: 1 (Ethernet) Prot. type: 0x0800 (IP) Hard size: 6 (bytes dir. MAC) Prot size: 4 (bytes dir. IP)

OP: tipo de operacin 1: ARP request 2: ARP reply 3: RARP request 4: RARP reply
SITR: TCP/IP 26

Protocolo ARP (3)


Los datos se almacenan en una tabla dinmica:


el comando arp -a nos muestra la tabla de ARP con la relacin entre direcciones MAC e IP El plazo normal de expiracin de una entrada es de 20 minutos despus de su creacin (Depende del S.O.)
Mask Flags Phys Addr --------------- ----- --------------255.255.255.255 00:60:08:64:39:07 255.255.255.255 00:e0:1e:3d:fe:83 255.255.255.255 00:a0:c9:78:75:bb 255.255.255.255 SP 08:00:20:a2:55:fe SM 01:00:5e:00:00:00

$ arp -a Net to Media Table Device IP Address ------ -------------------hme0 193.147.136.216 hme0 193.147.136.1 hme0 192.168.2.20 hme0 lorca hme0

BASE-ADDRESS.MCAST.NET 240.0.0.0

El Protocolo RARP (Reverse Address Resolution Protocol) se utiliza para obtener una direccin IP en sistemas sin disco duro.
SITR: TCP/IP 27

Ejemplo: Protocolo ARP


Peticin/Respuesta ARP

28

SITR: TCP/IP

29

SITR: TCP/IP

30

Familia Protocolos TCP/IP


Capa Aplicacin
PING

Telnet

FTP

SMTP

HTTP

SNMP

BOOTP

NFS/RPC

DNS

Capa Transporte

TCP

UDP

Capa Red

ICMP

IP

IGMP

Capa Enlace

ARP

Enlace

RARP

Medio Fsico
SITR: TCP/IP 31

Protocolo IPv4

Datagrama IP (RFC 791)


El tamao normal de la cabecera es de 20 bytes, a no ser que presente opciones El tamao mximo del datagrama se ajusta para que quepa en el MTU del nivel de enlace.
Datagrama IP
0 Ver 4 bits HL 4 bits Identificacin 16 bits TTL 8 bits Protocolo 8 bits TOS 8 bits Flag 3 bits 15 16 Longitud Total 16 bits Fragment Offset 13 bits Suma de Control de cabecera 16 bits 31 bits

Cabecera

Direccin IP Fuente 32 bits Direccin IP Destino 32 bits

Opciones (si existen) mltiplo de 32 bits

Datos
SITR: TCP/IP 32

Cabecera IPv4 (1)


Ver: indica la versin (4) HL: longitud de la cabecera en palabras (4 bytes), normalmente vale 5 (20 bytes) pero puede alcanzar las 15 palabras (60 bytes) cuando se utilizan las opciones de marcado de rutas. TOS: Tipo de servicio. Los tres primeros bits son ignorados, los 4 bits siguientes representan el TOS y el ltimo vale siempre 0. Cada bit selecciona un tipo de comportamiento (solo uno puede estar activado): 1: Minimiza el Retardo 2: Minimiza el Caudal 3: Maximiza la fiabilidad 4: Minimiza Coste Si todos estn a 0 significa servicio normal Longitud Total: tamao en bytes del datagrama IP incluyendo la cabecera (mximo valor 65535)

SITR: TCP/IP

33

Cabecera IPv4 (2)


Identificacin:permite marcar de forma nica cada datagrama enviado por una mquina (16 bits) Asegura la secuenciacin Asociado al mecanismo de fragmentacin, su valor se copia en todos los trozos de datagrama que componen el datagrama original) Flag: El tercer bit indica (si est a uno) que hay fragmentacin more fragments (se fragmenta si se ha superado el MTU) El ltimo fragmento coloca el bit a 0 El segundo bit del capo Flag se denomina dont fragment. Si est activado, fuerza un mensaje de error si el datagrama debe ser fragmentado y lo elimina. Fragment Offset: ndice del fragmento a partir del datagrama original (en bloques de 8 bytes) El campo longitud total es reajustado al tamao de cada fragmento Cada fragmento lleva su propia cabecera IP pero con el mismo identificador de datagrama

SITR: TCP/IP

34

Cabecera IPv4 (3)


TTL: (Time To Live) tiempo de expiracin del datagrama Cada nodo por el que pasa decrementa este campo Si alcanza el valor 0 el datagrama es destruido y se genera un mensaje ICMP Permite evitar que un datagrama se quede atrapado en un bucle. Protocolo: identifica el protocolo de que utiliza el datagrama IP TCP, UDP, ICMP, IGMP, .... Suma de Control: (suma complemento a 1 de palabras de 16 bits) Permite comprobar errores en la cabecera (no tiene en cuenta los datos)

Direcciones IP fuente y destino Opciones:


Permiten almacenar un registro de rutas, grabacin de tiempos de paso por los routers, restricciones de seguridad, especificar la ruta, ... Est limitado a 40 bytes
35

SITR: TCP/IP

Ejemplo: Protocolo IP

Fragmentacin IP

36

Ejemplo: Protocolo IP

SITR: TCP/IP

37

SITR: TCP/IP

38

Enrutamiento IP (1)
Si

Mecanismo:

Para mi ? No Si Para mi red ? No Tengo ruta especfica? No Tengo ruta por omisin? No Sin ruta Si Si

Mantenerlo

Host local

Enviar a travs de ARP

Host conectado directamente

Enviar al Gateway

Host remoto

Enviar al Gateway

Ruta al host remoto

$ netstat -rn Routing Table: Destination -------------------193.147.136.0 224.0.0.0 default 127.0.0.1

Gateway Flags Ref Use Interface -------------------- ----- ----- ------ --------193.147.136.16 U 3 2619 hme0 193.147.136.16 U 3 0 hme0 193.147.136.1 UG 0 12386 127.0.0.1
SITR: TCP/IP

UH

01300499

lo0
39

Enrutamiento IP (2)

Tabla de Rutas:

Direccin IP destino: mquina o una red Direccin IP del siguiente router: al que se debe enviar el datagrama Flags: G la direccin de IP de destino es una red (ruta indirecta) H la direccin de IP de destino es una mquina (ruta directa) U la ruta est en servicio D la ruta ha sido creada por redireccin M ruta modificada por redireccin Debe existir una ruta por defecto (default gateway)

SITR: TCP/IP

40

Enrutamiento IP (3)

Algoritmos de enrutamiento:

Se pueden crear rutas manualmente (esttico)


Se utiliza el comando route

La tabla de enrutamiento se actualiza tambin dinmicamente (demonios routed y gated) Existen diferentes algoritmos segn el tipo de ruta (se basan todos ellos en el intercambio de las tablas entre routers):

RIP (Routing Information Protocol): Usa una mtrica basada en saltos (rutas corta, 16 saltos) Utiliza datagramas UDP para pasar la informacin entre routers HELLO: usa una mtrica basada en retardos (rutas largas) BGP (Border Gateway Protocol) EGP (Exterior Border Protocol)

SITR: TCP/IP

41

Ejemplo Enrutamiento IP

Para la red mostrada en la figura se pide: Asignar la direccin IP de la pasarela (router) por defecto de cada nodo . Tabla de enrutamiento del router interno de la red

42

INTERNET
IP: 194.100.100.1 M: 255.255.255.192

RED Red IP: 194.100.100.0 M: 255.255.255.0

GATEWAY

Subred 1 IP: 194.100.100.0 M: 255.255.255.192


IP: 194.100.100.3 M: 255.255.255.192

....... (16 PCs)...

IP: 194.100.100.65 M: 255.255.255.192

PUENTE/ROUTER

IP: 194.100.100.66 M: 255.255.255.192

IP: 194.100.100.81 M: 255.255.255.192 IP: 194.100.100.2 M: 255.255.255.192 IP: 194.100.100.129 M: 255.255.255.128

Subred 3 IP: 194.100.100.128 M: 255.255.255.128

....... (62 PCs)...

IP: 194.100.100.34 M: 255.255.255.192

IP: 194.100.100.130 M: 255.255.255.128

IP: 194.100.100.191 M: 255.255.255.128

....... (32 PCs)...

Subred 2 IP: 194.100.100.64 M: 255.255.255.192

SITR: TCP/IP

43

Familia Protocolos TCP/IP


Capa Aplicacin
PING

Telnet

FTP

SMTP

HTTP

SNMP

BOOTP

NFS/RPC

DNS

Capa Transporte

TCP

UDP

Capa Red

ICMP

IP

IGMP

Capa Enlace

ARP

Enlace

RARP

Medio Fsico
SITR: TCP/IP 45

Protocolo ICMP (1)


Tiene como misin comunicar los mensajes de error, solicitudes y respuestas entre nodos de la red (RFC 792) Los mensajes son enviados dentro de un datagrama IP
Datagrama IP
Tipo Cdigo

Cabecera IP 20 (20-64 Grabacin de ruta)

SVT Checksum
2

Extra: Segn el tipo de mensaje


variable

Tipo (Solicitud):

0: Respuesta de eco (Ping) 8: Peticin de eco (Ping) 9: Aviso de Router 10: Solicitud de Router 13: Peticin timestamp 14: Respuesta timestamp 15: Pet. de informacin (obsoleto) 16: Resp. de informacin (obsoleto) 17: Peticin mscara direccin 18: Respuesta mscara direccin

Mensaje ICMP

Tipo (Error):
3: Destino Inaccesible 4: Cadencia demasiado elevada 5: Redireccin 11: Tiempo sobrepasado (TTL) 12: Problema de parmetros o forma

Cdigo:
0: Solicitud X: Especifica tipos de errores diferentes

SITR: TCP/IP

46

SITR: TCP/IP

47

Protocolo ICMP (2)


Existen dos tipos de mensajes:


Solicitud ICMP: Se solicita o se informa de un acontecimiento concreto que no es causa de ningn error Ejemplo: el envo de un eco, o la presencia de un router Notificacin de Error ICMP: Por ejemplo: una mquina inaccesible, una fragmentacin requerida, etc... Un mensaje de error no puede ser producido por otro mensaje de error Un mensaje de error contiene siempre la cabecera IP (20 bytes) y los 8 primeros bytes del datagrama que lo provoc (permite asociar el mensaje a un protocolo TCP/UDP y un puerto (usuario))
SITR: TCP/IP 48

Protocolo ICMP (3)


Situaciones que no producen un mensaje de error(evita las tormentas de broadcast):


Un mensaje de error ICMP Un datagrama IP o una trama enlace destinado a una direccin broadcast Un fragmento recibido fuera de secuencia Un datagrama cuya direccin fuente no ha sido emitida por una sola mquina

SITR: TCP/IP

49

Ejemplo: Protocolo ICMP


Peticin de Eco (ping)

50

SITR: TCP/IP

51

SITR: TCP/IP

52

Familia Protocolos TCP/IP


Capa Aplicacin
PING

Telnet

FTP

SMTP

HTTP

SNMP

BOOTP

NFS/RPC

DNS

Capa Transporte

TCP

UDP

Capa Red

ICMP

IP

IGMP

Capa Enlace

ARP

Enlace

RARP

Medio Fsico
SITR: TCP/IP 53

Capa Transporte: UDP


UDP es un protocolo no orientado a la conexin


Cada operacin de salida efectuada por un proceso genera un nico datagrama UDP Cada datagrama es autocontenido, no se mezclan. Cada datagrama UDP genera un datagrama IP aunque este puede ser fragmentado dependiendo del MTU UDP no ofrece garanta de secuencia (los datagramas pueden llegar desordenados) UDP no ofrece garanta de fiabilidad(los datagramas pueden ser incorrectos o no llegar) UDP no ofrece control de flujo Es misin del protocolo de nivel aplicacin el control de flujo y errores

SITR: TCP/IP

54

Datagrama UDP
Datagrama IP
Cabecera UDP
8

Cabecera IP 20

Datos UDP
variable

Datagrama UDP
0 15 16 Nmero Puerto Fuente 16 bits Longitud UDP 16 bits (cabecera + datos en bytes) Nmero Puerto Destino 16 bits Suma de Control 16 bits (cabecera + datos) 31 bits

Cabecera UDP

Datos

SITR: TCP/IP

55

Ejemplo: Protocolo UDP

Solicitud DNS: Conversin de nombre simblico a direccin IP

56

SITR: TCP/IP

57

SITR: TCP/IP

58

Familia Protocolos TCP/IP


Capa Aplicacin
PING

Telnet

FTP

SMTP

HTTP

SNMP

BOOTP

NFS/RPC

DNS

Capa Transporte

TCP

UDP

Capa Red

ICMP

IP

IGMP

Capa Enlace

ARP

Enlace

RARP

Medio Fsico
SITR: TCP/IP 59

Capa Transporte: TCP (1)


Servicio de flujo (stream) de bytes, orientado a la conexin y fiable


Precisa una etapa previa de conexin y una posterior de desconexin a la transmisin de datos El tamao de los mensajes es fijado por TCP (si el mensaje es ms grande se fragmenta) La unidad de informacin se denomina segmento No hay fronteras entre mensajes (flujo) Control de Flujo Secuenciamiento de Datos Control y Recuperacin de Errores

SITR: TCP/IP

61

Capa Transporte: TCP (2)


Es un protocolo de ventana deslizante no selectivo


Cuando TCP emite un segmento, mantiene un temporizador esperando su asentimiento por el otro extremo. Si expira el temporizador se reenva el segmento Si TCP recibe datos del otro extremo de la conexin, emite un asentimiento TCP mantiene una suma de control en su cabecera y datos. Si aparece un segmento invlido, se rechaza y no se emite asentimiento Los segmentos TCP son enviados como datagramas IP, por tanto pueden llegar desordenados. Los segmentos TCP llevan un nmero de secuencia por lo que TCP los reordena si es necesario.

SITR: TCP/IP

61

Capa Transporte: TCP (3)


Los segmentos TCP pueden llegar duplicados. TCP los elimina TCP proporciona un control de flujo (tamao de la ventana). Adecua emisor rpido con un receptor lento Una conexin TCP acta como un flujo de bytes. TCP no interpreta su contenido
Intervalo Temporizador

2
0

3
1

5
1

6
1

7
1

8
1

2
1

3
1

4
8

9
8

10
8 9 AC K 10

AC K

AC K

AC K

AC K

AC K

AC K

AC K

AC K

AC K

AC K

AC K

10

Error

Almacenados en el buffer de la ventana del receptor Paquetes 2 a 8 pasados a nivelSITR: aplicacin TCP/IP

Paquetes duplicados
62

AC K

Segmento TCP
Datagrama IP
Cabecera TCP
20 Cabecera IP 20

Datos TCP
variable

Segmento TCP
0 15 16 Nmero Puerto Fuente 16 bits Nmero Puerto Destino 16 bits 31 bits

Cabecera TCP

Nmero de secuencia (32 bits) Nmero de asentimiento (segmento esperado) (32 bits)
Long. Cabecera 4 bits Reservado 6 bits U A P R S F R C S S Y I G K H T N N

Tamao ventana 16 bits Puntero urgente 16 bits

Suma de Control 16 bits (cabecera + datos)

Opciones (si existen) mltiplo de 32 bits Datos

SITR: TCP/IP

63

Cabecera TCP

Tipos de trama:

SYN : establecimiento de la conexin ACK : indica que incorpora un asentimiento (se aprovecha la transmisin de datos para emitir los asentimientos URG : indica que el puntero urgente es vlido (offset que se debe aadir al nmero de secuencia) PSH :el receptor debe pasar los datos a la aplicacin tan rpido como pueda RST : reiniciar la conexin FIN : el emisor finaliza la emisin de datos

SITR: TCP/IP

64

Opciones TCP

Opciones:
Fin de lista de opciones Operacin nula
Tipo=0 1 byte Tipo=1 1 byte

Tamao mximo de segmento Factor de escala de la ventana Grabacin de Tiempo

Tipo=2 1 byte Tipo=3 1 byte Tipo=8 1 byte

long=4 1 byte long=3 1 byte long = 10 1 byte

Tamao mximo segmento (MSS) 2 bytes valor 1 byte Valor tiempo 4 bytes tiempo respuesta de eco 4 bytes

SITR: TCP/IP

65

Conexin-Desconexin TCP
Equipo A
Peticin Conexin
Segmento 1
SYN, ISN1 , mss

Establecimiento conexin TCP

Equipo B

Indicacin Conexin
Segmento 2

Confirmacin Conexin
Segmento 3

ss SN1+1), m (I K C A , 2 SYN, ISN

Aceptacin Conexin

ISN1+1, AC K(I

Datos Peticin Desconexin

SN2+1), datos

Datos
FIN, ISN1+ X, ACK(ISN 2+Y)
X+1) CK(ISN1+ A , Y + 2 N IS X+1) CK(ISN1+ A , 1 + Y + FIN, ISN2

Indicacin Desconexin Aceptacin Desconexin Peticin Desconexin Confirmacin Desconexin


66

Confirmacin Desconexin Indicacin Desconexin Aceptacin Desconexin

ACK(ISN2 +Y+1)

SITR: TCP/IP

SITR: TCP/IP

68

Ejercicio Protocolos TCP/IP


Describir la secuencia de mensajes y protocolos involucrados en una transmisin UDP entre el nodo A y el nodo B descritos en la figura.

02:60:8C:0D:0A:5C 192.147.135 .7 255.255.255.128 02:60:8C:0D:0A:5E 192.147.135.1 255.255.255.128 02:60:8C:0F:0A:5D 192.147.135.140 255.255.255.128 HOST B 02:60:8C:0D:0A:5D 192.147.135. 129 255.255.255.128
69

HOST A

Вам также может понравиться