Está en la página 1de 64

ModeloTCP/IP

TCP/IP
Modelo

Direccionamiento
Direccionamiento
IPv4
IPv4

Modelo
Modelo
General
General

Orgenes
Orgenes

Clases de
Clases de
Redes
Redes

Mscara
Mscara
de Subred
de Subred

CIDR
CIDR

Estudio de
Estudio de
Protocolos
Protocolos

ICMP
ICMP

ARP
ARP

IPv4
IPv4

UDP
UDP

TCP
TCP

Direccionamiento
Direccionamiento
MAC
MAC

Formato
Formato
Mensaje
Mensaje

Formato
Formato
Datagrama IP
Datagrama IP

Caractersticas y
Caractersticas y
funcionalidad
funcionalidad

Caractersticas y
Caractersticas y
funcionalidad
funcionalidad

Tramas
Tramas
Ethernet
Ethernet

Cdigos
Cdigos
de error
de error

Encaminamiento
Encaminamiento
de Datagramas
de Datagramas

Formato
Formato
Datagrama UDP
Datagrama UDP

Formato
Formato
Segmento TCP
Segmento TCP

Tabla
Tabla
ARP
ARP

Cdigos
Cdigos
Solicitud /
Solicitud /
Respuesta
Respuesta

Establecimiento
Establecimiento
Conexin
Conexin
Desconexin
Desconexin
1

Arquitectura TCP/IP
NDICE

Objetivo:
{

Qu vamos a estudiar?
{
{
{
{
{

Describir y analizar la familia de protocolos TCP-IP

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

Capa
Transporte

SMTP

HTTP

ICMP

Capa
Enlace

ARP

BOOTP

NFS/RPC

DNS

UDP

TCP

Capa
Red

SNMP

IP

Enlace

IGMP

RARP

Medio
Fsico
SITR: TCP/IP

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)

UDP (User Datagram Protocol) :

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

Protocolos (4)

Capa Aplicacin: (protocolos de alto nivel)


{
Protocolos basados en ICMP:

Protocolos basados en TCP:

PING : solicitud de eco

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

Clases de direcciones:
{

Clase A

Subred/Nodo

Red

0xxx xxxx

Clase B
Clase C

xxxx xxxx

1111 1111 .

xxxx xxxx

xxxx xxxx

1111 1111 . 1111 1111 .

xxxx xxxx

Red
110x xxxx

Mscara

Subred/Nodo

Red
10xx xxxx

xxxx xxxx

xxxx xxxx

Mscara

Subred/Nodo

xxxx xxxx

1111 1111 . 1111 1111 . 1111 1111 .


SITR: TCP/IP

xxxx xxxx

xxxx xxxx

Mscara
8

Direccionamiento IPv4 (2)


Multicast (28 bits)

Clase D

Clase E

1110 xxxx

xxxx xxxx

xxxx xxxx

xxxx xxxx

Futuras ampliaciones (27 bits)


11110 xxx

Clase

xxxx xxxx

xxxx xxxx

Rangos de direcciones
IP Mscara
Nodos por
Dir.
clase
Comienzo

A
B
C
D
E

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

xxxx xxxx

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

SITR: TCP/IP

Dir. Final
10.255.255.2555
172.31.255.255
192.168.255.255

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

Clase B

10xx xxxx

Nodo

Subred
xxxx xxxx

xxxx xxxx

1111 1111 . 1111 1111 . 11111111 .

Ejemplo:

147. 125.

3.

xxxx xxxx

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

Mquina 5

Red clase
147.125
SITR: TCP/IP

Subred 3
10

Direccionamiento IPv4 (4)

Utilizacin de la mscara de red:

Direccin IP adaptador origen

Direccin IP destino

Mscara
11111111 .11111111.11111111 . 0

147.123.3.5

AND

147.123.6.67

AND

147.123.6.0

147.123.3.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

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

Subred
SITR: TCP/IP

12

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

IP

Mensaje
127.0.0.1

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

169

Nodo

1000 10xx

xxxx xxxx

1111 1111 . 1111 1111 . 1111 1100 . 000 0000


{

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

Mscara
Bits CIDR
Unin de
redes Clase C

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

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

GATEWAY

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

PUENTE/ROUTER

....... (62 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

Long.
2

DSAP SSAP
1

Cntl

Org.
Code

Tipo

Datos: Datagrama IP
38-1492

CRC
4

Cabecera
Encapsulacin Ethernet (RFC 894)
MAC Destino
6

MACFuente
6

Cabecera

Tipo
2

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

CRC
4

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

Mtu Net/Dest
8232 loopback

Address
localhost

Ipkts Ierrs Opkts Oerrs Collis Queue


1375284 0
1375284 0
0
0

hme0

1500 lorca

lorca

7246270 70

SITR: TCP/IP

6586492 1

619142 0

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

SITR: TCP/IP

22

Direccionamiento MAC
{

Para conocer la direccin MAC propia basta


con interrogar al adaptador de red

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

SITR: TCP/IP

winipcfg
ipconfig
ifconfig

23

Familia Protocolos TCP/IP


Capa
Aplicacin

PING

Telnet

FTP

Capa
Transporte

SMTP

HTTP

ICMP

Capa
Enlace

ARP

BOOTP

NFS/RPC

DNS

UDP

TCP

Capa
Red

SNMP

IP

Enlace

IGMP

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)


Hard Size

Cabecera Ethernet

TRAMA ARP

Prot Size
MAC
DST
6

MACSRC
6

Type
2

Hard
type

Prot
type

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
1

Snd
MAC Addr
6

Snd
IP Addr

Target
MAC Addr

Target
IP Addr

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.)

$ 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

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

BASE-ADDRESS.MCAST.NET 240.0.0.0

SM

01:00:5e:00:00:00

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

Capa
Transporte

SMTP

HTTP

ICMP

Capa
Enlace

ARP

BOOTP

NFS/RPC

DNS

UDP

TCP

Capa
Red

SNMP

IP

Enlace

IGMP

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

TOS 8 bits

TTL 8 bits

bits

Longitud Total 16 bits


Flag
3 bits

Identificacin 16 bits

Cabecera

31

15 16

Protocolo 8 bits

Fragment Offset 13 bits


Suma de Control de cabecera 16 bits

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

SITR: TCP/IP

35

Ejemplo: Protocolo IP

Fragmentacin IP

36

Ejemplo: Protocolo IP

SITR: TCP/IP

37

SITR: TCP/IP

38

Enrutamiento IP (1)
Si

Mecanismo:

Mantenerlo

Para mi ?

Host local

No
Si
Para mi red ?

Enviar a travs
de ARP

Host conectado
directamente

Enviar al Gateway

Host
remoto

No
Tengo ruta
especfica?

Si

No
Tengo ruta por
omisin?

Si
Enviar al Gateway

Ruta al host
remoto

No
Sin ruta

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

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

127.0.0.1

UH
SITR: TCP/IP

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

RED
Red
IP: 194.100.100.0
M: 255.255.255.0

INTERNET
IP: 194.100.100.1
M: 255.255.255.192

Subred 1
IP: 194.100.100.0
M: 255.255.255.192

GATEWAY

IP: 194.100.100.65
M: 255.255.255.192

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

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

IP: 194.100.100.3
M: 255.255.255.192

Subred 2
IP: 194.100.100.64
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

Subred 3
IP: 194.100.100.128
M: 255.255.255.128

IP: 194.100.100.129
M: 255.255.255.128

IP: 194.100.100.34
M: 255.255.255.192

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

IP: 194.100.100.130
M: 255.255.255.128

IP: 194.100.100.191
M: 255.255.255.128

SITR: TCP/IP

43

Familia Protocolos TCP/IP


Capa
Aplicacin

PING

Telnet

FTP

Capa
Transporte

SMTP

HTTP

ICMP

Capa
Enlace

ARP

BOOTP

NFS/RPC

DNS

UDP

TCP

Capa
Red

SNMP

IP

Enlace

IGMP

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

Cabecera IP

Tipo (Solicitud):

20
(20-64 Grabacin de ruta)

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

Tipo

Cdigo

SVT
Checksum

Extra: Segn el tipo de mensaje


variable

Mensaje ICMP

Tipo (Error):

Cdigo:

3: Destino Inaccesible

0: Solicitud

4: Cadencia demasiado elevada

X:
Especifica
tipos de errores

5: Redireccin

diferentes

11: Tiempo sobrepasado (TTL)


12: Problema de parmetros o forma

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

Capa
Transporte

SMTP

HTTP

ICMP

Capa
Enlace

ARP

BOOTP

NFS/RPC

DNS

UDP

TCP

Capa
Red

SNMP

IP

Enlace

IGMP

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 IP
20

Cabecera
UDP

Datos UDP

variable

Datagrama UDP
0

Cabecera
UDP

31

15 16
Nmero Puerto Fuente 16 bits

bits

Nmero Puerto Destino 16 bits

Longitud UDP 16 bits


(cabecera + datos en bytes)

Suma de Control 16 bits


(cabecera + datos)

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

Capa
Transporte

SMTP

HTTP

ICMP

Capa
Enlace

ARP

BOOTP

NFS/RPC

DNS

UDP

TCP

Capa
Red

SNMP

IP

Enlace

IGMP

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

Error

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

AC
K

10

9
AC
K

8
AC
K

AC
K

10

AC
K

9
8

AC
K

AC
K

AC
K

AC
K

8
1

AC
K

AC
K

AC
K

3
1

2
0

AC
K

10

Paquetes
duplicados
62

Segmento TCP
Datagrama IP
Cabecera
TCP

Cabecera IP
20

Datos TCP

20

variable

Segmento TCP
0

Cabecera

31

15 16

bits

Nmero Puerto Destino 16 bits

Nmero Puerto Fuente 16 bits

Nmero de secuencia (32 bits)

TCP

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

Suma de Control 16 bits


(cabecera + datos)

Tamao ventana 16 bits


Puntero urgente 16 bits

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

Tipo=0

Operacin nula

Tipo=1

1 byte

1 byte

Tamao mximo
de segmento

Tipo=2

long=4

Tamao mximo
segmento (MSS)

1 byte

1 byte

2 bytes

Factor de escala
de la ventana

Tipo=3

long=3

valor

1 byte

1 byte

1 byte

Grabacin de
Tiempo

Tipo=8

long =
10

Valor tiempo

1 byte

1 byte

4 bytes

SITR: TCP/IP

tiempo respuesta
de eco
4 bytes

65

Conexin-Desconexin TCP
Equipo A

Establecimiento
conexin TCP

Equipo B

Peticin Conexin
Segmento 1

Confirmacin Conexin
Segmento 3

SYN, ISN1
,

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

ISN1+1, AC
K(I

Datos
Peticin Desconexin

Confirmacin Desconexin
Indicacin Desconexin
Aceptacin Desconexin

mss

Indicacin Conexin
Segmento 2

Aceptacin Conexin

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

ACK(ISN2
+Y+1)

SITR: TCP/IP

Indicacin Desconexin
Aceptacin Desconexin
Peticin Desconexin
Confirmacin
Desconexin
66

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

HOST A

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

También podría gustarte