You are on page 1of 72

Différents aspects de la mobilité

  Couche Réseau
!  DHCP
!  Mobile IPv4 et IPv6
!  Micromobilité
!  Réseaux ad hoc
Anne Fladenmuller
Couche réseau
But : routage et contrôle des paquets IP.
Opérations prises en compte par IP:
"  Identification de chaque gestion de la QoS
réseau déclenchement des
"  identification des nœuds mécanismes de résolution
du réseau d’adresse
"  redirection des paquets
informations de contrôle et
d’état sur les liens
"  fragmentation et
reassemblage
La mobilité requiert des modifications principalement
dans les fonctions de redirection des paquets
2
Anne Fladenmuller
Couche réseau

Routage classique

132.227.xx E
132.227.61.15
98.217.15.xx A
….

B
98.217.15.xx A D E 132.227.61.xx

C
De : 98.217.15.25
Pour : 132.227.61.18 132.227.61.18
98.217.15.25

3
Anne Fladenmuller

Couche réseau

Mobilité des équipements 132.227.61.15

98.217.15.xx WAN 132.227.61.xx

129.210.112.xx
98.217.15.25 132.227.61.18

132.227.61.18

129.210.112.30

4
Anne Fladenmuller
Couche réseau

Mobilité des équipements 132.227.61.15

98.217.15.xx WAN
?
132.227.61.xx

De : 98.217.15.25 129.210.112.xx
98.217.15.25 Pour : 132.227.61.18

132.227.61.18

129.210.112.30

5
Anne Fladenmuller

Couche réseau

"  Différents aspects de la mobilité


–  Déplacements peu fréquents de l’utilisateur avec
son ordinateur portable ou PDA.
"  Modification de l ’adresse IP : DHCP.
"  Gestion de la macro mobilité.

–  Déplacements fréquents de l’utilisateur : Gestion de


la micro mobilité.

–  Déplacements indépendants de tous les


équipements réseaux : Réseaux Ad Hoc.

6
Anne Fladenmuller
DHCP

"  Attribution d’une nouvelle adresse IP avec


DHCP (Dynamic Host Configuration Protocol).
–  But principal :
"  Simplification de l'administration d'un réseau.
"  Gestion du nomadisme : Déplacement d’un utilisateur avec
son ordinateur dans un nouveau réseau
–  Il permet l'obtention dynamique d’une configuration
réseau :
"  DHCP sert principalement à distribuer des adresses IP
"  Il provient d’une évolution de BOOTP (Bootstrap Protocol)
utilisé pour l’installation de machines à travers un réseau.
"  Un serveur DHCP peut renvoyer des paramètres BOOTP
ou de configuration propres à un hôte donné.
"  RFCs : 1541
7
Anne Fladenmuller

DHCP

"  Principes du protocole DHCP


–  1 serveur DHCP distribue des adresses IP.
"  Le serveur sert de base pour toutes les requêtes DHCP (1
serveur avec un adresse IP fixe par réseau).
"  Le mécanisme de base de la communication est BOOTP
–  Quand une machine est démarrée, elle n'a aucune
information sur sa configuration réseau.
–  Pour trouver et dialoguer avec le serveur DHCP, la machine
va émettre un paquet spécial de diffusion sur le LAN.
–  Lorsque le serveur DHCP reçoit ce paquet, il répond par un
autre paquet de diffusion (le client n'a pas forcément son
adresse IP et n'est donc pas joignable directement)
contenant toutes les informations requises pour le client.

8
Anne Fladenmuller
DHCP

"  Attribution d’une adresse statique ou dynamique

–  Un serveur DHCP fournit généralement des adresses


dynamiques
"  un même ordinateur peut alors recevoir successivement 2
adresses différentes

–  mais il peut aussi fournir une adresse IP fixe à un


client bien particulier.
"  Ceci ne doit être utilisé que de manière modérée, sinon, le
serveur DHCP ne sert à peu près plus à rien

9
Anne Fladenmuller

DHCP

"  Dialogue avec le serveur


–  Les messages DHCP sont transmis via UDP.
–  DHCP fonctionne donc en mode non connecté.
–  Numéros de ports :
"  Le client n'utilise que le port 68 pour envoyer et recevoir ses
messages
"  le serveur envoie et reçoit ses messages sur un seul port, le port
67.
–  Format de la trame BOOTP/DHCP
"  La trame DHCP est en fait la même que BOOTP
"  Le passage de paramètres (nom de la machine...) se fait par
l'intermédiaires d'options.
–  Les options sont documentées dans la RFC2132. Elles portent
toutes un numéro qui les identifie. Par exemple,
"  option 15 : donne au client le nom de domaine du réseau.

"  option 53 : DHCPACK


10
Anne Fladenmuller
DHCP
"  Format de la trame
: vaut 1 pour BOOTREQUEST
(requête client), 2 pour
BOOTREPLY (réponse serveur)
: type de l'adresse hardware
: longueur de l'adresse
hardware (en octet). C'est 6 pour
une adresse MAC
: peut être utilisé par des
relais DHCP
: nombre aléatoire choisi par le
client et qui est utilisé pour
reconnaître le client
: le temps écoulé (en
secondes) depuis que le client a
commencé sa requête
11 : flags divers
Anne Fladenmuller

DHCP
ciaddr : adresse IP du client, lorsqu'il
en a déjà une
yiaddr : la (future) adresse IP du client
siaddr : adresse IP du (prochain)
serveur à utiliser
giaddr : adresse IP du relais
(passerelle par exemple) lorsque la
connexion directe client/serveur n'est
pas possible
chaddr : adresse hardware du client
sname : champ optionnel. Nom du
serveur
file : nom du fichier à utiliser pour le
boot
options : Champs réservé pour les
options. un client DHCP doit être prêt
à recevoir au minimum 576 octets,
mais il peut demander au serveur de
12restreindre la taille de ses messages.
Anne Fladenmuller
DHCP
–  Types de messages DHCP :
"  DHCPDISCOVER (1) pour localiser les serveurs DHCP disponibles
et demander une première configuration
"  DHCPOFFER (2) réponse du serveur à un message
DHCPDISCOVER, qui contient les premiers paramètres
"  DHCPREQUEST (3) requête diverse du client pour par exemple
prolonger son bail
"  DHCPDECLINE (4) le client annonce au serveur que l'adresse est
déjà utilisée
"  DHCPACK (5) réponse du serveur qui contient des paramètres et
l'adresse IP du client
"  DHCPNAK (6) réponse du serveur pour signaler au le client que
son bail est échu ou si le client annonce une mauvaise
configuration réseau
"  DHCPRELEASE (7) le client libère son adresse IP
"  DHCPINFORM (8) le client demande des paramètres locaux, il a
déjà son adresse IP
13
Anne Fladenmuller

DHCP

–  Fonctionnement :
"  Le premier paquet émis par le client est un paquet de type
DHCPDISCOVER.
"  Le serveur répond par un paquet DHCPOFFER pour
soumettre entre autre une adresse IP au client.
"  Le client établit sa configuration, puis fait un
DHCPREQUEST pour valider son adresse IP (requête en
diffusion car DHCPOFFER ne contient pas son adresse
IP).
"  Le serveur répond simplement par un DHCPACK avec
l'adresse IP pour confirmation de l'attribution.
–  Normalement, c'est suffisant pour qu'un client
obtienne une configuration réseau efficace, mais
cela peut être plus ou moins long selon que le client
accepte ou non l'adresse IP...
14
Anne Fladenmuller
DHCP

15
Anne Fladenmuller

DHCP

–  Pour des raisons d'optimisation des ressources réseau, les


adresses IP sont délivrées avec une date de début et une date
de fin de validité : un bail.

"  Dans le bail, il y a non seulement une adresse IP pour le client,


avec une durée de validité, mais également d'autres informations
de configuration comme:
–  L'adresse du DNS (Résolution de noms)
–  L'adresse de la passerelle par défaut (pour sortir du réseau où le
DHCP vous a installé).
–  L'adresse du serveur DHCP.

"  Le bail peut être prolongé sur demande du client ou sur


proposition du serveur. Si le serveur ne reçoit pas de réponse
valide, il rend disponible l'adresse IP.

16
Anne Fladenmuller
DHCP

"  Optimisation de l'attribution des adresses IP en jouant


sur la durée des baux.
–  Le problème est là :
"  si toutes les adresses sont allouées et si aucune n'est libérée au
bout d'un certain temps, plus aucune requête ne pourra être
satisfaite.
–  Sur un réseau où beaucoup d'ordinateurs se branchent souvent, il
est intéressant de proposer des baux de courte durée. Mais attention
de ne bloquer de la bande passante sur des petits réseaux fortement
sollicités.
–  Sur un réseau constitué en majorité de machines fixes, très peu
souvent rebootées, des baux de longues durées suffisent.
"  il est recommandé de ne pas créer de baux inutilement courts,
ceci entraînant une augmentation significative du broadcast sur le
réseau. Le compromis est à trouver entre la durée moyenne de
connexion des utilisateurs, la réserve d'adresses IP du serveur, le
17
nombre d'abonnés...
Anne Fladenmuller

DHCP

"  L’expiration du bail


–  DHCP est préventif : il attend 50% de la durée du bail pour
demander son prolongement
"  pour cela le client contacte le serveur d'origine par un message
(DHCPREQUEST).
"  Si le prolongement de son bail est accepté par le serveur, il lui
envoi un message (DHCPACK) afin que le client puisse se mettre
a jour avec cette nouvelle durée.
–  Si le client n'obtient pas de réponse il va attendre 7/8e de la
durée du bail et va demander à tous les serveurs DHCP s'ils
peuvent prolonger la durée de son bail.
"  Les serveurs DHCP peuvent répondre par un (DHCPACK) pour
prolonger le bail du client.
–  Si un serveur ne peut pas prolonger son bail, il va envoyer un
message (DHCPNACK) au client qui devra recommencer
toute la procédure de demande d'un bail ip.
18
Anne Fladenmuller
DHCP

19
Anne Fladenmuller

DHCP

"  Installation d’un serveur


–  On est pas obligé d’installer un serveur DHCP par
réseau
–  Le serveur ne dispose pas forcément d'une adresse
IP dans la même classe que celles qui constituent
sa plage d'adresses.
–  la négociation se fait alors de la manière suivante :
"  Les requêtes DHCP doivent pouvoir atteindre le serveur
qui est situé sur un autre réseau, elles doivent donc passer
les routeurs, (théoriquement impossible).
"  Installation sur un ou plusieurs routeurs d’un agent de
relais qui va intercepter les requêtes en diffusion et les
transmettre à un serveur DHCP connu de cet agent.

20
Anne Fladenmuller
DHCP

–  C'est l'agent de relais situé sur la passerelle qui va


faire l'intermédiaire et le client réussira tout de
même à obtenir une adresse, donnée par un DHCP
situé sur un autre réseau, mais relayé par l'agent de
relais.

21
Anne Fladenmuller

DHCP/DNS

"  Fonctionnement de l'interaction de mise à jour DHCP/


DNS
–  Le serveur DHCP peut être utilisé pour conserver et mettre à
jour les enregistrements de ressources de pointeur (PTR) et
d'adresses (A) pour le compte de ses clients activés DHCP.
–  Ce processus nécessite l'utilisation d'une option DHCP
supplémentaire : l'option FQDN client (option 81).
"  Cette option permet au client de fournir au serveur DHCP :
–  son nom de domaine complet (FQDN) ,
–  des instructions sur la manière dont il souhaite que le serveur traite
les mises à jour DNS dynamiques pour son compte (le cas échéant).

22
Anne Fladenmuller
DHCP/DNS

"  le serveur peut être configuré de l'une des


manières suivantes pour traiter les demandes
de client :
–  Le serveur DHCP conserve et met à jour les
informations du client auprès de ses serveurs DNS
conformément à la demande du client.
–  Le serveur DHCP effectue toujours la sauvegarde et
la mise à jour des informations du client auprès de
ses serveurs DNS configurés.
–  Le serveur DHCP n'effectue jamais la sauvegarde
et la mise à jour des informations du client auprès
de ses serveurs DNS configurés.
23
Anne Fladenmuller

Différents aspects de la mobilité

  Couche Réseau
! DHCP
! Mobile IPv4 et IPv6
! Micromobilité
! Réseaux ad hoc
  Couche Transport

Anne Fladenmuller
Couche réseau

"  La macro mobilité consiste principalement à


rediriger les paquets vers le nouveau réseau.
–  Un réseau d’origine auquel est rattaché l’adresse IP
de la station mobile
–  Un réseau d’accueil auquel sera rattaché la station
mobile
"  Différentes solutions existent.
–  Elles diffèrent en fonction des mécanismes à mettre
en place pour connaître la nouvelle localisation et
faire parvenir les paquets.
–  Exemple Mobile IP
25
Anne Fladenmuller

Couche réseau

"  Exemple de solution proposée pour la Macro


mobilité:
–  IP Mobile permet de rediriger les messages et
gérer dynamiquement les changements de domaine
dans les réseaux internet.
–  Besoins remplis par le protocole :
"  Un mobile doit être capable de communiquer :
–  avec d’autres machines après avoir changé son point
d’attachement sur l’Internet
–  en utilisant uniquement son adresse IP principale,
indépendamment de sa localisation sur l’Internet
–  avec une autre machine sans que celle-ci ait besoin
d’implémenter le protocole mobile IP
"  un mobile ne doit pas être plus exposé que d ’autres
26 machines sur l’Internet
Anne Fladenmuller
Couche réseau

"  Mobile IP : RFC 2002


–  Définitions :
"  Mobile Node : Nœud qui peut changer de point
d ’attachement au réseau tout en maintenant les
communications en cours.
"  Home Agent : routeur IPv4 qui se situe sur le réseau mère
du mobile (celui sur lequel son adresse IP est rattachée).
"  Foreign Agent : Routeur IPv4 qui se situe dans le réseau
d ’accueil.
"  Corresponding Host : nœud qui veut correspondre avec le
mobile.

27
Anne Fladenmuller

Couche réseau

–  Fonctions de Mobile IP :
"  Agent discovery : la découverte d’une station mobile dans
un réseau d’accueil se fait par diffusion périodique de
messages par l’agent étranger auquel la station mobile
répondra lorsqu ’elle sera dans le domaine d’accueil.

"  Enregistrement : lorsqu’un mobile est hors du réseau mère


il enregistre son adresse temporaire auprès de son agent
mère (Home agent).
–  Registration Request
–  Registration Reply

"  Tunneling : les paquets destinés au mobile sont


interceptés par l’agent mère et transmis au mobile via
l ’agent étranger (Foreign agent).
28
Anne Fladenmuller
Couche réseau

Phase
Phase d’enregistrement
Mobiled’enregistrement
IP solution pourdu
du Foreign
mobilemobilité
la macro host
Agent
dans
auprès
le réseau
du Home
d’accueil
Agent Home Agent
132.227.61.15

98.217.15.xx WAN 132.227.61.xx

129.210.112.xx
98.217.15.25

Mobile Host
132.227.61.18
Foreign Agent
129.210.112.30
29
Anne Fladenmuller

Couche réseau

Phase d’enregistrement :
réponse du Home Agent au Foreign Agent Home Agent
132.227.61.15

98.217.15.xx WAN 132.227.61.xx

129.210.112.xx
98.217.15.25

Mobile Host
132.227.61.18
Foreign Agent
129.210.112.30
30
Anne Fladenmuller
Couche réseau
Phase Existe
d’enregistrement du Foreign
alors un tunnel entre Agent
auprès
le réseau duetHome
mère Agent
la station mobile Home Agent
132.227.61.15

98.217.15.xx WAN 132.227.61.xx

129.210.112.xx
98.217.15.25

Mobile Host
132.227.61.18
Foreign Agent
129.210.112.30
31
Anne Fladenmuller

Couche réseau

Mobile IP solution pour la macro mobilité


Home Agent
132.227.61.15
Intercepte le
paquet
98.217.15.xx WAN 132.227.61.xx

De : 98.217.15.25
Pour : 132.227.61.18 De : 132.227.61.15
129.210.112.xx Pour : 129.210.112.30
98.217.15.25

Mobile Host
132.227.61.18
Foreign Agent
129.210.112.30
32
Anne Fladenmuller
Couche réseau

Mobile IP solution pour la macro mobilité


Home Agent
132.227.61.15

98.217.15.xx WAN 132.227.61.xx

De : 132.227.61.15
129.210.112.xx Pour : 129.210.112.30
98.217.15.25

De : 132.227.61.15
De : 98.217.15.25
Pour : 132.227.61.18 Mobile Host
Pour : 129.210.112.30
132.227.61.18
Foreign Agent
129.210.112.30
33
Anne Fladenmuller

Couche réseau

–  Un problème de Mobile IP :
"  Optimisation du routage…. Home Agent
132.227.61.15

98.217.15.xx WAN 132.227.61.xx

129.210.112.xx
98.217.15.25

Mobile Host
132.227.61.18
Foreign Agent
129.210.112.30
34
Anne Fladenmuller
Agent Discovery

"  La phase de découverte des agents constitue la phase


par laquelle le nœud mobile détecte s’il est attaché à
son réseau mère ou à un réseau d’accueil.
"  Elle permet au nœud mobile de déterminer son COA
lorsqu’il est dans un réseau d’accueil. Le COA peut
être obtenu :
–  par le Foreign Agent (Agent Advertissement )
–  Par un serveur d’accès distant sur le LAN d’accueil
implémentant PPP ou DHCP. On dit alors que le COA est co-
localisé car il est directement attaché au nœud mobile
"  Elle utilise deux types de messages:
–  Agent Advertissement : diffusé ou multicasté par les agents
–  Agent sollicitation : envoyé par un nœud mobile qui ne veut
pas attendre un Agent Advertissement
35
Anne Fladenmuller

Agent Dicovery

"  Agent advertisement

Entête IP Entête ICMP Msg d’obtention d’@


0 7 8 15 16 23 24 31
type code checksum
#addresses addr. size lifetime
router address 1
preference level 1
router address 2
preference level 2
...

type length sequence number


Max registration lifetime R B H F M G V reserved
COA 1
COA 2
36 ...
Anne Fladenmuller
Agent dicovery
Vers = 4 IHL Type of Service Total Length
Identification Flags Fragment Offset
IP header
TTL = 1 Protocol = ICMP Header Checksum
Entête ICMP
Adresse Source = Home/Foreign Agent
(RFC 791)

Destination Address = 255.255.255.255 or 224.0.0.1


Type =9 Code=16 Checksum
Num Addrs Add Entry Size Lifetime (of this Advertissement) ICMP
Router Address [1] Router
Preference Leve [1] Advertisement
Router Address [2] (RFC 1256)
Preference Leve [2]
...
Type = 16 Length Sequence Number
(Maximum) Registration Lifetime R B H F M G V Reserved Mobility Agent
Advertisement
Care-of Address [1] Extension
Care-of Address [2] (RFC 2002)
...
Type = 19 Length Prefix Length [1] Prefix Length [2] Prefix Length
37 ... Extension Optional
(RFC 2002)
Anne Fladenmuller

Agent advertisement

"  Agent Sollicitation


Vers = 4 IHL Type of Service Total Length

Identification Flags Fragment Offset

IP header
TTL = 1 Protocol = ICMP Header Checksum (RFC 791)

Source Address = Mobile node ’s Home Address

Destination Address = 255.255.255.255 or 224.0.0.2

Type =10 Code = 0 Checksum ICMP Router


Solicitation
(RFC 1256)
Reserved

38
Anne Fladenmuller
Enregistrement

"  Fonctionnalités
–  Demande les fonctions de routage du FA
–  Informe le HA de la nouvelle localisation du mobile
–  Met à jour une association qui va bientôt expirer
–  Dé-enregistrele mobile de retour dans son réseau mère
"  La phase d’enregistrement :
–  Est déclenchée dès que le mobile détecte qu’il a changé de
point d’attache
–  Utilise l’information obtenue par la phase de découverte
d’agent pour déterminer le type d’enregistrement (avec le
« Foreign Agent » ou l’adresse temporaire du nœud mobile)
"  Utilisation de deux types de messages :
–  registration request
–  registration reply
39
Anne Fladenmuller

Enregistrement

MN FA HA MN HA

40
Anne Fladenmuller
Enregistrement

"  Demande d’enregistrement

Entête IP Entête UDP Entête IP mobile Extensions

0 7 8 15 16 23 24 31
type S B D M G V rsv lifetime
Adresse du MN
COA
identification

extensions . . .

41
Anne Fladenmuller

Enregistrement
"  Demande d’enregistrement
–  Flags :
"  S=Simultaneous Registrations (multiple Care-of Adresses)
"  B=Broadcast
"  D=Care-of Address co-localisée
"  M,G,V indiquent le type d’encapsulation
–  Type identifie le message d’enregistrement
–  Lifetime spécifie la durée de l’association COA/HA
–  Home Address est liée à la Care-of Address
–  Home Agent identifie l’agent mère qui doit enregistrer
l’association
–  Identification : utilisé pour protéger contre les attaques (corréler
les messages Registration Request et Registration Reply)
–  L’extension d’authentification sert à authentifier le noeud
mobile auprès de son agent mère
42
Anne Fladenmuller
Encapsulation

original IP header original data

new IP header new data

outer header inner header original data

43
Anne Fladenmuller

Encapsulation

"  Encapsulation d’un paquet dans un autre en tant que


données
–  cf IPv6 dans IPv4 (6Bone), Multicast dans Unicast (Mbone)
–  ici encapsulation IP-dans-IP, encapsulation minimale ou
GRE (Generic Record Encapsulation)
"  encapsulation IP-dans-IP (requis dans RFC 2003)
–  tunnel entre ver. IHL TOS length
IP identification flags fragment offset
HA et COA TTL IP-in-IP IP checksum
IP address of HA
Care-of address COA
ver. IHL TOS length
IP identification flags fragment offset
TTL lay. 4 prot. IP checksum
IP address of CN
IP address of MN
44 TCP/UDP/ ... payload
Anne Fladenmuller
Encapsulation

"  encapsulation minimale (optionnel)


–  Évite les répétitions de champs identiques
–  cf TTL, IHL, version, TOS
–  Applicable seulement sur les paquets non fragmentés, pas de
place pour l’identification des fragments

ver. IHL TOS length


IP identification flags fragment offset
TTL min. encap. IP checksum
IP address of HA
care-of address COA
lay. 4 protoc. S reserved IP checksum
IP address of MN
original sender IP address (if S=1)
TCP/UDP/ ... payload
45
Anne Fladenmuller

Generic Routing Encapsulation


original
original data
header

GRE original
outer header original data
header header

new header new data

ver. IHL TOS length


IP identification flags fragment offset
TTL GRE IP checksum
IP address of HA
Care-of address COA
C R K S s rec. rsv. ver. protocol
checksum (optional) offset (optional)
key (optional)
sequence number (optional)
routing (optional)
ver. IHL TOS length
IP identification flags fragment offset
TTL lay. 4 prot. IP checksum
IP address of CN
IP address of MN

46 TCP/UDP/ ... payload

Anne Fladenmuller
Optimisations du transfert de paquets

–  Routage triangulaire
"  L’émetteur envoie tous les paquets au MN via le HA
"  Délai plus grand et surcharge du réseau
"  “Solutions”
–  Le HA informe l’émetteur sur la position du MN
–  Tunnel direct vers cette localisation
–  Gros problèmes de sécurité
–  Changement de FA
"  Les paquets peuvent être perdus
"  Le nouvel FA informe l’ancien du changement de position
du MN afin qu’il lui tranfert les paquets. Ceci permet
également de libérer des ressources

47
Anne Fladenmuller

Mobile IP

HA
2
MN

Réseau mère sender


1
Internet

FA Réseau d’accueil

3 Tunnel inverse (RFC 2344)


CN Le MN envoie au FA
Le FA encapsule les paquets vers le
Récepteur HA
Le HA transfère le paquet vers le
48
récepteur
Anne Fladenmuller
Mobile IP

"  Tunnel inverse


–  Un routeur accepte seulement les adresses
topologiquement correctes (firewall !)
"  Un paquet du MN encapsulé par le FA est alors
topologiquement correct
"  Cela résout les problèmes de TTL et de diffusion restreinte

–  Problèmes non résolus


"  Sécurité : le tunnel inverse peut être simulé
"  Les paquets seront transférés via le HA vers le CN

–  Le nouveau standard est compatible avec les


version précédentes

49
Anne Fladenmuller

Couche réseau : IPv6

"  Généralités sur IPv6


–  Pourquoi un nouveau protocole IP ?
–  L'explosion de l'Internet, dont la taille double tous
les 12 mois, a deux conséquences :
"  la consommation des adresses s'est fortement accélérée :
"fin du monde IPv4" est estimée aux environs de 2010 !
"  la taille des tables de routage des équipements qui doivent
connaître toutes les routes mondiales (full routing) est
devenue gigantesque.
–  Pour pallier ces difficultés, un nouveau protocole a
été spécifié : IPv6
"  pour résoudre le problème d'adressage
"  inclure de nouvelles fonctionnalités : la sécurité, le support
du temps réel et du multipoint ...).
50
Anne Fladenmuller
Couche réseau : IPv6

"  Des différences avec Ipv4 :


–  Une adresse sur 16 octets (au lieu des 4 octets de IPv4).
"  Une partie de cette adresse pourra être constituée de l'adresse
MAC de l'équipement (6 octets).
"  l'adressage sera hiérarchique (fonction de la zone
géographique…) pour réduire la taille des tables de routage.
–  Un en-tête de paquet simplifié
"  Moins de champs dans l’entête
"  champs d'extension pour les fonctionnalités optionnelles
(sécurité, source routing, ...).
"  Les options de IPv6 sont placées dans des en-têtes séparés,
intercalés entre l'en-tête IPv6 et l'en-tête de la couche transport.

51
Anne Fladenmuller

Couche réseau : IPv6

"  Différences pour la gestion de la mobilité entre


IPv4 et IPv6 :
–  Pas besoin de routeurs de mobilité “foreign agents”
–  Support en standard de l’optimisation des routes et cette
optimisation ne nécessite pas de gestion de la sécurité
supplémentaire.
–  Les paquets envoyés au noeud mobile qui n’est pas dans son
réseau mère se fait en utilisant un entête de routage plutôt que
l’encapsulation afin de réduire l’overhead et de ne pas avoir à
gérer du tunnels.
–  Le mécanisme de découverte d’adresse de IPV6 retourne un
réponse unique au noeud mobile, tandis que l’approche
utilisée dans IPV4 retourne des réponses distinctes de chaque
52 agent mère.
Anne Fladenmuller
Couche réseau : IPv6

"  Nouvelles fonctionnalités du protocole IPv6 :


–  La Sécurité sera rendue par des fonctions d'authentification et
de confidentialité.
–  Le « Source Routing » ou routage en fonction de l'adresse de
la source permettra le routage différencié.
–  Le Multipoint (ou multicast) est inclus nativement dans la
spécification de IPv6 pour les routeurs et les postes de travail.
–  L'Autoconfiguration des équipements grâce à DHCP. But :
"  simplifier la phase de connexion d'un équipement au réseau,
(plug and play).
"  permettre de gérer la mobilité des équipements en rendant aisée
la (re)numérotation en cas de besoin.
–  Multi-homing : possibilité de se déplacer avec son ordinateur
portatif et de rester virtuellement à l'intérieur du réseau local.
(tunneling)
53
Anne Fladenmuller

IPv4 vs IPv6

Vers = 4 IHL Type of service Total length


Identification Flags Fragment Offset
IPv4
TTL Protocol Header Checksum
Source Address
Destination Address
Options...

Vers = 6 Classe de trafic Identificateur de flux


Longueur des données utiles Entête suivant Nb de sauts

IPv6 Adresse Source

Adresse de Destination

54 extensions

Anne Fladenmuller
Couche réseau : IPv6

"  Les extensions de IPv6


–  Format :
"  Longueur multiple de 8 octets, commence par un entête
suivant sur 1 octet (type de données qui suit l’extension)
"  Si extension de taille variable, le champ suivant est la
longueur de l’extension sur 1 octet
–  Exemples d’extensions :
Proche en proche : 0 confidentialité : 50
TCP : 6 ICMPv6 : 58
UDP : 17 Destination : 60
Routage : 43 Mobilité : 135
Fragmentation : 41
55
Anne Fladenmuller

Couche réseau : IPv6

"  L’entête de mobilité


–  Extension d’entête
–  utilisé par les NM, les CN et les HA pour la création
ou la gestion des associations.
–  Les messages avec entête de mobilité ne doivent
pas :
"  être envoyés avec un entête de routage de type 2 sauf
pour les acquittement d’association
"  être utilisés avec une option de destination d’adresse mère
sauf pour certain binding updates
"  Être utilisé avec des “Binding Update List” ou “Binding
Cache information”

56
Anne Fladenmuller
Couche réseau : IPv6

"  Format de l’entête de mobilité

Entête suivant Longueur entête Type MH réservé

checksum

Données du message

57
Anne Fladenmuller

Mobilité IPv6 : principe

Impossible d'afficher l'image. Votre ordinateur manque peut-être de mémoire pour ouvrir l'image ou l'image est endommagée. Redémarrez l'ordinateur, puis ouvrez à nouveau le fichier. Si le x rouge est toujours affiché, vous devrez peut-être supprimer l'image
avant de la réinsérer.

Réseau mère
Mobile
Données du mobile

Correspondant
Internet Base

Mobile

Base Réseau visité

58
Anne Fladenmuller
Mobilité IPv6

"  RFC 3775 : Les différents équipements de la


mobilité
–  Le nœud mobile
–  Le nœud correspondant
–  Le point d’accès
–  Les agents de mobilités
–  Agent mère
–  Agent visité (pour MIP)

59
Anne Fladenmuller

Mobilité IPv6

–  Tout nœud IPv6 doit être capable de gérer :


"  un cache d’association entre l’adresse mère du mobile et son
adresse temporaire.
"  Les messages de mises à jour envoyés par les mobiles
(traitement, acquittement, demande, …)
–  Tout routeur IPv6 qui peut jouer le rôle d’un agent mère doit
être capable de :
"  Maintenir un registre des associations des mobiles
"  Intercepter tout paquet envoyé par un correspondant, savoir
l’encapsuler et l’envoyer vers le mobile
–  Tout nœud mobile IPv6 doit :
"  Savoir décapsuler les paquets « tunnelés » et extraire les
informations
"  Être capable de gérer les messages de mise à jour
"  Conserver les adresses de ses correspondants
60
Anne Fladenmuller
Mobilité IPv6

"  Adressage
–  Le nœud mobile reste toujours joignable par son adresse
mère
–  Le mécanisme de « découverte des voisins » aide le mobile à
détecter son mouvement.
–  L’option « Information sur le préfixe » située dans le message
« Annonce du routeur » aide le mobile à autoconfigurer son
adresse temporaire
"  Autoconfiguration
–  sans état : sans configuration manuelle, le mobile se sert du
protocole ICMPv6 pour déterminer son adresse
–  avec état : utilisation d’un serveur DHCPv6 pour déterminer
son adresse temporaire
61
Anne Fladenmuller

Mobilité IPv6

"  Protocole de découverte des voisins


–  Sollicitation du routeur
–  Annonce du routeur
"  Option « information sur le préfixe »
"  Option « information sur l’Agent Mère »
"  Option « Intervalle de publication »
–  Sollicitation d’un voisin
–  Indication de redirection

62
Anne Fladenmuller
Mobilité IPv6

"  Extension utile d’IPv6 pour la mobilité


–  Routage
–  Destination
"  L’option « Mise à jour de l’association »
"  L’option « Demande de mise à jour de l’association »
"  L’option « Acquittement de l’association »
"  L’option « Adresse principale »
"  Communication directe entre le mobile et son
correspondant (cache d’association)
–  Paquet envoyé par le mobile vers son correspondant
@ temporaire @ du Destination @ mère du
du mobile correspondant mobile -------------

–  Paquet envoyé par le correspondant vers le mobile


@ du @ mère du
correspondant @ temporaire du Routage
63 mobile
mobile -------------
Anne Fladenmuller

IPv6

"  Découverte des Agents mères


–  Avant :
"  le mobile devait connaître l’adresse IP de son Agent Mère avant
de se déplacer : configuration manuelle
–  Maintenant :
"  découverte dynamique
"  utilisation d’une adresse Anycast

–  Découverte des Agents mères


"  Échange de messages entre les Agents Mères
"  Chacun connaît la liste des Agents Mères présents
"  L’adresse Anycast représente tous les Agents Mères
–  Déplacement du mobile :
"  envoi d’un message de mise à jour à l’adresse Anycast
"  réception du message par l’Agent Mère le plus proche
"  envoi de la liste des Agents Mères du réseau d’origine
64 "  le mobile fait son choix

Anne Fladenmuller
Couche réseau

–  Fonctions d’IPv6 mobile:


"  Message d’avertissement :
–  Un agent de mobilité diffuse des messages fournissant des
informations sur le domaine dont il s’occupe.
–  la station mobile peut ainsi déterminer si elle a changé de
domaine et devra initier une procédure d ’enregistrement.
"  Enregistrement
–  La station demande une nouvelle adresse IP correspondant
à son nouveau domaine (DHCP) : « care-of-address ».
–  Elle communique sa « care-of-address » à son Home agent
"  Encapsulation
–  les messages qui lui sont destinés sont encapsulés par le HA
–  binding : optimisation de la route par le home agent qui
informe l’émetteur de la « care of address » du mobile host.
65
Anne Fladenmuller

Différents aspects de la mobilité

  Couche Réseau
! DHCP
! Mobile IPv4 et IPv6
! Micromobilité
! Réseaux ad hoc

Anne Fladenmuller
Les réseaux Ad Hoc

"  Hypothèses prises en compte par les nœuds :


–  ils utilisent tous IP
–  ils ne sont pas tous directement connectés
–  ils sont susceptibles de se déplacer les uns par
rapport aux autres
–  ils peuvent s’aider à délivrer des paquets de
données
–  Autres hypothèses
"  liens symétriques ?
"  Solutions Ad Hoc à la Couche 2 ou 3 ?

67
Anne Fladenmuller

Les réseaux Ad Hoc

"  Applications commerciales :


–  Applications traditionnelles : E-mail,
Vidéoconférences
–  Réseau à domicile
–  Services d’urgence
–  Personal Area Networks (PAN)
–  Collection de capteurs
–  Ordinateurs embarqués dans des véhicules
–  Jeux
–  Autre…
68
Anne Fladenmuller
Les réseaux Ad Hoc

"  Facteurs techniques et économiques ayant un


impact sur le déploiement des réseaux ad hoc
–  Passage au facteur d’échelle
–  mobilité des utilisateurs
–  Énergie vs délai
–  Déploiement de standards incompatibles au niveau
de la liaison et du réseau
–  Sécurité
–  Caractéristiques des liaisons sans fil :
"  débits
"  couverture
69
Anne Fladenmuller

Les algorithmes de routage

"  Le but des algorithmes de routage est de


décider vers quelle ligne de sortie envoyer un
paquet.
–  Les algorithmes de routage devraient être :
"  correctes, simples,
"  robustes (les réseaux sont en place pour longtemps),
"  stables (pas de boucle),
"  optimaux et justes
–  (contradiction ? Optimiser les performances du délai de
transit des paquets et l’utilisation du réseau peut être fait en
réduisant le nombre de sauts faits par les paquets)
"  Il peuvent être adaptatif ou non adaptatifs
70
Anne Fladenmuller
Couche réseau

71
Anne Fladenmuller

Couche réseau

72
Anne Fladenmuller
Couche réseau

73
Anne Fladenmuller

Couche réseau

74
Anne Fladenmuller
Couche réseau

"  Le problème se complique…

Temps = t0 Temps = t0+T


N1 N1
N2 N3
N3 N2

N4 N4
N5 N5

Lien de bonne qualité


Lien de faible qualité

75
Anne Fladenmuller

Couche réseau

"  Algorithmes de routage traditionnels


–  Vecteurs de distance
"  Échange périodique de messages avec les voisins physiques qui
détiennent une information sur qui est joignable et sa distance.
"  sélection du chemin le plus court
–  État des liens
"  notification périodique de tous les routeurs sur l’état courant des
liens physiques
"  Les routeurs ont une vision complète du réseau
–  Exemple
"  Réseau ARPA (1973), vecteurs de distances
"  Toutes les 7.5s échange des tables de routage avec la qualité
des liens
"  Mise à jour des tables et résolution de problèmes avec de la
diffusion
76
Anne Fladenmuller
Couche réseau
"  Problèmes des algorithmes de routage traditionnels
–  Topologie dynamique
"  Changements fréquents de connexions, qualité de la connexion,
participants
–  Performances limitées des performances des systèmes mobiles
"  Mise à jour périodique des tables de routage nécessite une
consommation de batteries qui n’est pas directement liée aux
transmissions des données utilisateurs
"  Modes veille difficiles à réaliser
"  Bande passante limitée est d’autant plus réduite qu’il y a échange
d’information
"  Les liens peuvent être asymétriques
–  Problème
"  Les protocoles sont conçus pour des réseaux fixes avec peu de
changements de topologies
77
Anne Fladenmuller

Le routage dans les réseaux Ad Hoc

"  La diffusion : une solution simple


–  l’émetteur diffuse les paquets de données P dans le
réseau

S E
F
B
C

A D
78 H
Anne Fladenmuller
Le routage dans les réseaux Ad Hoc

"  La diffusion : une solution simple


–  l’émetteur diffuse les paquets de données P dans le
réseau
–  Chaque nœud recevant P, s’il n’est pas le
destinataire le diffuse à son tour.

S E
F
B
C

A D
79 H
Anne Fladenmuller

Le routage dans les réseaux Ad Hoc

"  La diffusion : une solution simple


–  l’émetteur diffuse les paquets de données P dans le
réseau
–  Chaque nœud recevant P, s’il n’est pas le
destinataire le diffuse à son tour.
–  Lorsque le destinataire le reçoit il arrête la
transmission
S E
F
B
C

A D
80 H
Anne Fladenmuller
Le routage dans les réseaux Ad Hoc

"  La diffusion : une solution simple


–  Avantages :
"  Elle peut être efficace s’il y a peu d’information à
transmettre sur le réseau et que la topologie change
fréquemment.
"  Elle peut paraître fiable car les données peuvent arriver
par plusieurs chemins
–  MAIS
"  Les paquets risquent d’atteindre trop de nœuds.
"  Ingérable si le nombre de paquets ou de nœuds augmente

–  La diffusion de messages de contrôle est souvent


mieux adaptée
81
Anne Fladenmuller

Le routage dans les réseaux Ad Hoc

"  Besoin de nouveaux protocoles :


–  parce qu’une information sur la topologie complète
du réseau n’est pas forcément indispensable.
–  pour prendre en compte la forte mobilité des nœuds
(forte convergence de l’algorithme).
–  pour limiter le nombre de messages de signalisation
à échanger…..
–  pour rendre les algorithmes
«scalables» (introduction de clusters).

82
Anne Fladenmuller
Le routage dans les réseaux Ad Hoc

–  Le choix de l’algorithme est difficile car il doit


prendre en compte de nombreux paramètres :
"  taille du réseau
"  connectivité
"  topologie
"  trafic utilisateur
"  énergie
"  régulations de la couche physique
"  métrique de performances
"  coût

83
Anne Fladenmuller

Le routage dans les réseaux Ad Hoc

"  Le groupe MANET (Mobile Ad Hoc NETworks)


de l’IETF a été mis en place pour normaliser
les algorithmes de routage.
–  Il existe deux familles d’algorithmes : proactifs ou
réactifs
–  Exemples d’algorithmes
"  DSR (Source Routing mode unicast)
"  AODV (Vecteurs de distances mode unicast ou multicast)
"  OLSR (Algorithme proactif)
"  ZRP (Protocole hybride: proactif/réactif)

–  Il en existe d’autres !!!


84
Anne Fladenmuller
Dynamic Source Routing

"  DSR (Dynamic Source Routing) [Johnson96]:


–  Protocole simple et efficace qui permet au réseau
d’être auto-structurable et auto-configurable.
–  Développé à Canergie-Mellon dans le cadre du
projet Monarch (Mobile Network Architecture)
–  2 mécanismes sont proposés :
"  découverte de routes : mise en place quand le besoin
apparaît.
"  maintenance des routes : utilisation de “caches” pour le
maintien d’une route de S vers D. Ce mécanisme permet
de détecter lorsqu’une route n’est plus valide et d’en
informer la source.
85
Anne Fladenmuller

Dynamic Source Routing

"  Hypothèses retenues par DSR :


–  tous les nœuds participent à la conception du
réseau.
–  le diamètre est petit (5 à 10 nœuds).
–  tous les nœuds sont susceptibles de se mouvoir,
n’importe quand mais à une vitesse modérée.
–  utilisation de réception en mode promiscuous.
–  liens généralement bidirectionnels.
–  Quelque soit son nombre d’interfaces physiques,
chaque nœud ne dispose que d’une adresse IP.

86
Anne Fladenmuller
Dynamic Source Routing

–  Les mécanismes sont mis en place uniquement en


cas de besoin.
–  Les mécanismes d’établissement et de
maintenance des routes ne reposent pas sur l’envoi
périodique de paquets.
–  Les routes peuvent être asymétriques (liens
unidirectionnels).
–  Les réseaux ad hoc utilisant DSR peuvent être
couplés à l’Internet classique via une passerelle.
–  Le couplage avec Mobile IP est défini.

87
Anne Fladenmuller

Découverte des routes dans DSR

–  la source S regarde dans son cache de route, s’il


existe un chemin vers la destination D.
"  OUI : Les données sont envoyées en utilisant un
algorithme de source routing.
"  NON : Mise en place d’un mécanisme de découverte de
route.
–  S diffuse un paquet ROUTE REQUEST, RREQ(S,D,L) où L
est la liste des nœuds traversés pour atteindre D. On a L=φ
–  Sur réception d’un de RREQ(S,D,L), un nœud N va vérifier si
N=D.
"  NON : il vérifie qu’il ne l’a pas déjà reçu. Si Oui, rien,
sinon N diffuse RREQ(S,D,L=L+N).
"  OUI : Envoi d’un réponse (ROUTE REPLY)
88
Anne Fladenmuller
Découverte des routes dans DSR

S E
F
B
C M L
J
A G
H D
K
I N

Représente un nœud ayant reçu un paquet RREQ de D pour S

89
Anne Fladenmuller

Découverte des routes dans DSR

diffusion

[S]
S E
F
B
C M L
J
A G
H D
K
I N

transmission de RREQ
[X,Y] liste des identificateurs ajoutée à l’entête RREQ
90
Anne Fladenmuller
Découverte des routes dans DSR

S [S,E]
E
[S,B] F
B
C M L
J
A [S,C] G
H D
K
I N

•  H reçoit un paquet RREQ de 2 voisins simultanément:


collision potentielle
91
Anne Fladenmuller

Découverte des routes dans DSR

S [S,E,F]
E
F
B
C M L
J
A G
H D
[S,B,A] K
[S,C,G]
[S,B,H] I N

•  Les nœuds ayant déjà reçu un RREQ ignorent le deuxième


92
Anne Fladenmuller
Découverte des routes dans DSR

S E
F [S,E,F,J]
B
C M L
J
A G
H D
K
I N
[S,C,G,K]

•  J et K diffusent un paquet RREQ au noeud D


93 •  J et K ne se “voyant” pas, une collision est possible
Anne Fladenmuller

Découverte des routes dans DSR

S E
[S,E,F,J,M]
F
B
C M L
J
A G
H D
K
I N

•  D ne relaie pas le paquet RREQ, car D est la destination


•  le processus de découverte de route peut se prolonger
94 dans d’autres branches du graphe
Anne Fladenmuller
Etablissement de la route avec DSR

–  D, pour envoyer le ROUTE REPLY, regarde s’il


existe un chemin vers S dans son cache :
"  OUI :
–  Il fait un routage à la source pour le paquet de retour, en se
basant sur les valeurs de sa table.
"  NON mais la L2 utilise des liens bidirectionnels :
–  inversion de la route contenue dans L.
"  Sinon :
–  lance une découverte de route vers S en «piggybackant»
l’acquittement du RREQ(S,D,L) reçu.

95
Anne Fladenmuller

Etablissement de la route avec DSR

Ex: La route L est réutilisée.

S RREP [S,E,F,J,D]
E
F
B
C M L
J
A G
H D
K
I N

96 Envoie de paquets de contrôle RREP


Anne Fladenmuller
Etablissement de la route avec DSR

–  Sur réception d’un RREP, S met dans son cache la


liste des nœuds traversés puis peut envoyer ses
données en mettant dans l’entête la liste des nœuds
à traverser.

Données [S,E,F,J,D]
S E
F
B
C M L
J
A G
H D
K
I N
97
Anne Fladenmuller

Optimisations : mémorisation des


routes

–  Mémorisation d’autres routes


"  Chaque nœud stocke les nouvelles routes qu’il voit.
"  Les informations sur les routes sont apprises par les nœuds
entendant les paquets RREP, RREQ et ceux de données,
même s’ils ne sont pas sur le chemin. Mais il faut faire
attention aux liens unidirectionnels.
S,E,F,J,D E,F,J,D
F,J,D Données [S,E,F,J,D]
S F,E,S
E
F J,F,E,S
B,S,E,F,J,D B
C M L
J
A C,S,E,F,J,D
C,E,F,J,D G
H D D,J,F,E,S
G,F,E,S K
98 I G,F,J,D N
Anne Fladenmuller
Maintenance des routes avec DSR

–  Si un lien se «casse», le mécanisme de maintenance


de route est utilisé :
"  Si pas de réponses sur un paquet de données, le long du
chemin on tente n fois de retransmettre. Au bout de n, une
erreur est détectée et répercutée : Envoi de ROUTE
ERROR (RERR [lien]). RERR [J-D]
S E F J

–  Optimisations possibles C G K D
"  J peut trouver une autre route pour les données.
"  S informe ses voisins de la route «cassée» dans son
nouveau paquet RREQ. Attention au stockage
d’informations négatives.
99
Anne Fladenmuller

AODV

"  AODV (AdhOc Distance Vector) [Perkins99]:


–  Hypothèse :
"  liens bidirectionnels (symétriques).
"  fonctionne en unicast et multicast.

–  Principe de l’établissement de la route :


"  des paquets Route Requests (RREQ) sont transmis de la
même manière que pour DSR.
"  Quand un nœud rediffuse une requête de route, il établit
un chemin inverse qui pointe vers la source.
"  Quand la destination reçoit le paquet “Route Request”, il y
répond avec un paquet Route Reply.
"  Le paquet Route Reply prend le chemin inverse et atteind
la source.

100
Anne Fladenmuller
Établissement d’une route avec AODV

–  Découverte de route :
"  Création du RREQ contenant :
–  @source, n°seq(source), ID de diffusion
–  @destination, n°seq(dest)
–  nb de sauts

S E
F
B
C M L
J
A G
H D
K
I N
101 Source ayant un RREQ à envoyer
Anne Fladenmuller

Établissement d’une route avec AODV

–  Découverte de route :
"  Diffusion du RREQ
"  Log des RREQ reçus pendant un certain temps avec
l’@source et l’ID de diffusion

diffusion S E
F
B
C M L
J
A G
H D
K
I N
102
Transmission d’une RREQ
Anne Fladenmuller
Établissement d’une route avec AODV

"  Mise à jour des tables de routage pour aller à S


–  L’adresse S
–  le nombre de sauts pour atteindre S
–  une durée d’expiration de cette entrée
–  l’identifiant de diffusion
–  n° de séquence de la source

S E
F
B
C M L
J
A G
H D
K
I N
103 Lien sur le chemin inverse mémorisé par les noeuds
Anne Fladenmuller

Etablissement d’une route avec AODV

"  Sur réception d’un RREQ :


–  un nœud regarde s’il a déjà reçu le RREQ en regardant dans
sa table de log.
–  Le retransmet sinon avec le nombre de sauts (vers la
source) incrémenté.

S E
F
B
C M L
J
A G
H D
K
I N
104
Anne Fladenmuller
Etablissement d’une route avec AODV

"  Propagation des RREQ tant que


–  D n’est pas atteint
–  un nœud intermédiaire
"  n’a pas D dans sa table de routage
"  a D mais avec un n°seq(dest) ≤ au n°seq(dest) du
message RREQ

S E
F
B
C M L
J
A G
H D
K
I N
105
Anne Fladenmuller

Etablissement d’une route avec AODV

"  Propagation des RREQ tant que


–  D n’est pas atteint
–  un nœud intermédiaire
"  n’a pas D dans sa table de routage

"  a D mais avec un n°seq(dest) ≤ au n°seq(dest) du message


RREQ

S E
F
B
C M L
J
A G
H D
K
I N
106
Anne Fladenmuller
Etablissement d’une route avec AODV

–  Destination trouvée
"  Etablissement du chemin inverse pour le transfert des
données.
"  X envoi un msg RREP(@S,@D, n°seq(dest), cpt sauts X→D,
TpsAvtExp)

S E
F
B
C M L
J
A G
H D
K
I N
107
Envoi de RREP vers la source pour établir le chemin
Anne Fladenmuller

Etablissement d’une route avec AODV

–  Chemin de transfert est établi, les données peuvent


être transférées

S E Données
F
B
C M L
J
A G
H D
K
I N
108
Chemin suivi par les données
Anne Fladenmuller
Etablissement d’une route avec AODV

"  Expiration des routes si elles ne sont pas utilisées.


"  Les données ne contiennent pas dans l’entête l’ensemble
de nœuds à traverser (tables de routage)

S E Données
F
B
C M L
J
A G
H D
K
I N
109
Anne Fladenmuller

Maintenance des routes avec AODV

–  Les mouvements des nœuds ne sont pris en


compte que s’ils affectent une route active
"  S bouge : nouvelle procédure de découverte de route
"  Autre nœud : envoi de RERR

–  Principe des RERR.


"  Quand un nœud détecte que le lien downstream n’est plus
valide :
–  Il incrémente la valeur du n° de séquence pour D contenu
dans sa table de routage.
–  il envoie un RERR à ses prédécesseurs dont le chemin
passe par le lien défectueux avec distance à D=∞ et le n° de
séquence incrémenté.
"  Sur réception du RERR, S initialise une découverte de
route avec le n° de séquence reçu

110
Anne Fladenmuller
AODV Multicast

"  Le multicast
–  Un groupe multicast est défini par un unique
identifiant du groupe.
–  Les nœuds peuvent joindre et quitter le groupe
n’importe quand.
–  Il faut prendre en compte les changements de
topologie. Plusieurs protocoles ont été développés
dans le cadre des travaux du groupe MANET.

111
Anne Fladenmuller

AODV Multicast

"  AODV Multicasting [Royer00]


–  Principe
"  Responsable de groupe :
–  Chaque groupe multicast possède un responsable de
groupe.
–  Ce responsable gère le numéro de séquence du groupe.
–  Le premier nœud désirant joindre le groupe est élu
responsable.
–  Le responsable gère la diffusion de messages Group Hello.

112
Anne Fladenmuller
AODV Multicast

–  Un arbre existe, il dispose d’un responsable de


groupe qui gère le numéro de séquence du groupe.
"  Envoi périodique de messages Group Hello

Responsable du
E groupe
L GROUP HELLO
C
J
G
H D
Membre du groupe et de K
l’arbre multicast A
Membre de l’arbre, mais pas B
N
113 du groupe
Liens de l’arbre multicast
Anne Fladenmuller

AODV Multicast

–  Un arbre existe, il dispose d’un responsable de


groupe qui gère les numéros de séquence du
groupe.
"  Ces messages contiennent le n
° de séquence du groupe Responsable du
qui
est incrémenté E groupe
à chaque diffusion. L
C
J
G
H D
Membre du groupe et de K
l’arbre multicast A
Membre de l’arbre, mais pas B
N
114 du groupe
Liens de l’arbre multicast
Anne Fladenmuller
Joindre l’arbre multicast

–  Si N veut joindre le groupe Multicast


"  Envoi d’un RREQ(join) contenant :
–  Join-flag et Repair-flag
–  @ de N, le broadcast ID de N, le n°seq(N)
–  @grp-mc, n°seq(grp)
E
–  nb-sauts
L
"  l’envoi est une diffusion C
J
si N ne connaît pas le G
responsable du groupe, H D
une transmission K
unicast sinon. A
B
N
115 Route Request (RREQ)
Anne Fladenmuller

Joindre l’arbre multicast

"  Peuvent répondre à ces messages :


–  Le responsable du groupe
–  les routeurs de l’arbre dont le n°seq ≥ n°seq(N)
"  Envoi de RREP en unicast vers N
–  dernier n°seq(grp)
–  @ de L
–  nb de sauts pour aller à L
E
–  nb sauts au grp = 0 L
"  Mise à jour des tables C
J
G
H D
K
A
B
N
116 Route Reply (RREP)
Anne Fladenmuller
Joindre l’arbre multicast

–  Création du forward path


"  validation de la route choisie avec envoi de messages
MACT (Multicast Activation).
"  Sur réception de ces messages les nœuds activent les
entrées de leurs tables de routage
E
L
C
J
G
H D
K
A
B
N
117 Multicast Activation (MACT)
Anne Fladenmuller

Joindre l’arbre multicast

–  N a rejoint le groupe multicast

E
L
C
J
G
H D
Membre du groupe et de K
l’arbre multicast A
Membre de l’arbre, mais pas B
N
118 du groupe
Liens de l’arbre multicast
Anne Fladenmuller
Joindre l’arbre multicast

–  Les données suivent les branches de l’arbre


maintenues à l’aide de l’algorithme AODV Multicast.
–  Si un nœud qui n’appartient pas au groupe multicast
désire diffuser au groupe un paquet
"  Il envoie un non-join RREQ qui sera traité de la même
manière qu’un join RREQ.
"  L’émetteur trouvera ainsi une route vers l’arbre.
"  Les données seront envoyées aux membres du groupe.

119
Anne Fladenmuller

Quitter l’arbre multicast

–  J veut quitter le groupe

E
L
C
J
G
H D
K
A
B
N
120
Anne Fladenmuller
Quitter l’arbre multicast

–  J veut quitter le groupe


"  Il doit rester un membre du groupe car J n’est pas une
feuille de l’arbre

E
L
C
J
G
H D
K
A
B
N
121
Anne Fladenmuller

Quitter l’arbre multicast

–  N veut quitter le groupe

E
L
C
J
G
H D
K
A MACT
B (prune)
N
122
Anne Fladenmuller
Quitter l’arbre multicast

–  N veut quitter le groupe


–  K devient une feuille, et K n’appartient pas au
groupe

E
L
C
J
G
H MACT
D
(prune)
K
A
B
N
123
Anne Fladenmuller

Quitter l’arbre multicast

–  N veut quitter le groupe


–  K devient une feuille, et K n’appartient pas au
groupe
–  K est lui aussi retiré du groupe
E
L
C
J
G
H D
K
A
B
N
124
Anne Fladenmuller
Ruptures de liens avec AODV

–  Quand un lien(X,Y) de l’arbre se “rompt”, le nœud X


ou Y, le plus éloigné (dowstream) du responsable
doit reconstruire l’arbre.
–  Si X est ce nœud, il envoie un Route Request
(RREQ).
–  Seuls les nœuds, plus proches du responsable que
X, ont le droit de répondre à l’aide d’un RREP.
–  Si X n’obtient pas de réponse, il suppose que le
groupe s’est scindé. Un responsable pour le nouvel
arbre doit être choisi.

125
Anne Fladenmuller

Fusion des arbres avec AODV

–  Fusion de deux arbres.


"  Le responsable sera celui avec le plus grand identifiant.

A
B
Hello (Q)
Q
126
Anne Fladenmuller
Fusion des arbres avec AODV

–  Fusion de deux arbres.


"  Le responsable sera celui avec la plus grande adresse IP.

RREQ
(R-flag) P

A RREP
B (confirmation)

Q
127
Anne Fladenmuller

Fusion des arbres avec AODV

–  Fusion de deux arbres.


"  Le responsable sera celui avec la plus grande adresse IP.
"  A retransmet l’acceptation de P au futur responsable de
groupe

A
B
RREQ (repair)
Q
128
Anne Fladenmuller
Fusion des arbres avec AODV

–  Fusion de deux arbres.


"  Le responsable sera celui avec la plus grande adresse IP.
"  A retransmet l’acceptation de P au futur responsable de
groupe
"  Q diffuse l’information à tout l’arbre

Group Hello A
(update) B

Q
129
Anne Fladenmuller

Zone Routing Protocol (ZRP)

"  Le protocole Zone Routing Protocol [Haas98]


combine à la fois :
–  une approche proactive à l’intérieur d’une zone
restreinte, ce qui permet de mettre à jour l’état du
réseau et de maintenir des routes qu’il y ait ou non
des paquets de données qui circulent.
–  une approche réactive entre les zones restreintes,
qui ne détermine une route que si le besoin de
transmettre des paquets de données apparaît

130
Anne Fladenmuller
ZRP

–  Routage intra-zone :
"  l’étendue d’une zone est définie par rapport à un nœud
central.
"  Tous les nœuds ayant une distance d’au plus d par rapport
à un nœud X est considéré dans la zone de routage de X.
"  Le routage à l’intérieur d’une zone se fait proactivement à
l’aide d’algorithme “link state” ou “vecteurs de distance”
"  Les nœuds ayant une distance de d sont des nœuds
périphériques de la zone.

131
Anne Fladenmuller

ZRP

–  Le routage inter-zone
"  ZRP utilise dans ce cas une approche réactive.
"  Une route est établie si une station a des paquets de
données à envoyer à l’extérieur de sa zone de routage.
"  Utilisation de mécanismes de découverte de route pour
trouver la localisation du destinataire.
"  Les paquets de découverte de route sont propagés sur le
même principe que pour DSR, mais les échanges entre
zones se fait uniquement au travers des nœuds
périphériques.

132
Anne Fladenmuller
Découverte de route avec ZRP (d=2)

–  S met en place une découverte de route vers D

B
S
A C
D
E
F

133
Découverte de route
Anne Fladenmuller

Découverte de route avec ZRP

–  E connaît D, car il est dans sa zone de routage.


–  C’est donc E qui va renvoyer le chemin à S

B
S
A C
D
E
F

134
Anne Fladenmuller
Découverte de route avec ZRP

–  Les paquets sont envoyés à D via les nœuds


périphériques C et E

B
S
A C
D
E
F

135
Anne Fladenmuller

Résumé des algorithmes présentés

–  DSR
"  Il existe des modèles de simulation sous ns-2 ainsi qu’une
implémentation de cet algorithme.
"  DSR peut maintenir plusieurs routes pour une destination
"  Performances intéressantes [Broch98]

–  AODV
"  Il existe un modèle de simulation, une implémentation en
cours.
"  Les routes n’ont pas besoin d’être inclues dans l’entête des
paquets, au plus 1 prochain nœud par destination est
maintenu et les routes non utilisées expirent même si la
topologie ne varie pas.
"  Permet multicast et unicast
136
Anne Fladenmuller
Résumé des algorithmes présentés

–  ZRP
"  définit des zones « privilégiées » où les informations de
routage sont connues même s’il n’y a pas de données à
envoyer. Les délais de transmissions sont d’autant plus
courts que les nœuds sont dans la même zone.
"  Évaluation des performances à l’aide de OPNET.

137
Anne Fladenmuller

Quelques perspectives de recherche

"  Les problèmes actuels des réseaux ad hoc


–  Améliorer l’accès au support.
"  Choix du protocole MAC
–  Collisions versus synchronisation
"  Problème du terminal exposé et caché

"  Performances limitées

"  Diminution des interférences


–  Introduire de la QoS
"  Introduction de la QoS pour 802.11e
"  Différentier les flux
–  Difficulté de garantir un débit de bout en bout
–  Introduction de DiffServ
"  Réservation de resources
"  QoS à quel niveau ?
138
Anne Fladenmuller
Quelques perspectives de recherche

"  Travaux sur le routage


–  Étude des performances des algorithmes proposés
–  Multicast ou coût de l’overhead de signalisation
–  Groupement d’utilisateurs allant dans la même
direction
–  Explorations possibles :
"  Routage géographique
"  Routage par QoS (économie des batteries, choix d’une ou
plusieurs métriques différentes, …)
"  Prise en compte du passage en mode veille des terminaux
avec des arbres de routage on/off

139
Anne Fladenmuller

Quelques perspectives de recherche

"  Sécurité
"  Interconnexion réseaux filaires/ad hoc
–  Problèmes d’adressage
"  Localisation des services
"  Adaptation des services aux ressources
disponibles
–  Handoffs verticaux

140
Anne Fladenmuller
Bibliographie

"  Sur le web :


–  MANET, www.ietf.org
–  “Mobile Ad Hoc Networks: Routing, MAC and Transport
Issues”, Nitin H. Vaidya, Tutorial,
http://www.cs.tamu.edu/faculty/vaidya/
"  Livres
–  AdHoc NETWORKING, Charles Perkins, Addison Wesley
–  Mobile Communications, Schiller, Addison-Wesley, 1999
"  Articles
–  [Broch98] J. Broch, D.A. Maltz, D.B. Johnson, Y.-C. Hu, J.
Jetcheva, “A performance comparison of multihop wireless
adhoc routing networks. In Proc; of 4th annual ACM/IEEE
International conference on Mobile Computing and Networks
(MOBICOM98), oct 98, 85-97.

141
Anne Fladenmuller

Bibliographie

"  [Haas98] Z.J. Haas, M.R. Pearlman. «The performance


query control schemes for zone routing protocol». ACM
SIGCOMM 98, sept 98, 167-177.
"  [Johnson96] D.B. Johnson, D.A. Maltz. «Dynamic Source
Routing in Adhoc Wireless Networks». Mobile Computing,
T.Imielinski and H. Korth eds, Mc Kluwer Academic
Publishers, Norwell, Mass. 1996, 153-181
"  [Perkins99] C.E. Perkins, E.M. Royer, “Ad-Hoc on demand
Distance Vector Routing”. Second annual IEEE worshop
on Mobile Computing Systems and Applications, February
1999, 90-100.
"  [Royer00] E.M. Royer, C.E. Perkins, “Multicast Operation
of the Ad-hoc On-Demand Distance Vector Routing
Protocol”, Proc. of MobiCom '99, Seattle, WA, August
1999, pp. 207-218.

142
Anne Fladenmuller
Optimisations : mémorisation des
routes

–  Accelération de la découverte de routes


"  Ex : C veut envoyer une nouveau msg à A. Accélération si
chaque nœud ayant une route envoie un RREP
"  Problème ?
E,S,B,A
S,B,A

B,A S E
–  Autre problème
B
C

Une diffusion peut potentiellement A


H
atteindre tous les nœuds (utilisation
de compteurs de noeuds) H,A I

143 I,H,A
Anne Fladenmuller

You might also like