Internet routing: RIP y OSPF

Anuncio
Práctica
8
Redes de Computadores
RIP y OSPF
Protocolos de enrutado
Objetivos
El objetivo de esta práctica es configurar y analizar las prestaciones de los protocolos de
enrutado RIP (Routing Information Protocol) y OSPF (Open Shortest Path First)
Descripción
Un router de una red tiene que ser capaz de determinar cuál de sus puertos de salida es
el más apropiado para enviar un paquete en función de la dirección de destino. El router
toma esta decisión a partir de una tabla de reenvíos. El problema fundamental del
enrutado es: ¿Cómo rellenan los routers sus tablas de reenvío?
Los algoritmos de enrutado se encargan de construir las tablas de enrutado, y por lo
tando las de reenvío. El problema básico está en encontrar el camino de menor coste
entre dos nodos cualesquiera, donde el coste de un camino es igual a la suma de los
costes de todos los tramos que lo componen. El enrutado se consigue en la mayoría de
las redes ejecutando una serie de protocolos entre los nodos. Estos protocolos forman un
algoritmo distribuido capaz de resolver el problema de encontrar el camino de menor
coste en presencia de averías de nodos y enlaces y cambios en los costes de los
diferentes tramos.
Una de las clases principales de algoritmos de enrutado es el algoritmo de vector de
distancia. Cada nodo construye un vector que contiene las distancias (costes) a todos los
otros nodos y distribuye ese vector a sus vecinos más próximos. El protocolo RIP es el
ejemplo canónico de un protocolo de enrutado construido en base a este algoritmo. Los
routers que ejecutan RIP envían sus anuncios regularmente (por ejemplo, cada 30
segundos). Un router también envía un mensaje de actualización cada vez que una
actualización desde otro nodo le haga cambiar su tabla de redireccionamiento.
La segunda clase más importante de algoritmos son los basados en el estado de enlace.
La idea de los algoritmos de estado de enlace es muy sencilla: Todos los nodos saben
cómo alcanzar a los vecinos que tienen conectados directamente, y si nos aseguramos
que todo este conocimiento se disemina a todos los nodos, entonces todos los nodos
tendrán suficiente conocimiento como para construir un mapa completo de la red. Una
vez construido el mapa completo, se puede decidir el camino mejor para cada destino.
El cálculo de las rutas se hace según un algoritmo bastante conocido en teoría de grafos,
el algoritmo del camino más corto de Dijkstra. En OSPF se introduce otra capa de
jerarquía en el enrutado permitiendo a un dominio que cree particiones. Esto quiere
decir que un router dentro de un dominio no necesita saber cómo alcanzar a todos los
nodos de ese dominio, puede ser suficiente con saber cómo llegar a la zona correcta. De
esta manera, se puede reducir la cantidad de información que se tiene que transmitir y
almacenar en cada nodo. Además, OSPF permite que a rutas múltiples a un mismo
destino se les asigne un mismo coste, de tal manera que el tráfico se reparta
uniformemente entre ellas.
En esta práctica se van a ver los protocolos RIP y OSPF. Se analizarán las tablas de
enrutado que se generan y se observarán los efectos de averías en los enlaces y los
mecanismos de reparto de la carga.
RIP-Pasos
Paso 1: Crear un proyecto nuevo
1. Inicia OPNET IT Guru Academic Edition Î Elige New del menu File.
2. Elige Project y pincha OK Î Llama al proyecto <tus iniciales>_RIP, y el
escenario Sin_averia Î pincha OK.
3. En la ventana “Startup Wizard”: Initial Topology, asegurate que eliges Create
Empty Scenario Î Pincha Next Î Elige Campus en la lista de tamaño de red
Î Pincha Next tres veces Î Pincha OK.
Paso 2: Crear y configurar la red
Inicializar la red:
1. El diálogo Object Palette debería estar ahora sobre el espacio de trabajo del
proyecto. Si no, ábrelo pulsando el botón
. Asegúrate que en el menú
desplegable está seleccionado internet_toolbox.
2. Coloca sobre el espacio de trabajo los siguientes objetos: un router
ethernet4_slip8_gtwy y dos objetos 100BaseT_LAN.
a. Para añadir un objeto de una paleta, pincha en su icono en la paleta Î mueve el
ratón sobre el espacio de trabajo Î vuelve a pinchar con el ratón para colocar el
objeto Î pincha con el botón derecho para acabar de colocar objetos.
3. Usa los enlaces bidireccionales 100BaseT para conectar los objetos que acabas de
añadir igual que en la figura siguiente. Además renombra los objetos (botón derecho
del ratón sobre el nodo Î Set Name).
4. Cierra el diálogo Object Palette.
5. Salva el proyecto.
Configura el router:
1. Pincha con el botón derecho del ratón en Router1 Î Edit Attributes Î despliega
la jerarquía IP Routing Parameters y habilita lo siguiente: Routing Table Export
= Once at End of Simulation y asegúrate que Status = enabled. Esto le dirá al
router que exporte su tabla de enrutado al final de la simulación al registro de
simulación.
2. Pincha en OK y salva el proyecto.
Añade el resto de redes:
1. Selecciona simultáneamente (con mayúsculas y el botón izquierdo) todos los objetos
que tienes en el espacio de trabajo (un router, dos redes y dos enlaces). También
puedes arrastrar una caja alrededor de ellos.
2. Aprieta Ctrl+C para copiar los objetos seleccionados y Crtl+V para pegarlos.
3. Repite el paso 2 tres veces para tener tres copias y renómbralos como en la figura.
4. Conecta los routers mediante enlaces PPP_DS3.
Paso 3: Elegir estadísticas
Para comprobar las prestaciones del protocolo RIP, vamos a elegir las siguientes
estadísticas:
1. Pincha con el botón derecho en cualquier parte del espacio de trabajo del proyecto y
elige Choose Individual Statistics del menú desplegable
2. En el cuadro de diálogo Choose Results, marca las siguientes estadísticas:
a. Global Statistics Î RIP Î Traffic Sent (bts/sec).
b. Global Statistics Î RIP Î Traffic Received (bits/sec).
c. Nodes Statistics Î Route Table Î Total Number of Updates.
3. Pincha en OK y salva el proyecto.
Paso 4: Configura la simulación
Ahora vamos a configurar algunos parámetros de la simulación:
1. Pincha en
para que aparezca la ventana Configure Simulation.
2. Escribe 10,0 minutos como tiempo de simulación. (cuidado con la coma)
3. Pincha en la pestaña Global Attributes y cambia los siguientes atributos:
a. IP Dynamic Routing Protocol = RIP. Esto hace que RIP sea el protocolo de
enrutado de todos los routers de la red.
b. IP Interface Addressing Mode = Auto Addressed/Export.
c. RIP Sim Efficiency = Disabled. Si se habilita este atributo, RIP parará al final
del primer “RIP Stop Time”. Pero nosotros queremos que el protocolo siga
actualizando la tabla de enrutado por si hubiera algún cambio en la red. (como
veremos más adelante)
4. Pincha en OK y salva el proyecto.
Paso 5: Duplica el escenario
En la red que acabamos de crear, los routers construirán sus propias tablas de enrutado y
no necesitarán actualizarlas, ya que no hemos simulado la avería de ningún enlace. En
este escenario vamos a simular averías para poder comparar el comportamiento de los
routers en los dos casos.
1. Selecciona Duplicate Scenario en el menú Scenarios y llámalo Avería Î Pincha
OK.
2. Abre la paleta Object Palette pulsando
. Selecciona la paleta Utilities en el
menú desplegable.
3. Coloca un objeto Failure Recovery en el espacio de trabajo y llámalo Avería, como
se muestra en la figura. Î Cierra el diálogo Object Palette.
4. Pincha con el botón derecho en el objeto Avería Î Edit Attributes Î Expande la
jerarquía Link Failure/Recovery Specification Î Pon rows a 1 Î Pon los
atributos de la fila que acaba de aparecer (row 0) como se ve en la figura. Esto hará
que el enlace entre los nodos 2 y 3 se averíe 200 segundos tras comenzar la
simulación.
5. Pincha en OK y salva el proyecto.
Paso 6: Ejecutar la simulación
Para ejecutar la simulación de los dos escenarios:
1. Ve al menú Scenarios Î Elige Manage Scenarios.
2. Cambia los valores de la columna Results a <collect> o <recollect> para los dos
escenarios.
3. Pincha OK para ejecutar las dos simulaciones. Dependiendo de la velocidad del
ordenador este paso puede llevar unos segundos.
4. Cuando las dos simulaciones hayan acabado, una por escenario, pincha Close
5. Salva el proyecto.
Paso 7: Ver los resultados
Compara el número de actualozaciones:
1. Selecciona Compare Results en el menú Results.
2. Cambia el menú desplegable de la parte inferior derecha del diálogo Compare
Results a Stacked statistics como se muestra en la figura.
3. Selecciona la estadística Total Number of Updates para el router 2 y pincha en
Show.
4. Deberían aparecer dos gráficos, uno por escenario. Pincha con el botón derecho en
cada gráfico y selecciona Draw Style Î Bar.
5. Los gráficos que obtengas se deberían parecer a los siguientes. (puedes hacer zoom
sobre los gráficos pinchando y arrastrando una caja sobre la zona que te interese
ver).
Obtén las direcciones IP de los interfaces:
Antes de comprobar los contenidos de las tablas de enrutado, debemos determinar las
direcciones IP de todos los interfaces de la red. Hay que recordar que estas direcciones
se asignan automáticamente en la simulación, y que hemos programado el atributo IP
Interface Addressing Mode para que exporte esta información a un archivo.
1. Del menú File elige Model Files Î Refresh Model Directories. Esto hace que
OPNET IT Guru busque en los directorios de modelos y actualice su lista de
archivos.
2. Del menú File elige Open Î Generic Data File Î <Tus iniciales>_RIP_sin
averia-ip_addresses Î Pincha en OK.
3. A continuación puedes ver una parte del archivo de salida. Se pueden ver las
direcciones IP asignadas a los interfaces del Router 1. Por ejemplo. El interfazde
Router1 que está conectado a red11 tiene la dirección IP 192.0.0.1 (Nota: Los
resultados pueden ser diferentes si no has colocado igual los nodos). La máscara de
subred asociada a este interfaz indica que la dirección de la subred, a la que está
conectado este interfaz es 192.0.0.0 (la AND lógica de la dirección IP y la máscara
de subred).
4. Dibuja el esquema de tu red. Sobre el esquema escribe las direcciones IP asociadas a
cada router y subred, obtenidas de la información del archivo que acabas de generar.
Compara el contenido de las tablas de enrutado:
1. Para comprobar el contenido de las tablas de enrutado del router 2 (el enlace que se
avería está entre el router 2 y el 3):
i.
Ve al menú Results Î Open Simulation Log Î expande la jerarquía
de la izquierda como se ve en la figura Î Pincha en el campo
COMMON ROUTE TABLE.
2. Repite el paso 1 para los dos escenarios. A continuación puedes ver parte del
contenido de la tabla de enrutado del router 2 para los dos escenarios:
Escenario sin_averia
Escenario averia
Cuestiones RIP
1. Obtén y analiza las gráficas que comparan el tráfico RIP de los dos escenarios.
Asegúrate que cambias el estilo de los gráficos a barras.
2. Describe y explica el efecto de la avería del enlace que conecta el router 2 al router
3 en las tablas de enrutado.
3. Crea otro escenario como un duplicado de avería. Llámalo recuperación. En este
nuevo escenario haz que el enlace averiado se recupere tras 400 segundos desde el
inicio de la simulación. Genera y analiza la gráfica que muestra el efecto de esta
recuperación en el número total de actualizaciones en la tabla de enrutado del router
2. Comprueba el contenido de la tabla del router 2 . Compara esta tabla con las
generadas en los escenarios anteriores.
OSPF-Pasos
Atención:
Para el correcto funcionamiento de esta parte de la práctica, es necesario cambiar
la configuración regional del ordenador:
InicioÆConfiguraciónÆPanel de ControlÆConfiguración regional
La configuración que se debe utilizar es: Inglés (Estados Unidos)
Paso 8: Crear un proyecto nuevo
1. Vuelve a la ventana de OPNET IT Guru Academic Edition Î Elige New del menú
File.
2. Elige Project y pincha OK Î Llama al proyecto <tus iniciales>_OSPF, y el
escenario Sin_areas Î Pincha OK.
3. En la ventana “Startup Wizard: Initial Topology”, asegúrate que eliges Create
Empty Scenario Î Pincha Next Î Elige Campus en la lista de tamaño de red Î
Pincha Next tres veces Î Pincha OK.
Paso 9: Crear y configurar la red
Inicializar la red:
1. El diálogo Object Palette debería estar ahora sobre el espacio de trabajo del
proyecto. Si no, ábrelo pulsando el botón
. Asegúrate que en el menú
desplegable está seleccionado routers.
a. Coloca en el espacio de trabajo ocho routers del tipo slip8_gtwy.
2. Cambia la configuración de la paleta para que contenga la internet_toolbox.Usa
enlaces bidireccionales del tipo PPP_DS3 para conectar los routers. Cambia los
nombres de los routers como en la figura siguiente.
3. Cierra la Object Palette y salva el proyecto.
Configura los costes de los enlaces:
1. Necesitamos asignar los costes de los enlaces como en el grafo siguiente:
2. Al igual que muchos routers comerciales, los modelos de routers de OPNET aceptan
un parámetro llamado reference bandwith para calcular el coste real, como sigue:
Coste=(Reference bandwith)/(Ancho de banda del enlace)
Donde el valor por defecto de Reference bandwith es 1.000.000Kbps.
3. Por ejemplo, para asignar un coste de 5 a un enlace, se le asigna un ancho de banda
de 200.000 Kbps. Hay que tener en cuenta que ese no es el ancho de banda real del
enlace en el sentido de velocidad de transmisión, sino simplemente un parámetro
que se utiliza para calcular costes.
4. Para asignar los costes a los enlaces de nuestra red, haz lo siguiente:
i.
Selecciona todos los enlaces de tu red que tienen coste 5 en la figura anterior
pinchándolos con la tecla mayúsculas apretada.
ii.
Selecciona el menú Protocols Î IP Î Routing Î Configure Interface
Metric Information.
iii.
Escribe 200000 en el campo Bandwith (Kbps) Î Marca el botón
Interfaces across selected links Î pincha OK.
5. Repite el paso 4 para todos los enlaces con un coste 10, escribiendo 100000 Kbps en
el campo Bandwith (Kbps).
6. Repite el paso 4 para todos los enlaces con un coste 20, escribiendo 50000 Kbps en
el campo Bandwith (Kbps).
7. Salva el proyecto
Configura las demandas de tráfico:
1. Selecciona los routers Ay C.
i. Selecciona el menú Protocolos Î IP Î Demands Î Create Traffic Demands
Î marca el botón From Router A Î Mantén el color azul Î Pincha Create.
Ahora deberías ver una línea azul que representa el tráfico entre los routers
A y C.
2. Selecciona los routers B y H.
i.
Selecciona el menú Protocolos Î IP Î Demands Î Create Traffic
Demands Î marca el botón From Router B Î Cambia el color a rojo Î
Pincha OK Î Pincha Create.
Deberías estar viendo las líneas de las demandas de tráfico como sigue:
3. Para ocultar estas líneas: Selecciona el menú View Î selecciona Demand Objects
Î Selecciona Hide All.
4. Salva el proyecto.
Configura e protocolo de enrutado y las direcciones:
1. Selecciona el menú Protocols Î IP Î Routing Î Configure Routing Protocols.
2. Marca la casilla OSPF Î Quita la marca de la casilla RIP Î Quita la marca de la
casilla Visualize Routing Domains.
3. Pincha OK.
4. Selecciona RouterA y RouterB solo Î Selecciona el menú Protocols Î IP Î
Routing Î Selecciona Export Routing Table for Selected Routers Î Pincha
OK en el diálogo Status Confirm.
5. Selecciona el menú Protocols Î IP Î Addressing Î Selecciona Auto-Assign IP
Addresses.
6. Salva el proyecto.
Paso 10: Configura la simulación
Ahora vamos a configurar algunos de los parámetros de la simulación:
1. Pincha en
para que aparezca la ventana Configure Simulation.
2. Escribe 10.0 minutos como tiempo de simulación. (Atención, esta vez es un punto)
3. Pincha en OK y salva el proyecto.
Paso 11: Duplica el escenario
En la red que acabamos de crear, todos los routers están en el mismo nivel jerárquico
(Una sola área). Además, tampoco hemos impuesto un equilibrado de la carga en
ninguna ruta. Ahora vamos a crear dos nuevos escenarios. El primero definirá dos
nuevas áreas además del área troncal (backbone). El segundo se configurará para
equilibrar la carga para el tráfico entre los routers B y H .
El escenario con áreas:
1. Selecciona Duplicate Scenario del menú Scenarios y dale el nombre areas Î
Pincha en OK.
2. Área 0.0.0.1:
i.
Selecciona los tres enlaces que conectan los routers A, B y C pinchándolos
mientras aprietas la tecla mayúsculas Î Selecciona el menú Protocols Î
OSPF Î Configure Areas Î Asigna el valor 0.0.0.1 al area identifier Î
Pincha OK.
ii.
Pincha con el botón derecho en RouterC Î Edit Attributes Î Expande la
jerarquía OSPF Parameters Î Expande la jerarquía Loopback Interfaces
Î Expande la jerarquía row0 Î Asigna 0.0.0.1 al valor del atributo Area
ID Î Pincha OK.
3. Area 0.0.0.2
i.
Pincha en cualquier parte del espacio de trabajo para deseleccionar los
enlaces del paso anterior y repite el paso 2.i. para los enlaces que conectan
los routers F, G y H. Asígnales el valor 0.0.0.2 en el campo Area Identifier.
4. Para visualizar las áreas que acabamos de crear, selecciona el menú Protocols Î
OSPF Î Visualize areas Î Pincha en OK. La red debería quedar como la que se
ve en la figura siguiente (podrías obtener colores diferentes).
Nota:
-El área que no has configurado es la troncal y su identificador es 0.0.0.0
El escenario equilibrado:
1. En el menú Scenarios, Switch to Scenario Î selecciona sin_areas.
2. Selecciona Duplicate Scenario del menú Scenarios y dale el nombre
equilibrado Î Pincha en OK.
3. En el nuevo escenario, selecciona los routers B y H.
4. Selecciona el menú Protocols Î IP Î Routing Î Configure Load
Balancing Options Î Asegúrate que la opción es Packet-Based y el botón
Selected Routers está activo, como se ve en la figura Î Pincha OK.
5. Salva el proyecto.
Paso 12: Ejecutar la simulación
Para ejecutar la simulación para los tres escenarios a la vez:
1. Ve al menú Scenarios Î Selecciona Manage Scenarios.
2. Pincha en la fila de cada escenario y en el botón Collect Results. Esto cambiará los
valores de la columna Results a <collect>. Mira la figura siguiente:
3. Al pinchar OK se ejecutarán los tres escenarios.
4. Cuando hayan acabado las tres simulaciones pincha Close y salva el proyecto.
Paso 13: Ver los resultados
El escenario Sin_Areas:
1. Vuelve al escenario Sin_Areas.
2. Para ver la ruta del tráfico entre el RouterA y el RouterC: Selecciona el menú
Protocols Î IP Î Demands Î Display Routes for Cofigured Demands Î
Expande las jerarquías como se muestra en la figura y selecciona RouterA Î
RouterC Î Ve a la columna Display y elige Yes Î Pincha en Close.
3. La ruta resultante debería aparecer como en la imagen siguiente:
Si no aparece la ruta, comprueba que la configuración regional está en Inglés (Estados
Unidos) y vuelve a lanzar la simulación.
4. Repite el paso 2 para mostrar la ruta de la demanda de tráfico entre el RouterB y el
RouterH. En la siguiente imagen se puede ver esta ruta, aunque dependiendo del
orden en el que hayas creado la red también se puede haber elegido la otra ruta
posible con el mismo peso: RouterBÆRouterCÆRouterEÆRouterGÆRouterH
El escenario Areas:
1. Cambia al escenario Areas.
2. Muestra la ruta de la demanda entre el RouterA y el RouterC. La ruta es la
siguiente:
3. Salva el proyecto
El escenario Equilibrado:
1. Cambia al escenario Equilibrado.
2. Muestra la ruta de la demanda entre el RouterB y el RouterH. La ruta es la
siguiente:
3. Salva el proyecto.
Cuestiones
1. Explica por qué en los escenarios Areas y Equilibrado se obtienen diferentes rutas
a las que se observan en Sin_Areas.
2. Usando el registro de simulación (Simulation Log), examina la tabla de enrutado que
se ha generado en el RouterA para cada uno de los escenarios. Explica los valores
asignados en la columna Metric de cada ruta.
Pistas:
-
-
Mira la sección “Ver los resultados” de la parte de la práctica dedicada al
protocolo RIP. Necesitarás asignar al atributo global IP Interface
Addressing Mode el valor Auto Addressed/Export y volver a ejecutar la
simulación.
Para determinar la información de las direcciones IP para todos los
interfaces, deberás abrir el archivo del tipo Generic Data File que contiene
las direcciones IP y está asociado con el escenario correspondiente.
3. OPNET permite examinar la base de datos del estado de los enlaces que usa cada
router para construir el grafo dirigido de la red. Examina en esta base de datos la
información del RouterA en el escenario Sin_Areas. Comprueba como el RouterA
utiliza esta base de datos para crear un mapa de la topología de la red y dibujarlo.
Pistas:
-
-
-
Para exportar la base de datos de estados de enlaces, Edita los atributos del
router y asigna al parámetro Link State Database Export (En Processes) el
valor Once at End of Simulation.
Tendrás que asignar al atributo global IP Interface Addressing Mode el
valor Auto Addressed/Export. Esto te permitirá comprobar las direcciones
IP asignadas automáticamente a los interfaces de la red.
Tras volver a ejecutar la simulación, puedes comprobar la base de datos de
estados de enlaces abriendo el registro de simulación (desde el menú
Results). La base de datos está en ClassesÆOSPFÆLSDB_Export.
4. Crea otro escenario como una copia del escenario Sin_Areas. Llámalo
P4_Sin_Areas_Avería- En este escenario simula una avería del enlace que conecta
al RouterD y al RouterE. Haz que esta avería se active 100 segundos tras el
comienzo de la simulación. Vuelve a ejecutar la simulación. Comprueba cómo la
avería afecta al contenido de la base de datos de estados de enlaces y a la tabla de
enrutamiento del RouterA. (Tendrás que inhabilitar el atributo global OSPF Sim
Efficiency. Esto permitirá a OSPF actualizar la tabla de enrutamiento cuando haya
un cambio en la red)
5. Para los dos escenarios: Sin_Areas y P4_Sin_Areas_Avería, habilita la recogida de
la estadística Traffic Sent (bits/sec). Es una de las estadísticas globales en OSPF.
Vuelve a ejecutar las simulaciones y obtén la gráfica que compara los resultados en
los dos escenarios. Comenta el resultado.
Descargar