Properties and Impact of Vicinity in Mobile Opportunistic Networks
1. Tiphaine Phe-Neau
Properties and Impact of Vicinity in
Mobile Opportunistic Networks
André-Luc BEYLOT Reviewer Professeur, ENSEEIHT
Emmanuel LOCHIN Reviewer Professeur, ISAE
Aline CARNEIROVIANA Examiner Chargée de Recherche HDR, INRIA
Vania CONAN Examiner Directeur de recherche,Thales
Anne FLADENMULLER Examiner Maître de Conférence, UPMC
Vincent GAUTHIER Examiner Maître de Conférence,Télécom SudParis
Marcelo DIAS DE AMORIM Advisor Directeur de recherche, CNRS & UPMC
6. A motivating example
6
The binary intercontact vision
is NOT enough.
A
B
C D
E
F
G
nodes in contact
with A
A
B
C D
E
F
G
nodes in contact
unreachable
nodes
nodes reachable
by an end-to-end path
7. Positionning
MANET-DTN mixed approach
– HYMAD from Whitbeck et al.
– Mixed approach by Ott et al.
– Island-hopping in VANET by Sarafijanovic-Djukic et
al.
Similar vision in satellite networks
– « A DTN routing scheme for LEO satellites topology »
by Diana et al.
7
9. Contributions
I. Uncovering Vicinity Properties of
Intercontacts in DTNs
II. Digging into the Vicinity Dynamics of
Mobile Opportunistic Networks
III. Predicting Vicinity Dynamics
9
11. Uncovering Vicinity Properties of
Intercontacts in DTNs
1st contribution
Tiphaine Phe-Neau, Marcelo Dias de Amorim, and Vania Conan,
“Fine-Grained Intercontact Characterization in Disruption-Tolerant Networks,”
IEEE ISCC, Kerkyra, Greece, June 2011.
Tiphaine Phe-Neau, Marcelo Dias de Amorim, and Vania Conan,
“Vicinity-based DTN Characterization,”
ACM MobiOpp, Zurich, Switzerland, March 2012.
Tiphaine Phe-Neau, Marcelo Dias de Amorim, and Vania Conan,
“The Strength of Vicinity Annexation in Opportunistic Networking,”
IEEE NetSciCom, Torino, Italy, April 2013.
13. 0
0.2
0.4
0.6
0.8
1
1 2 3 4 5 6 7 8 9 ∞
Fractionoftime
Number of hops
An interesting observation with RT
13
The binary assertion limits the
information from the network
14. Sociostructure: Infocom05
14
Most of end-to-end transmission possibilities
come from 2-hop paths
0
100
200
300
400
500
75000 85000 95000 105000 115000
Numberofconnectedpairsover1640
Time t (seconds)
4+
3
2
contact
15. The notion of k-vicinity
κ-vicinity :
The κ-vicinity of node i is the set of all nodes
with shortest paths of length at most κ hops from i.
15
i
1-vicinity
16. The notion of k-vicinity
κ-vicinity :
The κ-vicinity of node i is the set of all nodes
with shortest paths of length at most κ hops from i.
16
2-vicinity
i
17. k-contact and k-intercontact
κ-contact : Two nodes are in κ-contact when they dwell
within each other’s κ-vicinity, with κ ∈ N∗.
κ-intercontact : Two nodes are in κ-intercontact while
they do not belong to each other’s κ-vicinity.
17
i
j
j
j leaves i’s κ-vicinity
(κ-intercontact starts)
κ-vicinity (for κ = 2) j returns to i’s κ-vicinity
(end of κ-intercontact time)
i
18. k-intercontact characterization:
Infocom05
18
2+-intercontact follow the same properties as
binary intercontact. Same knee point.
0.001
0.01
0.1
1
1 10 100 1000 10000
P[κ-intercontact>t]
Time t (seconds)
Contact
2-interc.
3-interc.
4-interc.
5-interc.
6+-interc.
Interc.
19. k-contact characterization: Infocom05
19
Logical: larger k values,
longer average k-contact intervals.
0.001
0.01
0.1
1
1 10 100 1000 10000
P[κ-contact>t]
Time t (seconds)
Contact
Contact
2-contact
2-contact
3-contact
4-contact
5+-contact
i
20. k-contact characterization: Infocom05
20
Logical: larger k values,
longer average k-contact intervals.
0.001
0.01
0.1
1
1 10 100 1000 10000
P[κ-contact>t]
Time t (seconds)
Contact
Contact
2-contact
2-contact
3-contact
4-contact
5+-contact
ii
22. Density-related behavior
22
Two different behaviors
– Dense: more longer k-contact intervals (Infocom05)
– Light: more shorter k-contact intervals (Unimi)
dense light
23. The power of vicinity annexation
The WAIT protocol
– Delays transmission until direct contact
Metric
– Waiting delay: the time between message creation and
destination detection
Performances
– Generation of 10 messages at random times
23
27. 1st contribution wrap up
The binary assertion
covers reality
k-vicinity and k-contact
show hidden transmission
possibilities
k-contact have similar
properties to contact
Using a k={3,4} is enough
Take this
away
27
28. Digging into the Vicinity Dynamics
of Mobile Opportunistic Networks
2nd Contribution
T. Phe-Neau, M. E. M. Campista, M. Dias de Amorim, andV. Conan,
“Padrões de Mobilidade deVizinhança em Redes de Contato Intermitente,”
In SBRC, Brasilia, DF, Brazil, May 2013 - Best paper candidate!
T. Phe-Neau, M. E. M. Campista, M. Dias de Amorim, andV. Conan,
“ExaminingVicinity Dynamics in Opportunistic Networks,”
In ACM MSWiM, Barcelona, Spain, November 2013.
T. Phe-Neau, M. E. M. Campista, M. Dias de Amorim, andV. Conan,
“Padrões de Mobilidade deVizinhança em Redes de Contato Intermitente (extended),”
In RB-RESD, accepted.
29. Vicinity Motion
Pairwise Markov chain process
– States: k+1 states representing pairwise distances (∞,
1...k)
– Transitional probabilities: probability of 2 nodes being
at distance m during step s knowing that they were at
distance n before, m ≠ n
– Asynchronous method
0.10 0.44 0.38 0.24
0.16 0.30 0.311 2 3 4∞
0.35 0.300.25
0.32
0.35 0.42 0.57
29
30. Vicinity patterns
Birth
– appearance in the κ-vicinity after a period of k-intercontact
Death
– nodes departure from the κ-vicinity
Sequential
– the process of drifting closer or further from each other,
when nodes at a distance m move to distance m-1 or m+1
Erratic
30
0.10 0.44 0.38 0.24
0.16 0.30 0.311 2 3 4∞
0.35 0.300.25
0.32
0.35 0.42 0.57
31. Vicinity patterns: birth
31
Most births happen at states {3,4} not contact
0
20
40
60
80
100
1 2 3 4 5 6 7
%oftotal
Birth State
Rollernet
Unimi
RT
Infocom05
Sigcomm09-d1
32. Vicinity patterns: death
32
Death have quite constant rates
0
20
40
60
80
100
1 2 3 4 5 6 7
%oftotal
Current State
Rollernet
Unimi
Sigcomm09-d1
RT
Infocom05
33. Vicinity patterns: sequential
33
Sequential movements have similar patterns
0
20
40
60
80
100
1 2 3 4 5 6 7
%oftotal
Current State
Rollernet
Unimi
RTInfocom05
Sigcomm09-d1
34. Vicinity patterns: repartition
Most observed movements come from Death
and Sequential patterns
0
20
40
60
80
100
1 2 3 4 5 6 7
%oftotal
Distance
Death
Sequential
Erratic
34
35. Vicinity patterns: take-aways
Birth
– Monitor k-vicinity up to k = {3,4} hops
– Increases arrival detection to 46% to 72%
Death
– Rates remain quite constant with larger k values
Sequential
– A tendency to come closer
– With death, represents up to 90% of observed
movements
35
38. TiGeR: evaluation (1/2)
Average transitions do match
38
0
0.2
0.4
0.6
0.8
1
2-∞2-12-32-42-52-62-73-∞3-13-23-43-53-63-74-∞4-14-24-34-54-64-7
(From - To) States
Average VM
Mode I
Mode II
41. TiGeR: evaluation (2/2)
41
Pairwise transitions fit as well
0
0.2
0.4
0.6
0.8
1
5-∞
5-4
5-6
6-∞
6-3
6-5
7-∞
7-6
Transitions
(From - To) States
(30,36)-transitions (Infocom05)
Original
Mode I
Mode II
42. 2nd contribution wrap up
Vicinity Motion models
vicinity behavior under a
chain process
3 main patterns: birth,
death, and sequential
The TiGeR generator
provides synthetic
vicinity behaviors
Take this
away
42
43. Predicting Vicinity Dynamics
3rd contribution
A. Tatar, T. Phe-Neau, M. Dias de Amorim, V. Conan, and S. Fdida,
“Beyond Contact Predictions in Mobile Opportunistic Networks,”
submitted to IFIP/IEEE WONS.
44. Synchronous Vicinity Motion (SVM)
Pairwise Markov chain process
– States: k+1 states representing pairwise distances (∞,
1...k)
– Transitional probabilities: probability of 2 nodes being
at distance m during step s knowing that they were at
distance n before
– Synchronous method every τ seconds
0.006 0.22 0.18 0.09
0.15 0.27 0.231 2 3 4∞
0.01 0.010.02
0.13
0.19 0.28 0.36
0.96
0.13
44
46. Vicinity Motion-based
Markovian heuristic
46
[0 1 0]
0,5 0,1 0,4
0,7 0,2 0,1
0,6 0,3 0,1
x!
1
= [0,7 0,2 0,1]
Sf!
Ss!
Sf = ∞ : first highest probability guess
Ss = 1 : second highest probability guess
Nodes in state 1!
47. Evaluation
Is it right?
– nth future steps : n = {1...10}
– Exact Distance (ED): if Sf or Ss = observed value OK!
– Upper bound Distance (UbD): if Sf or Ss ≥ observed
value OK!
Full vs partial knowledge
– SVM over full experiment
– SVM over half experiment, performance test on the
second half
47
48. Complete knowledge heuristic:
Sigcomm09
It is highly efficient because DTN scenarios are
mainly disconnected
0.8
0.82
0.84
0.86
0.88
0.9
0.92
0.94
0.96
0.98
1
1 2 3 4 5 6 7 8 9 10
Proportionofcorrectguesses
nth
forward step
SVM-full
ED
UbD
48
50. 3rd contribution wrap up
Vicinity Motion embeds
a prediction scheme
It is highly efficient in
DTN because of their
disconnected behavior
Useable in the close
futureTake this
away
50
54. 54
Take this away
TheVicinitypackage
http://vicinity.lip6.fr
Vicinity is important in DTN.
k-vicinity up to {3,4} hops
is enough.
Vicinity Motion.
Birth, death, and sequential.
TiGeR generator.
Predictions with theVicinity
Motion-based Heuristic.
Simple with high efficiency.
55. Research directions
Vicinity usage in routing protocols and
vehicular networks
Opportunistic networks interoperability
Predictions in DTNs
55
56. Publications (1/2)
T. Phe-Neau, M. Dias de Amorim and V. Conan,
“Caractérisation en diptyque de l’intercontact pour les réseaux à connectivité intermittente,”
In Algotel, La Grande Motte, France, May 2012.
T. Phe-Neau, M. E. M. Campista, M. Dias de Amorim, and V. Conan,
“Padrões de Mobilidade de Vizinhança em Redes de Contato Intermitente,”
In SBRC, Brasilia, DF, Brazil, May 2013.
Best paper candidate!
T. Phe-Neau, M. E. M. Campista, M. Dias de Amorim, and V. Conan,
“Padrões de Mobilidade de Vizinhança em Redes de Contato Intermitente,”
In RB-RESD, accepted.
56
57. Publications (2/2)
T. Phe-Neau, M. Dias de Amorim and V. Conan,
“Fine-Grained Intercontact Characterization in Disruption-Tolerant Networks,”
In IEEE ISCC, Kerkyra, Greece, June 2011.
T. Phe-Neau, M. Dias de Amorim and V. Conan,
“Vicinity-based DTN Characterization,”
In ACM MobiOpp, Zurich, Switzerland, March 2012.
T. Phe-Neau, M. Dias de Amorim and V. Conan,
“The Strength of Vicinity Annexation in Opportunistic Networking,”
In IEEE NetSciCom, Torino, Italy, April 2013.
T. Phe-Neau, M. E. M. Campista, M. Dias de Amorim, and V. Conan,
“Examining Vicinity Dynamics in Opportunistic Networks (poster),”
In ACM MSWiM, Barcelona, Spain, November 2013.
57
58. Under review
T. Phe-Neau, M. E. M. Campista, M. Dias de Amorim, and V. Conan,
“Analyzing and Generating Vicinity Traces,”
submitted to Elsevier Ad Hoc Networks.
T. Phe-Neau, M. Dias de Amorim, and V. Conan,
“Uncovering Vicinity Properties in Disruption-Tolerant Networks,”
submitted to Elsevier Computer Networks.
A. Tatar, T. Phe-Neau, M. Dias de Amorim, V. Conan, and S. Fdida,
“Beyond Contact Predictions in Mobile Opportunistic Networks,”
submitted to IFIP/IEEE WONS.
58
==== La première question que l’on peut se poser est “qu’est ce qu’un réseau mobile opportuniste?”
==== De nos jours, la plupart des gens transportent avec eux un smartphone, un ordinateur portable, une tablette ou une consoles de jeux de type (3DS, Playstation Vita). Toutes ces machines ont plus de capacités de calcul et de mémoire que la première fusée à être partie sur la lune. Nous transportons ces éléments avec nous la plupart du temps que ce soit à la maison, au travail ou durant nos trajets quotidiens.
Les capacités des ces machines permettent d’envoyer et de recevoir des informations au gré de nos rencontres par le biais de technologies sans fils comme Bluetooth ou Wi Fi Direct. Ce système d’émission et réception d’information est un exemple de réseau mobile opportuniste.
==== Toutes les rencontres que nous faisons et les capacités de nos téléphones font de nous, les nouveaux vecteurs de transport d’information. Nous sommes maintenant le Réseau.
==== Plus techniquement les réseaux opportunistes ou disruption-tolerant networks (DTN) ont les caractéristiques suivantes:
Une faible densité et une faible portée des technologies sans fils,
une forte latence dans les communications entre émetteur et destinataire,
Et surtout, des périodes de déconnections.
Ces périodes sont les caractéristiques les plus intéressantes des DTN car avant, une déconnection était l’équivalent d’une faute donc les communications devait stopper et totalement redémarrer. Dans les DTN ça fait parti du fonctionnement ce qui nous donne un énorme degré de liberté au niveau communications.
==== Voici un exemple d’un réseau DTN à 4 noeuds.
A l’instant t1, les noeuds A et B sont connectés et les noeuds C et D aussi.
A t2, après quelques déplacements nous voyons que les 4 noeuds sont connectés en forme de ligne.
A t3, B s’est éloigné en laissant les noeuds A, C et D complètement connectés entre eux.
C’est un exemple de DTN sur lequel toutes les protocoles opportunistes doivent continuer de fonctionner malgré les périodes de connexion, deconnexion.
==== Maintenant, je vais présenter la situation qui a motivé notre étude.
==== Voici un réseaux à 7 nœuds. Observons ce réseau selon le point de vue du nœud A. Avec la vision classique des DTN, le nœud A est en contact avec les nœuds B et C, cad qu’ils peuvent se transmettre de l’information directement. CA c’est la vision classique binaire, ça indique que tous les autres nœuds D, E F et G sont en intercontact? Avec cette vision classique binaire, les nœuds sont soit en contact soit en intercontact, il n’y a pas d’option alternative.
==== Mais on voit bien qu’il y a une différence entre la relation entre les nœuds A et D ou E et la relation des nœuds A et F et G. A a un chemin vers D et E alors que ce n’est pas le cas vers F et G. Pourtant la vision traditionnelle de l’intercontact considère D, E, F et G de la même façon alors qu’en réalité A a un chemin direct vers D et E alors que ce n’est pas le cas vers F et G.
==== Dans les DTN, la ressource la plus rare est la connectivité, alors pourquoi négliger ces chemins vers D et E juste parce qu’ils ne sont pas de longueur 1 alors qu’ils sont disponibles?
Notre approche est originale mais par rapport à la littérature existante, il y a d’autres études qui ont aussi analysé l’utilisation d’une connectivité étendue dans les DTN. On peut entre autre citer:
HYMAD de Whitbeck et al qui a quantifié les comportements entre MANET en DTN en les liants à la densité des réseaux
Ensuite, il y a des approches mixtes entre MANET et DTN pour les mécanismes de routage par Ott et al.
Et sinon dans les réseaux vehibculaires, une approche de island hopping cad de transmission entre ilot de connexion dans ces réseaux par Sarafijanovic et al.
Il est a noté que nous ne sommes pas les seuls à avoir eu une approche de contact étendu, dans son article « A DTN routing scheme for LEO stalleites topology » Rémi Diana et Emmanuel Lochin que je remercie d’avoir accepté d’être rapporteur sur cette thèse ont mis en place une vision similaire dans les réseaux satellitaires.
Reprenons la situation et imaginons cette fois que A souhaite transmettre un message à D à l’instant t0. Lorsque A ne considère que ses contacts B et C, il n’a aucune idée d’à qui il doit transmettre le message, doit-il le transmettre à B ou à C? Imaginons que A choisisse de transmettre à B et que quelques instants plus tard, D et E s’en vont plus loin. Ni A ni B ne peuvent transmettre directement le message à D.
Lorsque A ne considère que ses contacts il n’a aucune façon de discriminer B ou C.
Tandis que si A connaissait son 2-voisinage il saurait qu’il y a un chemin entre A et D et donc il enverrait son message à C qui se trouve sur le plus court chemin instantanné entre A et D et donc pourrait optimiser son choix de prochain saut.
En se basant sur les observations faites à partir de ces situations, nous allons développer 3 contributions permettant d’améliorer l’utilisation du voisinage dans les réseaux DTN.
La première se chargera de clarifier la notion de voisinage dans les DTN avec le k-vicinity et de donner quelques propriétés de notions de contact étendus et intercontact associées nommées k-contact et k-intercontact.
Dans la deuxième, nous allons analyser les mouvements internes au k-vicinity et d’extraire certaines propriétés.
Enfin dans la dernière contribution, nous allons nous intéresser à la prévisibilité des distances dans les k-vicinity.
==== Dans cette thèse, on a travaillé sur différents jeux de données qui sont disponibles librement pour toute la communauté scientifique.
==== La plupart des expériences que nous utilisons sont basées sur des situations réelles. Les participants utilisent des iMotes qui sont capables de détecter si il y a d’autres objets bluetooth actifs à proximité (dans les 10m) et ils signalent aussi leur présence périodiquement.
==== En premier, nous Infocom et Sigcomm qui se sont déroulées durant des conférences scientifiques. Ensuite, Rollernet qui a été capturé pendant une randonnée roller parisienne et enfin Unimi qui se déroule sur le campus d’une université italienne.
==== Nous avons aussi généré des scenario synthétiques à partir de modèle de mobilité Random Trip et Community.
===== Dans cette présentation, je vais principalement présenter les résultats concernant les datasets Infocom, Sigcomm et Unimi pour les datasets réalistes et Random Trip pour les synthétiques.
La première contribution de cette thèse concerne la notion de voisinage dans les DTNs. Lorsque j’ai débuté ma thèse, la plupart des travaux ne considéraient que les aspects contact et intercontact binaire d’un réseau. Mais comme je l’ai montré tout à l’heure, il nous a semblé que ce n’était pas suffisant.
==== Pour savoir si ces contact « étendus » sont vraiment intéressant ou juste un phénomène marginal, nous avons analysé une paire de nœuds du dataset RT.
==== Avec la vision binaire, on voit que cette paire de nœuds reste en contact environ 14% du temps de l’expérience. La vision binaire considère qu’ils restent 86% du temps en intercontact donc on en déduit que 86% du temps, il semble ne pas avoir de moyen de communication direct.
==== Lorsqu’on observe cette même paire de nœuds mais avec un point de vue différent, on voit ils passent 14% de leur temps en contact, MAIS ils se retrouvent aussi 14% du temps à une distance de 2 sauts, 18% du temps à une distance de 3 sauts, environ 8% du temps à une distance de 4 sauts etc. DONC en réalité le vrai intercontact sans aucun chemin direct entre les deux nœuds ne se produit que durant 50% de l’expérience.
==== On voit bien qu’ici, la vision binaire traditionnelle du contact/intercontact limite volontairement notre vision des réseaux DTN.
==== Ici nous avons présenté une partie des données d’Infocom05. Sur l’axe des X, nous avons représenté le temps et sur l’axe des Y, nous représentons le nombre de paires de nœuds connectées par certaines distance. Dans la couche du bas, nous avons le nombre de paires de nœuds connectées par contact direct, la couche jaune représente le nombre de paires de nœuds connectées par une distance 2, ici ça représente le nombre de nœuds connecté par une distance 3 et ainsi de suite.
L’anecdote est qu’on reconnaît ici les différents pics de densité observé durant une conférence, ici c’est le matin et l’arrivée des gens qui est assez étalée dans le temps. Ensuite il y a le pic du déjeuner, la pause café ici et enfin le social event du soir.
==== En dehors de ça, l’observation la plus frappante est que la plus grande part des possibilité de transmission provient des nœuds connectés par une distance de 2 (en jaune) et pas des contacts (en bas). Ainsi si on considérait simplement les nœuds à une distance de 2, on pourrait jusqu’à tripler le potentiel des communications de bout en bout dans ce jeu de données.
==== En l’absence de formalisation de la notion de proximité dans les réseaux opportunistes, nous avons proposé la notion de k-voisinage.
==== Le k-voisinage se définit de la façon suivante:
« Pour un nœud i, son k-voisinage est l’ensemble des nœuds situé à une distance de k sauts ou moins autour de lui. »
==== Voyons un exemple ici avec le 1-voisinage du nœud i.
Voici l’ensemble des nœuds situés à une distance 1 ou moins de i.
C’est l’équivalent des nœuds en contact avec i.
==== Voici son 2-voisinage maintenant.
L’ensemble des nœuds situés à une distance inférieure à deux sauts de i.
Pour obtenir les données de proximité, on estime qu’il y a un protocole qui tourne sur chacun des nœuds de type OSPF permettant d’obtenir la liste des voisins dans le k-voisinage.
Nous avons aussi besoin de définir les notions de contact et intercontact associées. Nous définissons le k-contact en tant que contact étendu:
« deux nœuds sont en k-contact lorsqu’ils sont dans leurs k-voisinage respectifs. » On peut aussi dire qu’ils sont liés par un chemin de longueur maximum k sauts.
==== La notion complémentaire associée est le k-intercontact qui est lorsque « deux nœuds ne sont pas en k-contact » ou bien lorsqu’il n’y a aucun chemin de longueur k ou moins qui les lient.
==== Dans cette figure, nous illustrons les notions de k-contact et k-intercontact pour ce réseau. Les nœuds bleus sont en contact avec i. Les nœuds dans le cercle bleu sont dans le 2-voisinage de i, ils sont donc en 2-contact avec i.
Une période de k-intercontact est caractérisée de la façon suivante: lorsque le nœud j quitte le k-voisinage de i, il se retrouve en k-intercontact jusqu’à ce qu’il y retourne plus tard. Tout le temps consécutif passé en dehors du 2-voisinage est un intervalle de 2-intercontact.
==== Ici, nous nous sommes intéressés à la distribution des intervalles de k-intercontact.
Sur cette figure, nous montrons les fonctions de densité complémentaire des durées d’intervalles de k-intercontact pour les données d’Infocom05. Sur l’axe des X, nous avons les durées en secondes et sur l’axe des Y, nous montrons la probabilité qu’un intervalle de k-intercontact dure plus que t secondes.
==== L’ancienne caractérisation binaire correspond au trait bleu « Interc. ». Notre analyse vérifie les observations faites précédemment par Karagiannis et al: la distribution suit une loi puissance jusqu’à un certain point de référence « knee point » suivi d’une décroissance exponentielle. Pour les distributions de 2-intercontact et +, nous observons le même type de courbe avec un décalage sur le bas et la gauche indiquant une propension, à avoir des durées de k-intercontact réduite.
==== Les distributions de k-intercontact garde les mêmes propriétés que l’intercontact classique avec une concordance du knee point. Ce qui indique une adaptation facile des anciens protocoles utilisant la notion d’intercontact simple vers une notion de k-intercontact.
==== En ce qui concerne la notion de k-contact, nous avions une intuition logique selon laquelle plus la valeur de k dans le k-contact serait élevée, plus la probabilité d’obtenir des intervalles de k-contact de grande durée serait plus élevée. Car topologiquement, le 2+-voisinage couvre plus que le simple 1-voisinage ainsi les nœuds entrant en k-contact, le reste plus longtemps qu’avec le simple contact.
==== Pour un même trajet, en vert, le temps passé dans le 1-voisinage du nœud i est inférieur à celui passé dans le 2-voisinage du nœud i.
=== Notre intuition s’est vérifiée dans le cas d’Infocom05. Les distributions de k-contact ont un décalage vers la droite comparées à celle du contact simple. Ainsi, pour une même durée t, il y a une plus grande probabilité d’obtenir des intervalles de durées supérieures avec les valeurs de k plus élevées.
==== Plus la valeur de k est élevée, plus on a de proba d’avoir des intervalles de k-contact grands.
==== Cependant, dans le cas d’Unimi, nous obtenons des résultats contraires à notre intuition initiale. Nous voyons que les distributions de k-contact sont décalées en bas vers la gauche par rapport à la distribution des contact aggrégés.
==== Ce qui indique que la probabilité d’obtenir des intervalles de durées plus courtes est plus élevée que avec les 2+-contact qu’avec le 1-contact. Ceci est contraire à notre intuition précédente.
==== Mais comment se fait-il qu’avec des k-contact, nous obtenions des intervalles de k-contact de durées inférieures?
==== Ces observations contre-intuitives sont liées à la densité des réseaux considérés.
==== Observons la situation lorsque que la densité est élevée et lorsqu’elle ne l’est pas. Pour un même parcours du nœud bleu, dans le cas d’une densité élevée nous avons un intervalle de 3-contact ici qui est long. Si l’on voit la même chose avec une densité inférieure, pour un même parcours, au lieu d’avoir un intervalle de 3-contact long, nous en obtenons 2 plus petits. Ce phénomène à plus grande échelle, expliquerait l’inversion des distributions observée dans Unimi.
==== Cependant, il est à noter que les durées cumulées des k-contact augmente bien avec des valeurs de k plus élevées. Car même si les probabilités sont plus faibles, la multiplication des petits intervalles, fait que les durées cumulées sont bien plus élevées.
==== Ensuite, nous nous sommes intéressé à l’impact du k-voisinage dans un protocole DTN. Le protocole WAIT (aussi appelé Transmission Directe) délaye la transmission d’un message jusqu’à ce que le noeud rencontre directement le destinataire cad qu’ils soient en contact. Un message est crée vers un destinataire précis et l’on souhaite éviter la diffusion épidémique dans le réseau.
==== Pour évaluer l’impact de l’intégration du k-voisinage dans le protocole WAIT, nous analysons les temps d’attentes entre la génération d’un message vers un destinataire et la détection de ce destinataire. Dans le cas, du protocole WAIT classique, il faudra attendre que le le destinataire arrive en contact direct alors que dans le cas du protocole WAIT avec k-voisinage, on considèrera que le destinataire est détecté si il apparaît à moins de k sauts du nœud voulant envoyer le message.
==== On a généré dix message à des temps aléatoire pour cette expérience.
==== Pour le WAIT protocole simple, le temps d’attente est le temps entre la création du message et la détection de la destination.
==== C’est à dire que c’est le temps entre la création et l’arrivée en contact de la destination.
==== Pour le WAIT protocole avec la notion de k-voisinage, le temps d’attente est le temps entre la création du message et l’arrivée de la destination dans le 2-voisinage.
Le temps d’attente est donc réduit en général avec une valeur de k élevée.
==== Voici nos résultats. Sur l’axe des Y, nous avons indiqué les temps d’attente en secondes et chaque barre représente le temps d’attente moyen pour le contact, le 2-contact, 3-contact etc.
==== Nous observons que pour tous les datasets, les temps moyens les plus élevés se retrouvent avec le contact simple. Ensuite entre le contact et le 2-contact, le temps d’attente est réduit de façon non négligeable. Les réductions vont de 5% avec Unimi jusqu’à 80% avec Community. Plus on augmente la valeur de k, plus le temps d’attente moyen est réduit mais au delà de k=4, les gains deviennent négligeables.
==== Dans cette première partie, nous avons mis en exergue le paradoxe binaire dans les DTNs. Nous avons montré que considérer simplement les nœuds en contact dans les DTN résultait en une sous-utilisation de la connectivité existante alors que c’est l’un des atouts les plus rares des DTN.
==== Les notions de k-voisinage et de k-contact montrent justement cette connectivité ignorée par le paradoxe binaire.
==== Nous avons constaté que les notions de contact étendues 2-contact et + ont des propriétés statistiques similaires au simple contact.
==== Nous avons aussi pu remarquer qu’observer le {3,4}-contact peut être suffisant pour limiter les couts de surveillance du k-voisinage pour les protocols tournant sur les noeuds et obtenir le plus d’événement de proximité possibles.
Dans la deuxième contribution de cette thèse, nous avons étudié ce qu’il se passe à l’intérieur du k-voisinage afin de comprendre ses dynamiques internes.
Nous avons crée le Vicinity Motion pour modéliser le comportement des k-voisinage.
==== Le Vicinity Motion est une chaine de Markov, il y a une chaine par paire de nœuds.
==== Ses états sont les plus courtes distance entre les nœuds concernés: le contact, la distance 2, 3 etc ainsi que le k-intercontact avec la valeur infinie. Ces états sont reliés par des probabilités de transition indiquant la probabilité de passer directement d’une certaine distance à une autre.
==== Cette méthode est asynchrone car elle ne prends en compte les changements de distances que lorsqu’il s’en produit effectivement un.
==== On voit dans cet exemple que la probabilité d’être en k-intercontact et de passer directement en contact est de 10%, d’arriver à une distance 2 est 25%. Il y a une probabilité de 38% de passer ensuite de la distance 2 à la distance 3. Il peut aussi y avoir des transitions directes de 1 à 4 mais dans un soucis de lisibilité, je ne les ai pas représenté ici.
Cette modélisation nous a permis de faire diverses observations.
Tout d’abord nous avons observé 3 types de mouvements principaux:
La naissance: l’arrivée dans le k-voisinage qui consiste au passage de k-intercontact à une autre distance de la chaine,
La mort qui est un départ du k-voisinage, le passage de n’importe qu’elle distance à la valeur infinie,
Les mouvements séquentiels qui consistent en des mouvements d’une distance m à la distance m+1 ou m-1.
Les mouvements erratiques qui sont tous les autres.
Par la suite, nous considérons une valeur de k de 7 afin de voir tous les mouvements arrivant en dessous de cette valeur. Pour nos données, peu d’évènements se déroulent au delà de cette distance.
==== Dans cette figure, nous avons représenté les valeurs des probabilités de naissance pour différents datasets.
Sur l’axe des X, nous avons indiqué la distance d’apparition et sur l’axe des Y, la valeur de probabilité de naissance à cette distance. Par exemple pour Unimi, nous voyons que la probabilité d’un nœud d’apparaître à une distance 2 est d’environ 20%.
==== On peut voir que les courbes ont une allure comparable, elles sont croissantes des distance 1 à 3 ou 4 et décroissent ensuite.
Ainsi nous voyons qu’en valeur absolue, la plupart des naissances dans les k-voisinage ont lieu en distances 3 et 4 avec 20% des naissances en moyenne.
Si l’on considère les valeurs cumulées entre les distances 1 à 4 (comme cela se passerait si on surveillait le 4-voisinage), on obtiendrait entre 46% (rollernet) et 72% (infocom05) des naissances totales.
==== En ce qui concerne les départs ou les morts, on remarque que pour chacun des datasets, les valeurs ne bougent pas énormément.
Au maximum on observe une amplitude de 15% entre les valeurs min et max pour Sigcomm09-d1.
Ainsi en observant simplement le pourcentage de sortie en contact ou à une distance proche, un nœud peut facilement déduire une approximation des valeurs de mort pour les distances supérieures.
==== Pour les mouvements séquentiels, nous dirons simplement que leurs courbes ont des allures très similaires indépendamment des datasets. Une analyse plus précise discriminant les mouvements s’approchant et s’éloignant est disponible dans la thèse.
Il est à noter que ces mouvements sont très présent (de par les valeurs que nous pouvons voir). La séquentialité nous donne une fourchette de prochain mouvement restreinte soit D+1 soit D-1 qui permet d’obtenir un semblant de prédiction sur le mouvement à venir.
==== Dans cette figure, nous avons représenté la répartition des mouvements de voisinage pour Infocom05. Sur l’axe des X, nous avons représenté les distances desquelles partent les différents mouvements observé et sur l’axe des Y, nous avons représenté la répartition des mouvements de mort, des mouvements séquentiels et des mouvements erratiques. Les mouvements erratiques sont simplement le mouvements qui ne sont ni naissance, mort ou mouvement séquentiels.
==== On voit que les morts et les mouvements séquentiels représentent plus de 80% des mouvements observé et cela va jusqu’à 90% pour certaines distance comme 3. Les mouvement erratiques ne sont que très peu présents.
==== En résumé, voici ce qu’on peut retenir concernant les mouvements dans le k-voisinage. Concernant les naissances, la majeure partie des naissancesXX ont lieu aux distances 3 et 4. Si on surveillait le 4-voisinage, on détecterait de 46% à 72% des naissances dans les datasets analysés au lieu de 4 à 15% si on n’analysait que les contacts.
==== Pour les processus de mort, si on devait retenir une chose sans les analyser soi-même, nous avons pu observer que les probabilités de mort varient peu en fonction des états. Ainsi en observant simplement les valeurs des transitions de mort à des distances proches, un nœud peut en déduire les valeurs à des distances plus éloignées.
==== Pour les mouvements séquentiels, on notera qu’il y a une tendance à s’approcher plus qu’à s’éloigner et que les mouvements séquentiels et les processus de mort peuvent représenter jusqu’à 90% des mouvements observés pour certains datasets à certaines distances.
==== Notre but caché lorsque nous avons commencé à analyser les mouvements du k-voisinage, était de pouvoir générer des comportements synthétiques de voisinage.
Grâce au modèle du Vicinity Motion et à ses probabilités de transition, nous sommes parvenus à créer TIGER un générateur de timelines.
Les timelines décrivent le comportement de voisinage entre deux paires de nœuds. Une timeline donne la plus courte distance entre deux nœuds en fonction du temps. Par exemple, ici, aux alentours de 50 500 secondes les deux nœuds se trouvent à une distance 5 avant de passer à une distance 4 puis 3 et 1 avant de repartir à une distance 4, 3 puis re 4 avant d’être en k-intercontact.
==== La motivation première est d’obtenir une connaissance synthétique des comportements de voisinage et de comprendre comment ses mouvements se déroulent afin de pouvoir les intégrer des les fonctionnements des protocoles opportunistes.
==== Tiger a 2 modes pour générer les timelines types, le mode 1 qui donne une durée plus plausible des intervalles et le mode 2 qui respecte plus les probabilités de transitions générées. La description des algorithmes de fonctionnement de Tiger sont disponibles dans la thèse.
==== Afin d’évaluer les performances de Tiger, nous avons comparé les timelines générés par Tiger avec les timelines initiales. Nous nous intéressons ici aux valeurs des transitions moyennes.
Sur l’axe des X, nous indiquons les transitions d’un état à un autre et sur l’axe des Y nous indiquons les valeurs correspondantes.
En vert, nous avons représenté les valeurs des transitions pour les la timeline moyenne d’Infocom05 alors qu’en rouge et en rose nous avons représenté les transitions des timelines de Tiger dans les deux modes différents.
==== On peut voir que les transitions générées ne correspondent pas exactement à la valeur moyenne réelle d’Infocom05 mais que leur allure générale correspond assez bien.
Les valeurs de transitions sont nulles pour les transitions des états 1 à 7 etc dans la valeur moyenne et les timelines synthétiques,
Les valeurs correspondent bien dans les transitions issues des distances 2 à 4,
Dans les distances supérieures à 5, les transitions sont bien plus regroupées et ressemblent moins aux valeurs moyennes d’Infocom05.
Dans ce cas, nous avons comparé les valeurs moyennes par rapport aux timelines de Tiger. Mais les valeurs moyennes sont issues d’un grand mélange de comportement très différents. En réalité, il n’y a pas très souvent de mouvements dans les distances 5 à 7.
==== Au lieu de prendre la timeline moyenne d’infocom05, nous prenons ici une timeline précise d’Infocom05 avec la paire de nœud 30-36.
==== Pour les distances infini à 4, nous voyons que les valeurs de transitions collent aussi bien que précédemment.
==== Pour les distances supérieures, nous voyons cette fois que leur présence collent beaucoup mieux car il n’y a que peu de transitions dans cette zone.
==== Pour cette deuxième contribution, nous avons crée le Vicinity Motion qui permet de quantifier et comprendre les mouvements du k-voisinage par le biais d’une chaine de Markov.
==== Nous avons pu détecter 3 types de mouvements principaux: naissance, mort et mouvements séquentiels. Nous avons aussi observé certaines de leurs propriétés.
==== En nous basant sur les valeurs de Vicinity Motion, nous avons créé le générateur de timelines TigeR qui nous permet d’obtenir des comportement de voisinage synthétique.
Dans cette dernière contribution inédite, nous nous sommes intéressé à la prévisibilité des dynamiques du k-voisinage.
Avant de débuter cette partie, nous avons dû définir une variante plus précise du Vicinity Motion nommée le Vicinity Motion synchrone. Le modèle Markovien reste le même mais le processus de récupération des données se produit toutes les Tau secondes au lieu de suivre la dynamique du réseau.
==== Au niveau des données, cela nous donne des possibilités de bouclage sur un certain état alors que ce n’était pas le cas précédemment.
Nous avons utilisé ce modèle synchrone afin de donner plus de puissance à notre heuristique et qu’elle soit liée à une dimension temporelle précise.
Le pouvoir de prédiction du Vicinity Motion se retrouve dans ses probabilités de transition.
==== En faisant le calcul suivant, nous obtenons deux valeurs possibles pour les distances entre deux nœuds.
Le vecteur de présence indique à quelle distance se trouve actuellement deux nœuds,
La matrices de transition regroupe les probabilités de transitions du VM à la puissance n pour obtenir les prédictions pour le nieme intervalle suivant
Et enfin, nous obtenons ici le vecteur de résultat donnant les probabilités d’être à chaque distance pour le nieme intervalles suivant.
==== Voici un exemple pour un scenario où nous considérons que les distance 1 et 2 et intercontact.
Les nœuds sont actuellement en contact, et nous cherchons à obtenir les prédictions pour l’intervalle suivant d’où la puissance 1 et nous obtenons ces résultats. Ainsi il y a une proba de 0,7 d’être en k-intercontact, 0,2 d’être en contact et 0,1 d’être en distance 2.
==== Dans notre heuristique, nous avons choisi de prendre les états ayant les deux plus grandes probabilités comme états possibles. Ainsi dans notre exemple, l’heuristique nous donne comme états possibles pour le prochain intervalles: soit intercontact ou rester en contact.
==== Pour évaluer les performances de notre heuristique, nous avons confronté les prédictions Sf et Ss aux timelines des différents jeux de données que nous avons.
Nous avons calculé les prédictions pour les 10 intervalles suivants et nous avons considéré deux métriques différentes:
Celle de la distance exactes (ED): si la distance sur les timelines correspond à Sf ou Ss pour l’intervalle considéré, nous considéré que la prédiction est bonne.
Celle de la distance supérieure (UbD): si la distance observée est égale on inférieure à Sf ou Ss, nous considérons que la prédiction est bonne.
Ensuite nous avons comparé les prédictions faites lorsque les probabilités de transitions étaient calculée sur tout le dataset et un cas où les probabilités de transition sont calculée sur la première moitié du dataset et les prédictions testées sur la deuxième moitié des données.
==== Nous présentons ici l’évaluation de l’heuristique avec les données d’Infocom05 avec un calcul de l’heuristique sur la durée totale d’Infocom05.
Sur l’axe des X, nous indiquons les la valeur de N pour les Nieme intervalles suivants considéré pour les prédictions et sur l’axe des Y, nous indiquons la proportion de prédictions correctes avec les metriques distance exactes (ED) en rouge et la métrique distance supérieure (UbD) en vert.
==== La première remarque est que notre heuristique semble être efficace avec les métriques que nous avons utilisée. Avec des prédictions correctes entre 86% et 92% en considérant la métrique Distance Exacte et entre 91 et 95% pour la métrique distance supérieure. La métrique Distance supérieure nous donne de meilleures performances mais cela vient simplement du fait qu’il est plus facile de deviner une tranche de valeur plutot qu’une valeur exacte.
==== On peut se demander pourquoi nous réussissons à atteindre de telles performances. Cela vient du fait que les nœuds sont souvent déconnectés et comme nous considérons que la prédiction de l’intercontact compte dans nos métriques, cela nous donne de bonnes performances.
==== Dans ce cas de figure, nous avons calculé les prédictions de l’heuristique sur la premiere moitié du dataset et nous avons testé ces prédictions sur la deuxième moitié.
==== Comme pour la figure précédente, nous obtenons de meilleurs résultats avec la métrique distance supérieure qu’avec celle de la distance exacte. Un autre remarque est que les performances sont légèrement inférieure qu’avec la configuration précédente. Mais les performances de prédiction restent tout de même élevée et montre la possibilité de faire des prédictions avec une connaissance partielle en profitant du côté répétitif des comportements humains.
==== Dans cette dernière partie, nous avons utilisé les connaissances du Vicinity Motion pour obtenir une heuristique de prédictions de distance dans le k-voisinage.
==== Notre heuristique obtient de bons résultats mais cela vient du fait que les datasets sont souvent déconnectés. L’heuristique prédit souvent parmi ses deux valeurs l’infini qui indique le k-intercontact ce qui explique le taux de réussite des prédictions.
==== L’heuristique est utilisable quasi immédiatement.
La dernière contribution en date de cette thèse est l’implémentation d’un package permettant d’effectuer toutes sortes d’analyses du k-voisinage pour les réseaux opportunistes.
Le Vicinity package permet d’obtenir à partir de n’importe quelles données de connectvité les mesures de Vicinity Motion (probabilité de transition par paire et moyenne, distributions des durées de intervalles de k-contact), les timelines synthétiques correspondantes générées par le générateur de timeline Tiger, les valeurs des prédictions de l’heuristique basée sur les données du Vicinity Motion et quelques autres outils utiles lorsque nous traitons des traces DTN.
Les notions que nous avons développé dans cette thèse ainsqi que ce package s’inscrivent dans le framework du projet europééen MOTO.
==== Le vicinity package est implémenté en Python et utilise les librairies open source Numpy et Networkx.
Il est disponible à l’adresse suivante: http://vicinity.lip6.fr
Si vous le souhaitez, je peux vous montrer un court exemple à la fin de ma présentation.
Au final, voilà ce que l’on peut retenir:
==== En négligeant la notion de proximité et le voisinage, les réseaux opportunistes négligent une grande partie de la connectivité de bout en bout existante. Ainsi l’utilisation du voisinage peut être intéressante, avec le k-voisinage nous avons formalisé cette notion pour les DTN et avons exposé certaine de leurs propriétés. Nous avons aussi montré que pour réduire les couts de surveillance du voisinage, l’utilisation du ¾-voisinage est suffisante pour obtenir la plupart des évènements à proximité.
==== Nous nous sommes ensuite intéressé aux mouvements régissant le comportement interne des k-voisinage en les modélisant avec le Vicinity Motion qui est une chaine de Markov par paire de nœuds, où les états indiquent les distances entre les nœuds et les probabilités de transition indiquant les probabilités d’avoir un mouvement consécutif entre deux distances. Nous avons observé 3 principaux type de mouvement: naissance, mort et mouvements séquentiels avec chacun leur propriétés intéressantes à exploiter. A partir des données du VM, nous avons crée un générateur de mouvement de voisinage ou timeline donnant un comportement synthétique pouvant être utilisé par les protocoles opportunistes.
==== Ensuite, en utilisant les connaissances emmagasinées dans le VM, nous avons mis au point une heuristique permettant de prédire les prochaines distance par paires non seulement pour l’intervalle suivant mais pour autant de prochains intervalles que l’on souhaite. L’heuristique est simple mais montre une efficacité intéressante.
==== Cependant, il me faut rappeler que nos remarques sont valables pour les datasets que nous avons étudié. Nous avons étudier des données très variées dans différents contexte et nous pensons que nos observations s’étendent. Mais puisqu’il ne faut croire personne sur parole, voici enfin, la contribution transiente aux 3 précédentes qui est l’implémentation et la distribution du Vicinity package qui offre la possibilité de générer les comportements de voisinage, les valeurs de Vicinity Motion ainsi que les prédictions de l’heuristique de n’importe quelle dataset pourvu que l’on fournisse les données de connectivité. Ainsi quiconque le souhaite peut appliquer nos analyses à d’autres données et vérifier ou non nos observations.
Après avoir passé un certain temps à étudier les DTNs, actuellement, je trouve qu’il y a 3 directions de recherche qu’il serait intéressant de suivre:
L’utilisation de la notion de voisinage dans les DTN et dans les réseaux véhiculaires. Je pense qu’il y a vraiment des choses intéressante à tirer de la notion de voisinage pour les DTN car la ressource la plus réduite dans les DTN est la connectivité directe et le voisinage permet d’augmenter considérablement d’augmenter cette connectivité avec peu d’effort.
Ensuite, l’interopérabilité des réseaux opportunistes avec d’autres types de réseau afin que les DTN ne soient pas forcément le réseau principal mais puissent appuyer d’autres réseaux plus engorgé ou inversement lorsque les DTN ne peuvent pas atteindre leurs objectifs, qu’ils puissent s’appuyer sur d’autres réseaux pour limiter les pertes comme avec le data offloading.
Comme je l’ai dit lors du premier point, la connectivité est la ressource la plus importante des DTN ainsi prédire quand des nœuds seront en contact de façon précise nous permettrait d’ajuster le comportement des protocoles opportunistes et d’augmenter les performances. Donc je pense qu’il faudrait vraiment poursuivre nos efforts concernant la prédictions dans les DTN.
Voici un récapitulatif des publications que j’ai faites dans le cadre de cette thèse dans des conférences nationales.
Et celles parues dans des conférences internationales.
Et d’autres articles actuellement en cours de soumission.
Merci de votre attention, je me tiens à disposition pour toutes vos questions.
Passons maintenant à la problèmatique de ma thèse.
Passons maintenant à la problèmatique de ma thèse.
Dans cette première partie, nous avons mis en exergue le paradoxe binaire dans les DTNs. Nous avons ainsi montré que considérer simplement les nœuds en contact dans les DTN résultait en sous utilisation de la connectivité existante entre différents nœuds alors que c’est l’un des atouts les plus rares des DTN.
Les notions de k-voisinage et de k-contact montrent justement cette connectivité ignorée par le paradoxe binaire.
A TERMINER.
==== Nous avons crée le Vicinity Motion pour modéliser le comportement des k-voisinage.
==== Le Vicinity Motion est une chaine de Markov, il y a une chaine par paire de nœuds.
==== Ses états sont les plus courtes distance entre les nœuds concernés: le contact, la distance 2, 3 etc ainsi que le k-intercontact avec la valeur infinie. Ces états sont reliés par des probabilités de transition indiquant la probabilité de passer directement d’une certaine distance à une autre.
==== On voit dans cet exemple que la probabilité d’être en k-intercontact et de passer directement en contact est de 10%, d’arriver à une distance 2 est 25%. Il y a une probabilité de 38% de passer ensuite de la distance 2 à la distance 3.
Cette modélisation nous a permis de faire diverses observations.
XX
En conclusion
Voici un récapitulatif des publications que j’ai faites dans le cadre de cette thèse.
Voici un récapitulatif des publications que j’ai faites dans le cadre de cette thèse.
Voici un récapitulatif des publications faites durant cette thèse et des soumission en cours ordonnées de façon chronologique.