UNIVERSITY PIERRE ET MARIE CURIE - PARIS 6
THESIS
Submitted for the degree of
Doctor of Science
ByDaniel Fernandes Macedo
Title :
SELF-CONFIGURATION OF MULTI-HOP WIRELESS NETWORKS
Defense: December, 18th 2009
Committee
Rapporteur M. Khaldoun AL AGHA Professor at Université d’Orsay
Rapporteur M. André-Luc BEYLOT Professor at ENSEEIHT
Examinateur M. Mario GERLA Professor at University of California, Los Angeles
Examinateur M. Serge FDIDA Professor at Université Pierre et Marie Curie
Directeur de thèse M. Guy PUJOLLE Professor at Université Pierre et Marie Curie
Directeur de thèse M. José M. NOGUEIRA Professor at Federal University of Minas Gerais
UNIVERSITÉ PIERRE ET MARIE CURIE - PARIS 6U.F.R. INFORMATIQUE
THÈSE
Pour obtenir le grade de
DOCTEUR DE L’UNIVERSITÉ PIERRE ET MARIE CURIE
Discipline : RÉSEAUX
ParM. Daniel FERNANDES MACEDO
Titre :
AUTO-CONFIGURATION DANS LES RÉSEAUX SANS FILMULTI-SAUTS
Soutenance publique : le 18 décembre 2009
JURY
Rapporteur M. Khaldoun AL AGHA Professeur à l’Université d’Orsay
Rapporteur M. André-Luc Beylot Professeur à l’ENSEEIHT
Examinateur M. Mario GERLA Professeur à l’Université de Californie, Los Angeles
Examinateur M. Serge FDIDA Professeur à l’Université Pierre et Marie Curie
Directeur de thèse M. José M. NOGUEIRA Professeur à l’Université Fédérale de Minas Gerais
Directeur de thèse M. Guy PUJOLLE Professeur à l’Université Pierre et Marie Curie
This thesis is dedicated to Aldri Luiz dos Santos, the knight in shining armor that
spent countless hours in Skype rescuing me from the depths of PhD research. If
Skype were not free, we would both be honorary Luxembourg citizens by now. . .
Acknowledgements
First of all, I would like to acknowledge the hard work of my thesis mentors José
Marcos Nogueira and Guy Pujolle. During this thesis and throughout the years,
several other people helped with revisions, directions and tips on my research and
academic career: Aldri Luiz dos Santos, Luiz Henrique Andrade Correia, Antonio
Alfredo Ferreira Loureiro, and Leonardo Barbosa e Oliveira.
There is also the support of the team at LIP6, which helped me with keeping up the
pace whenever things did not go too well (and there are many in a three year endeavor
like this one). Thanks to Michele Nogueira, Shahab Gashti, Mathieu Bouet, Pedro
Velloso, Daniel Cunha, Tara Ali Yahiya, Gilbert Sawma, Sondes Khemiri, Nadjib
Aitsaadi, Clémentine Pelissier, and the colleagues of Équipe PHARE.
This work could not be achieved without my friends. Besides all the contributions
presented in Section 1, this Phd proved to be quite fruitful in other domains as
well: spanish and dance lessons with the friends at the Maison du Méxique, cooking
classes with Joanna Ptak and Mr. Queiroz are among some of the items of a long
list. Hemingway once said that Paris is a moveable feast; ex-Parisians carry with
themselves the spirit of the city for the rest of their lives. My friends Julia, Chiara,
Héctor, Gustavo, Najla, Patrícia, Judson, Bel, Tânia, Mirka, and my flat mates Ítalo
and Mário will surely be a large part of my memories of this period.
A special thanks goes to my family, specially my parents, for the continuous support
and motivation through the years. Even though a continent away, you were always
there whenever needed.
Finally, I would also like to recognize the support of the Brazilian government, which
funded this research. Thanks to all the staff of CNPq (Conselho Nacional de Desen-
volvimento Científico e Tecnológico), the funding agency of the science and technology
ministry, which promptly helped me with whichever problems I had. A special thanks
is due to Meire Marcilene, the technician responsible for my scholarship.
Abstract
Wireless multi-hop networks face several challenges that are not present in wired net-
works. Node mobility, the dynamicity of the wireless medium and limited resources
must be considered on the design of communication protocols for such networks. Fur-
ther, due to the high dynamicity of the wireless medium, node mobility and the use
of context-aware applications, the amount and frequency of configuration changes in
the network is such that human intervention should be avoided. By removing humans
from the decision-making process, re-configuration decisions occur faster and are less
prone to errors. Hence, protocols and applications should automatically adapt to
changes in the environment and in the network on run-time.
Systems that automatically reconfigure themselves without external intervention are
known as self-configuring. Although self-configuration is a mandatory requirement
in wireless networks, those networks are far from achieving self-configuration. First,
obtaining and disseminating the information required for self-configuration is quite
costly. Most protocols implement their own discovery and dissemination mechanisms,
and in general the information gathered is not shared with other protocols due to
a lack of proper means for such a task. Second, several configuration problems still
require human intervention, because no self-configuring protocols or algorithms have
been proposed for specific tasks. In this thesis we studied self-configuration in wireless
multi-hop networks by proposing solutions to the two problems presented above. This
work has three main contributions, as follows.
The first contribution is a distributed information repository, or Information Plane,
for wireless networks. This repository reduces the overhead of collecting and dissem-
inating the information required for self-configuring applications and protocols. It
supports the creation of context-aware applications, cross-layer protocols and man-
agement services implementing self-configuration functions. The repository simplifies
information sharing among applications and protocols and reduces their control over-
head. We evaluate its performance using simulations. Results show that the informa-
tion plane reduces the amount of control overhead in the network, as a consequence
the energy consumption and delay of the network decreases.
Our second contribution lies on routing enhancements to cope with varying transmis-
sion power and data rates on wireless links. Those extensions improve the throughput
and delay of multi-hop wireless communications. Due to the complexity of defining
the best transmission power and data rate for a multi-hop network, we propose an
analytical model that calculates the per-flow performance of wireless transmissions.
This model is used to identify the best routing decisions over transmission power
control and rate adaptation aware networks. Based on this analysis, we propose our
routing enhancements. We propose a MAC-level algorithm to automatically assess
the transmission power and data rate that provides a high quality link. The MAC-
level information is then used to improve routing decisions. We improve the routing
metric by including the transmission power and data rate as parameters. The pro-
posed extensions are evaluated via simulations. We compare our extensions against
several protocols of the literature, showing that our proposal improves the end-to-end
throughput and delay of the network.
The third contribution tames the problem of self-configuration in unstructured mobile
peer-to-peer (P2P) networks running over wireless links. Unstructured P2P proto-
cols are frequently used in wireless networks to support several services such as file
sharing, online presence, service discovery, multimedia streaming, among others. The
performance of mobile P2P networks depends on the contention at the MAC layer:
if contention is high, the amount of queries solved is low and the response time is in
the order of seconds. Hence we propose a self-configuring closed control loop that
dynamically adapts the P2P application in order to reduce contention. This control
loop ensures that the load on the network is within an acceptable level. Simulation
results evaluated the resilience of the proposed solution. We show that that control
loop performs as well as the best manual configuration at every scenario. The self-
configuring application also copes with external disturbances such as variations in
the link error rate and background traffic.
Résumé
Du fait de notre dépendance aux systèmes informatiques, il est essentiel qu’ils fonctionnent
avec la plus grande performance et qu’ils soient extrêmement fiables. Le système de pilotage
d’un avion, le système de contrôle des portes d’un barrage, les réseaux bancaires ou de support
aux opérations de premiers secours sont quelques exemples d’applications de l’informatique où
des pannes et des erreurs peuvent provoquer de grands dommages financiers ou humains.
La quantité de paramètres et la complexité des systèmes informatiques sont en train de dé-
passer les capacités d’analyse des êtres humains. Le temps nécessaire pour la correction des
pannes augmente de plus en plus. Malgré cette complexité, les opérateurs et techniciens doivent
rétablir le fonctionnement des systèmes le plus vite possible afin de réduire les pertes finan-
cières lors de chaque panne. Par conséquent, pressés de les remettre en marche, les opérateurs
introduisent souvent des erreurs de configuration qui peuvent produire des pannes ultérieures.
À partir de cette observation, la communauté de recherche a proposé la création des systèmes
informatiques intelligents qui possèdent la capacité de s’adapter aux événements externes, sans
aucune intervention humaine. De plus, ces systèmes apprennent avec leurs actions et améliorent
ainsi leurs réactions au fur et à mesure. De tels systèmes informatiques sont appelés « systèmes
autonomes » (ou « autonomic systems » en anglais). Ils possèdent des propriétés d’« auto-
configuration », « auto-sécurisation », « auto-guérison » et « auto-optimisation ». L’auto-
configuration indique que le système peut trouver la meilleure configuration pour chaque dé-
ploiement et s’adapter aux changements de l’environnement. Un système auto-sécurisé peut
identifier des problèmes de sécurité et les résoudre sans intervention externe. L’auto-guérison
permet au système d’identifier des erreurs et les corriger en temps d’exécution. Enfin, l’auto-
optimisation permet au système d’apprendre de ses erreurs et ainsi d’améliorer sa performance
au cours du temps.
Les réseaux sans fil multi-sauts, où une station communique avec les autres stations via des
relais, trouvent plusieurs applications dans notre vie quotidienne. Les réseaux maillés, les réseaux
i
mobiles ad hoc, les réseaux de capteurs, les réseaux véhiculaires et les réseaux tolérants au délai
(« Delay/Disconnection Tolerant Networks (DTN) ») sont quelques exemples. Tels réseaux sont
de plus en plus déployés dans l’environnement, par example pour étendre la couverture des points
d’accès, pour surveiller l’environnement, pour permettre des applications spécifiques telles que
les communications de données de navigation entre véhicules ou la coordination d’un groupe de
personnes dans une situation de détresse ou d’urgence.
Les réseaux sans fil multi-sauts ont plusieurs défis qui n’existent pas dans les réseaux fi-
laires. Le déplacement des noeuds, la dynamicité du medium sans fil et les limitations des
ressources requièrent la création de nouveaux protocoles de communication qui prennent en
compte ces paramètres. Ces caractéristiques, étant dynamiques, peuvent potentiellement dé-
clencher le changement de la configuration du réseau. Avec le développement des radios cog-
nitives qui seront une technologie clé dans la prochaine génération de réseaux sans fil, les liens
hertziens auront encore plus de paramètres dynamiques. De plus, de tels paramètres changeront
avec une fréquence encore plus importante, par exemple à la milliseconde ou à la microseconde.
Ainsi, les réseaux sans fil devraient être autonomes. Cela permettrait une réduction de leur
coût d’opération ainsi qu’une réduction de la quantité de pannes, résolues alors plus rapidement.
Les réseaux sans fil actuels sont loin d’être autonomes. En effet, l’obtention de l’information
nécessaire pour un comportement autonome est trop onéreuse. Chaque couche protocolaire
implémente son système de collecte et l’information produite n’est en général pas partagée entre
les différents composants du système. Ainsi, ces composants réalisent fréquemment des efforts
similaires ou même dupliqués, ce qui augmente la consommation de ressources. Une telle situation
pourrait être évitée si les protocoles avaient des primitives simples de collecte et de partage
d’information. Ceci leur permettrait de se concentrer uniquement sur leurs propres tâches.
Ensuite, plusieurs tâches dans les réseaux sont encore dépendantes de l’utilisateur ou des
administrateurs car il n’y a pas d’algorithme ni de boucle de contrôle qui puissent les gérer
automatiquement. Plusieurs tâches demandent une connaissance profonde du problème traité,
ce qui rend chaque intervention très complexe et très coûteuse. De plus, comme mentionné avant,
l’être humain commet bien plus de fautes que les machines. En effet, des erreurs de configuration
sont à l’origine d’une grande partie des pannes réseaux. Il faut alors développer des algorithmes
ou des boucles de contrôle pour chaque tâche de configuration. Ces algorithmes devraient soit
capturer la connaissance du domaine pour permettre une action adéquate à chaque changement,
soit utiliser des techniques génériques d’intelligence artificielle pour qu’ils apprennent au fur et
à mesure comment réagir à chaque situation.
ii
Face à la problématique de l’auto-configuration des réseaux sans fil multi-sauts, cette thèse
propose trois contributions.
La première contribution est l’implémentation du concept de « plan d’information ». Un tel
plan, réalisé par des composants distribuées dans les noeuds du réseau, simplifie la collecte et la
dissémination des informations utilisées par des protocoles et des applications. Ce plan centralise
l’information du réseau dans une seule entité logique, ce qui permet que aux protocoles d’accéder
plus facilement aux informations dont ils ont besoin.
Après, nous étudions le routage sensible à la puissance de transmission et à la bande passante
de chaque lien. Nous étudions le problème via un modèle mathématique, puis nous proposons un
nouveau protocole de routage qui prend en compte ces paramètres. De tels protocoles permettent
d’augmenter la qualité de service de bout-en-bout (le délai, le débit et l’efficacité des flux, ainsi
que la consommation d’énergie par paquet transmis).
Ensuite, nous proposons un contrôleur, basé sur la logique floue qui adapte en temps d’exécution
la configuration d’une application pair-à-pair. Les services pair-à-pair sont répandues dans les
réseaux hertziens. Ils servent de base pour plusieurs applications comme la découverte de ser-
vices, le partage de fichiers et le travail collaboratif. Le contrôleur proposé évite la contention
dans le réseau et minimise ainsi le taux de perte et le délai des paquets d’enquête.
Les sections suivantes résument chacune des contributions. Elles suivent la structure de la
thèse, afin que le lecteur puisse identifier les contributions de chaque chapitre de ce manuscrit.
Chapitre 2 : Les réseaux autonomes
Ce chapitre présente les concepts des systèmes autonomes et sans fil utilisés dans le reste
de la thèse. Nous commençons avec une vision générale des systèmes autonomes. Ces systèmes
suivent, en général, l’architecture MAPE « Map, Analyze, Plan, Execute » proposée par IBM.
Cette architecture propose une entité logique de gestion, appelée « gestionnaire autonome » qui
est séparée du système à contrôler. Le gestionnaire autonome a cinq composants: le « Map »
qui collecte des informations utilisées pour la décision autonome, le « Analyze » qui analyse
les informations collectées et décide s’il faut changer la configuration du système contrôlé et
comment la changer, le « Plan » qui planifie la mise en place de la nouvelle configuration et
le « Execute » qui supervise cette mise en place. De plus, cette entité possède une base de
connaissances qui stocke des connaissances liées à chacun des composants décrits ci-dessus.
iii
Afin d’adapter l’architecture MAPE aux réseaux, plusieurs chercheurs ont proposé des amélio-
rations du modèle de référence TMN « Telecommunications Management Network ». Ces mod-
èles introduisent des plans autonomes qui réalisent des fonctions d’auto-gestion sur les éléments
réseau. Dans cette thèse, nous utilisons une architecture à quatre plans. Le plan de gestion était
auparavant plutôt un plan associé à l’enquête et à la mise en place des nouveaux paramètres de
configuration. Les nouveaux paramètres étaient alors choisis par une entité externe au réseau,
par exemple un opérateur ou un technicien. Dans notre modèle de référence, ce plan est rem-
placé par le « plan de pilotage » qui rajoute des fonctions de gestion autonome en temps réel
aux réseaux. En suite, le « plan d’information » supporte l’opération du plan de pilotage ainsi
que le plan de données et le plan de contrôle via le stockage et la mise à jour automatique de
toutes informations de contrôle et de gestion des réseaux.
Ensuite, nous faisons appel aux protocoles « cross-layer », ou multi-couches qui transgresse le
« principe d’encapsulation » des modèles OSI et TCP/IP. Dans ces protocoles, l’étanchéité des
fonctions et des informations de chaque couche n’est plus respectée. Cela permet aux protocoles
multi-couches d’avoir une performance plus importante grâce à une connaissance plus large de
l’état du réseau et de chaque noeud. Avec l’utilisation croissante des réseaux sans fil, ces proto-
coles sont très répandus, dès lors que les caractéristiques des liens sans fil sont prises en compte
par presque toutes les couches protocolaires.
Finalement, nous faisons un rappel des concepts liés au routage ainsi qu’aux protocoles pair-
à-pair. Bien que ces protocoles travaillent avec la dissémination d’information en différents
couches de la pile protocolaire, nous montrons que ces deux types de protocoles ont des objectifs
différents. Les protocoles de routage disséminent de l’information dans une approche centrée
sur le réseaux, tandis que les protocoles pair-à-pair créent un réseau de partage d’informations
centré sur les données.
Chapitre 3 : Un plan d’information pour les réseaux sans fil au-tonomes
Comme décrit antérieurement, les protocoles et services conçues pour les réseaux sans fil ont
besoin d’accéder aux données produits par autres protocoles ou applications. Ces besoins se
présentent dans les trois problématiques détaillées ci-dessus.
Les protocoles de communication pour les réseaux sans fil sont, en général, plus complexes
que ceux pour les réseaux filaires à cause des liens hertziens. Au contraire des liens câblés,
iv
les caractéristiques des liens hertziens varient dans le temps et dans l’espace. Par conséquent,
leur configuration affecte les algorithmes de tous les niveaux de la pile protocolaire. Ainsi, des
protocoles multi-couches qui utilisent de paramètres des couches MAC et physique dans leur
fonctionnement ont été proposés. Cette interaction va contre le principe de couches défini par les
architectures OSI et TCP/IP. Il a alors fallu concevoir une nouvelle organisation, des nouvelles
abstractions ou primitives qui puissent résoudre ce problème. Ainsi, plusieurs architectures
protocolaires et composants qui permettent une telle interaction ont été proposés.
Le partage d’information est aussi un besoin pour les applications sensibles au contexte. De
tels applications, conçues pour l’informatique ubiquitaire, dépendent fortement des données sur
l’environnement et sur les utilisateurs. Elles utilisent fortement l’interaction entre les noeuds et
les couches pour la récupération d’informations spécifiques. Par conséquent, plusieurs logiciels
de gestion de l’information ont été proposés.
Finalement, la gestion autonome des réseaux n’est possible qu’avec une vue globale de la pile
protocolaire. Souvent, un événement important est identifié par le croisement d’informations
venues de plusieurs niveaux. Par exemple, l’identification d’une panne de connexion causée par
un signal trop faible demande une notification au niveau routage (les paquets n’arrivent plus au
destinataire) et l’observation qu’un lien au milieu du chemin a une puissance de signal reçue trop
basse pour la bonne réception des paquets, information venant de la couche physique.
Une solution basée sur le plan d’information
À partir de ces trois problèmes, nous avons proposé un logiciel distribué, appelé MANIP
(de l’anglais « MANet Information Plane »). Notre solution, a contrario des précédentes, est
applicable aux trois problèmes. Ce logiciel réalise le concept de « plan d’information » qui est
ajouté à l’architecture de plans TMN (plan de données, plan de contrôle, plan de gestion). Sa
fonction est la gestion et la collecte de données produites par les trois autres plans. Comme
les autres plans conceptuels, le plan d’information est réalisé par des logiciels distribués dans les
noeuds du réseau. Dans notre cas, ce logiciel s’appelle MANIP et c’est une spécialisation du plan
d’information aux problématiques et contraintes des environnements hertziens. Les objectifs de
MANIP sont les suivants :
• Accès événementiel et en requête : MANIP supporte l’accès en demande, pour les
utilisations très fréquentes d’une certaine information, ainsi que l’accès événementiel qui
permet aux applications d’être informées dès qu’un changement se passe dans un ensemble
v
de données. Cela permet l’utilisation du plan d’information pour la gestion d’une quantité
importante d’équipements.
• Accès à l’information produite par des capteurs : MANIP contrôle l’accès aux
données produits par des capteurs (comme la localisation, puissance du signal, température,
humidité, entre autres). Cela permet aux applications d’utiliser une interface commune
pour tous leurs besoins d’informations, tant logicielles que matérielles.
• Duplication locale des informations plus utilisées : Les informations les plus fréquem-
ment utilisées dans le réseau sont dupliquées en plusieurs couches protocolaires ou appli-
cations. Par conséquent, les applications et les protocoles ont une augmentation de leurs
performances grâce à un accès plus rapide aux informations.
• Requête à distance pour les données rarement accèdés : La gestion de réseau
et autres applications distribués requièrent qu’un noeud accède aux informations stockées
dans des noeuds distants (par exemple pour déterminer la cause d’une panne). Pour cela,
MANIP définit des interfaces pour l’accès aux informations d’autres noeuds du réseau.
• Accès sécurisé : Afin de permettre des requêtes externes et l’interaction avec des logiciels
produits et maintenus par des entités différentes, tout accès à l’information stocké par
MANIP doit être sécurisé.
• Dissémination d’information unifiée : Comme la bande passante est souvent une
ressource limitée, MANIP agrège les paquets de mise à jour de l’information. Ainsi, si
une information du niveau routage et une autre d’une application quelconque doivent être
mises à jour, les deux seront envoyées dans un seul paquet. Cela réduit la consommation
des ressources des protocoles et des applications. De plus, MANIP utilise les paquets en
inondation pour la mise à jour de l’information adressée aux noeuds d’un voisinage. L’envoi
de ces paquets consomme moins que l’envoi des paquets pour chaque destinataire.
Architecture du logiciel
Comme les réseaux hertziens peuvent être utilisés dans des cas divers et variés, nous proposons
une architecture logicielle pour MANIP. Cette architecture identifie des algorithmes ou implé-
mentations possibles, mais l’implémentation de chaque composant reste intentionnellement floue.
Cela permet, par exemple, d’utiliser MANIP dans les réseaux avec des contraintes de matériel,
vi
tels que les réseaux de capteurs, ainsi que dans les réseaux plus aisés en termes de ressources,
tels que les réseaux maillés. Par contre, les interfaces et la modélisation de l’information sont
normalisés, pour que les implémentations soient compatibles.
L’architecture proposée a trois couches. Cette séparation permet une définition plus claire
des responsabilités à chaque niveau du traitement de l’information.
La couche d’information (« information tier » en anglais) est la couche la plus basse. Cette
couche stocke toutes les informations produites dans le réseau. Elle a trois composants. Le
premier fournit une abstraction pour les capteurs physiques. Les noeuds mobiles possèdent des
capteurs qui peuvent mesurer la température, la vitesse, la localisation ou d’autres aspects de
l’environnement. En général, chaque capteur a sa propre manière pour réquisitionner une lecture
ainsi que son format de sortie. Ainsi, ce composant abstrait ces aspects et fournit aux autres
composants de MANIP une interface unifiée et une sortie normalisée. Ainsi, par exemple, ce
composant va toujours fournir une localisation en latitude et en longitude même quand les cartes
de localisation produisent des sorties sous d’autres formats.
Ensuite, la couche d’information a deux bases de données. Cette division est nécessaire
parce que MANIP stocke les informations de tous les niveaux de la pile protocolaire. Certaines
couches, comme les couches MAC et physique, travaillent en temps réel. Ainsi, elles ont besoin
d’un temps de réponse réduit. Elles utilisent pour cela des données structurées de forme simple.
Les applications, par contre, n’ont normalement pas de contrainte forte de temps et requièrent
des données complexes. Par conséquent, la couche d’information a deux bases de données: une
base de donnée simple, le NIB (« Network Information Base ») et une base de données plus
riche, le AIB (« Application Information Base »). La différence entre les deux est leur modèle
de données, c’est-à-dire comment les données sont représentées en interne. Bien que les bases
de données soient différents, les applications peuvent toujours accéder aux deux bases. Les
protocoles des couches MAC et physique, par contre, ont intérêt à utiliser seulement le NIB pour
des raisons de performance.
La couche intermédiaire, appelée couche de moteur (« engine tier » en anglais) est chargée
de la gestion automatique des données stockées. Cette couche a trois moteurs, décrits ci-dessous.
Le moteur de synchronisation (« synchronization engine » en anglais) permet la mise à jour
automatique des informations stockées. Chaque unité d’information a des meta-données associées
qui définissent sa fréquence de mise à jour ainsi qu’un voisinage. Ce voisinage, défini en nombre
de sauts, est responsable du passage à l’échelle du logiciel. Comme n’importe quel algorithme
distribué, le coût de dissémination et de maintenance d’une vue globale augmente avec la taille du
vii
système. Il faut alors utiliser des algorithmes à vue située qui travaillent avec une connaissance
partielle de l’état du système. Pour les applications où un voisinage défini par sauts n’est pas
adéquat, l’application peut désactiver la mise à jour automatique et elle peut elle-même guider
MANIP en définissant son propre voisinage.
Le moteur de notification (« notification engine ») produit des événements. Cela évite que
les applications échantillonnent l’information afin d’identifier ses modifications. Les événements
sont définis par des règles qui sont très similaires aux politiques. Elles définissent une liste de
variables à observer et une plage de valeurs pour chacune. Quand ces conditions sont atteintes,
l’événement est déclenché.
Le moteur de traduction (« translation engine » en anglais) fait la conversion entre les dif-
férents modèles de données. Il est utilisé, par exemple, dans la création de messages de mise à
jour. Si on considère un système de mise à jour basé sur XML (« Extensible Markup Language »)
et un stockage de paramètres du système en ASN.1, le moteur de traduction convertit les données
de ASN.1 (« Abstract Syntax Notation One ») vers XML pour chaque envoi de paquets. Cela
permet à l’application de n’utiliser qu’un seul modèle de données pour sa communication avec
MANIP, tandis que MANIP peut utiliser des modèles complètement différents en interne. De
plus, cela permet à MANIP d’exporter ses informations sous plusieurs formats.
La couche de sécurité (« security tier » en anglais) est la couche la plus haute et con-
trôle l’accès à l’information stockée par le logiciel. Elle utilise les solutions de chiffrement
et d’autorisation fournies par des techniques de cryptographie afin de garantir la sécurité des
échanges d’information. Chaque application, chaque noeud et chaque utilisateur peut accéder à
une quantité limitée d’informations, définies dans une liste d’autorisations. La couche de sécu-
rité produit des traces qui peuvent être utilisées par des logiciels de d’auto-sécurisation afin de
raffiner les permissions d’accès.
Modèle d’information
Comme MANIP stocke l’information venue de plusieurs sources, les informations stockées
doivent suivre une structure spécifique pour qu’elle soit comprise par plusieurs entités. Dans la
communauté de gestion de réseaux, on différencie la façon dont l’information est représentée,
c’est-à-dire le « modèle de données », et la façon dont elle est structurée, c’ést-à-dire le « modèle
d’information ». Ces deux concepts sont mieux compris avec un exemple. Une coordonnée
géographique peut être décrite par une paire latitude et longitude, ou par la distance en mètres
par rapport à un point de référence. Les distances, de la latitude et de la longitude peuvent
viii
être représentées comme des valeurs en virgule flottante ou comme des chaînes de caractères.
Le premier choix définit le modèle d’information tandis que le second choix définit le modèle de
données.
Le choix du modèle de données dépendra de chaque réseau et de ses ressources, alors que le
modèle d’information utilisé devrait toujours être le même afin que les différentes implémenta-
tions soient compatibles. De plus, le moteur de traduction pourrait être étendu pour garantir
l’interopérabilité entre les versions de MANIP utilisant des modèles de données différents.
Nous avons proposé un modèle d’information pour MANIP. Ce modèle est une extension de la
norme CIM « Common Information Model » et représente les informations les plus fréquemment
utilisées par des protocoles et applications ubiquitaires.
Évaluation
Nous avons évalué MANIP avec des simulations dans le simulateur NS-2. Nous avons implé-
menté un sous-ensemble de MANIP : la couche d’information, un moteur simplifié de notification
et le moteur de synchronisation. Nous n’avons pas implementé toutes les fonctionnalités de MA-
NIP pour deux raisons : le simulateur NS étant un simulateur réseau, il n’est pas possible de
quantifier la consommation de ressources de la couche de sécurité de MANIP ni de mesurer
l’impact du choix de la représentation des données.
MANIP a ensuite été évalué dans un scénario de partage de fichiers avec une application
pair-à-pair. Dans cette application, il y a deux algorithmes de requêtes de fichier, inondation et
« random walk ». En mode inondation, chaque noeud relaie les requêtes reçues à tous ses voisins
jusqu’à ce que leur champ de temps de vie soit égal à zéro. Ce champ est décrémenté d’une unité
à chaque noeud traversé. En mode « random walk », n messages de requête circulent de façon
aléatoire dans le réseau. Leur temps de vie est aussi défini par la quantité de noeuds qui les ont
relayés. Un logiciel de gestion simple, basé sur des politiques, choisit l’algorithme à utiliser. Ce
logiciel divise le réseau en groupes, chaque groupe étant contrôlé par un leader. Le leader mesure
la charge de son groupe et, dès qu’elle dépasse certains seuils définis, l’algorithme est changé.
Ce scénario a été évalué avec deux configurations, une sans MANIP et une autre en utilisant
MANIP. Dans la deuxième configuration, le protocole de routage, l’application pair-à-pair et le
module de gestion utilisent MANIP pour la dissémination et la collecte d’informations. L’objectif
de notre étude était de montrer les gains de performance obtenus avec l’utilisation de MANIP
dans un scénario représentatif. Les gains seraient produits par : (i) l’utilisation d’un seul message
de diffusion pour tous les protocoles, ce qui permet une réduction de la quantité de paquets
ix
envoyés; et (ii) une réutilisation des informations, notamment le voisinage, dans l’application
pair-à-pair et le protocole de routage.
Avec l’utilisation de MANIP, nous avons réduit de 40% à 50% la quantité de paquets de
contrôle utilisés par les protocoles de routage et de gestion. En même temps, MANIP réduit
de 40% à 90% le temps de réponse à une requête. Le pourcentage de requêtes envoyées par
l’utilisateur qui a trouvé le fichier demandé a également augmenté pour certains algorithmes de
requêtes. L’énergie, par contre, a changé légèrement, car la quantité de paquets de l’application
est beaucoup plus importante que la quantité de paquets de contrôle (utilisés par le routage,
la construction du voisinage de l’application pair-à-pair et le module de gestion). Ainsi, une
réduction dans les paquets de contrôle a eu un effet réduit dans la consommation totale d’énergie.
Routage sensible à la puissance de transmission et à la bande pas-sante des liens
Le routage est un problème très important dans les réseaux multi-sauts. Due aux caractéris-
tiques très dynamiques des liens sans fil, les protocoles utilisés dans les réseaux filaires ne peuvent
pas être réutilisés dans le contexte hertzien. Du coup, plusieurs protocoles ont été proposés dans
la littérature. Ces protocoles doivent prendre en compte les problèmes spécifiques au routage
sans fil, comme les limitations d’énergie de chaque noeud, la mobilité et les propriétés variables
dans le temps et dans l’espace du lien sans fil. Parmi ces caractéristiques, la dynamicité du lien
est en général la plus importante.
Le lien sans fil varie dans l’espace parce que, lorsqu’un noeud se déplace, il pourra commu-
niquer avec un ensemble diffèrent de noeuds. Ce changement est lié aux limites imposées par
la propagation des ondes électromagnétiques qui font que le noeud communique avec d’autres
noeuds à une distance maximale.
En plus des variations spatiales, le lien présente des variations dans le temps. Ces variations
sont liées aux effets de multi-chemins (réfraction) et à la diffraction. En autre, dans les cas
où l’émetteur ou le récepteur se déplacent, le signal souffre d’une déviation causée par l’effet
Doppler. Finalement, la propagation change avec la température et l’humidité. Le signal reçu
est ainsi la somme de tous ces effets. L’intensité de chaque effet décrit varie dans le temps car
l’environnement est dynamique.
Pour limiter l’effet de telles caractéristiques dans la performance du réseau, les protocoles
de la couche MAC utilisent des techniques de codage et de modulation spécifiques. Chaque
x
codage ou modulation diffère d’une de l’autre par sa densité d’information par unité de temps
(ce qui définit le débit du lien) ainsi que par sa résistance aux erreurs induites par les effets de
la propagation sans fil. Normalement, les codages et les modulations qui donnent un débit plus
important sont davantage susceptibles aux erreurs de transmission. Ainsi, les normes les plus
répandues dans les réseaux hertziens à haut débit (tels que les normes IEEE 802.11 et IEEE
802.16) adoptent plusieurs pairs de modulation et de codage, résultant en des liens avec des
débits différents au fil du temps, à partir de la qualité instantanée du lien. Avec l’utilisation
croissante des réseaux multi-sauts, les chercheurs ont identifié la nécessité de considérer le débit
de chaque lien dans le routage. Ainsi, des algorithmes spécifiques ont été proposés.
Finalement, certaines radios permettent le changement de la puissance de transmission. Une
puissance plus faible permet aux noeuds d’économiser de l’énergie et ainsi d’augmenter la capacité
de transmission simultanée du réseau. Par contre, une transmission plus faible réduit la puissance
du signal reçu au niveau du récepteur et, par conséquent, la probabilité que ce signal soit décodé
d’une façon erronée augmente. Plusieurs protocoles de routage qui prennent en considération la
puissance de transmission ont été proposés pour les réseaux mobiles ad-hoc, les capteurs et les
réseaux maillés.
Après une recherche dans l’état de l’art, nous avons constaté qu’aucun protocole ne considère
la puissance de transmission et le débit des liens en même temps. Clairement, les deux sont liés :
une puissance de transmission plus importante permettrait aux noeuds d’atteindre un débit plus
élevé, alors qu’un débit réduit permet aux noeuds de réduire leur puissance de transmission.
Ce chapitre présente un protocole de routage qui prend en compte les deux paramètres dans
la création des chemins. Ce protocole demande une forte interaction entre les couches réseau,
MAC et physique. Nous avons donc utilisé MANIP pour simplifier ce processus. Le problème du
routage est d’abord modélisé afin d’identifier les enjeux de l’acheminement dans un tel réseau.
Ce modèle prend en considération les effets de l’algorithme d’accès aléatoire (ou « back-off » en
anglais), les stations cachées ainsi que les stations bloquées par l’écoute de la porteuse. Ensuite,
nous évaluons le protocole proposé avec des simulations. Les résultats montrent une amélioration
significative du délai et du débit de bout-en-bout des flux.
Chapitre 4 : La modèlisation
Avant de proposer un algorithme de routage, nous avons étudié les effets de la bande passante
et de la puissance de transmission variables avec un modèle mathématique. Cet étude avait
xi
pour but de déterminer les meilleurs choix de chemins au niveau routage, par exemple : faut-il
minimiser ou maximiser la puissance de transmission ? Est-il plus bénéfique pour le délai de
bout-en-bout des chemins courts ayant une petite bande passante, ou des chemins courts ayant
une bande passante importante ?
La définition de la bonne puissance de transmission et du débit a été étudiée avant dans des
topologies en étoile modélisées par un graphe en clique où une station de base communique avec
des clients a un seul saut. Dans cette situation, le problème est très simple. Par contre, dans une
topologie multi-sauts ce problème se complique à cause des stations cachées et de l’interférence
entre les transmissions parallèles.
Ainsi, nous proposons un modèle pour les communications hertziennes à plusieurs sauts. À
la différence des modèles existants qui ont pour but de calculer la charge maximale du réseau,
notre modèle a été conçu pour le calcul du délai et de la consommation d’énergie d’un flux.
Nous basons notre modèle sur une topologie aléatoire. La propagation des signaux prend
en compte les effets aléatoires décrits antérieurement, le signal reçu suivant une distribution
déterminée (par exemple Rayleigh, Nakagami, Rice). Afin de permettre une modélisation plus
réelle, la bonne réception d’un paquet dépend du rapport signal-bruit dans le récepteur. Ce
rapport change avec le débit atteint dans le lien.
À chaque transmission, plusieurs stations sont mises en attente, car le support est occupé.
Ce blocage est connu comme blocage par détection de porteuse et est modélisé comme l’ensemble
de stations qui détectent que la puissance du signal dans le support est supérieure à un seuil de
détection de la porteuse. De plus, certaines stations sont bloquées par le dialogue de réservation
du lien, le RTS/CTS. Nous modélisons les deux effets par des cercles, centrés en l’émetteur et
en le récepteur des trames. Ils définissent une région de blocage autour de ces noeuds.
À partir de la région de blocage, nous pouvons calculer la quantité de stations qui concourent
pour le medium. Cela définit le délai causé par la technique d’accès aléatoire, que nous mod-
élisons avec des équations existantes. À partir de ces équations, nous calculons la quantité de
temps où le support est libre, la probabilité que des transmissions d’autres noeuds passent avant
la transmission du noeud considéré et la probabilité de collision. Par conséquent, chaque trans-
mission a une probabilité de réussite définie par le taux d’erreur et le taux de collision. Le taux
d’erreur augmente avec la distance entre le récepteur et l’émetteur, comme nous le détaillons
tout de suite et le taux de collision dépendra de la quantité de stations cachées.
Finalement, il faut multiplier le délai ou la consommation d’énergie atteinte en chaque saut
par la quantité de sauts. Nous calculons la quantité de sauts en utilisant le rapport signal-
xii
bruit qui définit la distance maximale entre un émetteur et un récepteur. Cette distance est
aussi calculée en se basant sur le modèle de propagation et sur la distribution du signal reçu.
Dans notre étude, nous utilisons le modèle de propagation Two-Ray Ground et la distribution
du signal reçu basé sur celle de Rayleigh. Néanmoins, n’importe quel modèle est supporté par
nos équations. Comme le signal se comporte d’une façon stochastique, la distance maximale
de transmission varie. Du coup, certains noeuds peuvent temporairement ne pas recevoir les
paquets à cause de ces fluctuations. Ainsi, la distance calculée est associée à une probabilité de
réussite (son complément étant le taux d’erreur de transmission utilisé dans la modélisation du
délai de l’accès aléatoire). Cela permet, par exemple, de définir une distance de communication
où la transmission des paquets a une probabilité de réussite de 95% ou une distance plus grande
qui a une probabilité de réussite réduite.
Le modèle décrit ci-dessus nous permet d’avoir plusieurs informations sur la performance
d’un flux de bout-en-bout. Ce modèle détermine le délai et le débit de bout-en-bout d’un flux,
ainsi que l’efficacité des liens sans fil. Avec cet outil mathématique, nous évaluons l’effet du taux
d’envoi de paquets, de la puissance de transmission utilisée, du débit de chaque lien et du taux
d’erreur des liens dans les trois métriques de performance.
Nos résultats montrent que les protocoles de routage devraient choisir les chemins ayant une
bande passante plus importante, minimisant en même temps la puissance de transmission. Le
taux d’erreur des liens doit aussi être minimisé cependant un taux d’erreur trop réduit peut
augmenter davantage la quantité de sauts d’un chemin.
Chapitre 5 : Le protocole de routage
Le protocole proposé se base sur les informations de débit et de puissance de transmission
de chaque lien. Cette information doit être disponible en avance pour tous les liens d’un noeud
et doit prévoir le comportement du lien pendant des intervalles supérieurs à une seconde. Ainsi,
comme les algorithmes existants ne calculent que l’état d’un seul lien et ont comme but la
définition de la puissance et de la bande passante instantanée, il a fallu tout d’abord concevoir
un nouvel algorithme pour le calcul de la qualité de tous les liens d’un noeud.
Cet algorithme utilise la puissance de transmission et la puissance de réception pour estimer
la perte en puissance du signal. Avec cette information, en connaissant le rapport signal-bruit
de chaque pair de codage et la modulation offert par la norme MAC, il est possible d’estimer la
xiii
bonne puissance de transmission, le codage et la modulation qui permettent une communication
fiable entre les deux noeuds.
Comme le bruit, l’interférence et l’atténuation du signal changent dans le temps, nous faisons
une estimation pessimiste de la qualité du lien. Pour cela, nous filtrons chaque paramètre par
une moyenne glissante, ce qui permet que la valeur présente du calcul prenne également en
considération les valeurs précédentes. Le poids de cette moyenne varie : les valeurs plus élevées
ont un poids plus important, ce qui fait que le résultat est pessimiste. Une telle stratégie est
nécessaire car la couche de routage demande une information de qualité valable pendant un
intervalle de temps de l’ordre de la seconde ou de la minute. Au niveau de la couche MAC,
par contre, les algorithmes d’adaptation peuvent changer les propriétés du lien à chaque paquet
transmis (ou même à une fréquence plus haute, comme par exemple chaque 80 millisecondes
dans la norme IEEE 802.16).
Après avoir proposé es calculs de l’estimation de la bande passante et de la puissance de
transmission, il faut les implementer d’une façon efficace. Ainsi, nous utilisons les paquets en
mode diffusion. Du coup, tous les noeuds qui écoutent ce paquet peuvent calculer la bonne
puissance et le bon débit pour la communication entre l’émetteur du paquet et eux-même. Afin
d’augmenter le parallélisme, ce paquet est transmis avec la puissance la plus élevée de la radio.
De plus, les paquets en diffusion utilisent des codages et des modulations plus résistants aux
interférences et au bruit, ce qui fait que la quantité de noeuds qui les reçoivent correctement est
plus importante.
Nous ajoutons à chaque paquet de diffusion la liste de pairs [debit, puissance] calculés. Ainsi,
le noeud A, ayant fait le calcul pour la communication avec B et C, enverra ces pairs par un
message en mode de diffusion. Quand B reçoit ce message, il y trouvera la valeur calculée par A
pour la communication entre A et B et B l’enregistrera dans un tableau pour des transmissions
ultérieures. Comme le même message a aussi la bonne valeur pour la communication entre A et
C, C exécutera lui aussi le même processus que B.
Avec l’estimation de la bonne puissance de transmission et de la bande passante de chaque
lien, le protocole de routage a toutes les informations pour la création de chemins efficaces.
Au contraire des protocoles existants, notre protocole ne prend pas explicitement en compte
la qualité du signal. Ceci est possible parce que les informations de débit et de puissance de
transmission la prennent en compte implicitement. Notre protocole a pour but de créer des
chemins avec le débit de bout-en-bout le plus élevé et avec la moindre puissance de transmission.
Notre choix de priorité est lié au fait que les paquets transmis à un débit plus élevé réduisent
xiv
le délai de bout-en-bout et augmentent la capacité de transmission du réseau car leur temps de
transmission est réduit. La puissance de transmission, par contre, doit être la plus petite possible
pour permettre autres stations de transmettre au même temps.
Nous évaluons le protocole proposé avec le simulateur NS-2 version 2.34. Cette version
introduit une nouvelle implémentation plus réaliste de la couche physique et de la couche MAC.
Cependant, cette implémentation étant trop simpliste, il a fallu y ajouter quelques composants.
Dans le niveau physique, nous avons ajouté le support de plusieurs puissances de transmission,
la réception des trames basées sur le rapport signal-bruit et la taille des trames, le calcul de la
consommation de la radio (la nouvelle version ne le supportait plus) et les modèles de propagation
radio de Rayleigh et de Rice. Dans le niveau MAC nous avons ajouté des protocoles d’adaptation
de la puissance et du débit.
Finalement, nous avons implémenté notre protocole de routage. Pour comparer sa perfor-
mance, nous avons également ajouté un protocole de routage sensible à la puissance de trans-
mission et un protocole de contrôle de topologie construit pour les liens utilisant une puissance
de transmission variable.
Les résultats obtenus montrent que la prise en compte de la bande passante et de la puissance
de transmission des liens permet une réduction du délai de bout-en-bout, une augmentation
dans l’efficacité des flux et une réduction de la consommation d’énergie. Les gains sont moins
importants quand les liens ont un taux d’erreur plus élevé ou quand les noeuds sont mobiles.
Notre évaluation a montré que la bande passante et la puissance de signal doivent être considérées
par le protocole de routage car le gains obtenues sont importants.
Chapitre 6 : Contrôle automatique des paramètres d’une Applica-tion pair-à-pair
Les réseaux sans fil sont souvent utilisés dans les situations où il n’y a pas de structure réseau
(routeurs, serveurs etc.). Dans ces situations, le paradigme client-serveur n’est pas conseillé
parce que les noeuds mobiles ont souvent des ressources limitées ou sont susceptibles d’avoir des
pertes de connexion ou des pannes. Ainsi, le paradigme pair-à-pair « P2P » est utilisé. De tels
protocoles créent un serveur d’informations distribué, où les noeuds partagent les tâches associées
au stockage, effectuent des recherches et mettent à jour des données prises en charge par le réseau.
Le paradigme pair-à-pair est idéal pour les réseaux mobiles, du fait des caractéristiques clef très
xv
similaires, comme l’absence d’un point central, la grande quantité de connexions et déconnexions
de noeuds et des propriétés de tolérance aux pannes.
Un service de distribution d’information pair-à-pair peut être la base de plusieurs applica-
tions : le partage de fichiers, la présence (comme un serveur de « chat »), l’échange d’informations
de contextuelles et géographiques dans une application de géo-traitement, le « streaming » de
données multimédia, la découverte de services, etc.
Nous pouvons distinguer deux grands types de protocoles pair-à-pair : les « structurés » et
les « non structurés ». Les protocoles dits structurés construisent des tables d’index de toute
l’information stockée dans le réseau P2P, ce qui permet une recherche plus efficace. Ainsi, les
enquêtes sont essentiellement traitées comme une interrogation de l’index. Dans les systèmes
non structurés, par contre, il n’y a pas de moyen de savoir en quel noeud l’information cherchée
peut être trouvée. Ainsi, tous les noeuds doivent être interrogés. Par conséquent, ces systèmes
se servent des mécanismes d’inondation pour leur recherche d’information. Dans ce texte nous
faisons la distinction entre les « enquêtes » qui sont les demandes de recherche d’un utilisateur
et les « requêtes » qui sont des paquets transmis afin de satisfaire une enquête.
Les caractéristiques de chaque type de réseau influencent leur performance. Dans les réseaux
structurés, le coût en termes de messages et de délai d’une enquête est réduit car l’index peut
être organisé de telle façon que la recherche soit optimisée (par exemple avec des arbres ou des
listes en ordre d’identifiant qui permettent une recherche binaire). Le coût de la mise à jour
de cet index dévient alors le coût le plus important de l’algorithme, car chaque information
ajoutée ou supprimée du réseau doit être ajoutée ou supprimée de l’index. Dans les réseaux non
structurés, le coût de la mise à jour de l’état interne de chaque noeud est minimal, en revanche
les enquêtes demandent une quantité importante de messages. Malgré plusieurs améliorations
proposées aux algorithmes non structurés, comme par exemple la formation de groupes, les
réseaux hiérarchiques ou les topologies « small world », les enquêtes sont implementés toujours
par une variation de l’algorithme d’inondation.
Le choix du type d’algorithme P2P est alors un compromis entre la performance et le coût.
Dans la littérature, quelques travaux ont mesuré la consommation d’énergie, le délai et le taux de
réussite des requêtes des stratégies structurées et non structurées dans un réseau mobile ad-hoc.
Ces travaux ont montré que, malgré son coût élevé, l’inondation a une performance exceptionnelle
car l’utilisation de plusieurs messages donne aux algorithmes une grande tolérance aux pannes.
Les protocoles structurés, par contre, présentent une performance faible car qu’ils sont beaucoup
plus susceptibles à la perte de paquets aux pannes de liens et de noeuds. De plus, quelques
xvi
noeuds responsables d’une partie de l’index peuvent être introuvables pendant quelques instants
et ainsi la requête ne trouve pas de réponse.
Ainsi, dans les réseaux mobiles, les protocoles non structurés ont une meilleure perfor-
mance, par rapport aux protocoles structurés. Cependant leur consommation très importante de
ressources ne leur permet pas de passer à l’échelle. La quantité de messages de requête dans le
réseau explose rapidement avec l’augmentation du taux d’enquêtes lancées par les utilisateurs et,
pour cela, le taux de réussite diminue en même temps que le délai augmente. Ces effets ont pour
cause la charge du réseau qui augmente également la probabilité des collisions et la quantité de
messages rejetés due aux files pleines.
Ce constat nous a motivé à créer un algorithme d’auto-configuration pour les protocoles non
structurés. Cet algorithme permet au réseau d’adapter ses paramètres en temps d’exécution
pour que la quantité de messages dans le réseau soit toujours acceptable.
Cet algorithme utilise les concepts de la théorie de contrôle, une théorie répandue pour
le contrôle des processus industriels et physiques. La théorie de contrôle permet la création
de systèmes automatiques avec quelques caractéristiques très importantes : les contrôleurs
s’adaptent aux sources de bruit extérieur (par exemple, l’existence de trafic de fond dans le
réseau); l’algorithmique est simple et ainsi peut être exécutée en temps réel; le contrôleur ne
nécessite pas de période d’entraînement. Comme le problème n’est pas facilement modélisé par
une loi linéaire, nous faisons appel aux outils de contrôle non linéaire, plus spécifiquement le con-
trôle basé sur la logique floue. La logique floue ne requiert pas de modélisation mathématique
du système à contrôler et se base sur des règles simples, exprimées d’une façon floue similaire au
raisonnement humain.
Les protocoles non structurés
Avant de montrer notre solution, il faut d’abord montrer comment les protocoles non struc-
turés peuvent être configurés. En général, les protocoles non structurés ont deux paramètres
clés : la quantité de voisins de chaque noeud et le temps de vie des paquets de requêtes. Le
noeud originaire de la requête envoie des paquets de requête à ses voisins avec un temps de vie
spécifié. Chacun de ses voisins va alors vérifier s’ils ont l’information cherchée. Si c’est le cas,
les noeuds vont répondre directement au noeud qui a initié la requête. Dans le cas échéant, les
noeuds iront repasser ce message a leurs voisins après avoir décrémenté d’une unité la valeur du
champs « temps de vie ».
xvii
Ainsi, le temps de vie (t) et la quantité de voisins (v) définissent la quantité de messages
envoyés par une enquête de l’utilisateur. On peut alors adapter ces deux paramètres à la capacité
du réseau. Une valeur plus importante de v permet que l’information recherchée soit trouvée
plus rapidement, tandis qu’une augmentation de t permet qu’une partie plus grande du réseau
soit interrogée. Comme la quantité de messages de requête produits par une enquête peut
arriver jusqu’à vt, la consommation de ressources augmente rapidement même avec un petit
changement dans ces paramètres. Ainsi, le choix des bonnes valeurs de v et de t par rapport à la
condition instantanée du réseaux requiert soit une étude préalable soit un mécanisme intelligent
d’adaptation.
La solution proposée
Notre solution s’appuie sur l’analyse ci-dessus pour proposer une adaptation dans le nombre
de voisins de chaque noeud. Comme la cause principale de l’échec des enquêtes est le trafic
excessif, nous proposons de diminuer la quantité de voisins si le réseau est chargé et de l’augmenter
si la charge le permet. L’augmentation de la quantité de voisins permet une réduction du délai de
réponse à une enquête, mais il augmente la charge dans le réseau. La diminution de ce paramètre
a l’effet contraire.
Cette observation nous a amené à créer un contrôleur qui estime la charge du réseau via
l’occupation moyenne des files de paquets des noeuds. Nous avons choisi une solution totalement
distribuée, où chaque noeud observe une partie du réseau (sa « vue située » de l’état du réseau).
À partir de cette observation, le noeud produit une vision agrégée des files de paquet. Cette
observation est utilisée comme entrée du contrôleur flou installé dans chaque noeud. Elle est
utilisée pour calculer la nouvelle quantité de voisins de l’application pair-à-pair.
Le contrôleur agrège les mesures collectées d’un voisinage défini par une quantité de sauts
logiques. Afin de réduire la quantité de données transmises, nous agrégeons ces données. Chaque
noeud transmet l’occupation maximale des files de ses voisins. Cela permet que notre solution
transmette seulement s valeurs, où s est la quantité de sauts observés. La quantité de sauts
détermine l’efficacité de notre contrôleur car elle limite la précision de l’estimation de la condition
du réseau.
Une fois agrégée, cette information est fournie au contrôleur flou. Celui-ci l’utilise comme
entrée pour le moteur d’inférence de la logique floue. Nous définissons deux variable floues : la
déviation de l’occupation agrégée par rapport à une occupation cible (uerror) et la variation de
uerror par rapport à la dernière itération du contrôleur (changeinerror). Ensuite nous vérifions
xviii
l’appartenance de ces valeurs à deux sous-ensembles flous : « négatif » et « positif ». Nous
appliquons des propositions floues sur les valeurs floues obtenues. Ces propositions, en gros,
définissent que :
• La quantité de voisins doit augmenter si uerror et changeinerror sont négatifs.
• La quantité de voisins doit diminuer si uerror et changeinerror sont positifs.
• Sinon la quantité de voisins n’est pas changée.
La grandeur du changement de la quantité de voisins varie en fonction du degré d’appartenance
à chaque sous-ensemble floue. Ce degré est donné par les fonctions d’appartenance qui associent
à partir de la valeur d’entrée réelle. Par exemple, si les variables uerror et changerror sont
considérées « positif » avec le degré 1.0, le changement dans la quantité de voisins sera plus
important que si le degré serait de 0.5.
Finalement, le résultat de la logique floue est multiplié par une constante K. Cela permet
que nous adaptions le temps de réponse du contrôleur aux changements. Un K petit produit
une réponse lente car la quantité de voisins changera lentement. Un K élevé va produire un
changement plus radicale, ainsi le temps de réponse aux variations dans la charge sera réduit.
Ce paramètre doit être judicieusement choisi car il détermine aussi la convergence du contrôleur.
Si K est trop grand, la valeur de sortie du contrôleur risque de fluctuer énormément, lorsque la
réaction aux changements dans la charge sera exagérée.
Évaluation
Notre évaluation est faite par simulations dans le simulateur NS-2. Notre réseau consiste d’un
réseau mobile ad-hoc. Cela pourrait représenter une application d’urgence, comme la recherche
d’un avion dans une région de jongle ou le travail des pompiers après une catastrophe.
Les liens hertziens sont modélisés à partir d’une carte WiFi très populaire et la qualité du
signal radio varie selon le modèle de propagation de Rice. Tous les échanges de messages pour la
mise à jour des protocoles de routage, de l’application pair-à-pair et de l’occupation du réseau
sont faits par MANIP.
Dans un premier temps, nous avons comparé les résultats obtenus par le contrôleur avec ceux
d’un réseau où les noeuds possèdent un nombre de voisins fixe. Nous varions la quantité de
requêtes par seconde au niveau utilisateur pour déterminer la réponse de chaque configuration
de l’application pair-à-pair à une augmentation de la charge. Cela avait comme but d’évaluer
xix
la performance de notre solution par rapport aux algorithmes classiques et ainsi de mesurer les
gains de l’utilisation de notre approche.
Les résultats ont montré que notre approche a un taux de réussite des requêtes comparable
à celui de la meilleure configuration statique de paramètres dans toutes les charges évaluées.
Comme notre approche augmente la quantité de voisins pour améliorer la performance du réseau,
en général le temps de réponse d’une requête est presque toujours de l’ordre d’une seconde.
Afin d’augmenter le taux de réussite de requêtes, notre approche augmente le délai. Cette
augmentation est limitée par l’occupation des files de paquets dans chaque noeud ce qui permet
que le délai soit toujours acceptable. De la même façon, la consommation d’énergie du réseau
augmente à cause des messages envoyés en plus.
Ensuite, nous avons évalué la capacité du contrôleur à s’adapter aux sources externes de
trafique réseau, c’est-à-dire à des sources de trafique hors du protocole pair-à-pair. Ceci est
possible parce que notre solution adopte une architecture en maille fermé, où les réponses des
itérations passées sont utilisées pour déterminer la valeur de l’itération actuelle.
Ainsi, nous avons créé un scénario où une source externe de paquets est activée au milieu de la
simulation. Les résultats ont montré que le contrôleur s’adapte à la source externe et qu’il réduit
ainsi le nombre de voisins de l’application pair-à-pair pendant que la source est active. Dès que la
source n’émet plus de paquet, le contrôleur remonte le nombre de voisins à la valeur précédente.
Comme le contrôleur utilise la charge agrégée d’une région comme paramètre d’entrée, il y a un
délai pour qu’il s’aperçoive que la charge du réseau a changé. Ainsi, la réponse aux changements
de la charge introduite par la source externe prend de trente secondes à une minute. Finalement,
comme dans toutes les solutions basées sur la théorie de contrôle en maille fermé, le comportement
du contrôleur oscille après que la source externe est éteinte. Cette oscillation persiste environ 2
à 3 minutes avant de disparaître complètement.
Notre troisième scénario quantifie l’effet de la taille de la région de voisinage sur la perfor-
mance du contrôleur. La taille du voisinage définit la quantité d’informations connues par le
contrôleur ainsi que le coût de mise à jour de ces informations. La bonne taille du voisinage sera
ainsi un compromis entre l’augmentation de la performance et la consommation de ressources
nécessaires pour la dissémination des informations dans le voisinage.
Dans ce scénario, nous avons identifié que le taux de réussite des requêtes augmente avec
la taille du voisinage jusqu’à ce que le voisinage atteigne la couverture maximale des requêtes,
définie par le paramètre « temps de vie » (t). La quantité d’octets transmis pour la mise à jour de
l’information du voisinage a une augmentation linéaire avec la taille du voisinage. De plus, cette
xx
mise à jour ne requière que seulement 0.003% du débit maximal des liens. Comme un voisinage
plus important permet au contrôleur d’améliorer sa décision, le délai et la consommation d’énergie
diminuent avec l’augmentation de la taille du voisinage.
Finalement, nous avons étudié l’effet des erreurs des liens sur l’efficacité du contrôleur. Le
taux d’erreur du lien affecte la quantité de retransmissions nécessaires pour la bonne réception
des trames de données. Par conséquent, le contrôleur pourrait considérer de façon erronée que
le lien est chargé alors que la charge est liée à la mauvaise qualité du signal. Ainsi, dans ce
scénario nous varions la qualité du lien en modifiant l’écart-type du signal reçu : un écart-type
plus important produit un lien de mauvaise qualité, alors qu’un écart-type réduit produit un lien
plus fiable.
Dans les réseaux pair-à-pair dotés de notre contrôleur, le temps de réponse des requêtes a
augmenté avec une diminution de la qualité du signal, mais cette augmentation n’a pas été signi-
ficative. Les réseaux pair-à-pair classiques, par contre, ont eu pour certaines configurations une
variation importante du délai, ce qui montre que le contrôleur permet au réseau un comportement
plus prévisible.
Chapitre 7 : Conclusions et perspectives de recherche
Cette thèse étudie l’auto-configuration dans les réseaux sans fil multi-sauts. Nous avons trois
contributions dans cette thèse. La première est l’architecture d’une base de données distribuée
pour le partage de données de configuration. Cette architecture, basée sur le concept du « plan
d’information », simplifie la gestion et le partage de données dans les réseaux sans fil.
Nous évaluons cette architecture avec des simulations qui comparent la consommation d’énergie,
le délai et la quantité d’octets nécessaires pour la mise à jours des informations de tous les proto-
coles d’une solution basée sur le plan d’information avec une solution traditionnelle. Un réseau
utilisant le plan d’information présente une performance supérieure à celle d’un réseau similaire
sans plan d’information, car ce plan réduit la quantité de ressources nécessaires pour la dissémi-
nation de l’information de contrôle dans le réseau. De plus, le plan d’information permet que
l’information utilisée par les protocoles soit plus fraîche car la réduction de la consommation de
ressources permet l’augmentation de la fréquence de mise à jour des informations.
Ensuite, nous avons utilisé le plan d’information dans deux applications d’auto-configuration.
Le plan d’information peut être utilisé par des protocoles ainsi que par des services. Les protocoles
l’utilisent pour permettre un partage d’informations entre couches ce qui permet la création de
xxi
protocoles dits intégrés. Les services, pour leur part, peuvent utiliser les informations de contexte
de l’environnement et du réseau (la topologie au niveau physique, l’état de chaque lien, etc) pour
améliorer leurs décisions et ainsi augmenter leur performance.
Le premier problème d’auto-configuration étudié est au niveau protocolaire. Nous traitons le
routage dans les réseaux ayant des liens dont la puissance de transmission et la bande passante
sont dynamiques. Cela requiert des modifications dans le protocole de routage car il doit con-
sidérer ces paramètres dans la création de chemins. Le plan d’information simplifie l’interaction
entre les protocoles de routage et MAC et aussi stocke les informations de la couche physique
nécessaires pour le calcul de la bonne bande passante et de la bonne puissance de transmission.
Nous proposons une nouvelle fonction de coût pour des protocoles de routage ainsi que des
algorithmes d’estimation de la bonne bande passante et de la bonne puissance de transmission.
La création de la fonction de coût se base sur des résultats de la modélisation du problème. Ce
modèle mathématique prend en compte des facteurs comme le taux d’erreur des liens, la densité
de noeuds, la méthode d’accès aléatoire utilisée dans la couche MAC et l’effet des stations cachées.
L’ajout de notre solution permet une augmentation de la bande passante de bout-en-bout des
flux, ainsi qu’une réduction du délai de bout-en-bout et de la consommation d’énergie.
Ensuite, nous appliquons le plan d’information dans un service très répandu dans les réseaux
sans fil multi-sauts : le service de partage d’informations utilisant le paradigme pair-à-pair.
Ce service est la base de plusieurs applications, comme par exemple le partage de fichiers, la
découverte de services, le « streaming » de flux multimédia, les applications de « chat » et de
travail coopératif.
Nous proposons un contrôleur basé sur la logique floue qui adapte l’application en temps réel.
Cela permet que l’application réduise la charge du réseau quand la quantité d’enquêtes faites par
les utilisateurs est importante. Par conséquent, la performance du réseau est toujours similaire
ou supérieure à celle obtenue par la configuration minutieuse des paramètres de l’application.
Comme perspectives de recherche, nous proposons l’utilisation du plan d’information dans
d’autres problèmes d’auto-configuration, tels que les protocoles de transport adaptés au taux
d’erreur et de charge de chaque lien et la gestion de la configuration des radios cognitives. Dans
le sujet de l’auto-configuration du routage et de la couche MAC, nous proposons l’adaptation
de nouveaux paramètres, comme par exemple les plages de fréquences et la quantité d’antennes
utilisées. Finalement, le contrôleur flou pourrait être étendu pour traiter plusieurs paramètres
de l’application en même temps ce qui permettrait une action plus fine sur le protocole.
xxii
Contents
1 Introduction 1
1.1 Objectives of the Thesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3 Thesis Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2 Principles of Self-Configuring Networks 9
2.1 Autonomic Computing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.1.1 The MAPE Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.1.2 Autonomic Networking Planes . . . . . . . . . . . . . . . . . . . . . . . . 12
2.2 Cross-Layering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.3 Connectivity Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.4 Information Dissemination Services . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.5 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3 An Information Plane for Mobile Ad Hoc Networks 21
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.2 Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.3 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.4 The MANIP Middleware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.4.1 The Information Tier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.4.2 The Engines Tier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.4.3 The Security Tier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.4.4 Interoperability with Regular Nodes . . . . . . . . . . . . . . . . . . . . . 32
3.5 Information in MANIP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.5.1 Quality of Information in MANIP . . . . . . . . . . . . . . . . . . . . . . 33
xxiii
CONTENTS
3.5.2 The MANIP Information Schema . . . . . . . . . . . . . . . . . . . . . . . 34
3.6 Using MANIP for Policy-Based Self-Configuration of P2P Networks . . . . . . . . 37
3.6.1 MANET Characterization . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.6.2 Application Characterization . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.6.3 Results – Policy-Based Self-Configuration Manager . . . . . . . . . . . . . 42
3.6.4 Results – Benefits of MANIP . . . . . . . . . . . . . . . . . . . . . . . . . 43
3.7 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4 An Analytical Model for Multi-Hop Routing 49
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.2 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.3 The Analytical Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
4.3.1 Modeling Wireless Interference . . . . . . . . . . . . . . . . . . . . . . . . 54
4.3.2 Modeling One-Hop Contention . . . . . . . . . . . . . . . . . . . . . . . . 58
4.4 Model Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
4.4.1 Overall Scenario Description . . . . . . . . . . . . . . . . . . . . . . . . . . 64
4.4.2 The Energy – Latency Trade-off . . . . . . . . . . . . . . . . . . . . . . . 64
4.4.3 Varying Link Quality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
4.5 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
5 Transmission Power and Data Rate Aware Routing 71
5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
5.2 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
5.3 TPC and RA Routing Enhancements . . . . . . . . . . . . . . . . . . . . . . . . . 74
5.3.1 Assessing the Ideal Transmission Power and Modulation . . . . . . . . . . 75
5.3.2 Building TPC- and RA- Aware Routes . . . . . . . . . . . . . . . . . . . . 77
5.4 Simulation Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
5.4.1 Improvements to the Simulator . . . . . . . . . . . . . . . . . . . . . . . . 79
5.4.2 Simulation Characterization . . . . . . . . . . . . . . . . . . . . . . . . . . 81
5.5 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
5.5.1 Node Density Scenario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
5.5.2 Node Mobility Scenario . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
5.5.3 Link Quality Scenario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
5.6 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
xxiv
CONTENTS
6 Load Self-Configuration in Mobile Unstructured P2P Services 91
6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
6.2 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
6.3 The Fuzzy Logic Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
6.3.1 System Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
6.3.2 Input Signal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
6.3.3 Fuzzy Inference Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
6.4 Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
6.4.1 Simulation Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
6.4.2 Convergence to the Best Configuration . . . . . . . . . . . . . . . . . . . . 104
6.4.3 Adaptability to Disturbances . . . . . . . . . . . . . . . . . . . . . . . . . 107
6.4.4 Size of the Neighborhood . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
6.4.5 Link Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
6.5 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
7 Conclusions 115
7.1 Objectives and Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
7.2 Future Work and Research Perspectives . . . . . . . . . . . . . . . . . . . . . . . 117
7.2.1 The Information Plane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
7.2.2 TPC- and RA- Aware Networks . . . . . . . . . . . . . . . . . . . . . . . . 118
7.2.3 Self-Configuring P2P Networks . . . . . . . . . . . . . . . . . . . . . . . . 120
7.3 Towards Autonomic Wireless Multi-Hop Networks . . . . . . . . . . . . . . . . . 120
A Instantiating the Analytical Model for Rayleigh Fading and Two-Ray GroundPropagation 123
A.1 The Rayleigh Fading and Two-Ray Ground Propagation Models . . . . . . . . . . 123
A.2 Adding Fading and Propagation Effects to the Analytical Model . . . . . . . . . . 124
B List of Publications 127
References 131
xxv
CONTENTS
xxvi
List of Figures
1.1 The information plane and its relationship with services and protocols. . . . . . . 5
2.1 The MAPE autonomic architecture of IBM. . . . . . . . . . . . . . . . . . . . . . 11
2.2 The four planes of autonomic networks. . . . . . . . . . . . . . . . . . . . . . . . 13
3.1 The Information Plane in autonomic networks. . . . . . . . . . . . . . . . . . . . 28
3.2 The MANIP module and its interaction with protocols and services. . . . . . . . 29
3.3 The main classes of the MANIP CIM schema. . . . . . . . . . . . . . . . . . . . . 35
3.4 Hit rate of the MANIP-aware P2P protocols. . . . . . . . . . . . . . . . . . . . . 43
3.5 Response time of the MANIP-aware P2P protocols. . . . . . . . . . . . . . . . . . 43
3.6 Energy consumption of the MANIP-aware P2P protocols. . . . . . . . . . . . . . 44
3.7 Energy consumption of the MANIP-aware P2P protocols. . . . . . . . . . . . . . 44
3.8 Number of packet drops of the MANIP-aware P2P protocols. . . . . . . . . . . . 45
3.9 Savings of MANIP on the number of control messages. . . . . . . . . . . . . . . . 45
3.10 Savings of MANIP on the response time. . . . . . . . . . . . . . . . . . . . . . . . 46
3.11 Savings of MANIP on energy consumption. . . . . . . . . . . . . . . . . . . . . . 46
3.12 Effect of MANIP on the hit rate. . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
4.1 The worst case first tier interferers (small black circles) in a wireless transmission.
The hidden terminal area is also depicted (grey surface). . . . . . . . . . . . . . . 56
4.2 Example calculation of the distProb() function with target PRX = 4.5−3 under
Rayleigh fading using σ = 10−5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4.3 Schema of the several types of events happening in a wireless transmission. . . . . 60
4.4 Message exchange in the IEEE 802.11 standard when medium reservation is used. 62
4.5 Calculated energy consumption for varying packet arrival rates. . . . . . . . . . . 65
4.6 Calculated latency for varying packet arrival rates. . . . . . . . . . . . . . . . . . 66
xxvii
LIST OF FIGURES
4.7 Calculated throughput for varying packet arrival rates. . . . . . . . . . . . . . . . 66
4.8 Calculated energy consumption for varying link error rates. . . . . . . . . . . . . 67
4.9 Calculated latency for varying q for varying link error rates. . . . . . . . . . . . . 67
4.10 Calculated throughput for varying q for varying link error rates. . . . . . . . . . . 68
5.1 Dialogue for the determination of the transmission power and modulation. . . . . 76
5.2 Example routes (represented by arrows). The dashed route is selected due to its
highest throughput. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
5.3 Throughput: density scenario. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
5.4 Data rate of a path: density scenario. . . . . . . . . . . . . . . . . . . . . . . . . . 84
5.5 Minimum data rate of a path: density scenario. . . . . . . . . . . . . . . . . . . . 85
5.6 Energy consumption: density scenario. . . . . . . . . . . . . . . . . . . . . . . . . 85
5.7 Latency: density scenario. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
5.8 Jitter: density scenario. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
5.9 Throughput: mobility scenario. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
5.10 Latency: mobility scenario. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
5.11 Energy consumption: mobility scenario. . . . . . . . . . . . . . . . . . . . . . . . 88
5.12 Throughput: link error scenario. . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
5.13 Minimum data rate of a path: link error scenario. . . . . . . . . . . . . . . . . . . 89
5.14 Latency: link error scenario. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
6.1 The organization of the self-configuring controller. . . . . . . . . . . . . . . . . . 96
6.2 Block diagram of the closed loop system. . . . . . . . . . . . . . . . . . . . . . . . 98
6.3 CDF of the aggregated occupation for different number of hops. . . . . . . . . . . 99
6.4 Membership functions of the variables of the fuzzy controller (h). . . . . . . . . . 100
6.5 Surface plot of the controller output. . . . . . . . . . . . . . . . . . . . . . . . . . 102
6.6 Hit rate for varying load. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
6.7 Response time for varying load. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
6.8 Energy consumption for varying load. . . . . . . . . . . . . . . . . . . . . . . . . 106
6.9 Dispersion of per-node hit rate. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
6.10 Reaction of the system in the face of disturbances. . . . . . . . . . . . . . . . . . 108
6.11 Hit rate for the number of neighbors scenario. . . . . . . . . . . . . . . . . . . . . 108
6.12 Response time for the number of neighbors scenario. . . . . . . . . . . . . . . . . 109
6.13 Energy consumption for the number of neighbors scenario. . . . . . . . . . . . . . 109
xxviii
LIST OF FIGURES
6.14 Dissemination overhead (in kbps) of the fuzzy controller. . . . . . . . . . . . . . . 110
6.15 Dissemination overhead (in number of packets) of the fuzzy controller. . . . . . . 110
6.16 Dispersion of per-node hit rate for the number of neighbors scenario. . . . . . . . 111
6.17 Response time for the error rate scenario. . . . . . . . . . . . . . . . . . . . . . . 112
xxix
LIST OF FIGURES
xxx
Chapter 1
Introduction
Due to our increasing reliance on electronic systems in all the domains of our lives, it is
paramount that the computing systems operate with the highest performance and have the
lowest down times. The avionics of a plane, the controls of a dam, the international banking
network or the network of a first response team are examples of computing systems where a
single failure can lead to significant human and economic losses.
Even in more amenable circumstances, crashes in the computer infrastructure can be catas-
trophic. In the year 2000, it was estimated that a one-hour downtime in a brokerage operations
system could amount to up to 6.5 million dollars loss in revenues [1]. Such failures can be caused
by hardware failures, defective design, or human errors. Frequently, operators take too much
time to respond to failures. What is worse, due to the pressure to quickly restore operations,
humans may introduce configuration errors that may lead to a future failure. Not only the fail-
ures themselves may cause losses, but the time required to fix them is important. As a reaction
to this scenario, Ganek and Corbi proposed the creation of autonomic systems [2].
An autonomic system has the purpose of identifying important events in its environment and
reacting to them, without any sort of external or human intervention. Those systems, in general,
also learn from past experiences, improving their reactions over time. According to this vision,
computing systems should present self-* properties: they should automatically configure, heal,
secure and optimize themselves without external intervention [2–4]. By removing humans from
the decision-making process, changes would occur faster and and would be less prone to errors
[3]. Even more, the reduced need for human intervention will optimize the operational costs of
the systems. Autonomic computing has been recognized as a step forward in computing, and as
1
1. INTRODUCTION
such several computer societies and research agencies consider it as one of the greatest computing
challenges for the years to come [5–8].
In this thesis we focus on the self-configuring properties of computing systems. More specifi-
cally, we delve into the self-configuring aspects of wireless multi-hop networks. Self-configuration
is the simplest of the self-* properties. A system should first be able to configure itself under
the expected conditions before taking care of external failures (self-healing), malicious failures
(self-securing) or self-optimization.
With the evolution of networking and electronics, wireless communication became common-
place in our lives. Wireless capabilities are nowadays implemented in a huge set of devices, such
as notebooks, PDAs, cell phones or even household appliances. Those devices are used to setup
different types of wireless networks: mesh [9, 10], sensor [11], ad hoc [12], vehicular [13] and delay
tolerant [14, 15] are some examples. As a consequence, more and more users rely on wireless
networks for their communication. Even if users access content stored in wired systems, the
last mile access, that is, the link of the terminal with the Internet, is usually wireless. Hence,
self-configuring networks cannot be achieved without self-configuring the wireless part.
Wireless multi-hop networks are much harder to configure than wired networks, due to ter-
minal mobility and also the harsh and dynamic nature of the wireless medium. Wireless links
are susceptible to interference, signal fading, and attenuation due to terminal mobility [16]. The
dynamicity of wireless links is expected to grow even more with the adoption of new technologies,
such as cognitive radios [17, 18]. Those radios exploit unused (licensed or unlicensed) frequencies
in order to increase bandwidth and resiliency of the communication. With those new technolo-
gies, even more parameters that were previously static will now be dynamic, i.e. communication
frequency, size and number of channels, transmission priority (licensed emitters versus unlicensed
ones).
Due to the occurrence of configuration changes at a very high frequency and small time
scales, networking protocols in wireless networks must implement adaptation mechanisms. This
requirement permeates all layers of the protocol stack. The PHY layer, for instance, changes the
modulation, coding and transmission power of the links in the face of link quality changes [19, 20];
the MAC layer adjusts its sending buffers and schedules to accommodate the QoS requirements
of new flows [21]; the routing layer opportunistically looks for new routes upon detecting a failed
link [22, 23]; the transport layer adapts the sending rate according to interference or congestion
[24, 25]; a multimedia application replaces its codec to cope with variations in the available
bandwidth [26].
2
1.1 OBJECTIVES OF THE THESIS
Self-configuring wireless networks would be able to support critical applications, for example
networks supporting the work of rescue teams, military platoons, police or firefighters[27–30].
Those applications have several additional constraints, such as lack of pre-deployed infrastructure,
intense node mobility, intentional and non-intentional failures and strict quality of service (QoS)
guarantees. Further, critical networks must be deployed and run with no human intervention,
since any downtime would incur in loss of lives. As a consequence, those applications must
employ self-configuring technologies.
Mobile services should be self-configuring, allowing the users to focus on the task at hand in-
stead of wasting time setting up the parameters of each application. To achieve self-configuration,
services need to take decisions based on data coming from varied sources: the state of the links
and the configuration of other protocols, the applications running on the network, among oth-
ers. However, this data is not easily obtained due to the systematic compartmentalization of
information in each protocol and application. The urgent need of information driven by those
applications was hence the reason for the conception of middlewares and mechanisms that pro-
mote information sharing. However, existing solutions tend to be specific to one of the three
problems above, thus requiring multiple independent information services.
Further, special control loops for each configuration problem should be developed. Those
control loops should be able to at least cope with the most frequent sources of dynamicity of
wireless networks. Characteristics such as variable link quality, node movement, node batteries,
and amount of traffic into the network should guide the adaptations performed. Basic network
functionalities, such as connectivity and information services, should be rendered autonomic,
since they form the basis of more complex services. The complete automation of those key
services would greatly decrease the maintenance cost of the network, while at the same time
improving its resiliency, reliability and performance.
1.1 Objectives of the Thesis
In this thesis we study self-configuration solutions for wireless multi-hop networks. Tradition-
ally, protocols adhere to the layering principle, where the least amount of information is exported
to other layers. The need for context and information from several layers spurred the creation
of cross-layer protocols, where protocols break the separation of concerns dictated by layering
[31, 32]. Likewise, services (or applications) in wireless networks require context information
3
1. INTRODUCTION
as well as information from the lower layers. In this way, a self-configurable network requires
mechanisms that simplify information sharing.
Self-configuration also requires specialized decision processes, or control loops in the termi-
nology of autonomic systems. Those control loops must be incorporated into the protocols, as
well into the applications and services running in the network. The physical, MAC, routing, and
transport protocols employ self-configuring or adaptive functions such as the adaptive contention
window of TCP, or the binary exponential back-off in IEEE 802.11. Similarly, management plat-
forms, file sharing services, streaming services are examples of applications that employ control
loops to adapt their parameters to changing network conditions.
Since self-configuration is a vast subject, we focus our attention in the three objectives pre-
sented below. First, we study ways of obtaining and sharing the information required for self-
configuration. Next, we study a self-configuration control loop at the protocol level and another
at the services level. The self-configuration tasks to be studied were chosen based on their im-
portance. Thus, we chose a routing use case as well as file and information sharing application
use case, since both functions are usually present in most wireless multi-hop networks.
The first objective is to propose a mechanism for sharing control and management informa-
tion over wireless multi-hop networks. This is accomplished by middlewares that can support
the information needs of both protocols and services. To achieve this objective, we can use the
concept of an information plane, which takes care of the control information required by the
network protocols as well as services and applications, as shown in Figure 1.1. The middle-
ware should automatically update and disseminate the stored information, freeing protocols and
applications from the task of information management. Further, since the information plane
stores information from several sources, the clients of the information plane can profit from this
augmented pool of information to optimize their operation.
Our second objective is to improve the performance of connectivity protocols in wireless
multi-hop networks. More specifically, we study the dynamic adaptations required at the routing
level in wireless networks having dynamic modulation, coding and transmission powers. In this
situation, routes should be adapted to cope with changes in link properties. Dynamic adaptation
of the transmission power, modulation and coding in the MAC layer is a prolific topic; however
the effects of such changes in the routing layer have been neglected.
The third objective is to improve the self-configuration capabilities of mobile peer-to-peer
(P2P) protocols. Those protocols are the basis for several services such as file sharing, virtual
4
1.2 CONTRIBUTIONS
Information plane
Applications and
services
Networking protocols
MMNS’08 – [email protected] 46
Figure 1.1: The information plane and its relationship with services and protocols.
presence and text communication (as in instant messaging software), virtual collaborative work-
ing environments, multimedia content delivery, among others. Unstructured P2P protocols tend
to have severe performance degradations when the contention of the wireless network is too high.
The study of the three objectives previously described resulted in the contributions detailed
in the next section.
1.2 Contributions
This work has three main contributions, tackling the self-configuration of wireless multi-hop
networks under different aspects, as described in the objectives above. The first contribution is
the application of the information plane concept in order to simplify the sharing of information for
cross-layer, context aware self-configuration solutions. This middleware is then used as substrate
for the development of two self-configuration control loops. The first one, located at the routing
layer, exemplifies the use of self-configuration algorithms embedded in the networking protocols.
The second control loop is implemented at the application layer over a P2P application.This
self-configuration control loop uses a more generic control strategy, due to the usually looser
time constraints of this layer. The three contributions of the thesis are described below in more
details:
An information repository for self-configuring protocols and services. Self-configu-
ring solutions require a significant amount of information to operate (network and environmental
context, the current configuration of protocols, management policies and SLAs, among others),
and as such they demand specific tools to simplify the dissemination and sharing of configuration
information. The proposed solution is inspired on the concept of an information plane to create
a distributed information service optimized for wireless networks. It stores and disseminates any
5
1. INTRODUCTION
control information required for self-configuration in cross-layer protocols, autonomic manage-
ment and context-aware applications. Hence, the proposed repository can be used as a substrate
for the creation of task-specific self-configuring solutions. This part of the work has resulted in
the following contributions:
• The development of an architecture for the MANIP (Manet Information Plane) middle-
ware, which establishes the distributed information repository. Although proposed for
MANETs, this middleware can be used in other types of networks due to its meager re-
source requirements. The effectiveness of MANIP is demonstrated by a performance com-
parison of MANIP-aware networks against a classic, layered implementation in the context
of MANETs supporting a self-configuring unstructured P2P protocol.
• An information model, based on the CIM standard of the DMTF (Distributed Management
Task Force). It describes in a standardized way the most commonly used information in
the design of cross-layer, context-aware autonomic protocols and services.
Adaptive routing for links with variable transmission power and data rate. We
propose extensions to existing PHY and MAC protocols so that routing profits from links with
varying transmission power and data rates. The improvements seek to be generic in order to be
applied to many routing protocols. The proposed enhancements aim at increasing the throughput
and reducing the packet delivery delay and energy consumption of the network. Due to the cross-
layer interaction patterns and context-awareness, we employ the MANIP middleware to reduce
the overhead of the proposed solutions. This part had the following contributions:
• At the MAC level, we proposed new algorithms that use broadcast messages in order to
assess the best parameters of several links at a time. This contribution arose because
existing transmission power and data rate assessment algorithms do not scale for the needs
at the routing layer, calculating the parameters of a single link at a time.
• At the routing level, we proposed a transmission power control and data rate aware routing
metric. This metric can be employed in a range of routing protocols, proactive and reactive.
Furthermore, we compare via simulation its performance against traditional shortest path
protocols and transmission power control aware routing protocols.
• An analytical model for the performance of multi-hop wireless communication. It estimates
the expected delay and energy consumption of flows, as well as the throughput of the
6
1.3 THESIS ORGANIZATION
network when different data rates and transmission powers are considered. This model
takes into account parameters such as the interference among nodes, hidden terminals and
the propagation model. Other researchers could use this model to evaluate the effects of
changes in the parameters of routing and MAC algorithms, such as the use of links with
lower reliability, the impact of inter-node distance and density on the performance, among
others.
Load aware unstructured mobile P2P services. We propose a self-configuring algo-
rithm, in a form of a controller, which adapts the query strategy of unstructured P2P networks
to cope with the amount of contention. The controller ensures that the load experienced in the
network is such that the amount of collisions and retransmissions is minimized by adapting the
amount of query message forwards at each hop of the communication. As a consequence, the
percentage of queries that are resolved and their response time are optimized. The main result
of this part is listed below:
• A closed loop controller, based on fuzzy logic, that adaptively reconfigures unstructured
P2P services based on an estimate of network contention. The controller employs MANIP
to collect and disseminate the aggregated lower-level information used as its input. We
studied the performance of this controller using simulations, and also evaluate its adapt-
ability to external disturbances and its resilience against link errors.
1.3 Thesis Organization
The remaining of the thesis is organized as follows. Chapter 2 introduces the concepts
related to self-configuration and wireless services used throughout this manuscript. Chapter
3 presents a middleware for information sharing and dissemination in wireless networks. We
detail the architecture of the middleware and each of its components, its associated information
model and conclude with a performance evaluation. Chapter 4 describes an analytical model
for wireless multi-hop networks using multiple transmission powers and data rates at the link
layer. Chapter 5 then introduces routing enhancements for such networks. Chapter 6 proposes
a self-configuring algorithm that adaptively reconfigures a unstructured mobile P2P network to
cope with contention. Further, the proposed solution and its evaluation are described. The
conclusions and perspectives of future work are presented in Chapter 7.
7
1. INTRODUCTION
8
Chapter 2
Principles of Self-Configuring Networks
This chapter presents the concepts related to the self-configuration of wireless multi-hop
networks, providing some background on the subjects studied in this thesis. Concepts such as
autonomic computing, cross-layering, connectivity and information sharing and dissemination,
which are presented in this chapter, form the basis of the solutions presented in the following
chapters.
First we introduce in Section 2.1 the autonomic computing paradigm and its application in
networking. In wireless networks, several self-configuring protocols use cross-layering, thus their
principles are presented in Section 2.2. After that, we survey in Section 2.3 the connectivity
services of a wireless multi-hop network, defining connectivity and their different types of algo-
rithms. Finally, we introduce an overview of information sharing services in Section 2.4, where
information dissemination is characterized using a graph problem, and the main strategies for
information dissemination. Section 2.5 presents the conclusions.
2.1 Autonomic Computing
The autonomic paradigm proposes to tame the increasing complexity of managing computing
systems by the incorporation of self-management functions [2]. According to this paradigm,
systems should operate unattended, automatically adjusting their properties to accommodate any
eventual change on the environment. Autonomic systems would learn from previous decisions,
improving their operation as time passes by using artificial intelligence techniques.
Several autonomic architectures and systems have been proposed [3, 4, 33, 34]. Further, all
of the works aim at providing four functions, or properties [35]. The self-configuring function
9
2. PRINCIPLES OF SELF-CONFIGURING NETWORKS
to adapt the operation of the system to changes in the environment and in the system itself;
the self-healing function to identify and correct failures; the self-securing function to select the
best cryptographic tools to ensure the privacy and security of the system, its inputs and outputs;
finally, the self-optimizing function to consider the past behavior of the system in order to improve
its operation. Those self-* functions can be implemented using the MAPE (Monitor, Analyze,
Plan, Execute) architecture proposed by IBM. This is a generic architecture that describes the
functionalities of the basic autonomic decision components. It is the basis for most autonomic
implementations as well as autonomic reference models [33, 36–40].
2.1.1 The MAPE Architecture
The MAPE architecture is a generic architecture for the autonomic management of computing
systems. It consists of a managed element (ME) and an autonomic manager (AM). The managed
element is the computing system implementing the task that must be rendered autonomic. The
autonomic manager acts over the ME, monitoring its state and acting whenever parameter
changes are necessary.
Although the MAPE architecture separates the managed element from the autonomic man-
ager, the same reasoning can be applied to self-adapting algorithms or to systems where the
autonomic behavior is embedded into the system itself. For example, the AIMD (Additive In-
crease Multiplicative Decrease) algorithm of the TCP transport protocol can be considered an
implementation of an adaptive control for the parameter rate of packets sent.
The main functions of the AM are: to monitor the ME, reason about its current state, and
act on the ME in order to correct or improve its operation. As shown in Figure 2.1, the AM
periodically monitors the ME (the upward arrow in the Figure), looking for important events that
may trigger a reaction. If a reaction must be taken, the AM issues commands and reconfigures
the ME (the downward arrow). The components of the AM are activated in sequence in an
endless loop, hence the common use of the term autonomic control loop. Their functions are
described below:
• Monitor component: the monitor component collects and aggregates data concerning
the ME. This data is processed and filtered, producing relevant information that is used
by the other components of the AM.
10
2.1 AUTONOMIC COMPUTING
4
!"#$%$&'()*+%+,-.)/!*0)
!"#"$%&'()%*%#+',!(-'
*$%'#$.) !%+123-) 41+%) 56-("#-)
7%$81-9,-)
Figure 2.1: The MAPE autonomic architecture of IBM.
• Analyze component: the analyze component uses information from the monitoring com-
ponent to check if there is a need to act on the ME. If an action is needed, it activates the
Plan component. Otherwise, the AM goes back to monitoring the ME.
• Plan component: this component defines the actions to be taken once the need to change
the parameters of the ME is identified. This phase may use techniques such as artificial
intelligence, control theory, game theory or domain-specific algorithms. The actions of this
component may be configured using abstractions such as policies.
• Execute component: the execute component defines a workflow for the installation of
the new parameters. This component is necessary because complex changes may require
several steps and, in some cases, the output of a step may alter the contents of the next
step. Another function of this component is to revert the state of the ME to a known
stable state in case the new parameter values cannot be applied.
• Knowledge base: the knowledge base stores information regarding the autonomic man-
agement of the ME. This information may consist of context, the current state of the ME,
internal information related to each of the components of the AM, inferences, among others.
The knowledge base may also store past state of the ME, in order to support self-learning
capabilities. Finally, the knowledge base may store policies or other types of configuration
information that define the behavior of each of the components of the AM.
The MAPE architecture has been used to build autonomic control loops in several domains,
including networking. However, due to the distributed nature of networks, it is needed to install
11
2. PRINCIPLES OF SELF-CONFIGURING NETWORKS
several control loops on the networks, and those may need to cooperate. As a consequence,
this architecture and the concepts of autonomic elements had to be adapted to the specificities
of networking. To accomplish this task, new functional network models have been proposed
[34, 41–44]. The following section presents the motivations for such changes and describes the
model employed in this thesis.
2.1.2 Autonomic Networking Planes
In 1985 ITU (International Telecommunications Union) defined a set of models and standards
for digital communication and management. The TMN (Telecommunications Management Net-
work) model defines a functional model for networking [45], which is composed of a set of layers
and interface points. Layers define functions and services related to different aspects of communi-
cation. Those layers communicate through the interface points. This model has been considered
as the reference model for most networking solutions.
In order to adapt the autonomic concepts to the networking world, Clark et al. added a new
plane to the TMN model. This plane, called called knowledge plane [41], implements in-network
autonomic management capabilities. Clark’s plane thus separates the network elements from
their autonomic management entities, similar to the MAPE architecture.
Clark’s autonomic plane, however, is too complex, because it concentrates many functional-
ities [34]. In Clark’s architecture, the knowledge plane is responsible for the entire autonomic
control loop: it monitors the network elements, detects significant events, reasons and reacts to
events, learns from past behavior and manages the knowledge related to the autonomic tasks. To
reduce its complexity, we propose that the knowledge plane should be split into two planes[34]:
the information and piloting planes. The information plane would manage the information re-
quired by the services and autonomic functionalities of the network, whereas the piloting plane
would implement the autonomic management algorithms. This organization resembles even more
the MAPE architecture, separating the system into managed element (network elements in the
data plane), management entity (piloting plane) and knowledge (information plane).
Future autonomic networks should employ the four functional planes shown in Figure 2.2.
The data and control planes would have the same responsibilities of today. Thus, for brevity, we
briefly describe below the responsibilities of only the two new autonomic planes.
The piloting plane would manage the data, control and information planes, implementing
autonomic algorithms that regulate their operation. The behavior of such algorithms would be
dictated by business policies defined by human operators. Further, the piloting plane would use
12
2.1 AUTONOMIC COMPUTING
InformationPlane
DataPlane
Info.
Actions
PilotingPlane
Commands
Actions
Info.
Info.
Monitoring
Monitoring
ControlPlane
Figure 2.2: The four planes of autonomic networks.
the information stored in the information plane as input to its algorithms to create knowledge
pertaining the operation of the network. Its autonomic algorithms would constantly monitor the
state of the data and control planes, using the knowledge stored on the information plane and
the current state of the data and control planes to identify if any parameter should be changed.
Those algorithms would employ cognitive techniques in order to learn from past operation.
The piloting plane, in our point of view, would be an improved version of the management
plane, since the management plane has traditionally been perceived as the protocols and methods
used to install and query the configuration of network elements. Today, the need for a config-
uration change as well as the contents of the new configuration are usually defined outside the
networks by an operator or a technician. The piloting plane, on the other hand, would perform
in-network unsupervised monitoring, decision-making and actuation on real-time. Thus, this
improved management plane is renamed to piloting plane.
Meanwhile, the information plane (InP) would serve as a repository for information con-
cerning the data and control planes. Thus, all protocols would store and seek data concerning
its operation inside the InP. This data would be used by the piloting plane to produce knowl-
edge and inferences related to the operation of the network. Those would also be stored in the
information plane. All the information managed by the InP would conform to standardized on-
tologies, so protocols and devices from different vendors could inter-operate. In order to provide
fast and cheap access to information, the information plane should be distributed. It should
ensure the consistency of the stored information and implement efficient and secure mechanisms
to disseminate and update the managed information.
13
2. PRINCIPLES OF SELF-CONFIGURING NETWORKS
In this thesis we do not study the piloting plane. Instead, we focus on the information plane
and its interactions with autonomic or adaptive protocols and services in the context of self-
configuration. Those algorithms may reside in the control, data or piloting planes. Although
the InP concept is not new, at the start of this work it had never been applied to wireless
multi-hop networks. An InP-enabled wireless multi-hop network would simplify the design of
integrated, self-managed networks, providing abstractions and interfaces for the dissemination of
information among the entities involved in the communication (autonomic management entities
and networking protocols).
Besides being a platform for autonomic self-* solutions, the InP could also provide a mecha-
nism to build cross-layer protocols, which are commonplace in wireless networks. Having infor-
mation available from all layers, developers could implement more efficient algorithms, once they
would profit from information concerning network and environmental conditions. The following
section describes the cross-layering concept.
2.2 Cross-Layering
Network protocols follow one of two organizational models: the OSI (Open Systems Inter-
connection) network stack, defined by the ISO (International Organization for Standardization)
standardization body, or the TCP/IP stack, defined by the IETF (Internet Engineering Task
Force). Those models define a set of software components, their functionalities and basic inter-
faces. Their components are organized in a stack of layers, where upper layers specialize the
services provided by the lower layers. Further, a layer at level i communicates only with layers
i − 1 and i + 1. This design has lead to the encapsulation principle, where upper layers are
unaware of the implementation details of lower layers. This principle allows networks having
different technologies to be interconnected.
Recently, it has been identified that the stack-based model needs to be violated to cope with
certain technologies such as context-aware, wireless and autonomic networks [31, 32, 46, 47].
Those new approaches are known as cross-layer, since they advocate interactions among layers
that break the hierarchy and encapsulation tenets of the stacked approaches [32].
Cross-layering arose because the requirements of today’s networks are different from those
at the time of the creation of the OSI and TCP/IP functional architectures. Networks were
completely cabled, easily managed by humans, mostly static, and security was not an important
issue. Variable link characteristics, mobility of network elements and other issues were left out
14
2.3 CONNECTIVITY SERVICES
in order to render the design of the network simpler and more tractable. However, those param-
eters are considered by most of the layers in today’s networks. Take link quality measurements
for example, which were elevated to one of the main input parameters of routing [48, 49] and
transport [24, 25] protocols for wireless networks.
Usually, cross-layering is performed in an ad hoc way [32, 50]. Protocols directly access the
information required from other layers. Further, the interaction among cross-layer protocols is
not standardized. This strategy has several disadvantages, such as the dependence of cross-layer
protocols on a certain implementation or version of other protocols, and an increase on the
maintenance costs of the code due to implicit inter-dependencies [50].
As a consequence of the increasing number of cross-layer protocols, several authors proposed
new or revised networking organizational models [33, 44, 51, 52]. Those proposals redesign the
entire suit of protocols and their interaction, and as such are suitable for long-term replacements
to existing architectures. Meanwhile, others proposed middlewares or components that allow
protocols to share their information more easily [46, 47, 53, 54]. This approach has the advantage
of being incremental, maintaining the stacked approach. As a consequence, it can be more easily
deployed in current protocols and devices.
2.3 Connectivity Services
Network connectivity services ensure that nodes (or users) are able to communicate with one
another. It thus involves the establishment of links, as well as the creation and maintenance of
abstractions such as routes, flows, and sessions. One of the main tasks involved in connectivity
is achieved by routing algorithms, which define the path that will be used for forwarding packets
between two communicating nodes. In this thesis we focus our attention to routing issues, hence
this section provides an overview of the routing concepts that are employed in the manuscript.
Routing, in essence, consists of computing the all pairs shortest path problem [55] over a
graph in a distributed manner. In this graph, vertices represent nodes, while edges represent
links. Different edge costs may be defined: unity for minimum hop count routing, a composite
metric using parameters such as the signal quality, energy consumption of the link, reliability,
transmission power, data rate, among others [23]. Here we consider only routing in connected
networks, since routing in sparsely or sporadically connected networks is much more similar to
information dissemination.
15
2. PRINCIPLES OF SELF-CONFIGURING NETWORKS
In routing, the function that evaluates the cost of paths is known as routing metric. The
routing metric determines which links and paths to prioritize according to the cost (or benefit)
of traversing them. Usually, this is described by an utility function that minimizes or maximizes
a set of metrics. For example, a minimum hop count algorithm would have a routing metric
stating minimize the number of links in a path. Other metrics could minimize the amount of
retransmissions, the energy consumed at each link or maximize the throughput [23, 48, 49, 56],
for example. Thus, most of the research in connectivity deals with the definition of new routing
metrics and how to calculate the associated link cost efficiently.
Routing protocols can be classified into different categories depending on factors such as
frequency of updates, if routes are determined at the sender or at each hop, the use of clustering,
among others [23]. In this thesis we are interested in the classification based on the usage and
form of the routing tables. This classification is necessary to define the applicability of the
routing extensions to be proposed in Chapter 5. As we will show in that chapter, our routing
enhancements change the routing metric and, as a consequence, are not applicable to stateless
protocols. According to this classification, there are three types of protocols:
• Link state routing: nodes advertise a list of their one-hop neighbors and the cost to
reach each of them to all the other nodes in the network. This information is used to
build a map of the network, over which routes are determined. This solution requires a
significant amount of resources and may have scalability problems due to the large amount
of information that must be transmitted.
• Distance vector routing: each node advertises its known routes to the other nodes, thus
routes are decided based on local, aggregated information. For each destination in the
network, nodes choose the one-hop neighbor that forwards the messages with the smallest
cost (or highest benefit), as defined by the routing metric. In this approach, nodes are
not aware of the entire network topology, relying on the aggregated path information sent
by their neighbors. As a consequence, the resource consumption is smaller, however those
protocols are susceptible to routing loops [57].
• Stateless routing: those protocols do not employ routing tables. Nodes forward data
based on heuristics that employ information of their one-hop neighborhood. The concept
of a routing metric frequently cannot be applied to those protocols, since there is no way to
assess what the final route may look like. Geographic routing is usually stateless [58, 59].
16
2.4 INFORMATION DISSEMINATION SERVICES
In those protocols, each node knows its location and that of the destination of the packet.
Thus, the next hop is chosen as the one-hop neighbor that is closest to the location of the
destination.
Routing in multi-hop wireless networks usually incorporates both cross-layer and self-con-
figuring aspects. It is cross-layer because most protocols rely on information coming from the
physical and MAC layers to build optimized routes. Some solutions go even further, proposing
integrated MAC and routing protocols [60]. Self-configuration aspects are taken into account in
the dissemination of routes and the calculation of the routing metric. They are introduced to ac-
commodate aspects such as the homogeneous discharge of nodes’ batteries [23], node movement
and mobility patterns, and sudden changes in link quality.
2.4 Information Dissemination Services
Information dissemination and sharing services are generic information-centric services that
manage user, context and application information. Information dissemination services are em-
ployed for higher level services such as file sharing, resource discovery, instant messaging, vir-
tual presence, multimedia content delivery, online collaboration services, context-aware services,
among others [61–64].
The stored information is organized in a distributed fashion, where some or all of the partic-
ipating nodes store part of the information. Being information-centric networks, queries always
refer to the information itself, not to the network entity storing the information. Those services
may store complex structured information, supporting multi-valued searches over the data as well
as their meta-data, using range searches and other techniques. Further, they may store parts
of an individual piece of information (i.e. blocks of a film) in different nodes. Those services
perform information query and dissemination: dissemination occurs when the producer of a piece
of information has to communicate its consumers, known or unknown, that the information has
changed or that a new information is available; querying occurs when a consumer looks for a
certain information.
Because information dissemination networks are information-centric, their implementation
differ significantly from similar network-centric algorithms (i.e. routing algorithms, DNS, Web,
among others), where each piece of information is explicitly associated with the network ele-
ment storing it. Network-centric algorithms require ways to map and/or reference a piece of
information into the host storing it. This mapping must be explicitly updated for each “live”
17
2. PRINCIPLES OF SELF-CONFIGURING NETWORKS
reference, so all nodes accessing a certain portion of the information are notified that a more
suitable version of the same information exists in the network. Thus, the implementation of
network-centric algorithms and protocols must always take into account how the mapping of
information into end-hosts is performed. Meanwhile, this process is transparent for information-
centric algorithms. As a consequence, information can be moved, replicated or cached within
the network with minimal cost.
In wireless multi-hop networks, both query and dissemination operations in information dis-
semination tend to be very similar. Due to the broadcast nature of the wireless medium, it is
less costly to broadcast certain information than to send one packet per consumer. Hence, in
those conditions it is common to associate information dissemination and information querying
to the same process, since they are usually implemented in similar manners. For now on, we will
consider that both are similar, and we will deal only with information queries over wireless links.
Information querying is equivalent to building a minimum spanning tree in a graph [55].
Vertices are associated to nodes that participate in the sharing services. The cost of each edge
is usually a function of the delay, energy and other resources consumed to disseminate a query.
The objective of this operation is to visit as much vertices as possible with the minimum cost,
in order to find the vertex where the information is stored.
Unlike the connectivity services, information dissemination services may define the topology
and the location of the information arbitrarily. For example, it is possible to use graph theory to
rewire the connections among nodes, allowing for topologies using the six degrees of separation
concept [65] in order to minimize the number of edges to be traversed to reach any other vertex
in the network. Further, by associating an identifier to each piece of information and distributing
them over the nodes following certain criteria, queries may be completed using a much smaller
number of messages. This is similar to sorting the information in a vector in order to use a
binary search algorithm, however in the case of connectivity services usually only the identifiers
are re-arranged.
Information dissemination services are usually implemented using the Peer-to-Peer (P2P)
paradigm [62, 66–68]. In this paradigm, all nodes participating in the services partake in the
storage and querying tasks. This contrasts to the client-server paradigm, where there is a clear
division on the entities that provide a certain service and those that request the service. In P2P
networks, nodes are at the same time clients and servers. P2P networks can be classified into
two categories, based on how they organize data: structured and unstructured [69].
18
2.4 INFORMATION DISSEMINATION SERVICES
In unstructured networks, data is spread on the network without any kind of planning. Hence,
a node willing to find a certain information must ask all the nodes of the P2P network if they
have a copy of a given information. Example networks are Freenet, Gnutella and random walks
[69–71]. Mobile P2P protocols based on the unstructured paradigm rely on several replicas of
the query message, which are either disseminated by broadcast or flooding. This is justified by
the fact that the query messages must sometimes travel the entire network before finding the
node storing the requested information. As a consequence, those protocols may have scalability
problems due to the large amount of messages produced for querying. Typically, their message
cost may achieve O(n), where n is the number of peers in the network. Thus, several techniques
such as clustering and caching have been employed in order to reduce this high cost [69].
In structured networks, the information is organized following certain criteria, in order to
ease content searching. Thus, when a node wishes to find certain information, it uses distributed
indexes to quickly find where the information is stored. Example networks are Chord, CAN,
Pastry, and Kademlia [72–75]. Those indexes, also known as distributed hash tables (DHTs),
are built in a way that nodes are responsible for an homogeneous amount of data. Structured
networks usually rely on a single query message, which traverses the peers searching the requested
information in their hash tables. Due to the structure of the DHTs, in most structured protocols
only a few message forwards are required to locate the requested information. Usually, those
networks have a query cost of O(log(n)) messages, where n is the number of peers in the network.
While unstructured networks impose a much larger network load, they are simple to imple-
ment and have a smaller control overhead. For structured networks, on the other hand, each
node that enters the network must register in the DHT each piece of information that it will
share. Further, it is not easy to implement complex searches of DHT-based networks, such as
approximative searches, multi-parameter searches and range searches [76, 77]. This occurs be-
cause the index must be built in a way to support those searches. On unstructured networks, on
the other hand, those queries are easily implementable because each node may check all of its
stored information when it receives a query.
Due to their distributed nature and lack of a central administration, P2P networks rely
strong on self-configuring protocols to cope with changes in the peers, topology and the stored
information. The topology must be adapted whenever peers go offline, when other peers join in,
or when peers roam from a point of the network to another. Peer connections/disconnections and
movement may also affect the DHTs of structured networks when those rely on the IPs or the
location of peers. Second, self-optimizing algorithms should evaluate which pieces of information
19
2. PRINCIPLES OF SELF-CONFIGURING NETWORKS
are the most accessed, creating copies or caching at strategic places of the network. At the same
times, the consistency of those copies has to be managed.
2.5 Conclusions
In this chapter we introduced the concepts related to self-configuration and autonomic services
that are employed in this thesis. We presented the motivation for autonomic computing and
networking, as well as provided an organizational model for autonomic elements and autonomic
networks. Autonomic networks require more information than traditional network protocols,
and as a consequence they tend to embrace cross-layering. We described and characterize cross-
layering, showing its causes and commenting on the two existing classes of solutions to the
cross-layering issue.
Autonomic and cross-layer solutions are built into networking services in order to render them
autonomous. Two services were presented, connectivity and information dissemination services.
In connectivity we focused on routing, highlighting the common components of a routing protocol
and showing a classification of those protocols. Information dissemination services usually have
been implemented using the P2P paradigm, so we presented an overview of P2P networks and
classified those networks into two distinct types, based on the presence or absence of distributed
hash tables.
20
Chapter 3
An Information Plane for Mobile AdHoc Networks
Due to the emergence of cross-layering and autonomic management, protocols and applica-
tions for wireless multi-hop networks are becoming more and more integrated. As such, those
protocols require mechanisms to facilitate information sharing and data dissemination. This
context motivated us to propose a middleware for the secure storage and dissemination of con-
text and cross-layer information for mobile ad hoc networks (MANETs), called MANIP (MANet
Information Plane). This chapter presents the proposed middleware, its associated information
model as well as a simple case study.
This chapter is organized as follows. Section 3.1 details the context and motivation for the
development of MANIP. Section 3.2 lists the requirements for an information sharing middleware
for multi-hop networks. Section 3.3 describes the related work. Section 3.4 details the MANIP
architecture. Next, Section 3.5 analyses the modeling and quality of the information stored in
MANIP. Section 3.6 shows the case study and simulation results. Finally, Section 3.7 concludes
the chapter.
3.1 Introduction
In order to implement self-configuration solutions, interfaces for the sharing, collection and
dissemination of information coming from different sources are needed [78, 79]. For example, it
is not unusual to characterize a failure or situation needing attention by the correlation of data
from several layers, or even from different nodes. The complexity and dynamicity of wireless
21
3. AN INFORMATION PLANE FOR MOBILE AD HOC NETWORKS
networks has spurred the research on autonomic network management solutions, which require
an integrated, multi-layer view of the network [3].
The same problem occurs in the design of networking protocols. Due to the severe per-
formance requirements and highly complex link and MAC layers of wireless networks, several
cross-layers protocols aimed at optimizing the operation of the network have been created [32].
Wireless networks are also frequently employed for context-aware services [62, 80, 81]. Sensor,
mesh and ad hoc networks allow the monitoring of the environment in order to provide a richer
experience to the user. By augmenting the applications with information such as geographic
location, current temperature, available wireless networks and others, it is possible to build
personalized services. However, such services need a simple way to obtain this information,
which is produced by different entities such as the operating system or hardware sensors.
The issues of information management for cross-layer protocols, autonomic network manage-
ment and context-aware services are quite similar, and thus can be addressed using the same
solution. The urgent need of information driven by those applications was hence the reason for
the conception of middlewares and mechanisms that promote information sharing. However,
existing solutions tend to be specific to one of the three problems above, thus requiring multiple
independent information services. In order to solve those problems, we propose the use of a
new networking plane, called Information Plane (InP), to deal with information sharing. The
InP serves the information needs of the protocols, applications and management solutions. The
InP would replace the information repositories of autonomic management solutions and context-
aware systems, storing context, policies, past network behavior and information pertaining to the
network. It would also work as a cross-layer framework, exposing the interdependency among
protocols and allowing the sharing of information by using rich information models.
This chapter proposes a middleware that instantiates an InP over MANETs. This InP, called
MANIP (Manet Information Plane), is adapted to the characteristics of the wireless medium
and resource restrictions of mobile nodes. The proposed middleware provides secure access to
the stored information, as well as mechanisms for automatic information dissemination among
MANET nodes. Due to the availability of more information for the optimization of network
protocols, services and autonomic management solutions, MANIP allows a smoother operation
of demanding applications such as multimedia and cooperative services. The proposed InP stores
context, information and policies, thus in this text we use the term information to indicate the
collection of context, data (unprocessed readings coming from sensors), information (processed
data) and policies. The architecture includes a simple information schema that models the
22
3.2 REQUIREMENTS
operation and management of MANETs. Although proposed to MANETs, MANIP could be
used in other types of multi-hop wireless networks by changing the security primitives (e.g.
symmetric and asymmetric cryptography) and the data representation schemes (e.g. an object-
oriented approach versus a structured approach) used. We evaluate the benefits of MANIP by
comparing MANIP-aware Peer-to-Peer (P2P) protocols against classic P2P protocols.
3.2 Requirements
Before surveying the literature, we will describe the requirements for an information sharing
middleware for wireless and mobile multi-hop networks. This middleware should implement an
information repository having the following functional and non-functional characteristics:
Distributed: The repository must be distributed, in order to avoid central points of failure
or bottlenecks. The distributed approach also allows easier recovery from network partitions.
No replicated effort: The repository must expose information from layers whenever pos-
sible, avoiding replicated efforts to obtain the same data. In P2P networks, for example, nodes
use PING messages to assess if their neighbors are still reachable, a task already done in routing.
Push and pull access modes: The repository must support two data access types: The
pull access, where the consumer requests information from the producer. This type of access
is known in the network management literature as get. This access is fine for scarce queries,
however the repository must reduce periodical querying (polling). Thus, it must also support
push accesses (or traps in network management vocabulary), where the repository warns the
consumer when an event occurs.
Support hardware-based information: The repository must expose hardware informa-
tion, such as node location, speed or remaining energy, to protocols. Routing algorithms, for
example, may use energy and geographic coordinates to optimize routing [58–60].
Multi-protocol dissemination: The repository must aggregate control messages from sev-
eral layers, reducing the amount of packets sent and thus the energy consumption. For example,
we could aggregate MAC messages that assess the reliability of the links with route reconstruction
messages into one single packet [82].
Full information of the neighborhood: The repository must store information concerning
the condition of each node in a neighborhood, instead of having an aggregated view of the
network. By aggregated we mean, for example, “the average queue occupation is 10%”. An
23
3. AN INFORMATION PLANE FOR MOBILE AD HOC NETWORKS
aggregated view is not suitable for tasks such as transmission power aware routing, which requires
the transmission power value for all one-hop neighbors [83].
Variable-sized neighborhood: Due to scalability issues, nodes will not store information
concerning the entire network. Thus, the repository must store information from a limited
range of nodes, based on the needs of each protocol. While MAC and routing protocols require
information from one-hop neighbors, transport protocols must take into account all nodes that
form the paths. In XCP, for example, the data-rate is dictated by the available bandwidth on
the bottleneck link [25].
Secure access: The repository must avoid data corruption caused by ill-intentioned or
buggy applications. Thus, the repository must implement authentication and access control
policies. Also, sensitive information, such as encryption keys and certificates, must be hidden
from unauthorized applications.
External queries: Some services might demand the access to information stored on nodes
outside the scope of the repository, due to its rare use.
3.3 Related Work
In order to adapt the autonomic concepts to the networking world, Clark et al. [41] added a
plane to the OSI model, called knowledge plane. Clark’s knowledge plane manages networking
protocols (the data plane) using artificial intelligence algorithms that automatically react to
changes in the network, in user requirements and in the environment. Clark’s as well as other
autonomic management architectures [41, 79] use context and application awareness to enrich
their decisions using models of the services and the environment. Those works assume that
there is an information base from where information can be stored and fetched in a scalable way.
However, such information systems are still an open research issue. MANIP is an instance of such
an information base, and thus could support the operation of those architectures on MANETs.
Malatras et al. [78] propose a context-aware, policy-based management system for MANETs.
They proposed an architecture for the collection and dissemination of context and policies. They
also propose components for decision-making based on policies that take context information
into account. Unlike our InP, their work cannot be applied to tasks other than management,
since it defines a hierarchical context flow. MANIP, on the other hand, supports completely
distributed as well as centralized information sharing. Our work provides a richer granularity on
information dissemination, as well as automatic means to maintain the stored information.
24
3.3 RELATED WORK
Due to the scarce resources and harshness of the wireless medium, cross-layer design is
frequent in MANETs [50]. Cross-layering might induce a high layer interdependency, producing
less modular code. To reduce those effects, several works proposed middlewares for MANETs
providing standardized mechanisms for information sharing [46, 47, 53, 54, 84]. However, those
middlewares are usually restricted to the information stored in each node, and employ simple
information models or no model at all. Our work, however, allows nodes to fetch information
from any node in the network. In MANIP, the information is represented using the MANIP
schema, which is based on a standardized information model.
Conti et al. [47] proposed event-based cross-layer interfaces. Razzaque et al. [46] created a
middleware that uses contextors to dynamically feed the protocol stack. Each protocol has its
contextor, which inserts and queries information from the middleware. In both approaches the
stored information is limited to the current node. Further, there is still replication of information,
since protocols cannot see each other’s data unless they are explicitly exported. Winter et al. [53]
created a cross-layering middleware that divides information into local and global views. The
local view concerns the host node, while the global view represents the aggregated state of the
network. The lack of information pertaining individual nodes precludes the use of those solutions
in tasks such as management. XLEngine is a cross-layer platform that supports context-aware
protocols for networks based on IEEE 802.11 [54, 84], which improves CrossTalk. A component
vertical to all layers stores information produced by the protocols. XLEngine has some short-
comings. First, it does not support event-based notification, requiring constant polling. Second,
it does not allow access to information from a specific neighbor, as XLEngine stores a summary
of the overall network state (an average, maximum or minimum, for example).
Other middlewares for information dissemination on MANETs support multi-agent systems
[85–87]. They limit the amount of information available to each agent to reduce their resource
usage. In the spatial programming paradigm, the data available to each node varies according to
its location [85]. This model is handy for applications where nodes in a region tend to perform
similar computations (e.g. for target tracking, detection of natural events), being simple to
implement and highly scalable. The problem with this model is that certain applications, such
as Peer-to-Peer overlays, require information from nodes that are far away, thus they cannot be
easily modeled with this approach. TOTA (Tuples Over The Air) is an information dissemination
middleware for multi-agent systems [86]. It employs the concept of stigmergy, that is, individual
agents communicate by changing their local environment. LIME (Linda In Mobile Environments)
is a tuple space middleware for mobile applications, based on the Linda tuple space system [87].
25
3. AN INFORMATION PLANE FOR MOBILE AD HOC NETWORKS
It works with a localised tuple space, where a node sees only the tuples pertaining to itself and
to nodes in their radio range. Protocols and services in LIME and TOTA must be modeled using
their design patterns, which may be hard for tasks such as distributed management. Also, those
middlewares may not scale when complex dissemination rules are specified.
The Ginkgo platform is an agent-based platform for the development of highly specialized
control and networking algorithms based on a multi-agent approach [88]. In this platform, agents
implement a knowledge plane, which is responsible for the dissemination of knowledge required
for the operation of a protocol. This platform is quite generic, once it may be applied to wired
and wireless networks and to any level of the protocol stack. Thus, it is quite lean, being able to
run in real-time if needed. Agents communicate using a blackboard-like approach, the blackboard
being the knowledge plane. In order to make the solutions scalable, Ginkgo uses the concept of
“situated view”, limiting the information seen by each agent to a few physical or virtual hops.
Agents are in charge of updating the situated view.
The solution that we propose in this thesis shares the same base concepts, however the scopes
of the two architectures are quite different. While our solution is specific to wireless scenarios,
Ginkgo’s architecture is suitable to all kinds of networks, and thus it has to be much simpler and
generic. While Ginkgo adopts an agent-based approach with the mandatory use of a localized
view, our solution works with any implementation philosophy, and may provide a localized or
global view as needed. The Ginkgo platform does not automatically update the information
stored in the knowledge plane, unlike MANIP, which allows applications to define update rules.
Ginkgo also does not address the issue of security. Finally, we incorporated in our platforms
several elements that make it specific to wireless networks, in an effort to optimize our solution
to this scenario.
Although information is usually standardized in the message exchanges of each protocol, this
is not enough when different protocols or applications must share information. In this situation,
information on each protocol should be represented in a single standardized format. Different
representations require translations in the representation and in the semantics. Representation
translations occur when the information follows the same logical structure in both ends, how-
ever its format changes. For example, a structure containing IEEE 754 floating point numbers
represented in big endian byte order requires a change in the order of bytes in a little endian
architecture. Semantic changes require changes in the data structures, for example converting a
tree-like representation into a list. In network management jargon, semantic models are called
information models, while different representations are called data models.
26
3.4 THE MANIP MIDDLEWARE
The networking community has proposed several information models. DEN-ng (Directory
Enabled Networks next generation) [89], DMTF’s CIM (Common Information Model) [90], RDF
(Resource Description Framework) and ebXML (Electronic Business using eXtensible Markup
Language) schemas [91] are a few examples. In Section 3.5.2 we propose an information model
for MANIP based on the CIM specification. Data models did not receive the same amount of
attention. However, we may list XML (eXtensible Markup Language) [92], ASN.1 (Abstract
Syntax Notation 1) [93] as the most employed data models in network management nowadays.
3.4 The MANIP Middleware
The MANIP middleware constructs a distributed information base, which can also be consid-
ered an information plane. The InP stores information and context pertaining all the protocols
and services of the network. It is worth noting that the network literature defines context as
new parameters that can be used in networking to improve traditional protocols, i.e. adding mo-
bility to routing, embedding hints of the data being transmitted for in-network aggregation, or
others. In this work, however, we consider context as data concerning the environment (physical
or software) of a node or a service. Context is collected by sensors, which can be a hardware
installed on the node or some sort of software instrumentation that allows the observation of the
state and meta-data regarding the running software. Further, the InP acts as a collaboration
layer, encouraging the adoption of context-aware, cross-layer protocols and services by providing
interfaces for information dissemination and sharing. This plane lies between the service plane,
composed of services and management solutions, and the data and control planes, composed of
devices and networking protocols, as shown in Figure 3.1. This organization allows services and
autonomic managers to incorporate context-awareness or use an InP as a database for services
and capabilities of the network, in order to compose more complex services.
Further, networking protocols could use MANIP to optimize their operation through cross-
layering and context awareness. Like existing cross-layer middlewares, MANIP provides PUSH
and PULL access to data from several layers, providing vertical integration of the layers through
a unified interface. Second, the sharing of knowledge in MANIP may be used to avoid the
replication of tasks (i.e. neighbor discovery being by routing, P2P application and the MAC
protocol). MANIP also facilitates an horizontal integration of information by providing access
to information stored on other nodes, again using the same interfaces.
27
3. AN INFORMATION PLANE FOR MOBILE AD HOC NETWORKS
Information plane
Service plane
Data/Control plane Routing, connectivity,
topology, reliable delivery…
VoIP, Web, Management,
Multi-Agent Systems, Grids…
Node state, patterns, behaviors,
policies, predictions…
Cross-layer
optimization
Context-awareness Service discovery
and composition
Context-awareness
Autonomic
management
46
Figure 3.1: The Information Plane in autonomic networks.
Data stored in MANIP can be accessed using push/pull commands like GETS and TRAPS.
The content stored in MANIP is updated in one of two ways. Either the services that produced
the information specify a dissemination policy, or they regulate the dissemination themselves.
In both cases, MANIP provides interfaces that encapsulate the sending of messages, allowing
piggybacking several pieces of information in a single packet. This decreases the control overhead
of the network, reducing energy consumption.
The organization of the middleware is depicted in Figure 3.2. It is composed of three tiers,
summarized below.
3.4.1 The Information Tier
MANIP’s information tier has three components, which store information produced by the
application and provide abstractions for physical sensors. In order to allow a higher degree
of interoperability, the information stored in MANIP should follow a standard representation,
allowing applications and/or protocols implemented by different vendors to exchange information.
In Section 3.5.2 we propose an information scheme for MANIP based on the CIM information
model [90].
The Sensor Abstraction Component deals with access to hardware sensors. In this paper
we differentiate among hardware sensors and virtual sensors, as it is usual in the literature of
context-aware and multi-agent systems [81]. Hardware sensors monitor physical devices, e.g. a
GPS, a battery indicator, an accelerator. Virtual sensors, on the other hand, monitor software,
providing readings such as the occupation of a packet queue, the number of TCP flows or the
version of a program. The sensor abstraction layer provides a standardized interface for the
28
3.4 THE MANIP MIDDLEWARE
Access
Control Lists
Authoriz.
component
Authent.
component
Confident.
component
Integrity
component
Past behavior
(accounting)
Sensor
abstraction
Synchron
External entities
MANIP middleware
Hardware
sensors
Information
Engines
Service Autonomic
Manager
Protocol
SA
Self-security
Autonomic
Loop
High level
access policies
Security
Translation Notification
AIB NIB
Figure 3.2: The MANIP module and its interaction with protocols and services.
access to hardware sensors, hiding device-specific interfaces and commands from other MANIP
components. For example, location data from diverse devices, such as a GPS or infrared-based
systems, would be translated into a standardized representation for location, e.g. coordinates in
degrees with their associated imprecision. The sensor abstraction component does not deal with
virtual sensor data, which would be stored either at the AIB or at the NIB.
The Application Information Base (AIB) stores information coming from applications and
high-level services, whereas the Network Information Base (NIB) stores information from net-
working protocols. This separation is due to performance reasons. Protocols have stronger real-
time requirements and must respond very fast to events. Further, they usually require simple
data, which can be easily represented using simple data structures (e.g. a floating-point number
would suffice to represent queue occupation, signal-to-noise ratio and link reliability). Auto-
nomic services, on the other hand, rely on complex, structured information to describe services,
policies and resource. Hence, such services demand object-oriented, feature-rich representations
of information. However, this capacity comes with a certain performance penalty. In order to
allow fast access to information to lower layers, and at the same time provide support to rich
29
3. AN INFORMATION PLANE FOR MOBILE AD HOC NETWORKS
information models to the applications and services, the knowledge tier stores the information
in two different components.
The difference between AIB and NIB lies on the data models. While AIB should use object-
oriented data models (e.g. a OO-DBMS), the NIB should use simple data models (e.g. ASN.1
or SMI). Lower level services would still access data on the AIB, providing that they accept a
higher response time. The two data models are bridged using the translation engine described
later. We chose not to define standard data models to allow each developer to pick one that fits
the restrictions of the network.
3.4.2 The Engines Tier
The Engines tier of MANIP offers engines for event notification, data synchronization and
translation among different data representations.
The Translation Engine converts data among the different data models used in AIB and NIB
to the format used for queries coming from protocols and services. Suppose, for example, that
queries to information stored on MANIP could be performed using XML-RPC. The translation
engine would interpret the queries, identify where the information is stored (AIB or NIB), fetch
it and marshal the data following a defined XML schema. Also, when receiving a SET command,
MANIP would employ the translation engine to translate the incoming information into its AKB
and NIB representations. The translation engine should support two or more representations to
data queries. For example, it could use XML-RPC for applications and services and ASN.1 for
protocols. This would allow a faster response time for protocols that require a timely response
(e.g. MAC and PHY level algorithms).
The Notification Engine watches the state of the local copy of data stored in the MANIP
middleware to create alarms whenever a certain condition happens. Applications can subscribe
to events happening at the local node, or at other nodes. As an example, events could indicate
low link reliability or an alarm for insufficient battery.
The Synchronization Engine automatically disseminates information based on simple rules.
Those rules are defined by the application in terms of a distance in hops, a timeout and a
periodicity of updates.
Automatic synchronization is useful for services and protocols where the information required
by each node is clearly divided in regions, for example as in routing and clustering[94]. The
synchronization rules also allow nodes joining the network to easily populate their local AIB and
NIB bases by issuing a synchronization request to its neighbors. Those nodes, in turn, will check
30
3.4 THE MANIP MIDDLEWARE
the stored dissemination rules to determine which data will be sent to the arriving node. The
engine uses broadcast messages, profiting from the broadcast nature of the wireless medium.
The synchronization of each piece of information is determined by a tuple (D,R, T,A). D
defines the dissemination policy, that is, when the information should be disseminated. The
possible values are on every change, periodic and do not disseminate. Next, the reach of the
dissemination is defined by R, which determines the range in hops. Each tuple also defines an
Access Control List (ACL), stored in A, and a time to live, the value T . The time to live is
reset on every update. In order to minimize the amount of packets sent, and reduce energy
consumption, the synchronization engine aggregates information updates to reduce the overhead
of information dissemination. For instance, defining a minimum interval among updates rather
than disseminating changes as soon as they happen.
As mentioned before, some applications do not adopt a range-based neighborhood. In P2P
applications, for example, neighbor peers may be several hops away, or even at the other side of
the network. Thus, such applications would define themselves their propagation policy. Also, for
applications where the propagated data is highly dynamic, each application would define what
and when to send. For this scenario, MANIP allows applications to either piggy-back their own
data on MANIP synchronization messages or to send their own MANIP messages. In order to do
so, the developer would implement a Synchronization Agent (SA) to manage the synchronization
of all data concerning the service.
3.4.3 The Security Tier
Security is essential to MANIP knowledge exchanges, once attacks to MANIP could disrupt
the operation of the entire network. The security tier ensures the security of MANIP messages
as well as the confidentiality, integrity and authenticity of the knowledge exchanges between
MANIP and services. This tier also performs accounting, allowing an autonomic loop to adjust
the security algorithms based on their past behavior.
The security tier assumes that a running PKI system exists on the network (interested readers
refer to [95]). Once the choice of the security primitives will depend on the deployment, this
section suggests certain systems/protocols that could be used on each component of the security
tier, however it is up to the developer to choose the more adequate technologies in each case.
The Confidentiality and Integrity components perform encryption, decryption and signing
of MANIP messages. The choice of primitives will depend on the target application, e.g. on
resourceful MANETs we could use AES and RSA for encryption and signatures, respectively.
31
3. AN INFORMATION PLANE FOR MOBILE AD HOC NETWORKS
For sensor networks, on the other hand, we could use RC5 [96] and URSA [97] for the same tasks
due to resource limitations.
The Authentication component deals with the identification of services and protocols. When-
ever a request arrives, the source must authenticate within MANIP. Since in MANETs we should
not rely on a central authority, authentication should be performed either by tickets created by
a group of nodes [97] or by a PGP-like trust model, where authentication is a function of the
perceived reputation of a node on a region [98].
Finally, the Authorization component uses access control lists (ACLs) to define in a per-
object granularity the access privileges of nodes, users and services. The definition of ACLs is
not in the scope of MANIP, which only enforces them. Applications and services would define
ACLs for their own knowledge, while the operating system or an autonomic manager would
identify the security privileges associated with knowledge pertaining to the configuration and
operation of each network element. Those ACLs could be derived by a self-security component
using business policies. For example, the policy "All developers have access to OS information"
would be translated into "Allow read and write access to John and Peter for the System objects".
The authorization component should interact with a confidence system to deny accesses from
compromised nodes. This is necessary because MANET nodes can easily be tampered with
or stolen. Confidence systems would detect compromised nodes by their misbehavior, allowing
MANIP to block their access to sensitive knowledge.
All the components above produce traces (or past behavior), which are used by confidence
systems to derive the reputation of nodes. The past behavior could also be used for accounting
as well as the automatic adaptation of the security tier by means of AI reasoning on an external
self-security component.
3.4.4 Interoperability with Regular Nodes
Due to the number of mobile devices already deployed, MANIP-based nodes will have to
interact with nodes that do not employ a repository, called regular nodes. Thus, MANIP-aware
protocols will provide both repository-based and traditional information dissemination methods.
If no regular node is in the neighborhood of a MANIP-aware node, it will employ the MANIP
approach. If a MANIP-aware node receives traditional update messages (e.g. a routing mes-
sage), it should respond using regular messages, based on the information stored on MANIP.
Only MANIP-aware nodes in contact with regular nodes would operate on compatibility mode.
Regular nodes, on the other hand, will discard MANIP messages.
32
3.5 INFORMATION IN MANIP
3.5 Information in MANIP
This section deals with the information stored in MANIP. First we focus on the quality of
information kept in MANIP, dealing with the aspects of consistency, freshness and accuracy.
Next, we present an information schema, derived from CIM, to represent common information
required in MANETs.
3.5.1 Quality of Information in MANIP
Once each service may define its own requirements for consistency, freshness and accuracy, we
provide the qualitative effect of MANIP on information dissemination. A quantitative analysis
is out of the scope of this article, as it requires in-depth knowledge of specific applications.
Freshness and consistency: Since MANIP is an InP for MANETs, it has to be slim
and fast. Thus, unlike other distributed information repositories, MANIP does not guarantee
freshness and consistency of the information. In MANETs, the cost to disseminate information
at every update to all the concerned nodes can be quite high. Thus, MANIP tries to reduce
the amount of messages required for information dissemination by the use of aggregation and a
minimum inter-message update interval.
The issue of information consistency and freshness may not be a strong requirement for
the development of services in MANETs, and hence was left out of the design of MANIP. Due
to the high energy and bandwidth restrictions of MANETs, protocols tend naturally to adopt
algorithms where consistency is not required for its convergence, in order to reduce the amount of
packet sent. As an example, several approximate routing techniques have been proposed, where
nodes try to forward data to a location that is likely close to the destination, and this route is
improved at each packet forward [58, 99, 100].
Accuracy: In MANETs, there are two sources of information inaccuracy. First, due to
the low cost of nodes, hardware and software sensors may provide imprecise readings. This
occurs either due to the quality of the hardware (e.g. sensors have to be cheap) or due to
processing constraints (e.g. processors having a limited speed or not supporting floating point in
hardware). MANIP cannot contribute to solve this problem. However, it can play a role in the
second source of inaccuracy, which is aggregation. By providing means to fetch information from
more nodes at a low overhead, MANIP allows calculations to be more accurate, once nodes can
use more contextual data to derive useful information. Secondly, the low dissemination overhead
of MANIP allows more frequent information updates, thus algorithms may use fresher inputs.
33
3. AN INFORMATION PLANE FOR MOBILE AD HOC NETWORKS
3.5.2 The MANIP Information Schema
MANIP should store information following a standardized information model, such as DEN-
ng (Directory Enabled Networks next generation), CIM (Common Information Model) or RDF
(Resource Description Framework) schemas. The choice of the data model to be employed will
depend on the resource capabilities of the mobile nodes. The chosen model should be extended
to represent the unique characteristics of MANETs and WSNs, such as node position, their
hierarchy (e.g. the existence of clusters and their cluster-heads), the sensor and communication
coverage area, among others. Initial efforts for such modeling in MANETs produced models
specific for a small set of problems, which are not easily extensible to other problems [101, 102].
MANIP requires a simple schema capturing the essential information required for the oper-
ation and management of MANETs and WSNs. Thus, we took into consideration the needs of
clustering protocols, topology and transmission power control protocols, networking protocols as
well as context-aware applications. The proposed schema is an extension of CIM version 2.18
[90]. Ideally, we would choose the information model to be used based on performance data,
however no such study exists (and is out of scope of our work). Thus, we picked CIM because
it is the most accepted model, being the base for other standards (such as PCIM, WBEM and
DEN-ng) and having a significant backing of vendors.
We minimized the amount of core CIM classes used to the smallest possible subset, reducing
resource usage. Thus, the MANIP schema presents a small resource requirement. This is the
same strategy employed in [101] to produce a lightweight model for routing in MANETs. The
proposed CIM schema, called MANIP, is portrayed in Figure 3.3 as a UML class diagram.
This schema is far from being a complete model of all the information required for the
operation of MANETs and WSNs. Each protocol or service should extend it to incorporate its
own information, making the model richer. For example, we expect that routing protocols to
contribute with their modeling of a routing table, while an autonomic manager would add classes
describing the policies and criteria used to drive its operation. We chose to reuse classes from
the core CIM model whenever possible in order to make our schema as compatible as possible
with other CIM schemas. Thus we concentrate on features that are specific to MANETs and
WSNs. The MANIP schema does not allow classes or sub-classes having methods, once MANIP
does not store code. However, actions and behaviors can be stored as policies, FSMs or others.
Classes specific to MANIP The schema has classes that represent internal state of MANIP,
as well as its events and ACLs, so services can access this information using the same primitives
34
3.5 INFORMATION IN MANIP
<<CIM_ComputerSystem>>
MANIP_AdHocNode
Identifier : uint64
NeighborList : uint64
totalMemory : uint64
availableMemory : uint64
processor : CIM_Processor
XCoord : real64
YCoord : real64
zCoord : real64
battery : CIM_Battery
operatingSystem : CIM_OperatingSystem
updateInfo : MANIP_Update
MANIP_PhysicalLayer
channelFrequency
FrequencyHoppingSeed
receptionPower : real64 [ ]
idlePower : real64
AvailableTransmissionPowers : real64 [ ]
MANIP_ModulationCoding
modulationType : String
codingType : String
dataRate : real64
receptionThreshold : real64 [ ]
updateInfo : MANIP_Update
1
1..*
MANIP_MACLayer
SNRRatio : uint64
supportedDutyCycles : real64 [ ]
currentDutyCycle : real64
lossRate : real64
<<CIM_NetworkAdapter>>
MANIP_Adapter
status : uint32
updateInfo : MANIP_Update
11
1
1
MANIP_SecurityPrimitive
name : String
supportedKeySizes : real64 [ ]
supportedOperationalModes : real64 [ ]
typeofService : uint32
updateInfo : MANIP_Update
MANIP_ClusteringAlgorithm
recreationInterval : datetime
clusterizationPolicy : uint32
clusterNodes : real64 [ ]
clusterHead : MANIP_AdHocNode
lastClusterization : datetime
1 1..*
MANIP_RoutingLayer
paquetQueueSize : uint32
packetQueueOccupation : real64
MANIP_InPComponent
softwareVersion : String
minMessageInterval : datetime
maxMessageSize : uint32
minMessageSize : uint32
certificateList : String []
keyList : String []
updateInfo : MANIP_Update
1 0..*1 1
CIM_Sensor
1
0..*
MANIP_Client
identity : CIM_SoftwareIdentity
udpateInfo : MANIP_Update
hostNode : MANIP_AdHocNode
clientCapabilities : CIM_Capabilities [ ]
MANIP_Update
lastUpdate : datetime
updateInterval : datetime
updateStrategy : uint32
disseminationDistance : uint32MANIP_Event
triggeringCondition : PCIM_PolicyRule
listeners : MANKOP_Client [ ]
listensTo
1..*0..*
1
0..1
Gray classes are specific to MANIP,
while white ones represent
information for MANETs.
Figure 3.3: The main classes of the MANIP CIM schema.
used to access their own information. The MANIP_InPComponent class is used to set or get
configuration properties of MANIP (the maximum size of update packets, the minimum interval
among packets, its security parameters). This class also stores the certificates and keys used
by MANIP, as well as its supported cryptographic capabilities (using the SecurityPrimitive
class). Certificates are stored in the X.509 format. The SecurityPrimitive class lists the
name of the primitive, the key length, as well as the supported operational modes. The class
MANIP_Client is used as a base class to model MANIP clients. Thus, any protocol, autonomic
manager or service wishing to use MANIP would be represented by a subclass of MANIP_Client.
Its identity property, based on the CIM_SoftwareIdentity class, describes the version, name
and other general information of the client service. This class references the host node where
the service resides, in order to support remote events in MANIP. The multi-valued property
clientCapabilities lists the services provided by the client (e.g. routing, reliable delivery),
35
3. AN INFORMATION PLANE FOR MOBILE AD HOC NETWORKS
hence different implementations of a service can be easily grouped within the MANIP schema.
Each MANIP-aware node will be represented by an instance of the MANIP_AdhocNode class.
One of the most important issues in MANIP is information freshness, thus we added to every
class of the schema a property updateInfo that contains the last time that a given information
was updated as well as the information required for its automatic update. The MANIP_Update
class implements the tuple described in Section 3.4.2. The property updateStrategy determines
how the information will be updated and, if applicable, the property updateInterval specifies
the interval among updates, while disseminationDistance determines to which range of phys-
ical neighbors the information will be sent. The last part of the tuple, the security access, is
determined by the ACLs, which we will detail below.
Events are represented in the MANIP schema using adaptations from PCIMe [103]. The
condition to trigger an event would be modeled using the PCIM PolicyRule class. This allows
MANIP to specify events triggered by time-based conditions (such as “the last update to property
X was Y seconds ago”), as well as match and range-based conditions. The services to be alerted
are listed as references to MANIP_Client. The hostNode supports remote event notification.
We use RPBIM [104] to represent ACLs in the MANIP schema, allowing an external self-
securing service to automatically reconfigure MANIP’s ACLs. This solution has the advantage
of being based on PCIMe, the same schema proposed for events. It supports access rules based
on roles, users, objects and operations.
Classes specific to MANETs The MANIP schema also represents the most commonly used
information for MANETs. Each ad hoc node is represented by an instance of MANIP_AdHocNode,
which is a subtype of the CIM_ComputerSystem base class. This class has properties representing
its sensing capabilities (e.g. a location, temperature or light sensor) as well as properties to
depict its clustering status. We explicitly added a clustering class since several protocols such as
OLSR and others rely on clustering [105, 106]. Thus, the model captures clustering information
such as the clustering criteria, the nodes on each cluster, its leaders and the interval between
each execution of the clustering algorithm. The MANIP_AdHocNode class also holds information
concerning the hardware of the node, such as the installed and available memory and processing
resources and the status of the battery. It also provides the location of the node when available.
Next, we specified basic classes for layers one to three of the protocol stack, based on in-
formation used in the design of protocols and applications for wireless networks. Each layer is
associated to a network adapter, modeled by a subclass of CIM_NetworkAdapter. This special-
36
3.6 USING MANIP FOR POLICY-BASED SELF-CONFIGURATION OF P2PNETWORKS
ization was necessary because interfaces may be turned on or off, due to the use of topology
algorithms or to save power. Such operations were not envisaged in the core CIM classes.
Surprisingly, the most recent version of CIM (2.18 as the time of writing) does not model
WLAN interfaces, thus the MANIP schema proposes basic classes for the physical and MAC
layers. In the physical layer, we model properties such as the data rate, the energy consumption
and thresholds for all the supported coding and modulation schemes of the radio. This is useful
for energy-aware protocols as well as for clustering and transmission power control. In the
MANIP_MACLayer class the most commonly requested information is the quality of the links and
the duty cycle of the radio1. Finally, the RoutingLayer class has properties indicating the size
and occupation of the packet queue.
With regards to the number of packets sent by the MAC and routing layer, we suggest the use
of the classes proposed by Badonnel et al [101]. Those classes hold average and total amounts of
control and data packets in the MAC layer and the amount of IP data sent and received by the
node, which are further divided as data from the node as well as data forwarded by the node.
3.6 Using MANIP for Policy-Based Self-Configuration of P2PNetworks
As mentioned previously, MANIP can be used either in the context of cross-layer protocols
or to ease autonomic management. This case study focuses on a policy-based self-configuration
system for P2P networks. The case study in Chapter 6 uses MANIP in the context of cross-layer
self-configuration protocols.
In this case study we implemented a policy-based self-configuration management module for
unstructured peer-to-peer (P2P) networks. Unstructured networks can be divided into flooding-
based and random walk-based. In flooding-based networks, nodes forward queries to all their
neighbors, bringing fault tolerance to protocols, however at a high energy and load cost. Ran-
dom walk-based networks disseminate a fixed amount of queries, called walkers, which wander
randomly around the network [71]. Usually flooding-based techniques have a higher hit rate (the
amount of successful queries) due to the high number of messages sent. However, random walks
perform better than flooding on high load networks. We chose unstructured P2P protocols in-
1The duty cycle consists on the very short alternation of activity and inactivity periods on the radio in orderto save energy, and is a quite common practice in WSNs
37
3. AN INFORMATION PLANE FOR MOBILE AD HOC NETWORKS
Algorithm 1 Operation of the autonomic manager.1: function calculate_occupation( )2: ohocc = max(max(N.occ), occ);3: thocc = max(N.ohocc);
4: event FLOOD_THRESHOLD_EVT:5: thocc > flood_threshold;
6: event RW_THRESHOLD_EVT:7: thocc < randomwalk_threshold;
8: event ACTIVATE_FLOOD_EVT:9: |flood_list| > cluster_size× flood_perc;10: event ACTIVATE_RW_EVT:11: |rw_list| > cluster_size× rw_perc;12: receive FLOOD_THRESHOLD_EVT(event)13: flood_list ∪ event;14: purgeOldElements(flood_list);15: receive RW_THRESHOLD_EVT(event)16: rw_list ∪ event;17: purgeOldElements(flood_list);
stead of structured ones because our previous work [107] has shown that such networks perform
better than structured ones on MANETs.
We use MANIP to support an autonomic manager that automatically selects the best query
technique according to the conditions of the MANET. As in TCP, where the data rate is deter-
mined by the congestion of the network, the autonomic manager uses flooding when the network
allows, switching to random walk (a more economic strategy) when the charge reaches a crit-
ical level. This adaptation indirectly optimizes the number of successful P2P file queries (the
hit rate), the response time perceived by the user and the energy consumption by reducing the
amount of collisions in the MAC layer. The manager requires information from different lay-
ers (the application and the MAC layers) and from several nodes, which justify the use of a
middleware such as MANIP. Thus, the autonomic manager selects the best query dissemination
strategy on any given scenario, that is, the query strategy that presents the highest hit rate.
A MANIP-aware Autonomic Manager (MAM) is installed in all nodes. It divides the network
in clusters, where the cluster-heads (CH) coordinate the monitoring of the network condition and
also decide if the nodes on the cluster should change the employed query strategy. In order to
create clusters, the MAM sets a periodic timer on all nodes. Upon its timeout, nodes choose if
they will become CHs with a probability of 10%. Those nodes will then advertise themselves, so
non-CH nodes can choose which cluster they will join.
38
3.6 USING MANIP FOR POLICY-BASED SELF-CONFIGURATION OF P2PNETWORKS
The decision to change the query strategy is based on the queue occupation (the percent-
age of the packet queue that is being used) of a k-hop neighborhood, which is calculated using
the information stored in MANIP. This decision is implemented using events, which are de-
scribed in Algorithm 1. The queue occupation is periodically calculated using the function
calculate_occupation. Each node inserts in the InP its queue occupation as well as the ag-
gregated queue occupation of its one-hop neighborhood (ohocc), where N is the set of all the
one-hop neighbors of a node, and occ is the node’s occupation. Next, each node calculates the
two-hop occupation (thocc) in order to obtain the maximum occupation in two hops. We used
two hops since empirical results showed that this configuration performed better than zero (local)
and one-hop information. If thocc is below a threshold, the network does not seem to be con-
gested, hence flooding should be employed. In this case, nodes produce a FLOOD_THRESHOLD_EVT
MANIP event. However, if the two-hop estimate is above a second pre-defined threshold, the
network is saturated, and thus random walk should be used. To signal this to the CH, nodes pro-
duce a RW_THRESHOLD_EVT event. An operator defines those thresholds. The decision to change
the query strategy is made on the cluster-head. Whenever the percentage of nodes reaches a
critical value, the MAM signals its slaves to change their configuration using the MANIP events
described in the algorithm.
Since the proposed P2P adaptation acts upon the load experienced on the network, we devised
a scenario that changes the amount of traffic on the P2P network, while the number of nodes
and files is kept fixed. The evaluation was performed on NS-2 over an IEEE 802.11a network
with nodes having a Cisco Aironet radio [108]. Next, the details of the simulated network, as
well as the parameters of the application and the autonomic manager are presented.
3.6.1 MANET Characterization
This section presents the configuration of the simulated nodes as well as the parameters of
the scenario. We simulate an IEEE 802.11b network over NS-2 version 2.33. We instantiated
the Ricean radio propagation model, which considers slow fading, that is, signal variations due
to mobility of objects around the sender and receiver. We use the implementation of the Ricean
model described in [109], once it provides a temporal correlation of the fading signal, while
others are memory-less. We did not simulate fast fading (due to the mobility of the sender and
receiver) because of the lack of temporal correlation on existing implementations. The energy
model only considers the energy consumed by the radio. Radio consumption varies based on its
state: receiving, transmitting or idle. The power consumption and reception thresholds of the
39
3. AN INFORMATION PLANE FOR MOBILE AD HOC NETWORKS
Parameter ValueIdle consumption 0.6699 WReception Consumption 1.049 WTransmission Consumption 1.6787 WCarrier sense threshold −99 dBmPacket capture threshold 10 dBPropagation model Ricean, K = 13 dBTransmission rate 11 MbpsRTS/CTS dialogue disabled
Table 3.1: PHY parameters of the simulated radio.
wireless transceiver are based on a Cisco 802.11 a/b/g CardBus Wireless LAN card operating on
802.11b mode [108]. Packet capture was activated, and will occur if the signal difference among
the transmissions is higher than 10 dB2.The characteristics of the simulated PHY and MAC
layers are summarized in Table 3.1.
We use the random waypoint mobility model, where the average node speed ranges from 0
up to 1.0 m/s, and the pause time is 0.1s. Eighty nodes are uniformly placed in a square area of
1km2. We used DSDV as the routing protocol, which is a proactive protocol. We use a proactive
routing protocol, since a reactive protocol could impact the performance of Random Walk, as
this protocol tends to employ more neighbors and forward messages to a higher number of peers
than Gnutella. It is important to note that the performance when using a reactive protocol
should be nearly the same of a proactive scenario, since a route will be available to each neighbor
because peers periodically send PING/PONG messages to guarantee that their neighbors are
online. Those messages will force the creation of a route to all the neighbors of a peer.
Optimized routing protocols could be used in the evaluation, such as OSLR or geographic
protocols. However, it is not the objective of the evaluation to measure the performance of
routing protocols and P2P applications. Instead, we focus on showing how MANIP could reduce
the overhead of an adaptive P2P system composed of a routing protocol, a P2P application and
an autonomic manager with the use of the functionalities provided by the middleware. Optimized
protocols would present a smaller gain when using MANIP, since their algorithms are already
more adapted to the environment.
2The capture effect occurs when two consecutive packets are transmitted at the same time, however one ofthem is correctly decoded, avoiding a collision, since its signal level is higher than the other packet’s.
40
3.6 USING MANIP FOR POLICY-BASED SELF-CONFIGURATION OF P2PNETWORKS
3.6.2 Application Characterization
Fifty-six of the eighty nodes (70%) are peers in the P2P network. Simulation time was set to
250 seconds. To vary the workload on the network, we modified the number of queries per node.
The number of files in the network increases proportionally with the number of queries, in order
to avoid queries for the same file when we increase the workload. The number of replicas of each
file is set to five, thus the probability of finding a certain file is always constant.
Since the cost of a virtual overlay (the P2P topology) different from the physical topology is
very high in MANETs, we changed the neighbor discovery and ping/pong processes to produce
a virtual topology more similar to the real one. Nodes will periodically send a broadcast, which
acts as a PING. This message is used to populate the peer lists, and thus peers will always have
neighbors at one hop distance. There is no PONG, thus a peer is discarded if no PING has been
received after a certain amount of time.
For flooding-based queries, we employ the Gnutella protocol, while for random walk we
employ the model presented in [71]. Random walks use four walkers with a TTL equal to
25% of the number of nodes. The parameters for random walks were defined empirically in
as those that yield the best performance. For Flooding, the TTL was set to seven, which was
empirically evaluated to be the best value for the simulated scenarios. The FLOOD_THRESHOLD_EVT
and RW_THRESHOLD_EVT events are triggered when the occupation is below 10% and over 50%,
respectively. Likewise, the MAM changes from flooding to random walk if 40% of the nodes
signal a FLOOD_THRESHOLD_EVT event within a clustering interval (set as 30s), and changes from
random walk to flooding if 90% of the nodes signal the corresponding event. Those values were
defined using empirical experiments.
We implemented both Gnutella and Random Walk without MANIP and using MANIP. The
MANIP-aware implementations have the following enhancements: First, the MANIP-based in-
formation dissemination allows routing, the P2P application and the autonomic manager to
disseminate their information using only one MANIP message, while a traditional approach
would require one message per protocol. Next, we used MANIP event to create routing-based
peer invalidation, that is, the P2P network uses routing breaks to identify peer disconnections,
reducing its response time to such events.
We implemented a subset of the MANIP features presented in Section 3.4. Once NS-2 is a
packet simulator, the format of the information as well as the amount of processing time and
memory resources were not simulated. Thus, we implemented a simplified information model.
41
3. AN INFORMATION PLANE FOR MOBILE AD HOC NETWORKS
Due to that, the event engine and the security tier were not entirely implemented. Hence, events
and access privileges were hard-coded using C++. In this work we simulated only the exchange
of packets required to update the information stored on each node. For future work we plan to
implement the information schema, the event engine and the security tier in order to assess the
processing and memory requirements of MANIP.
The following sections present the simulation results, which were obtained by averaging 100
independent simulations with a confidence interval of 99%.
3.6.3 Results – Policy-Based Self-Configuration Manager
Figure 3.4 shows the hit rate of the P2P networks, that is, the percentage of solved P2P
queries. Gnutella has a significant performance drop, due to network congestion. Unstructured
protocols based on flooding, such as Gnutella, tend to create an exponential number of messages
to search the network, thus they tend to impose a very high load. In Random Walk based
networks, however, much less nodes may be visited. Thus, those protocols usually present a
lower hit rate. The Adaptive solution changes from Gnutella-like to Random Walk-like queries
in order to reduce the load of the network, thus it has a hit rate that follows the better of
the two configurations. The performance of the solutions is tightly linked to the load of the
network, hence a reduction in the load allowed the Adaptive solution to outperform Gnutella
and Random Walk in almost all cases in terms of hit rate. This occurs because there is a mix
of peers running Gnutella-like queries and Random Walk-like queries. This mix favors Gnutella
when fewer queries occur, while more peers use Random Walk when the network is too charged.
The response time of the Adaptive solution is a compromise of the RandomWalk and Gnutella
protocols, as shown in Figure 3.5. The energy consumption of the Adaptive solution, however,
resembles that of Gnutella, once this solution tries to maximize hit rate. Random Walk has the
best response time, which is up to orders of magnitude smaller. This occurs because the much
lower amount of query messages that this query strategy employs. Further, the increase in the
response time due to an increased load is quite small for the evaluated scenario, showing that
this solution tends to scale even further than the loads measured.
Figure 3.6 shows that the Adaptive and Gnutella protocols consume the most energy, as
they send more messages than Random Walk. However, unlike the response time, the energy
consumption of RandomWalk increases significantly with more queries. Meanwhile, the Adaptive
and the Gnutella-based solutions tend to stabilize. This is related to network contention, which
42
3.6 USING MANIP FOR POLICY-BASED SELF-CONFIGURATION OF P2PNETWORKS
25 30 35 40 45 50 55 60 65 70 75
6 8 10 12 14 16 18 20
Hit
rate
(%)
Number of queries per second
Random Walk Gnutella Adaptive
Figure 3.4: Hit rate of the MANIP-aware P2P protocols.
0.01
0.1
1
10
100
6 8 10 12 14 16 18 20
Sear
ch re
spon
se ti
me
(s)
Number of queries per second
Random Walk Gnutella Adaptive
Figure 3.5: Response time of the MANIP-aware P2P protocols.
is almost reaching its maximum for both protocols. As a result, the amount of packets sent is
already nearing the maximum achieved by the network.
The number of packet drops, shown in Figure 3.8, also provides an insight in the amount
of contention. Random Walk presented a number of drops that was two orders of magnitude
lower than that of the Adaptive and Gnutella-like solutions. This shows that the contention with
Random Walk is much lower, as a consequence of the reduced amount of query messages.
3.6.4 Results – Benefits of MANIP
In this section we show the improvements or degradations on the performance of the network
when using MANIP. All the curves are shown in percents. Thus, a positive value will indicate an
improvement provided by MANIP, while a negative value will indicate performance degradations.
One of the benefits of using MANIP is a reduction in the amount of control packets sent
in the network, as shown in Figure 3.9. This reduction incurs in a smaller footprint for the
networking algorithms, reducing the utilization, energy consumption and latency of the network
43
3. AN INFORMATION PLANE FOR MOBILE AD HOC NETWORKS
80
100
120
140
160
180
200
220
6 8 10 12 14 16 18 20
Con
sum
ed E
nerg
y (J
)
Number of queries per second
Random Walk Gnutella Adaptive
Figure 3.6: Energy consumption of the MANIP-aware P2P protocols.
80
100
120
140
160
180
200
220
6 8 10 12 14 16 18 20
Con
sum
ed E
nerg
y (J
)
Number of queries per second
Random Walk Gnutella Adaptive
Figure 3.7: Energy consumption of the MANIP-aware P2P protocols.
due to the reduced number of times that the network must contend to access the medium. For
the Adaptive P2P deployment, MANIP reduced the overhead in terms of messages from 45% to
46%. For the Gnutella and Random Walk configurations, that value ranged from 49.5% to 51%.
This occurs because, on average, a MANIP dissemination message carries information from 1.8
to 2.1 different layers, that is, the classic implementation would require almost the double of
control packets to disseminate the same amount of information due to layering.
It is worth mentioning that the two implementations, the MANIP aware and the classic ones,
disseminate approximately the same amount of information in terms of total number of bytes.
The MANIP-aware implementation consumes less bytes since neighbor discovery is performed
only once, however neighbor discovery messages are in the order of a few bytes. The benefit of
MANIP lies in the reduction of contention, as well as the reduction in the bandwidth used with
control frames and preambles.
As a consequence of the lower amount of messages sent, the network will have a smaller traffic,
reducing the response time of the P2P application, as shown in Figure 3.10. For Gnutella and
the Adaptive P2P networks, the biggest savings occurred with more queries per second, while
44
3.6 USING MANIP FOR POLICY-BASED SELF-CONFIGURATION OF P2PNETWORKS
1000
10000
100000
1e+06
6 8 10 12 14 16 18 20
Tota
l num
ber o
f mes
sage
s dr
oppe
d
Number of queries per second
Random Walk Gnutella Adaptive
Figure 3.8: Number of packet drops of the MANIP-aware P2P protocols.
44
45
46
47
48
49
50
51
6 8 10 12 14 16 18 20
Red
uctio
n in
the
Num
ber o
f con
trol m
essa
ges
(%)
Number of queries per second
Random Walk Gnutella Adaptive
Figure 3.9: Savings of MANIP on the number of control messages.
for the Random Walk deployment this was just the opposite. The reason for such a behavior is
simple: the Gnutella and Adaptive protocols send a high amount of messages, thus the network
is quite loaded. Random Walk, on the other hand, imposes a much lower load on the network.
Previous analytical models showed that the time required to forward a packet increases almost
exponentially for high loads in IEEE 802.11, once the amount of contention on the medium will
increase, creating more collisions and requiring more back-offs [110].
The amount of energy consumed was the same for the protocols using MANIP and those
without MANIP, despite the significant reduction in the number of control messages. This is
shown in Figure 3.11. First, control messages account for up to 20% of the traffic on the network.
Second, the simulated radios do not employ sleep cycles and the difference of consumption of the
radio when idle and transmitting is quite small (only 37%, as shown in Table 3.1). As a result,
the consumption of an idle radio is not too different from that of a transmitting or receiving radio,
which further reduces the impact of the number of messages on the energy consumed. However,
if the network were to employ a topology control algorithm or to use idle cycles, MANIP could
provide a significant energy reduction. Once less control messages are sent, the nodes would have
45
3. AN INFORMATION PLANE FOR MOBILE AD HOC NETWORKS
40 45 50 55 60 65 70 75 80 85 90 95
6 8 10 12 14 16 18 20
Red
uctio
n in
the
Res
pons
e Ti
me
(%)
Number of queries per second
Random Walk Gnutella Adaptive
Figure 3.10: Savings of MANIP on the response time.
0
0.005
0.01
0.015
0.02
0.025
6 8 10 12 14 16 18 20
Red
uctio
n in
the
Ener
gy c
onsu
med
(%)
Number of queries per second
Random Walk Gnutella Adaptive
Figure 3.11: Savings of MANIP on energy consumption.
more opportunities to turn their radios off.
Figure 3.12 shows the effect of MANIP in the hit rate. While the hit rate increased for the
Adaptive and Gnutella protocols from 2% up to 8%, it reduced for Random Walk by up to 6%.
We attribute this to the fact that losing a MANIP packet is more significant than losing a control
packet in the classic implementation, once a MANIP packet carries more information.
3.7 Conclusions
This chapter detailed our proposal of an information plane for ad hoc networks called MANIP.
It supports information sharing in cross-layer, context-aware autonomic services and protocols
in wireless ad hoc networks. Each node having a MANIP module stores information from all
layers and from other nodes of the network in one single abstraction, accessible to protocols and
applications. Thus, protocols and services may improve their operation with algorithms that
take into account context, service and network information. We devised an information schema,
based on CIM, to represent the most common information used in services and protocols on
46
3.7 CONCLUSIONS
-8-6-4-2 0 2 4 6 8
10
6 8 10 12 14 16 18 20
Incr
ease
in th
eH
it ra
te (%
)
Number of queries per second
Random Walk Gnutella Adaptive
Figure 3.12: Effect of MANIP on the hit rate.
MANETs. Although developed to MANETs, this implementation of the information plane could
be used in other types of wireless multi-hop networks. We provided directions on how to change
the specification for other types of networks.
We investigated the benefits of MANIP in a P2P scenario using different query strategies:
flooding, random walks and a mix of both. Simulation results showed that the MANIP-enabled
solutions had a lower response time and control overhead, due to the use of a unified information
dissemination paradigm for all the management and control tasks of the nodes.
Further, we also proposed an adaptive policy-based P2P manager that automatically selects
the best query strategy (based on Random Walks or based on flooding in a Gnutella-like fashion)
according to network contention. This agent uses MANIP to simplify its information gathering
algorithms, and is used in the evaluation of MANIP as a simple self-configuration use case. Re-
sults showed that the adaptive solution mixes both query strategies in a way that it outperforms
the static solutions in terms of hit rate. It also presents an acceptable response time, intermediary
from this of Random Walk and Gnutella.
47
3. AN INFORMATION PLANE FOR MOBILE AD HOC NETWORKS
48
Chapter 4
An Analytical Model for Multi-HopRouting
Frame transmission in wireless multi-hop networks is subject to collisions and errors produced
by the variations in time and space of the signal strength. Wireless transceivers adopt two
mechanisms in order to reduce those effects. First, some transceivers dynamically adapt the
transmission power, reducing the packet error rate. Second, rate adaptation algorithms adjust
the modulation and coding of the links to counter a noisy medium.
These MAC-level adaptations change the amount of contention, delivery rate, energy con-
sumption, and end-to-end throughput of the network. Thus, routing in wireless multi-hop net-
works must be aware of changing data rates and transmission powers. This is not an easy task,
due to the different performance metrics that are affected. This chapter presents an analytical
model for wireless multi-hop networks, developed in order to simplify the design of such protocols.
This chapter is organized as follows. Section 4.1 introduces the use of transmission power
control and rate adaptation and motivates the development of a new analytical model. Section 4.2
surveys the models for multi-hop wireless networks. Next, Section 4.3 describes a new analytical
model for multi-hop wireless networks. The model is evaluated in an IEEE 802.11a network in
Section 4.4. Section 4.5 presents the concluding remarks and future work.
4.1 Introduction
In wireless network, connectivity is highly influenced by the characteristics of wireless links.
Due to interference, node movement and changing environmental conditions, the reception qual-
49
4. AN ANALYTICAL MODEL FOR MULTI-HOP ROUTING
ity of wireless signals vary significantly over time. As a consequence, the performance of the
network varies due to signal quality fluctuations. Connectivity services, thus, must employ self-
configuration algorithms to mitigate those degradations.
TheWiFi andWiMax MAC standards, among others, employ rate adaptation (RA) strategies
to cope with interference and bad links [111]. If the signal arrives with a high power at the
receiver, then the sender changes to modulation schemes that can carry more data. However,
if the reception strength is weak, the sender employs more resilient modulations. Resiliency
reduces spectrum efficiency, thus decreasing the data rate. Besides varying the data rate, rate
adaptation influences the occupation of the medium, as frames transmitted at a lower data rate
will demand longer transmission times. Transmission power control (TPC) algorithms control
the transmission power in a way that the frames arrive at the receiver with a strength that
guarantees an acceptable signal to noise and interference ratio (SINR) [20]. Besides improving
link quality, those algorithms also reduce energy consumption and the amount of collisions by
restricting the number of nodes receiving a frame.
Variations in the transmission power and data rate directly affect medium contention, packet
delay, network throughput, and energy consumption. Routing must be aware of both the trans-
mission power and the data rate, once ignoring transmission power and modulation may lead to
paths that consume too much energy or provide low throughput. Further, ignoring the data rate
of individual links may create routes with a lower throughput. Finally, route stability will depend
on the quality of the links, which may be measured by their variations on the transmission power
and data rate.
Hence, due to the complexity of the problem, several analytical models have been created
to study the performance of wireless links in single-hop and multiple hop configurations. Ex-
isting analytical models for multi-hop networks [112–115], though, focus on the overall network
throughput and capacity. They do not evaluate the average delay and energy consumption of
each flow, which are important performance metrics from the point of view of the users and for
the development of new routing algorithms. As an example, the parameter configuration achiev-
ing the highest throughput may consume too much energy, and hence may not be advisable for
low power sensor networks. Hence, models providing performance results for individual flows are
required, since those will improve the understanding of the performance of wireless multi-hop
networks from the user’s perspective.
This chapter proposes an analytical model that approximates the performance metrics of
multi-hop wireless networks with multiple transmission powers and multiple modulation schemes.
50
4.2 RELATED WORK
Different from previous work, our model is independent of the network topology, in order to guide
the development of new protocols. Furthermore, our model approximates network-wide metrics
such as the throughput, and the end-to-end energy consumption and delay of individual flows.
It is employed to evaluate two important routing design decisions. First, we study the effect of
transmission power and modulation minimization strategies. Those parameters are adjusted in
routing to prioritize either low energy consumption routes or high throughput routes. Second,
we experiment with link-level reliability. Although we instantiate the model for a IEEE 802.11
network, other CSMA/CA MAC layers could be taken into account by making simple changes
to some of the equations.
4.2 Related Work
Analytical models for transmission power control and rate adaptation usually focus in the
capacity of the network. Those studies assume perfect routing and scheduling capabilities, and
as such provide upper performance bounds. The benefits of transmission power control (TPC)
on multi-hop wireless networks have been analytically studied by Gomez and Campbell [116].
They showed that per-link range adjustments outperform global range transmission adjustments
by 50%. Further, the average per node traffic capacity is kept constant even if more nodes join
the network. Goussevskaia et al. [117] calculated the maximum network capacity and presented
a scheduling algorithm for an arbitrary network topology in networks. Although it does not deal
with TPC or RA, the transmission power and the SINR of each data rate can be changed in
order to derive the capacity of any desired power and modulation pair.
Several works studied the capacity of networks using TPC- and RA-aware links by means of
optimization models [112–115, 118]. Those works model the performance of specific networks,
given by a topology represented as a connectivity graph. Further, they do not consider collisions
and contention, assuming perfect link scheduling. Finally, in order to estimate the SINR of links,
those models require as input a graph representing the topology. Zhai and Fang [114] use conflict
graphs, coupled with SINR calculations and packet transmission times under different modulation
schemes to identify which nodes can transmit at the same time, and at which data rate, given
that the transmission power is fixed. Jäntti et al. [113] propose a linear optimization model that
incorporates multi-hop transmission restrictions. This work adds temporal constraints of a path
to model a packet’s progress towards its destination. Radunović and Boudec [118] evaluated
the fairness of data rate allocation in wireless networks. Carvalho and Garcia-Luna-Aceves
51
4. AN ANALYTICAL MODEL FOR MULTI-HOP ROUTING
[115] devised a performance model for multi-hop wireless networks with several data rates. The
reception of packets is based on an interference matrix that takes into account fading and other
propagation issues. Behzad and Rubin [112] study the effect of the transmission power on the
capacity of TDMA-based networks. Our work is similar to those presented above, however our
objective is to provide a model independent of the topology, in order to provide general hints on
the performance of a multi-hop network. We also consider end-to-end metrics, which were not
evaluated in previous works.
Contention has been studied mostly in the context of wireless networks forming cliques
(graphs where all vertices have edges to all the other vertices, i.e. as in some single-hop WLAN
deployments). Bianchi [119] proposed a model based on Markov chains, considering the back-off
algorithm of IEEE 802.11. Bianchi’s work is limited to saturated networks, hence other au-
thors improved this model to consider unsaturated networks, packet capture and channel errors
[110, 120]. Those models, however, are not applicable to multi-hop wireless networks because
they ignore the effects of hidden terminals. Based on the model of [110], we devise a model for
multiple hop networks.
4.3 The Analytical Model
The model is presented for an IEEE 802.11 MAC protocol, however it could be adapted to
other MAC standards. Table 4.1 presents the nomenclature used in the formulas. Uppercase
letters indicate the type of the variable; subscripts indicate their subtype and superscripts in
parenthesis provide parameters for this type. For example, E(p)TX will indicate the energy con-
sumed for transmission when the transmission power of index p is used. Note that we have two
different representations for power: P symbols, which denote the output power for transmis-
sion/reception of signals in the transceiver, and E, which denote the total power consumed for
a given operation. This difference occurs because the total consumption subtracted from the
battery involves the irradiated signal as well as the power required to modulate the signal.
We make some assumptions in order to render the modeling of packet transmission tractable.
Nodes are static, and deployed randomly in the area. We assume that there are enough nodes
such that we can always find a possible forwarder within the limits of the propagation range of
the sender. The back-off is a memory-less process, and frame capture [121] does not occur. All
nodes have the same radio characteristics: transmission power, data rate, noise floor, level of
interference, and SINR thresholds. They also have the same load and the characteristics of each
52
4.3 THE ANALYTICAL MODEL
Table 4.1: Notation used in the analytical modelSymbol Meaning Unit
D Signal range metersE Consumed energy joulesλ Packet transmission rate packets/secondq Packet transmission rate packets/slotL Payload length bitsP Output/input signal power WattR Data rate bps
WMaximum number of slots of the slotsfirst contention dispute (CWMin)
T Time secondsδ Node density nodes/m2
H Number of hops N/AP Probability of an event N/AR Ratio of two signal powers N/Ap Transmission power of data frames N/AG RF attenuation function WattA Surface area metersU Medium utilization N/AX Throughput bps
mModulation used for the N/Atransmission of data frames
SNumber of contention slots before N/Atransmitting
hop (number of neighboring nodes, interference level) are equal. Finally, the transmission time
of the control frames is fixed. Our model can be extended to support variable modulation in
control frames, but this issue is out of the scope of this work.
The end-to-end delay is a function of the per-hop delay (Th) and the number of hops traversed.
Likewise, the end-to-end energy consumption depends on the per-hop energy consumption (Eh)
and the number of hops traversed. The number of hops as well as the per-hop delay depends on
the transmission power, p, and the modulation, m. Thus, we can express the end-to-end delay
and energy consumption as below, where E2E stands for end-to-end.
T(p,m)E2E = T
(p,m)h H(p,m) (4.1)
E(p,m)E2E = E
(p,m)h H(p,m) (4.2)
In Section 4.3.1 we model the effects of interference and hidden terminals, events characteristic
53
4. AN ANALYTICAL MODEL FOR MULTI-HOP ROUTING
of wireless networks that affect the performance of multi-hop communication. In Section 4.3.2
we calculate the one-hop energy consumption and delay using an extension of Daneshgaran et
al.’s contention model [110]. We end this section by showing the formulas used to calculate the
throughput of the network.
4.3.1 Modeling Wireless Interference
This section models one-hop interference and hidden terminals in wireless links. This will
be used in our model to define the maximum propagation distance of a packet as well as the
contention probability of each transmission.
The maximum amount of tolerated interference is derived from the conditions for the correct
reception of a frame (as described in [16]). Frames will be received if the incoming signal,
attenuated by a gain due to distance and fading, G(power, dist)1, is higher than a certain signal
to interference and noise ratio (RSINR) defined by the modulation of the data signal. The
RSINR threshold is applied over the thermal noise of the environment (PNoise) and the reception
strength of other transmissions, which form the interference set I. Finally, frames must arrive
at the receiver at a strength superior to the carrier sense threshold, PCS , an arbitrary threshold
value that is used in the MAC layer to assess if the medium is busy. Thus, a correct reception
between nodes j (transmitter) and k (receiver) at a given modulation will occur only if equations
4.3 and 4.4 hold.
G(P
(j,k)TX ,d(j,k)
)P
(k)Noise+
∑i∈IG(P (i), d(i,k))
≥ R(m)SNIR (4.3)
G(P
(j,k)TX , d(j,k)
)≥ PCS (4.4)
The maximum distance where a node will communicate using the transmission power p and
modulation m will be calculated based on the reception requirements expressed in Equations 4.3
and 4.4. Hence, the reception power of the incoming signal must obey Equation 4.5:
P(m)RX ≥ max
(PCS ,R(m)
SNIR
(P
(k)Noise +
∑i∈IG(P (i), d(i,k))
))(4.5)
1The frequency is also considered in those models, however we do not represent this fact here to simplify theequations. Some models may also consider other factors, such as node speed.
54
4.3 THE ANALYTICAL MODEL
Now, we will calculate the maximum co-channel interference of a transmission using the
hexagonal interference model. This model is quite popular in cellular studies [122] and has been
systematically adopted in capacity studies for wireless networks [123–125]. It defines the distance
among the maximum number of interfering stations that are able to transmit concurrently under
isotropic radio propagation. We will later extend this model to consider fading, however for the
moment we consider radio propagation without fading.
In the hexagonal model, nodes are placed in a regular topology, as shown in Figure 4.1. Nodes
are placed in a way that the reception signal at any of the nodes represented in the Figure is
smaller than the carrier sense threshold, PCS . If this is not the case, those nodes would not be
transmitting since they would have sensed a busy medium. As we see in the Figure, we can have
at most five interfering nodes DCS meters away from each other, where DCS is the distance where
the reception power is equal to PCS . In the figure, solid lines show the distance of the nodes
to each other and the dashed line shows the carrier sense range of the sender and receiver. All
nodes inside the dashed circle around the sender will be blocked due to physical carrier sensing.
Small filled black circles in the Figure represent the first tier interferers, which are the closest
nodes that can transmit data simultaneously with the studied transmission.
We expand this model to consider hidden terminals. Collisions caused by hidden terminals
occur whenever there is a concurrent transmission that was not blocked due to carrier sensing. In
the hexagon model, hidden terminals will occur in the gray area of the figure. Transmissions from
nodes distant more than DCS from the receiver will have an incoming signal lower than PCS , and
thus will be ignored by the receiver. Stations within the carrier sense range of the transmitter will
not provoke hidden terminals because they will be blocked due to carrier sensing. We will return
to the hidden terminal problem to calculate NInt, the number of possible interfering stations.
As in previous work [122–125], we consider that nodes outside the first tier interferers con-
tribute with an insignificant amount of interference, so they are not considered in the calculations.
Under the maximum interference of this model, Equation 4.3 is rewritten into Equation 4.6.
G(PTX , d
(j,k))
P(k)Noise + 5PCS
≥ R(m)SNIR (4.6)
The maximum distance where a node will communicate using the transmission power p and
modulation m will be calculated based on the reception requirements expressed in Equations 4.4
and 4.6. Hence, the reception power of the incoming signal must obey Equation 4.7:
55
4. AN ANALYTICAL MODEL FOR MULTI-HOP ROUTING
Receiver Sender
DCS
ACSAHT
DMAX DCS
DCS
Figure 4.1: The worst case first tier interferers (small black circles) in a wireless transmission.The hidden terminal area is also depicted (grey surface).
P(m)RX ≥ max
(PCS ,R(m)
SNIR (PNoise + 5PCS))
(4.7)
Since we now have the minimum reception power, we may calculate the maximum communi-
cation distance. Due to fading, signal varies over time. As a consequence, we may not guarantee
that the communication distance is valid at all times. However, we can define a communication
distance that may guarantee the correct reception of a packet with a probability of Prec under agiven propagation model. For this purpose, we define the function distProb() as follows:
d 7→ distProb(PTX , PRX) = {d | Prob (G (PTX , d) ≤ PRX) = 1− Prec} (4.8)
Since Prob(X ≤ x) is the cumulative distribution function (CDF) of the distribution X,
Equation 4.8 calculates the distance such that the probability of having a reception strength
inferior to PRX is at most 1− Prec using the CDF of the propagation model.
Figure 4.2 describes graphically the objective of Equation 4.8. Suppose that we want to ensure
a packet delivery rate of Prec = 0.9, and the target reception power calculated from Equation 4.7
is PRX = 4.5−3mW . Thus, we must find the distance value d where Prob(G(PTX , d)) ≤ 4.5−6
)=
0.1. This ensures that, for only 10% of the packets transmitted, the actual reception power will
be smaller than the target reception power (the filled area under the curve). For propagation
models with a known CDF, Equation 4.8 is essentially an inversion of the CDF, as shown in the
Appendix A for fading phenomena following a Rayleigh [16] distribution.
Using Equation 4.8, the maximum transmission distance DMAX to ensure packet reception
with a probability Prec is given by Equation 4.9.
56
4.3 THE ANALYTICAL MODEL
0.0
0.2
0.4
0.6
0.8
1.0
5e-06 1e-05 1.5e-05 2e-05 2.5e-05 3e-05
F(G
(x))
Reception power distribution in Watts - G(x)
F(4.5e-6) = 0.1
Figure 4.2: Example calculation of the distProb() function with target PRX = 4.5−3 underRayleigh fading using σ = 10−5.
D(p,m)MAX = distProb
(P
(p)TX , P
(m)RX
)(4.9)
Assuming that the network is dense enough so that nodes will always find another node to
forward packets to at the maximum reception range, the number of hops used to traverse the
distance among source and destination, DE2E , will depend on the maximum reception range, as
calculated in Equation 4.10.
H(p,m) =
⌈DE2E
D(p,m)MAX
⌉(4.10)
Having determined the amount of hops traversed, lets calculate the average number of stations
that may cause a collision due to the hidden terminal effect. A collision will occur when Equation
4.6 does not hold. Hence, hidden terminals must be at a range smaller than DCS . Another
restriction is that those terminals must not be blocked by the receiver, hence the incoming signal
must be smaller than DCS . The area that satisfies those restrictions is shown in grey in Figure
4.1. Assume that nodes are uniformly distributed in the area, with density δ. The number of
interfering stations follows Equation 4.11:
N(p)Int = δAHT = δ(A
(Receiver)CS −A(Sender)
CS ) (4.11)
In Equation 4.11 we calculate the number of possible hidden terminals by means of the
interference area AHT , which is the subtraction of A(Receiver)CS , the carrier sense area of the
receiver, and A(Sender)CS , the carrier sense area of the sender. Both areas have a range equal to
DCS , and the distance among the center of both circles is equal to DMAX .
57
4. AN ANALYTICAL MODEL FOR MULTI-HOP ROUTING
Now lets calculate the number of nodes covered by any given transmission, N (p)CS . This value
depends on DCS , the carrier sense range of the terminals, which is obtained by Equation 4.12.
Note that DCS ≥ DMAX due to Equation 4.7. The number of nodes blocked due to carrier sense,
DCS , follows naturally from NCS , as described in Equation 4.13.
D(p)CS = distProb
(P
(p)TX , PCS
)(4.12)
N(p)CS = δπ
(D
(p)CS
)2(4.13)
Next, we calculate the per-hop energy consumption and latency. For this purpose, we model
contention as follows.
4.3.2 Modeling One-Hop Contention
We model one-hop contention in order to derive the amount of energy time and energy spent
at each hop (T (p,m)h and E(p,m)
h in Equations 4.1 and 4.2, respectively).
First lets describe the IEEE 802.11 back-off mechanism. Stations will try to transmit a packet
up to m+ 1 times, stopping either when the packet is correctly received or when the maximum
amount of retransmissions is reached. The back-off consists of waiting for a random number of
idle slots B, drawn from the range [1, 2iW ], for 0 ≤ i ≤ m. This range is known as the contention
window. Time is slotted, and a station will transmit only after it has sensed B idle slots. Note
that the number of idle slots before transmitting doubles at every retransmission, in order to
cope with links having a high contention level.
Our model is an extension of the single-hop contention model presented in [110]. This model
assumes that time is slotted, and each station transmits with a certain probability at each slot.The
duration of the slots varies, in order to represent collisions and successful transmissions [110]. In
this model, the contention on IEEE 802.11 networks using the Distributed Coordination Function
(DCF) mode is modeled using Markov chains. It considers that nodes transmit with a constant
probability in each slot, and that the packet inter-arrival time follows a poisson distribution2.
This model does not take queueing delays into account, thus it would represent the steady state
when there are no queue build-ups.
2This formula assumes that the packet arrival process is memory-less, which is not the case in real networks,e.g. due to higher-level packet retransmissions in TCP. However, results in [110] show that this model is a goodapproximation of the performance of real WLANs.
58
4.3 THE ANALYTICAL MODEL
Under these conditions, the probability that a station transmits at a slot τ is given by the
system of equations presented in Equation 4.14. They were simplified from [110], since we do
not consider the capture effect. In this system of equations, Pu is the collision probability in a
slot, W is the size in slots of the initial contention window of 802.11, m is the maximum number
of retransmissions, and q is the per-slot probability of a station having a packet to transmit. We
will show later how to transform q into the rate of packets transmitted per second, λ.
τ =
2(1−2Peq)qq[(W+1)(1−2Peq)+WPeq(1−(2Peq)m)]+1(1−q)(1−Peq)(1−2Peq)
Pcol = 1− (1− τ)NCS −NCSτ(1− τ)NCS−1
Peq = Pcol + Pe|o − Pe|oPcol
(4.14)
There are three possible states of a slot in the transmitter side: an idle slot, a slot where the
transmission was successful and a slot when the transmission was not successful. Those states
occur with probabilities Pi, Ps and Pu, respectively. In this work we assume that transmissions
fail only due to collisions caused by hidden terminals or due to packet errors. The packet error
probability comes from the fact that in Equation 4.9 we assume that a routing algorithm will
choose links with a minimum reliability of Prec. In order to obtain those probabilities, we also
calculate: the probability of a transmission taking place (Pt); the conditional probability of only
one transmission given that transmissions occur (Po|t); the conditional probability of hidden
terminals given that only one transmission occurs (Ph|o), the transmission error probability
for a single transmission (Pe|o), which depends on hidden terminals and reception errors; the
probability of a transmission being unsuccessful due to collisions (Puc); and the probability of a
transmission being unsuccessful due to transmission errors (Pue). Figure 4.3 depicts the relations
of each of the probabilities calculated with the events that may happen in wireless transmissions.
59
4. AN ANALYTICAL MODEL FOR MULTI-HOP ROUTING
!"#$%&'(")*)+%+,$-&./0$-+-1&
2#%$&-%"3&.'+1&
4%"3-&
/(*5-6+--+"5&.'31&
7+##$5&
3$(6+5*%-&.'08"1&95$&-+5:%$&
3(*5-6+--+"5&.'"1&
;"%%+-+"5<&!=%,>%$&
3(*5-6+--+"5-&.'=?1&
/(*5-6+--+"5&
$(("(-&.@&A'($?1&
4=??$--B=%&3(*5-6+--+"5&.'-1&
Figure 4.3: Schema of the several types of events happening in a wireless transmission.
Pt = 1− (1− τ)NCS (4.15)
Po|t =NCSτ(1− τ)NCS−1
Pt(4.16)
Ph|o = 1− (1− τ)NHT (4.17)
Pe|o = (1− Prec) + Ph|o − (1− Prec)Ph|o (4.18)
Ps = PtPo|t(1− Pe|o) (4.19)
Pi = 1− Pt (4.20)
Puc = Pt(1− Po|t) (4.21)
Pue = PtPo|tPe|o (4.22)
Pu = Puc + Pue (4.23)
Note that we calculated two distinct collision probabilities: Pcol and Puc. Those are differentbecause the former models a transition probability in the markov chain, while the latter represents
the probability of a collision happening when NCS stations contend to access the medium. The
calculated probabilities distinguish our model from [110]. Daneshgaran et al. modeled networks
that are cliques, thus the collision probability depends only on the total number of neighbors.
However, on multi-hop networks the collision probability depends on the SINR at the receiver.
Note that, as a consequence, our model allows more than one transmission to take place at the
carrier sensing range of the transmitter.
Now lets calculate the number of slots that a station will wait before transmitting its data, S.
This value will be a function of the conditional probability of a successful transmission occurring
if a contention process is in place, PTX|C , as follows:
60
4.3 THE ANALYTICAL MODEL
S =1
PTX|C− 1 (4.24)
The value of PTX|C can be determined from the stationary probabilities of the markov chain
used to model contention. In the chain presented in [110], there are three types of states: the
state where nodes have no packets to transmit, bI ; the transmission states, bi,0, and the collision
and back-off states, bi,j , j 6= 0. Since 1− bI =∑∀i,j bi,j , we use the stationary probability of bI
(derived in [110]) and τ to calculate PTX|C , as shown in Equation 4.25.
PTX|C =τ
1− bI(4.25)
Note that limτ→0 S = W2 when Pe|o = 0. This confirms the intuitive result that, when there
is no contention and there are no transmission errors, stations should wait on average W2 idle
slots before transmitting.
Further, the station will have to wait, on average, S slots before transmitting. Out of those,
SPi will be idle, because all stations still have a non-zero contention counter; SPu will result in
unsuccessful transmissions and SPs will be successful transmissions from other stations. Thus,
the one-hop delay and energy consumption can be modeled as follows:
T(p,m)h = S(PuT (m)
u + PsT (p,m)s + PiTidle) + T (p,m)
s (4.26)
E(p,m)h = S(PuE(m)
u + PsE(p,m)t + PiTidleEi) + E(p,m)
s (4.27)
Equations 4.26 and 4.27 depend on the definition of the energy consumption and latency for
collisions, the correct transmission of a packet by other stations and the correct reception of a
packet. We differentiate energy consumed by the correct transmission of a packet by a given
station (Es) from the energy consumed when other stations transmit (Et). Es models the energy
consumed by the station that is sending the packet, while Et models the energy consumed by a
station listening to the packet. Those values are derived below based on the operation for the
IEEE 802.11 MAC layer.
Figure 4.4 shows a diagram of the message exchange of IEEE 802.11 stations. As defined in
the standard, there is an obligatory idle interval of TSIFS between frames of the same dialogue,
that is, the frames involved in the transmission of one data frame. For frames from different
61
4. AN ANALYTICAL MODEL FOR MULTI-HOP ROUTING
Transmitter
Receiver
RTS
CTS
DATA
ACKDIFS SIFS SIFS SIFSBack-off
Figure 4.4: Message exchange in the IEEE 802.11 standard when medium reservation is used.
dialogues, the idle time is larger (TDIFS). Stations not participating in a dialogue are only
allowed to send their data after the medium has been idle for a time interval of TDIFS .
The successful transmission time and energy consumption of a frame when no transmissions
occur are described by equations 4.28 and 4.29. We assume that the transmission time of all
control frames already includes the preamble, while we separate data frames into preamble and
payload in order to cope with the different modulation strategies. We count one propagation
time, Tρ, for each frame transmission.
T (m)s = TDIFS + TRTS + TCTS + Tpreamble +
L
R(m)+ TACK + 3TSIFS + 4Tρ (4.28)
E(p,m)s = (TRTS + Tpreamble +
L
R(m))E
(p)TX + (TCTS + TACK)ERX + (TDIFS + 3TSIFS + 4Tρ)Eidle
(4.29)
In both equations we assume that the transmission power of the frames is the same as the
preamble. Each unsuccessful transmission will incur in energy and delay penalties, which are
given by the equations below when medium reservation is used. The rationale behind those
equations is that a frame must be transmitted, and then a silence period (TDIFS seconds) must
expire to characterize a lost frame. Within this period, the receiver can be in idle for TSIFS ,
while for a period of TDIFS − TSIFS the station will stay in reception mode, waiting for the
reception of a CTS. After this period expires, the receiver identifies the transmission as failed.
Tu = 2TDIFS + TRTS + 2Tρ (4.30)
E(p)u = TRTSE
(p)TX + (TDIFS + TSIFS + 2Tρ)Eidle + (TDIFS − TSIFS)ERX (4.31)
Finally, energy consumption has a third component, which is the consumption when there
is a transmission, but the station is listening to the transmission, not transmitting. We assume
here that stations listen to all frames without turning off the radio for the duration of the NAV.
62
4.4 MODEL EVALUATION
E(m)t = (TDIFS + 3TSIFS + 4Tρ)Eidle + (TRTS + TCTS + Tpreamble +
L
R(m)+ TACK)ERX (4.32)
Now we calculate the network throughput. We use a modified version of Bianchi’s Equations
[119], by adjusting the probabilities to a multi-hop scenario. Still, the throughput is calculated
at a one-hop neighborhood. Equation 4.33 calculates the effective utilization of the medium.
U (m) =T(m)s Ps
T(m)s Ps + PuT (m)
u + PiTidle(4.33)
Part of this utilization, though, is used for control overhead (silent times, preamble and
medium reservation). The throughput ignoring control overhead is given by Equation 4.34:
X(m) =U (m)L
T(m)s
(4.34)
The equations presented above have as their primary input the parameter q, which is the
rate of packets being sent per slot. In order to convert q into a rate of packets per second, λ, we
use E[T ], the average slot duration, as shown in Equation 4.35.
λ =q
E[T ]=
q
T(m)s Ps + PuT (m)
u + PiTidle(4.35)
Although in this section we presented a model for IEEE 802.11 wireless networks, the pro-
posed formulation can be modified for other MAC standards. To do so, one must adapt the
MAC-specific formulations. Since most wireless MAC standards (without considering QoS con-
straints) employ a binary exponential back-off, the model can be quickly adapted by simply
rewriting Equations 4.26 up to 4.32.
4.4 Model Evaluation
This section presents the results obtained from the application of the analytical model over
two simple multi-hop scenarios. The evaluation was performed over Matlab, using the optimiza-
tion toolbox to solve the system of non-linear equations described in Equation 4.14. We start
this section by detailing the common characteristics of both scenario. This is followed by a more
complete description of each scenario as well as their respective results.
63
4. AN ANALYTICAL MODEL FOR MULTI-HOP ROUTING
4.4.1 Overall Scenario Description
In the evaluation scenarios we model a dense WiFi multi-hop network, where all nodes send
data at a uniform rate. Nodes are static, due to the limitations of the analytical model. Such
deployment could represent a mesh deployment, a sensor network based on WiFi devices, or a
static ad hoc network.
We analyze the end-to-end delay and energy consumption for sending one packet, as well as
the maximum throughput of a node. Node density was assumed to be a uniform distribution
having 0.001 nodes per square meter, a high node density (an area of 1km2 there would have
around 1000 nodes). The packet size was set to 1500 bytes, and the distance between the sender
and receiver was set to 1 km. We chose this distance in order to have a significant number of
hops (6 up to 17 hops, depending on the routing strategy used).
The analytical model was instantiated using PHY and MAC values based on a Cisco 802.11
a/b/g CardBus Wireless LAN card operating on 802.11a mode [108]. For packet transmission, we
assume that the energy consumed to transmit a packet with transmission power p can be broken
down into the output signal emitted (P (p)TX) and the consumption of the electronics (Eelec), as
shown in Equation 4.36.
E(p)TX = Eelec + P
(p)TX (4.36)
The consumption of the electronics is assumed to be constant, and was derived from the
energy consumption figures at the data-sheet of the radio. As a result, the energy consumption
of the radio is dominated by the Eelec component. The SINRs for each of the modulations of
802.11a radios were based on the values found in [126]. We assume that links are under Rayleigh
fading [16], with the attenuation component being calculated using the Two Ray Ground model
[16]. The characteristics of the radio are summarized in Table 4.2.
4.4.2 The Energy – Latency Trade-off
In this section we evaluate the energy-latency trade-off. Roughly, there are two design choices
in TPC and RA aware protocols: minimize the number of hops in order to increase the through-
put by using higher transmission powers, or reduce the energy consumption by reducing the
transmission power. This impacts the end-to-end delay, energy consumption as well as the
throughput of the network. To model this effect, we defined four rate and modulation pairs:
64
4.4 MODEL EVALUATION
Parameter ValueSINR for BPSK 1/2 (6 Mbps) 6.02 dBSINR for BPSK 3/4 (9 Mbps) 7.78 dBSINR for QPSK 1/2 (12 Mbps) 9.03 dBSINR for QPSK 3/4 (18 Mbps) 10.79 dBSINR for QAM16 1/2 (24 Mbps) 17.04 dBSINR for QAM16 3/4 (36 Mbps) 18.80 dBSINR for QAM64 2/3 (48 Mbps) 24.05 dBSINR for QAM64 3/4 (54 Mbps) 24.56 dBAverage medium noise -99 dBmCarrier sense threshold -96 dBmIdle consumption (Eidle) 0.6699WReception Consumption (ERX) 1.049WConsumption of the electronics (Eelec) 1.6787WTransmission Output Strength (P
(p)TX) [0.01, 0.013, 0.02, 0.025, 0.04] W
Attenuation model TwoRayGroundFading model Rayleigh
Table 4.2: Parameters of the PHY and MAC layers.
0.01
0.1
1
10-3 10-2 10-1 100 101 102 103 104
Aver
age
ener
gy c
onsu
mpt
ion
(J)
Packets per second (λ)
min(PTX), min(r)max(PTX), max(r)min(PTX), max(r)max(PTX), min(r)
Figure 4.5: Calculated energy consumption for varying packet arrival rates.
max(PTX),max(r)⇒ {p = 0.04W,m = QAM64 3/4}
max(PTX),min(r)⇒ {p = 0.04W,m = BPSK 1/2}
min(PTX),max(r)⇒ {p = 0.01W,m = QAM64 3/4}
min(PTX),min(r)⇒ {p = 0.01W,m = BPSK 1/2}
We vary the probability of queries per slot (λ) to assess the impact of those parameter choices
in the end-to-end performance. The packet reception probability was set to Prec = 0.9.
Figure 4.5 shows the energy consumption. There are three distinct moments in the curve.
65
4. AN ANALYTICAL MODEL FOR MULTI-HOP ROUTING
0.01
0.1
1
10-3 10-2 10-1 100 101 102 103 104
Aver
age
late
ncy
(s)
Packets per second (λ)
min(PTX), min(r)max(PTX), max(r)min(PTX), max(r)max(PTX), min(r)
Figure 4.6: Calculated latency for varying packet arrival rates.
0
5
10
15
20
25
10-3 10-2 10-1 100 101 102 103 104
Net
wor
k th
roug
hput
(Mbp
s)
Packets per second (λ)
min(PTX), min(r)max(PTX), max(r)min(PTX), max(r)max(PTX), min(r)
Figure 4.7: Calculated throughput for varying packet arrival rates.
Initially load is low, so the cost of packet transmission dominates the consumption. Hence, it
is better to transmit using less hops and a higher data rate. For increasing load the situation
changes, and it is best to transmit using lower transmission powers because contention starts to
dominate. Finally, the protocols stabilize since the medium is already at its maximum capacity.
In this situation, due to the significant amount of stations being blocked by the use of a high
data rate, it is better to transmit using lower data rates. The same tendency is observed in the
end-to-end latency, as shown in Figure 4.6.
We also analyze throughput, using the maximum capacity of a single hop region, using
Equation 4.34. Results are shown in Figure 4.7. First lets look at the effect of the modulation.
Higher modulations will obviously have a higher throughput, however this throughput quickly
drops with increasing values of λ. The high SINRs required for achieving a high data rate are
the cause, since this increases the susceptibility to interference. We also identified that the
throughput peaks before arriving at the stationary state when congestion is high. This behavior
is similar to the observations of previous work [110, 119] in the context of cliques.
66
4.4 MODEL EVALUATION
0.01
0.1
1
0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0Aver
age
ener
gy c
onsu
mpt
ion
(J)
Prec
q=10-6
q=10-5q=10-4
q=10-3q=10-2
q=10-1
Figure 4.8: Calculated energy consumption for varying link error rates.
0.01
0.1
1
0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0
Aver
age
late
ncy
(s)
Prec
q=10-6
q=10-5q=10-4
q=10-3q=10-2
q=10-1
Figure 4.9: Calculated latency for varying q for varying link error rates.
Regarding the transmission power, we identify that lower transmission powers shift the max-
imum throughput point to the right. This occurred because fewer stations are contending to
access the medium with a smaller transmission power. Although fewer stations are concerned,
the maximum throughput did not change with the transmission power. We believe that this is
due to the fact that we model radios with homogeneous characteristics, hence the amount of
interference also increases with the transmission power.
4.4.3 Varying Link Quality
Another important factor in network performance is link quality, which will influence the
amount of retransmissions required. To this purpose, we varied Prec, and fixed p = 0.01W
and m = QAM64 3/4. We evaluated the effect of link reliability under different packet sending
probabilities (q). In this section, results are shown as a function of q instead of λ, since different
error probabilities will yield different values of λ for the same q. Node density was 0.001 nodes
per square meter.
67
4. AN ANALYTICAL MODEL FOR MULTI-HOP ROUTING
0
5
10
15
20
25
0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0
Net
wor
k th
roug
hput
(Mbp
s)
Prec
q=10-6
q=10-5q=10-4
q=10-3q=10-2
q=10-1
Figure 4.10: Calculated throughput for varying q for varying link error rates.
Figures 4.8 and 4.9 show the average energy consumption and latency, respectively. All curves
present steps marking changes in the number of hops. In order to increase link reliability, nodes
choose receivers that are closer to themselves, and hence increasing Prec tends to produce larger
routes. For loads from q = 10−6 up to q = 10−3, the response time and energy consumption
decrease for larger values of link reliability up to around 80%, and then both metrics start to
increase again. This occurs because in the first moment the effect of link errors is quite high,
requiring a significant amount of retransmissions. A higher reliability reduces the amount of
retransmissions and, as a consequence, the response time and the energy consumption decline.
The second regime of the curve occurs because collisions take less medium time than a successful
packet transmission: the former require only the time to transmit an RTS. That explains the
rise on both metrics for high link reliability. For q = 10−2 and q = 10−1, the network is past its
congestion point. As a consequence, a higher link reliability increases the probability of packets
being correctly received, reducing the amount of retransmissions. As a consequence, the amount
of idle slots increased up to one order of magnitude. Those variations are due to the number of
hops. However, for λ = 10−4, the energy consumption and delay decrease significantly between
each step with higher values of Prec. In this case, the retransmissions due to packet errors must
also cope with collisions, increasing the number of retransmissions and hence the performance
penalties.
Next we analyzed the throughput of the network, shown in Figure 4.10. For values of q
from 10−6 up to 10−3, the network is not congested, and as such only link error acts on the
performance of the network. At first, the lowering the link error rate decreases the amount of
retransmissions, improving the throughput. Next, for too high link qualities, the amount of hops
traversed climbs sharply, and the network enters a congested state for q = 10−4 and q = 10−3.
68
4.5 CONCLUSIONS
This was verified by the increase of the number of retries before a successful transmission. For
networks operating with q ≥ 10−2, congestion plays a more significant role. For those networks,
the amount of slots being used with transmissions is already near 90%, most of them being
collisions. Thus, any improvement in link quality is felt in the throughput, since it reduces the
already high amount of packet collisions.
This scenario showed that link quality must be considered with attention. If a protocol
prioritizes only very reliable links, it risks building long routes. At the same time, the effect of
increasing the reliability of a link varies with the load. For quite congested networks, reliable
links will improve the performance of the network, however for light traffic loads, the increase in
hops due to the higher link reliability may be prohibitive. In this case, it is best to profit from
the retransmission mechanisms of CSMA/CA MAC protocols.
4.5 Conclusions
Wireless links are highly dynamic, varying over time and space. Two parameters of the
physical layer, the transmission power and the data rate, can be controlled by higher layers,
in order to tune the performance and reliability of the links. However, due to the complex
interactions among nodes, node mobility, interference and other factors, it is very hard to predict
the impact of changing the transmission power or the data rate over wireless multi-hop networks.
This chapter presented an analytical performance model of wireless multi-hop networks in
an effort to estimate the impact of TPC and RA techniques. This model calculates the average
value of end-to-end metrics as well as link metrics, providing a glimpse on the performance
perceived by the end-user. The objective of this model is to provide a simple and fast tool for
protocol and application developers, which can test the impact of changes in the modulation
and transmission power on the performance of wireless services. The model considers different
phenomena occurring in wireless communication, such as contention, lossy links, and hidden and
exposed stations.
Future work will refine the interference calculation, which is now considered static. The
amount of interference should vary with the transmission power and sending rate, thus networks
with a low data traffic will have more reliable links. Further, we will validate the model by
comparing its results against simulation results.
69
4. AN ANALYTICAL MODEL FOR MULTI-HOP ROUTING
70
Chapter 5
Transmission Power and Data RateAware Routing
Routing in wireless multi-hop networks must take into account the link-layer characteristics.
Two key features of the wireless links are the transmission power and the data rate, which are
dynamically adapted by the MAC layer. Routing algorithms should be aware of the transmission
power and data rate of the links, since this information could lead to paths consuming less energy,
having a higher throughput and with a reduced end-to-end delay. No existing protocol considered
both the data rate and the transmission power at the same time. This chapter presents routing
enhancements in order to make existing protocols aware of the transmission power and the data
rate. The proposed enhancements are quite generic, and thus could be applied to most protocols.
This chapter is organized as follows. Section 5.1 motivates the creation of a transmission
power and data rate routing protocol. Section 5.2 surveys how existing protocols cope with
variable transmission powers and data rates. Our routing enhancements are detailed in Section
5.3. The simulation setup used in the performance evaluation is described in Section 5.4. The
results and their analysis are presented in Section 5.5. Finally, Section 5.6 concludes the chapter,
showing the closing remarks and the research perspectives.
5.1 Introduction
Routing is one of the most important tasks of wireless multi-hop networks due to the high
variability of wireless links. Routing algorithms have to cope with external causes of configuration
changes such as node mobility, link quality variations, and node connections and disconnections.
71
5. TRANSMISSION POWER AND DATA RATE AWARE ROUTING
Further, routing must also consider the internal configuration changes that occur at the
MAC and physical layers. As we have described in the previous chapter, wireless networks can
vary both the transmission power and modulation of links. Rate adaptation and transmission
power control are usually performed at the MAC layer [19, 20, 111, 127–130]. However, both
characteristics must be taken into account in routing. Paths using links with high data rates may
provide a higher end-to-end throughput and lower delays, while choosing links having a smaller
transmission power may reduce the contention, delay and energy consumption on the network.
TPC and RA-aware routing protocols are naturally cross-layer. Those protocols require in-
formation from the physical, MAC and application layers. This information comes not only from
the current node, but from all the nodes of the path as well. Moreover, those protocols must also
be self-configuring, since the data rate and the transmission power of the links change regardless
of the routing decisions taken. Thus, transmission power and data rate routing adaptions could
benefit from information collection and sharing middlewares such as MANIP. Such middlewares
would lower the cost of collecting data concerning the data rate and the transmission power, and
the use of a single primitive to look for internal and external data would simplify the interaction
among protocols.
To date, existing routing algorithms take into account either the transmission power or the
data rate. Several TPC-aware routing algorithms have been proposed [83, 99, 131], while data-
rate aware algorithms are less explored [49]. One of the reasons for a lack of both features
in routing protocols is the complexity of choosing the best path when links are both TPC-
and RA-aware. Take, for example, the action of increasing the throughput of a path by using
links with higher data rates. To achieve the demanded SINR, it may be necessary to boost the
transmission power, which in turn may increase the contention. As a consequence, the throughput
may actually reduce due to more collisions. Moreover, the impact of such configuration changes
depends on other factors, such as the amount of interference, the number and density of stations.
This chapter proposes routing enhancements in order to cope with varying transmission power
and data rates provided by MAC-level self adaptation algorithms. Our enhancements are based
on the conclusions of the analytical model presented in Chapter 4, and consist of two parts. The
first part is a MAC-level module that supports the calculation of the transmission power and data
rate of a neighborhood in a scalable way. In the second part of our enhancements, we employ
the information from the MAC module to improve the routing metric, adding the data rate and
transmission power of each link into the path selection process. The proposed enhancements are
implemented using MANIP primitives, in order to make the implementation more modular and
72
5.2 RELATED WORK
to reduce the communication overhead. We compare our solution against existing TPC-aware
protocols ClusterPOW [83], CONSET [131], and a traditional implementation of DSDV.
5.2 Related Work
Rate adaptation is commonplace in the existing high data rate wireless standards. The IEEE
802.11 standards a, b, g and n define several data rates, which change dynamically according to
medium conditions. The algorithm used in this change has not been defined, and as such several
proposals exist in the literature [19, 130, 132–134]. The IEEE 802.16 standard, similarly, defines
a range of possible data rates, which may change every 80 milliseconds [135].
Unlike the data rates, which are defined by each of the wireless standards, the transmission
powers are usually left unspecified. Generally, the maximum output power of the transceivers
in each frequency is defined by regulating agencies of each country (i.e. the FCC [136] in the
United States, the ARCEP [137] in France, ANATEL in Brazil [138]). Hence, the support of
several transmission power levels varies for each manufacturer and wireless card. In Wireless
sensor networks, the CC2420 [139] (implementing the IEEE 802.15.4 standard) and CC1000
[140] radios allow up to 15 different transmission powers. Similarly, a handful of transmission
levels are available in most IEEE 802.11 cards (i.e. the Cisco Aironet family [108]).
A number of TPC techniques for the MAC layer have been proposed [20, 127, 128]. Such
solutions are limited to a single hop and focus only on energy consumption, ignoring end-to-
end latency and throughput. The same happens to rate adaptation, which has a plethora of
adaptation protocols based on the MAC layer [19, 111, 129, 130]. Only recently TPC and RA have
been treated jointly in the MAC layer, but existing solutions usually employ costly minimization
models [112, 113, 126, 141]. MiSer jointly adjusts the data rate and modulation of links [141]. It
solves a set of recursive equations, where the number of stations, the propagation model and the
collision probability must be provided. Further, MiSer cannot adapt its behavior to a variable
number of stations. Akella et al. propose extensions to classic rate adaptation algorithms to
take the transmission power into account, however it is applicable only to structured WLANs
[142]. Our work is complementary to such efforts, since we focus on the routing level. While
MAC-level protocols would adjust the transmission power and data rate of each link, the routing
protocol would create routes using the best links.
The CONSET protocol presents a new approach to TPC, being a “2.5” layer solution [131].
CONSET limits the neighborhood of a node to those necessary to keep each node connected, mak-
73
5. TRANSMISSION POWER AND DATA RATE AWARE ROUTING
ing routes more energy-efficient by using only low-power links. CONSET’s reliance on broadcast
packets, though, reduces its performance on networks with rate adaptation. Broadcast packets
may select links with low data rates, since the SINR is enough to receive the broadcast packet,
however it is not high enough to receive higher data rates.
Routing protocols, in the other hand, have considered either TPC or RA at a time [83,
99]. Kawadia and Kumar proposed ClusterPOW and other TPC-aware routing protocols to
reduce the energy consumption of MANETs [83]. Those protocols execute several instances of
a routing algorithm, one for each available transmission power. Each instance calculates its
routes independently, and the route chosen to forward data is the one that employs the smallest
transmission power level. This strategy demands a high amount of energy due to the execution
of several instances of the routing algorithm. Further, their protocols do not support multiple
modulations.
An improved data rate can also be achieved indirectly by routing metrics considering link
quality [49], since more reliable links usually have higher SINRs. De couto et al. proposed
the ETX (expected transmission count) routing metric, which considers the reliability of a link
[48]. The WCETT (Weighted Cumulative Expected Transmission Time) metric adds data rate
and multiple channel support to ETX [49]. WCETT has several limitations on RA- and TPC-
aware networks. WCETT may be misleading with multiple data rates and transmission powers,
since it ignores that different data rates require different minimum SNRs. As a consequence, a
reliable link at the modulation used for broadcast packets of ETX may not be as much reliable in
other modulations. Moreover, the transmission power is not taken into account in the expected
transmission count or in the bandwidth assessment algorithms.
5.3 TPC and RA Routing Enhancements
This section presents our TPC- and RA- aware routing extensions for multi-hop wireless
networks. Our solution has two parts, the scalable assessment of the transmission power and
data rate of each link (detailed in Section 5.3.1) and the use of this information in the routing
metric (presented in Section 5.3.2). The proposed extensions in the routing metric take into
account the analytical results obtained in Section 4.4.
74
5.3 TPC AND RA ROUTING ENHANCEMENTS
5.3.1 Assessing the Ideal Transmission Power and Modulation
To build transmission power and data rate aware routes, the routing protocol will require
a long-term assessment of the minimum transmission power and data rate for all nodes in a
neighborhood1. We developed MAC-level TPC calculations to identify the transmission power
and modulation for all nodes in radio range of the transmitter. The proposed algorithm assesses
the long-term probable modulation and transmission power for each link. In order to calculate
the link parameters for the highest number of nodes at the same time, nodes broadcast their
messages using the maximum transmission power of the radio. This process is repeated at discrete
time intervals. Thus, we assume that the update interval is frequent enough to cope with node
mobility.
Figure 5.1 illustrates the message dialogue of the algorithm for a communication among
three nodes. This communication is used to disseminate the calculated transmission power and
modulation, which is described in Algorithm 2. Suppose that nodes A, B and C wish to identify
the transmission power and modulation from one another. First, nodes broadcast a message
using a known (or informed) transmission power and modulation. The other nodes calculate the
minimum transmission power and maximum modulation from the sender to themselves using
this message. In the figure, nodes A, B and C send broadcast messages. Note that the three
first messages have an empty transmission power table (an empty gray box).
Take, for example, the first message broadcast by node B. Node A will calculate and store (C
in the figure refers to calculate, while S refers to store) the transmission power and modulation
from B to A, while node C will calculate and store the best transmission power and modulation
from B to C, using Algorithm 2.In this way, the next message from A will contain the recently
calculated transmission power and modulation pairs. This message will also include the trans-
mission power and modulation from B to A (PBA and MBA, respectively), thus node B will
store this pair upon receiving the message from node A. Further, after the second broadcast, all
nodes should possess the ideal transmission power and modulation to reach their neighbors.
The determination of the ideal transmission power, PTX , is performed using the character-
istics of the wireless medium and the reception power (PRX) of frames of the communication
dialogue presented above. The equations are based on the nature of wireless communication, as
explained in Section 4.3.1.
1We assume that a MAC-level algorithm, e.g. AARF, RBAR or others [19, 111, 129, 130], will adjust thetransmission power and modulation of each active link in real-time.
75
5. TRANSMISSION POWER AND DATA RATE AWARE ROUTING
C&S(PAB,MAB) C&S(PAC,MAC)
C&S(PBC,MBC)C&S(PBA,MBA)
C&S (PCA,MCA) C&S(PCB,MCB)
C&S(PAB,MAB)S(PBA,MBA)
C&S(PAC,MAC)S(PCA,MCA)
PBA,MBAPCA,MCA
C&S(PCB,MCB)S(PBC,MBC)
C&S(PCA,MCA)S(PAC,MAC)
Node BNode A Node C
PAC,MACPBC,MBC
Figure 5.1: Dialogue for the determination of the transmission power and modulation.
Equations 4.3 and 4.4 described in Section 4.3.1 can be used in MAC-level protocols to calcu-
late the instantaneous condition of links. In routing, however, we need a longer-term assessment
of the parameters of the link. Thus, we must take into account varying interference, signal fading
due to movement, diffraction and reflections that the signal may be subject to in a longer time
period [16]. We address this problem by using pessimistic smoothed values of the interference
(PI) and gain (RG) in those two equations. Both signals are averaged using an exponentially
weighted moving average (EWMA) function. The smoothed values at measurement k of medium
interference (P ∗I,k) and gain (R∗G,k) are defined in Equations 5.1 and 5.2, respectively.
P ∗I,k = max(P ∗I,k−1, PI,k)ω +min(P ∗I,k−1, PI,k)(1− ω) (5.1)
R∗G,k = min(R∗G,k−1,RG,k)ω +max(R∗G,k−1,RG,k)(1− ω) (5.2)
The weight ω is such that 0.5 < ω < 1.0, so pessimistic values will dominate over optimistic
ones in the calculation. This ensures that the calculation estimates the signal power based on a
worst-case scenario with high interference and low gain. Further, Equations 5.1 and 5.2 reduce
the need of considering signal quality at the routing level, as is the case in ETX and WCETT
[48, 49].
Using equations 4.3, 4.4, 5.1 and 5.2 we developed Algorithm 2 (instantiated in the Algorithm
for IEEE 802.11a networks) to estimate a feasible long-term transmission power and data rate of
76
5.3 TPC AND RA ROUTING ENHANCEMENTS
each link. The algorithm identifies the transmission power and modulation pair that maximizes
the data rate and minimizes the transmission power, always prioritizing higher data rates over
transmission power (lines 5-10 of the Algorithm).
Due to the use of pessimistic estimations of the interference and gain, the algorithm provides a
lower bound estimation on the achievable throughput and transmission power employed during
long timer intervals. This does not exclude per-frame adjustments of the transmission power
and modulation, because our enhancements are compatible with with MAC-level TPC and RA
adaptation protocols (e.g. RBAR, AARF and others [19, 111, 129, 130]).
Algorithm 2 Finding the transmission power with RA.1: function calculateTxPowerDataRate(PTX , PRX , Noise)2: RG,k ← PRX
PTX; # Instantaneous gain
3: R∗G,k ← min(R∗
G,k−1,RG,k)ω +max(R∗G,k−1,RG,k)(1− ω); # Avg. gain
4: P ∗I,k ← max(P ∗
I,k−1, PI,k)ω +min(P ∗I,k−1, PI,k)(1− ω); # Avg. interference
5: for rate← 54Mbps downto 6Mbps do6: for txpow ← minTxPow upto maxTxPow do7: rxpower ← Ptxpow ×R∗
G,k;8: sinr ← rxpower
PNoise+P∗I,k
;
9: if sinr ≥ R(m)SNIR ∧ rxpower ≥ PCS then # Checking Eqs. 4.3 and 4.4
10: return [txpow, rate];
Since the calculation of the transmission power requires periodic message broadcasts, our
solution is not recommended for networks where the amount of traffic is low. In such networks,
data transmissions are rare, thus nodes stay silent or dormant for most of the time. In such
situations, periodic messages would significantly increase the energy consumption of the network,
and dormant nodes would not participate in the calculation. Thus, the calculation should be
performed on demand, as we plan to explore in future work.
5.3.2 Building TPC- and RA- Aware Routes
Besides calculating the ideal transmission power and modulation of each link, the RA- and
TPC-aware improvements also require adaptations in the routing minimization strategy. We
do not modify the messages exchanged by the routing protocols, only the routing metric. As
a consequence, our enhancements could be applied to any link state or distance vector routing
protocol. In our enhancements, the cost of a path (Pij is the set of links) should consider the
tuple [datarate, length, power], where:
77
5. TRANSMISSION POWER AND DATA RATE AWARE ROUTING
!""#$%&'(")*+(
!,-#$%&'(")*+(
!./#$%&'("0)*+(
!-1#$%&'("0)*+(
!,-#$%&'("0)*+(
!,-#$%&'("0)*+(
!-1#$%&'("0)*+(
Figure 5.2: Example routes (represented by arrows). The dashed route is selected due to itshighest throughput.
datarate = min(dataratep) ∀p ∈ Pij ; (5.3)
length = |Pij |; (5.4)
power =∑
p ∈ Pij
P(p)TX ; (5.5)
Both power and datarate values for each link come from the calculations described in Section
5.3.1. The power parameter is the sum of the transmission power, in Watts, used in each link.
The objective of this parameter is to decrease the overall transmission power of a path in order
to reduce contention. Instead of aggregating the data rate at each hop, we define the data rate
attribute as the minimum link data rate of the path because the throughput will be limited by
the data rate of the slowest link. Finally, the routing metric should include the minimization of
the following parameters, in the order shown in Equation 5.6.
min
(1
datarate, length, power
)(5.6)
Figure 5.2 exemplifies the application of the routing metric. Using Equations 5.3, 5.4 and
5.5, the first candidate path (the solid arrows) requires [11Mbps, 3, 12mW ]. The second path,
represented by the dashed arrows, demands [48Mbps, 4, 40mW ]. Using Equation 5.6 to order
the candidate paths, the second path comes up as the best path. Although the first path has
three hops, the one with four hops is selected because it improves the throughput, which is the
first term of the minimization function.
This routing metric prioritizes the data rate, followed by path length and in the last place
78
5.4 SIMULATION SETUP
the transmission power. This metric was devised based on the analytical results of Section
4.4.2, which showed that it is more important to maximize the data rate than to maximize the
transmission power. Further, the model showed that routes minimizing the amount of hops will
perform better than routes minimizing energy consumption, as it has been found in previous
work [143].
Prioritizing the dat rate may at first seem to increase energy consumption since higher data
rates require a higher SINR. Since the transmission power is only a fraction of the energy con-
sumed by the radio, the consumption increases slightly in order to achieve a higher SINR. This
is due to the energy model used in the evaluation, which is presented in Section 5.4. Although
increasing the transmission power to reach higher data rates may increase the number of con-
tending stations and the amount of interference, the contention is reduced. First, the time to
transmit frames will be diminished, as well as the amount of retransmissions due to a higher link
quality.
The last conclusion obtained in the analytical model presented in Chapter 4 was that routes
should use high link quality links. Unlike the ETX and WCETT metrics [48, 49], our mini-
mization function does not explicitly take link quality into account. However, link quality is
implicitly added into the routing metric by calculating the transmission power and data rate
over pessimistic channel conditions.
5.4 Simulation Setup
This section presents the configuration of the simulations, performed over NS-2 version 2.33.
We used the IEEE 802.11a MAC and PHYmodels developed in [144], which model packet capture
during preamble and payload reception, support additive gaussian interference and decouple the
reception of the preamble and payload, making it possible to receive the preamble but not
to receive the payload, as in real networks. Those modules, however, do not simulate all the
protocols and phenomena related to TPC and RA. Thus, we improved the implementation of
the MAC and PHY modules as follows.
5.4.1 Improvements to the Simulator
Due to limitations of the NS-2 simulator, several improvements were performed in order to
correctly simulate the PHY and MAC layers. Those improvements, which are described below,
79
5. TRANSMISSION POWER AND DATA RATE AWARE ROUTING
were validated in simple single hop scenarios (please refer to the technical report [145] for details
on the validation). The following changes were necessary to the simulator:
Energy consumption: The original module did not calculate the energy consumed, since it
was not within the aims of the authors. Thus, we implemented ourselves the support for energy
consumption. Nodes have different energy consumption for idle, reception and transmission
modes, and the consumption for the transmission varies with the transmission power. We do not
simulate the switching times from one mode to another.
PER-based packet reception: In the original implementation, the packet reception prob-
ability does not vary with the size of the frames. Thus, we use the SINR of the frame, its size and
the modulation scheme employed to approximate the probability of the correct reception (the
Packet Error Rate – PER). This probability is based on traces of real nodes from [146]. Thus,
longer frames will have a smaller probability of being correctly received. The same happens with
packets received with a low SINR.
Ricean propagation model: The radio propagation models within NS do not consider
fading. We added the Ricean model, which considers slow fading, that is, signal variations due
to mobility of objects around the sender and receiver. We use the implementation of the Ricean
model described in [109], once it provides a temporal correlation of the fading signal. We did
not simulate fast fading (due to the mobility of the sender and receiver) because of the lack of
temporal correlation on existing implementations, which is very important to the stability of the
modulation and transmission power adaptation algorithms. Without this correlation, we would
have severe performance degradations due to unrealistic signal variations.
Automatic rate adaptation: We modified the MAC layer to support automatic rate adap-
tation. We implemented the following algorithms: AARF [130], RBAR [19], AARFP, RBARP.
AARF and RBAR are classic protocols, while AARFP and RBARP are simple extensions for
the support of multiple transmission powers. AARFP and RBARP thus attempt to minimize
energy consumption by using smaller transmission powers, without penalizing the throughput
on the wireless links. Thus, the transmission power is always at the maximum if the modulation
used does not provide the maximum throughput, and the transmission power is reduced only if
the link can use the modulation with the highest throughput. As an example, if we have a link
using 48 Mbps on a 802.11a network, we will try to increase the transmission power to achieve
54Mbps. Meanwhile, if we can attain 54Mbps, then we will try to decrease the transmission
power to save energy and reduce contention.
80
5.4 SIMULATION SETUP
Parameter ValuePreamble capture ratio 5 dBPayload capture ratio 5 dBPropagation model Ricean, K = 13 dBSmoothing weight (ω) 0.8
Table 5.1: Additional parameters of the simulated radio (complement of Table 4.2.)
TPC-aware protocols: We use the original implementation of the TPC-aware protocols
proposed by Kawadia and Kumar [83], together with our own implementation of CONSET [131].
5.4.2 Simulation Characterization
The parameters of the physical and MAC layers are similar to those used in the evaluation of
the analytical model (Section 4.4), except for some improvements. Instead of using the Rayleigh
fading model, which is suitable for static networks, we employ the Rice fading model. Further,
we activate packet capture. As a consequence, if an incoming frame arrives at a power that is
higher than the one of the current receiving frame, the radio will start to receive the new frame
and discard the other one, in order to try to recover from what would be a collision [144]. In the
MAC layer, we use algorithms to dynamically adapt the transmission power and the data rate
of individual links. We chose RBARP, a receiver-based adaptation algorithm, since it should
present smaller degradations due to collisions than transmitter-based algorithms [129]. RBAR
considers the noise and interference seen on the RTS/CTS dialogue, and as such should suffer less
biases from collisions. We instantiated our transmission assessment algorithm using a smoothing
weight ω = 0.8. The additional PHY and MAC parameters are listed in Table 5.1.
The proposed MAC and routing modifications require the cooperation of routing, MAC and
physical layers, thus we employ MANIP to simplify their implementation. MANIP is used for
two functions in this work. First, we aggregate control data from PHY, MAC and routing layers
using a single message, reducing the load in the network. Second, we use MANIP to store shared
information, such as the smoothed gain and interference, the reception power of packets and
the calculated transmission power and modulation of each link. This simplifies the sharing of
MAC-level information (the ideal transmission power and data rate of each link) with routing
(the routing metric). Finally, we use MANIP events to identify nodes leaving the neighborhood,
which trigger route reconstructions.
Algorithm 3 summarizes the interaction of IEEE 802.11 and our enhanced version of DSDV
(called DSDV-TPCRA) with MANIP. Whenever a MANIP packet arrives, the MAC layer calcu-
81
5. TRANSMISSION POWER AND DATA RATE AWARE ROUTING
Algorithm 3 Interaction of protocols with MANIP.1: class 802.112: function arrivingPacket(P )3: RxPower ←MANIP.getRxPwr()4: MANIP.TxPwr ← calculateTxPwr(P.TxPwr,RxPwr, P.dataRate)5: lastPacket[P.address]← time()
6: function purgeOldTxPwr( )7: foreach n in lastPacket do8: if time()−MAXIMUM_LIFETIME > n then9: MANIP.changedState(n,UNREACHABLE)
10: class DSDV_TPCRA11: function arrivingPacket(P )12: updateRoutes(P )
13: function arrivingChange(event, nodeAddress)14: if e = UNREACHABLE then15: invalidateRoutes(nodeAddress)
lates the ideal transmission power. In order to do so, it accesses the radio to obtain the reception
power of the packet. Next, the ideal transmission power and modulation are stored in MANIP.
The MAC layer also updates the last time a packet coming from this node has been seen. This
information is used by the function purgeOldTxPwr to create MANIP events when a node is
unreachable. This function verifies if packets (routing, data, or control) have not been received
from this node for a pre-specified amount of time. Whenever this happens, the MAC layer gen-
erates a MANIP event that is subscribed by the routing layer, which invalidates all routes that
depend on the unreachable neighbor, scheduling route update requests.
We compare DSDV-TPCRA against the original implementation of ClusterPOW, one of the
TPC-aware protocols proposed by Kawadia and Kumar [83] and our implementation of CONSET
[131] under DSDV. All implementations are based on DSDV. Although DSDV is not the most
performing routing protocol for wireless networks, the choice of a single protocol as a base
implementation simplifies the comparison of the different routing metrics: DSDV-TPCRA with
its TPC and RA routing metric; ClusterPOW using a TPC-aware metric; CONSET using least
hop count metric over topology control; and DSDV using least hop count.
The simulations employ the random waypoint mobility model. We use this model because it
is more customizable than existing mobility models for VANETs or MANETs [147–149]. We do
not employ traces because the available ones are based on a small amount of nodes, and as such
the resulting topology tends to be DTN-like.
82
5.5 RESULTS
5.5 Results
This section presents the simulation results. All values shown are averaged over 60 indepen-
dent simulations and plotted with a confidence interval of 99%. We evaluate three scenarios: the
effect of varying node density; the performance variations due to mobility; and a scenario with
varying link quality.
5.5.1 Node Density Scenario
In this scenario, fifty nodes are placed on a rectangular region, where the height is half
of the width (e.g. 2 km x 1 km, 4 km x 2 km), in order to increase hop counts. Forty-four
nodes are randomly placed and mobile, while six nodes (the senders and receivers of three data
flows) are static. This configuration allows us to increase the contention when the size of the
area decreases, and enlarge the distance among nodes when the size of the area is increased.
The evaluated scenario models a multimedia application. There are three flows in the network,
based on traces of video streams encoded with H.263 at 256kbps [150]. Nodes move following
the random waypoint mobility model, with an average speed of 2m/s. In order to maximize
the number of hops traversed by each packet, the senders and receivers are in opposite corners.
The simulations last 400s, allowing all flows to reach by far a stationary state. All protocol
parameters were empirically tuned to this scenario.
The average throughput of the flows is shown in Figure 5.3. DSDV-TPCRA performs the
best, due to its use of higher data rate routes. DSDV-TPCRA achieved an improvement of up to
50kbps over the other protocols, showing the benefits of its routing decisions. Figure 5.4 presents
the average data rate. ClusterPOW achieved the best performance. This is because using more
hops, in general, leads to links with higher data rates, since intermediary nodes will be closer to
one another. Although ClusterPOW presented a high data rate, its throughput was quite similar
to that of DSDV and CONSET, due to its high routing overhead. Since ClusterPOW does not
take the modulation into account, the minimum data rate of the path may be smaller than that
of DSDV-TPCRA, as shown in Figure 5.5. Still, DSDV-TPCRA has a better performance, since
the minimum data rate determines the throughput of a path.
Even though CONSET builds low energy routes, its choices were quite similar to DSDV’s.
CONSET considers the final energy consumption, not the transmission power, to define its
neighborhood. CONSET operates as follows: if a certain neighbor node N1 can be reached via
another neighbor (e.g. N2) with an energy consumption lower than that of the direct route,
83
5. TRANSMISSION POWER AND DATA RATE AWARE ROUTING
0
50
100
150
200
250
0.18 0.32 0.5 0.72 0.98 1.28 1.62 2
Aver
age
thro
ughp
ut (k
bps)
Network area (km2)
DSDVDSDV-TPCRA
CLUSTERPOWCONSET
Figure 5.3: Throughput: density scenario.
20
21
22
23
24
25
26
27
28
29
0.18 0.32 0.5 0.72 0.98 1.28 1.62 2
Aver
age
data
rate
(Mbp
s)
Network area (km2)
DSDVDSDV-TPCRA
CLUSTERPOWCONSET
Figure 5.4: Data rate of a path: density scenario.
N1 is removed from the neighbor list. Once the highest transmission power consumes only 1 to
2% more than the lowest one (values derived from Table 5.1), CONSET will rarely reduce its
neighborhood, and thus it performs similarly to DSDV.
Regarding energy consumption, depicted in Figure 5.6, DSDV-TPCRA consumed less energy
than the other protocols for dense networks, while for scenarios with a lower density (a network
area of more than 0.98 km2) all protocols performed similarly. This happened mostly due to
the cost of building routes, which is almost the same for all protocols in networks of more than
1.28 km2. ClusterPOW came in second, since it tries to reduce the transmission power, and
hence the amount of contention on the network. CONSET was the third less energy consuming
protocol, since it reduces the transmission power only when link energy consumption will be
reduced. The comparison of ClusterPOW and CONSET shows the benefits of decreasing the
transmission power to reduce contention.
Figures 5.7 and 5.8 present results for average latency and jitter, respectively. Those two
metrics are important for multimedia traffic. Average latency determines when the user may
start the playback of the media and the interactivity of a two-way communication, while jitter
84
5.5 RESULTS
10
11
12
13
14
15
16
17
18
0.18 0.32 0.5 0.72 0.98 1.28 1.62 2
Min
imum
dat
a ra
te (M
bps)
Network area (km2)
DSDVDSDV-TPCRA
CLUSTERPOWCONSET
Figure 5.5: Minimum data rate of a path: density scenario.
270
280
290
300
310
320
330
0.18 0.32 0.5 0.72 0.98 1.28 1.62 2
Aver
age
ener
gy c
onsu
med
(J)
Network area (km2)
DSDVDSDV-TPCRA
CLUSTERPOWCONSET
Figure 5.6: Energy consumption: density scenario.
determines sound and image quality (once it is the responsible for skips due to frames received
after their deadline). Both ClusterPOW and DSDV-TPCRA performed the best, reducing av-
erage latency and jitter by at least one order of magnitude when compared to DSDV and to
CONSET. DSDV-TPCRA performed a bit worse than ClusterPOW for larger areas. We believe
that this is due to the higher throughput of DSDV-TPCRA, which introduces more delays since
there could be more packets in the queues of each intermediary node.
An important source of delays in routing is route breaks, once packets queue up at the
extremities of the “broken” link up to the moment when a new route is established. The use of
data rate and transmission power adaptation algorithms at the MAC layer create false broken
route events in routing. Take, for example, trial and error adaptation algorithms such as ARF
and its derivations [130]. Those protocols send packets from time to time using a more spectrum
efficient modulation to test the medium. Those packets are frequently lost when the link is
already operating at its highest achievable modulation. In those situations routing tends to
think that the link is broken, invalidating the route and sending route discovery packets. Those
actions increase the delays in the network, as more control packets increase contention for packets
85
5. TRANSMISSION POWER AND DATA RATE AWARE ROUTING
10
100
1000
10000
100000
0.18 0.32 0.5 0.72 0.98 1.28 1.62 2
Aver
age
late
ncy
(ms)
Network area (km2)
DSDVDSDV-TPCRA
CLUSTERPOWCONSET
Figure 5.7: Latency: density scenario.
10
100
1000
10000
0.18 0.32 0.5 0.72 0.98 1.28 1.62 2
Aver
age
jitte
r (m
s)
Network area (km2)
DSDVDSDV-TPCRA
CLUSTERPOWCONSET
Figure 5.8: Jitter: density scenario.
already in route, while queued packets have to wait for the establishment of a new route. Thus,
the correct identification of the causes of packet losses may be used to improve routing decisions.
5.5.2 Node Mobility Scenario
This scenario evaluates the effect of node mobility, which is present in mobile and vehicular
ad hoc networks. Fifty nodes are placed in an area of 1200m×600m. As in the previous scenario,
there are three video flows with static source and destination. All other nodes use the random
waypoint mobility model. We vary average node speed from 4m/s (pedestrian speed) up to
20m/s (vehicles on a highway).
Figure 5.9 shows the average throughput. DSDV-TPCRA outperformed the other evaluated
protocols, since it suffered much less losses at the MAC level. We attribute this to the use of
a pessimistic link quality estimation in routing decisions, which favors higher quality links. A
reduced contention provided DSDV-TPCRA a reduced latency, always below 1s (presented in
Figure 5.10). DSDV-TPCRA presented a one order of magnitude increase on its delay, from
86
5.5 RESULTS
30 40 50 60 70 80 90
100 110 120 130
4 6 8 10 12 14 16 18 20
Aver
age
thro
ughp
ut (k
bps)
Average node speed (m/s)DSDV
DSDV-TPCRACLUSTERPOW
CONSET
Figure 5.9: Throughput: mobility scenario.
10
100
1000
10000
4 6 8 10 12 14 16 18 20
Aver
age
late
ncy
(ms)
Average node speed (m/s)DSDV
DSDV-TPCRACLUSTERPOW
CONSET
Figure 5.10: Latency: mobility scenario.
approximately 37ms for average speeds of 4m/s to 426ms for speeds of 20m/s. The delay
increased for all protocols, due to more collisions with increasing node mobility.
ClusterPOW achieved a stable performance, as it presented the least amount of collisions.
The performance of DSDV and CONSET was quite similar in all metrics. Again, CONSET
did not reduce the transmission power because of the employed energy model. Both protocols
were the least performing in throughput and packet delay, showing that even in mobile scenarios
routing should take data rate and transmission power into account.
Regarding energy consumption, depicted in Figure 5.11, DSDV-TPCRA had the best results.
ClusterPOW came second, since its main goal is to reduce the transmission power of links in
order to reduce energy consumption. Meanwhile, DSDV-TPCRA reduces energy consumption
by decreasing the transmission time of packets as well as the number of hops in a path. DSDV
and CONSET performed the worst.
Overall, the impact of node mobility was not significant, except for packet delivery delays.
We believe that this is due to high link quality variability. In real scenarios, it is known that the
effects of fading are much more pronounced than those of distance attenuation [16]. Hence, even
87
5. TRANSMISSION POWER AND DATA RATE AWARE ROUTING
142
144
146
148
150
152
154
4 6 8 10 12 14 16 18 20Aver
age
ener
gy c
onsu
med
(J)
Average node speed (m/s)DSDV
DSDV-TPCRACLUSTERPOW
CONSET
Figure 5.11: Energy consumption: mobility scenario.
if source and destination are distancing from each other in high speed, the effects of multi-path
and fading are much more significant than the attenuation due to mobility.
5.5.3 Link Quality Scenario
The stability of routes depends on link quality. Lower quality links have a higher route
break rate and present more packet drops. Both may reduce the throughput and may increase
contention. Also, link variability may degrade the performance of TPC and RA adaptation
algorithms at the MAC layer. This scenario evaluates the effect of link quality over TPC- and
RA-aware networks. To that end, we vary the factor K of the Ricean propagation model [109].
Smaller values of K reduce the ratio of the line-of-sight signal over reflected signals, increasing
link instability. Hence, lower K values have a higher probability of a packet being lost due to
poor link conditions, reducing link quality.
The average throughput reduced for all protocols with more unreliable links, as represented in
Figure 5.12. CONSET and DSDV performed better than ClusterPOW, since they employ higher
transmission powers. Those compensate for higher link variability, increasing the robustness
to fading. ClusterPOW, on the other hand, tends to reduce the transmission power to the
minimum, further it is more susceptible to packet errors. DSDV-TPCRA, meanwhile, improved
the throughput by 40kbps over DSDV and CONSET. This may be due to the calculations shown
in Section 5.3.1, which were designed to accommodate signal fluctuations.
Signal fading may force the rate adaptation algorithms running at the MAC layer to employ
more resilient modulations. Figure 5.13 shows the minimum data rate of a route, measured as
the data rate of the link using the least performing modulation. DSDV and CONSET protocols
chose worse links when the Rice K factor is reduced. Meanwhile, since ClusterPOW and DSDV-
88
5.6 CONCLUSIONS
20
40
60
80
100
120
140
160
1 3 5 7 9 11 13
Aver
age
thro
ughp
ut (k
bps)
Ricean K factor (dB)DSDV
DSDV-TPCRACLUSTERPOW
CONSET
Figure 5.12: Throughput: link error scenario.
9 10 11 12 13 14 15 16 17
1 3 5 7 9 11 13
Min
imum
dat
a ra
te (M
bps)
Ricean K factor (dB)DSDV
DSDV-TPCRACLUSTERPOW
CONSET
Figure 5.13: Minimum data rate of a path: link error scenario.
TPCRA incorporate signal-related metrics in routing, they were able to maintain their minimum
data rate inaltered.
An unstable link also increases the amount of retransmissions. As a consequence, the average
latency of the flows increase, as supported by Figure 5.14. DSDV and CONSET are the most
affected protocols, showing an increase of up to one order of magnitude. By incorporating
TPC, ClusterPOW presented a superior performance, increasing the delay by up to 67% from
K = 13dB up to K = 1dB. DSDV-TPCRA had an even better result, since the delay rose only
20% for the aforementioned values of K.
5.6 Conclusions
In this chapter we studied the issues of self-configuration in connectivity services, more specif-
ically in routing protocols that cope with the dynamic characteristics of wireless links. Wireless
multi-hop networks frequently employ links having dynamic data rates and transmission powers.
A change in both parameters may affect several performance metrics, such as the end-to-end
89
5. TRANSMISSION POWER AND DATA RATE AWARE ROUTING
10
100
1000
10000
1 3 5 7 9 11 13
Aver
age
late
ncy
(ms)
Ricean K factor (dB)DSDV
DSDV-TPCRACLUSTERPOW
CONSET
Figure 5.14: Latency: link error scenario.
throughput and delay of flows, as well as the energy consumed by each node. Existing routing
protocols do not consider the data rate and transmission power, and as such wireless networks
could perform better if routing protocols were to adapt to changes in both parameters.
This chapter proposed routing enhancements in order to take the transmission power and
data rate in consideration, guided by the results obtained from the analytical mathematical
model presented in Chapter 4. The enhancements are generic, being applicable to most link
state and distance vector routing protocols. Simulations showed that our improvements reduced
latency by up to one order of magnitude, while throughput increased.
As future work, we will analyze the gains of our enhancements over more realistic scenarios,
using improved mobility patterns and fading models considering the movement of the transmitter
and the receiver (fast fading). We also plan to further improve the integration of MAC-level TPC
and RA algorithms with routing, in order to reduce the amount of false link outages detected in
routing.
90
Chapter 6
Load Self-Configuration in MobileUnstructured P2P Services
Mobile peer-to-peer (P2P) networks are a very common service in multi-hop wireless net-
works. They are employed to build more complex services that rely on decentralized information
sharing repositories, such as file servers, online collaboration applications, among others. P2P
networks can be divided into two types: structured and unstructured. Structured ones em-
ploy distributed hash tables to speed up search operations, unlike unstructured networks. In
general, unstructured P2P approaches are preferable over structured ones, due to their higher
fault-tolerance and flexibility. The performance of unstructured mobile P2P networks, however,
is dependent on the load at the wireless links. This chapter proposes a self-configuration mech-
anism, based on a fuzzy-logic controller, that adapts the mobile P2P algorithm according to the
load on the network. Further, the controller copes with external traffic sources as well as varying
link error rates.
The rest of this chapter is organized as follows. Section 6.1 describes the issue of self-
configuration in mobile P2P networks. Section 6.2 shows the related work. Section 6.3 describes
the construction of the controller. Section 6.4 presents the simulation results. Section 6.5 presents
the conclusions and future work.
6.1 Introduction
The peer-to-peer paradigm supported the creation of several services in wireless multi-hop
networks, such as file sharing, resource discovery, instant messaging and online collaboration
91
6. LOAD SELF-CONFIGURATION IN MOBILE UNSTRUCTURED P2PSERVICES
services, among others [61–63]. Its widespread use is due to its high degree of fault tolerance,
load sharing and flexibility when compared to the client-server paradigm. Several P2P protocols
specifically tailored for wireless environments (or mobile P2P protocols) have been proposed
[151–154]. They deal with the uncertainties of the wireless medium and explore geographic
information as well as the topology of the network in order to improve the performance and
reliability of mobile P2P networks.
As explained in Section 2.4, there are two classes of P2P protocols: unstructured and struc-
tured. In general, unstructured P2P networks are preferred over structured ones, since they han-
dle higher rates of nodes entering/leaving the network and complex searches based on keywords
or range searches [76, 77]. Further, unstructured P2P protocols tend to outperform structured
networks in wireless deployments [107, 155]. Unstructured protocols use redundant messages,
which may reduce the amount of unsuccessful queries caused by link errors and route breaks.
Although redundant messages are the reason for the superior performance of unstructured
mobile P2P protocols, they are also to blame for their lack of scalability [107]. The high amount
of packets imposed on the network increases the contention on the wireless links, incrementing
the amount of collisions and packet drops. As a consequence, the response time and the amount
of queries solved deteriorate. Several enhancements have been proposed to curtail the high
overhead of queries, such as clustering, selective forwarding and random walks [71, 107, 156].
Those techniques reduce the amount of query messages by proposing sophisticated forms of
flooding. Moreover, solutions such as selective forwarding and random walks increase the time
required to solve a query on lightly loaded networks.
Since flooding is still the best performing strategy in terms of response time and resiliency,
mobile unstructured P2P protocols should use flooding when the network experiences a light
load in order to reduce the response time, and in more charged networks they should resort to
more efficient query schemes. One way to achieve this behavior is the dynamic adaptation of the
number of query messages sent at each hop (a sort of selective flooding) based on the conditions
of the network. Existing adaptation solutions for P2P services are tailored to each protocol,
requiring changes in their internals or in their message dialogue [155, 157]. Meanwhile, external
agents based on classic self-configuration techniques would be applicable to a wider range of
protocols, besides requiring no changes to the P2P algorithms. Further, since no changes are
required, the adaptive implementations of the P2P protocol could interoperate with classic,
unmanaged implementations.
92
6.2 RELATED WORK
Adaptive P2P networks exhibit context-aware and cross-layer properties. Information from
lower layers is used on the application layer by a P2P self-configuration service. Cooperation
among applications and nodes is also present, since decisions are taken based on the aggregation
of data from a subset of the P2P topology. Those characteristics fit nicely within the goals of
MANIP, which could simplify the collection and dissemination of context information. MANIP
could provide means to automatically push the context information required by the autonomic
adaptation algorithms. Further, MANIP interfaces could be used to send commands and new
configuration to the P2P application in the same standard format used for requesting manage-
ment information.
Self-configuration decisions can be modeled using control theory and fuzzy logic techniques.
Those techniques have been used to perform flow control, adjust buffer sizes in routers, for
admission control on transactional servers, among others [158–162]. Unlike most AI methods,
closed loop control does not require training periods before the deployment. Further, fuzzy logic
solutions are generally computationally fast, requiring modest resources and being able to run
on real-time.
In this work we apply control theory and fuzzy logic to devise a fuzzy controller that adjusts
the number of neighbors of an unstructured P2P protocol according to an estimation of network
congestion. The objective is to avoid congestion, and thus reduce the amount of message drops at
the MAC layer. Less contention will also decrease the response time and improve the percentage
of successful queries, while reducing the energy consumed per node. The proposed controller is
quite generic, and thus could be applied to any P2P protocol that uses a spanning tree-like (i.e.
flooding-based, gossiping, flooding with super-peers) query strategy. The controller uses MANIP
primitives for the collection and aggregation of network context information. Simulations of a
Gnutella-like protocol showed that the controller allows the system to achieve a hit rate equivalent
to that of the best fixed parameterization at each scenario, while keeping an acceptable energy
consumption and response time. Furthermore, the controller copes with external disturbances
(background traffic), adjusting the P2P application accordingly.
6.2 Related Work
Mobile P2P protocols are optimized for wireless multi-hop networks, and is the basis for
several mobile services such as file sharing, collaborative virtual work environments, multimedia
streaming, resource discovery, among others. Roughly, there are two aspects that determine the
93
6. LOAD SELF-CONFIGURATION IN MOBILE UNSTRUCTURED P2PSERVICES
performance of an unstructured P2P network. The first is the overlay P2P topology built over
the physical topology. Second, the query dissemination algorithm may either prioritize response
time, resource consumption, or be a compromise of both. Our work focuses on optimizations to
query dissemination, however this section also surveys the existing topology strategies.
When building a P2P topology over wireless links, the classic optimization strategy is to
match the physical topology (the routing level topology) with the P2P one [69, 151–154]. This
reduces the number of hops required for each query forward. Mobile P2P protocols explore the
low cost of broadcast messages to increase the connectivity degree of the network [69], and graph
theory can minimize the number of forwards required to reach any other node. Examples are
topologies based on the small world phenomenon [65], clustering [69] or on a node’s popularity
(in scenarios with sporadic node connectivity) [163, 164].
Unstructured P2P protocols should then optimize their query dissemination. Several algo-
rithms were adapted from routing protocols, including strategies such as Gossiping [71] and
Random Walks [71, 155, 156, 165]. Algorithms adapted from routing must be used with parsi-
mony because their requirements are different from P2P query dissemination. Routing protocols,
for example, are allowed to consume more time or resources in order to improve the reliability
of paths. In P2P networks, however, the focus is on minimizing the overhead and response time
of the queries.
Random walk based P2P protocols tame the control overhead at the expense of the response
time. Those protocols rely on a fixed amount of messages, called walkers, which wander around
the network [71, 155, 156, 165]. Whenever a peer receives a walker, it checks if it has the
requested information. If not, the peer forwards the walker to one of its neighbors, selected at
random. Walkers have a time to live (TTL) in order to purge unsuccessful queries. The key
to this approach, thus, is setting the correct value for the TTL and using topology information
to bias the forwarding decision towards nodes with high probability of having the information
sought. Random walks in the Internet solve as many queries as flooding-based strategies and are
more scalable, however the response time is higher. The protocol Adaptive Probabilistic Search
(APS) is an adaptive version of random walks, where the probability of following a path changes
according to previous queries [157].
Although the literature is ripe with scalable querying mechanisms, flooding is still the most
efficient technique in terms of response time, since it explores the highest number of peers at the
same time [107]. However, it consumes a large amount of resources, which may lead to congestion
of the wireless links. When the network is congested, the amount of successful queries drops to
94
6.3 THE FUZZY LOGIC CONTROLLER
almost zero, and the response time of the P2P protocols increases by one to two orders of
magnitude. In order to reduce contention, we can limit the number of query messages, either
by using gossiping or by limiting searches to areas, which increase if the query is not successful
[155]. The former reduces the probability of finding files, while the latter presents a high response
time. Further, those solutions are not adaptive to changing network conditions. In [107], the
gossiping probability must be empirically found for each deployment. In [155], a failed query due
to congestion would make the algorithm increase the area of the search, increasing the contention.
This chapter proposes a self-configuration module that copes with changing network condi-
tions such as link error, background traffic and number of queries per second. We adapt one of the
parameters of the P2P application to reduce the query overhead while maintaining the smallest
possible response time. The proposed adaptation algorithm is based on closed-loop fuzzy logic
control [166]. Fuzzy controllers operate based on empirical rules derived from the knowledge
of skilled practitioners. Such controllers have been used to adjust the number of clients in an
Apache server [161], for resource allocation and call admission in ATM networks [162], among
other networking problems.
6.3 The Fuzzy Logic Controller
We focus on unstructured P2P protocols, where the protocols usually employ flooding or se-
lective multicast to perform searches. Usually, unstructured networks have two main parameters,
the number of neighbors and the time to live of the query messages. The number of neighbors
determines the number of query replicas that will be forwarded by nodes receiving a file query.
The time to live (or TTL) determines the maximum number of forwards (or hops in the P2P
overlay topology). Flooding-based queries produce approximately nt messages, where n is the
number of neighbors and t is the TTL. Clearly, this exponential behavior hinders the scalability
of searches, as identified in [107, 155].
Thus, we propose a fuzzy controller that adapts the number of neighbors of the P2P pro-
tocol to reduce the contention on the network. The controller implements flow control at the
application level, adjusting the number of query messages that are sent at each hop, in order to
maintain the congestion at acceptable levels. Fewer messages will reduce the need for back-offs
at the MAC layer, and will also reduce the probability of packet collisions. This reconfiguration
will be based on an assessment of queue occupation.
95
6. LOAD SELF-CONFIGURATION IN MOBILE UNSTRUCTURED P2PSERVICES
F(NNbrsk-1, AggOcck) = NNbrsk
Figure 6.1: The organization of the self-configuring controller.
We chose fuzzy controllers over classic control theory due to its simplicity and power. Fuzzy
controllers are more flexible than linear controllers (e.g. PID controllers), handling more easily
the complexities of the control of digital systems, i.e. saturation of signals, non-linearity and
imprecise measurements [166]. Fluid theory was another possible choice, however it requires a
careful modeling of the system, which is quite a hard task for P2P over wireless networks due
to the large amount of dynamic parameters and the high frequency of changes in their values.
Methods from artificial intelligence, such as neural networks, genetic algorithms and Bayesian
filters and others, were also considered. Those methods, however, are much more computationally
intensive than control-theoretic approaches, and most of them have the inconvenience of requiring
a training phase. Game theory and nature-inspired interaction models could also be used [167,
168], however those techniques would require changes in the P2P protocol. Meanwhile, a control-
based approach would require no changes whatsoever to the P2P protocol, allowing controller-
enabled clients to interact with classic clients.
The proposed solution is distributed, where every peer (node running the P2P protocol)
instantiates the controller. We expect that the network will converge to a stable solution, since
peers will decide based on information of a neighborhood. Peers collect the queue occupation
(the percentage of the routing packet queue that is being used) of their neighborhood, as shown
in Figure 6.1, where the cloud defines the vicinity of the darker peer.
In the case of protocols using clustering (or super-peers), the controller should be installed
96
6.3 THE FUZZY LOGIC CONTROLLER
only on the super-peers. Thus, queries within the cluster, which are disseminated locally and
hence have low delay and resource consumption, would remain unaltered. As a consequence, the
performance gains of the controller would be limited to the queries forwarded to other super-
peers.
Further, our controller can be used in a wide range of unstructured P2P networks. Besides
information queries, it could also be used to control information dissemination processes, i.e. if
peers periodically advertise their services to the network. However, the controller should not
be applied to protocols relying on random walks. In such protocols, the amount of messages
forwarded is already low, and as such one should focus on optimizing the TTL of the walkers.
Finally, our controller cannot be applied to information querying or dissemination in DTN net-
works. In such networks, the network does not form a connected graph. Hence, it is much more
advantageous to profit from “contact opportunities” and popular peers, even though those peers
may be congested [163, 164].
6.3.1 System Model
First, lets describe the system in control terms. The controlled system is the P2P software
in each node, and has two control inputs: the number of neighbors, n, and the TTL, t. An
uncontrolled input of the system is the query rate, λ. Our objective is to find a controller that
automatically adapts n, while t is fixed, to compensate for changes in λ. As we have described
previously, a high amount of contention on the links is to blame for the poor performance of
the P2P network. Thus, in our control model the only output of the P2P system is the average
queue utilization u, where 0 ≤ u ≤ 1. This value indicates the normalized number of outstanding
packets in the interface queue, so a node with a low load would have u close to zero, while a
congested node would tend to have u close to one.
We have chosen to control n instead of t because n is simpler to optimize. For example,
changing t at each hop may create a situation where the message circulates infinitely at the
network (if we increase t whenever the occupation is low). Further, controlling t at the source
only limits our capacity to react to the conditions of the network. Meanwhile, n can be modified at
any hop without worrying about messages circulating eternally as long as t remains unchanged.
As future work we intent to devise a new controller where both t and n will be dynamically
adjusted.
A diagram of the system is shown in Figure 6.2. We consider a closed control loop, that is, the
output of the controller in iteration k will take into account the output of the controlled system in
97
6. LOAD SELF-CONFIGURATION IN MOBILE UNSTRUCTURED P2PSERVICES
Controller
ControlledSystem
∆uk-1
Change in no. ofneighbors (∆nk)
Occupation (uk)Target
occupation (ū)
+-
Query rate (λk)
TTL (tk)
Figure 6.2: Block diagram of the closed loop system.
the iteration k−1. This is a discrete controller, being activated at fixed intervals. The controller
ensures that the occupation of the controlled system is always kept near the operational value, u.
The controller uses as input the deviation from the operational value of the last iteration k − 1,
∆uk−1, and outputs ∆nk, which is added to the value of nk−1 to obtain nk. In this text we refer
to the entire system (controller and controlled system) as the closed loop system.
6.3.2 Input Signal
The first step is to define the input signal of the controller. We cannot consider the occupation
of a node individually: even though nodes at the periphery of the network show an occupation
close to zero, their traffic will impact the occupation of the nodes at the center of the network,
where most of the messages must pass. Actually, the root causes of low performance can be
traced back to the center of the network, where congestions occur. Hence, even unsaturated
nodes should act upon congestions. To cope with this effect, we define a neighborhood of h hops
from where the occupation must be collected. The occupation is then aggregated into a single
value to be fed into the controller, uh,i, defined as follows. The h− hop maximum occupation of
node i having a one hop neighborhood Hi is:
uh,i =
{local occupation h = 0max(uh−1,j)∀j ∈ Hi h ≥ 1
(6.1)
Note that, to calculate Equation 6.1, each neighbor has to forward only h values and store
n× |Hi| values. Since the construction of uh,i is recursive, by definition uh,i will start with ui,0,
ensuring that uh,i ∀h is defined even if a node has just joined the network. Queue occupation may
change abruptly due to packet bursts, thus the local occupation (u0,i) is averaged over a certain
interval. We sample queue occupation every 0.5 seconds and average the last eight readings in
98
6.3 THE FUZZY LOGIC CONTROLLER
0 0.2 0.4 0.6 0.8 10
0.2
0.4
0.6
0.8
1
uh − maximum h−hop perceived occupation (%)
F(u h)
Hops=0Hops=1Hops=2Hops=3Hops=4Hops=5
Figure 6.3: CDF of the aggregated occupation for different number of hops.
order to provide a more constant signal. Note that this sampling has almost no cost to the nodes,
since it requires a small memory and processing footprint.
The best size of the neighborhood occurs for the smallest value of h where most of the nodes
agree on the same h−hop maximum occupation value. Figure 6.3 shows the CDF of uh empirical
values for a sample simulated topology (the simulations followed the setup described in Section
6.4.1). The higher the number of hops, the higher is the maximum perceived occupation, and
the higher is the consensus of the nodes (shown on an almost vertical CDF with small “steps”).
However, a higher number of hops will require more time for the information to be disseminated
to all the network, thus the choice of the number of hops is a compromise of precision and
dissemination time. To reduce the cost of dissemination, the occupation is piggy-backed in the
PING-PONG packets of the P2P protocol, as we describe in Section 6.4. Furthermore, the
impact of increasing h is mostly beneficial, as we will show in Section 6.4.4.
6.3.3 Fuzzy Inference Model
Fuzzy logic controllers operate based on empirical rules derived from the knowledge of skilled
practitioners. They rely on linguistic variables, such as low, high and others, thus being able to
cope with uncertainties and imprecisions [166]. In fuzzy logic, imprecisions are tamed by assigning
a probability (defined by membership functions) that a given linguistic variable has a certain
linguistic value. The proposed fuzzy controller uses as input the deviation of the occupation
from a desired set point, uerror, as well as the rate of change of this error, changeinerror. We
describe below how we implemented each of the five parts of a fuzzy controller. The fuzzy rules
and membership variables presented here were empirically tuned to achieve the best controller
performance.
99
6. LOAD SELF-CONFIGURATION IN MOBILE UNSTRUCTURED P2PSERVICES
0.0
0.2
0.4
0.6
0.8
1.0
-1.0 -0.5 0.0 0.5 1.0Deg
ree
of m
embe
rshi
p
Input variables' membership functions
negpos
0.0
0.2
0.4
0.6
0.8
1.0
-1.0 -0.5 0.0 0.5 1.0Deg
ree
of m
embe
rshi
p
changeinn membership functions
negkeep
pos
Figure 6.4: Membership functions of the variables of the fuzzy controller (h).
Preprocessing: The first part of the process normalizes the input for the controller. In our
case, we ensure that the input variables are within the range [−1, 1]. Those input variables are
defined as follows, where k is the current iteration of the controller:
uerrork = uk − u (6.2)
changeinerrork =uerrork − uerrork−1
2(6.3)
Fuzzification: Next, we convert the input values into linguistic variables, which will be used
later by the inference engine to define the change in the number of neighbors. Linguistic variables
in fuzzy logic may have several linguistic values. The fuzzification process associates for each
of the linguistic values a certainty probability. In our model, the linguistic input variables have
three possible values: neg, zero and pos. Their membership functions are shown in Figure 6.41.
As an example, if uerrork = −0.5, the linguistic variable uerror will be neg with certainty
0.75, while it will be pos with certainty 0.25.
Inference: The fuzzy engine calculates the value of the output variables based on rules that
capture the expert’s knowledge of the controlled system. The inference process quantifies the
likelihood of each of the rules, assigning a probability that the given rule should be triggered.
The triggering probability is calculated based on the certainty associated to the input variables.
1The graphs show in the Y axis the associated probability of a given X-axis value being assigned to a certainlinguistic value.
100
6.3 THE FUZZY LOGIC CONTROLLER
uerrorneg pos
changeinerrorneg pos keeppos keep neg
Table 6.1: Inference rules of the fuzzy controller.
In our controller, the output variable changeinn indicates the magnitude of change imposed
to the number of neighbors. changeinn is a variable within the range [−1, 1] having the values
neg, keep and pos. Their membership functions are shown in Figure 6.4. The linguistic values
indicate if the number of neighbors must be decreased, maintained or increased.
The rules employed in the inference engine (expressed in the form if variable1 is value1 and
variable2 is value2 then output is value3) state the following: the controller output should be
positive if the error is negative, negative if the error is positive or zero if there is no error. The
rules are shown in Table 6.1, where lines and rows indicate the semantic value of the input
variables, and the value in the table indicates the output.
Defuzzification: This phase uses an aggregation function to combine the recommendations
of each rule into a single value, the “most certain” controller output, using the likelihood of
each rule being triggered. We used the centroid defuzzification method [166]. The output of
the defuzzification follows the surface shown in Figure 6.5. The surface shows the output of
the defuzzification process as a function of the values of the normalized input. The surface was
crafted so smaller errors will yield smaller values, while larger errors will yield higher values,
increasing in an exponential-like fashion. As a consequence, the intensity of the change in the
number of neighbors increases almost exponentially with the magnitude of the deviation from
the operational point.
Post-processing: The output value returned by the defuzzification phase is normalized, thus
the post-processing phase multiplies this value by a scaling constant. This constant determines
the aggressiveness of changes performed in the number of neighbors. Suppose that the de-
fuzzification phase returned -0.84. With a scaling factor of 1, the number of neighbors will be
decremented by -0.84. If we wish a faster response (reducing the settling time), we could thus
use a multiplier of 2 to decrement nk by -1.68. A larger scaling factor also increases the variance
of the output. Thus, it must be a compromise of settling time and variance.
101
6. LOAD SELF-CONFIGURATION IN MOBILE UNSTRUCTURED P2PSERVICES
−1.0−0.5
0.00.5
1.0−1.0 −0.5 0.0 0.5 1.0
−0.8
−0.6
−0.4
−0.2
0.0
0.2
0.4
0.6
uerrorchangeinerror
chan
gein
n
Figure 6.5: Surface plot of the controller output.
6.4 Evaluation
This section presents the evaluation of the proposed controller by means of simulations.
We simulate an IEEE 802.11a network on NS-2 version 2.33. We used the new MAC and
PHY models [144], which model packet capture during preamble and payload transfers, support
additive Gaussian interference and decouple the reception of the preamble and payload, making
it possible to receive the preamble but not to receive the payload, as in real networks.
This section is structured into five sub-sections. Section 6.4.1 presents the simulation setup.
The comparison of controlled-based P2P networks against traditional ones is shown in Section
6.4.2. The adaptability of the controller to external sources of traffic is evaluated in Section
6.4.3. The precision of the controller when the size of neighbors changes is analyzed in Section
6.4.4. To conclude, the effect of link errors in the performance of the controller is described in
Section 6.4.5.
6.4.1 Simulation Setup
The simulations employ the modifications described in Section 5.4.1. The simulation pa-
rameters are almost the same as in Section 5.4: We use a trace-based packet error rate (PER)
reception, where the PER is determined by the SINR and size of the packet [146]. We use the
Rice propagation model, a time-varying non-isotropic radio model that takes into account slow
102
6.4 EVALUATION
Parameter ValueAverage medium noise -99 dBmCarrier sense threshold -96 dBmPreamble capture threshold 5 dBPayload capture threshold 5 dBTransmission Output Strength 16 dBmTransmission consumption 1.8282WReception Consumption 1.049WIdle consumption 0.6699WPropagation model Ricean, K = 13 dB
Table 6.2: PHY parameters of the simulated radio.
fading, that is, signal variations due to mobility of objects around the sender and receiver [109].
The power consumption and reception thresholds are based on a Cisco 802.11 a/b/g card [108].
Unlike the evaluation in Chapter 5, in this chapter we employ a static transmission power and
data rate, in order to simplify the analysis of the results. Links operate at a constant data rate
of 6Mbps to eliminate performance penalties due to automatic MAC-layer rate adaptation. The
characteristics of the radio are summarized in Table 6.2.
The controller requires MAC and application-layer information, thus we employ MANIP to
produce a more modular implementation. We use MANIP to disseminate routing, P2P and
occupation information into one single message. The routing protocol employed is DSDV (Desti-
nation Sequence Distance Vector), a proactive routing protocol [169]. A more optimized routing
protocol could also be used in the simulations. However, since the focus of this work is the eval-
uation of the fuzzy controller, we opted for using a routing protocol with a solid implementation
in the NS-2 simulator.
The P2P network is based on an enhanced version of the Gnutella-like protocol of [107]. We
changed the neighbor discovery and PING/PONG dialogues to produce a virtual topology more
similar to the topology of the wireless network. Nodes will periodically send a broadcast, which
acts as a PING. This message is used to populate the peer lists, and thus peers will always have
neighbors at one hop distance. Since there is no PONG, a peer is discarded if no PING has been
received after a certain amount of time. The TTL of queries was set to ten.
The controller uses a neighborhood of seven nodes (h = 7), selected since it yielded the
best performance values following the analysis of Section 6.4.4. The controller is executed every
twenty seconds, and has a target occupation u = 0.7. This allows for a compromise of response
time and hit rate, since the queues are starting to build up but they are not critically long. The
scaling factor of the fuzzy post-processing phase was set to 18, after empirically identifying which
103
6. LOAD SELF-CONFIGURATION IN MOBILE UNSTRUCTURED P2PSERVICES
30 40 50 60 70 80 90
0 6400 12800 19200 25600 32000 38400
Hit
rate
(%)
Number of queries per simulation
Fixed n=2Fixed n=3
Fixed n=4Fixed n=5
Fixed n=6Fuzzy
Figure 6.6: Hit rate for varying load.
value yielded the best performance, measured by the hit rate, convergence time and stability of
the controller. In order to allow the occupation to reach its steady state, the controller starts to
run twenty seconds after queries have started. Each h-hop value of uk,h consumed two bytes to
be disseminated, giving occupation a four-digit precision ( 1216
).
Eighty nodes are placed in a square region, with 1.5 km of side. Nodes move following the
random waypoint mobility model, with an average speed of 1 m/s. Simulation time is 250s. All
nodes run one instance of the P2P software, and share on average five files. Each file has five
replicas in the P2P network. Query times follow a uniform distribution. We do not simulate
file transfers, however those could be taken into account by the controller as background traffic,
which is evaluated in Section 6.4.3. Results are averaged over 30 independent simulations with
a confidence interval of 99%.
6.4.2 Convergence to the Best Configuration
In this scenario we the compare the adaptive solution to a set of fixed configurations, in order
to check if it converges to the best value when suffering different loads. We simulated Gnutella
networks with a static number of neighbors varying from two up to six. In this scenario there is
no background traffic, thus only query search and routing messages are transmitted. The initial
number of neighbors of the adaptive solution was set to six. Simulation time was 250s.
As shown in Figure 6.6, the fuzzy-based solution achieved a hit rate similar to the best
static configuration of each load. Further, the performance of the fuzzy solution was at most 2%
less when compared to the best static configuration, which we deem acceptable. The value of 3
neighbors was the best solution for most scenarios, however for lower loads (less than 9600 queries
104
6.4 EVALUATION
0.001
0.01
0.1
1
10
0 6400 12800 19200 25600 32000 38400
Sear
ch re
spon
se ti
me
(s)
Number of queries per simulation
Fixed n=2Fixed n=3
Fixed n=4Fixed n=5
Fixed n=6Fuzzy
Figure 6.7: Response time for varying load.
per simulation) the configurations with four, five or six neighbors were the best. Similarly, for
higher loads it is best to use two neighbors.
The number of messages sent influences the response time of the queries, as shown in Figure
6.7. The response time increases exponentially with load, varying up to two or three orders of
magnitude. For a fixed value of neighbors of five and six, the response times were higher than
2s, sometimes achieving 3.1s. Although the fuzzy controller did not present the lowest response
time, it presented an acceptable value even for loaded networks. The response time was inferior
to one second for loads of up to 3200 queries per simulation, and stayed in the range of 1.2s
up to 1.5s for all other query loads. This is the expected behavior of the fuzzy-based solution,
because it improves the hit rate by imposing a constant load on the network.
We also examined the energy consumption of the protocols, shown in Figure 6.8. There are
two factors that define the energy consumption in our model: the number of packets sent and
the number of collisions. The fuzzy solution increases the former and decreases the latter, and
for that reason it presented intermediary energy consumption. For scenarios with up to 9600
queries per simulation, the fuzzy solution consumed more energy than the static configuration
presenting the highest hit rate. This occurs because the static configurations tend to send less
messages than our solution. Meanwhile, when the network becomes congested (i.e. for networks
of more than 19200 queries per simulation), the MAC layer is near its saturation point, and thus
it treats as many frames for the static and fuzzy solutions. In this situation, the fuzzy solution
tends to perform as well as the best static configuration.
Finally, we studied the dispersion of the hit rate among the nodes. This metric indicates
the fairness of the network with regards of the hit rate experienced by each of the nodes. We
performed this study to check the effect of the dynamic parameter fluctuations on the fairness
105
6. LOAD SELF-CONFIGURATION IN MOBILE UNSTRUCTURED P2PSERVICES
0 10 20 30 40 50 60 70 80
0 6400 12800 19200 25600 32000 38400
Con
sum
ed e
nerg
y (J
)
Number of queries per simulation
Fixed n=2Fixed n=3
Fixed n=4Fixed n=5
Fixed n=6Fuzzy
Figure 6.8: Energy consumption for varying load.
0 10 20 30 40 50 60 70 80 90
100
6400 12800 19200 25600 32000 38400
Per n
ode
hit r
ate
(%)
Number of queries per simulation
Fixed n=2Fixed n=3
Fixed n=4Fixed n=5
Fixed n=6Fuzzy
Figure 6.9: Dispersion of per-node hit rate.
of the P2P protocol. A high dispersion would indicate low fairness, likewise a small dispersion
would indicate that all nodes have approximately the same hit rate. For that, we analyzed the
percentiles of the hit rate. We use percentiles instead of the standard deviation or confidence
intervals because they capture with more details the variations of a random variable.
Figure 6.9 depicts the distribution of the hit rate. The low and high spikes represent the 5th
and 95th percentiles, respectively, while the lower and upper bounds of the rectangles represent
the 25th and 75th percentiles. With regards to the unmodified Gnutella protocol, the dispersion
tends to increase for a large number of neighbors. This occurs because more queries are dropped.
Hence, the least dispersion for each of the configurations happens when the network is not
congested. The fuzzy controller, in general, presented a dispersion that is either similar or
slightly larger than that of the best static configuration.
In a nutshell, this scenario showed that the proposed solution achieves a higher hit rate at
the cost of an increase on the energy consumed and response time. Another consequence of the
controller is that the response time and energy consumed remained fairly constant throughout
all the simulated query loads, and were kept within acceptable boundaries.
106
6.4 EVALUATION
6.4.3 Adaptability to Disturbances
In this scenario we add background traffic in the form of CBR flows to test if the proposed
solution adapts to disturbances external to the P2P system. The load imposed on the P2P
network was 32 queries per second. We created four 512kbps CBR flows, which were activated at
t = 300s, and then were turned off at 600s. To maximize hop count, the sender and the receiver
of each flow are placed on the corners of the region, where senders are on the opposite corner
of the receivers, e.g., the node on the top left corner transmits to the node on the bottom right
corner. All other nodes are randomly placed using a uniform distribution. For this scenario the
simulations last for 900s.
Figure 6.10 shows the average number of neighbors during the simulation. The simulation
starts with 5 neighbors, and the controller adjusts the value to four. In the instant t = 300s, the
CBR flows are activated, as shown by the red curve. At time t = 320s the controller already
reduced the average number of neighbors by 0.5m, and the stationary state for the new system
configuration is reached at t = 360s. Next, at t = 600s the CBR flows stop, and the system
takes 40s to respond, since the occupation decreases slowly. There is an abrupt change in queue
size, thus the system overshoots at time t = 640s, reaching 4.7± 0.76 neighbors. This overshoot
is followed by an oscillation, which starts to stabilize at t = 840s.
The observed overshoot and oscillations are expected behaviors for the closed loop system,
since the queue length curve and the response of the P2P system to changes in the input are
both non-linear processes. A controller built from a performance model of the controlled system
could reduce those effects, and will be studied as future work. Also, we observed that the system
has a delay to respond to changes in the occupation. This occurs because queues need some time
to build up, and the detection of this effect must also be propagated to the nodes. One could
reduce the convergence time by running the controller at a finer granularity, however this would
require more overhead to timely disseminate the aggregated queue occupation.
6.4.4 Size of the Neighborhood
The precision of the controller depends on the quality of its inputs, that is, on the capacity of
the input to represent bottlenecks in the network. The size in hops of the neighborhood that is
considered for the data aggregation (the parameter h of the formulas presented in Section 6.3.2)
is the key parameter of the controller, since it limits the capacity of the input to capture the
107
6. LOAD SELF-CONFIGURATION IN MOBILE UNSTRUCTURED P2PSERVICES
2
3
4
5
6
7
0 80 160 240 320 400 480 560 640 720 800 880
Num
ber o
f nei
ghbo
rs
Simulation time (s)
Closed Loop SystemCBR activity
Figure 6.10: Reaction of the system in the face of disturbances.
30 40 50 60 70 80 90
0 6400 12800 19200 25600 32000 38400
Hit
rate
(%)
Number of queries per simulation
h = 1h = 3
h = 5h = 7
h = 9h = 11
Figure 6.11: Hit rate for the number of neighbors scenario.
behavior of distant nodes. It also defines the overhead of the solution, since a larger neighborhood
will demand more messages and more bytes to convey the state of the neighborhood.
In this scenario we present the performance of the controller for different sizes of this neigh-
borhood under different query loads. We varied the size of the neighborhood from two up to
twelve hops. We have simulated neighborhoods of up to eleven hops to verify if it is worth
selecting a neighborhood size that is larger than the TTL of the queries (set to ten). This could
be used, for example, to reduce the effect of hidden terminals at the last query forward.
Figure 6.11 shows that the hit rate decreases with a smaller number of hops in the neigh-
borhood. This occurs because the controller will decide based only on its limited information,
ignoring that other points of the network may be approaching congestion. Nodes at the border
of the network tend to assess that the network has a small load, even though the load at the
center may be already high, as described in Section 6.3.2 and in Figure 6.3. Since the controller
will increase the number of neighbors due to the small-assessed load, it will worsen the conges-
tion seen at the center of the network. This action will increase the contention on the network,
affecting negatively both the response time and the energy consumed. There was no increase in
108
6.4 EVALUATION
0.1
1
10
0 6400 12800 19200 25600 32000 38400
Sear
ch re
spon
se ti
me
(s)
Number of queries per simulation
h = 1h = 3
h = 5h = 7
h = 9h = 11
Figure 6.12: Response time for the number of neighbors scenario.
20
30
40
50
60
70
80
0 6400 12800 19200 25600 32000 38400
Con
sum
ed e
nerg
y (J
)
Number of queries per simulation
h = 1h = 3
h = 5h = 7
h = 9h = 11
Figure 6.13: Energy consumption for the number of neighbors scenario.
the hit rate for neighborhoods having nine or eleven hops with regards to seven hops. Clearly,
there is no use to set a neighborhood size that is larger than the reach of the query messages.
The response time of solutions with a small value h for uh,i tends to be higher, as Figure
6.12 shows. This is a consequence of a higher number of neighbors, resulting in an increased
number of packets being queued for transmission. It is known that the performance of IEEE
802.11 networks degrades with an increased sending rate, due to the increasing probability of
collisions and back-offs [110]. Unlike the hit rate, increasing the neighborhood from seven to
nine presented performance gains, though quite small. For eleven hops, however, there was no
significant gain.
The energy consumed increases when h decreases (Figure 6.13). A higher sending rate caused
by a limited view of the network reduces the likelihood of the radios switching to idle mode, which
is the least energy consuming mode of the radio. Thus, a larger view of the network will allow the
nodes to potentially identify more congestion points, which will reduce the number of neighbors.
The savings in energy consumption reduced with an increasing number of hops, and were almost
insignificant for h equal to eleven.
109
6. LOAD SELF-CONFIGURATION IN MOBILE UNSTRUCTURED P2PSERVICES
2
4
6
8
10
12
14
0 6400 12800 19200 25600 32000 38400
Aggr
egat
ed c
ontro
lov
erhe
ad (k
bps)
Number of queries per simulation
h = 1h = 3
h = 5h = 7
h = 9h = 11
Figure 6.14: Dissemination overhead (in kbps) of the fuzzy controller.
80009000
100001100012000130001400015000
0 6400 12800 19200 25600 32000 38400
Aggr
egat
ed c
ontro
lov
erhe
ad (P
acke
ts)
Number of queries per simulation
h = 1h = 3
h = 5h = 7
h = 9h = 11
Figure 6.15: Dissemination overhead (in number of packets) of the fuzzy controller.
Figure 6.14 shows the overhead of the fuzzy solution in number of kbps and packets, respec-
tively. The overhead in kbps increased linearly, indicating that our solution may scale even for
larger neighborhoods. Also, if we assume that nodes will have an equal overhead, the per-node
communication overhead of the controller accounted for less than 0.003% of the data rate of the
simulated links.
The number of control packets sent is portrayed in Figure 6.15. This metric considers the
packets used for the dissemination of the fuzzy controller input data as well as the packets required
for the formation of the Gnutella topology. We do not separate both events in our analysis
because we make use of the MANIP middleware to aggregate controller data and Gnutella control
messages. This Figure shows that, for smaller loads, the number of packets is higher, since the
fuzzy controller increases the number of neighbors of the peers. As such, the number of packets
tends to decrease when the load decreases. Second, the number of packets sent increases with the
size of the neighborhood. This increase is due to the cross-layering middleware (MANIP), which
opportunistically aggregates control messages. However, if the frequency of Gnutella control
110
6.4 EVALUATION
0 10 20 30 40 50 60 70 80 90
100
6400 12800 19200 25600 32000 38400
Per n
ode
hit r
ate
(%)
Number of queries per simulation
h = 1 h = 3 h = 5 h = 7
Figure 6.16: Dispersion of per-node hit rate for the number of neighbors scenario.
messages is low, the middleware will not wait until the next Gnutella message is produced to
disseminate the neighborhood occupation.
The last analysis was the dispersion of the hit rate among nodes, shown in Figure 6.16. Again,
spikes show the 5th and 95th percentiles, while the edges of the rectangle represent the 25th and
75th percentiles. The highest variation occurred for a neighborhood of two hops, followed by
that of one hop. For larger neighborhoods, the dispersion is almost the same, except for a small
improvement from increasing from five to seven hops. There were insignificant variations on the
percentiles for a neighborhood of seven, nine and eleven hops, (the values for nine and eleven
hops were omitted to improve the readability of the Figure). Hence, a larger neighborhood may
increase the fairness of the controller, making the distribution of the hit rate more homogeneous.
This scenario showed that the response time, the hit rate and the fairness improved despite
the increased overhead for larger neighborhoods. Larger neighborhoods, although require a more
significant control overhead, improve the performance of the network. This improvement is due
to the refined knowledge of the overall network condition, which allowed the fuzzy controlled to
take better decisions.
6.4.5 Link Error
Usually, flow control algorithms suffer performance penalties due to packet drops, caused
by bad link conditions. A similar situation happens to our controller, which may mistakenly
interpret the effects of link errors as consequences of a high level of contention. Hence, poor link
conditions may affect the fuzzy controller in two ways: First, link errors may increase the amount
of retransmissions in the MAC layer, which may increase the occupation of the queues. Second,
packet drops due to link errors may be accounted as drops due to a high level of contention.
111
6. LOAD SELF-CONFIGURATION IN MOBILE UNSTRUCTURED P2PSERVICES
0.00.51.01.52.02.53.03.5
3 8 13 18 23
Sear
ch re
spon
se ti
me
(s)
Ricean K factor (dBm)
Fixed n=2Fixed n=3
Fixed n=4Fixed n=5
Fixed n=6Fuzzy
Figure 6.17: Response time for the error rate scenario.
This scenario evaluates the effect of link error over the closed loop system. To that end, we
vary the factor K of the Ricean propagation model [109]. Smaller values of K reduce the ratio
of the direct line-of-sight signal over reflected signals, increasing link quality variability. Hence,
lower K values have a higher probability of a packet being lost due to poor link conditions. We
fixed the query rate to 16000 queries per simulation.
In this scenario, we did not find a significant change in the hit rate of the protocols. We
attribute this to the mechanisms that cope with link error: retransmissions at the MAC layer
and redundant query messages at the P2P protocol. The variation in link quality, however, is
not statistically insignificant in the response time of the queries, as Figure 6.17 shows. Links
with higher signal variations will require more retransmissions because the signal to noise ratio
of an incoming packet will vary more. In this case, it is more difficult to receive a packet without
errors. Furthermore, unstable links may increase packet drops due to route errors.
6.5 Conclusions
Peer-to-Peer (P2P) overlay networks are the preferred strategy for information sharing over
wireless networks, since P2P networks are able to cope with the intrinsic dynamics and uncer-
tainty of wireless links and node mobility. Existing work on P2P over wireless multi-hop networks
focused on the development of protocols tailored to this environment. Unstructured P2P pro-
tocols, which are the most performing and resilient type of P2P networks in wireless scenarios,
rely on flooding to disseminate queries. However, the use of flooding limits the scalability and
performance of those protocols.
This chapter tackled the self-configuration of mobile P2P protocols. It proposed a fuzzy
logic controller that automatically configures the number of neighbors of an unstructured P2P
112
6.5 CONCLUSIONS
network based on the measured queue occupation, in an effort to reduce network congestion
and hence increase the performance of the P2P protocol. The proposed solution implements
congestion control at the application level by indirectly regulating the rate of query messages
sent. Being generic, the solution can be applied to any unstructured protocol that relies on
query strategies based on spanning trees. The controller uses MANIP to reduce its overhead and
simplify the aggregation of MAC-level information. The controller was validated via simulations,
which showed that the adaptive P2P system presented a hit rate as high as that of the best fixed
parameter for each evaluated load. We also measured the capability of the controller to adapt
to external traffic sources.
Unstructured P2P networks usually have two key parameters, the time to live of packets and
the number of neighbors. In future work we plan to adapt both parameters at the same time by
using a MIMO (multiple input multiple output) controller. Further, we will characterize the per-
formance of the network using more parameters, such as node mobility and node disconnections
to improve the performance of the network in a broader range of scenarios.
113
6. LOAD SELF-CONFIGURATION IN MOBILE UNSTRUCTURED P2PSERVICES
114
Chapter 7
Conclusions
Wireless multi-hop networks are much more dynamic than wired networks. Furthermore,
they often require unattended operation, in the case of sensor networks, or the user has no time
to re-configure the network each time that it moves or that a new application is introduced, as in
vehicular networks or in wireless networks deployed for emergency response. As a consequence,
protocols and applications incorporate self-configuring algorithms or dedicated self-configuration
management platforms. Although self-configuration has received significant attention with the
emergence of the autonomic computing paradigm, several self-configuration issues remain un-
solved in wireless multi-hop networks. Hence, this thesis studied some self-configuration aspects
of those networks.
This chapter presents the concluding remarks, the future work on the topics studied in this
thesis, as well as the research perspectives opened by our investigations. Section 7.1 revisits
the objective of the thesis and the obtained results. Section 7.2 describes the areas of future
work as well as short term research perspectives in the self-configuration of wireless multi-hop
networks. Section 7.3 concludes this thesis, suggesting the next steps for rendering wireless
multi-hop networks fully autonomic.
7.1 Objectives and Results
The aim of the study carried out during the thesis was to improve the self-configuration
capabilities of wireless multi-hop networks by the creation of specialized algorithms and protocols.
Those protocols should improve the satisfaction of the users by making the network seamlessly
adapt to changing context and internal configurations.
115
7. CONCLUSIONS
This work presented three contributions in this subject. First, we proposed a middleware
for information dissemination that simplifies the creation and maintenance of cross-layer, self-
configuring context-aware applications and protocols. It mutualizes the information that would
usually be kept hidden within each protocol, allowing other protocols or applications to profit
from them. Further, protocols are freed from managing and disseminating information, allowing
them to concentrate only on their specific tasks. The unified management of information also
allows the middleware to reduce the control overhead of the network. An information model
based on CIM, which could be used to represent the information stored in the middleware, has
been proposed. An evaluation via simulations showed that the middleware significantly reduces
the overhead of the network. As a result, the delay, energy consumption and applications specific
metrics such as the hit rate of P2P applications were improved.
The proposed middleware can support different scenarios, as shown by its application in the
two self-configuration control loops shown in this manuscript. It can be used to support cross-
layer protocols as well as complex services. Unlike other context and information repositories in
the literature, ours could be used in devices with limited resources, such as sensor networks.
Besides information sharing, we also tamed the design of two self-configuring solutions. Self-
configuration can be either realized by specialized algorithms, as in our proposed routing protocol,
or by a managed entity/management entity approach, as in the presented fuzzy controller. Al-
though those solutions arose on different protocol layers and use different approaches, they share
the need for information coming from the environment and from other layers of the protocol
stack. Such a need motivates the creation of integrated, cross-layer and context-aware solutions.
The two proposed self-configuration solutions are detailed below.
The first solution tackled efficient routing in wireless networks having dynamic link charac-
teristics (the transmission power and the data rate). On such conditions, routing must be aware
of the instantaneous and near-term state of the link in order to build efficient routes. Failure to
take the transmission power into account may significantly reduce the capacity of the network
and its lifetime, while ignoring the data rate of links may reduce the throughput. Thus, we
proposed a new routing protocol that uses link-related information to improve the performance
of the network. The design of the routing metric was aided by an analytical model, which was
created to study the performance of flows under different transmission power and data rate con-
figurations. Simulation results showed that the proposed protocol increased the throughput of
the network by up to 50%, while the jitter and the response time were reduced by up to an order
of magnitude.
116
7.2 FUTURE WORK AND RESEARCH PERSPECTIVES
We also proposed mechanisms for the adaptation of mobile P2P protocols in the face of
increasing network load. P2P protocols are employed for several services in wireless networks,
and as such they must cope with varying traffic loads. Existing protocols had some scalability
constraints, since they produced a significant amount of messages at each user query. In order
to improve their scalability, we proposed a closed loop controller that dynamically adjusts the
parameters of the P2P application in order to shape the load of the network. The proposed
controller uses fuzzy logic to infer the amount of change needed in the parameters of the P2P
application based on the average queue occupation of the wireless nodes. Using simulations, we
evaluated the solution under scenarios with varying loads and link error rates. Further, we mea-
sured the capability of the controller to cope with external traffic sources. Using the controller,
P2P networks achieved an elevated performance. Furthermore, the adaptation strategy allows
the P2P application to adapt its traffic to that of other applications.
The presented solutions are a step towards the autonomic vision, since they increase the
adaptability to internal and external changes of routing and P2P services. Although they are
not intelligent (i.e. their operation does not change with time to cope with unforeseen situations),
they cope with a wealth of important wireless events, such as link error, contention, and node
mobility. The contributions of this thesis produced several subjects for future work, which are
detailed in the next section.
7.2 Future Work and Research Perspectives
During the making of this thesis, we identified several new areas of study closely related to
the topics treated in this thesis. This section presents the future work as well as the identified
research perspectives. This section is organized in a bottom-up approach. We first discuss
the perspectives for the specific topics studied in the thesis, and conclude with directions on
self-configuration of wireless networks in general.
7.2.1 The Information Plane
Regarding the information plane proposed in Chapter 3, we plan to extend it to new use
cases, and to evaluate it in a real deployment. The information plane also raised the issue of
coexistence of control loops. Those issues are detailed below.
117
7. CONCLUSIONS
• Application of MANIP in other use cases: We plan to show that MANIP is applicable
to a wide range of scenarios in wireless networking. To do so, we are studying the use of
MANIP to improve the performance of flow control algorithms in transport protocols.
Those algorithms could use context and information of the lower layers that nowadays are
considered too complex or costly to be obtained, although this information is available
to other protocols. Another possibility is the deployment of MANIP in sensor networks,
where protocols use much more context information and cross-layering interactions than
mesh and mobile ad hoc networks. In those situations, MANIP could significantly reduce
the control overhead.
• Evaluation of MANIP in a test-bed: Due to the complexity of MANIP components
and the heavy interaction with the physical layer, we were unable to implement and evaluate
MANIP in a real scenario. Thus, we plan to implement a subset of its functionalities in a
test-bed, and evaluate the middleware under a simple application. This test would allow
us to measure the impact of the delays incurred from the access of MANIP in the overall
performance of the application.
• Application-specific information model extensions: The proposed information model
captures the concept of the mostly commonly used information in protocols for wireless
networks. However, it does not model protocol specific information. One possible extension
is to model routing and P2P file sharing using the knowledge obtained from the use cases.
• Coexistence of multiple control loops: It may be the case that several control
loops are running at the same time on the network, each dealing with the configuration of
different applications or protocols. For example, a self-configuring routing protocol could
be used to support our load-adaptive fuzzy solution. If two control loops are dealing with
the same network parameter, they may not be able to coexist. Thus, it is necessary to
study if only an information plane will be enough the ensure the seamless coexistence of
those control loops, or if another entity or protocols must be proposed in order to control
this interaction.
7.2.2 TPC- and RA- Aware Networks
Chapters 4 and 5 studied networks having links with varying data rate and transmission
power. When this work started, the focus was on simple radios, based on the IEEE 802.11 and
118
7.2 FUTURE WORK AND RESEARCH PERSPECTIVES
IEEE802.15.4 standards. Future work could consider the capabilities of new radios, known as
cognitive radios. Also, during the study we identified that the issues of routing stability and
fairness are still an open research topic.
• Cognitive and smart radios: Smart radios use technologies such as MIMO and beam-
forming to improve the utilization of the wireless medium on a certain frequency or channel.
However, it is not clear how those parameters will affect the operation of routing algorithms.
As we have shown for the data rate and transmission power, there are significant improve-
ments that arise from considering those parameters in routing. Hence, a study on smart
radios and their impact on wireless multi-hop routing should be performed.
With cognitive radios, a network interface may operate using different frequencies, which
may change in time and space. TPC and RA solutions must take frequency changes
into account, since those affect the data rate, energy consumption, bit error rate, and
interference levels of the links. One possible extension of our analytical model is to assess
the amount of changes needed in routing to cope with cognitive radios.
• Route stability: Though most routing protocols nowadays consider signal quality, route
stability studies are rare. Existing protocols tend to profit from high signal quality to
improve the end-to-end throughput and delay of the flows, and as such routes may change
frequently. This may create fluctuations on the per-packet performance, or even tempo-
rary route breaks. Hence, we are interested in designing protocols and mechanisms to
find a lasting route. Being a stable route, nodes would experience less temporary service
disruptions.
• Inter-flow fairness: It is known in the literature that IEEE 802.11 is not a fair protocol,
and as such the stations achieve quite different QoS levels even in single-hop topologies.
This issue is even greater in multi-hop wireless networks with links having time-changing
characteristics. Thus, routing protocols should focus on fairness, in order to avoid starving
flows. Researchers usually prioritize maximizing the performance of the network as a whole
(by improving the average delay and throughput, for example). Hence, the performance
of individual flows is neglected, and as a result some flows may perform much better than
others. Hence, new queuing and routing policies focusing on stabilizing the performance
of the flows should be studied. This is particularly important for certain applications such
as telephony and real-time applications, where the performance of the network must be
stable and assurable within certain bounds.
119
7. CONCLUSIONS
7.2.3 Self-Configuring P2P Networks
In Chapter 6 we proposed a fuzzy controller that adapts the configuration of a P2P network
to cope with changes in network load. The controller considered only one of the two tunable
parameters, and was performed in simulation only. Hence, future work includes tuning more
parameters, as well as extending the evaluation to analytical models and to a test-bed.
• Analytical model: Analytical models are needed to study the impact of changes on each
of the application parameters. Although this can be done using simulations or experiments,
the complexity and time required to perform those tasks is prohibitive. Mathematical
models, on the other hand, are simpler to work with and provide faster results. Those
models could show for example that a change in a certain parameter is more effective
than a change in another, or that a parameter p1 is independent of parameter p2. Finally,
mathematical models could be useful to improve the stability and convergence time of
controllers. By using pole analysis in linear control or Lyapunov’s theorem in non-linear
control, it is possible to tune a controller or even prove that the controlled system converges
to a stable configuration.
• MIMO and intelligent controllers: The proposed controller acts only on one of the two
parameters of the application. A MIMO (Multiple Input Multiple Output) controller could
adjust both parameters at the same time. In order to achieve this, it is necessary to perform
a study to characterize the response of the system to changes in each of the parameters
under different conditions. This presents an increased complexity with regards to tuning
one single parameter since the space of possible configurations increases significantly.
• Experiments on a mesh deployment: We are planning to deploy a simple P2P appli-
cation equipped with our controller over a mesh deployment. This would allow us to test
the response time of the fuzzy algorithm on a real scenario. Those tests would allow us to
test the reliability of the proposed solution when facing the unpredictability of real wireless
links.
7.3 Towards Autonomic Wireless Multi-Hop Networks
In order to achieve a complete implementation of self-configuring wireless multi-hop networks,
further work has to be performed in order to produce intelligent configuration solutions for the
120
7.3 TOWARDS AUTONOMIC WIRELESS MULTI-HOP NETWORKS
main tasks of those networks: connectivity, energy and spectrum management, information
sharing and service discovery are some examples.
The contributions of this thesis are an initial step towards the self-configuration in information
and connectivity services. We provided a middleware for the integration of services, protocols
and applications. This middleware facilitates the operation of context-aware, autonomic and
cross-layer software components. Next, we applied this middleware into two specific services.
Those services require a high amount of cross-layer interaction as well as integration of different
software components.
Self-configuration should be coupled with other functions of autonomic systems. Self-op-
timization, self-security and self-healing would allow the network to cope with novel events,
adapting the management of the network accordingly. This is an ambitious vision, which may
take several years, if not decades, to be fully realized.
As future directions for our research, we will focus on the application of theories of artificial
intelligence (AI) for the self-configuration of wireless networks. We observed from the experience
obtained from the use of fuzzy networks in Chapter 6 that there are several methodologies,
theories and models of AI that may simplify the conception and development of intelligent
management systems. Those models could be used to measure, or maybe even prove, the upper
and lower bounds of robustness and performance of self-configuring control loops. Besides, some
those methods could add optimization and learning capabilities to the proposed self-configuration
solutions.
121
7. CONCLUSIONS
122
Appendix A
Instantiating the Analytical Model for
Rayleigh Fading and Two-Ray Ground
Propagation
In the proposed analytical model, we employed functions to abstract our derivations from the
propagation and fading models. This allows our models to incorporate any given propagation
or fading models. In this Appendix we show the derivations of the equation required for the
instantiation of the analytical model under Rayleigh fading and Two-Ray Ground propagation.
A.1 The Rayleigh Fading and Two-Ray Ground Propagation Mod-
els
The Two-Ray Ground propagation model is a popular model for propagation in simulation
studies. It models the effect of multi-path that occurs in wireless signals, considering that the
received signal is the sum of two components [16]. The first one is a direct line of sight component,
whereas the second considers that the signal has been reflected in the ground. This propagation
model is commonly used for modeling outdoor communications.
Propagation models usually consider only the effect of multi-path and signal attenuation due
123
A. INSTANTIATING THE ANALYTICAL MODEL FOR RAYLEIGH FADINGAND TWO-RAY GROUND PROPAGATION
to the distance. However, other effects such as diffraction and the Doppler effect [16]. Diffraction
occurs due to the microscopic imperfections of any surface, which scatter electromagnetic signals.
The Doppler effect, which is caused by movement of the sender or the receiver, causes a shift in
the frequency of the electromagnetic signals. Those effects change in time, and as a consequence
the reception strength of a signal becomes a stochastic process. As a consequence, those models
define a statistical distribution for the incoming signal, after the signal has been attenuated due
to distance. The ensemble of effects is known in the literature as fading. Fading can be classified
into two types: fast and slow. Slow fading models situations where both sender and receiver are
static, while fast fading models the movement of the receiver, the transmitter, or both.
The Rayleigh fading model is a slow fading model. In this model, it is considered that the
multi-path component of the incoming signal dominates over the direct line of sight component.
It is usually employed to model urban environments, where buildings, trees and other objects
create a large amount of fading.
A.2 Adding Fading and Propagation Effects to the Analytical
Model
Equation 4.8 calculates the maximum distance that provides a link with a packet reception
quality Prec. Lets consider channels under Rayleigh fading with parameter σ, the mode of the
distribution. Lets suppose that all values of the distribution under PRX characterize a packet
loss. The loss probability can be determined from the CDF of the distribution:
Ploss = 1− exp(−PRX2
2σ2
)(A.1)
Lets rewrite Equation A.1 to find σ in terms of Prec, the success probability of a packet:
σ =
√−PRX2
2log(1− Ploss)=
PRX√−2log(Prec)
(A.2)
In the Rayleigh model, σ is the average reception power of the line-of-sight (LOS) signal.
Hence, in order for the signal to be received with a reception power superior to PRX with
probability Prec, the reception power of the LOS signal must be equal to σ. We will use the
Two-Ray Ground propagation model to calculate the LOS component [16]. In this model, the
124
A.2 ADDING FADING AND PROPAGATION EFFECTS TO THEANALYTICAL MODEL
distance among receiver and transmitter (d) for given PRX and PRX values obeys Equation A.3,
where α is a constant related to signal power loss in the antennas [16].
d =4
√αPTXσ
(A.3)
Combining equations A.2 and A.3, Equation 4.8 becomes:
d 7→ distProb(PTX , PRX) =4
√αPTX
√−2log(Prec)PRX
(A.4)
125
A. INSTANTIATING THE ANALYTICAL MODEL FOR RAYLEIGH FADINGAND TWO-RAY GROUND PROPAGATION
126
Appendix B
List of Publications
This Annex lists the publications produced during the thesis. The publications below resulted
from the content presented in this manuscript.
• Daniel Fernandes Macedo, Aldri Luiz dos Santos, José Marcos Nogueira, and Guy Pujolle.
Optimizing wireless ad hoc communication resources with a knowledge plane. In The
ninth IFIP International Conference on Mobile and Wireless Communications Networks
(MWCN), pages 86–90, 2007.
• Daniel Fernandes Macedo, Aldri Luiz dos Santos, Guy Pujolle, and José Marcos Nogueira.
MANKOP: A Knowledge Plane for Wireless Ad Hoc Networks. In IEEE/IFIP Network
Operations and Management Symposium (NOMS), pages 706–709, 2008.
• Daniel F. Macedo, Aldri L. dos Santos, José Marcos S. Nogueira, and Guy Pujolle. A
Knowledge Plane for Autonomic Context-Aware Wireless Mobile Ad Hoc Networks. In
IFIP/IEEE International Conference on Management of Multimedia and Mobile Networks
and Services (MMNS), pages 1–13, 2008.
• Daniel F. Macedo, Aldri L. dos Santos, José Marcos S. Nogueira, and Guy Pujolle. A Dis-
tributed Information Repository for Autonomic Context-Aware MANETs. IEEE Transac-
tions on Network and Service Management, 6(1):45–55, March 2009.
Besides the publications above, during the course of this thesis several works have been
produced in subjects outside the of the scope of this document. Some were produced in the
127
B. LIST OF PUBLICATIONS
context of the EU financed Autonomic Internet (AutoI) project. Others were results of research
partnerships with the Federal University of Lavras, Brazil; Federal University of Paraná, Brazil;
Federal University of Minas Gerais, Brazil.
• Diego N. da Hora, Daniel F. Macedo, José M. Nogueira, and Guy Pujolle. Otimizando
requisições de conteúdo em redes par-a-par sobre redes ad hoc. In 24o Simpósio Brasileiro
de Redes de Computadores, pages 985 – 997, 2007.
• Diego Neves da Hora, Daniel Fernandes Macedo, José Marcos S. Nogueira, and Guy Pujolle.
Optimizing peer-to-peer content discovery over wireless mobile ad hoc networks. In IFIP
International Conference on Mobile and Wireless Communications Networks (MWCN),
pages 6–10, 2007.
• Daniel Fernandes Macedo, José Marcos Nogueira, and Antonio Alfredo Ferreira Loureiro.
Um protocolo de roteamento para redes de sensores sem fio adaptável por regras de apli-
cação. In Concurso de Teses e Dissertações, 27o Simpósio da Sociedade Brasileira de
Computação, pages 1998–2002, 2007.
• Luiz Henrique Andrade Correia, Daniel Fernandes Macedo, Aldri L. dos Santos, Antonio
Alfredo Ferreira Loureiro, and José Marcos S. Nogueira. Transmission power control
techniques for wireless sensor networks. Elsevier Computer Networks, 51(17):4765–4779,
December 2007.
• Daniel F. Macedo, Aldri L. dos Santos, and Guy Pujolle. Emerging Architectures for Post-
IP Networking. In Networking and Electronic Commerce Research Commerce (NAEC),
pages 161–171, 2007.
• Claire Fahy, Steven Davy, Zohra Boudjemil, Sven van der Meer, Javier Rubio Loyola, Joan
Serrat, John Strassner, Andreas Berl, Hermann de Meer, and Daniel Macedo. Towards
an information model that supports service-aware, self-managing virtual resources. In
3rd IEEE International Workshop on Modelling Autonomic Communications Environments
(MACE), pages 102–107, 2008.
• Meriem Abid, Daniel Macedo, Zeinab Movahedi, and Guy Pujolle. A pilot-based auto-
nomic architecture for the control of future networks. In International Conference on
Telecommunications and Multimedia (TEMU), 2008.
128
• Daniel Fernandes Macedo, Aldri Luiz dos Santos, and Guy Pujolle. From TCP/IP to con-
vergent networks: challenges and taxonomy. IEEE Communications Surveys & Tutorials,
10(4):40–55, Fourth quarter, 2008.
• Zeinab Movahedi, Meriem Abid, Daniel F. Macedo, and Guy Pujolle. A Policy-based
Orchestration Plane For The Autonomic Management Of Future Networks. In 6th Inter-
national Workshop on Next Generation Networking Middleware (NGNM), 2009.
• Diego N. da Hora, Daniel F. Macedo, Leonardo B. Oliveira, Isabela G. Siqueira, Antonio
A. F. Loureiro, José M. Nogueira, and Guy Pujolle. Enhancing peer-to-peer content
discovery techniques over mobile ad hoc networks. Elsevier Computer Communications,
32(13-14):1445–1459, August 2009.
• Diego Neves da Hora, Daniel Fernandes Macedo, and José Marcos Nogueira. Configuração
automática de parâmetros em redes par-a-par sobre redes ad hoc. In 26o Simpósio
Brasileiro de Redes de Computadores, 2009.
• Leonardo Barbosa Oliveira, Isabela Guimar aes Siqueira, Daniel Fernandes Macedo, José
Marcos S. Nogueira, and Antonio Alfredo Ferreira Loureiro. P2P over MANETs: Ap-
plication and Network Layers’ Routing Assessment. In Mobile Peer-to-Peer Computing
for Next Generation Distributed Environments: Advancing Conceptual and Algorithmic
Applications. IGI Global, 2009.
• Luiz Henrique Andrade Correia, Daniel Fernandes Macedo, Aldri Luiz dos Santos, and
José Marcos S. Nogueira. Transmission power control techniques in ad hoc networks. In
Guide to Wireless Sensor Networks. Springer, 2009.
129
B. LIST OF PUBLICATIONS
130
Bibliography
[1] David A. Patterson. A simple way to estimate the cost of downtime. In Proceedings of the
USENIX conference on system administration (LISA), pages 185–188, 2002.
[2] A. G. Ganek and T. A. Corbi. The dawning of the autonomic computing era. IBM Systems
Journal, 42(1):5–18, January 2003.
[3] Simon Dobson, Spyros Denazis, Antonio Fernández, Dominique Gaïti, Erol Gelenbe, Fabio
Massacci, Paddy Nixon, Fabrice Saffre, Nikita Schmidt, and Franco Zambonelli. A survey
of autonomic communications. ACM Transactions on Autonomic and Adaptive Systems, 1
(2):223–259, December 2006.
[4] Markus C. Huebscher and Julie A. McCann. A survey of autonomic computing—degrees,
models, and applications. ACM Computing Surveys, 40(3):1–28, August 2008.
[5] The NSF Wireless Mobile Planning Group. New architectures and disruptive technologies
for the future internet: The wireless, mobile and sensor network perspective. Technical
report, NSF Wireless Mobile Planning Group Workshop, August 2005.
[6] Jon Crowcroft. GC4: scalable ubiquitous computing systems. In Grand Challenges in
Computing. The British Computer Society, 2004.
[7] Brazilian Computing Society. Grand research challenges in computing in brazil - 2006-
2016. Technical report, Brazilian Computing Society, October 2009. http://www.sbc.
org.br/index.php?language=1&content=downloads&id=272.
[8] Community Research & Development Information Service. Information society technologies
framework programme 6 - towards a global dependability and security framework. http:
//cordis.europa.eu/fp6/ist.htm, October 2009.
131
BIBLIOGRAPHY
[9] Raffaele Bruno, Marco Conti, and Enrico Gregori. Mesh networks: Commodity multihop
ad hoc networks. IEEE Communications Magazine, 43(3):123–131, March 2005.
[10] Ian F. Akyildiz and Xudong Wang. A survey on wireless mesh networks. IEEE Commu-
nications Magazine, 43(9):523–530, September 2005.
[11] Ian F. Akyildiz, Weilian Su, Yogesh Sankarasubramaniam, and Erdal Cayirci. A survey on
sensor networks. IEEE Communications Magazine, 40(8):102–114, August 2002.
[12] Charles E. Perkins. Ad hoc networking: an introduction. In Ad hoc networking, pages
1–28. Addison-Wesley Longman Publishing Co., Inc., 2001. ISBN 0-201-30976-9.
[13] Mihail L. Sichitiu and Maria Kihl. Inter-vehicle communication systems: a survey. IEEE
Communications Surveys & Tutorials, 10(2):88–105, April-June 2008.
[14] Wizzy digital courier. http://www.wizzy.org.za/, October 2009.
[15] Pan Hui, Augustin Chaintreau, James Scott, Richard Gass, Jon Crowcroft, and Christophe
Diot. Pocket switched networks and human mobility in conference environments. In Pro-
ceeding of the ACM SIGCOMM workshop on delay-tolerant networking (WDTN), pages
244–251, 2005.
[16] Theodore S. Rappaport. Wireless Communications: Principles and Practice. Prentice Hall
PTR, second edition, 2002.
[17] Ian F. Akyildiz, Won-Yeol Lee, Mehmet C. Vuran, and Shantidev Mohanty. A survey on
spectrum management in cognitive radio communications and networks. IEEE Communi-
cations Magazine, 46(4):40–48, April 2008.
[18] Ian F. Akyildiz, Won-Yeol Lee, Mehmet C. Vuran, and Shantidev Mohanty. Next gen-
eration/dynamic spectrum access/cognitive radio wireless networks: A survey. Elsevier
Computer Networks, 50(13):2127–2159, September 2006.
[19] Gavin Holland, Nitin H. Vaidya, and Paramvir Bahl. A rate-adaptive MAC protocol
for multi-hop wireless networks. In Proceedings of the international conference on mobile
computing and networking (MobiCom), pages 236–251, 2001.
[20] Eun-Sun Jung and Nitin H. Vaidya. A power control MAC protocol for ad hoc networks.
ACM/Kluwer Journal on Wireless Networks, 11(1-2):55–66, January 2005.
132
BIBLIOGRAPHY
[21] Yang Xiao. IEEE 802.11e: A QoS provisioning at the MAC layer. IEEE Wireless Com-
munications, 11(3):72–79, June 2004.
[22] Matthias Hollick, Ivan Martinovic, Tronje Krop, and Ivica Rimac. A survey on dependable
routing in sensor networks, ad hoc networks, and cellular networks. In Proceedings of the
IEEE EUROMICRO conference, pages 495–502, 2004.
[23] Kemal Akkaya and Mohamed Younis. A survey of routing protocols in wireless sensor
networks. Elsevier Ad Hoc Networks Journal, 3(3):325–349, May 2005.
[24] Karthikeyan Sundaresan, Vaidyanathan Anantharaman, Hung-Yun Hsieh, and Raghupa-
thy Sivakumar. ATP: A reliable transport protocol for ad hoc networks. IEEE Transactions
on Mobile Computing, 4(6):588–603, November-December 2005.
[25] Dina Katabi, Mark Handley, and Charlie Rohrs. Congestion control for high bandwidth-
delay product networks. In Proceedings of the conference on applications, technologies, ar-
chitectures, and protocols for computer communications (SIGCOMM), pages 89–102, 2002.
[26] Ian F. Akyildiz, Yucel Altunbasak, Faramarz Fekri, and Raghupathy Sivakumar. AdaptNet:
An adaptive protocol suite for the next-generation wireless Internet. IEEE Communications
Magazine, 42(3):128–136, March 2004.
[27] Konrad Lorincz, David J. Malan, Thaddeus R. F. Fulford-Jones, Alan Nawoj, Antony
Clavel, Victor Shnayderk, Geoffrey Mainland, Matt Welsh, and Steve Moulton. Sensor
networks for emergency response: Challenges and opportunities. IEEE Pervasive Comput-
ing, 3(4):16–23, October-December 2004.
[28] Scott F. Midkiff and Charles W. Bostian. Rapidly-deployable broadband wireless networks
for disaster and emergency response. In Proceedings of the 1st IEEE workshop on disaster
recovery networks, 2002.
[29] G. Werner-Allen, J. Johnson, M. Ruiz, J. Lees, and M. Welsh. Monitoring volcanic erup-
tions with a wireless sensor network. In Proceedings of the european workshop on sensor
networks (EWSN), 2005.
[30] Vijay Kumar, Daniela Rus, and Sanjiv Singh. Robot and sensor networks for first respon-
ders. IEEE Pervasive Computing, 3(4):24–33, October-December 2004.
133
BIBLIOGRAPHY
[31] Marco Conti, Gaia Maselli, Giovanni Turi, and Silvia Giordano. Cross-layering in mobile
ad hoc network design. Computer, 37(2):48–51, February 2004.
[32] Vineet Srivastava and Mehul Motani. Cross-layer design: A survey and the road ahead.
IEEE Communications Magazine, 43(12):112–119, December 2005.
[33] Liliana Rosa, Antónia Lopes, and Luís Rodrigues. Policy-driven adaptation of protocol
stacks. In Proceedings of the international conference on autonomic and autonomous sys-
tems (ICAS), 2006.
[34] Thomas Bullot, Rida Khatoun, Louis Hugues, Dominique Gaïti, and Leila Merghem-
Boulahia. A situatedness-based knowledge plane for autonomic networking. International
Journal of Network Management, 18(2):171–193, March-April 2008.
[35] International Business Machines. An architectural blueprint for autonomic computing.
Technical report, IBM, April 2003.
[36] Salim Hariri, Bithika Khargharia, Houping Chen, Jingmei Yang, Yeliang Zhang, Manish
Parashar, and Hua Liu. The autonomic computing paradigm. Cluster Computing, 9(1):
5–17, January 2006.
[37] Apostolos Malatras and George Pavlou. Context-driven self-configuration of mobile ad hoc
networks. In Proceedings of the international IFIP workshop on autonomic communication
(WAC), pages 71–85, 2005.
[38] Xiaoyuan Gu, Xiaoming Fu, Hannes Tschofenig, and Lars C. Wolf. Towards self-optimizing
protocol stack for autonomic communication: Initial experience. In Proceedings of the
international IFIP workshop on autonomic communication (WAC), pages 186–201, 2005.
[39] Maurice D. Mulvenna, Franco Zambonelli, Kevin Curran, and Chris D. Nugent. Knowledge
networks. In Proceedings of the international IFIP workshop on autonomic communication
(WAC), pages 99–114, 2005.
[40] Antonio Manzalini and Franco Zambonelli. Towards Autonomic and Situation-Aware Com-
munication Services: the CASCADAS Vision. In Proceedings of the IEEE workshop on
distributed intelligent systems: collective intelligence and its applications (DIS), pages 383–
388, 2006.
134
BIBLIOGRAPHY
[41] David Clark, Craig Partridge, J. Christopher Ramming, and John T. Wroclawski. A knowl-
edge plane for the internet. In Proceedings of the conference on applications, technologies,
architectures, and protocols for computer communications (SIGCOMM), pages 3–10, 2003.
[42] Mike Wawrzoniak, Larry Peterson, and Timothy Roscoe. Sophia: an information plane for
networked systems. SIGCOMM Computer Communications Review, 34(1):15–20, January
2004.
[43] John Strassner, Micheál Ó Foghlú, Willie Donnelly, and Nazim Agoulmine. Beyond the
knowledge plane: An inference plane to support the next generation internet. In Proceedings
of the global information infrastructure symposium (GIIS), pages 112–119, 2007.
[44] Norbert Niebert, Stephan Baucke, Ibtissam El Khayat, Martin Johnsson, Börje Ohlman,
Henrik Abramowicz, Klaus Wuenstel, Hagen Woesner, Jürgen Quittek, and Luis M. Cor-
reia. The way 4WARD to the creation of a future internet. In Proceedings of the interna-
tional symposium on personal, indoor and mobile radio communications (PIMRC), pages
1–5, 2008.
[45] International Telecommunication Union (ITU). Telecommunications management stan-
dards M (TMN and network maintenance). http://www.itu.int/rec/T-REC-M/e, Octo-
ber 2009.
[46] Mohammad A. Razzaque, Simon Dobson, and Paddy Nixon. A cross-layer architecture for
autonomic communications. In Proceedings of Autonomic networking (AN), pages 25–35,
2006.
[47] Marco Conti, Enrico Gregori, and Giovanni Turi. A cross-layer optimization of gnutella for
mobile ad hoc networks. In Proceedings of the ACM international symposium on mobile
ad hoc networking and computing (MobiHoc), pages 343–354, 2005.
[48] Douglas S. J. De Couto, Daniel Aguayo, John Bicket, and Robert Morris. A high-
throughput path metric for multi-hop wireless routing. In Proceedings of the international
conference on mobile computing and networking (MobiCom), pages 134–146, 2003.
[49] Richard Draves, Jitendra Padhye, and Brian Zill. Routing in multi-radio, multi-hop wireless
mesh networks. In Proceedings of the international conference on mobile computing and
networking (MobiCom), pages 114–128, 2004.
135
BIBLIOGRAPHY
[50] Vikas Kawadia and P. R. Kumar. A cautionary perspective on cross layer design. IEEE
Wireless Communications, 12(1):3–11, February 2005.
[51] Robert Braden, Ted Faber, and Mark Handley. From protocol stack to protocol heap: role-
based architecture. SIGCOMM Computer Communications Review, 33(1):17–22, January
2003.
[52] Ian F. Akyildiz, Mehmet C. Vuran, and Özgür Akan. A cross-layer protocol for wireless
sensor networks. In Annual conference on information sciences and systems (CISS), pages
1102–1107, 2006.
[53] Rolf Winter, Jochen H. Schiller, Navid Nikaein, and Christian Bonnet. CrossTalk: Cross-
layer decision support based on global knowledge. IEEE Communications Magazine, 44
(1):93–99, January 2006.
[54] Wafa Berrayana, Habib Youssef, Stéphane Lohier, and Guy Pujolle. XLEngine: Une
architecture cross-layer modèle pour le support de la QoS dans les réseaux sans fils 802.11.
In 8ème Journées doctorales en informatique et réseaux (JDIR), 2007.
[55] Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein. Introduc-
tion to Algorithms. MIT Press, Second edition, 2001.
[56] Fan Ye, Gary Zhong, Songwu Lu, and Lixia Zhang. Gradient broadcast: A robust data
delivery protocol for large scale sensor networks. Wireless Networks, 11(3):285–298, May
2005.
[57] Andrew S. Tanenbaum. Computer networks. Prentice-Hall, Inc., Fourth edition, 2002.
[58] Brad Karp and H. T. Kung. GPSR: Greedy perimeter stateless routing for wireless net-
works. In Proceedings of the international conference on mobile computing and networking
(MobiCom), pages 243–254, 2000.
[59] Shibo Wu and K. Selçuk Candan. GPER: Geographic power efficient routing in sensor net-
works. In Proceedings of the IEEE international conference on network protocols (ICNP),
pages 161–172, 2004.
136
BIBLIOGRAPHY
[60] Dario Ferrara, Laura Galluccio, Alessandro Leonardi, Giacomo Morabito, and Sergio
Palazzo. MACRO: an integrated MAC/routing protocol for geographic forwarding in wire-
less sensor networks. In Proceedings of the IEEE conference on computer communications
(INFOCOM), volume 3, pages 1770–1781, March 2005.
[61] Azzedine Boukerche, Anis Zarrad, and Regina Araújo. Smart gnutella overlay formation
for collaborative virtual environments over mobile ad-hoc networks. In Proceedings of the
IEEE international symposium on distributed simulation and real-time applications (DS-
RT), pages 143–156, 2006.
[62] Paolo Bellavista, Antonio Corradi, Rebecca Montanari, and Alessandra Toninelli. Context-
aware semantic discovery for next generation mobile systems. IEEE Communications Mag-
azine, 44:62–71, September 2006.
[63] Mario Gerla, Christoph Lindemann, and Ant Rowstron. P2P MANET’s - new research
issues. In Perspectives workshop: peer-to-peer mobile ad hoc networks - new research issues,
2005.
[64] James Scott, Pan Hui, Jon Crowcroft, and Christophe Diot. Haggle: A networking archi-
tecture designed around mobile users. In Proceedings of the IFIP conference on wireless
on-demand network systems and services (WONS), 2006.
[65] Réka Albert and Albert-László Barabási. Statistical mechanics of complex networks. Re-
views of Modern Physics, 74(1):47–97, January 2002.
[66] Siva Sivavakeesar, Oscar F. Gonzalez, and George Pavlou. Service discovery strategies in
ubiquitous communication environments. IEEE Communications Magazine, 44:106–113,
September 2006.
[67] Christos Gkantsidis and Pablo Rodriguez Rodriguez. Network Coding for Large Scale
Content Distribution. In IEEE conference on computer communications (INFOCOM),
pages 2235–2245, 2005.
[68] Gerd Kortuem, Jay Schneider, Dustin Preuitt, Thaddeus G. C. Thompson, Stephen Fickas,
and Zary Segall. When peer-to-peer comes face-to-face: Collaborative peer-to-peer comput-
ing in mobile ad hoc networks. In Proceedings of the international conference on peer-to-peer
computing (P2P), pages 75–91, 2001.
137
BIBLIOGRAPHY
[69] Stephanos Androutsellis-Theotokis and Diomidis Spinellis. A survey of peer-to-peer content
distribution technologies. ACM Computing Surveys, 36(4):335–371, December 2004.
[70] Ian Clarke, Oskar Sandberg, Brandon Wiley, and Theodore W. Hong. Freenet: A dis-
tributed anonymous information storage and retrieval system. In Proceedings of designing
privacy enhancing technologies: workshop on design issues in anonymity and unobservabil-
ity, pages 46–66, 2000.
[71] Christos Gkantsidis, Milen Mihail, and Amin Saberi. Random walks in peer-to-peer net-
works: Algorithms and evaluation. Performance Evaluation, 63(3):241–263, March 2006.
[72] Ion Stoica, Robert Morris, David Liben-Nowell, David R. Karger, M. Frans Kaashoek,
Frank Dabek, and Hari Balakrishnan. Chord: a scalable peer-to-peer lookup protocol
for internet applications. IEEE/ACM Transactions on Networking, 11(1):17–32, February
2003.
[73] Sylvia Ratnasamy, Paul Francis, Mark Handley, Richard Karp, and Scott Schenker. A scal-
able content-addressable network. In Proceedings of the conference on applications, tech-
nologies, architectures, and protocols for computer communications (SIGCOMM), pages
161–172, 2001.
[74] Antony I. T. Rowstron and Peter Druschel. Pastry: Scalable, decentralized object loca-
tion, and routing for large-scale peer-to-peer systems. In Proceedings of the IFIP/ACM
international conference on distributed systems platforms (Middleware), pages 329–350,
2001.
[75] Petar Maymounkov and David Mazières. Kademlia: A peer-to-peer information system
based on the XOR metric. In Proceedings of the international workshop on peer-to-peer
systems (IPTPS), pages 53–65, 2002.
[76] Lintao Liu, Kvung Dong Ryu, and Kang-Won Lee. Supporting efficient keyword-based file
search in peer-to-peer file sharing systems. In Proceedings of the IEEE global telecommu-
nications conference (GLOBECOM), volume 2, pages 1259–1265, 2004.
[77] Patrick Reynolds and Amin Vahdat. Efficient peer-to-peer keyword searching. In Proceed-
ings of the ACM/IFIP/USENIX international conference on middleware (Middleware),
pages 21–40, 2003.
138
BIBLIOGRAPHY
[78] Apostolos Malatras, Antonois M. Hadjiantonis, and George Pavlou. Exploiting context-
awareness for the autonomic management of mobile ad hoc networks. Journal of Network
and System Management, 15(1), March 2007.
[79] Norbert Niebert, Henrik Abramowicz, Göram Malmgren, Joachim Sachs, Uwe Horn, Chris-
tian Prehofer, and Holger Karl. Ambient networks: an architecture for communication
networks beyond 3G. IEEE Wireless Communications, 11(2):14–22, April 2004.
[80] Marten J. van Sinderen, Aart T. van Halteren, Maarten Wegdam, Hendrik B. Meeuwissen,
and E. Henk Eertink. Supporting context-aware mobile applications: An infrastructure
approach. IEEE Communications Magazine, 44:96–104, September 2006.
[81] Matthias Baldauf, Schahram Dustdar, and Florian Rosenberg. A survey on context-aware
systems. International Journal of Ad Hoc and Ubiquitous Computing, 2(4):263–277, June
2007.
[82] Alec Woo, Terence Tong, and David Culler. Taming the underlying challenges of reliable
multihop routing in sensor networks. In Proceedings of the international conference on
embedded networked sensor systems (SenSys), pages 14–27, 2003.
[83] Vikas Kawadia and P. R. Kumar. Principles and protocols for power control in wireless ad
hoc networks. IEEE Journal on Selected Areas in Communications, 23(1):76–88, January
2005.
[84] Wafa Berrayana, Habib Youssef, Stéphane Lohier, and Guy Pujolle. A cross-layer auto-
nomic architecture for QoS support in wireless networks. In Proceedings of IFIP wireless
days (WD), 2008.
[85] Cristian Borcea, Chalermek Intanagonwiwat, Porlin Kang, Ulrich Kremer, and Liviu Iftode.
Spatial programming using smart messages: Design and implementation. In Proceedings
of the international conference on distributed computing systems (ICDCS), pages 690–699,
2004.
[86] Marco Mamei and Franco Zambonelli. Programming stigmergic coordination with the
TOTA middleware. In Proceedings of the international joint conference on autonomous
agents and multiagent systems (AAMAS), pages 415–422, 2005.
139
BIBLIOGRAPHY
[87] Amy L. Murphy, Gian Pietro Picco, and Gruia-Catalin Roman. LIME: A coordination
model and middleware supporting mobility of hosts and agents. ACM Transactions on
Software Engineering and Methodology, 15(3):279–328, July 2006.
[88] Ginkgo Networks. Ginkgo agent version 2 (aka “Agent Willow”) programming manual v1.1,
October 2008.
[89] John Strassner. DEN-ng: achieving business-driven network management. In Proceedings
of the IEEE/IFIP network operations and management symposium (NOMS), pages 753–
766, 2002.
[90] Distributed Management Task Force (DMTF). CIM schema version 2.18. http://www.
dmtf.org/standards/cim/cim_schema_v218, October 2009.
[91] ebXML. ebXML – Enabling a global electronic market. http://www.ebxml.org/specs/,
October 2009.
[92] World Wide Web Consortium (W3C). XML – Extensible Markup Language. http://www.
w3.org/XML/, October 2009.
[93] International Telecommunication Union (ITU). ASN.1 – Abstract Syntax Notation One.
http://www.itu.int/ITU-T/asn1/, October 2009.
[94] Bartosz Biskupski, Jim Dowling, and Jan Sacha. Properties and mechanisms of self-
organizing MANET and P2P systems. ACM Transactions on Autonomic and Adaptive
Systems, 2(1):1–34, March 2007.
[95] Johann Van Der Merwe, Dawoud Dawoud, and Stephen McDonald. A survey on peer-
to-peer key management for mobile ad hoc networks. ACM Computing Surveys, 39(1):1,
April 2007.
[96] Chris Karlof, Naveen Sastry, and David Wagner. TinySec: a link layer security architecture
for wireless sensor networks. In Proceedings of the international conference on embedded
networked sensor systems (SenSys), pages 162–175, 2004.
[97] Haiyun Luo, Jiejun Kong, Petros Zerfos, Songwu Lu, and Lixia Zhang. URSA: ubiqui-
tous and robust access control for mobile ad hoc networks. IEEE/ACM Transactions on
Networking, 12(6):1049–1063, June 2004.
140
BIBLIOGRAPHY
[98] Sergio Marti, T. J. Giuli, Kevin Lai, and Mary Baker. Mitigating routing misbehavior in
mobile ad hoc networks. In Proceedings of the international conference on mobile computing
and networking (MobiCom), pages 255–265, 2000.
[99] Javier Gomez, Andrew T. Campbell, Mahmoud Naghshineh, and Chatschik Bisdikian.
PARO: supporting dynamic power controlled routing in wireless ad hoc networks.
ACM/Kluwer Journal on Wireless Networks, 9(5):443–460, September 2003.
[100] Budhaditya Deb, Sudeept Bhatnagar, and Badri Nath. ReInForM: reliable information for-
warding using multiple paths in sensor networks. In Proceedings of the IEEE international
conference on local computer networks (LCN), pages 406–415, October 2003.
[101] Remi Badonnel, Radu State, and Olivier Festor. Management of mobile ad hoc networks:
information model and probe-based architecture. International Journal of Network Man-
agement, 15(5):335–347, August 2005.
[102] Wenli Chen, Nitin Jain, and Suresh Sing. ANMP: Ad hoc network management protocol.
IEEE Journal on Selected Areas in Communications, 17(8):1506–1531, August 1999.
[103] B. Moore. RFC 3460: Policy Core Information Model (PCIM) Extensions. http://www.
rfc-editor.org/rfc/rfc3460.txt, January 2003.
[104] Ricardo Nabhen, Edgar Jamhour, and Carlos Maziero. RBPIM: a PCIM-based framework
for RBAC. In Proceedings of the IEEE international conference on local computer networks
(LCN), pages 52–61, 2003.
[105] Laura M. Feeney. A taxonomy for routing protocols in mobile ad hoc networks. Technical
Report T99-07, Swedish Institute of Computer Science, January 1999.
[106] Osama Younis, Marwan Krunz, and Srinivasan Ramasubramanian. Node clustering in
wireless sensor networks: recent developments and deployment challenges. IEEE Network,
20(3):20–25, May-June 2006.
[107] Diego N. da Hora, Daniel F. Macedo, Leonardo B. Oliveira, Isabela G. Siqueira, Antonio
A. F. Loureiro, José M. Nogueira, and Guy Pujolle. Enhancing peer-to-peer content dis-
covery techniques over mobile ad hoc networks. Elsevier Computer Communications, 32
(13-14):1445–1459, August 2009.
141
BIBLIOGRAPHY
[108] Cisco Systems. Cisco Aironet 802.11abg cardbus adapter. http://www.cisco.
com/en/US/prod/collateral/wireless/ps6442/ps4555/ps5818/product_data_
sheet09186a00801ebc29.html, October 2009.
[109] Ratish J. Punnoose, Pavel V. Nikitin, and Daniel D. Stancil. Efficient simulation of ricean
fading within a packet simulator. In Proceedings of the IEEE vehicular technology confer-
ence (VTC), pages 764–767, 2000.
[110] F. Daneshgaran, M. Laddomada, F. Mesiti, and M. Mondin. Unsaturated throughput
analysis of IEEE 802.11 in presence of non ideal transmission channel and capture effects.
IEEE Transactions on Wireless Communications, 7(4):1276–1286, April 2008.
[111] Starsky H. Y. Wong, Songwu Lu, Hao Yang, and Vaduvur Bharghavan. Robust rate
adaptation for 802.11 wireless networks. In Proceedings of the international conference on
mobile computing and networking (MobiCom), pages 146–157, 2006.
[112] Arash Behzad and Izhak Rubin. High transmission power increases the capacity of ad
hoc wireless networks. IEEE Transactions on Wireless Communications, 5(1):156–165,
January 2006.
[113] R. Riku Jäntti and Seong-Lyun Kim. Joint data rate and power allocation for lifetime
maximization in interference limited ad hoc networks. IEEE Transactions on Wireless
Communications, 5(5):1086–1094, May 2006.
[114] Hongqiang Zhai and Yuguang Fang. Impact of routing metrics on path capacity in multirate
and multihop wireless ad hoc networks. In Proceedings of the IEEE international conference
on network protocols (ICNP), pages 86–95, 2006.
[115] Marcelo M. Carvalho and J.J. Garcia-Luna-Aceves. A scalable model for channel access
protocols in multihop ad hoc networks. In Proceedings of the international conference on
mobile computing and networking (MobiCom), pages 330–344, 2004.
[116] Javier Gomez and Andrew T. Campbell. Variable-range transmission power control in
wireless ad hoc networks. IEEE Transactions on Mobile Computing, 6(1):87–99, January
2007.
142
BIBLIOGRAPHY
[117] Olga Goussevskaia, Magnus Halldorsson, Roger Wattenhofer, and Emo Welzl. Capacity of
arbitrary wireless networks. In Proceedings of the IEEE conference on computer commu-
nications (INFOCOM), 2009.
[118] Bozidar Radunović and Jean-Yves Le Boudec. Rate performance objectives of multihop
wireless networks. IEEE Transactions on Mobile Computing, 3(4):334–349, October 2004.
[119] Giuseppe Bianchi. Performance analysis of the IEEE 802.11 distributed coordination func-
tion. IEEE Journal on Selected Areas in Communications, 18(3):535–547, March 2000.
[120] David Malone, Ken Duffy, and Doug Leith. Modeling the 802.11 distributed coordination
function in nonsaturated heterogeneous conditions. IEEE/ACM Transactions on Network-
ing, 15(1):159–172, February 2007.
[121] Kamin Whitehouse, Alec Woo, Fred Jiang, Joseph Polastre, and David Culler. Exploiting
the capture effect for collision detection and recovery. In Proceedings of the IEEE workshop
on embedded networked sensors (EmNetS-II), 2005.
[122] William C. Y. Lee. Elements of cellular mobile radio systems. IEEE Transactions on
Vehicular Technology, 35(2):48–56, May 1986.
[123] Sameh Gobriel, Rami Melhem, and Daniel Mosse. A unified interference-collision analysis
for power-aware adhoc networks. In Proceedings of the IEEE conference on computer
communications (INFOCOM), pages 598–608, 2004.
[124] Hongqiand Zhai and Yuguang Fang. Physical carrier sensing and spatial reuse in multirate
and multihop wireless ad hoc networks. In Proceedings of the IEEE conference on computer
communications (INFOCOM), pages 1–12, 2006.
[125] Ting-Yu Lin and Jennifer C. Hou. Interplay of spatial reuse and SINR-determined data
rates in CSMA/CA-based, multi-hop, multi-rate Wireless Networks. In Proceedings of the
IEEE conference on computer communications (INFOCOM), pages 803–811, 2007.
[126] Tae-Suk Kim, Hyuk Lim, and Jennifer C. Hou. Improving spatial reuse through tuning
transmit power, carrier sense threshold, and data rate in multihop wireless networks. In
Proceedings of the international conference on mobile computing and networking (Mobi-
Com), pages 366–377, 2006.
143
BIBLIOGRAPHY
[127] Luiz Henrique Andrade Correia, Daniel Fernandes Macedo, Aldri L. dos Santos, Anto-
nio Alfredo Ferreira Loureiro, and José Marcos S. Nogueira. Transmission power control
techniques for wireless sensor networks. Elsevier Computer Networks, 51(17):4765–4779,
December 2007.
[128] Shan Lin, Jingbin Zhang, Gang Zhou, Lin Gu, John A. Stankovic, and Tian He. ATPC:
adaptive transmission power control for wireless sensor networks. In Proceedings of the
international conference on embedded networked sensor systems (SenSys), pages 223–236,
2006.
[129] Jongseok Kim, Seongkwan Kim, Sunghyun Choi, and Daji Qiao. CARA: Collision-aware
rate adaptation for IEEE 802.11 WLANs. In Proceedings of the IEEE conference on com-
puter communications (INFOCOM), pages 1–11, 2006.
[130] Mathieu Lacage, Mohammad Hossein Manshaei, and Thierry Turletti. IEEE 802.11 rate
adaptation: a practical approach. In Proceedings of the international symposium on mod-
eling, analysis and simulation of wireless and mobile systems (MSWiM), pages 126–134,
2004.
[131] Vignesh Bhuvaneshwar, Marwan Krunz, and Alaa Muqattash. CONSET: a cross-layer
power aware protocol for mobile ad hoc networks. In Proceedings of the international
conference on communications (ICC), volume 7, pages 4067–4071, 2004.
[132] Glenn Judd and Peter Steenkiste. Using emulation to understand and improve wireless
networks and applications. In Proceedings of networked systems design and implementation
(NSDI), pages 203–216, 2005.
[133] B. Sadeghi, V. Kanodia, A. Sabharwal, and E. Knightly. OAR: An opportunistic auto-rate
media access protocol for ad hoc networks. Wireless Networks, 11(1-2):39–53, January
2005.
[134] V. Kanodia, A. Sabharwal, and E. Knightly. MOAR: a multi-channel opportunistic auto-
rate media access protocol for ad hoc networks. In Proceedings of the international confer-
ence on broadband networks (BROADNETS), pages 600–610, 2004.
[135] Carl Eklund., Roger B. Marks, Kenneth L. Stanwood, and Stanley Wang. IEEE standard
802.16: a technical overview of the WirelessMAN air interface for broadband wireless
access. IEEE Communications Magazine, 40(6):98–107, June 2002.
144
BIBLIOGRAPHY
[136] FCC. Federal Communications Commission. http://www.fcc.gov/, October 2009.
[137] ARCEP. l’Autorité de Régulation des Communications Électroniques et des Postes. http:
//www.arcep.fr/, October 2009.
[138] ANATEL. Agência Nacional de Telecomunicações. http://www.anatel.gov.br/, October
2009.
[139] Texas Instruments Inc. CC2420 - 2.4 GHz IEEE 802.15.4 / ZigBee-ready RF transceiver.
http://www.ti.com/lit/gpn/cc2420, October 2009.
[140] Texas Instruments Inc. CC1000 - single chip very low power RF transceiver. http://
focus.ti.com/lit/ds/swrs048a/swrs048a.pdf, October 2009.
[141] Daji Qiao, Sunghyun Choi, and Kang G. Shin. Interference analysis and transmit power
control in IEEE 802.11a/h wireless LANs. IEEE/ACM Transactions on Networking, 15
(5):1007–1020, October 2007.
[142] Aditya Akella, Glenn Judd, Srinivasan Seshan, and Peter Steenkiste. Self-management in
chaotic wireless deployments. Springer Wireless Networks, 13(6), December 2007.
[143] Martin Haenggi and Daniele Puccinelli. Routing in ad hoc networks: a case for long hops.
IEEE Communications Magazine, 43(10):93–101, October 2005.
[144] Qi Chen, Felix Schmidt-Eisenlohr, Daniel Jiang, Marc Torrent-Moreno, Luca Delgrossi,
and Hannes Hartenstein. Overhaul of IEEE 802.11 modeling and simulation in NS-2.
In Proceedings of the international symposium on modeling, analysis, and simulation of
wireless and mobile systems (MSWiM), pages 159–168, 2007.
[145] Daniel F. Macedo, Aldri L. dos Santos, Luiz Henrique A. Correia, José Marcos S. Nogueira,
and Guy Pujolle. Energy, transmission power and data rate aware routing on mobile ad
hoc networks. Technical Report RT-DINF-002/2009, Computing Institute, Federal Uni-
versity of Paraná, Brazil, March 2009. URL http://www.inf.ufpr.br/pos/techreport/
RT_DINF002_2009.pdf.
[146] Marc Torrent-Moreno, Steven Corroy, Felix Schmidt-Eisenlohr, and Hannes Hartenstein.
IEEE 802.11-based one-hop broadcast communications: understanding transmission suc-
cess and failure under different radio propagation environments. In Proceedings of the
145
BIBLIOGRAPHY
international symposium on Modeling analysis and simulation of wireless and mobile sys-
tems (MSWiM), pages 68–77, 2006.
[147] Mirco Musolesi and Cecilia Mascolo. Designing mobility models based on social networks
theory. ACM Mobile Computing and Communications Review, 11(3):59–70, July 2007.
[148] Franck Legendre, Vincent Borrel, Marcelo Dias de Amorim, and Serge Fdida. Reconsidering
microscopic mobility modeling for self-organizing networks. IEEE Network, 20(6):4–13,
November-December 2006.
[149] Nils Aschenbruck, Elmar Gerhards-Padilla, Michael Gerharz, Matthias Frank, and Peter
Martini. Modelling mobility in disaster area scenarios. In Proceedings of the ACM sym-
posium on modeling, analysis, and simulation of wireless and mobile systems (MSWiM),
pages 4–12, 2007.
[150] Frank H. P. Fitzek and Martin Reisslein. MPEG-4 and H.263 video traces for network
performance evaluation. IEEE Network, 15(6):40–54, November-December 2001.
[151] Fernanda P. Franciscani, Marisa A. Vasconcelos, Rainer P. Couto, and Antonio A. F.
Loureiro. (re)configuration algorithms for peer-to-peer over ad hoc networks. Journal of
Parallel and Distributed Computing (JPDC), 65(2):234–245, February 2005.
[152] K. Takeshita, M. Sasabe, and H. Nakano. Mobile P2P networks for highly dynamic en-
vironments. In Proceedings of the IEEE international conference on pervasive computing
and communications (PerCom), pages 453–457, 2008.
[153] Alexander Klemm, Christoph Lindemann, and Oliver P. Waldhorst. A special-purpose
peer-to-peer file sharing system for mobile ad hoc networks. In Proceedings of the IEEE
vehicular technology conference (VTC), pages 2758– 2763, 2003.
[154] Rüdiger Schollmeier, Ingo Gruber, and Florian Niethammer. Protocol for peer-to-peer
networking in mobile environments. In Proceedings of the international conference on
computer communications and networks (ICCCN), pages 121– 127, 2003.
[155] Qin Lv, Pei Cao, Edith Cohen, Kai Li, and Scott Shenker. Search and replication in
unstructured peer-to-peer networks. In Proceedings of the international conference on su-
percomputing (ICS), pages 84–95, 2002.
146
BIBLIOGRAPHY
[156] Sergio D. Servetto and Guillermo Barrenechea. Constrained random walks on random
graphs: routing algorithms for large scale wireless sensor networks. In Proceedings of the
ACM international workshop on wireless sensor networks and applications (WSNA), pages
12–21, 2002.
[157] D. Tsoumakos and N. Roussopoulos. Adaptive probabilistic search for peer-to-peer net-
works. In Proceedings of the international conference on peer-to-peer computing (P2P),
pages 102–109, 2003.
[158] Gaurav Raina, Don Towsley, and Damon Wischik. Part ii: control theory for buffer sizing.
SIGCOMM Computer and Communications Review, 35(3):79–82, July 2005.
[159] S. Parekh, N. Gandhi, J. Hellerstein, D. Tilbury, T. Jayram, and J. Bigus. Using control
theory to achieve service level objectives in performance management. Real-Time Systems,
23(1-2):127–141, July-September 2002.
[160] Ying Lu, Avneesh Saxena, and Tarek F. Abdelzaher. Differentiated caching services; a
control-theoretical approach. In Proceedings of the international conference on distributed
computing systems (ICDCS), pages 615–622, Apr. 2001.
[161] Yixin Diao, Joseph L. Hellerstein, and Sujay Parekh. Optimizing quality of service using
fuzzy control. In Proceedings of the IFIP/IEEE International workshop on distributed
systems: operations and management (DSOM), pages 42–53, 2002.
[162] Ray-Guang Cheng and Chung-Ju Chang. Design of a fuzzy traffic controller for ATM
networks. IEEE/ACM Transactions on Networking, 4(3):460–469, June 1996.
[163] Joy Ghosh, Sumesh J. Philip, and Chunming Qiao. Sociological orbit aware location
approximation and routing (SOLAR) in MANET. Ad Hoc Networks, 5(2):189–209, March
2007.
[164] Pan Hui, Jon Crowcroft, and Eiko Yoneki. Bubble rap: social-based forwarding in delay
tolerant networks. In Proceedings of the ACM international symposium on mobile ad hoc
networking and computing (MobiHoc), pages 241–250, 2008.
147
BIBLIOGRAPHY
[165] Christopher L. Barrett, Stephan J. Eidenbenz, Lukas Kroc, Madhav Marathe, and James P.
Smith. Parametric probabilistic sensor network routing. In Proceedings of the ACM inter-
national conference on wireless sensor networks and applications (WSNA), pages 122–131,
2003.
[166] Kevin M. Passino and Stephen Yurkovich. Fuzzy Control. Addison-Wesley, 1998.
[167] Allen B. MacKenzie and Stephen B. Wicker. Game theory and the design of self-configuring,
adaptive wireless networks. IEEE Communications Magazine, 39(11):126–131, November
2001.
[168] Francis J. Mullany, Lester T.W. Ho, Louis G. Samuel, and Holger Claussen1. Self-
deployment, self-configuration: Critical future paradigms for wireless access networks. In
Proceedings of the IFIP workshop on Autonomic Computing (WAC), pages 58–68, 2005.
[169] Charles E. Perkins and Pravin Bhagwat. Highly dynamic destination-sequenced distance-
vector routing (DSDV) for mobile computers. In Proceedings of the conference on commu-
nications architectures, protocols and applications (SIGCOMM), pages 234–244, 1994.
148