Introducción - RiuNet repositorio UPV

Anuncio
i
i
i
i
Capı́tulo
1
Introducción
En este capítulo se realiza una introducción a las redes inalámbricas que
cada vez tienen un mayor impacto en los entornos industriales.
A continuación se describen los motivos por los que se emprendió en su
momento este trabajo de tesis, motivos directamente relacionados con los
objetivos planteados. Para alcanzar estos objetivos se describe la metodología de trabajo que se ha seguido a lo largo del estudio.
Las contribuciones más importantes a las que ha dado lugar este trabajo de tesis son descritas también en este capítulo introductorio. Y para
terminar se detalla la estructura de la memoria de tesis.
1
i
i
i
i
Capítulo 1. Introducción
1.1. Introducción
El uso de las redes inalámbricas tiene un impacto creciente en los sistemas de automatización y fabricación industrial, de control distribuido, de
supervisión y cualquier otro tipo de sistemas integrados en red debido a la
simplicidad en el despliegue, reducción de costes de ingeniería y de cableado, aplicaciones con movilidad y a la reducción del mantenimiento, así como
a la posibilidad de instalar equipos en lugares que no pueden ser cableados,
ver [LS+ 05]. Cada vez hay más situaciones y necesidades de integración que
no pueden resolverse adecuadamente mediante cable, las redes inalámbricas
por tanto complementan las redes cableadas. Además, son muchas e interesantes las potenciales aplicaciones industriales que pueden hacer uso de estas
redes como apunta Willig en [Wil08], el control en lazo-cerrado de subsistemas móviles, la coordinación entre robots móviles o vehículos autónomos y
la monitorización del funcionamiento de máquinas e instalaciones. No hay
que olvidar además las aplicaciones fuera de los entornos industriales tal y
como se enumera en [SLH02], edificios públicos, centros educativos, hospitales (donde se pueden actualizar los datos de los pacientes automáticamente),
aeropuertos (para agilizar tareas de embarque) y centros comerciales (para
ofrecer publicidad).
Incluso con estas ventajas, el uso de las redes inalámbricas en la industria es limitado debido a la necesidad de tecnologías avanzadas que implican
alta confiabilidad en tiempo real de respuesta, la resistencia a las condiciones ambientales, la protección a prueba de explosión, y también por entrar
en conflicto con otros protocolos wireless. Con respecto a este último punto,
cabe destacar el trabajo realizado por el ISA100 Working Group (WG3), comité perteneciente al ISA (International Society of Automation, [ISA]) cuya
comisión de normas aprobó en abril de 2009 una norma de comunicaciones
wireless para la industria de automatización de procesos. Este nuevo estándar
para la industria, ISA100.11a-2009 (Wireless Systems for Industrial Automation: Process control and related applications) ofrece una excelente compatibilidad con los sistemas existentes de instrumentación a través de protocolos
2
i
i
i
i
Capítulo 1. Introducción
R Modbus y Profibus.
R Según la
wireless como Foudation Fieldbus, HART,
norma puede coexistir con otros dispositivos inalámbricos que estén en uso
en el área de trabajo, tales como teléfonos móviles y dispositivos basados en
IEEE 802.11x, IEEE 802.15x, IEEE 802.16x, y otras normas pertinentes. Es un
protocolo adecuado para una amplia gama de aplicaciones de vigilancia y
control.
Un ejemplo donde las tecnologías inalámbricas han penetrado rápidamente es en el control de las redes que dan soporte a servicios públicos (utilities
networks), ejemplos típicos son la supervisión y control remoto de grandes
redes de distribución de agua, gas o electricidad. En estos casos, el tráfico
se compone básicamente de variables de estado, eventos y la transmisión
de imágenes relacionadas o no con estos. Este tipo de redes están desplegadas en entornos metropolitanos y formadas habitualmente por un nodo
principal o estación central donde se procesa, almacena y controla la información de la instalación, distintas estaciones remotas y clientes remotos que
pueden supervisar e incluso controlar remotamente el funcionamiento del
sistema, ver [SAS04b, ASSD05]. Desde el punto de vista de las comunicaciones, cuando se trabaja con instalaciones distribuidas geográficamente, como
es el caso del escenario tomado como ejemplo, se requiere el uso de redes de
telecomunicaciones heterogéneas, compuestas por redes de cable y sistemas
inalámbricos operados por diferentes entidades, ver [SAS06].
En la Fig. 1.1 se muestra como ejemplo un esquema de un sistema de supervisión y control. Cada estación remota constituye un ente autónomo que
controla una parte de la instalación global, típicamente se utilizan buses de
campo y controladores para proporcionar el comportamiento deseado en cada área. Sin embargo, para mejorar la explotación del sistema, la respuesta
ante alertas y situaciones de riesgo y facilitar su mantenimiento, las estaciones remotas deben tener capacidad de intercambiar información de estado
entre éstas1 y con la estación central a través un gateway2 y también, entre
1 Ver flujo A en la Fig. 1.1, donde el operario D a través del E alcanza el gateway atravesando
la red heterogénea para comunicar con el operario A que está en otra estación remota.
2 Ver flujo B en la Fig. 1.1, donde el operario D a través del E alcanza el gateway para comu-
3
i
i
i
i
Capítulo 1. Introducción
usuarios dentro de la propia estación remota3 . En los tres casos, un posible
escenario es la generación espontánea de redes inalámbricas en las estaciones remotas de control donde cada nodo de la red está representado por un
usuario/operario que además actúa como router a la hora de intercambiar
información con un operario de la propia estación donde está situado, la central u otra estación remota, y para ello hace uso del resto de nodos en el caso
de no alcanzar el destino deseado directamente.
Según el ámbito de aplicación, las necesidades pueden ser muy diversas.
La información transmitida entre los nodos que componen esta red inalámbrica depende de los servicios a ofrecer por la instalación que se está supervisando. Los servicios ofrecidos a los usuarios en el caso de estudio se
pueden dividir en servicios de media y servicios de alerta. Estos servicios
suelen basarse en la información de telemetría y en la información obtenida
por la supervisión de procesos, es decir, la generación y envío de alarmas y
la transmisión de streaming de vídeo de la zona que se está inspeccionando
entre los encargados de la supervisión de la planta o zona.
El que la red inalámbrica generada pueda ofrecer esos servicios correctamente dependerá de:
1. Las características de los distintos servicios y sus restricciones. En el
caso de los servicios de alerta el volumen de información es muy bajo.
Normalmente se trata de unos pocos octetos que ofrecen información
sobre un determinado estado o alarma en la instalación. El usuario recibe la alarma porque está suscrito a este tipo de servicio. En el caso
de los servicios de alerta, la fuente de la alerta puede ser un equipo de
control en una estación remota o un usuario que active un aviso tras
la supervisión de la instalación. El receptor puede estar en la sala de
control central (un controlador), en una estación remota o puede ser un
cliente remoto (un supervisor en ambos casos). El plazo máximo entre
nicar con la estación central de control atravesando la red heterogénea.
3 Ver flujo C en la Fig. 1.1, donde el operario A necesita comunicar con C y para ello encamina
la información a través de B.
4
i
i
i
i
Capítulo 1. Introducción
Estación remota 1
Estación remota 2
A, B
Gateway
PLC
Gateway
Cámara
PLC
Operario E
B
Cámara
A, B
C
B
Operario B
Operario A
Operario D
C
Redes cableadas
-xDSL
-HFC
-MetroEthernet
Operario C
RED HETEROGÉNEA
Redes inalámbricas
-WiMAX
-GPRS
-UMTS
-HSDPA
GPRS
Clientes remotos
UMTS
A, B
Control
HEW LETT
PACKARD
AdvanceStack Switch 800T
Base de datos
Daisy Chain
RPS
Self Test
1
Tx
2
Tx
Dx
Rx
3
Tx
4
Dx
Rx
Dx
Tx
5
Tx
6
Rx
Dx
Tx
7
Tx
8
Tx
Dx
Rx
Switch
HP J3245A
Fault
Dx
Rx
HP J3245A
HP J3245A
HP J3245A
HP J3245A
100Base-TX
Port 4
Twisted-Pair
100Base-TX
Port 3
Twisted-Pair
100Base-TX
Port 2
Twisted-Pair
100Base-TX
Port 1
HEWLETT
PACKARD
Proxy
Reset
Power
Rx
Dx
Rx
Dx
Rx
Console RS-232
Twisted-Pair
A, B
100Base-T
Port 5
100Base-T
Port 6
100Base-T
Port 7
100Base-T
Port 8
LAN Switch
Servidor Web
Estación Central
Figura 1.1: Esquema de una instalación de supervisión y control.
la producción y la recepción de la alarma debe estar acotado (típicamente menor a 1s), la alarma debe llegar y además hacerlo a tiempo.
Cuando la alarma es enviada a un controlador este debe recibirla y procesarla en un tiempo máximo, cuando la alarma llega a un supervisor el
deadline es más flexible, pero en ambos casos se considerará 1 segundo.
Los servicios de media normalmente ofrecen imágenes o vídeo streaming para la supervisión de la instalación y la fuente es una cámara
instalada en una estación remota. Las imágenes o secuencias son ofrecidas por la cámara y se envían a un cliente situado en la propia estación,
en otra estación, en la sala de control central o incluso puede ser enviado a un cliente remoto. El plazo máximo para la recepción de imágenes
o streaming de vídeo desde que se solicitan hasta que el usuario las
visualiza es típicamente menor o igual a 3 s.
2. El ruido e interferencias provenientes de la maquinaria instalada en
la estación remota (entorno industrial), ver [CDD06]. Estos entornos
5
i
i
i
i
Capítulo 1. Introducción
provocan cortes y fallos en la comunicación que deben tenerse en cuenta
a la hora de ofrecer servicios con ciertos requerimientos temporales.
3. La movilidad de los operarios que actúan como nodos receptores a la
vez de routers, del tamaño de la zona en la que estos operarios se mueven, de la propia tecnología inalámbrica utilizada, etc. ver [BCDP05,
BCDG05, RRC06]. Estos factores provocan inestabilidad en las rutas
provocando rupturas en las mismas por lo que se hace necesario estudiar mecanismos para su recuperación y el tiempo necesario para
obtener rutas alternativas y determinar si los servicios a ofrecer por la
red inalámbrica generada pueden ofrecerse.
Las redes inalámbricas generadas espontáneamente en las estaciones remotas
de la instalación son redes ad hoc ya que los propios operarios/nodos actúan
como routers a la hora de transmitir la información al destino. Las redes ad
hoc permiten que los dispositivos inalámbricos puedan estar interconectados
formando redes de comunicación sin infraestructura. El encaminamiento en
entornos inalámbricos y particularmente en redes ad hoc es muy cambiante sobre todo cuando se trata de nodos móviles (MANET - Mobile Ad hoc
Network) [Per98], por esta razón los protocolos de encaminamiento convencionales no son útiles en estos entornos para soportar los servicios descritos.
La inclusión de redes ad hoc inalámbricas en entornos industriales conlleva ciertos problemas: errores debidos a interferencias que dificultan la creación de rutas en los tiempos establecidos, roturas de rutas activas debido a la
movilidad de los nodos, al ruido del medio o a la propia tecnología utilizada
y dificultad a la hora de obtener una ruta alternativa tras una pérdida de
comunicación, lo que provoca problemas a la hora de establecer una comunicación o errores y pérdidas durante la misma.
Estos problemas deben ser evaluados y dimensionados, ya que en los procesos industriales y de manufacturación se deben suministrar productos y
servicios de calidad. Para conseguirlo la producción debe ser flexible y estar
constantemente actualizada mejorando los productos y servicios; debe haber
un control de calidad, lo que implica una coordinación en la adquisición y
6
i
i
i
i
Capítulo 1. Introducción
análisis de los datos; se debe reaccionar a tiempo para ofrecer buenos servicios, ser competitivos y conseguir buena imagen, ver [LS+ 05].
1.2. Motivación y objetivos
La integración de las redes ad hoc en situaciones reales se está convirtiendo en algo cada vez más común y los sistemas de supervisión y control
no son una excepción. En un entorno de este tipo pueden aparecer nodos
móviles de forma espontánea formando una red ad hoc para comunicarse
entre sí con el fin de llegar finalmente a un nodo fijo que les puede ofrecer
la información del resto del sistema en tiempo real o actuar como puerta de
entrada a otras redes remotas. La eficacia de la comunicación en estas redes
se rige por la zona de trabajo, el número de nodos, la movilidad, la potencia
de transmisión, etc.
Aunque el estudio de las redes ad hoc ha sido muy importante en los últimos años, todavía hay muchos aspectos que mejorar y estudiar. En el caso del
modelado, no hay modelos formales que tengan en cuenta una red completa
con conocimiento de toda la topología y donde los nodos sean móviles.
Generalmente los estudios mediante modelos ya sea con resolución analítica o mediante simulación no consideran qué aplicación tendrá la red evaluada, por lo que los resultados ofrecidos difícilmente pueden ser extrapolados
al comportamiento de una red real. Del mismo modo en las implementaciones reales existen pocos estudios dedicados a entornos industriales.
El trabajo realizado por el grupo de investigación en distintos convenios
con el Ayuntamiento de Valencia y en proyectos de investigación tanto locales como nacionales4 , todos ellos relacionados con las tecnologías de comunicaciones y su uso en entornos metropolitanos e industriales que albergan
sistemas que requieren la incorporación de servicios avanzados, han ofrecido
la posibilidad de estudiar la incorporación de las redes ad hoc en estos tipos
de sistemas así como sus beneficios o inconvenientes.
4 En
el apéndice E se hace referencia a los proyectos más destacados.
7
i
i
i
i
Capítulo 1. Introducción
Los motivos por los que se emprendió este trabajo de investigación se
resumen en los objetivos a alcanzar tras la finalización del mismo:
1. El objetivo principal de la tesis es analizar el comportamiento de las
MANET en entornos de tipo industrial y estudiar cómo afecta a su
funcionamiento y a los servicios ofrecidos el movimiento de los nodos
principalmente, aunque existan otros factores que también repercutan
en el resultado.
Para ello se deberán estudiar y definir en primer lugar los servicios a
ofrecer en este tipo de instalaciones. Los servicios típicos de tiempo real
en entornos industriales son alertas y streaming de vídeo. Se evaluará
bajo qué condiciones los servicios pueden ser ofrecidos, por ejemplo, se
estudiará el retardo máximo permitido desde que se produce una alerta
hasta su recepción por parte del usuario suscrito y el retardo máximo
para la recepción de streaming de vídeo o imágenes a petición de un
supervisor de la instalación en función de la movilidad, tamaño del
área, velocidad, etc.
Los servicios a ofrecer deben cumplir unos mínimos de QoS, los parámetros típicos de encaminamiento para proporcionar QoS son el retardo, jitter, ancho de banda y tasa de pérdidas. Ofrecer QoS en una red
ad hoc se ha convertido en un punto crítico en el diseño de las redes
ad hoc inalámbricas debido a la necesidad de ofrecer aplicaciones multimedia en dichas redes. Muchos de los esfuerzos se han centrado en el
diseño de los protocolos de acceso al medio, sin embargo, desasociar el
encaminamiento de la provisión de QoS puede dar como resultado una
elección ineficiente de rutas y esto reduce la probabilidad de obtener
los requerimientos de QoS cuando lleguen las solicitudes de comunicación. Existen trabajos que tratan el soporte de la QoS en redes ad hoc,
concretamente en [DR07] se propone una variación del protocolo de encaminamiento AODV denominada SD-AODV (Service DifferentiationAd Hoc On-Demand Distance Vector), donde las solicitudes de ruta se
suprimen en ciertos nodos para mantener los requerimientos de QoS
8
i
i
i
i
Capítulo 1. Introducción
deseada para los flujos de tiempo real. El objetivo de la QoS de encaminamiento (QoS routing) es doble, en primer lugar seleccionar los
caminos que pueden satisfacer los requisitos de QoS tras la solicitud de
comunicación y en segundo lugar lograr una eficiencia global en la utilización de los recursos, ver [ZM05]. Se deberá evaluar si el protocolo
escogido ofrece la QoS deseada aunque en este caso no sea un protocolo
que soporte QoS routing.
2. Diseño de modelos matemáticos que permitan representar el comportamiento de las redes ad hoc, que pueden generarse en ambientes industriales, y de este modo poder conocer cómo afecta el movimiento de
los nodos y cómo el protocolo de encaminamiento utilizado reacciona
para poder ofrecer los servicios de tiempo real típicos de este tipo de
escenarios definidos en el primer objetivo. Se diseñarán y resolverán
modelos matemáticos inicialmente simples para terminar con modelos
más complejos que puedan representar una red ad hoc completa.
El objetivo es diseñar toda la red, no interesa únicamente evaluar el
comportamiento del protocolo en un solo nodo o entre fuente y destino
representando de forma general el resto de la red que es lo habitual, como lo demuestra la existencia de varios trabajos, ver [ZZ03, MLSPC03].
El objetivo es modelar la red completa, pero no para estudiar el correcto funcionamiento del protocolo como se ha hecho en otros trabajos,
ver [XMT02, XML04, MHW04], sino para estudiar si la red ad hoc con
las características del escenario escogido puede ofrecer los servicios típicos. Además se modelará el movimiento de los nodos, puesto que
es este uno de los factores más influyentes durante una comunicación
entre origen y destino. El hecho de tener en cuenta la topología de la
red o escenario completo y modelar el movimiento de todos los nodos
que lo forman tiene una complejidad añadida, la cambiante topología
de la MANET. La red tendrá las características observadas en el primer
objetivo en cuanto a número de nodos, velocidad media típica, tiempo
de solicitud del servicio, tamaño del área de trabajo, periodicidad de la
9
i
i
i
i
Capítulo 1. Introducción
búsqueda de ruta o solicitud de comunicación, etc. Los modelos permitirán variar fácilmente el valor de estas variables hasta encontrar los
valores que ofrezcan el resultado más equilibrado (número de nodos
- rutas encontradas, rango de transmisión radio - rutas encontradas y
mantenimiento de rutas, etc.).
Al tener en cuenta la topología completa de la red, cuando se solicite
comunicación entre dos nodos se deberá conocer la ruta exacta entre
origen y destino. Esto permite saber si el movimiento de alguno de los
nodos que pertenecen a la ruta útil provoca una ruptura o si por lo
contrario este movimiento no implica que la ruta se haya perdido. En
caso de ruptura, se deberá estudiar cómo reacciona el protocolo, cuánto
tiempo necesita hasta ofrecer una ruta alternativa y si esta ruta tiene
más o menos saltos que la que se estaba utilizando.
Además de estudiar la posible comunicación entre origen y destino la
primera vez que se solicita ruta para determinar si el protocolo es capaz
de ofrecer un camino correcto, se calculará el tiempo que necesita para establecerlo y se evaluará el comportamiento de la red durante una
comunicación continua durante el tiempo de selección del servicio. Son
muchos los factores que pueden afectar a una ruta ya establecida y a
la información que por ella se está transmitiendo, esta ruta puede perderse porque uno de los nodos se haya movido, puede haber errores en
la comunicación debido a interferencias pero la ruta debe recuperarse
para seguir ofreciendo la información solicitada.
3. Contrastar y verificar los resultados obtenidos con los modelos formales. Para ello se plantea la creación de un banco de pruebas donde realizar experimentos y obtener resultados que complementen los obtenidos
mediante los modelos matemáticos.
Con los modelos formales se obtendrán de forma sencilla resultados
que permitan tras la consecución del segundo objetivo determinar los
valores (tamaño de área, no de nodos, . . . ) más adecuados para que los
servicios tipificados en el primer objetivo puedan ser ofrecidos. Utili-
10
i
i
i
i
Capítulo 1. Introducción
zando estos valores se podrá implementar un banco de pruebas real
que verifique los resultados y que tenga en cuenta aquellos problemas
que pueden surgir en cualquier red inalámbrica y que el modelo no ha
podido representar para obtener los valores que permitirán determinar
si los servicios definidos pueden ofrecerse correctamente.
Estos valores serán el número medio de saltos que deben atravesar los
paquetes durante una comunicación, el tiempo medio de ruta definido
como el tiempo durante el cual la ruta es válida, el tiempo medio de
recuperación o tiempo que tarda en recuperarse una ruta perdida ya
sea la misma o una alternativa, etc.
Cabe tener en cuenta que aún siendo una implementación real el banco
de pruebas presentará ciertas limitaciones, las pruebas se realizarán en
interior y no se añadirá movilidad a los nodos (aunque sí pérdidas y
caídas de enlaces) para controlar más fácilmente la repetitividad de las
pruebas.
1.3. Metodología de trabajo
Con el fin de alcanzar los objetivos presentados se plantea un conjunto de
tareas como metodología a seguir:
1. Estudio y recopilación de información sobre sistemas de supervisión y
control en entornos industriales y/o urbanos, servicios a ofrecer, características y requerimientos para la definición del escenario.
La redes ad hoc plantean numerosos retos para la provisión de servicios por ejemplo a nivel de encaminamiento al ser redes cuya topología
y comportamiento son altamente dinámicos. Por ello, se deben identificar las necesidades de información para los usuarios, origen, destino,
requerimientos de red y equipos, y características de esta información
desde el punto de vista de sus parámetros básicos (principalmente el
11
i
i
i
i
Capítulo 1. Introducción
deadline y el jitter) para determinar si dichos requerimientos pueden
ser cumplidos por los protocolos de encaminamiento existentes.
En estos sistemas de supervisión hay muchas tecnologías de comunicaciones (red heterogénea) para comunicar las estaciones remotas con
la estación central. Es precisamente en las estaciones remotas donde se
generan las redes ad hoc a evaluar en este trabajo. En este sentido se
deben observar los sistemas industriales de supervisión y control de
grandes instalaciones. Concretamente se deben estudiar las distintas alternativas de comunicaciones que pueden formar la red heterogénea
de un entorno industrial de este tipo. Se debe analizar el acceso a la
información (alertas e imágenes) que los sistemas industriales pueden
ofrecer a un usuario remoto/móvil en tiempo real y el tipo de información de utilidad a los operarios y técnicos que trabajan en sistemas de
supervisión y control.
2. Estudio exhaustivo de protocolos de encaminamiento en redes ad hoc,
selección de un protocolo por sus características, propiedades y nivel
de desarrollo e implantación.
En esta etapa la investigación se debe centrar en el estudio de los distintos protocolos de encaminamiento en redes ad hoc y en la selección
de un protocolo para su evaluación. El protocolo AODV (Ad hoc Ondemand Distance Vector), ver [PR03], junto con el OLSR (Optimized
Link State Routing) (ver [JMC+ 01, CJ03]) está en estado experimental
en el IETF Working Group [IET]. Estos dos protocolos son actualmente
los más maduros desde el punto de vista de la implementación. Esta
es la razón por la que son dos de los protocolos más estudiados, son
varios los trabajos que comparan su funcionamiento tanto mediante
modelado, ver [Huh04, Hol05], como mediante bancos de prueba, ver
[BCDP05, Bor05, BCDG05, BCD+ 06, BD07, LUB07]
3. Estudio detallado de las características del protocolo escogido.
Se evaluará como realiza la búsqueda, mantenimiento y recuperación
12
i
i
i
i
Capítulo 1. Introducción
de ruta, como maneja la tabla de encaminamiento, tiempos entre búsquedas, reintentos permitidos, etc.
4. Elección y descripción del escenario de trabajo para los modelos formales.
Tomando como base la información obtenida tras el estudio de los sistemas de supervisión y control se elegirá un escenario que represente este
tipo de entornos. Los parámetros a elegir y describir son el tamaño de la
zona de trabajo, el número de nodos más representativo, la movilidad,
la velocidad de los nodos, la frecuencia con la que se deben realizar las
solicitudes de ruta, los tiempos a cumplir para que se puedan ofrecer
los servicios requeridos, etc.
5. Elección de la herramienta de modelado para la implementación de los
modelos formales.
Se elegirá la herramienta de modelado para implementar los modelos
que representen la red ad hoc a estudiar. Una vez elegida, se aprenderá
el manejo de dicha herramienta/s para asegurar la correcta utilización
e interpretación de resultados.
6. Desarrollo formal de modelos sencillos que representen una red ad hoc
completa cuyos nodos sean móviles.
Una vez conocidos los requerimientos se debe evaluar si una red ad hoc
con el protocolo de encaminamiento escogido es capaz de ofrecer los
servicios antes mencionados con la calidad requerida por este tipo de
aplicaciones. Para ello se realizarán los modelos formales que permitan
conocer según cuál sea el servicio, si la red puede proporcionar los
requerimientos de QoS y mantenerlos durante el tiempo que dure la
sesión.
7. Validación del modelo inicial.
El objetivo del modelo sencillo inicial es el de obtener de forma simple
un modelo que pueda servir como base a los modelos posteriores que
13
i
i
i
i
Capítulo 1. Introducción
se realizarán mediante ampliaciones y cambios hasta obtener el modelo
final. Por esto, el modelo inicial debe ser validado, su funcionamiento
debe ser corroborado de modo que los resultados obtenidos sean coherentes.
8. Implementación de modelos complejos que representen la red ad hoc
y en la que intervengan las características del protocolo de encaminamiento escogido.
En esta tarea y en la siguiente, se propone el modelado de una red ad
hoc que haga uso de un protocolo de encaminamiento. Este modelo
permitirá el estudio de la probabilidad de conexión o establecimiento de ruta cuando el nodo origen solicite información al nodo destino
(conexión directa (single-hop) entre origen y destino, o indirecta (multihop) donde se creará una ruta gracias a los vecinos más cercanos), la
evaluación de la duración de esas rutas, la posibilidad de recuperación
en caso de pérdida, etc.
9. Validación del modelo y verificación de comportamientos.
Al igual que con el modelo base, el resto de modelos deben ser validados y se debe verificar su comportamiento de modo que todos aquellos
resultados que puedan ser predecibles deben cumplirse.
10. Planificación de medidas.
El éxito o fracaso en la conexión, el número de intentos y el tiempo
para recuperar la ruta perdida vendrán determinados por distintos parámetros que deberán ser analizados: el tamaño del área de trabajo, el
número de nodos de la red, la cobertura radio de los nodos, la velocidad con la que se mueven y el modelo de movimiento utilizado. Es
necesario por ello realizar una planificación de medidas a realizar para que las resoluciones del modelo se realicen de forma ordenada, con
coherencia y con ellas se obtengan resultados que permitan evaluar los
parámetros que luego permitirán determinar el funcionamiento de la
red ad hoc implementada.
14
i
i
i
i
Capítulo 1. Introducción
11. Interpretación de resultados.
Tras la resolución de los distintos experimentos, se dará paso a la representación gráfica para interpretar los resultados obtenidos. Esta interpretación ofrecerá las respuestas a las cuestiones planteadas, ¿puede
una red ad hoc con el protocolo de encaminamiento escogido ofrecer
los servicios típicos de una gran instalación?, ¿en el caso de haberlas
cuáles son las restricciones?...
12. Ampliación de los modelos para representar aspectos como errores,
problemas en la comunicación...
En la transmisión de la información no solo intervienen los problemas surgidos por el protocolo de encaminamiento, también intervienen
otros factores como obstáculos, problemas del nodo oculto y nodo expuesto, errores por la pérdida de paquetes, etc. Sin embargo, hay que
dejar aspectos fuera del estudio por cuestiones de complejidad como
siempre, por lo que no se modelará al detalle el nivel físico de la red,
pero se tendrán en cuenta algunos de esos aspectos para que la red
tenga un comportamiento más realista.
Se observa tras el estudio de los trabajos de otros autores y después de
los trabajos preliminares la necesidad de dotar a los modelos del mayor realismo posible. En varios trabajos sobre pruebas reales los autores
manifiestan la dificultad de ofrecer servicios como streaming de vídeo o
voz. Estudios realizados por diversos autores establecen que para ofrecer encaminamiento eficiente con QoS sobre redes ad hoc inalámbricas,
deben ser estudiados más profundamente problemas como la escalabilidad, el control de potencia, el balanceo de energía y el diseño eficiente
de los protocolos MAC, ver [XS01]. En el caso actual, el modelado del
nivel físico se deberá simplificar realizándose diversas suposiciones, pero para dotar al modelo del mayor realismo posible se estudiará como
introducir retardos, pérdidas de paquetes en la transmisión y errores en
su implementación. Para ello el modelo deberá rehacerse, ampliándose
y modificando ciertas partes para obtener el funcionamiento deseado.
15
i
i
i
i
Capítulo 1. Introducción
13. Implementación real de un banco de pruebas formado por una red ad
hoc con el protocolo de encaminamiento escogido donde probar los
servicios definidos previamente.
14. Planificación y realización de las pruebas en el banco de pruebas diseñado.
El banco de pruebas se implementará con el objetivo de corroborar los
resultados obtenidos mediante los modelos formales además de ampliar los resultados obtenidos con los mismos por tratarse de un sistema
real.
Para que los resultados sean útiles y válidos se deben planificar con
detalle las pruebas a realizar. Posteriormente estas se deben llevar a
cabo con rigor siguiendo una temporalización, utilizando siempre el
mismo entorno, repitiendo los mismos experimentos varias veces ya
que los resultados pueden ser cambiantes puesto que en un entorno
real afectan muchos parámetros...
15. Análisis e interpretación de resultados.
Los resultados logrados con el banco de pruebas implementado junto
con los obtenidos mediante los modelos formales deben ser analizados
e interpretados para obtener una visión global sobre el comportamiento
de una red ad hoc que se genera de forma espontánea en un entorno
industrial para la transmisión de información de supervisión y control.
16
i
i
i
i
Capítulo 1. Introducción
1.4. Contribuciones
Las principales contribuciones de esta tesis son:
Estudio de sistemas reales de supervisión y control de grandes instalaciones. Concretamente se ha evaluado y comprobado el funcionamiento de distintos sistemas de comunicación, ver [SSAC03, SSA03, SSAD04,
SAS04a, SAS06, SSA07]. También se ha estudiado el acceso a la información (alertas e imágenes) que los sistemas industriales pueden ofrecer
a un usuario remoto/móvil en tiempo real y la información de utilidad para los operarios de estos sistemas, ver [SAS04b, ASSD05]. Se ha
realizado un análisis de los requerimientos y capacidades de las redes heterogéneas en aplicaciones distribuidas de ámbito metropolitano,
ver [SBSPAA10], y paralelamente se ha evaluado la monitorización de
secuencias de vídeo en un entorno industrial, las características y la
calidad de imagen obtenida, ver [SSA04].
Estudio del encaminamiento en redes inalámbricas, [AS10].
Desarrollo de modelos formales que han permitido:
a) estudiar si el destino es alcanzable en un entorno móvil variando
el tamaño de la zona de trabajo, la tasa de solicitud de ruta, la tasa
de movilidad y el rango de cobertura radio, [ASM06].
b) determinar el número de nodos para cubrir el área del tamaño
deseado de forma satisfactoria.
c) evaluar los beneficios en el ahorro de energía derivados de la utilización del encaminamiento multi-hop donde el nodo origen hace
uso de los nodos vecinos para que la información pueda alcanzar
el destino identificando cual es la cobertura radio más adecuada
por ofrecer un equilibrio entre ahorro de energía y número de comunicaciones satisfactorias, [ASM07].
17
i
i
i
i
Capítulo 1. Introducción
d) evaluar el comportamiento temporal de un protocolo de encaminamiento reactivo. Se ha evaluado el tiempo que tarda en establecerse la ruta, el tiempo que se mantiene activa y el tiempo durante el cual el envío de información está en espera porque la
ruta se ha roto y el protocolo está buscando una ruta alternativa, [AASPMO09, AASPMO10].
e) estudiar la aplicabilidad de las redes de Petri y SAN a sistemas
y escenarios de gran complejidad y dinámica: ventajas, beneficios,
limitaciones, etc.
Creación de un banco de pruebas para el estudio del comportamiento
del protocolo AODV en una red ad hoc multi-hop estática donde los nodos transmiten tráfico multimedia, [AASCSPMO09a, AASCSPMO09b].
1.5. Estructura de la tesis
Esta tesis está organizada en 8 capítulos. En éste se han presentado las
motivaciones que han conducido a su desarrollo, así como sus objetivos, metodología y contribuciones. El resto de capítulos está organizado del siguiente
modo.
En el capítulo 2 se presenta una introducción a las redes ad hoc móviles
(MANET), se realiza una clasificación de los protocolos de encaminamiento
en redes ad hoc más importantes, una comparativa entre protocolos y se
describe el funcionamiento del protocolo de encaminamiento escogido para
ser utilizado y evaluado en el escenario de trabajo.
Las distintas herramientas de modelado y evaluación utilizadas para estudiar el comportamiento de las redes de comunicaciones ad hoc se presentan
brevemente en el capítulo 3 y se estudian con detalle las características de las
redes de actividad estocástica (SAN) utilizadas en la tesis para el diseño de
los modelos formales.
18
i
i
i
i
Capítulo 1. Introducción
En el capítulo 4 se presenta el escenario de trabajo donde se estudia: el
área de trabajo utilizada, el número de nodos a distribuir en la zona, el
tamaño de la misma, el rango de cobertura radio de los nodos, la tasa de
búsquedas o intentos de comunicación y se evalúan los distintos modelos
de movimiento. También se evalúan los servicios a ofrecer a los usuario que
hacen uso de este tipo de sistemas.
En el capítulo 5 se muestran los modelos formales implementados empezando por los modelos sencillos en una dimensión y terminando por los
modelos más complejos donde se presenta una red ad hoc en un plano bidimensional donde el protocolo de encaminamiento tiene un comportamiento
reactivo. Esto permite que en el capítulo 6 se estudie si el destino es alcanzable, el establecimiento y el mantenimiento de ruta, todo ello para determinar
si el comportamiento de un protocolo de este tipo permite que una red ad
hoc móvil pueda ofrecer los servicios definidos.
La estructura del banco de pruebas y los experimentos realizados se muestran en el capítulo 7. Se han realizado experimentos para comprobar el funcionamiento del protocolo y posteriormente se han hecho modificaciones en
los parámetros del mismo para adaptar su comportamiento al tipo de tráfico
que interesaba evaluar, en concreto tráfico multimedia, uno de los servicios
a ofrecer por los sistemas industriales utilizados como escenario ejemplo en
esta tesis.
La revisión de los objetivos, las conclusiones de este trabajo de tesis y las
líneas de trabajo futuro se presentan en el capítulo 8.
Para finalizar se presentan los distintos apéndices que complementan la
tesis: en A se muestran las abreviaturas y acrónimos utilizados en la tesis,
en B se hace referencia a la notación utilizada, los apéndices C.1, C.2 y C.3
contienen información adicional que complementa en caso necesario la información ofrecida en los distintos capítulos, las publicaciones aportadas gracias
al trabajo de tesis se enumeran en D y en el apéndice E se mencionan los proyectos en los que se ha participado y que están en el ámbito de la tesis.
Finalmente se presentan las referencias bibliográficas utilizadas.
19
i
i
i
i
i
i
i
i
Capı́tulo
2
Mobile ad hoc networks
En este capítulo se definen y clasifican las redes inalámbricas, centrando
la atención especialmente en las redes ad hoc y los protocolos de encaminamiento que en ellas se utilizan.
Se realiza una breve comparativa entre los protocolos de encaminamiento
más avanzados a nivel de estandarización y se escoge el protocolo a utilizar en los estudios realizados a lo largo de la tesis por ser el que mejor
se adapta a las necesidades de la red según el escenario de trabajo.
Finalmente se evalúa en detalle el funcionamiento de este protocolo, analizando los mecanismos utilizados para realizar el descubrimiento, mantenimiento y recuperación de rutas.
21
i
i
i
i
Capítulo 2. Mobile ad hoc networks
Figura 2.1: Clasificación de redes inalámbricas (WPAN, WLAN, WMAN,
WWAN)
2.1. Antecedentes, definición y características
Las redes inalámbricas permiten la comunicación entre dispositivos a través de un medio inalámbrico mediante ondas electromagnéticas. Ofrecen flexibilidad y rapidez en la implantación de la red, necesitan menos mantenimiento que las redes cableadas y permiten la movilidad.
Existen distintos modos de clasificar las redes inalámbricas, el más común
es el basado en su propósito y rango de transmisión radio. Dependiendo de
estos aspectos, las redes inalámbricas pueden dividirse en cuatro grupos:
Wireless Personal Area Networks (WPAN), Wireless Local Area Networks
(WLAN), Wireless Metropolitan Area Networks (WMAN) y Wireless Wide
Area Networks (WWAN), ver Fig. 2.1.
Las Wireless Personal Area Networks, interconectan dispositivos en
áreas pequeñas. El estándar utilizado es IEEE 802.15.1 basado en las
especificaciones de Bluetooth. El estándar IEEE 802.15.4, [Com06], fue
22
i
i
i
i
Capítulo 2. Mobile ad hoc networks
aprobado en 2004 y promovido por la ZigBee Alliance, ha sido desarrollado para permitir aplicaciones que no necesiten un excesivo ancho de
banda y puedan permitirse retardos, donde lo más importante es maximizar el tiempo de vida de las baterías. Estas aplicaciones se ejecutan
por ejemplo en plataformas de sensores.
Las Wireless Local Area Networks agrupan tecnologías basadas en HiperLAN (High Performance Radio LAN) un grupo dentro del ETSI (European Telecommunications Standards Institute) y Wi-Fi estandarizado
bajo las series IEEE 802.11.
Las Wireless Metropolitan Area Networks conectan varias redes LAN.
WiMAX es el término utilizado para referirse a las WMAN (IEEE 802.16d,
802.16e).
Las Wireless Wide Area Networks con tecnologías como UMTS (Universal mobile telecommunication system), GPRS (General packet radio
service) y GSM (Global system for mobile communication).
Fuera de esta clasificación están las Wireless Mesh networks (WMN), las redes mesh tienen presencia en los cuatro grupos. Por ejemplo, IEEE ha creado un grupo de trabajo para definir como las redes mesh trabajan con las
redes 802.11 (WLAN). Las redes 802.11s, ver [sTG09], incluyen dos mecanismos de encaminamiento, una solución híbrida entre el protocolo AODV (Ad
hoc On-Demand Distance Vector) y el OLSR (Optimized Link-State Routing
protocol), [LZKS04]. El estándar 802.16 (WMAN) es compatible con las redes
malladas, ver [STS04], aunque no es compatible con el estándar IEEE 802.116e
para redes inalámbricas metropolitanas. El estándar IEEE 802.15 define una
capa física y MAC de las redes WPAN y el grupo de trabajo IEEE 802.15.5,
ver [(TG], está estudiando como establecer una arquitectura mesh en este tipo
de redes.
Las redes mesh tienen una organización completamente plana y sin jerarquías para cubrir todas las áreas. Una WMN se define como una red compuesta por routers mesh y clientes mesh. Los routers tienen una movilidad
23
i
i
i
i
Capítulo 2. Mobile ad hoc networks
mínima y forman el esqueleto de la red y los clientes mesh pueden ser estáticos o móviles, y pueden crear una red mesh entre ellos y con los routers
mesh. En este esquema, cada nodo actúa no sólo como receptor sino también
como emisor, reenviando paquetes de otros nodos que no están dentro del
alcance directo del rango de transmisión radio de sus destinos [AWW05].
Si se usa el término WMN en un sentido amplio para denotar cualquier
tipo de red multi-hop, independientemente de la tecnología inalámbrica que
se utilice o las características hardware de los dispositivos, una red ad hoc
puede ser entendida como un subconjunto de las WMNs, por la falta de
infraestructura.
Una MANET es una estructura de red autónoma compuesta por varios
nodos inalámbricos móviles formando una red temporal sin ningún tipo de
administración centralizada. En este tipo de entorno puede ser necesario que
un nodo necesite a sus vecinos para alcanzar el destino debido al limitado
rango de propagación de cada nodo, para encaminar la información hacia el
destino hacen uso de los distintos protocolos de encaminamiento existentes.
2.2. Encaminamiento en redes ad hoc
2.2.1.
Clasificación de protocolos de encaminamiento
Para analizar un protocolo de encaminamiento se necesitan métricas, cualitativas y cuantitativas, con las cuales medir su desempeño y capacidades.
Estas métricas permiten clasificar los distintos protocolos según diferentes
criterios:
1. Según el tipo de información que intercambian los nodos y la frecuencia
con la que se lleva a cabo el intercambio, se dividen en tres categorías,
ver [AWD04]:
Protocolos proactivos, mantienen permanentemente actualizadas
las rutas a través del intercambio periódico de mensajes.
24
i
i
i
i
Capítulo 2. Mobile ad hoc networks
Protocolos reactivos, descubren nuevas rutas a demanda, es decir,
cuando se precisa localizar la ruta.
Protocolos híbridos, combinan las características de los dos anteriores.
2. Según el alcance de los protocolos, se dividen en:
Protocolos de alcance simple (Single Scope).
Protocolos de alcance múltiple (Multi Scope).
Protocolos de enrutamiento geográfico (Geographically-Routed).
3. Según el tipo de algoritmo de encaminamiento que utilizan los protocolos, se dividen en:
Protocolos basados en el algoritmo de vector distancia (Distance
vector). Los protocolos que utilizan esta técnica mantienen una tabla para la comunicación y emplean la difusión (no inundación)
para el intercambio de información entre sus vecinos.
Protocolos basados en el algoritmo de estado de enlace (Link state).
Esta técnica mantiene una tabla con la topología completa de la
red. La topología se construye encontrando el camino más corto
en términos de coste de enlace. Este coste se intercambia continuamente entre todos los nodos a través de la técnica de inundación
(flooding). Cada nodo actualiza su tabla de encaminamiento utilizando la información del coste de enlace. Esta técnica puede causar
bucles en aquellas redes que cambian rápidamente de topología,
ver [Moy95].
Protocolos basados en encaminamiento en origen (source routing).
En este caso, todos los paquetes de datos tienen la información
de encaminamiento en su cabecera. El nodo origen toma la decisión del encaminado. Con esta técnica se pueden evitar los bucles,
pero la sobrecarga es significativa. No es una técnica eficiente en
topologías con rápido movimiento.
25
i
i
i
i
Capítulo 2. Mobile ad hoc networks
4. Además de estas clasificaciones existen otras a tener en cuenta.
Protocolos dinámicos o estáticos. Un protocolo de encaminamiento
dinámico o adaptativo cambia su comportamiento de acuerdo al
estado de la red, mientras que uno estático no lo hace.
Protocolos centralizados o distribuidos. Un protocolo de encaminamiento dinámico puede ser clasificado como centralizado o distribuido. La clasificación se basa en qué nodos realizan las decisiones de encaminamiento. En un protocolo de encaminamiento
distribuido todos los nodos son responsables de realizar sus propias decisiones de encaminado. Sin embargo, en un protocolo de
encaminamiento centralizado las decisiones se llevan a cabo en un
nodo central. Un ejemplo de protocolo centralizado son los protocolos de encaminamiento basados en clusters, donde el nodo
central llamado clusterhead es el responsable del proceso de encaminamiento.
Centrando la atención en la primera de las clasificaciones, se van a enumerar los protocolos de encaminamiento para redes ad hoc según la categoría a
la que pertenecen.
Proactivos: Estos algoritmos tratan de mantener la información necesaria
para el encaminamiento continuamente actualizada en sus tablas. Cada nodo mantiene una o más tablas con los datos para encaminar hacia cualquier
otro nodo de la red. Los cambios en la topología de la red propician el envío
masivo de paquetes para mantener las tablas actualizadas. Como características generales de los protocolos proactivos se puede decir que exigen una
respuesta rápida, se utilizará en redes donde se necesite que el procedimiento de descubrimiento de ruta no tenga una latencia excesiva pero a su vez
se pueda asumir un consumo elevado de recursos como ancho de banda y
energía. En la mayoría de los protocolos proactivos, la sobrecarga de los mensajes de control crece con O(N 2 ), donde N representa el número de nodos en
la red. Los protocolos de este tipo difieren en el número de tablas utilizadas
y en la política de envío de paquetes para mantener las tablas actualizadas.
26
i
i
i
i
Capítulo 2. Mobile ad hoc networks
Las técnicas proactivas típicamente hacen uso de algoritmos como el vector
de distancia y el estado de enlace.
Algunos algoritmos que pertenecen a esta categoría son: DSDV (The Destination-Sequenced Distance-Vector Routing Protocol) [PB94], WRP (The Wireless
Routing Protocol) [MGLA95, MGLA96], GSR (Global State Routing) [CG98], FSR
(Fisheye State Routing) [GHP02], STAR (Source-tree Adaptive Routing) [GLAS99],
DREAM (Distance Routing Effect Algorithm for Mobility) [BCSW98], MMWN
(Multimedia support in Mobile Wireless Networks) [KR97], CGSR (Cluster-head
Gateway Switch Routing) [CWLG97], HSR (Hierarchical State Routing) [PGHC99],
OLSR (Optimised Link State Routing) [JMC+ 01], TBRPF (Topology Broadcast Reverse Path Forwarding) [OTL04].
Reactivos: A diferencia de los algoritmos basados en tablas, las rutas en
este tipo de protocolos son creadas solo cuando se requieren (bajo demanda).
Cuando un nodo necesita una ruta hacia un destino concreto se inicia un
proceso de descubrimiento de ruta. Este proceso termina cuando se encuentra un camino hacia el destino o cuando se examinan todas las alternativas
y ninguna lleva al destino final. Cuando la ruta es descubierta, es necesario
mantenerla (mantenimiento de ruta) hasta que el destino se vuelva inalcanzable o la ruta deje de ser necesaria. Como características comunes destacar
que aunque los recursos de la red como energía y ancho de banda se utilicen
de forma más eficiente que en los protocolos proactivos, existe una latencia
elevada para el primer paquete. Por otra parte, aunque la topología cambie,
una ruta individual vive cierto tiempo y existe cierta independencia entre
rutas. Los algoritmos de encaminamiento utilizados en los protocolos de encaminamiento reactivos son, vector de distancia y encaminamiento en origen.
La sobrecarga de los mensajes intercambiados durante el descubrimiento de
ruta crecen según O(N+M) si existe un enlace inverso, donde N representa el número de nodos en la red y M el número de nodos en el camino de
respuesta; para los enlaces unidireccionales la sobrecarga crece según O(2N).
Algunos ejemplos de este tipo de protocolos son: AODV (Ad Hoc OnDemand Distance Vector Routing) [PR99], DSR (Dynamic Source Routing) [JM96,
27
i
i
i
i
Capítulo 2. Mobile ad hoc networks
JMB01], LMR (Lightweight Mobile Routing) [CE95], TORA (Temporary Ordered
Routing Algorithm) [PC97, PC98], ABR (Associative-Based Routing) [Toh96], SSR
(Signal Stability Routing) o SSA (Signal Stability Adaptive) [DRWT97], ROAM
(Routing On-demand Acyclic Multi-path) [RGLA99], RDMAR (Relative Distance
Micro-discovery Ad hoc Routing) [AT99], LAR (Location Aided Routing) [KV98],
ARA (Ant-colony-based Routing Algorithm) [GSB02], FORP (Flow Oriented Routing Protocol) [SU99], CBRP (Cluster-based Routing Protocol) [JJT99], DYMO
(Dynamic MANET On-demand Routing) [BRCJP04].
Híbridos: Los protocolos de este tipo mezclan las características de los
anteriores, proactivos y reactivos. Están diseñados para aumentar la escalabilidad y reducir la sobrecarga que implica el descubrimiento de rutas. Esto
es posible mediante un mantenimiento de rutas proactivo para los nodos cercanos y una determinación de rutas para los nodos lejanos mediante una
estrategia de descubrimiento de ruta. La mayoría de los protocolos híbridos
se basan en una partición de la red, otros agrupan los nodos en árboles o
clusters.
Algunos de los protocolos híbridos son: ZRP (Zone Routing Protocol) diseñado a partir de los protocolos IARP, IERP (Intrazone/Interzone Routing Protocols) y BRP (Bordercast Resolution Protocol) [Haa97], ZHLS (Zone-based Hierarchical Link State) [JNL99], SLURP (Scalable Location Update Routing Protocol)
[WS01], DST (Distributed Spanning Trees based Routing Protocol) [RRR+ 99],
DDR (Distributed Dynamic Routing) [NLB00].
2.2.2.
Comparativa de protocolos de encaminamiento
El estudio de las redes ad hoc se ha intensificado durante la última década,
aportando a la comunidad científica diversos protocolos de encaminamiento,
testbeds y experimentos reales, simulaciones para el estudio y mejora de los
protocolos diseñados y aún así sigue habiendo todavía mucho que investigar
y perfeccionar. En [CCL03] se ofrece una visión general de las MANET, su
evolución junto con las distintas tecnologías inalámbricas, las características
de estas redes, aplicaciones y limitaciones, en definitiva desafíos y problemas
28
i
i
i
i
Capítulo 2. Mobile ad hoc networks
que deberían ser investigados. Prueba del interés generado por estas redes es
la existencia a día de hoy de trabajos que siguen estudiando y comparando
el comportamiento de diversos protocolos de encaminamiento, ver [KRH08],
al igual que hace más de una década, ver [BMJ+ 98].
Aunque son muchos los protocolos de encaminamiento diseñados, son
solo algunos los que han conseguido un protagonismo destacado en los estudios de los distintos investigadores, estos protocolos son el DSDV, protocolo
de encaminamiento proactivo [PB94], diseñado por Charles E. Perkins basado
en el algoritmo básico de vector de distancia o Bellman-Ford que fue mejorado para evitar bucles utilizando números de secuencia. El protocolo reactivo
basado en fuente DSR diseñado por Johnson y Maltz, ver [JM96, JMB01]. El
AODV, protocolo de encaminamiento reactivo cuyo funcionamiento se presenta por primera vez en [PR99]. Este fue diseñado por Perkins y Roger a
partir del protocolo proactivo DSDV, la mejora consistía en minimizar los
mensajes broadcast necesarios para encontrar ruta. Además este protocolo
ha sido ampliamente estudiado, cabe destacar al respecto dos trabajos sobre
el protocolo de los mismos autores, ver [RP99, RP00]. Otro de los protocolos estudiados en profundidad es el protocolo de estado de enlace OLSR,
ver [JMC+ 01]. Algunos de estos protocolos además coinciden con aquellos
que están en un nivel más avanzado de estandarización y han sido promovidos por el IETF MANET Working Group que ha publicado sus especificaciones como Experimental RFC. Concretamente son AODV [PR03], OLSR [CJ03],
TBRPF [OTL04] y DSR [JHM07].
Muchos estudios de estos protocolos se basan en la comparación de sus
características y funcionamiento. En [BMJ+ 98] se muestra mediante simulaciones una comparativa de distintos protocolos de encaminamiento utilizando la herramienta ns-2 con 50 nodos móviles. Se presentan modificaciones en
el simulador de redes ns para el modelado del MAC y así conseguir un comportamiento adecuado de la capa física del estándar IEEE 802.11. En [MBJJ99]
utilizando también el simulador de redes ns-2 se ha evaluado el funcionamiento de un protocolo reactivo. Concretamente el protocolo evaluado es el
DSR en un escenario cuadrado o rectangular con 50 nodos, pero los resulta-
29
i
i
i
i
Capítulo 2. Mobile ad hoc networks
dos pueden ser aplicados a otros protocolos reactivos como TORA, AODV y
ZRP. Se ha evaluado la latencia y coste del descubrimiento de ruta así como el
efecto de un comportamiento reactivo en la consistencia de la cache de rutas.
El ns-2 es de nuevo el analizador de redes utilizado para comparar el DSR y
AODV en [DPR00]. Se hicieron tests variando la carga de red, el tamaño y
la movilidad de los nodos. [RT99] es otro de los primeros documentos donde se comparan protocolos de encaminamiento. Concretamente se evalúan
ocho protocolos de encaminamiento para redes ad hoc basándose en una
serie de parámetros como números de secuencia, número de tablas de encaminamiento que necesitan, filosofía de encaminamiento (plano o jerárquico),
complejidad temporal, etc. No se realiza simulación alguna, se clasifican los
protocolos según sean reactivos o proactivos y se realiza una comparación
general de su comportamiento. Otros estudios donde se comparan los protocolos OLSR y AODV son [Huh04, Hol05].
Los estudios comparativos no solo se han realizado de forma matemática sino también mediante experimentos reales en distintos bancos de prueba
implementados. En [BCDP05, Bor05] se describen experimentos reales donde
se contrasta el comportamiento de los protocolos AODV y OLSR utilizando
un número de nodos en un rango entre 5 y 12 nodos (portátiles y PDAs). Estos mismos protocolos son comparados mediante muchos otros experimentos
reales, ver [LUB07, BCDG05, BCD+ 06, BD07]. Dado que son dos de los protocolos de encaminamiento para redes ad hoc más estudiados la elección se
centrará en uno de ellos.
OLSR y AODV. OLSR es un protocolo proactivo eficiente en redes con alta
densidad de nodos y con tráfico muy esporádico, pero su escalabilidad está limitada cuando el tamaño de la red aumenta. El tamaño de la tabla de
encaminamiento aumenta de forma no lineal y los mensajes de control pueden bloquear los paquetes de datos. OLSR necesita utilizar continuamente el
ancho de banda y necesita más energía porque está constantemente actualizando las tablas en lugar de recibir los mensajes de actualización únicamente
cuando hay cambios en la topología. Este es a su vez uno de sus principa-
30
i
i
i
i
Capítulo 2. Mobile ad hoc networks
les beneficios, la reducción de la sobrecarga que conllevan los mensajes de
control, principalmente se beneficia cuando el conjunto de MPRs1 es lo más
pequeño posible. OLSR no necesita tiempo extra para el descubrimiento de
ruta. Puede mejorar su comportamiento acortando el intervalo de tiempo
de los mensajes de control para detectar antes los cambios de topología. En
cuanto a la calidad del servicio, OLSR conoce inmediatamente el estado del
enlace y se puede extender la calidad de servicio, conociendo los nodos la
calidad de la ruta anticipadamente. Por otra parte si se le añade calidad de
servicio al protocolo, esto implica mayor latencia y sobrecarga en la red. En
general se puede decir que los protocolos proactivos son más eficientes en
redes con tráfico disperso, porque las actualizaciones son periódicas y no hay
sobrecarga adicional. Por otra parte, utilizan más ancho de banda y más recursos. Los protocolos proactivos no deben utilizarse cuando los recursos son
críticos.
El protocolo AODV es una mejora del DSR, utiliza las tablas de encaminamiento para que los paquetes no tengan que llevar la información de
encaminamiento en la cabecera, esto reduce el tamaño de los paquetes que
puede afectar negativamente a las prestaciones, principalmente cuando las
cabeceras son muy grandes y el tamaño de los datos es pequeño. El AODV
se comporta mejor en redes con tráfico estático y con un número de nodos
relativamente pequeño. Utiliza menos recursos que el OLSR porque el tamaño de los mensajes de control es pequeño necesitando menos ancho de banda
para mantener las rutas y la tabla de encaminamiento es también pequeña
reduciendo la potencia de cálculo. El AODV puede ser usado en entornos
con recursos críticos. El principal inconveniente es la sobrecarga relacionada
con el descubrimiento de ruta y la actualización de las rutas útiles. AODV necesita descubrir la ruta antes de enviar los datos, aumentando la latencia del
tiempo de búsqueda. La mayor cantidad de paquetes se intercambia durante
1 Los
multipoint relays (MPRs) de un nodo son aquellos vecinos escogidos de manera que
cada vecino a dos saltos del nodo sea un vecino que esté a un salto de un multipoint relay del
nodo en cuestión. Cada nodo transmite su lista de vecinos en mensajes periódicos, de forma que
todos los nodos puedan saber cuales son sus vecinos situados a dos saltos, para poder escoger
sus multipoint relays.
31
i
i
i
i
Capítulo 2. Mobile ad hoc networks
la búsqueda de ruta. En general en una red con poco tráfico y poca movilidad los protocolos reactivos escalan perfectamente a grandes redes con poco
ancho de banda y sobrecarga de almacenamiento.
Ambos protocolos tienen una escalabilidad restringida debido a sus características proactivas y reactivas. En el AODV es la sobrecarga de la inundación de mensajes en las redes con elevada movilidad, en el OLSR es el
tamaño de la tabla de encaminamiento y los mensajes de actualización de la
topología.
En la Fig. 1.1 del capítulo 1, se muestra un esquema del sistema de supervisión y control diseñado gracias a los distintos convenios de colaboración
con el Ayuntamiento de Valencia y proyectos de investigación nacionales, ver
anexo E. En él se representan dos estaciones remotas y la estación central,
además de posibles clientes remotos. En las redes de saneamiento de agua2
cuando se genera una red ad hoc en una estación remota, los nodos móviles
están representados por los técnicos y usuarios que supervisan la instalación, no más de 5 ó 6 personas. La red ad hoc tiene un tamaño pequeño,
sus nodos una velocidad moderada, con consultas de información esporádicas y en algunos casos se pueden solicitar recursos críticos (alertas). Para
el acceso a la información se utilizan ordenadores portátiles, PDA o incluso
teléfonos móviles, equipos que utilizan batería para su funcionamiento y no
pueden permitirse un uso constante de energía. Además, estos dispositivos,
especialmente las PDA y los teléfonos móviles no tienen una gran capacidad
de procesamiento. Por todo ello, para el estudio a realizar se ha seleccionado
el protocolo de encaminamiento reactivo AODV.
2 Se
ha tomado como ejemplo este tipo de instalaciones por el conocimiento adquirido gracias
a los diferentes proyectos, pero podría ser cualquier otra gran instalación como una red de
distribución de gas o electricidad.
32
i
i
i
i
Capítulo 2. Mobile ad hoc networks
2.3. Ad hoc On-demand Distance Vector
2.3.1.
Introducción
El Ad-hoc On-Demand Distance Vector (AODV) es un protocolo de enrutamiento, experimental definido en 2003 en la RFC 3561, para redes móviles
ad hoc y otros tipos de redes ad hoc inalámbricas. Está desarrollado conjuntamente por los Centros de Investigación de Nokia de las Universidades de
Santa Bárbara (California) y Cincinnati por C. Perkins, E. Belding-Royer y S.
Das.
El AODV permite un enrutamiento dinámico, auto-iniciable y multi-salto
entre los nodos inalámbricos que participan en la red ad hoc. Teóricamente
permite redes con centenares de nodos y puede manejar tasas de movilidad
bajas, moderadas y relativamente altas, así como una gran variedad de niveles de tráfico. No implementa ningún mecanismo de seguridad, por lo que su
uso está sujeto a redes en las que todos los nodos son confiables. Se caracteriza por su rápida adaptación a condiciones dinámicas de los enlaces, su baja
necesidad de procesamiento y ocupación de memoria (siendo una opción a
considerar para pequeños dispositivos como redes de sensores) y baja utilización de la red, lo que le confiere una alta escalabilidad y rendimiento. Parte
de esto se debe a su comportamiento reactivo (un nodo sólo lanza una búsqueda sobre un destino cuando necesita transmitirle algo, pero no conserva
rutas a todos los destinos posibles), preservando el uso del medio para aquellos que realmente lo necesiten, y evitando largas tablas de rutas con nodos
a los que nunca se va a comunicar. AODV es un protocolo de vector distancia, por lo que cada nodo tendrá una tabla con aquellos destinos con los que
mantenga una comunicación activa, indicando el siguiente salto y la distancia. Evita el problema de «cuenta a infinito» observado por Bellman-Ford que
otros protocolos de vector distancia sí sufren, gracias al uso de números de
secuencia en las actualizaciones de ruta, técnica cuyo pionero fue el protocolo ad hoc DSDV. De esta forma, si un nodo dispone de dos rutas hacia un
mismo destino, la elección recae en aquella con menor número de secuencia,
33
i
i
i
i
Capítulo 2. Mobile ad hoc networks
pues es la que más pronto ha contestado.
Los mensajes tipo definidos en AODV son 3: solicitud de ruta (RREQ –
Route Request), contestación de ruta (RREP – Route Reply) y error de ruta
(RERR – Route Error). Estos mensajes se envían mediante UDP.
Cuando un nodo necesita conocer una ruta a un destino, lanza una petición a AODV. Éste, realiza un broadcast con un paquete RREQ, que los nodos
siguen reenviando hacia el exterior hasta que se encuentra la ruta o expira
el TTL. Una ruta queda determinada cuando el RREQ llega al nodo destino,
o cuando encuentra otro nodo con una «ruta fresca» a destino. Una «ruta
fresca» es una entrada válida al destino buscado dentro de la tabla de rutas
de un nodo intermedio, cuyo número de secuencia asociado es al menos tan
alto como el contenido en el RREQ. En cualquiera de los dos casos, la ruta
se establece devolviendo un paquete de RREP con dirección UNICAST hacia
el origen, siguiendo el mismo camino que el RREQ enviado. Cada uno de
los nodos que pasan este RREP a su siguiente salto hacia el origen, guarda
en su tabla de rutas una entrada temporal con el nodo que origina de esta
petición, de forma que durante un periodo de tiempo se establece una ruta
entre origen y destino.
En la Fig. 2.2 se muestra un ejemplo del funcionamiento del protocolo de
encaminamiento AODV. En la Fig. 2.2(a) el nodo A lanza un RREQ por broadcast para buscar una ruta hasta el nodo B. Este RREQ lo reciben los únicos
nodos con los que tiene contacto debido a la distancia. Estos dos nodos reenvían el RREQ por broadcast, y lo reciben todos sus vecinos, ver Fig. 2.2(b).
Aquí es donde resulta decisivo el uso de números de secuencia: en este paso
el nodo 1 lanza su RREQ al medio y lo reciben todos sus vecinos, incluyendo en nodo 2. En este paso hay una posible colisión!!!, el nodo 6 recibe un
RREQ tanto del nodo 1 como del nodo 5 que entre ellos están ocultos. En la
Fig. 2.2(c) se muestra como el nodo 2 al recibir el RREQ lo vuelve a enviar
por broadcast a todos sus vecinos. Como no puede seleccionar la dirección
del envío, también le llega al nodo 1. Sin embargo, el nodo 1 procesa el RREQ
recibido y, al comprobar que es el mismo número de secuencia, lo descarta,
34
i
i
i
i
Capítulo 2. Mobile ad hoc networks
2
PASO 1
PASO 2
1
A
1
B
RREQ
A
5
6
RREQ
Posible
colisión
.
Recibe latrama
de
1y5 e
(ntreellos
son hidden)
5
(a) Envío RREQ
(b) Difusión RREQ
2
2
PASO 3
4
PASO 4
3
RREQ
1
A
B
B
RREQ
1
B
6
6
A
5
7
5
7
(c) Recepción del RREQ por todos los vecinos
2
3
(d) Nodos 1 y 5 no reenvían RREQ de
nuevo
Para
ira A, elsiguiente
salto
es1.
Para
ira B,
es3.
4
Para
ira A, elsiguiente
salto
es3.
conozcoa B,
esvecino.
PASO 5
PASO 6
3
RREQ
1
B
4
2
Conozcoa A,
esvecino .
Para
ira B, elsiguiente
3
salto
es2.
Para
ira A, elsiguiente
saltoes2.
1
Para
ira B, elsiguiente
saltoes4.
RREP
6
A
B
A
5
7
(e) RREQ alcanza el destino
(f) Envío del RREP
PASO 7
Camino
temporal
establecido
B
A
(g) Establecimiento de la ruta
Figura 2.2: Ejemplo de funcionamiento del protocolo AODV
35
i
i
i
i
Capítulo 2. Mobile ad hoc networks
por lo que en el cuarto paso, ver Fig. 2.2(d), se puede observar que el nodo 1
ya no ha reenviado este RREQ, al igual que tampoco lo ha hecho el nodo 5. El
proceso sigue hasta que se alcanza el destino (B no reenvía el RREQ porque
es el destino), ver Fig. 2.2(e), momento en que se devuelve el RREP a origen
por el camino seguido por el RREQ, Fig. 2.2(f). En ese proceso, los nodos
intermedios guardan información para mantener la ruta entre los nodos A y
B.
Para mejorar la detección de enlaces caídos, los nodos envían un mensaje
RERR cuando un vecino perteneciente a una ruta activa no responde. De esta
forma, con los paquetes RERR se indica que un destino ya no es alcanzable
debido a un enlace roto. Los mensajes RERR no se envían por broadcast, sino
que cada nodo lo envía a los vecinos implicados en la ruta activa, es decir,
a sus precursores3 . Estos precursores siguen pasando el mensaje de RERR a
sus respectivos precursores hasta que la notificación ha llegado a todos los
nodos implicados en la ruta.
AODV, se apoya en la utilización de una tabla de rutas. La información
de la tabla de rutas debe mantenerse incluso para aquellas rutas con poco
tiempo de vida, pues el sistema las necesita para encaminar correctamente
los paquetes. En AODV, se utilizan los siguientes campos en cada entrada de
ruta:
1. Dirección IP de destino
2. Número de secuencia de destino
3. Flag de validez de número de secuencia de destino
4. Otros flags de estado (p. ej. Válido, inválido, reparable o siendo reparado)
5. Interfaz de red
6. Número de saltos (para alcanzar destino)
3 El
precursor es el nodo del que recibe paquetes para alcanzar al nodo destino que tiene en
su tabla de rutas, es decir, lo contrario del «Next Hop».
36
i
i
i
i
Capítulo 2. Mobile ad hoc networks
7. Siguiente salto
8. Lista de precursores
9. Tiempo de vida (expiración de la ruta)
Cuando una ruta activa se vuelve inalcanzable (por la caída o desactivación
de un enlace), la ruta se marca como inválida y comienza un contador para
su eliminación.
2.3.2.
Mantenimiento de números de secuencia
Las entradas de la tabla de rutas de todos los nodos deben incluir la última
información disponible sobre el número de secuencia del nodo de destino de
esa entrada. En la Fig. 2.3 se muestra como ejemplo la tabla de encaminamiento del nodo 1 (192.168.10.1) que tiene como vecinos al nodo 2 (192.168.10.2) y
3 (192.168.10.3) en una red de tres nodos. Al arrancar el protocolo en los tres
nodos, comienzan a emitirse los paquetes de HELLO para descubrir a sus
vecinos. En la imagen se aprecia que el número de secuencia en este caso no
varía, pero sí el tiempo de expiración que va en decremento. Además se ha
señalado el segundo 52,462 (0,923 s. después de arrancar el protocolo) como
el instante en el que se han encontrado los dos vecinos. Ambos nodos tienen
inicialmente el número de secuencia de destino igual a 1.
El «número de secuencia de destino» se actualiza siempre que se recibe un
mensaje de RREQ, RREP o RERR relacionado con el destino. AODV depende
de que esta operación se realice de forma adecuada para mantener una ruta
libre de bucles hasta el nodo destino. En la Fig. 2.4 se muestra un ejemplo de
qué puede suceder si no se utilizan o mantienen correctamente los números
de secuencia. Asumiendo que el nodo A desconoce la ruptura del enlace CD, porque el paquete RERR enviado por C se ha perdido, cuando C inicia
un descubrimiento de ruta hacia D el nodo A recibe un RREQ (a través del
camino C-E-A). En ese momento, A contesta porque conoce la ruta hacia D a
través del nodo B, lo que resulta en un bucle (C-E-A-B-C).
37
i
i
i
i
Capítulo 2. Mobile ad hoc networks
Figura 2.3: Tabla de encaminamiento donde se muestra la aparición de los
dos vecinos
Un nodo incrementa su propio número de secuencia en dos situaciones:
1. Justo antes de generar un descubrimiento de ruta. Esto previene conflictos con rutas inversas establecidas previamente hacia el generador
de un RREQ.
2. Justo antes de que un nodo destino genere un RREP en contestación a
un RREQ, aumenta su número de secuencia al valor más alto entre su
A
B
E
C
D
A
B
E
C
D
Bucle
Figura 2.4: Formación de bucles si no se utilizasen los números de secuencia
38
i
i
i
i
Capítulo 2. Mobile ad hoc networks
Tabla 2.1: Invalidación de una ruta en la tabla de encaminamiento
#Time: 12:22:15.962 IP: 192.168.10.1, seqno: 18 entries/active: 2/1
Destination
Next hop
HC
St.
Seqno
Expire
192.168.10.3
192.168.10.2
2
INV
12
6
Flags
wlan0
Iface
192.168.10.2
192.168.10.2
1
VAL
1
1899
wlan0
Precursors
#Time: 12:22:16.066 IP: 192.168.10.1, seqno: 18 entries/active: 1/1
Destination
Next hop
HC
St.
Seqno
Expire
192.168.10.2
192.168.10.2
1
VAL
1
1795
Flags
Iface
Precursors
wlan0
propio número de secuencia y el que ha recibido en el campo «Destination Sequence Number» del RREQ recibido.
El número de secuencia tiene un tamaño de 32 bits, y cuando alcanza el
valor máximo vuelve a contar desde 0. Para mantener la información actualizada, cuando un nodo recibe un mensaje AODV compara el número de
secuencia del paquete recibido con el que tiene almacenado. Si es menor,
descarta el mensaje pues su información es obsoleta, y no lo reenvía a ningún otro nodo. Un nodo aumenta el número de secuencia de destino de una
entrada de la tabla de rutas en tres situaciones:
1. Cuando el enlace con el siguiente salto hacia el destino se rompe. En
ese caso, el nodo consulta su tabla de rutas para ver todos los destinos
que se han vuelto inalcanzables debido a la caída del enlace con ese
vecino, incrementa el número de secuencia de cada uno y marca cada
entrada como inválida.
En la tabla 2.1, se muestra el momento en el que la ruta creada para que
el nodo 1 alcance el nodo 3 a través de 2 desaparece por vencimiento
de su timer:
Durante el periodo de invalidez, si se recibe información más actualizada sobre una ruta a ese destino, se sustituye y valida de nuevo en la
tabla de rutas.
39
i
i
i
i
Capítulo 2. Mobile ad hoc networks
2. Si él mismo es el destino, y ofrece una nueva ruta a sí mismo.
3. Si recibe un mensaje AODV con nueva información sobre el número de
secuencia del destino.
2.3.3.
Entradas en la tabla de ruta y lista de precursores
Cuando un nodo recibe un paquete de control AODV de un vecino, crea
o actualiza una ruta hacia un destino, comprueba si en su tabla de rutas hay
una entrada para ese destino. Si no la hay, se crea con el número de secuencia
contenido en el paquete de control, y si no es posible el campo de número de
secuencia se establece en «false». La ruta se actualiza sólo si el nuevo número
de secuencia:
1. Es mayor que el número de secuencia de la entrada de la tabla de rutas
que apunta a ese destino.
2. Es igual, pero el número de saltos (del campo «Hop Count») más 1 del
nuevo mensaje es menor que el que hay en la entrada de la tabla de
rutas.
3. Es desconocido.
El tiempo de vida de la entrada de la tabla de rutas también queda determinado por el paquete de control, o en caso de no ser posible queda inicializado
al valor ACTIVE_ROUTE_TIMEOUT. Cada vez que se utiliza la ruta activa
entre origen y destino para transmitir paquetes, los nodos actualizan el valor del campo «Lifetime» con un valor nunca menor que el tiempo de vida
actual más ACTIVE_ROUTE_TIMEOUT. Esta actualización no es bidireccional: si sólo se utiliza la comunicación en un sentido, el valor de “Lifetime”
en las entradas que marcan el camino inverso no se verá actualizado. Para
cada ruta válida mantenida por un nodo en su tabla de rutas, se especifica
también una serie de precursores que representan el siguiente salto a destino.
Estos precursores se crean en la tabla de rutas cuando se recibe y reenvía un
40
i
i
i
i
Capítulo 2. Mobile ad hoc networks
paquete RREP, y son aquellos a los que el nodo avisará en caso de que uno
de sus enlaces caiga.
2.3.4.
Generación de mensajes RREQ
Un nodo lanza al medio un mensaje de RREQ cuando necesita comunicar
con un nodo del que no tiene una entrada en su tabla de rutas. Esto pasa
tanto si el destino ha sido desconocido hasta el momento para este nodo,
como si anteriormente tenía un enlace válido pero su tiempo de vida expiró
y ahora está marcado como inválido. Los campos se rellenan de la siguiente
forma:
El número de secuencia de destino que se incluye en el mensaje RREQ
es el último conocido por el nodo origen sobre ese destino, y se copia
directamente de su entrada en la tabla de rutas. Si no se dispone de este
número, se marca el flag de número de secuencia desconocido “U”.
El número de secuencia del campo “Originator Sequence Number” corresponde al del propio nodo origen, y se incrementa justo antes de que
sea introducido en el paquete.
El campo identificador de RREQ (RREQ ID) se incrementa en una unidad respecto al último RREQ enviado por el nodo origen, cada nodo
mantiene la cuenta de su propio RREQ ID.
Finalmente, el campo de “Hop Count” se pone a 0.
Antes de lanzar el broadcast al medio, el nodo origen almacena durante
un tiempo PATH_DISCOVERY_TIME el “RREQ ID” y el “Originator IP Address” (su propia dirección IP) del paquete que ha formado. De esta forma,
cuando el nodo reciba de nuevo este RREQ de sus vecinos, cuando ellos también hagan un broadcast de este RREQ, lo identificará y así evitará volver a
procesarlo y reenviarlo. El nodo origen puede esperar mantener una comunicación bidireccional con el nodo destino, pero si un nodo intermedio (no
41
i
i
i
i
Capítulo 2. Mobile ad hoc networks
el destino) conoce una ruta hacia destino y contesta la petición al origen con
un RREP, esto podría no suceder, generando una comunicación por dos caminos diferentes, uno de ida y uno de vuelta. Para garantizar que se utilice
el mismo camino en ambos sentidos, el nodo origen puede activar el flag de
RREP gratuito “G”. Cuando el nodo intermedio que conoce una ruta a destino contesta al origen con un RREP, enviará también un RREP a la dirección
del campo “Destination IP Address”.
En la Fig. 2.5 se muestra una búsqueda de ruta desde el nodo A hacia el
nodo I sin el flag activado y en la Fig. 2.6 se muestra el mismo escenario pero
con el flag ”G” activado.
El número máximo de mensajes RREQ por segundo que se pueden emitir viene limitado por el parámetro RREQ_RATELIMIT (10). Tras emitir un
RREQ, el nodo origen queda a la espera de recibir un RREP. Si tras un tiempo NET_TRAVERSAL_TIME no se recibe ninguna ruta válida, el nodo origen
puede enviar otro RREQ, hasta un máximo de RREQ_RETRIES (2) intentos
con el valor de TTL máximo. La búsqueda de ruta se desencadena cuando
se reciben datos que requieren ser enviados a un destino que no se conoce.
Estos datos se almacenan en un buffer de tipo FIFO, y si se supera el número de intentos de búsqueda de ruta sin éxito, se descartan por completo y
se envía un mensaje de “Destino Inalcanzable” a la capa de aplicación. Para
reducir la congestión en la red, los intentos repetidos de alcanzar a un mismo nodo deben utilizar un tiempo de backoff de tipo binario exponencial. Es
decir, tras un tiempo NET_TRAVERSAL_TIME se envía un segundo RREQ;
tras un tiempo 2 x NET_TRAVERSAL_TIME se envía un tercer RREQ. De
esta forma, el tiempo de aumento se va multiplicando por 2 hasta el límite
de RREQ_RETRIES.
2.3.5.
Diseminación de paquetes RREQ
Para prevenir una diseminación innecesaria a lo largo de toda la red,
AODV utiliza una técnica de búsqueda de anillo expansivo. El nodo origen utiliza un TTL = TTL_START en la cabecera IP del RREQ, y utiliza
42
i
i
i
i
Capítulo 2. Mobile ad hoc networks
B
F
B
F
I
I
RREQ
G
D
G
D
RREP
A
A
C
G=0
C
H
H
E
E
2. Seenvía unRREPunicast
aorigen
para
queseutilice
la
rutaqueE
conoce apartir
deaquí
.
1. Elnodo
Enosigueenviando
el RREQ
porque en
su tabla
de
rutastieneuna
entrada condestino a I.
(a)
(b)
F
B
F
B
I
PING
(Echo Request)
RREQ
I
G
D
G
D
A
C
A
H
C
E
H
E
3.Cuando el pingllega a E,
continúapor
elcaminoque élteníamarcado
.
Sin embargo, I
notiene
ensutabla
de rutas
al
nodoA,porque
el
RREQno
hallegadohastaél
.
4. ElRREQ del
nodoI llegahasta
D,
quesítiene
ensuentrada
derutas
uncaminohacia
A.
(c)
B
(d)
F
B
RREP
F
I
G
D
G
D
A
PING
(Echo Reply)
I
A
C
H
C
H
E
E
5. ElnodoDenvía
un RREP
alnodoI,ylosnodosintermedios
almacenan
losprecursoresimplicados
6.Ahora elnodoIyapuededevolverle
el ping a A,
peroinconscientemente
lohaceporunarutadiferente
.
.
(e)
(f)
B
F
I
G
D
A
C
H
E
7.Ahora , la
comunicación se
mantiene
pordoscaminosseparados .
(g)
Figura 2.5: Flag de RREP gratuito (G) no activado
43
i
i
i
i
Capítulo 2. Mobile ad hoc networks
F
B
F
B
I
I
RREQ
G
D
G
D
RREP
A
A
C
C
H
H
E
E
2. Seenvía
un RREP
unicast aorigen,
pero
comoelflag'G'
estámarcado
,
también se
envíaunoadestino
.
1. Elnodo
Enosigueenviando
el RREQ
porque en
su tabla
de
rutastieneuna
entrada condestino a I.
(a)
(b)
F
B
RREP
G=1
F
B
I
PING
(Echo Request)
I
G
D
G
D
A
C
H
C
E
3. ElnodoAenvía
un ping.
Cuandollega
a I,
estenodoprepara
la
contestación
ycomprueba
quesítieneunaentrada
ensutabla
derutashacia
A,
grabada al
recibir el RREP
gratuito de
.
E
PING
(Echo Request)
A
H
E
4.Esta
vez
, Icontestautilizando
elmismocaminoqueutilizó
el
nodo A.
Larutaestablecida
esahorabidireccional
(c)
.
(d)
Figura 2.6: Flag de RREP gratuito (G) activado
un timeout para recibir el RREP de RING_TRAVERSAL_TIME. Cuando este timeout vence, el origen envía otro RREQ con un incremento en el TTL
de TTL_INCREMENT, y así sucesivamente hasta que se alcanza el valor de
TTL_THRESHOLD, a partir de donde se utilizará siempre un TTL=NET_DIAMETER en cada intento. Cuando se busca una ruta para un destino que
aparece en la tabla de rutas como entrada inválida (porque el enlace ha caído
y se necesita encontrar otro camino), se utiliza como TTL inicial el valor de
“HOP COUNT” de esa entrada más TTL_INCREMENT.
2.3.6.
Reenvío de mensajes RREQ
Cuando un nodo recibe un RREQ, el primer paso es crear o actualizar la
ruta correspondiente (ver sección 2.3.3). Después comprueba si los valores de
44
i
i
i
i
Capítulo 2. Mobile ad hoc networks
“Originator IP Address” y “RREQ ID” son los mismos que algún otro RREQ
recibido en los últimos PATH_DICOVERY_TIME, en cuyo caso descarta el
paquete. En caso de que el paquete no sea descartado:
1. Aumenta el “Hop Count” en uno.
2. Se crea o actualiza una ruta hacia el nodo origen, cuya dirección aparece
en el campo “Originator IP Address”, con el “Hop Count” que marque
el RREQ y con un LifeTime igual al máximo entre el ExistingLifeTime
y el MinimalLifeTime, donde
MinimalLi f eTime = (tiempo actual + 2 ∗ NET_TRAVERSAL_TI ME−
2 ∗ HopCount ∗ NODE_TRAVERSAL_TI ME)
3. Si el nodo no genera un RREP, y el TTL es igual o mayor a 1, actualiza
y reenvía el RREQ por broadcast a sus vecinos. En esta actualización,
el TTL se decrementa y el “Hop Count” se incrementa. Además, se
utiliza el mayor número de secuencia de destino entre el recibido en el
RREQ y el que tiene en su tabla de rutas (si fuera el caso) para el nuevo
RREQ enviado, aunque si el número de secuencia recibido en el RREQ
es mayor que el almacenado en la tabla de rutas, no se modifica el valor
de la tabla de rutas.
4. Si el nodo genera un RREP, descarta el mensaje RREQ y no lo reenvía
más.
2.3.7.
Generación de mensajes RREP
Un nodo genera una contestación de ruta en dos supuestos:
1. Si él mismo es el destino.
2. Si dispone de una ruta activa a ese destino en su tabla de rutas, el
número de secuencia de destino es igual o mayor que el recibido en el
RREQ, y el flag de solo destino ”D” del RREQ no está activo.
45
i
i
i
i
Capítulo 2. Mobile ad hoc networks
Una vez se crea el RREP, se envía por UNICAST al nodo origen a través del
siguiente salto, y su contador “Hop Count” se va incrementando en cada
salto. Cuando el RREP llega al origen, el valor de “Hop Count” representa
la distancia entre origen y destino en saltos. Si el que genera el RREP es el
nodo destino, éste incrementa su propio número de secuencia en una unidad
si el número de secuencia en el RREQ es igual al valor incrementado. Si
no, no modifica su número de secuencia antes de generar el RREP. Después,
se copia el valor de MY_ROUTE_TIMEOUT en el campo “Lifetime”. Si el
que genera el RREP es un nodo intermedio, copia el número de secuencia
a destino que tiene en su tabla de rutas en el campo “Destination Sequence
Number” del RREP. Además, copia el número de saltos a destino que tiene en
la tabla de rutas, al campo “Hop Count” del RREP, y en el campo “Lifetime”
la diferencia entre el tiempo actual y el tiempo de expiración de la entrada
en su tabla de rutas. Además, si el bit ”G” está activado en el RREQ, también
se enviará un RREP a destino.
2.3.8.
Reenvío de mensajes RREP
Cuando un nodo recibe un mensaje RREP, busca en su tabla una ruta
al siguiente salto hacia el nodo origen. A continuación, incrementa el “Hop
Count” en 1 y actualiza/crea una entrada en su tabla de rutas con el nodo
destino (el que ha enviado el RREP) siendo el siguiente salto el nodo que le
ha pasado el RREP. Esta ruta se marca como activa, el número de secuencia
de destino se marca como válido, el tiempo de expiración se calcula como
el tiempo actual más el “LifeTime” del RREP, y el número de secuencia de
destino es el que marca el RREP. De esta forma, el nodo puede utilizar esta
nueva ruta para reenviar datos al destino.
Si el nodo no es el origen, el mensaje se reenvía al siguiente salto según
su tabla de rutas. Siempre que un nodo reenvía un RREP, actualiza la lista de
precursores asociada a ese destino, añadiendo el nodo del siguiente salto.
46
i
i
i
i
Capítulo 2. Mobile ad hoc networks
2.3.9.
Mensajes HELLO
Los nodos ofrecen información de conectividad a sus vecinos mediante la
emisión local de mensajes HELLO. Estos mensajes sólo los envían aquellos
nodos que pertenecen a una ruta activa para demostrar que siguen vivos y
que la conectividad sigue siendo viable. De esta forma, cada intervalo HELLO_INTERVAL un nodo comprueba si ha enviado algún mensaje de broadcast (como un RREQ o algún mensaje apropiado de capa 2) durante el último
intervalo, y de no ser así envía un RREP con TTL=1, conocido como mensaje
de HELLO, con los siguientes campos:
Destination IP Address: la dirección IP del propio nodo
Destination Sequence Number: el último número de secuencia del nodo.
Hop Count: 0
LifeTime: ALLOWED_HELLO_LOSS * HELLO_INTERVAL
Un nodo determina la conectividad con sus vecinos escuchando estos paquetes. Si durante el último DELETE_PERIOD se ha recibido un mensaje
HELLO de un vecino, y después no se recibe ningún otro mensaje de este
tipo durante más de ALLOWED_HELLO_LOSS * HELLO_INTERVAL, el nodo asumirá que ha perdido el enlace con su vecino. Siempre que un nodo
reciba un mensaje HELLO de un vecino, debe comprobar que dispone de
una ruta activa hacia él, y si no debe crearla. Si la ruta ya existe, se incrementa el “LifeTime” siendo su valor mínimo el de ALLOWED_HELLO_LOSS *
HELLO_INTERVAL, y el número de secuencia se actualizará al recibido en
el paquete de HELLO. Las rutas creadas por mensajes de HELLO y no se
usan en otras rutas activas tienen una lista de precursores vacía y no lanzan
ningún RERR en caso de caída de enlace.
47
i
i
i
i
Capítulo 2. Mobile ad hoc networks
2.3.10.
Mantenimiento de la conectividad local
Cada nodo implicado en una ruta activa monitoriza de forma continua
la conectividad con sus siguientes saltos, así como con los vecinos que han
transmitido mensajes de HELLO durante el último ALLOWED_HELLO_LOSS
* HELLO_INTERVAL. Un nodo puede mantener una información de conectividad más apurada mediante alguno de los siguientes mecanismos:
1. Mediante las notificaciones de la capa de enlace. Por ejemplo, en 802.11
se puede utilizar la ausencia de un ACK de capa de enlace o la ausencia
de un CTS al emitir un RTS.
2. Usando reconocimiento pasivo. Cuando se espera que el siguiente salto
reenvíe un paquete, se escucha el medio para detectar su acceso. Si
durante un periodo NEXT_HOP_WAIT no se detecta esta transmisión,
se utiliza uno de los siguientes métodos:
a) Recepción de cualquier paquete del nodo vecino.
b) Enviar un RREQ UNICAST al vecino, solicitándole ruta al siguiente salto.
c) Enviar un ICMP Echo Request al vecino.
Si ninguno de estos sistemas funciona, el nodo asume que el enlace ha caído,
y comienza la generación de un mensaje RERR.
2.3.11.
Mensajes RERR. Expiración y eliminación de rutas
Un nodo puede generar un mensaje de error RERR en 3 situaciones:
1. Si detecta la caída del enlace con el siguiente salto en una ruta activa
mientras se transmiten datos (y el mecanismo de reparación de rutas
no ha funcionado).
2. Si recibe un paquete de datos para un nodo con el que no mantiene una
ruta activa y no está en reparación.
48
i
i
i
i
Capítulo 2. Mobile ad hoc networks
3. Si recibe un RERR de un vecino sobre alguna ruta activa.
Para el primer caso, el nodo comienza generando una lista de destinos inalcanzables, relacionados con los vecinos inalcanzables. Para el segundo caso,
sólo hay una dirección inalcanzable, que es el destino del paquete de datos
que no se ha podido entregar. Para el tercer caso, la lista consiste en aquellos
destinos que aparecen en el RERR y para los que se dispone de una entrada
en la tabla de rutas. Sin embargo, algunas de las direcciones que aparecen
en el mensaje RERR pueden estar incluidas en rutas activas de algún nodo
vecino, por lo que también se envía un nuevo RERR para éstos. El RERR
puede ser enviado por UNICAST o BROADCAST, según las necesidades. El
broadcast se envía con TTL=1. Además de reenviarse, el nodo ejecuta una
serie de actualizaciones en su propia tabla de rutas, afectando a las entradas
que contengan esos destinos:
El número de secuencia de destino de la entrada, si existe y es válido,
se incrementa en los casos 1 y 2, y se copia del paquete RERR en el caso
3.
La entrada se invalida marcándola como “Invalid”.
El campo “LifeTime” se actualiza al tiempo actual más DELETE_PERIOD. Antes de que finalice este tiempo, la ruta no se puede eliminar.
Hay que tener en cuenta que el campo “LifeTime” juega un doble rol: para
una ruta activa es el tiempo de expiración, y para una ruta invalidada es
el tiempo de borrado. Si se recibe un paquete por una ruta marcada como
inválida, el campo “LifeTime” se actualiza al tiempo actual más DELETE_PERIOD.
2.3.12.
Reparación local
Cuando cae un enlace en una ruta activa, el nodo de subida de esa caída
(el que detecta que su vecino en dirección a destino a caído) puede intentar una reparación local del enlace siempre que el destino no esté a más de
49
i
i
i
i
Capítulo 2. Mobile ad hoc networks
MAX_REPAIR_TTL saltos. Para repararlo, incrementa el número de secuencia de destino y envía un RREQ preguntando por destino con un TTL inicial
de:
max(MIN_REPAIR_TTL, 0,5*#hops) + LOCAL_ADD_TTL
donde #hops es el número de saltos hasta el origen del paquete de datos
que no se ha podido entregar. Por esta razón, es habitual que los intentos de
reparación local sean invisibles para el nodo origen, que seguirá enviando
datos. Estos datos se almacenarán en un buffer del nodo que está intentando
reparar el enlace. Si finalizado el proceso de búsqueda no se ha encontrado
otra ruta, se envía un RERR sobre ese destino. Sin embargo, si recibe uno
o más RREPs con nuevas rutas para llegar a destino, compara el número de
saltos con el valor que aún guarda la entrada de esa ruta, ahora invalidada, en
la tabla de rutas. Si la nueva ruta es más larga, se envía un RERR con el flag
“N” activado, y los nodos que reciban ese RERR lo retransmitirán pero no
borrarán la entrada correspondiente en su tabla de rutas. Cuando finalmente
el nodo origen recibe el RERR con el flag activado, si éste se lo ha enviado
su siguiente salto según la tabla de rutas para alcanzar el destino que marca
el mensaje RERR, puede volver a realizar una nueva búsqueda de ruta hacia
destino.
El uso de reparación de rutas generalmente desemboca en la utilización
de caminos mucho más largos al mismo destino, pero evita la pérdida de
los datos que se descartarían mientras se gestiona el sistema de RERR. Sin
embargo, la mejor opción es obtener una ruta fresca enviando el RERR al
origen.
2.3.13.
Parámetros de configuración
Los valores por defecto para los parámetros asociados a las operaciones
del protocolo AODV son los mostrados en la tabla:
Notas:
50
i
i
i
i
Capítulo 2. Mobile ad hoc networks
Tabla 2.2: Parámetros de configuración del AODV
Nombre del parámetro
ACTIVE_ROUTE_TIMEOUT
ALLOWED_HELLO_LOSS
BLACKLIST_TIMEOUT
DELETE_PERIOD
HELLO_INTERVAL
Valor
3000 milisegundos
2
RREQ_RETRIES * NET_TRAVERSAL_TIME
ver nota
1000 milisegundos
LOCAL_ADD_TTL
2
MAX_REPAIR_TTL
0,3 * NET_DIAMETER
MIN_REPAIR_TTL
MY_ROUTE_TIMEOUT
NET_DIAMETER
NET_TRAVERSAL_TIME
NEXT_HOP_WAIT
ver nota
2 * ACTIVE_ROUTE_TIMEOUT
35
2 * NODE_TRAVERSAL_TIME * NET_DIAMETER
NODE_TRAVERSAL_TIME + 10
NODE_TRAVERSAL_TIME
40 milisegundos
PATH_DISCOVERY_TIME
2 * NET_TRAVERSAL_TIME
RERR_RATELIMIT
RING_TRAVERSAL_TIME
10
2 * NODE_TRAVERSAL_TIME * (TTL_VALUE + TIMEOUT_BUFFER)
RREQ_RETRIES
2
RREQ_RATELIMIT
10
TIMEOUT_BUFFER
2
TTL_START
1
TTL_INCREMENT
2
TTL_THRESHOLD
TTL_VALUE
7
ver nota
1. MIN_REPAIR_TTL es la última cuenta de saltos a destino conocida.
2. TTL_VALUE es el valor del campo TTL en la cabecera IP durante la
búsqueda de ruta (en los mensajes RREQ).
3. DELETE_PERIOD es el límite de tiempo que un nodo A puede tener
a un vecino B como un siguiente salto activo para alcanzar el destino
D, cuando B ha invalidado la ruta hacia D. Después de este tiempo,
B puede eliminar la ya invalidada ruta a D. La determinación de este
valor depende del mecanismo de monitorización con los vecinos que se
utilice:
Si se utilizan mensajes de HELLO, DELETE_PERIOD es como mínimo de ALLOWED_HELLO_LOSS * HELLO_INTERVAL.
51
i
i
i
i
Capítulo 2. Mobile ad hoc networks
Si se utilizan las respuestas de la capa de enlace, DELETE_PERIOD
se establece como ACTIVE_ROUTE_TIMEOUT.
Si se utilizan ambos mecanismos, se utiliza un: DELETE_PERIOD = K * max
(active_route_timeout, hello_interval) (con K = 5)
2.4. Conclusiones
El encaminamiento en las redes inalámbricas tiene una importancia creciente ya que cada vez más, las aplicaciones demandan la movilidad de los
clientes. Esto obliga a implementar mecanismos de encaminamiento que faciliten la comunicación entre nodos, y que se adapten a las particularidades
de este tipo de medios. Es por ello que en los entornos inalámbricos no se
pueden utilizar los protocolos clásicos de encaminamiento, los protocolos necesitan ser adaptados teniendo en cuenta las características de estos entornos
cambiantes.
Aunque el uso de las redes ad hoc es interesante porque son muchas
sus aplicaciones, se ha de tener en cuenta que el despliegue de una red ad
hoc para el intercambio de información presenta diversos problemas a tener
en cuenta, ver [CM99], además de la topología dinámica como dificultad
principal.
El ancho de banda disponible en un medio inalámbrico es inferior al del
medio cableado, y en muchas ocasiones el máximo ancho de banda disponible es del orden de decenas o centenares de Kbps., cuanto más aumenta la
distancia entre nodos el ancho de banda disponible decrece debido a la necesidad de una codificación más robusta por la menor relación SNIR (Signal to
Noise and Interference).
En los enlaces inalámbricos se pueden producir pérdidas debido a la corrupción de la información, incluso en condiciones estáticas, a causa de varios
fenómenos tales como la atenuación de la señal y el multi-camino. En otras
52
i
i
i
i
Capítulo 2. Mobile ad hoc networks
ocasiones el usuario móvil puede experimentar durante un instante una desconexión de la red, mientras conduce y atraviesa un túnel o si está en un
ascensor. Durante estos períodos, el usuario no tiene conexión por lo que si
tienen una duración mayor que los timers de la aplicación, las comunicaciones en curso pueden ser abortadas.
También se ha de tener en cuenta el jitter. Otro factor importante cuando
se hace uso de estas tecnologías es el ahorro de energía porque la mayoría de
los nodos o todos hacen uso de baterías.
Otro problema a tener en cuenta cuando se trabaja con redes inalámbricas
es el problema del nodo oculto, que aparece cuando hay dos nodos dentro del
rango de transmisión de un tercero pero los dos nodos no pueden comunicar
entre ellos. Ambos intentan comunicar con el tercer nodo simultáneamente, y
no detectan las interferencias en el medio. Por tanto, las señales colisionan4 en
el tercer nodo, que no será capaz de recibir correctamente las transmisiones
de ninguno de los otros dos, ver [Per99]. Otro problema que junto con el nodo
oculto provoca significativas reducciones en el throughput de la red cuando
la carga de tráfico es elevada es el nodo expuesto. Suponiendo que un nodo
B comunica con un nodo A, y que un nodo C quiere transmitir paquetes al
nodo D, durante la transmisión entre los nodos B y A, el nodo C percibe que
el canal está ocupado. El nodo C, concluye equivocadamente que no puede
enviar información hacia D, a pesar de que ambas transmisiones podrían
realizarse con éxito. Únicamente se produciría una mala recepción en la zona
entre los nodos B y C, donde no está localizado ninguno de los receptores.
Todos estos problemas complican la creación de un modelo matemático
que pueda englobarlos, así como la creación de un testbed por la cantidad
de dificultades que pueden encontrarse durante las pruebas, lo que hace más
interesante si cabe el reto planteado de estudiar una red ad hoc con un protocolo de encaminamiento reactivo para evaluar si es capaz de ofrecer los
servicios típicos de un entorno industrial de supervisión y control.
4 La
solución típica es que los nodos se coordinen en sus transmisiones mediante RTS/CTS.
53
i
i
i
i
i
i
i
i
Capı́tulo
3
Herramientas de modelado y
evaluación
El modelado y evaluación del comportamiento de las redes de comunicaciones ad hoc es un trabajo por el que muchos investigadores han mostrado su interés, de hecho en el caso concreto de las redes móviles se han
publicado una gran cantidad de trabajos en los últimos años.
En este capítulo se citan las herramientas de simulación más utilizadas
en redes ad hoc para dar paso a un estudio más detallado de las redes
de Petri y en su extensión de las redes de actividad estocástica que es la
técnica utilizada para el desarrollo de los modelos formales que se evalúan
en esta tesis.
En último lugar se describen los elementos de las redes de actividad estocástica y los pasos a seguir para evaluar un modelo desarrollado con las
herramientas UltraSAN y Möbius.
55
i
i
i
i
Capítulo 3. Herramientas de modelado y evaluación
3.1. Introducción
Aunque el modelado y evaluación del comportamiento de las redes de
comunicaciones ad hoc sea un área de investigación ya consolidada todavía
hay muchos aspectos a tener en cuenta en el caso concreto de las MANET tal
como apunta Conti en [CG07]. Estos aspectos van desde la simulación a la
solución de los modelos y a la evaluación de los resultados. La falta de precisión en la mayoría de los estudios de simulación de MANET en uno o más
de los puntos anteriores reduce drásticamente la credibilidad de la investigación sobre este tipo de redes inalámbricas. Por ello aunque la simulación sea
muy útil a la hora de evaluar la operación y comportamiento de los protocolos se debe trabajar con rigor. En [AY06] los autores afirman que la falta de
rigor con la que se aplica la simulación en algunos estudios amenaza la credibilidad de la comunidad que trabaja en la investigación de las MANET. En
el paper se enumeran -a juicio del autor- las inconsistencias en los modelos
de simulación de redes, el efecto de la falta de detalles, la validación de los
resultados, la necesidad de repetitividad de las simulaciones y la precisión
utilizada.
La principal característica de la mayoría de herramientas de simulación
es que ofrecen en muchos casos librerías que contienen modelos predefinidos para muchos protocolos de comunicaciones (802.11, Ethernet, TCP, etc.).
Las herramientas de simulación más populares en redes ad hoc son OPNET [MAR05, MLSPC03], ns-2 [MBJJ99] y Glomosim, pero no son las únicas herramientas válidas para el estudio de este tipo de redes. En [CSS02] se
evalúan los simuladores más utilizados para redes ad hoc y se encuentran divergencias en los resultados debido entre otras causas a los distintos niveles
de detalle a la hora de implementar y configurar los escenarios simulados.
En [KCC05] se evalúan distintos estudios sobre MANET en los que se ha utilizado simulación. En esta evaluación se encuentran importantes deficiencias
y muestran un resumen de los errores encontrados. Los autores discuten las
herramientas disponibles que pueden contribuir al desarrollo de estudios de
simulación rigurosos esperando contribuir a la mejora de la credibilidad de
56
i
i
i
i
Capítulo 3. Herramientas de modelado y evaluación
los estudios de MANET basados en simulación.
Un método a medio camino entre los modelos formales y los bancos de
prueba es la emulación. Los testbeds son difíciles de implementar, normalmente caros y la repetitividad de los experimentos es complicada, la implementación formal requiere una re-implementación del software a estudiar
dentro del simulador. En [KMJ00] se muestra un sistema de emulación capaz
de evaluar un software real sin necesidad de realizar ninguna modificación
para probarlo en los sistemas de emulación. Este sistema es repetible y detallado. Algunos emuladores destacables son MobiEmu [ZL02], y MobiNet
[MRBV05].
3.2. Redes de Petri
3.2.1.
Introducción
Las redes de Petri tienen su origen en la tesis de Carl Adam Petri ”Communication with automata” de 19621 . Las redes de Petri son una técnica de
descripción formal y modelado de sistemas que ha tenido un enorme desarrollo y grado de utilización por su capacidad de modelar de forma clara y
sencilla la concurrencia, el paralelismo y la sincronización, aspectos clave de
la complejidad de los sistemas distribuidos y concurrentes, como evidentemente es una red ad hoc. Permite el diseño top-down y se pueden realizar
modificaciones y ampliaciones del modelo sin cambios sustanciales del mismo. Su carácter gráfico y matricial ha permitido la facilidad intuitiva del
funcionamiento del sistema modelado y el posterior análisis del comportamiento del modelo y por tanto del sistema, facilitando de esta forma tareas
importantes en el diseño como son la validación, verificación y el análisis de
conformidad.
1 Aunque
las inventó en 1939, a la edad de 13 años, con el propósito de describir procesos
químicos.
57
i
i
i
i
Capítulo 3. Herramientas de modelado y evaluación
Las redes de Petri tienen dos limitaciones importantes, la primera es la
limitada potencia expresiva para describir sistemas complejos como los actuales protocolos de comunicaciones, lo cual ha sido superado utilizando
extensiones como las redes de Petri predicado/transición, las redes de Petri
coloreadas, etc. La segunda es la carencia del factor tiempo como elemento
componente del modelo, lo que limita la potencia de las redes de Petri para evaluar las prestaciones del sistema, es decir, el análisis de propiedades
cuantitativas. Esta limitación ha sido superada tras la incorporación del tiempo (redes de Petri temporizadas, estocásticas, etc.) lo que ha permitido añadir
funciones de evaluación del modelo al nivel de redes de colas.
3.2.2.
Definición formal de una red de Petri
Una red de Petri se define como una 5-upla
RdP = ( P, T, F, W, M0 ), donde:
P = { p1 , p2 , . . . , pm } es un conjunto finito no vacío de lugares.
T = {t1 , t2 , . . . , tn } es un conjunto finito no vacío de transiciones.
F ⊂ ( PxT ) ∪ ( TxP) es un conjunto de arcos dirigidos (o relación de flujo).
W : F → {1, 2, 3, . . .} es una función de pesos.
M0 : P → {0, 1, 2, . . .} es el marcado inicial de la red, define un número
inicial de marcas por lugar.
Y se cumple que P ∩ T = ∅ y P ∪ T = ∅.
El funcionamiento de una RdP obedece a las siguientes reglas de transición:
1. Una transición t está sensibilizada si cada lugar de entrada p está marcado con al menos w(p,t) marcas, donde w(p,t) es el peso del arco que
va desde p a t.
2. Una transición sensibilizada puede o no dispararse, dependiendo de
que ocurra o no el evento.
58
i
i
i
i
Capítulo 3. Herramientas de modelado y evaluación
3. El disparo de una transición sensibilizada t, retira de cada lugar p de
entrada a la transición t, w(p,t) marcas. Y añade a cada lugar p’ de salida
de la transición t, w(t, p’) marcas.
3.2.3.
Elementos de una red de Petri
La red de Petri es representable por una clase particular de grafo dirigido
asociado a un estado inicial M0 . El grafo tiene dos clases de nodos, lugares
y transiciones, unidos alternativamente por arcos dirigidos. Los arcos llevan
una dirección y cambiarla modifica totalmente el comportamiento de la red.
Los arcos apuntan al lugar al que llegan, que puede ser un lugar (transición)
si parten de una transición (lugar).
Los lugares vienen representados por círculos que pueden o no contener
marcas. El conjunto de marcas asociadas a cada uno de los lugares en un momento dado, constituye un marcado de la RdP. Las marcas albergadas en un
lugar son un número nulo o positivo. Las transiciones vienen representadas
por rectángulos. Para la descripción funcional de sistemas concurrentes los
marcados representan estados y las transiciones sucesos, que dependen del
cumplimiento de determinadas condiciones.
Los arcos llevan asignado un peso que sirve para determinar el número
de marcas que eliminan (agregan) al lugar del que parten (llegan). Los arcos
nunca unen nodos de la misma clase, es decir, lugar con lugar o transición
con transición. El número de arcos que pueden salir o entrar a un nodo es un
entero (puede ser nulo).
3.2.4.
Tipos de redes de Petri
Redes de Petri con peso.
Permite que múltiples tokens puedan ser elimi-
nados (agregados) cuando se dispara una transición. Las aristas están etiquetadas con el peso (número de tokens), y si no hay ningún valor se asume que
es 1.
59
i
i
i
i
Capítulo 3. Herramientas de modelado y evaluación
Redes de Petri coloreadas.
En general, los tokens representan objetos (re-
cursos, personas, etc) en el modelado de un sistema. Para representar los
atributos de estos objetos, se utilizan las RdP coloreadas, donde los colores
representan las características de los objetos modelados.
Las transiciones usan los valores de los tokens adquiridos para determinar
los valores de los tokens producidos. Una transición describe la relación entre los valores de los tokens. Además, es posible especificar precondiciones,
utilizando el color de los tokens para ser consumidos.
Redes de Petri jerárquicas Las especificaciones de sistemas reales tienen
una tendencia a ser grandes y complejos. Un mecanismo de abstracción, estructuración jerárquica, se utiliza para poder modificar más fácilmente el modelo. La construcción jerárquica se llama subred. Una subred es un agregado
de número de lugares, transiciones y subsistemas. La ordenación jerárquica
se puede utilizar para estructurar grandes procesos. En determinados niveles,
se quiere dar una simple descripción de un proceso (sin considerar todos los
detalles). Pero a otro nivel quizás, se quiera especificar un comportamiento
mas detallado. Cada subred se representa con un rectángulo que encapsula
parte del modelo general.
Redes de Petri temporizadas.
Las Redes de Petri no incluyen concepto al-
guno de tiempo, por ello, solamente es posible describir la estructura lógica
de los sistemas y no su evolución temporal. La introducción del tiempo en
el modelo permite la descripción de comportamientos dinámicos de los sistemas, considerando la evolución de estados y la duración de cada acción
tomada por el sistema.
Cuando se habla de redes de Petri temporizadas en general no se distingue en el tipo de tiempo asociado a las tareas o eventos del sistema modelado usualmente por transiciones de la red. Estos tiempos asociados a las
transiciones pueden ser tiempos de duración determinista, por tanto de un
valor concreto, o tiempo asociado a una variable aleatoria con una función de
60
i
i
i
i
Capítulo 3. Herramientas de modelado y evaluación
densidad de probabilidad determinada (normalmente la más utilizada para
obtener soluciones analíticas la exponencial negativa). Esto da lugar a cuatro
redes de Petri temporizadas: redes de Petri temporizadas con tiempos deterministas o Time Petri Nets (TPN), redes de Petri estocásticas (SPN), redes de
Petri estocásticas y determinísticas (DSPN) y redes de actividad estocástica
(SAN).
Redes de Petri temporizadas con tiempos deterministas. En las redes de
Petri temporizadas con tiempos deterministas o Time Petri Nets, las de uso
más extendido son aquellas en las que a cada transición se le asocian dos
valores, uno corresponde al tiempo mínimo que debe estar sensibilizada la
transición al dispararse y el otro al tiempo máximo que una transición puede
estar sensibilizada sin dispararse. Una RdP temporizada con tiempos deterministas(TPN, Time Petri Net) puede ser definida como:
TPN = { P, T, A, M0 , Q} donde
P, T, A y M0 se definen según la definición formal de una red de Petri, y
Q = (q1 , q2 , . . . , qm ) es el conjunto de retardos asociados a las transiciones.
Redes de Petri estocásticas.
Las Redes de Petri Estocásticas (SPN) se ob-
tienen asociando con cada transición en una RdP una variable aleatoria con
distribución exponencial que exprese el retardo desde la habilitación hasta el
disparo de la transición. Eliminando las variables aleatorias de una SPN se
obtiene la RdP asociada.
Considerando una SPN y un marcado M en el cual múltiples transiciones
están simultáneamente habilitadas la transición que tiene asociado el retardo
más breve disparará primero. La SPN alcanza un nuevo marcado M’, en el
cual algunas transiciones estuvieron habilitadas en el marcado M pero que no
fueron disparadas y pueden aún estar habilitadas. Debido a la propiedad de
falta de memoria de las variables aleatorias exponencialmente distribuidas, se
obtiene una distribución de vida igual a la distribución del retardo de disparo
en sí mismo. Se puede asumir que la actividad asociada con cada transición
61
i
i
i
i
Capítulo 3. Herramientas de modelado y evaluación
empieza de nuevo con cualquier nuevo marcado. Esto es válido inclusive
cuando se están modelando actividades que se suceden en forma continua:
el modelo no se ve afectado por la repetición de actividades asociadas con
una transición.
Una definición formal de una SPN es:
SPN = { P, T, A, M0 , L}
donde P, T, A y M0 se definen como antes y
L = (l1 , l2 , . . . , lm ) es el conjunto de tasas de retardos asociados con las
transiciones, posiblemente dependientes del marcado.
Cuando sea necesario, la dependencia con un marcado dado M se representará como l j ( M).
Se puede probar que, debido a la propiedad de falta de memoria de la distribución exponencial de los retardos en los disparos, las SPN son isomórficas
a cadenas de Markov de tiempo continuo. En particular, una SPN k-acotada
es isomórfica a una MC finita. La misma se puede obtener aplicando las siguientes reglas:
1. El espacio de estados S de la MC corresponde al conjunto de alcance
R( M0 ) de la red de Petri asociada con la SPN (Mi ↔ i).
2. La tasa de transición del estado i (correspondiente a Mi ) al estado j (M j )
es qij = ∑k∈ Hij lk , donde Hij es el conjunto de transiciones habilitadas
por el marcado Mi , cuyos disparos generan el marcado M j .
Una SPN se dice ergódica si genera una CTMC. Es posible mostrar que
una SPN es ergódica si M0 , el marcado inicial, es alcanzable desde cualquier
Mi que pertenece R( M0 ).
Si la SPN es ergódica, es posible calcular la probabilidad de distribución de marcados en el estado estacionario resolviendo la ecuación matricial
∏ Q = 0 con la restricción adicional ∑ ∏i = l, donde Q es el generador infinitesimal cuyos elementos se obtienen por el método de construcción de la MC
62
i
i
i
i
Capítulo 3. Herramientas de modelado y evaluación
anterior y p es el vector de probabilidades del estado estacionario. A partir de
la distribución de probabilidades del estado estacionario es posible obtener
estimaciones cuantitativas del comportamiento de la SPN.
Si a la SPN se le añade la posibilidad de incorporar transiciones inmediatas con un peso asociado, arcos inhibidores y prioridades al disparo de las
transiciones se obtienen las redes de Petri estocástias generalizadas (GSPN).
Redes de Petri estocásticas deterministas. Al combinar las transiciones con
un tiempo asociado determinista con las estocásticas (DSPN) se pueden modelar con más exactitud distintos aspectos del sistema como tareas de una
duración determinada y ocurrencia de eventos modelados con una variable
aleatoria. Estas son las redes de Petri estocásticas más potentes. En las redes
de Petri estocásticas generalizadas (GSPN) solo se admiten transiciones temporizadas con distribución exponencial, en las redes de Petri estocásticas y
deterministas (DSPN) se permiten además transiciones temporales deterministas.
Bajo determinadas condiciones del modelo, como por ejemplo que no
existan dos o más transiciones temporizadas de tiempo deterministas sensibilizadas simultáneamente, propiedad que SE puede determinar fácilmente
analizando los invariantes de marcado de la red, existe un isomorfismo de
la DSPN con las cadenas de Markov embebidas, por lo que se dispone de la
misma potencia de análisis matemático exacto además evidentemente de las
amplias posibilidades de simulación.
Una red de Petri estocástica determinista es una tupla (P, ψ, T, F, H, W, I, M0 , Ω)
donde (P, T, F, W, M0 ) es la red de Petri clásica ya definida, que sirve de base
para introducir parámetros temporales:
P = { p1 , p2 , . . . pm } es un conjunto finito de lugares.
T = {t1 , t2 , . . . tn } es un conjunto finito de transiciones.
F ⊂ ( PxT ) ∪ ( TxP) es un conjunto de arcos dirigidos (o relación de flujo).
H ⊂ ( PxT ) es un conjunto de arcos inhibidores.
63
i
i
i
i
Capítulo 3. Herramientas de modelado y evaluación
W : F → {1, 2, 3, . . .} es una función peso.
I : H → {1, 2, 3, . . .} es una función de peso (la de los arcos inhibidores).
M0 : P → {0, 1, 2, . . .} es el marcado inicial.
Además de una asignación de prioridades ψ x = {ψ1 , ψ2 , . . . , ψn }, que asocia la prioridad más baja (0) a las transiciones temporizadas (deterministas y
exponenciales), y mayores prioridades a (≥ 1) a transiciones inmediatas.
Se tiene además un vector Ω x = (ω1 , ω2 , . . . , ωn ) cuyos elementos ωi son:
el parámetro de la distribución exponencial negativa, es decir, la tasa
o la media del retardo de disparo si la transición ti es temporizada
exponencial.
un peso usado para calcular las probabilidades de disparo de las transiciones inmediatas, si ti lo es.
el retardo de disparo si la transición ti es determinista.
Redes de actividad estocástica. Las redes de actividad estocástica (SAN)
además de aportar las mismas prestaciones que la DSPN desde el punto de
vista del análisis cuantitativo tienen mayor potencia descriptiva al incorporar mecanismos potentes de modelado como son el finalizar una acción de
distintas formas cada una de ellas con una probabilidad determinada e incorporar puertas de entrada y salida para realizar complejas relaciones entre
los marcados de los lugares de entrada a la transición pudiendo, de esta
forma, modelar predicados entre las condiciones de habilitación de una actividad. Así mismo, con las funciones de salida se pueden conseguir nuevos
marcados, lo que potencia las posibilidades de ir a siguientes estados con un
modelo gráfico sencillo.
En el siguiente apartado se profundizará en este tipo de redes, describiendo sus elementos, la evolución del marcado... por ser la técnica utilizada para
representar los modelos formales diseñados.
64
i
i
i
i
Capítulo 3. Herramientas de modelado y evaluación
3.3. Redes de actividad estocástica
3.3.1.
Introducción
Para el estudio que se aborda en esta tesis se hará uso de las redes de
actividad estocástica (Stochastic Activitiy Networks, SAN). Estas se conciben
al principio de los años 80, ver [MM84, MMS85] y siguen estudiándose actualmente [SM02, BACS06]. Son una extensión estocástica de las redes de
Petri a las que se ha añadido la posibilidad de definir características temporales con parámetros estadísticos. Esto contribuye a incrementar la potencia
de modelado de las redes de Petri con las técnicas de evaluación de rendimiento tradicionalmente basadas en aproximaciones estocásticas. Disponen
de primitivas gráficas que permiten un alto nivel de especificación formal y
la expresión del comportamiento y dependencia de los modelos de manera
sencilla. Se puede observar la evolución del modelo a lo largo del tiempo, que
viene determinada por las condiciones impuestas en su definición gráfica.
Las herramientas2 usadas para implementar los modelos presentados en
esta tesis son UltraSAN ([SOQW95, Per95]) y su sucesora MöbiusTM 2.3.1
(ver [San99, DDD+ 00, CCD+ 01, Per07]) diseñadas por el grupo Performability Engineering Research Group (PERFORM) de la University of Illinois
(U.S.A.) a la cabeza del cual se sitúa William H. Sanders, [Gro]. Ambas soportan las especificaciones de modelos SAN (Stochastic Activity Networks),
[MMS85]. Estas herramientas proporcionan una potente técnica de descripción formal y han sido utilizadas para evaluar una gran variedad de sistemas
(ver www.crhc.uiuc.edu/PERFORM donde se muestra una lista parcial de
referencias e información sobre cómo conseguir estas herramientas). Es un
reto estudiar si SAN se puede utilizar y hasta dónde, para modelar aspectos
de un sistema tan complejo y dinámico como las redes ad hoc.
Otras herramientas para evaluar redes de Petri son DSPNexpress-NG
(Next Generation) y TimeNet. DSPNexpress-NG (Next Generation) es el último lanzamiento del paquete de software DSPNexpress. DSPNexpress (Deter2 Ambas
son herramientas públicas disponibles para propósitos educativos o de investigación.
65
i
i
i
i
Capítulo 3. Herramientas de modelado y evaluación
ministic and Stochastic Petri Nets) es un paquete de software para analizar
redes de Petri estocásticas deterministas desarrollado por el Dr. Christoph
Lindermann en el GMD Institute for Computer Architecture and Software
Technology de la Technical University de Berlín (Alemania). Su primera versión data de septiembre de 1992 y su distribución es gratuita para instituciones académicas. TimeNet (TIMEd Net Evaluation Tool) es una herramienta
software para el modelado y análisis de redes de Petri estocásticas con distribuciones de los retardos de disparo no-exponenciales. Es una herramienta
desarrollada por la Technical University de Berlín (Alemania).
UltraSAN y Möbius han sido seleccionadas como herramientas de trabajo
además de por sus características, por la experiencia previa del grupo de investigación en el uso de las mismas (PFCs y tesis doctorales). No es objetivo
de esta tesis realizar un análisis de las herramientas de simulación de redes
de Petri existentes, pero cabe mencionar el trabajo de tesis [Sem98] donde
se realizó una comparativa exhaustiva entre DSPNexpress, TimeNet y UltraSAN, seleccionando finalmente UltraSAN como la herramienta que más se
ajustaba a las necesidades (soluciones analíticas, soluciones simuladas, generación de resultados y tablas, representación de la evolución del marcado,
herramienta gráfica de edición...).
3.3.2.
Elementos de una red de actividad estocástica
Una red de actividad estocástica contiene cinco tipos de objetos básicos: lugares, actividades, puertas de entrada, puertas de salida y arcos, ver
Fig. 3.1. Las actividades (transiciones si se emplea la terminología de Redes
de Petri) representan acciones en el sistema modelado. Los lugares representan el estado del sistema modelado. Las puertas de entrada se emplean para
controlar la habilitación de las actividades y las puertas de salida se utilizan
para cambiar el estado del sistema cuando una actividad se dispara.
Lugares: los lugares representan el estado del sistema modelado. Vienen
representados gráficamente por círculos. Cada lugar aloja un cierto número
de marcas, se le denomina marcado del lugar. El conjunto de los marcados
66
i
i
i
i
Capítulo 3. Herramientas de modelado y evaluación
Figura 3.1: Elementos de una red de actividad estocástica en Möbius
de todos los lugares representa el marcado de la red. Es conveniente advertir
que las marcas de un lugar son homogéneas, en el sentido de que solamente se conoce el número de marcas en un lugar, en este sentido no hay más
marcas importantes que otras, como si pasa en las Redes de Petri coloreadas. El sentido del marcado de un lugar es arbitrario. Es decir, el número de
marcas en un lugar puede representar un número de objetos, o también el
número de peticiones esperando servicio. Al igual, el marcado de un lugar
puede representar el número de peticiones de cierta prioridad. Esta naturaleza del marcado de los lugares proporciona un alto grado de flexibilidad en
el modelo dinámico de sistemas.
Möbius tiene dos tipos de lugares, lugares representados por un círculo
azul (marcado con * en la Fig. 3.1) y un lugar especial denominado ”lugar extendido” representado por un círculo naranja (marcado con ** en la Fig. 3.1).
Los lugares extendidos son una herramienta muy potente para modelar sistemas complejos, y pueden ser asociados con una estructura o un array.
Actividades: las actividades son el equivalente a las transiciones de las Redes de Petri. Representan acciones en el sistema modelado que requieren un
cierto intervalo de tiempo para terminar. Existen de dos tipos: temporizadas
e instantáneas. Las actividades temporizadas tienen una duración que influye
en el comportamiento del modelo. Como ejemplos pueden tomarse el tiempo
de búsqueda de una ruta o el tiempo de invalidación de una ruta de la tabla
67
i
i
i
i
Capítulo 3. Herramientas de modelado y evaluación
de encaminamiento. Las actividades temporizadas vienen representadas por
óvalos huecos. Cada actividad temporizada tiene asociada su duración, una
función de distribución de tiempo de actividad. La función de distribución
del tiempo de actividad puede ser cualquier función de distribución. Cada
distribución puede depender del marcado de la red. Las actividades instantáneas representan acciones cuya duración es despreciable en comparación con
otras actividades del sistema. Están representadas por segmentos verticales
al igual que las transiciones inmediatas en las Redes de Petri.
Los casos de las actividades vienen representados por pequeños círculos
pegados a la actividad a la que afectan. Cada caso de una actividad estocástica representa un posible resultado. Cada actividad tiene una distribución
de probabilidades que se denomina distribución de casos. Esta distribución
depende del marcado de la red en el momento que finaliza la actividad. En
caso de que no aparezcan círculos en la actividad, se asume que sólo existe
un resultado posible para esa actividad con probabilidad uno.
Además existe una reactivación asociada a cada actividad. Esta función
da las condiciones de marcado bajo las cuales una actividad es reactivada. La
reactivación de una actividad ya habilitada supone la detención inmediata
de la actividad y la obtención de un nuevo tiempo de actividad (duración o
retardo) a partir de la distribución de tiempo de la actividad (distribución del
retardo). La función de reactivación consta de un predicado de activación y
un predicado de reactivación. Una actividad se reactivará tras un cambio de
marcado si la actividad permanece sensibilizada, el predicado de reactivación
se cumple con ese nuevo marcado y el predicado de activación se cumplía
para el marcado que sensibilizó originalmente la actividad.
Puertas de entrada: estas puertas controlan la habilitación de las actividades, sirven para conseguir arcos inhibidores y definen los cambios de
marcado en los lugares de entrada cuando la actividad se dispare. Vienen representados gráficamente por triángulos cuyo vértice va unido a la actividad
que controlan. Al lado opuesto de ese vértice llegan los arcos que parten de
los lugares de entrada. Las puertas de entrada se definen con un predicado
68
i
i
i
i
Capítulo 3. Herramientas de modelado y evaluación
Figura 3.2: Equivalencia de una puerta de entrada simple.
habilitante y una función. El predicado habilitante es una función booleana
que controla si la actividad conectada está sensibilizada o no. Puede ser una
función de los marcados de los lugares de entrada. La función de la puerta
de entrada define los cambios de marcado cuando la actividad se dispara. Un
lugar conectado directamente a una actividad es equivalente a una puerta de
entrada cuyo predicado habilita la actividad si el lugar de entrada alberga al
menos una marca y cuya función reduce el marcado del lugar entrante, ver
Fig. 3.2.
Puertas de salida: como las puertas de entrada, las de salida definen el
cambio de marcado al dispararse la actividad de la cual dependen. La única
diferencia es que las puertas de salida van asociadas a un único caso. Vienen
representadas por un triángulo. Uno de los lados va conectado a la actividad
(o al caso de la actividad). Del vértice opuesto parten los arcos hacia los
lugares de salida. Las puertas de salida se definen con solo una función.
Esta determina los cambios de marcado cuando se dispara la actividad a la
Figura 3.3: Equivalencia de una puerta de salida simple.
69
i
i
i
i
Capítulo 3. Herramientas de modelado y evaluación
Figura 3.4: Posibles conexiones de elementos con arcos
que está conectada. Conviene resaltar que una actividad unida a un lugar de
salida es equivalente a un a puerta de salida cuya función aumenta en uno el
total de marcas albergadas en el lugar de salida, ver Fig. 3.3.
Arcos: los arcos unen los distintos elementos de una red marcando su
dependencia. A partir de este momento los arcos se asumen siempre de peso
unidad (UltraSAN no permite definir el peso de los arcos). Para crear un
arco de peso superior a uno se necesita una puerta de entrada cuya función
reduzca el marcado del lugar de entrada en tantas marcas como peso tenga
el arco que se quiera representar.
Nunca puede existir un arco uniendo dos elementos del mismo tipo. Tampoco están permitidas todas las combinaciones entre elementos. Las combinaciones posibles son las que se presentan en la Fig. 3.4.
3.3.3.
Algoritmos de cambio de marcado
Durante su ejecución una red de actividad estocástica pasa por una secuencia de marcados. Un marcado estable es aquel en el que no hay actividades instantáneas sensibilizadas. En un marcado inestable existe al menos una
70
i
i
i
i
Capítulo 3. Herramientas de modelado y evaluación
transición instantánea sensibilizada. Puesto que los marcados inestables no
influyen en las variables de comportamiento, no es necesario conservar información en relación a ellos. Por tanto, el algoritmo de cambio de marcado se
centra en la obtención de secuencias de disparo de actividades temporizadas
y el alcance de marcados estables. Este algoritmo se describe a continuación.
Reglas de habilitación y disparo
Para que una actividad esté sensibilizada el predicado de todas sus puertas de entrada debe ser cierto y todos los lugares de entrada conectados directamente a la actividad deben albergar al menos una marca. Para que la
actividad temporizada se dispare, deben cumplirse estas condiciones durante todo el periodo de espera. Las probabilidades de los casos se evalúan con
el marcado existente justo en el momento en que se va a disparar la actividad.
Cuando la actividad se dispara, uno de los casos es escogido, con arreglo a la
distribución de probabilidades de los casos. Se tienen que seguir los siguientes pasos:
Todos los lugares de entrada directamente conectados a la actividad
disminuyen su marcado en una unidad.
Se ejecutan todas las funciones de las puertas de entrada conectadas a
la actividad.
Todos los lugares de salida directamente conectados a la actividad incrementan en una unidad su marcado.
Se ejecutan todas las funciones de las puertas de salida conectadas a la
actividad.
El orden de los pasos que se han indicado anteriormente es el que UltraSan y Möbius siguen por programación. Las funciones de las puertas de
entrada se ejecutan antes que las de las puertas de salida, pero no hay orden
71
i
i
i
i
Capítulo 3. Herramientas de modelado y evaluación
especificado entre puertas de un mismo tipo. Por lo tanto, es necesario asegurarse en la fase de modelado que el orden de ejecución de las puertas de
entrada (o las de salida) no influye en el comportamiento del sistema.
La elección de la actividad que se va a disparar, dado un marcado, se basa
en:
Las funciones de distribución de tiempo de actividad (distribución del
retardo) asociado a cada actividad habilitada en ese momento.
El hecho de que cualquier actividad instantánea habilitada tiene prioridad sobre las actividades temporizadas.
En los diagramas de la Fig. 3.5 quedan contempladas las 4 posibilidades
de ejecución de una actividad temporizada de un modelo de UltraSAN/Möbius. Queda claro que no contempla la norma de descuento de tiempo
con memoria de disparo (RA), solamente permite programar la norma de remuestreo (RR) o la de sensibilización (RE). Las áreas sombreadas representan
el tiempo durante el cual la actividad está sensibilizada. Cada línea muestra
una actividad habilitada con un retardo muestreado. En cada línea se muestra
una actividad que inicialmente está habilitada y tiene un tiempo de actividad
previsto. En el caso (a), la actividad se dispara al vencer el temporizador, el
nuevo marcado no habilita la actividad. En el caso (b) la actividad se dispara
al vencer el temporizador, el nuevo marcado alcanzado si habilita la actividad, por tanto, se muestrea una nueva duración de la actividad. En (c) antes
de que venza el temporizador las condiciones que habilitan la actividad dejan de cumplirse, por tanto la actividad es interrumpida y abortada. En (d),
antes de que venza el temporizador la actividad es reactivada, la actividad
no se dispara hasta que transcurra el nuevo tiempo de actividad.
Redes de actividad estocástica estables y bien especificadas
Para cada marcado estable es necesario determinar el conjunto de actividades que pueden dispararse, los casos que pueden ser elegidos y la distribución de probabilidades de los posibles próximos marcados estables. La
72
i
i
i
i
Capítulo 3. Herramientas de modelado y evaluación
Figura 3.5: Posibilidades de ejecución de una actividad temporizada de un
modelo en Möbius
elección de una actividad y un caso conlleva la ejecución de las puertas apropiadas, alcanzándose el siguiente estado que puede ser estable o no. Si se
trata de un marcado estable, la probabilidad asociada a ese marcado es simplemente la probabilidad asociada al caso escogido. Si no es un marcado
estable, recursivamente se debe evaluar cada posible salida de cada actividad
instantánea y cada marcado inestable que resulte de sus disparos.
Existen dos importantes asuntos relacionados con las actividades instantáneas. Primero, ¿Existe algún marcado alcanzable tal que uno de los casos
que se puedan escoger de una de las actividades que puedan ser disparadas
en ese marcado provoque una secuencia infinita de disparos de actividades
instantáneas y de marcados inestables?. Si no existe ninguno, la red de actividad estocástica es estable. Según el artículo [San88] no se puede decidir
si una red de actividad estocástica es estable. UltraSan supone que una red
de actividad estocástica es inestable si se rebasa la visita consecutiva de un
73
i
i
i
i
Capítulo 3. Herramientas de modelado y evaluación
Tabla 3.1: Medidas de rendimiento en Möbius
Medidas de premio
Premio de impulso
Mide la finalización de una actividad
Premio de tasa
Mide la consecución de un marcado
Medidas de actividad
Diferencia de tiempo entre dos
finalizaciones de una actividad
cierto número de estados inestables.
La segunda cuestión trata de modelos de redes de actividad estocástica
bien especificados [San88]. Si existe más de una actividad instantánea habilitada en algún marcado alcanzable, y la distribución de probabilidades de los
próximos marcados estables depende de qué actividad instantánea se dispare
primero, el modelo no está bien especificado. Puesto que el orden de disparo
de las actividades instantáneas no está especificado, éste no debe importar a
la hora de hallar soluciones en una red de actividad estocástica. UltraSAN/Möbius comprueba que los modelos están bien especificados cada vez que
se alcanza un marcado inestable, verificando que la probabilidad de alcanzar
cada posible próximo marcado estable no depende de las posibles elecciones
de orden entre actividades instantáneas.
3.3.4.
Medidas de rendimiento en UltraSan/Möbius
Para poder evaluar el rendimiento del modelo, se definen unas medidas
que se irán tomando durante la resolución del modelo. Estas medidas de
rendimiento (performability variables) son los resultados buscados y no se
deben confundir con las variables globales (global variables) que se pueden
introducir en el diseño del modelo para variar sus condiciones iniciales.
En UltraSAN/Möbius existen dos tipos de medidas de rendimiento: de
premio (reward variable) y de actividad (activity variable), ver tabla 3.1.
74
i
i
i
i
Capítulo 3. Herramientas de modelado y evaluación
Medidas de premio
Se entiende por "premio"la asociación entre un evento y unas condiciones que se establecen. Si ocurre el evento y se cumplen esas condiciones se
dice que se ha conseguido un "premio". Las medidas de premio evalúan la
consecución de premios en el modelo. Existen dos tipos de eventos que se
pueden medir con premios. Si el evento es la finalización de una actividad se
habla de premios de impulso (impulse rewards), mientras que si el evento es
un determinado marcado se habla de premios de tasa (rate rewards).
Sea cual sea el tipo de evento, se han de tener en cuenta los siguientes
aspectos:
Las medidas pueden ser tomadas en intervalos de tiempo o en instantes
de tiempo.
Los resultados se pueden obtener para transitorios o en régimen permanente.
Se puede estimar la media, la varianza o las funciones de distribución de
probabilidad y de densidad de probabilidad de una medida.
Medidas en intervalo de tiempo: Ejemplos de premios acumulados en
un intervalo de tiempo [t0 , t1 ] son el número de servicios realizados en un
intervalo de tiempo o la porción de tiempo que un sistema funciona correctamente dentro de ese intervalo. Para premios de impulso (asignados a una
actividad), la medida da el número de veces que finaliza esa actividad en el
intervalo. Para premios de tasa (asignados a un marcado), la medida es el
tiempo que el modelo está en ese marcado dentro del intervalo definido.
Medidas en instante de tiempo: Ejemplos de premios en un instante de
tiempo son el número de marcas en un lugar concreto o si el sistema está
funcionando correctamente o no en ese instante. Para premios de impulso
(asignados a una actividad), la medida toma el valor de la tasa asociada a
la anterior finalización de la actividad. Para premios de tasa (asignados a un
75
i
i
i
i
Capítulo 3. Herramientas de modelado y evaluación
marcado), la medida toma el valor del premio asociado con el marcado en
ese momento.
Transitorios o régimen permanente: Para medidas en instante de tiempo,
si t < ∞ se habla de medida en transitorio, mientras que si t −→ ∞ se habla
de medida en régimen permanente. Para medidas en intervalo de tiempo, el
régimen permanente se obtiene si se considera t1 −→ ∞ en [t0 , t1 ].
Media, varianza o distribuciones de probabilidad: Las medidas de premio son medidas aleatorias, es decir, pueden tomar diferentes valores con
una determinada probabilidad. Por ello, se puede hablar de la función de
distribución de probabilidad y, por lo tanto, de su media y varianza. Por
ejemplo, una medida de premio que mida el número de trabajos por realizar en una cola tiene una distribución de probabilidad de todos sus posibles
valores y su media corresponde al promedio de la ocupación de la cola. Puede ser interesante conocer la función de distribución de probabilidad y la
función de densidad de probabilidad de la medida (para a partir de ella obtener otras características) o simplemente obtener su media y su varianza. En
UltraSAN/Möbius los premios de tasa se definen por un conjunto de pares
predicado-función, llamados tasas. Cuando uno de los predicados es cierto, se consigue un premio por valor del resultado de la función asociada. El
total del premio es la suma de contribuciones de todas las tasas cuyos predicados son ciertos. Esto permite dar valores condicionales a la medida de
premio según el marcado del modelo. Los premios de impulso se definen
mediante la asignación de un valor numérico a cada actividad. Cuando la
actividad finaliza, el premio suma su valor asociado. Una medida de premio
puede consistir en combinaciones de premios de tasa y premios de impulso. Además, se pueden definir parámetros estadísticos para la simulación del
modelo.
Medidas de actividad
Las medidas de actividad evalúan el tiempo que pasa entre dos finalizaciones de una misma actividad. Se trata de medir el tiempo entre dos finali-
76
i
i
i
i
Capítulo 3. Herramientas de modelado y evaluación
zaciones consecutivas (sean la n-1 y la n) de una actividad, o de una serie de
ellas (por ejemplo, la n-100 y la n).
El concepto de medidas en instante de tiempo no tiene sentido aquí, pero
sí se puede hablar de medidas transitorias (n finito) o en régimen permanente
(n −→ ∞). Al igual que en las anteriores, se puede evaluar la función de
distribución completa, su media o su varianza. En UltraSAN, las medidas de
actividad se definen sólo mediante sus parámetros estadísticos.
3.3.5.
Procesos estocásticos y la propiedad de Markov
Para obtener los resultados de las medidas de rendimiento de un modelo,
existen dos métodos de resolución: obtener la solución analítica [SM91] o
mediante simulación [SF93].
La simulación se puede aplicar a cualquier proceso estocástico, y por lo
tanto también a un modelo de red de actividad estocástica. Sin embargo, la
solución analítica requiere que el modelo sea de uno de estos dos tipos:
Actividades de distribución exponencial (procesos de Markov). Para ello
todas las actividades temporales deben ser exponenciales y además la función de reactivación debe ser tal que las actividades sean rehabilitadas con la
suficiente frecuencia para que su distribución de probabilidad sólo dependa
del marcado actual.
Actividades de distribución temporal o determinista. Para ello todas las
actividades temporales deben ser exponenciales o deterministas y sólo puede
haber como mucho una actividad determinista habilitada a la vez. El tiempo de una actividad determinista no depende del marcado. Y la función de
reactivación debe ser tal que las actividades sean rehabilitadas con la suficiente frecuencia para que su distribución de probabilidad de la actividad
sólo dependa del marcado actual.
No existe ninguna restricción para actividades instantáneas, con tal que el
modelo resultante esté estabilizado y bien definido. Los marcados inestables
77
i
i
i
i
Capítulo 3. Herramientas de modelado y evaluación
(en los que hay actividades instantáneas habilitadas) no contribuyen a las
medidas de rendimiento, por lo que no se tienen en cuenta.
Para los modelos descritos anteriormente, la condición de reactivación de
las actividades exponenciales es necesaria para conservar la propiedad de
Markov, ya que existen modelos con todas sus actividades exponenciales que
no son de Markov. Esta propiedad dice, informalmente, que el comportamiento futuro de un proceso estocástico sólo depende del estado actual, pero
no de estados pasados.
Suponiendo que una actividad exponencial es habilitada en un marcado
Mn y su duración depende del marcado en ese momento, es decir, es t(Mn ).
Antes de que la actividad finalice, se alcanza un nuevo marcado Mn+1 en el
que la actividad sigue habilitada, pero el tiempo de la actividad depende el
marcado anterior, por lo que no se cumple la propiedad de Markov.
Una condición suficiente para asegurar la propiedad de Markov es hacer
el predicado de activación y de reactivación de las actividades iguales a 1
(verdadero). En este caso, al alcanzar un nuevo marcado en el que la actividad
sigue habilitada, inmediatamente es rehabilitada tomando un nuevo valor
Mn+1 que sólo depende del estado actual.
Cuando UltraSAN/Möbius busca una solución analítica de un modelo,
asume que la función de reactivación (predicado de activación y reactivación)
está definida de forma que cumpla la propiedad de Markov. Si el modelo
pertenece a unos de los dos tipos descritos anteriormente, definirla como 1
no modificará las propiedades estocásticas del modelo. Por otra parte, en la
simulación de un modelo no se asume que la función de reactivación cumple
la propiedad de Markov, ya que se pueden simular todo tipo de procesos.
Definiéndola como 1, se garantiza la igualdad de condiciones en simulación
con la solución analítica. Cuando se genere el espacio reducido de estados
se debe tener en cuenta que para UltraSAN/Möbius un estado equivale al
marcado del modelo junto con el premio de impulso asociado a la actividad
que ha llevado al modelo a ese marcado. Por ello, un mismo marcado al que
se llega por la finalización de dos actividades distintas da lugar a dos estados
78
i
i
i
i
Capítulo 3. Herramientas de modelado y evaluación
distintos, siempre que haya definido un premio de impulso.
3.3.6.
Métodos de resolución. Soluciones analíticas y por simulación
Como ya se ha comentado, UltraSAN/Möbius incorpora varios métodos
analíticos y simuladores. La elección del método de resolución dependerá
tanto del tipo de modelo como de las medidas de rendimiento definidas.
En general, los métodos analíticos se pueden aplicar si:
El modelo es del tipo descrito en la sección 3.3.5 (todas las actividades
son exponenciales o existe al menos una actividad determinista habilitada en cada momento).
El modelo tiene un espacio finito de estados posibles.
No se han definido medidas de actividad.
Los métodos analíticos que incorpora UltraSAN/Möbius son los siguientes:
Método directo en régimen permanente (Direct Steady State Solver, dss).
Método iterativo en régimen permanente (Iterative Steady State Solver,
iss).
Método para transitorios (Transient Solver, trs).
Método adaptativo para transitorios (Adaptative Transient Solver, ats).
Método de premios acumulados (Accumulated Reward Solver, ars).
Método de distribución de probabilidad (Distribution Probability, pdf ).
Método determinista iterativo en régimen permanente (Deterministic Iterative Steady State Solver, diss).
79
i
i
i
i
Capítulo 3. Herramientas de modelado y evaluación
Tabla 3.2: Medidas que se pueden obtener mediante métodos analíticos
Modelos
Actividades
exponenciales
Actividades
ponenciales
deterministas
Medidas de rendimiento
Instante de tiempo
Media, varianza
distribuciones
Instante de tiempo3
Media, varianza
Transitorios
distribuciones
media
Intervalo de tiempo
distribución
Régimen permanenInstante de tiempo4
Media, varianza
te
distribuciones
probabilidad
Régimen permanente
exy
y
Método
dss iss
y
trs
ars
pdf
diss
y
de
Tabla 3.3: Medidas que se pueden obtener mediante la simulación
Medidas de rendimiento
Transitorios
Régimen
nente
perma-
Tipo de medidas
Método
Instante e intervalo de Media y varianza
tiempo
Distribuciones de
probabilidad
Medidas de premio
TSim ITSim
Medidas de actividad
TSim
Instante de tiempo
Ambos tipos
SSim
Media y varianza
Método avanzado determinista iterativo en régimen permanente (Advanced Deterministic Iterative Steady State Solver, adiss).
Los simuladores siempre pueden aplicarse a todos los modelos. Los simuladores que incorpora UltraSAN/Möbius son los siguientes:
Simulador en régimen permanente (Steady State Simulator, SSim).
Simulador por terminación (Terminating Simulator, TSim).
Simulador de muestras relevantes por terminación (Importance Sampling
Terminating Simulator, ITSim).
Como se puede observar en las tablas 3.2, 3.3, el tipo de medida de rendimiento determina la elección de un método analítico5 u otro. Para los si5 Métodos
80
analíticos (sólo para modelos con medidas de premio)
i
i
i
i
Capítulo 3. Herramientas de modelado y evaluación
muladores6 , el método escogido sólo determina si se miden transitorios o en
régimen permanente.
3.3.7.
Fases del estudio de un sistema
Desde que comienza el estudio de un sistema mediante UltraSAN/Möbius hasta que se obtienen los resultados deseados para analizar el rendimiento del sistema se pasa por cuatro fases:
Modelado del sistema.
Definición de condiciones iniciales.
Resolución del modelo.
Análisis de resultados.
Modelado del sistema. El modelo del sistema es una representación del
mismo con las herramientas que las redes de actividad estocástica permiten.
Habitualmente el modelo se centra en un aspecto concreto del sistema real
que interesa evaluar, es decir, no es una representación fiel y total del sistema.
En UltraSAN/Möbius el modelo consta de varios elementos a diseñar por
pasos:
Modelos atómicos: Los modelos atómicos7 o subredes son los grafos que
modelan gráficamente las partes del sistema. Junto al grafo es necesario incluir la especificación de todos sus elementos para que la subred esté perfectamente definida.
Modelo compuesto: Especifica la dependencia entre las distintas subredes o modelos atómicos definidos para dar lugar al modelo total. De esta
forma se puede ir diseñando el modelo por partes diferenciadas para luego
ensamblarlas.
6 Simuladores
(para todos los modelos)
utilizada en los manuales de UltraSAN y Möbius.
7 Terminología
81
i
i
i
i
Capítulo 3. Herramientas de modelado y evaluación
Medidas de rendimiento: Para evaluar ciertas características de interés en
el sistema modelado hay que definir procedimientos de medida que ofrezcan
los resultados deseados.
El conjunto de estos tres elementos es lo que se ha dado en llamar composed
SAN-based reward model [San88, SM91, SF93].
Definición de las condiciones iniciales. UltraSAN permite variar las condiciones iniciales del modelo y otras variables que hayan sido definidas en
la fase anterior. Se puede estudiar el rendimiento del modelo en distintas
situaciones. Para ello UltraSAN introduce los conceptos de experimento y
estudio:
Experimento: Es una realización concreta de las condiciones iniciales para
la que el modelo va a ser resuelto.
Estudio: Es un conjunto de experimentos (uno sólo o normalmente varios). Al modificar una o varias condiciones iniciales del modelo se da lugar
a un estudio que evaluará su repercusión en el rendimiento del sistema.
Resolución del modelo. Según las características del modelo diseñado,
se podrá resolver analíticamente o será necesario recurrir a la simulación. Ya
que no existe una única técnica válida para todas las situaciones y modelos,
UltraSAN/Möbius incorpora varios métodos analíticos y simuladores, cada
uno de ellos enfocado a un caso específico.
Los modelos compuestos basados en medidas de rendimiento ofrecen
ventajas a la hora de su resolución. Para encontrar la solución analítica, se
pueden explorar simetrías en el modelo para reducir el número de estados
alcanzables [SM91]. Para simulación se puede reducir la lista de futuros eventos agrupándolos por su tipo [SF93].
Análisis de resultados. Tras la resolución del sistema, se podrán obtener los resultados y analizarlos. Para ello se cuentan con programas de representación gráfica incluidos en UltraSAN o la posibilidad de exportar los
resultados a otras aplicaciones.
82
i
i
i
i
Capítulo 3. Herramientas de modelado y evaluación
3.4. Conclusiones
Las redes de Petri y por extensión las redes de actividad estocástica (SAN)
son una herramienta muy potente de modelado y evaluación, han sido ampliamente utilizadas en la evaluación de sistemas complejos (algunos ejemplos se describen más detalladamente en el capítulo 5) como son las redes de
comunicaciones industriales, ver [NRD94], en la evaluación del rendimiento
de protocolos de acceso al medio, en el estudio de protocolos de encaminamiento en redes ad hoc, ver [XMT02, ZZ03], estándares de comunicaciones
como 802.11, ver [GH99, HG01]...
En general son una buena técnica de descripción formal para expresar
mecanismos básicos utilizados por los sistemas distribuidos (intercambio de
mensajes, sincronización, compartición de recursos, etc.). UltraSAN y Möbius
permiten realizar un modelo compuesto a partir de distintos modelos atómicos de forma sencilla, aunque no dispongan de herramienta de verificación
sí permiten obtener la evolución del marcado, lo que ayuda a comprobar si
el modelo se comporta como uno espera. Desde el punto de vista del análisis
son herramientas muy completas (varios métodos para las soluciones analíticas en régimen permanente y en régimen transitorio, al igual que para las
soluciones simuladas), además disponen de una opción de documentación
muy útil para obtener información de cada subred programada. Por todo
ello, las SAN se consideran una herramienta válida para modelar una red ad
hoc con un protocolo de encaminamiento reactivo como se ha expuesto en el
capítulo anterior, capítulo 2, en un escenario como el que se presenta en el
capítulo 4.
83
i
i
i
i
i
i
i
i
Capı́tulo
4
Escenario
A la hora de modelar cualquier sistema, en este caso una red de comunicaciones ad hoc, es necesario conocer las características del escenario de
trabajo.
En este capítulo se analizan las características y los servicios a ofrecer en
un entorno industrial real en el que se ha implantado un sistema de supervisión. En las estaciones remotas que forman parte de estas instalaciones pueden generarse de forma puntual redes ad hoc cuando los usuarios
que trabajan en la instalación quieren intercambiar información.
Utilizando las propiedades del escenario y habiendo definido los servicios
típicos en este tipo de instalaciones, se han definido los parámetros y valores a utilizar para representar dicho escenario en los modelos formales.
85
i
i
i
i
Capítulo 4. Escenario
4.1. Entorno
Uno de los objetivos de esta tesis, ver capítulo 1, es analizar el comportamiento de las MANET en entornos de tipo industrial y estudiar cómo afecta
a su funcionamiento y a los servicios ofrecidos el movimiento de los nodos
principalmente. Para ello en este capítulo se definirán las características del
escenario (número de nodos, rango de transmisión radio de los nodos, tamaño del área, velocidad de movimiento...) a utilizar en los modelos formales
que se describirán en el capítulo 5, así como los servicios a ofrecer (tipo de
información a transmitir entre los usuarios de la instalación).
El entorno de trabajo tomado como referencia es un sistema industrial,
concretamente un sistema de gestión de aguas que actualmente está siendo
explotado por el Ayuntamiento de Valencia, pero podría ser cualquier otra
gran instalación como una red de distribución de energía o redes de sensores
medioambientales, todos ellos operando en entornos metropolitanos.
Un ejemplo de monitorización remota de las instalaciones se presenta en
[CSB+ 01] donde se expone cómo las compañías eléctricas utilizan el vídeo
en tiempo real para supervisión reduciendo así la mano de obra necesaria en
el control de las plantas eléctricas. Otro ejemplo es la aplicación de tecnologías inalámbricas para la mejora del proceso de producción de un astillero,
ver [SLH02]. En este caso los espacios son de amplias dimensiones, con elementos móviles y metálicos donde se pueden crear redes ad hoc donde los
operarios lo necesiten para ofrecer comunicación bidireccional con los centros
de control y la planificación de la instalación.
El sistema del que se extraen las características para determinar el escenario a modelar es un sistema de monitorización y control que opera en
un entorno urbano sobre una red heterogénea1 mixta (pública-privada) incluyendo redes inalámbricas. Se pretende evaluar el comportamiento de las
redes ad hoc que se generen en algunos de sus nodos extremos (estaciones
1 P.
Neumann, aborda en [Neu07] el estudio sobre la utilización de las redes heterogéneas
como la que aquí se estudia (redes de área local y banda ancha, cableadas e inalámbricas) en el
dominio de la automatización industrial.
86
i
i
i
i
Capítulo 4. Escenario
remotas) y su uso, es decir, aprovechando que los técnicos están supervisando y trabajando en la instalación, cada operario puede actuar como nodo
receptor/encaminador de la información solicitada para que ésta llegue a su
destino. Si tras este estudio se determina que los servicios a ofrecer por estos
sistemas de supervisión y control pueden llegar al usuario final correctamente atravesando las redes ad hoc generadas, se estará aprovechando la propia
topología de la red actual sin necesidad de una infraestructura adicional.
La integración de servicios avanzados de telemonitorización y telecontrol
en este tipo de instalaciones aporta importantes ventajas en su gestión y explotación, pero se ha de tener en cuenta que se está trabajando en un entorno
industrial, más aún cuando se está hablando de comunicaciones inalámbricas. En [DP93] Decotignie y Pleineveaux realizan un amplio estudio de las
redes de comunicaciones industriales y en [CDD06] se destaca la necesidad,
a la hora de diseñar los estándares y normas, de considerar las características de los entornos industriales. Estos tienen severas limitaciones y presentan unas características muy particulares (fiabilidad, interferencias con los
equipos existentes, propagación multicamino, bajo consumo de energía, reconfiguración en tiempo real, seguridad...) que necesitan requerimientos específicos y eventualmente estándares. Este trabajo estudia el alcance de las
tecnologías inalámbricas desde el punto de vista técnico, las limitaciones de
las redes inalámbricas en los entornos industriales y concretamente del rango
de transmisión.
Entre los servicios avanzados a ofrecer por estos sistemas de telemonitorización, como se explicará posteriormente, están los servicios de media. El
tema de la transmisión multimedia en entornos industriales se aborda en diversos trabajos. Neumann en su análisis sobre la integración de los diferentes
niveles de redes de comunicación en la automatización industrial, resalta como uno de los principales requerimientos la necesidad de soportar aplicaciones multimedia, ver [Neu01]. En [TVPF01] Tovar destaca cómo los distintos
desarrollos en redes industriales (Profibus DP, Profibus 12 Mpbs) están incrementando el rango de aplicaciones de los mismos, y en especial, permitiendo
la utilización de éstos para el transporte de contenido multimedia. Pacheco y
87
i
i
i
i
Capítulo 4. Escenario
Tovar, ver [PT02], en su prospectiva sobre aplicaciones en el ámbito industrial,
destacan la utilización de herramientas multimedia para monitorización, documentación, localización, videoconferencia, etc. En [SS07] se aborda el tema
de la transmisión multimedia en entornos industriales, concretamente se presenta un sistema de planificación flexible para redes industriales que permite
la planificación de tráfico de vídeo con fines de monitorización industrial.
Como resultado hay una mejora en la calidad de las fuentes de vídeo así como en el número de fuentes, que puede coexistir con el tráfico de control sin
afectar a su QoS.
Es conocido que uno de los inconvenientes que presentan los modelos
formales son las simplificaciones y suposiciones introducidas. Éstas algunas
veces enmascaran características importantes del comportamiento real de los
protocolos. Sin embargo, es necesario e inevitable realizar algunas hipótesis,
de hecho, en este trabajo a la hora de definir el escenario se van a realizar
diversas suposiciones y aproximaciones: se asume que los enlaces son simétricos, se supone una detección perfecta del canal y unas condiciones del
canal ideales. Por ejemplo, no se han modelado al detalle el problema del
desvanecimiento de señal en el canal (fluctuaciones de corto plazo en la calidad
del canal), el problema del nodo oculto, donde los nodos que no pueden establecer conexión directamente entre ellos pueden estar transmitiendo mensajes
simultáneamente a un mismo vecino común a la misma frecuencia y el problema del nodo expuesto, donde un nodo cercano a un nodo que está enviando
datos es incapaz de enviar o recibir. Tampoco se ha considerado tráfico en
la red, por tanto siempre hay recursos disponibles. Es necesario realizar suposiciones a la hora de modelar (las suposiciones aquí enumeradas han sido
utilizadas en otros trabajos de modelado, ver [GH99, HG01]) porque no es
posible modelar todos los aspectos de una red o sistema y se debe centrar la
atención y los esfuerzos en los aspectos que se consideran más importantes
para el estudio, en este caso el modelado de una red ad hoc completa con
nodos móviles, la obtención de la ruta exacta desde origen a destino y el modelado del tiempo de establecimiento y recuperación de una ruta, aspectos
en los que se profundizará en el capítulo 5.
88
i
i
i
i
Capítulo 4. Escenario
4.1.1.
Área de trabajo
En cuanto al tipo de sistema bajo estudio, generalmente, una red de saneamiento de aguas está formada por una estación central y varias estaciones remotas. Desde la estación central se supervisa el sistema visualizando
imágenes reales de cada una de las estaciones remotas que dan soporte al
control de la instalación dispersa geográficamente, se dan órdenes (apertura
de compuertas, activación/desactivación de bombas, desarenadores...) o se
gestionan alarmas enviadas por los equipos que controlan la instalación. Las
estaciones remotas en muchos casos son grandes instalaciones de bombeo
o estaciones depuradoras. El personal técnico que trabaja en ellas a menudo necesita información en tiempo real de la instalación o actuar sobre el
equipamiento de la propia estación. En este contexto se pueden formar en
la estación remota de control estructuras ad hoc donde cada nodo sería un
técnico que se encuentra en dicha estación. Por ello, el número de nodos que
puede formar una red de estas características está relacionado con el personal que opera en dicha estación remota utilizando dispositivos móviles para
obtener la información de supervisión o control. En este tipo de sistemas,
como máximo el número de usuarios puede ser 5 ó 6 y pueden dispersarse a
lo largo de un área que normalmente no excede los 100000 m2 .
Plano unidimensional
Los primeros modelos realizados para esta tesis fueron situados en un
escenario de una dimensión, y aunque no representan un escenario real,
pueden ofrecer información en cuanto al funcionamiento de una red donde no siempre todos los nodos pueden tener comunicación directa. Sirven
para plantear las primeras dificultades y sus soluciones en un entorno más
sencillo y así poder ver la viabilidad del trabajo en dos dimensiones.
El escenario de trabajo es un segmento donde se sitúan los nodos de la
red. Suponiendo una red de tres nodos, ”A”, ”B” y ”C”, ver Fig. 4.1, para
que el nodo ”A” alcance al nodo ”B”, este debe quedar dentro de la zona
89
i
i
i
i
Capítulo 4. Escenario
Figura 4.1: Ejemplo de tres nodos situados en un segmento donde se muestra su cobertura
de cobertura del nodo ”A”. El que las zonas de cobertura se solapen no es
suficiente, el nodo a alcanzar debe quedar dentro de la cobertura del nodo
que quiere comunicar. En el segmento se muestra la zona de cobertura de los
tres nodos, todos tienen el mismo alcance y su valor es de 2 saltos. ”A” no
puede alcanzar a ”B”, aunque sus zonas de cobertura se solapan, pues ”B”
no está dentro de la zona de cobertura de ”A”. En cambio ”B” puede alcanzar
a ”C”, pues C queda dentro de la zona de ”B” y a su vez ”B” también queda
dentro de la zona de cobertura del nodo ”C”.
Plano bidimensional. Zona de trabajo dividida en celdas hexagonales
Para los modelos más complejos se trabaja en un escenario bidimensional.
Se va a suponer que la superficie por la que se mueven los nodos está dividida en celdas hexagonales2 , lo que supone una aproximación de la realidad.
Esta técnica ha sido utilizada en otros trabajos, ver [GH06, MGC05], aunque
no para el caso de redes ad hoc.
La zona de trabajo presentada en este apartado es la utilizada definitivamente en todos los modelos bidimensionales mostrados en esta tesis. Se
parte de lo que se denomina mosaico tipo T, donde el centro es una celda.
Tal y como se muestra en la Fig. 4.2 las celdas se numeran a partir de una
dada (X, Y). El modo de numerar las celdas se rige según el ángulo con el
2 Inicialmente
se definió una zona de trabajo bidimensional formada por celdas hexagonales,
pero la numeración de las celdas escogida no facilitaba el modelado de la posición de los nodos
y su movimiento. Esta zona de trabajo se presenta en el apéndice C.1.
90
i
i
i
i
Capítulo 4. Escenario
que se mueve el nodo para pasar de una celda a otra, aumentando en una
unidad la numeración de una o las dos coordenadas, disminuyendo esta numeración en una unidad o manteniendo el valor de la numeración de una o
las dos coordenadas de la celda. Destacar los trabajos [Gar01, CGM02], aunque originalmente fueron utilizados para modelar el área de localización de
teléfonos móviles, se han utilizado como base para establecer la zona formada con celdas hexagonales y su numeración así como para implementar las
subredes dedicadas a la posición y movilidad de los nodos en este trabajo de
tesis.
Tras numerar las celdas dependiendo del ángulo de desplazamiento la
zona de trabajo final es la mostrada en la Fig. 4.3. La zona ha sido creada a
partir de un mosaico T3 (3 anillos, sin contar la celda central). A continuación se explica porqué tiene esta forma final la zona de trabajo: dependiendo
del ángulo de movimiento se puede incrementar en una unidad el valor de
la coordenada o decrementar, es decir, se puede tener una suma (+1) pero
también una resta (-1), y teniendo en cuenta que las coordenadas de los nodos vendrán representadas en los modelos formales por el marcado de dos
lugares, la celda central no puede ser la (0, 0) ni la (1, 1), porque al calcular
las coordenadas de las vecinas habría celdas con coordenadas negativas (las
marcas de los lugares correspondientes no podrían representar estos valores).
Por ello las coordenadas de la celda central deben coincidir con el tamaño del
mosaico (área de trabajo) deseado, es decir, si la zona de trabajo parte de un
mosaico T3 , la celda central deberá ser la (3, 3). En este caso concreto se tendrían 3 anillos completos alrededor de la celda central, y además los picos de
los extremos necesarios para completar la numeración de las coordenadas.
De otro modo, sin estos picos (celdas de color morado) no se tendría la celda
(0, 0) ni la (6, 6) entre otras, ver Fig. 4.3. Del mismo modo, una zona de trabajo que parte de un mosaico T4 estaría formado por 4 anillos alrededor de
la celda central y las celdas correspondientes de los extremos, y así sucesivamente. Sea cual sea el tamaño, la forma final del área de trabajo obtenida con
esta numeración es un paralelogramo como se aprecia en la Fig. 4.3.
Cuando se utiliza el término rango de cobertura radio el concepto en el
91
i
i
i
i
Capítulo 4. Escenario
Figura 4.2: Zona de trabajo formada por celdas hexagonales. Dependiendo
de la celda de partida y del ángulo de movimiento del nodo se obtienen las
coordenadas de la celda destino.
escenario bidimensional es el siguiente: si un nodo tiene ”cobertura” 2 este
cubrirá todos aquellos nodos que estén a una distancia de dos saltos en cualquier dirección, es decir, cubrirá dos anillos alrededor de su posición actual.
Por ejemplo, en la Fig. 4.3, se ha representado con celdas ralladas el alcance
que tendría un nodo situado en la celda (1,1) si su cobertura radio fuese igual
a 2. Nótese que se está haciendo referencia al tamaño de la zona de trabajo como mosaico T3 , T4 ... porque se está hablando en términos generales, al igual
que se está haciendo referencia al rango de cobertura radio como una cobertura de valor 2, 3, 4.... Es evidente que esta terminología debe ser asociada
con unos valores que representen la realidad, para ello se va a suponer que
la celda hexagonal tiene un tamaño concreto y la terminología hasta ahora
utilizada se transformará en un valor de cobertura radio medido en metros y
un tamaño de la zona de trabajo representada por un área real.
Asumiendo que cada celda tiene un diámetro de 50 m, con una cobertura
de valor 2 se alcanzan los nodos que están dentro de un radio de 100 m, con
un valor de cobertura 3 se alcanzan los nodos que están dentro de un radio
de 150 m y con una cobertura de valor 4 los nodos que están a 200 m de
92
i
i
i
i
Capítulo 4. Escenario
z
t
6
f
g
h
i
j
7
8
9
:
u
{
v
;
k
l
m
n
z
w
o
<
3
c
d
4
=
x
y
p
>
5
e
o
q
?
0
`
a
1
@
r
s
A
2
b
B
C
D
]
^
.
/
_
E
+
Z
|
}
[
F
G
!
,
\
~
+
H
"
%
(
W

„
…
X
)
&
#
I
J
$
'
*
Y
€
†

K
N
Q
T

‡
Š
ˆ
‚
U
R
O
L
M
P
S
V
ƒ
‰
‹
Š
Figura 4.3: Zona de trabajo formada por celdas hexagonales que conforman
un paralelogramo.
distancia, ver [MBJ99] donde se utiliza un rango de cobertura radio de 250
m, [MFHF04] donde el rango de cobertura radio es de 200 m y [BLG01] donde
se utilizan los valores 100 m y 150 m y [WMF02] donde el rango de cobertura
utilizado es de 100 m. Teniendo en cuenta el valor del diámetro del hexágono
se va a calcular a continuación el área de la zona donde están distribuidos los
nodos móviles. En la parte superior izquierda de la Fig. 4.4 se ha representado
un hexágono regular, en él se pueden diferenciar los siguientes elementos:
ap (apotema): distancia desde el centro del hexágono regular al centro de
uno de sus lados.
r (radio): distancia desde el centro del hexágono a uno de sus vértices. En
el caso del hexágono regular el radio tiene el mismo tamaño que el lado (l).
93
i
i
i
i
Capítulo 4. Escenario
Teniendo en cuenta que:
(4.1)
l=r
ap =
s
l2 −
2
l
2
(4.2)
se puede calcular la base (b) y la altura (a) del paralelogramo resultante como
zona de trabajo, ver Fig. 4.4, y con estos dos valores calcular el área (A) de
esta zona según la fórmula:
(4.3)
A = b·a
En la Fig. 4.4 se ha representado concretamente el escenario que toma
como base un mosaico T3 , donde únicamente se han dibujado las celdas que
forman el contorno del paralelogramo y aquellas que se utilizarán para el
cálculo de la altura (a). Considerando el diámetro de las celdas igual a 50 m
según la ecuación 4.1 el lado tendría un valor de 25 m, y según la ecuación 4.2
la apotema de cada hexágono tendría un valor de:
ap =
s
252 −
25
2
2
= 21.65 m
Según la figura, la base está formada por 7 hexágonos regulares, por tanto se
cumple:
b = 7 · (2 · ap) = 7 · (2 · 21.65) = 303.1 m
Para el cálculo de la altura del paralelogramo se puede observar igualmente
la Fig. 4.4, de donde se puede deducir que esta toma el valor de:
a = 2·l+l+2·l+l+2·l+l+2·l
= 4·2·l+3·l
= 11 · l = 11 · 25 = 275 m
94
i
i
i
i
Capítulo 4. Escenario
™
Œ

š
Ž
–
Ž
Ž


•
–
–
•
–
–
˜
•
‘
’
“
”
‘
’
“
”
‘
’
“
”
‘
’
“
”
‘
’
“
”
‘
’
“
”
‘
’
“
–
”
—
Figura 4.4: Cálculo del área del escenario donde están situados los nodos
móviles. Zona basada en un mosaico T3
Por tanto según la ecuación 4.3 el área para una zona de trabajo equivalente
a un mosaico T3 considerando el diámetro de los hexágonos de 50 m es igual
a:
A = b · a = 303.1 m × 275 m = 83352.5 m2
Del mismo modo un escenario que parte de un mosaico T4 equivaldría a
un área de tamaño:
b = 5 · (2 · ap) + 4 · (2 · ap) = 9 · (2 · 21.65) = 389.7 m
a = 5 · (2 · l ) + 4 · l = 14 · l = 14 · 25 = 350 m
A = b · a = 389.7 m × 350 m
4.1.2.
Número de nodos
En los modelos formales se ha realizado la representación de una red
ad hoc con un máximo de 6 nodos móviles. El escenario al que se quieren
95
i
i
i
i
Capítulo 4. Escenario
trasladar los resultados obtenidos no requiere un mayor número de nodos,
porque es suficiente para cubrir el área de trabajo de una zona industrial, y
normalmente no hay más de 4-6 usuarios que necesiten el intercambio de información en esas circunstancias. Además, distintos estudios han mostrado la
existencia de un ”horizonte ad hoc” (2-3 saltos y 10-20 nodos como máximo)
después del cual los beneficios de una red ad hoc multi-hop se desvanecen,
ver [TGLN05].
El objetivo por tanto es crear un escenario lo más cercano a la realidad
posible, y aunque muchos estudios realizados mediante simulación utilizan
un elevado número de nodos móviles (50, 100, 500 y 1000 para distintos tamaños de área en [PR99], en [MGLA95] se muestran resultados para 57 nodos, 60 nodos en [CG98], 30 nodos en [Haa97] y [BBMZ03], en [BMJ+ 98]
se simuló el comportamiento de 50 nodos para realizar una comparativa de
distintos protocolos, también se utilizaron 50 nodos en [ZL02], 40 nodos estáticos en [CVG+ 05] y un rango entre 50 y 300 nodos en [YPK04]), los trabajos
experimentales no superan en general los 10 nodos (aunque siempre hay excepciones, ver [LLN+ 02] donde el testbed estaba compuesto por 9-32 nodos).
Además, como Conti apunta en [CG07], no tiene sentido centrar las investigaciones en redes con cientos de nodos móviles involucrados en la transferencia
de datos.
En [GWW04] se han realizado pruebas reales con 5 ordenadores portátiles
que fueron utilizados para estudiar distintos protocolos de encaminamiento;
en el testbed presentado en [MBJ99] se hizo uso de 5 nodos móviles y 2 fijos
para una extensión de 700x300 m2 ; en [BLG01] se implementó un testbed con
6 nodos móviles; en [BCDP05] se presentan experimentos reales realizados
con 8 nodos móviles que representaban personas compartiendo documentos
en las instalaciones de la universidad; en [Bor05] el número de nodos utilizados está entre 5 y 12; en [BLG02] se realizaron pruebas con 6 nodos (con
y sin movilidad) y 1 workstation; las pruebas realizadas en [WMF02] se realizaron en el campus de la universidad con 6 nodos utilizando un rango de
transmisión radio de 100 m.
96
i
i
i
i
Capítulo 4. Escenario
4.1.3.
Modelo de movimiento. Tasa de movilidad
Dado que el análisis de las MANET a gran escala no es fácil de implementar, la mayoría de estudios en este área se centran en las simulaciones,
por ello es importante estudiar distintos modelos de movilidad y analizar
su efecto sobre las MANET. El comportamiento de una red ad hoc varía según el modelo de movilidad utilizado, y los resultados se verán afectados
según el algoritmo escogido. Son varios los trabajos donde se evalúan distintos modelos de movilidad típicos en la simulaciones de redes ad hoc, ver
[CBD02, BH04]. En todos ellos se demuestra la importancia a la hora de escoger un modelo de movilidad cuando se simula el comportamiento de este
tipo de redes. Es interesante estudiar la misma red ad hoc bajo un conjunto
de modelos de movilidad.
En [SBKH03] se ha desarrollado un método que combina el análisis estadístico de los datos de simulación (obtenidos con la herramienta ns-2) y el
modelado analítico para comprender mejor el comportamiento de los protocolos DSR y AODV en presencia de movilidad. Se han examinado en detalle
los parámetros estadísticos (incluyendo la PDF, Probability Density Function)
y la duración de la ruta empleando un amplio conjunto de modelos de movilidad. Se evalúa cómo la duración de las rutas varía con los distintos parámetros del modelo de movilidad, velocidad relativa, número de saltos, cobertura
radio, etc. parámetros también utilizados en los modelos formales diseñados
en esta tesis. La movilidad actúa sobre la conectividad, lo que a su vez influye
en el comportamiento del protocolo, es decir, el comportamiento de un protocolo depende de la duración de la ruta entre origen y destino, y la duración
de la ruta está relacionada con la duración del enlace. Cuanto mayor es la
duración de la ruta mejor es el comportamiento en términos de throughput
y overhead. Aunque no se obtienen los mismos valores numéricos porque
no se ha trabajado con los mismos parámetros (el número de nodos es 40
y las velocidades utilizadas son mayores 1, 5, 10, 20, 30, 40, 50 y 60 m/s),
en el apartado 6.3.2, donde se muestran los resultados del tiempo medio de
ruta obtenidos con los modelos formales, se hace referencia a las similitudes
97
i
i
i
i
Capítulo 4. Escenario
encontradas con los resultados obtenidos por los autores de este trabajo.
Entre los distintos modelos de movilidad usados para las simulaciones
de redes ad hoc se puede destacar el random walk (RW), modelo de movilidad muy sencillo pero muy utilizado en este tipo de investigaciones,
ver [Bol01, LLN+ 02, YW02, GH06]. El nodo móvil se mueve hacia cualquiera
de las posibles direcciones con la misma probabilidad independientemente
de cual fuese el movimiento anterior. Se escoge una velocidad y dirección
aleatoria y el nodo se mueve en línea recta. Cuando el nodo alcanza el límite de la zona de trabajo rebota con cierto ángulo, lo que al cabo del tiempo
provoca una concentración de los nodos en la zona central. El nodo deja de
moverse al cabo de un tiempo o tras una distancia recorrida, según se defina.
Otro protocolo destacado es el random waypoint (RWP), es uno de los
más utilizados en las simulaciones de comunicaciones en redes inalámbricas
y es usado en muchos de los trabajos donde se evalúa el comportamiento de
protocolos en redes ad hoc, ver [BMJ+ 98, DPR00, GWW04]. Los nodos están
distribuidos aleatoriamente en el área, pasado un tiempo en una posición
determinada se escoge aleatoriamente un nuevo destino dentro del área de
simulación y una velocidad que está uniformemente distribuida entre dos
velocidades. En ese momento el nodo se mueve hasta el destino con la velocidad escogida. La diferencia con el RW es que escoge un destino aleatorio
y no una dirección. Este modelo incluye tiempos de pausa entre cambios
de dirección y/o velocidad. Su comportamiento es similar al del RW si no
se consideran tiempos de pausa. En [BHPC04] se evalúan las características
estocásticas de este modelo de movilidad, teniendo en cuenta la longitud y
duración temporal del movimiento, el ángulo de dirección escogido al inicio
de un movimiento y el número de cambios de celda. El estudio de estos valores permite conocer el ”grado de movilidad” de un escenario concreto, esto
es necesario si se quieren comparar los resultados obtenidos con el RWP y
con otros modelos para identificar la influencia de la movilidad.
El random direction es otro protocolo a considerar. El nodo móvil selecciona una dirección en la que moverse, al igual que el random walk, el nodo
98
i
i
i
i
Capítulo 4. Escenario
se mueve hasta el borde del área de simulación siguiendo esa dirección por
lo que se fuerza a los nodos a viajar por la orilla del área de simulación antes
de cambiar de dirección y velocidad. Una vez alcanzado el borde, el nodo
deja de moverse durante un tiempo especificado, escoge otra dirección angular entre (0, 180o ) y continúa el proceso. El modelo de movilidad modified
random direction, ver [MAGECG05], es una variación que no fuerza al nodo
a viajar hasta el límite del área antes da parar para escoger nueva dirección,
sino que puede hacerlo antes de llegar hasta el borde del área.
En este trabajo únicamente se ha utilizado un modelo de movilidad pero
con distintas velocidades (pequeñas, moderadas y elevadas) para estudiar como afectan al comportamiento del protocolo de encaminamiento. Una de las
suposiciones realizadas a la hora de definir el escenario es el tiempo durante
el cual un nodo permanece en la celda y después del cual se desplaza. Este
tiempo está caracterizado por una variable aleatoria con una función de densidad con un valor medio igual a 1/λm , donde λm es la tasa de movimiento.
Considerando que cada celda tiene un diámetro equivalente a 50 m y cada
movimiento equivale a un salto a una de las celdas adyacentes, la velocidad
media de los usuarios puede ser calculada con la tasa de movimiento, λm .
La velocidad de los nodos utilizada en la mayoría de los experimentos de
esta tesis es de 1.38 m/s, un valor equivalente a 5 Km/h, la velocidad de
una persona caminando a un ritmo normal. Sin embargo en otros casos se
ha utilizado un rango de velocidades más amplio (1.38 m/s, 5 m/s, 6 m/s,
7 m/s, 8 m/s, 9 m/s, 10 m/s, 15 m/s, 20 m/s). Aunque algunas velocidades
son muy elevadas considerando que se trata de operarios moviéndose por la
zona de trabajo, se han utilizado para evaluar como influye la velocidad en
el comportamiento de la red.
La relación entre la tasa de movimiento y la velocidad se establece del
siguiente modo, si un operario realiza 5 movimientos cada 3 minutos, y teniendo en cuenta que las u.t. de los modelos formales se han establecido en
segundos, se tiene
λm = 5 movimientos/ (3min · 60) = 0.027 no mvtos/s
99
i
i
i
i
Capítulo 4. Escenario
Por otra parte, para conocer la velocidad media correspondiente a esta
tasa de movimiento se tiene
(5 movimientos · 50m) / (3min · 60) = 1.38 m/s
de este modo, la correspondencia entre el resto de velocidades medias utilizadas y las tasas de movimiento es la siguiente:
∼
= λm = 0.12 no mvtos/s
∼
= λm = 0.16 no mvtos/s
∼ λm = 0.2 no mvtos/s
v = 9m/s ∼
= λm = 0.18 no mvtos/s; v = 10m/s =
v = 15m/s ∼
= λm = 0.4 no mvtos/s
= λm = 0.3 no mvtos/s; v = 20m/s ∼
v = 5m/s ∼
= λm = 0.10 no mvtos/s; v = 6m/s
v = 7m/s ∼
= λm = 0.14 no mvtos/s; v = 8m/s
Estas velocidades son similares o se encuentran dentro del grupo de velocidades evaluadas en otros estudios, [0 - 10] m/s en [CBD02], [1 - 20] m/s
en [BMJ+ 98], [1, 2, 4, 8, 16] m/s en [YW02]. Otras velocidades utilizadas en
estudios de redes ad hoc son: [0.4 - 0.8] m/s en [PR99], [0.3 - 0.7] m/s en
[JM96], 1 m/s en [LLN+ 02] y [0 - 5] m/s en [AT99].
En los modelos bidimensionales implementados, cuando el nodo se mueve y abandona la celda lo hace con la misma probabilidad hacia cualquiera
de las celdas vecinas (por simetría al tratarse de celdas hexagonales, p = 1/63 )
independientemente del movimiento anterior, por tanto el modelo de movimiento utilizado es el random walk model simplificado porque se asigna la
misma velocidad media a cada nodo en todos los experimentos en lugar de
escoger una velocidad aleatoria en cada caso. La distancia a recorrer en todos
los casos es equivalente al salto hasta la siguiente celda (solo un cambio de
celda en cada movimiento), es decir a una distancia de 50 m. Se ha escogido
este modelo de movilidad porque es sencillo de implementar y además ha
sido ampliamente estudiado, ver [GEM02] donde se ha modelado también
este modelo de movilidad utilizando redes de actividad estocástica.
3 Si
el nodo está en la periferia la probabilidad de abandonar la celda actual es menor a p =
1/6, porque los nodos no pueden salir del área.
100
i
i
i
i
Capítulo 4. Escenario
4.1.4.
Tasa de búsqueda
La tasa de búsqueda (call rate) está relacionada con las veces que un usuario de la instalación quiere comunicar con otro usuario, obtener información
para la supervisión, dar una orden o cuando una alarma debe ser enviada
a este operario por estar adscrito al servicio. Los intentos de comunicación
siguen un comportamiento exponencial con un tiempo medio igual a 1/λc ,
donde λc es la tasa de búsquedas o llamadas.
La tasa de llamadas λc utilizada se ha relacionado con el tipo de servicio
solicitado. Se ha escogido 1 intento de comunicación cada 3 minutos
λc = 1 llamada/ (3min · 60) = 0.005 llamadas/s
cuando se solicitan imágenes por un usuario de la instalación a una estación
que tiene una cámara fija. Se ha considerado 1 intento de comunicación cada
30 segundos
λc = 1 llamada/ (30s) = 0.033 llamadas/s
cuando el usuario está solicitando imágenes a una cámara que dispone de
movimiento (arriba, abajo, derecha, izquierda, zoom, etc.), considerando que
para cada orden de giro o posicionamiento se necesita una nueva solicitud.
Esta tasa de llamadas o búsquedas también se utiliza en un escenario donde
se realizan distintas órdenes remotas agrupadas en el tiempo. Los valores
escogidos para las tasas de llamadas según la petición a realizar se basan
en la experiencia adquirida durante el manejo del sistema de supervisión y
control implantado en la red de saneamiento de aguas del Ciclo Integral del
Agua perteneciente al Ayuntamiento de Valencia a lo largo de los distintos
proyectos de investigación en los que se ha participado.
Definidas la tasa de búsquedas y la tasa de movimiento se puede introducir el término CMR (Call to Mobility Ratio), este relaciona ambos términos
con la siguiente ecuación
CMR = λc /λm
101
i
i
i
i
Capítulo 4. Escenario
Si un nodo móvil realiza menos intentos de comunicación en relación con los
cambios de celda el CMR es bajo (<1). Si el nodo realiza tantos intentos de
comunicación como movimientos, el CMR toma un valor alrededor de 1. Si
se realizan más intentos de comunicación comparativamente con el número de cambios el CMR es elevado (>1). En los primeros modelos, modelos
unidimensionales y modelos sencillos bidimensionales, se han utilizado distintas tasas de búsqueda y de movimiento para trabajar tanto con valores de
CMR bajos, como con valores cercanos al 1 y con valores altos. En los modelos complejos, al introducir el concepto de sesión, como se explicará en la
siguiente sección, se ha sustituido el parámetro del CMR por el del tiempo
de sesión que se adapta mejor para expresar los resultados. El CMR indica la
relación entre las llamadas y el número de movimientos, pero la tasa de llamadas varía cuando se incorpora el parámetro que determina la duración de
las sesiones y la relación anterior (CMR) no es representativa en estos casos.
4.1.5.
Tiempo de servicio y tiempo de simulación
El tiempo de servicio es el tiempo durante el cual el técnico o usuario
de la red mantiene la «sesión» abierta tras solicitar el servicio deseado. Una
sesión se describe como la conexión establecida entre el usuario y la fuente
de información, podría decirse que la sesión finaliza cuando el usuario cierra
la ventana de visualización. El tiempo durante el cual un usuario se mantiene
atento a la pantalla de su dispositivo depende de la situación del sistema a
supervisar y del servicio solicitado.
En cuanto a la situación o al modo de funcionamiento del sistema de
supervisión y control se proponen dos escenarios:
Funcionamiento normal: periodo corto de tiempo y puntual.
Funcionamiento crítico o de alarma: una visualización que puede durar
horas.
Durante el funcionamiento normal de la instalación, un usuario realiza
102
i
i
i
i
Capítulo 4. Escenario
conexiones puntuales y sin alargarse en el tiempo, es decir, se pueden considerar desde los pocos segundos hasta los 2 ó 3 minutos (estos valores se han
determinado por observación durante el trabajo de los operarios en la red
tomada como escenario de ejemplo). Pasado ese tiempo el usuario solicita
información de otra estación remota, realiza una nueva operación de control
que puede suponer una orden o recibe una alarma/aviso, esto supone una
nueva petición y por tanto la solicitud y el establecimiento de una nueva ruta
en el caso de que el usuario que realiza la conexión forme parte de la red ad
hoc o para alcanzar al destino sea necesario atravesar una red ad hoc.
Durante el funcionamiento en estado de alarma o estado crítico, lo más
importante en un sistema de supervisión es la recepción correcta y rápida
de los avisos apoyándose con la visualización de imágenes, lo que permite
observar la instalación y actuar rápidamente y de forma precisa en caso de ser
necesario. Esta visualización podría durar horas, por lo que es poco probable
que se realice desde dispositivos móviles que se han desplegado de forma
puntual en una de las estaciones. Este tipo de supervisión debe realizarse
desde la estación central donde se pueden tomar las medidas necesarias, la
comunicación es continua, sin cortes, y de mayor calidad. Por tanto, en el
caso que aquí se trata únicamente se tendrá en cuenta el funcionamiento en
estado normal del sistema. Un caso distinto es que en una situación crítica o
de alerta se realice por parte de un usuario móvil una solicitud de servicio
puntual.
El tiempo de sesión o tiempo de servicio típico dependerá por tanto, del
estado de funcionamiento de la instalación y del servicio o tipo de información que se solicite, este tiempo de sesión se establecerá en la sección 4.2
donde se explican con más detalle los servicios ofrecidos por el sistema de
supervisión y control en su modo de funcionamiento normal.
Finalmente es necesario realizar un apunte relacionado con el tiempo de
servicio en los capítulos 5 y 6 donde se muestran los modelos formales y sus
resultados. En los modelos más complejos, donde se incorpora el concepto
”tiempo de servicio” no se utiliza la relación CMR porque la siguiente pe-
103
i
i
i
i
Capítulo 4. Escenario
tición de ruta no se realiza hasta que no haya terminado el servicio actual
(tiempo de servicio) y por tanto esta relación entre llamadas y movimiento
no es representativa en estos modelos. Por ejemplo, supóngase que antes de
introducir el concepto de tiempo de servicio cada nodo se mueve de media
cinco veces cada tres minutos y el nodo origen realiza una llamada cada tres
minutos como media. Cuando se introduce el nuevo concepto la tasa de movimiento es la misma (cinco movimientos cada tres minutos), pero aunque
la tasa de llamadas no se modifique, en realidad la actividad que rige esas
llamadas no está habilitada si la sesión ya se ha iniciado, por lo que no se realizará una llamada cada tres minutos si la sesión no ha finalizado. Mientras el
usuario mantiene una sesión abierta y visualiza el servicio solicitado no realiza una nueva petición, lo hace cuando ya no quiere observar durante más
tiempo la información actual y quiere supervisar o realizar una petición mediante una nueva solicitud, en ese caso sí que se realizará una llamada cada 3
minutos de media mientras no se consiga establecer ninguna comunicación.
Las unidades de tiempo (u.t.) con las que trabajan los modelos formales
diseñados se han considerado equivalentes a segundos, por tanto, el tiempo
de simulación se regirá en segundos. Por ejemplo todos aquellos experimentos que consideren un tiempo de simulación igual a 6000 u.t. representan el
estudio durante 100 minutos de la red ad hoc diseñada.
4.2. Servicios y calidad a ofrecer
El modelado de una red ad hoc así como su implementación real no debe
realizarse de forma generalizada. Son muchos los modelos y simulaciones
que no evalúan el comportamiento de la red teniendo en cuenta su aplicación, entorno o utilidad final. Sin embargo, no tiene sentido modelar redes
con enormes cantidades de nodos, ver [TGLN05], que se mueven dentro de
áreas cuadradas o rectangulares de distintos tamaños sin saber que representan. La red ad hoc que se evalúe debe tener una aplicación real, el comportamiento del protocolo frente a la información transmitida al igual que
104
i
i
i
i
Capítulo 4. Escenario
los inconvenientes y problemas encontrados serán distintos según la utilidad
que se le quiera dar a la red y al protocolo de encaminamiento utilizado.
Cuando se diseña una red se debe pensar conjuntamente en el protocolo, las
aplicaciones de la red y en la función que va a cumplir, y no tratar de ofrecer plataformas muy generales y flexibles que pueden usarse para muchas
aplicaciones, porque no responderán igualmente en cualquier entorno.
En el caso actual los servicios típicos a ofrecer son la transmisión de imágenes o streaming de vídeo y la transmisión de información de control, lo
que se denomina servicios de media y alerta. Gracias a los proyectos de investigación en los que se ha participado, se han analizado e identificado los
requerimientos de estos servicios desde el punto de vista de los usuarios de
explotación y mantenimiento de grandes sistemas de supervisión y control.
Estos requerimientos se han analizado en un entorno de red heterogénea formado por una red troncal (ESS: Extended Service Set), y celdas inalámbricas
en cada una de las estaciones remotas (BSS: Basic Service Set) donde también
están presentes redes ad hoc (IBSS: Independence Basic Service Set) para proporcionar los servicios a los nodos sin acceso al gateway inalámbrico que da
acceso a la ESS, ver Figs. 4.5 y 4.6 donde se presenta de forma ampliada el
sistema mostrado en la Fig. 1.1. Estos servicios de media continua y alerta
permiten desarrollar aplicaciones para el streaming en tiempo real y diferidos, la ejecución de órdenes no-críticas puntuales, así como la notificación
y gestión de alertas de forma automática a los usuarios suscritos, teniendo
cada una de estas aplicaciones diferentes requerimientos de QoS que la red
deberá proporcionar en los escenarios considerados desde el punto de vista
de la red en:
1. comunicaciones peer-to-peer (P2P):
a) Las dos entidades están en una IBSS (entornos puramente ad hoc).
Pasos 1’-3’ de la Fig. 4.5. Imágenes proporcionadas por una cámara
que se encuentra en la misma BSS que el usuario móvil que las está
visualizando.
b) Las entidades se encuentran en BSS diferentes. Pasos 1-7 de la Fig.
105
i
i
i
i
Capítulo 4. Escenario
4.5. Imágenes visualizadas por un cliente móvil situado en una
BSS distinta a la que contiene la estación remota con la cámara
que suministra las imágenes.
2. Comunicaciones cliente/servidor:
a) El cliente está en la red ad hoc. Pasos 1-3 de la Fig. 4.6. Alerta
producida en la misma BSS donde se encuentra el usuario suscrito.
b) El cliente está en una red ad hoc distinta a la BSS donde está el
servidor. Pasos 1’-7’ de la Fig 4.6. Un usuario que está en una BSS
remota es informado de una alerta que se ha producido en otra
BSS.
c) El cliente está en la red troncal. Pasos A-D de la Fig. 4.6. Alerta
producida en una estación remota y enviada a la estación central
atravesando la red heterogénea para que el controlador la procese.
Pasos A’-B’-B-D de la Fig. 4.6. Alerta producida en una estación
remota originada por un operario de modo que deba encaminarse
la información por la red ad hoc para enviarla a la central atravesando la red heterogénea.
4.2.1.
Servicios de alerta
En cuanto a los servicios de alerta, pueden darse distintos casos, generalmente la fuente de la alerta es un PLC, Programmable Logic Controller
(servidor), aunque en ocasiones puede generar la alarma un usuario que está
supervisando la instalación, y lo que varía es el receptor de la alerta (cliente).
Existen tres posibles casos, un usuario que está en una BSS (el destino es un
nodo móvil) y es informado de una alerta que se ha producido en su misma4
BSS; la estación central5 (el destino es un nodo fijo en la troncal) es informada de una alerta producida en una estación remota; un usuario (nodo móvil)
4 Pasos
5 Pasos
106
1-3 de la Fig. 4.6.
A-D de la Fig. 4.6 o Pasos A’-B’-B’D de la misma figura.
i
i
i
i
Capítulo 4. Escenario
Estación remota 1
Estación remota 2
BSS
6
BSS
Gateway
PLC
Gateway
Cámara
PLC
Operario E
1'
Cámara
7
1
S
IBS
2
Operario B
5
Operario D
2'
3'
Operario A
IB
S
S
Operario C
RED
HETEROGÉNEA
GPRS
Clientes remotos
UMTS
3
4
Control
HEW LETT
PACKARD
AdvanceStack Switch 800T
Reset
Daisy Chain
RPS
Self Test
Power
1
Tx
2
Tx
Dx
Rx
3
Tx
4
Dx
Rx
Dx
Tx
5
Tx
6
Rx
Dx
Tx
7
Tx
8
Tx
Dx
Rx
Switch
HP J3245A
Fault
Dx
Rx
Rx
Dx
Rx
Dx
Rx
HEWLETT
PACKARD
Proxy
Base de datos
HP J3245A
HP J3245A
HP J3245A
100Base-TX
Port 4
Twisted-Pair
HP J3245A
100Base-TX
Port 3
Twisted-Pair
100Base-TX
Port 2
Twisted-Pair
100Base-TX
Port 1
Twisted-Pair
Console RS-232
100Base-T
Port 5
100Base-T
Port 6
100Base-T
Port 7
100Base-T
Port 8
LAN Switch
Servidor Web
Estación Central
Figura 4.5: Visualización de imágenes en una instalación de supervisión y
control.
que está en una BSS remota es informado de una alerta que se ha producido
en otra6 BSS, por lo que la información deberá atravesar la red heterogénea.
En el caso de los servicios de alerta el volumen de información es muy
bajo. Normalmente se trata de unos pocos octetos que dan información sobre
un determinado estado (compuertas abiertas o cerradas, motores en marcha
o paro, estado de los desarenadores, bombas...) o alarma en la instalación. En
el caso de las alarmas, el usuario las recibe porque se ha suscrito con anterioridad a este tipo de servicio. El plazo máximo entre la producción de una
orden y la recepción del cambio de estado y el tiempo desde la generación
de una alarma y el envío debe estar acotado7 , típicamente menor a 1s.
6 Pasos
7 Ver
1’-7’ de la Fig 4.6.
[Kir09], trabajo donde el profesor Kirrmann especifica las limitaciones del tráfico de
107
i
i
i
i
Capítulo 4. Escenario
Estación remota 1
Estación remota 2
BSS
B'
BSS
Gateway
1'
A
Gateway
PLC
Cámara
PLC
Operario E
1
Cámara
7'
S
IBS
A'
2
2'
Operario B
6'
Operario D
3
Operario A
B
IB
S
S
Operario C
RED
HETEROGÉNEA
GPRS
5'
Clientes remotos
UMTS
C
4'
3'
Control
HEW LETT
PACKARD
AdvanceStack Switch 800T
Reset
Daisy Chain
RPS
Self Test
Power
1
Tx
2
Tx
Dx
Rx
3
Tx
4
Dx
Rx
Dx
Tx
5
Tx
6
Rx
Dx
Tx
7
Tx
8
Tx
Dx
Rx
Switch
HP J3245A
Fault
Dx
Rx
Rx
Dx
Rx
Dx
Rx
HP J3245A
HP J3245A
HP J3245A
100Base-TX
Port 4
Twisted-Pair
HP J3245A
100Base-TX
Port 3
Twisted-Pair
100Base-TX
Port 2
Twisted-Pair
100Base-TX
Port 1
Twisted-Pair
Console RS-232
100Base-T
Port 5
100Base-T
Port 6
100Base-T
Port 7
100Base-T
Port 8
D
HEWLETT
PACKARD
Proxy
Base de datos
LAN Switch
Servidor Web
Estación Central
Figura 4.6: Alertas producidas en una instalación de supervisión y control
4.2.2.
Servicios de media
La solicitud de un servicio de media puede realizarla un usuario que
está en una BSS observando una secuencia procedente de una cámara que se
encuentra en la misma BSS, la fuente (servidor) es la cámara de la estación
remota y el destino (cliente) un nodo móvil en la misma8 BSS; o un usuario
que está en una BSS observando una secuencia procedente de una cámara
situada en otra9 BSS. La fuente en este caso es una cámara y el destino un
nodo móvil (entorno ad hoc) que no está en la misma BSS, para alcanzar el
destino la información debe atravesar la troncal.
tiempo real, el tiempo de reacción y el tiempo de procesado que se considera aceptable en
distintas actividades típicas de la automatización industrial.
8 Pasos 1’-3’ de la Fig. 4.5.
9 Pasos 1-7 de la Fig. 4.5.
108
i
i
i
i
Capítulo 4. Escenario
En el sistema utilizado como referencia, las imágenes son ofrecidas por las
cámaras instaladas en las estaciones remotas, pueden ser fijas para controlar
una zona específica o pueden disponer de opciones de giro para posicionarlas y observar distintas ubicaciones (el tiempo de posicionamiento de una
cámara es inferior a los 500 ms, según el modelo utilizado). El plazo máximo
para la recepción de imágenes de la supervisión o streaming de vídeo desde que se solicitan hasta que el usuario las visualiza es típicamente menor o
igual a 3 s.
Una vez introducidos los tipos de servicio y teniendo en cuenta que se
trabajará en una escenario que representa un sistema en modo de funcionamiento normal y no crítico, se puede seleccionar el tiempo de sesión tal y
como se introdujo en la sección 4.1.1. El tiempo de sesión es el tiempo durante el cual el usuario está observando la pantalla de su dispositivo móvil,
ya sea para visualizar el resultado de una orden de control, el estado de una
alerta recibida o las imágenes para supervisar una parte de la instalación. Si
la información a transmitir o recibir es información de control o alertas el
tiempo suele ser corto, 20 s; si se desea supervisar las imágenes ofrecidas por
las cámaras para observar el funcionamiento de la instalación el tiempo será
superior, entre 60 s y 180 s.
4.3. Conclusiones
Gracias a la experiencia adquirida tras la participación en distintos convenios y proyectos de investigación ha sido posible la elección de algunos
parámetros que caracterizan el escenario a utilizar en los modelos formales,
otros valores han sido seleccionados en base a los trabajos realizados por
otros autores siempre intentando representar un escenario basado en un entorno real.
Como resumen de los escenarios descritos para los modelos unidimensionales y bidimensionales se muestran dos tablas que engloban los parámetros
y valores a utilizar en el capítulo 5 que es el centro de esta tesis. En la tabla
109
i
i
i
i
Capítulo 4. Escenario
4.1 se detallan los valores de los parámetros utilizados para describir el escenario de una dimensión y en la tabla 4.2 se han resumido las características
del entorno de trabajo bidimensional.
Tabla 4.1: Características y valores usados en el escenario unidimensional
Parámetro
Número de nodos
Área de trabajo
Longitud del segmento
Rango de transmisión radio
Tasa de movilidad (no mvtos/s)
Tasa de llamadas (llamadas/s)
CMR
110
Valor
3-6
Segmento lineal
14-20 divisiones
[2-6] y [2-10] divisiones
0.027, 0.05
0.005, 0.033
0.2, 0.1, 1.2, 0.6
Unidades de tiempo (u.t.) de la simulación
segundos
Tiempo de simulación
6000 u.t.
i
i
i
i
Capítulo 4. Escenario
Tabla 4.2: Características y valores usados en el escenario bidimensional
Parámetro
Número de nodos
Área de trabajo
Tamaño de celda
Tamaño definitivo del área de trabajo
Valor
3-6
Basada en mosaico T3 , T4 , T5 , T6
50 m de diámetro
303.1 m x 275 m
Rango de transmisión radio (m)
100 - 200
Tasa de movilidad (no mvtos/s)
0.1, 0.12, 0.14, 0.16, 0.18, 0.2, 0.3, 0.4
Velocidad (m/s)
Tiempo de servicio (s)
Tasa de llamadas (llamadas/s)
1.38, 5, 6, 7, 8, 9, 10, 15, 20
20, 60, 180
0.005
Tiempo de respuesta máximo (alertas)
< 1 segundo
Tiempo de respuesta máximo (imágenes)
< 3 minutos
Unidades de tiempo (u.t.) de la simulación
segundos
Tiempo de simulación
6000 u.t.
111
i
i
i
i
i
i
i
i
Capı́tulo
5
Modelos formales
Las redes de Petri se han utilizado en diversos estudios para modelar y
representar distintos sistemas de comunicaciones, siendo un caso particular el de las redes ad hoc.
En este capítulo se presenta el modelado mediante redes de actividad
estocástica de una red ad hoc completa con nodos móviles. El protocolo utilizado para el encaminamiento de la información es un protocolo
reactivo, para representar este comportamiento en los modelos se han
utilizado características y valores propios del AODV.
Los modelos formales se han desarrollado en tres etapas dada la complejidad del sistema y escenario a modelar, lo que ha permitido verificar y
evaluar su funcionamiento de forma gradual empezando por un modelo
unidimensional y sencillo hasta terminar con el modelo más completo y
complejo.
113
i
i
i
i
Capítulo 5. Modelos formales
5.1. Introducción
Las redes de Petri se han utilizado en múltiples estudios para el modelado
y la representación de distintos sistemas de comunicaciones, así como el estudio de comportamiento de diferentes tecnologías. Por ejemplo, en [KLZ07]
los autores realizan un modelo de simulación y validación con Hierarchical
Coloured Petri Nets del módulo de intercambio cross-layer, ConEx. Esta arquitectura de intercambio se propone para redes ad hoc móviles como una
solución eficiente para aplicaciones adaptativas en redes inalámbricas donde
la arquitectura de los protocolos tradicionales es inadecuada. Destacar también los trabajos de German y Heindl, [GH99, HG01], que muestran unos
modelos muy completos y detallados del funcionamiento del estándar IEEE
802.11 utilizando redes de Petri estocásticas. Inicialmente muestran un modelo que contempla todos los aspectos relevantes del sistema de forma concisa y
es evaluado mediante simulación. Este modelo deriva en otros simplificados
y más compactos que pueden ser tratados analíticamente. Ambos trabajos,
especialmente [HG01] por ser más completo y extenso son buenos ejemplos
de modelado mediante redes estocásticas a tener en cuenta. Destacar que la
herramienta utilizada es TimeNet, herramienta pública para fines académicos
al igual que las herramientas UltraSAN y Möbius utilizadas en este trabajo
de tesis.
Directamente relacionados con el trabajo de tesis, actualmente existen trabajos con redes de Petri donde se han evaluado distintos aspectos presentes
en las redes ad hoc. Autores como Murata et al. [XMT02], han sido los primeros en modelar y simular una MANET con CPN (Colored Petri Net). Han
modelado al detalle el protocolo de encaminamiento AODV en una red ad
hoc formada por 5 nodos. Han estudiado cómo la movilidad afecta al rendimiento del protocolo AODV, pero cabe destacar que no conocen exactamente
la topología de la red. Destacan que hay pocos métodos formales disponibles
para el diseño y testeo de las MANET debido a los cambios dinámicos de estructura, opinan que no es fácil construir un CPN (Colored Petri Net) de una
MANET debido precisamente al constante cambio de topología. Por tanto,
114
i
i
i
i
Capítulo 5. Modelos formales
proponen una aproximación a la topología (TA, Topology Approximation) para
abordar el problema de la movilidad. Según Murata et. al., es posible modelar una MANET sin información sobre su estructura gráfica exacta, pero en
nuestra opinión, de este modo es complicado que se pueda estudiar la ruptura de una ruta y por tanto su recuperación. De hecho, su objetivo es crear
un modelo formal del protocolo AODV para determinar si el protocolo no
es ambiguo, es completo y funcionalmente correcto. Evalúan si el protocolo
es capaz de ofrecerles una ruta correcta, si pueden establecer comunicación
entre origen y destino. En un trabajo posterior, ver [XML04], verifican que el
funcionamiento del protocolo AODV está libre de bucles.
Otros autores han utilizado las Fuzzy Petri Net para diseñar un algoritmo
de encaminamiento eficiente (RRA, Reliable Routing Algorithm) que les permite encontrar el árbol de encaminamiento desde fuente a destino en una
red ad hoc, ver [MHW04]. Según los resultados obtenidos mediante simulación con una herramienta no especificada, el comportamiento del AODV
ha sido mejorado obteniendo una comunicación más eficiente considerando
únicamente la eficiencia a la hora de elegir ruta (en un futuro se pretenden
tener en cuenta el número de saltos, el tiempo de encaminamiento, el coste,
etc.). El algoritmo implementado no necesita estimar la topología de la red
ad hoc, únicamente necesita conocer los vecinos de cada uno de los nodos. El
objetivo es encontrar una ruta con la mayor fiabilidad, pero sin estudiar qué
sucede después de obtener una de esas rutas. Este trabajo no implementa el
comportamiento del protocolo AODV ni de una red ad hoc completa, sino
únicamente el algoritmo RRA. También en [CH04] se implementa un algoritmo de razonamiento Fuzzy para encontrar el árbol multicast, lo que mejora
el sistema de enrutamiento en la red ad hoc. El protocolo sobre el que se ha
verificado este algoritmo ha sido también AODV.
Otra aproximación a la hora de estudiar una red ad hoc, es no construir
la red nodo por nodo, ya que según los autores el tamaño sería demasiado
grande para obtener una solución numérica exacta. En [ZZ03] se representa
una red ad hoc utilizando las redes de Petri estocásticas modelando el comportamiento de un nodo bajo la carga de trabajo generada por toda la red.
115
i
i
i
i
Capítulo 5. Modelos formales
Se modela la ocupación de los buffers de entrada y salida de los nodos de la
red, el resto de la red se modela con una única transición. A diferencia del
trabajo de Xiong [XMT02], no representa con detalle el comportamiento de
un protocolo, sino la transferencia de paquetes desde el nodo actual a otro
nodo y la transferencia de los nodos vecinos al nodo actual.
Otros aspectos relacionados con las redes ad hoc se han estudiado también mediante modelado y simulación aunque no con redes de Petri. Desde la
elección del umbral de la portadora (PCS, Physical Carrier Sensing) para evaluar la probabilidad de colisión de paquetes mediante simulación con OPNET
[MAR05] hasta la técnica de cómo aplicar métodos formales para verificar el
funcionamiento de protocolos para redes móviles ad hoc, ver [CLF07]. En este último caso se presenta un método en el que de forma sencilla se pueden
modelar protocolos basados en inundación (flooding) que ha permitido mediante verificación formal detectar errores en protocolos de encaminamiento
como la generación de bucles y errores en la entrega de mensajes. Otro trabajo
a destacar es [MLSPC03] donde se propone una combinación de la codificación multistream y el transporte multicamino para demostrar que además de
las técnicas de control de errores tradicionales la diversidad de caminos en
una red ad hoc proporciona un medio efectivo para combatir los errores en la
transmisión. Para el estudio se han propuesto tres técnicas de predicción de
movimiento compensado y se han simulado utilizando cadenas de Markov y
la herramienta OPNET. Además para demostrar la viabilidad de las técnicas
escogidas, se ha implementado un banco de pruebas de una red ad hoc multicamino con la transmisión de vídeo streaming. Los resultados obtenidos en
[MLSPC03] demuestran la posibilidad de transmitir vídeo sobre una red ad
hoc utilizando el transporte multicamino y la codificación multistream.
En los estudios citados se pudo modelar el comportamiento de una red
ad hoc sin conocer la posición exacta en la red porque el objetivo era evaluar si el protocolo podía establecer o no una comunicación o se pretendía
modelar un algoritmo que aplicado a un protocolo de encaminamiento incrementase las probabilidades de comunicación. Sin embargo, sin tener en
cuenta la topología de la red no es posible saber la ruta exacta cuando se
116
i
i
i
i
Capítulo 5. Modelos formales
solicita una comunicación entre origen y destino, y por lo tanto es imposible
saber si un movimiento posterior a la creación de la ruta implica una pérdida
de la misma, puesto que no se conoce si el nodo implicado pertenece o no
a la ruta activa. Se hace necesario por tanto el modelado formal de una red
ad hoc completa donde se conozca la topología de la red y donde los nodos
sean móviles. De este modo, además de conocer la conectividad de la red
será posible conocer la ruta exacta entre origen S y destino D (S-A-B-C-D) y
por tanto también se podrá estudiar qué sucede cuando esta ruta está activa
y alguno de los nodos que la componen se mueve.
5.2. Metodología de modelado
Debido a la gran complejidad del sistema a modelar, una red ad hoc con
un protocolo de encaminamiento que permita la comunicación entre los nodos, y del escenario, un entorno con topología variable que ha de ser conocida continuamente porque la posición de los nodos varía por su movilidad,
y donde esa movilidad puede provocar la ruptura de la ruta activa creando
la necesidad de encontrar una ruta alternativa, se ha realizado el diseño de
la red empezando con escenarios simples para terminar con los de mayor
complejidad. Aún así, ha sido necesario realizar aproximaciones. El modelado por bloques o etapas, es una modalidad que facilitan las redes de Petri
que permiten añadir conceptos y complejidad al modelo utilizando lo que
se ha modelado previamente. El estudio y modelado que se presenta en este
capítulo se ha realizado en tres etapas, ver Fig. 5.1.
En la primera etapa se han creado los modelos más sencillos, sección
5.3, modelos que permiten estudiar el establecimiento de la ruta. Se
evalúa en qué proporción el destino es alcanzable y como varía la probabilidad de conexión según el número de nodos, el movimiento de
los mismos, el tamaño de la zona de trabajo y el rango de transmisión
radio.
117
i
i
i
i
Capítulo 5. Modelos formales
Modelos quedeterminan el
ESTABLECIMIENTO de laruta
Unidimensionales
Segmento lineal
Bidimensionales
Celdas hexagonales
Nodos MÓVILES
[2-6]
Modelos quedeterminan el
ESTABLECIMIENTO y
MANTENIMIENTOde laruta
Bidimensionales
Modelos quedeterminan el
ESTABLECIMIENTO,
MANTENIMIENTOy
RECUPERACIÓN de laruta
Bidimensionales
Mod. ''Search''
Mod. ''Search AC''
Mod. ''Position''
Mod. ''Position''
Mod. ''Recover route''
Mod. ''If route change''
Mod. ''Time to recover''
Mod. ''Route invalidation''
Mod. ''Time''
Mod. ''Alternative route''
Mod.Posición
Mod.Búsqueda
Mod. ''Delay recovery''
Mod. ''Time''
Figura 5.1: Esquema de las etapas en las que se han desarrollado los modelos formales
El trabajo aquí realizado se divide a su vez en dos partes. En primer
lugar un número variable de nodos se ha situado en un escenario unidimensional. La zona de trabajo es un segmento lineal dividido en segmentos en los que se sitúan los nodos móviles.
En segundo lugar se abandona el plano unidimensional y estos modelos con 2, 3, 4, 5 y 6 nodos se trasladan a un escenario bidimensional. En
este caso ha sido necesario estudiar cómo representar ese escenario, la
zona de trabajo ha sido dividida en celdas hexagonales tal y como se ha
explicado en la sección 4.1.1. Inicialmente se ha diseñado una zona de
trabajo donde la numeración de las celdas se realiza según los anillos,
ver apéndice C.1, pero esta numeración dificultaba la implementación
de las subredes, véase un ejemplo en el apéndice C.2, donde se puede
apreciar la dimensión que toma la subred de posición utilizando esta
zona de trabajo. Buscando una numeración que permitiese un modelado más sencillo de la subred, se ha utilizado otro método para numerar
las celdas, método expuesto en la sección 4.1.1 que será utilizado en
todos los modelos bidimensionales expuestos en esta tesis.
118
i
i
i
i
Capítulo 5. Modelos formales
El modelo bidimensional implementado ha permitido estudiar la alcanzabilidad (probabilidad de establecer rutas directas o single-hop e indirectas o multi-hop según la movilidad de los nodos de la red). Se han
variado parámetros como la movilidad, la tasa de búsqueda de ruta, la
situación de los nodos en el área, el rango de cobertura radio, el tamaño
del área de trabajo, etc. Además en el caso de las rutas multi-hop se ha
evaluado el número de nodos que forma la ruta activa.
Tanto los modelos unidimensionales como los modelos bidimensionales de esta etapa están formados por dos tipos de modelos atómicos o
subredes: los modelos de posición que representan la posición de cada
nodo y su movimiento y el modelo de búsqueda, que representa el intento de comunicación entre origen y destino y en el que se modela el
resultado tras la búsqueda.
En la segunda etapa el modelo bidimensional se ha ampliado para estudiar además del establecimiento también el mantenimiento de la ruta,
ver sección 5.4. En este modelo el número de nodos se mantiene fijo,
6 nodos móviles, pero sí se ha trabajado con distintos valores para el
resto de parámetros, tasa de movilidad, tasa de búsqueda, rango de
transmisión radio...
En este modelo las subredes de búsqueda y posición han sido levemente modificadas, ”Search” y ”Position”, para adaptarlas al modelo compuesto ya que se han añadido otras subredes que permiten evaluar el
mantenimiento de la ruta, ”Recover route”, ”Time” y ”Time to recover”.
• El modelo atómico ”Search” muestra los intentos de comunicación
entre dos nodos.
• Los modelos atómicos ”Position” representan la posición de cada
nodo y su movimiento en el área.
• El modelo atómico ”Recover route” permite estudiar si el camino
permanece activo después del movimiento de uno de sus nodos.
En este modelo si se pierde el camino se realiza una nueva búsqueda de ruta.
119
i
i
i
i
Capítulo 5. Modelos formales
• El modelo atómico ”Time” realiza el conteo del tiempo que la ruta
permanece activa.
• El modelo atómico ”Time to recover” determina el tiempo de espera
hasta realizar una nueva búsqueda de ruta cuando la anterior se
ha roto.
El modelo desarrollado en esta etapa y los resultados obtenidos tras
la resolución de los experimentos se han publicado en [AASPMO09,
ASM06].
En la tercera y última etapa se ha seguido ampliando la implementación del modelo con 6 nodos móviles, para estudiar el establecimiento
de la ruta, el mantenimiento y la recuperación de la misma en caso
de pérdida, ver sección 5.5. Según los resultados de los modelos más
sencillos y los resultados de experimentos reales realizados por otros
autores, se han escogido algunos parámetros manteniéndose fijos sin
necesidad de evaluar de nuevo los resultados variando sus valores; un
tamaño de área fija, una cobertura radio coherente...
Para obtener el modelo compuesto se han realizado diversos cambios
en el modelo anterior y se han añadido nuevas subredes para adaptarlo
y obtener el comportamiento deseado. Las subredes que intervienen en
este modelo son:
• ”Search AC”, muestra los intentos de comunicación entre nodos
y evalúa si dicha comunicación es posible y de qué tipo, singlehop o multi-hop. Esta subred ha sufrido cambios muy importantes
para tener en cuenta el comportamiento de un protocolo reactivo
a la hora de buscar ruta por primera vez tanto desde el punto de
vista temporal como por los errores que se puedan producir a la
hora de comunicar con un nodo que en términos de cobertura es
alcanzable pero que se ve influenciado por factores externos como
el ruido, el problema del nodo oculto, las interferencias de otros
nodos, etc.
120
i
i
i
i
Capítulo 5. Modelos formales
• Los modelos atómicos ”Position”, representan a cada uno de los
nodos indicando su situación inicial en el área de trabajo y su nueva posición tras un movimiento. Estos modelos atómicos han sufrido pequeños cambios, únicamente los necesarios para adaptarse
a las modificaciones realizadas en el resto de modelos atómicos.
• El modelo ”Recover route” presentado en la sección anterior ha
sido dividido en tres modelos atómicos. En ”If route change” se
evalúa tras un movimiento de un nodo que pertenece a la ruta si
dicho movimiento implica la ruptura del link con su antecesor o
sucesor en la ruta. ”Route invalidation” calcula el tiempo que debe
esperar el protocolo antes de invalidar la ruta que ha sufrido una
ruptura por un movimiento. Y finalmente el modelo atómico ”Alternative route” completa este grupo de modelos, en este modelo
cuando la ruta es invalidada se debe buscar una ruta alternativa
para que la comunicación siga su curso.
• El modelo atómico ”Delay recovery” sustituye al modelo ”Time to
recover” expuesto en la sección anterior, con pequeños cambios
para su adaptación al modelo completo. En él se calcula el tiempo
que debe esperar el protocolo de encaminamiento para enviar un
nuevo paquete de solicitud de ruta, RREQ.
• El modelo atómico ”Time” permite el cálculo de los tiempos que la
ruta ha estado activa y los tiempos de servicio durante los cuales
el usuario ha solicitado el servicio.
Un trabajo donde se explica de forma detallada el funcionamiento de
estas subredes y los resultados obtenidos con los distintos experimentos
que permiten obtener los tiempos de establecimiento y recuperación de
las rutas ha sido enviado para su publicación, ver [AASPMO10]1 .
Destacar los trabajos [Gar01, CGM02] ya que parte de los modelos formales
que en ellos se presentan se han utilizado como base para implementar los
1 Actualmente
está en periodo de revisión.
121
i
i
i
i
Capítulo 5. Modelos formales
modelos atómicos dedicados a la posición y movilidad de los nodos en este trabajo de tesis, aunque los trabajos reseñados fueron diseñados para la
localización de teléfonos móviles.
En cada etapa se han seguido distintos pasos. En primer lugar se han decidido las aproximaciones a considerar para pasar al modelado del sistema.
Por ejemplo, el movimiento de los nodos en todos los modelos se representa mediante la programación del modelo de movilidad escogido, el random
walk. Al movimiento viene asociada una nueva aproximación, la representación de la zona de trabajo, un segmento para el plano unidimensional y una
zona divida en hexágonos para el plano bidimensional. El tiempo entre solicitudes de ruta se ha aproximado utilizando una tasa de llamadas. Ya en el
último modelo se ha realizado una aproximación de los errores que se pueden producir a la hora de encontrar o recuperar una ruta incorporando una
tasa de error...
Después de la etapa de modelado, se han realizado distintas simulaciones
habilitando la opción que permite obtener el marcado de los lugares. Se han
evaluado estos ficheros realizando un seguimiento del marcado para validar
el modelo, evaluación que ha permitido en ocasiones corregir algunos errores
de programación.
Tras la validación, el siguiente paso es la resolución del modelo ya sea de
forma analítica (en la primera etapa) o mediante simulación (en los modelos
más complejos). Tras la resolución del modelo se han obtenido los resultados
asociados a las variables de recompensa que se han creado en cada estudio.
La siguiente etapa es el análisis de los resultados obtenidos, análisis tras
el cual se realiza la representación gráfica de los datos para una mejor evaluación.
El siguiente paso es la modificación del modelo, se evalúa que se debe
mantener y si es necesario eliminar alguna parte, y que nuevas subredes son
necesarias para ampliar y completar el modelo según la etapa.
122
i
i
i
i
Capítulo 5. Modelos formales
5.3. Modelos que determinan el establecimiento de
la ruta
Los modelos que se presentan en esta sección permiten estudiar la posibilidad de establecer ruta entre origen y destino. Estas rutas pueden ser
directas (single-hop) o indirectas (multi-hop) haciendo uso de los vecinos
para alcanzar el destino final.
5.3.1.
Modelos unidimensionales
Los primeros modelos han sido diseñados en el plano unidimensional, y
aunque los resultados no son representativos de una situación real son la base
del resto de modelos más complejos, por lo que se ha considerado importante
realizar una breve descripción de los mismos. En la siguientes secciones se
dará paso a la descripción de los modelos más complejos y realistas.
Red de tres nodos donde el nodo ”A” intenta comunicar con el nodo ”C”
En este primer modelo, el nodo ”A” intenta comunicar con el nodo ”C”.
Para ello se evalúa si la distancia entre ellos, es igual o menor al rango de
cobertura radio de ”A” y ”C”. Si es así, comunicarán directamente, si no,
se evaluará la proximidad del nodo ”B”, tanto de ”A” como de ”C”, si ”A”
alcanza a ”B” y ”B” puede ver a su vez a ”C”, la comunicación entre ”A”
y ”C” será posible a través del nodo ”B”. En otro caso, la comunicación no
es posible. En la subred ”Búsqueda AC”, ver Fig. 5.2, se representa el inicio de un intento de comunicación («Inicio_búsqueda») y el proceso por el
cual el nodo que quiere iniciar la comunicación busca la ruta hacia el nodo
destino para saber si puede comunicar con él, y de qué modo. La actividad
«Inicio_búsqueda» tiene una distribución exponencial, se modela mediante
esta única transición el proceso de llegada de solicitudes de comunicación. El
marcado inicial de los lugares «PA», «PB» y «PC» corresponde a la situación
123
i
i
i
i
Capítulo 5. Modelos formales
Figura 5.2: Subred ”Búsqueda AC” red con tres nodos.
de los nodos en el segmento que representa el área de trabajo. Conociendo
esa posición mediante la puerta de salida «Búsqueda», se calcula si el nodo
con el que se quiere comunicar se puede alcanzar directamente, a través de
otro nodo, o no se puede alcanzar.
En la subred de posición, ver Fig. 5.3, la actividad «Mov» representa el movimiento del nodo ”A”, puede moverse hacia la derecha o hacia la izquierda
en el segmento donde se encuentra a partir de la posición actual. Cuando el
caso escogido de la actividad es el 1 se mueve hacia la derecha con probabilidad 0 si el nodo ya está situado en el extremo derecho del segmento, con
probabilidad 1 si está situado en la posición inicial del segmento, y con la
probabilidad 0.5 cuando esté situado en cualquier posición del segmento. Lo
mismo para el caso 2, que simula el movimiento hacia la izquierda, pero con
los extremos contrarios. En el caso de que se mueva hacia la izquierda (caso
2), el nodo estará en una posición inferior a la inicial, por tanto el marcado
de «PA» disminuirá en una unidad. Si por el contrario se moviese hacia la
derecha, el marcado deberá aumentar en una unidad, porque cuando se dispara la actividad el marcado de los lugares que están a su entrada disminuye
en una unidad. La puerta de salida «Aleja_dcha», se ocupa de sumar dos
marcas, para que el marcado de «PA» definitivo aumente en una unidad. Las
124
i
i
i
i
Capítulo 5. Modelos formales
subredes de posición de los nodos ”B” y ”C” son iguales, la única diferencia
es el nombre y el marcado de los lugares que indican la posición de los nodos
en el segmento.
Red con tres nodos, donde cualquiera de ellos intenta comunicar con alguno de los otros dos
En este modelo cualquiera de los tres nodos puede iniciar la búsqueda de
ruta para comunicar con cualquiera de los otros dos. Además los tres nodos
tienen la misma probabilidad de iniciar la búsqueda.
En la Fig. 5.4 se muestra la subred «Búsqueda A», donde es el nodo ”A”
el que quiere iniciar la comunicación con ”B” ó ”C”. A diferencia del modelo
anterior, ahora hay una subred de búsqueda por cada nodo que forma la
red. La actividad «Comunicar» se dispara cuando en el lugar «A», hay al
menos una marca, y la probabilidad de que se cumpla el caso 1 o el caso 2,
es de 0.5. Por tanto, la probabilidad de que el nodo ”A” quiera comunicar
con el nodo ”B” o con ”C” es equiprobable. El marcado del lugar «A» está
regido por otra subred que se explicará más adelante. Las puertas de salida
«Búsqueda AB» y «Búsqueda AC» se encargan de calcular cómo el nodo ”A”
puede comunicar con el nodo ”B” o ”C” respectivamente, con la ayuda del
marcado de los lugares «PA», «PB» y «PC».
Además de las tres subredes de búsqueda también forman parte de este
modelo las tres subredes de posición que no han sufrido cambios respecto al
Figura 5.3: Subred ”Posición A” red con tres nodos.
125
i
i
i
i
Capítulo 5. Modelos formales
Figura 5.4: Subred ”Búsqueda A” red con tres nodos
Figura 5.5: Subred ”Búsqueda” red con tres nodos
modelo anterior. Para completar el modelo la subred «Búsqueda» se encarga de colocar una marca en el lugar «A», «B», o «C», ver Fig. 5.5. Cuando
alguno de dichos lugares contiene una marca, indica que ese nodo quiere
comunicar con alguno de los otros dos. La marca será colocada en el lugar
correspondiente que esté conectado al caso que se ejecute cuando la actividad
«Iniciar_búsqueda» se dispare. La probabilidad de que se cumpla cualquiera
de los tres casos es equiprobable y nunca intentarán comunicar dos nodos al
mismo tiempo.
126
i
i
i
i
Capítulo 5. Modelos formales
Red de cuatro (cinco y seis) nodos donde el nodo ”A” intenta comunicar
con el nodo ”C”
En el primero de estos modelos se ha añadido un cuarto nodo, ”D”. Dado
que los resultados del modelo anterior donde cualquiera de los tres podía
tomar la iniciativa en la búsqueda de ruta no difieren mucho de los obtenidos con el primer modelo, ver sección 6.2 donde se muestran los resultados,
y teniendo en cuenta que esto simplifica el modelo puesto que únicamente
es necesario un modelo atómico de búsqueda, el modelo «Búsqueda_AC», se
ha considerado la opción de seguir ampliando únicamente el primer modelo.
Por tanto, el comportamiento general es el mismo, el nodo ”A” quiere comunicar con el nodo ”C” y es el que inicia la solicitud de ruta, la única diferencia
es que ahora la ruta puede tener un máximo de tres saltos. La principal modificación en este modelo además de añadir el modelo atómico «Posición_D»
es la definición de la puerta «Búsqueda» en el modelo «Búsqueda_AC», ver
Fig. 5.6. Ahora el nodo ”A” tiene que evaluar si puede alcanzar a ”C” directamente o a través de ”B” y/o ”D”. Se deben evaluar distintas combinaciones
cuando la comunicación es multi-hop; ”A” puede comunicar con ”C” a través
del nodo ”B” o a través del nodo ”D”. Aunque también puede comunicar con
”C” si antes comunica con ”D”, ”D” comunica con ”B” y ”B” definitivamente
comunica con ”C”, o primero comunica ”A” con ”B”, ”B” comunica con ”D”,
y es ”D” el que comunica finalmente con ”C”.
Siguiendo la misma estructura de este modelo, se han implementado también en el plano unidimensional modelos donde se ha añadido en cada ocasión un nodo más hasta alcanzar los 6 nodos. Estos modelos no van a ser
explicados, la diferencia radica en la subred ”Búsqueda” donde el cálculo
para conocer los nodos alcanzables debe modificarse en cada ocasión adaptándose al número de nodos de los que se dispone. Además a cada nodo
añadido corresponde una nueva subred de posición.
127
i
i
i
i
Capítulo 5. Modelos formales
Figura 5.6: Subred ”Búsqueda AC” red con cuatro nodos.
5.3.2.
Modelos bidimensionales
Red de tres (cuatro, cinco y seis) nodos donde el nodo ”A” intenta comunicar con el nodo ”C” en el plano bidimensional. Zona de trabajo formada
por celdas hexagonales
En esta sección se describirá únicamente el funcionamiento del modelo de
6 nodos por ser el más completo, la diferencia con los modelos de 3, 4 y 5
nodos son los modelos de posición y el cálculo de las posibles rutas desde
origen a destino.
El primero de los modelos es el de ”Posición”, al igual que en el modelo
unidimensional existe un modelo de posición por cada nodo de la red, en
este caso 6. En la Fig. 5.7 se muestra como ejemplo el modelo de posición
del nodo móvil ”A”. Con estos modelos se representa la posición del nodo
en el área y su movimiento a través de la misma. Las marcas o tokens de
los lugares «x_MT_A» e «y_MT_A» (coordenadas X e Y) muestran en qué
celda de la zona de trabajo está el nodo ”A”. El marcado de estos lugares
está representado por variables globales2 , esto permite poder realizar tests
2 Variables
128
que pueden ser introducidas en el diseño del modelo para variar las condiciones
i
i
i
i
Capítulo 5. Modelos formales
Figura 5.7: Subred ”Posición A”. Área de trabajo definitiva.
con distintas posiciones de los nodos.
La actividad estocástica «Stay_in_cell_finalized» define probabilísticamente con que ángulo se mueve el nodo ”A” porque su estancia en la celda ha
finalizado. Dependiendo del ángulo de movimiento, representado por las
puertas de salida «Angle_30», «Angle_90», «Angle_150», «Angle_210», «Angle_270» y «Angle_330», se varía el marcado de los lugares «x_MT_A» e
«y_MT_A», y se conoce la nueva posición del nodo. El tiempo durante el
cual el nodo móvil permanece en la celda viene caracterizado por una variable aleatoria con una densidad de probabilidad con un valor medio igual a
1/λm , donde λm es la tasa de movimiento, ver capítulo 4. Cuando el nodo
abandona la celda, este puede moverse probabilísticamente hacia cualquiera
de sus celdas vecinas con una probabilidad igual a 1/6.
La otra subred es ”Búsqueda_AC”, ver Fig. 5.8. En esta se representa cómo
el nodo ”A” intenta comunicar con el nodo destino ”C” y si este intento ha
sido fructífero. Para simplificar el modelo y dado que se ha comprobado en
el modelo unidimensional que es independiente qué nodo inicia el intento
de comunicación, únicamente hay un modelo que representa este intento de
iniciales.
129
i
i
i
i
Capítulo 5. Modelos formales
Figura 5.8: Subred ”Búsqueda_AC”. Área de trabajo definitiva.
comunicación y el nodo origen y destino siempre son los mismos.
La actividad que gobierna el inicio de la búsqueda «Start_search» inicialmente está habilitada, cuando esta actividad se dispara, con la puerta de
salida «Calculate_distance» se calcula la distancia entre los distintos nodos.
Esta distancia se puede obtener porque hay lugares cuyo marcado representa
la posición de cada nodo (A, B, C, D, E, F) en el área de trabajo. Estos lugares
que informan sobre la posición de los nodos son lugares comunes entre los
modelos ”Position” y el modelo ”Búsqueda_AC”.
Según los cálculos realizados en «Calculate_distance» el nodo destino será
o no alcanzado por el origen y este resultado será representado por un token
en los lugares «Direct», «Indirect» y «Unreachable» que inicialmente tienen
el marcado a 0. En este modelo atómico se han tenido en cuenta los saltos
que tiene una ruta que necesita de nodos vecinos para alcanzar el destino.
Para contar los saltos, se utilizan los lugares y actividades «Indirect_Hhops»
e «Indirect_ActHhops», donde H se sustituye por 2, 3, 4 y 5, en el caso del
modelo con 6 nodos que es el representado en la figura.
130
i
i
i
i
Capítulo 5. Modelos formales
5.4. Modelo que determina el establecimiento y mantenimiento de la ruta
Con este modelo se puede obtener por primera vez además de la ruta
single-hop o multi-hop el efecto del número de saltos, el rango de transmisión
radio y la movilidad sobre el tiempo medio de ruta, es decir el tiempo medio
durante el cual el destino se mantiene accesible.
Se han considerado características del AODV para plasmarlas en los distintos modelos atómicos y así representar una red ad hoc cuyo protocolo de
encaminamiento es reactivo. El escenario es el presentado en la sección 4.1.1
donde la zona de trabajo es un paralelogramo formado por celdas hexagonales, donde se han situado 6 nodos móviles de forma aleatoria.
El modelo compuesto está formado por cinco modelos atómicos: ”Search”,
”Position”, ”Recover route”, ”Time” y ”Time to recover”. Los modelos ”Search”
y ”Position” son muy similares a los presentados en la sección 5.3.2 pero con
algunas mejoras, el resto de modelos atómicos han sido añadidos para obtener un modelo compuesto más completo. A continuación se realizará una
breve descripción de cada uno de los modelos atómicos, sin entrar en detalle
en la programación de los mismos ya que en la sección 5.5 se realiza una análisis minucioso del modelo completo que amplía los modelos presentados en
la sección actual.
5.4.1.
Modelo atómico ”Search”
Este modelo representa el intento de comunicación entre origen y destino,
para ello el nodo origen envía un paquete RREQ. Tras la búsqueda el modelo
determina el tipo de comunicación, single-hop, multi-hop (donde se obtiene
el número de nodos que intervienen en la ruta) o inalcanzable, ver Fig. 5.9.
En este modelo no se ha considerado la existencia de tráfico adicional al
intercambiado entre los dos nodos que establecen la ruta, del mismo modo,
131
i
i
i
i
Capítulo 5. Modelos formales
tampoco hay problemas de comunicación externos que puedan impedir el
establecimiento de la ruta.
Cuando se encuentra una ruta esta es almacenada identificando el orden
en el que intervienen cada uno de los nodos, esta es una de las ampliaciones
y mejoras incorporadas al modelo. Si es posible establecer una comunicación
entre el origen y el destino se inicia la sesión solicitada por el usuario. El
inicio del servicio implica el inicio del conteo de tiempo durante el cual la
ruta está activa, este conteo se lleva a cabo en el modelo atómico ”Time”, ver
sección 5.4.4. Dicha cuenta terminará cuando el usuario no necesite observar
durante más tiempo la información solicitada o cuando la ruta se rompa, ver
modelo atómico ”Recover route” en la sección 5.4.3.
Si después de enviar el primer paquete RREQ no hay respuesta, se inicia el
proceso establecido por el AODV de forma que se inicia el conteo del tiempo
de espera antes de enviar los siguientes paquetes RREQ. De este modo, antes
de dar por inalcanzable el destino se solicita ruta hasta 3 veces, el primer
intento y otros 2 reintentos. Después de esto si no se obtiene respuesta la
ruta se marca como inalcanzable y el usuario no puede iniciar la sesión.
5.4.2.
Modelo atómico ”Position”
Como en los modelos anteriores, existe un modelo atómico de posición para cada nodo en la red, en este caso 6. En la Fig. 5.10 se representa la posición
del nodo A. Con este modelo se evalúa la posición del nodo y su movimiento
obteniendo la nueva posición3 , que depende del ángulo de movimiento tal y
como se ha explicado en la sección 4.1.1. Cuando el nodo cambia de celda,
se calcula la distancia con el resto de los nodos para que la información esté
actualizada. Además, si el nodo pertenece a la ruta es necesario revisar si el
movimiento ha causado una ruptura o si la ruta permanece activa.
3 Al
inicio de la simulación cada nodo está solo en su celda pero durante el experimento el
movimiento de los nodos puede provocar que haya más de un nodo en una misma celda.
132
i
i
i
i
Capítulo 5. Modelos formales
Figura 5.9: Modelo atómico ”Search”
5.4.3.
Modelo atómico ”Recover route”
La evaluación de la ruta después de un movimiento se realiza en el modelo atómico ”Recover route”, ver Fig. 5.11. Hay dos posibilidades:
No hay ruptura. La ruta permanece activa, por tanto aunque uno de sus
nodos se ha movido la ruta no se ha modificado porque el nodo sigue
estando al alcance de sus vecinos.
Se ha producido la ruptura de un enlace. La distancia entre el nodo que
se ha movido y sus vecinos es superior al rango de cobertura radio; por
tanto se deben realizar nuevos cálculos para encontrar una ruta alternativa. La ruta alternativa que se escoja siempre será la más corta en
el caso de que haya más de una posibilidad. Para encontrar esta nueva
ruta el paquete de solicitud de ruta RREQ se enviará hasta 3 veces, repitiendo el mecanismo del modelo atómico ”Search”, ver sección 5.4.1.
En este caso los distintos envíos y el tiempo de espera vienen marcados
por la programación del modelo atómico ”Time to recover route”, ver
sección 5.4.5.
133
i
i
i
i
Capítulo 5. Modelos formales
Figura 5.10: Modelo atómico ”Position A”
La programación de este modelo atómico es muy compleja, principalmente
la de algunas puertas de salida. La complejidad se debe a la decisión de crear
un modelo de posición para conocer la situación exacta de cada nodo en la
red. Sin conocer la posición exacta no es posible conocer la ruta exacta, es
decir el orden de los nodos en la ruta y por tanto cuando hay un movimiento
no se puede saber con exactitud si la ruta se ha roto o no.
Figura 5.11: Modelo atómico ”Recover route”
134
i
i
i
i
Capítulo 5. Modelos formales
Figura 5.12: Modelo atómico ”Time”
5.4.4.
Modelo atómico ”Time”
Este modelo permite medir el tiempo que la ruta está activa, ver Fig. 5.12.
Si se encuentra ruta en el modelo ”Search”, se inicia la sesión y a su vez el
conteo de tiempo en este modelo ”Time”. Cuando la ruta se rompe mientras
se busca ruta alternativa, ver modelo ”Recover route” en la sección 5.4.3,
y cuando el usuario cierra la sesión (tiempo de sesión) se deja de contar el
tiempo de ruta. Finalmente se tendrá la suma de todos los instantes de tiempo
que la comunicación ha sido posible (lifetime total) y conociendo el número
de rutas que se han encontrado (single-hop o multi-hop) se obtiene el tiempo
medio durante el cual la ruta está activa.
5.4.5.
Modelo atómico ”Time to recover route”
El modelo ”Time to recover route”, ver Fig. 5.13, está relacionado con
el modelo ”Recover route” mediante el lugar «Recalculate_route». Cuando
en ”Time to recover route” haya transcurrido el tiempo de espera necesario
entre una solicitud de ruta y la siguiente en el caso de no obtener respuesta
se coloca una marca en el lugar común de modo que en el modelo ”Recover
135
i
i
i
i
Capítulo 5. Modelos formales
Figura 5.13: Modelo atómico ”Time to recover route”
route” se inicia de nuevo la búsqueda. Este proceso de espera y envío de una
nueva solicitud de ruta es el mismo que se realiza durante la búsqueda de
una ruta inicial entre origen y destino con el modelo ”Search”, donde hay
tres intentos para encontrar una ruta alternativa.
5.5. Modelo que determina el porcentaje y tiempo
de establecimiento, el tiempo de recuperación
y de mantenimiento de la ruta
En esta sección se presenta una colección de modelos atómicos que complementan y mejoran a los modelos presentados en la sección 5.4. Con estos
modelos más complejos el objetivo es representar una red completa que haga
uso de un protocolo de encaminamiento reactivo para comprobar si los servicios típicos de una gran instalación pueden ser soportados sobre el escenario
definido. Se debe determinar el tiempo que tarda el protocolo en encontrar
una ruta bajo demanda, el tiempo durante el cual las rutas están activas y el
tiempo que el protocolo necesita para recuperar o encontrar rutas alternativas
cuando se pierde la ruta activa, con esos tiempos y conociendo las restricciones de los servicios se puede determinar si el servicio puede ofrecerse al
usuario de forma correcta y con la QoS requerida.
El modelo completo está formado por siete modelos atómicos: ”Search_AC”,
136
i
i
i
i
Capítulo 5. Modelos formales
Figura 5.14: Modelo atómico ”Search AC”
”Position”, ”If_route_change”, ”Route_invalidation”, ”Alternative_route”, ”Delay_recovery” y ”Time”.
5.5.1.
Modelo atómico ”Search AC”
La subred de búsqueda (ver Fig. 5.14) se utiliza cuando hay un intento
de comunicación entre origen (terminal móvil A) y destino (terminal móvil
C.) El nodo origen envía un paquete de solicitud de ruta RREQ para poder
establecer una comunicación con el destino. Al igual que en los anteriores
modelos, los nodos fuente y destino son siempre los mismos.
Con una tasa de comunicación, λc se dispara la actividad «Start_search».
En la tabla 5.1 se presenta la programación completa de la actividad. Si se
dispara el primer caso de la actividad se inicia el cálculo de ruta gracias a
la puerta de salida «Calculate_distance». Conociendo la posición de cada nodo4 en el modelo, es posible determinar si la comunicación con el destino
es single-hop (directa), multi-hop (indirecta) o si por lo contrario la comunicación no es posible. Se ha de tener en cuenta que se ha considerado un
4 Para
encontrar una ruta desde fuente a destino, el nodo fuente en el modelo debe tener
identificados sus vecinos para enviarles mensajes broadcast. Ver que no es necesario para los
nodos de una MANET real conocer sus vecinos antes de enviar los mensajes broadcast [XMT02].
137
i
i
i
i
Capítulo 5. Modelos formales
Tabla 5.1: Timed Activity Start_search
Timed Activity:
Distribution Parameters
Start_search
Rate
tasa_busqueda
Activation Predicate
(1.0)
Reactivation Predicate
(1.0)
Case Distributions
case 1
return(1.0-p_error_search);
case 2
return(p_error_search);
canal ideal porque no se han modelado los fenómenos como el nodo oculto,
el nodo expuesto, etc. pero se han querido representar los problemas debidos al ruido y a los distintos fenómenos que se pueden presentar en una
red inalámbrica de forma sencilla, añadiendo una tasa de error con la cual
se dispara el segundo caso de la actividad «Start_search». En este caso se da
por inalcanzable la ruta sin realizar ningún cálculo. Esta tasa de error aporta
flexibilidad al modelo, ya que aún siendo un comportamiento muy genérico,
permite comparar los entornos poco ruidosos o con problemas de visibilidad
entre nodos, con aquellos más ruidosos y con muchas interferencias debidas
a distintos fenómenos. El error incorporado afecta única y exclusivamente al
proceso de búsqueda de ruta.
Volviendo al cálculo de la ruta, se encuentra y almacena el camino exacto5 , es decir, los nodos que intervienen en la ruta y el orden en el que lo
hacen. En el apéndice C.3 se muestran las posibles combinaciones en el orden de los nodos que pertenecen a una ruta en una red con 6 nodos. Sin
un conocimiento previo, cualquier ruta es válida, por tanto en el modelo la
primera ruta encontrada es la escogida, siempre primando el menor número de saltos. Si la ruta encontrada ha sido directa se almacena una marca
5 El
descubrimiento y almacenamiento exacto del camino es muy costoso en términos de
programación, pero de este modo el modelo es capaz de determinar si después del movimiento
de un nodo que forma parte de la ruta, esta se ha visto afectada.
138
i
i
i
i
Capítulo 5. Modelos formales
en el lugar «aux_Direct», si por el contrario ha sido indirecta, dependiendo del número de saltos se coloca una marca en el lugar «aux_Ind_2hops»,
«aux_Ind_3hops», «aux_Ind_4hops» o «aux_Ind_5hops», ya que como máximo se tendrá una ruta con 6 nodos y por tanto, con 5 saltos.
En modelos anteriores no se contemplaban estos lugares auxiliares y en
su lugar se utilizaban directamente los lugares que almacenaban tantas marcas como rutas directas encontradas, indirectas según el número de saltos
e inalcanzables. Este es un modelo mejorado, se han realizado modificaciones para dotarlo de un comportamiento más real, se ha añadido esta etapa intermedia formada por los lugares auxiliares junto con las actividades
«Inst_Act_Direct» e «Inst_Act_Ind_Xh» siendo X el número de saltos. Evaluando detenidamente el comportamiento del protocolo AODV y estudiando
los resultados de distintas pruebas experimentales reales se puede asegurar
que aunque la ruta sea posible en términos de alcanzabilidad no siempre se
encuentra tras la primera solicitud, aquí interviene el valor del TTL con el
que es enviado el paquete RREQ y el número de saltos que deben dar los
paquetes para alcanzar el destino. Por todo ello, en esta nueva parte del modelo se ha programado un comportamiento en el que la probabilidad de dar
por definitiva la ruta encontrada en ese intento dependerá no solo de que sea
posible en términos de cobertura radio sino también del número de intentos
realizados y del número de saltos que intervienen en la ruta encontrada. Dado que no se ha modelado al detalle el funcionamiento del AODV, si no se
añadiese este mecanismo, casi el 100 % de las rutas encontradas lo harían tras
la primera solicitud de búsqueda, es decir todo destino alcanzable lo sería en
el primer intento excepto aquellas rutas que se pudiesen formar posteriormente por el movimiento de algún nodo y lo hiciesen en las búsquedas de
rutas posteriores.
Para entender la programación de cada uno de los casos de estas actividades, dependiente del número de intentos realizado se muestra un ejemplo; en
la tabla 5.2 se puede ver la programación de la actividad instantánea que se
activa cuando la ruta es directa. En este caso independientemente del número
de intentos, marcas en el lugar «RREQ», se disparará el caso 1 de la actividad
139
i
i
i
i
Capítulo 5. Modelos formales
«Inst_Act_Direct» porque el valor de la variable global ep_MAC_d1 es siempre 1.0. En la tabla 5.3, se muestran las variables globales que representan las
probabilidades6 de encontrar ruta en el intervalo correspondiente según el
número de saltos de la ruta. La puerta de salida «OG_D1» (ver tabla 5.4) se
encargará de poner una marca en el lugar «Direct» para contabilizar el número de rutas directas encontradas; otra marca en el lugar «Route_Direct», marca que se mantendrá durante el tiempo que la ruta directa permanece activa;
y se activará el servicio situando una marca en el lugar «Activate_service»
porque una vez encontrada la ruta deseada el usuario podrá disponer del
servicio solicitado. También se colocará una marca en el elemento correspondiente del vector representado por el lugar «Tiempos_búsqueda» para conocer posteriormente los intervalos de tiempo en los que se han encontrado las
rutas.
«Tiempos_busqueda» es un lugar extendido con 20 elementos, el marcado de cada uno estos elementos representa el número de rutas encontradas
según el número de saltos y el intento de búsqueda correspondiente. Por
ejemplo, tal y como se indica en la tabla 5.4 con la expresión 5.1, dándole al
término «saltos» el valor 1 por estar en la puerta de salida cuando la ruta encontrada ha sido directa (single-hop), se calcula el elemento del vector cuyo
marcado se tiene que incrementar cada vez que se encuentra ruta según la
expresión 5.2.
indice = (( RREQ → Mark () + saltos) + (4 ∗ RREQ → Mark ())) − 1
Tiempos_bsqueda → Index (indice) → Mark () =
Tiempos_bsqueda → Index (indice) → Mark () + 1
(5.1)
(5.2)
De este modo se tiene:
RREQ=0, primer intento =⇒ indice = [(0 + 1) + (4 · 0)] − 1 = 0
RREQ=1, primer reintento =⇒ indice = [(1 + 1) + (4 · 1)] − 1 = 5
6 Con
las probabilidades tachadas se representan aquellas que toman siempre el valor 0.0
porque según el número de saltos nunca se necesitan esos intentos para encontrar la ruta.
140
i
i
i
i
Capítulo 5. Modelos formales
Tabla 5.2: Instantaneous Activity Inst_Act_Direct
Instantaneous Activity:
Case Distributions
Inst_Act_Direct
case 1
if (RREQ->Mark() == 0)
return(ep_MAC_d1);
else if(RREQ->Mark()>= 1)
return (1.0);
case 2
if (RREQ->Mark() == 0)
return(1.0-ep_MAC_d1);
else if(RREQ->Mark()>= 1)
return (0.0);
RREQ=2, segundo reintento =⇒ indice = [(2 + 1) + (4 · 2)] − 1 = 10
RREQ=3, tercer reintento =⇒ indice = [(3 + 1) + (4 · 3)] − 1 = 15
Del mismo modo, se han programado las puertas de salida correspondientes
para 2, 3, 4 y 5 saltos de forma que se incremente el marcado del elemento
del lugar «Tiempos_búsqueda» que se corresponda con el número de saltos
y el intento de búsqueda en el que finalmente se ha encontrado la ruta.
Una vez evaluado el caso de la ruta directa, se va a estudiar qué sucede cuando en esta interviene algún nodo intermedio. Si la ruta tiene 2 ó 3
saltos, casi con toda probabilidad será encontrada al igual que la ruta singlehop en el primer intento, cuando los nodos se alcanzan en términos de cobertura radio, a no ser que haya algún problema puntual. Esos problemas
puntuales se representan en el modelo dando un valor inferior a 1.0 a las
variables ep_MAC_2h1 y ep_MAC_2h2 para las rutas de 2 saltos (2 hops, 2h)
y ep_MAC_3h1 y ep_MAC_3h2 para las rutas de 3 saltos, variables que representan la probabilidad de que la ruta de 2 ó 3 saltos sea encontrada en el
intento de búsqueda actual cuando éste es el primer reintento (ep_MAC_2h1,
ep_MAC_3h1) o cuando es el segundo reintento (ep_MAC_2h2, ep_MAC_3h2).
141
i
i
i
i
Capítulo 5. Modelos formales
Tabla 5.3: Probabilidades de dar por válida la ruta encontrada en el intento
actual
Direct
2 hops
3 hops
4 hops
5 hops
Ep_MAC_d1
Ep_MAC_2h1
Ep_MAC_3h1
Ep_MAC_4h1
Ep_MAC_5h1
Ep_MAC_d2
Ep_MAC_2h2
Ep_MAC_3h2
Ep_MAC_4h2
Ep_MAC_5h2
Ep_MAC_d3
Ep_MAC_2h3
Ep_MAC_3h3
Ep_MAC_4h3
Ep_MAC_5h3
Ep_MAC_d4
Ep_MAC_2h4
Ep_MAC_3h4
Ep_MAC_4h4
Ep_MAC_5h4
Ep_MAC_d1: probabilidad de que el token vaya al lugar «Direct» en el primer intento
Ep_MAC_2h1: probabilidad de que el token vaya al lugar «Indirect_2hops» en el primer intento
Ep_MAC_2h2: probabilidad de que el token vaya al lugar «Indirect_2hops» en el segundo intento
Ep_MAC_3h1: probabilidad de que el token vaya al lugar «Indirect_3hops» en el primer intento
Ep_MAC_3h2: probabilidad de que el token vaya al lugar «Indirect_3hops» en el segundo intento
Ep_MAC_4h1: probabilidad de que el token vaya al lugar «Indirect_4hops» en el primer intento
Ep_MAC_4h2: probabilidad de que el token vaya al lugar «Indirect_4hops» en el segundo intento
Ep_MAC_4h3: probabilidad de que el token vaya al lugar «Indirect_4hops» en el tercer intento
...
Si la ruta tiene 4 ó 5 saltos la probabilidad de que en realidad haya sido
encontrada en el momento actual dependerá como en los casos anteriores
del número de intentos que se hayan llevado a cabo. Por ejemplo, si la ruta
es de 5 saltos, el protocolo nunca encontrará ruta tras el primer envío del
paquete RREQ porque el valor inicial del TTL según el protocolo es 2, por
tanto, solo alcanza a los nodos que disten 2 saltos. En ese caso, aunque el
modelo basándose en la colocación de los nodos en el área haya encontrado
ruta de cinco saltos deberá retardar ese encuentro porque según el protocolo
esta ruta nunca se encontraría tras el primer intento. Para realizar el retardo
el valor de la variable global ep_MAC_5h1, que representa la probabilidad de
que la ruta de 5 saltos sea encontrada en el primer intento deberá ser 0.0.
De este modo se dispara el segundo caso de la actividad «Inst_Act_Ind_5h»
(ver tabla 5.5) con una probabilidad del 100 % ya que se está evaluando el
caso donde el lugar «RREQ» tiene un marcado igual a 0 (primer intento) y se
dispara con una probabilidad 1.0-ep_MAC_5h1 = 1.0 - 0.0 = 1.0, y en la puerta
142
i
i
i
i
Capítulo 5. Modelos formales
Tabla 5.4: Output gate OG_D1
Output Gate:
Function
OG_D1
Direct->Mark()++;
Route_Direct->Mark() = 1;
Activate_service->Mark() = 1;
int indice;
indice = ((RREQ->Mark() + 1) + (4*RREQ->Mark())) -1;
Tiempos_búsqueda->Index(indice)->Mark() =
Tiempos_búsqueda->Index(indice)->Mark()+ 1;
RREQ->Mark() = 0;
MAC_ctrl->Mark() = 1;
de salida correspondiente, en el caso de este ejemplo la puerta «OG_5h2» por
ser una ruta de 5 saltos, se realizan las operaciones necesarias para que se
envíe una nueva solicitud de ruta tras el tiempo de espera correspondiente,
ver tabla 5.6, como es incrementar el valor del lugar «RREQ» que representa
el número de intentos.
Por otra parte, si se tiene una ruta de 5 saltos y se está en cualquier otro
intento, en el caso de que la ruta sea posible el modelo la marcará como
definitiva en este intento según las probabilidades establecidas, para darla
por válida se debe disparar el primer caso de la actividad. Al igual que se ha
hecho con la ruta directa la puerta de salida «OG_5h1» se encarga de colocar
una marca en el lugar «Indirect_5hops» y otra en el lugar «Indirect», lugares
que sirven para controlar el número de rutas que se han encontrado con 5
saltos y el número de rutas multi-hop respectivamente. También se sitúa una
marca en el lugar «Route_Indirect» que se mantendrá durante el tiempo que
la ruta permanezca activa. Del mismo modo que se ha hecho para la ruta
directa, se coloca una marca en el lugar «Activate_service», activándose el
servicio solicitado por el usuario y también se añade la marca en el elemento
correspondiente del lugar extendido «Tiempos_búsqueda».
En el caso de las rutas multi-hop, hay un último paso y es almacenar la
143
i
i
i
i
Capítulo 5. Modelos formales
Tabla 5.5: Instantaneous Activity Inst_Act_Ind_5h
Instantaneous Activity:
Case Distributions
Inst_Act_Ind_5h
case 1
if (RREQ->Mark() == 0)
return(ep_MAC_5h1);
else if(RREQ->Mark() == 1)
return (ep_MAC_5h2);
else if(RREQ->Mark() == 2)
return (ep_MAC_5h3);
else if(RREQ->Mark() == 3)
return (ep_MAC_5h4);
case 2
if (RREQ->Mark() == 0)
return(1.0-ep_MAC_5h1);
else if(RREQ->Mark() == 1)
return (1.0-ep_MAC_5h2);
else if(RREQ->Mark() == 2)
return (1.0-ep_MAC_5h3);
else if(RREQ->Mark() == 3)
return (1.0-ep_MAC_5h4);
ruta exacta que ha sido encontrada, véase el apéndice C.3 donde se muestran
las posibles rutas en una red de 6 nodos. La posición de cada nodo en la
ruta se indica colocando tantas marcas en el elemento correspondiente del
lugar extendido «Route_ind» como su posición en la ruta. «Route_ind» está
formado por un vector de cuatro elementos, el primero ha sido asignado al
nodo móvil B, el segundo al nodo D, el tercero al E y el último al F, ya que el
nodo A siempre actúa como origen de la solicitud y el nodo C como destino
no es necesario marcar su posición en la ruta porque ya es conocida. Por
ejemplo, si la ruta encontrada ha sido A-D-B-C los valores de marcado de
144
i
i
i
i
Capítulo 5. Modelos formales
Tabla 5.6: Output gate OG_5h2
Output Gate:
OG_5h2
RREQ->Mark()++;
Function
MAC_ctrl->Mark() = 1;
este lugar serán los siguientes:
Route_ind[0] = 2 =⇒ nodoB
Route_ind[1] = 1 =⇒ nodoD
Route_ind[2] = 0 =⇒ nodoE
Route_ind[3] = 0 =⇒ nodoF
Con dos marcas en el primer elemento del vector se indica que el nodo B
ocupa el segundo lugar en la ruta, con una marca en el segundo elemento se
indica que es el nodo D el que ocupa el primer lugar, siendo éste el nodo que
enlaza con A. Los nodos con marcado 0 no intervienen en la ruta.
En la programación de la puerta de salida «OG_5h1» (ver tabla 5.7) se
muestra cómo se establece el orden de los nodos en la ruta según la evaluación de las distancias entre ellos, colocando las marcas correspondientes en
el lugar «Route_ind» como se ha explicado.
Tabla 5.7: Output gate OG_5h1
Output Gate:
Function
OG_5h1
Indirect->Mark()++;
Indirect_5hops->Mark()++;
Activate_service->Mark() = 1;
Route_Indirect->Mark() = 1;
int indice;
indice = ((RREQ->Mark()+ 5) + (4*RREQ->Mark())) -1;
Tiempos_búsqueda->Index(indice)->Mark() =
Continuación . . .
145
i
i
i
i
Capítulo 5. Modelos formales
Tabla 5.7: Output Gate OG_5h1 (continuación)
Output Gate:
OG_5h1
Tiempos_búsqueda->Index(indice)->Mark()+ 1;
if ( (distancia_12 <= cobertura) && (distancia_23 <= cobertura) &&
(distancia_34 <= cobertura) && (distancia_4dest <= cobertura))
{
Route_ind->Index(0)->Mark()= 1;
Route_ind->Index(1)->Mark()= 2;
Route_ind->Index(2)->Mark()= 3;
Route_ind->Index(3)->Mark()= 4;
}
else if((distancia_12 <=cobertura)&&(distancia_24 <=cobertura)
&& ((distancia_34 <= cobertura)&&(distancia_3dest <=cobertura))
{
Route_ind->Index(0)->Mark()= 1;
Route_ind->Index(1)->Mark()= 2;
Route_ind->Index(3)->Mark()= 3;
Route_ind->Index(2)->Mark()= 4;
}
else if((distancia_13 <=cobertura)) && (distancia_23 <=cobertura)
&& (distancia_24 <= cobertura) && (distancia_4dest <=cobertura)
{
Route_ind->Index(0)->Mark()= 1;
Route_ind->Index(2)->Mark()= 2;
Route_ind->Index(1)->Mark()= 3;
Route_ind->Index(3)->Mark()= 4;
}
else if((distancia_13 <=cobertura) && (distancia_34 <=cobertura)
&& (distancia_24 <= cobertura) && (distancia_2dest <=cobertura))
{
Continuación . . .
146
i
i
i
i
Capítulo 5. Modelos formales
Tabla 5.7: Output Gate OG_5h1 (continuación)
Output Gate:
OG_5h1
Route_ind->Index(0)->Mark()= 1;
Route_ind->Index(2)->Mark()= 2;
Route_ind->Index(3)->Mark()= 3;
Route_ind->Index(1)->Mark()= 4;
}
else if(distancia_14 <=cobertura) && (distancia_24 <=cobertura)
&& (distancia_23 <= cobertura) && (distancia_3dest <=cobertura)
{
Route_ind->Index(0)->Mark()= 1;
oute_ind->Index(3)->Mark()= 2;
Route_ind->Index(1)->Mark()= 3;
Route_ind->Index(2)->Mark()= 4;
}
else if(distancia_14 <=cobertura) && (distancia_34 <=cobertura)
&& (distancia_23 <= cobertura) && (distancia_2dest <= cobertura)
{
Route_ind->Index(0)->Mark()= 1;
Route_ind->Index(3)->Mark()= 2;
Route_ind->Index(2)->Mark()= 3;
Route_ind->Index(1)->Mark()= 4;
}
RREQ->Mark() = 0;
MAC_ctrl->Mark() = 1;
flag->Mark() = 1;
Finalmente, la puerta de entrada «In_Gate2» activa la actividad instantánea «Inst_Act1» si la ruta ha sido marcada como indirecta y existe alguna
marca en el lugar «through», lugar que indica cual es el segundo nodo en la
ruta encontrada después del nodo A que siempre es el origen. En la puerta
147
i
i
i
i
Capítulo 5. Modelos formales
de salida «Route» (ver la programación completa en la tabla 5.8) se reordena
la posición de los nodos en la ruta según el marcado del lugar «through»
para obtener la ruta exacta.
Tabla 5.8: Output gate Route
Output Gate:
Function
Route
short Path_ind[4];
for (int i=0; i<= 3; i++) {
Path_ind[i] = Route_ind->Index(i)->Mark();
Route_ind->Index(i)->Mark() = 0; }
switch(through->Mark()) {
case 1:
for (int i=0; i<= 3; i++) {
Route_ind->Index(i)->Mark() = Path_ind[i]; }
break;
case 2:
Route_ind->Index(0)->Mark() = Path_ind[1];
Route_ind->Index(1)->Mark() = Path_ind[0];
Route_ind->Index(2)->Mark() = Path_ind[2];
Route_ind->Index(3)->Mark() = Path_ind[3];
break;
case 3:
Route_ind->Index(0)->Mark() = Path_ind[1];
Route_ind->Index(1)->Mark() = Path_ind[2];
Route_ind->Index(2)->Mark() = Path_ind[0];
Route_ind->Index(3)->Mark() = Path_ind[3];
break;
case 4:
Route_ind->Index(0)->Mark() = Path_ind[1];
Route_ind->Index(1)->Mark() = Path_ind[2];
Route_ind->Index(2)->Mark() = Path_ind[3];
Continuación . . .
148
i
i
i
i
Capítulo 5. Modelos formales
Tabla 5.8: Output gate Route (continuación)
Output Gate:
Route
Route_ind->Index(3)->Mark() = Path_ind[0];
break; }
through->Mark() = 0;
Cuando en este modelo se activa el servicio añadiendo una marca al lugar
«Activate_service» se inicia el conteo de tiempo durante el cual la ruta está
activa y se está ofreciendo el servicio, este conteo se realiza en el modelo
atómico «Time», ver apartado 5.5.7.
Que la búsqueda de ruta no de resultado se debe a dos motivos, porque el protocolo no ha encontrado los nodos vecinos que permitan establecer
un camino hacia el destino; o porque se haya encontrado ruta pero probabilísticamente no sea realista que se encuentre en el intento actual debido al
número de saltos de la misma. En cualquiera de los dos casos, se incrementa
el marcado del lugar «RREQ», este marcado indica el número de intentos
realizados y se inician los reintentos de búsqueda. Que el marcado sea distinto de 0 habilita la actividad «Send_RREQ», ver tabla 5.9, ésta se dispara
con una tasa dependiente del número de reintentos. Según el número de nodos de la red que se está estudiando y los parámetros del protocolo reactivo
AODV cuyas características han sido utilizadas para el modelado del protocolo evaluado, la actividad se disparará 0.4 s después de la primera búsqueda
de ruta, este es el tiempo de espera después del primer intento tras el cual el
protocolo enviaría el siguiente paquete de búsqueda de ruta en el caso de no
obtener respuesta7 . El siguiente reintento se realizaría al cabo de otros 0.8 s
que corresponden al tiempo de espera antes de una nueva solicitud8 . Desde
7 Si
una ruta no se recibe al cabo de NET_TRAVERSAL_TIME milisegundos, el nodo debe
volver a intentar descubrir una ruta difundiendo un nuevo paquete RREQ, ver [PR03], en nuestro
caso NET_TRAVERSAL_TIME=2 x NODE_TRAVERSAL_TIME x NET_DIAMETER=2 x (40 ms)
x 5 = 400 ms = 0.4 s
8 Según la RFC del protocolo AODV, cuando se calcula el tiempo de espera para la recepción del RREP después de enviar el segundo RREQ, el nodo fuente debe usar un incremento
149
i
i
i
i
Capítulo 5. Modelos formales
Tabla 5.9: Timed Activity Send_RREQ
Timed Activity:
Distribution Parameters
Send_RREQ
Value
0.4*pow(2.0, RREQ->Mark()-1.0)
Activation Predicate
(none)
Reactivation Predicate
(none)
ese momento el protocolo esperaría la llegada de un paquete RREP durante
1.6 s9 mas, o sea 2.8 s (0.4 s + 0.8 s + 1.6 s) desde su solicitud inicial.
Según la tabla 5.9 con la expresión 5.3 se obtienen los tiempos de espera
deseados.
0, 4 ∗ 2RREQ→ Mark()−1
(5.3)
En el primer reintento RREQ → Mark () = 1 =⇒ 0, 4 ∗ 20 = 0, 4
En el segundo reintento RREQ → Mark () = 2 =⇒ 0, 4 ∗ 21 = 0, 8
En el tercer reintento RREQ → Mark () = 3 =⇒ 0, 4 ∗ 22 = 1, 6
5.5.2.
Modelo atómico ”Position”
Este modelo representa la posición de cada nodo en el área y su movimiento a través de la misma, ver Fig. 5.15. Existe por tanto al igual que en
los modelos anteriores, un modelo atómico de posición por cada nodo o terminal móvil. El marcado de los lugares «x_MT_A» (eje X del terminal móvil
A) e «y_MT_A» (eje Y del terminal móvil A) indica en qué celda de la zona
exponencial binario (binary exponential backoff). Esto es, el tiempo de espera para el RREP
correspondiente al segundo RREQ es 2 * NET_TRAVERSAL_TIME milisegundos = 0.8 s.
9 Si no se recibe un paquete RREP dentro del periodo de tiempo correspondiente, debe ser
enviado otro RREQ, hasta alcanzar RREQ_RETRIES intentos adicionales después del primer
RREQ enviado. Para cada intento adicional, el tiempo de espera para el RREP es multiplicado
por 2, por tanto 2 * 2 * NET_TRAVERSAL_TIME=1.6 s
150
i
i
i
i
Capítulo 5. Modelos formales
Figura 5.15: Modelo atómico ”Position MT A”
de trabajo se encuentra el terminal móvil o nodo A. Inicialmente el marcado
de los lugares es el mostrado en la tabla 5.10. Este marcado se representa
con variables globales, lo que permite variar la posición inicial del nodo en
la zona de trabajo en los distintos experimentos. El disparo de la actividad
«Stay_in_cell_finalized», define probabilísticamente con qué ángulo se mueve el terminal móvil A. Según el ángulo de movimiento, como se aprecia en
la tabla 5.11, variará el marcado de los lugares «x_MT_A» e «y_MT_A» indicando la celda en la que estará el terminal después de su movimiento. De
todos modos, un movimiento no siempre implica un cambio de celda.
Si el nodo cambia de celda se indica con una marca en el lugar «Cambio_celda_A» y se debe actualizar la distancia entre el nodo que ha realizado
el movimiento y el resto. Los cálculos de distancias se realizan en la puerta de salida «Calcular_distancia» conociendo la posición del resto de nodos
gracias a sus coordenadas («X_MT_B», «Y_MT_B», «X_MT_C», «Y_MT_C»,
«X_MT_D», «Y_MT_D», «X_MT_E», «Y_MT_E», «X_MT_F», «Y_MT_F») y la
del nodo actual («X_MT_A», «Y_MT_A»). La distancia se representa con un
número de marcas igual al número de anillos que separa a los nodos, este
marcado se colocará en el lugar correspondiente, «AB», «AC», «AD», «AE»
y «AF» en el caso del modelo de posición para el nodo «A»10 . Ha de tener10 Los
lugares donde se almacena la distancia entre nodos varían según el modelo atómico de
151
i
i
i
i
Capítulo 5. Modelos formales
Tabla 5.10: Bucket attributes of Position MT A
Place Names:
Initial Markings
AB
ABini
AC
ACini
AD
ADini
AE
AEini
AF
AFini
Cambio_celda_A
0
If_A_in_route
0
Route_Direct
0
Route_Indirect
0
X_MT_A
x_MT_Aini
X_MT_B
x_MT_Bini
X_MT_C
x_MT_Cini
X_MT_D
x_MT_Dini
X_MT_E
x_MT_Eini
X_MT_F
x_MT_Fini
Y_MT_A
y_MT_Aini
Y_MT_B
y_MT_Bini
Y_MT_C
y_MT_Cini
Y_MT_D
y_MT_Dini
Y_MT_E
y_MT_Eini
Y_MT_F
y_MT_Fini
se en cuenta que este cálculo es un ”artefacto del modelo”; en la red real la
distancia entre nodos no es conocida a priori.
Si el nodo que ha cambiado de celda pertenece a una ruta activa, es necesario evaluar si este movimiento implica un ruptura de enlace con alguno
de los nodos, y por tanto una pérdida de ruta o si por lo contrario a pesar
del movimiento la ruta permanece inalterada. Si el nodo que se ha movido es
A o C y existe una marca en el lugar «Route_Direct» o «Route_Indirect» significa que existe ruta y que esos nodos están en ella porque siempre se han
posición que se esté evaluando.
152
i
i
i
i
Capítulo 5. Modelos formales
Tabla 5.11: Timed Activity Stay in Cell Finalized
Timed Activity:
Distribution Parameters
Stay_in_cell_finalized
Rate
tasa_desplazamiento
Activation Predicate
1.0
Reactivation Predicate
1.0
case 1
return(Pm);
case 2
return(Pm);
case 3
Case Distributions
return(Pm);
case 4
return(Pm);
case 5
return(Pm);
case 6
return(1.0-5*Pm);
definido como nodo fuente (A) y nodo destino (C). En cualquiera de estos
casos se añade una marca al lugar «If_A_in_route» o «If_C_in_route» según
el modelo de posición que se esté evaluando para tener en cuenta que el nodo que se ha movido pertenece a la ruta activa. En el resto de modelos de
posición (ver el ejemplo el modelo de posición B, Fig. 5.16), para saber si el
nodo pertenece a la ruta se evalúa el marcado del lugar «Route_ind». Este es
un Extended place, por lo que representa un vector de marcas, si el elemento
del vector que representa dicho nodo tiene un marcado distinto de 0 significa que pertenece a la ruta, añadiendo una marca en el lugar correspondiente
«If_X_in_route», donde X puede ser el nodo B, E, D o F, se indica que el nodo
que se ha movido está en la ruta lo que habilita la posterior evaluación de la
misma.
153
i
i
i
i
Capítulo 5. Modelos formales
Figura 5.16: Modelo atómico ”Position MT B”
5.5.3.
Modelo atómico ”If route change”
”If route change” es uno de los tres modelos atómicos que sustituyen al
modelo ”Recover route” presentado en la sección anterior para así representar con mayor precisión el funcionamiento del protocolo reactivo. En este
modelo se evalúa si el movimiento de un nodo que pertenece a la ruta activa
ha provocado la ruptura o no de la misma, Fig. 5.17. El funcionamiento de
este modelo atómico está ligado al de los modelos de posición, los lugares
«If_X_in_route» siendo X cualquiera de los 6 nodos, tendrán una marca que
habrá sido colocada si el nodo que se ha movido pertenece a la ruta activa. Si
alguno de esos lugares tiene una marca se habilita la actividad «Inst_Act1» y
se dispara el caso de la actividad que corresponde al nodo que ha realizado el
movimiento, de este modo en las puertas de salida «A_moved», «B_moved»,
«C_moved», «D_moved», «E_moved» y «F_moved» se evalúa conociendo la
ruta actual el enlace o enlaces del nodo con sus vecinos en la ruta.
La ruta actual se obtiene evaluando en la puerta de salida «Calculate_distance» el lugar extendido «Route_ind». Por ejemplo, si el nodo que se ha
movido es A o C y todos los elementos del lugar extendido tienen el marcado
154
i
i
i
i
Capítulo 5. Modelos formales
Figura 5.17: Modelo atómico ”If route change”
a 0 significa que la ruta es directa y se evalúa únicamente la distancia entre A
y C con el lugar «AC». Si el marcado de «AC» es menor o igual que el valor
de cobertura radio con el que se está trabajando en el experimento actual, la
ruta se mantiene activa. Por lo contrario, si la distancia actual es superior a la
cobertura radio los nodos ya no son alcanzables entre sí y se añade una marca
en el lugar «Recalculate_route». Siguiendo con el ejemplo, cuando se mueve
A o C si existe algún otro nodo en la ruta se evalúa en el caso de A cuál es el
que tiene el marcado a 1 en el lugar «Route_ind» porque A solo puede tener
un sucesor; en el caso de que se mueva C se evalúa qué nodo es el último por
orden en la ruta, porque C únicamente puede tener un antecesor. Si el nodo
que se mueve es cualquiera de los otros cuatro, en la puerta correspondiente
y evaluando el marcado del lugar «Route_ind» se estudia cual es su posición
en la ruta y por tanto quien es su antecesor y sucesor para evaluar únicamente
si la distancia a estos dos nodos es superior a la cobertura radio. Si no lo es,
no se realiza ninguna acción y la ruta continua siendo la misma y si alguna
distancia es superior a la cobertura radio debe buscarse una ruta alternativa,
esto se indica colocando una marca en el lugar «Recalculate_route».
Una marca en «Recalculate_route» y en «Route_Direct» o «Route_Indirect» indica que la ruta directa o indirecta que permanecía activa ha cambiado por el movimiento de un nodo. En este caso, se habilita la actividad
«Inst_Act2» disparándose el primer caso con una probabilidad del 100 % si
la ruta activa era directa o se dispara el segundo caso de la actividad cuando
155
i
i
i
i
Capítulo 5. Modelos formales
la ruta era indirecta. En las puertas de salida «was_Direct» y «was_Indirect»
se da por perdida la ruta colocando la marca en el lugar «Lost_route» y se
elimina el marcado del lugar «Route_Direct» o del lugar «Route_Indirect»
según fuese la ruta directa o indirecta respectivamente, ya que estos lugares
mantienen su marcado mientras la ruta directa o indirecta permanece activa.
Además se activa el tiempo de invalidación, al cabo del cual realmente la ruta se marca en la tabla de encaminamiento como inválida, acto que permite
realizar una nueva búsqueda de ruta.
Según las especificaciones del AODV si un nodo se mueve, aunque la ruta se pierda, en la tabla de encaminamiento no aparece tal pérdida de forma
instantánea, no se da por perdida hasta que no se supera el tiempo de invalidación. Es decir, durante ese tiempo en realidad el servicio no podrá ser
visualizado por el usuario porque la ruta se ha roto y los paquetes de datos no
llegan a su destino, pero el protocolo sigue considerando esa ruta como válida. La ruta se marca como inválida tras el tiempo de invalidación que viene
determinado por el valor de Allowed_Hello_Loss * Hello_Interval. Por defecto el protocolo permite la pérdida de 2 paquetes Hello (Allowed_Hello_Loss
= 2) para determinar que ha perdido contacto con sus vecino, y los paquetes
Hello se envían cada segundo (Hello_Interval = 1000 ms). Cuando la ruta ha
sido invalidada en la tabla de encaminamiento puede iniciarse la búsqueda
de una nueva ruta.
En el diseño de este modelo atómico se ha realizado una aproximación11 .
Cuando el movimiento implica la ruptura de la ruta, ésta se marca como
perdida con un token en el lugar «Lost_route», aunque el protocolo no la
considera rota hasta que no detecta la pérdida de dos paquetes Hello (2 s). En
el caso del modelo, lo que interesa es calcular el tiempo que la ruta permanece
11 La aproximación será válida siempre y cuando durante los 2 s de espera la ruta perdida no
se haya recuperado gracias al movimiento de algún nodo. Si fuese así, al cabo de 2 s se buscará
de nuevo ruta y se encontrará pero se determinará que es una nueva cuando en realidad es la
misma recuperada gracias al movimiento de alguno de sus nodos. Se ha considerado que afecta
menos a los resultados contabilizar como ruta nueva una ruta que ya existía que contabilizar
tiempo válido de ruta cuando no lo es.
156
i
i
i
i
Capítulo 5. Modelos formales
activa ofreciendo el servicio, por tanto es necesario marcarla como perdida
porque como se verá en la sección 5.5.7, es en el modelo atómico «Time»
donde al detectar una ruta perdida se deja de contar el tiempo de ruta activa.
Si se marcase como perdida la ruta al cabo de 2 s, tiempo en el que se marca
como inválida, en el modelo «Time» se hubiesen contabilizado 2 s más de ruta
activa durante los cuales es falso que se haya podido establecer comunicación
entre origen y destino y por tanto que se haya podido ofrecer el servicio. El
modelo si que contempla el tiempo de invalidación y el hecho de que pasado
este momento se puede iniciar la búsqueda de una nueva ruta y no antes
aunque sea conocido que exista una ruta alternativa.
5.5.4.
Modelo atómico ”Route invalidation”
En la Fig. 5.18 se muestra este modelo donde se calcula el tiempo de
invalidación según el producto Allowed_Hello_Loss * Hello_Interval. El producto de estos dos parámetros es la tasa con la que se dispara la actividad
determinista «Invalidation_time», actividad que ha sido habilitada cuando
en el modelo atómico ”If route change”, ver sección 5.5.3, se ha añadido una
marca en los lugares «Allowed_Hello_Loss» y «Hello_Interval». Por tanto,
la actividad se dispara al cabo de 2 s si se consideran los valores por defecto del protocolo AODV. Tras el disparo se inicializan los valores de los
lugares Allowed_Hello_Loss y Hello_Interval, y se coloca una marca en el
lugar «Invalidated», lugar compartido por la subred «Alternative route», ver
sección 5.5.5.
5.5.5.
Modelo atómico ”Alternative Route”
En este modelo atómico se representa la búsqueda de una ruta alternativa
a la que se estaba utilizando y que ha sido invalidada tras la ruptura debida
al movimiento de un nodo, ver Fig. 5.19. El marcado del lugar «Invalidated»
habilita la actividad «InstAct_Invalidated», que se dispara de forma instantánea. Al igual que sucede en el modelo ”Search_AC”, ver sección 5.5.1, se
157
i
i
i
i
Capítulo 5. Modelos formales
Figura 5.18: Modelo atómico ”Route invalidation”
Figura 5.19: Modelo atómico ”Alternative route”
ha modelado una probabilidad de error12 a la hora de buscar la ruta alternativa, error que representa problemas de comunicación y evita que la ruta
se establezca aunque exista en términos de alcanzabilidad. Al dispararse el
primer caso de la actividad «InstAct_Invalidated» la puerta de salida «Error»
incrementa en una unidad el marcado del lugar «RREQ_retrieves». Mientras
el marcado de este lugar no alcance el umbral, 2 según los parámetros por
defecto del protocolo AODV, pasado el tiempo de espera correspondiente se
realizará de nuevo una solicitud de ruta, ver 5.5.6.
Si por lo contrario se dispara el segundo caso de la actividad «InstAct_Invalidated» se inicia en la puerta de salida «Recalculate_route» la búsqueda
de una ruta alternativa. Los cálculos se realizan conociendo la distancia entre
nodos representada por el marcado de los lugares «AB», «AC», «AD», etc.
12 El
158
valor de la tasa de error es el mismo en los dos modelos atómicos.
i
i
i
i
Capítulo 5. Modelos formales
De forma similar a como se ha modelado en ”Search_AC” si existe una posible ruta se coloca una marca en el correspondiente lugar auxiliar «aux_Route_Direct» para la ruta directa o cualquiera de los lugares «aux_Route_Indirect_Xh» siendo X igual al número de saltos cuando la ruta es indirecta. Cada
uno de estos lugares habilitará su actividad correspondiente, actividad en la
que los casos se dispararán según las probabilidades aplicadas en función
del número de saltos (determinados por la propia actividad) y al número de
reintentos que se hayan llevado a cabo durante la búsqueda de esta ruta alternativa. Este mecanismo es el mismo que el programado en ”Search_AC”
para evitar que la ruta siempre se encuentre en el primer intento de búsqueda
consiguiendo que el comportamiento sea más realista. Si probabilísticamente
la ruta encontrada debería hacerlo en el siguiente intervalo de búsqueda y
no en el actual, en la puerta «OG_Direct2» u «OG_Ind_Xh2» correspondiente
se incrementará el número de reintentos llevados a cabo siempre y cuando
no se haya superado el umbral establecido, 2 según el protocolo. Cuando se
encuentra ruta y se dispara el primer caso de cualquiera de las actividades
(«Inst_Act_Route_Direct» o «Inst_Act_Route_Ind_Xh»), se coloca una marca
en el lugar «Route_direct» o «Route_indirect» según corresponda, se inicializa el valor de reintentos «RREQ_retrieves» y en el caso de ser indirecta se
dispara la actividad «Inst_Act1» y con la puerta de salida «Alternative_route»
se almacena el orden exacto de los nodos en la ruta utilizando el marcado del
lugar extendido «Route_ind».
5.5.6.
Modelo atómico ”Delay recovery”
En este modelo se ha implementado el tiempo que debe transcurrir tras
cada intento de búsqueda, ver Fig. 5.20. Según el protocolo AODV si al enviar un paquete RREQ no se ha obtenido respuesta al cabo de NET_TRAVERSAL_TIME milisegundos, el nodo debe intentar obtener ruta realizando
de nuevo un envío broadcast del paquete RREQ. Este proceso debe repetirse
hasta un máximo de RREQ_RETRIES veces con el máximo TTL permitido.
Cuando se calcula el tiempo que debe esperar el nodo fuente a recibir un
159
i
i
i
i
Capítulo 5. Modelos formales
Figura 5.20: Modelo atómico ”Delay recovery”
RREP después de enviar un RREQ se debe utilizar un tiempo de espera
exponencial binario. Es decir, tras el primer intento el protocolo espera un
tiempo igual a NET_TRAVERSAL_TIME milisegundos, el tiempo de espera
tras el segundo RREQ es de 2 x NET_TRAVERSAL_TIME milisegundos, así
hasta RREQ_RETRIES adicionales después del primer RREQ.
Por tanto, cuando en el modelo atómico ”Alternative route”, ver sección 5.5.5, la ruta alternativa no ha podido ser encontrada y se incrementa el
número de intentos realizados, se habilita la actividad «Waiting_for_route»
de este modelo para que se dispare al cabo del tiempo programado. Así
la puerta de salida «Looking_for_rotue» se encarga de añadir una marca al
lugar «Invalidated» para que de nuevo se active el funcionamiento de la actividad «InstAct_Invalidated» del modelo atómico ”Alternative route”.
5.5.7.
Modelo atómico ”Time”
Este modelo se utiliza para contabilizar el tiempo medio que la ruta permanece activa y determinar el tiempo de servicio, ver Fig. 5.21. Cada vez que
se encuentra una ruta, ya sea cuando el usuario solicita un servicio (modelo
”Search_AC”) o cuando la ruta que se ha encontrado es una alternativa a una
perdida mientras el servicio estaba en marcha (modelo ”Alternative_route”),
se deposita una marca en el lugar «Route_Direct» o «Route_Indirect» de estos modelos atómicos. Estos lugares son comunes al modelo atómico que
se está evaluando, si su marcado es distinto de 0 se dispara la actividad
160
i
i
i
i
Capítulo 5. Modelos formales
«t_Direct» o «t_Indirect», disparos que se contabilizan para conocer el número de rutas directas e indirectas encontradas durante el tiempo de simulación
del experimento. Simultáneamente, cuando se encuentra ruta se añaden tantas marcas en los lugares «timer_Direct» o «timer_Indirect» como el tiempo
de simulación utilizado, lo que habilita la actividad «Timer_Direct» o «Timer_Indirect» según corresponda, con cada disparo de la actividad se decrementa en una unidad el marcado del lugar correspondiente «timer_Direct» o
«timer_Indirect». Mientras existan marcas en los lugares de timer se dispara
la actividad pertinente lo que posteriormente se utilizará para saber el tiempo
total que la ruta ha permanecido activa durante el experimento. Conociendo
este tiempo total y el número de rutas encontradas (directas e indirectas) se
obtiene el tiempo medio de ruta durante el cual la ruta ha estado activa.
Si se está contabilizando el tiempo que la ruta está activa y se produce
una ruptura pueden suceder dos cosas, si existe una marca en el primer elemento del lugar extendido «Lost_route» se habilita el disparo de la actividad
«Route_Direct_lost»; si la marca está en el segundo elemento del lugar extendido es porque la ruta perdida era indirecta y por tanto se habilita el disparo
de la actividad «Route_Indirect_lost». Los disparos de estas actividades se
contabilizan para conocer el número de rutas perdidas directas e indirectas.
También se ha programado en este modelo el tiempo que el servicio permanece activo. Cuando se ha encontrado una ruta en el modelo ”Search_AC”,
ver sección 5.5.1, se activa el servicio colocando una marca en el lugar «Activate_service» que comparten ambos modelos atómicos y empieza a contabilizarse el tiempo de servicio. Es durante ese tiempo cuando se estudia el
comportamiento del protocolo porque es cuando un usuario quiere visualizar
la información de media o alerta. El servicio finaliza a petición del usuario
cuando se dispara la actividad «Time_service», este tiempo ha sido tipificado
según el tipo de servicio que se esté visualizando. Al finalizar el servicio en la
puerta de salida «End_service» se inicializa el marcado de todos los lugares
y deja de contabilizarse el tiempo que la ruta está activa13 .
13 Aunque
la ruta permanezca activa cuando el usuario deja de visualizar la información, en el
161
i
i
i
i
Capítulo 5. Modelos formales
Figura 5.21: Modelo atómico ”Time”
5.5.8.
Modelo compuesto
El modelo compuesto está formado por los modelos atómicos relacionados entre sí gracias a los lugares comunes que comparten. Esta forma de
compartir los estados se denomina equivalence sharing (intercambio de equivalencia), dado que todos los modelos tienen la misma relación con las variables
de estado compartidas.
En la tabla 5.12 se muestra un resumen de los lugares comunes (shared
state variables) y los modelos atómicos en los que aparecen (submodel state
modelo se deja de contar ese tiempo de mantenimiento de ruta porque lo que interesa es saber
el tiempo que la ruta se mantiene mientras el servicio está en marcha.
162
i
i
i
i
Capítulo 5. Modelos formales
variable name) además de una breve descripción.
Nótese que se han obviado algunos lugares como BC, BD, BE, BF, CD,
CE, CF, DE, DF por tener la misma utilidad que AC, AB... Del mismo modo no se han añadido los lugares If_B_in_route, If_C_in_route, If_D_in_route,
If_E_in_route ni If_F_in_route con una función similar al lugar If_A_in_route.
Por último únicamente se han añadido los lugares que representan las coordenadas X e Y del nodo A y se debe tener en cuenta que actúan del mismo
modo los lugares que representan las coordenadas de posición del resto de
los nodos móviles.
Tabla 5.12: State variables
Shared state variable
Interpretation
Submodel state variable name
Alternative_route->AB
AB
Distancia entre el nodo A y B
If_route_change->AB
Position_MT_A->AB
Position_MT_B->AB
Alternative_route->AC
AC
Distancia entre el nodo A y
If_route_change->AC
C
Position_MT_A->AC
Position_MT_C->AC
Alternative_route->AD
AD
Distancia entre el nodo A y
If_route_change->AD
D
Position_MT_A->AD
Position_MT_D->AD
Alternative_route->AE
AE
Distancia entre el nodo A y E
If_route_change->AE
Position_MT_A->AE
Position_MT_E->AE
Alternative_route->AF
AF
Distancia entre el nodo A y F
If_route_change->AF
Position_MT_A->AF
Continuación . . .
163
i
i
i
i
Capítulo 5. Modelos formales
Tabla 5.12: State variables (continuación)
Shared state variable
Interpretation
Submodel state variable name
Position_MT_F->AF
Alternative_route->Route_Direct
If_route_change->Route_Direct
Route_Direct
La ruta activa es directa
Position_MT_A->Route_Direct
Position_MT_C->Route_Direct
Search_AC->Route_Direct
Time->Route_Direct
Alternative_route->Route_Indirect
If_route_change->Route_Indirect
Position_MT_A->Route_Indirect
Route_Indirect
La ruta activa es indirecta
Position_MT_C->Route_Indirect
Search_AC->Route_Indirect
Time->Route_Indirect
Alternative_route->Route_ind
If_route_change->Route_ind
Route_ind
Array que representa la
posición exacta de cada
nodo en la ruta activa
Position_MT_B->Route_ind
Position_MT_D->Route_ind
Position_MT_E->Route_ind
Position_MT_F->Route_ind
Search_AC->Route_Indirect
Time->Route_Indirect
Activate_service
Servicio activado
Search_AC->Activate_service
Time->Activate_service
If_route_change->Allowed_Hello_Loss
Allowed_Hello_Loss
Hello_interval
Activación para la
invalidación de la ruta
Time->Allowed_Hello_Loss
Activación para la
If_route_change->Hello_interval
invalidación de la ruta
Route_invalidation->Hello_interval
Continuación . . .
164
Route_invalidation->Allowed_Hello_Loss
i
i
i
i
Capítulo 5. Modelos formales
Tabla 5.12: State variables (continuación)
Shared state variable
Interpretation
Submodel state variable name
Time->Hello_interval
If_route_change->If_A_in_route
If_A_in_route
El nodo que se ha movido
Position_MT_A->If_A_in_route
pertenece a la ruta
Alternative_route->Invalidated
Invalidated
Ruta invalidada
Delay_recovery->Invalidated
Route_invalidation->Invalidated
Time->Invalidated
Lost_route
Se ha perdido la ruta
If_route_change->Lost_route
Time->Lost_route
Alternative_route->RREQ_retrieves
RREQ_retrieves
N. de reintentos
Delay_recovery->RREQ_retrieves
Time->RREQ_retrieves
Service_finished
Servicio finalizado
Search_AC->Service_finished
Time->Service_finished
Position_MT_A->X_MT_A
Position_MT_B->X_MT_A
Position_MT_C->X_MT_A
X_MT_A
Coordenada X de la posición
del nodo A
Position_MT_D->X_MT_A
Position_MT_E->X_MT_A
Position_MT_F->X_MT_A
Search_AC->X_MT_A
Position_MT_A->Y_MT_A
Position_MT_B->Y_MT_A
Position_MT_C->Y_MT_A
Y_MT_A
Coordenada Y de la posición
del nodo A
Position_MT_D->Y_MT_A
Position_MT_E->Y_MT_A
Continuación . . .
165
i
i
i
i
Capítulo 5. Modelos formales
Tabla 5.12: State variables (continuación)
Shared state variable
Interpretation
Submodel state variable name
Position_MT_F->Y_MT_A
Search_AC->Y_MT_A
5.6. Conclusiones
Autores como Murata, ver [XMT02], y otros, ver [ZZ03], han destacado
la complejidad de modelar con redes de Petri una MANET completa debido
al constante cambio de topología, pero esto es posible, eso sí realizando algunas simplificaciones que permitan centrar la atención en el modelado de
lo que realmente interesa estudiar. Gracias a la modularidad que permite la
herramienta de modelado utilizada se ha podido simplificar inicialmente el
problema a evaluar para ir completando el modelo a medida que lo diseñado
anteriormente había sido validado.
En este capítulo se ha seguido la evolución de los modelos formales diseñados en la tesis desde los más sencillos hasta llegar al modelo compuesto
más complejo con el que estudiar el comportamiento ante la movilidad de
sus nodos de una red ad hoc completa regida por un protocolo de encaminamiento reactivo y ubicada en un entorno industrial, con unas características
concretas de espacio, número de nodos, velocidad de movimiento, tiempo de
conexión e información a intercambiar.
Las medidas y resultados que se pueden obtener gracias a estos modelos se muestran en el capítulo 6, así como una evaluación de los resultados
para determinar los servicios que pueden ser ofrecidos y con qué restricciones. Los resultados de los modelos iniciales, más sencillos, han sido obtenidos mediante resolución analítica, pero el espacio de estados de los modelos
complejos era muy grande por lo que los resultados de estos modelos se han
obtenido mediante simulación.
166
i
i
i
i
Capı́tulo
6
Resultados de los modelos
formales y evaluación
Siguiendo el mismo esquema que se ha utilizado en el capítulo anterior,
los resultados obtenidos con los modelos desarrollados se presentan en
tres bloques.
En este capítulo se muestra la evolución de los resultados y se evalúan
en cada caso los parámetros más representativos que permiten finalmente
determinar si los servicios de media y alerta solicitados en instalaciones
de supervisión pueden ser ofrecidos de forma adecuada a los usuarios
cuando se hace uso de una red ad hoc para la transmisión de la información desde fuente a destino.
167
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
Resultados modelos que
determinan el
ESTABLECIMIENTO de laruta
Unidimensionales
Bidimensionales
Comunicaciones
DIRECTAS INDIRECTAS
INALCANZABLES
Resultados modelos que
determinan el
ESTABLECIMIENTO y
MANTENIMIENTOde laruta
Bidimensionales
Resultados modelos quedeterminan
el ESTABLECIMIENTO,
MANTENIMIENTOy
RECUPERACIÓN de laruta
Bidimensionales
Comunicaciones
DIRECTAS INDIRECTAS
(nºSALTOS ) e
INALCANZABLES
DIRECTAS INDIRECTAS
(nºSALTOS ) e
INALCANZABLES
Solicitudes comunicación
Solicitudes comunicación
Rutas PERDIDAS y
RECUPERADAS
Rutas PERDIDAS y
RECUPERADAS
TIEMPOMEDIODE
VIDA
TIEMPOMEDIODE
VIDA
Comunicaciones
+nºSALTOS
Solicitudes comunicación
Estimación ahorro de
energía
-Longitud segmento , rango de
transmisión .
-Tamañoárea,rango detransmisión
radio, tasa búsqueda,tasa movimiento,
nºnodos yposición inicial nodos.
-Rango detransmisión radio, tasa de
movimiento ytiempo desesión .
Comportamiento temporal
delas rutas
ESTABLECIDAS y
RECUPERADAS
-Rango detransmisión radio, tasa demovimiento,tiempo desesión ,tasa de error yprobabilidades deencontrar ruta
según el intento decomunicación .
Figura 6.1: Esquema de las medidas realizadas en las tres etapas de modelado. Parámetros utilizados en cada etapa
6.1. Metodología de medidas
La complejidad de los modelos diseñados lleva asociada una dificultad
a la hora de seleccionar los parámetros que permitan obtener los resultados
más representativos para estudiar el sistema modelado, así como una dificultad añadida a la hora de la interpretación de los mismos.
En la Fig. 6.1 se presenta un esquema de las tres etapas de modelado
expuestas en el capítulo 5. En cada etapa se hace una reseña a las medidas
realizadas, diferenciando dentro de una misma etapa (con otro color) aquellas
medidas que son distintas respecto a las realizadas con modelos anteriores o
en la etapa anterior.
En todos los modelos aquí representados, para realizar las medidas se
168
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
han utilizado variables de recompensa. Estas variables pueden ser de dos
tipos: por tasa, se recibe la recompensa por alcanzar el sistema un estado
en particular; por impulso, se recibe la recompensa cuando se dispara una
actividad determinada. A continuación se enumeran los valores que se han
obtenido gracias a las variables de recompensa utilizadas.
En la primera etapa se ha modelado una red ad hoc en un plano unidimensional y bidimensional, estas medidas se muestran en la sección 6.2 del
capítulo actual. En primer lugar se han realizado medidas para obtener el
número de rutas directas o single-hop, indirectas o multi-hop, el número de
rutas inalcanzables y el número de solicitudes de comunicación realizadas.
En los modelos bidimensionales de esta misma etapa, se han realizado las
mismas medidas, pero además se ha obtenido el número de saltos en las rutas multi-hop y se ha realizado un estudio sobre la estimación del ahorro de
energía gracias al uso de las rutas multi-hop frente al uso se las single-hop.
Véase como las medidas ampliadas en el modelo bidimensional respecto a
las del modelo unidimensional se presentan en un tono de color distinto en
el esquema de la Fig. 6.1.
En la segunda etapa, se ha trabajado únicamente con modelos en el plano
bidimensional. Se han realizado las medidas realizadas en la etapa anterior, a
excepción del estudio sobre el ahorro de energía, y se ha añadido la obtención
de medidas que permiten contabilizar el número de rutas perdidas y de rutas
recuperadas tras la pérdida, así como el tiempo medio de vida de la ruta.
Estos resultados se representan y evalúan en la sección 6.3.
En la tercera y última etapa de modelado, cuyos resultados se muestran
en la sección 6.4, se han estudiado los mismos parámetros añadiendo además
el comportamiento temporal del protocolo a la hora de establecer la ruta
y recuperarla. Es decir, se ha evaluado cuánto tiempo tarda la ruta en ser
encontrada y en ser recuperada.
Cuando se dice que se han realizado las mismas medidas que en el modelo
o etapa anterior, es evidente que no se han obtenido exactamente los mismos
resultados, sino que se han medido los mismos parámetros pero debido a
169
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
los cambios que sufren los modelos, los valores varían ya que el modelado
representa de forma más precisa una red ad hoc en el entorno de trabajo de
tipo industrial. Aunque varíen levemente los resultados, lo que no varía es la
tendencia y comportamiento de los mismos como se verá en la evaluación de
los resultados en este capítulo.
Lo que diferencia las medidas y resultados evaluados y representados
para cada una de las etapas, no es solo la ampliación y modificación del
modelo, sino los parámetros con los que se evalúan (lo que se denomina
variables). Para la resolución de los modelos se han creado en cada caso
distintos estudios, cada uno formado por diferentes experimentos según la
combinación de los valores asignados a las variables. Por ello, en el esquema
también se representan las variables más importantes utilizadas en cada una
de las etapas.
En los modelos más simples, se ha variado el valor de la longitud del
segmento y del rango de transmisión radio. En la ampliación de los mismos,
pero ya en el plano bidimensional se han incorporado nuevos parámetros:
se han evaluado los resultados para distintos valores del tamaño del área de
trabajo, el rango de transmisión radio, la tasa de búsqueda de ruta, la tasa de
movimiento de los nodos, se ha trabajado con distinto número de nodos y
esto se ha combinado a su vez con una posición inicial de los nodos diferente.
En la segunda etapa, cuadro verde del esquema, se ha variado el valor del
rango de transmisión radio, de la tasa de movimiento y del tiempo de sesión,
parámetro incorporado que no se utilizaba en la etapa anterior. Aunque se
han utilizado también parámetros que representan el tamaño del área y la
tasa de búsqueda de rutas, estos parámetros permanecen fijos en este modelo,
y por eso no se han añadido al esquema, ya que gracias a los resultados
de la etapa anterior se han seleccionado los valores más representativos del
escenario a evaluar para variar solo los valores de aquellos que se consideran
importantes para la obtención de los resultados finales.
En la última etapa los parámetros con los que se trabaja para estudiar los
resultados variando sus valores son los mismos que en la etapa anterior, pero
170
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
además se han incorporado otros como la tasa de error que se aplica a la
hora de encontrar o recuperar ruta y las probabilidades con las que se trabaja
para determinar si la ruta se encuentra en el intento de búsqueda actual o
en el siguiente, parámetro que permite que no se encuentren todas las rutas
en el primer intento y que el comportamiento se acerque al real según los
resultados obtenidos gracias a los testbeds realizados por otros autores.
6.2. Resultados de los modelos que determinan el
establecimiento de la ruta
A continuación se presentan los resultados de los modelos presentados
en la sección 5.3. En primer lugar se exponen los resultados obtenidos tras la
resolución de los tres modelos unidimensionales, ver sección 5.3.1, haciendo
hincapié en aquellas medidas cuyos valores seguirán la misma tendencia en
el resto de modelos presentados en la tesis. En segundo lugar se realiza una
evaluación más extensa, por ser un modelo mejorado, de los resultados del
primer modelo bidimensional presentado en la sección 5.3.2.
6.2.1.
Modelos unidimensionales
Resultados red de tres nodos donde el nodo ”A” intenta comunicar con el
nodo ”C”
La resolución se ha realizado analíticamente. Los estudios tienen como
base la combinación de la tasa de desplazamiento (λm ) y la tasa de búsqueda (λc ), además de distintas combinaciones según la colocación inicial de los
nodos dentro del segmento de pruebas. La recompensa por tasa se utiliza
para obtener el número de comunicaciones directas, indirectas e inalcanzables, y la recompensa por impulso para obtener el número de veces que se
ha disparado la solicitud de comunicación entre el nodo ”A” y el nodo ”C”.
171
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
Inicialmente el segmento de trabajo tenía 14 divisiones. Se han realizado
cambios en el modelo para que la longitud no fuese fija, creando una variable
global ”long_max”, a la que se le han asignado valores dentro del intervalo
[14-20]. También se ha modificado el valor del rango de transmisión radio de
cada nodo, [2-6]1 . El caso peor es el estudio donde el rango de transmisión
radio toma el valor 2, y la longitud máxima del segmento es 20, y el caso
mejor corresponde al rango de transmisión radio de valor 6, y a la longitud
máxima de 14.
Los resultados de comunicaciones directas (single-hop), indirectas (multihop) e inalcanzables han sido los mismos independientemente de la posición
inicial de los nodos. Por otro lado, para una misma posición inicial de los
nodos, al ir aumentando la longitud del segmento, cada vez son menos las
comunicaciones directas entre origen y destino, aumentando las comunicaciones fallidas.
Destacar el comportamiento de las comunicaciones multi-hop, cuando la
longitud máxima del segmento es 14, a partir del valor de rango de transmisión radio igual a 5 se aprecia un cambio de pendiente. Este cambio no se
observa en las comunicaciones directas ni en las inalcanzables. Por ello, se ha
decidido resolver un nuevo experimento aumentando el valor de la zona de
cobertura de cada nodo, [2-10], estos resultados se muestran en la Fig. 6.2.
En la gráfica se aprecia como cuando el rango de transmisión radio supera
el valor 6 y el segmento está formado por 14 divisiones, el número de comunicaciones indirectas empieza a disminuir. Ese punto donde la pendiente
es descendente varía según la longitud del segmento. Cuando el rango de
transmisión de los nodos es bastante amplio, estos pueden comunicar directamente, por ello disminuyen las comunicaciones a través de un tercer nodo.
Destacar que este comportamiento, el punto de inflexión que aparece en las
comunicaciones indirectas, se observará también en los resultados del resto
de modelos que se han diseñado en esta tesis.
1 Nótese
que se está trabajando en un segmento, el rango de transmisión viene definido por
el número de divisiones del segmento que el nodo puede abarcar. Posteriormente será necesario
determinar qué distancia real (m) corresponde a cada división.
172
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
cobertura vs long_max vs NumComIndirectas
0.09
long_max = 1.400000e+01
long_max = 1.600000e+01
long_max = 1.800000e+01
long_max = 2.000000e+01
0.08
NumComIndirectas
0.07
0.06
0.05
0.04
0.03
0.02
0.01
2
3
4
5
6
7
8
9
10
cobertura
Figura 6.2: Punto de inflexión en las comunicaciones multi-hop en el modelo de 3 nodos móviles. Variación del tamaño del segmento de trabajo y
rango de transmisión radio.
Resultados red con tres nodos, donde cualquiera de ellos intenta comunicar
con alguno de los otros dos
La definición de las variables de recompensa para el cálculo de las comunicaciones directas, indirectas e inalcanzables es muy similar a la realizada en
el modelo anterior. En general, el número de comunicaciones inalcanzables
supera a las directas y las comunicaciones indirectas son muy bajas. Se han
resuelto distintos estudios y experimentos y los valores no son iguales que
los obtenidos en el modelo anterior, pero la diferencia es muy pequeña. Por
tanto se puede considerar que el comportamiento del modelo donde un solo
nodo quiere comunicar con alguno de los otros dos es muy similar al comportamiento del modelo donde indistintamente cualquiera de los tres nodos
solicita la búsqueda de ruta.
173
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
Resultados red con cuatro (cinco y seis) nodos donde el nodo ”A” intenta
comunicar con el nodo ”C”
Se han comparado los resultados del modelo donde la red está formada por 4 nodos con los resultados de la red formada por 3 nodos. Hay un
incremento importante de las comunicaciones indirectas, aunque siguen sin
superar a las comunicaciones directas y a las comunicaciones fallidas. Los
resultados se han obtenido analíticamente y para una misma tasa de desplazamiento y tasa de búsqueda aunque los nodos inicialmente se coloquen
en posiciones distintas los resultados son similares. Por tanto, se puede afirmar de nuevo que las posiciones iniciales de los nodos no influyen en los
resultados.
En los modelos de 5 y 6 nodos los resultados se han obtenido variando
el rango de transmisión radio de los nodos con valores comprendidos en el
rango [2, 12] y la longitud máxima del segmento con valores dentro del rango
[20, 70]. Además se ha variado la tasa de búsqueda y tasa de desplazamiento.
No se ha modificado la posición inicial de los nodos, porque ha quedado
demostrado que estas no influyen en los resultados.
Tras la resolución de los experimentos se observa cómo aumenta el porcentaje de comunicaciones directas a medida que aumenta el rango de transmisión radio. Para las comunicaciones indirectas se observa un punto de
inflexión que ya aparecía en los modelos con 3 y 4 nodos, existe por tanto
un valor de rango de transmisión radio en el cual el número de comunicaciones indirectas disminuye a cambio de un aumento en las comunicaciones
directas. Además, cada vez que se añade un nodo más a la red se ha observado un aumento del porcentaje de comunicaciones que utilizan algún nodo
intermedio (multi-hop). En cuanto a las comunicaciones inalcanzables, disminuyen cuanto mayor es el rango de transmisión radio de los nodos de la
red y disminuyen también al aumentar el número de nodos de la red, cuanto
mayor es el número de nodos menor es la posibilidad de que el nodo origen
no pueda alcanzar al nodo destino.
174
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
6.2.2.
Modelos bidimensionales
Los experimentos evaluados en esta sección han sido resueltos por simulación. Tal y como se ha explicado en la sección 3.3.6, los métodos analíticos
se pueden aplicar si todas las actividades son exponenciales o existe al menos
una actividad determinista habilitada en cada momento, el modelo tiene un
espacio finito de estados posibles y no se han definido medidas de actividad.
En el caso de los modelos que se presentan en esta sección y siguientes no
todas las actividades son exponenciales, existen actividades deterministas,
aunque en ningún caso hay dos habilitadas simultáneamente. Suponiendo
que el modelo tiene un espacio finito de estados posibles y teniendo en cuenta
que no se han definido medidas de actividad, se cumplen los tres requisitos
para evaluar un modelo de forma analítica.
Aún así, al seleccionar la generación del espacio reducido de estados, la
herramienta indicaba problemas con las actividades instantáneas. No existe
límite en el número de actividades instantáneas a utilizar, pero según los
desarrolladores a los que se consultó, si existe un límite en el número de esas
transiciones que pueden ser disparadas antes de que se alcance un estado
estable.
Al no poder utilizar la generación del espacio reducido de estados, se
evaluó la posibilidad de generar el espacio simbólico de estados (symbolic
SSG), módulo añadido a partir de la versión 1.6.0 de la herramienta Möbius.
En este caso, también hay una serie de requisitos a cumplir, y en los modelos
diseñados no se cumple uno de ellos, concretamente no pueden definirse
medidas de recompensa por impulso y en este modelo y posteriores si que
se han utilizado este tipo de medidas.
Por todo esto, el análisis numérico no ha sido posible debido al elevado
tamaño del espacio de estados y se han resuelto los modelos por simulación.
175
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
Resultados red de tres (cuatro, cinco y seis) nodos donde el nodo ”A” intenta comunicar con el nodo ”C” en el plano bidimensional. Zona de trabajo
formada por celdas hexagonales
Con los modelos bidimensionales presentados en la sección 5.3.2 se ha estudiado la alcanzabilidad de los nodos al realizar un intento de comunicación
(comunicaciones single-hop, multi-hop y comunicaciones fallidas), los resultados se pueden ver afectados por las búsquedas de ruta y el movimiento de
los nodos. Aprovechando que estos son los primeros modelos que evalúan
con detalle la ruta multi-hop, ya que además de indicar que la comunicación
no es directa entre el origen y el destino también se almacena la ruta exacta
que deben seguir los paquetes de datos y con ello el número de saltos; se ha
realizado un estudio para obtener una estimación del ahorro de energía que
puede suponer el uso de las rutas multi-hop frente a las rutas single-hop.
El comportamiento en general de estos cuatro modelos en el plano bidimensional es el mismo, al igual que en los modelos unidimensionales, por
esto se van a describir los resultados de forma conjunta destacando en el
caso de que sea necesario alguna característica particular según el número
de nodos (3, 4, 5 ó 6), el tamaño del área o el rango de transmisión radio.
Todos estos resultados se han evaluado para un nivel de confianza del 0.95 y
un intervalo de confianza de 0.1, esto es, el valor medio de los resultados no
será satisfactorio hasta que el intervalo de confianza esté dentro del 10 % de
la estimación media el 95 % del tiempo. El tiempo de simulación utilizado ha
sido de 6000 u.t. (unidades de tiempo).
Comunicaciones single-hop. Se ha observado, para cualquier número de
nodos que forma la red, que a mayor rango de transmisión radio el número
de comunicaciones single-hop es mayor, al contrario que las comunicaciones
inalcanzables que siguen la tendencia opuesta tal y como se ha visto anteriormente en los modelos unidimensionales. Siguiendo con las comunicaciones
directas entre origen y destino, el comportamiento es el mismo independientemente del tamaño del área de trabajo, de la tasa de movimiento y de la tasa
176
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
de búsqueda utilizada en los distintos experimentos, las comunicaciones aumentan con el incremento del rango de transmisión radio. Por otra parte si se
comparan las comunicaciones directas para un mismo número de nodos en
la red pero variando el tamaño del área, estas aumentan cuando el tamaño
del área es menor, evidentemente porque los nodos están más cerca y por
tanto más agrupados que si se sitúan en una zona más extensa, ver Fig. 6.3
donde se muestran los resultados para una red de 6 nodos móviles. Además
de ese comportamiento general, los resultados varían según la relación entre
el movimiento de los nodos y las solicitudes de ruta realizadas, concretamente si se observan los resultados de una red con 6 nodos móviles para un
valor de CMR=10 (Call to Mobility Ratio), esto es un ratio de 10 intentos de
comunicación cada movimiento, los valores no varían aunque se modifique
el tamaño del área, Fig. 6.3. Concretamente en este caso, los resultados para
una zona que toma como base un mosaico T4 , T5 y T6 son los mismos. Esto se
debe a que los nodos se mueven muy poco comparado con las veces que el
nodo origen solicita comunicar con el nodo destino, si el nodo destino era alcanzable antes del primer intento de comunicación, también lo será después
porque a penas se ha movido entre un intento y otro, y lo mismo en el caso
contrario, si la comunicación no fuese posible.
Comunicaciones multi-hop.
En términos generales en las comunicaciones
indirectas o multi-hop los resultados muestran un punto de inflexión, desde
ese punto las comunicaciones de este tipo empiezan a disminuir aunque el
rango de transmisión radio aumente, ver Fig. 6.4 donde se han representado como ejemplo los resultados para una red de 6 nodos. Al aumentar el
rango de transmisión radio, a partir de cierto valor es posible la comunicación directa2 entre nodo y destino y ya no se necesita un nodo intermedio
para alcanzarlo. Recordar que el punto de inflexión ya se había observado
en los resultados de los modelos unidimensionales. Antes de llegar al punto
de inflexión para cualquier tamaño del área, las comunicaciones indirectas
como ya se ha comentado incrementan con el aumento del rango de trans2 Las
comunicaciones directas son preferentes frente a las indirectas.
177
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
Tamaño área = 3
Tamaño área = 4
Tamaño área = 5
Tamaño área = 6
1
0.8
0.6
Comunicaciones single−hop
0.4
0.2
2
1
CMR=0.1
3
4
5
6
7
8
0.8
0.6
0.4
0.2
2
1
CMR= 1
3
4
5
6
7
8
0.8
0.6
0.4
0.2
0
2
CMR=10
3
4
5
Rango de transmisión radio
6
7
8
Figura 6.3: Comunicaciones single-hop en el modelo de 6 nodos móviles
cuando se utilizan distintos tamaños del área de trabajo. Variación del rango
de transmisión radio, tasa de movimiento y tasa de búsqueda.
misión, pues el nodo origen necesita de un nodo intermedio para alcanzar
el destino. Se observa en esta misma figura, como antes de ese punto las comunicaciones indirectas son mayores para la zona basada en el mosaico T3 ,
los otros dos tamaños de mosaico tienen menos comunicaciones de este tipo
porque abundan más las comunicaciones inalcanzables. Después del punto
de inflexión, las comunicaciones a través de otro nodo disminuyen significativamente, pues si el rango de transmisión es mucho mayor, los nodos origen y
destino pueden verse sin necesidad de un tercero. También después del punto de inflexión se producen más comunicaciones indirectas en la zona basada
en un mosaico T5 que en un mosaico T3 , para un mismo rango de transmisión radio el área es mucho mayor siendo más difícil que las comunicaciones
indirectas sean sustituidas por las directas.
Siguiendo con las comunicaciones multi-hop, decir que para un mismo
178
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
Tamaño área = 3
Comunicaciones multi−hop
0.35
0.3
0.25
0.2
0.15
0.1
0.05
0
2
0.5
Tamaño área = 4
Tamaño área = 5
Tamaño área = 6
CMR=0.1
3
4
5
6
7
8
CMR=1
0.4
0.3
0.2
0.1
0
2
0.8
3
4
5
6
7
0.6
8
CMR=10
0.4
0.2
0
2
3
4
5
Rango transmisión radio
6
7
8
Figura 6.4: Comunicaciones multi-hop en el modelo de 6 nodos móviles
cuando se utilizan distintos tamaños del área de trabajo. Variación del rango
de transmisión radio, tasa de movimiento y tasa de búsqueda.
número de nodos en la red este punto de inflexión se observa en distintos
valores del rango de transmisión radio según cual sea el tamaño del área. Por
ejemplo, en el caso de una red con 3 nodos, si el área de trabajo está basada
en un mosaico T3 (tres anillos alrededor de la celda central más las celdas de
los extremos, ver sección 4.1.1) el punto de inflexión en las comunicaciones
multi-hop se obtiene con un rango de transmisión radio igual a 4, para el área
basada en un mosaico T4 y T5 el punto de inflexión se presenta para un valor
de rango de transmisión radio igual a 6, ver primera gráfica de la Fig. 6.5.
Si en lugar de variar el tamaño del área con un número fijo de nodos, se
mantiene fija la zona de trabajo y se varía el número de nodos en la red, se
observa que las comunicaciones indirectas aumentan a medida que se añade
un nodo en el escenario. El porcentaje máximo de este tipo de comunicaciones (que coincide con el punto de inflexión) es mayor cuando el número de
179
i
i
i
i
Comunicaciones multi−hop
Capítulo 6. Resultados de los modelos formales y evaluación
0.2
0.15
Área = 3 y 3 nodos
Área = 4 y 3 nodos
Área = 5 y 3 nodos
0.1
0.05
0
0
1
2
3
4
5
6
Rango transmisión radio
7
8
9
10
0.5
Comunicaciones multi−hop
0.45
0.4
0.35
0.3
0.25
0.2
0.15
0.1
0.05
2
2.5
Área = 3 y 4 nodos
Área = 4 y 4 nodos
Área = 5 y 4 nodos
Área = 3 y 5 nodos
Área = 4 y 5 nodos
Área = 5 y 5 nodos
Área = 3 y 6 nodos
Área = 4 y 6 nodos
Área3 = 5 y 6 nodos
3.5
4
4.5
Rango transmisión radio
5
5.5
6
Figura 6.5: Comunicaciones multi-hop donde se utilizan 3, 4, 5 y 6 nodos
móviles. Tasa de movimiento y tasa de búsqueda fijos, variación del tamaño
del área y el rango de transmisión radio
nodos de la red es mayor. Además tal y como se muestra en la Fig. 6.5 cuanto
mayor es el número de nodos, son menores los valores del rango de transmisión radio a los cuales se alcanza el punto de inflexión. Esto es razonable
dado que hay más parejas de nodos que pueden comunicar aunque el rango
de transmisión radio sea inferior; las comunicaciones indirectas aumentan a
expensas de un decremento de las inalcanzables. Debido a esta diferencia en
el punto de inflexión, los resultados para el modelo de tres nodos se muestran
en una gráfica distinta del resto de resultados; mientras el punto de inflexión
para los modelos de 4, 5 y 6 nodos se encuentra para los valores de rango de
transmisión igual a 3 ó 4, el punto de inflexión para el modelo de 3 nodos
no se alcanza hasta que el rango de transmisión radio no toma un valor de
4 ó 6, dependiendo del tamaño del área. Es importante destacar que a priori
no era posible determinar con qué valor de rango de transmisión radio se
obtendría el mayor número de comunicaciones multi-hop para un tamaño de
180
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
área concreto y un número de nodos determinado, y con la herramienta y los
modelos diseñados se ha podido fijar dicho valor.
Si además del comportamiento general de las comunicaciones multi-hop
se centra de nuevo la atención en la relación que representa el CMR, se puede
ver en la Fig. 6.4 como el punto de inflexión se muestra para un valor de
rango de transmisión radio de 3 ó 4 cuando el CMR es 0.1, y con un valor
de rango de transmisión radio de 3 si el CMR tiene un valor de 1 y 10. Esto
se debe a que con un CMR igual a 0.1 los nodos cambian su posición más
veces que intentos de comunicación realiza el nodo origen; por tanto es más
difícil comunicar en este caso que en los casos en los que el CMR es mayor.
Por ello, en las gráficas se observa como para un CMR igual a 0.1 y un rango
de transmisión radio igual a 3 el porcentaje de comunicaciones multi-hop
conseguidas es menor que el conseguido para un CMR igual a 1, y a su vez
este porcentaje es menor que el conseguido cuando el nodo se mueve unas 10
veces menos que el número de veces que el nodo origen intenta comunicar
con el destino, CMR 10.
Con este modelo las comunicaciones multi-hop pueden ser expresadas según el número de saltos que intervienen en la ruta. Los experimentos muestran para cualquier tasa de búsqueda y de movimiento que las comunicaciones que utilizan 2 saltos son mayoritarias, seguidas de aquellas con 3 saltos
y así sucesivamente, siendo las comunicaciones con 5 saltos3 casi despreciables. En la Fig. 6.6 se muestran las comunicaciones multi-hop en una red de
6 nodos según el número de saltos para distintos tamaños del área de trabajo. Se han representado los resultados para un valor de CMR igual a 0.2,
un intento de comunicación cada cinco movimientos y CMR igual a 1.2, seis
intentos de comunicación cada 5 movimientos. Por ello, en la gráfica el número de comunicaciones para un CMR=0.2 es mucho menor que las rutas
multi-hop obtenidas para un CMR=1.2, donde en el mismo tiempo y con la
misma tasa de movimiento de los nodos se han realizado 5 solicitudes de
ruta más. En ambas se observa como a menor tamaño de área, menores son
35
es el número máximo de saltos que puede haber en una red con 6 nodos móviles.
181
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
350
300
CMR = 0.2
250
200
Comunicaciones multi−hop
150
100
50
0
2
3
4
5
6
7
2000
1500
Área=3 Saltos=2
Área=4 Saltos=2
Área=5 Saltos=2
Área=3 Saltos=3
Área=4 Saltos=3
Área=5 8Saltos=3
Área=3 Saltos=4
Área=4 Saltos=4
Área=5 Saltos=4
Área=3 Saltos=5
Área=4 Saltos=5
Área=5 Saltos=5
9
1000
500
0
2
CMR =
1.2
3
4
5
6
Rango transmisión radio
7
8
9
Figura 6.6: Comunicaciones multi-hop según el número de saltos en una
red con 6 nodos móviles. Tasa de movimiento y tasa de búsqueda fijos,
variación del tamaño del área y el rango de transmisión radio
los valores del rango de transmisión a los que se consigue el punto de inflexión para un mismo número de saltos. Cuanto menor es el tamaño del área,
es más fácil con un rango de transmisión menor alcanzar el máximo número
de comunicaciones indirectas. Además, en cuanto al punto de inflexión se
observa que las comunicaciones indirectas aumentan ligeramente cuando el
área aumenta, esto es, cuando el área es mayor el máximo número de comunicaciones indirectas es mayor. Para un mismo número de saltos, cuando el
área es mayor, los vecinos son más necesarios para alcanzar el destino.
Comunicaciones fallidas.
En cuanto a las comunicaciones que no se pue-
den llevar a término, éstas disminuyen al aumentar el rango de transmisión
radio independientemente del tamaño del área utilizado, claro está cuanto
menor sea el área menos comunicaciones fallidas porque los nodos están
182
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
Tamaño área = 3
Tamaño área = 4
Tamaño área = 5
Tamaño área = 6
0.6
0.5
0.4
CMR=0.1
0.3
0.2
Comunicaciones inalcanzables
0.1
0
2
0.2
3
4
5
6
0.15
7
8
CMR=1
0.1
0.05
0
2
0.5
3
4
5
6
0.4
7
8
CMR=10
0.3
0.2
0.1
0
2
3
4
5
Rango transmisión radio
6
7
8
Figura 6.7: Comunicaciones fallidas en el modelo de 6 nodos móviles cuando se utilizan distintos tamaños del área de trabajo. Variación del rango de
transmisión radio, tasa de movimiento y tasa de búsqueda.
más cercanos, ver Fig. 6.7. Por otra parte, para un mismo valor de rango de
transmisión radio y tamaño del área las comunicaciones no posibles son mucho menores para el modelo de 6 nodos que para el modelo de 3 nodos. Al
aumentar el número de nodos se han favorecido las rutas multi-hop y han
disminuido las comunicaciones no posibles, ver Fig. 6.8.
Estimación del ahorro de energía Aprovechando que este modelo bidimensional es capaz de obtener los nodos que intervienen en una comunicación
multi-hop y teniendo en cuenta que las comunicaciones indirectas suponen
un ahorro de energía frente al uso de las comunicaciones directas como se
va a demostrar a continuación, es lógico buscar el rango de transmisión radio y el número de nodos que ofrezcan los mejores resultados. Actualmente
son muchos los autores que trabajan en el estudio del ahorro de energía
183
i
i
i
i
Comunicaciones inalcanzables
Capítulo 6. Resultados de los modelos formales y evaluación
1
Área = 3 y 3 nodos
Área = 4 y 3 nodos
Área = 5 y 3 nodos
0.8
0.6
0.4
0.2
0
0
1
2
3
4
5
6
Rango transmisión radio
7
8
9
10
Comunicaciones inalcanzables
0.35
Área = 3 y 4 nodos
Área = 4 y 4 nodos
Área = 5 y 4 nodos
Área = 3 y 5 nodos
Área = 4 y 5 nodos
Área = 5 y 5 nodos
Área = 3 y 6 nodos
Área = 4 y 6 nodos
Área = 5 y 6 nodos
0.3
0.25
0.2
0.15
0.1
0.05
0
2
2.5
3
3.5
4
4.5
Rango transmisión radio
5
5.5
6
Figura 6.8: Comunicaciones fallidas donde se utilizan 3, 4, 5 y 6 nodos móviles. Tasa de movimiento y tasa de búsqueda fijos, variación del tamaño
del área y el rango de transmisión radio
en las redes ad hoc, claramente es un área importante en este tipo de redes. En [BM03] se muestra una técnica de encaminamiento que encuentra
los caminos óptimos para un menor uso de potencia en las comunicaciones
multisalto. Muchos trabajos se han basado en la búsqueda de la potencia
de transmisión óptima, y otros se han centrado en la búsqueda del rango de
transmisión o el alcance radio óptimo, según [GBH05] la mitad de la potencia
puede ser ahorrada si el alcance radio se ajusta apropiadamente. Otro modo
útil de conseguir un ahorro de energía es la introducción de un nodo fijo en
la red, lo cual puede ser posible en el caso de los sistemas de tratamiento
de aguas cuyas características se están utilizando en los modelos presentados
en esta tesis. Este nodo facilitaría las retransmisiones, lo que significa que se
necesitaría menos potencia. Además la extensión del rango de transmisión
proporcionado por un nodo fijo es un gran beneficio [MSM01]. A pesar de
los beneficios de las comunicaciones multisalto, en [LWS06] los autores ad-
184
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
1
d
d
2
3
Figura 6.9: Red ad hoc con tres nodos, donde la comunicación puede ser
single-hop del nodo 1 al 3 o multi-hop transmitiendo los datos del nodo 1
al 2 para realizar este la transmisión hacia el 3.
vierten de la necesidad de una buena planificación en cuanto al número de
nodos, para que éste no sea muy elevado, ya que se introducirían más saltos
y por tanto más retardos en la transmisión. A continuación no se pretende
hacer un estudio exhaustivo del ahorro energético que pueden suponer las
comunicaciones multisalto, pero sí que se va a realizar una aproximación teniendo en cuenta que el modelo ofrece la posibilidad de conocer el número
de nodos que intervienen en las rutas multi-hop obtenidas. Para ello se va a
realizar un breve estudio de la potencia utilizada.
Se asume que la potencia recibida es inversamente proporcional a la distancia transmitida elevada a un factor de pérdidas, esto es, considerando que
cada nodo envía información con una potencia Pt y que el nodo receptor obtiene la información con un nivel de potencia Pr , asumiendo el uso de antenas
direccionales y que los receptores de los nodos son homogéneos, estas dos
potencias mantienen la siguiente relación, ver [BM03]:
Pr = k ·
Pt
dα
(6.1)
donde k es la constante de proporcionalidad y toma el valor k = 1 asumiendo
que las interferencias de los vecinos son prácticamente despreciables. Normalmente el coeficiente de pérdida de ruta α es 2 para distancias cortas (100
m) y 4 para enlaces mayores en la banda de transmisión de los 2.4 GHz que
es el caso bajo exposición en este estudio.
Para el estudio se van a relacionar estas dos potencias con el número de
185
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
saltos que intervienen en la ruta, ver Fig. 6.9. Siendo la potencia de transmisión y recepción para un único salto4 (sh, single-hop) Pt_sh y Pr_sh respectivamente, Pt_mh y Pr_mh las potencias de cada nodo5 que participa en una
comunicación multisalto (mh, multi-hop), d la distancia entre nodos y dtotal la
distancia total6 al destino, se obtendrían teniendo en cuenta la ecuación 6.1
las siguientes relaciones:
Pr_sh =
Pt_sh
P
= αt_shα
α
dtotal
n ·d
(6.2)
Pr_mh =
P
Pt_mh
= t_mh
dαtotal
dα
(6.3)
siendo n el número de saltos. Para que hasta el nodo destino llegue el mismo
nivel de señal en la comunicación single-hop y en la comunicación multi-hop
se debe conocer la potencia de transmisión necesaria en cada caso, se deben
igualar las ecuaciones 6.2 y 6.3 obteniéndose:
Pr_sh = Pr_mh −→
P
Pt_sh
= t_mh
−→ Pt_sh = nα · Pt_mh
nα · dα
dα
(6.4)
En el caso de los enlaces single-hop, se deberá transmitir con una potencia
proporcional al número de saltos elevado a la cuarta potencia, considerando
que α toma el valor 4, si se quiere obtener el mismo nivel de potencia recibida
en el nodo destino que si el enlace fuese multi-hop. Por tanto, considerando
que se tienen 6 nodos en la red se puede calcular el ahorro de energía obtenido según el número de saltos. Para esto, se debe tener en cuenta además
que si se utiliza una comunicación multi-hop cada uno de los nodos fuente
(excepto el receptor) está transmitiendo con un nivel de potencia, por tanto
se tendrá:
Pt_sh(total ) = nα · Pt_mh
4 En
(6.5)
el caso mostrado en la Fig. 6.9, la potencia Pt_sh es la transmitida por el nodo 1 y Pr_sh es
el nivel de potencia recibido por el nodo 3 en la comunicación single-hop.
5 En este caso, P
t_mh es la potencia de transmisión del nodo 1 y 2, y Pr_mh es la potencia recibida
por el nodo 2 y el nodo 3.
6d
total en el caso del ejemplo sería igual a 2d.
186
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
Pt_mh(total ) = no transmisores · Pt_mh = n · Pt_mh
(6.6)
Relacionando las dos potencias especificadas en las ecuaciones 6.5 y 6.6 se
tiene:
Pt_sh(total )
Pt_mh(total )
=
nα · Pt_mh
= n(α−1) −→ Pt_sh = n(α−1) · Pt_mh(total )
n · Pt_mh
(6.7)
Si se considera α = 4, cuando se tienen rutas con 2 saltos, el uso de energía
utilizando una comunicación multi-hop es 8 veces inferior a la que se utilizaría si se realizara una comunicación con un único salto, cuando el número
de saltos es 3 en lugar de una comunicación directa la energía utilizada es 27
veces inferior y así sucesivamente.
Con este estudio se pretende encontrar el rango de transmisión radio y
el número de nodos que ofrezcan los mejores resultados. Según la Fig. 6.6,
considerando un rango de transmisión radio de 150 m y un área que toma
como base un mosaico T3 , según la fórmula 6.7 teniendo en cuenta que son
esos valores el número total de rutas multi-hop representa el 24.46 % de las
rutas totales, se estima un ahorro de energía del 22.48 % comparándola con
la energía necesaria si la transmisión fuese single-hop.
Se puede pensar que aumentando el rango de transmisión radio el número de comunicaciones satisfactorias también aumentará, y es cierto, con
un valor de 200 m (valor con el que se obtiene el máximo número de comunicaciones indirectas para ese tamaño de área) el origen alcanza al destino
con una probabilidad del 90.78 %. Sin embargo, aún con ese incremento de
la potencia las comunicaciones indirectas que pueden suponer un ahorro de
energía no superan a las directas. Por tanto, para un rango de transmisión de
200 m se obtendrá un ahorro de energía el 26.5 % de las veces, sólo un 2.04 %
más que con un rango de transmisón de 150 m, necesitándose a su vez transmitir con mayor potencia, lo que implica más interferencias. Debido a esto, y
dado que es necesario encontrar un balance entre el ahorro de energía y de
ancho de banda y el número de comunicaciones satisfactorias que se quieren
obtener el rango de transmisión radio a escoger sería de 150 m.
187
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
Ñ
Ò
Ó
Ô
Õ
Ö
+
,
6
7
8
9
:
9
7
;
<
8
=
<
?
@
-
A
.
B
C
/
B
0
@
1
D
.
E
2
A
3
4
F
E
5
G
H
I
J
K
L
K
I
M
N
J
O
N
P
>
×
¯
Î
þ
Ï
°
±
²
³
Ø
Ù
´
Ð
ÿ
'
*
*
*
Ú
µ

¬
Ë
û
ü
Ì
­
ž
Û
Ü
¶
Ÿ
®
Í
ý
µ
Ý
·
›
©
È
ø
ù
É
ª
¡
¸
Þ
ß
¹
¢
œ
«
Ê
ú
›
R
(
à
º
£
¦
Æ
õ
ö
§
¤
»
á
â
¼
¥
¨
Ç
÷
Æ
R
ã
½
À
Ã
ò
ó
Ä
Á
¾
ä
å
¿
Â
Å
ô
!
)
Q
R
æ
é
ì
ï
"
%
#
ð
í
ê
ç
è
ë
î
ñ
$
&
%
Q
Figura 6.10: Zona de trabajo bidimensional con distintas posiciones iniciales
de los nodos. Red con 3 nodos móviles.
Variación de la posición inicial de los nodos Al igual que ya se hizo en
el modelo unidimensional, con este modelo bidimensional se ha variado la
posición inicial de los nodos para comprobar su efecto sobre los resultados.
Para mostrar el comportamiento se van a utilizar los resultados del modelo que representa una red ad hoc con 3 nodos móviles. En la Fig. 6.10, la
posición marcada como «Experimento 1» muestra la posición utilizada hasta ahora en todos los experimentos, a continuación se han representado las
distintas posiciones que se han utilizado para los nodos A, B y C. Para el
nodo A se ha mantenido la coordenada X fija, X=5, y se ha variado la posición de la coordenada Y tomando los valores del intervalo [2, 4]; para B se
mantiene fijo el valor de la coordenada Y=3 y se ha variado la coordenada X,
tomando los valores [0, 1]; C mantiene el valor de la coordenada Y=6 y varía
188
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
X en el intervalo [1, 3]. La combinación de estas posiciones ha generado 108
experimentos, y se han seleccionado algunos de ellos para su resolución.
cobertura vs y_MT_Aini vs NumComDirectas
0.9
cobertura vs x_MT_Cini vs NumComIndirectas
0.11
y_MT_Aini = 2.000000e+00
y_MT_Aini = 3.000000e+00
y_MT_Aini = 4.000000e+00
x_MT_Cini = 1.000000e+00
x_MT_Cini = 2.000000e+00
x_MT_Cini = 3.000000e+00
0.1
0.8
0.09
NumComIndirectas
NumComDirectas
0.7
0.6
0.08
0.07
0.5
0.06
0.4
0.05
0.3
0.04
2
2.5
3
3.5
cobertura
4
4.5
5
2
2.5
3
3.5
cobertura
4
4.5
5
(a) Single-hop. Variando coordenada Y del no- (b) Multi-hop. Variando coordenada X del nodo A
do C
cobertura vs x_MT_Bini vs NumComInalcanzables
0.6
x_MT_Bini = 0.000000e+00
x_MT_Bini = 1.000000e+00
x_MT_Bini = 2.000000e+00
NumComInalcanzables
0.5
0.4
0.3
0.2
0.1
0
2
2.5
3
3.5
cobertura
4
4.5
5
(c) Inalcanzables. Variando coordenada X del
nodo B
Figura 6.11: Porcentaje de comunicaciones single-hop, multi-hop y comunicaciones inalcanzables para distintas posiciones iniciales de los nodos. Red
ad hoc formada por tres nodos móviles.
En la Fig. 6.11 se muestra una representación de los experimentos resueltos, siendo imposible representar todos los resultados. Para las comunicaciones single-hop se muestra la gráfica donde se ha variado la posición inicial
del nodo A, ver Fig. 6.11(a); con la variación de la coordenada X de la celda donde se sitúa el nodo C se muestran las comunicaciones multi-hop, ver
189
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
Tabla 6.1: Posiciones iniciales de los nodos A, B, C, D, E y F.
Exp1
Exp2
Exp3
Exp4
X
Y
X
Y
X
Y
X
Y
A
1
1
1
1
5
1
3
3
B
1
1
2
1
3
2
1
3
C
1
1
6
6
1
5
5
1
D
1
1
1
6
2
1
2
1
E
1
1
6
0
4
4
3
1
F
1
1
3
3
5
3
2
6
Fig. 6.11(b); y finalmente un ejemplo de los resultados de las comunicaciones
fallidas se ha representado variando la posición inicial del nodo B, ver Fig.
6.11(c). En cualquier caso se aprecia como no varía el comportamiento del
modelo cuando se colocan los nodos en una posición inicial diferente en cada experimento. Por tanto, al igual que sucedía en el modelo unidimensional,
la posición inicial de los nodos no afecta a los resultados.
En último lugar se van a mostrar nuevos experimentos realizados para
demostrar que finalizado el tiempo de simulación la posición inicial de los
nodos no influye en el resultado. En la tabla 6.1 se indica la posición inicial de
los nodos. En este caso se van a mostrar los resultados de la red formada por
6 nodos móviles, aunque experimentos similares se han realizado para 4 y 5
nodos. En este caso, en Exp1 todos los nodos se han situado inicialmente en
la misma celda, en Exp2 se han escogido posiciones iniciales de modo que los
nodos estaban inicialmente muy distantes, con Exp3 se han utilizado las posiciones iniciales utilizadas en los experimentos resueltos hasta el momento
(incluyendo los modelos realizados con Ultrasan), posiciones aleatorias que
no están ni muy alejadas ni muy cercanas entre sí, con Exp4 se muestran otras
posiciones iniciales cualquiera.
En la Fig. 6.12 se representan las comunicaciones single-hop para los cuatro experimentos, donde se combinan distintas posiciones iniciales en la red
de 6 nodos móviles.
190
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
CMR = 10
0.85
Comunicaciones single−hop
0.8
0.75
0.7
0.65
0.6
Exp1
Exp2
Exp3
Exp4
0.55
0.5
2
2.5
3
3.5
Rango transmisión radio
4
4.5
5
Figura 6.12: Porcentaje de comunicaciones single-hop para distintas posiciones iniciales en una red ad hoc formada por seis nodos móviles.
6.3. Resultados del modelo que determina el establecimiento y mantenimiento de la ruta
Con el modelo presentado en la sección 5.4 además de analizar al igual
que con los anteriores cómo el destino es alcanzable tras la solicitud de ruta,
se han evaluado en primer lugar las rutas perdidas y recuperadas y en segundo lugar el tiempo medio de vida de ruta, es decir, el tiempo medio que
la ruta se mantiene activa.
La tasa de movilidad (λm ) utilizada para resolver los experimentos representa 10 movimientos cada 6 minutos, por tanto teniendo en cuenta que el
diámetro de las celdas que forman la zona de trabajo tiene un valor de 50
m la velocidad de movimiento de los nodos es equivalente a 1.38 m/s. Esta
velocidad es utilizada en todos los experimentos excepto en los del cálculo
del tiempo medio de ruta donde se ha utilizado un rango de velocidades más
191
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
amplio, [1.38, 5, 6, 7, 8, 9, 10, 15, 20] m/s. Los valores del parámetro λm en
esos casos son: 0.1, 0.12, 0.14, 0.16, 0.18, 0.2, 0.3, y 0.4. Estos valores permiten
observar la evolución del tiempo medio de vida de la ruta con la velocidad y
comparar los resultados con los obtenidos en [IB04].
La tasa de llamadas (λc ) escogida representa un intento de comunicación
cada 180 s (λc =0.005), es decir, el usuario solicita información de la instalación
cada 180 s a lo largo de 6000 s, que es el tiempo de simulación utilizado. Esto
implica que en cada experimento se realiza más de una solicitud de ruta. Es
necesario clarificar un punto relacionado con este parámetro; las solicitudes
de ruta en cada simulación según este parámetro deberían ser aproximadamente 33 (6000/180 = 33), pero el número en realidad es inferior porque en
este modelo se ha implementado un tiempo de sesión, y no puede haber una
nueva solicitud por parte del usuario mientras mantiene abierta la sesión
actual. Destacar también que estudios anteriores que evalúan el comportamiento del AODV con redes de Petri, ver [XMT02, MHW04], solo realizan
una búsqueda de ruta en cada simulación. El tiempo de sesión utilizado ha
sido 20 segundos, 1 y 3 minutos, como se ha descrito en el capítulo 4.
6.3.1.
Rutas establecidas, perdidas y recuperadas
En la Fig. 6.13 se muestra el comportamiento del protocolo AODV ante las
búsquedas, pérdidas y recuperación de ruta. La curva A representa el porcentaje total de rutas encontradas con respecto a las que se han solicitado. Es
evidente que el porcentaje aumenta cuando se incrementa el rango de transmisión radio utilizado. Con 100 m, el porcentaje de rutas posibles es 36.65 %,
sin embargo, con 150 m, el 71.11 % de las rutas solicitadas son posibles, y si
se incrementa el rango de transmisión radio a 200 m el porcentaje alcanza el
91.54 %.
La figura también muestra el porcentaje de rutas directas e indirectas perdidas debido al movimiento de alguno de sus nodos, ver las curvas B y C en
la Fig. 6.13. Las rutas perdidas son inferiores cuando el rango de transmisión
192
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
100
90
80
Rutas encontradas con respecto a las buscadas
Rutas perdidas directas con respecto a las encontradas
Rutas perdidas indirectas con respecto a las encontradas
Rutas recuperadas directas de las perdidas
Rutas recuperadas indirectas de las perdidas
70
A
Rutas (%)
60
E
50
40
C
30
20
B
10
0
100
D
110
120
130
140
150
160
Rango transmisión radio (m)
170
180
190
200
Figura 6.13: Porcentaje de rutas encontradas con respecto a las solicitudes
realizadas( A) , rutas directas( B) o indirectas(C) perdidas con respecto a las
rutas establecidas y rutas recuperadas a través de rutas single-hop( D) o
multi-hop( E) cuando la comunicación se había perdido.
radio es mayor, como era de esperar. Se observa que las rutas multi-hop sufren más pérdidas. Esto es debido a que participan más nodos en este tipo de
comunicación, por tanto la probabilidad de que un nodo se mueva es superior, y la probabilidad de que se produzca una ruptura es mayor que en un
camino formado por dos nodos, fuente y destino.
Finalmente, se muestra el porcentaje de rutas directas e indirectas recuperadas comparadas con el número de rutas perdidas, curvas D y E respectivamente. Es lógico que si el rango de transmisión radio aumenta, las rutas
recuperadas aumenten como se muestra en D y E. Dado que el AODV da
preferencia a las rutas single-hop sobre las multi-hop, la mayoría de las rutas
recuperadas deberían ser directas, pero los resultados indican que la mayoría de rutas recuperadas son rutas multi-hop. Hay dos razones que justifican
193
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
este comportamiento, por una parte la baja probabilidad de perder la ruta
directa a medida que se incrementa el rango de transmisión radio provoca a
su vez que se tengan que recuperar pocas rutas directas; por otra parte si la
ruta directa se pierde y es posible una nueva ruta esta será casi el 100 % de
las veces una ruta indirecta, ya que solo podría ser directa si fuente o destino
se vuelven a mover para ser de nuevo alcanzables.
En la tabla 6.2, con la etiqueta «Rutas perdidas» se muestra la suma de
porcentajes de rutas directas e indirectas perdidas con respecto a las rutas
activas. Los resultados se muestran para los tres rangos de transmisión radio
utilizados. Bajo la etiqueta «Rutas recuperadas» se muestran dos porcentajes;
el primero (*) es la suma de los porcentajes de rutas recuperadas directas e indirectas comparadas con las rutas perdidas; el segundo (**) muestra las rutas
recuperadas comparadas con las encontradas tras una solicitud, es decir las
rutas activas. El segundo porcentaje de «Rutas recuperadas» se ha obtenido
mediante los otros dos porcentajes. El hecho de mostrar el mismo resultado
de dos modos distintos permite evaluarlo desde dos perspectivas diferentes. Las rutas recuperadas con respecto a las perdidas (*) permiten ver como
reacciona el protocolo ante la ruptura de un enlace y la pérdida de una ruta.
Las rutas recuperadas comparadas con las rutas activas (**), permiten entender en qué medida las rutas que se han utilizado para la transmisión de la
información pueden tener problemas debidos a pérdidas momentáneas del
camino.
Según la tabla, con un rango de transmisión radio de 100 m, el 52.68 %
de las rutas activas se rompen en algún momento (suma de rutas directas e
indirectas perdidas, curvas B y C en la Fig. 6.13). Del total de rutas perdidas,
el 36.83 % fueron recuperadas, lo que es equivalente a decir que se ha recuperado el 19.4 % de las rutas activas tras su pérdida. Se puede asegurar que
el 19.4 % de las ocasiones, la información ha sido enviada y algunos paquetes
se han perdido debido a momentáneas pérdidas de ruta, pero ha sido posible
continuar enviando información porque la ruta se ha recuperado dentro del
tiempo establecido por el AODV. Del mismo modo, se puede asegurar que
el 47.32 % (100 % - 52.68 %) de las comunicaciones totales establecidas se han
194
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
Tabla 6.2: Porcentaje de rutas perdidas y recuperadas para distintos rangos
de transmisión radio
Rutas perdidas
Rutas recuperdas
(*) con respecto a las rutas perdidas
(**) con respecto a las rutas activas
Rango de transmisión radio (m)
100
150
200
52.68 %
43.24 %
29.21 %
36.83 %
19.4 %
59.22 %
25.6 %
79.09 %
23.10 %
completado sin problemas. Este es el porcentaje de las rutas que no se han
perdido comparadas con las rutas activas. Para un rango de transmisión de
150 m en el 43.24 % de las rutas activas se ha perdido algún enlace, causando
la pérdida de la ruta. El 59.22 % de las veces, los enlaces perdidos fueron recuperados, lo que es equivalente a recuperar el 24.6 % de las rutas activas que
se han perdido. Cuando el rango de transmisión radio es de 200 m, solo el
29.21 % de las rutas activas se pierden, y de esos caminos perdidos el 79.09 %
han sido recuperados. Esto es lo mismo que decir que en el 23.10 % de las rutas activas hay problemas en algunas ocasiones durante la transmisión, y en
el 6.11 % (29.21 %-23.10 %) de las rutas activas estos problemas no han podido
ser solucionados sin pérdida de información.
6.3.2.
Tiempo medio de vida útil de la ruta
El tiempo medio de vida útil de ruta es el tiempo total (la suma de las partes si hay rupturas) al final del experimento durante el cual hay un camino
posible entre origen y destino, dividido por el número de rutas totales. En la
Fig. 6.14 se muestra un ejemplo donde se verá en primer lugar el tiempo de
vida de ruta ideal, este es el tiempo durante el cual el origen y el destino pueden mantener la comunicación, single-hop o multi-hop, hasta que el origen y
el destino están definitivamente fuera de cobertura.
En segundo lugar, el cronograma muestra el tiempo de vida de ruta real.
El camino está disponible cuando después de una solicitud de ruta (RREQ),
195
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
TIEMPO MEDIO DE VIDA IDEAL
TIEMPO MEDIO DE VIDA ÚTIL
Fuente -destino
alcanzables
(single o multi hop)
Route Request
Route Reply
Fuente -destino
inalcanzables
Nuevo RREQ-RREP
existe ruta
alternativa
Source-destination
inalcanzables
definitivamente
Figura 6.14: Diagrama de tiempos. Tiempo de ruta ideal y tiempo de ruta
real.
hay una respuesta de ruta (RREP), y es en este momento cuando el tiempo
útil empieza a contabilizarse. En ambos casos cuando el origen y destino
están fuera de cobertura el conteo de tiempo se paraliza y continúa si hay
un nuevo camino después de una nueva búsqueda. El tiempo medio de vida
de la ruta se obtiene mediante la suma de los tiempos útiles7 dividida por el
número de caminos encontrados durante el tiempo de simulación. El tiempo
medio de ruta se ha obtenido para distintos tiempos de sesión, 20 segundos,
1 y 3 minutos.
En la Fig. 6.15, se ha representado el tiempo medio de ruta para un tiempo
de sesión de 180 segundos. Esta gráfica muestra como el tiempo medio disminuye con la velocidad desde 1.38 m/s hasta 20 m/s. Cuando el rango de
transmisión radio es mayor el tiempo medio que la ruta permanece activa es
mayor. Los resultados obtenidos son comparables a los de Ishibashi (ver Fig.
15 in [IB04]), donde se presenta el efecto de la movilidad en una red ad hoc.
Aunque el tiempo medio es solo dependiente de la movilidad y del rango de
transmisión radio, la densidad de los nodos en la red afecta a la cantidad de
enlaces que se pueden crear. En [IB04] los autores usan 50 nodos y el modelo
de movilidad utilizado es random waypoint. Por esto, no se puede realizar
una comparación directa entre ambos resultados, pero sí es posible observar
que el comportamiento en términos generales es el mismo. La velocidad de
7 Es
importante reseñar que durante la resolución de un mismo experimento se realiza más
de una solicitud de ruta, y es por lo que en la Fig. 6.14 donde se muestran los tiempos, se repite
tantas veces como solicitudes haya, y se puede definir el tiempo medio como la suma de estos
tiempos dividida por el número de rutas totales.
196
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
70
Rango transmisión radio 100m
Rango transmisión radio 150m
Rango transmisión radio 200m
60
Session time: 180s
Tiempo medio de ruta (s)
50
40
30
20
10
0
0
2
4
6
8
10
12
Velocidad (m/s)
14
16
18
20
Figura 6.15: Tiempo medio de vida útil de la ruta para una sesión de 180 s.
los nodos afecta notablemente al tiempo medio de ruta. Del mismo modo, en
[SBKH03] donde se propone un modelo analítico que relaciona la duración
de las rutas con el comportamiento de los protocolos reactivos, tras haber estudiado el comportamiento de distintos modelos de movilidad, se llega a las
siguientes conclusiones comparables con los resultados que se han obtenido
en esta sección: 1) cuando la velocidad media relativa aumenta, la duración
de los enlaces disminuye y por tanto el tiempo medio de ruta disminuye, 2)
cuando el rango de transmisión R aumenta, la duración de los enlaces aumenta y por consiguiente la duración del tiempo medio de ruta también y
3) cuando mayor es el número de saltos en la ruta mayor posibilidad de que
esta se rompa y por tanto el tiempo medio disminuye.
197
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
6.4. Resultados del modelo que determina el establecimiento, mantenimiento y recuperación de
la ruta
Los resultados que se muestran en esta sección han sido obtenidos por
simulación, el análisis numérico no es posible debido al elevado tamaño del
espacio de estados por la complejidad del modelo diseñado, ver sección 5.5.
Estos resultados se han dividido en tres grupos, en primer lugar se muestra
la alcanzabilidad de la red cuando se usa un escenario como el planteado con
un protocolo reactivo. En segundo lugar se determinará el comportamiento
del protocolo en cuanto a tiempos de establecimiento de ruta, tiempo de
mantenimiento y tiempo de recuperación de una ruta perdida. Y en tercer
lugar se calcula el tiempo medio durante el cual la ruta entre origen y destino
está activa.
El tamaño del área de trabajo utilizado para todos los experimentos que se
muestran en esta sección es de 250x300m2 , ver sección 4.1.1, se han utilizado
6 nodos móviles donde todos tienen la misma velocidad, esta velocidad se ha
variado según el experimento dentro del rango [1.38 m/s, 20 m/s]. El rango
de transmisión radio se ha variado dentro del margen [100 m, 200 m]. Se
han establecido distintas tasas de error (incorporadas durante la búsqueda
de ruta) de distintos valores, 1 %, 10 %, 20 %, 30 %, 40 %, 50 %, 60 % y 70 %
para evaluar su efecto en el comportamiento de la red. El tiempo de servicio
utilizado, tiempo durante el cual un usuario está visualizando la información
de estado, alertas o imágenes, se ha establecido en 20 segudos y en 3 minutos.
6.4.1.
Alcanzabilidad
Al igual que en el modelo anterior donde se estudia básicamente la alcanzabilidad de los nodos, en este modelo más complejo se han evaluado las
rutas single-hop (directas), multi-hop (indirectas) y las comunicaciones que
no han sido posibles porque los nodos no eran alcanzables debido a su posi-
198
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
ción en el área, por problemas de ruido, etc. Las Figs. 6.16 y 6.17 representan
los porcentajes de estos tipos de comunicación, a diferencia de los modelos
anteriores estas gráficas se han obtenido incorporando problemas de comunicación a la hora de establecer el camino.
En general se observa para las menores tasas de error que a mayor velocidad mayor es el porcentaje de comunicaciones satisfactorias (tanto singlehop como multi-hop) debido a que intervienen más cambios de ruta por el
movimiento de los nodos. Cuando la tasa de error aumenta, las curvas son
cada vez más planas sin cambios apenas con respecto a la velocidad, ver
Fig. 6.17(d). A mayores valores de rango de transmisión radio mayores tasas
de comunicaciones single-hop8 . Sin embargo, en las comunicaciones multihop el comportamiento es distinto, por ejemplo en la Fig. 6.16(a) para un rango de transmisión radio de 100 m las comunicaciones indirectas alcanzan su
mínimo, y para un rango de 150 m las comunicaciones aumentan, pero curiosamente las comunicaciones multi-hop para 200 m son las mismas que para
un rango de transmisión radio de 150 m o incluso para algún valor de velocidad, los valores son inferiores a los obtenidos con ese rango de transmisión.
Para entender este comportamiento, se debe pensar en el comportamiento de
las comunicaciones multi-hop para un único valor de velocidad y distintos
valores de rango de transmisión radio, en este caso, es conocido que existe un
punto de inflexión, en el caso actual éste se observa para un valor de rango
de transmisión radio igual a 150 m, por eso con 200 m (tramo descendente
después del punto de inflexión) se obtienen porcentajes inferiores de comunicaciones multi-hop. Este comportamiento de las comunicaciones multi-hop
se observa para cualquier tasa de error, cuando el rango de transmisión radio
es muy elevado las comunicaciones single-hop son posibles en la mayoría de
los intentos de comunicación disminuyendo las comunicaciones multi-hop a
partir de ese valor de rango de transmisión.
Es obvio decir que a medida que se incrementa la tasa de error utilizada
en el proceso de búsqueda, el protocolo encuentra más dificultades para esta8 Siempre
se da preferencia a las rutas de menor número de saltos.
199
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
Single−hop (100m)
Single−hop (150m)
Single−hop (200m)
Multi−hop (100m)
Multi−hop (150m)
Multi−hop (200m)
Inalcanzables (100m)
Inalcanzables (150m)
Inalcanzables (200m)
60
Comunicaciones (%)
50
40
30
Tiempo sesión = 180s. Tasa error = 1%
70
Single−hop (100m)
Single−hop (150m)
Single−hop (200m)
Multi−hop (100m)
Multi−hop (150m)
Multi−hop (200m)
Inalcanzables (100m)
Inalcanzables (150m)
Inalcanzables (200m)
60
Comunicaciones (%)
70
50
40
Tiempo sesión = 180s. Tasa error = 10%
30
20
20
10
0
0
2
4
6
8
10
12
Velocidad (m/s)
14
16
18
10
0
20
2
(a) Tasa error 1 %
Single−hop (100m)
Single−hop (150m)
Single−hop (200m)
Multi−hop (100m)
Multi−hop (150m)
Multi−hop (200m)
Inalcanzables (100m)
Inalcanzables (150m)
Inalcanzables (200m)
70
Comunicaciones (%)
60
50
40
30
8
10
12
Velocidad (m/s)
14
16
18
80
Single−hop (100m)
Single−hop (150m)
Single−hop (200m)
Multi−hop (100m)
Multi−hop (150m)
Multi−hop (200m)
Inalcanzables (100m)
Inalcanzables (150m)
Inalcanzables (200m)
70
60
50
40
30
Tiempo sesión = 180s. Tasa error = 30%
20
10
2
4
6
8
10
12
Velocidad (m/s)
14
(c) Tasa error 20 %
16
18
20
0
0
2
4
6
8
10
12
Velocidad (m/s)
14
16
18
(d) Tasa error 30 %
Figura 6.16: Porcentaje de comunicaciones single-hop, multi-hop y comunicaciones inalcanzables para distintos valores de rango de transmisión.
Tiempo de servicio 180 s, tasa de error del 1 %, 10 %, 20 %, 30 %, distintas
velocidades de los nodos.
200
20
Tiempo sesión = 180s. Tasa error = 20%
20
10
0
6
(b) Tasa error 10 %
Comunicaciones (%)
80
4
20
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
Single−hop (100m)
Single−hop (150m)
Single−hop (200m)
Multi−hop (100m)
Multi−hop (150m)
Multi−hop (200m)
Inalcanzables (100m)
Inalcanzables (150m)
Inalcanzables (200m)
70
Comunicaciones (%)
60
50
40
30
90
70
Tiempo sesión = 180s. Tasa error = 40%
20
60
50
40
Tiempo de sesión = 180s. Tasa error = 50%
30
20
10
0
0
Single−hop (100m)
Single−hop (150m)
Single−hop (200m)
Multi−hop (100m)
Multi−hop (150m)
Multi−hop (200m)
Inalcanzables (100m)
Inalcanzables (150m)
Inalcanzables (200m)
80
Comunicaciones (%)
80
10
2
4
6
8
10
12
Velocidad (m/s)
14
16
18
0
0
20
2
(a) Tasa error 40 %
90
80
80
8
10
12
Velocidad (m/s)
14
16
18
20
70
Single−hop (100m)
Single−hop (150m)
Single−hop (200m)
Multi−hop (100m)
Multi−hop (150m)
Multi−hop (200m)
Inalcanzables (100m)
Inalcanzables (150m)
Inalcanzables (200m)
60
50
40
Tiempo sesión = 180s. Tasa error = 60%
30
20
Comunicaciones (%)
70
Comunicaciones (%)
6
(b) Tasa error 50 %
90
Single−hop (100m)
Single−hop (150m)
Single−hop (200m)
Multi−hop (100m)
Multi−hop (150m)
Multi−hop (200m)
Unreachable (100m)
Unreachable (150m)
Unreachable (200m)
60
50
40
Session time = 180s. Error rate = 70%
30
20
10
0
0
4
10
2
4
6
8
10
12
Velocidad (m/s)
14
(c) Tasa error 60 %
16
18
20
0
0
2
4
6
8
10
12
Velocidad (m/s)
14
16
18
20
(d) Tasa error 70 %
Figura 6.17: Porcentaje de comunicaciones single-hop, multi-hop y comunicaciones inalcanzables para distintos valores de rango de transmisión. Tiempo de servicio 180 s, tasa de error del 40 %, 50 %, 60 % y del 70 %, distintas
velocidades de los nodos.
201
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
blecer una ruta entre origen y destino alcanzando hasta un 90 % de intentos
de comunicación fallidos, ver Fig. 6.17(d).
Para realizar una comparativa entre los resultados obtenidos se ha escogido la mínima y la máxima tasa de error utilizada en las simulaciones, los
resultados se presentan en la Fig. 6.18 donde se han representado las comunicaciones single-hop y multi-hop así como los intentos fallidos para las dos
tasas de error, pero escogiendo únicamente una velocidad para el movimiento de los nodos (1.38 m/s). El comportamiento observado para una tasa de
error del 1 % es el comportamiento típico ya obtenido con modelos anteriores, las comunicaciones single-hop aumentan con el rango de transmisión, las
comunicaciones multi-hop muestran un punto de inflexión para un valor de
rango de transmisión radio de 150 m y las comunicaciones fallidas disminuyen cuando se incrementa el valor del rango de transmisión radio utilizado.
Por lo contrario para una tasa de error del 70 % las comunicaciones con éxito representan un porcentaje muy bajo, aunque siguen predominando las
single-hop (el protocolo escoge la ruta más corta), hay pocas variaciones con
el rango de transmisión y las rutas inalcanzables representan un porcentaje
muy elevado.
En la Fig. 6.19(a) se muestra el porcentaje de rutas single-hop y multi-hop
perdidas respecto a las perdidas totales, para las tasas de error del 1 % y el
70 %. Independientemente de la tasa de error, respecto al total de rutas perdidas las rutas single-hop perdidas disminuyen a medida que aumenta el rango
de transmisión radio, pero al llegar al valor de 150 m aumentan. El hecho de
que se rompa un porcentaje menor de rutas a medida que aumenta el rango
de transmisión se debe al mayor alcance radio (100 m a 150 m), pero el hecho
de que haya más rutas perdidas para un rango de transmisión radio de 200 m
que para un valor de 150 m aunque no parezca lógico, se debe simplemente
a que se han creado más rutas cuando el rango de transmisión radio es 200
m y por tanto hay una probabilidad mayor de rupturas. El comportamiento
de este último tramo en las comunicaciones single-hop es justamente lo que
sucede cuando se evalúan las rutas multi-hop perdidas, al aumentar el rango
de transmisión radio las pérdidas de rutas multi-hop respecto al total aumen-
202
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
90
80
70
Single−hop (tasa error 1%)
Multi−hop (tasa error 1%)
Incalcanzables (tasa error 1%)
Single−hop (tasa error 70%)
Multi−hop (tasa error 70%)
Inalcanzables (tasa error 70%)
Comunicaciones (%)
60
50
40
Tiempo sesión = 180s, v=1.38 m/s
30
20
10
0
100
110
120
130
140
150
160
Rango transmisión radio (m)
170
180
190
200
Figura 6.18: Porcentaje de comunicaciones single-hop, multi-hop y comunicaciones inalcanzables. Tasa de error del 1 % y del 70 %. Tiempo de servicio
180 s, velocidad de los nodos de 1.38 m/s.
tan, encontrándose el mayor porcentaje de rutas perdidas en 150 m de rango
de transmisión radio, valor donde se alcanza el máximo de rutas multi-hop
encontradas y recuperadas. No se pierden más rutas porque haya un rango
de transmisión mayor, sino porque con ese rango se han encontrado más rutas multi-hop y por tanto existen más rutas multi-hop que pueden romperse.
Si se tiene en cuenta el comportamiento particular según la tasa de error, se
aprecia como para una tasa de error del 1 % son mayores las rupturas de rutas multi-hop que las single-hop, en términos generales cuantos más nodos
intervienen en la ruta mayor posibilidad de que alguno de ellos se mueva y
por tanto de que el camino se rompa.
Se observa en la figura que el porcentaje de rutas perdidas para una tasa
del 70 % es superior al porcentaje para una tasa del 1 %, pero estos valores no
son comparables, puesto que cada porcentaje ha sido calculado con respecto
203
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
70
9
65
8
60
7
Tiempo sesión = 180s, Tasa error 1% y 70%, v=1.38 m/s
50
45
Rutas single−hop perdidas vs perdidas totales, ER=1%
Rutas multi−hop perdidas vs perdidas totales, ER=1%
Rutas single−hop perdidas vs perdidas totales, ER=70%
Rutas multi−hop perdidas vs perdidas totales, ER=70%
40
35
30
100
Tiempo sesión = 180s, Tasa error 1% y 70%, v=1.38 m/s
6
Nº Rutas
Rutas (%)
55
5
4
Rutas single−hop perdidas, ER=1%
Rutas multi−hop perdidas, ER=1%
Rutas single−hop perdidas, ER=70%
Rutas multi−hop perdidas, ER=70%
3
2
110
120
130
140
150
160
170
Rango transmisión radio (m)
180
190
200
1
100
110
120
130
140
150
160
170
Rango transmisión radio (m)
180
190
200
(a) Porcentaje de rutas perdidas single-hop y (b) Número de rutas perdidas single-hop y
multi-hop. ER 1 % y 70 %
multi-hop. ER 1 % y 70 %
Figura 6.19: Porcentaje de rutas perdidas single-hop y multi-hop y número
de rutas perdidas single-hop y multi-hop. Tasa de error del 1 % y 70 %.
Tiempo de servicio 180 s, velocidades de los nodos de 1.38 m/s.
al total de rutas perdidas para cada tasa de error. Por ello, se muestran las
rutas totales perdidas tanto single-hop como multi-hop en la Fig. 6.19(b). La
gráfica muestra que se pierden más rutas (single-hop y multi-hop) para una
tasa de error del 1 % que para el 70 % y es lógico, ya que para una tasa del
70 % el número de rutas encontradas es muy bajo.
Con las anteriores figuras se ha podido estudiar cual es el comportamiento de las rutas perdidas si estas se dividen en single-hop y multi-hop. Pero
también se plantea una pregunta, ¿cuál es el porcentaje de rutas encontradas
que se pierde?, para responder a esta pregunta se muestra la Fig.6.20 que
representa el porcentaje de rutas encontradas tras la búsqueda inicial, el porcentaje de rutas perdidas (divididas en single-hop y multi-hop) de aquellas
que se habían encontrado y estaban activas, y por último el porcentaje de
rutas que habiéndose perdido se han podido recuperar. Se han representado
tres gráficas, la diferencia entre ellas es la tasa de error utilizada a la hora de
buscar ruta o recuperarla tras una pérdida.
Se ha escogido para esta representación la tasa de error del 1 %, esta representaría un escenario con pocos problemas a la hora de comunicar los
204
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
90
80
70
80
Rutas encontradas vs rutas solicitadas
Rutas single−hop perdidas vs rutas encontradas
Rutas multi−hop perdidas vs rutas encontradas
Rutas single−hop recuperadas vs rutas perdidas
Rutas single−hop recuperadas vs rutas perdidas
60
50
Rutas (%)
60
Rutas (%)
Rutas encontradas vs Rutas solicitadas
Rutas single−hop perdidas vs rutas encontradas
Rutas multi−hop perdidas vs rutas encontradas
Rutas single−hop recuperadas vs rutas perdidas
Rutas multi−hop recuperadas vs rutas perdidas
70
50
40
40
30
Tiempo sesión = 180s, tasa error 20%, v=1.38 m/s
30
20
Tiempo sesión = 180s, tasa error 1%, v=1.38 m/s
20
10
100
10
110
120
130
140
150
160
170
Rango transmisión radio (m)
180
190
0
100
200
110
(a) Tasa error 1 %
50
45
40
120
130
140
150
160
170
Rango transmisión radio (m)
180
190
200
(b) Tasa error 20 %
Rutas encontradas vs rutas solilcitadas
Rutas single−hop perdidast vs rutas encontradas
Rutas multi−hop perdidas vs rutas encontradas
Rutas single−hop recuperadas vs rutas perdidas
Rutas multi−hop recuperadas vs rutas perdidas
Routes (%)
35
30
25
20
Tiempo sesión = 180s, tasa error 50%, v=1.38 m/s
15
10
100
110
120
130
140
150
160
Radio range (m)
170
180
190
200
(c) Tasa error 50 %
Figura 6.20: Rutas establecidas tras la búsqueda, rutas perdidas respecto
a las encontradas y rutas recuperadas de las perdidas. Tasa de error del
1 %, 20 % y 50 %, rango de transmisión variable desde 100 m hasta 200 m,
velocidad de los nodos de 1.38 m/s y un tiempo de servicio de 180 s.
nodos; una tasa de error del 20 %, que representa una tasa de error bastante
elevada teniendo en cuenta que son problemas de comunicación añadidos a
los propios del protocolo, alcanzabilidad de los nodos, tiempos de espera,
etc.; finalmente se ha escogido la tasa de error del 50 % como valor representativo de un escenario muy ruidoso, aunque se han realizado simulaciones
con una tasa del 70 % se ha de tener en cuenta que este valor se ha utilizado
para forzar el sistema al máximo y ver su comportamiento, pero a la hora de
elegir un valor representativo, se debe pensar en un valor que se acerque a la
205
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
realidad y la tasa de error escogida (50 %) representa 1 fallo cada 2 intentos,
suficiente para un entorno ruidoso.
Cuanto mayor es el porcentaje de error menor es el porcentaje de rutas totales establecidas respecto a las búsquedas realizadas. En cuanto a las
pérdidas, en las tres gráficas se observa en términos generales el mismo comportamiento, se pierden siempre más rutas indirectas que directas y la tasa
de error no afecta a las rutas perdidas porque únicamente se aplica durante
la solicitud de las mismas. En cuanto a las rutas recuperadas las rutas directas obtenidas tras la ruptura de la ruta activa son mínimas y las indirectas
recuperadas disminuyen cuando aumenta la tasa de error.
6.4.2.
Establecimiento y recuperación de las rutas en los distintos instantes de tiempo
Para evaluar los tiempos de búsqueda y recuperación de las rutas se van
a mostrar distintas gráficas, en primer lugar se representa el número de rutas encontradas o recuperadas totales durante el tiempo de simulación; en
segundo lugar, estos mismos resultados se muestran divididos en diferentes
gráficas según el intento de búsqueda de ruta (RREQ); a continuación se representan los porcentaje de rutas encontradas e inaccesibles en lugar de los
valores absolutos; y por último se muestra el porcentaje de rutas pero con las
rutas multi-hop divididas según el número de saltos, de este modo se estudia con más detalle cómo se distribuyen en el tiempo las rutas encontradas
según los nodos que en ellas intervienen. Los resultados que se muestran
en esta sección han sido obtenidos para 6 nodos móviles con una velocidad
media de 1.38 m/s, y el tiempo de simulación es 6000 u.t. en todos los casos.
Aunque se han resuelto los experimentos para distintas tasas de error incorporadas durante el mecanismo de búsqueda, la tasa de error utilizada para
la obtención de los resultados mostrados a continuación es del 1 %. Aunque
es evidente que los resultados según la tasa de error son distintos, con estas
gráficas se evaluará la tendencia y comportamiento del protocolo mas que
206
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
10
9
Rutas establecidas: single−hop
Rutas establecidas: multi−hop
Rutas recuperadas: single−hop
Rutas recuperadas: multi−hop
8
7
Nº rutas
6
5
4
3
2
Tiempo sesión = 180s. Tasa error = 1%
1
0
100
110
120
130
140
150
160
Rango transmisión radio (m)
170
180
190
200
Figura 6.21: Número de rutas encontradas y recuperadas para una tasa de
error del 1 %, una velocidad media de los nodos de 1.38 m/s y un tiempo
de servicio de 180 s. Rutas single-hop y rutas multi-hop
los valores concretos obtenidos sin ser necesario representar las gráficas para
todas las tasas de error.
La Fig. 6.21 muestra el número de rutas encontradas cuando un usuario solicita un servicio y es necesario establecer comunicación entre origen y
destino y el número de rutas recuperadas tras una ruptura. Se han diferenciado las rutas single-hop de las multi-hop. Se aprecia como las rutas directas
encontradas aumentan con el rango de transmisión. Las rutas indirectas encontradas muestran un punto de inflexión, que ya se había presentado en
anteriores resultados, cuando el rango de transmisión radio es de 150 m. Las
rutas recuperadas de un solo salto son escasas, esto es debido a que las rutas recuperadas tras una ruptura son mayoritariamente indirectas. Por otra
parte, la curva que representa el número de rutas indirectas cambia de pendiente al pasar de un rango de transmisión radio de 150 m a 200 m pero no
207
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
se observa ningún punto de inflexión. Es posible que este punto se encuentre
para rangos de transmisión mayores.
En el modelo no se ha evaluado el comportamiento del protocolo en cada
instante de tiempo, sino que se ha estudiado el comportamiento según los intervalos de tiempo representados por los diferentes intentos de búsqueda de
ruta. Si los resultados presentados en la Fig. 6.21 se dividen según el intento
de búsqueda de ruta se obtienen las gráficas representadas en la Fig. 6.22. Los
resultados se distribuyen en cuatro grupos según el intento de comunicación,
”Primer (RREQ)” (primer intento de búsqueda), ”Primer reintento (RREQ)”
primer reintento de búsqueda tras la búsqueda fallida, y así sucesivamente
hasta el tercer9 y último reintento.
El periodo de tiempo evaluado en ”Primer RREQ” comprende desde los
0 s hasta los 0.4 s, 0.4 s es el tiempo de espera después del primer intento
tras el cual el protocolo enviaría el siguiente paquete de búsqueda de ruta en
el caso de no obtener respuesta. El periodo de tiempo evaluado en ”Primer
reintento (RREQ)” es el comprendido entre los 0.4 s y los 1.2 s (0.4 s + 0.8
s, 0.8 s es el nuevo tiempo de espera antes de una nueva solicitud). Si fuese
necesario llegar al segundo reintento, este se realizaría al cabo de 1.2 s desde
la solicitud inicial, desde ese momento el protocolo esperaría la llegada de
un paquete RREP durante 1.6 s más, o sea 2.8 s desde su solicitud inicial.
Tras la primera solicitud de ruta, el comportamiento es exactamente el
mismo que el presentado en la Fig. 6.21, es decir aquí se encuentran la mayoría de las rutas y por tanto el comportamiento general no cambia respecto al
que se ha mostrado inicialmente donde los resultados eran globales y no se
diferenciaban según los intentos de búsqueda.
9 Según los parámetros por defecto del AODV hay una primera solicitud de búsqueda y como
máximo dos reintentos (RREQ_RETRIES=2), estos son los parámetros utilizados en el modelo.
El hecho de que aquí se represente un ”Tercer reintento (RREQ)” es otro ”model artifact”. Para
conocer si tras el tiempo de espera correspondiente después del segundo reintento se debe dar la
ruta por inaccesible el modelo necesita realizar una nueva búsqueda aunque esta no se produzca
en los experimentos reales, si tras esa búsqueda no existe ruta, ésta se marca como inalcanzable
o irrecuperable.
208
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
Primer RREQ
Primer reintento (RREQ)
Tasa error 1%
10
0.8
0.6
Nº rutas
Nº rutas
8
6
4
0.2
2
0
100
120
140
160
180
Rango transmmisión radio (m)
Segundo reintento (RREQ)
0
100
120
140
160
180
200
Rango transmmisión radio (m)
Rutas establecidas: single−hop
Rutas establecidas: multi−hop
Rutas recuperadas: single−hop
Rutas recuperadas: multi−hop
0.25
0.08
0.2
0.06
0.04
0.15
0.1
0.05
0.02
0
100
200
Tercer reintento (RREQ)
0.1
Nº rutas
Nº rutas
0.4
120
140
160
180
Rango transmmisión radio (m)
200
0
100
120
140
160
180
Rango transmmisión radio (m)
200
Figura 6.22: Número de rutas encontradas y recuperadas en cada solicitud
de búsqueda de paquete para una tasa de error del 1 %, una velocidad media de los nodos de 1.38 m/s y un tiempo de servicio de 180 s. División de
rutas single-hop y rutas multi-hop encontradas según el intento de búsqueda
En el primer reintento, las rutas mayoritarias son las indirectas ya sean
rutas establecidas inicialmente o rutas recuperadas, esto es debido a que las
rutas directas se encuentran en términos de alcanzabilidad en el primer intento. Si no hay ruta en el primer intento pero hay movimiento durante el tiempo
de espera hasta realizar el primer reintento, es posible que haya algún caso
de ruta directa, pero pocos durante este intervalo que no es demasiado largo
ya que la velocidad considerada en este experimento, 1.38 m/s no permite
muchos cambios de posición. En las rutas indirectas encontradas tras la búsqueda de ruta se aprecia de nuevo el punto de inflexión10 en los 150 m de
10 Ver
Fig. 6.5, en esta gráfica se muestra como el punto de inflexión se alcanza en distintos
209
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
rango de transmisión radio. En la gráfica de las rutas indirectas recuperadas
la pendiente disminuye pero no es decreciente.
En el segundo reintento (tercera gráfica), el comportamiento es completamente distinto al observado en las dos gráficas anteriores de esta misma
figura. Aquí sí que se aprecia el punto de inflexión de las rutas indirectas
recuperadas en un rango de transmisión radio de 150 m. Curiosamente para las rutas encontradas tanto directas como indirectas, y para las rutas que
se han recuperado de forma indirecta la pendiente es descendente a medida que aumenta el rango de transmisión radio. Esto se debe a que con un
rango de transmisión de 150 m y 200 m es más fácil encontrar ruta en los
intentos anteriores, es decir tras el primer intento y tras el primer reintento,
simplemente por cuestiones de alcanzabilidad, ya que al tener un rango de
transmisión radio superior no es necesario esperar varios intentos para poder
alcanzar el destino ya sea de forma directa o indirecta. En el tercer reintento
de búsqueda de ruta el comportamiento de la red es exactamente el mismo,
las pendientes son descendentes.
En el primer intento de búsqueda se concentra el mayor número de rutas
encontradas o recuperadas, en el primer reintento el porcentaje disminuye
bastante, en el segundo reintento sigue bajando (el porcentaje obtenido en
este intervalo es el mínimo) pero en el tercer reintento (última gráfica) el
porcentaje es superior en general al del segundo reintento (tercera gráfica).
Evaluando este comportamiento detenidamente se puede decir que el mayor
porcentaje de rutas se encuentra en el primer intento porque las rutas mayoritarias son las de 1, 2 y 3 saltos, y de éstas, las rutas de 1 salto se encuentran
siempre el 100 % de las veces en el primer intento, y las de 2 y 3 saltos aunque pueden encontrarse tras otros intentos lo hacen mayoritariamente en el
primero. En general las rutas de 2, 3, 4 y 5 saltos aún siendo posibles por
valores de rango de transmisión radio según sea el número de nodos utilizado y el tamaño del
área donde estos se sitúan. Pero concretamente para una zona de trabajo basada en un mosaico
T3 y 6 nodos, el rango de transmisión radio donde se alcanza el punto de inflexión toma el valor
de 3, equivalente para unas celdas cuyo diámetro es de 50 m a 150 m de rango de transmisión
radio.
210
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
cobertura en el primer intento, se pueden encontrar probabilísticamente en
otros intervalos de tiempo por el modo en el que se ha programado el funcionamiento del protocolo (según el número de saltos y el número de intentos
ya realizados se encontrará ruta en el intervalo actual o se deberá realizar
un nuevo intento). Esto provoca que en el primer intento se tenga la mayor
concentración de rutas, en el primer reintento disminuya, en el segundo reintento siga disminuyendo y en el tercero todas aquellas rutas que teniendo
en cuenta el rango de transmisión radio son posibles pero que probabilísticamente no se han encontrado en un intervalo anterior, se dan por válidas
finalmente en este último intervalo, por eso el porcentaje vuelve a incrementarse siendo superior que el porcentaje de rutas de la tercera gráfica (segundo
reintento).
El número de rutas totales encontradas y recuperadas durante el tiempo de simulación permite ver el comportamiento del protocolo, aunque no
hay que olvidar que la cantidad de rutas establecidas entre origen y destino
depende mucho del número de nodos, del tamaño del área, de los errores
durante la comunicación, etc. Por esto, para evaluar de forma generalizada
la tendencia de los resultados en cada intento de comunicación estos mismos resultados en valores absolutos se calculan con respecto al total de rutas
encontradas o recuperadas.
En la Fig. 6.23 se observa como en el primer intento de búsqueda en las
rutas indirectas tanto encontradas inicialmente como recuperadas tras una
pérdida, se sigue observando el punto de inflexión en 150 m de rango de
transmisión radio como cabía esperar. Además se muestra como para este
mismo valor de rango de transmisión radio el porcentaje de rutas directas
de ambos tipos disminuyen. El número de rutas directas ha ido aumentando
con el rango de transmisión como se podía ver en la Fig. 6.21, pero como las
rutas indirectas tienen en este punto su máximo valor, al calcular el porcentaje
respecto al total de rutas (directas e indirectas) se aprecia como el porcentaje
de directas disminuye. Destacar que tras el primer intento, las rutas directas
recuperadas tras una ruptura son las que tienen un menor peso.
211
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
Primer RREQ
Primer reintento (RREQ)
Tasa error 1%
80
8
6
Rutas (%)
Rutas (%)
60
40
2
20
0
100
4
120
140
160
180
Rango transmisión radio (m)
Segundo reintento (RREQ)
0
100
200
Rutas establecidas: single−hop
Rutas establecidas: multi−hop
Rutas recuperadas: single−hop
Rutas recuperadas: multi−hop
1.5
120
140
160
180
Rango transmisión radio (m)
200
Tercer reintento (RREQ)
4
Rutas (%)
Rutas (%)
3
1
0.5
2
1
0
100
120
140
160
180
Rango transmisión radio (m)
200
0
100
120
140
160
180
Rango transmisión radio (m)
200
Figura 6.23: Porcentaje de rutas encontradas y recuperadas en cada solicitud
de búsqueda de ruta para una tasa de error del 1 %, una velocidad media de
los nodos de 1.38 m/s y un tiempo de servicio de 180 s. Porcentaje de rutas
single-hop y rutas multi-hop encontradas según el intento de búsqueda
En el primer reintento, segunda gráfica de esta figura, el porcentaje de rutas indirectas es en los dos casos, superior al de directas, es lógico puesto que
tal y como se ha visto en las anteriores figuras el número de rutas indirectas
es mayoritario a partir del primer reintento. Ambas curvas de comunicaciones indirectas tienen de nuevo el punto de inflexión en un valor de rango de
transmisión radio igual a 150 m.
En el segundo y tercer reintento de la Fig. 6.23, al igual que sucedía en
esos mismos casos en la Fig. 6.21, se aprecia una pendiente descendente porque sobre el total de rutas encontradas o recuperadas en estos intervalos, las
obtenidas con 150 m y 200 m de rango de transmisión radio son las mínimas, ya que por alcanzabilidad se han encontrado antes, y no han necesitado
212
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
más tiempo (esperando posibles movimientos) para que las rutas fuesen posibles. Observar también que se muestran los menores porcentajes de rutas
encontradas y recuperadas en el segundo reintento, resultado directamente
relacionado con el comportamiento explicado en la Fig. 6.21.
En la Fig. 6.24 se muestran 4 gráficas en las que se han representado los
porcentajes de las rutas encontradas tras la búsqueda de un camino para
poder establecer una comunicación entre origen y destino y las rutas recuperadas tras la pérdida de la ruta activa. La diferencia con las anteriores figuras
de esta sección es que ahora se han representado las rutas según el número
de saltos por lo que se muestran 5 curvas, las rutas single-hop (1 salto), y
multi-hop (2, 3, 4 y 5 saltos). La velocidad de los nodos es 1.38 m/s, la tasa
de error del 1 % y se han utilizado tres rangos de transmisión radio distintos,
100 m, 150 m y 200 m.
Observando la figura se aprecia que la mayor concentración de rutas se ha
encontrado/recuperado tras el primer intento (Primer RREQ). En esta gráfica
se observa que:
Las rutas encontradas (líneas continuas) de 1 salto son mayoritarias,
seguidas de las de 2, 3, y así sucesivamente. Esto se debe a que se da
preferencia a la hora de elegir ruta a la de menor número de saltos
siempre que sea posible.
En cambio las rutas recuperadas (líneas discontinuas) no se distribuyen
del mismo modo, hay más rutas recuperadas de 2 saltos que de 1 salto,
si se pierde la ruta actual es difícil que la alternativa sea directa. Las
rutas mayoritarias son directas, ya que el protocolo de encaminamiento
da preferencia a las rutas más cortas. Por tanto, todas las rutas que
se pierdan directas no se podrán recuperar con una nueva directa, lo
lógico es que lo hagan con una indirecta. Sí que lo harán con una directa
cuando no haya ninguna posibilidad de ruta y pasado más tiempo (o
sea no en la primera solicitud de ruta que es la que se está valorando)
por el movimiento de algún nodo sea posible de nuevo establecer una
ruta directa. Además cuando una ruta se rompe por el movimiento
213
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
Primer reintento (RREQ)
Primer RREQ
Tasa error 1%
80
4
3
Rutas (%)
Rutas (%)
60
40
1
20
120
140
160
180
Rango transmisión radio (m)
Segundo reintento (RREQ)
Rutas (%)
1.5
1
200
1 salto, encontrada
2 saltos, encontrada
3 saltos, encontrada
4 saltos, encontrada
5 saltos, encontrada
1 salto, recuperada
2 saltos, recuperada
3 saltos, recuperada
4 saltos, recuperada
5 saltos, recuperada
0.5
0
100
120
140
160
180
Rango transmisión radio (m)
200
Tercer reintento (RREQ)
2
1.5
Rutas (%)
0
100
2
1
0.5
0
100
120
140
160
180
Rango transmisión radio (m)
200
0
100
120
140
160
180
Rango transmisión radio (m)
200
Figura 6.24: Porcentaje de rutas encontradas y recuperadas en cada solicitud
de búsqueda de paquete para una tasa de error del 1 %, una velocidad
media de los nodos de 1.38 m/s y un tiempo de servicio de 180 s. División
de las rutas en número de saltos.
de alguno de los nodos, es más probable que gracias a uno o varios
nodos la ruta se pueda establecer de nuevo y de forma indirecta, si fuese
posible la ruta directa, ésta hubiese sido la que se hubiese escogido
inicialmente y sería la ruta actual que se acaba de perder.
Se aprecia que las rutas de 4 saltos son muy escasas y las rutas de
5 saltos son inexistentes. Según el funcionamiento del AODV no es
posible alcanzar en el primer intento nodos a una distancia de 5 saltos.
Los motivos de que no se encuentre ruta en el primer intento pero pueda
encontrarse en los siguientes pueden ser varios: porque no exista ninguna
ruta inicial pero el movimiento de los nodos haga posible la creación de un
214
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
camino y este se encuentre en los siguientes intentos; por problemas a la
hora de establecer la comunicación entre los nodos debidos a interferencias,
ruido, etc... que dificulten el establecimiento de la comunicación pero tras
varios intentos sea posible; o porque el número de saltos de la ruta sea igual
o superior a 5 y según el protocolo el primer mensaje RREQ se genera con
un valor de 2 en el campo TTL de la cabecera IP, lo que hace imposible
encontrar una ruta con ese número de saltos la primera vez, pero si puede
encontrarse a partir del segundo intento porque el segundo RREQ se genera
con los mismos parámetros pero con un TTL incrementado, TTL=4.
Con los resultados del primer reintento (segunda gráfica de la Fig. 6.24)
se obtienen las siguientes conclusiones:
Solo se concentra en este intervalo de tiempo el 3.5 % de las rutas encontradas/recuperadas totales teniendo en cuenta siempre los parámetros
utilizados.
Se aprecia como cambia la distribución, las rutas encontradas de 1 salto
ya no son mayoritarias, lo son las de 2 y 3 saltos, esto es lógico, puesto
que las rutas de 1 salto se encuentran con mayor probabilidad tras el
primer intento.
Tras este intento existe alguna ruta de 5 saltos aunque el porcentaje es
muy bajo (próximo al 0.1 %).
El porcentaje de rutas recuperadas para cualquier número de saltos en
este intervalo siempre supera al porcentaje de las rutas encontradas.
En cuanto al segundo reintento (tercera gráfica) se puede decir que:
El porcentaje de rutas recuperadas (línea discontinua) vuelve a ser superior al de las rutas encontradas. Principalmente se recuperan rutas
donde únicamente intervienen 1 ó 2 saltos, estas rutas se han recuperado porque durante la espera se ha movido algún nodo que ha dado
lugar a una posible ruta, si no hubiese sido así se deberían haber encontrado/recuperado en el primer intervalo, al menos las de 1 salto que se
215
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
encuentran el 100 % de las veces tras la primera búsqueda. A diferencia
de los dos intentos anteriores, a medida que aumenta el rango de transmisión radio los porcentajes de las rutas disminuyen como también se
ha podido apreciar en la Fig.6.23.
Según el comportamiento explicado en este reintento se encuentra el
menor porcentaje de rutas encontradas y recuperadas.
Para finalizar el análisis de esta Fig. 6.24, se describe el resultado mostrado
en la última gráfica (tercer reintento en la búsqueda de ruta).
Las rutas recuperadas de 1 y 2 saltos destacan sobre las rutas encontradas. Cuando ha habido una ruptura, hay casos en los que no se ha
podido recuperar la ruta hasta pasado todo este tiempo (tres reintentos), en este momento se ha encontrado una ruta alternativa por el movimiento de algún nodo/s, y ha sido suficiente un único salto o dos en
la mayoría de los casos para llegar al destino.
En este caso ya tienen representación las rutas de 5 saltos, aunque el
porcentaje de rutas con esta cantidad de saltos sigue siendo muy bajo.
Al igual que en el reintento anterior, también disminuyen los valores
con el aumento del rango de transmisión.
En las tablas 6.3, 6.4, 6.5 y 6.6, se muestra el porcentaje de comunicaciones single-hop y multi-hop en las rutas encontradas y recuperadas.
6.4.3.
Tiempo medio de vida útil de la ruta
En la Fig. 6.25 se han representado las rutas totales contabilizadas durante
la resolución del modelo para las distintas tasas de error utilizadas según el
rango de transmisión radio y la velocidad de los nodos. La tasa de error
modelada sólo se aplica a la hora de encontrar/recuperar ruta y no mientras
la ruta ya está establecida, por tanto la tasa de error afecta directamente al
216
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
Tabla 6.3: Rutas encontradas y recuperadas tras el primer RREQ
Radio coverage (m)
1 hop ( %)
2 hops ( %)
3 hops ( %)
4 hops ( %)
5 hops ( %)
100
63.1382
22.1879
6.9532
0.8884
0
150
59.5689
26.9123
7.4912
0.8832
0
200
68.9328
23.6651
4.2599
0.2853
0
100
22.7841
51.7941
13.8726
1.6270
0
150
17.9375
54.1005
17.7790
2.0266
0
200
16.4943
61.2492
14.7120
1.1360
0
Rutas encontradas
Recuperadas
Tabla 6.4: Rutas encontradas y recuperadas tras el primer reintento
Radio coverage (m)
1 hop ( %)
2 hops ( %)
3 hops ( %)
4 hops ( %)
5 hops ( %)
100
0.1966
1.6316
1.1461
0.0918
0.0747
150
0.0670
1.8215
1.1760
0.0894
0.0783
200
0.0238
1.5508
0.6520
0.0281
0.0161
100
0.4719
3.0372
1.7812
0.1285
0.0646
150
0.1722
3.0043
2.2198
0.1670
0.0858
200
0.0811
3.2352
1.7787
0.0876
0.0200
Rutas encontradas
Recuperadas
217
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
Tabla 6.5: Rutas encontradas y recuperadas tras el segundo reintento
Radio coverage (m)
1 hop ( %)
2 hops ( %)
3 hops ( %)
4 hops ( %)
5 hops ( %)
100
0.3758
0.4496
0.2528
0.0281
0.0187
150
0.1185
0.2304
0.1446
0.0266
0.0204
200
0.0341
0.0788
0.0445
0.0079
0.0038
100
0.7010
0.6679
0.2390
0.0303
0.0128
150
0.2333
0.3914
0.1838
0.0369
0.0165
200
0.0967
0.2036
0.0880
0.0195
0.0040
Rutas encontradas
Recuperadas
Tabla 6.6: Rutas encontradas y recuperadas tras el tercer reintento
Radio coverage (m)
1 hop ( %)
2 hops ( %)
3 hops ( %)
4 hops ( %)
5 hops ( %)
100
0.7342
0.8552
0.4852
0.4378
0.0541
150
0.2287
0.4441
0.2717
0.3744
0.0529
200
0.0653
0.1514
0.0829
0.1081
0.0092
100
1.0568
0.9920
0.3679
0.3436
0.0277
150
0.3554
0.5937
0.2738
0.3906
0.0320
200
0.1459
0.3064
0.1294
0.2044
0.0079
Rutas encontradas
Recuperadas
218
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
número de rutas encontradas/recuperadas, e indirectamente al tiempo medio
de ruta. A medida que aumenta la velocidad de los nodos el número de
rutas se incrementa levemente, a mayor velocidad más rupturas y rutas que
recuperar y por tanto más rutas totales. De todos modos, para un mismo
valor de rango de transmisión radio se aprecian pocas diferencias aunque se
modifique la tasa de error cuando las velocidades son bajas. Para velocidades
superiores para un mismo valor de rango de transmisión radio las curvas se
separan y el número de rutas disminuye cuando la tasa de error es mayor.
La combinación de parámetros que más rutas totales proporciona es la de
un rango de transmisión radio de 200 m y la tasa de error mínima evaluada,
1 %. A mayor rango de transmisión más solicitudes de búsqueda de ruta dan
como resultado un camino hacia el destino y a su vez una tasa de error mínima, permite que la mayoría de rutas posibles se encuentren sin problemas.
Para la tasa de error máxima utilizada, 70 %, el número de rutas varía muy
poco con la velocidad para un mismo valor de rango de transmisión radio.
Además, con esta tasa las curvas tampoco varían mucho aunque el rango de
transmisión radio cambie. De hecho para esta tasa de error las tres curvas
(rango de transmsión radio 100 m, 150 m y 200 m) ofrecen el mínimo número
de rutas.
En la Fig. 6.26 se muestra el tiempo medio de ruta para una tasa de error
del 1 % durante un tiempo de servicio de 20 segundos, 1 y 3 minutos. Se
aprecia en las tres gráficas, como es lógico, que a mayor rango de transmisión
radio el tiempo medio que la ruta permanece activa es mayor. Además, a
menor velocidad de los nodos mayor es el tiempo medio ya que las rutas se
ven afectadas en menor medida que a velocidades elevadas.
6.5. Conclusiones
Los resultados presentados en este capítulo permiten ver el comportamiento global de una red ad hoc formada por nodos móviles donde el protocolo de encaminamiento tiene un comportamiento reactivo como podría
219
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
100
90
80
70
Nº rutas
60
50
40
30
20
10
0
0
100m 1%
150m 1%
200m 1%
100m 10%
150m 10%
200m 10%
100m 20%
150m 20%
200m 20%
100m 30%
150m 30%
200m 30%
100m 40%
150m 40%
200m 40%
100m 50%
150m 50%
200m 50%
100m 60%
150m 60%
200m 60%
100m 70%
150m 70%
200m 70%
2
Tiempo sesión = 180s
4
6
8
10
12
Velocidad (m/s)
14
16
18
20
Figura 6.25: Número de rutas para distintas tasas de error, una velocidad
media de los nodos variable desde 1.38 m/s hasta 20 m/s y un tiempo de
servicio de 180 s.
ser el del AODV y las características del escenario son las que se podrían
encontrar en un entorno industrial donde se realizan tareas de supervisión.
Se han mostrado inicialmente resultados que aunque no definitivos por
haber sido obtenidos con los modelos más sencillos (plano unidimensional),
mostraban un comportamiento válido y la tendencia de los valores se ha continuado observando incluso en los modelos más complejos demostrándose
su utilidad. Con los modelos más sencillos se han variado los valores de distintos parámetros, tamaño del área de trabajo, número de nodos de la red,
rangos de transmisión radio, etc. para terminar concretando finalmente algunos de esos valores según el escenario real de trabajo para el que se quiere
realizar el estudio como es una zona de trabajo de 250x300 m2 , un número final de 6 nodos móviles, un rango de transmisión radio variable pero acotado
entre 100 m y 200 m...
220
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
18
Tiempo medio de ruta (s)
16
14
12
v=1.38m/s
v=5m/s
v=6m/s
v=7m/s
v=8m/s
v=9m/s
v=10m/s
v=15m/s
v=20m/s
Tiempo sesión = 20s. Tasa error = 1%
10
8
6
4
100
110
120
130
140
150
160
170
Rango transmisión radio (m)
180
190
200
(a) Tiempo sesión 20 s
40
Tiempo medio ruta (s)
35
30
v=1.38m/s
v=5m/s
v=6m/s
v=7m/s
v=8m/s
v=9m/s
v=10m/s
v=15m/s
v=20m/s
90
80
Tiempo sesión = 60s. Tasa error = 1%
70
Tiempo medio de ruta (s)
45
25
20
15
60
v=1.38m/s
v=5m/s
v=6m/s
v=7m/s
v=8m/s
v=9m/s
v=10m/s
v=15m/s
v=20m/s
Tiempo de sesión = 180s. Tasa error = 1%
50
40
30
20
10
10
5
100
110
120
130
140
150
160
170
Rango transmisión radio (m)
180
(b) Tiempo sesión 60 s
190
200
0
100
110
120
130
140
150
160
170
Rango transmisión radio (m)
180
190
200
(c) Tiempo sesión 180 s
Figura 6.26: Tiempo medio de ruta para una tasa de error del 1 %, rango de
transmisión radio variable desde 100 m hasta 200 m y un tiempo de servicio
de 20 s, 60 s y 180 s.
Con los resultados de los últimos modelos, es posible entender mejor el
comportamiento temporal de las rutas creadas con este algoritmo. Se ha evaluado el tiempo de establecimiento, el tiempo de mantenimiento de la ruta y
el tiempo de recuperación. Los valores obtenidos permiten evaluar qué servicios pueden ser ofrecidos en un entorno con las características de la red
ad hoc descrita en la tesis; donde nodos móviles pueden solicitar o recibir
información en tiempo real (imágenes o alertas) para la supervisión de una
zona industrial.
221
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
Establecimiento de la conexión.
Escogiendo la velocidad mínima simula-
da, 1.38 m/s (velocidad de una persona caminando), un rango de transmisión
radio de 150 m por ser un valor coherente además de ser el valor en el que
las comunicaciones multi-hop son máximas lo que representa un ahorro de
energía, y centrándose en un tiempo de servicio de 3 minutos (tiempo típico
de supervisión de una escena en un proceso), se puede afirmar que en un
entorno poco ruidoso aproximadamente el 70 % de las comunicaciones solicitadas han sido satisfactorias; si el escenario presenta un porcentaje mayor
de problemas a la hora de comunicar, debido a interferencias, obstáculos, etc.
el porcentaje de rutas establecidas disminuye alcanzando aproximadamente
un 55 %; para un entorno muy ruidoso, únicamente el 35 % de las rutas que
se han querido establecer han sido posibles. Esto implica que cada vez que
el usuario ha solicitado el servicio solo cuando la tasa de error es del 1 % se
puede decir que el sistema ha respondido satisfactoriamente, ya que para el
resto de los casos como mucho se ha conseguido establecer comunicación el
50 % de las veces aproximadamente.
Mantenimiento de la conexión.
Junto con el establecimiento de las rutas se
debe considerar el mantenimiento de las mismas, para ello se han estudiado
las rutas perdidas y recuperadas. Con los parámetros antes escogidos, cuando
las rutas establecidas representan el 70 % de las solicitudes, más de la mitad,
el 57 % de estas rutas se pierden (el 19.3 % son pérdidas de rutas single-hop
y el 38.7 % de rutas multi-hop), recuperándose el 64.3 % de las rutas perdidas
(el 12 % se han recuperado mediante rutas single-hop y el 52.3 % mediante
rutas multi-hop). Cuando la tasa de error es del 20 %, el 56.3 % de las rutas
encontradas se han perdido (20.6 % single-hop y 35.7 % multi-hop). Se aprecia
poca diferencia en el comportamiento de las rutas perdidas comparando los
resultados para ambas tasas de error, ya que la tasa de error no afecta en
los modelos diseñados a la pérdida de rutas. Únicamente se han evaluado
pérdidas de ruta debidas al movimiento de los nodos, pero se debe tener en
cuenta que se han perdido más del 50 % de las rutas cuando solo se habían
llegado a establecer la mitad de las rutas solicitadas. De las rutas perdidas, el
222
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
porcentaje de recuperadas es inferior por la tasa de error incorporada, en este
caso se recupera aproximadamente el 50 % de las rutas perdidas (9.49 % rutas
recuperadas single-hop y 41.27 % recuperadas multi-hop). A medida que se
incrementa el ruido en la zona de trabajo el comportamiento es el mismo,
se establecen menos rutas iniciales y de las rutas activas que se pierden se
recupera un porcentaje menor.
Tiempo de establecimiento y recuperación. También afectan al servicio el
tiempo de establecimiento de una ruta y el tiempo de recuperación. El tiempo
de establecimiento, se define como el tiempo que transcurre desde que el
usuario solicita un servicio hasta que este es ofrecido, para ello se ha tenido
que crear una ruta entre origen (usuario que realiza la petición) y destino
(equipo que ofrece el servicio solicitado).
El tiempo de establecimiento será válido o no según se compare con el
tiempo de reacción definido para cada servicio, el caso más restrictivo es el
de los servicios de alerta, donde el tiempo máximo desde que se produce una
alerta y su recepción es típicamente menor a 1 s. Cuando el tiempo de servicio
es de 20 s aproximadamente el 95.5 % de las rutas que se han encontrado lo
han hecho tras el primer intento, esto es, desde la solicitud hasta la recepción
de la información han pasado como máximo 0.4 s en el caso del escenario
evaluado. Con esto, se puede considerar que los servicios de alerta pueden
ser ofrecidos por el protocolo cumpliendo los requisitos temporales.
En el caso de los servicios de media, el plazo máximo de recepción de las
imágenes es, como se ha definido en el capítulo 4, de 3 s. En este caso, los
resultados muestran un porcentaje de rutas encontradas en el primer intervalo del 94.8 %, pero además todas aquellas rutas encontradas tras el primer
intento, intervalo de tiempo entre 0.4 s y 1.2 s, así como las del segundo reintento, intervalo comprendido entre 1.2 s y 2.8 s, también se recibirían dentro
del plazo máximo definido, esto sumaría aproximadamente un 4 % más a las
rutas establecidas finalmente. Por tanto, en el caso de los servicios de media
no es el tiempo de establecimiento el que impide su correcto funcionamiento,
223
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
sino como se ha demostrado anteriormente el tiempo medio de ruta y las
pérdidas de ruta.
En cuanto al tiempo de recuperación, este no está ligado directamente con
el tiempo de reacción a cumplir en cada servicio, sino con el tiempo medio
de vida de la ruta que ya ha sido analizado. Cuanto mayor sea el tiempo de
recuperación menor será el tiempo medio total que la ruta permanece activa.
Y en cuanto a los servicios, si durante una transmisión hay una pérdida de
ruta y esta tarda en recuperarse, el servicio no se visualizará correctamente.
En realidad al servicio que más afectan las pérdidas de ruta es al servicio
de media, ya que las pérdidas provocan cortes en la visualización de las
imágenes y en el streaming de vídeo, pérdidas que son molestas a la hora de
estar visualizando esta información. Para un tiempo de servicio de 3 minutos
el 74 % de las rutas recuperadas lo han hecho antes de los 0.4 s, en cambio
para un tiempo de servicio de 20 s el porcentaje de rutas recuperadas en el
primer intento es superior, 92.3 %.
Tiempo de mantenimiento.
Las pérdidas de ruta y su recuperación influ-
yen claramente en la calidad con la que se ofrece el servicio ya que determinan el tiempo de mantenimiento de la ruta. Teniendo en cuenta la tasa de
movilidad más baja (velocidad=1.38 m/s), un escenario poco ruidoso (tasa
de error=1 %) y los distintos tiempos de servicio utilizados, se puede decir
que para un tiempo de servicio de 20 s la ruta es estable entre el 70 % y el
85 % del tiempo que se visualiza11 la alerta recibida; para un tiempo de servicio de 60 s la ruta tiene un tiempo de vida medio entre el 53 % y el 75 %
del tiempo y para un tiempo de servicio de 180 s la ruta permanece activa
aproximadamente entre el 30 % y el 50 % del tiempo que se está visualizando
el servicio de media.
11 En el caso de las alertas una vez se ha recibido la información, que la ruta se corte durante
la visualización en la pantalla de la misma no afecta al servicio, lo importante es que llegue a
tiempo. En el caso de que el receptor no sea un usuario móvil que visualiza la información en su
dispositivo inalámbrico, sino un controlador que la deba procesar inmediatamente, si se cumple
el deadline es suficiente, independientemente de que después haya problemas de comunicación
por pérdidas de ruta.
224
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
Cuando la movilidad es mayor, el tiempo medio durante el cual la ruta
es estable es todavía inferior, pero hay que recordar que en el entorno que se
está estudiando es la velocidad de 1.38 m/s la que representa la velocidad
a la que los técnicos de la instalación pueden desplazarse, por tanto es la
velocidad considerada a efectos de obtener las conclusiones finales.
En resumen, con los valores por defecto del protocolo AODV es posible
ofrecer correctamente los servicios de alerta que necesitan como mucho unos
20 s para ser controlados, ya que para un rango de transmisión de 150 m la
ruta es estable aproximadamente durante 14 s. Aunque más que el tiempo de
visualización, en las alertas el parámetro que determina si se puede ofrecer
este servicio correctamente es el retardo máximo desde que se genera hasta
que se recibe, en el que interviene el tiempo de establecimiento. Por contra,
los servicios de media se verían muy degradados puesto que el tiempo medio
de vida útil para los tiempos de sesión de 1 y 3 minutos están en algún
caso por debajo del 50 %, representando como se ha visto muchos cortes y
recuperaciones que imposibilitarían visualizar correctamente las imágenes o
el streaming de video a los usuarios de la instalación.
Percepción del usuario. Desde el punto de vista del usuario, los servicios
ofrecidos por el sistema se pueden percibir con una calidad baja o inaceptable; una calidad aceptable, que aunque sea mala o presente problemas en la
recepción se pueda tolerar; y una calidad buena y que permita llevar a cabo
la supervisión visual de los procesos de forma adecuada así como la recepción de las alarmas con el tiempo suficiente para reaccionar o actuar en el
caso de ser necesario.
Teniendo en cuenta que algunos de los parámetros que afectan a la percepción con la que el usuario recibe la información son: el tiempo de espera
desde que solicita el servicio hasta que se le ofrece o tiempo de entrega en
el caso de las alertas, ambos relacionados con el tiempo de establecimiento
de la ruta; y el tiempo durante el cual el servicio se está ofreciendo correctamente con el que está directamente relacionado el tiempo medio de ruta al
225
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
que le afecta el movimiento de los nodos, el tiempo de recuperación de ruta
en caso de pérdida y el ruido medioambiental, se puede clasificar, siempre
teniendo en cuenta que la clasificación es válida para el escenario evaluado,
la percepción con la que el usuario recibe la información.
Para realizar esta clasificación, se ha tomado como referencia una velocidad de los usuarios típica en estos escenarios (v=1.38 m/s) donde el movimiento se ha representado mediante el modelo de movilidad random walk,
un rango de transmisión radio de 150 m, una tasa de error debida al ruido
medioambiental considerada a la hora de establecer y recuperar ruta del 1 %,
o sea una tasa de error baja, un tiempo de sesión de 20 s para la visualización de alertas y 180 s para la visualización de imágenes y streaming. Con
estas consideraciones y los datos obtenidos mediante los modelos formales
se puede decir que:
En el caso de las alertas se cumplen los requerimientos temporales en
cuanto al tiempo de recepción en aquellos casos en los que se ha podido
establecer la comunicación, ya que el 95.5 % de las rutas establecidas lo
hacen tras el primer intento de búsqueda, tiempo menor a 1 segundo
que es el tiempo máximo establecido.
En el caso de las imágenes o streaming de vídeo, también se cumplen
los tiempos de entrega en aquellas rutas que se han podido establecer,
ya que el 94.8 % de las rutas encontradas (el 70 % de las solicitadas) lo
hacen en un tiempo inferior a los 3 segundos establecidos como umbral.
Además del retraso que el tipo de servicio permite, para evaluar la percepción con la que lo recibe el usuario, se van a tener en cuenta las rutas que
se establecen y no se pierden, aquellas que se establecen y se pierden pero
se recuperan rápidamente, las que no se recuperan, etc. Partiendo de los resultados obtenidos con los modelos matemáticos, en la tabla 6.7 se presentan
los valores aproximados de la probabilidad con la que el usuario percibe la
calidad de los servicios (clasificada en tres grupos) respecto a las veces que
ha solicitado tal información.
226
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
Tabla 6.7: Percepción de la información por el usuario en el escenario planteado
Alertas
Inaceptable
Aceptable
Buena
28.2 %(1) +3.84 %(2)
-
0.86 %(3) +10.32 %(4) +56.78 %(5)
67.96 %
32.04 %
-
Imágenes
30 %(1) +14.2 %(2)
6.67 %(3) +18.98 %(4)
44.2 %
25.65 %
30.15 %(5)
Streaming
30 %(1) +14.2 %(2) +6.67 %(3)
18.98 %(4)
30.15 %(5)
50.87 %
(1) Clasificado como inaceptable porque no se ha entregado el servicio.
(2) Rutas que se establecen, se pierden y no se recuperan.
(3) Rutas que se establecen, se pierden y no se recuperan en el primer intento.
(4) Rutas que se establecen, y aunque se pierden se recuperan al instante.
(5) Rutas que se mantienen estables sin pérdidas de enlace.
Se han clasificado como “inaceptables” aquellas alertas que no llegan porque no se ha podido establecer ruta, o los casos en los que la ruta se ha
establecido pero se ha roto sin recuperación y es probable que lo haya hecho
antes de que sea enviada/recibida la información.
No existen alertas clasificadas como “aceptables”, porque en el caso de
este servicio o llega a tiempo o la información no es útil. Una vez la alerta
ha llegado cumpliendo el tiempo de retardo máximo, que la ruta momentáneamente se pierda con posterioridad no influye en el servicio. En el caso
de que la alarma la reciba un controlador, si cumple el deadline realizará el
procesado correspondiente, en el caso de que el usuario suscrito sea un supervisor una vez haya recibido la información ésta se mantendrá en pantalla
independientemente de que la ruta se pierda después. Teniendo en cuenta estos valores se puede decir que la red ad hoc con las características evaluadas
permite en un alto porcentaje ofrecer las alarmas al usuario suscrito.
En el caso de la visualización de imágenes o streaming los resultados obtenidos son los mismos puesto que se ha evaluado este servicio cuando el
tiempo de visualización es de 60 s o 180 s. La diferencia está en la permisivi-
227
i
i
i
i
Capítulo 6. Resultados de los modelos formales y evaluación
dad del servicio, por ejemplo en la recepción de imágenes se pueden permitir
como “aceptables” aquellas que se reciben a través de una ruta que cuando se
pierde no se recupera de forma instantánea, ya que al ser imágenes fijas, una
pérdida de ruta momentánea no influye en como se puedan percibir el resto
de imágenes, ver tabla 6.7. Para ambos casos, únicamente se perciben las imágenes con una calidad “buena” desde el punto de vista del usuario el 30.15 %
de las veces que se solicita el servicio. Además se ha de tener en cuenta que el
tiempo medio durante el cual se muestra la información en pantalla en estos
casos según los resultados, es de 50 s de los 180 s que se mantiene de media
la sesión abierta para su supervisión, por lo que este servicio en general será
visto por el usuario con una calidad pobre por los continuos cortes y el poco
tiempo que permanecerá estable en pantalla.
Si bien el modelado de los protocolos de encaminamiento o de una red
ad hoc permite evaluar matemáticamente su comportamiento facilitando la
obtención de resultados con tan solo modificar los valores de los parámetros o variables que conforman el modelo, además de evaluar distintos aspectos únicamente implementando nuevas subredes, es cierta la necesidad
de contrarrestar y complementar los resultados obtenidos mediante simulación con experimentos reales, ver [MBJ99, MBJ01, TGLN05]. El modelado
por minucioso que sea siempre es una abstracción de la realidad, por tanto
se hace necesario realizar pruebas reales para comprobar el comportamiento
en un escenario real con los problemas e inconvenientes que esto implica,
ver [NGL05, BCDP05]. Por ello, los resultados presentados en este capítulo
pueden ser comparados con los obtenidos en un banco de pruebas real creado para probar el funcionamiento del protocolo de encaminamiento AODV
en una red ad hoc estática. Los resultados obtenidos con el banco de pruebas
complementan a los resultados obtenidos con los modelos diseñados en este
capítulo, el banco de pruebas y sus resultados se muestran en el capítulo 7.
228
i
i
i
i
Capı́tulo
7
Banco de pruebas
Para complementar el estudio del comportamiento de las redes ad hoc
móviles utilizadas para supervisión de procesos en entornos industriales
realizado mediante los modelos formales, se ha implementado un banco
de pruebas para analizar el comportamiento del protocolo AODV.
En este capítulo se presentan pruebas prácticas y reales realizadas en
laboratorio con una red ad hoc estática, lo que ha permitido tener un
entorno controlado en el que evaluar problemas o resultados difíciles de
obtener mediante los modelos formales. De este modo, las pruebas reales
completan y corroboran los resultados obtenidos con los modelos desarrollados.
229
i
i
i
i
Capítulo 7. Banco de pruebas
7.1. Introducción
Aunque siguen siendo escasos, son varios los bancos de prueba implementados en los últimos años para testar redes ad hoc, se han realizado muchos de ellos de forma más intensa durante la última década pero todavía se
aprecia una falta de madurez e integración, por lo que los esfuerzos deberían
dedicarse a mejorar ese aspecto de la investigación.
Son muchos los autores que apuntan la necesidad de crear testbeds para
generalizar el despliegue de las redes ad hoc, pero a su vez entienden que
hay muchos problemas a la hora de su creación. En [TGLN05] se destaca
la necesidad de complementar los trabajos de simulación con experimentos
reales y la importancia de implementar los protocolos de encaminamiento en
sistemas reales, ya que muchas veces la teoría difiere en gran medida de la
práctica. Los autores evalúan de forma exhaustiva los trabajos previos realizados, implementación, integración y experimentación y aunque son muchos los artículos publicados sobre MANET apuntan que no ha habido una
transferencia real de investigación en cuanto a productos a gran escala. Sólo
algunos de los prototipos implementados son accesibles para la comunidad
investigadora, como es el caso del testbed APE (Ad hoc Protocol Evaluation
testbed) descrito en [LLN+ 02]. En ese trabajo se muestran resultados haciendo uso desde 9 hasta 37 nodos. El objetivo es disponer de una plataforma
escalable donde poder reproducir los experimentos, tema a tener en cuenta
en cualquier implementación real. La capacidad de repetitividad se basa en
«coreografías» o escenarios diseñados, siguiendo estos escenarios es posible
repetir los experimentos con cierta precisión. APE ha sido usado para comprobar el comportamiento de las implementaciones reales de los protocolos
de encaminamiento AODV, TORA y DSR. En [NGL05] los mismos autores
tratan a fondo el tema de la repetitividad de las pruebas. Los experimentos
realizados con MANET están sometidos a factores estocásticos como son el
entorno radio y la movilidad de los nodos. Para lograr la repetitividad de las
pruebas estos factores estocásticos deben ser controlados o evaluados para
poder obtener resultados concluyentes. Por ello, los autores presentan una
230
i
i
i
i
Capítulo 7. Banco de pruebas
metodología que permite la repetitividad y describen cómo el uso de esa metodología les ha guiado en el diseño del banco de pruebas APE. Por último,
mediante el uso de APE, muestran los resultados de una comparativa entre
protocolos, demostrando que hay fenómenos que solo pueden ser detectados
en las pruebas reales y que no pueden ser estudiados mediante simulación
(gray zone).
Aunque la posibilidad de realizar varios experimentos reales en las mismas condiciones es complejo y dificulta la creación de testbeds éste no es el
único inconveniente. En [MBJ99, MBJ01] se citan otros como el número de
nodos, la diversidad de nodos es interesante pero cara. La limitación del número de nodos viene dada también por las personas disponibles a participar
en los experimentos, muchas veces personas no involucradas directamente
en las pruebas y a las que se les deben explicar las pruebas, la metodología a
utilizar, el modo de recuperar resultados, etc. Además, una prueba completa
puede durar entre 3 y 4 horas. La monitorización y el análisis si se incluye
movimiento es complicada, en el caso de estos dos trabajos los autores han
utilizado la información proporcionada por un GPS.
Los protocolos evaluados en los testbeds son diversos, DSR en [MBJ99,
MBJ01] donde se realiza un estudio básico de su comportamiento con nodos
móviles situados en un entorno externo. Se fuerza al protocolo a adaptarse al entorno y se comprueba el efecto de los cambios de temperatura, el
movimiento de los coches y los transeúntes y la presencia de edificios, en
definitiva elementos que afectan a la propagación de las señales de radio.
En [GWW04] se evalúa cómo afecta al throughput de una transmisión TCP
utilizando el protocolo de encaminamiento AODV la movilidad de los nodos,
el impacto del tamaño de la red y el número de saltos que debe atravesar la
información en la red hasta alcanzar el destino. En la segunda fase del estudio se modifican algunos parámetros del AODV para estudiar cómo afectan
estos cambios al resultado. En [LUB07] se muestra una comparativa entre los
protocolos AODV y OLSR, se hace uso del AODV-UU y OLSR-UU, ambos
implementados por la Universidad de Uppsala, versiones muy utilizadas por
la comunidad investigadora.
231
i
i
i
i
Capítulo 7. Banco de pruebas
Un objetivo de esta tesis es la creación de un banco de pruebas que complemente los modelos formales desarrollados donde experimentar y estudiar
bajo qué condiciones los servicios requeridos por el usuario en los entornos industriales a evaluar donde las interferencias son frecuentes pueden ser
ofrecidos por las redes ad hoc y el protocolo de encaminamiento utilizado.
La finalidad por tanto de este capítulo es conocer el funcionamiento y rendimiento de un protocolo de encaminamiento reactivo: el protocolo AODV, y
analizar la viabilidad de su aplicación en tareas de tiempo real. Para ello se
presentan una serie de pruebas en laboratorio (pruebas de interior) y en entornos estáticos, obtenidas gracias a la creación de un banco de pruebas con
el que se han realizado mediciones reales del funcionamiento del protocolo.
Se van a estudiar las tablas de encaminamiento y los cambios producidos
en ellas antes y durante la transmisión de datos, además de los tiempos de
establecimiento de ruta y de recuperación y las pérdidas de paquetes. Concretamente se va a probar el funcionamiento para distintos servicios como
streaming de vídeo y transferencia de ficheros.
Diversos estudios realizados por Borgia y otros, ver [BCDP05, BCDP05,
Bor05, BCD+ 06, BD07], han demostrado resultados pobres del protocolo de
encaminamiento AODV en redes con más de tres saltos, generando a menudo
pérdidas de paquetes significativas (llegando a veces incluso al 100 %) y una
latencia elevada. El tráfico no es fluido y se generan largos tiempos de espera,
así como considerables reducciones en la tasa de transferencia. Pero, ¿qué está
causando estos problemas, es posible mejorar el rendimiento del protocolo en
estos aspectos?
Gracias al banco de pruebas se van a evaluar los problemas que puedan surgir en una red basada en el estándar IEEE 802.11b y AODV a través
de pruebas experimentales, así como las causas de estos problemas y sus
posibles soluciones. Se analizarán los parámetros que influyen en la viabilidad de las aplicaciones a evaluar (streaming y transferencia de ficheros) y se
ofrecerán soluciones o mejoras del protocolo AODV. Los resultados de estas
pruebas se podrán comparar con los resultados obtenidos mediante los mo-
232
i
i
i
i
Capítulo 7. Banco de pruebas
delos formales. Si bien es cierto, que las pruebas reales se verán afectadas por
parámetros o problemas difícilmente controlables y a tener en cuenta en un
modelo matemático, como es el ruido en el medio, la climatología...
El banco de pruebas permite darle a este trabajo de tesis un enfoque más
práctico y realizar mediciones que puedan ser comparables con los resultados obtenidos en los modelos formales, por lo que el escenario de estas
pruebas deberá tener similitudes con el escenario usado para los modelos.
Además, las pruebas permiten realizar medidas donde se vean involucrados
parámetros y comportamientos difíciles de modelar.
Los valores utilizados en este estudio para los distintos parámetros (número de nodos, tamaño del área, rango de cobertura radio...) guardan relación con los utilizados en otros testbeds. En [MBJ99, MBJ01] se ha creado un
testbed con 8 nodos (5 móviles y 2 fijos) en un área de 700x300m2 , la velocidad de los nodos se ha variado entre 25 y 40 Km/h y el rango de cobertura es
aproximadamente de 250 m. Comparando estos valores con los escogidos para los modelos formales donde se han utilizado 6 nodos móviles, en un área
de 250x300m2 , una velocidad de los nodos entre 1.38 m/s y 20 m/s y un rango
de cobertura entre 100-250 m se puede afirmar que los valores escogidos han
sido razonables.
En el caso del testbed que se ha implementado y se muestra en este capítulo, los nodos son estáticos, por tanto no es comparable la velocidad ni
el rango de transmisión radio, pero sí el número de nodos utilizado, 6. Este
valor es comparable también al utilizado en [GWW04], donde se usaron 5
nodos (ordenadores portátiles). En [BLG01] se implementó un testbed con 6
nodos móviles al igual que en [WMF02], 8 en [BCDP05], entre 5 y 12 nodos en
[Bor05] y en [BLG02] se realizaron pruebas con 6 nodos (con y sin movilidad)
y 1 workstation.
233
i
i
i
i
Capítulo 7. Banco de pruebas
7.2. Descripción del banco de pruebas
7.2.1.
Implementación del protocolo AODV utilizada
En la web oficial del protocolo AODV, [AODa], alojada en la Universidad
de Santa Bárbara (California) se ofrece un listado de implementaciones reconocidas por los desarrolladores del protocolo, así como comentarios sobre
recomendaciones e interoperabilidad de protocolos:
KERNEL-AODV NIST Implementation, RFC compliant (recommended
interoperability tested).
AODV-UU Uppsala University Implementation, RFC compliant (recommended interoperability tested).
UoBWinAODV Windows Implementation.
AODV-UIUC Implementation.
AODV-UCSB Implementation, draft v6 (interoperability tested), no longer recommended.
UoB-JAdhoc AODV Implementation, RFC 3561.
AODV For IPv6.
HUT AODV For IPv6.
MAODV-UMD, Multicast Extensions of AODV.
Mad-hoc Implementation (not recommended - no longer supported).
TinyAODV for TinyOS.
Simulation and partial implementation of AODV for IPv6 (mostly userspace python).
234
i
i
i
i
Capítulo 7. Banco de pruebas
De la lista, actualmente sólo hay dos implementaciones (KERNEL-AODV
NIST y AODV-UU) que están recomendadas por los desarrolladores del protocolo, así como probada su interoperabilidad. Este punto es muy importante,
puesto que es necesario que el protocolo a utilizar sea compatible con la norma y pueda utilizarse con otras implementaciones sin provocar problemas.
Entre ambas se ha escogido la implementación AODV-UU, que pertenece a
la Universidad de Uppsala por las siguientes razones:
1. Es la más actualizada, su última versión es de 2007 (mientras que KERNEL-AODV NIST se liberó en 2004).
2. Se aporta el código fuente en c, y está preparado para sistemas Linux
con kernel 2.4 y 2.6, y el simulador ns-2.
3. Está preparado para compilación cruzada en dispositivos basados en
ARM/Mips como el iPAQ, Zaurus y el conocido y versátil router modelo WRT54G, aumentando el número de nodos de la red de forma
económica.
4. Soporte para subredes, múltiples puertas de enlace y tunnelling.
5. Implementado como un demonio de espacio de usuario con componente de kernel.
6. Dispone de una implementación para IPv6.
Además, esta implementación ha sido utilizada en muchos trabajos de investigación donde se indica como el más eficiente de su clase, ver [LUB07,
BCDP05, Bor05, GWW04, GCM+ 05, CBR02], tanto por estabilidad como por
tiempos de resolución y reacción. Por ello, el protocolo utilizado ha sido el
AODV-UU en su versión 0.9.5 del 23-07-2007 [AODb]. Ademas, los autores
de esta implementación dan acceso al código fuente para realizar modificaciones, lo que facilita la modificación de parámetros en el caso de que se
considerase necesario.
235
i
i
i
i
Capítulo 7. Banco de pruebas
7.2.2.
Equipamiento y software
A continuación se describe el equipamiento utilizado para crear el testbed
así como el software y las herramientas utilizadas más importantes. Se ha utilizado un Switch D-Link 8 puertos 10-100 Mbps, 3 PCs de sobremesa (clónicos
con procesador Intel Pentium 4 CPU 3GHz doble núcleo, tarjeta gráfica ATI
Radeon X300, 1GB de memoria RAM, tarjeta wireless PCI DLINK_520+) y 3
ordenadores portátiles (2 x DELL Inspiron 510 m, procesador Intel Pentium
M CPU 1400 MHz, tarjeta gráfica Intel Corporation 82852/855GM, 512 MB
de memoria RAM, tarjeta wireless Broadcom Corporation BCM4306 rev02 y
1 x INVES Duna 3424, procesador Intel Pentium M CPU 1800 MHz, tarjeta
gráfica Intel Corporation 82852/855 GM, 512 MB de memoria RAM, tarjeta
wireless Intel PRO/Wireless 2200BG rev05), además del cableado necesario.
Para que los equipos estuviesen sincronizados y trabajasen sobre una misma base temporal, se ha utilizado NTP (Network Time Protocol). Este es un
protocolo de Internet utilizado para sincronizar relojes de sistemas informáticos a través del enrutado de paquetes en redes con latencia variable (RFC
778, RFC 891, RFC 956, RFC 958 y RFC 1305). NTP utiliza UDP (User Datagram Protocol) en la capa de transporte con el puerto 123. Está diseñado
para resistir los efectos de la latencia variable y en su actual versión (NTPv4)
puede mantenerse sincronizado con una diferencia máxima de 10 milisegundos (1/100 segundos) a través de Internet, y puede llegar a acercarse hasta
200 microsegundos (1/5000 segundos) o más en redes de área local sobre
condiciones ideales. El modo de operar ha sido el siguiente, un PC se ha conectado a Internet y su reloj se ha sincronizado con un servidor de tiempo
atómico. Este mismo equipo se utiliza como servidor de tiempo para el resto
de los equipos de la red local de pruebas. El resto de equipos son clientes
NTP, de forma que solicitan una sincronización de sus relojes justo antes de
comenzar las pruebas. Aunque sobre Internet este protocolo ofrece una precisión de 1/100 segundos (10 ms), sobre una red de área local se alcanzan
precisiones de 1/5000 segundos (200µs), por lo que no será necesario utilizar
protocolos de más exactitud como PTP (Precision Time Protocol, IEEE 1588-
236
i
i
i
i
Capítulo 7. Banco de pruebas
2002), que alcanza una precisión en el rango de nanosegundos. Un punto a
tener en cuenta es la plataforma sobre la que se realizará esta operación. No
sería correcto sincronizar los equipos directamente sobre la red wireless ad
hoc que se desea estudiar, puesto que precisamente se quiere comprobar si
existen retardos en las transmisiones, ya que se estaría utilizando la red experimental que se está testando para preparar el propio escenario. Por lo tanto,
se ha utilizado una red cableada Ethernet para conectar todos los equipos a
un switch.
Para poder consultar la MIB (Management Information Base) del sistema
y comprobar datos importantes para la evaluación del protocolo como el número de datagramas reenviados por otra ruta porque no se es el destinatario
final, datagramas descartados por no encontrar ruta, descartados por errores
con la dirección o entregados a la capa superior, se ha utilizado SNMP (Simple Network Management Protocol). Cada uno de los registros de esta base
de datos se direcciona mediante un OID (Object IDentifier).
Al tener que realizar pruebas repetitivas por comodidad se han controlado todos los equipos desde una sola estación, para ello se ha utilizado SSH
(Secure SHell) para acceder de forma segura.
Para monitorizar la conexión inalámbrica se ha utilizado la herramienta
WAVEMON, basada en niveles de radio, obteniendo parámetros como calidad y niveles de señal además de datos importantes como la frecuencia y la
sensibilidad de la señal, modo inalámbrico, dirección MAC, e IP que tenga la
interfaz que se esté utilizando.
Otra herramienta utilizada es VLC (VideoLAN Client, ahora VLC media
player), este es un reproductor multimedia portable que soporta una gran
cantidad de codecs de audio y vídeo, así como diversos protocolos de streaming. Funciona además como servidor de videostreaming y como cliente en
redes unicast y multicast, y permite recodificar el vídeo en tiempo real para
su envío.
A la hora de evaluar las tramas se ha utilizado Wireshark. Este sniffer es
la evolución del Ethereal, y se considera uno de los mejores en la actualidad.
237
i
i
i
i
Capítulo 7. Banco de pruebas
Utiliza una base de tiempos relativa al inicio de la aplicación, de modo que
la primera trama capturada se inicia en 00:00:00. Para las pruebas realizadas,
se ha optado por utilizar una base de tiempos común entre equipos (NTP) y
aplicaciones, por lo que se ha modificado esta característica y muestreado las
tramas con la misma base de tiempos que el PC.
El S.O. utilizado en los equipos del testbed ha sido Linux (distribución
Ubuntu 7.10).
7.3. Pruebas realizadas
Como en todas las pruebas posteriores, la ausencia de visibilidad entre
nodos se ha simulado mediante el uso de reglas iptables, ver [Ipt], bloqueando las direcciones MAC de los dispositivos. Este enfoque es distinto al de
un escenario de campo, donde la señal sufre una degradación y una pérdida progresiva de potencia. Sin embargo, en este caso no se pretende medir
este efecto, sino realizar pruebas en un entorno controlable. Este método es
muy recurrido cuando se trabaja con nodos estáticos donde todos están muy
cerca entre sí. Por ejemplo, en [LUB07] se realiza una comparativa entre los
protocolos AODV y OLSR, el escenario está formado por nodos inalámbricos
estáticos en modo ad hoc conectados mediante el estándar IEEE 802.11b. En
[GCM+ 05] se evalúa el protocolo AODV y la conectividad se controla mediante el uso de iptables, al igual que en [CBR02] en aquellos experimentos
realizados en laboratorio. La habilitación o no de las conexiones inalámbricas
se lleva a cabo descartando los frames de acuerdo a su dirección hardware
en la capa MAC. Aunque éste sea un buen sistema para simular la imposibilidad de dos vecinos de formar un enlace, no simula la distancia real entre
nodos, por lo que son inevitables las colisiones radio por el uso compartido
del medio.
La Fig. 7.1(a) muestra un escenario con falta de visibilidad por distancia
(y no por filtro MAC). El nodo B puede sufrir colisiones en su espacio con
el nodo A y el nodo C; sin embargo, el nodo D está alejado y no tendría
238
i
i
i
i
Capítulo 7. Banco de pruebas
(a)
(b)
Figura 7.1: Visibilidad entre los nodos y rango de cobertura radio
ninguna influencia. En la Fig. 7.1(b), sin embargo, se muestra el escenario
del laboratorio. La visibilidad entre nodos queda limitada por el filtro MAC,
pero aún así la señal de radio de todos los nodos comparte el mismo espacio,
por lo que la probabilidad de colisión es mucho mayor. De todas maneras,
no se considera una desventaja para estas pruebas ya que, de esta forma, se
simula un escenario más real en el que hay otros nodos ajenos a la comunicación introduciendo ruido, y por tanto interfiriendo de igual forma en las
comunicaciones.
239
i
i
i
i
Capítulo 7. Banco de pruebas
7.3.1.
Influencia del número de saltos en la comunicación
Aunque AODV está diseñado para el encaminamiento a través de cientos
de nodos, las pruebas experimentales demuestran que en realidad hay un
límite muy inferior en cuanto al número de saltos, ver [TGLN05], debido no
al protocolo de encaminamiento, sino al protocolo de acceso al medio. En
primer lugar, la comunicación multi-salto significa que los datos deben ser
transmitidos entre pares de nodos intermedios, y cada salto representa una
lucha por el acceso al medio y una transmisión completa entre dos nodos,
lo que significa que hay un período en el que el resto de los nodos dentro
de su radio de transmisión no pueden transmitir. Esto reduce drásticamente
el rendimiento con cada nuevo salto en la comunicación. En segundo lugar,
la transmisión se realiza sobre un medio compartido, lo que significa una
alta probabilidad de pérdidas. Cada nuevo salto del paquete transmitido aumenta las posibilidades de que se pierda, por lo que en redes muy largas,
hay una gran posibilidad de que el paquete sufra una colisión y necesite ser
reenviado.
En este test se estudia la influencia que ejerce el número de saltos de la
red para llegar a un destino en la tasa de transferencia, la tasa de errores y la
latencia. Para ello, se han configurado las tarjetas a una tasa de transmisión
de 2Mbps, y se ha comprobado la velocidad por pares, de forma que todos
los nodos tengan el mismo ancho de banda de trabajo.
Las pruebas de 1 salto son aquellas donde la comunicación se realiza entre
vecinos, estas son las más efectivas, puesto que no utilizan intermediarios ni
necesitan enrutamiento para alcanzarse. Además, el paquete solo sale 1 vez
al medio para alcanzar su destino, teniendo una probabilidad de colisión
mucho menor que en escenarios con más saltos. Esto genera una latencia
mínima, por lo que la tasa efectiva de datos es la más alta. En el testbed
la latencia media obtenida con el envío de 150 pings entre los dos nodos,
es de 2,298 ms, y no se ha observado pérdida de paquetes. Además, para
comprobar la eficiencia del enlace en la comunicación entre estos dos nodos,
se ha utilizado la transferencia de un archivo a través del protocolo FTP.
240
i
i
i
i
Capítulo 7. Banco de pruebas
El tráfico FTP durante 120 segundos ha sido de 25.005.700 bytes (según la
captura de Wireshark), de los que el cliente ha tomado 21.782.264 bytes como
correctos (según cliente FTP), lo que corresponde a una tasa de eficiencia del
87,11 %. Añadiendo la carga del protocolo, se obtiene un 93,11 %, por lo que
se deduce que la tasa de errores en esta configuración es del 6,89 %.
Cuando la ruta está formada por 3 nodos, la información debe realizar 2
saltos, aquí es necesario el mecanismo de búsqueda de rutas de AODV, así
como un enrutamiento por el nodo intermedio. Además, el tener más nodos
generando paquetes aumenta el riesgo de colisión sustancialmente. Se podrá
estudiar tanto la necesidad de enrutamiento y generación/pérdida de rutas
como la presencia de ruido y colisiones en el medio que producen un descenso de la efectividad del enlace respecto a la configuración anterior de 1
salto. Para estas pruebas se ha utilizado la herramienta ping con intervalos
de 1 segundo y 150 repeticiones, obteniéndose una latencia media de 5,107
ms, con una pérdida del 1 % de los paquetes. El tráfico FTP durante 120 segundos ha sido de 17.873.742 bytes (menor que en la prueba anterior debido
al aumento de retardo y errores, se ha tenido que disminuir la ventana, y consecuentemente la velocidad de transmisión), de los que el cliente ha tomado
13.680.704 bytes como correctos, lo que corresponde a una tasa de eficiencia
del 76,54 %. Añadiendo la carga del protocolo, se obtiene un 82,54 %, por lo
que se deduce que la tasa de errores en esta configuración es del 17,46 %.
En las pruebas de 3 saltos se ha utilizado también la herramienta ping
con intervalos de 1 segundo y 150 repeticiones obteniéndose una latencia
media que se sitúa en 8,291 ms, con una pérdida del 4 % de los paquetes. El
tráfico FTP durante los 120 segundos ha sido de 12.918.180 bytes (según la
captura de Wireshark), de los que el cliente ha tomado 10.441.528 bytes como
correctos, lo que corresponde a una tasa de eficiencia del 80,83 %. Añadiendo
la carga del protocolo se obtiene un 86,83 %, por lo que se deduce que la tasa
de errores en esta configuración es del 13,17 %.
En las pruebas con rutas de 4 saltos la latencia media obtenida ha sido de
11,512 ms, con una pérdida del 10 % de los paquetes. El tráfico FTP durante
241
i
i
i
i
Capítulo 7. Banco de pruebas
Tabla 7.1: Latencia (ms) según el número de saltos
Mínima
Media
Máxima
1 salto
2,158
2,298
5,061
2 saltos
4,449
5,107
8,735
3 saltos
6,485
8,291
47,505
4 saltos
7,838
11,512
77,718
5 saltos
9,281
15,422
110,929
120 segundos ha sido de 5.037.166 bytes (según la captura de Wireshark), de
los que el cliente ha tomado 4.351.240 bytes como correctos, lo que corresponde a una tasa de eficiencia del 86,38 %. Añadiendo la carga del protocolo
se obtiene un 92,38 %, por lo que se deduce que la tasa de errores en esta
configuración es del 7,62 %.
Por último las pruebas con 5 saltos han mostrado una latencia de 15,422
ms, con una pérdida del 16 % de los paquetes. La tasa de eficiencia se sitúa
en el 90,09 % y la tasa de errores en esta configuración es del 9,91 %.
En relación con la latencia, los valores que realmente interesan son el mínimo (puesto que representa el menor tiempo posible en llegar de origen a
destino) y el medio (que representa el valor medio esperado para que cualquier paquete llegue a destino). Sin embargo, el máximo representa a paquetes que han tenido problemas puntuales en alcanzar el destino, y no aportan
ninguna información estadística importante. La latencia media aumenta de
forma lineal con el aumento de saltos. De esta forma, cada nodo añadido
aumenta la latencia de extremo a extremo en 3 ms aproximadamente.
Cada vez que un paquete es lanzado al medio por un nodo, tiene una
probabilidad de colisión. En el test de 5 saltos, hay 6 nodos emitiendo paquetes al medio de forma continua (generando por lo tanto ruido) y, además,
para que cada paquete enviado por el origen llegue de forma exitosa a su
destino, debe pasar por los 5 saltos al medio (cada uno con su probabilidad
de colisión, que se suma a la del salto anterior). La probabilidad de que sufra
242
i
i
i
i
Capítulo 7. Banco de pruebas
120
Línea de tendencia
Resultados experimentales
100
Tasa error (%)
80
60
40
20
0
0
1
2
3
4
5
6
Nº saltos
7
8
9
10
11
12
Figura 7.2: Tasa de error experimental y línea de tendencia obtenidas con el envío de pings durante 2 minutos
una colisión o interferencia en alguno de estos saltos es por tanto muy alta.
Según los resultados obtenidos en los distintos tests se puede decir que en
aplicaciones sin control de errores (por ejemplo ICMP a través de la herramienta ping) cada salto añadido aumenta exponencialmente la probabilidad
de error, llegando a un punto en el que la probabilidad de que el paquete sufra una interferencia en algún salto es prácticamente absoluta, ver Fig. 7.2. En
la gráfica además de los datos obtenidos experimentalmente en las pruebas
se ha representado la tendencia para ver el comportamiento según el número de saltos y se observa como a partir de los 12 saltos se perderían casi la
totalidad de los pings enviados.
Por contra, en la aplicación de FTP la tasa de errores oscila entre el 5 %
y el 17 % cuando varía el número de saltos, ver Fig. 7.3(a). Las colisiones
provocan que los paquetes no lleguen dentro del tiempo esperado al destino,
243
i
i
i
i
Capítulo 7. Banco de pruebas
18
1.5
Línea de tendencia
Resultados experimentales
16
Resultados experimentales
Línea de tendencia
14
Throughput (Kbps)
Tasa error (%)
12
10
8
6
1
0.5
4
2
0
1
2
3
4
5
6
7
Nº saltos
8
(a) Tasa de error
9
10
11
12
0
1
2
3
4
5
6
7
Nº saltos
8
9
10
11
12
(b) Throughput
Figura 7.3: Tasa de error y throughput durante una transferencia FTP
por lo que la capa TCP disminuye el tamaño de ventana hasta un punto en
que la comunicación sea fluida. Sin embargo, aunque gracias a ello la tasa
de errores no aumente con el número de saltos, sí influye directamente en
la velocidad de transferencia según la ecuación 7.1. De esta forma la tasa de
transferencia y por tanto el throughput desciende a medida que aumenta el
número de saltos, ver Fig. 7.3(b).
Max. Data Trans f er rate = Window size/RTT
(7.1)
Como conclusión, el aumento de nodos en una red ad hoc aumenta la latencia de forma lineal en unos 3 ms, pero el diámetro de la red queda limitado
por el aumento exponencial en la probabilidad de pérdida de un paquete en
alguno de los saltos a destino. La velocidad de transferencia disminuye drásticamente en aplicaciones TCP debido al ajuste de la transmisión para reducir
la tasa de errores. En las siguientes pruebas, se evaluará el comportamiento
en redes de diámetro comprendido entre 2 y 6 nodos.
244
i
i
i
i
Capítulo 7. Banco de pruebas
7.3.2.
Generación y eliminación de rutas en topologías de un
solo camino
En este test se ha estudiado la puesta en marcha del protocolo, el tiempo de búsqueda y adición de vecinos, el tiempo de descubrimiento de rutas
(tiempo que tarda el nodo origen en hallar una ruta válida a un nodo destino
alcanzable pero no visible), su permanencia en las tablas internas y la política
de eliminación de rutas. Para ello, se ha utilizado un entorno de pruebas que
representa una red con una longitud de 2, 3 y 4 saltos. Las pruebas realizadas tienen una precisión de 1 ms, aceptable para aplicaciones que necesitan
calidad de servicio.
Tras las pruebas se ha observado que inicialmente los nodos están con
el servicio wireless activo pero sin estar asociado a ninguna red, por lo que
no hay ningún vecino en la tabla de rutas. Al arrancar el protocolo en todos
los nodos, comienzan a emitirse los paquetes HELLO para descubrir a sus
vecinos. De forma predeterminada, desde que se ejecuta el protocolo hasta
que se emite el primer paquete de HELLO por la interfaz transcurren 15 segundos. Si al ejecutar el protocolo AODV ya hay nodos visibles emitiendo
paquetes de HELLO1 , el nodo los recibe, procesa y añade a su tabla de rutas
de forma instantánea. Si todos los nodos son visibles se tendrá una red en
la que todos emitirán paquetes HELLO de forma periódica (según las pruebas realizadas, 1 paquete por segundo, que se corresponde con el parámetro
HELLO_INTERVAL= 1000 ms). Inicialmente aunque los nodos sean visibles
entre sí no aparece ninguna ruta entre ellos. AODV es un protocolo reactivo,
de forma que en la tabla de rutas sólo aparecen aquellos equipos con los que
se mantiene un enlace directo, es decir, los vecinos de primer grado, con los
que se utiliza el sistema de HELLO explicado anteriormente; y los equipos
lejanos con los que se mantiene una comunicación activa. Toda ruta que deba
1 Esta
es una diferencia muy importante respecto a la RFC del AODV, donde se indica que
sólo aquellos nodos asociados a una ruta activa pueden emitir mensajes de HELLO, sin embargo la modificación de Uppsala obliga a que todos los nodos de la red emitan estos mensajes,
manteniendo siempre en sus tablas de rutas al menos a sus vecinos.
245
i
i
i
i
Capítulo 7. Banco de pruebas
Tabla 7.2: Generación de rutas con 2 saltos
Envío
Recep.
Inserción
Paquete
Inserción
Tpo. total
RREQ
RREP
tabla rutas
ruta
ruta
descubrimiento
1
42,448418
42,455918
42,459000
0,007500
0,003082
0,010582
2
56,098292
56,108681
56,113000
0,010389
0,004319
0,014708
3
24,656533
24,665692
24,668000
0,009159
0,002308
0,011467
4
2,744073
2,751937
2,755000
0,007864
0,003063
0,010927
5
52,464738
52,472615
52,475000
0,007877
0,002385
0,010262
Promedio
0,008558
0,003031
0,011589
Máximo
0,010389
0,004319
0,014708
Mínimo
0,007500
0,002308
0,010262
ser descubierta y trazada hacia un equipo más alejado sólo se desencadenará
cuando se requiera enviar un paquete a dicho equipo, y tras mantener esta
ruta un cierto tiempo, se desechará de nuevo. Una vez establecida una ruta
esta desaparece 15 segundos después del vencimiento del timer activado durante el último uso (parámetro que equivale al DELETE_PERIOD de la RFC).
En las pruebas se ha observado como pasados los 15 segundos la entrada de
la ruta al nodo era eliminada.
Para evaluar el tiempo de generación de rutas en primer lugar se ha evaluado una ruta de 2 saltos. En este caso el test se ha repetido 5 veces. En
la tabla 7.2 en la columna «Paquete ruta» se ha representado el tiempo que
transcurre entre la emisión de un RREQ (Route Request) por el origen y la
recepción del RREP (Route Reply). En «Inserción ruta» se ha calculado el
tiempo que tarda el nodo en incorporar la ruta a su tabla de encaminamiento
desde que recibe el paquete de respuesta RREP. Con «Tiempo total descubrimiento» se muestra la suma de ambos valores, que representa el tiempo
total que tarda el nodo en obtener una ruta válida a un destino. Con estos
resultados se concluye que se tarda una media de 11 ms en encontrar una
ruta válida, siendo 14 ms el peor caso y 10 ms el mejor.
246
i
i
i
i
Capítulo 7. Banco de pruebas
Tabla 7.3: Generación de rutas con 3 saltos
Envío
Recep.
Inserción
Paquete
Inserción
Tpo. total
RREQ
RREP
tabla rutas
ruta
ruta
descubrimiento
1
18,537254
18,548841
18,552000
0,011587
0,003159
0,014746
2
52,551886
52,568613
52,571000
0,016727
0,002387
0,019114
3
9,511190
9,534579
9,538000
0,023389
0,003421
0,026810
4
57,344202
57,354275
57,357000
0,010073
0,002725
0,012798
5
1,629256
1,643313
1,646000
0,014057
0,002687
0,016744
Promedio
0,015167
0,002876
0,018042
Máximo
0,023389
0,003421
0,026810
Mínimo
0,010073
0,002387
0,012798
El siguiente paso es modificar la topología para conseguir una ruta de 4
nodos y por tanto con 3 saltos. Los resultados se presentan en la tabla 7.3,
donde se muestra que el tiempo medio para encontrar una ruta válida es de
18 ms (7ms más que en la topología anterior), siendo 26 ms el peor caso y 12
ms en el mejor de los casos.
Para la topología de 4 saltos se ha realizado un número superior de repeticiones. La causa es el tiempo de respuesta medio, éste ha sufrido un incremento considerable por lo que se ha considerado la necesidad de realizar
más pruebas para estudiar este comportamiento con mayor exactitud. Se ha
pasado de los 18 ms en la topología de 3 saltos a 517 ms en la de 4 saltos. Estos valores son comparables a los obtenidos por Gupta en [GWW04], donde
la media con 2 saltos eran 7 ms, 10 ms para 3 saltos y 331 para 4 saltos. En el
caso de nuestro testbed, se observan dos grupos claros de valores: pruebas en
las que la ruta se ha encontrado en aproximadamente en 340 ms, y pruebas
en las que ha tardado unos 820 ms. Además, hay tres situaciones especiales
que dan resultados diferentes al resto de las pruebas, y sitúan el tiempo de
resolución en 1475 ms, 2020 ms y 2031 ms. Observando la tabla de resultados
7.4, se comprueba que el primer grupo pertenece a las pruebas en las que el
protocolo ha necesitado 2 paquetes RREQ para recibir respuesta, y el segun-
247
i
i
i
i
Capítulo 7. Banco de pruebas
do grupo corresponde a las pruebas en las que se han necesitado 3 paquetes
RREQ. Este es un cambio importante respecto a las pruebas con 2 y 3 saltos,
donde el protocolo enviaba un único RREQ y recibía de forma inmediata una
respuesta válida, por lo que es necesario un estudio más exhaustivo sobre el
comportamiento del protocolo en estos casos.
Tabla 7.4: Generación de rutas con 4 saltos
Envío
No RREQ
Recep.
Inserción
Paquete
Inserción
Tpo. total
RREQ
enviados
RREP
tabla rutas
ruta
ruta
descubrimiento
1
42,344
2
42,683
42,685
0,338
0,002
0,341
2
35,751
2
36,102
36,105
0,351
0,003
0,354
3
20,648
3
21,469
21,471
0,821
0,002
0,823
4
14,219
2
14,554
14,557
0,335
0,003
0,338
5
46,551
2
46,880
46,892
0,329
0,012
0,341
6
47,380
2
47,727
47,730
0,347
0,003
0,350
7
26,236
2
26,577
26,579
0,341
0,002
0,343
8
3,588
3
4,405
4,407
0,817
0,002
0,819
9
11,524
2
11,869
11,872
0,345
0,003
0,348
10
37,483
2
37,821
37,824
0,338
0,003
0,341
11
22,699
2
23,041
23,044
0,342
0,003
0,345
12
54,321
2
54,658
54,661
0,337
0,003
0,340
13
39,502
3
40,308
40,311
0,807
0,003
0,809
14
26,401
2
26,737
26,739
0,336
0,002
0,338
15
34,483
3
36,501
36,503
2,018
0,002
2,020
16
50,294
2
50,638
50,640
0,344
0,002
0,346
17
51,942
2
52,283
52,285
0,341
0,002
0,343
18
32,766
2
33,107
33,109
0,340
0,002
0,343
19
7,500
2
7,838
7,840
0,338
0,002
0,340
20
33,142
2
33,478
33,481
0,336
0,003
0,339
21
34,274
2
34,622
34,624
0,348
0,002
0,350
22
15,632
3
16,457
16,461
0,825
0,004
0,829
Continuación . . .
248
i
i
i
i
Capítulo 7. Banco de pruebas
Envío
No RREQ
Recep.
Inserción
Paquete
Inserción
Tpo. total
RREQ
enviados
RREP
tabla rutas
ruta
ruta
descubrimiento
23
28,072
2
28,410
28,412
0,338
0,002
0,340
24
56,899
2
57,245
57,247
0,347
0,002
0,348
25
13,711
2
14,054
14,057
0,343
0,003
0,346
26
22,848
2
23,180
23,183
0,332
0,003
0,335
27
43,653
4
45,125
45,128
1,472
0,003
1,475
28
56,234
2
56,599
56,602
0,365
0,003
0,368
29
23,089
2
23,455
23,458
0,366
0,003
0,369
30
0,505
2
0,842
0,845
0,337
0,003
0,340
31
34,682
2
35,017
35,019
0,335
0,002
0,337
32
15,979
3
16,793
16,795
0,814
0,002
0,816
33
11,544
2
11,881
11,884
0,337
0,003
0,340
34
9,205
2
9,538
9,540
0,333
0,002
0,335
35
0,367
2
0,762
0,765
0,395
0,003
0,398
36
53,368
2
53,709
53,712
0,341
0,003
0,344
37
31,342
2
31,678
31,681
0,336
0,003
0,339
38
44,861
3
46,889
46,892
2,028
0,003
2,031
39
14,666
2
15,011
15,014
0,345
0,003
0,348
40
29,677
2
30,010
30,013
0,334
0,003
0,336
Promedio
0,514
0,003
0,517
Máximo
2,028
0,012
2,031
Mínimo
0,329
0,002
0,335
Mientras que en las rutas de 2 y 3 saltos era suficiente con el envío de un
paquete RREQ, por lo contrario en la tabla 7.4 se muestra que como mínimo
es necesario el envío de 2 mensajes de solicitud de ruta e incluso en algunas
ocasiones son necesarios 3 ó 4 paquetes RREQ . El hecho de necesitar como
mínimo 2 solicitudes es debido al mecanismo que tiene el protocolo AODV
para evitar la inundación de la red cuando la distancia al destino o a un nodo
que lo conozca es pequeña, el aumento progresivo del TTL, ver Fig. 7.4. El
249
i
i
i
i
Capítulo 7. Banco de pruebas
primer mensaje RREQ se genera con un valor de 2 en el campo TTL de la
cabecera IP, que coincide con el valor del parámetro «TTL_START_HELLO»,
equivalente al parámetro «TTL_START» especificado en la RFC, pero nótese que en el caso del AODV-UU el valor inicial del TTL es 2 cuando en la
RFC2 el valor especificado es 1. Si durante los reenvíos del RREQ este valor
llega a 0 y el paquete no ha alcanzado a un nodo que conozca el destino, se
desecha sin avisar al origen3 . El nodo origen, por otro lado, espera un tiempo
predefinido «RING_TRAVERSAL_TIME»4 . Si no llega ninguna contestación
(RREP) durante ese tiempo, envía un segundo RREQ con los mismos parámetros que el anterior pero con un TTL incrementado5 , aumenta el timer de
espera, y espera ese nuevo tiempo a recibir una respuesta6 . Este proceso se
repite hasta que el valor del TTL en la cabecera IP del paquete RREQ alcance
el valor límite (TTL_THRESHOLD = 7 por defecto), en ese caso, el resto de
paquetes RREQ se envían con un TTL igual a NET_DIAMETER.
Cuando se recibe una ruta válida se envía un mensaje a la capa superior
de «Destination Unreachable». Este sistema, aunque limita el alcance de los
paquetes RREQ en caso de que el destino esté cerca, retrasa considerablemente la resolución de rutas para nodos lejanos (en tests posteriores un nodo
a 6 saltos se descubre en 845 ms, cuando sin este mecanismo se descubriría
en 20 ms). Por lo tanto, es un aspecto a tener en cuenta, según la aplicación y
el escenario a utilizar, pues puede evitarse utilizando un valor de TTL inicial
elevado, o incluso con un valor dinámico de NET_DIAMETER-1.
En el caso de estudio de esta tesis, aunque se han realizado pruebas eliminando este mecanismo de TTL incremental y se han obtenido mejores tiem2 Los
valores especificados en la norma deben servir de referencia, pero no son obligatorios.
los paquetes de tipo broadcast no se envía el mensaje ICMP «Time Exceed» al origen
cuando el TTL llega a 0, ya que al ser broadcast sí que lo han recibido todos los equipos del
camino.
4 RING_TRAVERSAL_TIME = 2 * NODE_TRAVERSAL_TIME * (TTL_VALUE + TIMEOUT_BUFFER) = 2 * 40 *(2 + 2) = 320 ms.
5 TTL=4 resultado de incrementar al anterior el valor TTL_INCREMENT = 2.
6 En el caso de que la encuentre lo hará aproximadamente a los 20 ms, de aquí el tiempo de
resolución de ruta de 340 ms obtenido en alguna de las pruebas, 320 ms + 20 ms.
3 En
250
i
i
i
i
Capítulo 7. Banco de pruebas
Figura 7.4: Envió de varios RREQ para resolver rutas de 4 saltos. Incremento
progresivo del TTL
pos de resolución, se ha optado finalmente por no prescindir de él. Este retardo sólo sucede al buscar la ruta a destino, y no supone una diferencia
apreciable realizar la conexión inicial en 20 ms o en 2 segundos para el caso
del streaming de vídeo. Durante las pérdidas de conexión y reenrutados, este
sistema no se utiliza de la misma forma, no suponiendo un problema para
ofrecer los servicios una vez ya han sido iniciados.
En cuanto a los tests que han necesitado un tiempo aproximado de 820
ms, cabe decir que un segundo RREQ debería haber sido suficiente puesto
que con TTL=4 siempre se alcanzaría el destino en una ruta con 4 nodos.
Sin embargo, la teoría no siempre se cumple en implementaciones reales con
conexiones inalámbricas donde hay que tener en cuenta parámetros externos
como colisiones e interferencias. Observando con mayor detenimiento estas
pruebas, se ha visto que el envío de 3 RREQs se debe a que el segundo RREQ
se ha perdido, con lo que el timer del nodo que había enviado el RREQ expira
y vuelve a enviar un tercer RREQ. En algunas pruebas se ha comprobado la
pérdida tanto del segundo RREQ como del RREP de vuelta (de este modo
251
i
i
i
i
Capítulo 7. Banco de pruebas
aunque el segundo RREQ haya llegado al nodo que conoce el destino y este
haya generado su RREP de vuelta, el nodo origen no lo recibe expirando el
timer y por consecuencia enviando un tercer RREQ). Para saber qué pasa
exactamente con el paquete, se han observado las capturas del sniffer del
segundo nodo en la ruta (analizando qué sucede con el paquete con número
de secuencia 11, que corresponde al segundo envío de esta prueba ) y del
tercer nodo (que debería recibir el paquete). Se observa como el segundo
nodo envía los tres RREQ con los números de secuencia correspondientes, si
se hubiera producido una colisión, las capas inferiores la hubieran detectado
y la trama se hubiera reenviado tras un tiempo de espera. En las capturas del
tercer nodo, se ve la recepción de los RREQ con Id= 10 y 12, pero no el 11. Si
no aparece, se debe a que las capas inferiores lo han descartado en recepción
debido a un error de checksum, es decir, que el paquete ha sufrido algún
problema y su contenido ha variado, por lo que el paquete no ha superado
su control de CRC y es desechado.
Por tanto, tras realizar un análisis más detallado de los distintos casos
cuando la ruta está formada por 4 saltos, se puede afirmar que todos los casos sufren retardos. El 80 % de las ocasiones se producen retrasos de 320 ms
debido a un TTL incorrecto, el 15 % a problemas y errores con el transporte
de los paquetes en el medio (correspondiendo en un 84 % a errores que implican 3 paquetes RREQ con retrasos de 820 ms, y un 16 % a errores acumulados
en una misma solicitud de ruta que provocan hasta 4 RREQ con retrasos de
1475 ms), y finalmente un 5 % de errores debidos a la generación de un RREP
con un valor de lifetime demasiado pequeño, provocando que en esta aplicación (pings continuos cada segundo) se elimine la ruta antes de que pueda
ser utilizada por primera vez. El problema con el lifetime no es importante
puesto que la aplicación que se estudia es la de servicios de tiempo real, y el
problema con el TTL inicial debe evaluarse según la aplicación.
252
i
i
i
i
Capítulo 7. Banco de pruebas
Tabla 7.5: Generación de rutas con 5 saltos
Envío
No RREQ
Recep.
Inserción
Paquete
Inserción
Tpo. total
RREQ
enviados
RREP
tabla rutas
ruta
ruta
descubrimiento
1
29,486
2
29,822
29,825
0,336
0,003
0,339
2
35,381
2
35,729
35,731
0,348
0,002
0,350
3
9,107
2
9,442
9,445
0,335
0,003
0,338
4
34,063
2
34,458
34,460
0,395
0,002
0,397
5
15,448
3
16,270
16,273
0,822
0,003
0,825
6
6,836
2
7,177
7,179
0,341
0,002
0,343
7
53,041
2
53,387
53,389
0,346
0,002
0,348
8
43,030
2
43,366
43,369
0,336
0,003
0,339
9
25,061
2
25,396
25,398
0,335
0,002
0,337
10
1,666
3
2,482
2,484
0,816
0,002
0,818
11
53,468
3
54,286
54,288
0,818
0,002
0,820
12
41,048
2
41,381
41,383
0,333
0,002
0,335
13
16,591
2
16,932
16,934
0,341
0,002
0,343
14
22,439
3
25,499
25,501
3,060
0,002
3,062
15
10,882
3
11,713
11,715
0,831
0,002
0,833
16
45,822
2
46,157
46,159
0,335
0,002
0,337
17
27,650
3
28,469
28,472
0,819
0,003
0,822
18
41,838
12
56,070
56,072
14,232
0,002
14,234
19
23,599
10
34,068
34,070
10,469
0,002
10,471
20
9,677
4
11,521
11,524
1,844
0,003
1,847
Promedio
1,875
0,002
1,877
Máximo
14,232
0,003
14,234
Mínimo
0,333
0,002
0,335
Finalmente se han realizado pruebas con 5 saltos, los resultados de las
cuales se presentan en la tabla 7.5.
253
i
i
i
i
Capítulo 7. Banco de pruebas
7.3.3.
Generación y eliminación de rutas en topologías multicamino
Las pruebas realizadas hasta el momento se han hecho con topologías que
disponían de una única ruta hacia destino. A continuación se va a estudiar
qué sucede si hay más de una ruta disponible para alcanzarlo, ver Fig. 7.5.
En los tests realizados donde el escenario son dos rutas con igual número
de saltos se ha observado que la ruta elegida es la que llega en el primer
RREP recibido con camino al nodo destino. Sin embargo, aunque se reciba
un paquete RREP y esta ruta se almacene como válida no implica que sea la
más rápida. Por ejemplo, inicialmente se ha seleccionado la ruta más rápida,
Fig. 7.6(a), pero si el RREP de vuelta de la ruta más rápida se pierde por
interferencias, el nodo origen utilizará ahora la ruta indicada por el primer
RREP recibido aunque esta sea de las dos rutas posibles la más lenta, ver
Fig. 7.6(b).
Figura 7.5: Red con dos posibles rutas desde el nodo origen al destino
En la Fig. 7.7 se muestra una topología con dos posibles caminos desde el
nodo A al nodo E. En las pruebas se ha comprobado que la ruta escogida es
la más corta como cabía esperar. El nodo origen emite un RREQ por broadcast, los nodos reenvían este paquete hasta que alguien conoce el destino,
momento en el que devuelven un RREP con la ruta. La ruta almacenada en
el primer RREP que recibe el nodo origen es la que almacena en su tabla de
rutas, pues se supone que corresponde a la ruta más rápida. Los RREP reci-
254
i
i
i
i
Capítulo 7. Banco de pruebas
Tabla 7.6: Generación de rutas en topologías multicamino. Rutas con 2 saltos
Envío
Recep.
Inserción
Paquete
Inserción
Tpo. total
RREQ
RREP
tabla rutas
ruta
ruta
descubrimiento
1
55,903622
55,917197
55,919000
0,013575
0,001803
0,015378
2
7,427452
7,433666
7,436000
0,006214
0,002334
0,008548
3
14,118297
14,124192
14,127000
0,005895
0,002808
0,008703
4
47,316470
47,322770
47,325000
0,006300
0,002230
0,008530
5
37,219698
37,222740
37,230000
0,003042
0,007260
0,010302
Promedio
0,007005
0,003287
0,010292
Máximo
0,013575
0,007260
0,015378
Mínimo
0,003042
0,001803
0,008530
bidos a continuación son descartados. En la tabla 7.6 se muestran los tiempos
de resolución de ruta, estos se asemejan bastante a los mostrados anteriormente en la tabla 7.2. El protocolo tarda un promedio de 10 ms en encontrar
ruta, 15 ms en el peor caso y 8 ms en el caso mejor.
(a)
(b)
Figura 7.6: Selección de la ruta
255
i
i
i
i
Capítulo 7. Banco de pruebas
Figura 7.7: Topología para el cálculo del tiempo de generación de ruta
7.3.4.
Intermitencia de rutas
La primera ruta válida que escoge el origen es la que más rápidamente devuelve un RREP de contestación. Según la teoría, esta ruta debe mantenerse
activa mientras los timers de los nodos no expiren, es decir, mientras origen
y destino estén intercambiando paquetes. Sin embargo, en las pruebas realizadas se ha comprobado que tras haber adoptado la ruta inicial, los paquetes
no siguen una única ruta, sino que alternan entre las dos rutas posibles lo que
provoca una inestabilidad que dificulta la correcta transmisión y recepción de
información. Este efecto no suele considerarse en los estudios teóricos y las
simulaciones, pero ha demostrado en las pruebas experimentales tener una
gran influencia en los resultados.
El protocolo AODV utiliza el sistema de mensajes HELLO7 para conocer
el estado de los enlaces con sus vecinos, ver [GCM+ 05]. De esta forma, cada
nodo crea y mantiene una tabla de rutas con todos sus vecinos, y aquellos
nodos con los que mantiene una comunicación activa por ser un protocolo
reactivo. Mediante este sistema, un nodo puede saber si ha perdido el enlace
con alguno de sus vecinos, si no recibe de forma consecutiva un número
7 Los
256
mensajes HELLO se envían cada HELLO_INTERVAL (1000 ms).
i
i
i
i
Capítulo 7. Banco de pruebas
determinado de paquetes HELLO8 de ese vecino.
En un escenario ideal, no recibir paquetes de un vecino significa que éste
ya no está disponible, ya sea por distancia o problemas con el nodo vecino.
Sin embargo, en un escenario real con tecnología IEEE 802.11b como es el
caso, el ruido tiene gran influencia en las comunicaciones. IEEE 802.11b es
muy sensible al ruido y al uso del canal, ver [BCDP05], porque opera en el
espectro ISM. 802.11b no reacciona bien ante esta situación, produciendo una
gran variabilidad en la calidad de la señal. Se pueden producir retrasos que
a menudo causan la expiración de los temporizadores en la capa superior de
los protocolos y fenómenos extraños si no se utiliza RTS/CTS.
De esta forma, si el ruido del medio invalida un número determinado de
paquetes HELLO consecutivos, o éstos llegan fuera del tiempo esperado debido a reflexiones en el entorno, el nodo destino pensará que éste ha caído,
y eliminará la ruta de su tabla de rutas. Si esto sucede en un nodo perteneciente a una ruta activa, obligará al protocolo a buscar una nueva ruta9
hacia destino para poder continuar con la comunicación, con el retardo que
ello implica, sobre todo si los paquetes de gestión de ruta (RREQ y RREP)
también sufren interferencias y se necesitan varios vencimientos de timer y
reenvíos.
En otros estudios, este problema ha provocado que el AODV haya sido
comparado de forma desfavorable con otros protocolos, ya que se generan
mayores pérdidas y mayores tasas de latencia que en algunos casos se atribuyen al propio protocolo. En [BD07] se obtiene una tasa de pérdidas del 50 %
8 El
número máximo de paquetes perdidos se corresponde con el parámetro ALLOWED_HELLO_LOSS= 2 según la RFC.
9 El tiempo entre el envío de dos paquetes HELLO consecutivos se define como HELLO_INTERVAL = ALLOWED_HELLO_LOSS * HELLO_INTERVAL = 2 * 1000 (ms) = 2 s según
los parámetros por defecto de la RFC y del AODV-UU. Que son los 2 segundos que tarda por
defecto el protocolo AODV en reaccionar. Por ello, según estos valores se invalida un vecino si
no se reciben 2 paquetes HELLO consecutivos. En este momento se marca la ruta como inválida y se le da el tiempo de eliminación K * max(ACTIVE_ROUTE_TIMEOUT_HELLO, ALLOWED_HELLO_LOSS * HELLO_INTERVAL), que equivale a 15 segundos. Hasta que no pasan
estos 15 segundos no se puede iniciar la nueva búsqueda.
257
i
i
i
i
Capítulo 7. Banco de pruebas
en una ruta de 3 saltos cuando el protocolo utilizado es el AODV, mientras
que con el protocolo de encaminamiento OLSR la tasa de pérdidas es sólo del
0,1 %. En [BCD+ 06], con 3 saltos, se produce una tasa de pérdidas del 51 %
con AODV y una tasa del 28 % con OLSR. Además, los retrasos generados
por AODV son mucho mayores.
Sin embargo, estos errores y latencia son debidos al problema de la intermitencia de rutas, problema que normalmente no es considerado en los estudios teóricos y de simulación, y es causado por:
El uso de un medio compartido y las pérdidas consiguientes se traducen en pérdidas de paquetes HELLO que también sufren colisiones. Si
se pierden de forma consecutiva ALLOWED_HELLO_LOSS paquetes
de HELLO, el enlace con el vecino se pierde.
Teniendo en cuenta que los distintos nodos luchan por el uso del medio,
con tiempos de espera variables si el medio está ocupado, no siempre
es posible entregar los paquetes cuando se desee y así los paquetes
HELLO pueden sufrir retrasos y llegar después del tiempo previsto,
además de generar pérdidas de conectividad.
Ambos casos provocan una pérdida irreal de conectividad, dado que la
topología no ha cambiado, pero las características del medio y su protocolo
de acceso generan este efecto derivado del mecanismo de HELLO.
Aunque pueda parecer un caso aislado, las pruebas realizadas muestran
este efecto en todas las transferencias que se han llevado a cabo, aunque los
nodos no cesen de enviar sus HELLO de forma ordenada y periódica, se han
observado continuas pérdidas de enlace y recuperación aún cuando la red
no está siendo utilizada. Por ejemplo, durante un ping de 120 segundos en
una topología de tan solo 2 saltos, se realizan 8 cambios de ruta; mientras
que en una transferencia FTP de 2 minutos en una topología de 4 saltos, se
cambia 23 veces de ruta, 23 cambios innecesarios puesto que la topología no
ha cambiado y todos los nodos han permanecido activos. En [BCD+ 06] se
analiza la sobrecarga media del protocolo AODV durante una comunicación
258
i
i
i
i
Capítulo 7. Banco de pruebas
activa, y al contrario de lo que sucede con el OLSR, la gráfica (véase [BCD+ 06,
Fig. 2]) muestra los picos en el tráfico de control durante la comunicación.
Estos picos corresponden al tráfico provocado por la búsqueda de ruta, tráfico
que se genera continuamente debido a la alternancia de las rutas. Este efecto
es muy nocivo para la continuidad del tráfico multimedia porque introduce
retardos aleatorios que no se pueden conocer con antelación, y anulan la
capacidad de recuperación del protocolo de sesión utilizado.
Reseñar que este efecto donde las rutas son intermitentes aún cuando no
hay cambios de topología, no se ha contemplado en los modelos porque se
desconocía este comportamiento hasta la realización de las pruebas, de ahí la
importancia de contrarrestar los resultados obtenidos con los modelos con los
resultados del banco de pruebas. Aunque es complicado modelar aspectos
como el mencionado porque tienen un comportamiento aleatorio, lo único
que está claro es que la intermitencia aumenta con el número de nodos que
intervienen en la ruta, como trabajo futuro se podría estudiar la modificación
del modelo para incluir de forma estadística este comportamiento.
Es necesario evaluar si es suficiente el margen de seguridad establecido,
o si se producen demasiadas invalidaciones de nodos adyacentes por culpa
de un ALLOWED_HELLO_LOSS pequeño. Cuanto más bajo sea el valor del
parámetro ALLOWED_HELLO_LOSS que define el número de paquetes HELLO que se pueden perder antes de dar a un nodo vecino por caído, antes
reaccionará el protocolo ante caídas reales de enlaces.
En contraposición, como se ha observado en las pruebas, muchas veces
son los mismos paquetes de control los que se pierden debido a interferencias, por lo que el no recibir ALLOWED_HELLO_LOSS paquetes de HELLO
de un vecino no indica necesariamente que éste haya caído o esté fuera de
alcance. Con un valor bajo, la simple pérdida de paquetes HELLO provocará una confusión en el protocolo que derivará en la eliminación de una ruta
válida, y la búsqueda de una nueva ruta. Aumentando el valor de este parámetro, se obtiene una mayor fortaleza ante pérdidas por ruido, a costa de
un aumento en el tiempo de reacción ante caídas reales, lo que soluciona-
259
i
i
i
i
Capítulo 7. Banco de pruebas
ría el problema de la intermitencia de rutas pero penalizaría la velocidad de
reacción.
Tras una evaluación exhaustiva de las pruebas realizadas, se podría concluir que el efecto de intermitencia de rutas se produce a causa de un ALLOWED_HELLO_LOSS demasiado pequeño, en comparación con la cantidad de
ruido que hay en el medio. Las pérdidas de enlace durante pequeños instantes de tiempo entre vecinos generan rupturas de ruta instantáneas (aunque se
recuperen los enlaces justo después), que provocan una nueva búsqueda de
ruta por el nodo origen, generando tiempos de espera, pérdida de paquetes
y carga en la red. De esta forma, el tráfico se degrada considerablemente y
afectará con toda seguridad a aplicaciones de tiempo real.
7.3.5.
Ruptura de enlaces y recuperación por una ruta alternativa
Además de conocer el funcionamiento del protocolo a la hora de buscar
ruta entre origen y destino es importante conocer su funcionamiento cuando
una ruta activa se pierde y debe encontrar una ruta alternativa, ver Fig. 7.8.
Para ello se ha sometido al protocolo a caídas de enlace para forzar la búsqueda de nuevas rutas, estudiando su comportamiento y velocidad de resolución. Se han evaluado 3 escenarios, en los que la ruta inicial está formada
por 2 saltos y la alternativa varía entre 2 y 4 saltos de distancia. Al igual que
se ha hecho en otras pruebas, se ha utilizado la herramienta ping, obligando
al sistema a mantener una comunicación continua entre origen y destino.
En estas pruebas cuando la ruta activa ha caído se ha observado que aunque el nodo vecino del nodo desaparecido haya detectado a otro nodo la ruta
no se marca como activa hasta pasados al menos 2 segundos. Este tiempo
coincide con el explicado en el apartado de rutas intermitentes. En el nodo A
expira el HELLO_TIMEOUT del vecino B tras no recibir 2 paquetes HELLO,
es decir, 2 segundos. En ese momento, se marcan como inválidas las rutas
asociadas a este nodo, y se inicia el timer de borrado (15 segundos). Para
260
i
i
i
i
Capítulo 7. Banco de pruebas
Figura 7.8: Escenario con la ruta original de dos saltos y una posible alternativa también de dos saltos
iniciar la nueva búsqueda no es necesario esperar a que se elimine la ruta. Al
estar marcada como inválida, cuando se intenta enviar el siguiente ping si no
hay una ruta en la tabla de rutas se desencadena el proceso de búsqueda de
ruta.
En la tabla 7.7 se han representado los valores cuando la ruta alternativa también tiene 2 saltos. Se observa como la diferencia de tiempo entra la
caída del enlace y la invalidación de la ruta se mantiene por debajo de los
2 segundos, según lo explicado sobre la pérdida de 2 paquetes HELLO, y la
diferencia entre la invalidación y el envío del siguiente paquete RREQ nunca
alcanza 1 segundo, que es el periodo del ping. En esta configuración y para la
aplicación de ping, el tiempo medio para realizar un cambio de ruta correcto
es de 2,020 segundos.
En las pruebas que se presentan en la tabla 7.8 el camino alternativo a
la ruta actual que se ha perdido tiene 3 saltos, ver Fig. 7.9. La diferencia
principal es que, mientras que en el caso anterior sólo A solicitaba una ruta
para llegar a D (puesto que C era vecino de D y no tenía que solicitar ruta),
en esta ocasión tanto A como C deben solicitar una ruta para llegar hasta E,
ya que el único vecino que tiene visibilidad con él por la ruta alternativa es D.
Con esta topología, se obtiene un tiempo de 2,227 segundos para reencaminar
el tráfico por la nueva ruta tras la caída de un nodo de la misma. Esta solución
es 207 ms más lenta que la anterior (ver tabla 7.7, debido a que hay un salto
261
i
i
i
i
Capítulo 7. Banco de pruebas
Tabla 7.7: Recuperación de rutas. Ruta alternativa de 2 saltos
Caída
Invalidación
Envío
No RREQ
Recep.
Adición
enlace
ruta
RREQ
enviados
RREP
nueva ruta
s.
1
6,917
9,015
9,189
1
9,196
9,199
2,282
2
46,250
47,783
48,610
1
48,617
48,620
2,370
3
46,533
47,727
48,720
1
48,942
48,945
2,412
4
14,638
16,210
17,002
1
17,016
17,019
2,381
5
50,679
52,366
53,301
1
53,310
53,313
2,634
6
13,700
14,467
15,407
1
15,420
15,423
1,724
7
3,270
4,376
5,200
1
5,205
5,208
1,938
8
33,226
34,604
35,040
1
35,069
35,071
1,845
9
55,068
55,828
56,096
1
56,099
56,102
1,034
10
32,808
34,208
34,308
1
34,313
34,318
1,511
Tpo. total
11
1,164
2,360
2,820
1
2,826
2,829
1,665
12
12,713
13,916
14,188
1
14,194
14,197
1,484
13
29,149
30,608
31,264
1
31,269
31,272
2,123
14
42,077
43,972
44,923
2
45,404
45,413
3,336
15
49,884
51,064
51,436
1
51,441
51,444
1,560
Promedio
2,020
Máximo
3,336
Mínimo
1,034
más y, por lo tanto, una solicitud más de ruta.
Cuando la ruta original se rompe y la ruta alternativa tiene 4 saltos (ver
Fig. 7.10 los tiempos cambian significativamente. En la tabla 7.9 se puede ver
como en algún caso han sido necesarios 3 RREQs. Cuando el nodo intermedio de la ruta ha caído, tras ser invalidada la ruta el nodo origen realiza una
nueva solicitud de ruta. Este es el primer RREQ que emite tras la invalidación
de la ruta. Sin embargo, debido al vencimiento de los TIMEOUTS, se envían
aún 2 paquetes RREQ más antes de que el nodo origen reciba un RREP correcto del nodo. Cuando se busca una ruta alternativa el TTL inicial en este
caso no es 2, sino 4. Esto pasa sólo para cambios de ruta, es decir, cuando
262
i
i
i
i
Capítulo 7. Banco de pruebas
Tabla 7.8: Recuperación de rutas. Ruta alternativa de 3 saltos
Caída
Invalidación
Envío
No RREQ
Recep.
Adición
enlace
ruta
RREQ
enviados
RREP
nueva ruta
s.
1
56,467
58,275
59,176
1
59,182
59,185
2,718
2
46,153
47,354
48,034
1
48,040
48,043
1,890
3
0,084
1,950
2,897
1
2,905
2,908
2,824
4
14,291
15,439
15,828
1
15,838
15,841
1,550
5
1,416
2,979
3,820
1
3,829
3,832
2,416
6
44,949
46,100
46,886
1
46,894
46,897
1,948
7
18,809
19,930
20,430
1
20,434
20,437
1,628
8
28,634
30,170
30,342
2
30,832
30,835
2,201
9
12,201
13,518
13,950
1
13,955
13,958
1,757
10
52,233
54,086
54,754
1
54,759
54,762
2,529
11
51,239
52,670
52,986
1
52,993
52,996
1,757
12
25,026
26,594
27,490
2
27,979
27,982
2,956
13
57,334
58,694
59,034
1
59,039
59,042
1,708
14
49,199
50,946
51,930
1
51,935
51,938
2,739
15
53,747
55,522
56,518
1
56,528
56,531
2,784
Promedio
2,227
Máximo
2,956
Mínimo
1,550
Tpo. total
la búsqueda inicial para buscar un camino ya se ha realizado. El valor de
TTL en este caso es igual al número de saltos que, según la entrada de la
tabla de rutas acabada de invalidar, había entre origen y destino10 (que son
4). Por lo tanto, en este caso particular, el envío de 3 RREQ para hallar una
ruta válida se debe únicamente a la pérdida de los dos primeros por el ruido del canal y no tiene nada que ver el valor del TTL inicial. Los resultados
muestran una media de 2,386 ms en realizar un cambio de ruta, por lo que
esta configuración es 159 ms más lenta que la anterior.
10 La
RFC especifica un valor distinto, el valor de TTL debería ser el valor de ’Hop Count’ de
la tabla de rutas más el TTL_INCREMENT, es decir, 6.
263
i
i
i
i
Capítulo 7. Banco de pruebas
Figura 7.9: Escenario con la ruta original de dos saltos y una posible alternativa con tres saltos
La velocidad de cambio de ruta se mantiene en todos los casos sobre los
2 segundos, para luego aumentar levemente con cada salto. Este tiempo está
limitado por la necesidad de perder 2 paquetes HELLO para detectar la caída
de un vecino y dependiendo de la aplicación puede llegar a ser excesivo. Si
se está utilizando una red estable, en la que no se esperan cambios de topología o caídas frecuentes de nodos, esto no es un problema porque no es una
situación que ocurra frecuentemente. Sin embargo, en topologías inestables,
con nodos móviles o cambios de topología frecuentes, el necesitar un mínimo de 2 segundos para establecer una nueva ruta puede no ser conveniente,
sobre todo en aplicaciones de tiempo real. Además, el detalle de utilizar un
TTL inicial para los mensajes RREQ de la recuperación de ruta igual al «Hop
Count» que había en la tabla de rutas no parece del todo acertado, puesto que
Figura 7.10: Escenario con la ruta original de dos saltos y una posible alternativa de cuatro saltos
264
i
i
i
i
Capítulo 7. Banco de pruebas
Tabla 7.9: Recuperación de rutas. Ruta alternativa de 4 saltos
Caída
Invalidación
Envío
No RREQ
Recep.
Adición
enlace
ruta
RREQ
enviados
RREP
nueva ruta
s.
1
48,413
49,693
49,749
3
51,149
51,152
2,739
2
38,702
40,978
41,814
1
41,825
41,828
3,126
3
3,235
4,554
4,786
1
4,800
4,803
1,568
4,570
Tpo. total
4
4,181
5,926
6,778
4
8,747
8,751
5
36,338
38,394
39,018
1
39,037
39,040
2,702
6
1,033
2,334
2,502
1
2,512
2,515
1,482
7
49,529
51,374
52,106
1
52,114
52,116
2,587
8
44,415
45,738
46,130
1
46,130
46,133
1,718
9
44,674
45,874
46,766
2
47,268
47,271
2,597
10
24,574
25,914
26,214
1
26,226
26,231
1,657
11
10,469
12,190
13,098
1
13,110
13,113
2,644
12
1,022
2,594
2,706
1
2,719
2,724
1,702
13
50,118
51,378
51,794
2
52,293
52,296
2,178
14
37,494
38,582
39,130
2
39,623
39,625
2,131
15
51,173
52,642
53,542
1
53,560
53,563
2,390
Promedio
2,386
Máximo
4,570
Mínimo
1,482
presupone que la nueva ruta va a tener igual o menor tamaño. Sin embargo,
en una situación real supondría que ha caído un enlace de una ruta que, debido a las características de búsqueda de rutas del AODV, debería ser la ruta
más rápida y posiblemente con menos saltos, y por tanto la nueva búsqueda
debería sostener la posibilidad de ser igual o mayor que la actual, que era la
óptima, por lo que el punto de vista de la RFC sería más acertado, utilizando
un valor de TTL inicial igual al «Hop Count» más el TTL_INCREMENT.
265
i
i
i
i
Capítulo 7. Banco de pruebas
7.4. Modificaciones del protocolo AODV-UU
El protocolo AODV-UU se presenta con su código fuente en lenguaje C
para poder realizar modificaciones y testarlas. Tras haber observado el comportamiento del mismo y viendo que en algunos casos este comportamiento
puede afectar al servicio ofrecido, se propone la modificación de diversos
parámetros y se comprueba de nuevo su funcionamiento en situaciones específicas.
El tiempo máximo de reacción del protocolo viene definido como ALLOWED_HELLO_LOSS * HELLO_INTERVAL, 2 s considerando los valores por
defecto que se indican en la RFC. Si se utiliza un valor elevado se evitan los
efectos de la intermitencia de rutas, pero el tiempo de reacción aumenta.
Existen trabajos que han evaluado la modificación de uno de estos dos
parámetros. En [CBR02] se ha estudiado mediante pruebas reales en laboratorio y pruebas de campo el comportamiento del protocolo variando el valor
de ALLOWED_HELLO_LOSS, concretamente se ha usado el valor 3. En las
pruebas donde los nodos permanecían estáticos en el laboratorio los resultados han sido mejores que con el valor por defecto por ofrecer una tolerancia
mayor ante la pérdida de mensajes HELLO, en campo el comportamiento ha
empeorado levemente debido a una mayor pérdida de paquetes por el multipath, desvanecimiento de la señal y otros efectos del entorno real. Por contra,
en las pruebas con movilidad el comportamiento ha empeorado en los dos
casos frente al obtenido con el valor por defecto. También en [LNT02] se modifica este mismo parámetro, la idea es lograr una mayor estabilidad ante los
cambios de los vecinos. Las pruebas con un valor igual a 3 han mostrado
menos pérdidas de paquetes incluso durante el periodo de movimiento del
nodo, sin embargo, el tiempo medio de acceso a una página web medido en
las pruebas era para esta modificación el mayor de los obtenidos.
En [GCM+ 05] se sugiere el uso de valores distintos a los propuestos por
defecto para mejorar el tiempo de reacción ante los cambios de topología
con un impacto pequeño sobre el ancho de banda y el consumo de potencia.
266
i
i
i
i
Capítulo 7. Banco de pruebas
En este trabajo el parámetro HELLO_INTERVAL el escogido, ya que en los
dos estudios anteriores se había trabajado con el ALLOWED_HELLO_LOSS,
para reducir el tiempo máximo de reacción desde que un enlace se ha roto
hasta que el protocolo empieza a utilizar una ruta alternativa en el caso de
que exista. Los autores no escogen el parámetro ALLOWED_HELLO_LOSS
porque su valor por defecto es 2 y la única posibilidad para reducir el tiempo
de reacción sería asignarle el valor 1, ya que los resultados obtenidos en
[CBR02] para un valor de ALLOWED_HELLO_LOSS igual a 3 mostraban un
empeoramiento del comportamiento al degradarse la reacción del protocolo
ante los cambios de topología.
En [GCM+ 05] se busca mediante la creación de un banco de pruebas11
donde también se usa la implementación del protocolo AODV-UU, el valor
óptimo para el HELLO_INTERVAL, ya que una reducción de su valor hace
que se consuma más ancho de banda y recursos de energía (aumentar la
frecuencia de mensajes HELLO disminuye el tiempo de vida de batería del
dispositivo). Los autores escogen finalmente un valor de 200 ms ya que el
tiempo medio de duración de la batería es prácticamente el mismo que con el
valor por defecto y además el throughput solo disminuye en un 10 % en una
topología en cadena de 4 saltos, además de reducir la latencia y las pérdidas.
Se pretende hallar una relación óptima entre ambos parámetros, aumentando la densidad de paquetes HELLO por unidad de tiempo que se deben
recibir, dando así más solidez al protocolo frente al ruido, de forma que se
obtengan buenos tiempos de reacción minimizando el efecto de intermitencia
de rutas. Se ha de tener en cuenta que los parámetros adecuados dependerán
de las condiciones específicas de la red y del servicio a evaluar. Para encontrar los valores óptimos se ha utilizado un escenario con una topología de 4
saltos y 2 caminos posibles entre origen y destino, ver Fig. 7.11.
Al permanecer todos en la misma área de acción, aunque los nodos no
tengan alcanzabilidad directa, sus señales de radio sí interfieren directamen11 Además
de utilizar el AODV-UU este banco de pruebas guarda otras similitudes con el
implementado para la tesis. Los autores utilizan 5 nodos frente a 6 y controlan la conectividad
usando iptables para filtrar a nivel de la capa MAC.
267
i
i
i
i
Capítulo 7. Banco de pruebas
Figura 7.11: Topología de test con dos posibles caminos de cuatro saltos
te, con lo que se utiliza un escenario ruidoso, con varios equipos intentando
acceder al medio y generando colisiones continuamente. Por otro lado, esta
situación condiciona las pruebas puesto que, al ser un parámetro tan aleatorio e impredecible, las mismas pruebas realizadas en distintas horas del día
generan resultados diferentes.
Las pruebas se han realizado variando los valores de ALLOWED_HELLO_LOSS entre 1 y 7, y los valores de HELLO_INTERVAL de 1000, 200, 100
y 50 ms. Para generar los resultados, se ha utilizado una transferencia FTP de
2 minutos de duración, monitorizando además el cambio de rutas mediante
la herramienta ping con el modificador -R, que advierte de la ruta seguida y
de los cambios efectuados durante la comunicación. Cada una de las pruebas
se ha repetido 10 veces realizando la media de los resultados para obtener
valores sólidos.
En la Fig. 7.12 se muestran los resultados de las pruebas, concretamente los cambios de ruta que se producen durante la transferencia. Se observa
que, cuanto menor es el valor de ALLOWED_HELLO_LOSS, mayor alternancia entre rutas se produce, que equivale a la sensibilidad del protocolo ante
el ruido. Por ejemplo, en el caso de un HELLO_INTERVAL= 200 ms y un
ALLOWED_HELLO_LOSS= 2, se producen 35 cambios de ruta. Estos cambios generan esperas, cortes en la transmisión y retardos que empobrecen la
comunicación innecesariamente. Sin embargo, se puede observar en la gráfica
que a partir del ALLOWED_HELLO_LOSS= 5, los cambios de ruta alcanzan
su primer mínimo, manteniéndose entorno a 0. En contraposición, la velo-
268
i
i
i
i
Capítulo 7. Banco de pruebas
60
Hello Interval=1000ms
Hello Interval=200ms
Hello Interval=100ms
Hello Interval=50ms
50
Cambios de ruta
40
30
20
10
0
1
2
3
4
Allowed Hello Loss
5
6
7
Figura 7.12: Efecto de los cambios de ruta
cidad de reacción ante cambios de topología aumenta hasta un máximo de
5 segundos. En redes con topología fija o de la que se esperen pocos cambios, este valor resulta óptimo para aplicaciones de tiempo real y streaming.
Sin embargo, en redes donde la topología está en movimiento o puede sufrir
cambios continuos, debe reducirse el valor de ALLOWED_HELLO_LOSS a
costa de un descenso de throughput, derivado por los tiempos invertidos en
búsqueda de rutas. Las pruebas realizadas en este caso muestran que ALLOWED_HELLO_LOSS= 5 sería un valor óptimo que aportaría la fortaleza suficiente para evitar el efecto de intermitencia de rutas en un escenario con una
cantidad de ruido similar. Esta configuración beneficia a las aplicaciones de
tiempo real ofreciendo un flujo de datos más constante, pudiendo prever con
el tiempo suficiente la recuperación de datos perdidos por protocolos como
RTP.
Para ver como afecta esto al rendimiento (throughput) se muestran los
resultados de la Fig. 7.13. Se observa que el throughput de la comunica-
269
i
i
i
i
Capítulo 7. Banco de pruebas
800
700
Throughput (Kbps)
600
500
Hello Interval=1000ms
Hello Interval=200ms
Hello Interval=100ms
Hello Interval=50ms
400
300
200
100
0
1
2
3
4
Allowed Hello Loss
5
6
7
Figura 7.13: Efecto sobre el throughput
ción realizada durante las pruebas aumenta hasta estabilizarse a partir de
ALLOWED_HELLO_LOSS= 5. Para los valores de HELLO_INTERVAL de
200, 100 y 50 ms, la comunicación con ALLOWED_HELLO_LOSS= 1 es prácticamente imposible, debido a la facilidad que tienen los paquetes HELLO
tan seguidos de llegar demasiado tarde o sufrir interferencias, con lo que el
sistema está continuamente buscando rutas sin poder transmitir datos. En
el caso de los parámetros definidos en la RFC (HELLO_INTERVAL= 1000
ms, y ALLOWED_HELLO_LOSS= 2), el throughput es de 546 Kbps, pero
al aumentar el valor de ALLOWED_HELLO_LOSS hasta 5 (el primer valor
que aporta solidez según la gráfica de la Fig. 7.12), el throughput aumenta
hasta 774 Kbps, lo que produce una mejora del 40 %. Sin embargo, utilizar
estos valores supone un tiempo de reacción de 5 segundos (1000 ms * 5),
aceptable en topologías estables, pero no en topologías móviles, donde los
nodos cambian constantemente de posición y la pérdida de conectividad es
un problema continuo. Sin embargo, es posible mejorar el tiempo de reacción
270
i
i
i
i
Capítulo 7. Banco de pruebas
utilizando un HELLO_INTERVAL más bajo para el mismo valor de ALLOWED_HELLO_LOSS. En caso de modificar el valor del HELLO_INTERVAL
se debe controlar el throughput ya que como se indica en [GCM+ 05] el throughput disminuye cuando el envío de mensajes de control aumenta, o lo
que es lo mismo, cuando disminuye el HELLO_INTERVAL.
Según la Fig. 7.13, utilizando un intervalo de 50 ms no sólo se estaría
consiguiendo un tiempo de reacción más bajo (250 ms frente a los 2 segundos
con los parámetros por defecto de la RFC), sino que además no se penaliza
la tasa de transferencia, sino que aún se consigue un mejor throughput: 647
Kbps (alrededor de un 20 % más). Aún así, las pruebas realizadas sitúan el
intervalo entre HELLOs óptimo en 100 ms, puesto que la repetitividad de las
pruebas muestra unos valores mucho más estables que en las pruebas de 50
ms, en las que los valores oscilan mucho más, siendo una configuración más
sensible al ruido. Por ello, según los resultados de las pruebas experimentales
se ha escogido como valores óptimos del protocolo para tareas de streaming:
ALLOWED_HELLO_LOSS = 5
HELLO_INTERVAL = 100 ms
Para comprobar el funcionamiento de estos cambios en aplicaciones de
tiempo real, se ha utilizado una transmisión de vídeo en streaming con los
parámetros antes indicados. Esta modificación aporta 3 ventajas fundamentales respecto a la configuración por defecto:
1. Mayor velocidad de reacción ante cambios de topología.
2. Anulación de la intermitencia de rutas: retraso en la llegada de paquetes
constante y conocido, sin esperas ni cortes intermitentes.
3. Aumento del throughput.
Se ha utilizado el mismo escenario que en las pruebas anteriores, ver
Fig. 7.11, una ruta con 4 saltos y 2 rutas posibles a destino.
271
i
i
i
i
Capítulo 7. Banco de pruebas
El software elegido para el servidor y el cliente de streaming es VLC,
que permite además la transcodificación del vídeo durante su emisión, para
ajustar los parámetros de bitrate a la red. Como códec de vídeo se ha utilizado H.264, el formato de compresión de vídeo más potente en la actualidad,
que ofrece bajas tasas de bitrate con una alta calidad de vídeo, mejorado
especialmente para escenas en movimiento, y con un soporte especial para
aplicaciones de streaming; y para sonido a52, también conocido como AC3 o
Dolby Digital.
Con los parámetros por defecto (ALLOWED_HELLO_LOSS = 2 y HELLO_INTERVAL = 1000 ms) el vídeo en el cliente sufre continuos microcortes
tanto en el vídeo como en el audio, así como pausas prolongadas y errores
ocasionales en la decodificación que dificultan la visión, ver Fig. 7.14(a). El
reproductor ha mostrado la pérdida de 123 frames de vídeo y 199 buffers de
audio. La máxima diferencia registrada por el sniffer entre dos paquetes RTP
consecutivos es 4438,86 ms, el jitter máximo es 271,96 ms y el jitter medio es
3,55 ms. La Fig. 7.15(a) muestra el jitter instantáneo durante la reproducción
del vídeo. Se han observado importantes fluctuaciones que hacen difícil para
el reproductor predecir la recuperación de las escenas generando los cortes
aleatorios.
Con el cambio de parámetros (ALLOWED_HELLO_LOSS = 5 y HELLO_INTERVAL = 100 ms) el vídeo en el cliente es fluido, sin cortes significativos
de vídeo o audio, lo que permite una correcta visualización de toda la secuencia, ver Fig. 7.14(b). El reproductor ha registrado la pérdida de 4 frames
de vídeo y ninguna pérdida de audio. El sniffer ha mostrado una diferencia
máxima entre paquetes RTP de 341 ms, un jitter máximo de 24 ms y un jitter medio de 2.44 ms. La Fig. 7.15(b) muestra un jitter con más picos debido
al incremento de paquetes de control, pero los cambios son menos abruptos, permitiendo al reproductor realizar las predicciones necesarias sobre los
retardos de los paquetes y recuperar las escenas a tiempo.
272
i
i
i
i
Capítulo 7. Banco de pruebas
(a) Ejemplo de error por decodificación de frames. Se entremezclan escenas y la imagen muestra cuadros.
(b) Ejemplo donde el vídeo es fluido
Figura 7.14: Vídeo visualizado por el cliente antes y después de las modificaciones de los parámetros del AODV
273
i
i
i
i
Capítulo 7. Banco de pruebas
(a) Valores por defecto del AODV
(b) Valores modificados del AODV
Figura 7.15: Jitter instantáneo con los valores por defecto y modificados del
protocolo AODV
7.5. Conclusiones
En cuanto a la implementación del protocolo utilizada, la modificación
de la Universidad de Uppsala del protocolo AODV ha mostrado algunas
variaciones12 interesantes respecto al protocolo original que pueden ofrecer
un mejor funcionamiento, como el envío permanente de mensajes HELLO
entre vecinos, permitiendo que los nodos colindantes a un destino puedan
devolver un RREP válido.
El uso de redes inalámbricas para formar redes de comunicación conlleva
12 Sin
embargo, cabe tener en cuenta que esas variaciones pueden provocar unos resultados
algo distintos a los esperados, por ejemplo los tiempos de espera tras el envío de un paquete
RREQ no se incrementan de forma exponencial como se explica en la RFC a diferencia de los
tiempos teóricos utilizados en el modelo formal.
274
i
i
i
i
Capítulo 7. Banco de pruebas
el inevitable problema de ruido en el medio, que deriva en interferencias y
problemas de acceso al medio. Además, el ruido es un parámetro muy variable y depende de situaciones temporales muy concretas, por lo que no puede
ser previsto y tratado en su totalidad. El uso de un protocolo de encaminamiento en una red inalámbrica, como es el AODV, implica que un paquete
ha de viajar de origen a destino saltando de nodo a nodo, es decir, siendo
emitido al medio cada vez que llega a un nodo intermedio. Cada uno de estos saltos es una probabilidad de sufrir una interferencia, y esta probabilidad
aumenta exponencialmente con el número de saltos como se ha observado en
las pruebas. Esta razón es la que limita el tamaño de una red ad hoc. Concretamente, el protocolo se ha comportado correctamente en los tests con pocos
saltos, mostrando su capacidad de encontrar ruta casi instantáneamente, 13
ms en topologías de 2 saltos y 16 ms con 3 saltos. Esto corrobora la posibilidad de proporcionar en el caso de rutas con pocos saltos el servicio antes del
tiempo de establecimiento máximo.
Por otra parte, en las búsquedas de ruta se ha demostrado que en aquellas
topologías cuyo diámetro de red (número máximo de saltos entre dos nodos)
sea de 4 saltos o más, el tiempo de resolución se incrementa notablemente.
Este tiempo para topologías de 4 saltos ha sido de 339 ms, y para 6 saltos de
845 ms debido al vencimiento del timer del primer RREQ en origen. Estos
valores son similares a los obtenidos en otros estudios, como el de Gupta, ver
[GWW04], donde el tiempo medio con 2 saltos es de 7 ms, 10 ms para 3 saltos,
y 331 ms para 4 saltos, para rutas más largas los tiempos se prolongan. Todo
esto provoca largos tiempos de inactividad en la red, hasta que finalmente se
consigue una ruta, tiempo durante el cual se almacenan los datos en el buffer
pero no se envían, y aunque finalmente la información llegue a su destino,
se genera un tiempo de espera inaceptable en aplicaciones de tiempo real.
Tras las pruebas realizadas en el testbed se puede asegurar que el protocolo AODV no se comporta bien cuando se usan los valores por defecto de sus
parámetros. Esto se debe a la gran sensibilidad que la tecnología inalámbrica
utilizada tiene al ruido (el cual provoca el fenómeno de la intermitencia de
rutas generando continuos retardos y pérdidas de conectividad) y un tiempo
275
i
i
i
i
Capítulo 7. Banco de pruebas
de reacción elevado ante los cambios de topología, lo que afecta a las comunicaciones con los nodos móviles o modifica constantemente las topologías.
Con los parámetros por defecto del protocolo el streaming de vídeo presentaba continuos microcortes en el vídeo y audio, así como largas pausas y
errores de decodificación ocasionales. Esto verifica los resultados obtenidos
mediante los modelos formales, ver capítulo 6, donde el tiempo medio durante el cual la ruta es estable apenas alcanza en algunos casos el 50 % del
tiempo de observación, lo que impide que se pueda ofrecer un servicio de
streaming de video correctamente.
Por tanto, la variabilidad en el ruido del medio, así como los altos tiempos
que puede llegar a generar el protocolo AODV-UU en situaciones de pérdida de RREQ o HELLOs hace prácticamente inviable e impredecible el uso
de aplicaciones multimedia sobre este tipo de redes. Sin embargo, el uso de
un protocolo de transporte más sólido (por ejemplo TCP para aplicaciones
de poco tráfico como alarmas, que aseguran una entrega confiable, o RTP
que apoya al protocolo UDP para recuperar la mayor información posible
en transmisiones de streaming), conjugado con algunas modificaciones en
los parámetros del protocolo original, estudiadas y evaluadas en el banco de
pruebas han permitido finalmente la utilización con cierto grado de confiabilidad de una aplicación de tiempo real, como ha sido el vídeo streaming,
en una red de 4 saltos y dos caminos posibles. De esta forma, con las decisiones y modificaciones tomadas, se ha conseguido una transmisión perfecta
y sin ninguna pérdida. Por ello, se puede concluir que aunque debido a las
características de estas redes no se puede garantizar la QoS de las aplicaciones multimedia, es posible realizar cambios que ofrezcan valor añadido “Best
effort”.
Por último destacar que algunos problemas detectados en la implementación real no se han vistos reflejados en los resultados obtenidos con los
modelos formales, el problema de la intermitencia de rutas (generando continuos retardos y pérdidas de conectividad), el aumento de la tasa de error
al incrementarse el número de saltos, y el modo en el que se incrementa el
tiempo de reacción con el número de nodos de la ruta. Esto justifica la ne-
276
i
i
i
i
Capítulo 7. Banco de pruebas
cesidad de realizar un procedimiento de validación mediante pruebas reales
que complementen los resultados de los modelos formales, de este modo
la evaluación del protocolo es más completa. Además, podría evaluarse la
incorporación de estos problemas detectados en el modelo formal lo que permitiría obtener un modelo más completo y ajustado a la realidad.
277
i
i
i
i
i
i
i
i
Capı́tulo
8
Conclusiones
En este capítulo se revisan los objetivos alcanzados tras finalizar la tesis,
se destacan las conclusiones globales y se describen las líneas de trabajo
futuras a seguir para ampliar el presente trabajo.
279
i
i
i
i
Capítulo 8. Conclusiones
8.1. Revisión de los objetivos alcanzados
En el capítulo 2 se analizan las redes ad hoc y los diferentes tipos de protocolos de encaminamiento para este tipo de redes, destacándose aquellos que
están en un nivel más avanzado de estandarización y han sido promovidos
por el IETF MANET Working Group que ha publicado sus especificaciones
como Experimental RFC. De entre esos protocolos, finalmente se han seleccionado por estar entre los más estudiados tanto mediante modelado como
en implementaciones reales dos protocolos, el OLSR protocolo proactivo y el
AODV protocolo reactivo, escogiéndose el protocolo reactivo como aquel que
se ajusta mejor a las características del escenario a representar en los modelos
formales a implementar en la tesis.
En el capítulo 3 se evalúa y justifica la elección de las redes de Petri y más
concretamente las redes de actividad estocástica como técnicas válidas para
evaluar el comportamiento de las redes ad hoc. Entre las diversas herramientas que soportan las especificaciones de las SAN se han escogido UltraSAN
y su sucesor Möbius (que fue lanzado durante la ejecución de la tesis) para
la implementación de los modelos formales con los que se evalúa el comportamiento de las redes ad hoc ante el movimiento de sus nodos.
En el capítulo 4, gracias a la colaboración en los distintos convenios y
proyectos de investigación que han permitido la observación y el estudio del
comportamiento de los técnicos y usuarios de una gran instalación como es
el sistema de saneamiento de aguas del Ayuntamiento de Valencia, se han
definido los servicios típicos a ofrecer a los técnicos y supervisores de estos
sistemas así como sus requerimientos.
Los servicios de tiempo real solicitados en estos entornos industriales son
principalmente alertas e imágenes o streaming de vídeo. Se han evaluado
las distintas posibilidades que pueden darse a la hora de establecer una comunicación entre un nodo fuente y un nodo destino cuando se solicita la
visualización de imágenes/streaming o cuando se recibe una alarma. Estos
servicios tienen unos requerimientos temporales que se han de cumplir, se
280
i
i
i
i
Capítulo 8. Conclusiones
ha definido el retardo máximo permitido desde que se produce una alarma
y esta es recibida por el usuario suscrito como un tiempo menor a 1 segundo
y el retardo máximo para la recepción de imágenes o streaming de vídeo no
puede ser superior a 3 segundos. Toda aquella información que supere estos
tiempos será descartada por no ser útil para la supervisión de la instalación.
Además de los servicios a ofrecer por el sistema que rige la instalación,
se definen los parámetros y valores que caracterizan un escenario que represente este tipo de sistemas. Las distintas estaciones remotas, lugar donde se
pueden generar de forma espontánea las redes ad hoc bajo estudio no superan generalmente los 100000 m2 y el número de nodos de la red ad hoc que
viene representado por los operarios que están trabajando en dicha estación
remota se encuentra entre 4 y 6. Estos técnicos una vez situados en la estación remota, supervisan los distintos elementos de la instalación (bombas,
acequias, compuertas...) desplazándose caminando, por lo que la velocidad
media está alrededor de los 5 Km/h (1.38 m/s).
En el caso de las alarmas, el usuario las recibe porque durante el proceso de configuración de las mismas ha sido suscrito. Por esto, el técnico
o controlador recibe la alarma de forma automática cuando ésta se produce sin necesidad de solicitarla. El tiempo medio típico de observación por
un supervisor de una alarma recibida es aproximadamente de 20 segundos,
tiempo suficiente para leer en la pantalla por ejemplo que el nivel del agua
está superando el máximo establecido.
En el caso de las imágenes o el streaming de vídeo, es el operario el que
debe realizar la petición, seleccionando la cámara de la instalación que desea
para que el sistema le ofrezca las imágenes. En este caso por tanto, ha sido
necesario establecer el tiempo entre solicitudes, aunque este tiempo puede
ser muy variable, se ha considerado 1 solicitud cada 3 minutos para el caso
de cámaras fijas y 1 solicitud cada 30 segundos en el caso de que la cámara
sea móvil, considerando en este último caso que cada solicitud corresponde a una orden de posicionamiento distinta. Por otra parte, el tiempo medio
durante el cual el usuario suele observar la pantalla de su dispositivo para
281
i
i
i
i
Capítulo 8. Conclusiones
visualizar las imágenes se encuentra entre 1 y 3 minutos en el caso de que
el funcionamiento del sistema se encuentre en estado normal, no así en estado de alerta donde la visualización puede durar horas a petición de los
supervisores.
En el capítulo 5 se presenta la evolución de los modelos matemáticos diseñados con UltraSAN y Möbius, modelos que representan el comportamiento
de las redes ad hoc que pueden generarse en ambientes industriales como el
escenario descrito en el capítulo 4.
Para representar el funcionamiento de un protocolo de encaminamiento
reactivo se han utilizado características del AODV, no se ha modelado el
comportamiento del AODV en detalle sino una red ad hoc completa cuyos
nodos tienen una movilidad media/baja y un protocolo de encaminamiento
que solo crea las rutas cuando es necesario el intercambio de información.
Se ha evaluado el comportamiento de la red ad hoc en su conjunto, y no la
validez del protocolo de encaminamiento en sí mismo, para determinar si una
red con estas características puede ofrecer en términos de descubrimiento,
mantenimiento y recuperación de rutas los servicios típicos de las grandes
instalaciones como la tomada de ejemplo.
El modelado del movimiento de los nodos, la posición exacta de cada uno
de ellos en el área de trabajo tras su movimiento, el conocimiento exacto de
la ruta creada (orden de los nodos en el camino) así como el conocimiento
exacto de la ruta alternativa que sustituya a una ruta que se haya roto ha
sido muy complejo, por lo que la programación del modelo en algunos de
sus elementos es extensa y ha impedido la resolución del modelo de forma
analítica.
Los resultados obtenidos con los modelos formales presentados en el capítulo 6 demuestran que en un entorno poco ruidoso se obtiene ruta casi un
70 % de las veces que se solicita, pero en el caso de que el ruido aumente, solo
se pueden establecer como máximo la mitad de las comunicaciones solicitadas. Además del establecimiento se ha evaluado también el mantenimiento
de ruta, y de las rutas establecidas más del 50 % se han perdido, siendo las ru-
282
i
i
i
i
Capítulo 8. Conclusiones
tas multi-hop las que se pierden con más frecuencia. De esas rutas perdidas,
es posible recuperar algo más del 50 % (este valor varía según los parámetros escogidos) pero esto no evita que durante el tiempo de recuperación se
produzcan cortes y pérdidas de información.
Los tiempos de establecimiento y recuperación afectan al servicio en cuanto han de cumplirse los requerimientos temporales, la mayoría de las rutas se
encuentran en el primer intento, pero también el tiempo de mantenimiento
está directamente relacionado con el servicio, de modo que si la ruta no se
mantiene estable no es posible ofrecer el servicio correctamente. En el caso de
los servicios evaluados durante un tiempo de sesión corto, aproximadamente
20 s, la ruta se mantiene estable entre el 70 % y el 85 % del tiempo, tiempo
suficiente para la visualización en pantalla de la información. De todos modos teniendo en cuenta que ese tiempo de sesión se ha considerado cuando
el servicio evaluado es una alarma, lo que interesa es que la alarma llegue y
lo haga a tiempo, una vez la información es recibida el mantenimiento de la
ruta estable ya no influye en la recepción y visualización de la información.
Si el tiempo de observación es mayor, los continuos cortes, aunque la ruta
se recupere, dificultan la visualización de cierto tipo de información como
pueden ser las imágenes o el streaming de video, ya que la ruta se mantiene estable de media el 50 % del tiempo que el usuario está visualizando la
pantalla, alcanzando mínimos hasta del 30 % del tiempo total y máximos del
75 %, dependiendo de la tasa de error.
En el capítulo 7 se ha presentado un banco de pruebas creado en el laboratorio con 6 nodos estáticos como máximo donde la ausencia de visibilidad
entre nodos se ha realizado bloqueando las direcciones MAC de los dispositivos.
Los experimentos realizados en el banco de pruebas han permitido complementar, comparar y encontrar similitudes entre los resultados de los modelos formales y los resultados obtenidos con las pruebas en laboratorio.
Con estas pruebas se ha podido conocer mejor el funcionamiento del protocolo AODV utilizado en el banco de pruebas, se han observado compor-
283
i
i
i
i
Capítulo 8. Conclusiones
tamientos difíciles de obtener mediante modelos formales, un ejemplo es la
intermitencia de rutas incluso cuando no hay cambios de topología. Además gracias a la posibilidad que ofrece la versión utilizada del protocolo de
encaminamiento (AODV-UU) de modificar el código, se han variado parámetros del modelo obteniéndose un comportamiento más favorable para los
servicios evaluados.
8.2. Conclusiones
Como conclusiones globales de los principales bloques de la tesis decir
que:
Estado del arte, selección del protocolo y herramienta de modelado.
Se han definido los servicios típicos a ofrecer en las grandes instalaciones de supervisión y control tomando como ejemplo un sistema de
gestión de aguas real.
Se ha realizado un amplio estudio de los protocolos de encaminamiento en redes ad hoc para conocer los más estudiados y avanzados en
cuanto a estandarización e implementación, eligiéndose un protocolo
de encaminamiento reactivo, el AODV, como el más adecuado para el
escenario definido en el que se pueden generar las redes ad hoc móviles
de forma espontánea.
Se han escogido las redes de actividad estocástica (SAN) como técnica
de modelado y las herramientas UltraSAN y Möbius para llevar a cabo
la implementación de los modelos formales.
Modelado. Para la realización de los modelos formales se ha seguido
una metodología concreta empezando con la realización de modelos
sencillos y ampliando estos de forma progresiva. En cada uno de ellos
se han seguido una serie de pasos de validación, verificación de comportamientos, planificación e interpretación de medidas.
284
i
i
i
i
Capítulo 8. Conclusiones
Se ha conseguido un modelo aproximado de la realidad del escenario
planteado (red ad hoc completa con una topología cambiante), complejo
pero del cual es posible extraer resultados útiles para la evaluación de
los sistemas bajo estudio.
El modelo formal permite evaluar el comportamiento de una red ad
hoc con un protocolo de encaminamiento reactivo.
Se ha evaluado como afecta al comportamiento de la red desde el punto
de vista temporal (establecimiento, mantenimiento y recuperación de
rutas) el número de nodos, la velocidad de movimiento de los mismos,
el rango de transmisión radio, el tamaño de la zona de trabajo y la tasa
de error.
A su vez se ha comprobado la potencia y las limitaciones de SAN (Stochastic Activity Networks) para desarrollar y evaluar sistemas complejos como lo puede ser una red ad hoc con muchos parámetros variables.
Resultados modelos formales. Son muchos los resultados obtenidos
tras la evaluación de los modelos formales diseñados. Éstos han permitido determinar las rutas establecidas tras una solicitud; el valor del
rango de transmisión en el que se alcanza el máximo número de comunicaciones multi-hop lo que proporciona un ahorro en términos de
energía frente a las comunicaciones single-hop; observar como las rutas
con mayor probabilidad son las de 2 y 3 saltos, siendo escasas las de 4
y 5 saltos; evaluar los tiempos de establecimiento y recuperación de las
rutas; el tiempo medio de duración de la conexión...
Lo importante de estos resultados es que permiten identificar si pueden ser ofrecidos los servicios típicos de un sistema como el evaluado.
Estos servicios son alertas e imágenes o streaming de vídeo, según los
resultados obtenidos en el capítulo 6 se ha determinado la percepción
con la que el usuario puede recibir la información, siempre teniendo en
cuenta que la clasificación es válida para el escenario evaluado.
En términos generales el usuario podrá percibir correctamente y con
el tiempo adecuado una alerta a la que esté suscrito si la obtiene a
285
i
i
i
i
Capítulo 8. Conclusiones
través de la red ad hoc en caso de no ser alcanzable directamente por el
servidor de la misma. Por el contrario, la calidad con la que percibirá el
usuario un servicio donde se ofrezcan imágenes o streaming de vídeo
será deficiente si se utilizan los parámetros por defecto del protocolo
AODV por los continuos cortes que pueden producirse en el caso de
una visualización durante un tiempo igual o superior a 1 minuto.
Pruebas reales. Se ha implementado un banco de pruebas en laboratorio con nodos estáticos para el estudio del protocolo de encaminamiento AODV-UU. Al igual que en el desarrollo de los modelos formales
se han llevado a cabo distintas etapas, creación de los escenarios, planificación y realización de las pruebas, toma de medidas y análisis de
resultados.
El banco de pruebas ha permitido además de conocer el funcionamiento
real del protocolo, evaluar en tiempo real uno de los servicios a ofrecer
por las instalaciones estudiadas, el streaming de vídeo.
Finalmente, se han modificado los valores por defecto de los parámetros
del protocolo de encaminamiento hasta encontrar un equilibrio entre el
throughput y el tiempo de recuperación de la ruta, permitiendo la correcta transmisión y mejor visualización del streaming de vídeo. Lo que
significa que según el servicio a ofrecer por la red se podrían adaptar
los parámetros del protocolo para mejorar la calidad de los mismos.
Resultados complementarios Las pruebas reales realizadas han permitido complementar los resultados obtenidos con los modelos formales
así como validarlos y establecer similitudes.
Los resultados de las pruebas han mostrado como las rutas con pocos
saltos se han encontrado casi de forma instantánea. Del mismo modo
en los modelos se ha obtenido un elevado porcentaje de rutas con comunicación directa ó 2 y 3 saltos, estableciéndose la gran mayoría tras
el primer intento de búsqueda. Esto corrobora que prácticamente todas las rutas que se establezcan, lo hagan antes del tiempo de espera
máximo permitido para los servicios evaluados.
286
i
i
i
i
Capítulo 8. Conclusiones
Con el banco de pruebas se ha demostrado como las rutas con más de
tres saltos necesitan un mayor tiempo de resolución de ruta provocando
tiempos de espera en ocasiones inaceptables. En los modelos, se ha
destacado la escasa existencia de rutas con 4 y 5 saltos, y en el caso
de que se creen rutas de ese tamaño no lo hacen nunca tras el primer
intento (o en un porcentaje muy bajo para las rutas con 4 saltos), por lo
que los tiempos de establecimiento y recuperación para ese número de
saltos se incrementan.
Las pruebas realizadas con el AODV durante las transmisión de streaming de vídeo han mostrado continuos microcortes en el vídeo y audio,
esto se puede asociar al bajo tiempo medio que la ruta se mantiene estable según los resultados obtenidos con los modelos formales. El tiempo
medio que se mantiene la conexión es bajo cuando se evalúan los servicios de transmisión de imágenes y streaming debido a las continuas
pérdidas de ruta que obligan a iniciar un nuevo proceso de recuperación, y aunque muchas se recuperan no siempre es posible o el tiempo
es elevado.
En general según los resultados, se puede decir que si se necesita una
ruta estable durante un tiempo breve (20 s para el caso de las alertas) la
red y el protocolo de encaminamiento responden correctamente, pero
si se necesita una ruta estable durante un tiempo mayor (1 y 3 minutos
para las imágenes) la red no responde de forma adecuada porque la
ruta es muy variable.
Además de validar algunos resultados, gracias a las pruebas realizadas
se han podido observar comportamientos del protocolo que no han sido evaluados mediante los modelos formales como son: la intermitencia
de rutas, aunque no haya cambios de topología, que provoca continuos
retardos y pérdidas de conectividad; el efecto del incremento gradual
del TTL en la transmisión de los paquetes de búsqueda de ruta; el incremento de la tasa de error con el número de nodos en la red y la
medida del throughput y su variación según el número de nodos que
287
i
i
i
i
Capítulo 8. Conclusiones
participan en el escenario.
8.3. Líneas de trabajo futuras
A continuación se destacan las líneas de trabajo que suponen una continuación de la tesis.
Aunque se ha seleccionado un protocolo reactivo por ajustarse sus características a las necesidades del sistema bajo estudio, una posible ampliación
es la implementación y evaluación de un protocolo proactivo, concretamente el OLSR. De este modo se realizaría un estudio comparativo entre ambos
protocolos, comparativa que debería centrarse en el escenario seleccionado.
Como ampliación al modelo diseñado, se puede realizar el modelado, estudio y comparación de otros modelos de movilidad como son el random
waypoint y el random direction para evaluar su efecto sobre el comportamiento de la red ad hoc.
Introducir el modelado de errores durante la transmisión una vez establecida la ruta. Los errores durante el establecimiento y recuperación de la ruta
influyen en el comportamiento temporal de las mismas, pero también afectan
los problemas que puedan surgir una vez establecida la comunicación, cortes
durante la transmisión aunque no haya movimiento, pérdida de paquetes,
etc.
Modelar la introducción de tráfico en la red, para que no sea únicamente la información transmitida entre los nodos de la ruta establecida la que
circule por la red, si no que pueda haber interferencias debidas a otras comunicaciones.
Gracias a las pruebas experimentales realizadas en el banco de pruebas
se ha visto el efecto de la intermitencia de rutas en el comportamiento del
protocolo, una ampliación del modelo es el estudio e incorporación de esta
problemática.
288
i
i
i
i
Capítulo 8. Conclusiones
El principal problema durante la realización de las pruebas reales ha sido
el ruido, todos los nodos están situados en el mismo entorno de colisión, lo
que hace complicada la realización de pruebas de forma continuada con un
mantenimiento coherente de valores. De todos modos, el ruido del entorno
permite que las pruebas realizadas en el laboratorio puedan considerarse similares a las que se podrían llevar a cabo en un escenario industrial donde los
equipos provocan interferencias y problemas de comunicaciones. Aún así, si
la intención es estudiar el comportamiento del protocolo durante la transmisión de información sin que intervengan problemas externos al mismo, una
recomendación es el estudio previo de la utilización de un entorno aislado
donde poder trabajar con los equipos sin que las radiaciones externas afecten
a los resultados de forma totalmente aleatoria.
Al margen del problema del ruido, es interesante el estudio del protocolo
en exteriores con distancias reales entre los nodos en lugar del uso de firewall
de nivel 2. De esta forma se podrían realizar pruebas que consideren la sensibilidad de las tarjetas y la potencia de transmisión. En una primera etapa las
pruebas en exterior se realizarían con nodos estáticos y en la segunda etapa
se evaluaría como se comporta la misma red si los nodos se mueven.
Seguir trabajando en entornos reales evaluando otras tecnologías como
802.11n.
En cuanto a los servicios evaluados, una línea futura es el estudio del
comportamiento de aplicaciones de voz que también pueden darse en los
sistemas de supervisión y control así como las alertas, ya que en el banco de
pruebas se ha evaluado únicamente el streaming de vídeo.
Otros aspectos a evaluar en el protocolo AODV son la seguridad, mejoras
del protocolo, migración a otros equipos como routers inalámbricos o PDAs,
o uso en otras plataformas no-WiFi como bluetooth, WiMAX o incluso GSM,
o aplicaciones en redes de sensores o redes vehiculares (VANETs).
289
i
i
i
i
i
i
i
i
Apéndices
291
i
i
i
i
i
i
i
i
Apéndice
A
Abreviaturas y acrónimos
ABR.
Associative-Based Routing
AODV.
AODV-UU.
ARA.
Ad-Hoc On-demand Distance Vector
AODV Uppsala University implementation
Ant-colony-based Routing Algorithm
BRP.
BSS.
Bordercast Resolution Protocol
Basic Service Set
CBRP.
CGSR.
Cluster-Based Routing Protocol
Cluster-head Gateway Switch Routing
CH.
CPN.
Cluster Head
Colored Petri Net
DDR.
DREAM.
DSDV.
Distributed Dynamic Routing
Distance Routing Effect Algorithm for Mobility
Destination-Sequenced Distance-Vector routing Protocol
DSPN.
Deterministic and Stochastic Petri Net
DSPNexpress. Deterministic and Stochastic Petri Nets express
DSR.
DST.
Dynamic Source Routing
Distributed Spanning Trees based routing Protocol
DYMO.
DYnamic MANET On-demand
293
i
i
i
i
Apéndice A. Abreviaturas y acrónimos
294
ER.
ESS.
ETSI.
Error rate
Extended Service Set
European Telecommunications Standards Institute
FORP.
FSR.
Flow Oriented Routing Protocol
Fisheye State Routing
FTP.
GAF.
File Transfer Protocol
Geographic Adaptive Fidelity
GPRS.
GSM.
General Packet Radio Service
Global System for Mobile communication
GSPN.
GSR.
HFC.
Redes de Petri estocástias generalizadas
Global State Routing
Hybrid Fibre Coaxial
HIPERLAN.
HSDPA.
HIgh PErformance Radio LAN
High Speed Downlink Packet Access
HSR.
IBSS.
Hierarchical State Routing
Independence Basic Service Set
ICMP.
IERP.
IETF.
Internet Control Message Protocol
Intrazone/Interzone Routing Protocols
Internet Engineering Task Force
IP.
LAR.
Internet Protocol
Location Aided Routing
LEACH.
LMR.
Low Energy Adaptive Clustering Hierarchy
Lightweight Mobile Routing
MAC.
MANET.
Medium Access Control
Mobile Ad hoc NETworks
MC.
MIB.
MPR.
Markov Chain
Management Information Base
MultiPoint Relaying
MMWN.
NTP.
Multimedia support in Mobile Wireless Networks
Network Time Protocol
OID.
OLSR.
Object IDentifier
Optimized Link-State Routing protocol
i
i
i
i
Apéndice A. Abreviaturas y acrónimos
PDF.
PLC.
PTP.
Probability Density Function
Programmable Locic Controller
Precision Time Protocol
P2P.
QoS.
Peer-to-Peer
Quality of Service
RDMAR.
RdP.
Relative Distance Micro-discovery Ad hoc Routing
Rede de Petri
RFC.
ROAM.
Request For Comments
Routing On-demand Acyclic Multi-path
RRA.
RREP.
RREQ.
Reliable Routing Algorithm
Route REPlay
Route REQuest
RTS/CTS.
SAN.
Request To Send/Clear To Send
Stochastic Activity Networks
SLURP.
SNIR.
Scalable Location Update Routing Protocol
Signal to Noise and Interference Ratio
SNMP.
S.O.
SPIN.
Simple Network Management Protocol
Sistema Operativo
Sensor Protocols for Information via Negotiation
SPN.
SSA.
Stochastic Petri Nets (Redes de Petri estocásticas)
Signal Stability Adaptive
SSH.
SSR.
Secure SHell
Signal Stability Routing
STAR.
TA.
Source-Tree Adaptive Routing
Topology Approximation
TBRPF.
TORA.
TPN.
Topology dissemination Based on Reverse Path Forwarding
Temporary Ordered Routing Algorithm
Time Petri Net
UDP.
UMTS.
User Datagram Protocol
Universal Mobile Telecommunications System
u.t.
VLC.
unidades de tiempo
VideLAN Client
295
i
i
i
i
Apéndice A. Abreviaturas y acrónimos
296
WiMAX.
WLAN.
WMAN.
Worldwide Interoperability for Microwave Access
Wireless Local Area Networks
Wireless Metropolitan Area Networks
WMN.
WPAN.
Wireless Mesh Network
Wireless Personal Area Networks
WRP.
WSN.
Wireless Routing Protocol
Wireless Sensor Network
WWAN.
xDSL.
Wireless Wide Area Networks
Digital Subscriber Line
ZHLS.
ZRP.
Zone-based Hierarchical Link State
Zone Routing Protocol
i
i
i
i
Apéndice
B
Notación, variables y
parámetros más utilizados
Escenario
R
T
Rango de cobertura radio
Mosaico tipo T
λm
λc
tasa de movimiento
tasa de llamadas
Ahorro de energía
Pt
Potencia de transmisión
Pt_sh
Pt_mh
Pr
Potencia de transmisión de cada nodo en una comunicación single-hop
Potencia de transmisión de cada nodo en una comunicación multi-hop
Potencia de recepción
Pr_sh
Pr_mh
Potencia de recepción single-hop
Potencia de recepción multi-hop
k
α
Constante de proporcionalidad
Coeficiente de pérdida de ruta
d
Distancia entre nodos
297
i
i
i
i
Apéndice B. Notación, variables y parámetros más utilizados
dtotal
n
298
Distancia total entre origen y destino
Número de saltos
i
i
i
i
Apéndice
C
Anexo
En este anexo se incluye información adicional a la presentada en la tesis.
En primer lugar, se muestra de forma anecdótica el primer escenario
bidimensional diseñado para utilizar en los modelos formales y la subred
de posición asociada. Este diseño fue abandonado por la complejidad que
suponía modelar la red de posición y movimiento debido a la numeración
escogida de las celdas que representaban el área de trabajo.
En segundo lugar como complemento a la descripción de las subredes,
se muestra un ejemplo de las combinaciones de nodos que pueden formar una ruta cuando la red está formada por 6 equipos. Combinaciones
que deben ser evaluadas en la subred correspondiente, ya que el modelo
debe conocer y almacenar la ruta exacta escogida como válida para la
transmisión de la información.
299
i
i
i
i
Apéndice C. Anexo
C.1. Escenario: plano bidimensional, zona dividida en anillos.
En esta sección del apéndice se presenta la numeración utilizada en la
primera zona de trabajo diseñada en el plano bidimensional, zona de trabajo
en la que se sitúan los nodos móviles. La zona de trabajo está dividida en
celdas hexagonales. En un escenario como este, ver Fig. C.1, es necesario
saber que cualquier anillo ”j” salvo el anillo 1 (que tiene únicamente una
celda), tiene 6*(j-1) celdas. A cada una de las celdas se le ha dado un valor
de dos dígitos, el primero corresponde al anillo siendo el 1 el más interno. El
segundo dígito corresponde al número de la celda dentro de ese anillo.
Cuando se trabajaba en una dimensión, el nodo sólo podía moverse hacia
la derecha o hacia la izquierda con probabilidades de 1/2, pero al trabajar
en dos dimensiones, el nodo puede realizar tres posibles movimientos: puede moverse, pero permanece en el mismo anillo en el que estaba antes del
movimiento; se mueve al anillo contiguo interno; o se mueve al anillo contiguo externo. Además la probabilidad de moverse de un modo u otro no será
siempre la misma, pues dependerá del anillo en el que se encuentre. Si se
encuentra en el primer anillo y realiza un cambio de celda, se moverá con
probabilidad 1 al anillo 2. Si está en el anillo 2 y se mueve, pasará con probabilidad 1/2 al anillo 3, permanecerá en el mismo anillo 2 con probabilidad
1/3, y con probabilidad 1/6 volverá al anillo 1, ver Fig. C.2.
Se puede demostrar por inducción que estando en el anillo ”n”:
Se permanece en ese anillo con probabilidad 1/3.
Se pasa al anillo n+1 con probabilidad
2 · ( n − 1) + 1
6 · ( n − 1)
Se pasa al anillo n-1 con probabilidad
2 · ( n − 1) − 1
6 · ( n − 1)
300
i
i
i
i
Apéndice C. Anexo
Figura C.1: Zona de trabajo formada por anillos de celdas hexagonales.
Para poder trabajar con la zona de trabajo planteada es necesario conocer
la numeración de las celdas vecinas para saber a qué celda se ha desplazado
el nodo tras un movimiento. Cuando uno de los nodos se encuentre en la
celda central (1,1), encontrar la distancia hasta la celda destino, es sencillo,
el número de anillos que los separa. Por el contrario, si los dos nodos que
quieren comunicar están en cualquier otra celda, se debe encontrar la forma
de calcular la distancia en celdas que los separa, para así conocer si el rango
de cobertura radio de los nodos es suficiente. Para ello, se debe conocer la
numeración de las celdas que rodean a un nodo que está en una celda determinada. En primer lugar se determinará el número de celdas vecinas que
tiene ese nodo en el anillo exterior, el número de celdas vecinas que tiene
en el anillo interior, y el número de celdas vecinas en su mismo anillo, que
siempre serán 2 excepto en el caso de la celda (1,1) que no tiene vecinas en
su mismo anillo. En total cualquier celda siempre tendrá otras 6 celdas a su
alrededor. El anillo es 1 es una excepción a este método, ya que únicamente
tendrá celdas vecinas en su anillo exterior.
301
i
i
i
i
Apéndice C. Anexo
Celdas vecinas que tiene la celda actual en el anillo exterior:
Si la celda actual está en el anillo 1, tendrá 6 vecinas en el anillo exterior
(anillo 2).
Si la celda actual está en cualquier otro anillo se cumplirá el siguiente
código1 :
for ( n = 0 ; n < 6 ; n++){
i f ( PA_celda == 1 + n ∗ ( P A _ a n i l l o − 1))
3 c e l d a s c o n t i g u a s en e l a n i l l o e x t e r i o r
else
2 c e l d a s c o n t i g u a s en e l a n i l l o e x t e r i o r
}
Celdas vecinas que tiene la celda actual en el anillo exterior:
Si la celda actual está en el anillo 1, no tendrá ninguna celda vecina en
el anillo interior.
1 PA_celda,
celda donde se encuentra el nodo actualmente; PA_anillo, anillo en el que se en-
cuentra dicha celda; PB_celdamin , PB_celdamax , celda vecina a PA_celda que tiene la numeración
mínima o máxima respectivamente de todas sus vecinas en ese anillo.
Figura C.2: Probabilidades de movimiento según el anillo en el que esté el
nodo
302
i
i
i
i
Apéndice C. Anexo
Si la celda está en cualquier otro anillo:
for ( n = 0 ; n < 6 ; n ++){
i f ( PA_celda = = 1+ n ( P A _ a n i l l o −1 ) )
1 c e l d a c o n t i g u a en e l a n i l l o
interior
else
2 c e l d a s c o n t i g u a s en e l a n i l l o i n t e r i o r
}
Conocido el número de celdas vecinas en el anillo interior y exterior, se puede ejecutar el algoritmo para conocer la numeración de dichas celdas. En
realidad se obtendrá únicamente la numeración de una de las celdas vecinas
ya sea en el anillo interior o en el anillo exterior a la actual, dado que se
conocerá el número de vecinas en cada anillo, el resto de celdas se obtendrá
automáticamente.
Numeración de las celdas vecinas a la actual en el anillo exterior:
Si la celda actual es la (1,1), se conoce automáticamente el valor de sus
celdas vecinas en el anillo exterior: (2, 1), (2, 2), (2, 3), (2, 4), (2, 5), (2, 6).
Si la celda actual se encuentra en cualquier otro anillo:
i f ( PA_celda <= P A _ a n i l l o ) {
PB_anillo = PA_anillo + 1 ;
PB_celdamin = PA_celda ;
}
else {
i n t celdas_grupo = P A _ a n i l l o − 1 ;
i n t var = ( PA_celda − P A _ a n i l l o ) / celdas_grupo ;
PB_anillo = PA_anillo + 1 ;
i f ( no ha habido r e s t o )
303
i
i
i
i
Apéndice C. Anexo
PB_celdamin = PA_celda + var ;
else
PB_celdamin = PA_celda + ( var + 1 ) ; }
Numeración de las celdas vecinas a la actual en el anillo interior:
Si la celda actual se encuentra en el anillo 1, no tendrá vecinas en el
anillo interior.
Si la celda actual se encuentra en el anillo 2, sólo tendrá una celda vecina
en el anillo interior:
i f ( P A _ a n i l l o == 2 ) {
PB_anillo = 1;
PB_celda
= 1;
}
Si la celda actual está en cualquiera de los otros anillos:
i f ( PA_celda <= P A _ a n i l l o − 1 ) {
PB_anillo
= PA_anillo − 1 ;
PB_celdamin = PA_celda ;
}
else {
i n t celdas_grupo = P A _ a n i l l o − 1 ;
i n t var = ( PA_celda − P A _ a n i l l o − 1 ) / celdas_grupo ;
PB_anillo = PA_anillo − 1 ;
i f ( no ha habido r e s t o )
PB_celdamax = PA_celda + var ;
else
304
i
i
i
i
Apéndice C. Anexo
PB_celdamax = PA_celda + ( var + 1 ) ;
}
Numeración de las celdas vecinas a la actual en el mismo anillo:
Si la celda actual se encuentra en el anillo 1, no tiene celdas vecinas en
su mismo anillo.
Si la celda actual se encuentra en cualquier otro anillo, tendrá dos vecinas de su mismo anillo2 :
PB_anillo = PA_anillo ;
i f ( PA_celda == 6 ( P A _ a n i l l o − 1 ) ) {
PB_celdamax = PA_celda − 1 ;
PB_celdamin = 1 ;
}
i f ( PA_celda == 1 ) {
PB_celdamax = 6 ( P A _ a n i l l o − 1 ) ;
PB_celdamin = PA_celda + 1 ;
}
else {
PB_celdamax = PA_celda + 1 ;
PB_celdamin = PA_celda − 1;
}
2 Las
celdas vecinas en el mismo anillo tendrán una numeración de celda igual a la actual
pero con una unidad más y una unidad menos, excepto en el de la primera celda del anillo o la
última. Si la celda es la última del anillo, las vecinas serán la celda con numeración inferior en
una unidad, y la primera celda del anillo, en cambio, si la celda es la primera numerada en el
anillo, las vecinas serán la celda con una numeración superior en una unidad y la última celda
del anillo.
305
i
i
i
i
Apéndice C. Anexo
Figura C.3: Zona de trabajo dividida en anillos donde se estudian los ángulos de movimiento que deben seguir los nodos si se realiza la traslación de
los ejes.
Debido a los problemas encontrados a la hora de diseñar los modelos que
utilizaban el área de trabajo aquí explicada, ver sección C.2, se buscaron soluciones para estudiar si la resolución y la programación de los modelos podría
ser más sencilla. Se trabajó en una traslación de ejes. La idea era trasladar el
nodo origen a la celda (1, 1) para hacer los cálculos más fácilmente, para ello,
se tenía que encontrar en qué celda quedaría después de la traslación el nodo
destino. El problema de la traslación era encontrar los ángulos que tenía que
ir moviéndose el nodo origen para situarlo en la posición (1,1), ver Fig. C.3.
Una vez encontrados estos ángulos, para que el nodo destino fuera también
trasladado, tenía que trasladarse con la misma combinación de ángulos que
lo había hecho el nodo origen.
Matemáticamente es fácil saber qué distancia separa al nodo origen del
centro de la zona de trabajo, celda (1, 1), pero ¿cómo encontrar con qué ángulo trasladar al nodo? ¿Cómo saber cual es la celda vecina hacia la que se
306
i
i
i
i
Apéndice C. Anexo
tiene que mover el nodo para llegar hasta el centro de la zona de trabajo?. Al
intentar resolver estos nuevos planteamientos se obtuvo un problema similar
al anterior.
307
i
i
i
i
Apéndice C. Anexo
C.2. Red de cuatro nodos donde el nodo ”A” intenta comunicar con el nodo ”C”. Plano bidimensional donde la zona de trabajo está dividida
en anillos.
En esta sección se describe brevemente y como ejemplo el modelo bidimensional diseñado cuando la zona de trabajo estaba numerada según los
anillos que la componían. Como se ha expuesto con anterioridad, esta numeración de las celdas dio lugar a un modelo mucho más complejo de lo
que era necesario, prueba de ello es el modelo resultante tras el cambio de
numeración de las celdas, por lo que el modelo que aquí se presenta fue
abandonado.
Este es el primer modelo bidimensional programado a partir de los modelos unidimensionales utilizados como base. La subred ”Posición” se ha
modificado, al trabajar en un plano bidimensional las probabilidades de movimiento han variado. Se ha implementado la probabilidad con la que el nodo
al moverse se queda en el mismo anillo, pasa a un anillo interno o a un anillo
externo, ver la sección C.1 de este mismo apéndice. En esta subred también
se realiza el cálculo de la celda concreta a la que se mueve el nodo, por tanto,
se debe conocer el valor de las celdas vecinas a la actual. Para poder conocer
la posición de cada nodo, están los lugares asociados a dicha posición, un
lugar determina el anillo en el que se encuentra «PA_anillo» y el otro la celda
dentro de ese anillo «PA_celda», en este ejemplo para el caso del nodo ”A”,
en la sección C.1 se ha explicado el cálculo de la numeración de las celdas
vecinas. En la Fig. C.4 se muestra la subred de posición de forma anecdótica,
ya que este modelo se dejó inacabado por su complicada programación. Esta
complicación está directamente relacionada con la forma en la que se han
numerado las celdas de la zona de trabajo como ya se ha explicado. También
la subred de búsqueda requiere una programación muy compleja en una de
308
i
i
i
i
Apéndice C. Anexo
Figura C.4: Subred ”Posición A”. Área de trabajo dividida en anillos.
sus puertas de salida, la puerta «Búsqueda».
309
i
i
i
i
Apéndice C. Anexo
C.3. Cálculo de la ruta exacta en el modelo bidimensional
A continuación se muestran las posibles combinaciones entre los nodos
que pueden formar la ruta cuando la red está formada por 6 nodos siendo
A el nodo origen y C el nodo destino. Estas son las combinaciones a evaluar
cuando en la subred correspondiente se está realizando la búsqueda de ruta.
Para el establecimiento, la primera ruta encontrada (evaluándose en el orden
que se presenta en la tabla C.1) es la ruta escogida, porque es la primera ruta
encontrada con el menor número de saltos.
Para la recuperación de la ruta el mecanismos es más complejo. Cuando
hay una ruta activa si se mueve uno de los nodos que pertenecen a ella se
debe evaluar en primer lugar si la ruta sigue existiendo y por ello es necesario
conocer la posición de cada nodo en la ruta y evaluar los enlaces con los
vecinos del nodo que se ha movido. En segundo lugar, en el caso de que se
haya roto alguno de los enlaces debe iniciarse de nuevo una búsqueda de
ruta evaluando todas y cada una de las combinaciones desde el principio
hasta que se encuentre una ruta alternativa.
Tabla C.1: Posibles rutas en una red con 6 nodos
Combinaciones
A-C
A-E-B-F-C
A-B-C
A-E-D-B-C
A-E-C
A-E-D-F-C
A-F-C
A-E-F-B-C
A-B-D-C
A-E-F-D-C
A-B-E-C
A-F-B-D-C
A-B-F-C
A-F-B-E-C
A-D-B-C
A-F-D-B-C
A-D-E-C
A-F-D-E-C
Continuación . . .
310
i
i
i
i
Apéndice C. Anexo
Tabla C.1: Posibles rutas en una red con 6 nodos (continuación)
Combinaciones
A-D-F-C
A-F-E-D-C
A-E-B-C
A-F-E-B-C
A-E-D-C
A-B-D-E-F-C
A-E-F-C
A-B-D-F-E-C
A-F-B-C
A-B-E-D-F-C
A-F-D-C
A-B-E-F-D-C
A-F-E-C
A-B-F-D-E-C
A-B-D-E-C
A-B-F-E-D-C
A-B-D-F-C
A-D-B-E-F-C
A-B-E-D-C
A-D-B-F-E-C
A-B-E-F-C
A-D-E-B-F-C
A-B-F-D-C
A-D-E-F-B-C
A-B-F-E-C
A-D-F-B-E-C
A-D-B-E-C
A-D-F-E-B-C
A-D-B-F-C
A-F-B-D-E-C
A-D-E-F-C
A-F-B-E-D-C
A-D-E-B-C
A-F-D-B-E-C
A-D-F-B-C
A-F-D-E-B-C
A-D-F-E-C
A-F-E-B-D-C
A-E-B-D-C
A-F-E-D-B-C
311
i
i
i
i
i
i
i
i
Apéndice
D
Publicaciones
D.1. Relacionadas con la tesis
D.1.1.
Capítulo de libro
1. Javier Silvestre-Blanes, Víctor-M. Sempere-Payá, Teresa Albero-Albero.
Título del libro: Factory Automation.
Título del capítulo: VAN Applied to Control of Utilities Networks.
Requirements and Capabilities.
Intechweb, March 2010, ISBN: 978-953-307-024-7.
Edited by Javier Silvestre-Blanes.
2. Teresa Albero-Albero and Víctor-M. Sempere-Payá.
Título del libro: Industrial Electronics Handbook (Electrical Engineering Handbook).
Título del capítulo: Routing in Wireless Networks.
313
i
i
i
i
Apéndice D. Publicaciones
2nd ed. J. D. Irwin and B. Wilamowski, Eds. Florida, USA: CRC Press,
February 2011. ISBN: 978-0849383434
D.1.2.
Revista
Nacional
1. Víctor Sempere, Javier Silvestre, Teresa Albero, Pablo Cabañuz.
Sistema de Supervisión y Control de Ámbito Metropolitano Basado
en Redes Públicas de Comunicación, Automática e Instrumentación
(CETISA BOIXAREU), Vol. 345, pp. 128-133, Noviembre 2003. ISSN:
0213-3113
2. V. Sempere, J. Silvestre, T. Albero, C. Díez.
Acceso remoto a imágenes e información de control de un Sistema de
Supervisión mediante dispositivos móviles. Automática e Instrumentación (CETISA BOIXAREU), Vol. 357, pp 64-69, Diciembre 2004. ISSN:
0213-3113
Internacional
1. V. Sempere, T. Albero, J. Silvestre.
Analysis of Communication alternatives in a Heterogeneous Network
for a Supervision and Control System, Elsevier. Computer Communications, Vol. 29, pp. 1133-1145. 2006 ISSN: 0140-3664
2. Teresa Albero-Albero, Víctor-M. Sempere-Payá, Jorge Mataix-Oltra.
Study of the Path Average Lifetime in ad hoc Networks using Stochastic Activity Networks. In Proceedings of the 16th International
Conference on Analytical and Stochastic Modelling Techniques and Applications, ASMTA’09. Lecture Notes in Computer Science, Vol. 5513.
314
i
i
i
i
Apéndice D. Publicaciones
Khalid Al-Begain, Dieter Fiems, Gábor Horváth (Eds.). Springer Proceedings of the 16th International Conference, ASMTA’09, pp 71-88.
Madrid, España. 2009
3. Teresa Albero-Albero, Víctor-M. Sempere-Payá, Jorge Mataix-Oltra.
Analysis and evaluation of the establishment and maintenance of
paths in a MANET used for industrial process monitoring, Elsevier.
Performance Evaluation, 2010. Submitted.
D.1.3.
Congreso
Nacional
1. T. Albero, V. Sempere, J. Silvestre.
Nuevas tecnologías aplicadas a la red de saneamiento de la ciudad
de Valencia. In Proceedings of the II Jornadas de la Investigación ante
la Sociedad del Conocimiento”. Sostenibilidad y medioambiente. pp.
93-96. Alcoy, España. 2005
2. J. Silvestre V. Sempere, T. Albero.
Telemonitorización en áreas metropolitanas con WiMAX. In Proceedings of the III Jornadas de la Investigación ante la Sociedad del Conocimiento. Sostenibilidad y medioambiente. pp.117-120. Alcoy, España.
2006
3. T. Albero, V. Sempere, J. Silvestre and J. Peiró.
Sistema de captura de datos medioambientales mediante GPRS. In
Proceedings of the IV Jornadas de la Investigación ante la Sociedad
del Conocimiento. Sostenibilidad y Medioambiente. pp. 143-147. Alcoy,
España. 2007
4. T. Albero, V. Sempere, J. Mataix.
315
i
i
i
i
Apéndice D. Publicaciones
Estudio de alcanzabilidad en Redes ad hoc mediante redes de Actividad Estocástica. In Proceedings of the VI Jornadas de Ingeniería
Telemática (JITEL’07). Málaga, España. 2007
5. Pedro Chaparro Valero, David Remondo, Mari Carmen Domingo, Jesús
Alcober, Teresa Albero.
Emulación de Redes ad hoc. In Proceedings of the Simposium Nacional
de la Unión Científica Internacional de Radio. URSI’06. Oviedo, España.
2006
Internacional
1. V. Sempere, J. Silvestre, T. Albero.
Supervision and control system of metropolitan scope based on public communication networks. In Proceedings of the IFAC International Conference on Fieldbus Systems and their applications, FeT’03. pp
317-323. Aveiro, Portugal. 2003
2. V. Sempere, T. Albero, J. Silvestre.
Remote Access to Images and Control Information of a Supervision
System through GPRS. In Proceedings of the 1st IFAC Symposium on
Telematics Applications on Automation and Robotics, TA’04. pp 107112. Helsinki, Finlandia. 2004
3. V. Sempere, T. Albero, J. Silvestre.
Analysis of Communication alternatives over Public Networks for
Supervision and Control Systems of Metropolitan Scope. In Proceedings of the IEEE International Symposium on Industrial Electronics,
ISIE’04. pp. 597–602. Ajaccio, Francia. 2004
4. T. Albero, V. Sempere, J. Silvestre, P. Dabbas.
316
i
i
i
i
Apéndice D. Publicaciones
Environmental Control System based on mobile devices. In Proceedings of the 10th IEEE International Conference on Emerging Technologies and Factory Automation, ETFA’05. Vol. 1, pp. 831-838. Catania,
Italia. 2005
5. T. Albero, V. Sempere, J. Mataix.
A study of mobility and reachability in ad hoc Networks using Stochastic Activity Networks. In Proceedings of the 2nd Conference on
Next Generation Internet Design and Engineering. International, NGI’06.
pp. 86-93. Valencia, España. 2006
6. T. Albero, V. Sempere, J. Mataix.
A study of multi-hop communications in ad hoc Networks using Stochastic Activity Networks. In Proceedings of the Workshop on Wireless
and Mobility (EURO-NGI). International. NGI’06. Sitges, España. 2006
7. J. Silvestre, V. Sempere and T. Albero.
Wireless metropolitan area networks for telemonitoring applications.
In Proceedings of the IFAC Fieldbus Technology and their Applications.
FET’07. Toulouse, Francia. 2007
8. Teresa Albero-Albero, Salvador Santonja-Climent, Víctor-M. SemperePayá, Jorge Mataix-Oltra.
Study and analysis of AODV on 802.11b networks in real static and
mobile scenarios. In Proceedings of the Euro-NF Workshop on Wireless
and Mobility. Stressa, Italia. September 2009
9. Teresa Albero-Albero, Salvador Santonja-Climent, Víctor-M. SemperePayá, Jorge Mataix-Oltra.
AODV Performance Evaluation and Proposal of Parameters Modification for Multimedia Traffic on Wireless ad hoc Networks. In Proceedings of the 2nd IFIP Wireless Days. Paris, Francia. December 2009
317
i
i
i
i
Apéndice D. Publicaciones
10. Salvador Santonja-Climent, Teresa Albero-Albero, Javier Silvestre-Blanes,
Víctor-M. Sempere-Payá, David Todolí-Ferrandis, Jesus Alcober.
Analysis of Control and Multimedia Real-Time Traffic over SIP and
RTP on 802.11n Wireless Links for Utilities Networks. In Proceedings
of the 15th IEEE International Conference on Emerging Technologies
and Factory Automation, ETFA’10. Bilbao, España. September 2010.
D.2. Otras publicaciones
D.2.1.
Congreso
Internacional
1. J. Silvestre, V. Sempere, T. Albero.
Impact of the use of large frames sizes in fieldbuses for multimedia
applications, In Proceedings of the 10th IEEE International Conference
on Emerging Technologies and Factory Automation, ETFA’05. Vol. 1 pp.
433-440. Catania, Italia. 2005
2. J. Silvestre, V. Sempere, T. Albero.
Industrial Video Sequences for Network Performance Evaluation, In
Proceedings of the IEEE International Workshop on Factory Communication Systems, WFCS’04. pp 343-347. Viena, Austria. 2004
318
i
i
i
i
Apéndice
E
Ámbito de la Tesis
Este trabajo se ha realizado en el ámbito de distintos proyectos de investigación de carácter nacional subvencionados por el Ministerio de Ciencia y
Tecnología:
Servicios en tiempo real en Redes Heterogéneas. Soporte a sistemas de supervisión y control en grandes instalaciones, TIC2003-08129-C01.
Especificación, evaluación e implementación de servicios media sobre una plataforma real de testbed constituida por una troncal heterogénea y redes ad-hoc,
TSI2006-13380-C02-02.
Especificación, evaluación e implementación de servicios media sobre una plataforma real de testbed constituida por una troncal heterogénea y redes ad-hoc,
TSI2007-66637-C02-02.
Servicios avanzados de monitorización y control sobre redes heterogéneas,
PET2007_0316.
319
i
i
i
i
Apéndice E. Ámbito de la Tesis
Por último agradecer el apoyo a este trabajo por parte de la Generalitat
Valenciana a través de la beca de formación de personal técnico de apoyo a
la investigación (FPATI) con referencia TS/03/UPV/09.
320
i
i
i
i
Bibliografía
[AASCSPMO09a] Teresa Albero-Albero, Salvador Santonja-Climent, VíctorM. Sempere-Payá, y Jorge Mataix-Oltra, Aodv performance
evaluation and proposal of parameters modification for multimedia traffic on wireless ad hoc networks, Proceedings of 2nd
IFIP Wireless Days (Paris, Francia), December 2009.
[AASCSPMO09b]
, Study and analysis of aodv on 802.11b networks in
real static and mobile scenarios, Proceedings of the Euro-NF
Workshop on Wireless and Mobility (Stressa, Italia), 2009.
[AASPMO09]
Teresa Albero-Albero, Víctor-M. Sempere-Payá, y Jorge
Mataix-Oltra, Study of the path average lifetime in ad hoc
networks using stochastic activity networks, Lecture Notes in
Computer Science, Springer Proceedigs of the 16th International Conference on Analytical and Stochastic Modelling Techniques and Applications, ASMTA’09 5513 (2009),
71–88.
[AASPMO10]
, Analysis and evaluation of the establishment and maintenance of paths in a manet used for industrial process monitoring, Performance Evaluation, en revisión (2010).
[AODa]
AODV,
Official
web
of
http://moment.cs.ucsb.edu/AODV/aodv.html.
aodv,
321
i
i
i
i
Bibliografía
322
[AODb]
AODV_UU,
Department
of
information
technology,
uppsala
university
(sweden),
http://core.it.uu.se/core/index.php/AODV-UU.
[AS10]
T. Albero y V. Sempere, Routing in wireless networks,, second ed., Industrial Electronics Handbook, ch. 3, pp. 3.1–
3.14, J. D. Irwin and B. Wilamowski, CRC Pres, 2010.
[ASM06]
T. Albero, V. Sempere, y J. Mataix, A study of mobility and
reachability in ad hoc networks using stochastic activity networks, Proceedings of the 2nd Conference on Next Generation Internet Design and Engineering. International,
NGI’06 (Valencia, España), 2006, pp. 86–93.
[ASM07]
, Estudio de alcanzabilidad en redes ad hoc mediante
redes de actividad estocástica, Proceedings of the VI Jornadas de Ingeniería Telemática (JITEL’07) (Málaga, España),
2007.
[ASSD05]
T. Albero, V. Sempere, J. Silvestre, y P. Dabbas, Environmental control system based on mobile devices, Proceedings of
10th IEEE International Conference on Emerging Technologies and Factory Automation, ETFA’05 (Catania, Italia),
vol. 1, 2005, pp. 831–838.
[AT99]
G. Aggelou y R. Tafazolli, Rdmar: a bandwidth-efficient routing protocol for mobile ad hoc networks, Proceedings of ACM
International Workshop on Wireless Mobile Multimedia
(WoWMoM), 1999, pp. 26–33.
[AWD04]
Mehran Abolhasan, Tadeusz Wysocki, y Eryk Dutkiewicz,
A review of routing protocols for mobile ad hoc networks, Ad
Hoc Networks 2 (2004), no. 1, 1–22.
[AWW05]
I. F. Akyildiz, X. Wang, y W. Wang, Wireless mesh networks:
a survey, Computer Networks and ISDN Systems 47 (2005),
no. 4, 445–487.
[AY06]
T. R. Andel y A. Yasinac, On the credibility of manet simulations, IEEE Computers 39 (2006), no. 7, 48–54.
[BACS06]
S.T. Beaudet, A T., Courtney, y A W.H. Sanders, A behaviorbased process for evaluating availability achievement risk using
i
i
i
i
Bibliografía
stochastic activity networks, Proceedings of the Reliability
and Maintainability Symposium, RAMS’06, 2006, pp. 21–
28.
[BBMZ03]
F. Bertocchi, P. Bergamo, G. Mazzini, y M. Zorzi, Performance comparison of routing protocols for ad hoc networks, Proceedings of the Global Telecommunications Conference,
GLOBECOM’03, 2003, pp. 1033–1037.
[BCD+ 06]
Eleonora Borgia, Marco Conti, Franca Delmastro, Enrico
Gregori, y Andrea Passarella, Manet perspective: current and
forthcoming technologies, Proceedings of 5th IST Mobile &
Wireless Communications Summit, Mykonos, June 2006.
[BCDG05]
Eleonora Borgia, Marco Conti, Franca Delmastro, y Enrico
Gregori, Experimental comparison of routing and middleware
solutions for mobile ad hoc networks: Legacy vs cross-layer approach, Proceedings of E-WIND Workshop, in conjunction
with SIGCOMM’05 Workshops (Philadelphia), 2005.
[BCDP05]
Eleonora Borgia, Marco Conti, Franca Delmastro, y Luciana Pelusi, Lessons from an ad hoc network test-bed: Middleware
and routing issues, Ad Hoc & Sensor Wireless Networks 1
(2005), 125–157.
[BCSW98]
S. Basagni, I. Chlamtac, V.R. Syrotivk, y B.A. Woodward,
A distance effect algorithm for mobility (dream), Proceedings
of the Fourth Annual ACM/IEEE International Conference on Mobile Computing and Networking (Mobicom98),
1998.
[BD07]
Eleonora Borgia y Franca Delmastro, Effects of unstable links
on aodv performance in real testbeds, EURASIP J. Wirel. Commun. Netw. 2007 (2007), no. 1, 32–32.
[BH04]
F. Bai y A. Helmy, A survey of mobility models in wireless adhoc networks, dover printing, tenth gpo printing ed., Kluwer Academic Publishers, 2004.
[BHPC04]
C. Bettstetter, H. Hartenstein, y X. Pérez-Costa, Stochastic properties of the random waypoint mobility model: Epoch
length, direction distribution, and cell change rate., Wireless
Networks 10 (2004), no. 5, 555–567.
323
i
i
i
i
Bibliografía
324
[BLG01]
S. H. Bae, S. Lee, y M. Gerla, Multicast protocol implementation and validation in an ad hoc network testbed, Proceedings
of the ICC (Helsinki, Finland), June 2001.
[BLG02]
, Unicast performance analysis of extended odmrp in a
wired-to-wireless ad-hoc network testbed, MILCOM 2002. Proceedings, vol. 2, oct. 2002, pp. 1228–1232.
[BM03]
S. Banerjee y A. Misra, Adapting transmission power for optimal energy reliable multi-hop wireless communication, Proceedings of the Wireless Optimization Workshop (WiOpt’03)
(Sophia-Antipolis, France), March 2003.
[BMJ+ 98]
Josh Broch, David A. Maltz, David B. Johnson, Yih-Chun
Hu, y Jorjeta Jetcheva, A performance comparison of multi-hop
wireless ad hoc network routing protocols, Proceedings of the
4th annual ACM/IEEE International Conference on Mobile Computing and Networking (MobiCom’98) (Dallas,
TX), October 1998, pp. 85–97.
[Bol01]
J. Boleng, Normalizing mobility characteristics and enabling
adaptive protocols for ad hoc networks, Proceedings of the
Local and Metropolitan Area Networks Workshop (LANMAN), 2001, pp. 9–12.
[Bor05]
E. Borgia, Experimental evaluation of ad hoc routing protocols,
Proceedings of the 3rd International Conference On Pervasive Computing and Communications Workshops (PerCom 2005 Workshops)., 2005.
[BRCJP04]
Elizabeth Belding-Royer, Ian Chakeres, David Johnson, y
Charlie Perkins, Dymo - dynamic manet on-demand routing
protocol, Proceedings of the Sixty-First Internet Engineering Task Force (Washington, DC, USA), August 2004.
[CBD02]
T. Camp, J. Boleng, y V. Davies, A survey of mobility models for ad hoc network research, Wireless communications &
Mobile Computing, special issue on Mobile Ad Hoc networking: research, trends and applications 2 (2002), no. 5,
483–502.
[CBR02]
I.D. Chakeres y E. M. Belding-Royer, The utility of hello messages for determining link connectivity, Proceedings of the 5th
i
i
i
i
Bibliografía
International Symposium on Wireless Personal Multimedia Communications (WPMC) (Honolulu, Hawai), October 2002, pp. 5604–508.
[CCD+ 01]
T. Clark, T. Courtney, D. Daly, D. Deavours, S. Derisavi,
J. M. Doyle, W. H. Sanders, y P. Webster, The möbius modeling tool, Proceedings of the 9th International Workshop on
Petri Nets and Performance Models (Aachen, Germany),
2001, pp. 241–250.
[CCL03]
I. Chlamtac, M. Conti, y J.J.-N. Liu, Mobile ad hoc networking: Imperatives and challenges, Ad Hoc Networks Journal
1 (2003), no. 1, 13–64.
[CDD06]
X. Carcelle, T. Dang, y C. Devic, Industrial wireless technologies: applications for the electrical utilities, Proceedings of
IEEE International Conference on Industrial Informatics,
2006, pp. 108–113.
[CE95]
M.S. Corson y A. Ephremides, A distributed routing algorithm for mobile wireless networks, Wireless networks 1
(1995), no. 1, 61–81.
[CG98]
T.W. Chen y M. Gerla, Global state routing: a new routing
scheme for ad hoc wireless networks, Proceedings of the IEEE
ICC, 1998.
[CG07]
M. Conti y S. Giordano, Multihop ad hoc networking: The
theory, EEE Communications Magazine 45 (2007), no. 4,
78–86.
[CGM02]
V. Casares, P. García, y J. Mataix, Modeling mobility tracking
procedures in pcs systems using stochastic activity networks,
International Journal of Wireless Information Networks 9
(2002), no. 4, 213–226.
[CH04]
T. Chiang y Huang, Multicast routing representation in ad hoc
networks using fuzzy petri nets, Proceedings of the 18th international Conference on Advanced information Networking and Applications, AINA (Washington, DC), vol. 2,
March 2004.
[CJ03]
T. Clausen y P. Jacquet, Optimized link state routing protocol
(olsr), rfc 3626, 2003.
325
i
i
i
i
Bibliografía
326
[CLF07]
D. Camara, A.A.F. Loureiro, y F. Filali, Methodology for formal verification of routing protocols for ad hoc wireless networks, Proceedings of the IEEE Global Telecommunications Conference, GLOBECOM’07, October 2007, pp. 705–
709.
[CM99]
S. Corson y J. Macker, Mobile ad hoc networking (manet):
Routing protocol performance. issues and evaluation considerations. rfc 2501, 1999.
[Com06]
LAN/MAN Standards Committee, Ieee standard for information technology— telecommunications and information exchange between systems— local and metropolitan area networks— specific requirements. part 15.4: Wireless medium access control (mac) and physical layer (phy) specifications for
low-rate wireless personal area networks (lrwpans), IEEE Std
802.15.4TM -2006 (Revision of IEEE Std 802.15.4-2003), 2006.
[CSB+ 01]
J.A. Clavijo, M.J. Segarra, C. Baeza, C.D. Moreno, R. Sanz,
A. Jiménez, R. Vázquez, F.J. Díaz, y A. Díez, Real-time video
for distributed control systems, Control Engineering Practice
9 (2001), 459–466.
[CSS02]
D. Cavin, Y. Sasson, y A. Schiper, On the accuracy of manet
simulators, Proceedings of the Second ACM internationl
Workshop on Principles of Mobile Computing, POMC’02
(Toulouse, France), October 2002, pp. 38–43.
[CVG+ 05]
Llorenç Cerdà, Michael Voorhaen, Rafael Guimarães, José m Barceló, Jorge García, y Chris Blondia, A reservation
scheme satisfying bandwidth qos constrains for ad-hoc networks,
Presented at the EuroNGI Dagstuhl Workshop and published in the Lecture Notes in Computer Science (LNCS) series, 2005, pp. 176–188.
[CWLG97]
C.C. Chiang, H. K. Wu, W. Liu, y M. Gerla, Routing in clustered multihop, mobile wireless networks with fading channel,
Proceedings of IEEE SICON’97, April 1997, pp. 197–211.
[DDD+ 00]
D. Daly, D. D. Deavours, J. M. Doyle, P. G. Webster, y W. H.
Sanders, Möbius: An extensible tool for performance and dependability modeling, Computer Performance Evaluation: Mo-
i
i
i
i
Bibliografía
delling Techniques and Tools: Proceedings of the 11th International Conference, TOOLS 2000 1786 (2000), 332–336.
[DP93]
J.D. Decotignie y P. Pleineveaux, A survey on industrial
communication networks, Annals of Telecommunications 48
(1993), no. 9-10, 435–448.
[DPR00]
Samir R. Das, Ch. Perkins, y E. M. Royer, Performance comparison of two on-demand routing protocols for ad hoc networks,
Proceedings of the IEEE INFOCOM 2000, 2000, pp. 3–12.
[DR07]
M. C. Domingo y D. Remondo, Qos support between ad hoc
networks and fixed ip networks, Computer Communications
31 (2007), no. 11, 2646–2655.
[DRWT97]
R. Dube, C. Rais, K. Wang, y S. Tripathi, Signal stability
based adaptive routing (ssa) for ad hoc mobile networks, IEEE
Personal Communications 4 (1997), no. 1, 36–45.
[Gar01]
P. García, Modelado y evaluación de estrategias de seguimiento
de terminales móviles. análisis de la carga de señalización en la
red de acceso y en la red inteligente, Ph.D. thesis, Universidad
Politécnica de Valencia, 2001.
[GBH05]
Q. Gao, K.J. Bloq, y D.J. Holding, Radio range adjustment for
energy efficient wireless sensor network, Ad Hoc Networks 4
(2005), no. 1, 75–82.
[GCM+ 05]
C. Gomez, M. Catalan, X. Mantecon, J. Paradells, y A. Calveras, Evaluating performance of real ad hoc networks using
aodv with hello message mechanism for maintaining local connectivity, Proceedings of the IEEE 16th International Symposium on Personal, Indoor and Mobile Radio Communications (Berlin), September 2005, pp. 1327–1331.
[GEM02]
V. Casares Giner, P. García Escallé, y J. Mataix, Modeling
mobility tracking procedures in pcs systems using stochastic activity networks, International Journal of Wireless Information Networks 9 (2002), no. 4, 213–226.
[GH99]
R. German y A. Heindl, Performance evaluation of the ieee
802.11 wireless lans with stochastic petri nets, Proceedings of
327
i
i
i
i
Bibliografía
the 8th international Workshop on Petri Nets and Performance Models, PNPM. IEEE Computer Society (Washington, DC), September 1999.
328
[GH06]
Q. Gan y B. E. Helvik, Dependability modeling and analysis
of networks as taking routing and traffic into account, Proceedings of the 2nd Euro NGI Conference: Next Generation
Internet Desing and Engineering (Valencia, España), 2006.
[GHP02]
M. Gerla, Xiaoyan Hong, y Guangyu Pei, Fisheye state routing protocol (fsr) for ad hoc networks, draft-ietf-manet-fsr03.txt, 2002.
[GLAS99]
J.J. García-Luna-Aceves y C. Marcelo Spohn, Source-tree
routing in wireless network, Proceedings of the Seventh
Annual Internacional conference on Network Protocols,
RAMS’06 (Toronto, Canada), October 1999, p. 273.
[Gro]
PERFORM Group, (performability engineering research
group)
of
illinois
at
urbana-champaign,
http://www.mobius.uiuc.edu/.
[GSB02]
M. Günes, U. Sorges, y I. Bouazizi, Ara-the ant-colony based
routing algorithm for manets, Proceedings of ICPP workshop
on Ad Hoc Networks (IWAHN 2002), August 2002, pp. 79–
85.
[GWW04]
A. Gupta, I. Wormsbecker, y C. Williamson, Experimental
evaluation of tcp performance in multi-hop wireless ad hoc networks, Proceedings of the IEEE Computer Society’s 12th
Annual international Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunications
Systems. MASCOTS. IEEE Computer Society (Washington, DC), October 2004, pp. 3–11.
[Haa97]
Z. Haas, A new routing protocol for the reconfigurable wireless
networks, Proceedings of the the IEEE Int. Conf. on Universal Personal Communications, October 1997.
[HG01]
A. Heindl y R. German, Performance modeling of ieee 802.11
wireless lans with stochastic petri nets, Wireless Networks 44
(2001), no. 1-4, 139–164.
i
i
i
i
Bibliografía
[Hol05]
K.
Holter,
Comparing
aodv
and
olsr,
folk.uio.no/kenneho/studies/essay/essay.html, 2005.
[Huh04]
A. Huhtonen, Comparing aodv and olsr routing protocols, Telecommunications Software and Multimedia, 2004.
[IB04]
B. Ishibashi y R. Boutaba, Topology and mobility considerations in mobile ad hoc networks, Ad Hoc Networks Journal 3
(2004), no. 6, 62–76.
[IET]
IETF, Official ietf working group manet webpage,
http://www.ietf.org/html.charters/manet-charter.html.
[Ipt]
Iptable,
Linux
iptables
http://www.netfilter.org/.
[ISA]
ISA,
International
http://www.isa.org.
[JHM07]
D. Johnson, Y. Hu, y D. Maltz, Dynamic source routing protocol (dsr) for mobile ad hoc networks for ipv4, rfc 4728, 2007.
[JJT99]
M. Jiang, J. Ji, y Y.C. Tay, Cluster based routing protocol, Internet Draft, draft-ietf-manet-cbrp-spec-01.txt, work in progress, 1999.
[JM96]
David B. Johnson y David A. Maltz, Dynamic source routing
in ad hoc wireless networks, t. imielinski and h. korth, kluwer academic publishers ed., ch. 5, pp. 153–181, Mobile
Computing, 1996.
[JMB01]
David B. Johnson, David A. Maltz, y Josh Broch, Dsr: The
dynamic source routing protocol for multi-hop, Ad Hoc Networking (2001), 139–172.
[JMC+ 01]
P. Jacquet, P. Muhlethaler, T. Clausen, A. Laouiti, A. Qayyum, y L. Viennot, Optimized link state routing protocol, Proceedings of IEEE INMIC (Pakistan), 2001.
[JNL99]
M. Joa-Ng y I.-T. Lu, A peer-to-peer zone-based two-level link
state routing for mobile ad hoc networks, IEEE Journal on Selected Areas in Communications 17 (1999), no. 8, 1415–
1425.
society
tool
of
homepage,
automation,
329
i
i
i
i
Bibliografía
330
[KCC05]
S. Kurkowski, T. Camp, y M. Colagrosso, Manet simulation
studies: the incredibles, Proceedings of the ACM SIGMOBILE Mobile Computer and Communications Rev., vol. 9,
October 2005, pp. 50–61.
[Kir09]
H. Kirrmann, Real-time consideration. industrial automation,
http://lamspeople.epfl.ch/kirrmann/Slides/AI_810_Realtime_response.ppt, 2009.
[KLZ07]
R. Kodikara, S. Ling, y A. Zaslavsky, Evaluating cross-layer
context exchange in mobile ad-hoc networks with colored petri
nets, Proceedings of the IEEE International Conference on
Pervasive Services., 2007, pp. 173–176.
[KMJ00]
Quifa Ke, David Maltz, y David B. Johnson, Emulation of
multi-hop wireless ad hoc networks, Proceedings of the 7th
International Workshop on Mobile Multimedia Communications (MoMuC), October 2000.
[KR97]
K.K. Kasera y R. Ramanathan, A location management protocol for hierarchically organised multihop mobile wireless networks, Proceedings of the IEEE ICUPC’97 (San Diego, CA),
October 1997, pp. 158–162.
[KRH08]
B. R. Arun Kumar, C. Lokanatha Reddy, y Prakash S. Hieremath, Performance comparison of wireless mobile ad-hoc network routing protocols, International Journal of Computer
Science and Network Security, IJCSNS 8 (2008), no. 6, 337–
343.
[KV98]
Y. Ko y N. H. Vaidya, Location-aided routing (lar) mobile ad
hoc networkss, Proceedings of AMOBICOM’98 (Dallas, TX),
1998.
[LLN+ 02]
H. Lundgren, D. Lundberg, J. Nielsen, E. Nordstrom, y
C. Tschudin, A large-scale testbed for reproducible ad hoc protocol evaluations, Proceedings of the IEEE Wireless Communications and Networking Conference Record, 2002.
[LNT02]
H. Lundgren, E. Nordström, y C. Tschudin, Coping with
communication gray zones in ieee 802.11b based ad hoc networks, WOWMOM ’02: Proceedings of the 5th ACM international workshop on Wireless mobile multimedia (New
York, NY, USA), ACM, 2002, pp. 49–55.
i
i
i
i
Bibliografía
[LS+ 05]
E. Egea López, A. Martínez Sala, , J. Vales Alonso, J. García
Haro, y J.-M. Malgosa Sanahuja, Wiereless communications
deployment in idustry: a review of issues, options and technologies, Computers in Industry 56 (2005), 29–53.
[LUB07]
J. Lorincz, N. Ukic, y D. Begusic, Throughput comparison
of aodv-uu and dsr-uu protocol implementations in multi-hop
static environments, Proceedings of the 9th International
Conference on Telecommunications, ConTel 2007., 2007,
pp. 195–202.
[LWS06]
M. Lott, M. Weckerle, y M. Siebert, Performance analysis of
resource allocation in wireless multihop networks, Computer
Communications 29 (2006), no. 8, 983–993.
[LZKS04]
M.J. Lee, J. Zheng, Y.-B. Ko, y D.M. Shrestha, Emerging
standars for wireless mesh technology, IEEE Wireless Communications 13 (2004), no. 2, 56–63.
[MAGECG05]
Ignacio Martínez-Arrúe, Pablo García-Escalle, y Vicente Casares-Giner, Mobile user location management under a
random-directional mobility pattern for pcs networks, 2005.
[MAR05]
Hui Ma, H.M.K. Alazemi, y S. Roy, A stochastic model for
optimizing physical carrier sensing and spatial reuse in wireless
ad hoc networks, Proceedings of IEEE International Conference on Mobile Adhoc and Sensor Systems Conference,
MAHSS, 2005, p. 622.
[MBJ99]
David A. Maltz, Josh Broch, y David B. Johnson, Experiences designing and building a multi-hop wireless ad hoc network
testbed, Computing Science Technical Report CMU-CS-99116, School of Computer Science, Carnegie Mellon University, Pittsburgh, Pennsylvania, 1999.
[MBJ01]
, Lessons from a full-scale multihop wireless ad hoc
network testbed, IEEE Personal Communications 8 (2001),
no. 1, 8–15.
[MBJJ99]
David A. Maltz, Josh Broch, Jorjeta Jetcheva, y David B.
Johnson, The effects of on-demand behavior in routing protocols for multi-hop wireless ad hoc networks, IEEE Journal on
Selected Areas of Communications, special issue on Mobile and Wireless Networks 17 (1999), no. 8, 1439–1453.
331
i
i
i
i
Bibliografía
332
[MFHF04]
M. Möske, H. Fübler, H. Hartenstein, y W. Franz, Performance measurements of a vehicular ad hoc network, Proceedings of the IEEE Vehicular Technoology Society (VTC)
(Milan), 2004.
[MGC05]
I. Martínez, P. García, y V. Casares, Mobile user location management under a random-directional mobility pattern for pcs
networks, Proceedings of the HET-NETs’05, 2005.
[MGLA95]
S. Murthy y J.J. García-Luna-Aceves, A routing protocol for
packet radio networs, Proceedings of the First Annual ACM
International conference on Mobile computing and Networking (Berkeley, CA), 1995, pp. 86–95.
[MGLA96]
Shree Murthy y J. J. Garcia-Luna-Aceves, An efficient routing protocol for wireless networks, Mob. Netw. Appl. 1
(1996), no. 2, 183–197.
[MHW04]
Hao Ma, Zhigang Hu, y Guojun Wang, A reliable routing
algorithm in mobile ad hoc networks using fuzzy petri net, Proceedings of the Global Telecommunications Conference
Workshops, Globecom Workshops 2004, 2004.
[MLSPC03]
Shiwen Mao, Shunan Lin, and Yao Wang S. Panwar, y
E. Celebi, Video transport over ad hoc networks: multistream
coding with multipath transport, IEEE Journal on Selected
Areas in Communications 21 (2003), 1721–1737.
[MM84]
A. Movaghar y J. F. Meyer, Performability modeling with stochastic activity networks, Proceedings of Real-Time Systems
Symposium (Austin, TX), December 1984.
[MMS85]
J. F. Meyer, A. Movaghar, y W. H. Sanders, Stochastic activity networks: Structure, behaviour and application, Proceedings of the Int. Conf. On Timed Petri Nets (Turin, Italy),
July 1985, pp. 106–115.
[Moy95]
J. Moy, Link-state routing, Routing in communications networks (1995), 135–157.
[MRBV05]
P. Mahadevan, A. Rodriguez, D. Becker, y A. Vahdat, Mobinet: a scalable emulation infrastructure for ad hoc and wireless networks., 2005 Workshop on Wireless Traffic Measurements and Modeling. International Conference On Mobile
i
i
i
i
Bibliografía
Systems, Applications And Services. (Berkeley, CA), June
2005, pp. 7–12.
[MSM01]
OC. Mantel, N. Scully, y A. Mawira, Radio aspects of hybrid
wireless ad hoc networks, Proceedings of the IEEE VTS 53RD
Vehicular Technology Conference (Sophia-Antipolis, France), vol. 1, 2001, pp. 1139–1143.
[Neu01]
P. Neumann, Integration of fieldbus systems and telecommunications systems in the field of industrial automation, Proceedings of the V Simpósio Brasileiro de Automaçao Inteligente, 2001.
[Neu07]
, Communication in industrial automation - what is
going on?, Control Engineering Practice 15 (2007), no. 11,
1332–1347.
[NGL05]
E. Nordstrom, P. Gunningberg, y H. Lundgren, A testbed
and methodology for experimental evaluation of wireless mobile ad hoc networks, Proceedings of the First International
Conference on Testbeds and Research Infrastructures for
the Development of Networks and Communities (Tridentcom), 2005, pp. 100–109.
[NLB00]
N. Nikaein, H. Laboid, y C. Bonnet, Distributed dynamic
routing algorithm (ddr) for mobile ad hoc networks, Proceedings of the MobiHOC 2000: First Annual Work-shop on
Mobile Ad Hoc Networking and Computing, 2000.
[NRD94]
G. Noubir, P. Raja, y J.-D Decotignie, Simulating the fieldbus synchronous model by timed petri nets, Proceedings of
the 20th International conference on Industrial Electronics,
Control and Instrumentation, IECON’94 (Bologna, Italy),
september 1994, pp. 1205–1210.
[OTL04]
R. Ogier, F. Templin, y M. Lewis, Topology dissemination
based on reverse-path forwarding (tbrpf), rfc 3684, 2004.
[PB94]
Charles E. Perkins y Pravin Bhagwat, Highly dynamic destination sequenced distance vector (dsdv) for mobile computers,
Proceedings of the SIGCOMM’94 Conference on Communications Architectures, Protocols and Applications, August 1994.
333
i
i
i
i
Bibliografía
334
[PC97]
V. D. Park y M. S. Corson, A highly adaptive distributed routing algorithm for mobile wireless networks, Proceedings of
IEEE Infocom (Athens, Greece), July 1997.
[PC98]
, A performance comparison of the temporally-ordered
routing algorithm and ideal link-state routing, Proceedings of
ISCC’98 (Athens, Greece), July 1998.
[Per95]
Performability Engineering Research Group (PERFORM),
Ultrasan user´s manual, 1995.
[Per98]
C.E. Perkins, Mobile networking in the internet, Mobile Networks and Applications 3 (1998), 319–334.
[Per99]
Charles E. Perkins, Mobile networking in the internet, Mobile
Netwoks and Applications 3 (1999), no. 4, 319–334.
[Per07]
Performability Engineering Research Group (PERFORM),
Möbiustm. model-based environment for validation of system
reliability, availability, security, and performance. user manual,
2007.
[PGHC99]
G. Pei, M. Gerla, X. Hong, y C. Chiang, A wireless hierarchical routing protocol with group mobility, Proceedings of
Wirelss Communications and Networking (New Orleans,
LA), 1999.
[PR99]
Charles E. Perkins y Elizabeth M. Royer, Ad hoc on-demand
distance vector routing, Proceedings of the 2nd IEEE Workshop on Mobile Computing Systems and Applications
(New Orleans, LA), February 1999, pp. 90–100.
[PR03]
C. Perkins y E. Royer, Ad-hoc on-demand distance vector routing (aodv), rfc 3561, http://www.ietforg/rfc/rfc3561.txt,
2003.
[PT02]
F. Pacheco y E. Tovar, User-interface technologies for the industrial environment: Towards the cyber-factory, Proceedings
of the 16th CaberNet Radicals Workshop., 2002.
[RGLA99]
J. Raju y J. Garcia-Luna-Aceves, A new approach to ondemand loop-free multipath routing, Proceedings of the 8th
Annual IEE International Conference on Computer Communications and Networks (ICCCN) (Boston, MA), October 1999, pp. 522–527.
i
i
i
i
Bibliografía
[RP99]
Elizabeth M. Royer y Charles E. Perkins, Multicast operation of the ad hoc on-demand distance vector routing protocol, Proceedings of the MobiCom’99 (Seattle, WA), August
1999, pp. 207–218.
[RP00]
, An implementation study of the aodv routing protocol,
Proceedings of the IEEE Wireless Communications and
Networking Conference (Chicago, IL), September 2000.
[RRC06]
David Rincón, David Remondo, y Cristina Cano, On the
shaping introduced by ieee 802.11 nodes in long-range dependent traffic, Lecture Notes in Computer Science 4396 (2006),
no. 1, 12–28.
[RRR+ 99]
S. Radhakrishnan, N.S.V Rao, G. Racherla, C.N. Sekharan, y S.G. Batsell, Dst a routing protocol for ad hoc networks
using distributed spanning trees, Proceedings in IEEE Wireless Communications and Networking Conference (New
Orleans, LA), 1999.
[RT99]
Elizabeth M. Royer y Chai-Keong Toh, A review of current
routing protocols for ad hoc mobile wireless networks, IEEE Personal Communication 6 (1999), no. 2, 46–55.
[San88]
W. H. Sanders, Construction and solution of performability
models based on stochastic activity networks, Ph.D. thesis,
Universidad de Michigan (EE.UU), 1988.
[San99]
, Integrated frameworks for multi-level and multi-formalism modeling, Proceedings of PNPM’99: 8th International
Workshop on Petri Nets and Performance Models (Zaragoza, Spain), 1999, pp. 2–9.
[SAS04a]
V. Sempere, T. Albero, y J. Silvestre, Analysis of communication alternatives over public networks for supervision and
control systems of metropolitan scope, Proceedings of the
IEEE International Symposium on Industrial Electronics,
ISIE’04 (Ajaccio, Francia), 2004, pp. 597–602.
[SAS04b]
, Remote access to images and control information of
a supervision system through gprs, Proceedings of 1st IFAC
Symposium on Telematics Applications on Automation
and Robotics, TA’04 (Helsinki, Finlandia), 2004, pp. 107–
112.
335
i
i
i
i
Bibliografía
336
[SAS06]
, Analysis of communication alternatives in a heterogeneous network for a supervision and control system, Computer
Communications 29 (2006), 1133–1145.
[SBKH03]
N. Sadagopan, F. Bai, B. Krishnamachari, y A. Helmy,
Paths: analysis of path duration statistics and their impact on
reactive manet routing protocols, Proceedings of the of MobiHoc., 2003, pp. 245–256.
[SBSPAA10]
Javier Silvestre-Blanes, Víctor-M. Sempere-Payá, y Teresa
Albero-Albero, Van applied to control of utilities networks.
requirements and capabilities, Factory Automation, ch. 6,
pp. 121–138, Javier Silvestre-Blanes, March 2010.
[Sem98]
Víctor M. Sempere, Modelado y evaluación de sistemas para
la interconexión de redes de comunicaciones industriales, Ph.D.
thesis, Universidad Politécnica de Valencia, 1998.
[SF93]
W. H. Sanders y R. S. Freire, Efficient simulation of hierarchical stochastic activity network models, Discrete Event Dynamic Systems: Theory and Applications 4 (1993), no. 2/3,
271–300.
[SLH02]
A. Martínez Sala, E. Egea López, y J. García Haro, Despliegue de redes inalámbricas en entornos industriales, Proceedings of the Simposium Nacional de la Unión Científica
Internacional de Radio (Alcalá de Henares, España), 2002.
[SM91]
W. H. Sanders y J. F. Meyer, Reduce base model construction methods for stochastic activity networks, IEEE Journal
on Selected Areas in Communications, special issue on
Computer-Aided Modeling, Analysis and Design of Communication Networks 9 (1991), no. 1, 25–36.
[SM02]
, Stochastic activity networks: formal definitions and
concepts, Springer Lectures On Formal Methods And Performance Analysis, first EEF/Euro summer school on
trends in Computer Science (2002), 315–343.
[SOQW95]
W. H. Sanders, W. D. ObalII, M. A. Qureshi, y F. K. Widjanarko, The ultrasan modeling environment, Performance Evaluation 24 (1995), no. 1, 89–115.
i
i
i
i
Bibliografía
[SS07]
J. Silvestre y V. Sempere, An architecture for flexible scheduling in profibus networks, Computer Standars & Interfaces
29 (2007), 546–560.
[SSA03]
V. Sempere, J. Silvestre, y T. Albero, Supervision and control system of metropolitan scope based on public communication networks, Proceedings of the IFAC Int. Conference on
Fieldbus Systems and their applications, FeT’03 (Aveiro,
Portugal), 2003, pp. 317–323.
[SSA04]
J. Silvestre, V. Sempere, y T. Albero, Industrial video sequences for network performance evaluation, Proceedings of the
IEEE International Workshop on Factory Communication
Systems, WFCS’04 (Viena, Austria), 2004, pp. 343–347.
[SSA07]
, Wireless metropolitan area networks for telemonitoring
applications, Proceedings of the IFAC Fieldbus Technology
and their Applications. FET’07 (Toulouse, Francia), 2007.
[SSAC03]
Víctor Sempere, Javier Silvestre, Teresa Albero, y Pablo
Cabañuz, Sistema de supervisión y control de Ámbito metropolitano basado en redes públicas de comunicación, Automática
e Instrumentación (CETISA BOIXAREU) 345 (2003), 128–
133.
[SSAD04]
V. Sempere, J. Silvestre, T. Albero, y C. Díez, Acceso remoto a
imágenes e información de control de un sistema de supervisión
mediante dispositivos móviles, Automática e Instrumentación
(CETISA BOIXAREU) 357 (2004), 64–69.
[sTG09]
IEEE 802.11s Task Group, Draft amendment to standard for
information technology - telecommunications and information
exchange between systems - lan/man specific requirements part 11: Wireless medium access control (mac) and physical layer (phy) specifications: Amendment: Ess mesh networking, ieee
p802.11s/d3.0, 2009.
[STS04]
IEEE Computer Society, IEEE Microwave Theory, y Techniques Society., Ieee std 802.16-2004 (revision of. ieee std 802.162001), ieee standard for local and metropolitan area networks
part 16: Air interface for fixed broadband wireless access systems. sponsored by the lan/man standards comitee., 2004.
337
i
i
i
i
Bibliografía
338
[(TG]
IEEE 802.15 WPANTM Task Group
http://ieee802.org/15/pub/TG5.html.
5
(TG5),
[TGLN05]
Christian Tschudin, Per Gunningberg, Henrik Lundgren,
y Erik Nordstrom, Lessons from experimental manet research,
Elsevier Ad Hoc Networks Journal, special issue on ”Ad
Hoc Networking for Pervasive Systems” 3 (2005), no. 2,
221–233.
[Toh96]
C. Toh, A novel distributed routing protocol to support ad hoc
mobile computing, Proceedings of IEEE 15th Annual International Phoenix Conference, 1996, pp. 480–486.
[TVPF01]
E. Tovar, F. Vasques, F. Pacheco, y L. Ferreira, Industrial
multimedia over factory-floor networks, Proceedings of the
10th IFAC Synmposium on Information Control Problems
in Manufacturing INCOM, 2001.
[Wil08]
A. Willig, Recent and emerging topics in wireless industrial
communications: A selection, IEEE Transactions on Industrial Informatics 4 (2008), 102–124.
[WMF02]
E. Welsh, P. Murphy, y J.P. Frantz, A mobile testbed for gpsbased its/ivc and ad hoc routing experimentation, Wireless Personal Multimedia Communications, 2002. The 5th International Symposium on, vol. 2, October 2002, pp. 796–800.
[WS01]
S.C. Woo y S. Singh, Scalable routing protocol for ad hoc networks, Wireless networks 7 (2001), no. 5, 513–529.
[XML04]
Chaoyue Xiong, Tadao Murata, y Jason Leigh, An approach for verifying routing protocols in mobile ad hoc networks using petri nets, Proceedings of the IEEE 6th Circuits and Systems Symposium on Emerging Technologies:
Frontiers of Mobile and Wireless Communication, vol. 2,
2004, pp. 537–540.
[XMT02]
Chaovue Xiong, Tadao Murata, y Jeffery Tsai, Modeling and
simulation of routing protocol for mobile ad hoc networks using
colored petri nets, Proceedings of the Conference on Application and theory of Petri Nets: formal methods in software engineering and defence systems (Adelaide, Australia),
vol. 12, June 2002, pp. 145–153.
i
i
i
i
Bibliografía
[XS01]
S. Xu y T. Saadawi, Does the ieee 802.11 mac protocol work
well in multihop wireless ad hoc networks?, EEE Communications Magazine 39 (2001), no. 6, 130–137.
[YPK04]
M. Yuksel, R. Pradhan, y S. Kalyanaraman, An implementation framework for trajectory-based routing in ad-hoc networks,
Communications, 2004 IEEE International Conference on,
vol. 7, jun. 2004, pp. 4062–4066.
[YW02]
Z. Yongguang y L. Wei, An integrated environment for testing
mobile ad-hoc networks, Proceedings of the Mobihoc, 2002.
[ZL02]
Y. Zhang y W. Li, An integrated environment for testing
mobile ad-hoc networks, Proceedings of the 3rd ACM international Symposium on Mobile Ad Hoc Networking
& Amp; Computing, MobiHoc’02 (New York, NY), June
2002, pp. 104–111.
[ZM05]
Baoxian Zhang y H.T. Mouftah, Qos routing for wireless ad
hoc networks: problems, algorithms, and protocols, IEEE Communications Magazine 43 (2005), no. 10, 110–117.
[ZZ03]
C. Zhang y M. Zhou, A stochastic petri net-approach to modeling and analysis of ad hoc network, Proceedings of the Conference on Information Technology: Research and Education. ITRE2003 (Washington, DC), 2003, pp. 152–156.
339
i
i
i
i
Descargar