Anda di halaman 1dari 116

Tema 5: El nivel de red

158.42.0.0/16
12 . 15 3. 0. 0/ 18

10.0.0.0/8
defaul t

127.0.0.0/8

Destino:158.42.180.62 puerto 80 Origen: 62.2.25.253 puerto 1700

GET /redes/index.html HTTP/1.0 Host: peloto.ono.com

Redes: Tema 5

Bibliografa: [Kurose05], Apartados 4.4 - 4.6 y 5.4.3 1

Objetivos

Aprender las caractersticas bsicas de los protocolos IP e ICMP Comprender el esquema de direccionamiento empleado actualmente en Internet, sus limitaciones y las soluciones aplicadas Comprender cmo funciona el mecanismo de traduccin de las direcciones de red (NAT) Comprender cmo se realiza el encaminamiento en Internet

Redes: Tema 5

ndice (I)
1. Introduccin 2. El protocolo IP v4
1. Formato de un datagrama IP 2. Fragmentacin 3. Direccionamiento IP v4 4. Encaminamiento en IP 5. NAT 6. DHCP 7. ICMP

3. Protocolo IP v6
Redes: Tema 5

ndice (II)
4. Encaminamiento
1. Encaminamiento por estado del enlace 2. OSPF 3. Encaminamiento por vector de distancias 4. RIP 5. Encaminamiento en Internet

Redes: Tema 5

1. Niveles de transporte y de red


Aplicacin Puertos Transporte SMTP-DNS TCP-UDP IP

Aplicacin Transporte

RED 11.12.13.14

12.13.14.15

N. Transporte: se apoya en el nivel de RED para llevar los segmentos desde el origen al destino a travs de Internet Protocolo para el dilogo en el nivel de red: IP (Internet Protocol)
5

Redes: Tema 5

Cmo es Internet?

Red IP 1

Red IP 2

Red IP 3

Red IP 4

Cada red IP puede tener distinto protocolo de acceso a la red


6

Redes: Tema 5

Comunicacin mediante la pila de protocolos

Mensaje

Aplicacin

Aplicacin

Segmento o datagrama Paquete o datagrama

Transporte
(TCP o UDP)

Router
Red (IP)

Transporte
(TCP o UDP)

Red (IP)

Red (IP)

Trama

Acceso a la red

Acceso a la red

Acceso a la red

Acceso a la red

Redes: Tema 5

Encapsulado de datagramas IP
NIVEL DE APLICACIN
Datos aplicacin

NIVEL DE TRANSPORTE
Cabecera (UDP o TCP) Datos aplicacin

NIVEL DE RED
Cabecera IP Cabecera (UDP o TCP) Datos aplicacin

NIVEL DE ENLACE
Cabecera trama
Redes: Tema 5

Cabecera IP

Cabecera (UDP o TCP)

Datos aplicacin

Cola trama
8

Requisitos para la comunicacin

Unidad de intercambio comn: paquetes (datagramas IP) Para poder llevar los paquetes a travs de la red se necesita:

Identificar mediante direcciones a los sistemas que intervienen en la comunicacin (direcciones IP) Elegir una ruta en la red que permita alcanzar el destino (encaminamiento)

IP se encarga de ambos problemas


9

Redes: Tema 5

Encaminamiento

Dos tareas importantes a resolver:

Cuando un router recibe un paquete debe moverlo desde un enlace de entrada a uno de salida adecuado

El router consulta su tabla de encaminamiento

El nivel de red debe calcular el conjunto de rutas ptimas para alcanzar los destino

Se calculan mediante algoritmos de encaminamiento

Redes: Tema 5

10

2. IP v4 (Internet Protocol)

IP es el protocolo central de la suite de protocolos TCP/IP Unidad bsica de transferencia de datos: datagrama Servicio "best effort

No fiable Sin conexin:


No mantiene informacin de estado sobre los datagramas Cada datagrama se maneja independientemente

Redes: Tema 5

11

Tareas de IP v4

IP realiza las funciones de encaminamiento IP determina las reglas de intercambio de datagramas entre computadores
Formato, reglas de procesamiento de datagramas, condiciones de error, etc.

Redes: Tema 5

12

2.1 Formato de un datagrama IP


0 31

20 octetos opc. cabecera obligatoria

Vers

Longc

Tipo de serv. Flags

Longitud total Desp. Fragmento

Identificacin Tiempo de vida Protocolo

Checksum de la cabecera

Direccin IP fuente Direccin IP destino Opciones (ej: encaminamiento fuente) DATOS Relleno

Redes: Tema 5

13

Descripcin de los campos

Versin del protocolo IP: (4 bits) actualmente IP v4 Longitud de la cabecera: (4 bits) tamao de la cabecera del datagrama en palabras de 32 bits Longitud total del datagrama

0 Vers Longc Tipo de serv. Flags Protocolo Longitud total Desp. Fragmento Identificacin Tiempo de vida

31

Incluye cabecera y datos Tamao mximo = 65.535 bytes

Checksum de la cabecera

Direccin IP fuente Direccin IP destino Opciones (ej: encaminamiento fuente) Relleno

Redes: Tema 5

14

Tipo de servicio (I)

Tipo de servicio (TOS):

3 bits para la prioridad (se ignoran), 4 bits para el tipo de servicio y un bit a cero. Los bits de tipo de servicio permiten al usuario solicitar las condiciones deseadas (Solo un bit a 1):

Minimizar el retardo Maximizar la productividad Maximizar la fiabilidad Minimizar el coste

1000 0100 0010 0001

No se garantiza el tipo de servicio solicitado

Redes: Tema 5

15

Tipo de servicio (II)

Se recomienda el uso de los siguientes valores para el tipo de servicio, dependiendo de la aplicacin:
Protocolo Telnet TOS Descripcin 1000 Minimizar retardo Minimizar retardo

Sesin control FTP 1000 NNTP IGP

Sesin de datos FTP 0100 Maximizar productividad 0001 Minimizar coste 0010 Maximizar fiabilidad

El tipo de servicio tendr un mayor protagonismo en el futuro

Redes: Tema 5

16

Otros campos de la cabecera IP


0 20 octetos opc. cabecera obligatoria Vers Longc Tipo de serv. Flags Longitud total Desp. Fragmento
31

Identificacin Tiempo de vida Protocolo

Checksum de la cabecera

Direccin IP fuente Direccin IP destino Opciones (ej: encaminamiento fuente) DATOS Relleno

Redes: Tema 5

17

Tiempo de vida (TTL*)

Los datagramas tienen un tiempo limitado de permanencia en la internet El TTL se inicializa en origen y se decrementa cada vez que el datagrama atraviesa un router

Valor inicial recomendado**: 64

Al llegar a cero el datagrama se descarta


(*) Time to live (**) RFC1700: Assigned Numbers

Redes: Tema 5

18

Otros campos de la cabecera IP (II)

El campo protocolo indica el protocolo al que corresponden los datos:


Protocolo

TCP ICMP UDP


Valor del campo protocolo 6 1 17

El checksum incluye slo la cabecera El campo de opciones se utiliza raramente

Permite especificar: encaminamiento fuente (uso de una ruta escogida), confidencialidad del datagrama, registro de la ruta (RR), etc. Tiene longitud variable
19

Redes: Tema 5

2.2 Fragmentacin

En el nivel de enlace cada protocolo maneja un tamao mximo de trama Hay un lmite para el tamao de su campo de datos: MTU (Maximum Transfer Unit)

En Ethernet es de 1500 octetos Utiliza tecnologas heterogneas Utiliza mltiples MTUs

Internet :

Redes: Tema 5

20

Problemas derivados de las MTUs


Host O
Red 2 (MTU=1000) Red 3 (MTU=1500)

Red 1 (MTU=1500)

Host D

FRAGMENTACIN

Host O

Router

Crea datagramas para el host D Elige un tamao de 1500 bytes Transmite datagramas a travs de la red 1

Recibe datagramas de la red 1 Enva datagramas sobre la red 2 Utiliza fragmentacin


21

Redes: Tema 5

Fragmentacin de datagramas (I)

El computador origen conoce el MTU de su red, pero no conoce los MTUs de las redes que se utilizarn hasta alcanzar el destino Si el datagrama tiene que atravesar una red con un MTU ms pequeo que el original hay que fragmentar el datagrama

Redes: Tema 5

22

Fragmentacin de datagramas (II)


Cab IP Datos del datagrama original

Cab IP

Datos 1

Cab IP

Datos 2

Cab IP

Datos 3

Al fragmentar un datagrama se copian la mayora de los campos de la cabecera:

El campo de identificacin identifica todos los fragmentos de un mismo datagrama


0 Vers Longc Tipo de serv. Flags Protocolo Longitud total Desp. Fragmento Identificacin Tiempo de vida 31

El desplazamiento del fragmento (en mltiplos de 8 bytes) indica la posicin del fragmento dentro del datagrama original

Checksum de la cabecera

Direccin IP fuente Direccin IP destino Opciones (ej: encaminamiento fuente) Relleno

Redes: Tema 5

23

Fragmentacin de datagramas (III)

El campo de longitud indica la longitud del fragmento (no la del datagrama original) Dos bits en el campo de flags:

Do not Fragment (DF): Indica que ese datagrama no puede ser fragmentado More Fragments (MF): Indica que este fragmento no es el ltimo de una serie. Se utiliza en el reensamblado.

Dnde reensamblar? Puede ser necesario fragmentar los fragmentos Todos los fragmentos tienen el mismo nivel

El desplazamiento se refiere al datagrama original


24

Redes: Tema 5

Ejemplo
Host A
Red 1 (MTU=1500) Red 2 (MTU=620) Red 3 (MTU=1500)

Host B

Router 1

Router 2

Fragmentacin en el router 1 al enviar datagramas mayores de 600 B


lon. total Identif. DF=0 32 MF=0 1420 lon. total Identif. 620 32 Datos 1 (600 oct) Datos 2 (600 oct) Datos 1 Datos 2 Datos 3 25 Datos 3 (200)

DF=0 Desplaz. 0 MF=1

MTU = 620 octetos

lon. total Identif. DF=0 Desplaz. 75 620 32 MF=1 (600) lon. total Identif. DF=0 Desplaz. 150 220 32 MF=0 (1200)
Redes: Tema 5

Procesamiento de un datagrama IP en un computador


Inicio 1 Checksum S Reensamblar IP datag. = Host N S Es un fragmento? S Fin Primero N Todos S Activar Temporizador N Fin N Descartar datagrama

Pasar a nivel superior

Almacenar

Fin
Redes: Tema 5

26

Procesamiento de un datagrama IP en un router


Inicio Tamao > MTU 1
N N S

Fragmentar

Checksum
S S

Pasar a nivel superior Fin 1


S

IP dest = Router

Calcular Checksum

TTL=TTL -1 Enviar datagrama TTL = 0


N

Siguiente fragmento
S

Ms fragmentos
N

Descartar datagrama Fin


Redes: Tema 5

Encaminar Datagrama (Consulta tabla)

Fin 27

2.3 Direcciones IP v4: introduccin (I)

Identifican un punto de conexin en una red, una mquina puede tener varias direcciones distintas Son direcciones virtuales (interpretadas slo por el software) Tamao fijo: 32 bits

Redes: Tema 5

28

Direcciones IP v4: introduccin (II)

Se representan como cuatro nmeros decimales obtenidos de los cuatro octetos que forman la direccin IP (n1.n2.n3.n4) Ejemplo:
100000000 00001010 00000010 00011110 Se representa como 128.10.2.30

Cada direccin IP tiene dos campos:


Identificador red

Identificador computador en la red

Todos los sistemas (hosts y routers) conectados a la misma red IP comparten el mismo identificador de red
29

Redes: Tema 5

Routers y direccionamiento IP

Cada router tiene al menos dos direcciones IP:


Tiene conexin a varias redes IP (mnimo dos) Cada direccin IP tiene un identificador de red distinto
158.34.0.1 158.34.0.0 158.34.0.33 193.25.1.2

193.25.1.0 193.25.1.56

Redes: Tema 5

30

Direcciones IP especiales
Id. red Ceros

Direccin IP de una red

Campo de identificador de computador a 0's


Se refiere a la red y no a sus computadores No puede aparecer como direccin en un paquete

Redes: Tema 5

31

Direcciones IP especiales
127

Cualquier cosa

Todo ceros

Direccin de loopback

Para depurar aplicaciones de red

La direccin de este host (el que enva el paquete)

No enva paquetes a travs de la red

Se utiliza como direccin fuente cuando el host obtiene su IP automticamente a travs de la red Los protocolos utilizados se apoyan en IP!

Redes: Tema 5

32

Direcciones IP de difusin
Red

Todo 1s

Todo 1s

Direccin de difusin dirigida

Direccin de difusin limitada

Para enviar una copia de un paquete a todos los hosts de una red IP

Difusin en la red IP donde est conectado el host Se utiliza como direccin destino durante el arranque del sistema si el host an no conoce su direccin de red
33

Redes: Tema 5

Tipos de direccionamiento en Internet

Dos tipos de direccionamiento en Internet, dependiendo de cmo se determine la longitud del identificador de red:

Direccionamiento con clases:

Los identificadores de red tienen longitudes fijas: 8, 16 y 24 bits

3 clases de direcciones: A, B y C

Direccionamiento sin clases (Classless InterDomain Routing)

Se requiere una mscara de red para saber el nmero de bits que identifican a la red

Redes: Tema 5

34

Direccionamiento IP con clases


0 8 red Red 16 Host 24 31

Clase A Clase B Clase C Clase D

1.0.0.0
1 0

... 126.0.0.0

red Red

Host
Host

128.0.0.0 ... 191.255.0.0


1 1 0

Red Direccin multicast

192.0.0.0 ... 223.255.255.0


1 1 1 0

224.0.0.0 ... 239.255.255.255

Redes: Tema 5

35

Direccionamiento sin clases (CIDR)

Con la notacin CIDR:

Ya no hay clases, las direcciones tienen:

Algunos bits fijos (el prefijo de red)

El tamao de este campo no est limitado a unos pocos valores

Algunos bits variables (los bits de host)

Lo que era una direccin de red de clase A, B o C puede corresponder a varias subredes Un bloque de direcciones de redes IP (habitualmente de clase C) puede corresponder a una nica red: superred

Estas soluciones han ayudado a prolongar la vida de IP v4 IP v6 utiliza esta visin sin clases
36

Redes: Tema 5

Direccionamiento sin clases (CIDR) (II)

La direccin IP necesita ir acompaada de una mscara de red La mscara de red:

Permite saber qu bits corresponden al prefijo de red y cules al identificador del host Tiene el mismo tamao que la direccin IP (32 bits) y sus bits a 1 identifican el prefijo de red Dos formas equivalentes de expresarla:

Ejemplo para 20 bits a 1:


255.255.240.0 Dir IP/20

Redes: Tema 5

37

Ejemplo de CIDR
Internet 158.42.0.0

158.42.32.0/19
Red 0

Internet

158.42.64.0/19
Red 1

158.42.128.0/19
Red 2

Ejemplos para la red 2 (158.42.128.0):

Difusin: 158.42.159.255 Algunos hosts : 158.42.144.0, 158.42.128.255, 128.42.129.2 Otra notacin equivalente: 158.42.128.0/19
Redes: Tema 5

38

Subredes: ejemplo (I)

Tenemos una direccin de red de clase C: 192.228.17.0/24

192.228.17.0 = 11000000.11100100.00010001.00000000 Mscara de red de la clase C: 255.255.255.0 = 11111111.11111111.11111111.00000000 Una red, 254 hosts Pasamos bits del campo de host al campo de red Nueva mscara de red: /27 255.255.255.224 = 11111111.11111111.11111111.11100000 3 bits de subred 8 redes (23) 5 bits de host 30 hosts cada una (25-2)
39

La dividimos en subredes

Redes: Tema 5

Subredes: ejemplo (II)


Red 192.228.17.0 Mscara de subred: 255.255.255.224
11000000.11100100.00010001.00000000 11111111.11111111.11111111.11100000

A LAN X
192.228.17.1

192.228.17.2

Subred 192.228.17.0/27 D
11000000.11100100.00010001.00000000

Internet

R1

192.228.17.34

LAN Y
192.228.17.33

Subred 192.228.17.32/27 F
11000000.11100100.00010001.00100000

E R2 LAN Z
192.228.17.65
Redes: Tema 5

192.228.17.66

Subred 192.228.17.64/27
11000000.11100100.00010001.01000000

40

Superredes

La asignacin de direcciones de clase C depende del nmero de hosts de la red:

Hosts 254 asigna 1 red de clase C Hosts 510 asigna 2 redes de clase C contiguas Hosts 1022 asigna 4 redes de clase C contiguas Hosts 2046 asigna 8 redes de clase C contiguas

Todas las redes de una organizacin tienen un prefijo comn Ejemplo: Las 8 redes desde 194.32.136.0 a 194.32.143.0
tienen un prefijo comn de 21 bits:
11000010 00100000 10001000 00000000 11000010 00100000 10001001 00000000 ... 11000010 00100000 10001111 00000000

Redes: Tema 5

41

Superredes: ejemplo

Ejemplo: Las 8 redes de clase C desde 194.32.136.0 a 194.32.143.0 tienen un prefijo comn de 21 bits:
11000010 00100000 10001000 00000000 11000010 00100000 10001001 00000000 ... 11000010 00100000 10001111 00000000

Este bloque de direcciones contiguas se puede expresar como una nica (super)red: 194.32.136.0/21 Es decir, la mscara de red (superred) es: 255.255.248.0

Redes: Tema 5

42

Direcciones privadas

Direcciones privadas (RFC 1918) Estas direcciones no son encaminables por los routers de Internet Rango de direcciones privadas

10.0.0.0/8:

10.0.0.0-10.255.255.255 172.16.0.0-172.31.255.255

172.16.0.0/12:

192.168.0.0/16: 192.168.0.0-192.168.255.255

Redes: Tema 5

43

Obtencin de una direccin de red (I)

Cmo consigue un host una direccin IP?

Configurada manualmente por el administrador del sistema Mediante el protocolo de configuracin dinmica de host (DHCP, Dynamic Host Configuration Protocol)*

* RFC 2131
Redes: Tema 5

44

Obtencin de una direccin de red (II)


Cmo se consigue un bloque de direcciones IP para la red de una organizacin?

A travs de un ISP
11001000 00010111 00010000 00000000 11001000 00010111 00010000 00000000 11001000 00010111 00010010 00000000 11001000 00010111 00010100 00000000 .. . 11001000 00010111 00011110 00000000 200.23.16.0/20 200.23.16.0/23 200.23.18.0/23 200.23.20.0/23 . 200.23.30.0/23

Bloque del ISP Organizacin 0 Organizacin 1 Organizacin 2 ... Organizacin 7

Redes: Tema 5

45

Obtencin de una direccin de red (III)


Cmo consigue un ISP un bloque de direcciones?

A travs del ICANN (Internet Corporation for Assigned Names and Numbers)

En Espaa delega en InterNIC Asigna direcciones IP Gestiona los servidores raz DNS Asigna y resuelve disputas sobre nombres de dominio

Redes: Tema 5

46

2.4 Encaminamiento en IP

Tablas de encaminamiento

Contienen informacin sobre los posibles destinos y cmo llegar a ellos Dnde estn? En routers y hosts Cmo deben ser?

Compactas y pequeas (en la medida de lo posible) para un funcionamiento ms eficiente

Slo con informacin sobre redes destino y los routers que nos conducen a ellas

Informacin en la tabla de encaminamiento:

Direccin IP red destino, direccin IP router, mscara de red, interfaz de salida


47

Redes: Tema 5

Cmo ver la tabla de encaminamiento

netstat -nr

Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 158.42.0.0 0.0.0.0 255.255.192.0 U 40 0 0 eth0 0.0.0.0 158.42.1.10 0.0.0.0 UG 40 0 0 eth0

netstat -r

Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 158.42.0.0 * 255.255.192.0 U 40 0 0 eth0 default atlas.net.upv.es 0.0.0.0 UG 40 0 0 eth0

Redes: Tema 5

48

Cmo se encamina en IP

Los computadores se identifican en la Internet mediante direcciones IP, pero ... los protocolos de acceso a la red manejan otras direcciones (direcciones fsicas) Necesitaremos utilizar los 2 tipos de direcciones

Direcciones IP en la cabecera del datagrama Direcciones fsicas en la cabecera de la trama

Redes: Tema 5

49

Encaminamiento en IP: misma red


Tabla de encaminamiento del host A
Red destino destino 0.0.0.0 Mscara 0.0.0.0 Ruta 0.0.0.0 Interfaz destino 132.58.0.11 132.58.0.0 255.255.0.0

132.58.0.2 132.58.0.11

132.58.0.11 Host A 132.58.0.0/16 132.58.0.2 25.0.0.0/8 Router 25.0.0.1


cabecera trama Hw dest B Hw orig. A 0x800
Redes: Tema 5

132.58.10.12 Host B 25.0.0.3 Host C

datagrama IP IP orig. A IP dest B datos

B
50

cabecera IP

Encaminamiento en IP: redes distintas


Tabla de encaminamiento del router 1
Red destino destino 25.0.0.0 0.0.0.0 Mscara 255.0.0.0 0.0.0.0 Ruta 0.0.0.0 0.0.0.0 25.0.0.2 Interfaz destino 132.58.0.2 25.0.0.1 25.0.0.1 132.58.0.0 255.255.0.0

132.58.0.11 Host A
132.58.0.0/16 red 1

132.58.10.12 Host B
25.0.0.0/8 red 2

25.0.0.2

R2 223.1.1.1

223.1.1.0/24 red 3

132.58.0.2 R1

25.0.0.3 Host C
cabecera IP

25.0.0.1

Hw dst R1
Redes: Tema 5

Hw orig. A 0x800

IP orig. A IP orig. A

IP dest C IP dest C

datos datos 51

Hw dst C Hw orig.R1 0x800

Transmisin a travs de una internet


Host fuente datagrama

Red 1

cab. 1

datagrama datagrama

Cada salto extrae el datagrama y descarta la trama

R1 Red 2 R2 Red 3
cab. 3

cab. 2 datagrama datagrama datagrama datagrama

Host destino

Redes: Tema 5

52

CIDR y encaminamiento

R1 ver una nica red

Entrada en la tabla de encaminamiento:


158.42.0.0 3

Internet
R1 I3

158.42.32.0/19
Red 1

Mscara Red destino Interfaz


255.255.0.0

I0 R2

I1 I2 I3

158.42.64.0/19
Red 2

158.42.128.0/19
Red 3

R2 ver las tres redes:


Mscara Red destino Interfaz
1 2 3
53

255.255.224.0 158.42.32.0 255.255.224.0 158.42.64.0 255.255.224.0 158.42.128.0


Redes: Tema 5

1111 1111 1111 1111 1110 0000 0000 0000

CIDR reduce el tamao de las tablas de encaminamiento


Internet

200.25.0.0/16

ISP
200.25.16.0/20 200.25.30.0/23
200.25.30.0/24 200.25.31.0/24

200.25.16.0/21
200.25.16.0/24 200.25.17.0/24 200.25.18.0/24 200.25.19.0/24 200.25.20.0/24 200.25.21.0/24 200.25.22.0/24 200.25.23.0/24
Redes: Tema 5

200.25.24.0/22 200.25.28.0/23
200.25.24.0/24 200.25.25.0/24 200.25.26.0/24 200.25.27.0/24

200.25.28.0/24 200.25.29.0/24

54

2.5 NAT (Network Address Translation)


NAT (RFC 2663) Problema:

Queremos que m hosts puedan acceder simultneamente a la red externa disponiendo slo de n IPs pblicas (m > n) Asignar direcciones privadas en la red interna Utilizar un procedimiento de traduccin: direccin privada direccin pblica para salir a la red externa

Solucin:

Redes: Tema 5

55

Funcionamiento de NAT
IP privada 1 Puerto origen

x
IP pblica

x' y' Puerto origen x' Puerto origen y'


Red pblica externa

Red privada

IP privada 2

Puerto origen y

En el caso ms simple una nica IP pblica es suficiente

Todos los datagramas que llegan al router tienen las misma IP destino: hay que demultiplexar por puerto El router emplea una tabla de traduccin
56

Redes: Tema 5

NAT: ejemplo
Red "Interna"
DF
10.0.0.1 1227

Red "Externa"
NAT
DF
192.69.1.1 61001

10.0.0.1

Red privada

Internet

10.2.0.5 DF = Direccin IP Fuente

Tabla NAT
Direccin IP y puerto externo 192.69.1.1: 61001 192.69.1.1: 61002

Direccin IP y puerto interno 10.0.0.1: 1227 10.0.0.5: 1110

Desde el punto de vista externo todos los hosts utilizan

una sola direccin IP Se realiza multiplexacin por puertos


Redes: Tema 5

57

NAT: Servidores en la red interna

Y si queremos tener un servidor en la red interna (direccin IP privada) que sea accesible desde el exterior?

Podemos asociar un puerto de entrada en el dispositivo NAT con la IP privada del servidor y el nmero de puerto donde atiende las peticiones (port forwarding)

Redes: Tema 5

58

Limitaciones de NAT

NAT funciona bien para direcciones IP en la cabecera IP Algunas aplicaciones envan dir. IP en la parte de datos de aplicacin

Por ejemplo: orden PORT de FTP

En general NAT no sabe manejar estas aplicaciones

Aunque es habitual que resuelvan algunos casos sencillos como el de FTP

Redes: Tema 5

59

2.6 DHCP* (Dynamic Host Configuration Protocol)

Objetivo: Facilitar la administracin de la red

Permite a un host obtener dinmicamente una IP cuando se conecta a una red Permite la reutilizacin de direcciones por distintos hosts Permite dar soporte cmodamente a los usuarios mviles

Protocolo de nivel de aplicacin (sobre UDP)


* RFC 2131

Redes: Tema 5

60

Escenario del servidor DHCP


223.1.1.1 223.1.2.15 223.1.2.1

A
223.1.1.2

servidor DHCP
223.1.1.4

223.1.2.9 223.1.3.27

223.1.2.0/24 223.1.2.2

223.1.1.0/24 223.1.1.3

B
223.1.3.1

223.1.3.0/24 223.1.3.2

llega un cliente DHCP que necesita una direccin en esta red

El router funciona como agente repetidor de DHCP

Redes: Tema 5

61

Funcionamiento DHCP

El host enva mediante difusin un mensaje de descubrimiento DHCP

DHCPDISCOVER

El servidor DHCP responde con un mensaje de ofrecimiento DHCP

Puede responder ms de un servidor DHCPOFFER DHCPREQUEST

El host solicita una IP: mens. de peticin DHCP

El servidor le enva una direccin: mensaje de reconocimiento (ACK)

DHCPACK
62

Redes: Tema 5

Escenario cliente-servidor DHCP


Servidor DHCP : 223.1.2.5 Descubrimiento DHCP
Fnt : 0.0.0.0, 68 Dest.: 255.255.255.255,67 DirIP: 0.0.0.0 ID transaccin: 654

Cliente recin llegado

Oferta DHCP
Fnt: 223.1.2.5, 67 Dest: 223.1.2.4, 68 DirIP: 223.1.2.4 ID transaccin: 654 Tiempo de vida: 3600 s.

Peticin DHCP

tiempo

Fnt: 0.0.0.0, 68 Dest: 255.255.255.255, 67 DirIP: 223.1.2.4 ID transaccin: 654 Tiempo de vida: 3600 s.

Reconocimiento DHCP
Fnt: 223.1.2.5, 67 Dest: 223.1.2.4, 68 DirIP: 223.1.2.4 ID transaccin: 654 Tiempo de vida: 3600 s.

Redes: Tema 5

63

2.7 El protocolo ICMP

En Internet no disponemos de mecanismos hardware para comprobar la conectividad IP no proporciona herramientas para la deteccin de fallos y problemas Se introduce un nuevo mdulo: ICMP* (Internet Control Message Protocol) Este protocolo permite a los hosts y routers enviar mensajes de control a otros hosts y routers
* RFC 792

Redes: Tema 5

64

Generalidades sobre ICMP

ICMP nos permite saber, por ejemplo, por qu no se ha entregado un datagrama (no hay ruta, el destino no responde, agotado el tiempo de vida, etc.) Informa de errores slo al origen del datagrama No corrige el problema (slo informa) Los mensajes ICMP viajan en el campo de datos de un datagrama IP
65

Redes: Tema 5

Encapsulamiento de un mensaje ICMP

Los mensajes ICMP se encapsulan en datagramas IP

Pero ICMP no se considera un protocolo de nivel superior a IP


Cabecera ICMP Cabecera del datagrama IP Cabecera de la trama Mensaje ICMP

Campo de datos del datagrama IP

Campo de datos de la trama

CRC

Redes: Tema 5

66

Formato de un mensaje ICMP

Cada mensaje tiene su propio formato, pero todos comienzan con los mismos campos:

Tipo (8 bits): Identifica el tipo de mensaje Cdigo (8 bits): Ms informacin sobre el tipo de mensaje Checksum (16 bits): Utiliza el mismo algoritmo que IP
0 8 16 Cdigo 31

Tipo

Checksum

Depende del tipo y el cdigo

Redes: Tema 5

67

Tipos de mensajes ICMP

El tipo de mensaje determina su significado y su formato. Hay 15 tipos distintos.


Peticin Error

Entre los principales tenemos Tipo Mensaje ICMP


0 3 8 11 Contestacin de eco Destino inalcanzable Peticin de eco Tiempo excedido en datagrama

Los mensajes de error contienen la cabecera IP + 8 primeros bytes de datos del datagrama original
68

Redes: Tema 5

Mensajes de error ICMP


Enlace fuera de servicio!

Nunca se generan mensajes de error en respuesta a:

Un mensaje de error ICMP Un datagrama destinado a una direccin IP de difusin Un fragmento que no sea el primero Un datagrama cuya direccin origen no defina una mquina nica (es decir, que la direccin origen no puede ser cero, la direccin de loopback, direcciones de difusin)

Todo esto para prevenir broadcast storms


69

Redes: Tema 5

Mensajes de eco (peticin y respuesta)

La respuesta devuelve los mismos datos que se recibieron en la peticin Se utilizan para construir la herramienta ping

Empleada por administradores y usuarios para detectar problemas en la red Permite :

Comprobar si un destino est activo y si existe una ruta hasta l Medir el tiempo de ida y vuelta Estimar la fiabilidad de la ruta

Puede ser utilizado tanto por hosts como por routers


70

Redes: Tema 5

Mensaje de tiempo excedido

Este tipo de mensajes pueden ser enviados por routers y hosts:

Routers: cuando descartan un datagrama al finalizar su tiempo de vida Hosts: al ocurrir un timeout mientras se esperan todos los fragmentos de un datagrama

El campo cdigo explica cul de los dos sucesos ha ocurrido

Redes: Tema 5

71

Mensaje de destino inalcanzable

Son enviados por un router o host cuando no puede enviar o entregar un datagrama IP Se envan al emisor del datagrama original El campo cdigo contiene un entero con informacin adicional. Algunos importantes son:
Cod.
0 1 2 3 4 6 7

Descripcin
Red inalcanzable Host inalcanzable Protocolo inalcanzable Puerto inalcanzable Se requiere fragmentacin pero bit DF activado Red destino desconocida Host destino desconocido
72

Redes: Tema 5

3. IP v6: Por qu una nueva versin?

Agotamiento del espacio de direcciones IP en un futuro prximo

Internet est creciendo exponencialmente (su tamao se dobla en menos de un ao) Se necesitan direcciones ms largas

Nuevas aplicaciones en Internet han provocado necesidades adicionales:

Audio y vdeo: retardos acotados, sincronizacin, calidad de servicio, etc.

Tecnologas de colaboracin: comunicaciones dentro de un grupo


Creacin y mantenimiento del grupo Envo de paquetes a todo el grupo


73

Redes: Tema 5

Caractersticas principales de IP v6 (I)

Direccionamiento

Direcciones de 128 bits

61023 direcciones por m2 de la Tierra Unicast: direccin de un computador Multicast: direccin de un grupo de computadores (todos) Anycast: direccin de un grupo de computadores (uno cualquiera del grupo)

Tipos de direcciones

Redes: Tema 5

74

Caractersticas principales de IP v6 (II)

Soporte de audio y vdeo: permite establecer rutas de alta calidad

Definicin de flujos (un tanto ambigua)

Formato de cabecera ms flexible que en IP v4 para agilizar el encaminamiento:


Menos campos fijos que en IP v4 Cabeceras de extensin opcionales con un orden especfico

Redes: Tema 5

75

Formato de un paquete IP v6 (I)

Etiqueta de flujo: Identifica paquetes del mismo flujo Clase de trfico: para soportar calidad de servicio (QoS, Quality of Service)
0 Vers. 31 Clase de trf. Longitud de datos Etiqueta de flujo Cab. siguiente Lm. de saltos

cabecera base

Direccin IP fuente (128 bits) Direccin IP destino (128 bits)

[Cabecera siguiente /]DATOS

Redes: Tema 5

76

Formato de un paquete IP v6 (II)


Slo la cabecera base es imprescindible
Cabecera base Ext. De cab. 1

...
Opcional

Ext. de cab. N

Datos

40 bytes

0 .. 64 KBytes

Redes: Tema 5

77

Otras diferencias con IP v4


No se utiliza checksum Los routers no pueden fragmentar los paquetes

Si un paquete es demasiado grande el router enva un mensaje de error

Nuevas caractersticas de seguridad ICMP v6: nueva versin de ICMP

Tipos adicionales de mensajes, como ''Paquete demasiado grande'' Funciones de gestin de grupos (multicast)
78

Redes: Tema 5

Transicin de la v4 a la v6

Se ha previsto una fase de transicin, durante la que puedan convivir ambos protocolos Durante el transitorio:

Las direcciones antiguas pueden codificarse fcilmente como direcciones nuevas Se permitirn dispositivos capaces de encaminar paquetes IP v6 e IP v4 Las estaciones podrn utilizar los dos protocolos El empleo de tneles permitir encapsular trfico IP v6 que tiene que atravesar zonas IP v4
79

Redes: Tema 5

Encapsulado de trfico IP v6

A, IP v6

B, IP v6

C, IP v4

D, IP v4

E, IP v6

F, IP v6

Tnel lgico A, IP v6 Fuente : IP A Destino: IP F


Redes: Tema 5

B, IP v6

IP v4 IP v6 Datos Fuente: IP B Destino: IP E

E, IP v6

F, IP v6

IP v6 Datos

80

4. Algoritmos de encaminamiento: introduccin

Objetivo del algoritmo de encaminamiento

Determinar el 'mejor camino' (secuencia de routers) desde el origen al destino

B A
1 2 2

3 3 1 1

C
5

La red se representa mediante un grafo:

F
2

Nodos del grafo los routers

son

Arcos del grafo son los enlaces entre routers

Redes: Tema 5

81

Criterios para la clasificacin de algoritmos

Dos cuestiones fundamentales sobre el algoritmo de encaminamiento:

Es escalable?

Algoritmos por vector de distancias y estado del enlace como mximo para 100 routers Depende de dnde se calculen las tablas Los algoritmos centralizados son difciles de escalar, todas nuestras propuestas sern de algoritmos distribuidos

Es centralizado o distribuido?

Redes: Tema 5

82

Otros criterios para la clasificacin

Dependiendo de la frecuencia con que se actualizan las rutas:


Estticos: suelen actualizarse manualmente Dinmicos: son sensibles a cambios en el trfico o en la topologa de la red

Los algoritmos de encaminamiento empleados en Internet suelen ser dinmicos

Redes: Tema 5

83

4.1 Encaminamiento por estado del enlace (I)

Cada nodo conoce la distancia a sus vecinos (informacin de estado del enlace) Cada nodo distribuye la informacin de estado del enlace a TODOS los nodos de la red Con los mensajes recibidos, cada nodo:

Construye el grafo de la red Calcula el camino ms corto (Dijkstra) a cada destino Construye la nueva tabla de encaminamiento
84

Redes: Tema 5

Encaminamiento por estado del enlace (II)


Construir el paquete de estado del enlace
Cada nodo construye un paquete con la siguiente informacin :

Cundo se construye?

Peridicamente

El intervalo puede ser de horas

Nodo transmisor Lista de vecinos y su


distancia a ellos

En eventos significativos :
Cada de lnea Muere un vecino Etc.

Nmero de secuencia Tiempo de vida (TTL)


Redes: Tema 5

85

Encaminamiento por estado del enlace: ejemplo


Paquetes de estado del enlace (PEE) de cada nodo de la red ejemplo
A #Sec B E 4 5 A C F B #Sec 4 2 6 B E C #Sec 2 1 D 3 C F D #Sec 3 7 A C F E #Sec 5 1 8 B E F #Sec 6 8 D 7

Redes: Tema 5

86

Notacin para el alg. de Dijkstra

c(i,j): coste del enlace del nodo i al j

El coste es infinito si i y j no son vecinos

D(v): valor actual del coste mnimo del camino desde la fuente al destino v p(v): nodo predecesor a lo largo del camino desde la fuente a v, o sea un nodo vecino de v N': conjunto de nodos cuyo camino de coste mnimo se conoce definitivamente

Redes: Tema 5

87

Algoritmo de Dijsktra (para el nodo fuente A)


Inicializacin:

N' = {A} Para todos los nodos v

Si v es vecino de A

entonces D(v) = c(A,v) si no D(v) = infinito

Repetir

Encontrar w no en N' tal que D(w) sea mnima Aadir w a N' Actualizar D(v) para cada v vecino de w y que no est en N':

Si D(v) > D(w) + c(w,v) D(v) = D(w) + c(w,v) P(v) = w

hasta que todos los nodos estn en N'


Redes: Tema 5

88

Ejecucin del algoritmo de Dijkstra


B

2 6 1

4
A

3
D

Para el nodo fuente A Al final, la lista de predecesores permite obtener los caminos ms cortos a cada destino

5 Paso
0 1 2 3 4 5

7 8 N'
F

D(B),p(B) D(C),p(C) D(D),p(D) D(E),p(E) D(F),p(F)


4, A infinito 6, B 6, B infinito infinito infinito 9, C 5, A 5, A infinito 10, B 10, B 10, B 10, B

A A, B A, B, E A, B, E, C A, B, E, C, D A, B, E, C, D, F

Redes: Tema 5

89

4.2 OSPF (Open Shortest Path First Protocol)

Algoritmo por estado del enlace, ampliamente utilizado en Internet

Difusin de paquetes de estado del enlace a todos los routers del SA


Una entrada en el paquete por router vecino La informacin se enva directamente sobre IP

Conocimiento de la topologa del SA Clculo de rutas mediante el algoritmo de Dijkstra

Ahora el coste hace referencia a cmo alcanzar redes destino


90

Redes: Tema 5

Caractersticas avanzadas en OSPF (no presentes en RIP)

Seguridad: autentificacin de mensajes de encaminamiento Permite mltiples caminos con el mismo coste (slo 1 en RIP) Permite utilizar diferentes mtricas para el mismo enlace Soporte multicast Soporte de jerarqua de encaminamiento en SAs grandes
91

Redes: Tema 5

OSPF jerrquico
Router de frontera BGP Routers de frontera de rea

rea troncal

rea 3 Routers internos

rea 1

rea 2

Redes: Tema 5

92

4.3 Encaminamiento por vector de distancias

Cada nodo mantiene un vector que contiene su estimacin de la distancia a los restantes nodos de la red Cada nodo distribuye este vector peridicamente a sus vecinos (nodos conectados a l directamente) A partir de los vectores que recibe, y de lo que el propio nodo conoce, calcula la distancia ms corta a cada destino y el siguiente salto de la ruta

Se asume que cada nodo conoce la distancia a sus vecinos y que un enlace fuera de servicio tiene coste infinito
93

Redes: Tema 5

Clculo de la distancia a un destino

Ejemplo: la distancia de x a y:
d (y) = min {c(x,v) + d (y)} x
v v
v se calcula para todos los vecinos de x

Con las distancias desde cada vecino se construye la tabla de distancias Y a partir de la tabla de distancias la de encaminamiento

Redes: Tema 5

94

Ejemplo de una tabla de distancias (nodo B)


Distancia del nodo B al nodo destino A

d (A) = min {c(B,C) + dC(A), c(B,D) + d (A)} = min {1 + 3, 1 + 1} = 2


B
A

Vectores de distancias de los nodos C y D

C A B D E 3 1 2 1 A B C E

Tabla de distancias del nodo B


Coste al destino va

D 1 1 2
Destino

D ()
B

C 4 1 3 2

D 2 3 1 2
95

A C D E

dB(C) = 1

dB(D) = 1

Redes: Tema 5

Ejemplo de una tabla de encaminamiento


Coste al destino va

DD() A
Destino

A 1 3 4 3

B 3 1 2 3

E 3 3 2 1

Destino Siguiente salto

A B C E

A B B E

B C E

Tabla de distancias

Tabla de encaminamiento

Redes: Tema 5

96

Vector de distancias: descripcin

Iterativo, asncrono:

Cada iteracin local causada por:

Cada nodo:
espera hasta (cambio en un enlace local o mensaje de algn vecino o intervalo_max de actualizacin)

el coste de un enlace local ha cambiado mensaje de un vecino: su coste mnimo ha cambiado actualizacin peridica Cada nodo notifica a sus vecinos slo si su coste mnimo a algn destino ha cambiado

recalcula la tabla de distancias

Distribuido:

si el coste del camino a algn destino ha cambiado, notifica a sus vecinos

Redes: Tema 5

97

Algoritmo de encaminamiento de vector de distancias (I)


En cada nodo, x:
1 inicializacin: 2 para todos los destinos y en N: /* N conjunto de destinos */ 3 si y es vecino de x: 4 dx(y) = c(x,y) 5 si no 6 dx(y) = 7 para cada vecino w 8 enviar a w el vector de distancias Dx = {dx(y) : y N}

Redes: Tema 5

98

Algoritmo de encaminamiento de vector de distancias (II)


9 repetir 10 esperar (hasta ver un cambio en el coste del enlace a un vecino 11 o hasta recibir una actualizacin desde un vecino) 12 13 para cada y en N 14 dx(y) = minw {c(x,w) + dw(y)} 15 16 si dx(y) ha cambiado para cualquier destino y 17 enviar vector de distancias dx=[dx(y) : y N] a todos los vecinos 18 19 siempre

Redes: Tema 5

99

Vector de distancias: cambios en el coste de un enlace (I)


B A D

Coste al destino va:

Coste al destino va:

D E()
E
Destino

C 4 2 1 3

D 2

D E()

D 2 2 3 1

A B C D

A inf
Destino

2 3 1

B inf C inf E inf

Los cambios en los costes a veces se resuelven rpidamente

Redes: Tema 5

100

Vector de distancias: cambios en el coste de un enlace (II)

Pero ... en ocasiones la red puede tener problemas para estabilizarse


Coste al destino va

B A D

DD()

B 3 1 2 3

E 3 3 2

A inf
Destino

La ruta que tiene B utiliza el enlace DA!

B inf C inf E inf

Aparecen bucles en el encaminamiento Problema de la cuenta al infinito

Soluciones:

Limitacin del dimetro de la red Split horizon


101

Redes: Tema 5

4.4 RIP (Routing Information

Protocol)

Algoritmo de vector de distancias, ampliamente utilizado en Internet El coste de las rutas hace referencia a cmo alcanzar redes destino

Alcanzar una red directamente conectada tiene coste cero

Los routers envan sus mensajes RIP peridicamente cada 30 s.

Los paquetes RIP indican direccin de red destino, distancia a la red destino

Redes: Tema 5

102

RIP: fallo y recuperacin de enlaces

Si un router no recibe informacin de un vecino durante 180 s. asume que est muerto

Anula las rutas que utilizaban ese vecino Advierte a sus otros vecinos

Se envan slo las modificaciones detectadas

Sus vecinos a su vez envan nuevos avisos (si han tenido que modificar sus tablas) El fallo se propaga a travs de la red 16 saltos se asumen como distancia infinita
103

Redes: Tema 5

RIP: Ejemplo (I)


w x A C
Red destino Router siguiente Num. de saltos al destino

w y z x
.

A B B
. .

1 1 6 0
....

Tabla de encaminamiento en D
Redes: Tema 5

104

RIP: Ejemplo (II)


Dest w x z . Saltos 0 0 3 ...

Anuncio de A a D

x A C D B

Red destino

Router siguiente

Num. de saltos al destino

w y z x
.
Redes: Tema 5

A B BA -.

1 1 64 0
....
105

Tabla de encaminamiento en D

4.5 Encaminamiento en Internet


Internet no es una red plana:

Escalabilidad:

Con ms de 2 millones de destinos posibles, los algoritmos vistos:

Autonoma administrativa

Internet = red de redes

Tendran problemas de convergencia Generaran gran cantidad de trfico, que inundara los enlaces de Internet Necesitaran tablas de encaminamiento inmensas

Cada administrador puede querer elegir el protocolo de encaminamiento Tener un criterio distinto sobre la mtrica ms idnea

Redes: Tema 5

106

Solucin: encaminamiento jerrquico

Dividir Internet en regiones, ''sistemas autnomos'' (SA):

Routers pasarela

Los routers del mismo SA ejecutan el mismo protocolo de encaminamiento


Son routers especiales que comunican distintos SAs Utilizan el protocolo ''intra-SA'' Son responsables de encaminar fuera del SA mediante protocolos ''inter-SA''

Protocolo ''intra-SA'' Tienen informacin completa del resto de routers del SA Los routers en diferentes SAs pueden utilizar distintos protocolos ''intra-SA''

Redes: Tema 5

107

Encaminamiento intra-SA e inter-SA


C.b A.a
a C b d A A a b b c

B.a A.c
a c B b

Pasarelas:

Encaminamiento inter-SA entre ellas Encaminamiento intra-SA con los otros routers de su SA

Encaminamiento inter-SA, intra-SA

Algoritmo de encaminamiento intra-SA

Algoritmo de encaminamiento inter-SA

Tabla de encaminamiento

Redes: Tema 5

108

Ejemplo de encaminamiento intra-SA e inter-SA:


C.b A.a a H1 C b d a b b c A.c a

Encaminamiento inter-SA entre A y B


B.a c B H2 b

Encaminamiento intra-SA dentro del SA B

Encaminamiento intra-SA dentro del SA A

Redes: Tema 5

109

Encaminamiento en el interior de sistemas autnomos

Protocolos para calcular las rutas dentro de un SA Los protocolos intra-SA ms comunes son:

RIP (Routing Information Protocol) OSPF (Open Shortest Path First)

Tambin conocidos como protocolos IGP (Interior Gateway Protocols)

Redes: Tema 5

110

Encaminamiento entre SAs: BGP (Border Gateway Protocol)

Es un estndar de facto

Versin actual 4, RFC 1771 Obtener informacin sobre redes destino que se pueden alcanzar a travs de otros SAs Propagar esa informacin a todos los routers internos del SA Obtener buenas rutas a las redes destino basadas en informacin de rutas y polticas de los SAs

Permite a cada SA:

Redes: Tema 5

111

Caractersticas bsicas de BGP


Es un protocolo muy complejo Emplea conexiones TCP semi-permamentes (sesiones BGP)

Entre routers de distintos SAs y entre routers del mismo SA Los routers que se comunican no necesitan compartir un enlace fsico directo
a b C d A A b b a c a B c b

Sesin eBGP Sesin iBGP


112

Redes: Tema 5

Funcionamiento de BGP

Es un algoritmo por vector de caminos:

Similar al protocolo por vector de distancias pero trabaja con rutas completas Cada SA tiene un nmero de identificacin nico Cada pasarela informa de la secuencia de SAs que se atraviesan hasta alcanzar una red destino Trabajar con rutas completas presenta ventajas:

Impide los bucles en el encaminamiento

Redes: Tema 5

113

BGP: ejemplo

SA 200 170.10.0.0/16

SA 100 180.10.0.0/16

SA 300 SA 400 150.10.0.0/16

180.10.0.0/16 300 200 100 170.10.0.0/16 300 200

SA 500

180.10.0.0/16 300 200 100 170.10.0.0/16 300 200 150.10.0.0/16 300 400
114

Redes: Tema 5

Funcionamiento BGP (II)

Tareas de un router BGP:

Recepcin y filtrado de anuncios de ruta desde los routers vecinos directamente conectados Seleccin de ruta

Eleccin de un camino para encaminar al destino X Decisin de poltica de rutado

Envo de anuncios de ruta al vecindario

Redes: Tema 5

115

BGP: control de rutas


B
w

A C

x y

A, B, C son redes de proveedores X, W, Y son redes clientes X est ligado a 2 redes


X no quiere encaminar trfico de B a C ... X no anunciar a B una ruta a C


116

Redes: Tema 5