• No se han encontrado resultados

Estudio de la eficiencia del protocolo AODV sobre redes MANET usando el simulador NS3

N/A
N/A
Protected

Academic year: 2020

Share "Estudio de la eficiencia del protocolo AODV sobre redes MANET usando el simulador NS3"

Copied!
107
0
0

Texto completo

(1)ESCUELA POLITÉCNICA NACIONAL. FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA. ESTUDIO DE LA EFICIENCIA DEL PROTOCOLO AODV SOBRE REDES MANET USANDO EL SIMULADOR NS3. TRABAJO DE TITULACIÓN PREVIO A LA OBTENCIÓN DEL TÍTULO DE INGENIERO EN ELECTRÓNICA Y TELECOMUNICACIONES. FERNANDO JAVIER HERRERA NARVÁEZ [email protected] JONATHAN ALEXANDER TOSCANO NARANJO [email protected]. DIRECTOR: DR. LUIS FELIPE URQUIZA AGUIAR [email protected] CODIRECTOR: MSC. XAVIER ALEXANDER CALDERÓN HINOJOSA [email protected]. Quito, septiembre 2018.

(2) AVAL Certificamos que el presente trabajo fue desarrollado por Fernando Javier Herrera Narváez y Jonathan Alexander Toscano Naranjo, bajo nuestra supervisión.. Dr. Luis Felipe Urquiza Aguiar DIRECTOR DEL TRABAJO DE TITULACIÓN. MSc. Xavier Alexander Calderón Hinojosa CODIRECTOR DEL TRABAJO DE TITULACIÓN. I.

(3) DECLARACIÓN DE AUTORÍA Nosotros, Fernando Javier Herrera Narváez y Jonathan Alexander Toscano Naranjo, declaramos bajo juramento que el trabajo aquí descrito es de nuestra autoría; que no ha sido previamente presentado para ningún grado o calificación profesional; y, que hemos consultado las referencias bibliográficas que se incluyen en este documento.. A través de la presente declaración cedemos nuestros derechos de propiedad intelectual correspondientes a este trabajo, a la Escuela Politécnica Nacional, según lo establecido por la Ley de Propiedad Intelectual, por su Reglamento y por la normatividad institucional vigente.. FERNANDO JAVIER HERRERA N.. JONATHAN ALEXANDER TOSCANO N.. II.

(4) DEDICATORIA A mis padres, por el apoyo incondicional. A mis hermanos, por los consejos y las fuerzas que me brindan para conseguir las metas que me he propuesto. Sin ustedes no hubiese sido posible culminar este trabajo.. Fernando Javier Herrera Narváez. III.

(5) AGRADECIMIENTO A Dios, por darme la sabiduría para llevar a cabo con éxito este proyecto de titulación.. A mis padres, Carlos y Yolanda, por su apoyo permanente, esfuerzo y amor desinteresado. Esto es de ustedes, los amo.. A mis hermanos, que siempre me han acompañado en mi vida estudiantil con sus consejos, que me han alentado a continuar cuando se han presentado situaciones difíciles.. A Ma. Fernanda por su paciencia y amor durante esta etapa de mi vida. De ella, mi mayor motivación, Francisco. Los amo.. Al Dr. Luis Felipe Urquiza, por la paciencia y apertura para resolver las inquietudes presentadas durante el desarrollo de este trabajo de titulación.. A la Escuela Politécnica Nacional y a sus docentes que me han compartido sus conocimientos y experiencias.. A mis compañeros, que permitieron llevar una vida académica en armonía entre los estudios y las diferentes experiencias complementarias de la universidad.. Fernando Javier Herrera Narváez. IV.

(6) ÍNDICE DE CONTENIDO. AVAL ................................................................................................................................. I DECLARACIÓN DE AUTORÍA ......................................................................................... II DEDICATORIA .................................................................................................................III AGRADECIMIENTO ........................................................................................................ IV ÍNDICE DE CONTENIDO ................................................................................................. V ÍNDICE DE FIGURAS .................................................................................................... VIII ÍNDICE DE TABLAS ......................................................................................................... X RESUMEN ....................................................................................................................... XI ABSTRACT .................................................................................................................... XII 1.. 2.. INTRODUCCIÓN ....................................................................................................... 1. 1.1. Objetivos ................................................................................................... 2. 1.2. Alcance ..................................................................................................... 3. 1.3. Marco Teórico ........................................................................................... 4. 1.3.1. Redes Móviles Ad-hoc (MANETs) ............................................................... 4. 1.3.2. Características de las MANETs ................................................................... 6. 1.3.3. Aplicaciones de las MANETs ....................................................................... 7. 1.3.4. Desafíos de las MANETs ............................................................................. 8. 1.3.5. Protocolos de enrutamiento ........................................................................10. 1.3.6. AODV (Ad-Hoc On-Demand Distance Vector) ............................................11. METODOLOGÍA .......................................................................................................25. 2.1. Estudio de NS-3 ...................................................................................... 25. 2.1.1. Introducción a NS-3 ....................................................................................25. 2.1.2. Generalidades de NS-3 ..............................................................................26. V.

(7) 2.1.3. Características de NS-3 ..............................................................................27. 2.1.4. Estructura de NS-3 .....................................................................................28. 2.2. 2.2.1. Módulos de inclusión ..................................................................................29. 2.2.2. Definición de variables ................................................................................34. 2.2.3. Generación aleatoria de experimentos .......................................................36. 2.2.4. Definición de movilidad en la red ................................................................36. 2.2.5. Creación de dispositivos de red ..................................................................37. 2.2.6. Configuración de los parámetros de AODV ................................................38. 2.2.7. Instalación de aplicaciones .........................................................................39. 2.2.8. Generación de archivos de análisis ............................................................41. 2.2.9. Generación de estadísticas ........................................................................42. 2.3. Parámetros de AODV.............................................................................. 43. 2.3.1. Active Route Timeout .................................................................................44. 2.3.2. Allowed Hello Loss .....................................................................................44. 2.3.3. Hello Interval...............................................................................................45. 2.3.4. Net Diameter ..............................................................................................45. 2.3.5. RREQ Retries .............................................................................................45. 2.4. Escenarios de pruebas............................................................................ 46. 2.4.1. Análisis de configuración por defecto .........................................................46. 2.4.2. Análisis de variación de los parámetros ......................................................46. 2.4.3. Análisis de variaciones combinadas ...........................................................47. 2.5. Métricas por evaluarse ............................................................................ 47. 2.5.1. Throughput .................................................................................................47. 2.5.2. Tasa de entrega de paquetes .....................................................................47. 2.5.3. Retardo promedio extremo a extremo.........................................................48. 2.6 3.. Estructura del código de simulación ........................................................ 29. Descripción del escenario de pruebas .................................................... 48. RESULTADOS Y DISCUSIÓN .................................................................................50. VI.

(8) 3.1. Análisis de configuración por defecto ...................................................... 51. 3.2. Análisis de variación de los parámetros .................................................. 52. 3.2.1. Variación Active Route Timeout ..................................................................53. 3.2.2. Variación Allowed Hello Loss......................................................................56. 3.2.3. Variación Hello Interval ...............................................................................59. 3.2.4. Variación Net Diameter...............................................................................62. 3.2.5. Variación RREQ Retries .............................................................................64. 3.3. Análisis de variaciones combinadas........................................................ 68. 3.3.1. ND al 50% del total de nodos y ART igual a 2 ............................................69. 3.3.2. ND al 40% del total de nodos y ART igual a 2 ............................................71. 3.3.3. Variación de un solo parámetro, Net Diameter ...........................................73. 4.. CONCLUSIONES Y RECOMENDACIONES ............................................................75. 5.. REFERENCIAS BIBLIOGRÁFICAS ..........................................................................77. 6.. ANEXOS...................................................................................................................80. ANEXO I ..........................................................................................................................81 ANEXO II .........................................................................................................................83 ANEXO III ........................................................................................................................91 ANEXO IV........................................................................................................................92 ORDEN DE EMPASTADO...............................................................................................93. VII.

(9) ÍNDICE DE FIGURAS. Figura 1.1. Formato de mensaje RREQ ..........................................................................18 Figura 1.2. Formato de mensaje RREP ..........................................................................19 Figura 1.3. Formato del mensaje RERR .........................................................................20 Figura 1.4. Formato de Mensaje RREP-ACK ..................................................................21 Figura 1.5. Flujo de mensajes en AODV .........................................................................23 Figura 2.1. Estructura de NS-3 .......................................................................................28 Figura 2.2. Topología de red de un escenario de simulación ...........................................49 Figura 3.1. Métricas de evaluación del protocolo AODV con los parámetros de configuración por defecto. ...........................................................................52 Figura 3.2. Throughput vs Active Route Timeout para tres densidades de nodos y tres velocidades de desplazamiento de los nodos .............................................53 Figura 3.3. Tasa de entrega de paquetes vs Active Route Timeout para tres densidades de nodos y tres velocidades de desplazamiento de los nodos .54 Figura 3.4. Retardo promedio vs Active Route Timeout para tres densidades de nodos y tres velocidades de desplazamiento de los nodos....................................55 Figura 3.5. Throughput vs Allowed Hello Loss para tres densidades de nodos y tres velocidades de desplazamiento de los nodos .............................................56 Figura 3.6. Tasa de entrega de paquetes vs Allowed Hello Loss para tres densidades de nodos y tres velocidades de desplazamiento de los nodos ....................57 Figura 3.7. Retardo promedio vs Allowed Hello Loss para tres densidades de nodos y tres velocidades de desplazamiento de los nodos ......................................58 Figura 3.8. Throughput vs Hello Interval para tres densidades de nodos y tres velocidades de desplazamiento de los nodos .............................................59 Figura 3.9. Tasa de entrega de paquetes vs Hello Interval para tres densidades de nodos y tres velocidades de desplazamiento de los nodos .........................60. VIII.

(10) Figura 3.10. Retardo promedio vs Hello Interval para tres densidades de nodos y tres velocidades de desplazamiento de los nodos .............................................61 Figura 3.11. Throughput vs Porcentaje de Net Diameter para tres densidades de nodos para tres velocidades de desplazamiento de los nodos ....................62 Figura 3.12. Tasa de entrega de paquetes vs Porcentaje de Net Diameter para tres densidades de nodos y tres velocidades de desplazamiento de los nodos .63 Figura 3.13. Retardo promedio vs Porcentaje de Net Diameter para tres densidades de nodos y tres velocidades de desplazamiento de los nodos ....................64 Figura 3.14. Throughput vs RREQ Retries para tres densidades de nodos y tres velocidades de desplazamiento de los nodos .............................................65 Figura 3.15. Tasa de entrega de paquetes vs RREQ Retries para tres densidades de nodos y tres velocidades de desplazamiento de los nodos .........................66 Figura 3.16. Retardo promedio vs RREQ Retries para tres densidades de nodos y tres velocidades de desplazamiento de los nodos .............................................67 Figura 3.17. Diseño de una MANET en escenario controlado ..........................................68 Figura 3.18. Análisis de métricas con parámetros combinados y por defecto, para tres densidades de nodos a 1.5 m/s ..................................................................70 Figura 3.19. Análisis de métricas con parámetros combinados y por defecto, para tres densidades de nodos a 3 m/s .....................................................................71 Figura 3.20. Análisis de métricas con parámetros combinados y por defecto, para tres densidades de nodos a 5 m/s .....................................................................72 Figura 3.21. Análisis de métricas variando únicamente Net Diameter vs parámetros por defecto, para tres densidades de nodos a 1.5 m/s ................................73 Figura 3.22. Análisis de métricas variando únicamente Net Diameter vs parámetros por defecto, para tres densidades de nodos a 3 m/s ...................................74. IX.

(11) ÍNDICE DE TABLAS. Tabla 1.1. Campos del Mensaje RREQ ...........................................................................18 Tabla 1.2. Campos del Mensaje RREP ............................................................................19 Tabla 1.3. Campos del Mensaje RERR ...........................................................................20 Tabla 1.4. Campos del Mensaje RREP-ACK ...................................................................21 Tabla 2.1. Módulos de inclusión .......................................................................................30 Tabla 2.2. Definición de variables ....................................................................................34 Tabla 2.3. Generación aleatoria de las simulaciones .......................................................36 Tabla 2.4. Definición del área del escenario de simulación ..............................................37 Tabla 2.5. Definición de la movilidad aleatoria de los nodos ............................................37 Tabla 2.6. Creación de dispositivos de red ......................................................................38 Tabla 2.7. Configuración de AODV ..................................................................................39 Tabla 2.8. Instalación de aplicaciones .............................................................................41 Tabla 2.9. Generación de archivos de análisis .................................................................41 Tabla 2.10. Estadísticas de los paquetes enviados ..........................................................42 Tabla 2.11. Estadísticas de los paquetes recibidos ..........................................................42 Tabla 2.12. Estadísticas básicas del tamaño de los paquetes .........................................43 Tabla 2.13. Estadísticas sobre el retardo de propagación ................................................43 Tabla 2.14. Descripción del escenario de pruebas...........................................................49 Tabla 3.1. Parámetros considerados para optimizar la eficiencia de AODV .....................50 Tabla 3.2. Intervalos de confianza del throughput con los valores por defecto de AODV, con un nivel de confianza del 95% .....................................................69. X.

(12) RESUMEN. Las redes móviles ad-hoc o MANET (Mobile Ad-hoc Networks) son redes que se generan de forma espontánea; por ello, no requieren el uso de infraestructura preexistente. La comunicación en este tipo de redes se lleva a cabo mediante el uso de protocolos de enrutamiento. Uno de los más usados es AODV (Ad-hoc On-Demand Distance Vector Routing), debido a que crea rutas solo cuando son requeridas, en el cual se centra este estudio. El presente proyecto ofrece un análisis detallado de los parámetros de configuración de AODV, para que se utilice los más adecuados para un mejor rendimiento del protocolo. Por tanto, se busca las mejores configuraciones de sus parámetros en función de las métricas de throughput, tasa de entrega de paquetes y retardo promedio. Este trabajo inicia con una revisión de AODV para tener una amplia perspectiva del uso de este protocolo. Además, en la metodología se aborda temas relacionados al simulador de red, estructura del código de simulación, parámetros de descubrimiento y mantenimiento, escenarios de pruebas, métricas por evaluarse y descripción del escenario de pruebas. En la parte central de este proyecto primero se analiza los parámetros de AODV de manera independiente y, luego de ello, se procede al estudio de estos de forma combinada. Las diferentes pruebas se realizan en el simulador de red NS-3 con el modelo de movilidad Random Waypoint Mobility, ya que crea patrones de movilidad realistas para la forma en que las personas pueden moverse. Los resultados de las extensas simulaciones realizadas, que incluyen diez pruebas por cada escenario de simulación, indican que el parámetro Net Diameter y Active Route Timeout influyen significativamente en el desempeño de AODV y los parámetros Allowed Hello Loss, Hello Interval y RREQ Retries lo hacen de forma marginal. Finalmente, se incluyen conclusiones y recomendaciones para trabajos futuros.. PALABRAS CLAVE: MANET, protocolo, AODV, NS-3.. XI.

(13) ABSTRACT. The Mobile Ad-hoc Networks MANET are the ones that are generated in a spontaneous way, for that reason they do not require the use of the preexisting infrastructure. The communication of these types of networks take place through the use of routing protocols. One of the most used protocols is the AODV (Ad-hoc On-Demand Distance Vector Routing) because it creates routes only when they are required, on which this study focuses. This project presents a detailed analysis of the configuration parameters of the AODV so that the appropriate parameters can be used for a better performance of the protocol. Therefore, the best configurations of its parameters are searched according to the throughput, packet delivery rate and average delay metrics. At the beginning of this work there is a revision of the AODV in order to have a wide perspective of the use of this protocol. In addition, the methodology contains topics that are related to the network simulator, simulation code structure, discovery and maintenance parameters, test scenarios, metrics to be evaluated, and to the description of test scenario. The central part of this project analyzes, first of all the AODV parameters in an independent way, and after that, the study of the parameters in combination are done. The different tests are performed in the NS-3 network simulation with the Random Waypoint Mobility model since it creates realistic mobility patterns for the way people can move. The results of the extensive simulations carried out, including ten tests for each simulation scenario, show that the Net Diameter and Active Route Timeout parameters significantly influence the performance of AODV and the Allowed Hello Loss, Hello Interval and RREQ Retries parameters do it in a marginal way. Finally, conclusions and recommendations for future works are included.. KEYWORDS: MANET, protocol, AODV, NS-3.. XII.

(14) nclusiones y mendaciones. Resultados. etodología. arco teórico. Métricas por evaluarse. Escenarios de pruebas. Parámetros de AODV. Estructura del código de simulación. Estudio de NS-3. AODV. - Ruta inválida - Nodo origen - Ruta invertida. - Número de saltos - Siguiente salto - Lista de precursores. - Auxiliar y análisis. - stats-module.h. 1, 2, 3, 4 [s]. Pruebas sugeridas:. Retardo promedio extremo a extremo. Tasa de entrega de paquetes. Throughput. 3 Análisis de variaciones combinadas. 2 Análisis de variación de parámetros. 1 Análisis de configuración por defecto. 3 [s]. Valor por defeco:. 1y3. 2. Allowed Hello Loss. 2 y 3 [s]. 1 [s]. Hello Interval. 10, 20 , 30, 40, 50 %. 35. Net Diameter. 1 y 3 [s]. 2. RREQ Retries. 9 Generación de estadísticas. 8 Generación de archivos de análisis. 7 Instalación de aplicaciones. 6 Configuración de los parámetros de AODV. Presentación de los resultados de cada Escenario de pruebas. Active Route Timeout. 3 Generación aleatoria de experimentos. - Se considera la definición de variables que son utulizadas en toda la simulación.. 2 Definición de variables. - internet-module.h - aodv-module.h - applications-module.h. 4 Definición de movilidad en la red - mobility-module.h - wifi-module.h. - Aplicaciones. 5 Creación de dispositivos de red. - network-module.h. - Nodo y movilidad. - RREQ RATELIMIT.. - RREQ RETRIES.. - RERR RATELIMIT. - PATH DISCOVERY TIME. - NET TRAVERSAL TIME. - NEXT HOP WAIT.. - NODE TRAVERSAL TIME. - MIN REPAIR TTL. - core-module.h. - Red. 2 Proceso de local repair. - MAX REPAIR TTL.. - LOCAL ADD TTL. - DELETE PERIOD. - HELLO INTERVAL.. - ALLOWED HELLO LOSS. - NET DIAMETER. - MY ROUTE TIMEOUT. - ACTIVE ROUTE TIMEOUT. Parámetros de configuración. - Consumo de potencia. 1 Mídulos de inclusión. - Núcleo. Estructura. Brinda escalabilidad y uso eficeinte de memoria. - Sus simulaciones se basan en C++ puro y opcionalmente Python. NS-3 es un simulador de eventos discretos. - Descubrimiento de ruras y - Mantiniminto de rutas. 1 Operación. - Timepo de vida de la ruta. - Nodo intermedio - Ruta reenviada. - Destino. - Indicador de validez del número de secuencia - Otros indicadores. - Broadcast. - Número de Secuencia. - Interfaz de red. - Ruta activa. Terminología. - Tácticas. - Direcciones IP. Información de enrutamiento. - Escalabilidad. - RING TRAVERSAL TIME. - TTL VALUE. - TTL THRESHOLD.. - TTL INCREMENT.. - TTL START.. - TIMEOUT BUFFER. - BLACKLIST TIMEOUT. (RR. - Rout. - Rou. - Rou. - Rout. Mens.

(15) 1. INTRODUCCIÓN El desarrollo de las redes inalámbricas ha impulsado una diversidad de formas de conectividad de los dispositivos móviles, ofreciendo a los usuarios la oportunidad de relacionarse entre sí a través del establecimiento de redes. Una de estas alternativas es el uso de las redes móviles ad-hoc (MANETs), por la virtual adaptabilidad a cualquier requerimiento de los usuarios [1]. Las MANETs están conformadas por estaciones (nodos) que se comunican a través de enlaces inalámbricos. Esto es posible al acceso que tienen algunos nodos a infraestructura fija, lo cual depende del tipo de MANET que esté disponible. Su función es comunicar usuarios que tengan los mismos intereses de intercambiar información, en donde se destacan escenarios como compartir información durante una reunión de negocios, emergencias u operaciones militares, entre otros [1]. El interés hacia las redes móviles ad-hoc en los últimos años se ha dado de forma vertiginosa por la movilidad y ausencia de infraestructura fija que estas presentan. Si bien estas características hacen atractivas a las MANETs, al mismo tiempo, se convierten en elementos que exigen nuevas estrategias de encaminamiento, ya que los métodos tradicionales no son aplicables a estas redes. De allí, un problema importante de las redes móviles ad-hoc es el descubrimiento y mantenimiento de las rutas, debido a los cambios constantes que se presentan en sus topologías de red, como resultado de la movilidad de las estaciones [1]. Ante este desafío, existe un gran número de algoritmos de enrutamiento para MANETs propuestos en la literatura, cada uno de estos tratando de cubrir las necesidades que exigen los diferentes tipos de escenarios. El principal objetivo de los algoritmos de enrutamiento se enfoca en el establecimiento correcto y eficiente de una ruta entre un par de nodos en una red [1], de tal manera, que se garantiza la entrega de los mensajes dentro de los parámetros de calidad (QoS) esperados. Uno de los protocolos de enrutamiento más usados en MANET es AODV (Ad-Hoc OnDemand Distance Vector), ya que establece rutas únicamente cuando son requeridas. Esto le permite ser más eficiente que otros protocolos que crean rutas de forma proactiva en términos de control de sobrecarga (rutas no utilizadas formadas por la actualización periódica de los protocolos proactivos) y consumo de energía [1].. 1.

(16) AODV basa su funcionamiento en dos modos de operación: descubrimiento y mantenimiento de rutas [2]. El primero, es siempre bajo demanda, mientras que, el segundo se realiza para conocer el estado del enlace hacia el siguiente salto a lo largo de una ruta ya establecida. Los procesos mencionados anteriormente requieren la configuración de veinte y tres parámetros descritos en la RFC del protocolo (RFC 3561) [3], de los cuales, catorce son para el descubrimiento y nueve para el mantenimiento de rutas. Entre estos se tiene: número máximo de intentos de descubrimiento de rutas, tasa de paquetes de solicitud de rutas y tiempo de vida inicial del mensaje de requerimiento de rutas, los cuales son utilizados para el descubrimiento de rutas, mientras que para el mantenimiento de rutas se pueden nombrar los siguientes parámetros: tiempo de vida de una ruta activa, pérdida permitida de paquetes Hello, tiempo entre paquetes Hello, entre los más relevantes. En base a los parámetros de AODV, se desarrolla un estudio pormenorizado de la configuración de estos de manera aislada y, a su vez, con las consideraciones anteriores analizar las posibles combinaciones lógicas entre estos, acción que deriva en realizar una gran cantidad de simulaciones que pueden incrementar exponencialmente debido a la cantidad de experimentos que pueda resultar de dicho análisis. El estudio descrito anteriormente se efectúa con el objetivo de encontrar un desempeño óptimo del protocolo, es decir, encontrar las configuraciones adecuadas de los parámetros de acuerdo con los diferentes esquemas de simulación de red que se planteen. Este tipo de análisis no se ha hecho en la literatura ya que generalmente se usa la configuración por defecto, por lo que puede haber configuraciones más convenientes para un escenario o para otro que permitan un mejor desempeño del protocolo.. 1.1. Objetivos. El objetivo general de este Estudio Técnico es: -. Estudiar la eficiencia del protocolo AODV sobre redes MANET usando el simulador NS3.. Los objetivos específicos de este Estudio Técnico son: -. Estudiar de forma detallada los parámetros que afectan la eficiencia del protocolo AODV en las redes MANET, que de acuerdo con la función que desempeñan son considerados los más importantes en la eficiencia del protocolo.. 2.

(17) -. Establecer diferentes esquemas de configuración del protocolo AODV que sean más importantes de acuerdo con los resultados del objetivo anterior.. -. Simular el protocolo AODV en diferentes topologías de redes MANET. Por ejemplo, variando los parámetros del escenario de simulación como densidad de nodos, densidad de vehículos, rango de transmisión.. -. Identificar las mejores configuraciones del protocolo AODV para diferentes escenarios tipo en MANET en base a los resultados de simulación.. 1.2. Alcance. Este trabajo estudia el funcionamiento del protocolo AODV, sus parámetros de configuración y sus posibles variaciones más relevantes en diferentes escenarios para brindar una guía de mejora de este. Entre los parámetros que resulta interesante su estudio y sus variaciones se encuentran al menos los siguientes: número máximo de saltos (NET DIAMETER), tiempo de validez de una ruta activa (ACTIVE ROUTE TIMEOUT), número máximo de mensajes HELLO perdidos (ALLOWED HELLO LOSS), tiempo que transcurre entre el envío de mensajes HELLO (HELLO INTERVAL), número máximo de intentos de descubrimiento de ruta (RREQ RETRIES). Así también, se realiza un estudio que combine los parámetros anteriormente escritos con otros que puedan resultar de interés en el desarrollo de este proyecto. Las redes ad-hoc no se pueden estudiar de forma experimental debido a la demanda de gran cantidad de recursos como la cantidad de nodos, tiempo y coste asociado; por lo tanto, los investigadores usan un simulador de red para su estudio. Un simulador de red se basa en un conjunto de códigos que nos permite estudiar protocolos de enrutamiento en escenarios variados de forma controlada y económicamente eficiente. Para el estudio de AODV y la modificación de los parámetros de configuración que inciden en su rendimiento, se usa el software de simulación de redes NS-3. Esta herramienta se utiliza por las mejoras que presenta frente a otros simuladores. Entre las características en las que destaca NS-3 se incluye la escalabilidad y el uso eficiente de memoria, lo cual permite optimizar el desempeño de las simulaciones. Se varían los valores de los parámetros de este protocolo para encontrar configuraciones más eficientes del mismo sobre escenarios de redes MANET con diferentes características, por ejemplo, densidad de nodos, rango de cobertura y velocidad. Con el uso de este. 3.

(18) software se asegura el control y manejo de datos según sea necesario, para lograr efectuar un estudio minucioso de los mismos y definir conclusiones con relación a la eficiencia del trabajo de la red. Finalmente, este estudio técnico se centra únicamente en el protocolo AODV, por lo que no se realizan comparaciones con otros protocolos de enrutamiento, ya que no es el objetivo de este estudio.. 1.3. Marco Teórico. En este capítulo se abordan conceptos para el total entendimiento del desarrollo de este estudio. Entre los temas que se revisan se encuentran las redes móviles Ad-hoc (MANETs), protocolos de enrutamiento y, un énfasis pormenorizado del protocolo de enrutamiento AODV. Dentro de las MANETs se especifican los conceptos básicos, características, aplicaciones y desafíos que éstas presentan. Acción que permite comprender su correcto funcionamiento, ventajas y desventajas que conlleva su implementación. Posteriormente, se realiza una breve revisión de los protocolos de enrutamiento, como base para el análisis subsiguiente del protocolo AODV. Dicho estudio se aborda de manera ampliada por la relevancia que presenta AODV en este trabajo de titulación.. 1.3.1 Redes Móviles Ad-hoc (MANETs) Las redes móviles Ad-hoc, MANETs, tienen su origen en el año de 1972 a través del Departamento de Defensa de Estados Unidos (Defense Advanced Research Projects Agency, DARPA), que desarrolló el proyecto PRNet (Packet Radio Network) [4] [5]. El proyecto mencionado consistía en la comunicación por medio de paquetes de radio, que básicamente utilizaba los protocolos ALOHA y CSMA. El Instituto de Ingenieros Eléctricos y Electrónicos (IEEE, Institute of Electrical and Electronics Engineering) define a las redes ad-hoc como “aquellas redes compuestas únicamente por estaciones, estando cada una de ellas dentro del rango de cobertura de alguna de las otras a través de un medio inalámbrico. Una red ad-hoc se crea típicamente de manera dinámica y su principal singularidad es su limitación tanto temporal como espacial. Estas restricciones permiten crear y disolver redes de manera suficientemente sencilla y práctica” [6]. A continuación, se describe a una red ad-hoc con los siguientes calificativos [5]: 4.

(19) -. Inalámbrica. Se establecen enlaces entre nodos a través de medios de transmisión no guiados.. -. Ad-hoc. De la locución latina <<para esto>>. Red que se crea de forma dinámica y aleatoria para un propósito específico.. -. Autónoma y sin infraestructura. Los nodos actúan simultáneamente como estaciones y enrutadores, haciéndolos independientes de una administración centralizada.. -. Multisalto. Al comportarse cada nodo como un enrutador, el intercambio de información se facilita entre los integrantes de la red.. Adicionalmente, la movilidad que pueden presentar los nodos las define como redes móviles ad-hoc (Mobile Ad-hoc NETworks, MANETs). Particularidad que proporciona una topología de red variable [7]; lo cual, prevé que el encaminamiento debe adaptarse de manera rápida y correcta a los frecuentes e impredecibles cambios de topología de la red. Las MANETs poseen las mismas dificultades de las comunicaciones inalámbricas y móviles, incluyendo la optimización de ancho de banda, control de potencia y mejora de la calidad de la transmisión. Además, exhiben nuevos problemas de estudio debido a la naturaleza multisalto y ausencia de infraestructura fija. El principal desafío que estas redes exteriorizan radica en su topología de red dinámica. Reto que se convierte en un elemento de alto impacto en el diseño de algoritmos de enrutamiento para redes móviles ad-hoc, ya que se espera que estos funcionen correctamente en escenarios diferentes e impredecibles. De allí, AODV es un protocolo de enrutamiento altamente difundido por la comunidad científica en las MANETs gracias a las ventajas que proporciona dentro de estas. AODV es objeto de análisis para conocer sus bondades, limitaciones y posteriores cambios que se puedan efectuar en la configuración de sus parámetros, para encontrar un rendimiento óptimo del mismo. Actualmente, las MANETs han llegado a ser una herramienta importante en las comunicaciones inalámbricas. La flexibilidad que presenta en entornos móviles destaca como su principal característica, y esto ha permitido que no requiera de infraestructura fija, en donde su propósito es concreto y satisface una necesidad específica.. 5.

(20) 1.3.2 Características de las MANETs Las características principales de las MANETs están relacionadas a la movilidad y la infraestructura. Los elementos anteriores vienen a ser los más importantes al momento de considerar el movimiento de los nodos, el establecimiento de los protocolos de encaminamiento y el rendimiento de la red. A continuación, se detallan las características más importantes que presentan estas redes: -. Ausencia de infraestructura. Las redes móviles tienen la capacidad de constituirse automáticamente y no requieren de elementos físicos [5].. -. Topología dinámica. Los nodos pueden movilizarse arbitrariamente con diferentes velocidades; por lo tanto, la topología de red puede cambiar aleatoriamente y en tiempos inesperados [8].. -. Variación en la capacidad de los enlaces y los nodos. Los nodos presentan interfaces de radio con diferentes capacidades de transmisión/recepción y bandas de frecuencia en la que trabajan, lo cual dificultad el desarrollo de los protocolos de enrutamiento [9].. -. Conservación de energía. Los nodos que forman parte de una red móvil ad-hoc son alimentados por baterías; por lo que, durante el diseño de las redes MANETs es importante considerar criterios de optimización para la conservación de la energía [8].. -. Escalabilidad. Se debe considerar el crecimiento de las redes con el objetivo de reducir. problemas. en. el. direccionamiento,. encaminamiento,. gestión. de. localización, gestión de configuración, interoperabilidad, seguridad, etc. [10]. -. Falta de seguridad. La comunicación debe contener altos niveles de seguridad, por lo tanto, los protocolos deben estar orientados a mantener datos seguros con sensores externos, información geográfica y topográfica, la misma que se debe incorporar en los algoritmos de encaminamiento [9].. 6.

(21) -. Encaminamiento multisalto. Permite la comunicación entre nodos adyacentes para alcanzar nodos cuyo rango de cobertura no permite una comunicación directa [9].. -. Entorno imprevisible. Las redes ad-hoc se puede emplear en condiciones peligrosas o desconocidas y por consiguiente los nodos pueden destruirse o estropearse, produciendo fallos continuos que requerirán de un nuevo diseño.. -. Comportamiento de los terminales. Los protocolos de encaminamiento deben trasmitir la información con base en respuestas, así mismo existen nodos que tienden a trasmitir información inadecuada y que genera costos y que tendrán que ser eliminados [9].. 1.3.3 Aplicaciones de las MANETs Las particularidades de una MANET como su flexibilidad, independencia de infraestructura fija, entre otras; permite a los usuarios que mantengan un especial interés sobre estas. Desde sus inicios que fueron creadas para usos militares, se han modificado para usos civiles dentro de los cuales se destacan: -. Redes para ambientes de crisis [8]. Han sido empleadas para la comunicación en situaciones de emergencia ante desastres naturales en donde toda la infraestructura fija es destruida y el establecimiento rápido de las comunicaciones es crucial. La configuración de una MANET se consigue en horas, a diferencia de una red cableada que puede llevar días o semanas.. -. Redes para la comunicación ente vehículos [2]. Las redes para este tipo de comunicación se denominan VANET cuyas siglas significan “Vehicular ad-hoc network”, la misma que está orientada al mercado automovilístico. Las redes MANET se crean mediante equipos de comunicación que se enlazan a los vehículos. Los conductores tienen acceso a la información cuando se suscitan emergencias, la comunicación se dispersa a los vehículos que se encuentran en la carretera. Las VANETs permiten la comunicación entre vehículos (V2V), la comunicación entre vehículos e infraestructura fija (V2I). El uso de infraestructura fija es reducido por el empleo de comunicaciones multisalto entre vehículos para enviar los mensajes a los puntos de acceso de la red.. 7.

(22) -. Redes para ambientes de negocios [5]. Las redes MANET también se emplean en reuniones de trabajo, en donde los asistentes tienen la posibilidad de conectarse a una red para intercambiar información relacionada a los temas a tratar. Esta herramienta permite obtener mayor seguridad con los datos internos de la empresa, mejorando la comunicación.. -. Redes tácticas [5]. Son redes que se emplean en operaciones militares, en donde los soldados pueden comunicarse entre ellos a pesar de las adversidades del terreno y de los ataques del enemigo. Para cumplir el propósito anterior [11], se usa infraestructura independiente en el que cada elemento del grupo militar actúa como antena. De esta forma, se garantiza que no falle la comunicación al no depender de un solo punto de acceso central.. 1.3.4 Desafíos de las MANETs El diseño e implementación de las MANETs comprende varios desafíos debido a las características que éstas presentan (movilidad y ausencia de infraestructura). A continuación [12], se exponen algunos problemas que este tipo de redes enfrentan para alcanzar un correcto funcionamiento. -. Enrutamiento de paquetes. Por la topología dinámica de la red es indispensable realizar actualizaciones constantes de las tablas de enrutamiento de los nodos.. -. Calidad de servicio [13]. Por la complejidad que estas redes presentan respecto a la movilidad de sus nodos, proporcionar calidad de servicio en las mismas se vuelve complejo. Para la implementación de este servicio, se deben analizar los siguientes aspectos:. §. Modelo de QoS. Las alternativas de mayor aceptación para proveer de calidad de servicio son: Servicios Integrados (Intserv) y servicios diferenciados (Diffserv).. §. Señalización para la reserva de QoS. Este procedimiento permite liberar y reservar recursos en la red. Se dividen en: in-band signalling (aquellos que incorporan información de control en los paquetes de datos) y, out-of-band. 8.

(23) signalling (aquellos que emplean mensajes expresos de control). El mecanismo de señalización más utilizado es el protocolo de reserva de recursos (RVSP o Resource Reservation Protocol), el cual es del tipo outof-band signalling y, realiza la reserva de recursos de red extremo a extremo para tráfico unicast y multicast.. §. Encaminamiento QoS. Agregar calidad de servicio a las rutas que establecen los protocolos de encaminamiento da la posibilidad de satisfacer determinados requisitos de ancho de banda, retardo, jitter, etc. Una de las propuestas para cumplir con este propósito es: CEDAR (CoreExtraction. Distributed. ad-hoc. Routing),. la. misma. que. basa. su. funcionamiento en nodos “dominantes”, los cuales determinan las rutas con cierta calidad de servicio. CEDAR presenta un algoritmo para seleccionar los nodos que serán parte del núcleo de la red. Cada nodo del núcleo mantiene información del estado y la topología de los enlaces locales y de los enlaces más lejanos pero estables. Por último, para enviar información a un destino, primero se manda un mensaje que especifica el origen, destino y ancho de banda deseado. Esta información se transmite por el núcleo mediante un pseudo-broadcast hasta alcanzar al destino, mientras que los nodos intermedios comprueban la disponibilidad de ancho de banda requerido.. §. QoS en el control de acceso al medio. Ayuda a proporcionar procedimientos de reserva de recursos mediante protocolos MAC. para ambientes inalámbricos. -. Seguridad [14]. Al ser redes que utilizan medios inalámbricos para establecer sus enlaces se tornan vulnerables a ataques y por consiguiente pueden ser fácilmente perpetradas por redes mal intencionadas que provocan que los nodos lleguen a ser maliciosos, comprometidos o egoístas.. §. Nodo malicioso: es un nodo atacante no identificable.. §. Nodo comprendido: es un nodo que a pesar de conservar la confianza del resto de los nodos es un nodo atacante.. 9.

(24) §. Nodo egoísta: tiene como característica bloquear la provisión de servicios y estos a su vez se direccionan en beneficio de otros nodos para conservar sus recursos.. -. Consumo de potencia [8]. En este aspecto se deben considerar que las redes móviles ad-hoc tienen sus nodos alimentados por baterías, limitación que hace que estas redes sean vulnerables en el tiempo.. 1.3.5 Protocolos de enrutamiento Los protocolos de enrutamiento se caracterizan por la entrega fiable y a tiempo del tráfico en las redes a través del establecimiento correcto y eficiente de rutas entre un par de nodos [4]. De forma general, los protocolos de encaminamiento se dividen en: proactivos y reactivos. Los protocolos proactivos tienen el propósito de mantener consistente y actualizada la información de enrutamiento entre cada par de nodos de la red mediante la propagación periódica de actualizaciones de ruta a intervalos de tiempo fijos. Estos presentan un retardo despreciable en el envío de la información, ya que las rutas se encuentran previamente disponibles; no obstante, los recursos de la red se ven comprometidos (energía, almacenamiento, etc.) [4]. Los protocolos reactivos son bajo demanda, es decir que crean una ruta hacia un destino solo cuando un nodo lo requiere; estos no mantienen la información de la ruta en los nodos de la red cuando no hay comunicación [15]. Por lo tanto, se evita el envío innecesario de mensajes en la red, lo cual reduce el overhead y optimiza los recursos energéticos de los nodos. Sim embargo, el tiempo de establecimiento de las rutas es mayor debido al proceso de descubrimiento de rutas que se ejecuta previamente al inicio de cualquier transmisión [16]. Dentro de los protocolos reactivos se encuentra el protocolo AODV (Ad-hoc On-Demand Distance Vector). A continuación, se revisa en detalle este protocolo al ser el centro de análisis de este proyecto de titulación.. 10.

(25) 1.3.6 AODV (Ad-Hoc On-Demand Distance Vector) Ad-Hoc On-Demand Distance Vector, AODV, es un protocolo reactivo que ha sido adaptado para trabajar en ambientes móviles. Este protocolo mantiene una tabla de rutas para almacenar información de encaminamiento; las rutas almacenadas son generadas únicamente cuando un nodo desea enviar un paquete [1]. Si las rutas almacenadas son solicitadas dentro de un periodo, permanecen activas; caso contrario, estas expiran y se busca una nueva cuando sea necesario.. I.. Información de enrutamiento de AODV. Los nodos intermedios almacenan toda la información relacionada al enrutamiento en tablas de rutas [3]. Cada nodo tiene en su tabla tantas entradas como destinos conoce. A continuación, se describe los campos que posee cada registro [3] [4]: -. Direcciones IP. Especifica las direcciones IP del nodo fuente y del nodo destino para conocer de dónde vienen y hacia dónde van los paquetes.. -. Número de secuencia. El número de secuencia del nodo destino permite diferenciar información nueva de información obsoleta (cuanto mayor sea el número, más actualizada está la ruta; el más antiguo puede descartarse), de tal manera que se impiden bucles y transmisiones antiguas.. -. Indicador de validez del número de secuencia del nodo destino. Si al tratar de comunicarse con un destino, se obtiene resultados negativos debido a la falla de un enlace, o a su vez la ruta ha expirado, el número de secuencia asociado a ese nodo destino se marca como inválido.. -. Otros indicadores sobre estado y rutas. Se tienen indicadores sobre si la ruta es o no válida, y en este último caso si es reparable, no es reparable y se debe buscar un camino alternativo.. -. Interfaz de red [3]. El funcionamiento de AODV debe ser correcto tanto para redes cableadas e inalámbricas; de allí surge la importancia que este protocolo conozca la interfaz por la cual llegan los paquetes. Esto incluye la recepción de mensajes RREQ, RREP y RERR. De igual forma, cada vez que se aprende una. 11.

(26) ruta a un nuevo destino, la interfaz a través de la cual se puede llegar al destino también se registra en la entrada de la tabla de rutas del destino. -. Número de saltos (hop count). Indica al nodo fuente el número de saltos necesarios que se deben dar para alcanzar a un nodo destino.. -. Siguiente salto. Nodo adyacente por el que viajan los paquetes hasta encontrar al destino deseado.. -. Lista de precursores. Conjunto de nodos que forman el camino resultante del proceso de descubrimiento de rutas.. -. Tiempo de vida de la ruta (lifetime). Las rutas tienen un tiempo de duración después del cual deben ser eliminadas para evitar que mensajes perdidos inunden la red.. II.. Terminología de AODV. En esta sección se define la terminología usada en AODV que aún no ha sido detallada [3]. -. Ruta Activa. Una ruta hacia un destino que tiene una entrada a la tabla de enrutamiento que está marcada como válida. Solo las rutas activas pueden usarse para reenviar paquetes de datos.. -. Broadcast. Para transmisiones broadcast se usa la dirección IP 255.255.255.255. La transmisión de paquetes vía broadcast permite diseminar mensajes AODV a través de la red móvil ad-hoc.. -. Destino. Es una dirección IP a la que se transmiten los paquetes de datos. También se conoce como "nodo de destino", y se hace referencia a este si su dirección aparece en el campo apropiado del encabezado IP. Las direcciones IP son transportadas en los mensajes de descubrimiento de rutas que intercambia AODV.. 12.

(27) -. Nodo intermedio. Es un nodo puente que se utiliza para llegar al nodo destino. Este retransmite los paquetes hacia su nodo adyacente hasta alcanzar al nodo destino.. -. Ruta Reenviada. Es una ruta que se ha configurado para enviar paquetes de datos desde un nodo que origina una operación de Descubrimiento de ruta hacia su destino deseado.. -. Ruta inválida. Es una ruta que registra un estado no válido en su entrada a la tabla de enrutamiento debido a que la ruta ha expirado. No permite difundir mensajes por la red, pero brinda información importante para reparar rutas.. -. Nodo origen. Es un nodo que inicia el proceso de descubrimiento de rutas.. -. Ruta invertida. Es una ruta que sirve para que la respuesta pueda regresar posteriormente al origen.. III.. Parámetros de configuración de AODV. Los parámetros de AODV son elementos que se deben considerar para lograr que exista un manejo adecuado de la información. Además, permiten realizar un despliegue eficiente de las redes basadas en este protocolo de enrutamiento y de la adaptación de este a las particularidades que las redes presentan. Anteriormente, se abordó el tema del funcionamiento que tiene AODV, en donde se destacan los dos modos de operación: descubrimiento y mantenimiento de rutas. El primero, es siempre bajo demanda, mientras que, el segundo se realiza para conocer el estado del enlace hacia el siguiente salto a lo largo de una ruta ya establecida. Los procesos mencionados requieren la configuración de veinte y tres parámetros descritos en el RFC del protocolo (RFC 3561) [3], de los cuales, catorce son para el descubrimiento y nueve para el mantenimiento de rutas. A continuación, se describen los parámetros de configuración de AODV [3] [6] [17] [18]. -. ACTIVE ROUTE TIMEOUT. Este parámetro especifica el valor del tiempo de espera para las rutas en caché. Cada vez que se envía un paquete de datos a un nodo destino, el tiempo de espera para la ruta se extiende a este valor. Si no se envía ningún paquete de datos durante este intervalo de tiempo de espera, la ruta. 13.

(28) se deshabilita, pero no se elimina. La ruta se eliminará posteriormente. En otras palabras, este parámetro indica el tiempo de validez de una ruta activa. Su valor por defecto es: 3000 milisegundos. -. MY ROUTE TIMEOUT. Cada nodo tiene la facultad de elegir el tiempo de validez de las rutas en las que él es el nodo destino. Este valor se copia en el campo tiempo de vida en el mensaje RREP que se genera antes del establecimiento del camino de ida [6]. Su valor por defecto es: My Route Timeout = 2 * Active Route Timeout My Route Timeout = 6000 milisegundos. -. NET DIAMETER. Este parámetro especifica el máximo número de saltos posible entre dos nodos en la red. Su valor por defecto es: 35.. -. ALLOWED HELLO LOSS. Es el número máximo de mensajes HELLO que pueden perderse antes que el sistema declare a una ruta hacia a un vecino como perdida. Su valor por defecto es: 2.. -. HELLO INTERVAL. Define al tiempo entre el envío de dos paquetes Hello consecutivos. Su valor por defecto es: 1000 ms.. -. DELETE PERIOD. Este parámetro determina el tiempo después del cual se elimina una ruta caducada. Su valor por defecto es: Delete Period = K * max (Active Route Timeout, Hello Interval) (K = 5; constante de eliminación de ruta) De acuerdo con los parámetros por defecto se tiene que: Active Route Timeout es mayor que Hello Interval. Por lo tanto, el valor por defecto de este parámetro es: Delete Period = 15 s. -. LOCAL ADD TTL. Este parámetro hace referencia a los intentos locales de reparación de enlaces cuando estos se caen. Su valor por defecto es: 2.. 14.

(29) -. MAX REPAIR TTL. Cada vez que un enlace se rompe en una ruta activa, el nodo de arriba de esa interrupción PUEDE elegir reparar el enlace localmente si el destino no fue más allá del valor de este parámetro. Su valor por defecto es: 0.3 * Net Diameter. Max Repair TTL = 10.5. -. MIN REPAIR TTL [3]. Este parámetro indica la última cuenta de saltos conocida hasta el destino. Si se usan mensajes Hello, el valor del parámetro Active Route Timeout debe ser mayor que el valor (Allowed Hello Loss * Hello Interval). Para un valor dado de Active Route Timeout, se puede requerir algún ajuste al valor de Hello Interval.. -. NODE TRAVERSAL TIME. Es la estimación del tiempo promedio que se demoran los paquetes en recorrer un salto. Este parámetro debe incluir retrasos debidos a las colas, tiempos de interrupción del proceso, tiempos de transmisión y todas las demás demoras. Su valor por defecto es: 40 ms.. -. NEXT HOP WAIT. Es el periodo de espera del RREP ACK del nodo vecino. Su valor por defecto es: Next Hop Wait = Node Traversal Time + 10 ms. Next Hop Wait = 50 ms. -. NET TRAVERSAL TIME. Este parámetro indica la estimación promedio del tiempo de recorrido neto. Su valor por defecto es: 2 * Node Traversal Time * Net Diameter Net Traversal Time = 2800 ms. -. PATH DISCOVERY TIME. Es la estimación del tiempo máximo necesario para encontrar la ruta en la red. Su valor por defecto es: 2 * Net Traversal Time Path Discovery Time = 5600 ms. -. RERR RATELIMIT. Número máximo de RERR por segundo. Su valor por defecto es: 10. 15.

(30) -. RREQ RETRIES. Es el número máximo de retransmisiones de RREQ para descubrir una ruta antes de declarar a un destino como inalcanzable. Su valor por defecto es: 2.. -. RREQ RATELIMIT. Es el número máximo de RREQ por segundo. Su valor por defecto es: 10.. -. BLACKLIST TIMEOUT. Es el tiempo que un nodo permanece en una lista negra. Una lista negra [19] es un método implementado por AODV para detectar y evitar cualquier enlace unidireccional durante la construcción de una ruta inversa, permitiendo así que solo se construyan enlaces bidireccionales. Sin embargo, esta técnica limita la conectividad entre un par de nodos. Su valor por defecto es: RREQ Retries * Net Traversal Time Blacklist Timeout = 5600 ms. -. TIMEOUT BUFFER. Proporciona un buffer para el TIMEOUT. De esta manera, es menos probable que se genere un TIMEOUT para mensajes RREP que aún no han llegado a la fuente por la congestión que pueda existir en la red. TIMEOUT BUFFER = 0 permite omitir este buffer. Su valor por defecto es: 2.. -. TTL START. Este parámetro especifica el valor TTL al iniciar un mensaje RREQ. Su valor de defecto es: 1.. -. TTL INCREMENT. Este parámetro especifica el valor por el cual el TTL se incrementa cada vez que se retransmita un RREQ. Su valor por defecto es: 2.. -. TTL THRESHOLD. Este parámetro especifica el valor máximo de TTL sobre el cual se usa el valor de NET DIAMETER para transmitir cualquier solicitud de ruta (RREQ). Su valor por defecto es: 7.. -. TTL VALUE [3]. Es el valor del campo TTL que se encuentra en la cabecera IP mientras se realiza la técnica de búsqueda expansiva en anillo para evitar la. 16.

(31) diseminación innecesaria de mensajes RREQs por toda la red. Durante esta técnica, el nodo origen inicialmente usa un TTL = TTL START (TTL VALUE = 1) en el encabezado IP del paquete RREQ y establece el tiempo de espera en recibir un RREP en RING TRAVERSAL TIME milisegundos. Si el mensaje RREQ expira sin recibir un RREP, el nodo emisor envía nuevamente un RREQ con el campo TTL incrementado por TTL INCREMENT. Esto proceso se repite hasta que el TTL configurado en el RREQ llega a ser TTL THRESHOLD, posterior a esto se usa un TTL = NET DIAMETER para cada intento. -. RING TRAVERSAL TIME [3]. Como se detalló en el parámetro TTL VALUE, es el tiempo de espera para recibir un RREP durante la técnica de búsqueda expansiva en anillo. La forma de calcular este parámetro es: RING TRAVERSAL TIME = 2 * Node Traversal Time * TTL Value + Timeout Buffer. En base a los parámetros de AODV, se lleva a cabo un estudio pormenorizado de la configuración de estos de manera aislada y, a su vez, con las consideraciones anteriores se analiza las posibles combinaciones lógicas entre estos, acción que deriva en realizar una gran cantidad de simulaciones que pueden incrementar exponencialmente debido a la cantidad de experimentos que pueda resultar de dicho análisis. El estudio descrito anteriormente se efectúa con el objetivo de encontrar un desempeño óptimo del protocolo, es decir, encontrar las configuraciones adecuadas de los parámetros de acuerdo con los diferentes esquemas de simulación de red que se planteen. Este tipo de análisis no se ha hecho en la literatura ya que generalmente se usa la configuración por defecto, por lo que puede haber configuraciones más convenientes para un escenario o para otro que permitan un mejor desempeño del protocolo.. IV.. Formatos de mensaje de AODV. AODV para su funcionamiento hace uso de los siguientes tipos de mensajes: -. Route Request (RREQ). -. Route Reply (RREP). -. Route Error (RERR). -. Route Reply-Acknowledge (RREP-ACK).. A continuación, se detallan los formatos que tienen los mensajes de AODV.. 17.

(32) -. Route Request (RREQ). La Figura 1.1 detalla el formato del mensaje Route Request (RREQ). 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type |J|R|G|D|U| Reserved | Hop Count | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | RREQ ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Destination IP Address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Destination Sequence Number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Originator IP Address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Originator Sequence Number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+. Figura 1.1. Formato de mensaje RREQ [3] Los campos presentes en el formato del mensaje RREQ se describen en la Tabla 1.1. Tabla 1.1. Campos del Mensaje RREQ CAMPO. DEFINICIÓN. Tipo. Indica que es un mensaje RREQ. Se fija en 1.. J. Bandera de unión; se reserva para multicast.. R. Bandera de reparación; se reserva para multicast.. G. Bandera RREP gratuita; Indica si RREP gratuita debe ser unicast para el nodo que se ha especificado en el campo de la dirección IP de destino. Bandera de sólo destino; Indica solo el destino que debe responder a este mensaje RREQ.. D U Reservado. Número de secuencia desconocido; Muestra que se desconoce el número de secuencia de destino. Se configura en 0; Este campo se ignora en la recepción.. Contador de Saltos. Es el número de saltos que existe entre el nodo origen y el nodo que gestiona la solicitud.. RREQ ID. En conjunto con la dirección IP del origen, identifica de manera inequívoca a un mensaje RREQ.. Dirección IP de destino. Es la dirección IP del nodo destino para el cual se desea establecer una ruta.. Número de secuencia de destino. Es el último número de secuencia recibido por el origen para cualquier ruta hacia el destino.. Dirección IP de origen. Es la dirección IP del nodo que origina el mensaje RREQ.. Número de secuencia de origen. Es el actual número de secuencia que debe ser usado en la entrada de ruta apuntando hacia el nodo que origina el mensaje RREQ.. 18.

(33) -. Route Reply (RREP). A continuación, la Figura 1.2 detalla el formato del mensaje Route Reply (RREP). 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type |R|A| Reserved |Prefix Sz| Hop Count | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Destination IP address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Destination Sequence Number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Originator IP address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Lifetime | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+. Figura 1.2. Formato de mensaje RREP [3] Los campos presentes en el formato del mensaje RREP se describen en la Tabla 1.2. Tabla 1.2. Campos del Mensaje RREP CAMPO Tipo. DEFINICIÓN Indica que es un mensaje RREP. Se fija en 2.. R. Bandera de reparación; se reserva para multicast.. A. Acuse de recibo requerido.. Reservado. Tamaño de prefijo. Se configura en 0; Este campo se ignora en la recepción. Si es diferente a 0, el tamaño de prefijo de 5-bits indica que el siguiente salto indicado puede ser usado por cualquier nodo con el mismo prefijo de enrutamiento (según lo definido por el tamaño de prefijo) como el destino solicitado.. Contador de saltos. Es el número de saltos que existe entre el nodo origen y el nodo destino. Para RREQ multicast indica el número de saltos al miembro del árbol multicast que envía el RREP.. Dirección IP de destino. Es la dirección IP del nodo destino para el cual se desea establecer una ruta.. Número de secuencia de destino. Es el número de secuencia de destino asociado a la ruta.. Dirección IP del origen. Es la dirección IP del nodo que origina el mensaje RREQ.. Tiempo de vida. Es el tiempo en el cual los nodos que reciben un mensaje RREP consideran que la ruta es válida.. 19.

(34) -. Route Error (RERR). A continuación, la Figura 1.3 [3] detalla el formato del mensaje Route Error (RERR). 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type |N| Reserved | DestCount | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Unreachable Destination IP Address (1) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Unreachable Destination Sequence Number (1) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-| | Additional Unreachable Destination IP Addresses (if needed) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Additional Unreachable Destination Sequence Numbers (if needed)| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+. Figura 1.3. Formato del mensaje RERR [3] Los campos presentes en el formato del mensaje RERR se describen en la Tabla 1.3. Tabla 1.3. Campos del Mensaje RERR CAMPO Tipo N. DEFINICIÓN Indica que es un mensaje RERR. Se fija en 3. Bandera de no eliminado; configurada cuando un nodo ha realizado una reparación local de un enlace, y los nodos adyacentes no deben eliminar la ruta.. Reservado. Se configura en 0; Este campo se ignora en la recepción.. DestCount. Número de destinos inalcanzables incluidos en el mensaje; DEBE ser al menos 1.. Dirección IP del destino inalcanzable. Es la dirección IP de un destino inalcanzable debido a un enlace caído. Número de secuencia de destino.. Número de secuencia de destino inalcanzable. -. El número de secuencia en la entrada de la tabla de rutas para el destino mencionado en el campo anterior dirección IP del destino inalcanzable.. Route Reply-Acknowledge (RREP-ACK). Este tipo de mensajes se dan en respuesta a un mensaje RREP que tienen configurado el bit 'A'. Generalmente se lleva a cabo cuando hay peligro en enlaces unidireccionales, evitando la finalización de un ciclo de descubrimiento de rutas.. 20.

(35) A continuación, la Figura 1.4 indica el formato del mensaje RREP-ACK. 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+. Figura 1.4. Formato de Mensaje RREP-ACK [3] Los campos presentes en el formato del mensaje RREP-ACK se indican en la Tabla 1.4.. Tabla 1.4. Campos del Mensaje RREP-ACK. CAMPO Tipo Reservado. V.. DEFINICIÓN Indica que es un mensaje RREP-ACK. Se fija en 4. Se configura en 0; Este campo se ignora en la recepción.. Operación de AODV. AODV establece enlaces entre los nodos debido a la información que se encuentra en las tablas de enrutamiento de los nodos intermedios. Su uso es adecuado para redes ad-hoc debido a que el envío de mensajes se realiza bajo demanda, es decir, que se definen rutas solo cuando se desea establecer una comunicación. El funcionamiento de AODV está basado en dos procedimientos bien definidos [2] [20] [21]; el primero es Descubrimiento de Rutas y el segundo es Mantenimiento de Rutas. Todos los mensajes en AODV son enviados por el puerto 654 usando UDP [3]. -. Descubrimiento de Rutas. Este proceso se utiliza cuando no existe una ruta a un determinado destino, debido a que el nodo nunca ha enviado un flujo de datos al destino o que la ruta haya expirado y su actualización no esté garantizada [2]. El descubrimiento de rutas en AODV es siempre bajo demanda y se da mediante el ciclo petición/respuesta de ruta. Para las peticiones se usan los mensajes Route Request (RREQ) y, para las respuestas se usan los mensajes Route REPly (RREP).. 21.

(36) §. Route Request. Route Request, RREQ, es un mensaje broadcast enviado por la fuente con el objetivo de establecer un enlace con un destino; este mensaje es recibido por todos los nodos alrededor de la fuente, y estos retransmiten el mensaje hasta alcanzar al nodo destino o responder a la fuente con la nueva ruta. Al momento de arribar un mensaje RREQ a un nodo, se procede de la siguiente forma [22]: i.. El conjunto (dirección de origen, ID de solicitud) son buscados en la tabla de historias local del nodo para comprobar si esta solicitud ya ha sido recibida antes y procesada. Si resulta ser un duplicado, la petición se elimina y finaliza el proceso; caso contrario, el conjunto se almacena en la tabla de historia, para descartar futuros duplicados y el proceso continúa.. ii.. El nodo que recibe el RREQ busca al nodo destino en su tabla de enrutamiento. Si se conoce una ruta reciente al destino, se responde al origen con un mensaje respuesta de ruta (Route Reply) para indicarle como alcanzar al destino. El término “ruta reciente” hace referencia a que el número de secuencia de destino registrado en la tabla de enrutamiento del nodo receptor es mayor o igual al número de secuencia de destino del mensaje RREQ. Si es menor, la ruta almacenada es más antigua que la que el origen tenía para el destino, por lo que el proceso continúa.. iii.. Al no disponer el receptor de una ruta reciente al destino, se incrementa el campo Cuenta de saltos y se vuelve a enviar el mensaje RREQ. Además, se extraen los datos del paquete para almacenarlos como una nueva entrada en su tabla de rutas invertidas; tabla que se construye para que la respuesta pueda regresar posteriormente al origen. También se inicia un temporizador para la nueva entrada de ruta invertida. Si expira, la entrada se borra.. §. Route Replay. Route Replay [2], RREP, es un mensaje enviado por un nodo destino o por un nodo intermedio. Un nodo intermedio puede enviar un RREP solo si este tiene una ruta hacia el destino con el correspondiente número de secuencia mayor o igual al que consta en el RREP.. 22.

(37) Los mensajes RREP son enviados desde el destino a la fuente. La fuente actualiza su información de enrutamiento en la tabla de rutas para ese destino si recibe un mensaje RREP con un número de secuencia mayor o contiene el mismo número de secuencia o a su vez contiene el mismo número de secuencia, pero con un número de saltos menor. -. Mantenimiento de Rutas. Una ruta permanece en la tabla de enrutamiento mientras exista comunicación entre el nodo fuente y el nodo destino, caso contrario se activa un temporizador para eliminar la ruta [2]. Para este procedimiento se usa los mensajes HELLO y Route Error (RERR) para mantener las tablas de enrutamiento actualizadas.. §. Mensajes Hello. El mensaje Hello tiene como objetivo advertir periódicamente la presencia de un nodo hacia nodos vecinos que estén dentro de su rango de cobertura para preservar una ruta. Si un nodo intermedio no recibe un mensaje Hello de su siguiente salto, se asume que la conectividad ha caído y el enlace local falla. Resulta innecesario para un nodo enviar un mensaje Hello. al tener. su tabla de. enrutamiento. vacía,. ya que. inundaría. innecesariamente de tráfico.. §. Mensajes Route Error. El mensaje Route ERRor, RERR, es enviado cuando un nodo detecta un enlace local roto y, además, el mecanismo de reparación local ha fallado. Dadas esas dos particularidades, el nodo propaga un mensaje RERR hacia el nodo fuente para informarle que el destino se encuentra inalcanzable. Si la fuente aún desea establecer una ruta hacia el destino, este puede reiniciar el procedimiento del descubrimiento de ruta. El resumen de operación de AODV se indica en la Figura 1.5, la misma que muestra el flujo de mensajes de AODV.. Figura 1.5. Flujo de mensajes en AODV [2] 23.

(38) VI.. Proceso de Local Repair de AODV. El proceso de Local Repair es la respuesta que da AODV a rupturas que se presentan en los enlaces de rutas activas. Los nodos intermedios generan un mensaje RREQ con el propósito de reparar una ruta, y de esta forma, no hacerlo desde el nodo origen. EL Local Repair es similar al descubrimiento de rutas. Si este proceso no logra reestablecer las rutas que han sufrido rupturas, se emite un mensaje RERR tal y como se mencionó en el proceso de mantenimiento de rutas.. 24.

(39) 2. METODOLOGÍA Este capítulo trata la metodología de trabajo a desarrollar en el presente estudio. Esta se encuentra dividida por etapas, las mismas que permiten obtener un trabajo organizado y acorde a los objetivos planteados. En primer lugar, se estudia el simulador de red (NS, por sus siglas en inglés) versión 3, NS-3. En este apartado se lleva a cabo una breve introducción del simulador de red, se revisa sus generalidades, características y organización. En segundo lugar, se plantea la estructura del código de simulación. En este punto, es importante destacar que el script utilizado para desarrollar el presente proyecto está basado en el código wifi-example-sim.cc. A este código se le realizó varias modificaciones, las cuales permiten cumplir con los objetivos de este estudio. Estos cambios son explicados en la sección 2.2. En tercer lugar, se analiza los diferentes parámetros que permiten el descubrimiento y mantenimiento de rutas del protocolo AODV que son de interés para el desarrollo de este proyecto; de este modo, se comprende mejor estos parámetros. Además, se indica como estos van a ser modificados. A continuación, se presenta el escenario de pruebas en donde se describen las diferentes simulaciones a efectuarse en este estudio. Posteriormente, se describe las métricas con las cuales se evalúa el desempeño del protocolo AODV. Estas son throughput, tasa de entrega de paquetes y retardo promedio. Por último, se tiene la descripción del escenario de pruebas. En este figuran los parámetros del escenario de simulación y las principales características de la red que se configuran en los escenarios de pruebas.. 2.1. Estudio de NS-3. 2.1.1 Introducción a NS-3 Las redes ad-hoc no se pueden estudiar de forma experimental debido a la demanda de gran cantidad de recursos como la cantidad de nodos, tiempo y coste asociado; por lo tanto, los investigadores usan un simulador de red para su estudio. Este tipo de herramientas basan su funcionamiento en un conjunto de códigos que permite estudiar. 25.

Figure

Figura 1.1. Formato de mensaje RREQ [3]
Figura 1.2. Formato de mensaje RREP [3]
Figura 1.3. Formato del mensaje RERR [3]
Tabla 2.1. Módulos de inclusión   1  #include &lt;ctime&gt;   2  #include &lt;sstream&gt;   3  #include &#34;ns3/core-module.h&#34;   4  #include &#34;ns3/network-module.h&#34;   5  #include &#34;ns3/mobility-module.h&#34;   6  #include &#34;ns3/wifi-modul
+7

Referencias

Documento similar

If certification of devices under the MDR has not been finalised before expiry of the Directive’s certificate, and where the device does not present an unacceptable risk to health

In addition to the requirements set out in Chapter VII MDR, also other MDR requirements should apply to ‘legacy devices’, provided that those requirements

The notified body that issued the AIMDD or MDD certificate may confirm in writing (after having reviewed manufacturer’s description of the (proposed) change) that the

Cedulario se inicia a mediados del siglo XVIL, por sus propias cédulas puede advertirse que no estaba totalmente conquistada la Nueva Gali- cia, ya que a fines del siglo xvn y en

You may wish to take a note of your Organisation ID, which, in addition to the organisation name, can be used to search for an organisation you will need to affiliate with when you

Where possible, the EU IG and more specifically the data fields and associated business rules present in Chapter 2 –Data elements for the electronic submission of information

Products Management Services (PMS) - Implementation of International Organization for Standardization (ISO) standards for the identification of medicinal products (IDMP) in

This section provides guidance with examples on encoding medicinal product packaging information, together with the relationship between Pack Size, Package Item (container)