Exercices dirigés
Unité d'enseignement NFP 104
Réseaux et protocoles
2005-2006
Ce polycopié a été élaboré par les enseignants de l'équipe "Réseaux et protocoles" à partir d'exercices rédigés par MM. Berthelin, Cubaud, Farinone, Florin, Gressier-Soudan et Natkin.
1
2
1• Les couches de protocoles
Exercice 1 : Le modèle OSI
Applications
Présentation
Session
Transport
Réseau
Liaison
Physique
Applications
Présentation
Session
Transport
Réseau
Liaison
Physique
support de transmission
Dans le contexte du modèle OSI, qu’est qu’une PDU ?
Quel est le nom donné aux unités de transfert pour les différentes couches ?
Qu’est qu’une primitive de service ?
Qu’est qu’une machine protocolaire ?
Donnez quelques exemples de piles protocolaires.
Exercice 2 : La couche physique
Vous devez construire une architecture de réseau local dans une salle informatique contenant 15 postes de travail. Le réseau local choisi est un Ethernet à 10 Mbit/s. Vous avez a votre disposition un extrait d’une documentation technique :
connecteurs
normes 10Base T RJ45 10Base 2 BNC 10Base 5
Prise vampire
longueur max
câbles paire torsadée/UTP5 100m 185m coaxial fin 500m coaxial épais
topologie coupleur réseau Étoile Bus Bus
carte TX carte BNC carte AUI
Quel type de câblage préconiseriez vous ?
Calculez le nombre de segments de cables nécessaires.
3
Exercice 3 : La couche Liaison
Question 1. La trame Ethernet
Le format de l'information qui passe sur le médium de communication est le suivant, ce qui est en gras
matérialise la trame Ethernet :
Préambule Délimiteur
7 octets
de début 1 octet
Adresse destination 6 octets
Type
Adresse source 6 octets 2 octets 46 à 1500 octets 4 octets
Informations
FCS
Quelle est la longueur d'une trame minimum ?
Quelle est la longueur minimum de données transportables? Pourquoi la couche physique ajoute un préambule ?
Voici la trace hexadécimale d’une communication point à point prélevée par un espion de
ligne (SNOOP):
00: 0800 2018 ba40 aa00 0400 1fc8 0800 4500 .. [email protected]. 16: 0028 e903 4000 3f06 6a5c a3ad 2041 a3ad .(..@.?.j\.. A.. 32: 80d4 0558 0017 088d dee0 ba77 8925 5010 ...X.......w.%P. 48: 7d78 1972 0000 0000 0000 0000 0000 0000 }x.r............
Retrouver les champs de la trame Ethernet dans la trace hexadécimale précédente.
Question 2. Adressage (adresse MAC)
Voici un exemple d’adresse Ethernet (6 octets) : 08:0:20:18:ba:40
Deux machines peuvent-elles posséder la même adresse ethernet ? Pourquoi ?
Voici la trace d’une communication point à point prélevée par un espion de ligne (SNOOP) :
ETHER: ----- Ether Header ----- ETHER: Packet 1 arrived at 18:29:10.10 ETHER: Packet size = 64 bytes ETHER: Destination = 8:0:20:18:ba:40, Sun ETHER: Source = aa:0:4:0:1f:c8, DEC (DECNET) ETHER: Ethertype = 0800 (IP) à comparer avec une communication à un groupe:
ETHER: ----- Ether Header ----- ETHER: Packet 1 arrived at 11:40:57.78 ETHER: Packet size = 60 bytes ETHER: Destination = ff:ff:ff:ff:ff:ff, (broadcast) ETHER: Source = 8:0:20:18:ba:40, Sun ETHER: Ethertype = 0806 (ARP)
Quel champ, par sa valeur permet de différencier les deux types de traces pour les communications à un seul destinataire ou à plusieurs destinataires?
Comment un seul message peut-il parvenir à plusieurs destinataires simultanément ?
4
Exercice 4 : La couche Réseau
Question 1. Adressage IPv4
Une adresse IPv4 est définie sur 4 octets. L’adressage IPv4 (Internet) est hiérarchique. Un réseau IPv4 est identifié par son numéro de réseau. Une machine est identifiée par son numéro dans le réseau. L’adresse IPv4 d’une machine est donc composée d’un numéro de réseau et d’un numéro de machine.
Exemple pour le CNAM (autrefois), la machine ‘asimov’ avait l’adresse IPv4 192.33.159.6 avec et .6 (1 octet : la machine ‘asimov’ dans le réseau
192.33.159 (3 octets : réseau) 192.33.159).
Sur l’internet, deux machines à deux endroits différents peuvent elles posséder la même adresse IPv4 ?, si oui, à quelle condition ?
Dans le même réseau IPv4, deux machines différentes peuvent elles posséder la même adresse IPv4 à deux moments différents ? Chercher un contexte d’utilisation.
Voici l’affichage 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
A votre avis que montre cette commande ?
Exercice 5 : La couche Transport
On donne la structure de l'entête IP et la structure de l'entête TCP :
0
4
No Version de l'IP(4)
8
Longueur de l'entête (nb de mots de 32 bits)
Façon dont doit être géré le datagram TOS - type of service
16
19
24
31
Longueur du Datagram, entête comprise (nb d'octets)
No Id -> unique pour tous les fragments d'un même Datagram
flags (2bits): .fragmenté .dernier
Offset du fragment p/r au Datagram Original (unit en nb de blk de 8 o)
Temps restant à séjourner dans l'Internet TTL
Protocole de Niveau Supérieur qui utilise IP
Contrôle d'erreurs sur l'entête
Adresse Emetteur IP
Adresse de Destination IP
Options : pour tests ou debug
DONNEES
identifiant émetteur
identifiant récepteur
no de séquence du premier octet émis contenu dans ce segment
no d'acquittement : no de séquence du prochain octet à recevoir par celui qui envoie ce segment
bits indicateurs
20
longueur entête + options
réservé
U R G
A C K
P S H
R S T
S Y N
F I N
taille de la fenêtre
contrôle d'erreur sur l'entête contrôle d'erreur sur l'entête
fin des données urgentes placées en début des données utilisateur dans le segment
Padding: Octets à 0 pour que l'entête *32 bits
options s'il y en a
données s'il y en a
5
Trace d’une communication point à point prélevée par SNOOP :
ETHER: ----- Ether Header ----- ETHER: Packet 3 arrived at 11:42:27.64 ETHER: Packet size = 64 bytes ETHER: Destination = 8:0:20:18:ba:40, Sun ETHER: Source = aa:0:4:0:1f:c8, DEC (DECNET) ETHER: Ethertype = 0800 (IP) IP: ----- IP Header ----- IP: Version = 4 IP: Header length = 20 bytes IP: Type of service = 0x00 IP: x xx. .... = 0 (precedence) IP: ...0 .... = normal delay IP: .... 0... = normal throughput IP: .... .0.. = normal reliability IP: Total length = 40 bytes IP: Identification = 41980 IP: Flags = 0x4 IP: .1.. .... = do not fragment IP: ..0. .... = last fragment IP: Fragment offset = 0 bytes IP: Time to live = 63 seconds/hops IP: Protocol = 6 (TCP) IP: Header checksum = af63 IP: Source address = 163.173.32.65, papillon.cnam.fr IP: Destination address = 163.173.128.212, jordan IP: No options TCP: ----- TCP Header ----- TCP: Source port = 1368 TCP: Destination port = 23 (TELNET) TCP: Sequence number = 143515262 TCP: Acknowledgement number = 3128387273 TCP: Data offset = 20 bytes TCP: Flags = 0x10 TCP: ..0. .... = No urgent pointer TCP: ...1 .... = Acknowledgement TCP: .... 0... = No push TCP: .... .0.. = No reset TCP: .... ..0. = No Syn TCP: .... ...0 = No Fin TCP: Window = 32120 TCP: Checksum = 0x3c30 TCP: Urgent pointer = 0 TCP: No options TELNET: ----- TELNET: ----- TELNET: ""
A votre avis, à quoi correspondent les étiquettes TCP et TELNET ?
Combien y a-t-il d’encapsulations successives ?
Trace hexadécimale d’une communication point à point :
3 0.00000 papillon.cnam.fr -> jordan TELNET C port=1368 00: 0800 2018 ba40 aa00 0400 1fc8 0800 4500 .. [email protected]. 16: 0028 a3fc 4000 3f06 af63 a3ad 2041 a3ad .(.ü@.?..c.. A.. 32: 80d4 0558 0017 088d de7e ba77 66c9 5010 ...X.....~.wf.P. 48: 7d78 3c30 0000 0000 0000 0000 0000 0000 }x<0............
6
Déterminer le début du paquet IPv4.
Déterminer la fin de l’entête du paquet IPv4.
Déterminer la fin de l'entête TCP.
7
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 débit maximum théorique d'information pouvant circuler sur ce support lorsqu’on utilise une modulation de valence 2 (bivalente) ?
Question 2
Le signal généré dans cette voie est tel que le rapport signal à bruit obtenu est de 20 dB.
Quel est le débit maximum théorique d’informations pouvant être acheminées par cette voie ?
Quelle valence faudrait-il pour approcher ce débit maximum théorique ?
Exercice 2 : Modulation
On rappelle que le modem V29 fonctionne à 9600 bit/s sur liaison 4 fils en full duplex. Le procédé de modulation est une modulation combinée de phase octovalente et de modulation d'amplitude bivalente (pour chaque phase utilisée 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 ?
Exercice 3 : De l'utilité de la détection d'erreurs
Sur une liaison hertzienne urbaine à 1200 bit/s, on envoie des messages de 64 bits. La fréquence
d'émission est de 12 messages/seconde.
Calculer le taux d'utilisation de la liaison.
La liaison étant de mauvaise qualité, le taux d'erreur par bit (noté p) est compris entre 0,01 et 0,001. p
réprésente la probabilité qu'un bit soit mal reçu.
Calculer en fonction de p la probabilité qu'un message soit mal reçu. On suppose que les altérations des bits sont indépendantes.
8
On suppose que l'émetteur sait quand un message est mal reçu et qu'il le retransmet.
Calculer en fonction de p le nombre moyen de transmissions. Est-il possible de respecter (en négligeant le temps écoulé entre 2 retransmissions) la fréquence d'émission de 12 messages/seconde ?
Exercice 4 : Codes polynômiaux
On considère le code polynomial sur 14 bits généré par le polynôme G(x)=x4 + x + 1 Rappeler le principe des codes polynômiaux. Quel est le nombre de bits de redondance qui seront ajoutés par G ? Quelle est la taille des mots initiaux ? Ce code permet de détecter quels types d'erreurs ?
On veut calculer les bits de redondance du mot M=1101011011
Donner D(x), le polynôme correspondant à M. Calculer R(x), le reste de la division euclidienne de D(x).x4 par G(x). En déduire la valeur des bits de redondance.
Les bits de redondances sont en général fabriqués par un dispositif matériel assez simple, utilisant des
portes logiques et des registres à décalage.
Pour cet exemple, le circuit a le schéma suivant :
Publicité
R3
R2
R1
ou-ex
R0
ou-ex
SORTIE
ENTREE
horloge
Le circuit recoit en entrée les bits du mot M (le bit de poid fort d'abord). Les registres R0 … R3 sont initialisés à zéro. Au 4ème coup d'horloge, ils ont tous reçu une valeur. Au 10ème coup, tous les bits de M ont été chargés. C'est pendant les 4 coups suivants que se fabriquent les bits de redondance.
Donner le contenu des registres pour chaque coup d'horloge.
Exercice 5 : Codes correcteurs d'erreurs
On suppose qu’un code pour coder des messages de trois bits est construit en utilisant les mots de codes de six bits, c'est-à-dire qu’aux trois bits de données à transmettre, on ajoute trois bits de redondance pour former des messages transmis de 6 bits :
9
Message à transmettre 000 100 010 110 001 101 011 111
Message transmis 000000 100110 010011 110101 001101 101011 011110 111000
1) Un destinataire reçoit le message 101111. Est ce un message correct ?
2) Un destinataire reçoit le message 101111. En utilisant ce code comme un code correcteur d’erreurs, par quel message doit il être corrigé (quel est le message transmis) ?
3) Dans un code qu’appelle t’on la distance du code ?
4) Le code étudié dans ce problème est un code linéaire. Dans un code linéaire la distance du code est égale au plus faible poids d’un message correct (ou encore à la distance qui sépare le message 0000….000 du message le plus proche). Quelle est la distance du code défini dans ce texte?
5) De combien d’erreurs un code de distance D est-il détecteur ? De combien d’erreurs ce code est-il correcteur ?
6) A partir des mots du code comment peut-on construire la matrice G (la matrice génératrice du code) ? Montrez que la matrice génératrice de ce code linéaire est la matrice G suivante ?
G =
1 0 0 1 1 0 0 1 0 0 1 1 0 0 1 1 0 1
7) Quelle est la matrice de contrôle de ce code linéaire ? Montrez au moyen de la matrice de contrôle que le message 100110 est correct et que le message 101111 est incorrect.
10
3• Niveau liaison (1) Programmation d'une fenêtre glissante
Exercice 1 : Les bienfaits de l'anticipation
Pour transmettre des messages entre deux stations A et B, on utilise un satellite situé à 36000 km de la terre. Les messages font 1000 bits et le débit de la liaison est de 50 Kb/s. On rappelle que le délai de propagation d'une onde électromagnétique dans l'espace est voisin de la vitesse de la lumière, soit 300000 km/s.
Quel est le temps de transmission d'un message de A vers B ?
On utilise une procédure dite d'attente réponse : A envoie un message vers B et attend que B acquitte
ce message pour en envoyer un autre. Le message d'aquitement fait 100 bits.
Calculer le débit effectif de la liaison et son taux d'utilisation.
Au vu des résultats précédents, on décide de faire de l'anticipation, c'est à dire que A peut envoyer K messages au maximum avant de recevoir l'acquitement du premier (il y a un message d'acquit par message émis).
Calculer la valeur de K qui maximise le taux d'utilisation.
Exercice 2 : Gestion des fenêtres
On désire programmer un protocole dont les qualités sont les suivantes :
- bidirectionnel,
- avec anticipation ,
- acquit positif porté par les trames,
- et tel que le récepteur n'accepte les messages qu'en séquence.
Question 1
A quelles conditions d'erreurs sur la liaison de données les spécifications précédentes 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 mécanisme de temporisation ?
Question 4
11
Rappeler le principe du contrôle de flux dans la liaison de données. A quoi sert- il?
Question 5
Rappeler brièvement pour les protocoles de liaison le principe de la gestion des fenêtres en émission
On suppose que chaque émetteur peut utiliser au maximum Maxseq+1 numéros de séquence différents
numérotés de 0 à Maxseq (numérotation en modulo Maxseq+1).
Expliquer pourquoi la taille de la fenêtre en émission doit rester inférieure à Max seq quand la taille de la fenêtre en réception vaut 1.
Mettre en évidence un cas d'ambiguïté.
Question 6
Quelle est la taille de la fenêtre en réception pour le protocole étudié ?
Exercice 3 : Fenêtre en Réception
On reprend le contexte de l'exercice 2.
Question 1
Rappeler brièvement pour les protocoles de liaison le principe de la gestion des fenêtres en réception
Question 2
On suppose toujours que chaque émetteur peut utiliser au maximum Maxseq+1 numéros de séquence
différents numérotés de 0 à Maxseq (numérotation en modulo Maxseq+1).
Expliquer pourquoi la taille maximum de la fenêtre en réception doit rester inférieure à (Maxseq+1 )/ 2.
Mettre en évidence un cas d'ambiguïté.
Indiquer pourquoi la taille de la fenêtre en réception ne peut être supérieure à la taille de la fenêtre en émission.
12
4• Niveau liaison (2) Protocoles de type HDLC
Exercice 1 : Protocole à trames HDLC (cas disymétrique)
Commenter l'échange ci-dessous.
Chaque trame est spécifiée par TYPE - N(s) - N(r) - P/F.
Ê
RR-0-P
SNRM
SNRM-P
RR-0-P
I-0-0
I-1-0
I-2-3-P
I-3-3
I-4-3-P
DM-F
silence
UA-F
I-0-0
I-1-0
I-2-1-F
RR-3-F
13
Suite de l'échange :
SNRM
RR-3-P
REJ-4
I-?-?
RR-?-P
????
RR-5-F
Ê
CMDR-F
I-?-?
I-?-?
I-?-?
I-?-?
I-?-?
I-?-?
I-?-?-F
RR-?-F
????
Commenter les échanges
Compléter les champs des différentes trames
14
Exercice 2 : Automate d'états pour un protocole de type HDLC
Sur le diagramme d'automate suivant on note N(S) le numéro de séquence d'une trame d'information et V(R) le numéro de la trame attendue en réception. Sur chaque transition sont portées une trame reçue conditionnant le franchissement (suivi de ?), une trame émise (suivi de !) et une condition booléenne (suivi de ?).
(I) ? (N(S)=V(R))? (RR) !
1
1
7
(RR) !
5
3 (I)? (N(S)=V(R))? (RR) !
6
(RNR) !
(REJ) !
(RNR) !
8
3
(I)? (N(S)°V(R)? (REJ) !
2
2
4
(I) ? (N(S)°V(R)? (REJ) !
Question 1
Que signifient les états 1, 2, 3 (symbolisés par des cercles) ?
Question 2
Que signifient les transitions 1, 2, …8 (symbolisées par des rectangles) ?
Question 3
Le protocole ne se comporte-t-il pas d’une façon surprenante du point de vue de l'état 3 ?
Proposer une modification de l’automate qui le rende plus cohérent.
Question 4
Est-ce que le protocole utilise toutes les posibilités d'HDLC pour le contrôle de flux ?
15
5• Ethernet
Exercice 1 :Ingénierie des réseaux Ethernet
Question 1 : réseau Ethernet 10 base T
Comment fonctionne un répéteur Ethernet 10 base T (un « hub ») ?
Comment fonctionne un commutateur Ethernet 10 base T (un «lan switch») ?
Quel est la différence de fonctionnement d'une carte ethernet en mode «Ethernet half duplex» et en mode «Ethernet full duplex» ?
On rappelle que la trame Ethernet est précédée de 8 octets de synchronisation («préambule»), que la trame comporte au moins 64 octets d'informations significatives et que l’intervalle de temps qui sépare deux trames successives est d'au moins 9.6µs. 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 interpréter cette annonce de performances ?
Question 2 : réseau "fast ethernet" (Ethernet 100 base T )
Quelles sont les principales similitudes entre le réseau Ethernet 10 base T et le réseau Ethernet 100 base TX ?
Et les principales différences ?
On rappelle que la taille minimum d'une trame Ethernet est de 64 octets. On suppose pour fixer les idées que la vitesse de propagation du signal dans le médium de communication ethernet est de 200000 km/s.
Quelle est la distance maximum théorique qui peut séparer deux stations dans un réseau Ethernet 100 base T partagé (à base de répéteurs) ?
Les distances effectivement recommandées sont de 90 mètres d'une station à un répéteur sur paires
UTP5 avec possibilité de monter en cascade deux répéteurs séparés par 5 mètres de câble.
Qu'est ce qui explique la différence entre la réponse à la question précédente et les valeurs effectives ?
Certains standards spécifient des distances possibles d'utilisation de 2 kilomètres avec des fibres
optiques.
A quel type d'Ethernet correspondent de tels standards ?
Question 3 : Ethernet gigabit
Supposons qu'une taille minimum de 64 octets soit retenue pour un réseau Ethernet gigabit partagé et
que la vitesse de propagation du signal soit de 200000km/s.
Publicité
Quelle est la distance maximum possible entre deux stations d'un réseau Ethernet gigabit ?
La norme a prévu de rallonger la taille minimum de trame en la multipliant par 8 soit 512 octets (4096
16
bits) au lieu de 46 octets.
Quelle est la distance possible entre deux stations du réseau ?
Exercice 2 : Etude d'un scénario de communication Ethernet
On considère un réseau local dont le partage de la voie est géré selon un algorithme CSMA/CD 1- persistant. La retransmission en cas de collision est effectuée selon l'algorithme du retard exponentiel binaire tronqué.
Ce réseau gère les transmissions entre 4 stations A, B, C et D.
Dans ce problème on utilise comme mesure de temps le "slot time". Les délais d'espacement intertrames ainsi que les durées de détection de voie libre sont négligés. Le temps de détection de collision est égal à 1 slot.
A l'instant t = 0 la station A acquiert la voie et commence à transmettre un message.
A l'instant t = 5 les stations B, C, et D recoivent une demande de transmission de message.
Puis, pendant toute la durée considérée dans l'exercice aucune autre demande de transmission n'est
soumise aux stations.
Tous ces messages sont de taille fixe et la durée de leur transmission est égale à 6 slots.
L'algorithme du retard binaire est implanté de la façon suivante :
Binary_backoff(attempts) begin
if attemps = 1 then
maxbackoff := 2
else
if attempts = 10 then
maxbackoff := backofflimit
else
endif
maxbackoff := maxbackoff * 2
endif delay := int (random * maxbackoff) Wait (delay * slot_time)
end
attempts est le nombre de tentatives pour accéder à la voie y compris celle en cours.
backoff_limit vaut 210
int est une fonction qui rend la valeur entière par défaut
random est un générateur de nombres aléatoires compris entre 0 et 1.
Dans l'exemple on considèrera que la fonction random rend successivement pour chaque station les
valeurs données par le tableau suivant :
Station
1er tirage
B
C
D
1/2
1/4
3/4
17
2e tirage
3e tirage
3/4
1/6
5/8
1/3
2/3
1/2
Question 1
Compléter 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 représenté par "A"
Un slot occupé par une collision est représenté par "X"
Un slot correspondant à une absence de transmission est représenté par "—"
t = 0
1 2 3 4 5 6 7 8 9 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 période allant de t = 0 à la fin de la transmission du dernier message.
18
6• Installation de réseaux Ethernet partagés
Lors du déploiement d'un réseau Ethernet partagé on doit se préoccuper de la topologie du réseau afin
de maintenir le diamètre de collision dans certaines limites.
Question 1
En Ethernet partagé qu'est ce qu'un domaine de collision? On caractérise le diamètre 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 partagée incluent:
- le type des segments Ethernet utilisés (coaxial 10 Base 5, paire torsadée 10 Base T, fibre optique 10
Base FL, …),
- la longueur des segments,
- la topologie d'ensemble des répéteurs et des segments.
Un réseau est correctement construit s’il respecte certaines règles concernant son domaine de collision. On peut utiliser la règle simple des 5 segments et 4 répéteurs au plus entre deux stations. A cette règle sont associées des précisions restrictives concernant les types et les tailles des segments mais les coefficients de sécurité appliqués sont importants. Dans certains cas cette règle s'avère insuffisante. Il est indispensable de faire un calcul précis, soit parce que le nombre de répéteurs et de segments est élevé (gros réseau), soit parce que la longueur des segments est importante (extension géographique grande).
La norme de base Ethernet IEEE 802.3 propose une méthode de calcul des délais de propagation très détaillée mais très complexe. Le groupe de travail sur les réseaux locaux IEEE 802.3 a proposé ensuite une méthode simplifiée mais néanmoins précise. Cette méthode, que nous allons étudier maintenant, est définie pour tous les réseaux Ethernet (10 Mb/s, 100 Mb/s, 1000 Mb/s).
On considère ici pour simplifier le cas des réseaux Ethernet à 10 Mb/s. Dans la méthode pour déterminer si un réseau est correctement construit, les calculs à réaliser expriment les délais en bits. En fait chaque bit transmis sur un réseau Ethernet étant associé à un certain délai de propagation au débit nominal considéré (ici 10 Mb/s), on considère qu'il y a équivalence entre mesurer un temps et mesurer un nombre de bits.
Comment a été définie la tranche canal ('slot time') ? Quelle est sa durée ?
Si l'on se base sur la durée de la tranche canal, quel est le nombre de bits qui permet de mesurer le diamètre de collision ?
Question 3
En fait la trame Ethernet 10 Mb/s comporte un préambule utilisable également dans la détection 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.
Dans le cas du réseau à 10 Mb/s si l'on réunit le préambule et la trame pour
19
définir la partie utilisable dans la détection des collisions, quel est le nombre de bits associé diamètre de collision ?
La norme recommande d'introduire une sécurité supplémentaire de 5 temps bit pour ne pas trop
s'approcher de la limite.
Quel est le résultat final?
Pour faire le calcul on doit tout d'abord déterminer le couple de stations connectées au réseau qui sont les plus éloignées (le pire des cas). On considère ensuite que ces stations sont interconnectées au moyen de répéteurs et de segments de trois types: un segment gauche, un ou plusieurs segments au centre et un segment droit. Pour chaque segment on fait apparaître sur le dessin qui suit, les câbles d'attachement (câbles 'drop') notés par un trait simple, les MAU (transmetteurs) représentés par une boite avec la lettre M et le médium noté par un double trait. Les segments sont connectés par des répéteurs représentés par une boîte avec la lettre R.
M
M
R
M
M
R
M
M
Segment gauche
N segments centre
Segment droit
Figure 1. Modèle d'interconnexion entre deux stations
Question 4
Rappeler brièvement les définitions des différents organes présents dans la chaîne de la figure ci-dessus : interface AUI, câble d'attachement (câble 'drop'), transmetteur MAU, médium, répéteur (‘hub’)
Question 5
Le tableau suivant représente pour les quatre types principaux de segments Ethernet (10 Base 5, 10 Base 2, 10 Base T, 10 Base FL) et pour le câble d'attachement les délais de propagation. En fait on y trouve :
- la longueur maximum en mètres,
- 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 considère nulle),
- le nombre de bits pour un segment de longueur maximum
Pour des longueurs intermédiaires entre valeur de base et valeur maximum, le nombre de bits est linéaire
en fonction de la longueur.
20
Segment gauche
Segment centre
Segment droit
Type
Lg Max
Base
Max
Base
Max
Base
Max
10 Base 5
500
11,75
55,05
46,5
89,8
169,5
212,8
10 Base 2
185
11,75
30,731
46,5
65,48
169,5
188,48
10 Base T
100
15,25
26,55
42
53,3
165
176,3
10Base FL
2000
12,25
212,25
33,5
233,5
156,5
356,5
Attachement AUI
48
0
4,88
0
4,88
0
4,88
Figure 2. Tableau des valeurs en nombre de bits
On remarque que les retards dus aux répéteurs n'apparaissent pas. Ils sont intégrés aux valeurs définies pour les segments (la valeur associée à un segment intègre dans le calcul réalisé par les IEEE tout ce qui concerne ce segment et ses répéteurs d’extrémité). Le cas des câbles d'attachement fait l’objet d’un traitement particulier. S'ils sont d’une longueur de base les retards pour ces câbles sont intégrés aux segments. S’il sont d’une longueur quelconque il faut rajouter une valeur comprise entre 0 (câble de base) et 4,88 bits (longueur de 48 mètres).
On remarque aussi sur le tableau que les valeurs ne sont pas les mêmes selon que le segment est à droite, au centre ou à gauche. Ceci est en relation avec la méthode employée pour intégrer les différents délais. Ces différences n'ont pas d'importance pour les segments centre et aussi pour le cas ou les segments extrémités sont les mêmes. Si les segments extrémités ne sont pas identiques, comme l'analyse du diamètre de collision doit concerner le cas le plus défavorable, il faut faire deux calculs en échangeant les segments extrémités.
Sur la figure ci-dessous on a représenté un réseau Ethernet assez simple mais assez étendu
géographiquement.
Répéteur (hub) fibre optique
10 Base FL
Publicité
1 Km
10 Base FL
10 Base FL
1,6 Km
1,9 Km
Figure 3. Exemple de topologie Ethernet partagée
Est ce que le réseau Ethernet de la figure précédente est correctement construit ?
Dessiner le modèle de l'interconnexion entre stations pour ce réseau dans le cas le plus défavorable.
Calculer le diamètre de collision et conclure.
21
On suppose que les transmetteurs optiques sont dans les stations et que les câbles d'attachement
AUI sont de longueur de base.
Question 6
On considère maintenant le réseau de la figure ci-dessous qui comporte cinq segments et quatre
répéteurs Ethernet.
Répéteur
Répéteur
10 Base T
100m
10 Base 5 500 m
M
M
M
M
10 Base FL 1,6 Km
10 Base 5 500 m
10 Base 2 185 m
M
M
Répéteur
Répéteur
Figure 4. Exemple de topologie Ethernet partagée
Est ce que le réseau Ethernet de la figure 4 est correctement construit ?
On supposera que si des longueurs de câble ne sont pas précisées on prend le pire des cas.
Question 7
Un autre problème se pose pour déployer correctement un réseau Ethernet, c'est de respecter le délai Inter trame de 9,6 microsecondes (‘Interframe Spacing’). Ce délai est indispensable pour permettre aux appareils Ethernet de séparer correctement les trames. On offre ainsi un délai 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 réponse différents ou qui effectuent une reconstruction du signal (comme les répéteurs) il en résulte un raccourcissement apparent de l'intervalle inter trame (baptisé en anglais 'Interframe Gap Shrinkage'). Si ce rétrécissement est trop grave, les trames successives ne sont plus distinguées et on perd des trames car les contrôleurs considèrent que deux trames successives n’en font qu’une. La norme définit que le délai inter trame peut être raccourci jusqu’à 4,7 microsecondes sans risque. Au delà on estime que le réseau est mal construit.
Pour évaluer le raccourcissement on découpe le réseau selon les mêmes règles que précédemment 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 définit les valeurs de raccourcissement du délai inter trame en bits.
Type de segment Coaxial Autre
Segment gauche 16 10,5
Segment milieu 11 8
Figure 5. Raccourcissement du délai inter-trame
22
Est ce que le réseau Ethernet de la figure 3 est correctement construit du point de vue du raccourcissement du délai inter trame ?
Même question avec le réseau de la figure 4
23
7• Routage dans les commutateurs de réseaux locaux
Un ingénieur réseau reprend l’administration d’une architecture de réseau local ou tout fonctionne en Ethernet. L'architecture est constituée de quatre commutateurs (‘lan switches’) numérotés 1 , 2 , 3 , 4 et de deux concentrateurs (‘hubs’) selon la figure suivante. Les commutateurs sont configurés en fonctionnement transparent avec l’algorithme de l’arbre couvrant (‘spanning tree’). Pour chaque appareil, ont été mentionnés les numéros des ports utilisés pour l’interconnexion. L'architecture mentionne aussi trois tronçons Ethernet servant de liaison entre commutateurs (lien 1, 2, 3) ainsi que quelques stations de travail. Pour chaque voie de communication Ethernet on a mentionné son débit soit 10Mb/s soit 100 Mb/s soit 1000 Mb/S.
Concentrateur 1 (hub)
1
10
A
7
8
10
10
C
100
1000
B
1
100 4
8
100
Lien 1
E
Commutateur 1 (switch)
100
1
6
8
100
D
Concentrateur2 (hub)
1
100
3
7
8
Commutateur 2 (switch)
Lien 2
1
100
4
7 8
100
Lien 3
Commutateur 3 (switch)
100
F
1
4
7
Commutateur 4 (switch)
24
Les ports des commutateurs qui sont utilisés, sont numérotés sur la figure. La consultation des
tables de configuration dans les commutateurs donne les informations suivantes :
Commutateur 1 (Adresse MAC 00:A0:D6:13:43:65 Priorité 8000)
Numéro du port Port 1
Port 4 Port 8
Adresse MAC du port
00:A0:D6:13:43:65
00:A0:D6:13:43:69
00:A0:D6:13:43:73
Priorité du port 8000 8000 8000
Commutateur 2 (Adresse MAC 00:A0:D6:14:37:E1 Priorité 8000)
Numéro du port
Adresse MAC du port
Priorité du port
Port 1
Port 3
Port 7 Port 8
00:A0:D6:14:37:E1
00:A0:D6:14:37:E4
00:A0:D6:14:37:E7
00:A0:D6:14:37:E8
8000 8000 8000 8000
Commutateur 3 (Adresse MAC 00:A0:D6:13:31:F6 Priorité 8000)
Numéro du port
Adresse MAC du port
Priorité du port
Port 1
Port 4
Port 7 Port 8
00:A0:D6:13:31:F6
00:A0:D6:13:31:F9
00:A0:D6:13:31:FC
00:A0:D6:13:31:FD
8000 8000 8000 8000
Commutateur 4 (Adresse MAC 00:A0:D6:09:18:12 Priorité 8000)
Numéro du port
Adresse MAC du port
Priorité du port
00:A0:D6:09:18:12
00:A0:D6:09:18:15
00:A0:D6:09:18:18
8000 8000 8000
Port 1
Port 4
Port 7
Question 1
Pour cette architecture, lorsque l’on fait fonctionner l’algorithme de l’arbre couvrant on élit un
commutateur racine (‘root switch’).
1.1) Qu’est ce qu’un commutateur racine ?
25
1.2) Comment est-il choisi ? 1.3) Quel est le commutateur qui est élu racine de l’arbre couvrant pour l’architecture donnée en exemple ?
Question 2
Pour chaque commutateur on élit un port racine (‘root port’).
2.1) Qu’est ce qu’un port racine ? 2.2) Comment est-il choisi ? 2.3) Quels sont pour les quatre commutateurs les ports racine ?
Question 3
Pour chaque tronçon de réseau local ou voie de communication on élit un port désigné.
3.1) Qu’est ce qu’un port désigné (‘designated port’) ? 3.2) Comment choisit-on un port désigné ? 3.3) Quels sont pour les différents tronçons les ports désignés?
Question 4 Après cette étude dessinez l’arbre couvrant construit automatiquement par l’algorithme de routage. Placez les commutateurs par niveaux en commençant par le commutateur racine, indiquez les ports racines par des cercles gris et les ports désignés par des carrés noirs, placez les stations ?
Question 5 Comment fonctionne la construction des tables de routage. La table de routage peut-elle être indépendante de l’arbre couvrant construit ? Pourquoi ?
Question 6 Quelle est la table de routage du commutateur 3 après une durée de fonctionnement suffisamment longue qui permet une connaissance complète du réseau et de son arbre couvrant ?
Question 7 Finalement ce réseau vous paraît-il bien construit. Si non que proposez vous pour en améliorer le fonctionnement ?
26
8• Gestion des adresses en IP
Exercice 1 : Adressage IPV4 de base (hiérarchisé à deux niveaux).
L’adressage IPV4 a été créé dans sa version de base en distinguant trois classes d’adresses associées à
trois classes de réseaux notés A, B et C.
1) Comment est notée l’adresse d’un hôte et l’adresse d’un réseau ?
2) Comment un ordinateur hôte ou un routeur reconnaissent-il qu’une adresse de destination appartient à l’une des classes ?
3) Quelle est la proportion relative du nombre d’adresses IPV4 affectées aux différentes classes A, B, C ? En déduire une conséquence si l’utilisation des adresses de classe A (ou B) est inefficace.
4) Quelle est l’opération effectuée sur une adresse de station pour déterminer son adresse de réseau ?
5) Comment l’adresse d’un hôte destinataire est elle utilisée pour le routage ?
On vient de voir que les conventions d’adressage de base IPV4 permettent implicitement la détermination de l’appartenance d’une adresse à l’une des classes A, B, C ainsi que celle de l’adresse du réseau auquel il appartient. Bien que cela ne soit pas nécessaire on souhaite maintenant pour toute adresse IP rendre explicite l’adresse de son réseau d’appar