Académique Documents
Professionnel Documents
Culture Documents
Support de TD N1
Scurit
IPv6
Multicast
Bndicte LE GRAND
Promthe SPATHIS
1.
INTRODUCTION
2.
VOCABULAIRE
3.
CRYPTOGRAPHIE
La cryptographie est une des disciplines de la cryptologie s'attachant protger des messages (assurant confidentialit et/ou authenticit) en s'aidant souvent de secrets ou cls. Elle est utilise depuis l'Antiquit, mais certaines de ses mthodes les plus importantes, comme la cryptographie asymtrique, n'ont que quelques dizaines d'annes d'existence.
La cryptographie se scinde en deux parties nettement diffrencies :
la cryptographie clef secrte, encore appele symtrique ou bien classique ;
la cryptographie clef publique, dite galement asymtrique ou moderne.
La premire est la plus ancienne : on peut la faire remonter l'gypte de l'an 2000 av. J.-C. en passant par Jules Csar ; la seconde remonte l'article de W. Diffie et M. Hellman, New directions in
cryptography dat de 1976.
1
Toutes deux visent assurer la confidentialit de l'information, mais la cryptographie clef secrte
ncessite au pralable la mise en commun entre les destinataires d'une certaine information : la clef
(symtrique), ncessaire au chiffrement ainsi qu'au dchiffrement des messages. Dans le cadre de la
cryptographie clef publique, ce n'est plus ncessaire. En effet, les clefs sont alors diffrentes, ne
peuvent se dduire l'une de l'autre, et servent faire des oprations opposes, d'o l'asymtrie entre
les oprations de chiffrement et de dchiffrement.
Bien que beaucoup plus rcente et malgr d'normes avantages signature numrique, change de
clefs, la cryptographie clef publique ne remplace pas totalement celle clef secrte, qui
pour des raisons de vitesse de chiffrement et parfois de simplicit reste prsente. ce titre, signalons la date du dernier standard amricain en la matire, l'AES : dcembre 2001, ce qui prouve la
vitalit encore actuelle de la cryptographie symtrique.
Dans le bestiaire des algorithmes de chiffrement, on peut citer :
pour les systmes symtriques, le DES, l'AES, Blowfish, IDEA, etc.
pour les systmes asymtriques, le RSA, DSA-DH, ElGamal, les courbes elliptiques, etc.
3.1.1. Quelles sont les diffrences entre la confidentialit, lauthentification et lintgrit dun message ? Sont-elles ncessairement lies ? Donnez des exemples.
3.1.2. Quelle est la diffrence fondamentale entre un systme cl symtrique et un systme cl
publique ?
3.1.3. Supposons que N personnes souhaitent communiquer avec chacune des N-1 autres en utilisant
un chiffrement cl symtrique. Toute communication entre deux personnes i et j est visible
de toutes les autres et personne dautre ne doit pouvoir dcoder leur communication. De combien de cls a-t-on besoin en tout ? Supposons maintenant que lon utilise un chiffrement cl
publique. Combien de cls sont ncessaires dans ce cas ?
4.
La cryptographie symtrique, galement dite cl secrte (par opposition la cryptographie asymtrique ou cl publique), est la plus ancienne forme de chiffrement. On a des traces de son utilisation par les gyptiens vers 2000 av. J.-C. Plus proche de nous, on peut citer le clbre chiffre de
Jules Csar.
L'un des concepts fondamentaux de la cryptographie symtrique est la cl. Il sagit dune information qui doit permettre le chiffrement et le dchiffrement dun message et sur laquelle peut reposer
toute la scurit de la communication. L'algorithme doit quant lui pouvoir tre divulgu. C'est ce
que l'on appelle dsormais le principe de Kerckhoffs. Il faut ajouter que cette cl doit pouvoir
prendre suffisamment de valeurs pour qu'une attaque exhaustive essai systmatique de toutes les
cls ne puisse tre mene bien car trop longue. On parle de scurit calculatoire.
4.1. ROT13
Le ROT13 (une variante de la mthode Csar) est un algorithme trs simple de chiffrement de texte.
Comme son nom l'indique, il s'agit d'un dcalage de 13 caractres de chaque lettre du texte chiffrer. Le dfaut de ce chiffrement est que s'il s'occupe des lettres, il ne s'occupe pas des chiffres, des
symboles et de la ponctuation. C'est pourquoi on supprime du texte chiffrer toute accentuation, et
si on veut conserver un texte correctement chiffr, il est ncessaire d'crire les nombres en toutes
lettres. Enfin, un caractre tant invariablement remplac par un autre, cet algorithme est aussi qualifi de substitution mono-alphabtique.
l'aide de la dfinition de cet algorithme, on peut alors dfinir la correspondance entre les caractres en clair et chiffrs :
Caractre non-chiffr
Caractre chiffr
4.1.1. Donnez le chiffrement en ROT13 du message suivant : Ce problme est simple . Dchiffrez prsent le message suivant : Cnf fv qebye dhr pn .
4.1.2. Lalgorithme ROT13 utilise-t-il une clef secrte ?
4.1.3. En vous plaant dans le cadre dune substitution mono-alphabtique par permutation, montrez
quil suffit de savoir que les noms des correspondants Bob et Alice apparaissent dans le message chiffr pour rduire le nombre de substitutions possibles dun facteur de lordre
de109.Cette attaque est connu sous le nom de lattaque par texte connu (known plaintext).
4.2. Chiffre de Vigenre
Le Chiffre de Vigenre est un systme de chiffrement, labor par Blaise de Vigenre (1523-1596),
diplomate franais du XVIe sicle.
C'est un systme de substitution polyalphabtique. Cela signifie qu'il permet de remplacer une lettre
par une autre qui n'est pas toujours la mme, contrairement au Chiffre de Csar ou ROT13. Ces
deux derniers procds se contentent d'utiliser la mme lettre de substitution. C'est donc un systme
relativement plus robuste que ces deux systmes.
La cl se prsente gnralement sous la forme d'un mot ou d'une phrase. Pour pouvoir chiffrer un
texte, chaque caractre est utilise une lettre de la cl pour effectuer la substitution. videmment,
plus la cl est longue et varie et mieux le texte est chiffr. L'outil indispensable du chiffrement de
Vigenre est : La table de Vigenre .
A
B
CC
l D
E
U F
t G
i H
l I
i
s J
K
e L
M
N
A
A
B
C
D
E
F
G
H
I
J
K
L
M
N
B
B
C
D
E
F
G
H
I
J
K
L
M
N
O
C
C
D
E
F
G
H
I
J
K
L
M
N
O
P
D
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
E
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
F
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
G
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
H
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
Lettre en clair
I J K LMN O P Q R S T U VW
I J K L MN O P Q R S T U VW
J K L MN O P Q R S T U VWX
K L MN O P Q R S T U VWX Y
L MN O P Q R S T U VWX Y Z
MN O P Q R S T U VWX Y Z A
N O P Q R S T U VWX Y Z A B
O P Q R S T U VWX Y Z A B C
P Q R S T U VWX Y Z A B C D
Q R S T U VWX Y Z A B C D E
R S T U VWX Y Z A B C D E F
S T U VWX Y Z A B C D E F G
T U VWX Y Z A B C D E F G H
U VWX Y Z A B C D E F G H I
VWX Y Z A B C D E F G H I J
X
X
Y
Z
A
B
C
D
E
F
G
H
I
J
K
Y
Y
Z
A
B
C
D
E
F
G
H
I
J
K
L
Z
Z
A
B L
C e
D t
t
E r
F e
G
HC
o
I d
J
K e
L
M
O O P Q R S T U VW
P P Q R S T U VWX
Q Q R S T U VWX Y
R R S T U VWX Y Z
S S T U VWX Y Z A
T T U VWX Y Z A B
U U VWX Y Z A B C
V VWX Y Z A B C D
WW X Y Z A B C D E
X X Y Z A B C D E F
Y Y Z A B C D E F G
Z Z A B C D E F G H
X
Y
Z
A
B
C
D
E
F
G
H
I
Y
Z
A
B
C
D
E
F
G
H
I
J
Z
A
B
C
D
E
F
G
H
I
J
K
A
B
C
D
E
F
G
H
I
J
K
L
B
C
D
E
F
G
H
I
J
K
L
M
C
D
E
F
G
H
I
J
K
L
M
N
D
E
F
G
H
I
J
K
L
M
N
O
E
F
G
H
I
J
K
L
M
N
O
P
F
G
H
I
J
K
L
M
N
O
P
Q
G
H
I
J
K
L
M
N
O
P
Q
R
H
I
J
K
L
M
N
O
P
Q
R
S
I
J
K
L
M
N
O
P
Q
R
S
T
J
K
L
M
N
O
P
Q
R
S
T
U
K
L
M
N
O
P
Q
R
S
T
U
V
L MN
MN O
N O P
O P Q
P Q R
Q R S
R S T
S T U
T U V
U VW
VWX
WX Y
Pour chaque lettre en clair, on slectionne la colonne correspondante et pour une lettre de la cl on
slectionne la ligne adquate, puis au croisement de la ligne et de la colonne on trouve la lettre code. La lettre de la cl est prendre dans l'ordre dans laquelle elle se prsente et on rpte la cl en
boucle autant de fois que ncessaire.
4.2.1. En utilisant la clef MUSIQUE, donnez le rsultat du chiffrement du texte en clair jadore la
ecouter la radio toute la journee par le chiffre de Vigenre.
Clef : MUSIQUE
Texte : j'adore ecouter la radio toute la journee
Texte en clair :
Cl rpte
:
4.2.2. Le chiffre de Vigenre est-il sensible lattaque par texte connu ? Pourquoi ?
5.
Pour rsoudre en partie le problme de la gestion des cls, la cryptographie asymtrique, ou cryptographie cl publique a t mise au point dans les annes 1970. La cryptographie asymtrique est
fonde sur l'existence de fonctions sens unique c'est--dire qu'il est simple d'appliquer cette
fonction un message, mais extrmement difficile de retrouver ce message une fois chiffr.
Elle se base sur le principe de deux cls :
une publique, permettant le chiffrement ;
une prive, permettant le dchiffrement.
Comme son nom l'indique, la cl publique est mise la disposition de quiconque dsire chiffrer un
message. Ce dernier ne pourra tre dchiffr qu'avec la cl priv, qui doit tre confidentielle.
Quelques algorithmes de cryptographie asymtrique trs utiliss :
4
RSA ;
DSA ;
Protocole d'change de cls Diffie-Hellman ;
et d'autres.
5.1. Rivest Shamir Adleman (RSA)
RSA est un algorithme asymtrique de cryptographie cl publique, trs utilis dans le commerce
lectronique, et plus gnralement pour changer des donnes confidentielles sur Internet. Cet algorithme a t dcrit en 1977 par Ron Rivest, Adi Shamir et Len Adleman, d'o le sigle RSA. RSA a
t brevet par le MIT en 1983 aux tats-Unis d'Amrique, mais le brevet a expir le 21 septembre
2000.
Cet algorithme est fond sur l'utilisation d'une paire de cls compose d'une cl publique et d'une
cl prive pour chiffrer des donnes confidentielles. La cl publique correspond une cl qui est
accessible par n'importe quelle personne souhaitant chiffrer des informations, la cl prive est quant
elle rserve la personne ayant cr la paire de cls. Lorsque deux personnes, ou plus, souhaitent
changer des donnes confidentielles, une personne, nomme par convention Alice prend en charge
la cration de la paire de cls, envoie sa cl publique aux autres personnes Bob, Carole qui peuvent alors chiffrer les donnes confidentielles l'aide de celle-ci puis envoyer les donnes chiffres
la personne ayant cr la paire de cls, Alice. Cette dernire peut alors dchiffrer les donnes confidentielles l'aide de sa cl prive.
5.1.1. En utilisant RSA, codez le mot "hello" avec p = 3 et q = 11. Appliquez lalgorithme de dchiffrement pour retrouver le message en clair dorigine.
6.
AUTHENTIFICATION
L'authentification est la procdure qui consiste, pour un systme informatique, vrifier l'identit
d'une entit (personne, ordinateur...), afin d'autoriser l'accs de cette entit des ressources (systmes, rseaux, applications...). L'authentification permet donc de valider l'authenticit de l'entit en
question.
L'authentification peut inclure une phase d'identification, au cours de laquelle l'entit indique son
identit. Cependant, cela n'est pas obligatoire ; il est en effet possible d'avoir des entits munies de
droits d'accs mais restant anonymes.
6.1. Signature numrique
La signature numrique est un mcanisme permettant d'authentifier l'auteur d'un document lectronique et de garantir son intgrit, par analogie avec la signature manuscrite d'un document papier.
Un mcanisme de signature numrique doit prsenter les proprits suivantes :
Il doit permettre au lecteur d'un document d'identifier la personne ou l'organisme qui a appos
sa signature.
Il doit garantir que le document n'a pas t altr entre l'instant o l'auteur l'a sign et le moment o le lecteur le consulte.
Pour cela, les conditions suivantes doivent tre runies :
L'identit du signataire doit pouvoir tre retrouve de manire certaine.
La signature ne peut pas tre falsifie.
5
La signature n'est pas rutilisable. Elle fait partie du document sign et ne peut tre dplace
sur un autre document.
Un document sign est inaltrable. Une fois qu'il est sign, on ne peut plus le modifier.
La signature lectronique n'est devenue possible qu'avec la cryptographie asymtrique.
Elle se diffrencie de la signature crite par le fait qu'elle n'est pas visuelle, mais correspond une
suite de nombres.
6.2. Exercices
6.2.1. Que signifie, pour un document sign, le fait dtre vrifiable, non falsifiable et non rpudiable ?
6.2.2. A quoi sert un nonce dans un protocole dauthentification ?
6.2.3. Dans quel sens un nonce est-il une valeur unique dans une vie (once in a lifetime) ?
7.
INTGRIT
De manire gnrale, l'intgrit dsigne l'tat de quelque chose qui est sain, qui n'a pas subi d'altration. En fait, l'expression intgrit des donnes correspond deux notions lgrement diffrentes,
selon que le contexte est celui des tlcommunications et de la cryptographie.
Si le principe gnral est le mme les donnes ne doivent pas avoir t modifies depuis leur cration, comprendre au sens large (criture sur un support de stockage, transmission ...) la cryptographie veut pouvoir affirmer que les donnes ont ou n'ont pas t modifies, ce qui se fait souvent
via une fonction de hachage ou, mieux, un MAC (Message Authentication Code) qui ajoute l'usage
d'une cl secrte, tandis qu'en tlcommunication, on souhaite simplement pouvoir dtecter et souvent corriger ces modifications.
7.1. Fonction de hachage
Une fonction de hash (anglicisme) ou fonction de hachage est une fonction qui associe un grand
ensemble de donnes un ensemble beaucoup plus petit (de l'ordre de quelques centaines de bits) qui
est caractristique de l'ensemble de dpart. Cette proprit fait qu'elles sont trs utilises en informatique, en particulier pour accder rapidement des donnes grce aux tables de hachage (hash
tables). En effet, une fonction de hachage permet d'associer une chane de caractres un entier
particulier. Ainsi, connaissant l'empreinte des chanes de caractres stockes, il est rapide de vrifier
si une chane se trouve ou non dans cette table (en O(1) si la fonction de hachage est suffisamment
bonne). Les fonctions de hachage sont aussi extrmement utiles en cryptographie.
Une fonction de hachage cryptographique est utilise entre autres pour la signature lectronique, et
rend galement possible des mcanismes d'authentification par mot de passe sans stockage de ce
dernier. Elle doit tre rsistante aux collisions, cest--dire que deux messages distincts doivent
avoir trs peu de chances de produire la mme signature. De par sa nature, tout algorithme de hachage possde des collisions mais on considre le hachage comme cryptographique si les conditions
suivantes sont remplies :
il est trs difficile de trouver le contenu du message partir de la signature (attaque sur la
premire primage) ;
partir d'un message donn et de sa signature, il est trs difficile de gnrer un autre message
qui donne la mme signature (attaque sur la seconde primage) ;
il est trs difficile de trouver deux messages alatoires qui donnent la mme signature (rsistance aux collisions).
Par trs difficile, on entend techniquement impossible que ce soit au niveau algorithmique ou
matriel. Le MD5 par exemple n'est plus considr comme sr car on a trouv deux messages qui
gnrent la mme empreinte. Toutefois, la mise en uvre de ces techniques n'est pas aise et dans le
cas du MD5, les chercheurs ont trouv une collision sur deux messages au contenu alatoire. On
peut cependant construire partir d'une collision des attaques relles.
7.1.1. Calculez un 3e message dont la somme de contrle est identique aux deux autres reprsents
ci-dessous :
message 1
codes ASCII
message 2
codes ASCII
I O U 1
49 4F 55 31
I O U 9
49 4F 55 39
0 0 . 9
30 30 2E 39
0 0 . 1
30 30 2E 31
9 B 0 B
39 42 D2 42
9 B 0 B
39 42 D2 42
B2 C1 D2 AC
B2 C1 D2 AC
7.1.2. Pour quelle raison une fonction de hachage telle que SHA-1 constitue-t-elle un meilleur
moyen de vrifier lintgrit quune somme de contrle tel que le checksum Internet ?
7.1.3. Est-il ncessaire de chiffrer les messages numriquement signs pour en assurer la confidentialit ?
7.1.4. Le protocole de routage Internet BGP utilise un message digest MD5 pour signer les messages BGP. Pourquoi pensez-vous que le MD5 a t prfr au chiffrement de lintgralit du
message par cl publique ?
8.
8.1. Quelles diffrences y a-t-il entre un centre de distribution de cls et une autorit de certification ? Rappelez le fonctionnement de chacun de ces intermdiaires de confiance.
8.2. Supposons que le centre de distribution de clefs tombe en panne. Quel est limpact de cette
panne sur la capacit des diffrentes parties communiquer de manire scurise ? Supposons
prsent que lautorit de certification tombe en panne. Quel en est limpact ?
8.3. Dans lchange tel que reprsent dans la figure ci-dessous, Comment Alice peut-elle faire
pour sassurer que la rponse provient bien du KDC et non dun intrus qui procde une attaque par rejeu ? Pourquoi Alice na-t-elle pas besoin dauthentifier Bob explicitement ?
8.4. Pourquoi ny a-t-il pas dauthentification explicite entre le KDC et Alice dans le protocole de
la figure ci-dessus ? Lauthentification est-elle ncessaire ? Pourquoi ?
9.
IPSEC
9.1. Rsumez les diffrences entre les services fournis par le protocole Authentication Header protocol et le protocole Encapsulation Security Payload (ESP) dans IPsec.
10. FIREWALLS
M. Dupont est administrateur rseau chez Microscape. Son premier travail est dinstaller un firewall
pour lentreprise. Il dcide dutiliser un simple firewall filtrage de paquets. Malheureusement, M.
Dupont ne connat pas trs bien les firewalls et il a besoin daide pour installer son systme. La topologie du systme est illustre sur la figure ci-dessous. Le rseau Microscape utilise des adresses
10.1/16.
Les rgles pour ce firewall sont dcrites par les rgles simples du tableau ci-dessous. Les entres de
type matching de prfixe (128.32/16) ou * sont possibles. Les paquets qui ne correspondent aucune rgle sont limins.
La premire rgle empche les htes du rseau 128.32/16 deffectuer des telnets dans le rseau de
Microscape ; la deuxime rgle permet aux htes du rseau de Microscape denvoyer des mails
des htes de lInternet. Ces rgles peuvent galement autoriser ou interdire dautres trafics.
10.1. Ecrivez des rgles simples autorisant les employs de Microscape de naviguer sur le Web.
Rendez ces rgles aussi restrictives que possible (i.e. on ne doit pas laisser dautre trafic entrer
ou sortir de Microscape si cest possible).
Supposons que le rseau de Microscape contienne deux htes (A et B). On fait lhypothse
que le firewal ne contient que les rgles ajoutes dans la partie a. Un attaquant dans lInternet
peut-il effectuer une attaque par dni de service de bande passante qui interfre avec le trafic
entre A et B ? Pourquoi ?
M. Dupont installe un proxy cache HTTP dans le rseau de Microscape. Il veut sassurer que
tous les clients de Microscape utilisent ce proxy pour naviguer sur le Web. Ladresse du
proxy est 10.1.2.3. Comment doit-il modifier les rgles tablies en a pour atteindre ce but.
En prenant en compte linstallation obtenue dans c et en supposant que le proxy Web nest
pas sur lun des liens entre les htes A et B, les transferts entre A et B peuvent-ils tre affects
par une attaque par dni de service provenant dun attaquant dans lInternet ?
11. ATTAQUES
11.1. Quelle est la diffrence entre un intrus actif et passif ?
11.2. Supposons quun intrus possde un message chiffr ainsi que la version dchiffre de ce message. Lintrus peut-il faire une attaque par texte chiffr (cipher text), texte connu (knownplaintext) ou texte choisi (chosen-plaintext) ?
11.3. Quest-ce que lattaque de lhomme du milieu (man-in-the-middle) ?
11.4. Considrez le protocole dauthentification 4.0 (chiffrement dun nonce avec cl symtrique),
dans lequel Alice sauthentifie auprs de Bob. Supposons maintenant quen mme temps
quAlice sauthentifie auprs de Bob, Bob doit sauthentifier auprs dAlice. Donnez un scnario dans lequel Trudy, prtendant tre Alice, peut maintenant sauthentifier en tant
quAlice. (Indice : considrez la squence des oprations du protocole ap4.0, une avec Trudy
et une avec Bob qui commencent. Attention au fait que Bob et Alice utiliseront un nonce, et
que le mme nonce peut tre utilis malicieusement si lon ne prend pas de prcautions).
11.5. Dans lattaque man-in-the-middle de la figure ci-dessous, Alice na pas authentifi Bob. Si
Alice exigeait lauthentification de Bob en utilisant ap5.0, lattaque man-in-the-middle pourrait-elle tre vite ? (Rappel : protocole ap5.0 : utilisation dun nonce, chiffr en rponse
avec la cl prive de la personne qui cherche sauthentifier)
11.6. Max la Menace a mis un cheval de Troie dans votre navigateur Web prfr. Cest ennuyeux,
car vous utilisez frquemment votre browser Web pour accder votre compte bancaire en
ligne Max a dj install la backdoor pour obtenir discrtement votre numro de compte et
votre mot de passe ; maintenant, il doit trouver un moyen de sortir ces infos de votre ordinateur et les ramener vers lui par le rseau.
Proposez plusieurs canaux scuriss (couverts) que Max pourrait utiliser pour transmettre vos
secrets bancaires un complice quelque part dans le rseau. Pouvez-vous en trouver un qui ne
puisse pas tre facilement dtect par un dfenseur qui peut sniffer tout le trafic du rseau ?
On suppose que lattaquant sarrange pour hberger un site Web que vous visitez rgulirement.
11.7. Chacune des questions suivantes sintresse une caractristique particulire dun protocole ;
lobjectif est de savoir si cette caractristique peut poser un problme de scurit.
11.7.1.
Considrons la structure de len-tte TCP, en particulier le champ numro de squence.
Du point de vue de la scurit, pourquoi serait-ce une mauvaise ide que le numro de squence soit prvisible ? Supposons que vous soyez un tudiant de Paris 6 et que vous sachiez
que votre ami de Paris 12 est en train de faire un telnet dans le cluster. Quels dommages pourriez-vous faire ?
11.7.2.
Souvenez-vous que tout rseau possde une adresse de diffusion. Les messages envoys
cette adresse de diffusion sont envoys tous les ordinateurs du rseau. Par exemple, si je
veux connatre les autres ordinateurs de mon rseau, je peux pinguer ladresse de diffusion et
tous les ordinateurs connects rpondront mon ping. Pourquoi serait-ce une mauvaise ide
que les htes rpondent aux pings de diffusion (cest--dire les echo requests dICMP, envoyes ladresse de diffusion) ? Quel type de problme cela pourrait-il causer ?
11.7.3.
Une autre attaque classique de Dni de Service est lattaque SYN. Dans une attaque
SYN, un attaquant envoie une victime un flot de paquets SYN avec des adresses sources
usurpes. La victime initialise des tats de connexion et essaie de rpondre aux adresses spoofes. Si suffisamment de paquets SYN sont envoys, la table de connexions dun serveur peut
tre remplie, et les nouvelles requtes seront refuses. Proposez des solutions pour rsoudre ce
problme. Analysez les forces et faiblesses de vos solutions.
10
UPMC
LE PROTOCOLE IPV6
Le protocole IPv6 rsulte de travaux entrepris en 1992 au sein de l'IETF (Internet Engineering Task
Force), l'organisme de standardisation de l'Internet. Ces travaux ont principalement t motivs
pour rsoudre certains des problmes rvls par l'utilisation grande chelle d'IPv4 tels que
l'puisement des adresses disponibles ou l'explosion des tables de routage. Le protocole IP a subi un
toilettage reprenant l'exprience acquise au fil des ans avec IPv4, mais sans pour autant renier les
principes fondamentaux qui ont fait le succs de l'Internet tels que la communication de bout en
bout et le meilleur effort (Best Effort) pour l'acheminement.
Parmi les nouveauts essentielles, on peut citer :
Certains de ces points sont dtaills dans la suite de ce document prsent sous la forme de travaux
dirigs (TD).
Aprs plus de 10 ans d'efforts de standardisation, les spcifications de base du protocole et les
rgles d'attribution des adresses sont clairement dfinies. La plupart des routeurs et des systmes
d'exploitation incluent cette nouvelle version du protocole IP et la transition vers IPv6 devient jour
aprs jour ralit.
ADRESSES IPV6
1.1
Une adresse IPv6 est longue de 128 bits (contre 32 pour IPv4). On dispose ainsi d'environ 3,4
1038 adresses, soit 340 282 366 920 938 463 463 374 607 431 768 211 456, soit encore, pour
reprendre l'image usuelle, plus de 67 milliards de milliards par millimtre carr de surface terrestre.
1.2
On abandonne la notation dcimale pointe employe pour les adresses IPv4 (par exemple
172.31.128.1) au profit d'une criture hexadcimale, o les 8 groupes de 16 bits sont spars par un
signe deux-points :
1fff:0000:0a88:85a3:0000:0000:ac1f:8001
Il est permis d'omettre de 1 3 chiffres zros non significatifs dans chaque groupe de 4 chiffres
hexadcimaux. Ainsi, l'adresse IPv6 ci-dessus est quivalente :
UPMC
1fff:0:a88:85a3:0:0:ac1f:8001 (1fff:0000:0a88:85a3:0000:0000:ac1f:8001)
ou
1fff:0:a88:85a3:0:0:172.31.128.1
Par contre, il n'est pas permis de supprimer un signe deux-points entre deux groupes de 1 4
chiffres hexadcimaux.
De plus, une unique suite de un ou plusieurs groupes conscutifs de 16 bits tous nuls peut tre
omise, en conservant toutefois les signes deux-points de chaque ct de la suite de chiffres omise.
Ainsi, l'adresse IPv6 ci-dessus peut tre abrge en :
1fff:0:a88:85a3::ac1f:8001
ou
1fff::a88:85a3:0:0:ac1f:8001
voire aussi
1fff:0:a88:85a3::172.31.128.1
ou.
1fff::a88:85a3:0:0:172.31.128.1
car elle contiennent chacune plusieurs substitutions (dont les longueurs binaires respectives sont ici
ambigus) : il ne peut exister qu'une seule occurrence de la squence :: dans la notation d'une
adresse IPv6, qui contiendra ncessairement de 2 7 signes deux-points (ou 3 points sparateurs et
de 2 6 signes deux-points).
L'adresse IPv6 indtermine peut ainsi tre abrge en ::0.0.0.0 ou :: .
1.2.1 Donnez une criture pour ladresse suivante :
FEDC:0000:0000:0000:400:A987:6543:210F
1.2.2 L'abrviation :: peut-elle apparatre plus dune fois dans une mme adresse ? Pourquoi ?
La reprsentation des prfixes IPv6 est similaire la notation CIDR (RFC 1519) utilise pour les
prfixes IPv4. Un prfixe IPv6 est donc reprsent par la notation :
adresse_ipv6/longueur_du_prfixe_en_bits
Exemple de notation combinant l'adresse d'une interface et la longueur du prfixe rseau associ :
3EDC:BA98:7654:3210:945:1321:ABA8:F4E2/64
1.2.3 Donnez la forme abrge de ladresse suivante sachant que la longueur du prfixe est de 8
octets
UPMC
3EDC:BA98:7654:3210:0000:0000:0000:0000
1.3
Les 64 premiers bits de l'adresse IPv6 (prfixe) servent gnralement l'adresse de sous-rseau,
tandis que les 64 bits suivants identifient l'hte l'intrieur du sous-rseau : ce dcoupage joue un
rle un peu similaire aux masques de sous-rseau d'IPv4.
Cependant, la rservation et l'enregistrement d'adresses IPv6 routables sur Internet se fait par blocs
dont le prfixe a une taille maximale de 64 bits. Toutes les adresses dun mme bloc sont routes de
la mme faon au travers des rpartiteurs Internet et ne font l'objet d'aucune autre demande de
rservation spcifique. L'usage des 64 derniers bits au sein de ce bloc reste priv, et ces bits peuvent
ainsi encapsuler (de faon prive) une adresse MAC (48 bits), une adresse IPv4 (32 bits) voire
mme un nom d'hte (jusqu' 8 caractres), ce qui permet ainsi une configuration facile de
dispositifs de traduction d'adresses IPv6 vers les htes d'un rseau local ne supportant pas IPv6.
1.4
Types d'adresses
Diffrentes sortes d'adresses IPv6 jouent des rles particuliers. Ces proprits sont indiques par le
dbut de l'adresse, appel prfixe. IPv6 reconnat trois types d'adresses : unicast, multicast et
anycast.
Le type unicast, est le plus simple. Une adresse de ce type dsigne une interface unique. Un paquet
envoy une telle adresse, sera donc remis l'interface identifie par cette adresse. Parmi les
adresses unicast, on peut distinguer celles qui ont une porte globale, c'est--dire dsignant sans
ambigut une machine sur le rseau Internet et celles qui ont une porte locale (lien ou site). Ces
dernires ne sont pas routes sur l'Internet.
1.4.1 Unicast Global
L'Internet IPv6 est dfini comme tant le sous-rseau 2000::/3 (les adresses commenant par un 2
ou un 3). Il sagit des adresses unicast de porte globale. Seules ces adresses peuvent tre routes.
Toutes les autres adresses ne peuvent tre utilises que localement sur un mme rseau physique (de
niveau 2), ou par un accord priv de routage mutuel.
48 bits
prfixe global
16 bits
64 bits
subnet id
interface id
3 bits
Les adresses globales de type plan agrg, propose dans le RFC 3587, prcise la structure
d'adressage IPv6 dfinie dans le RFC 3513 en prcisant les tailles de chacun des blocs. Une adresse
intgre trois niveaux de hirarchie :
une topologie publique code sur 48 bits, alloue par le fournisseur d'accs ;
une topologie de site code sur 16 bits. Ce champ permet de coder les numros de sous
rseau du site ;
UPMC
un identifiant d'interface code sur 64 bits distinguant les diffrentes machines sur le lien.
2001:4800::/23
2001:0200::/23
APNIC
01 Jul 99
2001:4A00::/23
2001:0400::/23
ARIN
01 Jul 99
2001:4C00::/23
2001:0600::/23
RIPE NCC
01 Jul 99
2001:5000::/20
2001:0800::/23
2001:0A00::/23
2001:0C00::/23
RIPE NCC
RIPE NCC
APNIC
01 May 02
02 Nov 02
01 May 02
2001:8000::/19
2001:A000::/20
2002:0000::/16
2001:0E00::/23
APNIC
01 Jan 03
2003:0000::/18
2001:1200::/23
LACNIC
01 Nov 02
2400:0000::/19
2001:1400::/23
2001:1600::/23
2001:1800::/23
2001:1A00::/23
2001:1C00::/22
2001:2000::/20
2001:3000::/21
2001:3800::/22
2001:3C00::/22
RIPE NCC
RIPE NCC
ARIN
RIPE NCC
RIPE NCC
RIPE NCC
RIPE NCC
RIPE NCC
RESERVED
01 Feb 03
01 Jul 03
01 Apr 03
01 Jan 04
01 May 04
01 May 04
01 May 04
01 May 04
11 Jun 04
2400:2000::/19
2400:4000::/21
2404:0000::/23
2600:0000::/22
2604:0000::/22
2608:0000::/22
260C:0000::/22
2610:0000::/23
2800:0000::/23
2001:4000::/23
RIPE NCC
11 Jun 04
2A00:0000::/21
2001:4200::/23
ARIN
01 Jun 04
2A01:0000::/26
2001:4400::/23
2001:4600::/23
APNIC
RIPE NCC
11 Jun 04
17 Aug 04
3FFE:0000::/16
ARIN
RIPE
NCC
RIPE
NCC
RIPE
NCC
APNIC
APNIC
6to4
RIPE
NCC
24 Aug 04
15 Oct 04
17 Dec 04
10 Sep 04
30 Nov 04
30 Nov 04
01 Feb 01
12 Jan 05
20 May
05
APNIC 08 Jul 05
APNIC 08 Aug 05
APNIC 19 Jan 06
ARIN
19 Apr 05
ARIN
19 Apr 05
ARIN
19 Apr 05
ARIN
19 Apr 05
ARIN
17 Nov 05
LACNIC 17 Nov 05
RIPE
19 Apr 05
NCC
RIPE
15 Dec 05
NCC
6BONE 01 Dec 98
APNIC
Les adresses 6to4 (2002::/16) permettant d'acheminer le trafic IPv6 via un ou plusieurs
rseaux IPv4.
UPMC
Toutes les autres adresses routables (plus des trois quarts) sont actuellement rserves pour
usage ultrieur.
1.4.2 Lien-Local
Les adresses de type lien-local (link local use address) appartiennent FE80::/64. Ces adresses sont
locales dans le sens o elles sont non routables. Leur utilisation est restreinte au mme rseau local
de niveau 2. Il sagit dadresses dont la validit est restreinte un lien. Une telle adresse identifie un
ensemble dinterfaces directement connectes sans routeur intermdiaire : des machines branches
sur un mme Ethernet, des machines relies par une connexion PPP, ou aux extrmits d'un tunnel.
Les adresses lien-local sont configures automatiquement l'initialisation de l'interface et
permettent la communication entre noeuds voisins. L'adresse est obtenue en concatnant le prfixe
FE80::/64 aux 64 bits de l'identifiant d'interface.
Parmi elles, les adresses du bloc FE80::/96 correspondent bit--bit aux adresses IPv4 et ne
ncessitent aucune configuration (cependant il s'agit quand mme d'une interface logique
diffrente). Par exemple, l'adresse IPv6 fe80::172.16.1.2 sera assigne automatiquement la mme
interface physique que l'adresse IPv4 172.16.1.2.
Les adresses lien-local sont utilises par les protocoles de configuration d'adresse globale, de
dcouverte de voisins (neighbor discovery) et de dcouverte de routeurs (router discovery). Ce sont
de nouveaux dispositifs, le premier supplantant en particulier le protocole ARP (Address Resolution
Protocol), qui permettent un rseau local de se configurer automatiquement (voir Dcouverte de
voisins).
Le fait que ces adresses aient une porte trs faible les limite dans la pratique au cas o un
dmarrage automatique (bootstrap) est ncessaire. Leur usage ne doit pas tre gnralis dans les
applications classiques en rgime stabilis.
1.4.3 Identifiant dinterface
Les types d'adresses global ou lien-local utilisent un identifiant sur 64 bits pour dsigner une
interface connecte sur un lien. Si cette longueur n'est pas directement impose par la norme
d'adressage d'IPv6 RFC 3513, elle bnficie d'un fort consensus car elle permet de garantir
facilement une unicit sur le lien et par consquent de faciliter l'auto-configuration des
quipements.
Plusieurs techniques ont t labores l'IETF. La plus rpandue est base sur l'utilisation d'une
valeur unique par construction comme l'adresse MAC de la machine. Mais l'on peut galement
choisir une valeur alatoire pour garantir plus de confidentialit ou au contraire la driver d'une cl
publique pour mieux authentifier l'metteur du message. La taille de 64 bits permet de rduire une
valeur proche de zro la probabilit de conflits. Enfin dans certains cas l'affectation manuelle de
cette valeur peut se justifier.
1.4.4 Unique Local Address
Les adresses de type site-local tant supprimes du standard IPv6 (RFC 3879), le RFC 4193 dfinit
un nouveau format d'adresse unicast : les adresses uniques locales (ULA : Unique Local Address).
Ces adresses sont destines une utilisation locale. Elles ne sont pas dfinies pour tre routes dans
l'Internet, mais seulement au sein d'une zone limite telle qu'un site ou entre un nombre limit de
sites. Les adresses uniques locales ont les caractristiques suivantes :
UPMC
Aucune diffrence pour les applications, qui peuvent les considrer comme des adresses
globales unicast standard.
Les adresses uniques locales sont cres en utilisant un identifiant global (Global ID) gnr
pseudo-alatoirement. Ces adresses suivent le format suivant :
Prefix (7 bits) : FC00::/7 prfixe identifiant les adresses IPv6 locales (ULA)
L (1 bit) : Positionn 1, le prfixe est assign localement. La valeur 0 est rserve pour une
utilisation future.
Global ID (40 bits) : Identifiant global utilis pour la cration d'un prfixe unique (Globally
Unique Prefix).
Interface ID (64 bits) : L'indentifiant d'interface tel que dfinit dans Identifiant d'interface.
4 bits 4 bits
112 bits
Identifiant de groupe
Le champ flags est un mot de 4 bits. Les 3 premiers bits sont rservs et doivent tre initialiss
zro. Le dernier bit, nomm T, sil est positionn 0, indique que la validit de ladresse est
permanente (auquel cas elle est ncessairement attribue par une autorit comptente de lInternet),
6
UPMC
sinon ladresse est temporaire (transient address). Le champ scope , galement de longueur de 4
bits, est le niveau de diffusion (scope) de ladresse considre. Les valeurs actuellement dfinies
sont :
1 - node-local
2 - link-local
3 - subnet-local
4 - admin-local
5 - site-local
8 - organisation-local
E - global
Les adresses multicast sollicit sont construites partir dune adresse unicast ou anycast en
concatnant le prfixe FF02::1:FF00:0/104 aux 24 deniers bits extraits de celle-ci. Un quipement,
partir de chacune de ses adresses IPv6 construit une adresse de multicast sollicit et coute les
paquets mis vers cette adresse. Les autres quipements sur le lien qui ne connaissent que ladresse
IPv6 de cet quipement sur ce lien peuvent utiliser son adresse de multicast sollicit pour le joindre
et obtenir son adresse MAC. Ils construisent son adresse de multicast sollicit de la mme manire
que lquipement lui-mme. De cette adresse de multicast sollicit est alors dduite ladresse MAC
de multicast en concatnant le prfixe 0x3333 et les 4 octets de poids faible de l'adresse multicast
IPv6. Sur le lien-local, les paquets IPv6 multicast sont alors encapsuls dans une trame Ethernet
dont le champ Adresse de destination contient une adresse MAC multicast : le 8me bit de poids
fort de cette adresse est positionn 1. Lutilisation des adresses IPv6 multicast sollicit rend
obsolte lutilisation de la diffusion gnralise utilise par des protocoles tel que ARP en IPv4.
1.4.7.a Pourquoi avoir aboli lutilisation de la diffusion gnralise dans IPv6 ?
1.4.7.b Quelle est ladresse MAC multicast correspondant l'adresse multicast IPv6
FF1E::12:AC21:6521 ?
1.4.8 Anycast
Le type dadresses anycast est une officialisation de propositions faites pour IPv4 RFC 1546.
Comme dans le cas du multicast, une adresse de type anycast dsigne un groupe d'interfaces, la
diffrence tant que lorsqu'un paquet a pour destination une telle adresse, il est achemin un des
lments du groupe et non pas tous. C'est, par exemple, le plus proche au sens de la mtrique des
protocoles de routage. Cet adressage est principalement exprimental.
SUPPORT DE TRANSMISSION
UPMC
2.1.1 Donnez les principales diffrences entre la mthode de transport des datagrammes IPv6 et
IPv4.
2.2 Rseau diffusion : Ethernet
Les datagrammes IPv6 utilisent l'encapsulation standard Ethernet V2, chaque trame contenant un
seul datagramme. L'en-tte de la trame Ethernet contient les adresses Ethernet source et destination,
et le champ type de protocole vaut 0x86DD. La structure d'une trame est donne la figure
Encapsulation Ethernet.
La taille maximale d'un datagramme pouvant tre transmis directement par une interface Ethernet
(MTU) est normalement de 1 500 octets. Une valeur diffrente peut tre force par configuration
manuelle ou en utilisant l'option MTU des annonces de routeurs.
Pour la construction des adresses lien-local et des adresses auto-configures, l'identifiant d'interface
est celui driv de l'adresse MAC IEEE 802 constructeur de l'interface Ethernet. L'IEEE a dfini un
identificateur global 64 bits (format EUI-64) pour les rseaux IEEE 1394 qui vise une utilisation
dans le domaine de la domotique. L'IEEE dcrit les rgles qui permettent de passer d'un identifiant
MAC cod sur 48 bits un EUI-64.
Il existe plusieurs mthodes pour construire l'identifiant :
24 bits
|u |g
40 bits
o
constructeur
0 ... | 6 | 7
n de srie
23
63
0 ... | 6 | 7
40 bits
o
constructeur
n de srie
23
63
Si une machine ou une interface possde un identificateur global IEEE EUI-64, celui-ci a la
structure dcrite par la figure Identificateur global IEEE EUI-64. Les 24 premiers bits de
l'EUI-64, comme pour les adresses MAC IEEE 802, identifient le constructeur et les 40
autres bits identifient le numro de srie (les adresses MAC IEEE 802 n'en utilisaient que
24). Les 2 bits u (septime bit du premier octet) et g (huitime bit du premier octet) ont une
signification spciale :
u (Universel) vaut 0 si l'identifiant EUI-64 est universel,
g (Groupe) indique si l'adresse est individuelle (g = 0), c'est--dire dsigne un seul
quipement sur le rseau, ou de groupe (g = 1), par exemple une adresse de multicast.
L'identifiant d'interface 64 bits est driv de l'EUI-64 en inversant le bit u (cf. figure
Identificateur d'interface driv d'une EUI-64). En effet, pour la construction des adresses
IPv6, on a prfr utiliser 1 pour marquer l'unicit mondiale. Cette inversion de la
smantique du bit permet de garder la valeur 0 pour une numrotation manuelle, autorisant
numroter simplement les interfaces locales partir de 1.
UPMC
Si une interface possde une adresse MAC IEEE 802 48 bits universelle (cas des
interfaces Ethernet ou FDDI), cette adresse est utilise pour construire des identifiants
d'interface sur 64 bits, comme indiqu sur la figure ci-dessous.
24 bits
|u |g
24 bits
o
constructeur
n de srie
0 ... | 6 | 7
23
47
EUI-48
16 bits
24 bits
|u |g
0xFFFE
constructeur
0 ... | 6 | 7
24 bits
o
23
n de srie
39
63
EUI-64
16 bits
24 bits
|1 |0
0xFFFE
constructeur
0 ... | 6 | 7
24 bits
o
23
n de srie
39
63
2.2.1 Quels sont lidentifiant dinterface et ladresse lien-local dune interface physique de type
Ethernet ayant pour adresse constructeur 34:56:78:9A:BC:DE ? Quelle est ladresse
multicast sollicit associ cette interface ainsi que ladresse MAC de multicast
correspondante ?
DATAGRAMME IPV6
3.1
Avec la reprsentation des adresses employes, le format des datagrammes est la modification la
plus visible pour l'utilisateur expriment et l'ingnieur de rseau. La modification de la taille des
adresses conduit une taille d'en-tte de 40 octets (le double de l'en-tte IPv4 sans les options).
Hormis ce changement de taille, le format des en-ttes IPv6 a t simplifi ce qui permet aux
routeurs de meilleures performances dans leurs traitements.
Le format d'en-tte d'un paquet IPv6 est donn par le RFC 2474 :
4 bits
UPMC
4 bits
Version
4 bits
4 bits
8 bits
Classe
8 bits
Identificateur de flux
En-tte suiv.
Nb. de sauts
Adresse de la source
Adresse de la destination
En-tte suiv.
Longueur
(Extensions)
Data
Le champ Version est le seul champ qui occupe la mme position dans len-tte des
paquets IPv6 et des paquets IPv4. Sa valeur est 6.
CU
Le champ Identificateur de flux contient un numro unique choisi par la source, qui a
pour but de faciliter le travail des routeurs et la mise en oeuvre des fonctions de qualit de
service comme RSVP. Cet indicateur peut tre considr comme une marque un contexte
dans le routeur. Le routeur peut alors faire un traitement particulier : choix d'une route,
traitement en "temps-rel" de l'information.
Contrairement IPv4, le champ Longueur des donnes utiles (payload), cod sur deux
octets, ne contient que la taille des donnes utiles, sans prendre en compte la longueur de
10
UPMC
l'en-tte. Pour des paquets dont la taille des donnes serait suprieure 65 535 ce champ
vaut 0 et l'option jumbogramme de l'extension de proche-en-proche est utilise.
Extension
Proche-en-proche
TCP
17
UDP
41
IPv6
43
Routage
44
Fragmentation
50
Confidentialit
51
Authentification
58
ICMPv6
59
Fin den-ttes
60
Destination
132
SCTP
135
Mobilit
136
UDP-lite
Le champ Nombre de sauts contient une valeur dcrmente chaque nud travers. Un
datagramme retransmis par un routeur est rejet avec l'mission d'un message d'erreur
ICMPv6 vers la source si la valeur aprs dcrmentation atteint 0.
3.1.1 En vous basant sur le format des enttes IPv6, listez les diffrences avec celui des enttes
IPv4.
3.1.2 Quel impact a la disparition du champ checksum dans lentte IPv6 sur les protocoles de
niveau suprieur ?
3.1.3 Le paquet IPv6 suivant a t captur au cours d'une connexion FTP. Procdez au dcodage de
son entte.
0000: 60 00 00 00 00 28 06 40 3f fe 03 02 00 12 00 02
0010: 00 00 00 00 00 00 00 13 3f fe 03 05 10 02 00 01
0020: 02 00 c0 ff fe 11 cb a0 ff b3 00 15 55 4d fd d1
0030: 00 00 00 00 a0 02 40 00 7d 76 00 00 02 04 05 a0
0040: 01 03 03 00 01 01 08 0a 00 9a 17 44 00 00 00 00
11
UPMC
LES EXTENSIONS
Les extensions d'IPv6 peuvent tre vues comme un prolongement de l'encapsulation d'IP dans IP.
part l'extension de proche-en-proche traite par tous les routeurs intermdiaires, les autres
extensions ne sont prises en compte que par les quipements destinataires du paquet.
Une extension a une longueur multiple de 8 octets. Elle commence par un champ en-tte suivant
cod sur un octet. La valeur prise par ce champ dfinit le type de donnes qui vient la suite de
cette extension : il peut sagir dune autre extension ou dun protocole de niveau 4. Pour les
extensions longueur variable, l'octet suivant contient la longueur de l'extension exprime en mots
de 8 octets, le premier n'tant pas compt (une extension de 16 octets aura donc un champ longueur
de 1).
Si plusieurs extensions sont prsentes dans un mme en-tte, leur ordre dapparition est le suivant
(cf. RFC 2460) :
Destination (sera aussi trait par les routeurs lists dans l'extension de routage par la source)
Fragmentation
Authentification
4.1
Extension Proche-en-proche
Lextension proche-en-proche (hop-by-hop) se situe toujours en premire position et est traite par
tous les routeurs que le paquet traverse. Le type associ (contenu dans le champ En-tte suivant
de l'en-tte prcdent) est 0 et le champ longueur de l'extension contient le nombre de mots de 8
octets (64 bits) moins 1. Cette extension est compose d'options. Pour l'instant, seules quatre
options, dont deux de bourrage, sont dfinies. Chaque option est une suite d'octets. Le premier octet
de ces 4 options est un type, le deuxime (sauf pour l'option 0) contient la longueur de l'option en
octets moins 2. Les deux premiers bits de poids fort du type dfinissent le comportement du routeur
quand il rencontre une option inconnue :
Le bit suivant (i.e. le 3e de poids fort) du type indique que le routeur peut modifier le contenu du
champ option (valeur 1) ou non (valeur 0).
Les quatre options de proche-en-proche sont :
1. Pad1 (type 0). Cette option est utilise pour introduire un octet de bourrage.
2. Padn (type 1). Cette option est utilise pour introduire plus de 2 octets de bourrage. Le
champ longueur indique le nombre d'octets qui suivent.
12
UPMC
3. Loption Jumbogramme (type 194 ou 0xc2, RFC 2675). Cette option est utilise quand le
champ longueur des donnes du paquet IPv6 n'est pas suffisant pour coder la taille du
paquet. Cette option est essentiellement prvue pour la transmission grand dbit entre deux
quipements. Si l'option jumbogramme est utilise, le champ longueur des donnes utiles
dans l'en-tte IPv6 vaut 0.
4. L'option Router Alert (type 5 RFC 2675) demande un routeur d'examiner le contenu des
donnes qu'il relaie (Router Alert existe galement en IPv4, RFC 2113). En principe, le
processus de relayage (recopier le paquet sur une interface de sortie en fonction de l'adresse
destination et des tables de routage) doit tre le plus rapide possible. Mais pour des
protocoles comme la gestion des groupes de multicast avec MLD (Multicast Listener
Discovery) ou la signalisation des flux avec RSVP, tous les routeurs intermdiaires doivent
tenir compte des donnes.
L'metteur envoie les donnes la destination, mais s'il prcise l'option Router Alert, les
routeurs intermdiaires vont analyser les donnes, voire modifier leur contenu avant de
relayer le paquet. Ce mcanisme est efficace puisque les routeurs n'ont pas analyser le
contenu de tous les paquets d'un flux. Le champ valeur de l'option contient :
4.1.1 Comment se comporte un routeur lorsquil reoit un paquet contenant lextension proche-enproche avec loption Jumbogramme quil ne sait pas traiter ? Mme question avec loption
Router Alert.
4.1.2 Pour quelle option de lextension Proche-en-proche, un routeur peut-il modifier le contenu
loption ?
4.2
Extension Destination
Lextension destination, dont le format est identique l'extension de proche-en-proche (cf. figure
Format des extensions proche-en-proche et destination ), contient des options qui sont
traites par l'quipement destinataire. Pour l'instant, part les options de bourrage (voir Pad1 et
Padn) et de mobilit, la seule autre option concerne le tunnelage dans des paquets IPv6 (RFC 2473).
Cette option permet de limiter le niveau d'encapsulation dans des tunnels des paquets IPv6.
4.3 Extension Routage
Cette extension permet d'imposer un paquet une route diffrente de celle offerte par les politiques
de routage prsentes sur le rseau. Pour l'instant seul le routage par la source (type = 0), similaire
l'option Loose Source Routing d'IPv4, est dfini.
Dans IPv4, le routage peut tre strict (le routeur suivant prsent dans la liste doit tre un voisin
directement accessible) ou libral (loose) (un routeur peut utiliser les tables de routage pour joindre
le routeur suivant servant de relais). Dans IPv6, seul le routage libral est autoris. En effet, le
routage strict tait initialement mis en place surtout pour des raisons de scurit. La source devait
tre absolument sre du chemin pris par les paquets. Cette utilisation a maintenant disparu du
rseau.
Le principe du routage par la source ou Source Routing dans IPv4 est le mme pour IPv6.
L'metteur met dans le champ destination du paquet IPv6, l'adresse du premier routeur servant de
13
UPMC
relais, l'extension contient la suite de la liste des autres routeurs relais et le destinataire. Quand un
routeur reoit un paquet qui lui est adress comportant une extension de routage par la source, il
permute son adresse avec l'adresse du prochain routeur et rmet le paquet vers cette adresse
suivante. La figure suivante donne le format de l'extension de routage par la source :
8 bits
8 bits
8 bits
8 bits
En-tte suiv.
Lg. Extension
Type rout.
Segment rest.
Rserv
Adresse routeur 1
Adresse routeur n
(ou destination finale)
Le champ type routage indique la nature du routage. Pour l'instant, seul le routage par la
source, de type 0 est spcifi. La suite de l'en-tte est propre ce type.
Le nombre de segments restant est dcrment aprs la traverse d'un routeur. Il indique
le nombre d'quipements qui doivent encore tre traverss. Il permet de trouver dans la liste
l'adresse qui devra tre substitue.
La liste comprenant les routeurs traverser et le destinataire finale est fournie. Ces adresses ne
peuvent pas tre des adresses de multidiffusion (multicast).
4.3.1 Le paquet suivant a t captur lors de l'ouverture d'une connexion telnet. La commande
telnet permet de spcifier des paramtres de routage par la source. Ainsi telnet @routeur1
@destination permet un routage libral vers la destination en passant par le routeur
intermdiaire routeur1.
0000: 60 00 00 00 00 40 2b 40 3f fe 03 02 00 12 00 02
0010: 00 00 00 00 00 00 00 13 3f fe 03 02 00 12 00 05
0020: 02 a0 c9 ff fe aa 22 01|06 02 00 01 00 00 00 00
0030: 3f fe 03 05 10 02 00 01 02 00 c0 ff fe 11 cb a0|
0040: ff b1 00 17 17 10 7e 57 00 00 00 00 a0 02 40 00
0050: 35 6e 00 00 02 04 05 a0 01 03 03 00 01 01 08 0a
0060: 00 9a 1d 04 00 00 00 0b
14
UPMC
8 bits
En-tte suiv.
Lg. extension
16 bits
Place du fragment
0 0 M
Identification
Figure 9 Format de l'extension de fragmentation
Le champ Place du fragment indique lors du rassemblage o les donnes doivent tre
insres. Ceci permet de parer les problmes dus au dsquencement dans les rseaux
orients datagrammes. Comme ce champ est sur 13 bits, la taille de tous les segments, sauf
du dernier, doit tre multiple de 8 octets.
Le bit DF (Don't Fragment) n'est plus ncessaire puisque, si un paquet est trop grand, il y
aura rejet du paquet par le routeur.
4.4.1 Pourquoi avoir prvu une extension fragmentation alors que le mcanisme de dcouverte du
PMTU permet dadapter la taille des paquets IPv6 lmission ? Au niveau de quel type
dquipements fragmentation et rassemblage ont-ils lieu ?
4.4.2 Les paquets suivants correspondent l'envoi d'un datagramme de longueur 3 500 octets en
UDP alors que le MTU de l'interface est 1 500.
a. Dcoder les deux traces en donnant le maximum dinformations.
Trace 1
0000: 60 00 00 00 05 b0 2c 40 3f fe 03 02 00 12 00 02
0010: 00 00 00 00 00 00 00 13 3f fe 03 02 00 12 00 05
0020: 02 a0 c9 ff fe aa 22 01|11 00 00 01 00 00 00 8e|
0030: f3 8e 00 0d 0d b4 c2 27 30 31 32 33 34 35 36 37
0040: 38 39 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e
0050: 4f 50 51 52 53 54 55 56 57 58 59 5a 61 62 63 64
0060: 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74
0070: ...
Trace 2
0000: 60 00 00 00 05 b0 2c 40 3f fe 03 02 00 12 00 02
0010: 00 00 00 00 00 00 00 13 3f fe 03 02 00 12 00 05
0020: 02 a0 c9 ff fe aa 22 01|11 00 05 a9 00 00 00 8e|
0030: 45 46 47 48 49 4a 4b 4c 4d 4e 4f 50 51 52 53 54
15
UPMC
0040: 55 56 57 58 59 5a 61 62 63 64 65 66 67 68 69 6a
0050: 6b 6c 6d 6e 6f 70 71 72 73 74 75 76 77 78 79 7a
0060: 30 31 32 33 34 35 36 37 38 39 41 42 43 44 45 46
0070: 47 48 49 4a 4b 4c 4d 4e 4f 50 51 52 53 54 55 56
0080: ...
b. Ces deux paquets sont-ils suffisants pour envoyer le datagramme UDP en question ? Sils
ne le sont pas, donner le format du ou des autres paquets.
4.5 Extension Scurit
Deux extensions de scurit -- les extensions d'authentification AH (Authentication Header) et de
confidentialit ESP (Encapsulating Security Payload) -- sont dfinies par l'IETF. Elles permettent
de protger les communications passes sur les rseaux IPv6 mais aussi IPv4 en assurant les
services de confidentialit, authentification, intgrit et dtection de rejeux. Le chapitre Scurit du
RFC 2402 donne une description dtaille de ces extensions, et prsente les modes de protection
existants.
ICMPV6
Le protocole de contrle d'IP a t prvu. Dans IPv4, ICMP (Internet Message Control Protocol)
sert la dtection d'erreurs (par exemple : quipement inaccessible, dure de vie expire,...), au test
(par exemple ping), la configuration automatique des quipements (redirection ICMP, dcouverte
des routeurs). Ces trois fonctions ont t mieux dfinies dans IPv6. De plus ICMPv6 (RFC 2463)
intgre les fonctions de gestion des groupes de multicast (MLD : Multicast Listener Discovery) qui
sont effectues par le protocole IGMP (Internet Group Message Protocol) dans IPv4. ICMPv6
reprend aussi les fonctions du protocole ARP utilis par IPv4.
Le protocole se voit attribuer le numro 58. Le format gnrique des paquets ICMPv6 est le
suivant :
8 bits
8 bits
16 bits
Type
Code
Checksum
Donnes ICMP
16
UPMC
Les messages ICMPv6 de compte rendu d'erreur contiennent dans la partie donnes le paquet
IPv6 ayant provoqu l'erreur. Pour viter des problmes de fragmentation puisqu'il est difficilement
envisageable de mettre en uvre la dcouverte du MTU, la longueur du message ICMPv6 est
limite 1 280 octets et par consquent le contenu du paquet IPv6 peut tre tronqu.
Type Code Nature
Gestion des erreurs
1
Destination inaccessible
0
Temps dpass
Erreur de paramtre
0
128
Demande d'cho
129
Rponse d'cho
Gestion des groupes multicast (MLD, RFC 2710)
130
Requte d'abonnement
131
Rapport d'abonnement
132
Fin d'abonnement
Dcouverte de voisins (RFC 2461)
133
Sollicitation du routeur
134
Annonce du routeur
135
136
137
Redirection
Renumrotation des routeurs (exprimental, RFC 2894)
17
138
UPMC
commande
Rsultat
255
139
Demande d'information
140
Rponse
Dcouverte de voisins inverse (RFC 3122)
141
Sollicitation
142
Annonce
Gestion des groupes multicast (MLDv2, RFC 3810)
143
144
145
146
147
148
149
150
8 bits
16 bits
Type = 1
Code
Checksum
Inutilis
18
UPMC
Ce message est mis par un routeur intermdiaire quand le paquet ne peut pas tre transmis parce
que soit :
le routeur ne trouve pas dans ses tables la route vers la destination (code = 0) ;
l'adresse destination ne peut tre atteinte avec l'adresse source fournie, par exemple si le
message est adress un destinataire hors du lien, l'adresse source ne doit pas tre une
adresse lien-local (code = 2) ;
toute autre raison comme par exemple la tentative de router une adresse locale au lien (code
= 3) ;
le destinataire peut aussi mettre un message ICMPv6 de ce type quand le port destination
contenu dans le paquet n'est pas affect une application (code = 4).
8 bits
16 bits
Type = 2
Code
Checksum
MTU
Ce message ICMPv6 est utilis par le protocole de dcouverte du MTU pour trouver la taille
optimale des paquets IPv6 pour qu'ils puissent traverser les routeurs. Ce message contient la taille
du MTU accepte par le routeur pour que la source puisse efficacement adapter la taille des
donnes.
5.3 Temps dpass
8 bits
8 bits
16 bits
Type = 3
Code
Checksum
inutilis
19
UPMC
soit qu'un fragment s'est perdu et le temps allou au rassemblage a t dpass (code = 1).
Ce message sert aussi la commande traceroute pour dterminer le chemin pris par les paquets.
5.4 Erreur de paramtre
8 bits
8 bits
16 bits
Type = 4
Code
Checksum
pointeur
Ce message est mis par un nud ayant dtect une erreur de syntaxe dans l'en-tte du paquet IP ou
des extensions. Le champ code rvle la cause de l'erreur :
une option de l'extension (par exemple proche-en-proche ou destination) n'est pas reconnue
et le codage des deux bits de poids fort oblige rejeter le paquet (code = 2).
Le champ pointeur indique l'octet o l'erreur est survenue dans le paquet retourn.
5.5 Demande et rponse d'cho
8 bits
8 bits
16 bits
Type = 128/129
Code=0
Checksum
identificateur
Numro de squence
donnes
Ces deux messages servent en particulier la commande ping permettant de tester l'accessibilit
d'une machine. Le principe de fonctionnement est le mme que pour IPv4, une requte (type 128)
est envoye vers l'quipement dont on veut tester le fonctionnement, celui-ci rpond par le message
rponse d'cho (type 129). Le champ identificateur permet de distinguer les rponses dans le cas o
20
UPMC
plusieurs commandes ping seraient lances simultanment sur la machine. Le champ numro de
squence permet d'associer la rponse une requte pour mesurer le temps d'aller et retour dans le
cas o les demandes sont mises en continu et que le dlai de propagation est lev. Le champ
donnes permet d'augmenter la taille du message pour les mesures.
DECOUVERTE DE VOISINS
Rsolution d'adresses
Configuration automatique
Indication de redirection
21
adresse physique
de la source
UPMC
Sollicitation du
routeur
Annonce du
routeur
Sollicitation du
voisin
prsent
Prsent
prsent
adresse physique
de la cible
information sur le
prfixe
Annonce du
voisin
Indication de
rdirection
prsent
prsent
>= 1
en-tte redirige
prsent
MTU
possible
Figure 16 Utilisation des options dans les messages de dcouverte des voisins
6.2.1
La figure Format de l'option adresse physique source/cible donne le format de ces options. Le type
1 est rserv l'adresse physique de la source et le type 2 l'adresse de la cible.
Le champ longueur est la taille en mots de 64 bits de l'option. Dans le cas d'une adresse MAC,
d'une longueur de 6 octets, il contient donc la valeur 1.
8 bits
8 bits
16 bits
Type = 1/2
Longueur
Adresse
physique
Figure 17 Format de l'option adresse physique source/cible
6.2.2
Cette option contient les informations sur le prfixe pour permettre une configuration automatique
des quipements. Le champ type vaut 3 et le champ longueur vaut 4. La figure Format de l'option
information sur le prfixe donne le format de l'option :
22
UPMC
8 bits
8 bits
8 bits
8 bits
Type = 3
Longueur = 4
Lg prfixe
LAR- ----
Dure de validit
Dure prfrable
rserve
Prfixe
Le champ lg.prfixe indique combien de bits sont significatifs pour le prfixe annonc dans
un champ suivant.
Le bit L indique, quand il est 1, que le prfixe permet d'indiquer que tous les autres
quipements partageant le mme prfixe sont sur le mme lien. L'metteur peut donc
directement les joindre. Dans le cas contraire, l'quipement met le paquet vers le routeur. Si
ce dernier sait que l'quipement metteur peut joindre directement le destinataire, il mettra
un message ICMPv6 d'indication de redirection.
Le bit A indique, quand il est 1, que le prfixe annonc peut tre utilis pour construire
l'adresse de l'quipement.
Le bit R, indique, quand il est 1, que le champ prfixe contient l'adresse globale d'un
routeur agent mre. Les bits de poids fort peuvent toujours tre utiliss pour construire un
prfixe.
Le champ dure de validit indique en secondes la dure pendant laquelle le prfixe est
valide.
Le champ dure prfrable indique la dure en secondes pendant laquelle une adresse
construite avec le protocole de configuration sans tat demeure prfrable (cf. Dure de
vie des adresses).
Pour ces deux champs, une valeur de 0xffffffff reprsente une dure infinie. Ces champs peuvent
servir dans la phase de passage d'un fournisseur d'accs un autre ; c'est--dire d'un prfixe un
autre.
Le champ rserv permet d'aligner le prfixe sur une frontire de mot de 64 bits.
Le champ prfixe contient la valeur de prfixe annonc sur le lien. Pour maintenir un
alignement sur 64 bits pour le reste des donnes du paquet, ce champ a une longueur fixe de
128 bits.
23
6.2.3
UPMC
En-tte redirige
Cette option est utilise par le message d'indication de redirection. Elle permet d'encapsuler les
premiers octets du paquet IPv6 qui a provoqu l'mission de ce message comme dans le cas des
messages ICMPv6 d'erreur.
Le type vaut 4 et la taille de cette option ne doit pas conduire un paquet IPv6 dpassant 1280
octets (cf. figure Format de l'option en-tte redirige). Par contre le paquet doit contenir le
maximum d'information possible.
8 bits
8 bits
16 bits
Type = 4
Longueur
rserv
rserve
En-tte IPv6 et donnes
6.2.4
MTU
Cette option permet d'informer les quipements sur la taille maximale des donnes pouvant tre
mises sur le lien. La figure Format de l'option MTU donne le format de cette option. Il n'est pas
ncessaire de diffuser cette information si l'quipement utilise toujours la taille maximale permise.
Par exemple, sur les rseaux Ethernet, les quipements utiliseront la valeur 1 500. Par contre pour
les rseaux anneau jeton ou FDDI, il est souvent ncessaire de prciser si les quipements doivent
utiliser la valeur maximale permise ou une valeur infrieure pour autoriser l'utilisation de ponts.
Le champ type vaut 5 et le champ longueur 1.
8 bits
8 bits
16 bits
Type = 5
Longueur=1
rserv
MTU
Figure 20 Format de l'option MTU
Sollicitation du routeur
24
UPMC
Le message de sollicitation d'un routeur est mis par un quipement au dmarrage pour
recevoir plus rapidement des informations du routeur. Ce message est mis l'adresse IPv6
de multicast rserve aux routeurs sur le mme lien ff02::2. Si l'quipement ne connat pas
encore son adresse source, l'adresse non spcifie est utilise. Le champ option contient
normalement l'adresse physique de l'quipement.
8 bits
8 bits
16 bits
Type = 133
Code=0
Checksum
Rserv
options
Annonce du routeur
Ce message (cf. figure Format des paquets d'annonce du routeur) est mis priodiquement
par les routeurs ou en rponse un message de sollicitation d'un routeur par un quipement.
Le champ adresse source contient l'adresse locale au lien du routeur, le champ destination
contient soit l'adresse de l'quipement qui a mis la sollicitation, soit l'adresse de toutes les
stations (ff02::01).
8 bits
8 bits
16 bits
Type = 134
Code=0
Checksum
Saut max.
MOH-----
Dure daccessibilit
Temporisation de retransmission
options
(adresse physique de la source, information sur le prfixe (un ou
plus), MTU)
25
UPMC
8 bits
8 bits
16 bits
Type = 135
Code=0
Checksum
rserv
adresse de la cible
options
(adresse physique de la source)
8 bits
16 bits
Type = 136
Code=0
Checksum
RSO-----
rserv
adresse de la cible
options
(adresse physique de la source)
Indication de redirection
La technique de redirection est la mme que dans IPv4. Un quipement ne connat que les
prfixes des rseaux auxquels il est directement attach et l'adresse d'un routeur par dfaut.
Si la route peut tre optimise, le routeur par dfaut envoie ce message pour indiquer qu'une
route plus courte existe. En effet, avec IPv6, comme le routeur par dfaut est appris
26
UPMC
automatiquement, la route n'est pas forcment la meilleure (cf. figure Routage par dfaut
non optimal).
Un autre cas d'utilisation particulier IPv6 concerne des stations situes sur un mme lien
physique mais ayant des prfixes diffrents. Ces machines passent dans un premier temps
par le routeur par dfaut. Ce dernier les avertit qu'une route directe existe.
8 bits
8 bits
16 bits
Type = 137
Code=0
Checksum
rserv
adresse de la cible
adresse de la destination
options
(adresse physique de la cible,
entte redirig)
27
UPMC
Trace 2 :
0000: 6f 00 00 00 00 20 3a ff fe 80 00 00 00 00 00 00
0010: 18 00 20 ff fe 0c 7a 34 3f fe 03 02 00 12 00 03
0020: 0a 00 20 ff fe 0a aa 6d|88 00 d7 fb e0 00 00 00
0030: 3f fe 03 02 00 12 00 03 00 00 00 00 00 00 00 03|
0040: 02 01 1a 00 20 0c 7a 34
28
UPMC
Pour des considrations d'efficacit, il est gnralement prfrable que les informations changes
entre quipements soient contenues dans des datagrammes de taille maximale. Cette taille dpend
du chemin suivi par les datagrammes et est gale la plus grande taille autorise par l'ensemble des
liens traverss. Elle est de ce fait appele PMTU, ou Path Maximum Transmission Unit (unit de
transfert de taille maximale sur le chemin).
Initialement, l'quipement metteur fait l'hypothse que le PMTU d'un certain chemin est gal au
MTU du lien auquel il est directement attach. S'il s'avre que les paquets transmis sur ce chemin
excdent la taille maximale autorise par un lien intermdiaire, alors le routeur situ aux abords de
ce lien dtruit ces paquets et retourne un message d'erreur ICMPv6 de type paquet trop grand, en
y indiquant le MTU accept. Fort de ces informations, l'quipement metteur rduit le PMTU
suppos pour ce chemin. Plusieurs itrations peuvent tre ncessaires avant d'obtenir un PMTU
permettant tout paquet d'arriver l'quipement destinataire sans jamais excder le MTU de chaque
lien travers. Le protocole IPv6 garantit que le MTU de tout lien ne peut descendre en dessous de 1
280 octets, valeur qui constitue ainsi une borne infrieure pour le PMTU.
7.1
Comment sont rpares les pertes enregistres au cours des premires itrations du protocole
de dcouverte du PMTU ?
7.2
Une fois la PMTU dtermine pour un chemin donn, dans quelles situations est-il
envisageable de solliciter nouveau le protocole de dcouverte du PMTU ?
7.3
Les traces suivantes sont celles des trois paquets changs lors d'une ouverture de connexion
TCP.
Paquet 1
0000: 60 00 00 00 00 28 06 40 3f fe 03 02 00 12 00 02
0010: 00 00 00 00 00 00 00 13 3f fe 03 04 01 15 83 00
0020: 02 c0 4f ff fe 61 21 4c|ff ad 13 89 5c 3e 06 6a
0030: 00 00 00 00 a0 02 40 00 9c 2e 00 00 02 04 05 a0
0040: 01 03 03 00 01 01 08 0a 00 9e 7b c4 00 00 00 00
Paquet 2
0000: 60 00 00 00 00 28 06 3c 3f fe 03 04 01 15 83 00
0010: 02 c0 4f ff fe 61 21 4c 3f fe 03 02 00 12 00 02
0020: 00 00 00 00 00 00 00 13|13 89 ff ad e3 59 9c 1a
0030: 5c 3e 06 6b a0 12 42 f0 14 5a 00 00 02 04 11 3a
0040: 01 03 03 00 01 01 08 0a 00 41 f9 83 00 9e 7b c4
Paquet 3
29
UPMC
0000: 60 00 00 00 00 20 06 40 3f fe 03 02 00 12 00 02
0010: 00 00 00 00 00 00 00 13 3f fe 03 04 01 15 83 00
0020: 02 c0 4f ff fe 61 21 4c|ff ad 13 89 5c 3e 06 6b
0030: e3 59 9c 1b 80 10 43 80 4b 14 00 00 01 01 08 0a
0040: 00 9e 7b c4 00 41 f9 83
Paquet 5
0000: 60 00 00 00 02 18 3a fe 3f fe 03 02 00 11 00 01
0010: 00 00 00 00 00 00 00 08 3f fe 03 02 00 12 00 02
0020: 00 00 00 00 00 00 00 13|02 00 e8 f7 00 00 05 c8|
0030: 60 00 00 00 05 b4 06 3e 3f fe 03 02 00 12 00 02
0040: 00 00 00 00 00 00 00 13 3f fe 03 04 01 15 83 00
0050: 02 c0 4f ff fe 61 21 4c|ff ad 13 89 5c 3e 06 6b
0060: e3 59 9c 1b 80 10 43 80 40 a9 00 00 01 01 08 0a
0070: 00 9e 7b c4 00 41 f9 83|20 21 22 23 24 25 26 27
suite du paquet IPv6 tronqu 1280-48 octets ...
Paquet 6
0000: 60 00 00 00 05 a0 06 40 3f fe 03 02 00 12 00 02
0010: 00 00 00 00 00 00 00 13 3f fe 03 04 01 15 83 00
0020: 02 c0 4f ff fe 61 21 4c|ff ad 13 89 5c 3e 06 6b
0030: e3 59 9c 1b 80 10 43 80 8b b3 00 00 01 01 08 0a
0040: 00 9e 7b c4 00 41 f9 83|20 21 22 23 24 25 26 27
0050: 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 36 37
suite des 1420 octets de donnes...
30
UPMC
b. En vous basant sur la taille du premier paquet de donnes envoy sur la connexion TCP,
dterminez la valeur de la PMTU initialement utilise.
c. Dcodez la trace du paquet 5. Vous dterminerez quel est lquipement do est issu le
paquet IP ainsi que la nouvelle valeur ngocie de la PMTU.
31
LA MULTIDIFFUSION AVEC IP
1.
INTRODUCTION
La multidiffusion (ou multicast) est le service de communication point multipoint qui offre un
moyen efficace de diffuser des units de donnes un groupe de rcepteurs, en ce sens qu'une seule
copie de chaque unit est injecte dans le rseau. Les units de donnes sont ensuite dupliques par
les routeurs situs aux embranchements d'un arbre recouvrant. Cet arbre est construit par le
protocole de routage multidestinataire sous-jacent de manire ce que les duplications aient lieu au
plus prs des rcepteurs. Les copies de chaque unit de donnes sont ainsi rduites au nombre
strictement ncessaire pour que l'ensemble des rcepteurs du groupe en reoive une seule. Un
service de diffusion permet ainsi de prserver les ressources du rseau telle que sa bande passante.
IP multicast, le protocole qui rend un service de multidiffusion dans lInternet est un standard
Internet (RFC 1112) paru en 1989 suite aux travaux de Steve Deering au Xerox Palo Alto Research
Center.
1.1 Si plutt que dutiliser un service de multidiffusion directement fourni par la couche rseau (tel
que IP Multicast), on devait se contenter dun service point--point (unicast) tel que celui
rendu par la pile TCP/IP, quelle serait la charge supplmentaire qui pserait sur la source ?
1.2 Lobjectif de cet exercice est de comparer la bande passante consomme par une transmission
multidestinataire (point--multipoint) ralise en utilisant un service de multidiffusion rendu
par la couche rseau celle consomme en mulant une telle transmission par plusieurs
transmissions point--point (unicast).
Considrons une session multidestinataire constitue dune source mettrice unique et de 32
rcepteurs. Source mettrice et rcepteurs sont connects par un arbre binaire.
a. Comparer le cot dune transmission multidestinataire ralise en utilisant un service de
multidiffusion tel que celui rendu par IP Multicast celle mule par plusieurs
transmissions point--point. Le cot sera calcul en comptabilisant le nombre de fois que
lunit de donnes diffuser ou quune copie de celle-ci est relaye sur un lien.
b. Que pouvez-vous dire du nombre de duplications ncessaires selon que lon utilise un
service de multidiffusion tel que celui rendu par IP Multicast ou une mulation base sur
plusieurs transmissions point--point ?
c. Identifiez la topologie dinterconnexion de lmetteur avec les rcepteurs qui rend
lutilisation du service de multidiffusion au niveau rseau la moins coteuse par rapport
lmulation base sur plusieurs transmissions ? Vous tes libre de choisir autant de
routeurs que vous le souhaitez.
2.
Parmi lensemble des adresses IP, toutes classes confondues, on distingue trois grands types
dadresses IPv4 :
les adresses de unicast (transmission unidestinataire ou point--point),
les adresses de broadcast (diffusion gnrale) et
les adresses de
multidistribution).
multicast
(diffusion
restreinte,
transmission
multidestinataire
ou
2.1 Quelle est la classe des adresses IPv4 de multidiffusion ? Comment se diffrencient les
adresses IP de cette classe de celles des autres classes ?
2.2 Comment la fourniture dun service de diffusion est-elle perue la priphrie du rseau ? IP
assure-t-il une garantie de remise supplmentaire (autre que best-effort) pour ces paquets ?
3.
La portion des adresses MAC IEEE-802 de multidiffusion1 dont les 18 bits de poids fort valent en
hexa 01:00:5E: a t rserve linitiative de lIANA (Internet Assigned Numbers Authority) pour
rendre possible leur mise en correspondance avec les adresses IPv4 de multidiffusion. La procdure
de mise en correspondance est simple : elle consiste reporter les 23 bits de poids faible dune
adresse de classe D dans ceux dune adresse MAC (IEEE 802) de multidiffusion appartenant la
plage rserve par lIANA.
3.1. En appliquant cette procdure, quelle est ladresse MAC (IEEE 802) qui rsulte de la mise en
correspondance de ladresse 224.10.8.5 ? Et celle obtenue avec ladresse 224.138.8.5 ?
3.2. Quel est lintrt de rendre possible cette mise en correspondance ? Pour quel type de support
physique est-il intressant de mettre en uvre cette procdure ?
3.3. Cette procdure est-elle bijective ? Cela pose-t-il un quelconque problme ?
3.4. Au vue des problmes poses par la mise en correspondance entre adresse de classe D et
adresse Ethernet de multidiffusion, est-il possible quune machine hte reoive un paquet IP
diffus lintention dun groupe de diffusion auquel la machine hte nest pas abonn ?
Calculez la probabilit quune telle erreur survienne.
3.5. Dans Internet, une session multidestinataire est constitue dau moins une source mettrice et
dun groupe de rcepteurs identifi par une adresse de multidiffusion. En supposant que
lattribution des adresses de classe D se fasse sans concertation, quelle est la probabilit que la
mme adresse IP Multicast soit choisie pour identifier les groupes de deux sessions
multidestinataires concurrentes ? Indication : il vous sera ncessaire de dterminer la taille de
lespace dadressage des adresses IP Multicast.
Supposons prsent quil y ait non plus 2 mais 1000 sessions multidestinataires en parallle
dans le rseau. En supposant que lattribution des adresses IP Multicast se fait sans
concertation, quelle est alors la probabilit que ces sessions interfrent les unes avec les autres
?
3.6. Une machine hte doit pralablement stre abonne au groupe de multidiffusion avant de
pouvoir recevoir les donnes diffuses lintention des membres de ce groupe. Pour ce faire,
la machine hte doit-elle remplacer son adresse IP par ladresse de multidiffusion qui permet
de joindre lensemble des rcepteurs du groupe de multidiffusion ?
3.7. Comment se fait la remise dun paquet dont ladresse de destination est de classe D sachant
que la source et les rcepteurs du groupe de multidiffusion identifi par cette adresse
appartiennent au mme rseau Ethernet ? Est-il ncessaire que la source sache si tous les
rcepteurs appartiennent au mme rseau physique avant de procder la transmission
multidestinataire de ses paquets ?
1
Les adresses MAC (IEEE 802) dont le bit de poids le plus faible de leur premier octet est positionn 1 sont des adresses de
multidiffusion.
3.8. Identifiez les problmes traiter si prsent source et rcepteurs du groupe de multidiffusion
nappartiennent plus au mme rseau physique. Proposer une esquisse des mcanismes
mettre en uvre pour venir bout de ces problmes et rendre possible les transmissions
multidestinataires ? Ces mcanismes affectent-ils le comportement de la source tel que dcrit
dans la question prcdente ?
4.
IGMP (RFC 1112) est un protocole excut entre les ordinateurs htes dun mme rseau physique
et le (ou les) routeur(s) qui assure(nt) linterconnexion de ce rseau (au reste de lInternet). Les
mcanismes de ce protocole permettent un ordinateur hte dinformer le routeur local de son
rseau dappartenance quil dsire sabonner un groupe de multidiffusion donn. Pour ce faire,
lordinateur hte envoie au routeur un message appel Host Membership Report dans lequel il
spcifie ladresse de diffusion qui identifie le groupe auprs duquel il souhaite sabonner. Le
routeur lui fait ds lors parvenir les paquets IP dont le champ den-tte destination contient
ladresse de classe D identifiant ce groupe de multidiffusion. Les routeurs envoient galement des
messages appels Host Membership Query. Ces messages permettent aux routeurs dinterroger
intervalles rguliers les ordinateurs htes qui staient abonns un groupe de multidiffusion. Sur
rception dun message Host Membership Query, un ordinateur hte toujours abonn ce groupe
retourne un message appel Host Membership Report.
4.1. Pourquoi un routeur qui excute IGMP interroge-t-il intervalles rguliers les ordinateurs
htes abonns des rseaux physiques quil interconnecte ? Quand cesse-il de leur faire ?
4.2. Plusieurs routeurs peuvent assurer linterconnexion dun mme rseau physique. Est-il
concevable que tous soccupent denvoyer des Host Membership Queries ?
4.3.
Sur rception dun message Host Membership Query, un ordinateur hte toujours abonn au
moins un groupe retourne un message appel Host Membership Report dont il temporise
lenvoi. Pourquoi ? Quelle est la dure dun temporisateur qui prcde lenvoi des Host
Membership Reports ? Que fait un rcepteur lorsquil voit passer un Report pour un groupe de
diffusion auquel il est toujours abonn ? Les Reports sont-ils adresss en point--point au
routeur lorigine du Query ?
4.4. Pourquoi lorsquun ordinateur hte dcide de sabonner un groupe de diffusion en informet-il immdiatement son routeur et nattend-t-il pas de rpondre un Query ?
4.5.
Quels sont les tats quun routeur cre et maintient la rception dun Host Membership
Report ? Sagit-il de la liste dtaille de tous les ordinateurs htes abonns des groupes de
diffusion ? Maintient-il une telle liste par groupe de multidiffusion ? Quand dcide-t-il de
supprimer ces tats ?
4.6. Dans IGMP Version 2, deux nouveaux formats de messages ont t dfinis : les messages
Group-Specific Query et Leave Group. Les messages Leave Group permettent aux rcepteurs
de manifester explicitement leur volont de se dsabonner dun groupe de diffusion donn.
Quelles sont les raisons qui ont motiv lintroduction de ces nouveaux messages ?
4.7. Dans IGMP Version 3, les messages Host Membership Report ont t tendus pour contenir,
une adresse supplmentaire, celle dune des sources mettrices de la session multicast.
Expliquez pourquoi ?
5.
Lorsque la source et les membres dun groupe de multidiffusion nappartiennent pas au mme
rseau physique, les routeurs doivent excuter un protocole de gestion des groupes de
multidiffusion tel que IGMP. Un tel protocole permet dinformer les routeurs sil existe, sur les
rseaux physiques quils interconnectent, des ordinateurs htes abonns des groupes de
multidiffusion. Les routeurs doivent galement excuter un protocole de routage multidestinataire
qui construit un arbre de multidistribution (multicast tree). Cette structure regroupe lensemble des
routes qui permettent aux routeurs de joindre les membres des groupes de multidiffusion actifs un
instant donn. Les routeurs situs aux embranchements dun arbre de multidistribution ainsi
construit relayent les paquets IP (multi)diffuser en les dupliquant le long de cet arbre.
Les algorithmes potentiellement utilisables par les protocoles de routage multidestinataire sont les
suivants :
Flooding
Spanning Tree
Reverse Path Broadcasting (RPB)
Truncated Reverse Path Broadcasting (TRPB)
Reverse Path Multicasting (RPM)
Core-Based Trees
5.1. La figure reprsente un rseau contenant 8 noeuds, tiquets de A H. Construire et
reprsenter larbre recouvrant de cot minimal (minimal cost spanning tree) de racine A qui
permet de joindre les nuds C, D, E et G. Argumentez (de manire informelle) le fait que
larbre recouvrant construit est bien celui de cot minimal. Pour ce faire, vous pourrez
montrer quaucun des autres arbres ne permet A de joindre les nuds C, D, E et G avec un
cot infrieur celui que vous proposez.
H
2
14
4
G
6
B
1
3
1
F
1
9
A
1
C
3
5.1.5. Quels intrts prsente lutilisation de lalgorithme RPB ? Quel est son principal
inconvnient ?
F
E
O
L
5.4.3. Les messages prune sont-ils conus pour tre relays plus dun saut en amont du routeur
lorigine du message prune ?
5.4.4. Que se passe-t-il lorsquun ordinateur hte dcide de sabonner un groupe G alors que la
branche qui permettait la source S de le joindre avait t auparavant lague ? Sachant que
la topologie du rseau et la composition des groupes de multidiffusion changent au cours du
temps, comment RPM opre-t-il pour prendre en compte et rpercuter ces changements sur
larbre de diffusion quil maintient ?
5.4.5. Etant donn les mcanismes mis en uvre dans RPM et les proprits des arbres de
multidiffusion rsultants, lalgorithme RPM rsout-il les problmes lis au facteur dchelle ?
5.4.6. La figure suivante reprsente la topologie dun rseau o pour chacun des liens est donn le
cot. Les nuds griss indiquent des routeurs qui interconnectent des rseaux physiques o
sont hbergs des ordinateurs htes abonns au groupe de la session multidestinataire.
a. Supposons que le nud E soit choisi comme source mettrice de la session
multidestinataire. Construire larbre recouvrant de cot minimal correspondant cette
A
3
B
C
2
D
F
session.
b. Reconstruire larbre recouvrant de cot minimal si le cot du lien entre B et D passe de 1
10.
5.4.7. Cet exercice reprend la topologie tudie dans lexercice prcdent. La figure suivante
A
B
C
2
2
D
reprsente la topologie dun rseau o pour chacun des liens est donn le cot. Les nuds
griss indiquent des routeurs qui interconnectent des rseaux physiques o sont hbergs des
ordinateurs htes abonns des groupes de multidiffusion.
En utilisant les deux flches lgendes dans la figure, matrialisez larbre de diffusion qui
rsulte de lexcution de lalgorithme RPM (Reverse Path Multicasting) en prenant E comme
source mettrice : vous indiquerez les liens le long desquels les paquets sont relays ainsi que
ceux au-del desquels les paquets ne sont plus relays. Indication : vous pourrez vous inspirer
de la figure suivante qui matrialise larbre de diffusion que RPM construit quand le nud A
est la source mettrice de la session multidestinataire.
3
B
C
2
D
F
Lorsquune machine hte dsire sabonner un groupe de multidiffusion G, son routeur CBT local
fait correspondre ladresse de G avec celle dun des curs situs la racine de larbre CBT
maintenu pour le groupe G. Il envoie alors un message join directement adress ce cur. Le
message join est alors trait par chacun des routeurs qui spare le futur abonn du coeur. Chacun
deux marque linterface par laquelle le message join est reu et accuse positivement la rception du
join au routeur prcdemment visit. Une source qui dsire diffuser des donnes aux membres du
groupe G envoie ses paquets vers un des points de rendez-vous du cur. Si ces paquets sont
intercepts par un des routeurs de larbre que CBT maintient pour G, ils sont dupliqus sur
lensemble des interfaces du routeur, excepte celle par laquelle les paquets sont intercepts.
5.5.1. Quels avantages prsente lalgorithme CBT du point de vue du facteur dchelle ?
5.5.2. Comment fait un routeur de larbre CBT qui intercepte un paquet alors que ce dernier na
encore atteint le cur pour le dupliquer sur toutes ces interfaces, y compris son interface
montante (entrante) dans larbre CBT ?
5.5.3. Que peut-on prvoir concernant la charge supporte par le cur de larbre CBT ?
5.5.4. La figure suivante reprsente la topologie dun rseau o pour chacun des liens est donn le
cot. Les nuds griss indiquent des routeurs qui interconnectent des rseaux physiques o
sont hbergs des ordinateurs htes abonns des groupes de multidiffusion.
Le noeud C est choisi comme cur (ou core) par un algorithme de routage CBT (Core-Based
Trees). En supposant que les messages join empruntent les plus courts chemins sparant les
routeurs du cur, dessinez larbre de multidistribution rsultant de lexcution de algorithme
de routage CBT.
A
3
B
C
2
2
D
5.5.5. Cet exercice reprend la topologie tudie dans lexercice prcdent. Rappelons que les nuds
griss du rseau reprsentent les routeurs qui connectent des sous-rseaux sur lesquels se
retrouvent les machines htes abonnes la session multidestinataire en cours. Pour les
besoins du prsent exercice, nous supposons que les abonns cumulent les rles de rcepteur
et de source mettrice pour cette mme session. Il sagit en effet dune session multipoint
multipoint. Nous supposons galement que les routeurs qui connectent les abonns cette
session reoivent une unit de donnes par unit de temps. Cette unit de donnes doit alors
tre diffuse (achemine) jusquaux autres abonns que connectent les 3 autres routeurs
griss.
Le noeud C est choisi comme cur (ou core) par un algorithme de routage CBT (Core-Based
Trees). En supposant que les messages join empruntent les plus courts chemins sparant les
routeurs du cur, construisez larbre de multidistribution rsultant de lexcution de
algorithme de routage CBT. Calculez la quantit de trafic (montant et descendant) transitant
sur chacun des liens du rseau. Cette quantit sera exprime en units de donnes par unit de
temps.
Supposons prsent quon utilise lalgorithme RPM (Reverse Path Multicasting) pour
construire les arbres de routage ncessaires pour acheminer les donnes changes pendant la
dure de la session multidestinataire. Construisez les 4 arbres de diffusion qui rsultent de
lexcution de lalgorithme RPM en prenant A, B, E et F comme source mettrice. Calculez la
quantit de trafic que gnre dans ce cas la session muldestinataire. Dterminez lequel des
deux algorithmes RPM et CBT construit des arbres qui tendent concentrer le trafic ?
5.6. PIM-SM (Protocol Independent Multicast Sparse-Mode)
Les travaux sur les algorithmes de type CBT se sont poursuivis pour venir bout de leurs
limitations persistantes tout en gardant les bonnes proprits des arbres partags. Ces travaux ont
donn naissance PIM Sparse-Mode (RFC 2362). Dans PIM-SM, les phases de dcouverte des
sources et de construction de larbre partag sont rendues indpendantes. Cest en ce sens que PIMSIM est reconnu comme une amlioration de CBT.
Lquivalent du cur (core), le routeur autour duquel est construit un arbre CBT est appel un point
de rendez-vous (Rendezvous Point) ou RP dans PIM. Malgr une dnomination diffrente, le rle
dun RP est quasiment identique celui dun cur. Lorsquune source mettrice commence
diffuser des donnes, ses paquets ont pour destination ladresse dun groupe. Son routeur local fait
correspondre cette adresse avec celle du RP, racine de larbre de diffusion construit pour joindre le
groupe en question. Le routeur encapsule ds lors chaque paquet de donnes dans un autre paquet
IP directement adress au RP. Le RP d(sen)capsule alors les paquets avant de les diffuser le long
de larbre partag
Lorsquun rcepteur sabonne au groupe, son routeur local gnre un message join directement
adress au RP. Le message join est alors trait par chacun des routeurs qui spare le futur abonn du
coeur. Chacun deux instancie des informations dacheminement qui reviennent marquer
linterface par laquelle le message join est reu. Il sagit dinformations unidirectionnelles en ce
quelles ne peuvent servir qu diffuser les donnes en aval (depuis le RP jusquaux rcepteurs).
Les arbres partags unidirectionnels rsultant de lexcution de PIM-SM ne sont pas forcment les
plus efficaces. Ils constituent cependant le seul moyen dindiquer aux rcepteurs que des donnes
commencent arriver. Sur rception des premires donnes, le routeur local dun rcepteur peut
dcider de changer darbre en initiant la construction dun arbre des plus courts chemins (short path
tree ou SPT). Pour cela, le routeur envoie un message join directement adress la source. Ds que
les donnes commencent arriver sur larbre SPT nouvellement construit, un message prune peut
alors tre retourn au point de rendezvous pour viter de recevoir les donnes diffuses en double.
Contrairement aux autres protocoles qui construisent des arbres de cot minimal tels que DVMRP
et PIM-DM, les informations de routage cres par PIM-SM sont maintenues uniquement le long de
des arbres SPT. Dans DVMRP et PIM-DM, les informations dlagage sont maintenues le long des
chemins lextrmit desquels il ny a pas de rcepteur abonn la session en cours.
5.6.1. La localisation du point de rendezvous vous parat-elle tre aussi cruciale que celle du cur
dans CBT ?
5.6.2. Merge here
6.
32
64
informations de routage sont rgulirement changes entre routeurs DVMRP voisins. DVMRP
utilise IGMP pour vhiculer les informations de mise jour des tables de routage (RIP utilise UDP).
Ces informations sont indpendantes de celles que gnrent les protocoles de type IGP (Interior
Gateway Protocol) excuts en parallle dans le rseau. DVMRP repose sur lutilisation des mises
jour avec cot infini utilises pour traiter les horizons partags avec retour empoisonn (split
horizon with poisoned reverse). DVMRP emprunte cette mthode aux algorithmes vecteur de
distance pour permettre la dtection des feuilles (leaves). Les feuilles dsignent ici les interfaces de
routeur qui ne connectent des rseaux physiques sur lesquels aucun rcepteur nexiste. On distingue
deux types de rcepteurs : les ordinateurs htes abonns un groupe de diffusion et les routeurs
descendants2 de larbre de diffusion. Si une interface connecte un rseau physique sur lequel il
nexiste aucun routeur DVMRP qui considre cette interface comme tant situe sur le chemin le
plus court la source alors ce rseau physique est une feuille.
La technique de lhorizon partag simple interdit un routeur dannoncer les routes ceux de ses
voisins par lesquels il les a dcouvertes. Les mises jour retournes un routeur voisin ne
concernent pas les routes calcules laide des mises jours de ce dernier. La technique de
lhorizon partag avec empoisonnement inclut de telles routes mais en leur fixant un cot infini
(leur mtrique linfini).
DVMRP utilise la mthode de traitement des horizons partags par retour empoisonn en imposant
aux routeurs dannoncer sur leur interface entrante (i.e. linterface qui leur permet de joindre la
source selon le plus court chemin) un cot infini pour la route qui les spare de la source selon le
chemin le plus court. Si durant la dure dun temporisateur dit de retenue (hold down timer), un
routeur ne reoit pas de retour empoisonn pour une source S sur une de ses interfaces sortantes, le
routeur en dduit que le rseau physique auquel le connecte cette interface est un rseau feuille pour
la source S : ce rseau ne connecte aucun routeur descendant, i.e. un routeur pour lequel cette
interface est situe sur le chemin le plus court de S. Si en plus, DVRMP dtermine grce la
variante utilise de lalgorithme RPB quil nexiste aucun membre du groupe G sur le rseau feuille,
cette interface sortante est retire de sa liste des interfaces dacheminement de sa table de
transmission (forwarding table).
Un exemple de table de routage DVMRP est donn dans la figure 2. Contrairement aux tables de
routage unidestinataire telles que celles que construit RIP, chaque entre de la table de routage
maintenue par un routeur DVMRP concerne un couple (source,groupe). Lentre cre pour le
couple (S,G) dcrit la route qui spare selon le chemin le plus court le routeur de la source S dans
larbre que lalgorithme RPB construit pour (S,G). Comme lindique la figure 2, les tables de
routage DVMRP ne refltent pas les changements dans la composition des groupes de
multidiffusion. Elles contiennent le prfixe (ladresse du rseau) de la source S (Source Subnets) et
ladresse du routeur de saut prcdent sur la route qui spare selon le plus court chemin, le routeur
de la source S (From-Gateways).
Source Subnet
Subnet Mask
From Gateway
Metric
Status
TTL
InPort
OutPorts
128.1.0.0
255.255.0.0
128.7.5.2
Up
200
2,3
128.2.0.0
255.255.0.0
128.7.5.2
Up
150
128.3.0.0
255.255.0.0
128.6.3.1
Up
150
1,3
128.4.0.0
255.255.0.0
128.6.3.1
Up
200
Multicast Group
TTL
InPort
OutPorts
128.1.0.0
224.1.1.1
200
1 Pr
2p 3p
224.2.2.2
100
2p 3
224.3.3.3
250
224.1.1.1
150
2p 3
128.2.0.0
La colonne OutPorts contient les ports sortants (child ports) sur lesquels les paquets du
couple (source, groupe) sont relays. Un p minuscule indique que le routeur a reu un
message prune sur le port concern.
6.5.1. Construire la portion de larbre RPB avant et aprs lagage dcrite par la table de transmission
reprsente dans le tableau 3.
7.
1.
DEFINITION ET OBJECTIFS
1.1. Gnralits
1.1.1. Quest-ce que la QoS et avec quels paramtres peut-on la mesurer ?
1.1.2. Comment la qualit de service se traduit-elle pour lutilisateur ?
1.1.3. Quelles applications ncessitent de la QoS ?
1.1.4. Comment la QoS est-elle implmente actuellement dans les rseaux IP ?
1.1.5. Quels sont les problmes lis la mise en uvre de la QoS ?
2.
2.1.2. Quelles sont les difficults associes au modle Intserv et la rservation de ressources par
flot ?
2.1.3. Les flots doivent-ils tre dfinis comme le trafic entre deux htes ou bien comme le trafic
entre deux processus ? Discutez des consquences de chaque approche pour les programmes
applicatifs. Comment ces mcanismes pourraient-ils tre implments dans les routeurs ?
2.2. DiffServ
2.2.1. Rappelez le principe de fonctionnement de larchitecture DiffServ.
2.2.2. Lutilisateur A demande une connexion garantissant de la QoS pour une vidoconfrence.
Une connexion vido de bonne qualit demande une bande passante comprise entre 2 et 8 Mbps.
Quels sont les facteurs qui ont un impact sur le succs de la connexion dans le rseau, lorsque la
QoS est implmente avec DiffServ ?
2
Laquelle de ces solutions vous semble la plus probable dans les rseaux IP ? Pourquoi ?
3.
CONDITIONNEMENT DE TRAFIC
Observez les quatre comportements de flots suivants. Quels sont ceux qui auraient pu tre gnrs
par le tandem des leaky bucket policers ?
4.
4.1. Principe
4.1.1. Expliquez comment le partage max-min (max-min share) est calcul.
4.1.2. Considrons 10 flots avec des dbits darrive de 1, 2, , 10 Mbps, qui traversent un lien
45 Mbps. Calculer le fair share sur ce lien. Quel est le fair share si la capacit du lien est 60 Mbps ?
4.2. Max-Min Share pondrCalculez lallocation max-min fair pour les flots A, B, C, D et E, quand
leurs demandes sont 2, 3, 4, 4, 5, leurs poids sont 2.5, 1, 0.5, 1, 2 et la taille des ressources est 15.
5.
DISCIPLINES DORDONNANCEMENT
Supposons quun routeur ait trois flots en entre et un en sortie. Il reoit les paquets lists dans le
tableau ci-dessous peu prs tous au mme instant, dans lordre indiqu, pendant une priode o le
port de sortie est occup mais toutes les files sont autrement vides.
Donnez lordre dans lequel les paquets sont transmis, en supposant que lon utilise :
5.3.1. le fair queueing
5.3.2 le weighted fair queueing, avec le flot 2 ayant un poids de 2 et les deux autres avec un
poids de 1.
5.4. Fair Queueing, Weighted Fair Queueing
Considrons un routeur qui gre 3 flots, sur lequel les paquets arrivent aux instants suivants :
5.4.1. Supposons que le routeur implmente le fair queueing. Indiquez la squence des paquets en
sortie du routeur en fonction du temps. On suppose que le routeur dispose dun buffer infini.
5.4.2. Supposons que le routeur implmente le weighted fair queueing, o lon donne aux flots A et
B une part gale de la capacit, et o lon donne au flot C deux fois la capacit de A. Indiquez la
squence des paquets en sortie du routeur en fonction du temps. On suppose que le routeur dispose
dun buffer infini.
5.5. Supposons que la politique dordonnancement WFQ est applique un buffer qui supporte 3
classes ; supposons que les poids sont respectivement 0.5, 0.25 et 0.25 pour les trois classes.
5.5.1. Supposons que chaque classe a un grand nombre de paquets dans le buffer. Dans quel ordre
les 3 classes pourraient-elles tre servies pour avoir les poids WFQ ? (Pour lordonnancement
Round-robin, un ordre naturel est 123123123).
5.5.2. Supposons que les clases 1 et 3 ont un grand nombre de paquets dans le buffer, et quil ny a
pas de paquets de classe 2 dans le buffer. Dans quel ordre les 3 classes pourraient-elles tre servies
pour avoir les poids WFQ ?
5.6. Un paquet de longueur 100 et 200 bits des flots A et B respectivement arrivent l'instant t=0
un ordonnanceur Fair Queuing vide. La bande passante du lien est de 100 bits/s.
5.6.1. A quel instant (rel) se termine la transmission de chaque paquet ?
5.6.2. Quel est le nombre de cycles R(t) quand le paquet de A termine sa transmission ?
5.6.3. Si maintenant, un paquet du flot A avec une longueur de 10 bits arrive t=1,5. Quelle
sera son estampille (ou nombre de fin) note F(A,1)? Quand le flot A devient inactif selon
FQ ?
5.6.4.Reprsenter en fonction du temps et sur un mme graphe, les estampilles F(i,k) (k ime
paquet du ime flot) des 3 paquets reus, l'volution de R(t) et la transmission des
paquets.
6.
6.1. Gnralits
6.1.1. Quest-ce quune file dattente premptive / non-premptive ? Les files dattente premptives
ont-elles un sens pour les rseaux informatiques ?
6.1.2. Rseaux de files dattente
a) Soit rij la probabilit quun paquet quittant le noeud i soit destin au noeud j. Calculez 1,
2, 3, 4, 5 en Kpkts/sec. Calculez galement le taux darrive moyen i pour chaque noeud i.
b) Calculez T = dlai moyen de bout en bout.
6.2.2. Dans lalgorithme RED, un certain nombre de paramtres doit tre fix.
a) Quelle est la relation entre les valeurs choisies pour THmin et le degr de sporadicit du trafic
?
b) Quelle est la relation entre la valeur (THmax THmin) et le RTT typique vu par TCP ?
6.2.3. Lobjectif de cette question est de dcrire comment vous configureriez RED pour chacun des
scnarios ci-dessous. Pour chaque scnario, vous pouvez changer seulement lUN des paramtres de
RED (min th, max th, ou le gain du filtre). Vous ne pouvez pas modifier lalgorithme RED luimme. Expliquez bien, dans chaque cas, en quoi ce changement amliore les performances.
a. Comment configureriez-vous RED pour avoir une meilleure utilisation du lien ?
b. Comment configureriez-vous RED pour le rendre plus ractif des rafales de courte dure
?
c. Comment feriez-vous pour que RED se comporte autant que possible comme le Drop-Tail
queueing ?
6.2.4. Lesquelles de ces propositions sont justes ?
a) RED rduit les risques de pertes successives dune connexion.
b) RED modifie le mcanisme de retransmission de TCP.
c) RED modifie lalgorithme dajustement de fentre de TCP.
d) RED rduit le biais de TCP en faveur des connexions avec un petit round-trip time.
Si le trafic est constitu seulement de sources UDP, est-il probable que lutilisation de
RED rsulte en une allocation de bande passante quitable (fair) entre les flots ?
b.
Est-ce que RED vite les rafales de pertes ? Pourquoi ?
6.3.
6.4.
Extensions de RED
b.
Dcrivez comment le mcanisme de gestion des buffers RIO (Red with In and Out)
fonctionne, et comment il peut tre utilis pour implmenter le modle de service assur.
10
1.
2.
INTRODUCTION A BGP
Rappels
Le routage Border Gateway Protocol (BGP) est utilis pour dterminer le meilleur chemin entre
une source et une destination qui ne sont pas dans le mme systme autonome (autonomous system,
AS), cest--dire pas dans le mme domaine administratif. Etant donn que les chemins traversent
souvent des rseaux grs par des entreprises diffrentes, le choix des routes est souvent dtermin
par une combinaison de facteurs, incluant ventuellement des prfrences locales spcifiques au
niveau de chaque routeur, des relations commerciales avec les voisins, et la longueur du chemin.
BGP combine ces politiques de routage complexes qui ne sont pas uniformes travers lInternet.
Comme BGP effectue du routage inter-domaine (i.e., entre diffrents domaines), il cherche avant
tout atteindre un AS contenant la destination, et non atteindre lhte lui-mme. Une fois que les
paquets sont routs vers lAS contenant la destination, leur remise lhte spcifique est laisse au
routage intra-domaine (i.e., lintrieur dun domaine). Par exemple, pour atteindre lhte
192.1.12.14 depuis un AS distant, il suffit de savoir que
1) cet hte est contenu dans un AS, par exemple n1702
2) lAS distant connat la route vers AS1702.
Les routeurs lintrieur de lAS1702 peuvent alors router le paquet vers lhte 192.1.12.14.
Pour comprendre le routage inter-domaine, pensez un AS comme un nud dans un rseau. Les
nuds qui lui sont connects sont ses voisins. Les routeurs des ASs voisins sont connects physiquement, ainsi les paquets peuvent passer de lun lautre.
Voici comment les informations concernant les htes est transmise travers le rseau :
1. Un AS annonce ses voisins les htes quil contient.
2. Quand un AS reoit de ses voisins des informations propos dune destination, il regarde le
meilleur chemin vers cette destination. Sil ny a pas de chemin vers cette destination ou si le
nouveau chemin est meilleur, il enregistre ce nouveau chemin comme meilleur chemin.
3. Dcider du meilleur chemin implique de prendre en compte de nombreux facteurs. Cette dcision est prise diffremment par chaque AS.
4. A chaque fois que le meilleur chemin dun AS change cause dune mise jour, il signale ce
changement ses voisins si ses politiques de routage le permettent.
Considrons lexemple suivant :
3.
3.1. Considrons prsent le graphe dASs suivant, et considrons les routes vers une destination
dans AS1. Voici les politiques de routage pour chaque AS (notez que le plus court chemin reprsente ici le chemin via le plus petit nombre possible dASs) :
1. LAS2 nutilisera pas le lien direct vers lAS1 moins que cela soit absolument ncessaire. Il
prfre les chemins de lAS4, puis ceux de lAS3, puis ceux de lAS5.
2. LAS3 nutilisera pas le lien direct vers lAS1 moins que cela soit absolument ncessaire. Il
rejette tous les chemins via lAS4.
3. LAS4 choisit toujours le plus court chemin disponible.
4. LAS5 prfre toujours les chemins par lAS6 et sinon choisit le plus court chemin disponible.
5. LAS6 choisit toujours le plus court chemin disponible.
Supposons que le processus commence avec lAS1 annonant ses destinations. A un certain point,
les ASs auront des chemins vers lAS1 qui ne changeront plus (i.e., le graphe ci-dessus doit converger vers une solution). Trouvez ces meilleurs chemins vers lAS1 pour chaque AS du rseau.
On suppose dans ce cas que les AS transmettent les informations quils possdent tous leurs voisins (pas de filtrage en sortie).
3.2. On considre la topologie dAS ci-dessous et on sintresse la slection des routes BGP pour
aller de lAS 1 lAS 4.
Route 1 : ASPATH (3,4) : MED 100, IGP metrics to next hop 10, LOCAL PREF 200
Route 2 : ASPATH (2,4) : MED 150, IGP metrics to next hop 5, LOCAL PREF 300
4.
Rappels
Les relations commerciales dterminent souvent les politiques de routage. On peut modliser
lInternet en utilisant 2 sortes de relations : les relations client-fournisseur et les relations pair-pair.
Dans une relation client-fournisseur, un AS, le client achte un service auprs dun autre AS, le
provider. Le client paye gnralement le fournisseur pour transporter du trafic et fournir laccs vers
les autres rseaux, tandis que le fournisseur annonce sa capacit atteindre le client, de telle sorte
que ce client soit accessible par le rseau.
Dans une relation pair--pair, deux ASs tablissent un accord mutuel pour transporter le trafic de
lautre et partager les routes, fournissant souvent des raccourcis des routes plus longues devant
passer par un seul fournisseur.
Ces relations affectent les politiques de routage de la manire suivante : les ASs annonceront leurs
voisins toutes les routes vers leurs clients (cest en partie ce pour quoi les clients payent). Dun
autre ct, les ASs nannonceront aucun voisin autre quun client les routes via un pair ou un
fournisseur. De plus, les routes via un client sont prfres, puis les routes via les pairs et finalement les routes via les fournisseurs.
4.1. Dans le graphe ci-dessous, supposons que lAS11 et lAS12 sont pairs, que lAS13 est client
de lAS11 et que lAS14 est client de lAS12. Supposons que lAS destination soit AS14.
4.1.1. Supposons que le lien entre lAS13 et lAS14 ne soit pas prsent et que lAS14 sannonce
auprs de ses voisins, et ainsi de suite. Quels sont les chemins de niveau AS de chaque AS vers
lAS 14 ?
Supposons maintenant que lAS14 nest pas sr de son lien vers lAS12 et dcide dacheter un lien
auprs de lAS13, i.e., il devient client de lAS13. Cependant, il dit lAS13 (par un accord spcial)
que ce lien est un lien de backup et quil doit avoir une prfrence infrieure tout autre chemin
que lAS13 pourrait avoir vers lAS14. Ainsi il ny a pas de changement aux chemins dAS de la
question B, parce que cela est pris en compte quand lAS13 annonce une meilleure route vers
lAS14.
4.1.2. Quand un lien est dfaillant, la route correspondante est enleve et doit tre remplace par
une autre. Supposons que le lien entre lAS12 et lAS14 soit indisponible ; lAS12 retire sa route
vers lAS14. LAS13 a un lien de backup quil annoncera tant quil ny aura pas dautre route vers
lAS14. Etant donn ce changement, quels sont les nouveaux chemins de niveau AS de chaque AS
vers lAS14, une fois que les routes se sont stabilises ?
4.1.3. Supposons que le lien entre lAS12 et lAS14 est restaur. En gardant en tte les rgles de
prfrence pour les relations commerciales, quels sont prsent les chemins dAS de chaque AS
vers lAS14 ?
4.1.4. LAS14 se plaint que lAS13 reoit encore du trafic par le lien de backup qui nest plus cens
tre utilis puisque dautres routes sont disponibles. AS13 reboote ses routeurs, ce qui dsactive
temporairement le lien de lAS13 vers lAS14. Que sont les chemins AS aprs que lAS13 redevient online ? Notez que lAS13 devient reconnect au rseau aprs que le chemin AS13AS14 a
t retir.
4.2. La figure ci-dessous donne un exemple de la manire dont les routes vers un AS particulier
peuvent tre exportes. Les nuds du graphe reprsentent les diffrents ASs et lannotation sur larc
orient P,{i, j} montre lannonce que lAS i envoie lAS j concernant ses informations
datteignabilit vers P (BGP est un protocole de vecteurs de chemins dAS et chaque annonce doit
contenir le chemin de niveau AS et le prfixe, dans notre exemple, lAS P). BGP est un protocole
reposant sur les politiques et un AS exporte une route vers un voisin seulement sil le veut bien, et
envoie le trafic pour ce prfixe depuis ce voisin.
Un tel graphe nous donne une ide sur les relations entre les ASs. A partir de ce graphe,
4.2.1. Que pouvez-vous dduire des relations entre les AS si lon suppose que lAS200 et lAS
100 sont pairs ?
4.2.2. Que pouvez-vous dduire des relations entre les AS si lon suppose que lAS200 est
fournisseur de lAS 100 ?
4.2.3. Que pouvez-vous dduire des relations entre les AS si lon suppose que lAS200 est
client de lAS 100 ?
4.3. Considrons un chemin P de niveau AS entre deux htes terminaux dans lInternet (un chemin
de niveau AS est une liste dASs sur le chemin entre les deux terminaux). Imaginons un lien entre
deux ASs conscutifs sur le chemin. Un tel lien (A1 ;A2) est appel
4.4.1. Est-ce que lAS1 exporte vers lAS3 les routes obtenues de lAS2 (i.e. les routes quil a
choisies pour aller lui-mme vers lAS2) ?
4.4.2 Est-ce que lAS2 exporte vers lAS1 les routes obtenues de lAS5?
4.4.3. Est-ce que lAS2 exporte vers lAS4 les routes obtenues de lAS5?
4.4.4. Est-ce que lAS2 exporte vers lAS1 les routes obtenues de lAS6 ?
4.4.5 Est-ce que lAS2 exporte vers lAS4 les routes obtenues de lAS1 ?
5.
MULTI-HOMING
5.1. On parle de Multi-homing lorsquun systme autonome (AS) client a plusieurs liens BGP connects lextrieur, comme le montre lexemple suivant :
6.
REFLECTEURS DE ROUTES
I-BGP est utilis pour changer des informations datteignabilit externe avec un seul AS. Mais,
linverse des sessions E-BGP qui partagent un lien physique, les messages I-BGP circulent sur un
lien logique. Par essence, les paquets I-BGP sont routs sur IGP ! Supposons que chaque routeur
dans lAS ait besoin dune table de routage sans dfaut. Alors, chaque routeur de lAS doit participer aux sessions I-BGP. Une manire de faire cela qui passe lchelle est davoir une hirarchie.
Lensemble des routeurs est partitionn en des ensembles disjoints et il y a un Rflecteurs de Routes
pour chaque ensemble (on suppose quil sagit de lun des routeurs de lensemble). Le maintien de
la cohrence ( propos des informations datteignabilit) entre tous les routeurs peut alors tre dcompos en deux problmes :
1) Les Rflecteurs de Routes ont besoin de maintenir la cohrence entre eux, ce quils font typiquement en tablissant des sessions I-BGP avec les autres Rflecteurs de Routes.
2) Chaque ensemble de routeurs doit assurer la cohrence entre ses routeurs membres. Ceci est
typiquement ralis par chaque routeur qui maintient une session I-BGP avec le Rflecteurs
de Routes de son ensemble.
Les Rflecteurs de Routes suppriment galement les informations datteignabilit quils jugent redondantes. Par exemple, sils apprennent quil y a deux liens vers un prfixe, lun avec un cot de 5
et lautre avec un cot de 10, ils filtrent le chemin de cot 10.
La figure montre un AS X qui a 4 routeurs R1, R2, C1 et C2. R1 et R2 sont des routeurs de bordure
et galement des Rflecteurs de Routes. Imaginez quil y a un autre AS Y, adjacent lAS X, ayant
deux routeurs de bordure R3 et R4. R1 maintient une session E-BGP avec R3 et R2 maintient une
session E-BGP avec R4. Par son interaction avec R3, R1 connat P1 et un AS-path en un saut vers
lAS Y. De la mme faon, R2 connat P2 et un autre chemin dAS en un saut vers lAS Y. Chaque
cercle reprsente un ensemble (R1 maintient 2 sessions I-BGP, lune avec C1, lautre avec R2. Idem
pour R2). Les arcs du graphe montrent les liens rels entre les routeurs, et ltiquette dun arc reprsente le cot IGP du lien. Notez que le graphe a un axe de symtrie, par consquent le raisonnement
sur R1, P1 et C1 sapplique aussi R2, P2 et C2.
10
7. DIVERS
7.2.
Scurit
Considrez le rseau ci-dessous. Supposons que les routeurs utilisent le routage par tat des liens
plus court chemin et que les tables de routage sont stabilises. Le mchant Fred dcide
dusurper Bob et envoie Alice des paquets IP avec ladresse de Bob comme adresse source.
7.2.1. Comment le routeur dAlice (routeur 1) peut-il dtecter cela ?
7.2.2. La rponse la question prcdente est-elle encore vraie dans le cas dun protocole vecteurs
de distance ?
7.2.3. Si Alice se trouve maintenant sur un autre rseau et que R1 est son routeur de bordure, peuton utiliser une solution similaire ?
11
Annexes ING
La trame Ethernet
Signification:
- prambule indique le dbut de la trame. Sert la synchronisation trame.
- type dfinit le type de donnes encapsules par la trame.
type (hxa)
0200
0201
0600
0800
0801
0802
0803
0804
0805
0806
0807
6001 6006
8035
8098
86DD
utilisation
XEROX PUP
PUP Address Trans.
XEROX NS IDP
DoD Internet
X.75 Internet
NBS Internet
ECMA Internet
ChaosNet
X.25 niveau 3
ARP
XNS
DEC
RARP
Appletalk
IPv6
TPA
Le datagramme IP
1
2
3
3
4
0
7
5
3
1
9
7
+---------------+---------------+----------------+
|
HRD
|
PRO
| HLN |
PLN |
+---------------+---------------+----------------+
|
OP
|
SHA ...
+------------------------------------------------+
|
SPA ...
+------------------------------------------------+
|
THA ...
+------------------------------------------------+
|
TPA ...
+------------------------------------------------+
|
SHA ...
Signification:
- IHL (Internet Header Length). longueur de l'en-tte exprim en mots de 32 bits.
- identification donne par la source. Sert au destinataire en cas de fragmentation.
- TTL. Dure de vie du datagramme. Dcrmente chaque saut et la destination
chaque seconde en cas de fragmentation.
Abrviation
Nom du protocole
Reference
Reserved
ICMP
Internet Control Message
[RFC792]
IGMP
Internet Group Management
[RFC1112]
GGP
Gateway-to-Gateway
[RFC823]
IP
IP in IP (encapsulation)
ST
Stream
[RFC1190]
TCP
Transmission Control
[RFC793]
UCL
UCL
EGP
Exterior Gateway Protocol
[RFC888]
IGP
any private interior gateway
BBN-RCC-MON BBN RCC Monitoring
NVP-II
Network Voice Protocol
[RFC741]
PUP
PUP
ARGUS
ARGUS
EMCON
EMCON
XNET
Cross Net Debugger
CHAOS
Chaos
UDP
User Datagram
[RFC768]
...
XTP
XTP
DDP
Datagram Delivery Protocol
...
IDRP
Inter-Domain Routing Protocol
RSVP
Reservation Protocol
GRE
General Routing Encapsulation
MHRP
Mobile Host Routing Protocol
...
NHRP
NBMA Next Hop Resolution Protocol
Unassigned
...
Unassigned
Reserved
Class
0
Number
7
Le message ICMP
type (dc)
8
0
11
12
3
5
4
13
14
15
- options. champ de taille variable. Les options sont codes sur le principe TLV (type,
longueur, valeur). La longueur indique la taille complte de l'option en octet.
16
17
Nom
End of Options List
No Operation
Security
Loose Source Route
Time Stamp
Extended Security
Record Route
Stream ID
Strict Source Route
routeur address
padding. octets de bourrage afin d'aligner l'en-tte sur un nombre entier de mots de
32 bits.
Type (dc)
0 EOOL
1 NOP
130 SEC
131 LSR
68 TS
133 E-SEC
7 RR
136 SID
137 SSR
Length
var.
Reference
[RFC791]
[RFC791]
[RFC1108]
[RFC791]
[RFC791]
[RFC1108]
[RFC791]
[RFC791]
[RFC791]
18
signification du message
Echo Request
demande d'cho
Echo Reply
rponse en cho
Time Exceeded for a Datagram
temps de vie d'un datagramme dpass
Parameter Problem on a Datagram
datagramme mal form
Destination Unreachable
destination inaccessible
Redirect
redirection, changement de route
Source Quench
interruption de la source
Timestamp Request
demande de date d'estampillage
Timestamp Reply
rponse une demande d'estampillage
Information Request
demande d'information
Information Reply
rponse une demande d'information
Address Mask Request
demande de masque d'adresse
Address Mask Reply
rponse une demande de masque d'adresse
Messages ICMP
ICMP type
0
ICMPv6
code
description
echo request
router advertisement
10
router discovery
11
TTL expired
12
IP header bad
Type
128
129
133
134
135
136
137
Extension
Extension
Extension
Extension
TCP
UDP
IPv6
ICMPv6
Nature
Demande d'cho
Rponse d'cho
Sollicitation du routeur
Annonce du routeur
Sollicitation d'un voisin
Annonce d'un voisin
Redirection
hop by hop
Routage
Fragmentation
Destination
Flag:
Format d'option
0
1
2
3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
Type
|
Length
|
Link-Layer Address ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Le champ length inclus lui-mme et le champ type. Il s'exprime en unit de 8 octets. Par
exemple, la longueur d'une adresse IEEE 802 vaut 1.
Option Name
Source Link-Layer Address
Target Link-Layer Address
Prefix Information
Redirected Header
MTU
Type
1
2
3
4
5
Le datagramme UDP
Le segment TCP
Port Assignments:
Keyword
Decimal
References
------------0/tcp
0/udp
[...]
daytime
13/tcp
daytime
13/udp
[...]
ftp-data
20/tcp
ftp-data
20/udp
ftp
21/tcp
ftp
21/udp
#
22/tcp
#
22/udp
telnet
23/tcp
telnet
23/udp
[...]
smtp
25/tcp
smtp
25/udp
[...]
nameserver
42/tcp
nameserver
42/udp
nicname
43/tcp
nicname
43/udp
[...]
domain
53/tcp
domain
53/udp
[...]
tftp
69/tcp
tftp
69/udp
#
gopher
70/tcp
gopher
70/udp
[...]
www-http
80/tcp
www-http
80/udp
[...]
nntp
119/tcp
nntp
119/udp
[...]
ntp
123/tcp
ntp
123/udp
[...]
snmp
161/tcp
snmp
161/udp
snmptrap
162/tcp
snmptrap
162/udp
Description
-----------
---------
Reserved
Reserved
Daytime
Daytime
File Transfer
File Transfer
File Transfer
File Transfer
Unassigned
Unassigned
Telnet
Telnet
[Default Data]
[Default Data]
[Control]
[Control]