Cahier Exercices
Cahier Exercices
Cahier Exercices
Rseaux et protocoles
2005-2006
Ce polycopi a t labor par les enseignants de l'quipe "Rseaux et protocoles" partir d'exercices rdigs par MM. Berthelin, Cubaud, Farinone, Florin, Gressier-Soudan et Natkin.
Dans le contexte du modle OSI, quest quune PDU ? Quel est le nom donn aux units de transfert pour les diffrentes couches ? Quest quune primitive de service ? Quest quune machine protocolaire ? Donnez quelques exemples de piles protocolaires.
Quel type de cblage prconiseriez vous ? Calculez le nombre de segments de cables ncessaires.
Quelle est la longueur d'une trame minimum ? Quelle est la longueur minimum de donnes transportables? Pourquoi la couche physique ajoute un prambule ?
Voici la trace hexadcimale dune communication point point prleve par un espion de ligne (SNOOP):
00: 16: 32: 48: 0800 0028 80d4 7d78 2018 e903 0558 1972 ba40 4000 0017 0000 aa00 3f06 088d 0000 0400 6a5c dee0 0000 1fc8 a3ad ba77 0000 0800 2041 8925 0000 4500 a3ad 5010 0000 .. ..@........E. .(..@.?.j\.. A.. ...X.......w.%P. }x.r............
Retrouver les champs de la trame Ethernet dans la trace hexadcimale prcdente. Question 2. Adressage (adresse MAC)
Voici un exemple dadresse Ethernet (6 octets) : 08:0:20:18:ba:40
Quel champ, par sa valeur permet de diffrencier les deux types de traces pour les communications un seul destinataire ou plusieurs destinataires? Comment un seul message peut-il parvenir plusieurs destinataires simultanment ?
Sur linternet, deux machines deux endroits diffrents peuvent elles possder la mme adresse IPv4 ?, si oui, quelle condition ? Dans le mme rseau IPv4, deux machines diffrentes peuvent elles possder la mme adresse IPv4 deux moments diffrents ? Chercher un contexte dutilisation.
Voici laffichage de la commande UNIX ifconfig sur une machine :
le0: flags=863<UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST> mtu 1500 inet 192.33.159.212 netmask ffffff00 broadcast 192.33.159.255 ether 8:0:20:18:ba:40
16
19
24
31
identifiant metteur
identifiant rcepteur
no de squence du premier octet mis contenu dans ce segment no d'acquittement : no de squence du prochain octet recevoir par celui qui envoie ce segment
20
taille de la fentre fin des donnes urgentes places en dbut des donnes utilisateur dans le segment
Adresse Emetteur IP Adresse de Destination IP Padding: Octets 0 pour que l'entte *32 bits
options s'il y en a
DONNEES
donnes s'il y en a
A votre avis, quoi correspondent les tiquettes TCP et TELNET ? Combien y a-t-il dencapsulations successives ?
Trace hexadcimale dune communication point point :
3 00: 16: 32: 48: 0.00000 0800 2018 0028 a3fc 80d4 0558 7d78 3c30 papillon.cnam.fr -> ba40 aa00 0400 1fc8 4000 3f06 af63 a3ad 0017 088d de7e ba77 0000 0000 0000 0000 jordan 0800 4500 2041 a3ad 66c9 5010 0000 0000 TELNET C port=1368 .. ..@........E. .(.@.?..c.. A.. ...X.....~.wf.P. }x<0............
Dterminer le dbut du paquet IPv4. Dterminer la fin de lentte du paquet IPv4. Dterminer la fin de l'entte TCP.
2 Couche Physique
Exercice 1 : Shanon et Nyquist
Un support physique de communication a une bande passante de 1 MHz.
Question 1 Quel est le dbit maximum thorique d'information pouvant circuler sur ce support lorsquon utilise une modulation de valence 2 (bivalente) ? Question 2
Le signal gnr dans cette voie est tel que le rapport signal bruit obtenu est de 20 dB.
Quel est le dbit maximum thorique dinformations pouvant tre achemines par cette voie ? Quelle valence faudrait-il pour approcher ce dbit maximum thorique ?
Exercice 2 : Modulation
On rappelle que le modem V29 fonctionne 9600 bit/s sur liaison 4 fils en full duplex. Le procd de modulation est une modulation combine de phase octovalente et de modulation d'amplitude bivalente (pour chaque phase utilise on code en amplitude deux niveaux). On suppose que l'on utilise une voie physique de largeur de bande 3200 Hz.
Question 1 Quelle est la valence du signal modul ? Quelle est sa rapidit de modulation ? Question 2 Quel est le rapport signal bruit minimum permettant la transmission, si l'on suppose que la voie est soumise un bruit blanc gaussien (formule de Shanon) ? Si le rapport signal bruit est de 10 dB, la transmission est-elle possible ?
Calculer en fonction de p la probabilit qu'un message soit mal reu. On suppose que les altrations des bits sont indpendantes.
On suppose que l'metteur sait quand un message est mal reu et qu'il le retransmet.
Calculer en fonction de p le nombre moyen de transmissions. Est-il possible de respecter (en ngligeant le temps coul entre 2 retransmissions) la frquence d'mission de 12 messages/seconde ?
Rappeler le principe des codes polynmiaux. Quel est le nombre de bits de redondance qui seront ajouts par G ? Quelle est la taille des mots initiaux ? Ce code permet de dtecter quels types d'erreurs ?
On veut calculer les bits de redondance du mot M=1101011011
Donner D(x), le polynme correspondant M. Calculer R(x), le reste de la division euclidienne de D(x).x4 par G(x). En dduire la valeur des bits de redondance.
Les bits de redondances sont en gnral fabriqus par un dispositif matriel assez simple, utilisant des portes logiques et des registres dcalage. Pour cet exemple, le circuit a le schma suivant :
R3 SORTIE
R2
R1
ou-ex
R0
ou-ex ENTREE
horloge
Le circuit recoit en entre les bits du mot M (le bit de poid fort d'abord). Les registres R0 R3 sont initialiss zro. Au 4me coup d'horloge, ils ont tous reu une valeur. Au 10me coup, tous les bits de M ont t chargs. C'est pendant les 4 coups suivants que se fabriquent les bits de redondance.
Message transmettre 000 100 010 110 001 101 011 111
Message transmis 000000 100110 010011 110101 001101 101011 011110 111000
1) Un destinataire reoit le message 101111. Est ce un message correct ? 2) Un destinataire reoit le message 101111. En utilisant ce code comme un code correcteur derreurs, par quel message doit il tre corrig (quel est le message transmis) ? 3) Dans un code quappelle ton la distance du code ? 4) Le code tudi dans ce problme est un code linaire. Dans un code linaire la distance du code est gale au plus faible poids dun message correct (ou encore la distance qui spare le message 0000.000 du message le plus proche). Quelle est la distance du code dfini dans ce texte? 5) De combien derreurs un code de distance D est-il dtecteur ? De combien derreurs ce code est-il correcteur ? 6) A partir des mots du code comment peut-on construire la matrice G (la matrice gnratrice du code) ? Montrez que la matrice gnratrice de ce code linaire est la matrice G suivante ?
G = 100110 010011 001101
7) Quelle est la matrice de contrle de ce code linaire ? Montrez au moyen de la matrice de contrle que le message 100110 est correct et que le message 101111 est incorrect.
10
Question 1 A quelles conditions d'erreurs sur la liaison de donnes les spcifications prcdentes correspondent-elles ? Question 2 Montrer plusieurs situations d'utilisation de l'acquittement dans un change d'information bidirectionnel. Rappeler le principe du piggybacking. Question 3 A quoi sert le mcanisme de temporisation ? Question 4
11
Rappeler le principe du contrle de flux dans la liaison de donnes. A quoi sertil? Question 5 Rappeler brivement pour les protocoles de liaison le principe de la gestion des fentres en mission
On suppose que chaque metteur peut utiliser au maximum Maxseq+1 numros de squence diffrents numrots de 0 Maxseq (numrotation en modulo Maxseq+1).
Expliquer pourquoi la taille de la fentre en mission doit rester infrieure Max seq quand la taille de la fentre en rception vaut 1. Mettre en vidence un cas d'ambigut. Question 6 Quelle est la taille de la fentre en rception pour le protocole tudi ?
Question 1 Rappeler brivement pour les protocoles de liaison le principe de la gestion des fentres en rception Question 2
On suppose toujours que chaque metteur peut utiliser au maximum Maxseq+1 numros de squence diffrents numrots de 0 Maxseq (numrotation en modulo Maxseq+1).
Expliquer pourquoi la taille maximum de la fentre en rception doit rester infrieure (Maxseq+1 )/ 2. Mettre en vidence un cas d'ambigut. Indiquer pourquoi la taille de la fentre en rception ne peut tre suprieure la taille de la fentre en mission.
12
SNRM silence
SNRM-P
I-2-3-P
13
Suite de l'change :
RR-5-F SNRM CMDR-F RR-3-P I-?-? I-?-? I-?-? I-?-? REJ-4 I-?-? I-?-? I-?-? I-?-?-F RR-?-P
14
(I) ? (N(S)=V(R))? (RR) ! 1 (I)? (N(S)V(R)? (REJ) ! 2 1 3 (I)? (N(S)=V(R))? (RR) ! (RR) ! 7 (REJ) ! (RNR) ! 8 4 (I) ? (N(S)V(R)? (REJ) ! 5 3 6 (RNR) !
Question 1 Que signifient les tats 1, 2, 3 (symboliss par des cercles) ? Question 2 Que signifient les transitions 1, 2, 8 (symbolises par des rectangles) ? Question 3 Le protocole ne se comporte-t-il pas dune faon surprenante du point de vue de l'tat 3 ? Proposer une modification de lautomate qui le rende plus cohrent. Question 4 Est-ce que le protocole utilise toutes les posibilits d'HDLC pour le contrle de flux ?
15
5 Ethernet
Exercice 1 :Ingnierie des rseaux Ethernet
Question 1 : rseau Ethernet 10 base T Comment fonctionne un rpteur Ethernet 10 base T (un hub ) ? Comment fonctionne un commutateur Ethernet 10 base T (un lan switch) ? Quel est la diffrence de fonctionnement d'une carte ethernet en mode Ethernet half duplex et en mode Ethernet full duplex ?
On rappelle que la trame Ethernet est prcde de 8 octets de synchronisation (prambule), que la trame comporte au moins 64 octets d'informations significatives et que lintervalle de temps qui spare deux trames successives est d'au moins 9.6s. Un commutateur Ethernet annonce dans sa publicit une performance par porte 10 Mbit/s de 14 880 pps (paquet par seconde).
Comment un acheteur peut-il interprter cette annonce de performances ? Question 2 : rseau "fast ethernet" (Ethernet 100 base T ) Quelles sont les principales similitudes entre le rseau Ethernet 10 base T et le rseau Ethernet 100 base TX ? Et les principales diffrences ?
On rappelle que la taille minimum d'une trame Ethernet est de 64 octets. On suppose pour fixer les ides que la vitesse de propagation du signal dans le mdium de communication ethernet est de 200000 km/s.
Quelle est la distance maximum thorique qui peut sparer deux stations dans un rseau Ethernet 100 base T partag ( base de rpteurs) ?
Les distances effectivement recommandes sont de 90 mtres d'une station un rpteur sur paires UTP5 avec possibilit de monter en cascade deux rpteurs spars par 5 mtres de cble.
Qu'est ce qui explique la diffrence entre la rponse la question prcdente et les valeurs effectives ?
Certains standards spcifient des distances possibles d'utilisation de 2 kilomtres avec des fibres optiques.
Quelle est la distance maximum possible entre deux stations d'un rseau Ethernet gigabit ?
La norme a prvu de rallonger la taille minimum de trame en la multipliant par 8 soit 512 octets (4096
16
attempts est le nombre de tentatives pour accder la voie y compris celle en cours. backoff_limit vaut 210 int est une fonction qui rend la valeur entire par dfaut random est un gnrateur de nombres alatoires compris entre 0 et 1. Dans l'exemple on considrera que la fonction random rend successivement pour chaque station les valeurs donnes par le tableau suivant : Station 1er tirage B 1/2 C 1/4 D 3/4
17
2e tirage 3e tirage
3/4 1/3
1/6 2/3
5/8 1/2
Question 1 Complter le diagramme suivant en indiquant pour chaque slot l'tat de la voie.
Un slot occup par la transmission d'un message correctement mis par la station A est reprsent par "A" Un slot occup par une collision est reprsent par "X" Un slot correspondant une absence de transmission est reprsent par ""
t=0
10
11
12
13
14
15
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Question 2 Calculer le taux d'utilisation de la voie sur la priode allant de t = 0 la fin de la transmission du dernier message.
18
Question 1 En Ethernet partag qu'est ce qu'un domaine de collision? On caractrise le diamtre de collision par le temps d'aller-retour ('round trip delay'), pourquoi? Question 2
Les informations que l'on utilise pour tudier une topologie Ethernet partage incluent: - le type des segments Ethernet utiliss (coaxial 10 Base 5, paire torsade 10 Base T, fibre optique 10 Base FL, ), - la longueur des segments, - la topologie d'ensemble des rpteurs et des segments. Un rseau est correctement construit sil respecte certaines rgles concernant son domaine de collision. On peut utiliser la rgle simple des 5 segments et 4 rpteurs au plus entre deux stations. A cette rgle sont associes des prcisions restrictives concernant les types et les tailles des segments mais les coefficients de scurit appliqus sont importants. Dans certains cas cette rgle s'avre insuffisante. Il est indispensable de faire un calcul prcis, soit parce que le nombre de rpteurs et de segments est lev (gros rseau), soit parce que la longueur des segments est importante (extension gographique grande). La norme de base Ethernet IEEE 802.3 propose une mthode de calcul des dlais de propagation trs dtaille mais trs complexe. Le groupe de travail sur les rseaux locaux IEEE 802.3 a propos ensuite une mthode simplifie mais nanmoins prcise. Cette mthode, que nous allons tudier maintenant, est dfinie pour tous les rseaux Ethernet (10 Mb/s, 100 Mb/s, 1000 Mb/s). On considre ici pour simplifier le cas des rseaux Ethernet 10 Mb/s. Dans la mthode pour dterminer si un rseau est correctement construit, les calculs raliser expriment les dlais en bits. En fait chaque bit transmis sur un rseau Ethernet tant associ un certain dlai de propagation au dbit nominal considr (ici 10 Mb/s), on considre qu'il y a quivalence entre mesurer un temps et mesurer un nombre de bits.
Comment a t dfinie la tranche canal ('slot time') ? Quelle est sa dure ? Si l'on se base sur la dure de la tranche canal, quel est le nombre de bits qui permet de mesurer le diamtre de collision ? Question 3
En fait la trame Ethernet 10 Mb/s comporte un prambule utilisable galement dans la dtection des collisions puisqu'il rallonge la trame. Ce n'est plus vrai dans les normes 100 Mb/s ou 1000 Mb/s qui utilisent d'autres techniques de codage et de synchronisation.
19
dfinir la partie utilisable dans la dtection des collisions, quel est le nombre de bits associ diamtre de collision ?
La norme recommande d'introduire une scurit supplmentaire de 5 temps bit pour ne pas trop s'approcher de la limite.
M Segment gauche
M Segment droit
N segments centre
Question 4 Rappeler brivement les dfinitions des diffrents organes prsents dans la chane de la figure ci-dessus : interface AUI, cble d'attachement (cble 'drop'), transmetteur MAU, mdium, rpteur (hub) Question 5
Le tableau suivant reprsente pour les quatre types principaux de segments Ethernet (10 Base 5, 10 Base 2, 10 Base T, 10 Base FL) et pour le cble d'attachement les dlais de propagation. En fait on y trouve : - la longueur maximum en mtres, - pour les trois positions possibles de segments (gauche, centre, droit), le nombre de bits pour un segment de base (segment de longueur minimum que l'on considre nulle), - le nombre de bits pour un segment de longueur maximum Pour des longueurs intermdiaires entre valeur de base et valeur maximum, le nombre de bits est linaire en fonction de la longueur.
20
Segment gauche
Segment centre
Segment droit
Figure 2. Tableau des valeurs en nombre de bits On remarque que les retards dus aux rpteurs n'apparaissent pas. Ils sont intgrs aux valeurs dfinies pour les segments (la valeur associe un segment intgre dans le calcul ralis par les IEEE tout ce qui concerne ce segment et ses rpteurs dextrmit). Le cas des cbles d'attachement fait lobjet dun traitement particulier. S'ils sont dune longueur de base les retards pour ces cbles sont intgrs aux segments. Sil sont dune longueur quelconque il faut rajouter une valeur comprise entre 0 (cble de base) et 4,88 bits (longueur de 48 mtres). On remarque aussi sur le tableau que les valeurs ne sont pas les mmes selon que le segment est droite, au centre ou gauche. Ceci est en relation avec la mthode employe pour intgrer les diffrents dlais. Ces diffrences n'ont pas d'importance pour les segments centre et aussi pour le cas ou les segments extrmits sont les mmes. Si les segments extrmits ne sont pas identiques, comme l'analyse du diamtre de collision doit concerner le cas le plus dfavorable, il faut faire deux calculs en changeant les segments extrmits. Sur la figure ci-dessous on a reprsent un rseau Ethernet assez simple mais assez tendu gographiquement. Rpteur (hub) fibre optique
10 Base FL 1 Km
10 Base FL 1,6 Km
10 Base FL 1,9 Km
Est ce que le rseau Ethernet de la figure prcdente est correctement construit ? Dessiner le modle de l'interconnexion entre stations pour ce rseau dans le cas le plus dfavorable. Calculer le diamtre de collision et conclure.
21
On suppose que les transmetteurs optiques sont dans les stations et que les cbles d'attachement AUI sont de longueur de base.
Question 6
On considre maintenant le rseau de la figure ci-dessous qui comporte cinq segments et quatre rpteurs Ethernet.
Rpteur 10 Base T 100m 10 Base 5 500 m M Rpteur 10 Base FL 1,6 Km 10 Base 5 500 m M M M
Rpteur
M 10 Base 2 185 m M
Rpteur
Question 7
Un autre problme se pose pour dployer correctement un rseau Ethernet, c'est de respecter le dlai Inter trame de 9,6 microsecondes (Interframe Spacing). Ce dlai est indispensable pour permettre aux appareils Ethernet de sparer correctement les trames. On offre ainsi un dlai de relaxation qui permet aux quipements de terminer le traitement d'une trame avant de passer la suivante. Or quand les trames traversent des quipements successifs qui ont des temps de rponse diffrents ou qui effectuent une reconstruction du signal (comme les rpteurs) il en rsulte un raccourcissement apparent de l'intervalle inter trame (baptis en anglais 'Interframe Gap Shrinkage'). Si ce rtrcissement est trop grave, les trames successives ne sont plus distingues et on perd des trames car les contrleurs considrent que deux trames successives nen font quune. La norme dfinit que le dlai inter trame peut tre raccourci jusqu 4,7 microsecondes sans risque. Au del on estime que le rseau est mal construit. Pour valuer le raccourcissement on dcoupe le rseau selon les mmes rgles que prcdemment et on value encore le raccourcissement en nombre de bits. On ne distingue plus que deux types de segments : segment de coaxial et autre segment. Par ailleurs on comptabilise seulement le segment gauche (celui sur lequel la trame est mise) et tous les segments milieux. Le segment droit ne participe pas au bilan global. Le tableau ci-dessous dfinit les valeurs de raccourcissement du dlai inter trame en bits. Type de segment Coaxial Autre Segment gauche Segment milieu 16 11 10,5 8 Figure 5. Raccourcissement du dlai inter-trame
22
Est ce que le rseau Ethernet de la figure 3 est correctement construit du point de vue du raccourcissement du dlai inter trame ? Mme question avec le rseau de la figure 4
23
Concentrateur2 (hub)
24
Les ports des commutateurs qui sont utiliss, sont numrots sur la figure. La consultation des tables de configuration dans les commutateurs donne les informations suivantes :
Port 8
Port 7 Port 8
Port 7 Port 8
Port 7 Question 1
Pour cette architecture, lorsque lon fait fonctionner lalgorithme de larbre couvrant on lit un commutateur racine (root switch).
25
1.2) Comment est-il choisi ? 1.3) Quel est le commutateur qui est lu racine de larbre couvrant pour larchitecture donne en exemple ? Question 2
Pour chaque commutateur on lit un port racine (root port).
2.1) Quest ce quun port racine ? 2.2) Comment est-il choisi ? 2.3) Quels sont pour les quatre commutateurs les ports racine ? Question 3
Pour chaque tronon de rseau local ou voie de communication on lit un port dsign.
3.1) Quest ce quun port dsign (designated port) ? 3.2) Comment choisit-on un port dsign ? 3.3) Quels sont pour les diffrents tronons les ports dsigns? Question 4 Aprs cette tude dessinez larbre couvrant construit automatiquement par lalgorithme de routage. Placez les commutateurs par niveaux en commenant par le commutateur racine, indiquez les ports racines par des cercles gris et les ports dsigns par des carrs noirs, placez les stations ? Question 5 Comment fonctionne la construction des tables de routage. La table de routage peut-elle tre indpendante de larbre couvrant construit ? Pourquoi ? Question 6 Quelle est la table de routage du commutateur 3 aprs une dure de fonctionnement suffisamment longue qui permet une connaissance complte du rseau et de son arbre couvrant ? Question 7 Finalement ce rseau vous parat-il bien construit. Si non que proposez vous pour en amliorer le fonctionnement ?
26
1) Comment est note ladresse dun hte et ladresse dun rseau ? 2) Comment un ordinateur hte ou un routeur reconnaissent-il quune adresse de destination appartient lune des classes ? 3) Quelle est la proportion relative du nombre dadresses IPV4 affectes aux diffrentes classes A, B, C ? En dduire une consquence si lutilisation des adresses de classe A (ou B) est inefficace. 4) Quelle est lopration effectue sur une adresse de station pour dterminer son adresse de rseau ? 5) Comment ladresse dun hte destinataire est elle utilise pour le routage ?
On vient de voir que les conventions dadressage de base IPV4 permettent implicitement la dtermination de lappartenance dune adresse lune des classes A, B, C ainsi que celle de ladresse du rseau auquel il appartient. Bien que cela ne soit pas ncessaire on souhaite maintenant pour toute adresse IP rendre explicite ladresse de son rseau dappartenance en utilisant systmatiquement la notation adresse/n. On rappelle que dans cette notation n est la longueur du prfixe dfinissant le rseau dappartenance ou le nombre de bits en fort poids du masque.
6) Quelle sont les valeurs de n1 et n2 pour les adresses suivantes : 17.234.16.45/n1, 207.12.231.23/n2. 7) Pourquoi a ton procd un tel dcoupage et quels en sont les difficults actuelles ?
Exercice 2 : Adressage IPV4 de base avec la notion de sous rseau (hirarchis trois niveaux).
Ladressage IPV4 a assez rapidement introduit la possibilit de structurer les adresses dun rseau IP en sous rseaux. Une entreprise dont linformatique tait base sur de petites architectures rseaux htrognes (Novell, ) dcide de passer Internet. Aprs en avoir fait la demande lentreprise a obtenu l'adresse 193.1.1.0. Compte tenu de lorganisation actuelle de lentreprise lingnieur systme doit dfinir au moins 6 sous-rseaux. Compte tenu de lvolution prvisible de lentreprise, lingnieur systme pense que le sous-rseau le plus important peut comporter moyen terme 25 htes.
Question 1 Quel est le dcoupage que doit effectuer lingnieur systme ? En dduire la valeur du masque de sous rseau. On donnera le rsultat dans la notation
27
Quelle est son adresse complte de sous rseau ? Quelle est ladresse de diffusion tous les htes de ce sous rseau ?
Question 1
Considrons ladresse CIDR dun rseau qui serait 193.53.32.0/20.
Quelle serait le nombre dhtes que comporterait ce rseau ? Question 2 Dans le rseau prcdent 193.53.32.0/20 quelle est ladresse la plus petite utilisable pour un hte et quelle est la plus grande ? Question 3
Supposons quun utilisateur restitue une ancienne adresse de classe A, B ou C comme 17.0.0.0 ou 134.15.0.0 ou 194.65.32.0 anciennement attribues.
Ces adresses ntant plus jamais utilises par leurs anciens propritaires, pourrait-on les attribuer nouveau selon lapproche CIDR (attribuer par exemple 17.46.64.0/19, 134.15.0.0/20 et 194.65.32.0/21) ? Question 4
Une entreprise sadresse un Prestataire de Service Internet PSI (ISP Internet Service Provider) pour obtenir 800 adresses.
Que devait faire le prestataire dans ladressage par classes A, B, C pour satisfaire son client et avec quels inconvnients ?
28
Question 5
Nous supposons que le prestataire daccs Internet a reu pour exercer son activit le bloc d'adresses CIDR 202.0.64.0/18 avec lequel il a constitu son rseau. Chaque prestataire est libre de dcouper son espace dadresse comme il l'entend pour fournir des adresses ses clients. Les clients peuvent galement leur tour dcouper l'espace reu pour le distribuer en interne selon les principes CIDR. Ils pourraient mme devenir prestataires daccs Internet.
Pour un client demandant 800 adresses que va faire le prestataire si au moment de la demande la premire adresse rseau qui est libre est 202.0.70.0 ? Question 6 Comment se passe avec CIDR le routage dans le rseau Internet pour atteindre lun des htes appartenant au rseau du client ayant obtenu les 800 adresses ? Vous prendrez si ncessaire une adresse titre dexemple dans cet ensemble. Question 7 En rsum montrez en quoi CIDR constitue une amlioration majeure de ladressage IPV4.
Question 1 Quelles sont les adresses IPV4 qui sont dfinies comme adresses prives (ou locales) et quelles sont les adresses qui sont dfinies comme publiques ou globales ? Question 2 Comment sont attribus ces deux types dadresses ? Question 3 Comment sont utiliss ces deux types dadresses (quelles sont les rgles mises en oeuvre pour ces adresses dans un routeur dun rseau IPV4 priv cest dire un rseau dentreprise ou un rseau personnel et dans un routeur du rseau IPV4 global) ? Question 4
29
Dans quels buts a-t-on dfini ces deux types dadresses (avec quels avantages et quels inconvnients) ?
Question 1
Dans le mode NAT statique ladresse IPV4 source prive est traduite en une adresse IPV4 source publique qui est toujours la mme. La correspondance dans ce cas est bijective (biunivoque) c'est-dire qu une adresse prive est associe de manire statique une adresse publique (selon une table de correspondance statiquement dfinie par un administrateur rseau).
Quelle utilisation peut-on faire dun tel mode de traduction dadresses IP ? Quels sont les inconvnients ? Question 2
Dans le mode NAT dynamique, la traduction dune adresse source IPV4 prive est effectue vers une adresse source IPV4 publique qui est prise dans un bloc dadresses publiques disponibles. Ladresse publique utilise nest donc pas toujours la mme. Par exemple si lon suppose que lhte dadresse 172.20.40.17 met un datagramme un instant donn vers lInternet global, son adresse est traduite dans la premire adresse disponible dun bloc. Par exemple, si ladresse 212.19.50.63 du bloc disponible 212.19.50.0 212.19.50.255 est non utilise au moment de lmission du datagramme, on lutilisera et on traduira 172.20.40.17 en 212.19.50.63. Cette correspondance est enregistre dans une table. De manire viter de bloquer indfiniment une adresse attribue dynamiquement, un temporisateur est utilis pour rvoquer lattribution dune adresse publique. A lchance, on rcupre une adresse attribue et l'on procde une nouvelle attribution dadresse si un nouvel change lieu (ventuellement on peut reprendre la mme adresse pour un autre quantum).
Quel avantage nouveau obtient-on dun tel mode de traduction dadresses IP ? Question 3
30
Le troisime mode est connu sous diffrents noms (mode NAT avec surcharge NAT 'overloading' encore appel NAT with PAT 'Port Address Translation'). Dans ce cas la traduction dune adresse source IPV4 prive vers une adresse source IPV4 publique est complte par la traduction du numro de port. Le plus souvent, dans ce cas on suppose l'utilisation d'une seule adresse publique (par exemple une adresse publique comme 212.19.50.63 disponible). Si lon suppose que lhte dadresse 172.20.40.17 met un datagramme selon le protocole TCP avec le numro de port source 5032, alors son adresse IP est traduite en ladresse IP publique (212.19.50.63) et le numro de port source TCP est galement traduit vers un numro de port non utilis (par exemple 4097 si ce port n'est pas dj attribu une autre communication). Comme dans le cas du NAT dynamique, les attributions sont associes un temporisateur avec rcupration chance. Ce mode de fonctionnement est le plus utilis.
31
Un analyseur de messages changs sur un rseau local Ethernet/IP donne le rsultat suivant. Il est constitu dune suite de lignes correspondant un message observ sur le rseau local. On trouve un numro dordre du message observ, la date de lobservation en seconde, les adresses IP source et destination, le nom du protocole pour lequel le message a circul et le type du message
No Time Source 1 0.000000 0.0.0.0 2 0.001182 192.168.0.247 3 0.342454 192.168.0.247 4 0.344405 0.0.0.0 5 0.348264 192.168.0.247 6 0.353014 CIS_a8:52:24 Tell 192.168.0.5 Destination 255.255.255.255 192.168.0.5 192.168.0.5 255.255.255.255 192.168.0.5 Broadcast Protocol DHCP ICMP DHCP DHCP DHCP ARP Info DHCP Discover Echo request DHCP Offer DHCP Request DHCP ACK Who has 192.168.0.5?
IP source et destination (pourquoi selon vous utilise ton ces adresses dans cet change) ? 2) La trace ne donne pas l'adresse MAC destination figurant dans le message numro 1 (l'adresse MAC source correspond l'adresse unique de l'metteur). Mme si elle ne figure pas dans le texte pouvez vous donner ladresse destination ? 3) Pour le message numro 3 de la trace expliquez la signification des adresses source et destination ( quoi correspondent ces adresses) ? Comment est il possible que ce message parvienne correctement son destinataire ? 4) Pour le message numro 4, expliquez la signification des adresses IP source et destination (pourquoi avoir choisi les adresses IP qui apparaissent dans le message 4)? 5) Dans cette trace, le message numro 2 semble ne pas tre reli une attribution d'adresse DHCP. Cependant ce message a circul aussi dans le cadre de l'attribution d'adresse. Pourquoi le message numro 2 a-t-il circul (quel est le but poursuivi dans la circulation de ce message) ? 6) Expliquez pourquoi le temps qui scoule entre les messages 2 et 3 est assez long ? 7) De la mme faon, dcrivez pourquoi le message 6 a circul dans cette trace?
Un administrateur rseau installe un serveur DHCP sur une machine UNIX. Dans son implantation il doit configurer le serveur par un ensemble de directives contenues dans un fichier baptis dhcpd.conf. La liste des directives prpares pour une configuration est la suivante : default-lease-time 600; max-lease-time 7200;
option subnet-mask 255.255.255.0; option broadcast-address 192.168.1.255;
32
option routers 192.168.1.254; option domain-name-servers 192.168.1.1,192.168.1.2; option domain-name "mondomaine.org"; subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.10 192.168.1.100; range 192.168.1.150 192.168.1.200; } host ulysse { hardware ethernet 00:19:18:A6:47:36 ; fixed-adress 192.168.0.10; }
8) Les adresses IP attribues par ce serveur DHCP correspondent un choix particulier. A quelle catgorie appartiennent ces adresses ? 9) On constate dans le fichier de configuration dhcpd.conf deux types de directives dallocation dadresses IP. Dans le cas de la machine ulysse, celle-ci reoit toujours la mme adresse IP fixe (voir la ligne 'fixed-adress 192.168.0.10'). Citez les avantages que vous voyez lutilisation de DHCP dans ce cas ? 10) Dans le cas du sous rseau 192.168.1.0 ladministrateur dfinit des plages dadresses attribuables dynamiquement (dans les directives range comme range 192.168.1.10 192.168.1.100 ; ). Pourquoi prciser de telles plages dadresses et quels avantages en tire ton ?
33
1) Comment fonctionne l'utilitaire ping. Que peut-on dduire du rsultat de l'excution de cette commande?
2) L'adresse IPV6 utilise en paramtre de la commande ping6 est ladresse 2001:660:3003:1D05::1:1 . Il sagit dune adresse note sous une forme compacte (avec des raccourcis).
Quelles sont les rgles dfinies pour compacter une adresse IPV6. Comment se note ladresse 2001:660:3003:1D05::1:1 sous une forme dveloppe (notation complte dune adresse IPV6) ? 3) A quelle catgorie ( quel plan dadressage) appartient ladresse 2001:660:3003:1D05::1:1 (selon son prfixe est-ce une adresse prestataire, agrge ou gographique). Mme question pour ladresse: 5F0D:E900:80DF:E000:0001:0060:3E0B:3010 ? 4) Commentez la valeur des temps daller retour (round trip time) (que pouvez vous dire la lecture de ces chiffres) ?
34
9 Fonctionnement d'IP
Exercice 1 : Fragmentation IP
Question 1 Dans un rseau qu'est ce que la fragmentation? Question 2 Comment fonctionne la fragmentation en IP V4 (expliquez en les principes gnraux) ? Question 3
Un client de messagerie F transfre un message lectronique de 4000 octets de donnes vers un serveur distant en utilisant trois voies de communication successives selon la figure ci-aprs. On considre que toutes les enttes ajoutes par les diffrentes couches de protocoles traverses au dessus de la couche IP font partie des 4000 octets. Dans les datagrammes IP l'entte est une entte standard de 20 octets (il n'y a pas d'options rajoutes en extensions dans les enttes IP). Serveur Messagerie distant Client de messagerie F MTU : 500 octets MTU : 1500 octets MTU : 1500 octets LS Rseau R2 : Ethernet Rseau R1 : Ethernet (Fournisseur) Routeur Routeur F D
Expliquez dans les grandes lignes le fonctionnement de la fragmentation dans ce cas. Combien de datagrammes sont changs, o sont-ils crs? Question 4 Pour l'exemple prcdent dcrivez prcisment les enttes des datagrammes IP changs. Vous ne dcrirez que les champs associs la fragmentation et la longueur du datagramme ?
35
N Destination 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0.0.0.0 10.1.0.0 10.1.3.0 10.1.3.64 10.1.3.128 10.1.3.192 10.1.4.0 10.1.4.64 10.1.4.128 10.1.16.64 10.1.8.0 10.1.8.0 10.1.8.64 10.1.8.64 10.1.8.128
Masque /0 /16 /26 /26 /26 /26 /26 /26 /26 /26 /24 /26 /26 /26 /26
Routeur 10.1.3.65 10.1.3.65 10.1.3.1 10.1.3.126 10.1.3.190 10.1.3.254 10.1.3.4 10.1.3.4 10.1.3.4 10.1.3.65 10.1.3.65 10.1.3.65 10.1.3.65 10.1.3.62 10.1.3.65
Mtrique 1 1 0 0 0 0 11 9 10 5 6 9 17 22 25
Question 1 Rappeler le test appliquer chacune des entres de la table pour dterminer parmi celles-ci quelles sont celles qui correspondent des routes permettant d'atteindre une destination donne. Application la destination 10.1.8.66. Quelles sont les routes qui passent positivement le test ?
36
Question 2
Lorsque l'on a opr ce premier lagage on ralise un second lagage conduisant choisir les routes qui sont associes aux masques les plus longs.
Pourquoi les routeurs doivent-ils raliser une recherche de "correspondance la plus longue" (Longest Match based forwarding algorithm) ? Donner le numro des entres qui passent ce second filtrage. Question 3
Les routeurs peuvent ensuite arbitrer entre diffrentes routes selon un routage de la pomme de terre chaude. Dans le paquet IP il existe dans l'entte une zone ddie la qualit de service du paquet (TOS 'type of service'), qui contient deux informations. Rappelez la signification de ces deux informations de qualit de service.
Que peut faire un routeur pour utiliser cette zone et filtrer entre les diffrentes routes encore juges quivalentes? Question 4
Un quatrime filtrage peut utiliser la mtrique.
Rappeler la signification de cette valeur. Comment utiliser cette entre dans la table de routage pour filtrer entre les diffrentes routes qui seraient encore juges quivalentes ? Question 5
Un cinquime filtrage peut mettre en avant des techniques propres chaque fabricant de routeur.
Quelle optimisation plus globale au rseau peut-on encore raliser si l'on a encore plusieurs routes juges quivalentes ? Question 6 S'il n'existe plus lors de l'une des tapes prcdentes de route possible pour atteindre le destinataire, que se passe t'il?
37
10 Dploiement de rseaux IP
Un ingnieur rseau doit installer un nouveau sous-rseau Internet dans son entreprise. L'organisation administrative et gographique des ordinateurs raccorder est telle qu'il apparat naturel de crer deux groupes de 5 et 13 htes. Chaque groupe de postes est interconnect au moyen d'un rseau ethernet partag. On utilise pour cela un rpteur (par exemple de standard 10 BaseT). On associe aux deux groupes, deux sous-rseaux IP et on interconnecte les deux sous-rseaux au moyen de routeurs. Un routeur existant dans l'entreprise baptis dans la figure suivante routeur 'base' sert connecter le nouvel ensemble au reste du rseau d'entreprise. Chaque sous-rseau dispose d'un routeur. Ces routeurs sont baptiss 'charnire' pour le groupe de 13 htes et 'arrive' pour le groupe de 5 htes. Les routeurs sont connects au moyen de deux liaisons spcialises point point notes Liaison spcialise 1 et 2.
Routeur 'base'
1 Sous rseau 3 2
Routeur 'charnire' Sous rseau 1 3 Liaison Sous rseau 4 Spcialise 2 Rpteur 4 Routeur 'arrive' 6 13 htes
Sous rseau 2
5 htes
38
L'ingnieur rseau doit attribuer des adresses IP pour le sous-rseau 1, c'est dire pour chacun des 13 htes qui constituent ce sous rseau IP, mais aussi pour le port du routeur 'charnire' qui dessert le sousrseau 1. Ce port est indic par le numro 5 sur la figure. De mme le sous rseau 2 doit comprendre 5 adresses d'htes et une adresse pour le port d'accs partir du routeur 'arrive'. Ce port est indic par le numro 6 sur la figure. Les routeurs utiliss ne grent pas les liaisons dnumrotes. On rappelle que de nombreux routeurs en appliquant la RFC 1812 permettent d'utiliser des liaisons spcialises (LS) sans adresses IP. Dans ce cas, moyennant des directives de configuration des routeurs, deux routeurs relis par une liaison spcialise forment en fait du point de vue du routage un seul routeur virtuel. La liaison spcialise est cache et gre par le logiciel du routeur. Dans l'exemple trait ici, selon les principes de base de l'adressage IP, il faut attribuer des adresses IP aux deux extrmits d'une liaison spcialise pour pouvoir l'utiliser dans le cadre du routage. Ces adresses doivent appartenir au mme sous rseau IP. Les deux LS forment donc deux petits sous rseaux baptiss 3 et 4. Ces deux sous rseaux ont besoin seulement de deux adresses IP. L'ingnieur rseau a un bloc d'adresses IP non utilises dans le cadre d'un adressage de type IPV4 CIDR partir de l'adresse 193.137.1.0.
Question 1
Pour le nouvel ensemble l'ingnieur pense pouvoir utiliser seulement un bloc de 32 adresses libres parmi celles dont ils dispose.
Pourquoi ? Quelle adresse de rseau choisit-il pour la totalit des adresses du nouvel ensemble (donner l'adresse de rseau et son masque en notation /n)? Question 2
L'ingnieur attribue pour commencer les adresses d'extrmit de la liaison spcialise 1 (adresses du sous-rseau 3). Il doit donc crer un sous rseau avec deux adresses IPV4.
Quelle est l'adresse de rseau du sous-rseau 3 (l'adresse et le masque du plus petit rseau IPV4 possdant au moins deux adresses utilisables partir de la premire adresse libre) ? Question 3
L'ingnieur attribue la premire adresse IP utilisable du rseau dtermin la question 2 (la plus petite) l'extrmit 1 sur le dessin (port du routeur 'base') et la seconde (la plus grande) l'extrmit 2 (port du routeur 'charnire').
Quelle est l'adresse de rseau retenue pour ce nouveau bloc de deux adresses si l'on attribue les adresses immdiatement disponibles aprs l'attribution du sous rseau 3 ?
39
Question 5 Si l'on attribue la plus petite adresse utilisable de ce sous rseau l'extrmit 3 (port du routeur 'charnire') et la plus grande adresse l'extrmit 4 (port du routeur 'arrive'), quelles sont les deux adresses retenues ? Question 6
L'ingnieur doit ensuite attribuer des adresses de sous rseaux pour les sous rseaux 1 et 2 qui correspondent 13+1 soit 14 adresses et 5+1 soient 6 adresses.
Quelle est maintenant la premire adresse disponible ? De manire optimiser l'utilisation des adresses dans quel ordre doit-il attribuer les deux demandes ? Question 7 Quelle est alors l'adresse de sous rseau attribue pour le sous rseau 1. Si l'on prend la plus petite adresse disponible dans ce sous rseau, quelle est l'adresse attribue au port du routeur 'charnire' indice 5 sur le dessin ? Question 8 Quelle est l'adresse de sous rseau attribue pour le sous rseau 2 ? Si l'on prend la plus petite adresse disponible dans ce sous rseau, quelle est l'adresse attribue au port du routeur 'arrive' indice 6 sur le dessin?
Question 1
Dans la table de routage d'un hte d'un rseau IP on dfinit en gnral trois routes.
Dfinir les trois entres ncessaires au routage pour l'une des stations du sous rseau 1.
Pour chaque entre on dfinira au moins la destination de la route, le masque de cette destination (en notation /n) et le prochain saut ('next hop' ou 'gateway' dfinissant le prochain routeur ou la station visit).
Question 2 Dfinir les entres concernant le nouvel ensemble, pour la table de routage du routeur 'base'.
Pour chaque route on prcisera la destination, le masque de la destination, le prochain saut ('next hop' ou 'gateway' dfinissant le prochain routeur ou la station visit) et le type de la route. Le type est soit local si
40
les paquets sont dlivrs leur destinataire directement, soit distant si les paquets doivent tre relays par le prochain routeur avant d'tre dlivr. Pour construire la rponse, on doit dfinir dabord la route pour atteindre tout le nouvel ensemble partir du routeur 'base'. On dfinira aussi une route qui dessert localement la liaison spcialise numro 1. Comme on a cr ce sous rseau IP numro 1, l'accs ces adresses doit tre possible toutes fins utiles comme l'envoi de paquets de tests ou de paquets d'administration de rseau SNMP (IP ne sert pas uniquement pour dlivrer des messages TCP ou UDP des htes). Cet accs est-il raliser par le routeur 'base' via le port numrot 1?
Question 3 Dfinir les entres concernant le nouvel ensemble, pour la table de routage du routeur 'charnire'.
Pour chaque route on prcisera comme prcdemment la destination, le masque de la destination, le prochain routeur et le type de la route (ne pas oublier les liaisons spcialises).
Question 4 Dfinir les entres concernant le nouvel ensemble, pour la table de routage du routeur 'arrive'. Question 5 Est ce que le plan d'adressage prcdent est satisfaisant ?
On examinera le critre de l'utilisation des adresses IP. On examinera ensuite le critre de l'agrgation des routes (de la minimisation du nombre de routes crer).
De combien d'entres a-t-on besoin dans une table de routage pour accder au nouvel ensemble des deux sous rseaux ou chacun des sous rseaux ?
41
11Routage OSPF
("Open Shortest Path First")
Le but de ce problme est d'tudier le protocole internet OSPF. C'est un protocole de routage rparti dans lequel chaque routeur gre une base de donnes de l'ensemble des liaisons d'un rseau (topologie du rseau) et calcule partir de cette base les plus courts chemins par l'algorithme de Dijsktra. Cette base de donne est mise jour par diffusion en inondation par chaque routeur de l'tat de ses liaisons aux autres routeurs. Il entre dans la classe des protocoles baptiss " tat des liaisons" ou "linkstate". Par exemple soit un rseau de 7 routeurs A, B, C, D, E, F, G dont la topologie est la suivante (les cots de transit pour chaque liaison sont supposs gaux dans chaque direction et sont mentionns sur l'arc reprsentant la liaison).
A
2
6 1
2 2
5 G
La base de donnes (topologie ou carte du rseau) qui doit tre connue de chaque routeur donne principalement les cots en point point pour chaque liaison. D'autres informations sont galement stockes dans cette table. Certaines de ces informations seront introduites dans la suite. La base de donnes (topologie ou carte du rseau) qui doit tre connue de chaque routeur donne principalement les cots en point point pour chaque liaison. D'autres informations sont galement stockes dans cette table. Certaines de ces informations seront introduites dans la suite. De A A B B B C C C D D E E E F F F G G Vers B D A C E B F G A E B D F C E G C F Cot 6 2 6 2 1 2 2 5 2 2 1 2 4 2 4 1 5 1
42
Cette base de donnes est construite par change d'informations entre les routeurs. Pour cela le protocole suivant est effectu. Son dclenchement peut rpondre diffrentes stratgies de mise jour : - priodiquement - lorsqu'un routeur nouveau s'initialise - lorsqu'un routeur s'aperoit qu'il a un nouveau voisin - lorsque le cot d'une liaison avec un voisin a chang tape 1 : Chaque routeur construit un paquet appel "paquet d'tat des liaisons" ou LSP ("Link State Packet") qui contient des cots de liaison que le routeur souhaite faire connatre. Un LSP comporte principalement une liste de noms de routeurs (voisins d'un routeur) et les cots pour les atteindre. Les LSP mis par un mme routeur sont numrots au moyen d'un numro de squence. Pour simplifier on ne se proccupe pas du retour zro des compteurs utiliss trop longtemps. tape 2 : Le paquet LSP est transmis tous les routeurs voisins et chaque routeur enregistre les informations du LSP gnr le plus rcemment. Plus prcisment chaque voisin effectue le traitement suivant: - Recevoir le paquet LSP. - Consulter la base existante. - Si l'entre (la liaison et son cot) n'est pas prsente, ajouter cette entre et diffuser l'information tous les voisins sauf l'metteur du LSP. - Si l'entre est prsente et si le numro de squence du LSP est plus grand que celui correspondant l'entre modifier l'entre et diffuser l'information tous les voisins sauf le r-metteur du LSP. - Si l'entre est prsente et si le numro de squence du LSP est plus petit ou gal celui correspondant l'entre: ne rien faire.
Question 1
Les protocoles de routage de type vecteurs de distance dont l'exemple type est le protocole Internet RIP ("Routing Information Protocol") se distinguent des protocoles de type Internet OSPF ( tat de liaison).
Rappeler en quelques lignes l'algorithme que doit suivre chaque routeur pour le protocole RIP. Question 2 A quoi pourrait servir la retransmission du LSP son metteur ? Pourquoi un paquet LSP n'est-il pas renvoy son metteur ? Question 3 A quoi sert le Numro de Squence metteur du point de vue du rseau internet qui est datagramme ? A quoi sert le Numro de Squence metteur du point de vue du protocole de diffusion des informations d'tat de liaison ?
43
En plus du Numro de Squence, chaque information c oncernant une liaison possde une date de premption (variable baptise dans OSPF "age") qui apparait aussi bien dans les paquets LSP changs que dans les bases de donnes. Toute information dpassant sa date est systmatiquement dtruite.
A
2
B
1
2 2
5 G
1 F 4 A ayant dtect la coupure, A prpare un LSP de la forme : "de A B, cot = infini , numro de squence,"
On suppose que ce LSP est le premier gnr (au dbut il est le seul).
Indiquer ce qui se passe alors dans le rseau. Quelle est la base de donnes obtenue par les diffrents noeuds la fin du processus d'inondation ?
On suppose qu'ensuite B prpare et transmet son LSP concernant A-B.
Indiquer la (ou les) bases de donnes obtenues l'issue de l'algorithme distribu de transmission de l'tat des liaisons par chacun des noeuds. Question 6
A partir des bases de donnes trouves la question prcdente et du rseau suivant on suppose que la liaison de B C tombe en panne et amne au rseau :
A
2
B
1 2
5 G
44
Question 7
Par la suite la liaison de D E est rtablie avec un cot de 2 rendant de nouveau le rseau connexe. On obtient alors le rseau ci-dessous. On excute l'algorithme de diffusion en supposant que D et E informent le rseau du rtablissement de cette connexion.
A
2
B
1 2
5 G
Quelle est la valeur du cot de la liaison de B C pour les sites A, D et pour les sites B, C, E, F ? Quel est le risque encouru dans cette situation ? Comment dtecter efficacement la situation ? Sur quel type de site ? (on suggre une utilisation du numro de squence) Comment faire pour mettre en oeuvre une solution de "rconciliation" base sur le numro de squence ? Question 8 La technique de diffusion par inondation de l'tat des liaisons est inconcevable telle que pour le rseau Internet. Pourquoi ? Que fait-on pour appliquer quand mme OSPF l'internet ?
45
?SEND !Envoyer SYN ?Recevoir SYN Demi-passif Demi-actif ?CLOSE "SYN_RCVD" !Envoyer SYN, SYN_SENT ?Timeout ACK ?Recevoir SYN,ACK ?Recevoir ACK !Envoyer ACK OUVERT ?CLOSE "ESTABLIHED" !Envoyer FIN ?Recevoir FIN ?CLOSE !Envoyer FIN ! Envoyer ACK "CLOSE_WAIT" ?Recevoir FIN !Envoyer ACK ?CLOSE !Envoyer FIN "FIN_WAIT_1" "CLOSING" ?Recevoir FIN,ACK ?Recevoir "LAST_ACK" ?Recevoir ACK ACK !Envoyer ACK ?Recevoir ACK "TIME_WAIT" "FIN_WAIT_2" ?Recevoir FIN !Envoyer ACK
46
13 TCP : fonctionnement
Exercice 1 : Gnralits sur la couche transport
Question 1 Quels sont les problmes poss par l'utilisation de couches rseaux peu fiables qui compliquent la ralisation de la couche transport ? Question 2 Quelles sont les principales analogies entre la couche transport et la couche liaison ? Quelles en sont les principales diffrences ?
Compltez les numros de squence et les numros d'acquittement qui manquent sur la figure (qui apparaissent sous forme de point d'interrogation). Indiquez quoi correspondent les diffrents segments numrots de 1 8.
47
Serveur WEB
SYN 250712:250712 (0) ACK ? 143257: 143357 (100) ACK ? 250713: 251713 (1000) ACK ? FIN ? : ? (0) ACK ? ACK ?
Segment 2
Segment 3
Segment 4
Segment 5
Segment 8
ACK ?
48
49
3.2. A quoi correspondent les seuils A et B ? 3.3. Expliquer en quoi, cette modification vous semble permettre d'augmenter l'efficacit de TCP vis--vis de l'occurrence des congestions. Questions 4 : UDP et gestion de la congestion dans Internet. 4.1 Quel type de mcanisme faudrait-il ajouter dans le protocole UDP ou en dehors du protocole UDP pour qu'il ne contribue pas la saturation d'Internet quand un utilisateur tente d'mettre un fort dbit indpendamment de la charge du rseau. 4.2 Comment devrait alors se comporter une relation ou une "connexion" de cette nouvelle version d'UDP du point de vue du partage de la bande passante de l'Internet vis--vis des connexions TCP co-existant sur le rseau ? La rponse doit uniquement considrer le point de vue de la couche transport. Il faut donc imaginer que le comportement au niveau transport est indpendant d'un mcanisme de rservation de ressources tel que RSVP, cela doit fonctionner mme sur un rseau de type best effort.
50
51
Thorie du Signal
Exercice : Densit spectrale de signaux binaires simples
Nous nous intressons un signal carr d'amplitude A et de priode T.
A T Signal carr
Question 1 Rappeler comment le signal reprsent dans la figure ci-dessus se dcompose en une somme de signaux lmentaires (harmoniques).
Pour cela, on rappelera le rsultat du dveloppement en srie de Fourier de ce signal sachant que la fonction qui le reprsente est priodique et qu'on peut la considrer comme une fonction paire.
Question 2 Dterminer la puissance contenue dans les diffrentes harmoniques. En dduire la largeur de bande d'un filtre qui laisse passer 90 %, puis 98 % de la puissance contenue dans le train d'impulsions. Faire une application numrique pour une transmission 200 bauds.
A titre indicatif, voici le trac de la superposition des premires harmoniques du signal carr, calcul avec le graticiel GNUplot :
gnuplot> gnuplot> gnuplot> gnuplot> gnuplot> gnuplot> f0(x)=0.5 f1(x)=f0(x)+2*sin(pi/2)/pi*cos(pi*x) f2(x)=f1(x)+2*sin(3*pi/2)/pi/3*cos(3*pi*x) f3(x)=f2(x)+2*sin(5*pi/2)/pi/5*cos(5*pi*x) f4(x)=f3(x)+2*sin(7*pi/2)/pi/7*cos(7*pi*x) plot f0(x),f1(x),f2(x),f3(x),f4(x)
52
0.8
0.6
0.4
0.2
53
Question 1 Quel est le dbit utilis pour transmettre une voix tlphonique ?
Ces paramtres dchantillonnage rsultent de la bande passante offerte par une ligne tlphonique.
Quelle est la largeur de bande considre dans le MIC ? Quelles relations lient la largeur de bande, le dbit et les paramtres d'chantillonnage ? Question 2
La principale technique de commutation utilise sur les autocommutateurs tlphoniques numriques (associe la modulation MIC) est la commutation temporelle synchrone.
A quoi sert un autocommutateur? Expliquer en quelques lignes les principes de la commutation temporelle synchrone. Question 3
Un commutateur gre N lignes en entre et N lignes en sortie. On considre pour simplifier que toutes les lignes ont le mme dbit et quaucun multiplexage temporel nest ralis. Le commutateur utilise une mmoire dont le temps de lecture ou dcriture est de 50ns (ce temps correspond une lecture ou une criture entre les interfaces de lignes et la mmoire). Le pseudo-code suivant dcrit le processus de commutation, lexception de laffectation des lignes dentre aux lignes de sortie.
Processus commutateur type num_ligne: entiers dans [1..N]; var chantillon: tableau (1..N) doctets; ligne_sortie: tableau (1..N) de num_ligne; i:num_ligne; cycle pour i:=1 N faire attendre_top; lire(i,chantillon(i)); crire(ligne_sortie(i);chantillon(i)); finpour fincycle fin
dbut
54
Quel est lusage du tableau ligne_sortie ? Que font les oprations lire et crire ? A quoi sert linstruction attendre_top ?
On suppose que les instructions lire et crire prennent un accs mmoire et que le temps daccs lindex et que le temps de gestion de la boucle sont ngligeables (limplantation relle est cable).
Rappeler brivement les principes de la commutation de cellules. Comment les structures dinformations dfinies dans la question 3 doivent-elles tre modifies pour faire de la commutation de cellules (on ne traitera pas le problme de la gestion de la table de routage). Rcrire le pseudo-code du commutateur de paquets.
On souhaite en utilisant les principes de la commutation de paquets en mode datagramme transmettre des informations de type voix, images tlvises numrises, donnes, etc. trs haut dbit (1 5 gigabit/s).
Exercice 2 : Multiplex T1
Aux tats unis et au Japon les rseaux tlphoniques utilisent un multiplexage baptis T1 de 24 octets formant une trame de base (trame du multiplex T1). Il existe diffrentes versions du codage T1. Nous considrons ici le cas o les 24 octets sont associs des chantillons de voies tlphoniques.
Question 1
Dans une trame T1, aux chantillons tlphoniques, est ajout un bit plac en tte qui sert la resynchronisation trame en cas de perte de synchronisation (bruit de longue dure).
Combien de multiplex T1 un tel commutateur temporel synchrone peut-il supporter au maximum ? Question 3
55
Un chantillon est commut d'un multiplex d'entre du commutateur vers un multiplex de sortie du commutateur en un certain dlai.
Que peut-on dire de la valeur maximum, minimum, moyenne du dlai ncessaire une opration de commutation (retard apport dans la propagation de l'chantillon sur un circuit tlphonique par un commutateur) ?
Question 4
On rappelle que le premier bit est rajout pour la synchronisation trame. La synchronisation est trouve lorsque le premier bit de trames successives respecte la squence 0, 1, 0, 1, 0... Plus prcisment la suite des trames est :
193 bits Pour tre synchronis, il faut donc constater tous les 193 bits l'alternance 0, 1, 0, 1, 0, ... si le premier bit lu a t un 0 ou bien 1, 0, 1, 0, 1,... si le premier bit lu a t un 1. On suppose que le multiplexeur cherche se resynchroniser (par exemple aprs avoir subi un bruit sur plusieurs trames successives). Pour cela, il se positionne sur un bit qu'il estime tre le dbut de la trame courante et vrifie que 193 bits plus loin, il trouve le bit de dbut de la trame suivante (de valeur contraire la valeur prcdente). On suppose que les bits 0 et 1 apparaissent avec la mme probabilit 1/2 dans les chantillons en n'importe quelle position d'une trame.
Combien faut-il inspecter de trames pour avoir une probabilit d'erreur de resynchronisation infrieure 0.001 ? Question 5
On veut maintenant calculer le nombre de trames qu'il faut inspecter en moyenne pour tre sr que la synchronisation n'est pas correcte. On se positionne sur un bit donn en faisant l'hypothse que ce bit est le dbut d'une trame. Si ce bit n'est pas le bit de dbut de trame, donnez la probabilit pour apprendre que la resynchronisation n'est pas trouve en lisant une seule trame, puis en lisant deux trames, puis en lisant n trames (on utilise une partie des calculs de la question prcdente).
En dduire combien il faut inspecter en moyenne de trames successives pour apprendre que la synchronisation n'est pas correcte pour une position donne.
On rappelle la formule : pour x < 1,
nx
n =1
x (1 x )2
56
Question 1
Dans lune des deux organisations baptise adhoc , le rseau sauto-organise en fonction des stations qui se trouvent suffisamment proches et peuvent communiquer par radio. La mthode de partage de la voie commune (mthode daccs au mdium ou encore niveau MAC) utilise est alors baptise DCF ("Distributed Coordination Fonction"). Elle est conue pour des communications asynchrones dans lesquelles chaque station a une chance gale daccder au mdium. Le partage de la voie commune radio est de type CSMA.
Que signifie CSMA et quel est le choix technique relativement au protocole daccs au mdium ralis en adoptant le CSMA ? Question 2
Le mode dajournement utilis dans le partage de la voie commune radio 802.11 est un ajournement non persistant. Lorsquune station souhaite mettre elle coute la voie. Si pendant un dlai fixe baptis DIFS ("Distributed Inter Frame Spacing") aucune autre station nmet, la station commence mettre lissue du dlai DIFS. Si une station a dj commenc mettre, la station en coute ajourne sa transmission pendant toute la dure du message en cours. A lissue de cette attente, elle attend en plus un dlai initialis une valeur calcule selon une mthode analogue celle du binary backoff dEthernet.
Rappelez le principe dun ajournement persistant et non persistant. Question 3 Pourquoi choisir un ajournement non persistant dans un rseau local sans fil prsentant les caractristiques de 802.11? Question 4
Lorsquune station doit ajourner plusieurs reprises sa transmission parce que la voie est occupe par dautres stations, elle laisse passer les autres. A chaque fois, quand la voie est redevenue libre, elle recommence dcrmenter la valeur initialement dtermine par lalgorithme de backoff (sans recalculer une nouvelle valeur du dlai selon le backoff).
Lorsque le dlai initialement dtermin est coul, elle commence transmettre, pourquoi procder ainsi (pourquoi ne pas repartir sur une valeur plus longue chaque ajournement)?
57
Question 5 Lorsque lon transmet un message en 802.11 on risque nanmoins une collision, pourquoi ? Question 6
La dtection des collisions ralise par le rseau Ethernet tant coteuse et inefficace dans le mode des communications radio, le mode de traitement des collisions utilis est un mode par acquittement positif. Emetteur DIFS Trame Donnes Destinataire
SIFS ACK
Toute trame de donne est suivie, aprs une attente courte baptise SIFS (Short Inter Frame Spacing), dune trame dacquittement positif par le destinataire. Si lacquittement positif nest pas retourn, lmetteur considre quil y a eu collision. Il entre alors dans une phase dattente alatoire dfinie de manire similaire celle du rseau Ethernet. Les diffrences portent sur les constantes de temps et dinitialisation de lalgorithme du retard binaire (binarybackoff).
Pourquoi une telle attente en cas de collision? Comment est calcule la valeur du dlai dattente (backoff) en Ethernet? Question 7
Dans un autre mode de fonctionnement de la mthode daccs adhoc (protocole DCF de la proposition IEEE 802.11), une station mettrice commence par mettre un message court RTS "Request To Send" pour rserver lintervalle de temps ncessaire la transmission de son prochain message. Le message RTS contient ladresse metteur, ladresse du destinataire et le temps doccupation de la bande radio. Le destinataire rpond, aprs un silence inter trame court SIFS, le message CTS "Clear To Send" indiquant quil a bien reu la demande de rservation. Il rappelle les paramtres de la communication venir dans le message CTS. Toutes les autres stations du rseau entendent galement cet change. Ensuite la trame de donne et son acquittement sont changs comme prcdemment. Lensemble de lchange est donc le suivant :
58
DIFS RTS
CTS
SIFS
SIFS
Trame/Donnes
SIFS ACK
Ce protocole daccs au mdium est baptis par ses auteurs CSMA/CA (CA pour Collision Avoidance).
Est ce quil vite rellement toutes les collisions ? En quoi amliore til le traitement des collisions par rapport la version de base qui pratique lchange direct dune trame de donne suivie de son acquittement ? Question 8
Dans lautre organisation du rseau baptise infrastructure, le rseau est organis en cellules appeles BSS ("Basic Service Set"). Chaque cellule runit plusieurs stations ayant un coupleur IEEE 802.11 et possde un dispositif spcifique baptis point daccs AP ("Access Point") qui connat toutes les stations de la cellule. Dans ce mode, le point daccs AP joue le rle darbitre centralis dans un protocole de communication par scrutation (ou polling).
Rappelez les principes gnraux dun protocole de partage dune voie commune par scrutation ? Question 9
59
Les concepteurs des rseaux 802.11 ont adopt le mode polling en particulier pour la transmission de donnes temps rel ou multimdia (comme la voie ou la vido) qui demandent un respect de contraintes temporelles assez strictes (exemple respect de lisochronisme des changes).
Rappelez la dfinition dune transmission isochrone. Question 10 Pourquoi le mode par scrutation permet til dassurer le respect du temps de rponse ou de la gigue ?
Question 1 Si la probabilit derreur par bit sur une voie de communication utilise par un rseau local est p, que les erreurs sont indpendantes et que le nombre de bits dune trame est n, quelle est la probabilit derreur pour une trame complte ? Dans la suite on note q cette probabilit. Application numrique : Quelle est la probabilit derreur par trame pour p=10**6 et une trame 802.11 de longueur maximum conforme au standard soit 2346 octets ? Question 2 Pour une probabilit derreur par trame q, dterminez le nombre moyen E de tentatives raliser pour russir une transmission correcte ? On rappelle que 1/(1-q)**2 = 1+2q +3q**2+ . +nq**(n-1) + ... Application numrique : Quel est le nombre moyen de tentatives de transmission dune trame que lon doit effectuer pour russir une transmission correcte pour p=10**-6 ? Question 3 On veut faire une premire valuation grossire du dbit binaire perdu du fait des retransmissions sur erreur. On ne t ient donc pas compte daucun autre facteur que les erreurs de transmission. Pour une probabilit derreur par trame q, un dbit nominal de transmission d, quel est le dbit utile et quel est le dbit consacr aux retransmissions pour une voie qui est utilise en permanence (il y a toujours une trame transmettre, la voie est sature) ?
60
Application numrique : Quel est le dbit utile et quel est le dbit consacr aux transmissions en erreur pour la norme 802.11/b avec d=11 megabits/s, p=10**-6 ? Question 4
En dehors des rseaux locaux sans fils 802.11, il existe de trs nombreuses variantes de protocoles de liaison et de protocoles daccs au mdium dans les rseaux locaux.
Quels sont les mcanismes prvus pour la fragmentation dans les protocoles de liaison (justifiez les choix qui sont faits) ? Question 5 Les normalisateurs des rseaux sans fils 802.11 ont dcid de prvoir une fonctionnalit de fragmentation. Supposons que lon fragmente une trame de n bits en k fragments et que comme prcdemment on ne tient pas compte daucun autre facteur que les erreurs de transmission, que devient le dbit utile et que devient le dbit perdu effectuer des retransmissions ? Application numrique : Quel est le dbit utile et le dbit perdu pour une trame de 2346 fragmente en 4 fragments, pour la probabilit derreur par bit de 10**-6 Question 6
En fait, fragmenter en des fragments de plus en plus petit pour amliorer le dbit utile nest pas possible.
Quels sont les diffrents facteurs qui limitent lutilisation de la fragmentation dans les rseaux sans fils 802.11 pour traiter le problme des erreurs? Question 7
Le fait de dclencher le mcanisme de fragmentation nest pas dfini de faon prcise dans la norme 802.11. Il est indiqu quune implantation dfinit un seuil en de duquel on ne fait pas de fragmentation et au del duquel on fragmente.
Proposez des principes de fixation dun tel seuil et des principes de choix dune taille de fragment dans limplantation dun coupleur 802.11? Question 8
La fragmentation 802.11 est une fragmentation transparente. De plus les fragments en 802.11 sont soumis un contrle d'erreur avec retransmission et ils se suivent sur la voie hertzienne (ils ne peuvent tre dsquencs).
61
Rappelez les informations ncessaires la fragmentation IPV4. Proposez une simplification de ces informations qui fonctionne nanmoins dans le cas particulier du rseau sans fil 802.11 ?
62
Dimensionnement et cots
Application un service de dialup IP
Le dialup IP est une technique de connexion un rseau Internet de manire intermittente via le RTC. Il repose souvent sur le protocole d'change de trames PPP (Point to Point Protocol).
VERS INTERNET
MODEM RTC
Le Centre de Ressources Informatique du CNAM utilise cette technique pour offrir ses usagers un accs distant l'Internet. Pour ce faire, il a install un pool de N modems et lou une ligne groupe France-Tlcom. Il utilise actuellement (mai 98) 10 modems 14400 bit/s (norme V32) et 15 modems 28800 bit/s (norme V32bis) dont 5 rservs au Centre pour le rtro appel. On veut tudier dans cet exercice le dimensionnement et le cot (financier) de l'accs vers Internet dans l'hypothse d'une monte en puissance du service dialup, qui n'est l'heure actuelle pas offert tous. On ne tiendra pas compte dans l'analyse du trafic caus par les autres machines du CNAM !
du
de deux N N! appels
lignes successifs,
not
N E
i =1
i!
o =ES/E dfini la charge du systme. Le nombre moyen de lignes utilises est par ailleurs EN = 1 Prej
Ici, on veut plutt connaitre N en fonction des autres paramtres. Pour cela, on peut utiliser les abaques
63
en annexe.
En dduire la charge moyenne sur la priode considre Avec l'abaque d'Erlang, en dduire la probabilit de rejet Que penser du rsultat obtenu ? Question 2 : Trafic de pointe
Une analyse plus fine a permis de remarquer que sur 24 h, la pointe du trafic est atteinte en fin de journe. 40% des requtes se font entre 22h et 24h.
64
Calculer la charge moyenne pour 80000 comptes. En dduire la probabilit de rejet si N=20, puis N=40 Que devient cette dernire pendant la pointe de trafic ? Question 4 : Dbit vers l'extrieur
On suppose que 40 modems 28800 b/s sont installs.
Question 1 A l'aide des annexes ci-dessous, dterminer le cot d'un accs au dbit calcul prcdement selon ces 2 techniques, en distinguant les diffrents paramtres du cot total.
Pour les calculs, on supposera que la distance de raccordement est de moins de 10 km entre le CNAM et le fournisseur d'accs.
Question 2
Par souci de bonne gestion, on souhaite reporter ces cots sur les usagers. Les frais fixes sont suppos amortis en 3 ans.
Calculer le prix minimum de l'abonnement d'un usager Comparer ce cot un abonnement personnel"du march"
65
66
67
68
TCP/IP
PROTOCOLE
TCP/IP
MAC
Question 1 : Utilisation du client Netscape Navigator Lancer Netscape et naviguer dans les documents.
La commande "View Source" permet de visualiser le source HTML que le serveur a envoy au client.
Quelle est votre avis la syntaxe adopte ? Quel est le rle des diffrentes parties ? Question 2 : Le protocole HTTP
Le protocole utilis par le WWW s'appelle Hyper Text Transfer Protocol (HTTP). Dans sa version actuelle (1.0), il s'agit d'un simple protocole de type "requte-rponse": le client demande au serveur le document HTML et le serveur le renvoie (voir figure). On peut se connecter directement sur un serveur WWW en se logeant par TELNET sur le port 80 de la machine qui hberge le serveur WWW.
Lancer le logiciel TELNET en se connectant sur la machine cedric.cnam.fr Pourquoi le systme ne demande-t'il pas d'identification ?
69
Serveur Web
fichier HTM
(2) rponse http (4) Nouvelle requte Serveur Web 2 disque de la machine serveur Lien
Essayer par exemple GET /index.html http/1.0 suivi de 2 retourcharriot Que retourne le serveur ? Essayer ensuite GET /toto.html http/1.0 Que retourne le serveur ? Que se passe-t'il pour les images ?
70
Pour utiliser les IPC internet, il faut inclure dans son code C les dclarations suivantes :
#include #include #include #include #include #include #include #include #include #include #include <stdio.h> <signal.h> <ctype.h> <errno.h> <sys/types.h> <sys/socket.h> <string.h> <netdb.h> <netinet/in.h> <netinet/tcp.h> <arpa/inet.h>
#define __SOCK_SIZE__ struct sockaddr_in { sa_family_t unsigned short int struct in_addr unsigned char };
16
/* sizeof(struct sockaddr)
*/
sin_family; /* Address family */ sin_port; /* Port number */ sin_addr; /* Internet address */ __pad[__SOCK_SIZE__ - sizeof(short int) sizeof(unsigned short int) - sizeof(struct in_addr)];
Question 1 En utilisant lautomate prsent prcdemment, crire un petit programme en C qui va rcuprer le contenu dun fichier disponible sur un serveur httpd, partir de son URL.
71
Ce client http va se connecter au serveur httpd avec une socket en mode TCP, puis va mettre un ordre GET chemin HTTP/1.0, puis affichera le flux dinformations retourn par le serveur. Exemples dutilisation de ce programme : %geturl lmi17 /index.html %geturl cedric.cnam.fr /ABU/BIB/index.html
72
Question 2 Ecrire un script shell getHREF qui utilisera le programme prcdent pour afficher tous les URL contenu dans le fichier.
Exemples dutilisation de ce programme : %getHREF lmi17 /index.html %getHREF cedric.cnam.fr /ABU/BIB/index.html
Question 3
Notre client http geturl est trop rapide.
Ecrire une variante de celui-ci qui lit la vitesse de 1 caractre par seconde toutes les informations envoyes par le serveur http.
Exemples dutilisation de ce programme : %lentgeturl lmi17 /index.html >tmp & %lentgeturl lmi17.cnam.fr /Meteo/satt0.gif >tmp &
Visualiser l'tat des sockets sur le client et le serveur avec la commande netstat. Expliquer ltat des tampons.
NOTE : Consulter C. YOUNG "Programmation de clients Web avec Perl" O'Reilly 1997 pour crire des clients HTTP plus sophistiqus.
73
Routage RIP
Le graphe ci-dessous reprsente un rseau informatique : les sommets : A, B, C, D reprsentent les noeuds de commutation et les arcs les liaisons bidirectionnelles. La valeur porte sur les les arcs reprsente une distance de communication point point qui est suppose tre identique dans les deux sens. Cette distance matrialise un cot de communication qui sert dans la suite de l'ED pour dterminer un meilleur chemin et fabriquer les tables de routage des diffrents noeuds. A( n1) 4 1 B( n2) 10 C(n3) 4
4 D( n4)
Plus loin dans l'exercice, on utilise des numros pour dsigner les noeuds de commutation : A est le n 1, B est le n 2, C est le n 3, et D est le n 4.
Calculer l'aide de cet algorithme le routage optimal du rseau Dterminer, en utilisant la matrice P, l'arbre de routage (sink tree) et la table de routage du noeud A
CONSTANTES N: entier ; % Nombre de noeuds; Type Nom_de_noeud: entier dans (1..N); % nom des noeuds de commutation; C : tableau (N,N) de rels ; % cout de transmission en point point; C(i,i)=0 pour tout i et C(i,j)=+8 si il n'y a pas de liaison entre i et j; quand il y en a une, le cot a t port sur l'arc du graphe cidessus %; VARIABLES V: tableau (N,N) de rels ; % A la fin de l'algorithme V(i,j) est gal au cot du chemin de valeur minimale de i vers j %; P: tableau (N,N) de Nom_de_noeuds; % A la fin de l'algorithme P(i,j) est le successeur de i dans le chemin optimal de i vers j%; Iter: entier; % numro d'itration%; cout: rel; i,j,k,r: Nom_de_noeuds;
74
75
CORPS DE PROCEDURE (Ford) % Initialisation ; pour i=1 a N pour j=1 a N V(i,j) := C(i,j); Si C(i,j)?+8 faire P(i,j):=j; finsi finpour finpour % Itrer N-1 fois %; Pour iter=1 a N-1; % Pour chaque noeud origine d'un chemin %; Pour i=1 a N % Pour chaque noeud extrmit d'un chemin %; Pour j=1 a N cout:=+8; % Chercher parmi tous les voisins de i celui par lequel passe le meilleur chemin vers j %; Pour k=1 a N Si C(i,k)?+8 faire Si C(i,k)+V(k,j)<cout faire cout:=C(i,k)+V(k,j); r:=k; finsi finsi fin pour %Si la valeur trouve est meilleure que celle contenue dans dans V noter le nouveau chemin %; Si V(i,j)> cout faire V(i,j):=cout; P(i,j):=r; finsi finpour finpour finpour
I I I I I I I I I I I I I A I I I I I I I I
76
Appliquer la partie A de l'algorithme prcdent pour trouver les nouvelles valeurs de V(i,) et P(i,); Dterminer la nouvelle table de routage de i; fincycle
La mesure avec Mesurer C(i,k) peut seffectuer de plusieurs faons diffrentes. Par exemple on peut considrer que le cot dune ligne est infini si sur un hte, la file de messages en mission vers un destinataire est pleine, et vide en rception depuis celui-ci. On suppose qu' l'instant t=0 tous les noeuds ont calcul les valeurs respectives de V(i,) et P(i,) et la table de routage correspondante. La liaison (3,4) tombe en panne. Chaque noeud commence une tape du cycle de calcul. Pour raliser la phase A de l'algorithme le noeud i calcule, la n-me tape du calcul, une matrice Si(n). Si(n) (k,j) est l'valuation par i du cot pour aller j en passant par k.
Quelle relation lie Si(n) (k,j) ,Vk (n-1) (k,j) et C(n) (i,k) (valeur du chemin chemin optimal vers j calculs par k au cycle prcdent et cot mesur par i au cycle courant) ? En dduire la relation liant Si(n) et V(n)(i,.) Appliquer l'algorithme pour la premire itration (numrote n).
Il est recommand de retracer le graphe grande chelle et d'associer au noeud i la matrice Si (voir pages suivantes).
Question 3
Pendant la premire itration, un paquet part d'un calculateur hte connect au noeud de commutation 1 pour tre transmis a un hte connect au noeud 3.
) ) ) )
) ) ) )
S4 = . . .
77
Les valeurs de V et P sont stabilises aprs plusieurs itrations si on suppose que les cots ne sont plus modifis durant cette phase de calcul. Les itrations n+1, n+2, n+3 sont donnes ci-dessous.
Vn = . . . . V (1,) = ( . S1 = . P(1,) = ( . 4 14 S3 = . 8 10 . . . . .
) )
5 14 V ( 3, ) = (4 8 0 5) . P(3,) = (1 1 3 1)
4 0 8 4
1 8 S4 = . 4 1 6 4 0 5 3 0
4 . S2 = 14 5 1 8 S4 = . 4 1 74 0 5 5 0
. . . .
8 . 10 7 5 4 .
4 14 S3 = .
8 10 .
5 10 .
4 0 8 4
4 . S2 = 14 5 1 8 S4 = . 4 0 8 4 4 8 0 5 1 4 5 0
. . . .
8 . 10 9 5 4 .
4 14 S3 = .
8 10 .
5 11 .
V n +3
78
Cette solution est optimale, litration suivante donnerait le mme rsultat !!! Remarque : Il est possible que certaines erreurs se soient glisses dans les calculs, mais elles ne gnent en rien la rponse la dernire question.
Fonctionnalits TCP/UDP-IP
Pour chacun des protocoles IPV4 et TCP indiquez s'ils possdent les fonctionnalits suivantes. Si oui indiquez au moyen de quels champs et de quel mcanisme, la fonctionnalit considre est ralise sur un datagramme ou sur un segment. 1) Contrle de squence (livraison en squence) en IP ? En TCP ? Retransmission sur erreur en IP V4 (Contrle d'erreur)? En TCP ? Contrle de flux en IP ? En TCP ? La trame Ethernet suivante a t prleve par un programme d'coute d'une voie Ethernet. Cette trame est dite par lignes de 16 octets en hexadcimal. C'est une trame au format standard Ethernet DIX et non au format IEEE 802.3. Le prambule de la trame Ethernet avec le dlimiteur de dbut de trame n'est pas inclus dans la trace. Le code polynomial de contrle (CRC Ethernet) est reprsente par xxxx xxxx. 00: 16: 32: 48: 0800 0028 c801 1000 2001 0c39 0450 64be b432 0000 0015 0000 0800 1e06 0006 0000 2000 8077 e802 0000 61f3 c009 0080 0000 0800 c80b 3e08 xxxx 4500 c009 5010 xxxx
2) Entte Ethernet : Quelles sont les adresses Ethernet source et destination de la trame ? Ou se trouve le type de protocole rseau encapsul dans la trame Ethernet ? Quelle est sa valeur ( quel protocole de rseau doit tre dlivr la charge utile de la trame) ? 3) Entte IP : Le datagramme IP contient-il des options ? Pourquoi ? 4) Entte IP : Sagit-il du premier fragment dun datagramme fragment ? Sagit-il du dernier fragment dun datagramme fragment ? Pourquoi ? 5) Entte IP : Quelle est la valeur du champ TTL ('Time to live', temps restant sjourner) ? Comment dtermine t'on que le protocole de transport qui utilise ce datagramme IP est TCP ? 6) Entte TCP : Quels sont les numros de port source et destination de ce segment?
79
7) Entte TCP : Quels sont les i ndicateurs positionns par le message ('flags'). Quel est la valeur et quoi servent des numros de squence, d'acquittement et le pointeur urgent contenus dans le segment? 8) Entte TCP : Quel est le nombre doctets pouvant tre mis en anticipation (quel est le crdit) mentionn dans ce segment ?
80
D1 D2
S D3
D4
1) Le principe fondamental dun routage en diffusion sur groupe consiste construire un arbre couvrant
cot minimum enracin au site source et dont les feuilles sont les sites destinataires. Sur larbre, pour diffuser aux destinataires, on ne transmet quune copie du message par liaison utilise. On cherche comparer la solution en point point la solution en diffusion sur une arbre, en utilisant la mtrique Internet du nombre de sauts. 1.1) Pour le rseau de la figure prcdente, si lon ralise quatre communications en point point pour aller de S aux quatre destinataires combien de sauts doit-on effectuer ? 1.2) Si lon utilise larbre couvrant en diffusion, combien de saut doit-on effectuer ? 1.3) Supposons quun routage en diffusion utilise un arbre binaire pour atteindre 2**N destinataires, combien de sauts doit-on effectuer en mode point point ? 1.4) Sur un arbre binaire permettant datteindre 2**N destinataires, combien de sauts doit-on effectuer en mode diffusion sur larbre ? 1.5) Que conclure quant aux performances relatives des deux solutions ?
2) Adresses IP de diffusion.
2.1) Ladressage IPV4 utilise dans sa version de base diffrentes classes d'adresses. Quelle
81
est le nom de la classe qui est prvue pour la diffusion des groupes de destinataires (le multicast)? Quelles sont les adresses utilisables pour dfinir des groupes de diffusion?
2.2) De combien dadresses diffrentes peut-on ainsi disposer pour adresser des groupes en Ipv4? 2.3) Les adresses multicast IP peuvent servir dlivrer des messages en diffusion au moyen de rseaux locaux type Ethernet. Ethernet dispose galement d'un adressage multicast. Pour tablir automatiquement une correspondance entre adresse IP multicast et adresses Ethernet multicast une technique normalise consiste copier 23 bits de poids faible de l'adresse IP multicast pour fabriquer 23 bits de l'adresse multicast Ethernet qui lui correspond. Sur le schma suivant on reprsente une adresse Ethernet multicast avec le prfixe constant caractristique de la conversion IP multicast vers Ethernet multicast et un bit 0 qui ramne 23 le nombre de bits significatifs dans les 24 bits de la partie droite.
0 23 47 | | | 1000 0000 0000 0000 0111 1010 xxxx xxx0 xxxx xxxx xxxx xxxx Cette prsentation correspond au codage des adresses Ethernet lorsquelles circulent sur les fils (le bit 0 est envoy en premier en codage grand boutiste). Pourquoi le premier bit est-il obligatoirement 1? 2.4) La reprsentation officielle des adresses Ethernet est telle que les 6 octets sont numrots de la gauche vers la droite (grand boutiste) mais les bits lintrieur des octets sont numrots de la droite vers la gauche (petit boutiste). Lorsque lon dite une adresse Ethernet, dans la reprsentation officielle (dite en mmoire), les adresses multicast Ethernet sont donc notes en inversant lordre des bits dans les octets. Ladresse Ethernet multicast avec le prfixe constant caractristique de la conversion IP multicast vers Ethernet multicast devient donc : 0 23 47 | | | 0000 0001 0000 0000 0101 1110 0xxx xxxx xxxx xxxx xxxx xxxx Le domaine dadressage est donc dfini dans les normes par lintervalle 01:00:5e:00:00:00 01:00:5e:7f:ff:ff Soient les adresses multicast IP 224.144.8.5 et 225.144.8.5 (en hexadcimal e0.90.08.05 et e1.90.08.05). Donner les adresses multicast Ethernet correspondantes sachant que lon recopie purement et simplement les 23 bits de la partie droite de ladresse IP multicast dans ladresse Ethernet multicast (pour rpondre, en cas de doute on peut ventuellement reprsenter sous forme binaire les adresses) ? Comment rsoudre le problme pos par l'utilisation simultane de ces deux adresses dans le mme rseau.
82
4) Routage en diffusion.
4.1) Le problme du routage en diffusion consiste atteindre partir d'une source un groupe de destinataires. L'un des protocoles de routage en diffusion sur l'internet s'appelle DVMRP ("Distance Vector Multicast Routing Protocol"). Le protocole DVMRP est donc un routage vecteur de distance qui utilise un principe voisin du protocole RIP ("Routing Information Protocol"). Rappelez les principes des protocoles vecteur de distance pour entretenir une table des chemins cot minimum dans un rseau? 4.2) En DVMRP, pour construire l'arbre de diffusion, priodiquement un routeur source (un routeur de rattachement d'un hte source) met vers ses routeurs voisins un message indiquant qu'il a un flot de messages en diffusion transmettre. Les diffrents routeurs atteints rmettent leur tour ce message vers leurs voisins. Comment appelle t'on une telle stratgie de circulation des messages d'indication de flot ? 4.3) En fait chaque routeur du rseau n'accepte un message d'indication de flot de diffusion et ne le rmet vers ses voisins que s'il provient du routeur voisin qui se trouve sur le chemin cot minimum vers la source. Les messages provenant des autres voisins sont ignors. Pourquoi est-ce que cette stratgie vite l'explosion combinatoire du nombre des messages? Pour construire l'arbre couvrant cot minimum, DVMRP fonctionne en deux phases. Dans la premire phase, DVMRP construit un arbre couvrant cot minimum du routeur source vers tous les routeurs ("minimum spanning tree"). Dans la seconde phase DVMRP procde l'lagage de l'arbre couvrant. Lorsqu'un routeur est une feuille de l'arbre couvrant (il ne relaie pas de messages vers un autre routeur) et qu'il n'est pas destinataire (il n'y a pas d'abonn connect ce routeur qui les messages d'un flot de diffusion doivent tre dlivrs) alors ce routeur n'a pas recevoir le flot de diffusion. Il peut tre retir de l'arbre de diffusion. Ce routeur met un message son pre dans l'arbre qui est appel message d'lagage. De proche en proche l'lagage se poursuit jusqu' obtenir un arbre utilisable. 4.4) Sur le rseau suivant qui comporte 8 routeurs nots A,B,C,D,E,F,G,H, on a mentionn les cots des artes. Quelle est la circulation des messages dans la premire phase? On prsente la rponse sous la forme d'un ensemble de lignes (X , Y) ou X est l'metteur et Y le destinataire d'un message. On ajoute pour chaque message l'indication Y retransmet le message ou Y ne retransmet pas. Par exemple la premire ligne de la rponse est: (A , B) B retransmet le message.
83
Source 1
B
4 Abonn
A
5 2
C
3
D
3
E
7
Abonn
F
1 6
G H
Abonn
4.5) Quel est l'arbre couvrant obtenu aprs circulation des messages d'indication de flot ? 4.6) Quelle est la circulation des messages d'lagage? 4.7) Quel est l'arbre de diffusion finalement construit aprs circulation des messages d'lagage?
84
3) Le protocole de transport temps rel RTP a choisi de sappuyer sur le service du protocole UDP pour la transmission de donnes synchrones. Donc dans une transmission avec RTP le niveau transport comprend les deux protocoles RTP et UDP selon larchitecture suivante. RTP Real-time Transport Protocol Niveau transport UDP User Datagram Protocol
Pourquoi avoir choisi le protocole UDP comme protocole sous jacent RTP ? Lentte dun message de donnes RTP comprend cinq champs. - Le champ type (Payload Type) dcrit le type de la charge utile transporte (sur 7 bits). - Le champ numro de squence (Sequence Number) est le numro de squence du message RTP. Il est incrment chaque nouvel envoi dun message RTP (sur 16 bits). - Le champ estampille (Timestamp) sur 32 bits. Ce champ reflte linstant dchantillonnage du premier octet de la charge utile. Supposons par exemple que pour un certain type de codage du son, un message RTP transporte 40 chantillons de son prlevs 44000 fois par seconde alors la valeur du champ estampille progresse de 40 chaque nouveau message. - Le champ identifiant de la source (Synchronization Source Identifier) sur 32 bits. Cest un identifiant choisi alatoirement qui identifie une source de donnes RTP. On peut en effet avoir sur le mme hte plusieurs flots de donnes transmises en mme temps vers le mme destinataire. - Diffrents indicateurs (numro de version, existence doctets de bourrage, existence dextension dentte .) sont galement prsents dans lentte. Ils ne sont pas dtaills dans ce sujet.
85
4) Selon la norme RTP, le type de charge utile ayant pour valeur 0 est attribu au codage MIC avec la loi 64 kb/s (PCM , law 64) du tlphone numrique. Rappelez les principes de base du MIC (chantillonnage, quantification, codage)? 5) On s'intresse maintenant au traitement des erreurs de transmission dans le protocole RTP. On considre tout d'abord la pile des protocoles utiliss par RTP. Quels sont les mcanismes de traitement des erreurs mis en uvre dans les diffrents protocoles Internet (aux niveaux physique, liaison, rseau et qu'en rsulte t'il pour un utilisateur du transport UDP) ? 6) Avec lensemble des informations qui ont t donnes dans ce texte sur RTP (format de lentte RTP, utilisation par RTP de UDP et des protocoles Internet) comment un utilisateur de RTP peut-il dtecter une erreur de transmission sur un message ? 7) Compte tenu des objectifs de transmission synchrone, quel mcanisme de traitement des erreurs de transmission (codes dtecteurs derreur avec retransmission, codes correcteurs derreurs) doit tre privilgi par un utilisateur dun protocole de transport pour des donnes multimdia en flux continu comme RTP ? 8) Lune des solutions propose pour traiter les erreurs dans des flux continus consiste rajouter en mission le mcanisme suivant. Aprs avoir mis n messages (chaque message contient k chantillons de son ou dimage), un utilisateur RTP met un message n+1 dont la valeur est le ou exclusif des n messages prcdents (la parit longitudinale). Comment utiliser cette parit dans le cadre du traitement des erreurs (examinez les possibilits offertes en dtection d'erreurs, cette parit peut elle permettre de corriger des erreurs) ? 9) Comment un utilisateur du protocole RTP peut-il dlivrer correctement (de manire synchrone) les units dinformations transportes ?
86