redes de telecomunicaci on - universidad de...

131
Redes de Telecomunicaci´ on Baquero Portero, Isidro Borrego Checa, Juan amara Mora, Carlos M Clemente Pascual-Vaca, Emilio arquez Gir´ aldez, Laura anchez-Matamoros P´ erez, Jose Morales Castro, Manuel ´ Angel Neira Fern´ andez, Rub´ en Ojeda Rodr´ ıguez, Maria Elena Rodr´ ıguez Quesada, Agust´ ın Romero del Toro, Maria Jos´ e Rueda Borrego, Beltr´an Serrano Mu˜ noz, Fernando Julio 2007

Upload: others

Post on 21-Jan-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion

Baquero Portero, IsidroBorrego Checa, Juan

Camara Mora, Carlos MClemente Pascual-Vaca, Emilio

Marquez Giraldez, LauraSanchez-Matamoros Perez, Jose

Morales Castro, Manuel AngelNeira Fernandez, Ruben

Ojeda Rodrıguez, Maria ElenaRodrıguez Quesada, AgustınRomero del Toro, Maria Jose

Rueda Borrego, BeltranSerrano Munoz, Fernando

Julio 2007

Page 2: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Indice general

1. Introduccion a las redes de telecomunicaciones 5

1.1. Definicion. Modelo generico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

1.2. Eficiencia, evolucion e integracion . . . . . . . . . . . . . . . . . . . . . . . . . . 6

1.3. Elementos de una red . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

1.3.1. Elementos basicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

1.3.2. Elementos no basicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

1.4. Clasificacion de las redes de telecomunicaciones en funcion de como actuan susconmutadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

1.4.1. Tipos basicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

1.4.2. Tipos de redes basadas en la conmutacion de paquetes atendiendo al fun-cionamiento interno . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

1.4.3. Tipos especiales de conmutacion de paquetes . . . . . . . . . . . . . . . . 8

1.4.4. Ejemplos. Internet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

1.5. Retardos en redes de conmutacion de paquetes . . . . . . . . . . . . . . . . . . . 10

1.6. Revision de los modelos de referencia: el modelo OSI . . . . . . . . . . . . . . . 11

1.6.1. Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

1.6.2. Capas o niveles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

1.6.3. Comunicacion entre sistemas. Primitivas . . . . . . . . . . . . . . . . . . 13

1.6.4. Funciones que se pueden realizar en cada capa . . . . . . . . . . . . . . . 16

1.6.5. Comparacion con la jerarquıa TCP/IP . . . . . . . . . . . . . . . . . . . 17

1

Page 3: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 2

2. Redes de area extensa, WAN, Wide Area Networks 18

2.1. Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

2.2. Funciones basicas del nivel de red . . . . . . . . . . . . . . . . . . . . . . . . . . 19

2.2.1. Direccionamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

2.2.2. Encaminamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

2.2.3. Control de congestion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

2.2.4. Integracion de redes heterogeneas . . . . . . . . . . . . . . . . . . . . . . 22

3. Direccionamiento 23

3.1. Tipos de direcciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3.1.1. Clasificacion segun el ambito o alcance . . . . . . . . . . . . . . . . . . . 23

3.1.2. Clasificacion segun la jerarquıa . . . . . . . . . . . . . . . . . . . . . . . 23

3.2. Formatos de direcciones mas extendidos . . . . . . . . . . . . . . . . . . . . . . 24

3.2.1. IPv4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

3.2.2. Otros esquemas de direccionamiento . . . . . . . . . . . . . . . . . . . . 30

3.3. Algunos ejemplos de funcionamiento de IPv4 . . . . . . . . . . . . . . . . . . . . 32

3.3.1. Maquinas directamente accesibles . . . . . . . . . . . . . . . . . . . . . . 32

3.3.2. Subnetting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

3.3.3. Varios interfaces de red en una misma LAN . . . . . . . . . . . . . . . . 34

3.3.4. Ejercicio propuesto en clase . . . . . . . . . . . . . . . . . . . . . . . . . 35

3.3.5. Difusion de mensajes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

4. Integracion de redes 38

4.1. Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

4.2. Ejemplo de integracion de redes con IPv4 . . . . . . . . . . . . . . . . . . . . . . 39

4.3. Formato de los paquetes IPv4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

4.3.1. Fragmentacion de paquetes IPv4 . . . . . . . . . . . . . . . . . . . . . . 41

4.3.2. Opciones mas usuales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

4.4. Tablas de encaminamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

Page 4: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 3

5. Encaminamiento 53

5.1. Tipos de direcciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

5.2. Clasificacion de mecanismos de encaminamiento . . . . . . . . . . . . . . . . . . 54

5.3. Jerarquıa de encaminamiento y direccionamiento . . . . . . . . . . . . . . . . . . 55

5.4. Establecimiento de vecindades (Neighbour creating) . . . . . . . . . . . . . . . . 57

5.4.1. Enlace punto a punto . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

5.4.2. Red de area local (LAN) . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

5.5. PROXY ARP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

5.6. Calculo de rutas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

5.6.1. Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

5.6.2. Algoritmo del camino mas corto . . . . . . . . . . . . . . . . . . . . . . . 70

5.7. Distribucion de la informacion . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

5.7.1. Vector de distancias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

5.7.2. Estados de los enlaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

5.7.3. LSP en una LAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

5.8. Protocolos especıficos de encaminamiento . . . . . . . . . . . . . . . . . . . . . . 84

5.8.1. Protocolos intradominio (IGP) . . . . . . . . . . . . . . . . . . . . . . . . 87

5.8.2. Protocolos interdominio (EGP) . . . . . . . . . . . . . . . . . . . . . . . 90

5.8.3. TEMA 6: Control de congestion . . . . . . . . . . . . . . . . . . . . . . 96

5.8.4. Clasificacion de los mecanismos de control de congestion . . . . . . . . . 97

6. Capa de transporte 99

6.1. Introduccion a la capa de transporte . . . . . . . . . . . . . . . . . . . . . . . . 99

6.2. Jerarquıa TCP/IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100

6.2.1. UDP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100

6.2.2. TCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

Page 5: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 4

7. Evolucion de los equipos y tendencıas 118

7.1. Introduccion a IPv6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118

7.2. Direccionamiento en IPv6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118

7.3. Direcciones especiales en IPv6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

7.4. Organizacion de las direcciones en IPv6 . . . . . . . . . . . . . . . . . . . . . . . 122

7.5. Asignacion de direcciones en IPv6 . . . . . . . . . . . . . . . . . . . . . . . . . . 122

7.6. Formato de datagramas IPv6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124

7.7. Cabeceras de opciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125

7.8. Protocolo ICMPv6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127

7.9. IPv6 Movil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128

7.10. Introduccion a IPsec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129

7.11. Introduccion a las VPN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130

Page 6: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Capıtulo 1

Introduccion a las redes detelecomunicaciones

1.1. Definicion. Modelo generico

Podemos definir una red de telecomunicaciones como aquella que proporciona una comu-nicacion eficiente entre multiples entidades usando distintas tecnologıas (electrica, electronica,electromagnetica...).

El modelo general de una red de telecomunicaciones (fig. 1.1) se compone de:

Figura 1.1: Modelo general de una red de telecomunicaciones.

Fuente: genera informacion.

Transmisor: transforma informacion en senales.

Sistema de transmision: transporta senales.

Receptor: inverso del transmisor.

Destino: donde llega la informacion.

5

Page 7: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 6

1.2. Eficiencia, evolucion e integracion

Para mejorar la eficiencia usamos conmutadores, dando lugar a estructuras jerarquicas exis-ten distintas redes dependiendo del servicio que se quiera ofrecer con dicha red (fig. 1.2):

Figura 1.2: Interconexion de dos redes mediante un conmutador.

Redes publicas: RTB, X.25, TV por cable.

Redes privadas: Centralitas, red de datos (red de area local)

RDSI: Red unica que se concibio para que pudiera servir para ofrecer cualquier tipo deservicio. La tecnologıa ATM es la que iba a soportar RDSI.

1.3. Elementos de una red

1.3.1. Elementos basicos

Acceso: parte de la red que va del sistema origen al primer conmutador (bucle de abonado).

Conmutacion: conjunto de conmutadores que forman la red.

Transmision: conjunto de enlaces que une los conmutadores. Se usan tecnicas de multiple-xion para compartir enlaces. Al conjunto de conmutadores y enlaces se les denomina reddorsal.

Senalizacion: parte de la red que controla su funcionamiento. Hay dos tipos de senalizacion:usuario-red, que comunica al usuario con el sistema, y red-red, que utiliza el sistema paraorganizarse.

Page 8: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 7

1.3.2. Elementos no basicos

Sincronizacion: corresponde a toda la parte que se encarga de sintonizar un transmisor conun receptor.

Gestion: se encarga de los fallos (detectarlos, corregirlos...), monitorizacion y tarificacion.

Servicios: es la parte de red que sirve para ofrecer distintos servicios.

1.4. Clasificacion de las redes de telecomunicaciones en

funcion de como actuan sus conmutadores

1.4.1. Tipos basicos

Redes basadas en conmutacion de circuitos: se basan en establecer una reserva de recur-sos para la comunicacion. Este sistema es muy adecuado con fuentes que emiten a una tasaconstante y que durante un cierto tiempo hablan con el mismo destino, como pueden serlas conversaciones telefonicas. Sin embargo, no es adecuado para comunicacion entre orde-nadores, ya que estos no tienen tasa constante y cambian constantemente de destinos, porlo que si reservamos un canal exclusivamente para ellos gran parte del tiempo lo estaremosdesaprovechando.

Redes basadas en conmutacion de paquetes: pensadas para fuentes intermitentes a rafa-gas y cuando los destinos cambian rapidamente. Utilizan multiplexion estadıstica. Fig.1.3.

Figura 1.3: Red de conmutacion de paquetes.

Page 9: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 8

1.4.2. Tipos de redes basadas en la conmutacion de paquetes aten-diendo al funcionamiento interno

Circuito virtual: consiste en preparar el camino para mandar una serie de paquetes de formaque todos sigan la misma ruta. Al transmitir el primer paquete, se calcula la ruta hacia eldestino. Todos los paquetes posteriores con el mismo destino siguen la misma ruta.

Datagrama: en este caso, el camino se busca para cada paquete individualmente. Es mas lentosi existe gran cantidad de paquetes, pero permite adaptarse mejor a los cambios de la red.

1.4.3. Tipos especiales de conmutacion de paquetes

Conmutacion de mensajes: cuando llega a un conmutador la informacion que se ha ido frag-mentando en paquetes, se reensambla, se analiza y se vuelve a enviar el paquete frag-mentandolo de nuevo. Sirve cuando queremos interconectar redes con funcionamientosmuy distintos.

Conmutacion de celulas: los paquetes son de tamano fijo y pequenos. Al ser de tamano fijo,los calculos son mas sencillos y rapidos de realizar (incluso se pueden realizar por hard-ware), pero la probabilidad de fragmentacion es mas alta. Por ser de tamano pequeno, lacabecera ocupara proporcionalmente un tamano mayor, lo que disminuye el rendimiento,pero a cambio presenta la ventaja de tener un tiempo de transmision menor. Un tiempo detransmision menor minimiza el problema de que llegue un paquete mientras estas trans-mitiendo. Ademas, el tiempo de llenado (tiempo que se tarda en crear un paquete, porejemplo si estamos muestreando) es menor, lo cual es una ventaja.

1.4.4. Ejemplos. Internet

Existen dos ejemplos claros de redes que utilizan cada uno de los dos sistemas comentadosen el apartado 1.4.1:

Conmutacion de circuitos: RTB (Red Telefonica Basica).

Conmutacion de paquetes: Internet.

Veremos en profundidad el segundo ejemplo, Internet.

Page 10: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 9

Descripcion interna

Funciona con conmutacion de paquetes. Sus componentes serıan sistemas finales (hosts),conmutadores intermedios (encaminadores o routers), enlaces de comunicacion (punto a punto,red de area local) y otros dispositivos como repetidores o puentes.

Organizacion

Protocolos: Jerarquıa TCP/IP

Normas: RFC (IETF)

Proveedores de servicios: los Internet Service Provider (ISP) son los que componen la reddorsal. Se estructuran en 3 niveles, llamados ”tiers”. Los proveedores tier 3 son los quedan acceso a nivel residencial o a pequenas companıas. Los tier 2 proveen a los tier 3. Losgrandes proveedores, llamados tier 1 o Internet Backbone Provider (IBP), solo dan accesoa proveedores tier 2 o companıas muy grandes. Los tier 1 tienen alcance internacional yestan interconectados entre sı (fig. 1.4).

Figura 1.4: Internet Service Providers o ISPs.

Descripcion externa

Permite aplicaciones distribuidas.

Page 11: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 10

Presenta dos tipos de servicios:

• No orientado a conexion y no fiable

• Orientado a conexion y fiable.

No garantiza retardo en ninguno de los casos.

1.5. Retardos en redes de conmutacion de paquetes

Existen cuatro tipos de retardos:

Procesamiento: se denomina tiempo de procesamiento el tiempo que tarda el conmutador endecidir que hacer con un paquete. Es aproximadamente constante.

Encolado: se denomina tiempo de encolado al tiempo que tiene que esperar un paquete a quese transmitan otros. Es muy variable, lo que hace que se convierta en el principal problemade la fuente.

Transmision: el tiempo de transmision depende de la longitud del paquete (L, en bits) y de sucapacidad (C, en bits por segundo), ecuacion 1.1.

ttransmision =L

C(1.1)

Propagacion: el tiempo de propagacion depende de la distancia que separa a los nodos emisory receptor (D, metros) y de la velocidad con la que se propaga la senal (V, metros porsegundo), ecuacion 1.2.

tpropagacion =D

V(1.2)

En la fig. 1.5 podemos ver de forma esquematica los distintos retardos que intervienen enuna transmision entre el equipo A y el B.

Para estudiar el tiempo de encolado se emplea la teorıa de colas, donde:

Numero de paquetes por segundo que llegan al sistema (tasa de llegada): λ

Tasa de salida del sistema: CL

Intensidad de trafico: λ

(CL )

. Si es ≥ 1, la cola se hace infinita.

Page 12: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 11

Figura 1.5: Retardos que intervienen en una transmision.

1.6. Revision de los modelos de referencia: el modelo OSI

1.6.1. Introduccion

Cuando los equipos telematicos empezaron a conectarse en red hace unas decadas, cadafabricante desarrollo su propia arquitectura, de manera que era imposible conectar en la mismared equipos de distintos fabricantes (a menos que los fabricantes hubieran desarrollado interfacesentre sus equipos). Como alternativa a los sistemas propietarios, la UIT-T desarrollo la normaX.200, con el objetivo de interconectar sistemas de distintos fabricantes (interoperabilidad). Estanorma es lo que conocemos como modelo OSI (Open System Interconnection).

Se trata de un modelo de capas en el que cada una de dichas capas:

Ofrece un servicio a la inmediatamente superior.

Recibe servicios de la capa inferior a ella.

Page 13: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 12

De esta forma, el modelo OSI aborda el problema de la interconexion de equipos dividiendoloen varios ”problemas menores”. Esta solucion es menos eficiente que una solucion directa (unaque aborde simultaneamente todos los procesos implicados en la comunicacion), pero es muchomas sencilla de implementar. Ademas, tiene la gran ventaja de que las distintas capas puedenir desarrollandose por separado, sin que ello repercuta en el resto de capas, por lo que podrıacambiarse toda la infraestructura de una capa determinada sin que el resto se enterara delcambio.

Existen algunos terminos que conviene tener claros al hablar del modelo OSI:

Entidad: Cada capa se descompone en entidades. Una entidad no es mas que un modulo es-pecializado que realiza una o varias de las funciones que le corresponden a dicha capa. Siantes decıamos que el modelo OSI aborda el problema de la interconexion de equipos di-vidiendolo en varios ”problemas menores, en cada capa esos ”problemas menores”vuelvena dividirse en problemas mas pequenos aun.

PDU (Protocol Data Unit): Se denomina PDU a la unidad que intercambia informacionentre entidades pares de distintos sistemas (entidades de la misma capa pero en maquinasdistintas).

Servicio: lo que ofrece cada capa a la inmediatamente superior. Para ofrecer un servicio, lasentidades de una capa colaboran con las entidades gemelas de la misma capa residentesen otros sistemas. En general, el servicio que una capa N ofrece a la capa N+1 consiste entransmitir datos.

Protocolo: conjunto de reglas que rige el intercambio de PDUs entre entidades pares.

SAP (Service Access Point): es la forma que tiene una capa de ofrecer un servicio. Los SAPconstituyen la ”frontera.o ”interfaz.entre dos capas.

Primitivas: Son las ordenes que se envıan entre capas contiguas. Son necesarias para poderacceder al servicio.

1.6.2. Capas o niveles

Nivel 1: Fısico: Se encarga de transmitir la senal por el medio fısico. Controla parametroscomo niveles de tension, tipos de senal, etc. Libera a las capas superiores de las funcionesque impongan los diferentes medios de transmision.

Nivel 2: Enlace: Es responsable de la transferencia de informacion entre nodos adyacentes.

Page 14: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 13

Nivel 3: Red: Ofrece comunicacion extremo a extremo poniendo de acuerdo a los sistemasintermedios.

Nivel 4: Transporte: Es muy similar al nivel de red, ya que tambien se ocupa de la transfe-rencia de informacion extremo a extremo. La diferencia esta en que la capa de transportelo hace independiente de cualquier nodo intermedio, mientras que la capa de red realiza sufuncion coordinandolos. Ofrece servicios que la capa de red no ofrece:

Fiabilidad: por si la capa de red ofrece un servicio no fiable, transporte puede emularuno fiable si se requiere.

Orientacion a conexion.

Multiplexion: el nivel de red puede ofrecer una sola comunicacion de una maquina aotra, mientras que el nivel cuatro puede anadir multiplexion para tener mas canales.

Nivel 5: Sesion: Ofrece mecanismos para organizar y sincronizar dialogos entre maquinas. Per-mite a las aplicaciones marcar el progreso del dialogo (insertando puntos de sincronismo)y determinar que sistema esta en posesion del turno, ası como retomar un dialogo que sehaya interrumpido (por ejemplo, si hay algun error en la transmision).

Nivel 6: Presentacion: Se ocupa de la compatibilidad sintactica (como se representa la infor-macion). Para ello ofrece una forma canonica de representar informacion independiente ala implementacion de los distintos sistemas.

Nivel 7: Aplicacion: Se ocupa de la compatibilidad semantica (lo que representa la informa-cion).

1.6.3. Comunicacion entre sistemas. Primitivas

Las entidades residentes en una capa necesitan comunicarse con las entidades gemelas re-sidentes en otros sistemas. Dicha comunicacion se realiza mediante el intercambio de mensajesdenominados PDU.

Aunque desde un punto de vista logico cada capa se comunica directamente con su equi-valente de otro sistema, la realidad es que cada capa va pasando la informacion que quieretransmitir a la inferior, hasta llegar a la mas baja (nivel fısico), que es la unica que se comunicarealmente”. Para ello, segun la informacion va atravesando de forma descendente las distintascapas del modelo, se van anadiendo encabezamientos que contienen la informacion de control.El conjunto resultante se transmite por el canal, y en el destino seguira el camino inverso, es

Page 15: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 14

decir, cada encabezamiento sera utilizado solo por la capa receptora del mismo nivel; los en-cabezamientos destinados a las capas superiores son completamente ignorados, permitiendo laevolucion independiente de cada una de las capas.

Como ilustra la fig. 1.6, cuando una capa quiere mandar informacion lo hace en formade PDUs. Para ello, la entidad correspondiente de la capa N+1 utiliza los servicios que la capainferior (la capa N) le ofrece a traves del SAP, generando un SDU (Service Data Unit) que pasa adicha capa. A este N-SDU se le anade una cabecera llamada PCI (Protocol Control Information).La PCI contiene informacion que solamente es util para la capa par, de modo que cuando unacapa recibe una PDU, extrae la PCI, la interpreta y envıa la SDU a la capa superior.

Figura 1.6: Intercambio de PDUs entre entidades pares mediante los servicios que ofrecen lascapas inferiores.

Los SAP, como ya se ha visto, proporcionan servicios a la capa inmediatamente superior, y lohacen mediante las denominadas primitivas de servicio. Existen 4 tipos:

Peticion (REQ, Request)

Page 16: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 15

Indicacion (IND, Indication)

Respuesta (RESP, Response)

Confirmacion (CONF, Confirmation)

Segun el tipo de primitivas que utilice, un servicio puede ser:

No confirmado: solo utiliza REQ e IND.

Confirmado: usa los 4 tipos, REQ, IND, RESP y CONF.

Por otro lado, si atendemos al tipo de conexion, los servicios pueden clasificarse en:

Orientados a conexion (CO, Connection Oriented): necesitan establecer una conexion entreemisor y receptor antes de enviar los datos.

No orientados a conexion (CL, Connectionless).

Es importante recalcar que el hecho de que un servicio sea confirmado o no confirmado estotalmente independiente de que sea CO o CL. Aunque algunas de las combinaciones puedan pa-recer extranas, pueden darse cualquiera de las 4 posibilidades que podrıan obtenerse al combinarel tipo de primitivas utilizadas y la orientacion a conexion.

De forma esquematica, el funcionamiento de las primitivas serıa el de la fig. 1.7.

Figura 1.7: Uso de primitivas.

El envıo de primitivas lleva asociado, en general, la generacion de PDUs, pero no tiene porque. Por ejemplo, la maquina B puede aprovechar un paquete que contenga una peticion suyahacia A e incluir en dicho paquete una respuesta de B a una peticion anterior de A.

Page 17: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 16

1.6.4. Funciones que se pueden realizar en cada capa

Control de errores: Aunque puede realizarse en todas las capas, lo mejor es buscar un com-promiso entre calidad y servicio (segun el nivel de errores de cada capa), ya que el controlde errores consume recursos del sistema Habitualmente se realiza en las capas bajas: fısica,de enlace, de red y de transporte.

Control de flujo: Si un receptor se ve desbordado por la informacion que recibe (le llegan masdatos de los que es capaz de procesar), puede pedirle a un emisor que se frene.

Establecimiento de la conexion Dentro de un mismo sistema puede haber capas cuya co-municacion este orientada a conexion y capas que no, dependiendo de lo que interese aldisenar el sistema.

Segmentacion y reensamblado: Cada nivel tiene un tamano maximo de SDU admisible.Cuando el nivel inferior no admite una SDU que queremos transmitir por ser demasia-do grande, se puede trocear (fragmentar) esa SDU en varias en el emisor, volviendo aunirla (reensamblarla) en el receptor. Hay otras operaciones parecidas, que no veremos enprofundidad:

Bloqueo-desbloqueo: Crea bloques de informacion. Definida en la recomendacion X.200.

Concatenacion-separacion.

Multiplexion-demultiplexion: Cosiste en ofrecer el servicio de varios SAP del nivel N+1 atraves de un SAP del nivel N (fig. 1.8). Se usa de forma habitual en servicios CO.

Figura 1.8: Multiplexion.

Page 18: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 17

Figura 1.9: Comparacion OSI-TCP.

1.6.5. Comparacion con la jerarquıa TCP/IP

La Jerarquıa TCP/IP solo tiene 5 capas, cuya correspondencia con las 7 de la pila OSI esla de la fig. 1.9.

Page 19: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Capıtulo 2

Redes de area extensa, WAN, WideArea Networks

2.1. Introduccion

Existen varias formas de conectar varios ordenadores:

Punto a punto: cada ordenador se conecta directamente al resto, mediante un cable fısicoexclusivo.

Red de area local (RAL o LAN): Hablamos de una red de area local cuando tenemos variosequipos interconectados de modo que pueden comunicarse entre sı sin necesidad de pasarpor conmutadores y/o encaminadores. Como se observa en la fig. 2.1.

En una LAN, los equipos pueden interconectarse de dos formas:

Si todos los equipos trabajan con el mismo nivel fısico (por ejemplo, todos se conectana traves de interfaces Ethernet), para interconectarlos usamos un repetidor (hub).Dicho dispositivo solo presenta funciones de la capa 1 (fısica).

Para conectar equipos que utilizan interfaces no compatibles se utiliza un puente (eningles, bridge). El puente presenta funciones de las capas 1 y 2 (fısica y enlace).

Red de area extensa (RAE o WAN): para interconectar varias redes de area local, se nece-sita un encaminador o router. Este dispositivo posee funcionalidades de la capa 3 (red), lo

18

Page 20: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 19

Figura 2.1: Concepto de LAN y WAN.

que significa que puede encaminar trafico. Ademas de encaminar, puede controlar y filtrarel trafico que pase por el. Al unir varias redes LAN con encaminadores, obtenemos una redde area extensa.

Como se observa en la fig. 2.2, si la maquina A se quisiera conectar al PC de la segundared, tendrıa que seguir el siguiente camino: Saldrıa de la capa 7 del PC A, pasarıa por la capa 1del hub, por la capa 3 del router, por la capa 2 del bridge y de allı pasarıa a la capa 7 del PC.

De forma mas esquematica, una WAN se puede representar como en la fig. 2.3.

No hay que confundir el servicio ofrecido por nivel de red (orientado a conexion o noorientado a conexion) con el funcionamiento interno de los encaminadores (circuito virtual odatagrama). Normalmente, orientado a conexion se relaciona con circuito virtual, pero podemostener TCP (que es orientado a conexion) sobre datagramas.

2.2. Funciones basicas del nivel de red

Page 21: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 20

Figura 2.2: Comunicacion atravesando una WAN.

Nota: Saber cuales son las funciones basicas del nivel de red es concepto muy basico eimportante de cara al examen.

2.2.1. Direccionamiento

Identificacion unıvoca de los nodos de la red. Las direcciones son unicas en todo el nivel dered. Si el enlace es punto a punto no hacen falta direcciones.

2.2.2. Encaminamiento

Busqueda de un camino para que los paquetes atraviesen la red desde el emisor hasta elreceptor. Se divide el problema en:

Establecimiento de vecindades: saber cuales son los nodos vecinos y adyacentes.

Distribucion de informacion: distribuir la informacion que cada encaminador posee.

Calculo de rutas: se calculan rutas con la informacion que posee el encaminador y la que leenvıan los otros.

Page 22: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 21

Figura 2.3: Esquema generico de una WAN.

Nota: Saber cuales son las partes que componen el encaminamiento es concepto muybasico e importante de cara al examen.

2.2.3. Control de congestion

La red dedica parte de sus recursos para controlarse a sı misma, de modo que se evitenbloqueos. Para ello, el nivel de red debe introducir informacion adicional en los paquetes.

Figura 2.4: Comportamiento ideal, con info. de control y real en situacion de congestion.

Page 23: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 22

Como se ilustra en la fig. 2.4, los diferentes comportamientos frente a la situacion de con-gestion son los siguientes:

En el caso ideal la informacion que sale es igual a la que entra. Esto ocurre hasta que llegamosal punto de saturacion del sistema, en que independientemente de la informacion que entre,la salida es la misma, el maximo que permita el sistema.

En el caso ideal con informacion de control se pierde un poco de rendimiento al tener encuenta que parte de los recursos se dedican a la comunicacion entre conmutadores.

En el caso real entran en accion dos efectos que no tenıamos en cuenta anteriormente:

que algunos paquetes se pierden y es necesario retransmitirlos,

y que el sistema no posee una memoria infinita, sino limitada.

Por tanto, pasado un punto (punto de congestion), el sistema empieza a perder paquetesdebido a que su memoria esta llena. Ademas, se puede llegar a un punto en que todos los recursosdel sistema se dediquen al control de congestion, y perdamos la capacidad de transmitir (puntode bloqueo). Es necesario buscar un compromiso entre congestion y rendimiento. Lo mejor serıauna menor congestion a costa de un menor rendimiento.

2.2.4. Integracion de redes heterogeneas

El mejor sitio para conectar redes heterogeneas es el nivel de red, ya que es dicho nivel elque posee la informacion mas util para poder traducir los paquetes entre una red y otra.

Page 24: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Capıtulo 3

Direccionamiento

3.1. Tipos de direcciones

3.1.1. Clasificacion segun el ambito o alcance

Locales: las direcciones estan restringidas a un cierto entorno. Serıa suficiente con el direc-cionamiento en el nivel de enlace.

Globales: alcanzan a toda la red (son por tanto direcciones del nivel de red).

En el nivel de enlace se usan normalmente direcciones MAC de 48 bits (IEEE 802.11). Sondirecciones unicas que los fabricantes asignan a cada tarjeta de red, aunque solo hace falta quesean unicas dentro de una misma LAN.

3.1.2. Clasificacion segun la jerarquıa

Jerarquicas: si dos de estas direcciones tienen una parte comun, los caminos que debenseguirse para llegar a ellas tambien tienen una parte comun.

Planas: coincidencias en una parte de las direcciones no implican que los caminos a recorrervayan a tener una parte comun. Ej. Dos tarjetas de red del mismo fabricante comparten los24 primeros bits de su direccion MAC, y no tienen por que instalarse en la misma subred.

23

Page 25: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 24

3.2. Formatos de direcciones mas extendidos

3.2.1. IPv4

Introduccion

Se trata de direcciones globales y jerarquicas de 32 bits (4 octetos). Tienen dos partes, redy host (tambien llamadas subred y maquina, respectivamente). Todas las maquinas cuya partede red coincida, deben poder comunicarse directamente sin pasar por un router; dicho de otromodo, esas maquinas podrıan comunicarse mediante el nivel de enlace. En ese caso se dice queesas maquinas son directamente accesibles.

Clases de direcciones IP. Direcciones especiales

Existen 3 tipos fundamentales de direcciones IPv4, que se distinguen segun el valor de susprimeros bits:

Clase A: La parte de red la foman los 8 primeros bits mientras que la parte de host son lossiguientes 24 bits. El numero maximo de direcciones que podemos conseguir son 16777216.

0XXXXXXX.XXXXXXXX.XXXXXXXX.XXXXXXXX

Clase B: La parte de red la foman los 16 primeros bits. El numero maximo de direccionesson 65536.

10XXXXXX.XXXXXXXX.XXXXXXXX.XXXXXXXX

Clase C: La parte de red la foman los 24 primeros bits. El numero maximo de direccionesson 256.

110XXXXX.XXXXXXXX.XXXXXXXX.XXXXXXXX

Ademas de estas tres fundamentales, existen otras dos clases de direcciones, aunque su usoesta poco extendido:

Clase D: direccion de grupo (multidifusion o multicast). Sirven para enviar un mismodatagrama simultaneamente a varios destinatarios de un mismo grupo. Su formato es elsiguiente:

Page 26: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 25

1110XXXX.XXXXXXXX.XXXXXXXX.XXXXXXXX

Tienen dos particularidades:

• No pueden usarse como direccion de origen, solo de destino.

• Necesitan usar el protocolo IGMP para ser encaminadas. Esto significa que solo sepodran usar estas direcciones entre redes que esten unidas por routers que ”ha-blen”multicast, lo que en la practica ocurre muy pocas veces.

Clase E: este tipo de direcciones estan reservadas para usos experimentales y posiblesusos futuros. Su formato es el siguiente:

1111XXXX.XXXXXXXX.XXXXXXXX.XXXXXXXX

Figura 3.1: Tabla resumen de las clases de direcciones.

Existe una serie de direcciones IPv4, denominadas especiales, que tienen un uso especıfico,independientemente de lo que pudiera indicar a priori su clase:

255.255.255.255 - Direccion de difusion general (tambien llamada de difusion local olimitada): cuando se envıa un datagrama con esta direccion de destino, la tarjeta de red loenvıa a todos los nodos de la red local. Si la LAN esta interconectada con otras medianteun router, este NO retransmite el datagrama fuera de la red.

127.xxx.xxx.xxx - Direccion reflexiva: cuando se envıa un datagrama a esta direccion,vuelve a la misma maquina que lo envio. Sirve generalmente para realizar pruebas ydiagnosticos del sistema.

Page 27: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 26

Direcciones de uso privado - no tienen por que ser unicas, esto es, sı se pueden repetirdentro de distintas redes locales, pero estan aisladas de la WAN. Son tres rangos:

• 10.0.0.0 - 10.255.255.255

• 172.16.0.0 - 172.31.255.255

• 192.168.0.0 - 192.168.255.255

Para que las maquinas que esten dentro de una red local direccionadas con una direccionprivada puedan comunicarse con otras redes remotas a traves de una WAN se utiliza el protocolode encaminamiento NAT (Network Address Translation). Este protocolo se implementa general-mente en los routers, y se encarga de traducir de forma transparente al usuario las direccionesIPv4 privadas en direcciones IPv4 validas para poder ser enviadas a traves de una WAN.

Mascaras

El esquema de direccionamiento de IPv4 que acabamos de ver (denominado ”por clases oclassful”) es muy comodo y sencillo de gestionar, pero tiene el inconveniente de ser poco flexible.Por ello surgieron las mascaras (y su implementacion obligo a realizar ciertas modificacionesen los protocolos de encaminamiento, como veremos).

Una mascara no es mas que un grupo de 32 bits divididos en 4 octetos (como las direccionesIPv4) que indican hasta donde llega la parte de red de una direccion dada. Su formato es elde una serie de unos seguido de una serie de ceros (salvo los casos lımite de ”todo unos y todoceros”, claro), es decir, que no puede haber ceros intercalados entre los unos, ni unos entre losceros. Suelen expresarse en decimal, como las direcciones; por ejemplo:

11111111.11111111.11111111.10000000=255.255.255.128

Tambien pueden expresarse mediante una ”notacion compacta”, que consiste en poner unabarra seguida del numero de unos que tiene la mascara justo tras la direccion a la que seaplica. Por ejemplo, para aplicar la mascara anterior a la direccion 138.4.3.120 podrıamos usarindistintamente:

138.4.3.120/255.255.255.128 o 138.4.3.120/25

Las macaras pueden usarse de diversas maneras para dar mayor flexibilidad al sistema dedireccionamiento IPv4. Veremos algunas de estas formas con mayor detalle, y otras simplementelas nombraremos.

Page 28: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 27

Subnetting con subredes homogeneas (FLSM - Fixed Length Subnet Mask)

Inicialmente se desarrollo dentro de algunas grandes empresas que lo empleaban paraoptimizar sus redes, pero acabo convirtiendose en un estandar.

El esquema ”classful”que acabamos de ver presenta varios problemas:

• Las direcciones de clase A estan sobredimensionadas, ya que pueden albergar millonesde hosts, lo que difıcilmente una tecnologıa LAN podrıa soportar. Ademas, son muyescasas, y por tanto caras.

• Por otro lado, las direcciones de clase B tambien son demasiado grandes para serempleadas como ”unidad mınima”. Por ejemplo, si una companıa tiene 2000 maquinas,necesitara una direccion B, que le permitira direccionar 65536 maquinas. Como vemos,esto es muy ineficiente, ya que se desperdician mas de 60000 direcciones.

• No permite el fraccionamiento interno de la red; si se quiere aislar el trafico entre dosgrupos de maquinas, es necesario asignar una direccion a cada grupo.

El subnetting permite introducir routers dentro de una LAN y realizar subredes dentro deuna misma direccion de red tipo B (teoricamente puede usarse tambien en las clase A yC, pero es muy poco habitual). Desde el exterior, es como si la LAN original no hubieracambiado (permite compatibilidad hacia atras con los esquemas de direccionamiento origi-nales de IPv4), pero desde dentro de la red es como si se hubiera dividido en varias LANsmas pequenas, lo que permite gestionar el trafico de red mucho mejor.

Su funcionamiento es muy simple: se trata de dividir el campo host de una direccion IPcomo las que vimos en el apartado anterior en dos, asignando una de estas partes al campode red para formar un ”campo de red extendido”. Para ello se emplea una mascara, quedebera tener tantos unos seguidos como el campo de red ”original”mas el numero de bitsque queramos ampliarlo. Es mas facil verlo graficamente en la fig. 3.2.

Figura 3.2: Ejemplo de subnetting.

Page 29: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 28

Al aplicar la mascara, aparecen nuevas direcciones reservadas:

• Direccion de la subred: IP AND MASK

• Direccion de difusion de la subred: IP OR (MASK negada)

La direccion de subred no se usa (no esta asignada a ningun host de la red, solo se uti-liza para cırculos de direccionamiento). En cambio, la direccion de difusion de la subredsı; conviene resaltar que, a diferencia de la direccion de difusion general, la direccion dedifusion de subred sı puede emplearse para transmitir datagramas a equipos que no estanen la misma red fısica, pudiendo atravesar routers (siempre que estan en la misma subred).

Cada subred ira desde la (direccion de subred+1) hasta la (direccion de difusion de lasubred -1), por lo que cada una tendra:

nodirecciones = 2LongitudCampoHost − 2 (3.1)

Desde el exterior, no habra diferencia alguna, pero internamente el router tendra un ma-yor control sobre el trafico en cada subred; por ejemplo, cuando se indica la direccion dedifusion de la subred, el datagrama debe llegar a todos los nodos de la subred, pero no salefuera de esta.

Subnetting con subredes no homogeneas (VLSM-Variable Length Subnet Mask)

La principal restriccion del subnetting que acabamos de ver es que la mascara debe ser lamisma para todas las subredes. Esto es lo mismo que decir que todas las subredes tendranel mismo tamano, ya que en todos los casos los campos de subred y host tendran el mismonumero de bits. Con este esquema se desaprovechan muchas direcciones.

Con VLSM se pretende dar aun mas flexibilidad, ya que permite que distintas subredestengan mascaras distintas (permite crear sub-subredes, por decirlo de alguna manera),permitiendo de esta manera ajustar mas los tamanos de las subredes al numero de maquinasque estan dentro de ellas y desaprovechando menos direcciones.

El esquema VLSM no es compatible con el esquema ”classful”, ya que es necesario modificarel protocolo de red para que pueda transportar las mascaras de las subredes ademas de lasdirecciones IP.

No veremos nada mas acerca de este esquema de direccionamiento.

Page 30: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 29

Supernetting

Supongamos que se desea montar una red con 900 equipos. Para poder direccionarla, unadireccion de clase C (254 hosts) serıa insuficiente, pero usar una de clase B (65536 hosts)implicarıa desperdiciar miles de direcciones utiles. Esta situacion se dio mucho, pues redesde tamano medio se veıan obligadas a pedir una direccion de clase B a pesar de desapro-vechar la mayor parte del espacio de direcciones, lo que llevo a un rapido agotamiento deeste tipo de direcciones.

El supernetting nacio como solucion a este problema: basicamente consiste en la asociacionde varias direcciones consecutivas (normalmente de clase C) para formar una especie de”super-red”(en contraposicion al termino ”subred”) mayor. La forma de hacerlo es sencilla:se toman varias direcciones consecutivas y se les asocia a todas la misma mascara. Elrouter solo debera recordar la primera direccion del grupo y la mascara (por lo que no escompatible con el sistema ”classful”).

Veamos un ejemplo para nuestra red de 900 equipos. Necesitaremos 4 direcciones de claseC (254 x 4 = 1016 hosts) que sean consecutivas, ya que en ese caso su campo de redsera exactamente igual salvo por los ultimos bits. Supongamos que en nuestro caso el campode red de la primera direccion acaba con los bits 00; de esta forma, las tres direccionessiguientes acabaran en 01, 10 y 11, pero el resto del campo de red sera exactamente igualal de la primera direccion.

Figura 3.3: Ejemplo de supernetting

Como puede verse, el supernetting tiene una restriccion: las direcciones solo pueden agru-parse en conjuntos que sean potencias de 2 (de 2 en 2, de 4 en 4, de 8 en 8), debido a laforma de aplicar las mascaras. Se siguen desaprovechando algunas direcciones, pero desde

Page 31: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 30

luego no tantas como con el esquema classful.

CIDR (Classless InterDomain Routing)

Es el esquema que se utiliza actualmente en Internet. Consiste en una especie de fusionentre los conceptos de VLSM y supernetting, y soluciona (al menos de forma temporal)los dos principales problemas que estaba teniendo internet:

• Agotamiento de direcciones

• Crecimiento excesivo de las tablas de enrutamiento

Sus principales caracterısticas son:

• Las clases de direcciones (A, B, C, etc) dejan de tener sentido. Esto permite quecualquier red este dentro de cualquier rango (no siendo necesario hacer subredes dentrode una de clase B, como en el subnetting, o agrupar direcciones de clase C, como enel supernetting).

• Las entradas en las tablas de enrutamiento de los routers deben tener, ademas de ladireccion, la mascara.

• Los protocolos de enrutamiento deben ser capaces de transportar las m00e1scaras.

• Permite ajustar mas el tamano de las redes al necesario, desaprovechando menosdirecciones, gracias al uso de mascaras de tamano variable.

3.2.2. Otros esquemas de direccionamiento

ISO/NSAP

Sus direcciones tienen longitud variable, hasta un maximo de 20 octetos.

X.121

Se usa en redes X.25. La direccion esta compuesta por dıgitos, no por octetos, hasta untamano maximo de 14 dıgitos, y consta de dos campos:

TERMINAL (10 dıgitos) + RED (hasta 4 dıgitos)

Los dıgitos del campo de red tienen significado geografico, ya que identifican al paıs.

Page 32: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 31

E.164

Propia de la red telefonica actual. Se compone de un maximo de 15 dıgitos, que se dividen entres campos. Cuando se usan estas direcciones para la interconexion de redes tienen el siguienteformato:

PAIS (3 dıgitos) + Codigo de identificacion (entre 1 y 4 dıgitos) + no de abonado (12-Xdıgitos)

F.69

Se usa en la red Telex.

IPv6 o IPng (nueva generacion)

Direcciones de 128 bits (16 octetos). Cada octeto se expresa como dos cifras en hexadecimaly cada cuatro cifras hexadecimales se separan por dos puntos (:). Ejemplo:

1234:5678:90AB:0000:FCB7:0000:0000:FFA7

Si la direccion lleva dos puntos seguidos de otros dos (::), indica que la cantidad de cifrashexadecimales que faltan son todos ceros en esa posicion (4 ceros, 8 ceros, etc). Por ejemplo:

1234:5678:90AB:0000:FCB7:0000:0000:FFA7

En este caso vemos como nos faltarıa ocho ceros y los pondrıamos en la posicion de los :: comoen el primer ejemplo. No podrıamos reemplazar los primeros cuatro ceros (negrita) a la vez quelos ultimos ocho poque no sabrıamos que cantidad de ceros irıan en cada posicion.

Ademas se pueden indicar los ultimos cuatro octetos en formato IPv4. Por ejemplo:

::193.147.162.5 = 0000:0000:0000:0000:0000:0000:193.147.162.5

Las direcciones IPv6 pueden ser de tres tipos:

Unicast: como en IPv4, dirigida a un solo host.

Multicast: como IPv4, dirigida a varios host.

Anycast: es como si fuese una direccion de grupo pero con que llegue a uno del grupo essuficiente.

Page 33: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 32

3.3. Algunos ejemplos de funcionamiento de IPv4

3.3.1. Maquinas directamente accesibles

Supongamos la situacion de la figura 3.4 El equipo A no conoce la mascara de B, solo su

Figura 3.4: Ejemplo

IP. Para que A pueda saber si B esta o no accesible debe realizar lo siguiente:

Compara los resultados de estas dos operaciones:

IPa&MASCa (3.2)

IPb&MASCa (3.3)

Si ambos resultados son iguales indica que el nodo es directamente accesible, y las tramasdel nivel de enlace que transmite el equipo A seran de la forma que indica la figura 3.5:

Si ambos resultados no son identicos, el sera el encaminador el que tenga que encargarsede hacer llegar los datos a B, y los datagramas que salen de A quedarıan como la figura3.6:

Para poder realizar comunicaciones a traves del nivel de enlace, se utiliza el protocolo ARP(Address Resolution Protocol). Es un protocolo de nivel de red responsable de encontrar la

Page 34: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 33

Figura 3.5: Datagrama de A a B si B es directamente accesible

Figura 3.6: Datagrama de A a B si B no es directamente accesible

direccion hardware (Ethernet MAC) que corresponde a una determinada direccion IP. Para ellose envıa un paquete (ARP request) a la direccion de multidifusion de la red (broadcast (MAC= ff ff ff ff ff ff)) conteniendo la direccion IP por la que se pregunta, y se espera a que esamaquina (u otra) responda (ARP reply) con la direccion Ethernet que le corresponde. Cadamaquina mantiene una cache con las direcciones traducidas para reducir el retardo y la carga.ARP permite a la direccion de Internet ser independiente de la direccion Ethernet, pero estosolo funciona si todas las maquinas lo soportan.

3.3.2. Subnetting

Supongamos el rango de direcciones definido por: 193.147.160.0/21. El numero total dedirecciones que tendremos disponible, teniendo en cuenta que hay que reservar dos para direccionde red y la de difusion sera de:

232−21 − 2 = 2046 direcciones (3.4)

Supongamos que nuestro objetivo es hacer 3 subredes de aproximadamente 1000 usuariosen una y 500 en las otras dos. El esquema de lo que queremos se puede apreciar en la figura 3.7.La primera, de 512-2=510 usuarios se podrıa direccionar de la siguiente forma (hay mas de unasolucion posible):

Page 35: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 34

Figura 3.7: Ejercicio 1

193.147.160.0/23 Dir de subred: 193.147.160.0 Dir de difusion: 193.147.161.255

La segunda de los mismos usuarios serıa:

193.147.162.0/23 Dir de subred: 193.147.162.0 Dir de difusion: 193.147.163.255

Y la tercera de 1024-2=1022 usuarios serıa:

193.147.164.0/23 Dir de subred: 193.147.164.0 Dir de difusion: 193.147.167.255

En realidad a todas las subredes habrıa que quitarle un usuario mas, ya que una de estasdirecciones la tenemos que asignar a la interfaz del router con la que esta conectada la subred.Normalmente se toma la primera direccion del rango de la subred. Visto desde fuera de la red,todas las subredes comparten los 21 primeros bits de la direccion IP.

3.3.3. Varios interfaces de red en una misma LAN

Supongamos una LAN en la que tenemos, entre otros, 3 equipos llamados A, B y C. Lared se conecta a Internet mediante un router, y las mascaras de los 3 equipos es la misma:255.255.255.248 (29 bits a uno). Figura 3.8.

Page 36: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 35

Figura 3.8: Ejercicio 2

En teorıa, podrıamos pensar que, estando en la misma red local, todos los equipos deberıanpoder comunicarse directamente a traves del nivel de enlace (estar ”directamente accesibles”).Aunque esto deberıa ser ası, lo cierto es que el uso de mascaras puede hacer que no siempre seaposible.

En nuestro ejemplo, si A quiere enviar un datagrama a B o C, lo primero que harıa serıacomprobar sus direcciones con su mascara, con lo que obtendrıa:

IPa&MASCa = 150,214,4,0 (3.5)

IPb&MASCa = 150,214,4,8 (3.6)

IPc&MASCa = 150,214,4,8 (3.7)

Si A quiere mandar algo a B o C debe enviarlo al router, ya que interpreta que no estanaccesibles. Si B quiere enviar algo a C lo puede hacer directamente sin pasar por el encaminador.Por tanto, el router debera tener dos interfaces de red, que serıan 150.214.4.1 (para la subreddonde se encuentra A) y 150.214.4.9 (para la subred donde se encuentran B y C).

3.3.4. Ejercicio propuesto en clase

Asignar direcciones a 3 subredes con al menos 50 direcciones cada una a partir de 193.0.0.0.Para cada una definir lo siguiente:

Page 37: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 36

Direccion de subred y de difusion.

¿Cual es la mejor direccion de subred y mascara que agrupe a las tres?

3.3.5. Difusion de mensajes

En este ejemplo, vemos como el ordenador A envıa un paquete a tres direcciones de difusiondistintas. En el caso de los paquetes enviados a 181.168.7.255 (la direccion de difusion de lasubred), el paquete llega a todas las maquinas de la subred. Es el mismo caso que con el paqueteenviado a 255.255.255.255 (la direccion de difusion general). En ambos casos, el router, al verque el paquete va dirigido a la subred a la cual pertenece el interfaz por el que le llega el paquete,no reenvıa. Figura 3.9.

Figura 3.9: Reenvıo de los paquetes de difusion

El caso del paquete dirigido a 173.15.23.255 es diferente. El router, al ver que la direccion

Page 38: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 37

de difusion no es la de la subred por la que le llega el paquete, decide reenviarlo. Tras viajarpor la red, llegara a la subred deseada. El mensaje serıa recibido por todos los componentes dedicha subred.

Page 39: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Capıtulo 4

Integracion de redes

4.1. Introduccion

Cuando se disena una red de datos se desea sacar el maximo rendimiento de sus capacidades.Para conseguir esto, la red debe estar preparada para efectuar conexiones a traves de otras redes,sin importar que caracterısticas posean.

El objetivo de la Interconexion de Redes (internetworking) es dar un servicio de comunica-cion de datos que involucre diversas redes con diferentes tecnologıas de forma transparente parael usuario. Este concepto hace que las cuestiones tecnicas particulares de cada red puedan serignoradas al disenar las aplicaciones que utilizaran los usuarios de los servicios.

Algunas de las ventajas que plantea la interconexion de redes de datos, son:

Comparticion de recursos dispersos.

Coordinacion de tareas de diversos grupos de trabajo.

Reduccion de costes, al utilizar recursos de otras redes.

Aumento de la cobertura geografica.

Los dispositivos de interconexion de redes sirven para superar las limitaciones fısicas de loselementos basicos de una red, extendiendo las topologıas de esta.

Como vimos en temas anteriores, el nivel de red es el mas apropiado para integrar distintasredes. En este tema vamos a ver de que forma podemos conectar redes heterogeneas, centrandonosfundamentalmente en las redes TCP-IP.

38

Page 40: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 39

4.2. Ejemplo de integracion de redes con IPv4

Supongamos que queremos comunicar dos maquinas distantes. Como puede verse en lafigura 4.1, el circuito fısico que hay entre ambas atraviesa redes de distinto tipo:

Figura 4.1: Ejemplo de interconexion de una red heterogenea. Nota: CNLP (Connection LessNet Protocol)

Desde el punto de vista de los equipos que se comunican, lo mas sencillo serıa usar unsolo protocolo comun, sin que tuvieran que ”lidiarcon los distintos tipos de redes que hay entreambos; y justamente eso es lo que se hace al usar IP: cada maquina debe preocuparse unicamentede generar un paquete IP indicando, principalmente, su propia direccion IP y la direccion IP dedestino, y sera el protocolo el que se preocupe de llevar los datos desde el origen al destino atraves de cualesquiera redes fısicas que haya entre ambos.

Para que podamos usar IP sobre cualquier tipo de red se necesita un metodo de resolucionde direcciones. En nuestro ejemplo, necesitarıamos un metodo mediante el cual el ordenador Afuera capaz de obtener la direccion X.25 del router R1 a partir de su IP; una vez en R1, queencontrara la direccion ethernet del router R2; y finalmente, una vez en R2, que encontrarala direccion CLNP del equipo B. Para ello se usa ARP, que funciona de la siguiente manera:Cuando un ordenador quiere enviar un paquete a una direccion IP de un router u otro PC de sumisma red, primero envıa un mensaje ARP (que es de difusion) preguntando a que direccion denivel de enlace pertenece esa IP (direccion de nivel de red). El router correspondiente respon-dera indicando su MAC (su direccion de nivel de enlace). Algunos sistemas permiten el procesoinverso, obtener una IP a partir de una MAC.

Page 41: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 40

4.3. Formato de los paquetes IPv4

El formato general de un datagrama IP se aprecia en la figura 4.2:

Figura 4.2: Cabecera IP

Las 5 primeras filas (primeros 20 octetos) son lo que se denomina la ’parte fija de la cabecera,y siempre iran en cada datagrama, de modo que el tamano mınimo de cada datagrama IP es de20 octetos. A continuacion vendrıa un campo opcional de tamano variable, y finalmente, si loshubiera, los datos (tambien de tamano variable). Veamos una descripcion detalla de cada unode los campos:

Version (4 bits): version del protocolo. Para IPv4 aparecera un 4.

Logitud de la Cabecera (4 bits): indica, en grupos de 4 octetos, el tamano de lacabecera IP (parte fija+opciones). Dado que el tamano mınimo es 20 octetos, el valormınimo de este campo es 5.

ToS=Type of Service (8 bits): inicialmente era un campo opcional que los routersantiguos ignoraban, pero hoy en dıa se utiliza para la tecnologıa QoS (Quality of Service,calidad de servicio). En concreto se utiliza en los Servicios Diferenciales. En estos, el TOSidentifica el tipo de trafico que lleva cada paquete (Tranferencia de ficheros, voz sobreIP, etc.). Ası, cada router tratara cada paquete de acuerdo al contenido. Por ejemplo, los

Page 42: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 41

paquetes de VoIP (Voz sobre IP) requieren poco retardo pero importa poco que se pierdanalgunos. De esta forma, los routers daran prioridad a los paquetes VoIP pero los desecharansi tienen que hacerlos esperar demasiado.

Longitud total del paquete (16 bits): indica, en numero de octetos, el tamano total deldatagrama IP, incluyendo cabecera y datos. Sirve para que el nivel IP del destino sea capazde descartar el relleno anadido por niveles inferiores. La longitud maxima del paquete esde:

216 − 1 = 65535 octetos. (4.1)

Identificador (16 bits), Flags (3bits) y Desplazamiento y Offset (13 bits): estos3 campos se utilizan para controlar la fragmentacion de los paquetes, y se describen condetenimiento en el apartado de Fragmentacion de paquetes IPv4.

TTL = Time To Life (8bits): el tiempo de vida se inicializa en el emisor con unvalor entero, que se ira decrementando en una o varias unidades cada vez que el paqueteatraviesa un router. Si llega a cero, se destruye el paquete. De esta forma se evita quepaquetes perdidos queden atrapados en bucles infinitos saturando la red.

Protocolo (8bits): contiene un identificador del protocolo al que pertenece la PDU queva en el campo de datos, como por ejemplo TCP.

Checksum (16bits): se trata de un sistema de control de la cabecera. Es muy simple, yaque no es mas que la suma de paridad de todos los bits de la cabecera.

Opciones: se describen en el apartado de Opciones mas usuales.

4.3.1. Fragmentacion de paquetes IPv4

Dado que los paquetes IP pueden atravesar redes de muy distinto tipo, cada una con untamano maximo de paquete, a menudo ocurre que el tamano del paquete IP a enviar es de-masiado grande y hay que dividirlo en trozos mas pequenos antes de pasarlo al nivel inferior.Esto es lo que se conoce como ”fragmentacion de paquetes”. Es evidente que en el receptor, lospaquetes deberıan volver a unirse hasta obtener los paquetes IP originales, en lo que se denomina”reensamblado”.

Veamos un primer ejemplo sencillo de fragmentacion: supongamos que el router A quiereenviarle al router B un paquete IP que contiene 3980 Bytes (octetos) mas los 20 Bytes de cabeceray que nuestro nivel inferior acepta datagramas de, como maximo, 1500 Bytes. Figura 4.3.

Page 43: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 42

Figura 4.3: Ejemplo de fragmentacion

El router A divide los 3980 Bytes de datos en 3 fragmentos, cada uno con un tamanomaximo de 1480 Bytes. De esta forma obtenemos 2 paquetes de 20+1480=1500 Bytes y uno de20+1020=1040 Bytes. Notense varias cosas:

La cabecera del paquete original (el de 4000 Bytes) no se incluye en los fragmentos.

Los paquetes finales no deben superar el tamano maximo incluyendo las nuevas cabeceras.Por eso hemos dividido los datos en paquetes de 1480 Bytes como maximo, para que alanadir la cabecera IP no superemos los 1500 Bytes.

Si sumamos, todos los Bytes finales, incluidas las cabeceras, vemos que el tamano total seve incrementado, ya que cada nuevo fragmento anade una nueva cabecera.

Es importante observar que la fragmentacion de un paquete puede darse en cualquier partedel ”camino”que siguen los paquetes desde el emisor hasta el receptor, pero el reensamblado solose efectua en el receptor.

El protocolo IPv4 implementa un sistema para controlar la fragmentacion y el reensambla-do. Para ello, como vimos en el apartado anterior, hay varios campos en la cabecera de tododatagrama IP que se encargan de controlar la fragmentacion, y que seran de vital importanciaa la hora del reensamblado. Figura 4.4.

Page 44: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 43

Figura 4.4: Campos de control de la fragmentacion

Veamos una descripcion detallada de cada uno:

Identificador (16bits): es un identificador unıvoco del datagrama original antes de frag-mentar (en el ejemplo el de 4000 Bytes). Se usa cuando se solicitan reenvıos. Debe serunico a nivel de pareja IPorigen/IPdestino. Para ello, el origen lleva un contador internocon el que numera cada paquete que envıa e incrementa el contador en uno. Para evitarconfusiones en caso de que el sistema se caiga y restituya demasiado rapido y se mezclennumeros, el contador no empieza en cero, sino en una cifra aleatoria. Ademas, se obliga alsistema a que tarde en arrancar al menos el tiempo que tarda un paquete en desaparecerde la red. De este modo, aunque coincidieran las cifras aleatorias no habrıa confusion, yaque el ultimo paquete que uso el identificador ya no estara en la red.

Flags o banderas (3 bits): se trata de tres bits indicadores, cada uno con una funcion:

• Cero: siempre a cero (no tiene funcion asignada).

• MF (More Fragments): vale 0 en el ultimo fragmento (no hay mas fragmentosdetras) y 1 en otro caso. Si el datagrama es unico (no hubo fragmentacion) tambienvale 0. Cada vez que un datagrama se fragmenta, se pone el MF a uno en todos losfragmentos salvo en el ultimo, que se le pone el del datagrama del que proviene.

• DF (Don’t Fragment): indica al router que no debe fragmentar el paquete enningun caso. En el caso de no poderse enviar un datagrama tan grande, sera desechadopor el router.

Offset o desplazamiento (13 bits): indica el lugar que ocupaba el fragmento actualdentro del fragmento original. Hay que tener en cuenta las siguientes cosas:

• Se cuenta en grupos de 8 bytes, es decir, que si este campo vale 100 en realidadquerra decir que van 100x8=800 bytes. Esto se debe a que solo disponemos de 13 bitspara definir el offset, que en muchos casos pueden ser mas que insuficientes.

• Se comienza a contar el Offset sin tener en cuenta la cabecera del datagrama original,esto es, el desplazamiento es relativo al inicio del campo de datos, no al inicio deldatagrama.

Page 45: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 44

• Los fragmentos de un paquete que a su vez es un fragmento de otro datagrama,tendran el Offset definido con respecto al datagrama original del que partieron todosy no con respecto al fragmento justo anterior.

Para ilustrar esto con mas detalle vamos a suponer que A envıa el primer paquete por elrouter de arriba, sin problemas de fragmentacion, mientras que los paquetes 2 y 3 van a serenviados por B, donde vuelve a surgir la necesidad de fragmentacion, como se aprecia en lafigura 4.5.

Figura 4.5: Ejemplo de fragmentacion multiple

Veamos de forma detallada y paso a paso el desglose de las cabeceras de fragmentacion,con los valores que iran tomando en cada paquete fragmentado. Originalmente, en el emisor,no tenemos mas que un solo datagrama, y los valores de los campos de fragmentacion de sucabecera seran los que se muestran en la tabla 4.3.1:

Page 46: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 45

Paquete 1Cabecera 20 octetos

Datos 3980 octetosOffset 0MF 0 (por ser el unico paquete existente)

En el router A se produce la primera fragmentacion, dando lugar a los siguientes paquetesque se aprecian en la tabla 4.3.1:

Paquete 1 Paquete 2 Paquete 3Cabecera 20 octetos 20 octetos 20 octetos

Datos 1480 octetos=185 grupos de 8 octetos 1480 octetos 102 octetosOffset 0 185 185+185=370MF 1 1 0

En el router B, los paquetes vuelven a dividirse. El resultado se muestra en la tabla 4.3.1.

Paquete 2.1 Paquete 2.2Cabecera 20 octetos 20 octetos

Datos 800 octetos=100 grupos de 8 octetos 680 octetosOffset 185 185+100=285MF 1 1

Paquete 3.1 Paquete 3.2Cabecera 20 octetos 20 octetos

Datos 800 octetos=100 grupos de 8 octetos 220 octetosOffset 370 370+100=470MF 1 0

4.3.2. Opciones mas usuales

Como se dijo en su momento, este campo es opcional. En el se indicaran los serviciosopcionales que quieran utilizarse solo cuando vayan a ser usados. Hay que tener en cuenta que,al no ser campos ”obligatorios”no todos los routers los implementan; cuando quieran usarse sedebera saber bien lo que se hace y los equipos de los que se dispone.

Son muchas las posibilidades, y solo veremos algunas:

Page 47: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 46

Source Routing: sirve para especificar las IPs de los routers por los que debe ir pasando elpaquete. Dicho de otro modo, el origen especifica de forma explıcita la ruta que deberanseguir los datagramas hasta el destino.

Source Recording: cada router escribe su IP en el paquete antes de reenviarlo. De estaforma, en el destino se puede saber de forma exacta la ruta seguida por cada paquetehasta llegar a el.

TimeStamp: cada router escribe en el paquete el instante en el que lo encaminan. Permitehacer controles de tiempo para las distintas rutas.

4.4. Tablas de encaminamiento

Cuando un router recibe un paquete, mira la direccion de nivel de enlace que aparece en eldestino del paquete; esta direccion puede ser:

La del propio router. Pasa el paquete al nivel superior para analizarlo. No lo reenvıa.

La de difusion. En este caso tenemos dos posibilidades:

• Que sea la general (255.255.255.255): no se reenvıa.

• Que sea la de subred (SUBRED.255): tampoco se reenvıa.

Cualquier direccion distinta a las anteriores. En ese caso, el paquete sera enrutado, enfuncion de la IP de destino, siguiendo las tablas de encaminamiento.

Una tabla de encaminamiento consta de varias entradas (filas), cada una de las cuales constade 5 campos (columnas). Los campos son los siguientes:

Direccion de Red (enadelante DirRed): es una direccion IP que engloba toda una red.Suele acabar en cero.

Mascara de Red (en adelante Mask): define, aplicada al campo anterior, la extension dela red (vease el apartado 2.1.3 del tema anterior para una descripcion mas detallada).

Metrica: es el numero de routers por los que debe pasar un paquete antes de alcanzar elsiguiente salto.

Page 48: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 47

IP del siguiente salto (en adelante IPnext): es la IP del siguiente router al que se debeenviar el paquete para que llegue a su destino. Tambien llamada Next Hop.

Interfaz: indica la interfaz (tarjeta de red) por la que se debe enviar ese paquete.

Y en la tabla 4.4 vemos el aspecto que tendrıa:

DirRed Mascara Metrica IPnext InterfazDir1 Mask1 ... Dest1 ...Dir2 Mask2 ... Dest2 ...... ... ... ... ...

0.0.0.0 0.0.0.0 ... Router por defecto ...

La tabla de encaminamiento se ordena de mayor a menor longitud de mascara. A iguallongitud de mascara, se ordena de menor a mayor metrica.

Cada vez que llega un paquete al nivel 3 se le aplica la mascara de la primera entrada. Si elresultado coincide con la DirRed de esa entrada sera enviado a la IPnext por la interfaz especi-ficada. Si el resultado no coincide, se pasa a comprobar la segunda entrada y ası sucesivamente.

La tabla de encaminamiento se aplica en orden, de arriba hacia abajo. A pesar de que elpaquete es reenviado a IPnext, la IP de destino (en adelante IPdest) que aparece en el datagramarecibido no se modifica, pues para que el paquete llegue a su destino se usarıa el nivel de enlace,es decir, la MAC de destino (MACdest) sı cambia, la IPdest no.

La ultima entrada de todas debe ser la salida por defecto (Gateway). Tanto su mascaracomo su DirRed son 0.0.0.0, eso garantiza coincidencia con cualquier IP de destino. Todos lospaquetes que no hayan encontrado coincidencia antes, coincidiran con la entrada por defecto.

El algoritmo que usan los routers se muestra en la figura 4.6.

A continuacion vamos a ver un ejemplo de tablas de encaminamiento. Tenemos una red conla topologıa que muestra la figura 4.7.

En ella, tabla de encaminamiento de A tendrıa el aspecto que se muestra en la figura 4.4.

Page 49: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 48

DirRed Mascara Metrica IPnext Interfaz193.0.0.0 255.255.255.192 0 - 1193.0.0.64 255.255.255.192 0 - 2193.0.0.128 255.255.255.192 0 - 3193.0.0.192 255.255.255.192 0 - 4DirRedZ MaskZ 1 IP.D.1 5DirRedX MaskX 0 - 5DirRedY MaskY 1 IP.B.1 50.0.0.0 0.0.0.0 1 IP.B.1 5

A la hora de ordenar la tabla hemos supuesto que la mascara de la red del router A tieneuna longitud mayor que la de Z, a su vez mayor que la de X y esta que la de Y:

26 > Long(MaskZ) > Long(MaskX) > Long(MaskY ) (4.2)

La tabla de encaminamiento de B quedarıa como se indica en la figura 4.4.

DirRed Mascara Metrica IPnext Interfaz193.0.0.0 255.255.255.0 1 IP.A.5 1DirRedZ MaskZ 1 IP.D.1 1DirRedX MaskX 0 - 1DirRedY MaskY 0 - 20.0.0.0 0.0.0.0 1 IP.C.1 2

Aquı se observa el detalle de que hemos agrupado las 4 LANs que empiezan por 193.0.0.*en una sola, haciendo la mascara lo suficientemente grande. Esto es posible gracias a que todoslos paquetes que son enviados al cualquiera de esas LANs es enviado al router A.

Por supuesto que la suposicion de los tamanos de las mascaras de redes anterior quedarıaahora ası:

24 > Long(MaskZ) > Long(MaskX) > Long(MaskY ) (4.3)

Y para el router C, se muestra en la figura 4.4.

DirRed Mascara Metrica IPnext Interfaz193.0.0.0 255.255.255.0 2 IP.B.2 1DirRedZ MaskZ 2 IP.B.2 1DirRedX MaskX 1 IP.B.2 1

... ... ... ... ...

Page 50: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 49

Los puntos suspensivos de la ultima fila representan las restantes entradas, correspondientesa las restantes redes tambien conectadas a C.

Puntos importantes a tener en cuenta son los siguientes:

Las entradas deben estar ordenadas de mayor a menor longitud de mascara para optimizarel funcionamiento del router.

Direcciones contiguas pueden ser agrupadas, en ocasiones.

La IP del siguiente nodo (IPnext) debe ser accesible directamente.

Supongamos que realizamos el siguiente cambio en la topologıa de la red, mediante el cual193.0.0.192/26 cuelga ahora de D y no de A como se muestra en la figura 4.8.

La nueva tabla de A se puede apreciar en la tabla 4.4.

DirRed Mascara Metrica IPnext Interfaz193.0.0.0 255.255.255.192 0 - 1193.0.0.64 255.255.255.192 0 - 2193.0.0.128 255.255.255.192 0 - 3193.0.0.192 255.255.255.192 1 IP.D.1 5DirRedZ MaskZ 1 IP.D.1 5DirRedX MaskX 0 - 5DirRedY MaskY 1 IP.B.1 50.0.0.0 0.0.0.0 1 IP.B.1 5

Para el router B los cambios son mucho mas traumaticos. En principio ya no se podrıanagrupar las LANs 193.0.0.* sino que habrıa que subdividirlas de la forma que se indica en latabla 4.4.

DirRed Mascara Metrica IPnext Interfaz193.0.0.192 255.255.255.192 1 IP.D.1 1193.0.0.128 255.255.255.192 1 IP.A.5 1193.0.0.0 255.255.255.128 1 IP.A.5 1DirRedZ MaskZ 1 IP.D.1 1DirRedX MaskX 0 - 1DirRedY MaskY 0 - 20.0.0.0 0.0.0.0 1 IP.C.1 2

Page 51: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 50

Donde hemos agrupado las redes 193.0.0.0/26 y 193.0.0.64/26 en 193.0.0.0/25. Sin embargola red 193.0.0.128/26 debe ir separada.

Hay un truco para evitarnos esto y consiste en aprovechar que las entradas se compruebanen orden. Si la entrada correspondiente a la red 193.0.0.192/26 estuviese justo encima de lacorrespondiente a 193.0.0.0/24 todo funcionara correctamente. Ası todos los paquetes con destinoa 193.0.0.192/26 coincidirıan con la primera entrada mientras que los que no serıan procesadosnormalmente justo como estaba antes. Se ilustra en la tabla 4.4.

DirRed Mascara Metrica IPnext Interfaz193.0.0.192 255.255.255.192 1 IP.D.1 1193.0.0.0 255.255.255.0 1 IP.A.5 1DirRedZ MaskZ 1 IP.D.1 1DirRedX MaskX 0 - 1DirRedY MaskY 0 - 20.0.0.0 0.0.0.0 1 IP.C.1 2

La tabla de C no se verıa afectada por este cambio de topologıa dado que todos los paquetesdestinados a 193.0.0.0/24 siguen siendo enviados a IP.B.2.

Page 52: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 51

Figura 4.6: Algoritmo de un router

Page 53: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 52

Figura 4.7: Ejemplo de tablas de encaminamiento

Figura 4.8: Modificacion del ejemplo de tablas de encainamiento

Page 54: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Capıtulo 5

Encaminamiento

5.1. Tipos de direcciones

Se denomina encaminamiento al conjunto de procedimientos que permiten establecer lasrutas optimas. Es la funcion basica del nivel de red.

Se puede dividir en tres partes o funciones:

Establecimiento de vecindades: Se trata de encontrar informacion de los nodos adyacentespara comunicarse con ellos.

Distribucion de informacion: La informacion recibida de los nodos adyacentes es compartidapor todos los nodos.

Calculo de rutas: Con la informacion que nos llega de la distribucion podemos calcular laruta optima a un destino.

Un encaminador se puede esquematizar como una maquina con la siguiente estructura:

BIE es la Base de Informacion de Encaminamiento (en ingles RIB, Routing InformationBase), la base de datos que se consulta para decidir y formar la BIR. La informacion de laBIE se consigue mediante interaccion con el entorno local de cada nodo (cada nodo observasus enlaces) y mediante la recepcion de informacion de control procedentes de otros nodosvecinos que informan del conocimiento que estos nodos tienen sobre el estado de la red.

BIR es la Base de Informacion de Reenvıo (en ingles FIB, Forwarding Information Base).Es la tabla que se consulta para hacer el reenvıo de los paquetes.

53

Page 55: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 54

Figura 5.1: Esquema de un encaminador.

5.2. Clasificacion de mecanismos de encaminamiento

Los mecanismos de encaminamiento se pueden clasificar segun el ambito en:

Encaminamiento fijado en el origen: El origen decide la ruta completa hacia el destino(por ejemplo, el source routing de IP).

Encaminamiento salto a salto: En cada salto se decide donde reenviar el paquete. Esteultimo mecanismo es el que utiliza en el funcionamiento normal de la red.

Si los clasificamos segun la capacidad de adaptacion tenemos:

Encaminamiento estatico: si hay algun cambio en la red, el router no hace ninguncambio en su configuracion. Los encaminadores solamente poseen BIR, no BIE ni modulode calculo de rutas.

Encaminamiento dinamico o adaptativo: la configuracion del router cambia a lo largodel tiempo. Dentro de este tipo de encaminamiento podemos encontrar a su vez distintostipos segun su organizacion.

• Aislado: No se tiene en cuenta la informacion de los otros nodos a la hora de en-caminar. Tiene un calculo de rutas muy simple. Ejemplos: Inundacion (el paquetellega al router y se reenvıa por todas las interfaces excepto por aquella por la quellego), Patata Caliente (envıa el paquete por la primera interfaz disponible, de forma

Page 56: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 55

aleatoria. Los paquetes se pondrıan a dar vueltas por la red y en algun momentollegaran a su destino) y reenvıo por la interfaz menos cargada.

• Centralizado: El calculo de rutas solo lo hace el nodo central. Los nodos recogenla informacion de sus vecinos y la envıan al nodo central. Estas rutas son muy con-sistentes dado que el nodo central conoce perfectamente la estructura completa de lared y no se produciran bucles, pero el nodo central se convierte en un punto crıtico(cuello de botella).

• Distribuido: Son los mas utilizados. En este tipo de encaminamiento todos los nodosson iguales, todos envıan y reciben informacion de control y todos calculan, a partirde su BIE, sus tablas de encaminamiento. La adaptacion a cambios es optima siemprey cuando estos sean notificados.

Nos centraremos en el encaminamiento salto a salto dinamico distribuido.

5.3. Jerarquıa de encaminamiento y direccionamiento

Si tenemos una red que va aumentando de tamano hace que aumente la dimension de laBIE y, por tanto, tambien de la BIR. Esto supone un mayor consumo de memoria, de CPU y deancho de banda para intercambiar informacion de control. Veamos un ejemplo en la ilustracion6.2:

Figura 5.2: Red sin niveles de jerarquıa.

Page 57: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 56

La forma de encaminamiento la elegimos nosotros. En este caso la tabla del nodo 1 quedarıade la siguiente forma:

Destino Siguiente nodo

1 12 23 74 75 26 77 78 79 210 2

Cuadro 5.1: Tabla de rutas para la red sin niveles de jerarquıa

Si jerarquizamos el sistema nombrando los nodos como en la ilustracion 6.3, la tabla dismi-nuye considerablemente de tamano pero a costa de perder precision.

Destino Siguiente nodo

11 1112 1213 1314 122x 123x 13

Cuadro 5.2: Tabla de rutas para la red con niveles de jerarquıa

Vemos como la nueva tabla tiene aproximadamente la mitad de tamano que la anterior,pero el precio que hemos de pagar por ello es que para alcanzar algunos nodos sera necesariorealizar mas saltos. Por ejemplo, para llegar al nodo 3, el camino antes era 1→ 7→ 6→ 8→ 3,mientras que ahora se convierte en 1 → 2 → 10 → 5 → 9 → 3, es decir, damos un salto mas.Aun se podrıa introducir un nivel mas de jerarquıa:

La tabla de encaminamiento quedarıa ası:

Page 58: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 57

Figura 5.3: Red con jerarquıa.

5.4. Establecimiento de vecindades (Neighbour creating)

Los objetivos del establecimiento de vecindades son los siguientes:

Permitir a los sistemas intermedios (SI = router = encaminador) encontrar la direccion denivel de red y del nivel de enlace de los nodos adyacentes.

Permitir a los sistemas finales (SF = host = nodo) encontrar los SI adyacentes, distinguircuales son los nodos adyacentes y encontrar la direccion del nivel de enlace de los nodosadyacentes.

Este establecimiento lo veremos en dos escenarios distintos; en un enlace punto a punto y en unared de area local (LAN).

5.4.1. Enlace punto a punto

El SI necesita saber la direccion del sistema final de nivel 3.

Page 59: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 58

Figura 5.4: Red con niveles y subniveles de jerarquıa.

Solucion ISO : Dispone de un protocolo denominado ESH (end system hello). Periodica-mente, el SF envıa por el enlace un mensaje hello con el cual el SF indica al SI su direccionde nivel 3.

Solucion TCP/IP : No se envıan mensajes, sino que se utiliza la configuracion de los nodos.Se resuelve a partir de la direccion y de la mascara. En el enlace punto a punto bastarıacon una mascara de 30 bits, que nos proporciona un sistema con 4 direcciones: una paradireccion de red, otra para difusion, otra para el SI y otra para el SF.

5.4.2. Red de area local (LAN)

La notacion que usaremos en este apartado es la siguiente: SF 3Brepresenta la direccion del

nivel de red (nivel 3) del sistema final B.

Los problemas que debemos de solucionar en este tipo de redes son:

Page 60: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 59

Destino Siguiente nodo

111 111112 112113 113114 1122xx 112

Cuadro 5.3: Tabla de rutas para la red con varios niveles de jerarquıa

Figura 5.5: Esquema de un enlace punto a punto.

1. SI : SF 3ASF

3B. El SI debe conocer la direccion de nivel 3 de los sistemas finales A y B.

2. SI : SF 2ASF

2B. El SI debe saber cual es la direccion de nivel 2 de los sistemas finales A y

B.

3. SF : SI2X . Cualquier sistema final debe conocer la direccion de nivel 2 del sistema inter-

medio al que esta conectado.

4. SFA→ SFB, SFA : SF 2B. A quiere enviar algo a B. Como estan unidos fısicamente enuna LAN no hace falta que pase por ningun SI, pero A necesita conocer la direccion denivel de enlace de B. Si por desconocimiento o error A enviara el mensaje a un SI, debeexistir alguna forma para que el SI le comunique a A que B esta accesible a traves del nivelde enlace.

5. SFA→ SIB → SFC. Encaminar los mensajes de A a C a traves del SIB.

6. Suponemos que no hay SI. SFA → SFB, SFA : SF 2B. Si no hay SI y A quiere enviar un

mensaje a B, A necesita conocer la direccion de nivel de enlace de B.

Solucion ISO

Existen 3 tipos de mensajes:

Page 61: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 60

Figura 5.6: Ejemplo de una LAN.

ESH (Hola del SF): Los sistemas finales envıan este mensaje a una direccion destino degrupo que la escuchan todos los SI.

ISH (Hola del SI): El SI envıa este mensaje por todas sus interfaces a todos los sistemasfinales con los que este conectados directamente.

Redireccion: Es un mensaje en el cual el SI especifica al SF por donde debe enviar los men-sajes a un destino determinado. Por ejemplo cuando un SI recibe un paquete y lo reenvıapor la misma interfaz que la recibio, envıa un mensaje al que lo envio para informarle deque ese destinatario esta visible directamente. Lo vemos en estas ilustraciones.

Otro ejemplo de redireccion es el siguiente:

Con esto SFA conoce el par de direcciones de nivel 3 y nivel 2 necesarias (SF 3C −SI2

B) paraalcanzar a SFC .

Por tanto, los mensajes de ESH e ISH permitiran la solucion de:

ESH: soluciona los problemas 1 y 2 al tener direccion de nivel 2 y 3 de SF.

ISH: soluciona el problema 3 al tener direccion de nivel 2 y 3 de SI.

Page 62: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 61

Figura 5.7: SFA le quiere enviar un mensaje a SFB. B se encuentra directamente accesible porel nivel de enlace, pero A no lo sabe. A envıa el mensaje destinado a B al SI.

Veamos el comportamiento de los SF ante los problemas que nos quedan (los problemas 4, 5 y6). Para ello estudiamos el algoritmo de los SF:

Envıo periodico de ESH a todos los SI

Envıo directo de ESH a los SF

Cache de SI (CSI): Almacena la relacion direccion de nivel 3 - direccion de nivel 2 de lossistemas intermedios.

SI31 SI2

1

SI32 SI2

2

Cache Destino (CD): Esta tabla contiene una relacion entre la direccion de nivel 3 destinoy la direccion nivel 2 que debemos poner en el mensaje para que alcance dicho destino.Almacena tanto mensajes de redireccion como ESH.

Mensajes de redireccion SF 3X SY 2

Z

Hola de SF directo (ESH) SF 3X SY 2

K

SY 2Z = SI2

Z o SF 2Z

Donde SF 3X representa la direccion de nivel de red del destino final de nuestro paquete, y

SY 2Z y SY 2

K serıan la direccion de nivel de enlace del primer nodo al que hemos de mandarel paquete para que llegue al destinatario (SY puede ser tanto un SF como un SI).

Page 63: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 62

Figura 5.8: El SI lee el mensaje entrante y lo reenvıa a su destino, B. Pero, ademas, el SI se dacuenta de que para reenviarlo ha tenido que usar el mismo enlace por el que le llego. Por tanto,le dice a A que los siguientes paquetes con destino a B los debe enviar a la direccion de nivel deenlace de B, no a la del SI.

Estas tablas tienen asignados unos temporizadores de envejecimiento, es decir, si vence eltemporizador sin haberse refrescado el registro, este se borrara.

El algoritmo seguira los siguientes pasos cuando un SF quiera transmitir un paquete a undestino identificado por su direccion de nivel 3 (D3):

1. BuscaD3 en la cache destino (CD) Si la encuentra, se lo envıa (D3, X2)

2. Si no Busca en CSI una entrada cualquiera y se lo envıa (D3, SI2X)

3. Si la CSI esta vacıa, envıa un mensaje de difusion dentro de su LAN, ya que es el alcanceque tienen las direcciones de nivel de enlace (D3, ∨SF 2)

Veamos como se solucionarıan los problemas que nos quedan:

Supondremos que las caches estan vacıas.

1. Si el SFA quiere enviar algo a SFD y SFA solo sabe SF 3D, aplica el algoritmo de los SF.

Como las caches se encuentran vacıas se envıa un mensaje de difusion dentro de su LAN,rellenando la tabla de CSI de SFA con las direcciones de nivel de enlace SI2

A y SI2B . El

mensaje sale a traves de alguno de estos sistemas intermedios.

Page 64: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 63

Figura 5.9: SFA quiere enviar algo a SFC . A no sabe donde esta C, ası que envıa el paquete aun SI aleatoriamente. En este caso, lo envıa al SIA.

2. Si SFA desea enviar algo a SFC , el mensaje tendra como direccion de red la direcciondestino de SFC y como direccion de enlace la direccion de nivel 2 de SIA o de SIB.

N red N enlace datosSF 3

C SI2A ...

Si ha sido enviado a traves del SIA,SIA lo reenvıa a SIB por la misma interfaz y avisarıaa SFA, mediante un mensaje de redireccion, de que el destino esta alcanzable a traves deSIB (se vio en uno de los ejemplos de redireccion). Esta informacion la almacenarıa SFAen su cache de destinos (CD) de la siguiente forma:

SF 3C SI2

B

3. Si SFA desea enviar algo a SFB en principio lo harıa a traves de SIA. Como este sistemaintermedio tiene que reenviar el mensaje por la misma interfaz por la que lo recibio, enviarıaun mensaje de redireccion a SFA para comunicarle que SFB esta accesible directamente(se vio en uno de los ejemplos de redireccion). Esta informacion la almacena SFA en sucache de destino por lo que la CD de SFA quedarıa ası:

SF 3C SI2

B

SF 3B SF 2

B

Page 65: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 64

Figura 5.10: El SIA consulta su tabla de encaminamiento y ve que para enviar un paquete aC ha de pasar por SIB. Por tanto, reenvıa el paquete a SIB. Pero SIA se da cuenta de que alreenviar el paquete ha usado el mismo interfaz por el que lo recibio, ası que comunica a SFAque, cuando tenga que enviar un paquete a SFC , lo tiene que mandar a la direccion de enlacede SIB.

4. Si caen los SI, desues de un cierto tiempo se borrarıa la cache de CSI y CD. Si ahora SFAquiere enviarle algo a SFB y suponiendo que los SI estan caıdos y las tablas borradas, SFAenviarıa un mensaje de difusion tal que ası:

N red N enlace datosSF 3

B ∀SF 2B ...

El SFB contestarıa a SFA con un mensaje ESH directo indicandole en este su direccionde nivel de enlace. SFA lo almacena en su cache de destinos y ya podrıan compartirinformacion.

Solucion TCP/IP

En esta arquitectura cada host conoce su IP, su mascara y la IP del router por defecto.Para traducir las direcciones IP en direcciones de nivel de enlace (direccion MAC), TCP/IPcuenta con el protocolo ARP (Address Resolution Protocol, RFC 826). Si un sistema quiereencontrar la direccion de nivel de red que pertenece a una determinada IP, este envıa un paquete(ARP REQUEST) a la direccion de difusion de la red en el que se indica la IP por la que se

Page 66: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 65

Figura 5.11: Ejemplo de una LAN

pregunta. La maquina implicada, si existe, responde con otro mensaje (ARP RESPONSE) dondele indica su direccion MAC.

El protocolo ICMP (Internet Control Message Protocol, RFC 792) permite enviar mensajede redireccion. En este protocolo se encapsulan en el mismo mensaje dos direcciones IP, es decir,dos direcciones de nivel de red, no una de red y otra de enlace como en casos anteriores. Estadiferencia con respecto a los mensajes de reencaminamiento de ISO se explicara detenidamentemas adelante con un ejemplo.

Veamos como soluciona TCP/IP los mismos problemas anteriores:

1. SI : SF 3ASF

3B. El SI debe conocer la direccion de nivel 3 de los sistemas finales A y B.

2. SI : SF 2ASF

2B. El SI debe saber cual es la direccion de nivel 2 de los sistemas finales A y

B.

3. SF : SI2X . Cualquier sistema final debe conocer la direccion de nivel 2 del sistema inter-

medio al que esta conectado.

4. SFA → SFB , SFA : SF 2B. A quiere enviar algo a B. Como estan unidos fısicamente en

una LAN no hace falta que pase por ningun SI, pero A necesita conocer la direccion denivel de enlace de B. Si por desconocimiento o error A enviara el mensaje a un SI, debe

Page 67: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 66

existir alguna forma para que el SI le comunique a A que B esta accesible a traves del nivelde enlace.

5. SFA → SIB → SFC . Encaminar los mensajes de A a C a traves del SIB.

6. Suponemos que no hay SI. SFA → SFB , SFA : SF 2B. Si no hay SI y A quiere enviar un

mensaje a B, A necesita conocer la direccion de nivel de enlace de B.

El problema 1 se puede solucionar con el uso de la mascara. Dado que cada enlace del SItendra asignadas una IP y una mascara, yo se todas las direcciones posibles de nivel de red decada enlace. Los problemas 2, 4 y 6 se pueden resolver haciendo uso del protocolo ARP.

Ejemplo: Si A y B son dos sistemas finales dentro de una misma LAN y A quiere conocerla direccion de nivel de enlace de B, A enviarıa un mensaje de difusion ARP REQUEST con ladireccion IP de B. B contestarıa con un mensaje directo ARP RESPONSE en el que le indicaa A su direccion de nivel de enlace. En la cache de A se almacenarıa la IP y la MAC de B,mientras que en la cache de B se guarda la IP y la MAC de A.

En el problema 3, el sistema final quiere conocer la direccion de nivel de enlace del router.Por configuracion los hosts saben su IP, su mascara y la direccion IP del router por defecto.Usando ARP conseguira la direccion de nivel de enlace del router. Para ello la direccion IP debeser accesible directamente (al multiplicar bit a bit la mascara con la IP propia y del router debesalir el mismo resultado).

En el problema 5 se trata de averiguar que router es mejor para llegar a un determinadodestino. Si nos acordamos del ejemplo en que SFA quiere enviar algo a SFC , el SIA debe enviarun mensaje de redireccion a SFA para que lo que envıe a SFC lo haga a traves de SIB. EnTCP/IP contamos con ICMP para enviar los mensajes de redireccion. En este caso, el mensajede redireccion que SIA envıa a SFA contiene una pareja de IPs (IPSFC

, IPSIB), es decir, dosdirecciones de nivel de red en vez de una direccion de nivel de red y una de nivel de enlace comohacıa la norma ISO. El SFA es el que se encarga de traducir la direccion IP del SIB (SI3

B) a ladireccion de nivel de enlace del SIB.

Otros protocolos relacionados con ARP son:

RARP (ARP reverse RFC 903): Sirve para averiguar una direccion IP a partir de unadireccion de enlace. Se usa en maquinas que no tienen unidad de almacenamiento (tienenMAC pero no tienen IP).

BOOTP (RFC 951): Al arrancar enviamos por difusion nuestra direccion MAC, consi-guiendo de un servidor BOOTP la IP. Tambien permite conocer la direccion de un servidor

Page 68: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 67

de ficheros y una lista de ficheros a descargar (util si se quiere que al arrancar la maquinase instale un sistema operativo desde un servidor de ficheros, por ejemplo).

DHCP (RFC 2131): Es una evolucion del BOOTP, que ademas de lo que este proporcio-naba da mas informacion (como la direccion del servidor DNS, la del router por defecto...).Se puede usar cuando tenemos mas maquinas que IPs disponibles, ya que las IPs se asig-nan dinamicamente cuando la maquina lo requiere. Dichas IPs pueden tener un tiempo deasignacion limitado, de modo que pasado ese tiempo caducan y es necesario solicitar otradireccion.

InARP (RFC 2390): Inverse ARP. Cuando se tiene una conexion punto a punto te permiteaveriguar la IP del otro extremo.

5.5. PROXY ARP

Es un mecanismo que permite tener niveles de enlace separados por un router que ejecutePROXY ARP. Su objetivo es simular que todos esos enlaces pertenecen a una unica red. Paraello, el router respondera a paquetes ARP dirigidos a destinos situados al otro lado del router,simulando ası que dichos destinos son accesibles directamente. Se vera mas claro con un ejemplo:

Figura 5.12: Ejemplo de PROXY ARP

Supongamos que el equipo C quiere enviar al equipo A un paquete y que ambos estanseparados por un router con Proxy ARP (en este caso, el router R esta haciendo Proxy ARP deA y B por R1). Lo primero que hara C sera enviar un paquete ARP a su red local preguntandopor la MAC del equipo A. Este paquete no llega a A, sino que es el router quien responde consu MAC haciendose pasar por A. Cuando C envıa el paquete, lo envıa con la MAC del router y

Page 69: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 68

Figura 5.13: Ejemplo de PROXY ARP

la IP de A. El paquete llega al router, y este averigua cual es la direccion de enlace verdaderade A y lo enruta hacia allı. De esta forma el paquete llega a su destino y las maquinas C, D yE ven a A y B directamente accesibles.

Una aclaracion: en el ejemplo anterior hemos supuesto que las caches ARP de todos losequipos estan vacıas. Es por ello por lo que es necesario enviar mensajes ARP para averiguar lasdirecciones de nivel de enlace. Para paquetes posteriores, simplemente se enviarıan datos a lasdirecciones que ya conocemos.

Notese que no serıa necesario hacer Proxy ARP de C, D y E por R2. Para que las maquinasA y B puedan comunicarse sin problemas con el resto de su red, solo es necesario poner comorouter por defecto al router R. Esto no serıa posible en la zona de la derecha, ya que el routerpor defecto es el que da acceso al exterior, el gateway.

La ventaja del Proxy ARP es la sencillez. Una red puede extenderse usando esta tecnica sinque lo sepa el router de salida al exterior de la red. Esta tecnica se emplea en redes virtuales parasimular que los equipos estan conectados de forma local. Entre las desventajas del Proxy ARPestan la escalabilidad (ya que se requiere una resolucion ARP para cada dispositivo enrutado deesta forma) y la fiabilidad, pudiendo ocasionar problemas si existe algun software anti-intrusos.El software detectarıa que una misma MAC responde a varias IPs distintas, y podrıa pensar quese trata de un intruso realizando suplantacion de identidad (spoofing).

Problema: Suponer que las tablas ARP estan vacıas. Dibujar los mensajes que se envıancuando B quiere enviar un datagrama a A. Dibujar tambien los datagramas que se envıan cuandoA envıa un datagrama a B. Representar los mensajes con la siguiente notacion: TIPO(D3,D2)

Page 70: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 69

Figura 5.14: Problema de PROXY APRP

R1=172.16.0.1/24

R2=172.16.1.121/16, hace Proxy ARP de A y B

B=172.16.1.120/16. Su router por defecto es Gateway.

A=172.16.0.2/24. Su router por defecto es R.

5.6. Calculo de rutas

5.6.1. Introduccion

El calculo de rutas se define como el calculo del mejor camino suponiendo que ya tenemosinformacion de la red. El primer objetivo de este mecanismo es obtener una funcion a optimizar:funcion de optimizacion. A los parametros de esta funcion se les denominan metricas.

El metodo consistira en maximizar o minimizar esas metricas segun convenga (por ejemplo,si la variable que estamos manejando es el retardo, convendra minimizarla. Si se trata de losbeneficios obtenidos, interesara maximizarla).

Page 71: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 70

Las metricas pueden ser de 2 tipos:

GLOBALES: Miden una cualidad de la red completa. Algunos ejemplos son:

• Saturacion maxima: se mide en cada nodo. Para nuestra ruta habrıa que ver enque nodo se da la saturacion maxima.

• Retardo global medio: Se trata del retardo de cada enlace ponderado por el numerode paquetes que lo atraviesa.

LOCALES: A cada enlace se le asigna un valor. Ahora a cada camino (sucesion de enlaces)se le asigna otro valor en funcion del valor anadido de los enlaces. La funcion optimasera los caminos que maximicen o minimicen el valor anterior. Dentro de las metricaslocales, podemos clasificarlas en:

• ADITIVAS: Su funcion optima depende de la suma del valor asociado a cada enlaceen el camino. P.ej. Numero de saltos, retardo medio en el camino.

• CONCAVAS: Su funcion optima depende del mınimo del valor asociado a cada enlaceen el camino. P.ej. Capacidad del enlace, MTU (Unidad Maxima de Transmision, nosda informacion acerca del tamano maximo de la SDU (Unidad de Datos del Servicio)).

• MULTIPLICATIVAS: Su funcion optima depende del producto del valor asociado acada enlace en el camino. P.ej. Probabilidad de error.

5.6.2. Algoritmo del camino mas corto

Es un mecanismo que emplea metricas locales aditivas. El valor de cada enlace se le llamacoste, longitud o peso. Este algoritmo nace debido al caracter dinamico del coste de los enlaces.Dicho coste puede cambiar constantemente (por ejemplo, si consideramos el coste como el retardode los paquetes o la saturacion del enlace) y provocar oscilaciones.

El objetivo de este algoritmo es obtener al arbol de expansion de distancia mınima a unnodo concreto, esto es, el conjunto de enlaces con los caminos mas cortos de todos los nodos alnodo destino. Se le llama arbol porque no se forman bucles y se le dice de expansion porquecontiene todos los nodos de la red.

Vamos a estudiar 2 tipos de algoritmos del camino mas corto: el algoritmo de Bellman- Fordy el algoritmo de Dijkstra.

Page 72: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 71

Figura 5.15: Ejemplo de red.

Figura 5.16: Arbol de expansion de distancia mınima a A.

Algoritmo de Bellman-Ford

Obtiene la distancia mınima de todos los nodos a un nodo destino (al que denominamosnodo 1). Usaremos la siguiente notacion:

Dni = Distancia mınima del nodo i al nodo 1 a traves de caminos de n saltos o menos.

Definimos:

Dni = 0∀n

D0i =∞∀i 6= 1

Dn+1i = mınj∈N(i)[dij + Dn

j ], donde dij=coste, longitud o peso del enlace entre i y j (si nohay, se considera infinito) y N(i) es el conjunto de nodos adyacentes a i.

Cuando se alcanza Dn+1i = Dn

i ∀i , se dice que se ha encontrado el camino mas corto.

Esta representacion grafica equivale a la siguiente tabla de costes:

Page 73: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 72

Figura 5.17: Ejemplo para el algoritmo de Bellman-Ford.

dij 1 2 3 4 51 0 ∞ ∞ ∞ ∞2 1 0 2 ∞ ∞3 ∞ 8 ∞ 0 44 ∞ 8 ∞ 0 45 ∞ ∞ 2 2 0

Calculamos las distancias mınimas al nodo 1, considerando que el numero maximo de saltosque se pueden dar es 1:

D12 = min(d21 +D01; d23 +D03; ...) = 1

D13 = 4

D14 =∞

D15 =∞

Ahora repetimos los calculos, considerando que el maximo numero de saltos es 2, despues 3...ası hasta que en una de las iteraciones los resultados no cambien respecto a la iteracion anterior(por ejemplo, en nuestro caso la distancia permitiendo 5 saltos es igual que si permitimos 4). Sirealizamos todas las combinaciones posibles resulta la siguiente tabla:

Page 74: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 73

Dni D1 D2 D3 D4 D5

0 0 ∞ ∞ ∞ ∞1 0 1 4 ∞ ∞2 0 1 2 9 63 0 1 2 9 44 0 1 2 8 45 0 1 2 8 4

Existe una variante, el algoritmo de Bellman-Ford distribuido asıncrono, que comienza con:

D1 = 0

Di =∞∀i 6= j

Cada nodo envıa a sus vecinos los Di obtenidos y recibe de sus vecinos los Dj obtenidos porellos mediante la ecuacion de Bellman-Ford (Di = min(dij + Dj)). Entonces, el nodo i calculaDi = minj∈N(i)(dij + Dj), donde N(i) representa los nodos adyacentes a i. Es decir, cada nodocalcula la distancia mınima a los nodos de la red a partir de la informacion que recibe de susvecinos. El proceso se repite de forma iterativa, y al final converge en el camino mas corto,donde se tendra la distancia mınima. Este algoritmo presenta la ventaja de que solo es necesarioconocer de antemano a los nodos vecinos al nuestro, no a toda la red como ocurrıa con elalgoritmo Bellman-Ford. Sin embargo, es un algoritmo en el que la convergencia se produce deforma muy lenta.

Algoritmo de Dijkstra

Obtiene la distancia mınima de todos los nodos con el nodo 1. La notacion que se usa es:

Di= Estimacion de la distancia mınima al nodo 1. A esto lo llamaremos etiqueta.

P = Conjunto de nodos cuya etiqueta no es una estimacion de la distancia, sino que es ladistancia real. En cada iteracion del algoritmo conseguiremos que mas estimaciones se vayanhaciendo permanentes, por lo que P se ira incrementando hasta contener a todos los nodos dela red.

Las suposiciones iniciales del algoritmo son:

D1 = 0. Es una etiqueta permanente (ya que sabemos con seguridad que la distancia delnodo 1 al nodo 1 es siempre 0)

Page 75: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 74

P = 1. Es el conjunto de distancias que sabemos con seguridad que son ciertas. Notese co-mo, inicialmente, sabemos que la distancia del nodo 1 al nodo 1 es cero, pero no conocemosninguna otra distancia.

Dj = dij ∀j 6= i. Esto es, inicialmente se considera que la distancia del nodo 1 al nodo j esel coste del enlace que los une, si existiera. Si no existe, vale infinito.

El algoritmo iterativo es el siguiente:

1. Encontrar i /∈ P : Di = mini/∈PDj, es decir, de todos los nodos buscamos aquel que tengala etiqueta tentativa mınima (lo llamaremos nodo i) y lo anadimos al conjunto P. Una vezque lo anadimos al conjunto P, su etiqueta se vuelve permanente (no cambia).

2. P = P ∪ i, esto es, anadimos el nodo que acabamos de conseguir al conjunto P.

3. Si P contiene a todos los nodos, finaliza el algoritmo.

4. Recalcular las etiquetas tentativas de la siguiente forma: ∀j /∈ P , Dj = min(Dj; dij +Di).Esto equivale a comparar la distancia que ya tenıa de la iteracion anterior a la que obtengoahora si en lugar del camino escogido anteriormente, escojo el camino que atraviesa el nodoi. En realidad, solo hay que calcular la de los vecinos al nodo anadido a P, porque los otrosno variaran.

5. Volver a 1.

Veamos el ejemplo anterior usando el algoritmo de Dijkstra:

Como era de esperar, con este metodo se obtienen los mismos resultados que conseguimoscon el algoritmo de Bellman-Ford. Existe la posibilidad de que los dos algoritmos den resultadosdiferentes, pero esto solo ocurre si hay mas de un camino mınimo al nodo 1.

Ejercicio: Calcular el camino mas corto de todos los nodos al nodo C, usando ambos algo-ritmos

5.7. Distribucion de la informacion

Vamos a ver dos tipos de algoritmos para la distribucion de informacion: los algoritmosbasados en el vector de distancias y los algoritmos basados en el estado de los enlaces.

Page 76: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 75

Figura 5.18: Ejemplo para el algoritmo de Dijkstra.

5.7.1. Vector de distancias

Consiste en la aplicacion del algoritmo de Bellman-Ford distribuido asıncrono aplicado atodos los nodos y no a uno solo como se hizo anteriormente.

Con este algoritmo se siguen estos pasos:

Cada nodo conoce su identificador.

Cada nodo conoce el coste de sus enlaces: Estado de las vecindades

Cada nodo comienza con un vector VDi=(∞,∞,∞, ...∞,0 (en la posicion i),∞,...,∞) sedenomina vector distancia del nodo i. Este vector tendra en cuenta todos los nodos de lared.

Cada nodo transmite su vector distancia V Di a sus vecinos. Se transmite: o periodicamenteo cuando cambia el V Di o cuando se activa un enlace Lo que realmente se transmite es unalista de duplas del tipo < nodo, distancia >: V Di= {< id, distancia>,..., < i, 0 >,..., < id,distancia>}. Para disminuir el ancho de banda gastado, aquellas duplas cuya distanciassean ∞ no se envıan, por lo que el otro extremo las supone. El primer V Di, por tanto,sera V Di ={ <i, 0> } · Cada nodo almacena una copia del vector distancia mas recienteque haya recibido para cada enlace.

Cada nodo calcula V Di minimizando dij + Dj para cada elemento del vector, y teniendoen cuenta todos los enlaces que posee. ·

Page 77: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 76

Figura 5.19: Ejemplo para el algoritmo de Dijkstra.

Se recalcula V Di si:

• Se recibe V Di distinto del almacenado.

• Cae el enlace a j, entonces se descarta la informacion que se posea de j y se recalculael V Di completo.

• Cambia el coste de un enlace.

Presenta una ventaja, la comunicacion se da entre nodos adyacentes por lo que solo esnecesario emplear el nivel de enlace. Se envıa mucha informacion, pero a pocos equipos. Elproblema que presenta, dado que se basa en el algoritmo Bellman-Ford distribuido asıncrono, esque la convergencia puede ser lenta. Veamoslo con un ejemplo:

En esta situacion los vectores de distancias convergen a esta situacion:

A B CDist. a A 0 1 2Dist. a B 1 0 1Dist. a C 2 1 0

Page 78: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 77

Figura 5.20: Ejercicio para la aplicacion de ambos algoritmos.

Figura 5.21: Ejemplo de lentitud en convergencia.

Los vectores que cada nodo tiene almacenados por cada interfaz serıan:

A BA BC C1 0 2 10 1 1 01 2 0 1

Figura 5.22: Ejemplo.

Si cae el enlace B-C, desechamos el vector de B (1 0 1) y el que tiene almacenado en lainterfaz con C (2 1 0). B recalcula su vector y le da (1 0 3) ya que cree que por el camino dela izquierda, C esta accesible en 2 saltos mas el salto de B a A. Como ha cambiado su vector selo envıa a A. A calcularıa su vector y le darıa (0 1 4), que enviarıa a B. B recalcula y obtiene(1 0 5). Esto provoca un cırculo vicioso que hace que la distancia a C crezca. Para solucionarlo,cuando se rebase un valor lımite se considera el enlace caıdo y C inaccesible.

A medida que la red aumenta de tamano, la convergencia se complica.

Page 79: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 78

5.7.2. Estados de los enlaces

La informacion que se envıa es la distancia a los vecinos. Esta informacion se la mandamosa todos los nodos de la red, por lo que cada nodo puede conseguirse su propio mapa de la red.Se maneja menos informacion, pero se envıa a mas destinos. Los pasos que sigue son:

Cada nodo (SI) sabe su identificador y el de sus vecinos.

Cada nodo construye LSP (Link State Packet, paquete de estado de los enlaces) que con-tiene la lista de coste e identificador de los vecinos. LSP={<id, coste>, <id, coste>, ...}

Los LSP se envıan a todos los sistemas intermedios de la red.

Cada SI crearıa un mapa completo y harıa el calculo de rutas (p.e. con Dijkstra)

Los paquetes LSP se construyen y se envıan:

periodicamente.

cuando aparece un nuevo vecino.

cuando cambia el coste del enlace.

cuando cae un enlace.

Los inconvenientes de este metodo son los siguientes: si no conseguimos que los paquetes LSPles lleguen a todos los nodos de la red se pueden producir bucles. Tambien puede que se gastenmuchos recursos con el envıo de LSP.

Para que los LSP lleguen a todos los nodos no podemos basarnos en encaminamiento porquetodavıa no lo tenemos (recordemos que la fase en la que estamos actualmente, la distribucion deinformacion, es previa al encaminamiento). Se usa el metodo de inundacion que puede hacerque se llene la red de LSP. El mecanismo para controlar la cantidad de LSP es que el nodo sequede con los mas recientes o usar numeracion. La solucion pasa por un esquema que mezcla lanumeracion y el tiempo. Como metodo basico se usa la numeracion. A cada paquete se le asociaun numero de secuencia y ademas se le indicara la edad (contador que se va decrementandocon el tiempo y en cada salto) como mecanismo de autodestruccion, esto es, cuando se alcanceedad=0 se rechaza el paquete. El LSP contendra por tanto: origen, SN (numero de secuencia),edad y datos. No lleva destino porque esta dirigido a todos los routers de la red.

Page 80: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 79

Si el LSP que le llega a un nodo tiene un numero de secuencia mayor que el almacenado,guardamos la informacion y lo reemitimos decrementando la edad. Cuando se almacena tambienva decrementando su edad con el transcurso del tiempo y normalmente no llegara a cero. Si llegaun LSP con el SN menor del que tenemos almacenado se descarta.

El problema que se plantea ahora es la sincronizacion del reloj con los demas.

Figura 5.23: Recepcion del paquete.

[h]LSP/enlace 1 2 3origen=R5 envıo LSP 1 1 0

SN=17 envıo ACK 0 0 1

ALGORITMO:

1. Al inicio la tabla esta vacıa. Supondremos que los mensajes recibidos tendran EDAD 6= 0.

2. Periodicamente se recorre la tabla. Para cada enlace, si envıo LSP vale 1, se envıa el LSPcorrespondiente y se mantiene envıo LSP a 1. Si envıo ACK vale 1, envıa ACK y se le asignael valor 0 a envıo ACK. El razonamiento que lleva a este comportamiento es el siguiente:manteniendo envıo LSP a 1 me aseguro de que el paquete llegara a su destino, ya quelo estare retransmitiendo hasta que me llegue confirmacion de su llegada. Sin embargo elACK solo lo envıo una vez, ya que, si se perdiera el paquete, el LSP correspondiente meserıa reenviado por el emisor original y yo volverıa a confirmarlo.

3. Si recibe un LSP por enlace j: Si es nuevo (de otro enlace que no tenıa) o es mas reciente(de un origen que ya tenıa pero con un SN mayor) se realiza lo siguiente:

Page 81: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 80

Figura 5.24: Reenvıo del paquete.

Se decrementa la edad en 1 unidad.

Se almacena en memoria

Para todo enlace distinto de j se pone envıo LSP=1 y envıo ACK=0, y para el enlacej se pone envıo LSP=0 y envıo ACK=1.

4. Si recibe LSP por enlace j duplicado (es decir, coincide el SN y el origen con el de algunode los LSP que tenemos almacenados en la tabla, pero me llega por un enlace distinto queaquel por el que recibı el que tengo en memoria): Para el enlace j se pone envıo LSP a 0 yenvıo ACK a 1.

Esto se hace para evitar bucles en los que una serie de nodos se envıen informacion que yatienen. Podemos ver un ejemplo en el siguiente dibujo:

En este caso, C envıa el mismo LSP a A y B. Supongamos que, por cualquier razon, Breenvıa el LSP mas rapido que A. A A le llegarıa un LSP por A-B que ya le habıa llegadopor el enlace A-C, luego pone envıo LSP a 0 en el enlace AB (para no enviarle a B un LSPque ya tiene) y envıo ACK del enlace A-B a 1. Ası, le envıa un ACK a B para que no lesiga retransmitiendo el LSP.

5. Si se recibe un ACK por el enlace j de un nodo que ya esta en memoria. Se pondrıa paraese enlace j el valor envıo LSP a 0 y envıo ACK a 0. Poner envıo ACK a 0 puede parecerun poco extrano, pero si analizamos la situacion es facil entender el por que. Al haberrecibido un ACK de otro nodo, forzosamente el nodo que te ha enviado el ACK tiene que

Page 82: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 81

Figura 5.25: Ejemplo de envıo de LSPs.

haber puesto envıo LSP a 0 en el enlace. Entonces, enviarle un ACK no tiene sentido, yaque el unico uso del ACK es forzar al otro extremo a poner envıo LSP a 0 en el enlace.

6. Si se recibe algo que no cumple ninguno de los casos anteriores, se rechaza el paquete.

Hasta ahora, siempre hemos considerado que la edad del paquete tenıa un valor distinto a0. Veamos la utilidad de este campo: Si tenemos un LSP en memoria y la edad llega a 0:

Descartamos los datos.

Se envıa a todos los vecinos el LSP con edad 0.

Se espera asentimiento o al temporizador.

Se olvida completamente del origen que envio el LSP que llego a edad 0.

Si ese origen le manda un nuevo LSP lo trata como si fuese un enlace nuevo.

Cuando alguien recibe un LSP con edad 0 y coincide con el que esta en memoria (mismoSN) responde con un ACK por ese enlace y se reenvıa por los demas enlaces para informar queese nodo no esta accesible por ese enlace. Se esperan ACKs hasta que venza el temporizador. Sivence, nos olvidamos del enlace.

Si se recibe un LSP con edad 0 en el que no se conoce el origen o no coincide con el SN,el LSP no se propaga para que no se queden viajando por la red y solo se enviarıa un ACK alemisor. (Para mas informacion sobre encaminamiento, consultar ”Interconnections”, de RadiaPerlman, Ed Addison-Wesley)

Problema: ¿Como se propagarıan los paquetes LSP cuando cae el enlace A-E si nos centra-mos unicamente en aquellos cuyo origen es A? ¿Cuantas copias aparecerıan en total?

Page 83: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 82

Figura 5.26: Ejercicio.

5.7.3. LSP en una LAN

Figura 5.27: Esquema de una LAN con multiples routers.

En una LAN tenemos un medio compartido que utilizan todos los nodos de la red. Siintentamos utilizar el algoritmo de los LSP tal y como estaba, cada router vera un enlace virtualcon cada maquina de la red. Esto provoca que todos los routers pertenecientes a la misma LANse consideren vecinos entre ellos, como si hubiera una malla de interconexion total uniendolos.Cada router tiene que poner el estado del enlace a cada uno de los vecinos, por lo que enviarıaun mensaje con tantas parejas enlace-estado como routers haya en la red. Esto multiplicado porel numero de routers lleva a un gran gasto de recursos.

Para solucionarlo, podemos transformar la malla virtual en una conexion en estrella virtual.Para ello, se selecciona al uno de los routers, al que se llama router designado. Este router, ademasde realizar las funciones de router normal, funciona como router designado, es decir, ademas desu direccion origen presenta una direccion nueva que no existe fısicamente. Al usar un router

Page 84: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 83

designado, no es necesario que cada router envıe un LSP a cada nodo de la red. Simplementeenviara un LSP con todas las parejas enlace-coste al router designado, y este se encargara deretransmitirlo en difusion.

Notese que, aunque el paquete a enviar contenga la misma informacion, al enviarse a muchosmenos destinos se reduce considerablemente el trafico en la red.

Figura 5.28: LSP que se envıan en condiciones normales.

Figura 5.29: LSP que se envıan si se usa router designado (en este caso, se ha designado al router3.

Por otra parte, en una LAN no se envıan asentimientos entre los nodos, ya que aumentarıaconsiderablemente el trafico de la red. Para compensar esto el router designado envıa un paquetellamado SNP (resumen de los numeros de secuencia) a todos los nodos de la LAN. En el SNPse indican los numeros de secuencia de los LSP de todos los nodos de la red. Los vecinos lo

Page 85: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 84

comparan con lo que tienen en memoria y solo en el caso de que no concuerde (SN menor) lepide que le retransmita el paquete. En caso de que el nodo detecte que su SN es mayor que el delSNP (significarıa que se ha perdido un LSP antes de llegar al router designado), el nodo envıael LSP de nuevo.

5.8. Protocolos especıficos de encaminamiento

Para describir las redes, se usa un modelo jerarquico basado en dominios. Distinguimos dostipos de dominios:

Dominio administrativo: comprende una parte de la red que es administrada por una unicaautoridad.

Dominio de encaminamiento: es una parte de un dominio administrativo en la que se sigueun mismo criterio para el encaminamiento.

Area: es una region de la red en la que se utilizan protocolos intradominio.

Las ventajas de realizar esta division son:

Escalabilidad: recordemos que, al usar vector de distancias, la velocidad de convergenciadecrece rapidamente al aumentar la red. Con la division en dominios reducimos el ambitodel vector, con lo que conseguimos una convergencia mas rapida. Por otra parte, si usamosLSP sera necesario enviar los paquetes en difusion a toda la red. Con redes grandes, elconsumo de recursos puede ser excesivo.

Autonomıa de gestion: la division permite que los propietarios o gestores sean los adminis-tradores de la red. Ademas, se puede decidir que informacion se comparte con el exteriory cual se mantiene oculta.

Los protocolos de encaminamiento se dividen en dos tipos, segun el ambito:

Intradominio: propaga informacion dentro de un mismo dominio. Los criterios que se usanpara el encaminamiento son tecnicos. Busca optimizar la eficiencia. Algunos son:

• En TCP/IP, se usan RIP (Routing Information Protocol) y OSPF (Open ShortestPath First).

Page 86: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 85

• En OSI, existe el protocolo IS-IS.

Interdominio: transmite informacion entre distintos dominios, que pueden presentar dis-tintos criterios para el encaminamiento, basados en cuestiones administrativas. Permitenformular restricciones sobre el trafico encaminado. Algunos son:

• Encaminamiento manual.

• En TCP/IP, se usan EGP (External Gateway Protocol) y BGP (Border GatewayProtocol).

• En OSI, se usa IDRP (Inter-Domain Routing Protocol).

Figura 5.30: Division de dominios.

Existen dos tipos de protocolos:

Intradominio: Poseen unicidad de criterios (se basa en criterios tecnicos). Buscan optimizarla eficiencia.

Interdominio: Poseen distintos criterios (basados en criterios administrativos o polıticos).Estos criterios son mas restrictivos que los anteriores.

Definiciones:

D.A. (Dominio Administrativo): Parte de la red administrada por una sola autoridad.

Page 87: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 86

D.E. (Dominio de Encaminamiento): Subdivision de D.A. con especificaciones.

Areas: Subdivision de D.E.

Entre D.E.-D.E. y D.A.-D.A. se dan los protocolos interdominio mientras que entre areas ydentro de las areas se dan los protocolos intradominio. Algunos de los protocolos existentes son:

Intradominio:

• ISO: SI-SI (LSP) (SI: Sistema Intermedio)

• TCP/IP: RIP (Router Information Protocol): Muy simple, usa el vector de distancias.No soporta mascaras

• OSPF ( parecido a SI-SI)

Interdominio:

• TCP/IP: EGP (empleaba algo parecido a VD, esta en desuso), BGP

• ISO: IDRP (parecido a BGP)

Las ventajas de dividir en dominios la red son:

Escalabilidad: Pueden estar basados en VDs o en LSPs .

• El problema de VDs era la convergencia.

• El problema de los LSPs era la cantidad de recursos que se empleaban.

Por tanto, en ambas opciones hay ventajas si se reduce el tamano de la red. Deahı viene el beneficio de dividir los dominios.

Autonomıa de gestion: Permite que los propietarios o gestores sean los administradores yocultar una serie de detalles internos de la red.

Ya hemos visto en el apartado 6 como conseguir el mejor camino dentro de un dominio.Para salir del dominio es necesario usar el router de salida (gateway router). En caso de tener unsolo router de salida, la eleccion es obvia: todos los mensajes que tengan que salir del dominiose enviaran a ese router. Pero si hubiera mas de un router, habra que ver hacia cual de ellos seenvıa el mensaje. O bien se configura manualmente, o se selecciona segun algun algoritmo. Eneste ultimo caso, habra que:

Page 88: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 87

Obtener la informacion de alcanzabilidad traves de otros dominios (es decir, otros dominiosme tendran que comunicar a que direcciones puedo llegar atravesandolos). Los dominiosque sirven para conectar a otros dominios se llaman dominios de transito.

Propagar esta informacion dentro del dominio.

Escoger el mejor camino. Hay que destacar que en este caso no se puede escoger el mejorcamino como el que tenga una mejor metrica, ya que distintos dominios pueden tenerconceptos distintos de lo que es la metrica (para uno puede ser el retardo, para otro elnumero de saltos, etc.). Lo que sı se usara para escoger el mejor camino es el numero dedominios que hay que atravesar, procurando que este parametro sea lo menor posible.

Los protocolos encargados de esta tarea son los protocolos interdominio. Pasemos aanalizar los 2 tipos de protocolos existentes:

5.8.1. Protocolos intradominio (IGP)

Protocolo RIP (Routing Information Protocol)

Especificado en:

Version 1- RFC 1058

Version 2- RFC 2453

Emplea el VD (Vector Distancia). Por defecto, consideramos que el coste de cada enlacees 1. Este protocolo mide el numero de saltos. El maximo numero de saltos es 15. Si es mayorque 15, no se tiene en cuenta. De ahı que sea una buena eleccion de protocolo en caso de redespequenas.

Cada 30 segundos se resfrescan los datos de los vecinos enviando un mensaje de anuncio. Sien 180 segundos no se recibe informacion de algun vecino, toda la informacion acerca de el sedesecha.

Existen 2 tipos de mensajes:

Respuesta (RESP): es un mensaje que contiene el vector de distancias. Este mensaje seenvıa a los vecinos.

Solicitud (REQ): fuerza a uno de los vecinos a que te envıe un mensaje RESP.

Page 89: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 88

La Version 1 no soportaba mascaras mientras la Version 2 sı. Cada vecino se definira por elpar dir.IP/Mascara. La estructura de un paquete RIP es (donde L2 representa la cabecera delprotocolo que se use en nivel de enlace):

Figura 5.31: Estructura de un paquete RIP.

Si observamos como se construye un paquete RIP, podemos ver dos cosas. Desde el puntode vista de la eficiencia, es un desperdicio de cabeceras. Este gasto de cabeceras se justificaporque haciendolo ası es mas facil programar el protocolo en una maquina real. Tambien debemosresaltar el que use UDP (mas concretamente, su puerto 520). Debido a esto, el envıo de mensajeses no fiable.

Protocolo OSPF (Open Shortest Path First)

Este protocolo viene determinado en RFC 2328. La palabra .Open” que aparece en su nombresignifica que no es un protocolo propietario. Shortest Path First significa que emplea el estadode los enlaces (LSP). No emplea ni Dijkstra ni Bellman-Ford.

Cada enlace tiene su propio coste. Por defecto sera 1, pero lo usual es que el administradorde la red asigna un valor inversamente proporcional a la capacidad del enlace. Se envıan LSP,por defecto, cada 30 minutos. Este protocolo se encapsula directamente sobre IP, pero indicandoen el campo protocolo de la cabecera IP que se trata de OSPF (identificador 89 en el campoprotocolo).

Algunas caracterısticas que presenta este protocolo son:

Se basa en la transmision de LSPs.

Seguridad: Se puede autentificar al otro extremo mediante:

• Password (no se usa)

• MD5: Se anade un numero de secuencia que impide la reproduccion.

Page 90: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 89

Figura 5.32: Algoritmo de autentificacion mediante hash.

Multicast: Un paquete puede llegar a varios nodos. En realidad, se emplea una variantellamada MCSPF (MultiCast Service Path Finding).

Jerarquıa: Permite realizar divisiones dentro de un dominio, llamadas areas. En Internet, acada dominio se le llama Sistema Autonomo (AS). La jerarquıa se establece de la siguienteforma:

Para RAL, aparecen router designado y router designado de backup, por si falla el designado.

En OSPF, a los paquetes del estado de los enlaces se les denomina LSA (Link State An-nouncement/Advertisement). Se distinguen 5 tipos de LSA:

Tipo 1 - LSP - Router informa a los vecinos

Tipo 2 - LSP - Router designado

Tipo 3 - LSP - Router borde de area hacia dentro del area resumiendo la informacion defuera del area pero dentro del dominio o viceversa.

Tipo 4 - LSP - Router borde de area hacia dentro del area indicando el camino hacia losnodos o routers de salida.

Tipo 5 - LSP - Router de salida a todo el dominio indicando las redes accesibles fuera deldominio basandose en los calculos realizados mediante protocolos interdominio.

Page 91: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 90

Figura 5.33: Jerarquıa en Internet.

5.8.2. Protocolos interdominio (EGP)

BGP (Border Gateway Protocol)

Esta definido en las RFC 4271 (BGP-4), 1772 y 1773. Emplea un vector de caminos, algoparecido al vector distancia pero que lista los AS (Sistemas Autonomos) que hay que atravesarpara llegar a un destino. Por tanto, requiere informacion de alcanzabilidad.

Los routers de salida establecen conexiones TCP entre ellos que se llaman sesiones BGP.El protocolo TCP es fiable, es decir, se encarga de reenviar la informacion que se haya podidoperder. Existen dos tipos de sesiones BGP: las sesiones externas, o eBGP, que sirven para obtenerla informacion de alcanzabilidad, y las sesiones internas, o iBGP, que propagan la informacion

Page 92: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 91

obtenida a traves de eBGP dentro de un dominio.

Figura 5.34: Tipos de sesiones.

En la siguiente ilustracion podemos ver como, mediante el protocolo BGP, se transmitela informacion de alcanzabilidad entre varios sistemas autonomos. Podemos ver que las IPsinvolucradas forman parte de un mismo bloque, el 138.16.64.0/22, que es la informacion quetransmitimos.

Figura 5.35: Envıo de informacion mediante BGP.

Exite un organismo encargado de gestionar esto protocolo, IANA, autoridad encargada de laasignacion de numeros en Internet, que fue sustituido por el actual ICANN (Internet CorporationAssigned Names and Numbers).

Las rutas se definen utilizando rutas, que estan compuestas por un prefijo y varios atributos.El prefijo, a su vez, se compone de direccion de red y mascara. Entre los posibles atributos

Page 93: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 92

encontramos:

AS-PATH: Camino para llegar al destino. Se da como una lista de ASN (Numero deidentificacion de Sistema Autonomo, de 16 bits). Se emplea para decidir sobre el mejorcamino, que sera aquel con menor AS-PATH.

NEXT-HOP: La direccion IP del que envıa esa ruta. Es interesante para sistemas autono-mos conectados por varios routers.

Los router BGP manejan 3 tipos de bases de datos, en lugar de la RIB habitual. Estas son:

RIB de entrada: contiene los anuncios recibidos de otros routers, filtrados mediante unaserie de polıticas de entrada. Es una tabla con una entrada por cada sesion BGP.

RIB local: es unica para cada router, y es la que se usa para decidir el encaminamiento.Se crea filtrando la RIB de entrada. Esta tabla, junto a la configuracion del router y losprotocolos intradominio, forman la FIB.

RIB de salida: controla que informacion se anuncia. Se forma filtrando la RIB local con lapolıtica de salida.

Figura 5.36: Logica para la creacion de las RIBs.

En BGP, se sigue este algoritmo para la seleccion de rutas:

1. Se escoge con mayor preferencia la ruta local.

Page 94: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 93

2. . Si hay varias con el mismo valor, se escoge la de menor AS-PATH.

3. Si hay varias con el mismo valor, se escoge aquella cuyo Next-Hop este mas cerca.

4. Si estuvieran todos a la misma distancia, se escoge segun el identificador BGP, que es unicopara cada router. Esta eleccion es simplemente para deshacer el empate, no tiene ningunsentido.

El Sistema Autonomo puede considerarse como terminal (stub) o de transito (transit).Un sistema configurado como stub solamente cursa trafico cuyo origen o destino sea el mismo.Un sistema de transito, sin embargo, permite que lo atraviese trafico que va destinado a otrossistemas. Los sistemas de transito anuncian las rutas que se pueden alcanzar a traves de ellos,generalmente segun acuerdos economicos (anuncian las rutas que les pueden reportar beneficios).

Figura 5.37: Ejemplo con varios SA interconectados.

En la grafica, W e Y serıan claramente sistemas terminales. X se puede configurar para quesea de transito o terminal, permitiendo que anuncie rutas o no, respectivamente. Una situacionque se da con cierta frecuencia es que un sistema autonomo terminal este conectado a dosproveedores de servicio (ISPs). En este caso, X podrıa ser una empresa que tenga contratadoacceso a Internet con los proveedores B y C. Normalmente, un ISP te asigna direcciones privadaso bien un rango de direcciones publicas que este bajo el control del ISP. Si un AS esta conectadoa dos ISPs al mismo tiempo, se presentan dos opciones:

Solicitar un rango de direcciones publicas, independiente de cualquier ISP. Es una solucionque no se suele adoptar, debido al excesivo coste.

Pedir un rango de direcciones privadas a uno de los dos ISP, y anunciarlo a ambos ISP. Laruta se propagara por toda la red a traves de ambos AS.

En ocasiones, varios sistemas autonomos se unen para crear una confederacion. Aunque losAS que las componen son independientes y tienen cada uno un ASN propio, de cara al exteriorse presentan como si formaran un unico AS.

Page 95: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 94

Figura 5.38: Problema de la creacion de confederaciones.

Vemos que la creacion de confederaciones a veces evita que se pueda escoger el caminooptimo. En la ilustracion, si el AS 33 quisiera llegar hasta el ASN 38, el camino mas corto serıaa traves de 1, 37 y 4. Sin embargo, desde fuera vemos a la confederacion como un solo AS, notenemos acceso a informacion sobre los AS de su interior. Si siguieramos ese camino, estarıamosentrando dos veces en el AS 15, lo cual no esta permitido (se prohıbe que una ruta pase dosveces por un mismo AS para evitar bucles). La ruta a seguir tendrıa que ser la marcada conlınea continua, que tiene un salto mas que la ruta optima.

Reflectores de rutas

Figura 5.39: Uso de reflectores de rutas.

Los reflectores de rutas se utilizan para evitar tener que realizar un mallado total de cone-

Page 96: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 95

xiones iBGP dentro de un AS. El reflector de rutas esta unido al mallado total, y ademas existenvarios nodos que se conectan unicamente al reflector de rutas. Aunque normalmente lo que seaprende por una conexion iBGP no se puede retransmitir por otra conexion iBGP, el reflectorde rutas viola esta norma y envıa toda la informacion de que dispone por sus enlaces. Medianteel uso de reflectores se ahorra la creacion de muchas conexiones, pero hay que tener en cuentaque el reflector es un elemento centralizado, y como tal un fallo en el reflector serıa catastroficopara la red.

Veamos ahora un ejemplo real de configuracion de un AS. Vamos a suponer que los routersimplicados utilizan el sistema operativo IOS (Internetwork Operating System) de Cisco. Loscomandos que utilizaremos son:

router bgp x: Indica a un router que pertenece al AS con ASN x.

neighbor x remote-as y: Indica a un router que la direccion IP x pertenece a un router queforma parte del AS con ASN y.

Si tenemos una serie de routers dispuestos de la siguiente forma:

Figura 5.40: Ejemplo.

algunos de los comandos que tendremos que ejecutar en los routers son:

Router A Router RTB Router RTCrouter bgp 100 router bgp 200 router bgp 200

neighbor129.213.1.1remote-as200 neighbor129.213.1.2 remote-as100 neighbor175.220.212.1remote-as200neighbor175.220.1.2remote-as200

Page 97: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 96

5.8.3. TEMA 6: Control de congestion

Introduccion

En una red de conmutacion ideal, la situacion de congestion nunca llega a producirse. Altener los nodos memoria infinita, ningun paquete se pierde, independientemente del trafico. Peroen una situacion real, cada cola solo puede almacenar un numero limitado de paquetes, por loque es necesario un mecanismo que impida que la red se congestione y se bloquee el trafico.

Dada una red de conmutacion de paquetes, la evolucion de la carga es la siguiente:

El rendimiento normalizado se puede calcular como la velocidad de salida de paquetes delsistema partido por la capacidad teorica. Igualmente podemos calcular la carga normalizadacomo los paquetes por segudo que entran al sistema dividido por la capacidad teorica.

La carga en el sistema puede aumentar por varias razones:

Page 98: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 97

Encaminamiento defectuoso: un encaminamiento perfecto repartirıa la carga lo mejor po-sible, por lo que retrasa la congestion del sistema. Hay que tener en cuenta que solamentela retrasarıa: si la entrada de datos es superior a la capacidad del sistema para procesarlos,por muy bueno que sea el encaminamiento acabara por saturarse el sistema.

Lentitud en los conmutadores.

Al aumentar la carga, se llena la memoria de los nodos del sistema. Esto provoca que aumenteel retardo y se pierdan paquetes por saturacion de las colas (overflow). Al perderse paquetes, esnecesario retransmitirlos, por lo que aumenta la carga. Esto provoca un cırculo vicioso que haceque el sistema llegue al punto de bloqueo.

Para evitar este cırculo vicioso, se utilizan los mecanismos de control de congestion.

No hay que confundir mecanismos de control de congestion con mecanismos de control deflujo. En control de flujo, el extremo receptor da ordenes al transmisor para que reduzca o frenesu transmision. En control de congestion, es la red la que lo decide. El control de flujo puede serconsecuencia del control de congestion.

5.8.4. Clasificacion de los mecanismos de control de congestion

Los mecanismos de control de congestion se pueden clasificar segun 3 caracterısticas:

Segun lugar de realizacion:

• En los encaminadores: son los encaminadores los que tienen mayor responsabilidaden el control de congestion.

• En los sistemas finales: la responsabilidad del control de congestion recae en sumayor parte sobre los sistemas finales.

Ojo, aunque el lugar de realizacion sea en los encaminadores, siempre una pequena partedel procesamiento la tendran que realizar los sistemas finales. Igualmente ocurre en el casocontrario.

Segun el mecanismo en que esten basados:

• Basados en realimentacion: Los sistemas finales reciben ordenes sobre como de-ben comportarse (es decir, si deben aumentar el trafico que transmiten o reducirlo).

Page 99: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 98

Estas ordenes pueden provenir de los encaminadores (si es un mecanismo localiza-do en encaminadores) o puede ser que los mismos sistemas finales tomen decisionesbasadas en lo que observan que ocurre en la red (por ejemplo, si ven que se estan per-diendo paquetes, podrıan decidir reducir su tasa de transmision). Este ultimo metodoesta asociado con los mecanismos de congestion localizados en sistemas finales.

• Basados en reserva: un sistema final tiene que pedir permiso antes de inyectar in-formacion en la red. Se suele usar al establecer conexiones. Aunque se llamen ”basadosen reserva” no se produce una reserva real de capacidad (recordemos que estamos ha-blando de redes de conmutacion de paquetes, y realizar una reserva de recursos escontraproducente en general). La reserva que se produce es virtual.

Segun la forma de darle derechos de transmision al emisor:

• Basado en creditos: el emisor recibe una serie de creditos. Por cada credito, puedeintroducir un paquete en la red. La asignacion de creditos es dinamica, similar a unaventana deslizante.

• Basados en tasa: el emisor tiene una velocidad maxima a la que puede transmitirpaquetes.

Page 100: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Capıtulo 6

Capa de transporte

6.1. Introduccion a la capa de transporte

Si recordamos los niveles que hemos estudiado hasta ahora, el nivel de enlace era solo entrenodos adyacentes. En el nivel de red, tenamos que tener en cuenta los nodos intermedios. En lacapa de transporte, sin embargo, son los sistemas finales los que se entienden extremo a extremo,sin importarles la red intermedia.

Figura 6.1: Nivel de transporte.

La capa de transporte puede anadir las siguientes funcionalidades:

Fiabilidad.

Orientacion a conexion.

Posibilidad de multiplexion de conexiones.

99

Page 101: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 100

ISO normalizo y definio 5 protocolos de nivel de transporte, denominados de TP0 a TP5.TP0 es muy simple y se utiliza si el nivel de red ofrece un servicio muy bueno. Si se empiezaa tener errores en el nivel de red pasamos a TP1, TP2, TP3, y TP4 (siendo cada uno de losprotocolos con numeracion superior capaz de recuperar mas errores; TP4 es capaz de recuperarcasi cualquier error, pero tambien es el mas complejo). Tambien se definieron servicios ofrecidospor el nivel de transporte, tanto orientados a conexion como no orientados a conexion.

Estos protocolos tenıan muchas opciones y aplicaciones, pero no se usan porque se implan-taron los protocolos de transporte de IP: TCP y UDP.

Figura 6.2: Protocolos de transporte en TCP/IP.

6.2. Jerarquıa TCP/IP

6.2.1. UDP

Protocolo de Datagrama de Usuario (User Datagram Protocol). Definido en la RFC 768.Es un protocolo con el cual se ofrece un servicio no orientado a conexion (CL, ConnectionLess) y no fiable. Esto era practicamente lo que ofreca el nivel de red, IP, pero la diferenciaes que con UDP se anade la capacidad de multiplexion (MUX). En UDP se utiliza el numerode puerto para multiplexion: los mensajes van a la misma maquina pero dentro de ella van auna aplicacion u otra dependiendo del numero de puerto. Por tanto, una direccion UDP tiene laforma:

Direccion UDP = Direccion IP + Puerto UDP (6.1)

En la cabecera IP se indica que la informacion que esta encapsulada es un paquete UDPponiendo en el campo protocolo el valor correspondiente a UDP, que es 17.

En la cabecera UDP van el numero de puerto origen y el numero de puerto destino (aligual que en la de IP iban la IP origen y la IP destino). Los numeros de puerto, al estar

Page 102: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 101

Figura 6.3: Encapsulamiento de UDP.

Figura 6.4: Formato de la cabecera UDP.

formados por 16 bits, pueden ser del 0 al 65535. Sin embargo, el usuario no puede escogeruno cualquiera: los puertos de 0 a 1023 estan reservados para aplicaciones especıficas. Porejemplo:

• 69: puerto para TFTP, Trivial File Transfer Protocol (transferencia de ficheros trivial).

• 513: puerto para who, que permite conocer quien ocupa el equipo en ese momento.

La longitud total del segmento mide el tamano del segmento completo (cabecera y datos)en octetos.

Checksum es un codigo de redundancia que detecta errores. Para calcularlo, se tienenen cuenta las direcciones IP del datagrama donde va este segmento, es decir, tomamosinformacion del nivel inferior (en OSI, eso sera una HEREJıA).

Algunos campos aceptan valores especiales:

Page 103: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 102

Si ponemos checksum = 0 en la trama, estaramos indicando que no esta calculado elcodigo de redundancia.

Si ponemos puerto origen = 0 no estaramos indicando el origen, por lo que el destinono podra contestar.

6.2.2. TCP

Protocolo de Control de Transmision (Transmission Control Protocol). Definido en la RFC793. Con este protocolo se puede ofrecer un servicio orientado a conexion (CO,Connection Orien-ted) y fiable (ademas de ofrecer multiplexion, al igual que UDP). Al ser un servicio CO es duplex(se pueden enviar datos en ambos sentidos, da igual quien haya iniciado la conexion). Dicha co-nexion esta identificada por una direccion TCP:

Direccion UDP = Direccion IP + Puerto UDP (6.2)

El numero de puerto sirve para poder multiplexar. Veamos un ejemplo:

Figura 6.5: Ejemplo de multiplexion.

En la maquina con IP1 tengo 3 conexiones distintas con la misma IP y puerto origen. Lasconexiones con la maquina IP2 se diferencian en el numero de puerto destino, puesto que TCP2es distinto que TCP3 en IP2. Vemos que una conexion IP esta definida unıvocamente por4 parametros: IP origen, puerto origen, IP destino y puerto destino. Se pueden repetirhasta 3 de estos parametros en dos conexiones distintas, pero nunca los cuatro a la vez.

Page 104: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 103

Podemos tener un servidor asociado a un numero de puerto. Por ejemplo, si TCP1 fuerael puerto asociado con un servidor FTP (puerto 21), estarıamos transfiriendo ficheros hacia elmismo puerto, pero desde maquinas distintas (llegan datos desde 2 y 3).

La fiabilidad es este tipo de conexion se puede conseguir mediante asentimiento y retrans-misiones. Cada paquete tiene que ser asentido. Si enviamos datos y no recibimos asentimientosdurante un cierto tiempo, suponemos que se ha perdido la informacion y lo que hacemos esretransmitir. El modelo que se usa en estos casos es el siguiente:

Figura 6.6: Modelo de colas para transmision en TCP.

La maquina destino recibe en un buffer y, cuando comprueba que no falta nada y todoesta en orden, se lo pasa al nivel superior. Si llega bien, manda asentimiento. Si no, no mandanada y espera a que se retransmita. La interfaz entre las capas (es decir, la forma de pasarselos datos) no esta normalizada. Solo se obliga a que lo que se envıa a la capa adyacenteeste en el mismo orden en que se envio. Al contrario que OSI, ni siquiera se obliga a que eltamano del paquete que se envio y el del paquete que el receptor pasa al nivel superior sea elmismo. Tampoco esta normalizado lo que se hace con los datos si algo no llega. Lonormal es, si tienes una serie de paquetes pero te falta uno, que almacenes los que tienes y losque van llegando hasta que el origen te reenvıa el que te falta. Entonces, se pasan todos de golpeal nivel superior. Lo que sı esta normalizado es el conjunto de PDUs que se intercambian.

Normalmente, a la hora de enviar un datagrama, el nivel superior se lo envıa al nivelinferior. Este entonces lo pone en una cola, y lo transmite cuando considere oportuno. Hay dosmodificaciones de este funcionamiento:

Mecanismo PUSH: tampoco esta normalizado. Mediante este mecanismo, el nivel superiorobliga al nivel inferior a enviar todo lo que tenga en el buffer lo antes posible. Existe un

Page 105: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 104

flag dentro de la trama que se envıa (recordemos que un flag es una variable binaria, quepuede valer 1 en caso de que algo sea cierto y 0 en caso de que sea falso) en la que se indicaque esos datos han sido mandados de forma obligada.

Datos urgentes: los paquetes que estan marcados como datos urgentes pueden saltarse todaslas colas. Se ponen siempre al principio del segmento en el que viajan. En la cabecera, sedebe indicar que el segmento lleva datos urgentes (con un flag) y ademas es obligatorioindicar cuantos de los datos son urgentes.

En TCP existe control de flujo: el receptor frena al emisor, diciendole el receptor al emisorla cantidad de octetos que puede enviar sin esperar asentimiento. Esto es lo que se llama tamanode ventana. Aquı se usa ventana deslizante (regulable segun lo que desee el receptor). Como laconexion es duplex, lo que pasa en un sentido pasa tambien en el contrario.

Estudiemos la cabecera TCP en detalle:

Figura 6.7: Fomato de cabecera en TCP.

Puerto origen y puerto destino: como ya hemos visto, se usa para multiplexion. Son de 16bits cada uno (van de 0 a 65535)

Page 106: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 105

Numero de secuencia: en vez de numerarse los segmentos, se numeran los octetos (Losoctetos tienen su propio numero de orden. Se pone el numero del primer octeto que vaen el segmento). Tiene mucho sentido numerar los octetos en lugar de los segmentos, yaque los segmentos pueden tener longitud variable. Hay que resaltar que el numero con elque se comienza a numerar los octetos es aleatorio, y se decide en el establecimiento de laconexion. Un ejemplo serıa:

Figura 6.8: Numeracion de octetos en la cabecera TCP.

Asentimiento: Se envıa el numero de orden del primer octeto que se espera recibir. Ala vez que mandas datos se pueden mandar asentimientos, para optimizar el gasto de anchode banda. El mecanismo de asentimiento se explica con detalle en el siguiente apartado.

THL (TCP Header Length, longitud de cabecera TCP): Contiene el tamano de la cabecera,en unidades de 4 octetos (32 bits). El tamano mınimo de la cabecera TCP son 20octetos, al igual que en la cabecera IP. Es obligatorio conocer este dato de memoria,se puede preguntar expresamente en el examen.

Flags:

Figura 6.9: Seccion de flags de la cabecera TCP.

Page 107: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 106

• URG: Indica que el paquete contiene datos urgentes. Recordemos que estos datos seponen al principio del segmento, se pueden saltar el orden normal y acceden al nivelsuperior cuanto antes. Si no contiene datos urgentes, se pone a 0.

• ACK(ACKnowledgement, asentimiento): Si vale 0, se ignora el campo asentimiento.Si vale 1, significa que el campo asentimiento de la cabecera contiene un asentimiento.

• PSH: se pone a 1 cuando se fuerza el PUSH. Ası cuando lo recibe el otro extremo,sabe que son datos obligados (pushed) por el receptor.

• RST: bit de reset. Aborta la conexion cuando vale 1. Veremos su uso en un apartadoposterior.

• SYN (SYNchronous idle, espera sıncrona): se usa en el establecimiento de la conexion,para ponerse de acuerdo ambos extremos.

• FIN: para el cierre de la conexion. Al contrario que RST, que cierra la conexion deforma abrupta, con FIN se comienza un proceso de negociacion para el cierre.

Tamano de ventana: Le dice al receptor el numero de octetos que puede enviar sin tenerque esperar asentimiento. Si esta a 0, no podra mandar nada.

Checksum: Aquı en el calculo del checksum, tambien se tienen en cuenta las direccionesIP (nivel inferior).

Campos opcionales: al igual que la cabecera IP, los campos opcionales deberan ser mutiplosde 4 octetos. Si no lo son, se anadira relleno hasta conseguirlo.

Detalles de TCP:

Funcionamiento de los asentimientos

Como se numeran los octetos, lo que se asienten son los octetos, no las tramas. Se usa untipo de asentimiento que se llama asentimiento acumulativo. Cuando asientes un octeto, asientestodos los que han llegado antes que el.

Es un protocolo bueno porque es muy simple, pero da poca informacion. Eso podemos verloen el ejemplo anterior, con el paquete de numero de secuencia 2500 (resaltado en un recuadro),que se ha retransmitido sin ser necesario. Cuando perdemos una rafaga de paquetes sabemosque el primero se ha perdido, pero no sabemos si tambien se han perdido los que siguen. Haydos formas de enfrentarse a esta situacion:

Ser conservativos: Retransmitir el que se piensa que se ha perdido y esperar asentimiento.Si es el unico que se habıa perdido, llegara el asentimiento de todo el conjunto completo,

Page 108: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 107

Figura 6.10: Funcionamiento de los asentimientos en TCP.

en el ejemplo ACK=4500. Pero si se habıan perdido los siguientes, se convierte en unprotocolo de parada y espera (manda y espera asentimiento, ası con todos los que se hayanperdido). Esto es muy ineficiente.

Ser agresivos: Retransmitir todo aunque lo demas no se haya perdido, pero de esta formagastamos ancho de banda y mas recursos.

Realmente el problema no tiene una solucion optima, depende de la implementacion.

Funcionamiento de la ventana deslizante:

La ventana autorizada representa lo que puedo enviar sin recibir asentimiento. Vemos comocon asentimientos se va desplazando el borde inferior de la ventana y con el tamano se limita elborde superior. Para implementar el mecanismo de retransmision, se asocia a cada segmento un

Page 109: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 108

Figura 6.11: Funcionamiento de la ventana desliante en TCP.

temporizador. Cuando cumple el temporizador, el segmento asociado se retransmite. El calculodel temporizador debe ser acorde con el comportamiento de la red.

Calculo del temporizador de retransmision de TCP:

El tiempo que pasa desde que se envıa un paquete hasta que se retransmite es parametromuy importante. Hay que tener en cuenta que, si ese tiempo demasiado corto, a menudo trans-mitiremos paquetes sin necesidad. Por contrario, si es demasiado largo, tardaremos mucho enretransmitir y habra tiempo muerto en que no estaremos transmitiendo nada.

Figura 6.12: Definicion del Round Trip Time

Podemos medir el tiempo desde que se transmite un segmento hasta que llega el ACKcorrespondiente. Este tiempo se conoce como tiempo de ida y vuelta, RTT (Round Trip Time)

Page 110: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 109

y nos puede servir para determinar el temporizador. El RTT medio es muy oscilante porque alatravesar la red, el retraso es muy variable. Lo que se hace es una estimacion, el RTT estimado,segun la siguiente formula:

RTTest = RTTestant(1− δ) +RTTmedido(δ) (6.3)

Con ello conseguimos suavizar el RTT. Tambien podemos calcular la desviacion y suavizarla:

DESVest = DESVestant(1− ρ)+ | RTTestant | ρ (6.4)

Con estos parametros podemos calcular el valor del temporizador:

TEMP = RTTest + ηDESVest (6.5)

El resultado sera un poco mas grande que lo que tarda en llegar el ACK, pero no muchomas.

Ahora se nos presenta un nuevo problema. Si retransmitimos un segmento y nos llega unACK, no podemos saber si ese ACK se refiere al segmento original o a la retransmision.

Figura 6.13: Ambiguedad del RTT

El asentimiento de TCP es acumulativo y no hay forma de saber con que original se mideel asentimiento, por lo que no hay forma de medir el RTT. Para ello usamos el algoritmo deKARN: Cuando hay que retransmitir no se calcula el temporizador con la formula de RTT.En su lugar, con cada retransmision se aumenta el temporizador de los segmentos enviados y noasentidos al doble (hasta un valor maximo). Cuando no hay retransmision ya se vuelve a medirel temporizador mediante la formula.

Control de congestion de TCP:

Page 111: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 110

En TCP, cuando el extremo que esta transmitiendo estima que la red esta congestionada,se frena. Pero el resto de los protocolos no se frenan (por ejemplo UDP), ası que utilizan lo quedeja libre TCP y acaban saturando la red. Por tanto, aunque historicamente se llame control decongestion”, realmente lo que hace es ayudar para que no haya congestion, no la controla. Serıaun control de congestion si todas las comunicaciones de una red se hicieran usando el protocoloTCP exclusivamente.

Hemos visto que en los segmentos aparece un campo que especifica la ventana indicada porel receptor. Ademas de esa, en TCP hay otra ventana que es la ventana de congestion, la cualse va reduciendo cuando se estima que hay congestion. El mınimo de estas dos ventanas es laventana autorizada (lo que puedo transmitir sin esperar asentimientos).

V entana autorizada = min(ventana indicada por receptor, ventana de congestion) (6.6)

Si no hay congestion, la ventana autorizada sera la ventana indicada por el receptor. Elca1lculo de la ventana de congestion se realiza de la siguiente forma: cada vez que se estima quehay congestion (se considera que hay congestion si hay que retransmitir un segmento),se disminuye el tamano de la ventana de congestion a la mitad. Eso se hara ası hastaque la ventana alcance el tamano mınimo de un segmento (que no un octeto). Recordemosque, como el algoritmo de Karn controla la retransmision, aumentamos los temporizadores delos segmentos enviados y no asentidos al doble.

A la hora de aumentar la ventana, se siguen dos procedimientos:

Arranque lento: Se utiliza cuando empezamos a aumentar la ventana. Por cada ACK quellegue, se incrementa la ventana de congestion en el tamano de 1 segmento.

Otro protocolo, sin nombre: Se utiliza cuando se alcanza cierto umbral mediante el proto-colo anterior. En este caso, se incrementa la ventana en el tamano de 1 segmento cada vezque se recibe ACK para toda la ventana (es decir, tantos asentimientos como segmentosquepan en la ventana). Por ejemplo, con segmentos de 1000 octetos y una ventana de 3000octetos, al recibir 3 asentimientos la ventana pasara a valer 4000 octetos.

Una aclaracion: la notacion del nombre de los protocolos puede dar lugar a equıvocos. El pro-tocolo de arranque lento en realidad es mas ra1pido que el segundo. En el primero, cuandorecibes un asentimiento ya puedes mandar mas datos. En el segundo, necesitas varios asenti-mientos antes de aumentar la ventana.

Mecanismo Fast Retransmit-Fast Recovery:

Page 112: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 111

Permite retransmitir antes de que venzan los temporizadores. Si un segmento se pierde,se empezaran a recibir asentimientos repetidos (como se puede ver en la fig10). Si llegan 3asentimientos repetidos (es decir, el ACK original y otros 3 iguales), aunque no haya vencido eltemporizador se retransmite el segmento y se considera que hay congestion: disminuye la ventanade congestion a la mitad y los temporizadores se duplican. Establecimiento de conexion: Duranteel establecimiento de la conexion se negocian parametros como el tamano maximo de segmentoy los numeros de secuencia iniciales en cada sentido. Se hace en tres etapas:

Figura 6.14: Protocolo para establecimiento de la conexion

1. Uno de los extremos envıa un paquete, compuesto solo de una cabecera con el bit SYN a1 (expresa el deseo de iniciar una conexion) y un numero de secuencia arbitrario X (sera1el numero de secuencia inicial en ese sentido de la transmision).

2. El otro extremo le responde con otro paquete, compuesto exclusivamente de una cabecera,con el bit SYN a 1 (el tambien desea establecer una conexion en el otro sentido, recordemosque en TCP las conexiones son duplex), el numero de secuencia Y (numero de secuenciainicial en su sentido de la transmision) y asiente el numero de secuencia X que le envio elotro extremo con un ACK a X+1.

3. El extremo que inicio el procedimiento indica que su numero de secuencia es ahora X+1,y asiente el numero de secuencia enviado por el otro extremo con un ACK a Y+1. Eneste momento, se considera que la conexion esta establecida y se pueden empezar a enviardatos en ambos sentidos. De hecho, el extremo de la izquierda podrıa haber empezado aenviar datos justo despues de recibir el asentimiento a X+1.

Page 113: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 112

Si recordamos el funcionamiento de los asentimientos, cabe preguntarse por que se asienteX+1 e Y+1 si no se ha enviado ningun octeto de datos. Esto se hace ası porque seconsidera que el bit SYN puesto a 1 equivale a enviar un octeto de datos(tambien ocurrira esto con el bit FIN, como veremos mas adelante). Otra cuestion quellama la atencion es que se utilice un numero de secuencia arbitrario, en lugar de empezarsiempre por 0. Esto se hace ası para evitar confusiones: si empezaramos siempre por 0, alabrir una conexion, cerrarla rapidamente y volverla a abrir podran confundirse los paquetespertenecientes a cada una de las conexiones (tendran numeros de secuencia similares). Paraevitar esto, ademas de usar numeros aleatorios, TCP recuerda los numeros de secuenciaque utilizo en las ultimas conexiones para no repetir los mismos numeros contra los mismosdestinos.

Cierre de la conexion:

Para el cierre de la conexion no la tiene que cerrar el extremo que la abrio. Lo que si es quehay que cerrarla en ambos sentidos por separado. Puede que cerremos la conexion en unsentido pero en el otro sentido aun queden paquetes por enviar. Se enviaran los paquetes ydespues se cerrara el otro sentido de la conexion. Una vez cerrado un sentido de la conexion,el transmisor correspondiente a ese sentido queda limitado a enviar asentimientos, no puedeenviar datos.

Figura 6.15: Caso mas simple: ambas conexiones se cierran

Algunos detalles a tener en cuenta sobre el segundo caso:

Como decıamos, el extremo transmisor de la conexion cerrada solamente puede transmitircabeceras con asentimientos, no datos. Hay que resaltar que todas las cabeceras tendranel numero de secuencia correspondiente al que tendran si enviaran datos, perodicho numero de secuencia no cambia porque no se envıa ningun octeto de datos.

Page 114: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 113

Figura 6.16: Caso complejo: primero se cierra un sentido y despues otro

Una conexion se considera cerrada cuando se recibe el asentimiento al paquete que contenıael bit FIN a 1. Es necesario cerrar cada uno de los dos sentidos.

Hay un caso especial de cierre de conexion, llamado liberacion abrupta. Se suele darcuando hay algun error. El cierre de la conexion es sin negociacion, inmediato y no requiereasentimiento. Veamos dos ejemplos en los que se da este tipo de cierre:

Aspectos del rendimiento de TCP: Recordemos que TCP tiene una cabecera de ta-mano mınimo 20 octetos e IP tiene una cabecera de tamano mınimo 20 octetos. Por otra parte,el nivel de enlace que se use tambien tendra su propia cabecera que anadir a esto. Esto quieredecir que, independientemente del tamano de los datos, estamos transmitiendo una cabecera deal menos 40 octetos en cada datagrama.

Existe un fenomeno, llamado sındrome de la ventana tonta (Silly Window Syndro-me), en el que se desperdicia mucho ancho de banda en cabeceras. El fenomeno consiste en losiguiente:

El extremo receptor (B) necesita que el extremo transmisor (A) se frene momentaneamenteporque el buffer de recepcion de B esta saturado. Para ello, le envıa como tamano deventana de transmision el valor 0.

Page 115: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 114

Figura 6.17: Liberacion abrupta por caıda de uno de los extremos

B se recupera un poco, consigue un espacio de un octeto en su buffer y envıa a A el tamanode ventana de transmision 1 (es decir, puede transmitir un octeto de datos)

Si A transmite, estara enviando un paquete con 1 octeto de datos y mas de 40 de cabeceras.El rendimiento sera inferior al 2,5 %.

Para evitar esto, cuando B envıe un tamano de ventana 0 a A, tendra que esperar antes decambiar el tamano de ventana de transmision de A. No podra enviarle un tamano de ventanadistinto a A hasta que ocurra una de estas dos condiciones:

En el buffer de B cabe un segmento de A (es decir, el tamano de segmento que se negocio enel establecimiento de la conexion).

La mitad del buffer de B esta vacıo.

Tambien puede darse la situacion de que el transmisor tenga poca informacion que enviar.En ese caso, se hace lo siguiente:

Si todo lo que A ha enviado esta asentido, A envıa lo poco que tenga que enviar (aunquesolo sea un octeto).

Si falta algo de lo que A ha enviado por asentir, A espera a tener bastantes datos parallenar un segmento o bien a que llegue un asentimiento. Entonces, A puede transmitir.

PROBLEMA:Sean dos sistemas finales con la siguiente torre de protocolos:

Page 116: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 115

Figura 6.18: Liberacion abrupta por exceso de retraso durante establecimiento de conexion

Nos dan los siguientes datos:

Retardo de propagacion:105ns

Caudal ofrecido en el nivel fısico: 64Kbps (nota: K = 103)

La ventana TCP es fija de 2000 octetos.

La ventana LAPB es fija a 6 tramas.

Queremos transmitir 40.000 octetos de datos

Suponer que en el establecimiento y cierre de la conexion no se envıan datos, tan solocabeceras.

Suponer la conexion LAPB previamente establecida.

Page 117: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 116

Figura 6.19: Torre de protocolos del ejercicio

Se pide:

¿Cuanto tiempo se tarda en establecer la conexion? ¿Y el cierre?

Tiempo mınimo de transmision de los datos.

FUNCIONAMIENTO DE LAPB:

LAPB es un protocolo del nivel de enlace. Para tramas sueltas se tiene una sobrecarga de6 octetos. Para tramas continuas se tiene una sobrecarga de cabecera con 5 octetos (porque el”guion”del final sirve para la trama siguiente, como si fuera el del principio de la trama).

Figura 6.20: Encadenado de tramas LAPB

A la hora de decidir el tamano de los segmentos TCP, nos encontramos con un problemade optimizacion. Cuanto mayor sea el segmento, mayor es el rendimiento (ya que hay mas datospara la misma cabecera). Pero, como tenemos una ventana limitada, tambien sera mayor eltiempo muerto que nos pasamos sin transmitir, mientras llega el asentimiento:

A la larga nos interesa estar el mınimo tiempo sin transmitir, que se haga 0, para tener envıocontinuo en ese punto. Con ello disminuye el rendimiento (mas cabecera para los mismos datos),

Page 118: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 117

Figura 6.21: Tiempo muerto en funcion del tamano de trama

pero transmitimos mas tiempo. Lo complicado es que la ventana TCP se mide en octetos y lade LAPB en tramas.

Nota importante: El tiempo de asentimiento es fijo. Si nos sale que el numero optimode tramas a mandar antes de que llegue el asentimiento de la primera es mayor que 6, hay quetruncar a 6 porque la ventana de transmision de LAPB no deja transmitir mas de 6 tramas.

Page 119: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Capıtulo 7

Evolucion de los equipos y tendencıas

7.1. Introduccion a IPv6

IPv6 es una evolucion de IPv4. Esta reglado por la RFC 2460 del IETF. Una de las prin-cipales motivaciones para que apareciera IPv6 fue la escasez de direcciones IP de IPv4, que yaestan casi agotadas en el mundo.

7.2. Direccionamiento en IPv6

IPv6 utiliza direcciones IP de 128 bits (16 octetos), en lugar de los 32 bits que usabaIPv4. Recordemos del tema 3, Direccionamiento, que dichas direcciones se representan enhexadecimal, por parejas de octetos separadas por : . Una direccion IPv6 valida serıa:

3FFE : 0501 : 0008 : 0000 : 0260 : 97FF : FE40 : EFAB

Ademas, se permiten dos simplificaciones para las direcciones: se puede sustituir unacadena de ceros de cualquier longitud por ::, y ademas los ultimos 4 octetos se puedenrepresentar igual que se representaban las direcciones en IPv4. Aplicando esto al ejemploanterior, la direccion serıa equivalente a poner:

3FFE : 0501 : 0008 :: 0260 : 97FF : 254.64.239.171

Es importante tener claro que solo se puede sustituir una cadena de ceros por

118

Page 120: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 119

::. Si hay varias, como en la direccion anterior, lo normal es escoger la mas larga.

Al igual que en IPv4, existe una serie de direcciones especiales. Antes de explicarlas, vamosa aclarar la notacion que vamos a utilizar para representarlas. En IPv6, un prefijo de direccionespecial se representa como:

Direccion IPv6/numero

y se interpreta como que todas las direcciones que empiecen por los primeros nume-ro bits de la Direccion IPv6 pertenecen a ese tipo de direcciones. Por ejemplo, si decimosque la direccion de tipo multicast es FF00 ::/8, nos referimos a que cualquier direccion cuyosprimeros 8 bits coincidan con los primeros 8 bits de FF00 :: es una direccion multicast. En estecaso en particular, estarıamos diciendo que una direccion que empiece por 11111111 (FF) es unadireccion multicast.

Hay que tener mucho cuidado con esto, ya que estamos representando las direccio-nes en hexadecimal y la mascara como numero de bits. Esto puede llevar a situacionescuriosas: por ejemplo, si decimos que una direccion Unique Local Unicast (se vera mas tarde) em-pieza por FC00 ::/7, hay que tener una especial precaucion. FC, en binario, equivale a 11111100.Como tomamos los 7 primeros bits, valdran tanto las direcciones que empiezan por 11111100(FC) como las que empiezan por 11111101 (FD). ¡Por tanto, una direccion que empiece por FDtambien entra dentro de FC00 :: /7!

7.3. Direcciones especiales en IPv6

Unspecified(no especificadas): Son las direcciones ::/128 (todos los bits a 0). Se usan en elcampo origen cuando queremos enviar algo y todavıa no tenemos una direccion asignada.

Loopback (bucle local): Son las direcciones ::1/128 (todos los bits a 0 y el ultimo a 1).Equivalente a 127.0.0.1 de IPv4.

IPv4-mapped (direcciones IPv4 ”mapeadas”): Son las direcciones ::FFFF:0:0/96 (80 bitsa 0, 16 bits a 1 y despues cualquier direccion de 4 octetos). Sirven para encapsular direc-ciones IPv4 en IPv6.

Multicast (para multiples destinos): Son las direcciones FF00::/8 (primeros 8 bits a 1).Existen varias direcciones especiales:

Page 121: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 120

• Direcciones de difucion para nodos:

◦ Difusion para nodos local: Es la direccion FF01::1. Alcanzan todas las entidadesIP dentro de un mismo nodo.

◦ Difusion para nodos en el enlace: Es la direccion FF02::1. Los paquetes llegan atodos los nodos alcanzables sin pasar por un router.

• Direccion de difusion para routers:

◦ Difusion para routers local: Es la direccion FF01::2. Alcanza al propio nodo quela envıa.

◦ Difusion para routers en el enlace: Es la direccion FF02::2. Los paquetes llegan atodos los routers alcanzables sin atravesar un router.

◦ Difusion para routers en el site: Es la direccion FF05::2. Los paquetes llegan atodos los routers que pertenecen al site, es decir, a los routers que pertenecen anuestra red interna. El paquete llegara hasta el borde de la red que controlamosnosotros (hasta el router de salida a Internet).

• Direccion de difusion de nodo solicitado(solicited-node):

es una direccion especial, cuyo proposito es sustituir al protocolo ARP (como severa en el estudio de la resolucion de direcciones dentro del apartado ICMPv6). Estadireccion esta asociada a una direccion unicast, y se construye de la siguiente forma:

Es decir, se toma como prefijo la direccion FF02::1:FF00:0/104 (el paquete empieza porFF02::1:FF) y se ponen a continuacion los ultimos 24 bits de la direccion unicast asociada.

A nivel de enlace, la direccion MAC destino que se utiliza en Ethernet se crea de esta forma:

esto es, copiamos los ultimos 32 bits de la direccion IPv6 destino como ultimos 32 bitsde la direccion MAC, y lo prefijamos con 2 octetos que nos van a indicar que es una direccion dedifusion: 33 33. Cuando un nodo reciba un paquete con esta direccion de enlace, lo aceptara porempezar por 33 33. Entonces mirara los ultimos 4 octetos de la direccion MAC: si se correspondencon los ultimos 4 octetos de su direccion IP multicast solicitada, aceptara el paquete. En caso

Page 122: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 121

contrario, lo descartara. La ventaja de usar este metodo es que todos los calculos anteriores sepueden programar a nivel hardware, con lo que se consigue una gran velocidad.

Existe una pequena probabilidad de que varios nodos tengan iguales los ultimos 32 bitsde la direccion multicast solicitada. Si eso ocurriera y el nodo aceptara el paquete por error, alpasarlo a su nivel de red se darıa cuenta de que la direccion IP destino no es la suya y descartarıael paquete entonces.

Anycast (cualquier destino de un grupo): Sintacticamente, son como las direccionesunicast. Sin embargo, al usar este tipo de direcciones, estaremos enviando un paquete a ungrupo de maquinas. La diferencia con multicast es que, mientras que un paquete enviadoa una direccion multicast tiene que llegar a todos los destinos, un paquete enviado a unadireccion anycast tiene que llegar a uno y solo a uno de los destinos del grupo, engeneral al mas cercano.

Unicast: Son direcciones que representan a una interfaz (como en IPv4), o bien a ungrupo de interfaces (esto es una novedad de IPv6). La utilidad de asignar una mismaIP a varias interfaces es, en general, para conseguir un reparto de carga:

Haciendo esto ası, los paquetes que vayan al router podran llegar a el por 3 interfacesdiferentes, sin necesidad de que los equipos de la LAN lo sepan. Existen tres tipos de direccionesunicast:

Link Local Unicast (Direcciones locales al enlace): Son las direcciones FE80::/10 (empie-zan por 1111 1110 10). Su ambito de validez es un enlace de IPv6 (en IPv6 se considera unenlace a un conjunto de maquinas unidas por un medio comun, tal que en el las maquinasse pueden comunicar sin que sus paquetes atraviesen un router). Por tanto, dosnodos a los que se les haya asignado una direccion local al enlace solo pueden comunicarseentre sı si no hay routers entre ellos. Es un mecanismo parecido al de las direcciones priva-das de IPv4: se pueden repetir direcciones en distintas redes privadas. Ademas, los nodospueden asignar automaticamente este tipo de direcciones.

Unique Local Unicast (Direcciones locales unicas): Son las direcciones FC00::/7 (empie-zan por 1111 110). Son muy parecidas a las anteriores con la ventaja de que, al ser masamplia la parte variable de la direccion, es muy poco probable que dos de estas direcciones

Page 123: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 122

coincidan. Por tanto, siempre que no se salga a una red publica (Internet), la probabilidadde que dos maquinas puedan comunicarse entre sı es alta incluso aunque haya que atravesardistintos enlaces o incluso sites.

Global Unicast (Direcciones globales): Son direcciones unicas en el mundo. En teorıa, cual-quier direccion que no caiga en ninguno de los rangos de direcciones especiales, es unadireccion global. En la practica, hasta ahora solo se han asignado las direcciones 2000::/3(empiezan por 001).

En resumen los tipos existentes de direcciones son:

7.4. Organizacion de las direcciones en IPv6

IPv6 sigue la misma filosofıa que introdujo IPv4: las direcciones IP estan formadas por unaparte de red, comun a todas las interfaces que estan unidas a nivel de enlace (y por tantopueden comunicarse sin atravesar un router), y una parte de host, que combinada con la partede red identifica a cada interfaz de forma unıvoca. En IPv6, la parte de red se divide a su vezen prefijo global e identificador de subred.

Las direcciones que no empiecen por 000 (en binario) han de tener obligatoriamente 64bits de interfaz. Se aconseja que los valores del tamano del prefijo global sean n= 48 bits (si sevan a crear subredes) o n= 64 bits(si solo va a haber una red). Sin embargo, en algunos casosparticulares se utilizan prefijos globales de n¡48 bits. Por tanto, la forma de una direccion IPv6que no empiece por 000 sera:

7.5. Asignacion de direcciones en IPv6

La asignacion de direcciones puede ser:

Manual

Mediante DHCPv6 (RFC 3315)

Page 124: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 123

Por autoconfiguracion: al arrancar, cada nodo genera una direccion local al enlace o unadireccion global (segun lo especificado por la RFC 2462). En este tipo de asignacion, laparte de red de la direccion generada puede ser:

• Si se ha generado una direccion local al enlace, la parte de red sera FE80::/64.

• Para otro tipo de direcciones, la direccion de red se toma de anuncios periodicos quehace el router a toda la red. En dichos mensajes, el router anuncia tanto su direccion(para que los nodos la tomen como direccion de gateway) como el prefijo que debentener los nodos de la red.

Para explicar como se genera la parte de host, es necesario conocer las direcciones de nivelde enlace que existen en la actualidad. Las que se suelen utilizar son dos:

• Direcciones MAC: Son un estandar del IEEE (rec. 802.1). Son direcciones de 48 bits,unicas en el mundo.

• Direcciones EUI-64: Son un estandar mas moderno del IEEE. Son muy parecidas alas direcciones MAC, pero su tamano es de 64 bits en lugar de 48.

En ambos casos, los dos ultimos bits del primer octeto de la direccion son bits con unsignificado especial. El bit numero 7 es el bit global/local. Dicho bit indica si una direcciones unica en el mundo (si vale 0) o bien puede estar repetida (si vale 1). El bit de gru-po/individual se utiliza para identificar si la direccion destino es una direccion individual(si vale 0) o una direccion de grupo (si vale 1).

Una vez conocemos los tipos de direcciones existentes, veamos como se usan al generar unadireccion IPv6 por autoconfiguracion:

• Si tenemos una direccion EUI-64: Se utiliza el llamado formato modificado UEI-64. Para generar la parte de host, usamos la direccion EUI-64 que tenemos pero conel bit global/local invertido (por eso se llama modificado).

• Si tenemos una direccion MAC: Ampliamos la direccion a 64 bits introduciendoen el centro de la direccion MAC dos octetos: FF FE. Ademas, tambieninvertimos el bit global/local.

Page 125: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 124

No es evidente a primera vista la necesidad de invertir el bit global/local. En principio, unadireccion de enlace que tenga un ambito local se podrıa generar a mano. Lo mas probablees que la persona que la escriba ponga por comodidad una serie de bits a 0 y al final unvalor (es decir, empezarıa asignando ::1, despues ::2...). Pero si lo hace ası, como el bitglobal/local es de los primeros, lo estarıa poniendo a cero. Eso significarıa que la direccionque se esta escribiendo es unica en el mundo, lo cual no es verdad ya que nos la estamosinventando. Para evitar esta situacion, se decidio que en este tipo de direcciones el bitglobal/local a 0 significara que la direccion es local, y a 1 que la direccion es unica en elmundo (justo lo contrario de lo que definio el IEEE). Por tanto, es necesario invertir el bitglobal/local de las direcciones del IEEE para darle el significado que nosotros queremos.

7.6. Formato de datagramas IPv6

El formato que siguen los datagramas IPv6 es el siguiente:

Version: indica la version del protocolo (en este caso, la 6).

Clase de trafico: marca los datagramas segun el tipo de trafico que transportan (sensiblea retardos, de baja prioridad, etc.)

Etiqueta de flujo (Flow Label): Se asigna la misma etiqueta a paquetes que esten relacio-nados entre sı (por ejemplo, a aquellos que pertenezcan a una misma conexion).

Longitud de la carga (o payload): mide lo que hay despues de los 40 octetos de cabecera.Se mide en octetos.

Next Header (siguiente cabecera): En IPv6, los parametros opcionales se incluyen comoextensiones de la cabecera dentro de la carga. Next Header indica de que tipo es la primeracabecera que hay en la carga. Algunos valores son:

• 6 - TCP

Page 126: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 125

• 17 - UDP

• 58 - ICMPv6

• 0 - Hop-by-hop options

• 60 - Destination options

Lımite de saltos (Hop Limit): equivale al TTL de IPv4. Define el numero maximo de routersque puede atravesar el paquete antes de ser descartado.

Direccion origen y destino: compuestas por 16 octetos cada una.

7.7. Cabeceras de opciones

Cabecera de opciones salto a salto (Hop By Hop Options): Esta cabecera la lee e interpretantodos los routers que atraviese el paquete.

Las opciones se codifican mediante TLV (Tipo, Longitud, Valor). En este tipo de codifica-cion, cada opcion estara compuesta de un campo tipo de tamano fijo, un campo longitudde tamano fijo y un campo valor de tamano indicado por el campo longitud. El tipo de laopcion indica varias cosas:

• Si el router puede modificar la opcion.

• Si el router no entiende la opcion, indica si tiene que descartar el paquete o no.

• Si el router descarta el paquete, si debe avisar al origen con un mensaje ICMP o no.

La cabecera Hop-by-Hop tiene que tener un tamano multiplo de 4 octetos. En caso denecesidad, se utiliza relleno.

Cabecera de enrutamiento (Routing): permite que el nodo origen del mensaje especifiqueuna serie de routers por los cuales el mensaje debe pasar obligatoriamente. Es parecido alsource routing de IPv4. Su forma es:

Page 127: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 126

• Segments left (segmentos restantes): Indica cuantas direcciones de las contenidas enel paquete quedan por atravesar. Inicialmente sera N.

• Destinos: son las direcciones IP de los routers que debera atravesar el paquete.

El funcionamiento de esta cabecera es el siguiente: inicialmente, el paquete se crea poniendocomo destino en la cabecera IP la IP del primer router por el que debe pasarel mensaje (en condiciones normales, pondrıamos la direccion del destino final, pero estecaso es especial). El destino 1 de la cabecera de routing sera el segundo router por el quedebemos pasar, el destino 2 el tercer router... ası hasta llegar al destino N de la cabecerade routing, que sera la direccion IP del destino final del mensaje. Un ejemplo deluso de esta cabecera es el siguiente:

Vemos como el paquete del ordenador con IP a router (IP ) como direccion destino en lacabecera IP. Cuando el paquete llega al router b b, este lo interpreta y, como el numero desegmentos restantes es 3, cuenta 3 IPs desde el final de la cabecera de routing y copia laIP que encuenta (IP ) en el campo destino de c la cabecera IP. Al mismo tiempo, pone laque estaba en el destino IP donde estaba IP . c Esto se hace ası para que el destino finalsepa por que routers ha pasado la informacion. Este procedimiento se repite hasta que elnumero de segmentos restantes es 0, en cuyo caso la maquina que interpreta el paquetesabe que es para ella.

Algo a resaltar es que, aunque estemos especificando una serie de routers por losque el paquete debe pasar obligatoriamente, entre ellos puede pasar por routersque no hayamos especificado.

Cabecera de opciones de destino (Destination Options): Es una cabecera extremo a extremo(solo la ve el nodo destino, los routers intermedios no pueden interpretarla). Existe un casoespecial, en que se combina con la cabecera de enrutamiento:

Si se envıa un mensaje con estas caracterısticas, los nodos de la lista de enrutamiento veranla cabecera de opciones de destino 1 (ya que el paquete marca su IP como destino en lacabecera IP). Sin embargo, la cabecera de opciones de destino 2 solo la vera el nodo final.

Page 128: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 127

7.8. Protocolo ICMPv6

Es una evolucion del protocolo ICMP que se usaba en IPv4. En este protocolo se definenuna gran cantidad de mensajes, aunque nosotros solo estudiaremos los mensajes que se usan parael establecimiento de vecindades. Su codigo de cabecera (el que tiene que aparecer en el campoNext Header de la cabecera anterior) es 58. La cabecera ICMPv6 tiene la siguiente forma:

donde los campos tienen el siguiente significado:

Tipo (8 bits): indica el tipo de mensaje. Si es un mensaje de error se representa con el bitmas significativo a 0; un mensaje de informacion se representa con el bit mas significativoa 1.

Codigo (8 bits): sirve para distinguir los diversos mensajes de cada tipo. Si para un ciertotipo solo hay un mensaje, vale 0.

Checksum (16 bits): para comprobar la integridad del mensaje.

Cuerpo del mensaje: su estructura varıa segun el mensaje que estemos transmitiendo.

En establecimiento de vecindades se usan cuatro mensajes ICMPv6 distintos:

RS (Router Solicitation, solicitud a router): Este mensaje lo envıan los nodos a losrouters cuando necesitan conocer algun parametro de estos. Se envıan con la direccionmulticast de routers como destino.

RA (Router Advertisement, anuncio de router): los routers envıan estos mensajesperiodicamente o como respuesta a un RS. SIrve para anunciar varios parametros: el ta-mano maximo de paquete que soportan (MTU), si son routers de salida de la red o no...Entre estos parametros, el mas importante es el prefijo de red. Los nodos deben conocereste valor para poder autoconfigurarse. El mensaje RA se envıa periodicamente con la di-reccion destino multicast de nodos. Si se envıa como respuesta a una peticion RS, se hacecon direccion destino multicast solicitada.

NS (Neighbor Solicitation, solicitud a vecino): Se utiliza este tipo de mensajes contres fines:

Page 129: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 128

• Resolucion de direcciones: en lugar de utilizar el protocolo ARP, para hallar la direc-cion de enlace asociada a una direccion IP se envıa un mensaje NS a la direccionmulticast solicitada correspondiente a la direccion IP que se desea resolver.El nodo correspondiente recibira el mensaje y respondera con un mensaje NA,en el que indicara su direccion de nivel de enlace.

• Deteccion de direcciones duplicadas (Duplicate Address Detection): hemos visto queexisten metodos de configuracion automatica, en los que cada nodo se asigna unadireccion. Esto puede provocar una situacion en la que dos nodos se asignen la mismadireccion. Para evitarlo, antes de comenzar a funcionar cada nodo envıa unmensaje NS para comprobar que su direccion sea unica. En el mensaje NSintenta resolver su propia IP: si nadie responde, significa que nadie tiene esa IP ypuede asignarsela sin problemas. Si alguien responde, tendra que cambiar su IP yvolver a comprobarla. Por seguridad, los mensajes se retransmiten varias veces.

• Sondeo (Probe): comprueba que un nodo este accesible. Esto es util, por ejemplo, siun nodo ha estado comunicandose con otro durante un tiempo, y esa comunicacion haterminado. Para volver a comunicarse con el mismo nodo, primero debera comprobarsi aun sigue funcionando con la misma direccion. Para ello, enviarıa un mensaje probeal nodo.

NA (Neighbor Advertisement, anuncio de vecino): Se envıa como respuesta a unNS. Tambien se envıa en caso de que un nodo cambie su direccion de enlace, para anunciarel cambio.

REDIR (Redireccion): Al igual que en ISO, se envıa un mensaje de redireccion paraindicarle a un nodo la direccion correcta de nivel de red a la que tiene que asociar una IP.Como novedad, ademas de direccion IP se puede incluir en el mensaje la direccion de nivelde enlace del destino, con lo que el nodo se ahorra una resolucion de direcciones.

7.9. IPv6 Movil

IPv6 movil, definido en las RFC 3775 y 3776, es un protocolo que permite que un nodo(llamado MN, Mobile Node o nodo movil) se traslade fısicamente pero siga recibiendo paquetes

Page 130: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 129

dirigidos a el, independientemente de la red a la que este conectado. Comencemos explicando laterminologıa que vamos a usar:

El nodo movil es la maquina que se va a desplazar a traves de la red. Inicialmente, per-teneeera a la red del home agent, que es su router por defecto. A lo largo del ejemplo, noscomunicaremos con otra maquina, perteneciente a otra red, a la que llamaremos CN (Corres-pondent Node, nodo correspondiente).

Cuando el nodo movil esta conectado en su red origen, tiene asignada una direccion a laque llamaremos HA (Home Address). En este estado, el nodo se comporta como cualquier nodonormal de la red: un mensaje dirigido al CN llevara como direccion destino la del CN, comodireccion origen la HA y se enviara al home agent para que lo enrute.

Si el nodo movil se conecta a otra red, tendra que cambiar su direccion a una pertenecientea la nueva red. A esta nueva direccion la llamaremos CoA (Care-of Address, literalmentedireccion de cuidado). Para que los mensajes dirigidos a la HA sigan llegando al nodo movil, loque hace el nodo movil es establecer un tunel con su home agent. Para ello, envıa un mensajeBU (Binding Update, actualizacion de enlace) a su home agent, en el que indica su CoA.El home agent responde con un mensaje BA (Binding Acknowledge, asentimiento deenlace).

El tunel que hemos creado consiste en que el home agent actua de repetidor. Cuando recibeun mensaje IPv6 con direccion destino la direccion HA, encapsula dicho mensaje dentro de otromensaje IPv6 con direccion destino CoA y lo envıa. Con eso consigue que el traslado del nodomovil sea transparente a la red. Para optimizar la comunicacion, existe la posibilidad de que elnodo movil envıe al nodo correspondiente un BU. Si el nodo correspondiente esta configuradopara entender los BU, se puede establecer comunicacion entre ellos. Se utilizan cabeceras deenrutamiento para .enganar.a TCP, de modo que vea la direccion CoA como HA.

7.10. Introduccion a IPsec

IPsec, definido en las RFC 4301-4309, 2403-2405 y 2410-2412, es un mecanismo que sirvepara asegurar la confidencialidad y la integridad a traves de una red IP. Encripta los mensajesy permite averiguar si han sido modificados a lo largo del trayecto.

IPsec implementa:

Page 131: Redes de Telecomunicaci on - Universidad de Sevillatrajano.us.es/personales/jternero/RO/Apuntes/redestelecomunicacion.pdfRedes basadas en conmutaci on de circuitos: se basan en establecer

Redes de Telecomunicacion 130

Protocolos de seguridad:

• AH (Authentication Header, cabecera de autenticacion): sirve para verificar la inte-gridad.

• ESP (Encapsulating Security Payload, encapsulamiento de la carga de seguridad):sirve para confidencialidad y para integridad.

Protocolos de gestion de claves (Key Management):

• IKEv2 (Internet Key Exchange, intercambio de claves por Internet)

Algoritmos a usar, de encriptacion y de hash.

7.11. Introduccion a las VPN

Las VPN (Virtual Private Net, red privada virtual) son redes privadas virtuales que secrean sobre una infraestructura publica. Es comun usarlas para conectar distintas sucursales deuna empresa. Es una alternativa barata al alquiler de enlaces punto a punto. Como problemas,presenta la seguridad (puede haber mensajes importantes viajando a travnes de una red nosegura) y el consumo de ancho de banda.