Vous êtes sur la page 1sur 294

Transmissions de donnes

et rseaux informatiques
2
Services et Rseaux
Chapitres 11 22

Version 5.0
Juillet 2016
Alain Bron

1 / 289
Services et rseaux 5.0 Alain Bron

TABLE DES MATIERES


11. ETHERNET ET LES COUCHES PHYSIQUES ........................................................................................ 1
11.1 HDLC ET SES DRIVS .......................................................................................................................... 1
11.2 ETHERNET............................................................................................................................................. 3
11.2.1 Les sous-couches MAC et LLC ................................................................................................... 3
11.2.2 Technologie Ethernet. .................................................................................................................. 5
11.2.3 Les trames Ethernet. ................................................................................................................... 5
11.2.4 Contraintes physiques d'Ethernet. ............................................................................................... 9
11.2.5 Accs au mdia ......................................................................................................................... 11
11.2.6 Distribution des trames Ethernet ............................................................................................... 11
11.2.7 CRC, erreurs et collisions. ......................................................................................................... 12
11.2.8 Les diffrentes versions d'Ethernet. .......................................................................................... 13
11.2.9 Du point de vue de lvolution des technologies. ...................................................................... 21
11.3 LE PRINCIPE DU PONT TRANSPARENT (BRIDGE)...................................................................................... 22
11.3.1 Spanning Tree ........................................................................................................................... 24
11.4 LE MATRIEL RSEAU (ETHERNET) ....................................................................................................... 27
11.4.1 Les cartes rseau - Network Interface Cards (NIC) .................................................................. 27
11.4.2 Les concentrateurs hubs ........................................................................................................ 28
11.4.3 Les bridges les ponts .............................................................................................................. 31
11.4.4 Les commutateurs - switchs ...................................................................................................... 32
11.4.5 Les gateway - routeurs .............................................................................................................. 36
11.4.6 Les switch-routeurs commutateurs de niveau 3 ..................................................................... 38
11.5 ARCHITECTURES CLASSIQUES DE RSEAUX ........................................................................................... 38
11.6 LES VLAN .......................................................................................................................................... 41
11.6.1 Niveaux de VLAN ...................................................................................................................... 43
11.6.2 Connexion d'un nud sur un rseau de VLAN ......................................................................... 45
11.6.3 Usage des VLAN ....................................................................................................................... 47
11.7 WLAN - W IFI....................................................................................................................................... 48
11.7.1 Gnralits................................................................................................................................. 48
11.7.2 Les diffrentes topologies .......................................................................................................... 49
11.7.3 Paramtres de base du rseau Wifi .......................................................................................... 51
11.7.4 Roaming..................................................................................................................................... 54
11.7.5 Mcanismes de base ................................................................................................................. 54
11.7.6 Les antennes ............................................................................................................................. 56
11.7.7 Problmatiques lies aux ondes radios. .................................................................................... 59
11.7.8 Bilan des gains .......................................................................................................................... 62
11.7.9 Wifi et la scurit ....................................................................................................................... 63
12. LE PROTOCOLE IP ................................................................................................................................ 68
12.1 LHISTOIRE DE TCP/IP ......................................................................................................................... 72
12.1.1 La gouvernance dInternet (et de IP) et les RFCs ..................................................................... 73
12.1.2 Larchitecture dInternet ............................................................................................................. 74
12.2 LE PROTOCOLE IP SUR ETHERNET........................................................................................................ 76
12.3 LE FORMAT DU PAQUET IP .................................................................................................................... 76
12.3.1 Len-tte IP................................................................................................................................. 77
12.3.2 Fragmentation des datagrammes IP ......................................................................................... 79
12.3.3 Problmes lis la fragmentation ............................................................................................. 82
12.3.4 PMTUd ....................................................................................................................................... 83
12.3.5 Problmes lis PMTUd ........................................................................................................... 84
12.3.6 Champ ToS : La qualit de service (QoS) ................................................................................. 85
12.3.7 Les champs Header length et total length ................................................................................. 92
12.3.8 Le champ TTL ............................................................................................................................ 93
12.3.9 Le champ Protocole ................................................................................................................... 93
12.3.10 Le champ Header Checksum .................................................................................................. 94
12.3.11 Le champ Options den-tte..................................................................................................... 95
12.4 LADRESSAGE IP.................................................................................................................................. 96
12.4.1 Les classes dadresses.............................................................................................................. 96
12.4.2 Routeur IP .................................................................................................................................. 99
12.4.3 Les adresses prives et publiques. ........................................................................................... 99

2 / 289
Services et rseaux 5.0 Alain Bron

12.4.4 Les adresses de type broadcast et multicast. ........................................................................... 99


12.4.5 Masques et sous-rseaux........................................................................................................ 100
12.4.6 IP classless .............................................................................................................................. 106
12.4.7 Agrgation de routes et surnetting .......................................................................................... 106
12.4.8 Risque de chevauchement dadresses. ................................................................................... 109
12.4.9 VLSM ....................................................................................................................................... 110
12.5 ARP ................................................................................................................................................. 112
12.5.1 ARP avec routeur .................................................................................................................... 115
12.5.2 Proxy-ARP ............................................................................................................................... 115
12.5.3 Gratuitous ARP et scurit ...................................................................................................... 119
13. LE PROTOCOLE TCP .......................................................................................................................... 120
13.1 LES NUMROS DE PORT ..................................................................................................................... 121
13.2 L'EN-TTE TCP ................................................................................................................................. 123
13.3 ENCAPSULATION TCP........................................................................................................................ 125
13.4 L'TABLISSEMENT DUNE CONNEXION TCP .......................................................................................... 126
13.5 FERMETURE DUNE CONNEXION TCP .................................................................................................. 127
13.5.1 Etats de lautomate TCP .......................................................................................................... 128
13.6 LES NUMROS DE SQUENCE ............................................................................................................. 130
13.6.1 Acquittements .......................................................................................................................... 131
13.6.2 TCP Keepalive ......................................................................................................................... 131
13.7 FENTRE COULISSANTE ET CONTRLE DE FLUX ................................................................................... 131
13.7.1 Principe de la fentre coulissante ............................................................................................ 131
13.7.2 Principe du contrle de flux ..................................................................................................... 132
13.8 CONTRLE DE CONGESTION. .............................................................................................................. 135
13.8.1 Slow start ................................................................................................................................. 135
13.8.2 Congestion Avoidance ............................................................................................................. 137
13.8.3 Fast Retransmit ....................................................................................................................... 138
13.8.4 Fast Recovery .......................................................................................................................... 138
13.9 OPTIONS TCP ................................................................................................................................... 139
13.9.1 Option MSS - Maximum Segment Size ................................................................................... 140
13.9.2 Option SACK - Selective Acknowledgment ............................................................................. 140
13.9.3 Option WSOPT ........................................................................................................................ 142
13.9.4 Option Time Stamp .................................................................................................................. 144
13.10 PROGRAMMATION PAR SOCKETS. ..................................................................................................... 145
14. LE PROTOCOLE UDP.......................................................................................................................... 147
14.1 CAS DUTILISATION DUDP ................................................................................................................. 148
15. LE PROTOCOLE ICMP ........................................................................................................................ 149
15.1 LEN-TTE ICMP ............................................................................................................................... 149
15.2 EXEMPLES DE MESSAGES ICMP ......................................................................................................... 151
15.2.1 ICMP echo-request et echo-respons (8,0 et 0,0) .................................................................... 151
15.2.2 ICMP TTL Exceeded (11,0) ..................................................................................................... 152
15.2.3 ICMP Host unreacheable (3,1) ................................................................................................ 155
15.2.4 ICMP Fragmentation needed (3,4) .......................................................................................... 156
15.2.5 ICMP Redirection (5,n) ............................................................................................................ 156
16. LE PROTOCOLE HTTP ........................................................................................................................ 160
16.1 FORMAT DES MESSAGES HTTP .......................................................................................................... 161
16.1.1 Len-tte HTTP ........................................................................................................................ 161
16.2 HTTPS ............................................................................................................................................. 164
17. SSL/TLS ................................................................................................................................................ 165
17.1 TLS HANDSHAKE............................................................................................................................... 166
18. MULTICASTING ................................................................................................................................... 169
18.1 LES ADRESSES MULTICAST ................................................................................................................. 171
18.1.1 Espaces administratifs ............................................................................................................. 173
18.1.2 Conversion multicast IP et multicast Ethernet ......................................................................... 173

3 / 289
Services et rseaux 5.0 Alain Bron

18.2 PROTOCOLE IGMP ............................................................................................................................ 176


18.2.1 Len-tte IGMP ......................................................................................................................... 176
18.2.2 Les types de messages IGMP v2 ............................................................................................ 177
18.2.3 Mcanisme dabonnement et rle des routeurs multicast ....................................................... 178
18.3 FLUX MULTICAST ENTRE ROUTEURS .................................................................................................... 181
18.3.1 Chemins multicast ................................................................................................................... 181
18.3.2 Protocol-Independent Multicast - PIM ..................................................................................... 184
18.4 PROTOCOLE SAP .............................................................................................................................. 185
18.5 PERFORMANCES ET MCANISMES DACQUITTEMENT. ........................................................................... 186
18.6 REAL-TIME TRANSPORT PROTOCOL - RTP ......................................................................................... 187
18.7 LE CAS DES COMMUTATEURS ETHERNET............................................................................................. 189
18.7.1 IGMP-snooping ........................................................................................................................ 191
18.7.2 CGMP ...................................................................................................................................... 191
19. SERVICES DE CONFIGURATION DYNAMIQUE. ............................................................................... 192
19.1 RARP............................................................................................................................................... 192
19.2 BOOTP.............................................................................................................................................. 192
19.2.1 Format dun message BootP. .................................................................................................. 193
19.2.2 Mcanismes BootP. ................................................................................................................. 194
19.3 DHCP .............................................................................................................................................. 197
19.3.1 Mode dattribution des adresses IP ......................................................................................... 197
19.3.2 Format dun message DHCP ................................................................................................... 198
19.3.3 Mcanismes DHCP ................................................................................................................. 201
19.3.4 IPv4LL ou APIPA ..................................................................................................................... 211
19.3.5 Topologie DHCP ...................................................................................................................... 211
19.4 DHCP ET SCURIT. ......................................................................................................................... 212
19.5 PXE ................................................................................................................................................. 212
20. SERVICES DE NOM DNS .................................................................................................................... 216
20.1 SERVICE DE NOM SOUS IP .................................................................................................................. 216
20.1.1 Fichier hosts............................................................................................................................. 217
20.1.2 Serveurs de nom DNS - principes ......................................................................................... 218
20.1.3 Rles et fonctions des serveurs DNS ...................................................................................... 220
20.1.4 Serveur racines ........................................................................................................................ 221
20.1.5 Contenu des tables DNS ......................................................................................................... 223
20.1.6 RR SRV et Active Directory ..................................................................................................... 227
20.1.7 UDP vs TCP............................................................................................................................. 228
20.2 REQUTES DNS ................................................................................................................................ 229
20.2.1 Outils ........................................................................................................................................ 239
20.3 DDNS ............................................................................................................................................... 239
20.3.1 Microsoft dDNS ........................................................................................................................ 240
20.4 MDNS............................................................................................................................................... 241
20.5 SCURIT ......................................................................................................................................... 241
20.6 QUELLE NOMENCLATURE ADOPTER ? .................................................................................................. 242
21. LE ROUTAGE ....................................................................................................................................... 244
21.1 TABLE DE ROUTAGE ........................................................................................................................... 246
21.2 ROUTAGE STATIQUE .......................................................................................................................... 248
21.3 ROUTAGE DYNAMIQUE ....................................................................................................................... 250
21.4 RIP................................................................................................................................................... 251
21.4.1 Transmission des informations de routage sous RIP. ............................................................. 252
21.5 EIGRP ............................................................................................................................................. 253
21.6 OSPF ............................................................................................................................................... 254
21.7 BGP ................................................................................................................................................. 254
21.8 RISQUE DE BOUCLE DE ROUTAGE ....................................................................................................... 258
21.9 MIXIT DE PROTOCOLES DE ROUTAGES............................................................................................... 258
21.10 UN RSEAU DE ROUTEURS ? ............................................................................................................ 259
21.11 ROUTAGE ET SCURIT .................................................................................................................... 259
21.12 ROUTAGE INTER-VLAN.................................................................................................................... 259
21.13 ACHEMINEMENT DES PAQUETS ......................................................................................................... 260

4 / 289
Services et rseaux 5.0 Alain Bron

21.14 FILTRAGE ........................................................................................................................................ 260


21.15 QOS ............................................................................................................................................... 261
22. IPV6 ....................................................................................................................................................... 263
22.1 LES NOUVEAUTS ESSENTIELLES ........................................................................................................ 264
22.2 EN-TTE IPV6 ................................................................................................................................... 264
22.2.1 Extensions (ou en-ttes optionnels) ........................................................................................ 266
22.2.2 Exemple dextensions chaines .............................................................................................. 267
22.3 L'ADRESSAGE IPV6 ............................................................................................................................ 268
22.3.1 Masque de rseaux et sous-rseaux. ..................................................................................... 268
22.3.2 Diffrentes portes et types d'adresses .................................................................................. 269
22.3.3 Adressage de Lien local .......................................................................................................... 270
22.3.4 Adressage de Site local ........................................................................................................... 270
22.3.5 Adressage Global Unicast. ...................................................................................................... 271
22.3.6 Structure gnrale d'une adresse IPv6 Global Unicast ........................................................... 272
22.4 COHABITATION ENTRE IPV6 ET IPV4 ................................................................................................... 274
22.4.1 Tunnels 6to4 et 6in4 ................................................................................................................ 274
22.4.2 Double pile ............................................................................................................................... 275
22.4.3 Unicast, anycast et multicast. .................................................................................................. 276
22.5 CONFIGURATION DES ADRESSES IPV6 DINTERFACE ............................................................................ 277
22.5.1 Configuration manuelle. ........................................................................................................... 278
22.5.2 Mode auto-configuration sans tat (stateless)......................................................................... 278
22.5.3 Mode auto-configuration avec tat (stateful). .......................................................................... 279
22.5.4 Dure de vie des adresses. ..................................................................................................... 279
22.6 ICMPV6 ............................................................................................................................................ 280
22.6.1 Neighbor Discovery Protocol (NDP) ........................................................................................ 281
22.7 UPD / TCP ....................................................................................................................................... 283
22.8 MOBILIT .......................................................................................................................................... 283
22.9 DNSV6 ............................................................................................................................................. 286
22.10 DHCPV6 ........................................................................................................................................ 286
22.11 ROUTAGE ........................................................................................................................................ 287
22.12 NAT V6........................................................................................................................................... 287
22.13 COMPARAISON IPV4 ET IPV6 ........................................................................................................... 288

5 / 289
11. Ethernet et les couches Physiques
Comme montr aux chapitres prcdents, le modle OSI dfinit un systme de
communication 7 couches, les techniques de traitement du signal permettent de
transmettre de l'information binaire sur une ligne de communication et les mthodes d'accs
permettent aux nuds du rseau d'accder de manire ordonne au mdia et au rseau.

Les couches physiques d'un protocole de communication permettent l'accs au mdia et


spcifient les caractristiques lectriques (niveaux de tension, en cas de transmission sur du
cuivre, par exemple) ou optique (pour de la fibre optique), le codage utilis et le type de
connectique (Manchester Bi-phas, prises RJ-45, par exemple), l'adressage (nombre de bits
utiliss), les ventuelles corrections d'erreurs, la mthode d'accs au mdia, etc.

Il convient de diffrencier la couche physique, qui d'un point de vue strictement OSI est la couche
numro 1, des technologies qui sont communment galement appeles physiques et qui
implmentent, de fait, les couches OSI 1 et 2.
C'est cette deuxime dfinition que nous utiliserons dans ce chapitre.

11.1 HDLC et ses drivs


Le protocole HDLC (High Level Data Link Control), lui-mme driv du protocole SDLC d'IBM, a
t le premier protocole d'encapsulation de donnes tre normalis par l'ISO, en 1976.
HDLC peut tre considr comme lanctre des protocoles modernes, notamment la base de
technologies telles que LAP-B (Link Access Procedure Balanced), PPP (Point to Point Protocol)
ou LLC (Logical Link Control) par exemple, et la trame HDLC reprsente l'archtype de toutes
trames dfinies ultrieurement.

A l'oppos des protocoles existants jusqu'alors, qui attendaient la confirmation de bonne


rception de chacun de leur envoi, HDLC est capable de confirmer la rception de plusieurs
envois la fois, ce qui amliore son efficacit.

HDLC, essentiellement destin aux liaisons point point, fonctionne au niveau 2 du modle OSI
et s'assure que les messages (trames) soient reus sans erreur, l'aide d'un CRC, et le cas
chant dtruit le paquet en erreur et demande une nouvelle transmission l'metteur.
HDLC s'occupe galement de contrler le flux de l'information, afin que le rcepteur ne soit pas
submerg de donnes qu'il ne pourrait pas traiter suffisamment rapidement.

Figure 11.1
Format dun message (trame) HDLC.

Les messages HDLC sont structurs en champs dont la taille peut varier.

Le message dbute par un flag (drapeau), servant dlimiter et annoncer larrive du paquet.
Un tel flag termine galement le paquet.
Dans la norme HDLC, ce flag vaut 1 Byte et prend la valeur de 01111110

1 / 289
Services et rseaux 5.0 Alain Bron

Afin d'tre certain que cette squence ne puisse pas se retrouver dans le champ Donnes, par exemple,
et ainsi induire en erreur le rcepteur, la technique de l'insertion de 0 est utilise.
Aprs chaque srie de cinq '1' conscutifs, un '0' est insr dans la suite de donnes. Ds que le
rcepteur reoit une suite de cinq '1' suivi d'un '0', il supprime ce dernier pour retrouver la suite initiale de
donnes.

Le champ Adresse, gnralement galement cod sur 1 Byte, permet d'identifier l'metteur ou le
rcepteur, dans une liaison point point ou multipoint.

Le champ Contrle donne des informations sur la trame elle-mme en spcifiant le rle de
trame:

Trame d'information (I), qui contiennent des donnes.


Trame de supervision (S), qui permettent le contrle de flux et la gestion des erreurs.
Trame non-numrote (U), qui permettent d'initialiser et de terminer une liaison entre deux nuds.

Le champ Contrle contient galement des informations sur le numro de squence de la trame,
dans le cas d'une trame dinformation I.

Le champ Donnes contient les donnes 'utiles' (payload) en provenance des couches
suprieures.

Le champ CRC reprsente le champ de contrle de la trame et est calcul sans intgrer les
flags.

2 / 289
Services et rseaux 5.0 Alain Bron

11.2 Ethernet
En 1980, l'IEEE se donna comme objectif, sous le nom de "projet 802" (car initi en fvrier
1980), de dfinir des standards pour les rseaux locaux d'information, alors en plein
dveloppement chez plusieurs fabricants. Les diffrents groupes de travail publirent de
nombreuses normes et recommandations, connues sous le nom de 802...., qui constituent
aujourd'hui encore la base des rseaux informatiques.

Dvelopp par les socits Digital, Intel et Xerox en 1976, Ethernet fut normalis par l'IEEE ds
1980 sous la norme IEEE 802.3.
A l'heure actuelle, Ethernet est la technologie la plus rpandue dans les rseaux locaux, voire
mme dans les rseaux mtropolitains, avec l'arrive des standards Ethernet haut dbit et des
lasers longue distance pour les quipements pour fibres optiques.

Les normes IEEE 802 concernent les niveaux 1 (couche physique) et 2 (couche liaison) du
modle OSI.
Comme le modle OSI a t formalis aprs le protocole Ethernet/802, la correspondance entre
ces deux normes n'est pas rigoureuse.

11.2.1 Les sous-couches MAC et LLC


Les groupes de travail ayant dfini les standards 802 ont dfini deux sous-entits, ayant chacune
une fonction particulire (selon le principe qu'il est plus simple de dcomposer un gros problme
en plusieurs petits, plutt que d'essayer de le rsoudre d'un coup) :

Les sous-couches MAC (Media Access Control), normalises par diffrents groupes de
travail (802.3, 802,5, 802.11, etc.)
La sous-couche LLC (Logical Link Control), normalise par un groupe de travail
spcifique (802.2).

Figure 11.2
Comparaison du modle OSI et de la norme IEEE 802.

La sous-couche MAC assure la transmission des donnes de et vers le MAU (Media Access
Unit, l'interface lectronique vers le mdia : carte rseau avec prise RJ-45, par exemple).

3 / 289
Services et rseaux 5.0 Alain Bron

Cette sous-couche MAC est donc dpendante du mdia et du type de rseau.

Plusieurs mthodes d'accs ont t normalises : le standard IEEE 802.3, utilisant CSMA/CD pour le
monde Ethernet, les standards en anneau jeton (IEEE 802.4 et 802.5) pour la technologie Token Ring
et plus rcemment les standards IEEE 802.11 utilisant CSMA/CA dans le monde sans fils, par exemple.

Cette sous-couche MAC est responsable de la dlimitation des trames ( l'aide de flags) et de la
dtection d'erreurs ( l'aide des CRC). Elle est galement responsable de grer l'accs physique
au rseau en communiquant directement avec les composants lectroniques permettant l'envoi
du signal sur le mdia.
C'est donc la sous-couche MAC qui construit la trame et l'envoie sur le rseau.

La sous-couche LLC (standard IEEE 802.2) a t dfinie pour fournir un lien entre la couche
rseau (par exemple IP) et la sous-couche MAC, selon le principe de l'encapsulation, tout en
proposant des services additionnels tels que le mode connect et la reprise en cas derreur.
La sous-couche LLC est commune diffrents types de rseau et n'est pas dpendante du
mdia.

LLC fonctionne comme une couche dabstraction permettant aux protocoles de niveau 3 de
communiquer indpendamment de la sous-couche MAC.

Le groupe 802.2 a prvu trois niveaux d'implmentation de la sous-couche LLC, en fonction des
services fournis :

LLC1 sans connexion et sans reprise d'erreurs


(utilis par le protocole IP)
LLC2 oriente connexion, et bnficiant d'une technique de fentrage pour le contrle de flux
(utilis par exemple par NetBeui, IPX, SNA)
LLC3 sans connexion mais avec un systme de contrle d'erreur / acquittement
(pour les rseaux industriels)

La sous-couche LLC de niveau 2, oriente connexion, s'occupe de l'acquittement des trames, de la


reprise en cas d'erreurs, de l'tablissement et de la rupture de la liaison logique et du contrle du flux
des donnes.

Afin de dterminer le type de couche rseau ayant envoy un paquet sur le mdia et de pouvoir
ainsi le distribuer, lors de sa rception, la bonne la couche homonyme, un numro de SAP
(Service Access Point1, normalis par lIEEE) est inclus dans la trame LLC.

Ainsi, les trames LLC peuvent vhiculer diffrents types de protocoles rseau (niveau 3 OSI), vitant par
l-mme de devoir dfinir autant de sous-couche LLC qu'il pourrait y avoir de couches rseau.

En 1982, date laquelle a t labor l'IEEE 802.3, il existait plus de 150 types de SAP, et chaque
constructeur voulant dvelopper sa propre couche rseau devait obtenir, auprs de la socit Xerox, un
numro de SAP permettant son identification.

1 A ne pas confondre avec le Service Advertising Protocol, de Netware.

4 / 289
Services et rseaux 5.0 Alain Bron

Figure 11.3
Interaction entre sous-couches MAC, LLC et couches rseau.

11.2.2 Technologie Ethernet.


La technologie dveloppe par les socits Digital, Intel et Xerox ne prvoyait pas de fournir des
services tels que la retransmission ou le mode connect : Ethernet tait conu pour assurer
laccs au rseau, via CSMA/CD, et le transport, en mode diffusion, dun payload en mode best
effort , avec un simple contrle derreur, mais sans retransmission.

Le groupe 802.3 de lIEEE a dcid de normaliser lutilisation de la couche LLC dans la


technologie Ethernet.
Il en rsulte quun quipement Ethernet met en uvre deux standards IEEE : 802.3 (sous-
couche MAC) et 802.2 (sous-couche LLC).

Le protocole rseau utilisant Ethernet comme transport physique pourra ainsi bnficier de
diffrents services, en fonction du niveau LLC demand.

Ces diffrentes implmentations dEthernet impliquent lusage de diffrents formats de trames


Ethernet, en fonction des services demands.

11.2.3 Les trames Ethernet.


Le modle en couches implique que chaque couche encapsule les donnes en provenance de la
couche suprieure, y ajoute ses propres informations et passe ensuite le message la couche
suivante.

L'information que chaque couche ajoute au message doit donc tre normalise et est dfinie
dans les standards.
La norme fixe l'emplacement de chaque champ dans la trame, sa longueur en bits et sa
signification.

Il existe plusieurs types de trames Ethernet, les plus rpandues tant l'Ethernet II ou Ethernet v2
ou DIX Ethernet ou Legacy Ethernet ou encore Ethernet historique et l'Ethernet 802.3 et ses
drivs (Ethernet 802.2 ou Ethernet_SNAP).

5 / 289
Services et rseaux 5.0 Alain Bron

Figure 11.4
Trame Ethernet II et Ethernet 802.3 (dclinaisons Ethernet_802.2 et Ethernet_SNAP)

La longueur des trames Ethernet est limite 1'518 Bytes2 (ce qui fixe le MTU - Maximum
Transmit Unit Ethernet II 1'500 Bytes) et leur longueur minimale totale est de 64 Bytes, quel
que soit le type de trame utilis.

Figure 11.5
Capture dune trame Ethernet II.

2 sans le prambule; avec un en-tte de 18 Bytes (Ethernet II), de 21 Bytes (LLC) ou 26 Bytes (SNAP)

6 / 289
Services et rseaux 5.0 Alain Bron

Figure 11.6
Capture dune trame Ethernet 802.3 (dclinaison Ethernet_SNAP).

Mme si ces deux types de trames diffrent peu, elles sont bien sr incompatibles.
Des protocoles, tel que TCP/IP, utilisent gnralement des trames de type Ethernet II, alors que
des protocoles comme IPX peuvent utiliser indiffremment un type ou l'autre.

La trame dbute par 8 Bytes de synchronisation, aussi appels prambule.


Ce prambule sert annoncer le dbut de la trame, repr grce la squence de bits qui la
compose (101010101010..1011) et synchroniser l'horloge du rcepteur.

Le prambule est suivi des deux adresses Ethernet source et destination, de 6 Bytes chacune.
Ces deux adresses, appele galement adresses MAC (Medium Access Card, ne pas
confondre avec la couche du mme nom) ou adresses physiques, sont en principe uniques au
monde et codes directement dans l'lectronique de l'interface rseau (dans une ROM ou une
EPROM).
Chaque constructeur de matriel rseau possde sa propre plage d'adresses qu'il attribue ses
quipements.

Figure 11.7
Format d'une adresse MAC de 48 bits (bit le moins significatif gauche).

7 / 289
Services et rseaux 5.0 Alain Bron

Le bit le moins significatif du premier Byte de l'adresse permet de spcifier si la trame est
destine un ensemble de nuds du rseau (bit 1, multicast ou broadcast) ou une seule
destination (bit 0, unicast), savoir l'adresse figurant dans les 46 derniers bits.

Figure 11.8
Adresses multicast Ethernet.

Figure 11.9
Usages broadcast Ethernet.

Le deuxime bit le moins significatif (bit U/L) permet de prciser si l'adresse est unique, et
garantie comme telle (bit 0) ou si elle contrevient au principe d'unicit (bit 1) et qu'elle n'est
garantie unique que localement.

Les 22 bits suivants dpendent du constructeur de linterface Ethernet et lui sont ddis, alors
que les 24 derniers bits sont librement attribus par le constructeur, qui a la charge d'en garantir
l'unicit.
Une adresse o ne figure que des bits 1 est une adresse destine l'ensemble des membres
du rseau (formellement un broadcast). Si l'ensemble des bits est 0, l'adresse est considre
comme nulle.

Le champ Ethertype permet de spcifier le SAP en Ethernet II, alors que les champs Longueur
et LLC permettent, en plus de spcifier la longueur de la trame, de prciser le type de SAP sous
Ethernet 802.3.

Une trame Ethernet II fonctionne sans sous-couche LLC, le champ Ethertype permettant de prciser le
protocole transport (0x800 = IP, par exemple).

8 / 289
Services et rseaux 5.0 Alain Bron

Les 2 Bytes suivant ladresse MAC source peuvent ainsi avoir deux significations : Ethertype en Ethernet
II et Longueur en 802.3.
La longueur maximale dune trame Ethernet tant fix 1'518 Bytes (MTU=1500), toute valeur de ces 2
Bytes suprieure 1'518 (arrondi 0x600) reprsente un Ethertype, et toute valeur infrieure 1'518
une longueur.

Le champ Donnes est de longueur limite sous Ethernet_II (MTU=1'500 Bytes) et Ethernet
802.3 (MTU=1493 ou 1492, en fonction des champs LLC et SNAP)

Le champ de Remplissage (padding) permet de complter le champ Donnes et d'atteindre la


taille minimale requise de 64 Bytes.

Finalement, la trame est complte par le champ FCS (Frame Check Sequence), qui contient le
CRC de 32 bits calculs sur l'ensemble des bits suivant le prambule.

11.2.4 Contraintes physiques d'Ethernet.


Quelques calculs montrent les contraintes historiques inhrentes au standard Ethernet.

La vitesse de propagation du signal lectrique est de l'ordre de 0,77 C (avec C = vitesse de la


lumire dans le vide)3.

0,77 x 3 x 108 [m/s] = 230 000 [km/s] (2,3 108 m/s)

Avec un dbit 10 Mbits/s (107 bits/s), on dtermine qu'un bit occupe le mdia pendant
1/( 107) [s], soit 0,1 s (10-7 s):

1 bit = 0,1 s (10-7 s)

C'est ce qu'on appelle la dure d'un bit (Bit Time) ou BT.

Comme le signal se dplace 230 000 km/s, un bit parcours donc en 0,1 s:

2,3 x 108 x 10-7 = 23 m sur le mdia.

Typiquement, un instant donn T, le bit occupe donc 23 m sur le mdia. Sur un cble de 500 m
peuvent ainsi prendre place simultanment 500/23 = 22 bits, qui occuperont le cble pendant 22
x 10-7 = 2,2 s.

Figure 11.10
Position dun bit sur le mdia linstant T et T.

3 Ne pas confondre la vitesse, en m/s, qui reprsente la vitesse de dplacement du signal sur le mdia et le dbit, en b/s, qui
reprsente le nombre de bits transmis par seconde.

9 / 289
Services et rseaux 5.0 Alain Bron

Autrement dit, l'envoi de 22 bits au dbit de 10 Mb/s prendra 2,2 s et ceux-ci occuperont un
mdia de 500 m en son entier.

Figure 11.11
Position du train de bits 0,1s et 0,2 s.

La norme Ethernet fixe, de manire un peu empirique 4, le temps maximal admissible d'aller-
retour d'un signal (round trip delay) entre deux metteurs rcepteurs les plus loigns 46,4 s
(464 BT) :

2,3 x 108 x 46,4 x 10-6 = 10672 m, soit un rseau de 5336 m

( l'poque, sous-entendu sur un cble coaxial pais de type Thick-coax)

Pour des raisons d'attnuation, le signal doit tre rgnr tous les 500 mtres, car la dtection
de collisions ncessite de pouvoir clairement diffrencier un signal normal d'un signal issu de la
superposition de 2 signaux, c'est dire une collision (la superposition de 2 signaux affaiblis
pourrait avoir la mme nergie qu'un signal non affaibli).

Pour rgnrer le signal, on utilise des rpteurs qui induisent un retard d aux circuits lectriques.
Compte tenu de ce retard (et des performances de la technologie des annes 1980 !) la taille maximale
d'un rseau Ethernet a t fixe 2800 m au lieu de 5336 m.

La norme fixe galement la dure du signal de brouillage (JAM) une valeur comprise entre 3,2
et 4,8 s (32 48 BT).

Ainsi la norme Ethernet fixe le slot time (tranche canal) 51,2 s (46,4 + 4,8)

Pour tre sr de dtecter pertinemment les collisions, il faut que les messages mis 10 Mbits/s
aient une longueur suffisante pour que l'metteur soit encore en train de transmettre son train de
bits lors de la dtection d'une collision.

107 bit/s x 51,2 x 10-6 s = 512 bits, soit 64 Bytes (sans le prambule).

(Il s'agit donc du nombre de bits contenu dans un slot time, avec 1 bit dune dure de 0,1 s et un slot
time de 51.2 s).

La taille maximum d'une trame est fixe 1518 Bytes pour ne pas pnaliser les temps d'accs,
viter qu'un seul participant ne monopolise le rseau et limiter les mmoires tampons des
metteurs-rcepteurs.

4 Cette valeur est obtenue en considrant le 'worst case' de l'addition des diffrents temps de propagation intervenant pendant une
transmission (temps de propagation sur le cble, dans les quipements lectroniques, dlai de dtection des collisions etc.), en
fonction de la technologie des annes 80.

10 / 289
Services et rseaux 5.0 Alain Bron

11.2.5 Accs au mdia


Historiquement, Ethernet utilise le mcanisme CSMA/CD pour rgler l'accs au mdia partag,
fonctionnant sur le principe de la diffusion sur un bus.
Si un participant dsire mettre une trame et que le mdia est libre, il transmet ses donnes.
Si le mdia est occup, il attend qu'il se libre.

Comme un participant ne peut pas mettre lorsqu'il est en train de recevoir une trame, puisque le canal
est occup par les donnes reues, l'Ethernet historique fonctionne en mode half-duplex.

Dans le cas o deux participants mettent simultanment lorsque le mdia est libre, les trames
entrent en collision.
L'metteur retransmet alors ses donnes aprs un dlai alatoire. En cas de nouvelle collision, il
essaye nouveau en doublant le temps d'attente, et ceci jusqu' concurrence de 16 tentatives

Comme vu aux chapitres prcdents, la taille minimum d'une trame Ethernet doit tre de 512 bits pour
garantir la dtection dune collision.

L'Ethernet commut moderne en mode full-duplex s'affranchi de CSMA/CD : chaque participant


peut mettre tout moment.

11.2.6 Distribution des trames Ethernet


Une trame Ethernet contient un champ adresse Source (l'expditeur) et un champ adresse
Destination.

A chaque trame mise sur le rseau, la couche MAC (Media Access Control) ajoute aux donnes en
provenance des couches suprieures (LLC, etc.) ses propres champs d'information, dont les adresses
MAC sources et destinations.

Chaque participant au rseau est l'coute de celui-ci et est tenu de lire chaque adresse
destination des trames transitant sur le rseau.

Comme la topologie d'un rseau Ethernet est une topologie logique en bus (principe de la
diffusion), chaque participant au rseau voit 'dfiler' la totalit des trames diffuses sur le rseau.

Si l'adresse dbute par un bit '1', la trame doit tre lue par tous les participants au rseau
(adresse de diffusion gnrale, destine tous les participants au rseau), sans qu'ils aient
besoin de lire l'adresse en entier.
Si l'adresse dbute par un bit '0', il s'agit d'une adresse destine un seul participant (diffusion
dirige) et chacun d'entre eux doit alors lire l'adresse compltement afin de dterminer si le
message lui est adress (figure 11.12).

Le participant qui le message est destin lit l'entier de la trame, valide le contrle d'erreur,
dtermine la couche suprieure qui il est destin l'aide du SAP (ou Ethertype), lui transmet
les donnes, auxquelles les informations MAC auront t soustraites, puis se remet l'coute du
mdia.

Les autres participants, qui cette trame n'est pas destine, abandonnent la lecture de la trame
et restent l'coute du mdia5.

5A l'exception des interfaces rseau de machines particulires, tels que les analyseurs de rseau, qui peuvent fonctionner en mode
promiscuous, c'est dire lire l'entier des paquets transitant sur le rseau.

11 / 289
Services et rseaux 5.0 Alain Bron

Figure 11.12
Transmission d'une trame Ethernet.

Comme vu prcdemment, les 2 premiers bits de l'adresse MAC donnent des informations sur la nature
de l'adresse (de diffusion ou dirige, unique ou pas), les 22 bits suivant sont spcifiques un
constructeur, alors que les 24 derniers sont uniques et dfinis par le constructeur en question.

Afin qu'une communication de niveau Ethernet puisse se raliser (couches OSI 1 et 2), il faut
que les participants aient connaissance des adresses MAC de leurs correspondants.
Pratiquement, les communications en mode Ethernet pure sont rares : une couche
supplmentaire (couche rseau : niveau 3 OSI), mettant en place un adressage logique, plus
simple utiliser, est en gnral utilis. En effet, un tel systme d'adressage alatoire (les
adresses sont attribues par les fabricants et peuvent donc se retrouver rparties de par le
monde en fonction des commandes et des livraisons de matriel) devient vite trs inefficace si le
nombre de participants augmente.

11.2.7 CRC, erreurs et collisions.


La trame Ethernet est termine par un champ FCS (Frame Check Sequence), constitu d'un
CRC normalis (Cyclic Redundancy Check, chapitre 5) :

x32 + x26 + x23 + x22 + x16 + x12 + x11 + x10 + x8 + x7 + x5 + x4 + x2 + x + 1

A la rception de la trame, la couche MAC vrifie l'intgrit des donnes l'aide du CRC.
Si le rsultat du calcul du CRC donne 0, la trame est considre comme non altre et les
donnes sont transmises la couche suivante.
En cas derreur, la trame peut tre simplement dtruite (LLC1) ou retransmise (LLC2)

Diffrentes causes peuvent affecter une transmission : bruit sur la ligne (perturbations
lectromagntiques), quipements dfectueux gnrant des erreurs, collisions, boucles sur le
bus, etc.

Les symptmes les plus courants sont :

Un CRC faux affectant une trame conforme (bad FCS) : dans ce cas, une perturbation a
probablement altr la trame.

12 / 289
Services et rseaux 5.0 Alain Bron

Une trame trop courte (Runt, moins de 64 Bytes), rsultante d'une collision.

Une trame trop longue (Jabber, plus 1518 Bytes), gnre par exemple par un
quipement envoyant des donnes en continu sur le mdia ou due un dlai inter-trame
trop court provoquant la fusion de deux trames.

Une trame victime de dsalignement (Misaligned Frame, trame non divisible par 8, donc
non compose d'octets).

Des collisions, dues au processus normal de CSMA/CD (chapitre 9.3.1), une


dfectuosit sur le mdia (rflexions, par exemple) ou sur un lment lectronique du
rseau ou une surcharge du rseau.

Un taux de 1 collision pour 1000 trames est considr comme normal.


Une collision est dite tardive (late collision) si elle intervient sur un cble trop long
ou quip de trop de rpteurs.

En cas de boucle, les trames circulent indfiniment sur le rseau.

Une collision intervient lorsque deux participants au rseau mettent en mme temps leurs
donnes.

11.2.8 Les diffrentes versions d'Ethernet.


Le protocole Ethernet s'est dclin, au fil du temps, en plusieurs versions, bases sur une mise
en uvre de technologies de plus en plus performantes

10Base5 (Thick Ethernet), 802.3 original

Les premiers dveloppements d'Ethernet se sont bass sur le mdia le plus fiable de
l'poque (1980), un cble coaxial pais, appel Thick Coax (ou tuyau d'arrosage en
franais) en raison de son apparence.
Connu sous la dnomination 10Base5 (10 pour 10Mb/s, Base pour 'bande de base' et 5
pour 500 mtres, sa longueur maximale), ce cble de couleur en gnral jaune, avait
environ 5 cm de diamtre, tait peu flexible et ncessitait une intervention dlicate pour y
connecter des quipements informatiques.

Figure 11.13
Connecteur vampire "tap"(robinet) sur thick coax.

13 / 289
Services et rseaux 5.0 Alain Bron

La distance maximum d'un cble tait de 500 mtres et la distance entre connecteurs
vampires multiples de 2,5 mtres (pour viter les phnomnes d'ondes stationnaires). La
longueur maximale du cble AUI (Attachment Unit Interface), permettant de relier le
connecteur DB-15 (appel aussi connecteur AUI ou connecteur DIX) de l'quipement au
cble thick coax, tait quant elle fixe 50 mtres.

L'impdance tait de 50 et le cble devait tre lectriquement "termin" (bouchon).

Des cbles thick coax pouvaient tre relis entre eux l'aide d'quipements lectroniques
permettant de rgnrer le signal lectrique : les rpteurs (repeater).

Le nombre maximum de rpteurs tait de quatre, permettant de relier ainsi cinq segments
de cbles thick coax, pour une distance maximale de 2'500 mtres.
Seuls trois de ces segments pouvaient tre relis des quipements informatiques ; les
deux autres ne servaient qu' relier les cbles entre eux.

Le nombre maximum de stations relies ce rseau tait de 300 (100 par segment).
Du point de vue de la topologie logique, l'association de ces cinq cbles thick coax relis
par des rpteurs constitue un seul et unique bus (nous avons donc une topologie logique
en bus qui s'appuie sur une topologie physique galement en bus).

Outre les contraintes mcaniques dues la rigidit du cble, la dlicate opration


consistant perforer puis fixer le connecteur vampire au cble, il fallait encore veiller
effectuer une mise la terre soigne, afin d'viter des problmes de courant de terre.
Il est clair qu'une coupure du cble, donc du bus physique, donc du bus logique,
provoquait une panne sur l'entier du rseau.

10Base2 (Thin Ethernet, Cheapernet ou 802.3a)

Le Thick Ethernet a peu peu cd sa place au Thin Ethernet, utilisant un cble plus
souple, le Thin coax ou RG-58.
Connu sous la dnomination 10Base2 (10 pour 10Mb/s, Base pour 'bande de base' et 2
pour 200 mtres, sa longueur maximale (qui tait en fait de 185m)), ce cble avait
galement une impdance de 50 et devait tre "termin" (bouchon).

La distance entre quipements tait de 0,5 mtres au minimum, pour un nombre maximum
de 30 nuds par segment de 185 mtres.

On retrouvait les mmes rgles que celles appliques au Thick Ethernet:


Cinq segments de 185 mtres maximum, dont trois seulement pouvaient tre relis des
quipements informatiques, spars par quatre rpteurs.

La connexion des diffrents segments et des quipements informatiques tait ralise


l'aide de connecteurs en 'T', quips de broches baonnettes, appeles aussi BNC
(British Naval Connector !) et d'un cble de liaison de 2.5 mtres maximum.

14 / 289
Services et rseaux 5.0 Alain Bron

Figure 11.14
Connectique thin-coax.

Le cble Thin coax, plus souple, permettait ainsi de relier les diffrentes machines d'un
rseau en le faisant serpenter de bureaux en bureaux, ralisant par l-mme un bus
physique et logique.
La facilit de connexion amenait le risque soit d'ajouter des segments Thin coax au-del de
la limite des 185 mtres, soit de provoquer une chute d'impdance du cble en crant des
connexions en Y, ou encore de fabriquer une boucle.

Figure 11.15
Rseau thin-coax.

15 / 289
Services et rseaux 5.0 Alain Bron

10Broad36 (802.3b)

Une version 'broadband' (large bande) d'Ethernet a galement t mise au point sous la
dnomination de 10Broad36 (10 Mb/s, Broadband, 3'600 mtres), mais ne s'est jamais
impose, en raison de difficults techniques.

Une des spcificits de l'Ethernet broadband, sur cble coaxial 75 , tait de pouvoir
multiplexer les donnes sur plusieurs canaux et de pouvoir ainsi partager un mdia entre
plusieurs utilisateurs (transmission de donnes, tlvision, etc.)

10BaseT (802.3i)

Apparu en 1990, la norme 10BaseT (T pour Twisted Pair, paires torsades, en rfrence
au type de cblage utilis) a permis une nouvelle expansion du protocole Ethernet
permettant l'utilisation d'un cblage structur en toile de type tlphonique.
Plutt que de faire serpenter un unique cble de bureau en bureau, avec les risques que
cela comporte pour l'intgrit du bus physique, chaque quipement informatique du rseau
est reli grce un cblage pr-cbl, sur un lieu central et son armoire de brassage.
Des liaisons (renvois, ou patch cord) au niveau de l'armoire de brassage permettent de
relier ces quipements au rseau proprement dit.

La difficult tait de raliser des quipements lectroniques capables de gnrer des


signaux lectriques sur un cblage plus sensible aux interfrences que le cble coaxial
utilis jusqu'alors.

D'une part, le cblage de type tlphonique, constitu de simples fils de cuivre gains, a
d rpondre des normes de qualit (immunit aux diffrentes interfrences
lectromagntiques), d'autre part les lments lectroniques constituant ces nouveaux
quipements ont d gagner en sensibilit pour pouvoir tre capable de restituer les
donnes partir d'un signal de mauvaise qualit.

Le cblage, class en diffrentes catgories, peut tre blind (schielded: STP, Shielded
Twisted Pair) ou non-blind (unschielded: UTP, Unshielded Twisted Pair): un cblage
blind, l'aide d'une tresse mtallique entourant les paires de cuivre, assure une
meilleures immunit aux interfrences externes, mais est plus dlicat mettre en place,
notamment pour des raisons de mise la terre ( cause des effets de "courant de terre",
ou des effets "antenne").

Un cblage de catgorie 5 d'impdance de 100 , encore un des plus rpandus l'heure


actuelle, garanti une transmission 100Mb/s sur 100 mtres.

La connectique est assure par des prises RJ45 (Registered Jack, type 45) huit ples.
Chaque ple correspond un fil de cuivre.
Le cble comprend donc huit fils de cuivre, regroups en quatre paires, torsades entre
elles (Twisted Pair).

La norme 10BaseT ne prvoyant l'utilisation que de 2 paires, les paires 1 et 2, certains


cblages ne comprennent donc, pour des raisons de cot, que quatre fils.
Lors de l'existence d'un cblage 8 fils, il est ainsi possible d'utiliser les 2 paires restantes
pour une autre fonction que le transfert de donnes: le tlphone traditionnel sur les fils 4
et 5 et un systme de tlsurveillance sur les fils 7 et 8 par exemple.

16 / 289
Services et rseaux 5.0 Alain Bron

Figure 11.16
Cble UTP: paires 1 et 2 (fils 1,2 - 3, 6).

Un tel cblage ncessite ainsi au niveau de l'armoire de brassage o aboutissent les


cbles en paires torsades, l'installation d'quipements d'accueil sur le rseau
(concentrateurs ou commutateurs).

Ces quipements actifs (aliments en lectricit) de concentration des diffrents flux


Ethernet permettent de crer le bus logique indispensable au fonctionnement d'Ethernet
historique en mode partag.

Figure 11.17
Ethernet: bus logique sur bus physique et sur cblage en toile.

Lors de la connexion d'un quipement sur un rseau de type 10BaseT, il faut dterminer si
l'on a faire une connexion de type station (client) sur le rseau (un concentrateur qui
accueille les stations sur le rseau), de type station station directement ou de type
quipement d'accueil quipement d'accueil (liaisons point point de type null-LAN).

17 / 289
Services et rseaux 5.0 Alain Bron

Figure 11.18
Connexion RJ45 station (MDI) sur concentrateur (MDIX) et station sur station (null-LAN)
MDI(X)- Medium Dependent Interface / Medium Dependent Interface cross(X)over

Link beat

Un signal de validation de la connexion physique (le link beat - Normal Link Pulse -, ou
test d'intgrit de liaison) est mis par les quipements lorsque aucune trame nest
transmise, afin de valider le lien physique entre deux quipements.
Le link beat est transmis en mode simplex par chaque quipement qui ne valide ainsi quun
seul un sens de transmission. Le link beat dtect par lquipement distant lui permet de
considrer le lien comme actif (LED link allume).
Pour que la liaison soit considre comme potentiellement oprationnelle, les deux sens
de transmission doivent donc tre valids.
Le link beat tant un signal de type impulsion, il est moins sensible aux perturbations
quune trame Ethernet : cette seule validation de la liaison par le link beat ne garantit ainsi
pas que le lien soit compltement fonctionnel pour du trafic Ethernet.

A partir de la version Ethernet 100BaseT, le link (Fast Link Pulse) sert galement aux
quipements ngocier le dbit (10/100/1000) et le mode duplex (half/full) utiliser sur le
lien (autongociation).

10BaseFOIRL (802.3d)

Afin d'tendre le diamtre des rseaux Ethernet sur cblage structur, un nouveau
standard 10Mb/s, bas sur un mdia en fibre optique, est apparu au dbut des annes
90 : 10BaseFOIRL (Fiber Optic Inter Repeater Link).
Deux fibres optiques (une paire) sont ncessaires pour transmettre une information
bidirectionnelle : une pour la transmission et une pour la rception.

Outre l'avantage de pouvoir transmettre des donnes sur de plus longues distances sans
l'apport de rpteurs, potentiellement sujets des pannes, l'emploi de fibres optiques
permet de s'affranchir des contraintes lectromagntiques auxquelles sont soumis les

18 / 289
Services et rseaux 5.0 Alain Bron

cbles en cuivre, ainsi que des problmes toujours dlicats de mise la terre (notamment
entre deux btiments).

La fibre utilise est de type multimodes, moins cher que la fibre optique monomode, de
62,5/125 m et quipe de connecteurs ST.
D'autres standards pour de l'Ethernet 10Mb/s sur fibres optiques ont t dvelopps
(10BaseFL, 10BaseFB), mais ne se sont jamais vraiment imposs.

100BaseT (FastEthernet, 802.3u)

Le besoin accru en dbit a favoris le dveloppement d'un standard Ethernet 100Mb/s,


apparu en 1995.

Tout d'abord prvu pour prendre place au cur du rseau, donc sur de la fibre optique
(100BaseFX), lEthernet rapide a rapidement volu pour pouvoir utiliser le cblage
universel de catgorie 5, certifi pour 100Mb/s, en utilisant les mmes fils 1,2 3 et 6 que le
10BaseT.

Afin datteindre un dbit plus lev sans ncessiter une bande-passante dcuple, le codage de
ligne MLT-3, accompagn par un pr-codage 4B5B, a remplac le code Manchester.

Connu sous le nom de 100BaseTX ou FastEthernet, sa normalisation a t le fruit d'une


pre lutte entre constructeurs voulant imposer leurs propres standards issus de leurs
laboratoires (le standard 100BaseVG-Anylan, utilisant les quatre paires disponibles du
cble catgorie 5, a par exemple t abandonn).

Les principes d'Ethernet 10BaseT ont t repris en leur intgralit, ce qui permet une
cohabitation facile entre ces deux standards, la plupart des quipements pouvant
gnralement tre indiffremment connects 10Mb/s ou 100Mb/s sur le rseau.

Hormis le dbit suprieur de ce nouveau standard, 100BaseT amne la possibilit


d'effectuer une liaison entre deux quipements en mode full-duplex, et cela grce
l'avnement parallle des commutateurs Ethernet (Switch).

Alors que le standard 10BaseT fonctionne en half-duplex, la norme 100BaseT permet la


transmission et la rception simultane de donnes, pour autant que chacun des
quipements relis en point point supportent cette nouvelle fonctionnalit (des
quipements d'accueil de type commutateur ou switch), pour un dbit thorique qui est
donc de 200Mb/s.

Le mode full-duplex s'affranchit donc ainsi du principe de CSMA/CD (couter et


transmettre), puisqu'il est possible de transmettre des donnes tout en en recevant,
chaque liaison station-quipement d'accueil formant elle seule un segment physique
(donc transmission sur une paire (Tx) et rception sur lautre paire (Rx)).

Le mcanisme de contrle de flux 802.3x permet la gestion du flux entre le nud et le


commutateur (trame PAUSE: multicast 01-80-C2-00-00-01, Ethertype 0c8808).

19 / 289
Services et rseaux 5.0 Alain Bron

Figure 11.19
Ethernet: full-duplex.

1000BaseT (Gigabit Ethernet 802.3ab)

Le standard 1000BaseT (1 Gb/s) est la version pour cblage en paires torsades du


standard 802.3z du Gigabit Ethernet sur fibre optique (1000BaseX).

Contrairement au passage du 10BaseT au 100baseT, le passage 1000BaseT a


ncessit quelques amnagements au protocole et linfrastructure du rseau.

D'une part, avec un tel dbit, le cblage de catgorie 5 a atteint ses limites technologiques
et de nouvelles catgories sont apparues, les catgories 5e (enhanced), 6 et 7 plus
robustes du point de vue de leur immunit aux perturbations lectromagntiques et mettant
en uvre simultanment les 4 paires du cble universel, avec un dbit de 250 Mb/s par
paire (bande-passante de 125 MHz par paire).

La version 1000BaseTX a t dveloppe pour fonctionner sur 2 paires seulement, mais n'a
jamais t diffuse large chelle.

La rception et lmission ont lieu simultanment sur les 4 paires, le signal reu tant
obtenu partir du signal instantan (somme des deux signaux, transmis et reu),
laquelle le signal transmis est lectriquement soustrait.

D'autre part, la taille minimum des paquets a t fixe 512 Bytes, afin de garantir la
dtection des collisions, conformment au principe du CSMA/CD.

Afin doptimiser lutilisation de ce nouveau dbit, certains fabricants ont implment le


support de Jumbo Frames dun MTU pouvant allant jusqu 9'000 Bytes ou 16'000 Bytes.
Pour l'heure, le seul MTU normalis par lIEEE reste, pour des raisons de compatibilit,
1500 Bytes.

10GBaseT (10 Gigabit Ethernet 802.3ae)

Version 10Gb/s du bon vieil Ethernet !


De normalisation trs rcente, il connat plusieurs variantes et supporte un grand nombre
de connecteurs diffrents :

10GBaseSR pour de courtes distances (Short Reach), sur fibres


monomodes (moins de 82 m)
10GBaseLX4 jusqu' 300m avec des fibres monomodes.

20 / 289
Services et rseaux 5.0 Alain Bron

10GBaseLR jusqu' 10 km (Long Reach) avec des fibres monomodes


10GBaseER jusqu' 40 km (Extented Reach) avec des fibres monomodes

100GBaseT (100 Gigabit Ethernet 802.3ba-2010)

Version 40 Gb/s.
100 m sur fibres optiques OM3, 150 m sur fibres optiques OM4
7 mtres sur paires torsades.

Version 100 Gb/s


40 km sur fibres optiques monomode.
100 m sur fibres optiques OM3, 150 m sur fibres optiques OM4
7 mtres sur paires torsades.

11.2.9 Du point de vue de lvolution des technologies.


Laugmentation 100 Mb/s du dbit historique (10 Mb/s) de la technologie Ethernet a concid
avec l'apparition des premiers commutateurs (switch) Ethernet, en remplacement des
concentrateurs (hub).
En saffranchissant de CSMA/CD, la technologie Ethernet est passe de l'Ethernet partag
l'Ethernet commut.

La quasi simultanit dans le temps du passage 100 Mb/s et l'Ethernet commut peut
donner que ces deux nouveauts font parties d'une seule et mme volution, alors qu'il s'agit de
deux avances technologiques compltement indpendantes.

Ces deux volutions ont de la mme manire concid avec lapparition des cblages structurs
dans les btiment, en remplacement des cbles de type coaxial.

Figure 11.20
Evolutions simultane des technologies lies Ethernet

21 / 289
Services et rseaux 5.0 Alain Bron

11.3 Le principe du pont transparent (bridge)


L'efficacit des rseaux locaux Ethernet ou Token Ring a t rapidement limite par le nombre
de participants : plus le nombre de participants est lev, plus le nombre de collisions augmente
sur un rseau de type Ethernet et plus le temps de transmission dvolu chacun diminuera sur
un rseau de type Token Ring.

Une mthode pour rendre son efficacit aux rseaux locaux est de les sparer en sous-rseaux
physiques distincts (et plus petits).

Un rseau Ethernet de dix participants sera plus efficace qu'un mme rseau en accueillant
cent.
La mme rflexion peut tre applique Token Ring.

Pour obtenir la mme capacit d'accueil, il faut ensuite pouvoir interconnecter ces sous-rseaux
: cette opration est ralise l'aide de ponts (bridges).

Un pont a pour fonction de relier des rseaux locaux physiques entre eux et de permettre aux
donnes de transiter de l'un l'autre.

Afin de ne pas engorger les rseaux, le pont ne doit transmettre que des donnes devant
rellement passer d'un rseau physique un autre.
Pour raliser cette fonction, le pont maintien des tables (FDB - Forwarding DataBase) o il
stocke les adresses MAC des quipements connects sur chaque sous-rseau respectif.
Ces tables sont en gnral mises jour en coutant le rseau et en notant les adresses sources
des trames de passage (le pont fonctionnant alors en mode promiscuous).

En fonction de l'adresse MAC destination (unicast) et de sa table, le pont transfert les donnes
ou non sur le sous-rseau concern.

Si l'adresse destination ne figure pas dans ses tables ou sil sagit dune adresse avec le 1er bit
1 (broadcast ou multicast), le pont transmet le paquet sur toutes ses interfaces.

Dans le cas des rseaux Ethernet, le pont ne transmet bien sr ni les collisions, ni les trames en
erreur sur les autres sous-rseaux, et utilise CSMA/CD pour injecter les trames dans le rseau.
Chaque sous-rseau reprsente ainsi un domaine de collisions unique : plus ce domaine est
petit (moins il y a de participants), moins les collisions seront nombreuses.

A l'extrme, un domaine de collision ne comportant que deux participants sera exempt de collisions :
dans ce cas de figure, un rseau physique est ddi deux participants ; c'est le cas d'un PC connect
sur le port d'un commutateurs (switchs).

22 / 289
Services et rseaux 5.0 Alain Bron

Figure 11.25
Rseau sans pont et avec pont.

Dans le cas de la figure 11.25, en l'absence d'un pont, chaque trame envoye par un participant
parcourt l'entier du rseau, limitant ainsi la bande passante de tous autres les participants.

L'installation d'un pont permet de rduire le trafic :


Si le serveur A envoie une trame au serveur B, cette dernire parcourt le sous-rseau 1, mais ne
traversent pas le pont, car l'adresse B figure dans la table correspondant au sous-rseau 1.
Dans ce cas, le sous-rseau 2 n'est pas pnalis par le trafic affectant le sous-rseau 1.
Si le serveur B envoie une trame au nud F, le pont transmettra la trame du sous-rseau 1 au
sous-rseau 2, aprs avoir consult sa table.

Figure 11.26
Segmentation du trafic par linstallation dun pont.

23 / 289
Services et rseaux 5.0 Alain Bron

Le pont permet ainsi de rduire la taille physique de chaque rseau en le segmentant soit en
sous-rseaux Ethernet (reprsentant chacun un domaine de collision distinct), soit en sous-
anneaux Token Ring.

Un rseau peut tre constitu de plusieurs ponts. Dans un tel cas, l'interconnexion de ces
diffrents ponts peut provoquer des boucles, volontaires ou non.

11.3.1 Spanning Tree


La facilit de crer des sous-rseaux et de les interconnecter engendre le risque de crer des
boucles sur le rseau Ethernet.
Par ailleurs, la volont d'assurer une connexion fiable et hautement disponible entre les sous-
rseaux peut amener vouloir crer des liaisons redondantes et parallles.

Le protocole Spanning Tree (STP, Spanning Tree Protocol), normalis IEEE 802.1d dans les
annes 1990, permet la fois d'viter les boucles fortuites et de crer des chemins redondants
entre les quipements de type pont (et par extension commutateur).

La mise en place du STP ncessite la dsignation d'un pont racine (root), qui sera le point de
dpart de larbre du Spanning Tree.
Le pont racine est dsign par l'administrateur du rseau ou de manire automatique par le
protocole STP qui slectionne le pont abritant linterface ayant la plus petite adresse MAC du
rseau.

Les ponts schangent les informations ncessaires ltablissement du Spanning Tree l'aide
de messages spcifiques BPDU (Bridge Protocol Data Units) et toutes les dcisions ayant traits
la topologie de larbre s'effectuent du point de vue de l'interface racine du pont racine.

Chaque interface du pont est galement associe un cot de transmission sur le sous-rseau;
cette valeur peut tre attribue par dfaut, en fonction du type de sous-rseau (10BaseT, Fast
Ethernet, etc.) ou par l'administrateur.

Chaque pont participant au rseau va dterminer l'interface qui lui permet d'atteindre l'interface
racine du pont racine au moindre cot (root port) et mettre ses autres interfaces en "standby".
En cas de chemins d'un cot gal, le pont dsigne le chemin utilisant les ponts ayant la plus
petite adresse MAC.

Figure 11.27
Rseau physique de bridges avec le cot de leurs interfaces.

24 / 289
Services et rseaux 5.0 Alain Bron

Dans le rseau de la figure 11.27, le pont 3 peut atteindre le pont racine l'aide d'un cot
cumul de 40, en passant par le segment X (interface en mode transfert).
Le chemin passant par le segment V, prsentant un cot cumul de 60, sera dsactiv (interface
en mode blocage).

Les ponts 4 et 5, quant eux, peuvent atteindre le pont racine l'aide dun cot cumul de 30, via,
respectivement, les segments X et W.

Le pont 2 ne pose pas de problme, puisqu'il n'existe qu'un seul chemin le menant au pont racine.

Les critres adopts par le STP tant subjectifs (par exemple la plus petite adresse MAC), il se
peut que la topologie rsultant du processus STP ne soit pas la plus optimale (figure 11.28).

Figure 11.28
Arbre STP non optimal par rapport la topologie physique (pour A et B).

Lorsqu'un pont dtecte un changement de topologie physique, ou qu'il ne reoit plus de


messages de configuration de la part des autres ponts (environ toutes les deux secondes), il
initie un processus de re-calculation de la topologie du Spanning Tree, ce qui permet l'activation
des chemins assurant la redondance.

Les ports d'un pont, et par extension d'un commutateur, participant un Spanning Tree adoptent
plusieurs tats successifs, afin d'viter toute boucle pendant la phase initiale de calcule des
chemins.

Aprs
tat n sec.
Initialising Dmarrage
Le port coute les BPDU en circulation sur le rseau et dtermine son
Blocked 0
statut dans l'arbre
Listening 5 idem + retransmets les BPDU reus

Learning 15 idem + mise jour de la CAM

Forwarding 40 idem + retransmet les trames

Disabled Port dsactiv par le STP (standby)

Figure 11.29
Les diffrents tats d'une interface participant un STP.

25 / 289
Services et rseaux 5.0 Alain Bron

Dans le cas d'un commutateur, le dlai ncessaire au passage d'un port de l'tat initial (initialising) l'tat
oprationnel (forwarding) peut tre pnalisant suivant le type de machine raccorde6.

Pour viter ce genre de problme, il est en gnral possible de configurer certains ports en un mode
permettant au port de passer plus rapidement de l'tat initial l'tat oprationnel (portfast).

6 Le cas d'un systme vrifiant la prsence d'un serveur sur le rseau lors de son processus de dmarrage, par exemple.

26 / 289
Services et rseaux 5.0 Alain Bron

11.4 Le matriel rseau (Ethernet)


Le matriel rseau permet linterconnexion des diffrents cbles et nuds du rseau.
Lvolution technologique a permis, au fil du temps, la mise sur le march de diffrents types
dquipements.

11.4.1 Les cartes rseau - Network Interface Cards (NIC)

Charge d'envoyer les donnes sous forme de signal lectrique (par exemple code
Manchester, niveau OSI 1), la carte rseau interagit avec l'ordinateur et son OS grce un
pilote mettant en uvre la couche de niveau OSI 2.
Historiquement, l'adaptateur rseau tait dissoci du tranceiver, charg de transmettre
physiquement le signal lectrique sur le cble (liaison entre adaptateur et tranceiver via cble
AUI).

Les cartes rseau ont t quipes de diffrents connecteurs : RJ45 (10 / 100 /1000 Mb/s),
BNC, AUI en fonction du cblage en usage sur les rseaux.

En fonction du pilote install, une carte rseau peut tre capable de retourner des statistiques et
tre plus ou moins paramtrable.

A lheure actuelle, les interfaces rseau sont directement intgres la carte mre des
ordinateurs.

Le standard NDIS (Network Driver Interface Specification) assure la compatibilit entre le pilote
d'une carte rseau et les systmes d'exploitation Windows (winsocks).

27 / 289
Services et rseaux 5.0 Alain Bron

11.4.2 Les concentrateurs hubs

Un concentrateur (hub) est un quipement daccueil charg de relier les nuds entre eux, qui
a pris place dans les rseaux lorsque le cblage structur en paires torsades a remplac les
bus physiques coaxiaux.

Leffet de concentration est d au trafic issu de multiples connexions (pc, imprimantes) utilisant
un seul chemin de sortie (uplink).
Le concentrateur prend en gnral place dans une armoire de brassage (cf. chapitre 10).

Figure 11.30
Effet de concentration du hub

Port modulaire fibres optiques


uplink pour la connexion sur
Alimentations le reste du rseau
redondantes

24 ports RJ45 pour


accueillir les nuds
Port console pour la gestion clients .
locale du concentrateur.

Figure 11.31
Concentrateur (hub) Ethernet de type standalone

28 / 289
Services et rseaux 5.0 Alain Bron

Carte de
management
Carte quipe de
ports RJ45

Cartes insres
dans le chssis

Carte quipe de
ports optiques

Figure 11.32
Concentrateur (hub) Ethernet de type chssis modulaire.

Le concentrateur opre au niveau du signal lectrique et du code Manchester (niveau OSI 1) et


se contente de remettre en forme les signaux lectriques reus sur un port et de les transmettre
(rpter) sur les autres ports dont il est quip : on peut parler de rpteur multiports.
De par larchitecture des concentrateurs (simulation dun bus logique), leurs ports oprent en
mode half-duplex.

Un concentrateur est transparent pour les nuds du rseau et simule simplement un simple bus
logique, mettant ainsi en place un rseau Ethernet partag.

Figure 11.33
Le concentrateur (hub) se positionne au niveau 1 du modle OSI.

29 / 289
Services et rseaux 5.0 Alain Bron

Figure 11.34
Le concentrateur (hub) simule le comportement dun cblage coaxial (bus physique et bus logique)
dans une architecture rseau structure (toile physique et bus logique).

Un concentrateur peut tre intelligent (ou manageable) et paramtrable (soit via une console
locale, soit via un agent de management rseau tel que snmp) et capable de retourner des
statistiques.

Un concentrateur peut prendre la forme dun modle standalone (botier indpendant) ou dun
chssis modulaire.

Les modles standalones peuvent parfois tre cascads (empil) au moyen d'un bus externe, afin d'en
simplifier la gestion : dans ce cas, l'un des concentrateurs fait office de matre pour les autres
concentrateurs de la pile (stack).

Un concentrateur peut compter de quelques ports plusieurs dizaines, avec une connectique de
type RJ45 10Mb/s uniquement, 100Mb/s ou par exemple mixte avec des ports fibres
optiques, BNC et RJ45.

Les concentrateurs ont pratiquement disparu des rseaux, compte tenu du rapport
prix/performance trs nettement favorable aux commutateurs.

30 / 289
Services et rseaux 5.0 Alain Bron

11.4.3 Les bridges les ponts

Les ponts (bridges) traitent les donnes au niveau Ethernet (niveau OSI 2) et non plus
seulement au niveau du signal Manchester.

Un pont est quip d'au moins 2 interfaces Ethernet, dont la connectique peut varier.

Les ponts analysent les adresses MAC et tiennent jour des tables, via le mcanisme de
transparent bridging, leur permettant de transmettre les trames sur le port / interface Ethernet
adquat.

Chaque port (interface) d'un pont est muni de sa propre adresse MAC, afin quil puisse
notamment gnrer les messages BPDU (Bridge Protocol Data Unit), ncessaires au protocole
STP (Spanning Tree Protocol) permettant de crer un rseau de ponts en vitant les boucles
lors de chemins redondants.

Figure 11.35
Le pont (bridge) se positionne au niveau 2 du modle OSI.

Les trames sont retransmises en utilisant CSMA/CD, crant ainsi un domaine de collisions par
segment Ethernet connect sur le pont.

Les ponts ne sont pratiquement plus utiliss en tant que tel.

Par contre, les commutateurs (switchs) et les points daccs Wifi (AP Wifi) implmente le
principe du transparent bridging.

31 / 289
Services et rseaux 5.0 Alain Bron

11.4.4 Les commutateurs - switchs


Les commutateurs (switchs) se comportent fondamentalement comme des ponts multiports
(10/10/1000/10000 Gb/s) dont la capacit de traitement des flux de donnes permet la
transmission simultane de plusieurs centaines de Mgabits ou dizaines de Gigabits.
De par sa position dans le rseau en tant ququipement actif dans les armoires de brassage, il
permet, tout comme le concentrateur, linterconnexion des cbles et des nuds du rseau.

Figure 11.36
Postions du commutateur selon le modle OSI et dans le rseau (effet concentration)

Un commutateur est dit bloquant s'il ne peut traiter simultanment le dbit potentiel maximal de
la somme de ses ports. Il est dit non-bloquant s'il est capable de grer un tel dbit.

Un commutateur peut fonctionner en mode cut-through / on-the-fly (la trame est retransmise
ds que l'adresse Ethernet de destination est lue), store-and-forward (la trame est stocke en
entier, le CRC vrifi et retransmise plus loin si aucune erreur n'est dtecte) ou fragment free
(lecture des 64 premiers Bytes).

Un commutateur intelligent permet la dfinition de VLAN (Virtual LAN, selon le protocole IEEE
802.1q) et peut se prsenter sous forme d'un quipement standalone ou d'un chssis modulaire.

Cartes redondantes
de management

Modules additionnels mutli-


mdias (par exemple GBIC
pour un uplink optique)
rseau
Cartes quipes de
ports RJ45

Alimentations
redondantes
24 ports RJ4510/100/1000
pour accueillir les nuds
clients .

Figure 11.37
Commutateur standalone (dtage) et sous forme de chssis modulaire (backbone)

32 / 289
Services et rseaux 5.0 Alain Bron

Un commutateur peut tre intelligent (ou manageable) et capable de retourner des


statistiques, soit via une console locale, soit via un agent de management rseau tel que SNMP
ou une interface html.

Les modles standalones peuvent parfois tre cascads (empil) au moyen d'un bus externe, afin d'en
simplifier la gestion : dans ce cas, l'un des commutateurs fait office de matre pour les autres
commutateurs de la pile (stack).

Figure 11.38
Interface de gestion web dun commutateur Cisco

De mme il est possible de configurer et d'administrer un tel commutateur (activer ou dsactiver


un port physique, grer les tables d'adresses (CAM 7), les VLAN ou le spanning-tree, par
exemple).

Certains commutateurs permettent la mise en place de liens parallles fonctionnant


simultanment (agrgation de liens EtherChannel ou 802.1ad / LACP), afin daugmenter le
dbit sur les liens uplink ainsi que dassurer une redondance automatique.

Figure 11.39
Agrgation de 4 liens LACP / 802.1ad

7
Content Adressable Memory Cisco

33 / 289
Services et rseaux 5.0 Alain Bron

La configuration des ports utilisateurs en mode STP portfast permet dacclrer le mcanisme
STP et dactiver plus rapidement les ports (forwarding).

Larchitecture des commutateurs, construit autour dune switch matrix (matrice de commutation)
a permis de remplacer lEthernet historique en mode partag par lEthernet commut, de
laffranchir de CSMA/CD et donc dintgrer le mode mode full-duplex.

Bus partag accd


par CSMA/CD

Figure 11.40
Larchitecture interne du concentrateur reproduit les mcanismes historiques dEthernet
(et notamment CSMA/CD et le mode half-duplex)

Matrice de commutation
-
Switch matrix

Figure 11.41
Larchitecture interne du commutateur assure des flux indpendants entre tous les ports,
ainsi que le mode full-duplex pour chaque port.

Le mode full-duplex, en permettant la transmission (Tx) et la rception (Rx) des trames sur deux
liens physiques distincts, et la gestion des flux de manire indpendante au niveau du
commutateur, supprime de facto les collisions.

34 / 289
Services et rseaux 5.0 Alain Bron

Caractristiques standards essentielles d'un commutateur paramtrable.

Type Standalone, stackable, chssis


Position dans le rseau Wiring Closet / desktop ou core / backbone
dbit des ports auto / 10 / 100 / 1000
mode duplex auto / half/ full
dtection de polarit (auto-MDI/MDIX) oui / non
VLAN 802.1q par port / par protocole / par adresse MAC
plusieurs VLAN par port oui / non
scurit des ports par MAC / IP / authentification (802.1x)
compatibilit 'trunk' 802.1q oui / non
agrgation de ports (802.1ad) oui (nb de ports ?) / non
STP portfast oui / non
STP par VLAN oui / non
management http intgr oui / non
remonte d'alarmes snmp / syslog / mail / non
PoE - (802.3af) oui / non
alimentation redondantes oui / non
uplink(s) modulaire(s) / GBIC oui / non
bloquant oui / non
stackable oui / non
layer 3 switching oui / non
si oui routage statique / RIP / OSPF / ...
prix, homognit du parc, maintenance,
....
etc.

Les oprations de commutations, bases sur le contenu de la table des adresses MAC et des
ports (CAM), sont effectues directement par le matriel (composants lectroniques) assurant
ainsi une vitesse de traitement trs rapide (wire speed).

35 / 289
Services et rseaux 5.0 Alain Bron

11.4.5 Les gateway - routeurs


Un routeur (gateway) n'est pas proprement parl un quipement Ethernet, puisqu'il permet
l'interconnexion de rseaux, au sens niveau 3 OSI du terme.

Figure 11.42
Postions du commutateur selon le modle OSI et dans le rseau.

Ainsi, un routeur peut interconnecter des rseaux IP, ou des rseaux AppleTalk, les couches de niveau
2 pouvant tre respectivement Ethernet et Token Ring.

Un routeur, outre le fait de remonter jusqu'aux informations de niveau OSI 3 des paquets en
transit (dcapsulation/encapsulation), doit choisir une route en fonction de ses tables de routage
(qui peuvent tre dfinies de manire statique ou obtenues par le biais d'un protocole de
routage)

Un routeur est en gnral capable d'effectuer des oprations de filtrages (fonction firewall) au niveau 3
(adresses IP, par exemple) ou 4 (au niveau des ports TCP, par exemple) et de fournir des statistiques et
des alarmes, la gestion s'effectuant soit travers une console locale ou un agent de management
(snmp, telnet, ssh ou serveur html).

Figure 11.43
Fonctionnement routeur IP/Ethernet

36 / 289
Services et rseaux 5.0 Alain Bron

Les routeurs d'entre de gamme se prsentent sous la forme d'un quipement standalone,
munis de 2 ports (Ethernet et srie, par exemple, seul le protocole IP tant rout).

Les routeurs haut de gamme peuvent prendre la forme de chssis modulaires multi technologies
(Ethernet, Token Ring, srie, ATM, etc.) et multi protocoles (IP, IPX, etc.).

La fonction de routage peut galement tre implmente dans un botier multifonctions (de
type routeur SoHo xDSL) ou de manire logicielle (fonctions de routages sous Windows ou
linux).
Cartes redondantes
Interfaces pour de management
liaisons srie.

Ports Ethernet RJ45 carte WAN

Port console locale carte quipe de


ports optiques

Figure 11.44
Routeur standalone et sous forme de chssis modulaire

37 / 289
Services et rseaux 5.0 Alain Bron

11.4.6 Les switch-routeurs commutateurs de niveau 3

Dans le cas dun commutateur de niveau 3 (layer 3 switching), les fonctions de routage sont
intgres au niveau du commutateur lui-mme, lui permettant deffectuer des oprations de
routage pratiquement la vitesse de la commutation.

Les commutateurs de niveau 3 sont typiquement utiliss pour permettre le routage inter-VLAN.

Contrairement aux routeurs classiques qui doivent a priori traiter chaque paquet de niveau 3 au
niveau logiciel, chargeant ainsi le processeur, les commutateurs de niveau 3 sont capables
d'effectuer du routage la vitesse de traitement des trames de niveau OSI 2.

Les fabricants ont mis au point diffrentes implmentations pour ces quipements hybrides.
Une faon de procder est de dterminer des flux IP (technique du netflow switching, de Cisco)
et de ne traiter au niveau 3 que le premier paquet du flux, les paquets suivants tant commuts
au niveau 2, selon les informations fournies par la partie routeur.
Ce genre de technologie part du principe que dans un environnement moderne, les routes sont
stables (un flux est valide pour quelques minutes) et qu'il est donc inutile charger le processeur
en traitant chaque paquet au niveau OSI 3.

11.5 Architectures classiques de rseaux

n x ports RJ45 10/100(/1000)

Commutateurs dtage
Uplink 100Mb/s / 1Gb/s
fibre ou cuivre

Daisy chain 100Mb/s / 1Gb/s

WAN
Internet
serveurs

38 / 289
Services et rseaux 5.0 Alain Bron

n x ports RJ45 10/100(/1000)

Uplink 1Gb/s
Commutateurs dtage
(wiring closet / desktop)

Daisy chain 100Mb/s / 1Gb/s

WAN
Commutateur de cur
Internet
serveurs (core / backbone)

Commutateurs dtage
(Wiring closet / desktop)

Uplink n x 1Gb/s

Commutateurs layer 3 de coeur


Backbone 10Gb/s
(coret /backbone)

Internet

WAN WAN
serveurs

39 / 289
Services et rseaux 5.0 Alain Bron

40 / 289
Services et rseaux 5.0 Alain Bron

11.6 Les VLAN


Les VLAN (Virtual LAN) permettent de dfinir des rseaux Ethernet
distincts (niveau OSI 2 ; domaines de broadcast distincts), indpendamment
du cblage.

Figure 11.45
VLAN permettant de crer des rseaux compltement spars (domaine de broadcast),
indpendamment de la localisation gographique des nuds du rseau.

Un VLAN est caractris par un VlanID, associ un nom logique, et est trait par des
commutateurs Ethernet compatibles avec la norme IEEE 802.1q8.

Une priorit peut tre associe chaque trame / VLAN, permettant la mise de QoS au niveau 2.

Dans son implmentation de base (VLAN de niveau 1), chaque port d'un commutateur est
associ un VLAN particulier : lorsqu'une trame Ethernet transite par le port d'un commutateur,
elle est marque avec un tag ; la transmission de cette trame ( trame 802.1q, Ethertype
0x8100) nest ensuite possible que sur les ports associs au mme VLAN.

Tag
Protocol ID
Figure 11.46 Priorit
Format de la trame 802.1q avec son tag VLAN de 32 bits CFI
(0/1)
VLAN ID
Les mcanismes traditionnels lis au transparent bridging restent en vigueur : le commutateur
(0-
4095)
base ses dcisions de commutation sur le contenu de sa CAM, pour autant que ladresse MAC
de destination appartiennent au mme VLAN que ladresse MAC source (ou corresponde au tag
de la trame).

8 Cisco dfinissant son propre standard (ISL Inter Switch Link), mais supportant en gnral galement le 802.1q

41 / 289
Services et rseaux 5.0 Alain Bron

Figure 11.47
VLAN et principe du marquage des trames Ethernet

Lorsque la trame 802.1q quitte le commutateur, le tag est retir afin de restituer une trame
Ethernet standard.

Si plusieurs commutateurs sont interconnects, le marquage des trames peut tre conserv sur
les ports d'interconnexion (configuration en mode trunk, chez Cicso) ; dans ce cas, la trame en
circulation reste une trame 802.1q jusqu' sa sortie par un port standard (non trunk).

Le passage de trames d'un VLAN l'autre s'effectuent classiquement au moyen d'un routeur
de VLAN intgr dans un commutateur de niveau 3 ou d'un routeur classique, en fonction de
la topologie et de la technologie dploye.

Trame tague
802.1q

Trame Ethernet
standard

Figure 11.48
Routage de VLAN avec routeur externe standard
et interconnexion de commutateurs en mode trunk

42 / 289
Services et rseaux 5.0 Alain Bron

11.6.1 Niveaux de VLAN


La technologie VLAN supporte trois niveaux dimplmentation :

VLAN par port ou niveau 1

Mode classique, o chaque port du commutateur est associ un VLAN ou paramtr en


mode trunk. Les couples port/VLAN sont dfinis localement chaque commutateur et
lassignation des VLAN aux ports du commutateur est statique.

Table
Port / VLAN A B
1 = r
2 = r
3 = b
4 = r
5 = b
6 = r
7 = b 1 2 3 4 5 6 7 8
8 = b

Figure 11.49
VLAN de niveau 1 VLAN par port

VLAN par MAC ou niveau 2

Les VLAN sont dfinis en fonction de ladresse MAC des nuds du rseau. A chaque
trame entrant sur un port, le commutateur consulte sa table MAC/VLAN pour dterminer
avec quel VLAN marquer la trame.

La gestion des couples MAC/VLAN peut tre centralise (commutateur matre ou station de
gestion).

Lassignation des VLAN aux trames entrant dans le commutateur est dynamique, en
fonction du nud connect, ce qui permet la mobilit des nuds du rseau. Un VLAN par
dfaut peut tre assign aux ports (par exemple, un VLAN de quarantaine).

Figure 11.50
VLAN de niveau 2 VLAN par adresse MAC

43 / 289
Services et rseaux 5.0 Alain Bron

VLAN par protocole ou niveau 3

Les VLAN sont dfinis en fonction du protocole de niveau 3 et suprieur vhicul par le
trame Ethernet.
A chaque passage de trame, le commutateur vrifie le type de protocole et marque la
trame en fonction de sa table des couples Protocole/VLAN.

Les ports ne sont pas affects un VLAN mais les trames sont marques
dynamiquement, permettant de crer un rseau virtuel par type de protocole (un VLAN
IP, un VLAN AppleTalk, un VLAN VoIP, etc.).

Figure 11.51
VLAN de niveau 3 VLAN par protocole

44 / 289
Services et rseaux 5.0 Alain Bron

11.6.2 Connexion d'un nud sur un rseau de VLAN


Scnario 1

Le nud (serveur, par ex.) est connect sur un VLAN, et les nuds des autres VLAN y accdent
classiquement par lintermdiaire d'un routeur (OSI 3).

Dans le cas d'un routeur physique externe, il doit y avoir le mme nombre d'interfaces disponibles sur le
routeur qu'il y a de VLAN router !

Certains commutateurs intgrent des fonctions de niveau 3 (routage), ce qui permet de se passer
d'un quipement externe.

Figure 11.52
Interconnexion du serveur, via un routeur (OSI 3)

Scnario 2

Le nud est connect sur tous les VLAN : dans ce cas de figure, le nud doit avoir autant
d'interfaces rseau qu'il y a de VLAN !

Il faut veiller que le nud ainsi connect sur plusieurs VLAN ne route pas les informations entre
les diffrents VLAN 9.

Figure 11.53
Interconnexion du serveur sur chaque VLAN.

9 Pas de 'daemon' routed ou de service RIP activ, par exemple.

45 / 289
Services et rseaux 5.0 Alain Bron

Scnario 3

Le nud est connect via un trunk laissant passer tout ou partie des VLAN.
L'interface rseau et son pilote doivent supporter les tags VLAN (donc tre compatibles 802.1q).
Il faut veiller que le nud ainsi connect sur plusieurs VLAN ne route pas les informations entre
les diffrents VLAN 10.

Le lien physique est partag entre tous les VLAN, donc le dbit total est limit par le dbit de ce
lien physique (par exemple 100Mb/s), alors que le trafic est potentiellement gal la somme du
trafic de tous les VLAN !

Figure 11.54
Interconnexion via un 'trunk'.

Figure 11.55
Routage de VLAN avec diffrents routeurs et serveur en mode 'trunk'

10 Pas de 'daemon' routed ou de service RIP activ, par exemple.

46 / 289
Services et rseaux 5.0 Alain Bron

11.6.3 Usage des VLAN


Les VLAN peuvent tre utiliss dans tous les cas de figure o une sparation du trafic est
ncessaire.
Dans lusage courant, on peut relever les cas suivants :

Tlphonie IP
1 port RJ45 sur le commutateur, configur avec 1 VLAN pour la tlphonie et 1 VLAN
pour les datas (PC).
Rseau de quarantaine
Mise en quarantaine des PC dans un VLAN tanche avant leur autorisation se
connecter dans le rseau de lentreprise.
Rseau pour point daccs WiFi
Connexion des AP (acces-point) Wifi dans un VLAN scuris et surveill.
Salle serveurs virtuelle et / ou DMZ
Connexion des serveurs sur VLAN scuris et surveill, quel que soit leur emplacement:
salle serveurs virtuelle.
VLAN de management (des quipements rseau; 1)
Interface / adresse IP de gestion des quipements.
Rseau de test ou de dveloppement.

Rseau industriel ou de domotique.


VLAN pour confiner un protocole particulier
Ancien protocole, par exemple SNA, encore ncessaire, mais que lon ne dsire pas
diffuser partout).

47 / 289
Services et rseaux 5.0 Alain Bron

11.7 WLAN - Wifi


La norme Wifi et ses drivs fait partie de la famille des standards IEEE 802, normalise par
lIEEE sous 802.11 et permet la transmission de trames de niveau 2 sur des canaux hertziens
(WLAN Wireless LAN).

Il est parfois abusivement fait mention dEthernet sans fil .

11.7.1 Gnralits
Le matriel ncessaire se dcompose principalement en Access-Point (Point d'Accs ou AP),
qui assurent le rle de concentrateur radio et de pont (bridge) avec l'infrastructure Ethernet
classique (filaire) et en adaptateurs clients qui permettant aux ordinateurs d'accder au rseau
radio (cartes USB, PCMCIA, PCI, chip intgr, etc.)

Dans un environnement domestique, un Access-Point fourni galement des fonctions de routage pour
une connexion directe chez un oprateur, des services tels quun serveur DHCP et dun commutateur
Ethernet de quelques ports.

Figure 11.56
Access-Point en entreprise et au domicile

Les normes 802.11 utilisent des canaux de 22 MHz (20 MHz utiles), dans la bande libre de 2,4
GHz11 ou de 5 GHz (bande ISM - Industrie, Science et Mdical), par le biais dune porteuse
module en DSSS ou OFDM.

Le mdia 'atmosphre' ayant la caractristique d'une topologie physique en bus, la mthode


d'accs employe est un driv de CSMA appel CSMA/CA12 (Collision Advoidance)

11 Comme notamment les fours micro-ondes ! Cette bande libre est limite en puissance et ne ncessite pas de licence.
Comme de trs nombreuses applications exploitent dans cette bande de frquence, elle est particulirement perturbe.
12 En fonction de leur position gographique, les clients Wifi en contact avec l'AP ne s'entendent pas ncessairement entre eux ;
CSMA/CD ne peut ainsi pas s'appliquer.

48 / 289
Services et rseaux 5.0 Alain Bron

11.7.2 Les diffrentes topologies

- Ad-hoc (WLAN seulement, sans Access-Point)

Figure 11.57
Topologie en mode ad-hoc, sans Access-Point.

- Infrastructure (WLAN to LAN)

Figure 11.58
Topologie en mode infrastructure et fonction racine (root)

49 / 289
Services et rseaux 5.0 Alain Bron

Figure 11.59
Topologie en mode infrastructure et fonction pont (bridge)

Figure 11.60
Topologie en mode infrastructure et fonction rpteur (repeater)

- Mesh (maills)13.

Figure 11.61
Rseau maill

13
Pas encore standardis ; norme abandonne 802.11s.

50 / 289
Services et rseaux 5.0 Alain Bron

11.7.3 Paramtres de base du rseau Wifi


SSID

Le SSID (Service Set Identifier) correspond au 'nom' du rseau visible par les clients et est
compos de 2 32 caractres. Toutes les machines qui communiquent au sein d'un mme
rseau radio doivent tre configures avec le mme SSID.

Bande de frquence et numro de canal

Les normes 802.11b et 802.11g s'appuient, en Europe, sur 13 canaux recouvrant de 22 MHz (20
MHz utiles), dans la bande ISM des 2.4 GHz (2400 - 2483.5 MHz = bande-passante de 83,5
MHz !).

20 MHz reprsente un compromis entre la bande-passante disponible pour chaque transmission (donc
le dbit potentiel) et le nombre de canaux disponibles pour les diffrents rseaux Wifi (donc le nombre
de communications parallles sans interfrences).
Seuls 3 canaux sont non recouvrant.

Les frquences des canaux de la bande des 2,4 GHz se chevauchant, chaque Access-Point
devrait idalement utiliser un canal diffrent et loign de 5 canaux des canaux employs par les
Access-Point voisins, pour une zone de recouvrement radio (typiquement, les canaux 1,6 et 11).

Figure 11.62
Canaux Wifi de la zone des 2,4 GHz et rgle des 5 canaux :
utilisation des canaux non recouvrant 1, 6 et 11 ou 2, 7 et 12, par exemple

Historiquement moins utilise en Suisse, car pas compltement libre par lOfcom, la bande
des 5 GHz bnficie pour lheure dune plus grande bande-passante, donc de plus de canaux
utiles non recouvrant.
La frquence tant leve, la porte sen trouve automatiquement rduite par rapport la
gamme des 2,4 GHz.
Une partie des canaux sont destins une utilisation en extrieure, avec une puissance
maximale (PIRE) de 1W contre 100mW en intrieure.

51 / 289
Services et rseaux 5.0 Alain Bron

Figure 11.63
Zone Wifi des 5 GHz et ses 8 canaux non recouvrant.

Figure 11.64
Recouvrement de la couverture radio des canaux Wifi.

Il est possible de rutiliser les canaux hors de la zone de recouvrement radio.

Dans le cas o il n'existe pas de possibilit d'utiliser des canaux non contigus, on choisit les
canaux qui offrent le plus faible chevauchement entre canaux (en termes de puissance relative).

Le mode de slection automatique du canal analyse la situation radio au niveau de l'Access-Point


et n'aboutit pas forcment la slection du canal optimal sur l'entier de la zone radio couverte.

Le canal du client 802.11 est en gnral laiss en mode automatique afin quil slectionne le
canal appropri l'Access-Point sur lequel il se connecte.

52 / 289
Services et rseaux 5.0 Alain Bron

En plus dexploiter la gamme de frquences de 5 Hz, moins utilise en Suisse, les standards
802.11n et 802.11ac amliorent les performances potentielles des rseaux Wifi en jouant sur 4
facteurs :

Agrgation de 2 4 (8 ?) canaux (bande-passant jusqu 80 MHz (160 MHz ?)).


Exploitation de 2 4 flux (rflexion du signal radio), via la technologie multi-antennes
MIMO.
Diminution du dlai inter-trame.
Modulation QAM64 ou QAM256

Figure 11.65
Facteurs damlioration mis en uvre par 802.11n et 802.11ac.

Le type de modulation applicable, donc le dbit potentiel rel, est fonction de la qualit du signal
(notamment le rapport signal sur bruit SNR). Les dbits maximums sont toujours thoriques, car
ncessitant des conditions idales.

53 / 289
Services et rseaux 5.0 Alain Bron

Figure 11.66
Diffrentes modulation QAM atteignables, en fonction du rapport SNR.

11.7.4 Roaming
Le roaming permet un client 802.11 de passer d'un Access-Point un autre, de manire
transparente, au sein d'un mme SSID.
Les Access-Point doivent alors tre interconnects au niveau OSI 2 (par des commutateurs ou
des concentrateurs Ethernet) et non pas au niveau 3.
Le protocole 802.11r (Fast Basic Service Set Transition, abandonn ?) vise amliorer la
bascule entre deux Access-Point, notamment en diminuant la latence de bascule laquelle est
sensible une application telle que la VoIP, par exemple.

11.7.5 Mcanismes de base


Laccs un rseau Wifi est rgl en plusieurs phases :

Phase de dcouverte des rseaux Wifi.


En mode passif, le client se met lcoute des annonces (beacons) transmises environ toutes les
10ms par les Access-Point (numro de canal, SSID servis, normes supportes).
En mode actif, le client met des demandes (probes) afin de connatre les rseaux Wifi.

Phase dauthentification "802.11".


Deux modes dauthentification sont supports par le standard 802.11 initial : le mode authentifi,
via un mcanisme de challenge-rponse utilisant une cl partage (cl WEP) et le mode ouvert,
qui permet nimporte quel client daccder au rseau, sans authentification.

Paradoxalement, le mode ouvert est considr comme plus scuris, car le mcanisme de challenge-
rponse rend la cl partage vulnrable.

54 / 289
Services et rseaux 5.0 Alain Bron

Un rseau en mode ouvert est nanmoins scuris si un mcanisme de chiffrement est utilis, puisque
seules les trames encryptes avec la cl correcte peuvent communiquer avec l'Access-Point.

En mode WPA et WPA2 (802.11i), les Access-Points fonctionnent en mode ouvert, un mcanisme
ultrieur assurant lauthentification.

Phase d'association.
La squence d'association permet la rservation des ressources ncessaire au bon
fonctionnement de la connexion.

Une squence de dsassociation termine la connexion. Une squence de rassociation permet


le passage d'un Access-Point un autre (roaming).

Authen.

Authen.
Associatio Associatio
n Resp. n Resp.
q. q.
Association Re Association Re

Respons ouvert

Challenge ouvert

Beacon Beacon

Figure 11.67
Phases d'tablissement d'une connexion sur un rseau Wifi,
avec authentification 802.11 ( gauche) et authentification WPA ( droite)

La squence d'authentification WPA et WPA2 (802.11i) intervient aprs la phase


d'authentification 802.11.

55 / 289
Services et rseaux 5.0 Alain Bron

11.7.6 Les antennes


Les antennes permettent la translation du monde filaire vers le monde radio et les ondes
lectromagntiques. La gomtrie de lantenne permet de plus ou moins concentrer lnergie
mise et ainsi augmenter la puissance ponctuelle reue en un point de lespace.

Formellement, une antenne namplifie pas un signal (pas dajout de puissance extrieure) mais
concentre lnergie en une zone de lespace.

Le gain14 de lantenne, exprim en dBi, est compar au signal qui serait produit par une antenne
idale isotropique (antenne thorique se rsumant un point et diffusant de manire homogne
dans toutes les directions, telle une sphre.)

Le gain dune antenne ne correspond pas une amplification du signal, mais la concentration
de lnergie mise (principe de la parabole) dans une direction.

Le gain dun systme peut tre augment en utilisant diffrents modles d'antennes, mais la
puissance apparente (PIRE) ne doit pas, en Suisse, dpasser 100 mW lmission 15 (= 20
dBm, avec 1 mW comme rfrence).

Les Access-Point sont en gnral quips en standard d'antennes qui irradient de manire
omnidirectionnelle.

14 Le gain, exprim en dB (dcibel, fonction logarithmique), spcifie le facteur d'amplification ou d'attnuation d'un lment.
15 http://www.bakom.admin.ch/themen/geraete/00568/01232/index.html?lang=fr

56 / 289
Services et rseaux 5.0 Alain Bron

Ce type de propagation ncessite que l'Access-Point soit situ au centre de la zone couvrir.

Figure 11.68
Propagation dune antenne omnidirectionnelle, dans le plan vertical et horizontal et en 3D

Les antennes de type semi-directionnelles mettent dans une direction privilgie. Les deux
types les plus rpandus sont l'antenne Yagi et l'antenne Patch. L'antenne Patch a la particularit
de se prsenter sous la forme d'un panneau de quelques dizaines de centimtre de ct et peut
se fixer discrtement, un mur par exemple.
L'antenne semi-directionnelle permet de couvrir une zone particulire comme un couloir, par
exemple, ou d'viter de 'dborder' hors des murs de l'immeuble.

Figure 11.69
Propagation dune antenne semi-directionnelle, dans le plan horizontal (lobe avant et lobe arrire)

Les antennes hautement directionnelles, sous forme de paraboles, servent essentiellement


relier deux points entre eux.

Figure 11.70
Propagation dune antenne directionnelle, dans le plan horizontal.

57 / 289
Services et rseaux 5.0 Alain Bron

Les cbles reliant les antennes aux Access-Point doivent tre de haute qualit et adapts en
impdance, sous peine d'altrer fortement le signal reu et mis.

Figure 11.71
Diagramme de couverture radio dune antenne semi-directionnelle relle.

Les antennes fournies en standard permettent de couvrir, en milieu ouvert, une centaine de
mtres ; distance qui peut tre fortement rduite (10-20 mtres) en milieu construit, en fonction
de la nature des matriaux, etc.

Une onde radio est polarise (dfinie par le sens du vecteur champ lectrique). Pour une transmission
radio optimale, les antennes dmission et de rceptions doivent avoir le mme sens de polarisation.

Figure 11.72
Polarisation dune onde lectromagntique

Un Access-Point de type 802.11b ou 802.11g quip de deux antennes slectionne celle qui
reoit le meilleur signal et dsactive lantenne inutile, car compte tenu des longueurs dondes des
frquences radio utilise avec le Wifi (environ 12 cm), la qualit de rception peut grandement
varier en fonction de la position respective des deux antennes.

La technologie MIMO (Multiple In, Multiple Out) permet de multiplier le nombre de flux utiles en
multipliant le nombre d'antennes actives paralllement la rception et l'mission.
Chaque antenne reoit un signal diffrent, notamment ceux dus aux rflexions : en synchronisant
ces signaux et en les additionnant, lAccess-Point reoit un signal plus puissant (somme de
signaux), do laugmentation de la porte radio utile.

58 / 289
Services et rseaux 5.0 Alain Bron

11.7.7 Problmatiques lies aux ondes radios.


Les ondes radio sont potentiellement soumises une srie de phnomnes physiques typiques
risquant daltrer le signal transport, et ceci particulirement dans la gamme des frquences
utilises (hyper-frquences) par la technologie Wifi.

Si certains de ces phnomnes peuvent parfois savrer bnfiques, leurs effets cumuls
reprsentent la plupart du temps un facteur alatoire et pnalisant.

Rflexions
En fonction du matriau rencontr, londe effectue un ricochet et
est dvie dans une autre direction.

Rfractions
Londe radio est dvie en traversant un matriau se trouvant sur
son chemin.

Diffractions
Un obstacle prsent sur le chemin de londe se transforme en
point dmission.

Attnuation
Lattnuation est due la dispersion gomtrique de lnergie de
londe.

Absorption
Lnergie de londe est tout ou partiellement dissipe dans un
matriau.

59 / 289
Services et rseaux 5.0 Alain Bron

Air (100m) 80 dB attnuation [dB] = -20 log ( c / (4 d f))

Fentre 3 dB

Cloison 6 dB
mobile
Mur en pltre 12 dB

Mur en bton 20 dB De type mur porteur

Plancher 20 dB

Cage 30 dB
ascenseur

Figure 11.73
Absorption de diffrents matriaux.et valeurs typiques

Interfrences
Des ondes de mmes frquences se superposent lectromagntiquement, brouillant le
signal et pouvant aller jusqu le rendre inutilisable.

Bruit
Lenvironnement lectromagntique est naturellement et artificiellement perturb par un
bruit de fond. Si le signal a une nergie proche de celle du bruit de fond, il ne pourra pas
tre diffrenci.
La mesure du S/N (Signal / Noise ou SNR - Signal Noise Ratio) permet de quantifier le
rapport entre le signal et le bruit prsent sur le canal de transmission.

Attnuation (Free Space Loss)


La distance reprsente un facteur dattnuation du signal, du fait de sa dispersion
gomtrique (mme nergie rpartie sur une surface de plus en plus grande).

60 / 289
Services et rseaux 5.0 Alain Bron

Attnuation [dB] =
-20 log (c / (4 d f))

c = vitesse de la lumire
(300'000 km/s)
d = distance [m]
f = frquence [Hz]

Figure 11.74
Attnuation due la distance, avec conservation de lnergie transmise

Lnergie transmise par lantenne, qui est conserve dans lair sec, est rpartie sur une plus
grande surface : la quantit dnergie reue en un point et dautant plus faible, mme en
labsence de dissipation (absorbation) dans un matriau.

Lattnuation est inversement proportionnelle la distance et la frquence : la distance de


diffusion dune onde 5 GHz et plus faible qu 2,4 GHz, pour une mme puissance
dmission.

Figure 11.75
Attnuation dans lair libre et sec, en fonction de la distance et de la frquence

61 / 289
Services et rseaux 5.0 Alain Bron

11.7.8 Bilan des gains


Lexpression des gains et des pertes en dB permet de rapidement calculer le gain total dun
systme de transmission, en additionnant et soustrayant les diffrentes valeurs de chaque sous
systme.

Figure 11.76
Bilan des gains et des attnuations sur une ligne de transmission.
La puissance de +20 dBm mise par lAccess-Point correspond 100 mW (respect du PIRE).

62 / 289
Services et rseaux 5.0 Alain Bron

11.7.9 Wifi et la scurit


La diffusion spatiale des ondes lectromagntiques tant mal matrise, l'accs au rseau filaire
et aux ressources informatiques de l'entreprise est facilit, puisque l'accs physique aux locaux
n'est pas ncessaire.

Le risque d'interception et de modification de donnes en transit sur le rseau hertzien, qui se


comporte comme un bus logique, est galement lev, et ceci toujours sans devoir accder
physiquement aux locaux de l'entreprise.

Les risques de dni de service, volontaires ou non, lis la nature des ondes hertziennes n'est
pas ngliger, notamment du point de vue de la fiabilit et du taux de disponibilit du rseau.

Scurit de base

La matrise de la porte radio dun rseau Wifi constitue la premire mesure de scurit mettre
en place : en choisissant et en disposant les antennes de manire optimale, on vite de crer des
zones daccs au rseau non contrles.

Le standard WEP (Wired Equivalent Privacy) crypte16 les informations en circulation sur le
rseau radio l'aide d'une cl partage unique de 64 ou 128 Bytes, qui doit tre paramtre sur
chaque quipement (AP et clients).

L'usage d'une cl unique rend possible un dcodage de l'information, condition d'intercepter


suffisamment de donnes en transit.
Cette cl tant unique et commune tous les quipements, le rseau est protg contre des lments
extrieurs ; par contre, le trafic entre les lments eux-mmes est transparent pour tous les lments
partageant la cl WEP!

Le masquage du SSID du rseau Wifi supprime la diffusion de celui-ci (broadcasting du beacon)


au niveau de l'Access-Point17: cette mesure oblige les clients connatre le SSID du rseau,
mais complique la configuration des clients.

Le filtrage des adresses MAC (adresse Ethernet de la carte client) au niveau des Access Point
permet d'viter que des clients non autoriss n'utilisent l'Access-Point18.

Scurit volue

Le standard 802.11i met pour l'instant le point final la srie d'volutions rapides des protocoles
visant scuriser les rseaux Wifi et rgle la question de l'authentification, pour contrler l'accs
au rseau filaire et celle du cryptage, pour assurer la confidentialit des donnes en circulation
sur le rseau hertzien.

La technologie permettant de mettre en uvre le standard 802.11i prend le nom de WPA2


(Wireless Protected Access, version 2), qui succde au WPA qui avait t conu comme une
tape intermdiaire entre WEP et le futur 802.11i.

WPA / WPA2 connat deux variantes : la version personnal 19, cl partage et destine aux
petits rseaux de type domestiques et la version enterprise, avec mcanisme d'authentification
bas sur la norme 802.1x20.

16 Bas sur le chiffrement RC4


17 Le SSID peut tre dcouvert en coutant le rseau laide dun analyseur de trafic radio.
18 Les adresses autorises peuvent tre dcouvertes en coutant le rseau et il faut garder l'esprit qu'une adresse MAC peut tre
modifie au niveau du client.
19 Ou WPA-PSK (Pre-Shared Key)

63 / 289
Services et rseaux 5.0 Alain Bron

WPA2 s'appuie sur une multitude de technologies et sa mise en uvre va souvent consister
trouver les plus petits dnominateurs communs en termes de fonctionnalits entre le client Wifi
(le supplicant), l'Access-Point (l'authenticator) et le serveur d'authentification.

Le mcanisme d'authentification peut notamment respecter les variantes EAP


(Extensible Authentication Protocol) suivantes :

EAP-TLS Dvelopp par Microsoft, RFC 2716


Ncessite des certificats x509 valides
EAP-TTLS/MSCHAPv2 Bas sur un couple username/password
PEAP/MSCHAPv2 Dvelopp par Microsoft, Cisco, RSA
LEAP Propritaire Cisco

Figure 11.77
EAP entre client et serveur 8021.x

WPA2 amliore galement le cryptage en introduisant l'algorithme AES (Advanced


Encryption Standard) en remplacement de TKPI21 (Temporal Key Integrity Protocol) en
usage avec WPA.

WPA2 ncessite un composant matriel de chiffrement compatible, ce qui est le cas des
quipements mis sur le march depuis plusieurs annes.

L'intgrit des donnes est assure par l'algorithme MIC (Message Integrity Code), la
place du CRC classique, potentiellement modifiable l'insu du rcepteur.

20 La norme 802.1x permet de scuriser l'accs des rseaux de tous types, qu'ils soient filaires ou non, l'aide d'un serveur
d'authentification, par ex. de type RADIUS (Remote Authentication Dial-In User Service)
21 Cl dynamique.

64 / 289
Services et rseaux 5.0 Alain Bron

Figure 11.78
Mcanisme dauthentification WPA2

Autres fonctions de scurit.

Certains fabricants mettent sur le march des Access-Points capables de servir plusieurs SSID
associables des VLAN diffrents, permettant ainsi de sparer les trafics entre diffrents clients
ou de rediriger des clients sur un VLAN de quarantaine.

Des outils de dtection et de neutralisation d'Access-Points "pirates" (rogue) peuvent tre mis en
place, afin d'viter que des utilisateurs n'installent des points d'accs non autoriss sur le rseau
filaire de l'entreprise.

L'volution du protocole

Le monde du "sans-fil" est en volution permanente, et de nouveaux standards apparaissent, et


parfois disparaissent, rgulirement.

65 / 289
Services et rseaux 5.0 Alain Bron

Norme Dbit Caractristiques Compatibilit


802.11b (WiFi) 11 Mb/s 2.4 GHz, 100 mW 802.11g

802.11a 54 Mb/s 5 GHz

802.11g 54 Mb/s 2.4 GHz 802.11b

802.11n 450 Mb/s 2.4 et 5 GHz, MIMO

802.11ac 600 Mb/s 5 GHz, MIMO 802.11b, g, n


WEP Scurit 'faible' 802.11b, 802.11g
WPA Scurit 'forte' Sous ensemble de 802.11i

802.11i (WPA2) Scurit 'trs forte'

DECT Tlphones classiques


Bluetooth 720 kb/s 2.4 GHz, 10 mtres Priphriques PC
802.16a/e (WIMAX) 70 Mb/s 3.5 GHz, 50 km

Certains fabricants mettent sur le march des solutions propritaires destines augmenter le dbit ou
la couverture radio.
Si certains de ces standards seront appels disparatre, d'autres seront peut-tre normaliss, parfois
dans une version volue potentiellement incompatible avec la version de base.

IP Mobile (Mobile IP)

La technologie Mobile IP, complexe et peu dploye, permet de changer de rseau IP de faon
transparente, sans avoir changer d'adresse IP.
Dans ce cas de figure, les Access-Point n'ont plus besoin d'tre relis entre eux au niveau OSI 2
pour permettre le roaming.

Power Over Ethernet (PoE)

La technologie 'sans fil' exige, paradoxalement, passablement de cblages, puisquen gnral


chaque Access-Point est connect au rseau Ethernet filaire de l'entreprise et qu'une
alimentation lectrique est ncessaire 22.
La technologie PoE (Power On Ethernet - IEEE 802.3af), qui est propose pour de nombreux
commutateur Ethernet, permet d'alimenter lectriquement un quipement par le biais du cblage
universel, dont seuls 4 fils sur les 8 sont utiliss pour la transmission des trames Ethernet 10 et
100 Mb/s.

Commutateur Wifi et outils de gestion

La notion de concentrateur/commutateur Wifi recouvre une srie d'quipements, de type


commutateurs Ethernet quips de ports 10/100 PoE, prenant en charge de manire centralise
la gestion d'un grand nombre d'Access-Point. Dans ce modle, l'Access-Point est confin au rle
de passerelle entre le monde filaire et le monde sans fil (transducteur radio-Ethernet cbl).

22 Ces deux conditions peuvent parfois s'avrer trs contraignantes quant l'emplacement des AP.

66 / 289
Services et rseaux 5.0 Alain Bron

Figure 11.79
Commutateur Wifi et gestion centralis des Access-Point

Un logiciel de gestion, ventuellement associ des commutateurs Wifi, peut permettre de grer
plusieurs dizaines d'Access-Point, notamment du point de vue des paramtres de scurit et de
l'optimalisation de l'attribution des numros de canaux.

Le dialogue entre les commutateurs Wifi et les Access-Points est en gnral ralise laide dun
protocole propritaire bas sur des trames Ethernet.

Concession et licences d'exploitation

La technologie base autour des normes 802.11 est exempte de concession ou de licence, la
bande de frquence utilise tant libre (bande ISM) et les puissances d'mission trs limites
(puissance apparente < 100 mW).

D'autres technologies, comme le WIMAX, l'UWB ou l'UMTS utilisent des bandes de frquences dont
l'usage est rglement, et ncessite l'obtention d'une concession/licence d'exploitation de la part des
oprateurs dsirant utiliser cette technologie.

67 / 289
Services et rseaux 5.0 Alain Bron

12. Le protocole IP

Selon le modle OSI, les couches physiques d'un systme de communication informatique
rglent l'accs au mdia, dfinir des systmes de contrle d'erreur et d'adressage, notamment.

Dans l'optique d'un systme de communication fonctionnant l'aide de couches spcialises, de


nouveaux mcanismes prennent ainsi place au-dessus des couches physiques telles que les
sous-couches MAC et LLC dans le cas des standards IEEE 802.3.

Mme si des applications simples pourraient prendre place directement au-dessus des couches
physiques, ces nouvelles couches spcialises de niveau suprieur permettent la transmission
de donnes travers le rseau en mettant disposition des mcanismes (procdures, routines,
etc.) facilitant son utilisation tout en restant indpendant de ces mmes couches physiques.

Selon le principe de lencapsulation, une couche de niveau suprieure peut prendre place en
toute transparence sur n'importe quelle couche physique (figure 12.1)

Ces nouvelles couches apportent des fonctionnalits nouvelles et remplissent des tches qui ne
sont pas prises en charge par les couches physiques.

En rfrence au modle OSI, on parle de couches de niveau 3 et suivantes ; elles sont


regroupes sous l'appellation gnrale de couches logiques , par opposition aux couches
physiques qui interfacent directement avec le mdia.

La mission de ces couches logiques est notamment de permettre :

La dfinition dun systme d'adressage logique et hirarchique (dfinissable par un


administrateur, par exemple) et non plus fix par le constructeur du matriel (cas
Ethernet).
La mise en place un systme de contrle de flux.
La mise en place de la qualit de service.
La gestion de session.
L'accs au rseau pour des applications (transfert de fichiers, partage de ressources
etc.).
La mise en place dune couche commune tous les nuds dun rseau quel que soit
les technologies utilises aux niveaux 1 et 2 (rle de couche d'abstraction).

68 / 289
Services et rseaux 5.0 Alain Bron

Figure 12.1
Le paquet IP est encapsul dans diffrents conteneurs,
qui assurent le transport sur le mdia jusquau centre de tri (routeur) ou au destinataire final.

Alors que le dpartement de la dfense amricain et les universits amricaines dveloppaient


ARPANet et ses suites de protocoles, qui deviendront Internet et TCP/IP ou UDP/IP, diffrents
fabricants de matriel et diteurs de logiciels mettaient au point leurs propres suites de
protocoles, destines prendre place au-dessus des couches physiques, telles que celles
dfinies par les standards IEEE 802 ou sur des liaisons WAN, comme par exemple :

Novell, avec son Network Operating System (NOS) Netware et sa suite NETX/IPX,
Digital et DECNet,
Microsoft avec son NOS LanManager (qui sera repris et intgr dans la famille des OS
Windows) et NetBeui / NetBIOS
Apple, avec AppleTalk,
IBM, avec SNA pour le monde de ses mainframes,
Xerox et XNS.

69 / 289
Services et rseaux 5.0 Alain Bron

Figure 12.2
Couches logiques prenant place au-dessus des couches physiques ;
ici : NETX/IP en TokenRing sur cble cuivre

Figure 12.3
Page suivante : TCP/IP, services associs et modles OSI, selon Network Associates

70 / 289
Services et rseaux 5.0 Alain Bron

71 / 289
Services et rseaux 5.0 Alain Bron

12.1 Lhistoire de TCP/IP


TCP/IP est en ralit une suite de deux protocoles gnralement associs dans les rseaux, IP
(Internework Protocol) et TCP (Transmission Control Protocol), prenant respectivement place en
niveau 3 (rseau) et 4 (transport) du modle OSI23.

Lappellation TCP/IP est un raccourci dsignant en ralit un plus grand nombre de protocoles,
tels quUDP/IP ou ICMP, par exemple.

UDP (User Datagram Protocol) peut fonctionner sur IP comme alternative TCP.

Le concept de rseau dvelopp par le dpartement de la dfense amricain et le DARPA 24


(Defense Advanced Research Projetct Agency) se transforma au dbut des annes 80 en deux
entits, une militaire et l'autre civile, qui devint NFSnet.

A cette mme priode, les suites de protocoles dveloppes pour l'Arpanet volurent vers la
suite TCP/IP que l'on connat aujourd'hui.

IP ayant t, ds le dpart, dvelopp par des organes indpendants des constructeurs25


(militaires, puis universits), il s'est impos, la fin des annes 90 avec le dploiement
d'Internet, comme le protocole universel et est devenu un standard de fait utilis de bout en bout
dans les rseaux de communication, que ce soit au niveau LAN ou WAN.

LInternetwork Protocol actuellement utilise est la version 4 (IPv4), alors qu'une nouvelle mouture, IPv6,
ou IPng (IP Next Generation), a t labore et est en phase de timide dploiement.

Si le modle OSI dfini des fonctions spcifiques chacune des 7 couches du modle, le
dveloppement en parallle de diffrentes technologies introduit des redondances : typiquement, le
contrle derreurs peut tre effectu au niveau 1 avec Ethernet (CRC de trame), au niveau 3 sous IP
(CRC den-tte) et au niveau 4 avec TCP (CRC de segment).
De mme, Ethernet propose diffrents niveaux de service avec les implmentations de LLC1, LLC2 ou
LLC3.

Il est gnralement admis que le modle TCP/IP est un modle 4 couches (modle
DARPA) :

Figure 12.4
Modle TCP/IP 4 couches (modle DARPA)

23
Le modle OSI ayant t dvelopp en parallle, ou aprs, les principales suites de protocoles utiliss sur nos rseaux, la
correspondance avec ce modle nest donc jamais exacte.
24
Dans le but de crer un rseau redondant et capable dassurer les liaisons entre les centres stratgiques amricains, mme en cas
de destruction massive dune partie de linfrastructure de tlcommunication, grce au re-routage automatique des donnes.
25
A cet gard, TCP/IP est assez intimement li au dveloppement de l'OS UNIX

72 / 289
Services et rseaux 5.0 Alain Bron

12.1.1 La gouvernance dInternet (et de IP) et les RFCs


Lessor dInternet dans les annes 90 a largement contribu au dveloppement du protocole IP,
qui est aujourdhui universellement utilis, notamment dans les rseaux locaux des entreprises.
Ainsi, lvolution du protocole IP est maintenant lie lvolution dInternet, mme si
originellement IP tait un protocole parmi dautres.

La gouvernance dInternet et le dveloppement des technologies et des protocoles lis au


protocole IP dpendent dune multitude dorganismes, plus ou moins coopts et lis
ladministration et au gouvernement amricains.

IP et les protocoles associs sont devenus au fil du temps un ensemble de standard dpendant
de lIETF (Internet Engineering Task Force), IETF tant une structure informelle, sans statut et
organise en groupes de travail regroups en 7domaines, ce qui les diffrencies des normes
issues de lIEEE (Institute of Electrical and Electronics Engineers), comme les normes IEEE
802.3, 802.11, etc. fortement influences par les diffrents acteurs commerciaux du march.

Les RFCs (Request for Comments) dfinissent depuis 1969 les dtails des protocoles de lEITF.
Un RFC est un document proposant une technologie ou un protocole et qui doit suivre une
procdure dacceptation (comits de lecture, etc.) avant de devenir un standard publi 26.
Dautres RFC, de type rgles de lart , exprimental ou information peuvent tre
directement publi par lIETF, sans suivre la procdure de validation

Nimporte qui peut soumettre une proposition (draft) lIETF. Une fois le standard publi, il continue de
porter le nom de RFC

A lheure actuelle, plus de 4'000 RFC permettant linterconnexion entre nuds et rseaux sont
publis, dont une partie dentre eux sont utiliss dans le cadre dInternet.

Proposition Proposed Draft Standard


Draft Standard Standard RFC

http://www.rfc-editor.org
http://abcdrfc.free.fr
http://tools.ietf.org

LInternet Society (ISOC), association de droit amricain cre en 1992, coordonne le


dveloppement dInternet, tandis que l'Internet Assigned Numbers Authority (IANA) est
notamment en charge de la gestion des espaces dadressage des adresses publiques du
protocole IP. LIANA publie galement les tables des diffrentes valeurs (no de port. etc.)
normalises.

De son ct, l'Internet Architecture Board (IAB), nomm par lIETF est en charge des
orientations architecturales et stratgiques long terme, alors que l'Internet Engineering
Steering Group (IESG), compos des directeurs de domaines de lIETF, valide les standards
(RFC) issus de lIETF.

L'Internet Corporation for Assigned Names and Numbers (ICANN), organisation internationale
but non lucratif, de droit californien, fonde suite une directive du Dpartement du
Commerce amricain, est lautorit de rgulation dInternet.

26 Le RFC 1603 dcrit le fonctionnement des groupes de travail de lIETF

73 / 289
Services et rseaux 5.0 Alain Bron

La socit commerciale amricaine VeriSign est lentreprise charge par lICANN de grer les
noms de domaine .com et .net

RIPE (Rseau IP Europen, organisation indpendante but non lucratif), pour sa part, attribue
les adresses IP pour lEurope en tant que Regional Internet Registry (RIR), via son service RIPE-
NCC (Network Coordination Centre)
Les adresses sont ensuite confies aux providers locaux/nationaux (pour la Suisse :
http://www.ripe.net/membership/indices/CH.html)

Autres RIR
AfriNIC: Afrique et Ocan Indien
APNIC: Asia Pacific Network Information Center
ARIN: American Registry for Internet Numbers
LACNIC: Latin American and Carribean Internet Add. Registry

Figure 12.5
Ensemble des organismes en charge de la gouvernance dInternet et du protocole IP

Des voix se font rgulirement entendre pour que la gouvernance dInternet soit prise en charge
par un organisme neutre et indpendant des Etats-Unis, tel que lUnion Internationale des
Tlcommunications (UIT).

12.1.2 Larchitecture dInternet


Internet est ainsi un rseau de rseaux de diffrentes natures (commerciaux, acadmique) qui
partagent un ensemble de rgles et de protocoles, sous lgide dun ensemble dorganisme de
rgulation.

74 / 289
Services et rseaux 5.0 Alain Bron

Les diffrents rseaux constituant Internet sont regroups au sein dAutonomous Systems (AS)
partageant des rgles de routage.

Les IXP (Internet eXchange point) sont les points dinterconnexion o un oprateur propose
diffrentes connexions sur diffrents Autonomous Systems.

Le protocole BGP (Border Gateway Protocol) gre le trafic entre les diffrents Autonomous
Systems.

Figure 12.6
Ensemble des organismes en charge de la gouvernance dInternet et du protocole IP

75 / 289
Services et rseaux 5.0 Alain Bron

12.2 Le protocole IP sur Ethernet


Ethernet constitue une technologie privilgie pour le transport du protocole IP (RFC 791), sur les
LAN mais de plus en plus galement au niveau des WAN.

Limplmentation usuelle de IP sur Ethernet fait appel des trames de type Ethernet II (RFC
894) ; le RFC 1042 dfini limplmentation de IP sur des trames 802.2 (Ethernet_SNAP), mais
nest gnralement pas mis en uvre.

Figure 12.6
Paquet IP encapsul dans une trame Ethernet II, selon le RFC 894

La valeur du champ Ethertype permet de spcifier le type de protocole transport.


Un champ Ethertype fix 0x800 (2048 dcimal ou 0000100000000000 en binaire) signifie que
le protocole encapsul dans la trame Ethernet est un paquet IP.

12.3 Le format du paquet IP


Si les donnes formates pour tre transmises par la technologie Ethernet prennent le nom de
trame (frame), les donnes de niveau 4 sont encapsules dans un datagramme IP.

Un datagramme peut tre fragment en paquets27 en fonction de la taille maximale des donnes
supporte par les couches infrieures (MTU : Maximum Transmission Unit).

MTU pour Ethernet : 1'518 18 Bytes champs en-tte (MAC D, MAC S, ET, CRC) 1500 Bytes.

Figure 12.7
(Fragmentation dun datagramme IP en fonction du MTU des couches physiques)

27
Les termes paquet et datagramme sont souvent utiliss lun pour lautre.

76 / 289
Services et rseaux 5.0 Alain Bron

Le protocole IP ne met pas en uvre de contrle et de gestion de connexion (IP est un protocole
connectionless : aucun mcanisme de retransmission ou dacquittement nest mis en place son
niveau).
Le protocole IP achemine les paquets de rseau en rseau, sans tenir compte de lordre dans
lequel ils sont fournis au destinataire, chaque paquet tant considr pour lui-mme.

Un paquet IP dbute par un en-tte (header) de 20 Bytes compos de 12 champs, ou jusqu 60


Bytes dcoups en 13 champs si des options sont dfinies, et organis avec le bit de poids fort
en premier (big endian). Les donnes de niveau 4 prennent place la suite de len-tte.

12.3.1 Len-tte IP.

Figure 12.8
Champs de len-tte dun paquet IP

Figure 12.9
En-tte dcod dun paquet IP

77 / 289
Services et rseaux 5.0 Alain Bron

MAC Dest EtherType


MAC Source

En-tte IP

Figure 12.10
En-ttes trame Ethernet et paquet IP exprim en Hexadcimal et en ASCII

Taille
Champ Signification
(bits)
Version 4 Prcise la version du protocole IP. La valeur courante est 4 (IPv4)

Internet Header Prcise la longueur de len-tte, le champ option tant facultatif ; permet de dterminer o
4
Length dbutent les donnes dans le paquet IP

Type of Service Permet la mise en uvre de la qualit de service (QoS)


(ToS) Supporte 3 implmentations diffrentes

ou IntServ, RFC 791. Traitement par flux.


8
DiffServ (DS) Actuellement, les champs QoS DiffServ (et 2475, 1998) et ECN (RFC 3168, 2001) sont utiliss
en remplacement du ToS historique.
ou DiffServ (Differentiated Services) RFC 2474. Traitement du trafic par classes

(DS)/ECN DiffServ+ECN (Explicit Congestion Notification) RFC 3260

Taille totale du paquet en Bytes.


Total Length 16
Taille minimale 20 Bytes (header), taille maximale dun paquet : 216 -1 = 65'535 Bytes.
Numro du datagramme : en cas de fragmentation, chaque paquet utilise ce mme
identificateur, ce qui permet au rcepteur de rassembler les paquets appartenant un mme
Identification 16 datagramme. La numrotation est squentielle et indpendante du flux (chaque datagramme
sortant est numrot de manire incrmentielle, quelle que soit sa destination).
Tentative dutiliser ce champ pour tracer les paquets

x01=un fragment suit (MF) x00=dernier ou seul fragment.


x10=ne pas fragmenter (DF) ; x=bit non utilis
Flags 3
Si la fragmentation est interdite et que le MTU des couches infrieures est plus petit que la
taille du datagramme, ce dernier est supprim.

Indique la position, par unit de 8 Bytes, des donnes dans le datagramme lorsque celui-ci est
Fragment Offset 13
fragment28. Permet le rassemblage des paquets dans le bon ordre.

Dfini la dure de vie dun paquet en termes de nombre de routeurs traverss (nombre de
sauts/hops). Chaque routeur qui retransmet un paquet dcrmente le TTL de 1. Permet
Time To Live TTL dviter un bouclement des paquets (par exemple en cas de boucle de routage) ; lorsque le
8
TTL atteint 0, le paquet est limin (discarded) par le dernier routeur qui avertit lmetteur
laide dun message de service ICMP (TTL exceeded). Valeurs usuelles lmission : 32, 64
ou 128.

28
La fragmentation seffectue ainsi par multiples de 8 Bytes la taille minimale dun fragment est donc de 28 Bytes (20 Bytes den-tte
et 8 Bytes minimum de donnes)

78 / 289
Services et rseaux 5.0 Alain Bron

Spcifie le protocole de niveau 4 transport par le paquet (dfinis par RFC 1700).
Protocol 8
0x01=ICMP 0x06=TCP 0x17=UDP

Permet de vrifier labsence derreur de transmission au niveau de len-tte du paquet. Len-


tte tant modifi chaque passage de routeur (notamment le TTL), le checksum est recalcul
Header
16 et mis jour par chaque routeur.
Checksum
En cas derreur, le paquet est supprim.
Ne constitue pas un vrai contrle dintgrit.

Source
32 Adresse IP de lexpditeur
Address

Destination
32 Adresse IP du destinataire
Addrress

Facultatif ; caractres de bourrage pour obtenir un multiple de 32 bits


Options 0-320
Les premiers 8 bits permettent de dfinir les options

Figure 12.11
Champs de len-tte IP

12.3.2 Fragmentation des datagrammes IP


En fonction des couches physiques utilises, le datagramme IP doit tre segment en paquets
adapts leur MTU.
En cas de fragmentation, les paquets conservent tous le numro didentification du
datagramme dont ils sont issus.

Le numro didentification est attribu aux datagrammes de manire squentielle, dans lordre dans
lequel ils sont mis, sans tenir compte des flux.

La position relative de chaque paquet dans le datagramme est prcise par la valeur du champ
offset.

Figure 12.13
Champ identification squentiels (17603 et 17604) pour 2 paquets IP successifs appartenant des flux
diffrents (source identique et destinations diffrentes)

Le drapeau (flag) MF (more fragments) permet de spcifier si le paquet est le dernier dune srie
(ou sil constitue un datagramme lui tout seul), ou si dautres paquets constituant le mme
datagramme sont attendre.

79 / 289
Services et rseaux 5.0 Alain Bron

MF = 000 dernier ou seul fragment (paquet)


MF = 001 un fragment (paquet) suit

Le drapeau DF (dont fragment - 010) interdit la fragmentation du datagramme. Si le MTU


courant est plus petit que le datagramme, ce dernier est dtruit et lmetteur averti par lenvoi
dun message ICMCP.

No Identification
identique pour les 3
paquets

Payload icmp
reconstitu par
lanalyseur

Indication de
fragmentation
et offset

Figure 12.14
Exemple de fragmentation dun datagramme IP de 3028 Bytes (ICMP, avec ping l 3000)
(Payload icmp= 3'000 Bytes, auxquels il faut ajouter 8 Bytes den-tte ICMP + 20 Bytes en-tte IP)

C:\ >ping 10.192.68.1 -l 3000 -f

Envoi d'une requte 'ping' sur 10.192.68.1 avec 3000 octets de donnes :

Le paquet doit tre fragment mais paramtr DF.


Le paquet doit tre fragment mais paramtr DF.
Le paquet doit tre fragment mais paramtr DF.
Le paquet doit tre fragment mais paramtr DF.

Statistiques Ping pour 10.192.68.1:


Paquets : envoys = 4, reus = 0, perdus = 4 (perte 100%),

Figure 12.15
Flag DF (ping f) provoquant une suppression du datagramme, car taille > que MTU
(MTU Ethernet = 1500)

80 / 289
Services et rseaux 5.0 Alain Bron

C:\>ping 10.192.68.1 -l 1472 -f

Envoi d'une requte 'ping' sur 10.224.10.1 avec 1472 octets de donnes :

Rponse de 10.192.68.1: octets=1472 temps=2 ms TTL=255


...

C:\>ping 10.192.68.1 -l 1473 -f

Envoi d'une requte 'ping' sur 10.192.68.1 avec 1473 octets de donnes :

Le paquet doit tre fragment mais paramtr DF.


...

Figure 12.16
Mise en vidence du MTU
(MTU Ethernet = 1500 - en-tte IP = 20 - en-tte ICMP = 8 =1'472 Bytes )

C:\ >netstat s

Fragmentations de datagrammes russies = 0
Fragmentations de datagrammes dfaillantes = 3
Fragments Crs = 0

Figure 12.17
Erreurs de fragmentation provoques par le flag DF

Le rcepteur rassemble les paquets laide du numro didentification29 et des informations


doffset, afin de reconstituer le datagramme.

Figure 12.18
Fragmentation dun datagramme de 5140 Bytes sous Ethernet

29
Le datagramme est identifi de manire univoque grce son no didentification, ainsi que par le protocole vhicul et les adresses
IP sources et destination, puisque des datagrammes en provenance dexpditeurs diffrents pourraient par hasard utiliser le mme
numro didentification

81 / 289
Services et rseaux 5.0 Alain Bron

12.3.3 Problmes lis la fragmentation


Ladaptation au MTU ncessite des ressources au niveau des routeurs devant effectuer la
fragmentation et pnalise la rapidit de la transmission (augmentation du temps de latence).
La fragmentation elle-mme augmente loverhead (multiplication des en-ttes, dont la taille,
relativement aux donnes (payload) devient plus importante) et la perte dun paquet (fragment)
ncessite le renvoi du datagramme complet par les couches suprieures.

Des paquets rceptionns dans le dsordre par un firewall statefull peuvent tre considrs comme non-
conformes et supprims, et le datagramme ne sera pas reu et devra galement retransmis.

Loptimisation du flux des paquets IP implique dajuster la taille du paquet transmettre la plus
petite valeur MTU rencontre sur le chemin menant au destinataire, de manire minimiser le
temps perdu en fragmentations successives.

A contrario, lutilisation dun MTU trop petit reprsenterait une solution sous-optimale en regard du
potentiel de la liaison.

Figure 12.19
Chemin construit sur des technologies supportant diffrents MTU,
pour un MTU optimal lmission de 372 Bytes.

Si la taille du MTU est fixe par la technologie employe au niveau de la couche physique locale,
il est en gnral possible de modifier ce paramtre au niveau logiciel.

Une pratique obsolte consistait fixer, pour toutes les destinations distantes, le MTU au MTU du
premier saut sil est plus petit que 576 Bytes, ou 576 Bytes30 dans le cas contraire (RFC 1122).

RTC (modem analogique) / X25 MTU 576

PPPoE (xDSL) MTU 1492

Ethernet (10/100/WiFi) MTU 1500

Ethernet Giga MTU 1500/4096

Figure 12.20
MTU typiques

Sous TCP/IP, le MSS (Maximum Segment Size), reprsente la taille maximale du segment TCP
pouvant tre transmis (MSS = taille MTU en-ttes TCP + IP ).

Par dfaut, le MSS est infrieur de 40 au MTU (20 Bytes den-tte IP + 20 Bytes den-tte TCP).

30
Historiquement, les liaisons WAN via le rseau RTC supportaient des MTU de 576 Bytes.

82 / 289
Services et rseaux 5.0 Alain Bron

HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\<itf_ID>\MTU

ifconfig eth0 mtu 1500

Figure 12.21
Cl de registre Windows XP fixant la taille du MTU pour une interface (DWORD en dcimal)
et commande sous Linux

12.3.4 PMTUd
Le protocole Path MTU discovery (PMTUd RFC 1191) permet au nud metteur dautomatiser
la dcouverte de la taille du MTU optimale (PMTU) en fonction du chemin parcourir.

Quand un routeur reoit un paquet trop gros pour tre transmis dun seul tenant, et que celui-ci a
t marqu avec le flag DF, il retourne un message ICMP (type 3 / code 4, "Destination
Unreachable" / "Fragmentation Needed and DF was Set") indiquant le rejet du paquet.

Lmetteur prend acte de cette indication en envoyant des paquets plus petits et, par itration,
peut trouver la taille optimum du paquet pour une connexion travers un chemin particulier.

Le protocole PMTUd prvoit que tous les paquets IP soient ainsi transmis avec le flag DF,
charge lmetteur dadapter la baisse la taille des paquets/MTU, jusqu ce quil ne reoive
plus de paquet ICMP type 3 / code 4 en retour.

Les routeurs compatibles PMTUd peuvent retourner dans le champ de donnes du paquet ICMP type 3 /
code 4 la taille du MTU support sur le lien ncessitant une fragmentation.

Figure 12.22
Message ICMP 3,4, avec next-hop MTU selon RFC 1191

Le chemin menant destination pouvant changer au cours du temps, lmetteur transmet


rgulirement31 des paquets ICMP en augmentant la taille du MTU, de manire dterminer si
lventuel nouveau chemin permet de transmettre de plus gros paquets.

Le PMTU dtermin pour un destinataire est conserv en cache par lmetteur (dans sa table de
routage).

31
De lordre de toutes les 2 10 minutes

83 / 289
Services et rseaux 5.0 Alain Bron

HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\EnablePMTUDiscovery (= 1)

Figure 12.23
Activation du protocole PMTUd sous Windows

Figure 12.24
Outil TCP Optimizer de modification et de tests des paramtres IP sous Windows

12.3.5 Problmes lis PMTUd


Pour des questions de scurit, de nombreux routeurs/firewall bloquent les paquets ICMP,
empchant ainsi les informations de fragmentation (ICMP type 3 / code 4) de parvenir
lmetteur.

Ne recevant pas davis de suppression de paquet pour cause de MTU trop grand, lmetteur
continue transmettre des paquets dont la taille nest pas supporte sur le chemin menant
destination (ils seront donc supprims par le routeur, le flag DF tant activ, sans que lmetteur
en soit averti).
Ce phnomne est connu sous le nom de trou noir ou black hole .

Une attaque par dni de service consiste envoyer une victime V des messages ICMP type 3 / code
4, en se faisant passer pour un correspondant actif et lgitime L, dans le but dobtenir une rduction de
la taille des paquets jusqu'au MTU minimum du protocole (68 octets en IPv4) pour ce flux V L.
Le standard recommandant d'attendre jusqu dix minutes avant de tenter daugmenter la taille des
paquets, il suffit ainsi d'envoyer un message ICMP forg la victime V toutes les dix minutes seulement
pour pnaliser lourdement son dbit en mission.

Pour tenter de conserver un dbit maximal avec son correspondant lgitime L, la victime V tendra
transmettre beaucoup de paquets de petite taille, entranant une surcharge ( tempte d'interruptions )
au niveau des quipements traverss et plus particulirement au niveau de la victime elle-mme.
Sous l'effet de la surcharge, la victime peut devenir compltement inoprationnelle.

PMTUd tend tre dsactiv sous IPv4, alors quil est obligatoire avec IPv6, ce dernier ne
supportant pas la fragmentation.

84 / 289
Services et rseaux 5.0 Alain Bron

12.3.6 Champ ToS : La qualit de service (QoS)


La notion de qualit de service (QoS - Quality of Service) peut tre mise en uvre diffrents
niveaux (OSI 2, via le champ CoS (Class of Service) de trame 802.1q, par exemple) ou via le
champs ToS de l'en-tte IP (OSI 3).

La QoS peut tre mise en uvre de manire purement locale et autonome, ou tre applique de
manire coordonne un systme complet, les donnes tant traites de bout en bout avec les
mmes rgles.

La mise en uvre de la QoS implique de prioritiser certains flux, donc den pnaliser dautres32.

Lalternative pragmatique la QoS est de dimensionner largement les systmes (routeurs, lignes), afin
dviter la mise en comptition de diffrents trafics.

Le champ ToS/DS (Type of Service / Differentiated Services) de len-tte IP permet


dimplmenter la qualit de service (QoS - Quality of Service) au niveau OSI 3.

Lusage de ce champ a vari au fil du temps et nest pas systmatiquement mis en uvre.
La plupart des routeurs ne tiennent pas compte des informations y figurant, ou rinitialisent simplement
ces valeurs 0

Dans le cas o aucune QoS nest mise en uvre, les paquets sont traits selon le principe du
best effort , et cette variation de rapidit de traitement durant la transmission dun flux peut
impliquer lapparition de gigue33.

IntServ/RSVP

Historiquement, le champ ToS a fait appel au concept dIntServ (Integrated Service - RFC 791,
protocole inclus dans RSVP, Ressource ReserVation Protocol - RFC 2205) qui suppose une
rservation de ressource par flux de donnes entre deux nuds spcifiques, le nud rcepteur
dfinissant lui-mme les valeurs ncessaires du champ ToS.

Un flux est rfrenc laide des informations de session :

Adresses IP source et destination (unicast ou multicast)


Protocole ID
Ports UDP/TCP source et destination.

Trs complexe et gourmand en ressource au niveau des routeurs (chaque routeur devant dcider
des priorits accorder aux paquets IP en transit en fonction du flux auquel ils appartiennent et
des informations ToS), IntServ convient plutt aux rseaux de petite taille, mais n'est pas adapt
Internet et a de fait t peu dploy.

En principe, ce modle est aujourdhui obsolte.

32
Par exemple trafic VoIP contre FTP
33
Les applications de type CBR (Constant Bit Rate - multimdia, voix) sont particulirement sensible la gigue.

85 / 289
Services et rseaux 5.0 Alain Bron

Bits Signification Usage


000=routine
001=prioritaire
010=immdiat
0
011=instantan
1 priorit de traitement (precedence)
100=instantan rapide
2
101=critique
110=internetwork control
111=network control.
3 dlai supportable 0=dlai normal, 1=dlai lent
4 dbit demand 0=dbit normal, 1=haut dbit
5 fiabilit 0=fiabilit normale, 1=haute fiabilit
6 cot 0=cot bas, 1=cot lev
7 pas utilis.

Le protocole de signalisation RSVP utilis par IntServ permet dallouer dynamiquement de la


bande passante et de garantir un dlai de traitement et dacheminement des paquets IP.

La demande de QoS seffectue par le rcepteur qui rserve des ressources selon ses besoins
(dans une logique multicast, cest les clients recevant le flux - ici, les rcepteurs - qui dcident de
la QoS qui leur est ncessaire, autorisant ainsi par exemple une facturation diffrencie).

Les flux tant considrs comme unidirectionnels (simplex), la QoS doit tre dfinie explicitement
pour les deux sens de communication.

Les routeurs RSVP situs sur le chemin dun flux avec QoS doivent rpondre aux requtes de
type RSVP pour mettre en place la rservation du chemin, alors que les routeurs non RSVP sont
traverss de faon transparente.

Les paquets RSVP sont encapsuls dans des paquets UDP ou prennent place directement au-dessus
de IP.

L'metteur envoie un message PATH prcisant les performances dsires (descripteur TSPEC),
afin de dterminer le chemin menant au destinataire (les routeurs, via les protocoles de routage
usuels).

A chaque passage de routeur, un tat PATH-STATE est cr.

Le rcepteur rpond au message PATH par un message RESV permettant de rserver les
ressources le long du chemin dfini par le message PATH

Les routeurs ayant not ladresse du routeur les prcdant (PHOP Previous Hop) lors du passage de
la requte PATH, ils se chargent de router le message RESV en consquence, sans tenir compte des
informations de routage usuelles).

A la rception du message RESV, le dernier routeur avant la source gnre un message


RESVCONF quil retourne au destinataire.

Figure 12.25
Format dune requte RESV lmentaire.

86 / 289
Services et rseaux 5.0 Alain Bron

Le rcepteur effectuant la rservation (RESV) peut dcider des ressources rserver, en tenant
plus ou moins compte des informations figurant dans la requte PATH, en fonction de ses
besoins et de ses propres ressources.

Les routeurs situs sur le parcours des flux RSVP traitent les paquets (queuing, ) de chaque
flux (FilterSpec) en fonction des paramtres contenus dans la partie FlowSpec du
FLowDescriptor figurant dans la requte RESV.

Figure 12.26
Flux RSVP

Le chemin menant au destinataire pouvant varier au fil du temps (modification des routes selon le
routage IP), le processus PATH/RESV est rpt rgulirement de manire adapter le QoS la
route suivie par le flux ; les ressources sont ainsi libres par les routeurs qui ne sont plus
concerns par le flux, alors que dautres routeurs rservent leur tour les ressources
ncessaires maintenir la QoS.

Lorsquun segment agrge diffrents flux QoS, la rservation se rgle sur le plus exigeant

.
Figure 12.27
Rservation de la requte la plus exigeante en cas de flux multiple sur un seul lien.

87 / 289
Services et rseaux 5.0 Alain Bron

Limites dIntServ/RSVP

Si la rservation de ressource pour un flux est trop consquente pour leurs ressources, les
routeurs la refusent.
Dans le cas o une ressource F1 est en vigueur sur un routeur (routeur R3, fig. 12.27) et quune
demande de ressource F2 pour un nouveau flux est mise, le routeur propagera cette dernire
demande dans le cas o F2>F1.
Si le routeur R4 ne peut pas satisfaire cette demande, la liaison risque dtre interrompue pour
le premier flux.

Paradoxalement, plus le rseau est encombr, plus la ncessit dune QoS se fait sentir, donc le
nombre de flux IntServ augmente, chargeant dautant plus les routeurs, ce qui risque daltrer les
performances gnrales.

Pour que de la QoS puisse tre mise en uvre laide IntServ/RSVP, tous les routeurs
considrs doivent tre compatibles avec ce standard et tenir compte des informations du champ
ToS.

DiffServ

DiffServ (RFC 2475) assure une distinction des paquets par classes de donnes.
Les donnes sont identifies grce un tiquetage utilisant le champ historique ToS de l'entte
IP.

Chaque routeur du rseau apporte alors un traitement diffrenci en fonction de la classe de


service auquel est affili le paquet IP en transit, sans tenir compte des caractristiques du flux
(adresses sources/destinations, par exemple).

Le champ ToS se dcompose en 3 bits de priorit de traitement (precedence), suivis de 3 bits


dfinissant des critres de routage.

Les paquets IP de type DiffServ sont marqus l'entre du rseau par un routeur frontire
(access routers), les routeurs suivants (core routers) dcident en fonction de cette tiquette
(classe) de la file d'attente dans laquelle les paquets vont tre placs.

La complexit du traitement (dtermination de la classe de service appliquer un paquet) est


ainsi concentre dans les routeurs aux frontires du rseau, ces derniers devant tre configurs
en consquence.

Si la granularit du modle DiffServ est moins fine que pour le modle IntServ, ses performances
sont meilleures, mais les rgles et les classes ne sont dfinies et valables que pour un domaine
DiffServ.

Ainsi, un domaine DiffServ regroupe un ensemble de routeurs contigus partageant les mmes
rgles et classes et une rgion DiffServ agrge, via un edge router, des domaines DiffServ
contigus pour lesquels un SLA (service Level Agrement) permettant de garantir une qualit de
service de bout en bout est dfini.

88 / 289
Services et rseaux 5.0 Alain Bron

Figure 12.28
Deux domaines DiffServ partageant le mme DLA formant une rgion DiffServ

DiffServ implmente quatre classes de service (PHB - Per Hop Behavior), indpendamment de
lexpditeur :

Best Effort (priorit basse) : PHB par dfaut et dont le DSCP vaut 000000. Traitement de
type FIFO, les paquets ne pouvant tre traits sont supprims.

Assured Forwarding (AF) (RFC 2597) : regroupant plusieurs PHB garantissant un


acheminement de paquets IP avec une haute probabilit sans tenir compte des dlais,
cette famille de PHB est scinde en 4 classes garantissant de fournir une bande passante
et un dlai minimum, chaque classe comprenant 3 niveaux de priorit (Drop Precedence)
permettant de dterminer les conditions dans lesquels un paquet AF peut tre supprim.

Expedited Forwarding (EF) ou Premium Service (RFC 2598) : correspond la priorit


maximale ; a pour but de garantir une bande passante constante, avec des taux de perte,
de dlai et de gigue faible en permettant le transfert de flux fortes contraintes
temporelles comme la tlphonie sur IP par exemple.

Default Forwarding (DF), utilis uniquement pour les flux Internet qui ne ncessitent pas
un trafic en temps rel.

Les classes Class Selector (CS) garantissent la compatibilit avec les valeurs ToS
precedence (bit 0-2).

Le traitement (priorit, etc.) des paquets appartenant chaque classe est propre aux rgles
dfinies pour chaque domaine DiffServ.

89 / 289
Services et rseaux 5.0 Alain Bron

Classe Dcimal Binaire Description


AF11 10 001010 Classe 1 risque de suppression (drop) faible
AF12 12 001100 Classe 1 - risque de suppression moyenne
AF13 14 001110 Classe 1 - risque de suppression haute
AF21 18 010010 Classe 2 - risque de suppression faible
AF22 20 010100 Classe 2 - risque de suppression moyenne
AF23 22 010110 Classe 2 - risque de suppression haute
AF31 26 011010 Classe 3 - risque de suppression faible
AF32 28 011100 Classe 3 - risque de suppression moyenne
AF33 30 011110 Classe 3 - risque de suppression haute
AF41 34 100010 Classe 4 - risque de suppression faible
AF42 36 100100 Classe 4 - risque de suppression moyenne
AF43 38 100110 Classe 4 - risque de suppression haute
BE 0 000000 Best Effort
CS0 0 000000 ToS Precedence 0 (ToS bits 0 -2)
CS1 8 001000 ToS Precedence 1
CS2 16 010000 ToS Precedence 2
CS3 24 011000 ToS Precedence 3
CS4 32 100000 ToS Precedence 4
CS5 40 101000 ToS Precedence 5
CS6 48 110000 ToS Precedence 6
CS7 56 111000 ToS Precedence 7
EF 46 101110 Expedited Forwarding

Figure 12.29
Valeurs DSCP pour classes AF (Assured Forwarding), EF (Expedited Forwarding - traitement acclr),
BE (Best Effort) et CS (Class Selector)

90 / 289
Services et rseaux 5.0 Alain Bron

Figure 12.30
Pseudo-mise en uvre sur Cisco

91 / 289
Services et rseaux 5.0 Alain Bron

ECN

La troisime modification du champ ToS porte sur laffectation des deux derniers bits du champ
ToS au champ ECN34 (Explicit Congestion Notification RFC 2481).

Compos des bits ECT (ECN Capable Transport) et CE (Congestion Experienced), ECN permet
de dterminer si des routeurs sont congestionns, afin que lmetteur puisse ralentir le dbit
avant que des paquets ne soient supprims.

ECN agit de manire similaire au contrle de flux TCP (niveau 3), qui agit entre nuds finaux.

ECT CE signification
0 0 Pas utilis

0 1 Ce routeur ne supporte pas ECN

1 0 Ce routeur supporte ECN

1 1 CE Congestion experienced

Figure 12.31
Signification des bits ECN

Limites dECN

Trs peu dquipements implmentent ECN sur IP

12.3.7 Les champs Header length et total length


Le champ de 4 bits IHL (Internet Header Length) dfini la longueur de len-tte du paquet,
exprime en mot de 32 bits, et permet de dterminer lemplacement du dbut des donnes dans
le paquet.

Si le champ options nest pas utilis, la valeur du champ IHL vaut 5 (20 Bytes), ce qui est le plus souvent
le cas.

Le champ de 16 bits TL (Total Length) prcise la longueur totale du paquet, y compris son en-
tte, exprime en mots de 8 bits (Byte).

Un TL de 100 signifie que le paquet a une longueur de 800 Bytes.

Si la taille maximale dun datagramme est de 65'535 Bytes (216-1), le RFC prcise que tous les nuds
implmentant le protocole IP doivent au moins accepter des paquets dune taille de 576 Bytes35 (556
Bytes de donnes, avec un en-tte IP de 20 Bytes, ce qui autorise typiquement des transferts de blocs
de 512 Bytes).

34
De plus en plus obsolte, ECN est en gnral adapt au protocole TCP (RFC 3168).
35
MTU historique des liaisons via le rseau RTC

92 / 289
Services et rseaux 5.0 Alain Bron

12.3.8 Le champ TTL


Les paquets IP ont une dure de vie limite, afin dviter quils ne tournent en boucle
indfiniment, par exemple en cas derreur de routage.

Si le champ de 8 bits Time To Live tait historiquement spcifi en secondes, les


implmentations actuelles considrent la valeur du TTL en nombre de sauts (hops), cest dire le
nombre de routeurs traverss par le paquet.

A chaque passage dun routeur, la valeur du TTL est dcrmente dune unit.

Le nud (routeur) qui passe la valeur du TTL 0 dtruit le paquet et en avertit lexpditeur
laide dun message ICMP TTL Exceeded .

Lorsquun paquet reste en attente (en queue) au niveau dun routeur, ce dernier dcrmente galement
le TTL dune unit par seconde36 dattente. Si le TTL atteint 0, le paquet est galement supprim.

La valeur initiale du TTL dpend des implmentations 37 (valeur maximale 28 = 255 ou 4 minutes
et 15 secondes), et une destination situe au-del du TTL associ un paquet ne sera donc pas
atteignable.

Le champ TTL est notamment utilis par loutil traceroute.

12.3.9 Le champ Protocole


Le champ de 8 bits protocole permet de prciser le protocole transport (encapsul) dans le
datagramme IP38, selon le RFC 1700.

Dcimal Acronyme Nom du protocole Rfrence

1 ICMP Internet Control Message RFC 792

2 IGMP Internet Group Management RFC 1112

4 IP Encapsulation de IP dans IP

6 TCP Transmission Control Protocol RFC793

8 EGP Exterior Gateway Protocol RFC 888

17 UDP User Datagram Protocol RFC 768

46 RSVP Reservation Protocol

Figure 12.32
Numro des protocoles sous IP

36
A priori, un routeur conservant des paquets en queue plus dune seconde semble suspect !
37
Valeurs par dfaut constate sous Windows XP SP2 : ICMP :31, UDP : 64, TCP : 64 ; configurable sous
HKLMSYSTEM\ControlSet001\Services\Tcpip\Parameters\DefaultTTL
38
A la manire du champ EtherType dans une trame Ethernet_II

93 / 289
Services et rseaux 5.0 Alain Bron

12.3.10 Le champ Header Checksum


Le contrle den-tte valide len-tte du paquet IP, lexclusion des donnes transportes.

La valeur de contrle de 16 bits est recalcule chaque modification du contenu de len-tte,


c'est--dire chaque passage de routeur, puisque le TTL est dcrment cette occasion.

Le mcanisme de contrle appliqu (complment 1) permet de statistiquement valider len-tte du


point de vue des erreurs de transmission, mais pas dassurer lintgrit de len-tte du point de vue des
manipulations quil aurait pu subir.

En fonction de lapplication, les paquets en erreurs peuvent tre supprims, en vue dune
retransmission. En cas de suppression dun paquet, lmetteur est averti par un message ICMP.

En-tte exprim en Hexadcimal, par mots de 16 bits. Pendant le calcul, le champ checksum prend la
valeur 0 :

4500 003C 9C3E 4000 4011 0000 0A00 000A 0A00 0001
checksum
Somme des mots de 16 bits de len-tte, en Hxadcimal :
4500+003C+9C3E+4000+4011+0000+0A00+000A+0A00+0001 = 0x17596

Somme exprime en binaire :


10111010110010110

Complment 1 de la somme
01000101001101001

Complment 1 exprim en hexa :


0x8A69 = checksum de len-tte.

Figure 12.33
Calcul du checksum de len-tte IP.

94 / 289
Services et rseaux 5.0 Alain Bron

12.3.11 Le champ Options den-tte.


Les options permettent dimplmenter des fonctionnalits additionnelles, non fournies par len-
tte IP de base.

Les nuds dmission, de rception et de transit (routeurs) doivent tre capables dinterprter les
options dfinies.

Les options peuvent tre contenues dans un seul champ option-type de 1 Byte ou dans 3
champs distincts option-type, option-length et option-data.

option-type (8 bits) option-length (8 bits) option-data (->304 bits)

Byte no1 Byte no2 Bytes no3 40

Figure 2.34
3 champs options de la zone options de len-tte IP

Bits du champ
Signification
option-type
=1 : copier les options dans tous les paquets en cas de segmentation.
0
=0 : ne pas copier les options en cas de segmentation.
=00 : classe supervision de rseau (contrle) classe 0
=01 : nest pas utilis.
1-2
=10 : classe dpannage et mesures classe 2
=11 : nest pas utilis.
=00000 : indique la fin du champ option sil ne concide pas avec la fin de
len-tte, pas de champ option-length (ncessite alors des caractres de
bourrage pour complter les 32 bits).
=00001 : pas dopration (champ bidon pouvant tre insrer entre 2 Bytes
afin datteindre 32 bits), pas de champ option-length.
3-7 =00010 : applications militaires.
=00011 : routage dfini par la source (lche).
=00100 : horodatage (classe 2)
=00111 : enregistrement de route.
=01000 : identificateur de connexion.
=01001 : routage dfini par la source (stricte).

Figure 12.35
Valeurs pour le champ option-type

Taille maximum champ option-data = 41 Bytes - 3 Bytes = 38 Byte


Une route IP = 4 Bytes -> Nombre maximum de routes dans un contexte de source-routing = 9 (4 x 9 =36)

Figure 12.36
Exemple dutilisation du champ options dans le cas du source-routing stricte.

95 / 289
Services et rseaux 5.0 Alain Bron

12.4 Ladressage IP
Le systme d'adressage logique du protocole IPv4 est compos d'une adresse source et d'une
adresse destination, dune longueur de 32 bits chacune.

Un masque de rseau (netmask), galement de 32 bits, est ncessaire la configuration des


paramtres IP dun nud mais ne fait pas partie de len-tte IP.

Contrairement aux adresses MAC utilises par le protocole Ethernet, les adresses IP des nuds
sont dfinies par ladministrateur du rseau.

La reprsentation conventionnelle d'une adresse IP dcompose l'adresse en 4 groupes de 8 bits


(1 Bytes), convertis en valeur dcimale et spars par des points.

L'adresse binaire de 32 bits

10011011 01101001 00010111 11110010

devient

155.105.23.242

Il est ainsi thoriquement possible de dfinir 4294967296 (232) adresses, allant de la valeur
binaire

00000000 00000000 00000000 00000000 ( 0. 0. 0. 0)

la valeur binaire

11111111 11111111 11111111 11111111 (255.255.255.255)

12.4.1 Les classes dadresses.


Afin de permettre une hirarchisation des adresses, le protocole IP prvoit qu'une partie des bits
de l'adresse reprsente l'adresse du rseau alors que l'autre partie reprsente l'adresse de l'hte
(station, machine ou nud).

Pour des raisons pragmatiques lies lorganisation et la taille suppose des rseaux, l'espace
d'adressage de 32 bits dfini dans le protocole IP a t historiquement dcompose en 5
tranches : les classes dadresses.

Les concepteurs du protocole partirent du principe que pour pouvoir rpondre aux besoins de tous les
types de rseaux, il fallait prvoir un plan dadressage hirarchique adapt pour de grands rseaux
(contenant beaucoup de nuds), de petits rseaux (avec peu de nuds) et des rseaux de taille
intermdiaires.
Les rseaux classfull respectent cette hirarchie de base.

Classe A le premier bit 0


Classe B les deux premiers bits 10
Classe C Les trois premiers bits 110
Classe D 1110
Classe E 11110

96 / 289
Services et rseaux 5.0 Alain Bron

Ainsi, historiquement le standard IP partage ladressage en cinq classes de taille diffrente,


uniquement dtermines par la valeur des premiers bits de l'adresse.

Les trois premires classes servent ladressage des nuds, la classe D est dvolue
ladressage de destinations multicast, alors que la classe E est rserve.

Les rseaux classfull de classe A utilisent 7 bits pour dfinir ladresse du rseau, le premier bit
tant fix 0, et les 24 derniers bits pour adresser les machines (htes) des rseaux.
Ce qui donne les adresses :

00000000 00000000 00000000 00000000 ( 0. 0. 0. 0)



01111111 11111111 11111111 11111111 (127.255.255.255)
Rseaux htes

Certaines adresses tant rserves des usages particuliers (broadcast avec des 1 pour la
partie hte, adresse de rseau avec des 0 pour la partie hte et adresses de loopback
[01111111] 127.x.x.x), les adresses rellement utilisables par la classe A sont comprises entre

1.0.0.1 et 126.255.255.254

et permettent dadresser 27 = 126 rseaux pouvant contenir environ 224 htes.

Dans le cas dune classe B, 14 bits sont utiliss pour adresser les rseaux, puisque les deux
premiers bits sont fixs 10, alors que les 16 derniers bits servent adresser les htes de ces
rseaux.
Ce qui donne les adresses de classe B :

10000000 00000000 00000000 00000000 (128. 0. 0. 0)



10111111 11111111 11111111 11111111 (191.255.255.255)
Rseaux htes

Certaines adresses tant rserves des usages particuliers (broadcast et adresse de rseau),
les adresses rellement utilisables par la classe B sont comprises entre :

128.0.0.1 et 191.255.255.254

et permettent dadresser 214 rseaux de 224 htes (16'384 rseaux contenant chacun 65'534
htes).

Pour une classe C, 21 bits servent ladressage des rseaux, les trois premiers bits tant fixs
110, et les 8 derniers bits sont rservs ladressage des htes.
Ce qui donne les adresses :

11000000 00000000 00000000 00000000 (192. 0. 0. 0)



11011111 11111111 11111111 11111111 (223.255.255.255)
Rseaux htes

97 / 289
Services et rseaux 5.0 Alain Bron

Certaines adresses tant rserves des usages particuliers (broadcast et adresse de rseau),
les adresses rellement utilisables par la classe C sont comprises entre :

192.0.0.1 et 223.255.255.254

et permettent dadresser 221 rseaux de 256 htes (2'097'152 rseaux de 254 htes)

de premiers bits usage


classe A 1.0.0.1 126.255.255.254 0........ adressage
classe B 128.0.0.1 191.255.255.254 10....... adressage
classe C 192.0.0.1 223.255.255.254 110...... adressage
classe D 224.0.0.1 239.255.255.254 1110..... multicast
classe E 240.0.0.1 255.255.255.254 1111..... rserv

Figure 12.37
Les 3 classes IP standards (classful) et les 2 classes spciales

Figure 12.38
Espace dadressage IPv4 de 232 adresses

La tranche d'adresse de type 127.x.x.x est rserve, et notamment l'adresse de loopback


127.0.0.1 (localhost).

Ladresse pour laquelle la partie nud ne comporte que des 0 est l'adresse du rseau et ne peut pas
tre utilise pour adresser des machines.

Ladresse ne comportant que des 1 dans la partie nud est ladresse de broadcast du rseau et ne peut
pas tre utilise pour adresse des machines.

Par convention, ladresse de type ...0001 est utilise pour adresser le routeur de sortie du rseau

98 / 289
Services et rseaux 5.0 Alain Bron

12.4.2 Routeur IP
Le protocole IP permet dadresser des rseaux.
Lorsque deux nuds se trouvent dans le mme rseau IP, ils peuvent communiquer
directement.
Lorsque le nud de destination est situ dans un autre rseau, le nud metteur doit
transmettre le paquet un routeur qui se charge ensuite dacheminer le paquet jusquau rseau
du nud destinataire.
Ladresse IP dun routeur (gateway, route par dfaut : 0.0.0.0) fait partie des paramtres de
base dune configuration IP.

12.4.3 Les adresses prives et publiques.


Le protocole IP distingue les adresses publiques des adresses prives.

Les adresses publiques sont attribues par un organisme rgional ou national, qui lICANN39
a dlgu la comptence de gestion de tranches dadresses, et sont uniques au monde.
De telles adresses sont vhicules sur lentier du rseau Internet et sont dites routables sur
Internet.

Les adresses prives (RFC 1918) sont dites non-routables sur Internet et ne peuvent tre
utilises que localement un rseau. De telles adresses ne sont pas transmises sur Internet par
les routeurs frontire et peuvent donc tre utilises simultanment en plusieurs endroits.

Dans ce cas, laccs Internet ncessite lemploi dun mcanisme de conversion dadresses (NAT ou
PAT).

classe prive A 10. 0. 0. 0 10.255.255.254 00001010.


classe prive B 172. 16. 0. 0 172. 31.255.254 10101100.0001xxxx.
classe prive C 192.168. 0. 0 192.168.255.254 11000000.10101000.

Figure 12.39
Les classes prives IP selon RFC 1918

12.4.4 Les adresses de type broadcast et multicast.


Un broadcast40 IP est un message destin la totalit des participants un rseau IP. L'adresse
hte rserve cet usage est compose uniquement de 1 (255.255.255.255 : broadcast
gnral ; 143.231.255.255: broadcast pour le rseau 143.231).
Les routeurs, en fonction de leur configuration, ne retransmettent en gnral pas ce type de
paquets.

Un multicast IP est un message destin plusieurs participants.


Les routeurs doivent tre configurs pour diffuser de tels messages et cette diffusion s'effectue
vers une liste d'abonns (par exemple pour des flux vido), l'aide du protocole IGMP (Internet
Group Management Protocole).

39 http://www.aso.icann.org, http://www.nic.com, http://www.internic.ch


40
Un message standard d'un metteur un rcepteur tant appel unicast.

99 / 289
Services et rseaux 5.0 Alain Bron

12.4.5 Masques et sous-rseaux


Les 32 bits dune adresses IP classful sont partags entre une partie reprsentant le rseau,
et une partie reprsentant lhte (la machine ou le nud), ce qui dfinit un adressage
hirarchique 2 niveaux, rparti en classes dfinies par la valeur des premiers bits de l'adresse.

Figure 12.40
(Rseau et hte en mode classful)

Avec le temps est apparu la ncessit de dcouper les rseaux laide dun troisime niveau
dadressage, les sous-rseaux (au sein dun rseau).
Afin de pouvoir dterminer la partie de ladresse de 32 bits reprsentant ladresse de sous-
rseau, un masque de sous-rseaux a t associ ladresse IP.

Le masque de rseau ou sous-rseau, galement de 32 bits, dsigne avec des 1 la partie rseau
/sous-rseau de ladresse et avec des 0 la partie nud de ladresse. La partie rseau/sous-
rseau de ladresse se situe toujours gauche, et les 1 sont placs de manire contige.

Le masque de rseau/sous-rseau est usuellement galement reprsent sous la forme


dcimale point ou en mode CIDR (/nombre_de_bits__1).

Le masque de rseau (ou masque par dfaut) est limage de la classe de ladresse :

Classe A 8 bits rseau 11111111000000000000000000000000


255. 0. 0. 0
/8
Classe B 16 bits rseau 11111111111111110000000000000000
255. 255. 0. 0
/16
Classe C 24 bits rseau 11111111111111110000000000000000
255. 255. 255. 0
/24

Figure 12.41
Masques de rseau, ou masque par dfaut des rseaux classfull A, B et C

Le masque de rseau napporte aucune information utile, car la classe, donc la partie de
ladresse qui reprsente le rseau, est dfinie par la valeur des premiers bits de ladresse (0...
classe A, 10... classe B ou 110... classe C).

Ce nest pas le masque de rseau qui fait la classe, mais la classe qui dfinit le masque !

L'administrateur d'un rseau peut dcider de partager sa classe d'adresses en sous-rseaux


(subnets), l'aide d'un masque de sous-rseau (subnetmask RFC 950), afin de hirarchiser
son rseau.

100 / 289
Services et rseaux 5.0 Alain Bron

Selon le RFC 950, le mme masque de sous-rseau doit tre utilis pour tous les segments dun rseau
classfull. Ce RFC est devenu caduque (cf. VLSM).

La dfinition de sous-rseaux ncessite d'utiliser comme adresse de sous-rseaux une partie des
bits destins normalement ladressage des nuds, afin de crer un troisime niveau
dadressage hirarchique : rseau + sous-rseau + nud.

adresse ip 32 bits

rseau htes
n x 8 bits (4-n) x 8 bits
rseau sous-rseaux htes
n x 8 bits y bits z bits

Figure 12.42
Subnetting : parties rseau, sous-rseaux et htes

Une opration de subnetting peut avoir comme objectif de sparer logiquement le trafic d'un
rseau

Pour des questions de scurit,


Pour segmenter le rseau au niveau OSI 3 afin de limiter le broadcast de niveau 2,
Pour crer des sous-entits pour faciliter la gestion des adresses
Pour adresser plusieurs sites physiques dun mme rseau, par exemple.
Pour crer des liaisons WAN.

Figure 12.43
Diffrents dcoupages et masques dun rseau classe B
en fonction des besoins en sous-rseaux.

101 / 289
Services et rseaux 5.0 Alain Bron

Pour des questions de facilit de lecture et dorganisation, une classe A ou B sera en gnral dcoupe
l'aide de masques de sous-rseaux ayant un nombre de 1 multiple de 8 bits.

Une classe B sera ainsi dcoupe (subnette) avec un masque de type 255.255.255.0; on
parlera alors dun masque de pseudo classe C.

Ladresse 155.105.2.10 / 255.255.255.0 est une adresse de classe B (car elle dbute par les bits
10...) et non pas une classe C, malgr lutilisation dun masque de 24 bits (255.255.255.0).

155. 105. 0. 0 adresse IP du rseau en


dcimal
10011011 01101001 00000000 00000000 adresse IP du rseau en
binaire

155. 105. 23. 242 adresse IP dun nud en


dcimal
10011011 01101001 00010111 11110010 adresse IP du nud en
binaire

11111111 11111111 00000000 00000000 masque de rseau par


dfaut (classe B)

11111111 11111111 11111111 00000000 masque sous-rseau dfini par


ladministrateur rseau
(ici : pseudo-classe C)

10011011 01101001 IP rseau en binaire


00010111 IP ss-rseau en binaire
11110010 IP hte en binaire

155. 105. 23. 242 adresse IP en dcimal


255. 255. 0. 0 masque de rseau
255. 255. 255. 0 masque sous-rseau

155. 105. adresse IP rseau


23. adresse IP sous-rseau
242 adresse IP hte

Figure 12.44
Exemple de dcoupage dun rseau de classe B en pseudo-rseaux de classe C

Le masque associ l'adresse IP pour ce rseau sera donc le masque de sous-rseau


(255.255.255.0 associ 155.105.23.242 ).
La notation CIDR associe l'adresse IP le nombre de bits reprsentant la partie rseau :
155.105.23.242 / 24 (avec 24 = nb de bits 1 du masque).

Le dcoupage d'une classe C en sous-rseau passe obligatoirement par un masque de moins de


8 bits.

102 / 289
Services et rseaux 5.0 Alain Bron

masque dcimal masque binaire CIDR nombre de nuds


255.255.255. 0 11111111.11111111.11111111.00000000 /24 28-2=255-2 = 253
255.255.255.128 11111111.11111111.11111111.10000000 /25 27-2=128-2 = 126
255.255.255.192 11111111.11111111.11111111.11000000 /26 26-2=64-2 = 62
255.255.255.224 11111111.11111111.11111111.11100000 /27 25-2=32-2 = 30
255.255.255.240 11111111.11111111.11111111.11110000 /28 24-2=16-2 = 14
255.255.255.248 11111111.11111111.11111111.11111000 /29 23-2=8-2 = 6
255.255.255.252 11111111.11111111.11111111.11111100 /30 22-2=4-2 = 2
255.255.255.254 11111111.11111111.11111111.11111110 /31 21-2=2-2 = 0

Figure 12.45
Les diffrents masques de sous-rseaux possibles pour une classe C

Le premier sous-rseau issu du dcoupage prend le nom de subnet-zero (il ne comprend que
des 0 dans la partie sous-rseau).

Historiquement, il tait conseill de ne pas utiliser le premier et le dernier subnet (subnet-zero et all-
ones subnet)41, afin de ne pas confondre ladresse de rseau avec ladresse du premier sous-rseau et
ladresse de broadcast du rseau avec ladresse de broadcast du dernier sous-rseau42. Cette manire
de pratiquer est considre comme obsolte (RFC 1878).

8 derniers
Subnet bits Range Broadcast
000 00000 192.124. 32. 1 - Subnet-
192.124. 32. 0 192.124. 32. 31
000 11111 192.124. 32. 30 zero
001 00000 192.124. 32. 33 - sous-
192.124. 32. 32 192.124. 32. 63
001 11111 192.124. 32. 62 rseau 2
010 00000 192.124. 32. 65 - sous-
192.124. 32. 64 192.124. 32. 95
010 11111 192.124. 32. 94 rseau 3
011 00000 192.124. 32. 97 - sous-
192.124. 32. 96 192.124. 32.127
011 11111 192.124. 32.126 rseau 4
100 00000 192.124. 32.129 - sous-
192.124. 32.128 192.124. 32.159
100 11111 192.124. 32.158 rseau 5
101 00000 192.124. 32.161 - sous-
192.124. 32.160 192.124. 32.191
101 11111 192.124. 32.190 rseau 6
110 00000 192.124. 32.193 - sous-
192.124. 32.192 192.124. 32.223
110 11111 192.124. 32.222 rseau 7
111 00000 192.124. 32.125 - All-ones
192.124. 32.224 192.124. 32.255
111 11111 192.124. 32.254 subnet

Figure 12.46
Subnetting de la classe C 192.124.32.0 avec un masque 255.255.255.224

41 Les versions antrieures de lIOS 12.0 de Cisco ncessitaient la commande ip subnet-zero pour accepter lutilisation du
subnet-zero
42 Ladresse 192.124.32.0 reprsente-t-elle le rseau de classe C complet, ou le premier sous-rseau de cette mme classe C ?

103 / 289
Services et rseaux 5.0 Alain Bron

Un paquet IP, pour pouvoir passer d'un (sous-)rseau un autre doit transiter par un routeur
capable de transmettre l'information d'une entit logique une autre, donc dun (sous-)rseau
un autre.

Lorsqu'un hte dsire envoyer un paquet IP un autre nud, il dtermine, l'aide de son masque de
(sous-)rseau si le nud distant se trouve sur le mme (sous-)rseau que lui43.

Si oui, il envoie le paquet directement son interlocuteur.


Si non, il envoie le paquet son routeur, tel que dfini dans sa configuration (route par dfaut)

Ce dernier se charge d'acheminer le paquet destination ou au routeur suivant.

Au niveau global (Internet), seuls les rseaux sont connus : le paquet passe donc de rseau en rseau
et seuls ceux-ci sont connus par les routeurs. La notion de sous-rseaux intervient au niveau d'un
rseau donn, et seuls les routeurs de ce rseau en ont connaissance. Finalement, le dernier routeur
adressera le paquet au destinataire final.

43Du point de vue pratique, une opration AND (et) est appliqu entre les valeurs binaires du masque et des adresses source et
destination. Si le rsultat est le mme (XOR ou exclusif), la destination est sur le mme (sous-)rseau que la source.

104 / 289
Services et rseaux 5.0 Alain Bron

Figure 12.47
Hirarchisation d'un rseau IP au niveau global (Internet) et local.

105 / 289
Services et rseaux 5.0 Alain Bron

12.4.6 IP classless
Le surnetting et le mode CIDR (Classless Inter Domain Routing) permettent de s'affranchir des
classes telles que dfinies historiquement : on parle alors de rseaux classless (RFC 1517
1520).

La plupart des rseaux actuels fonctionnent en mode classless (adressage sans classe).

L'usage de classes classful A, B ou C s'avre contraignant, notamment en termes


d'adressage : la granularit entre deux classes n'est pas assez fine et conduit un gaspillage
d'adresses

Classe C = 28-2 = 254 adresses de nuds, classe B 216-2 = 65'534 adresses de nuds.
Dans un rseau classless, le nombre de bits dfinissant la partie rseau de ladresse nest plus limite
un multiple de 8 bits et peut prendre nimporte quelle valeur.

Ladressage traditionnel (classful) oblige les routeurs maintenir des entres dans leurs tables
de routage pour tous les rseaux qui leur sont connus : le mode CIDR permet de reprsenter
une srie de rseau de manire agrge, ceci afin doptimiser et dallger les tables de routage.

Dfinition de rseaux de taille optimale et agrgation de rseaux (routes) sont deux aspects du mode IP
classless ou CIDR, qui peuvent parfois se confondre.

En mode classless, les masques de rseau doivent tre transmis par les protocoles de routage
en mme temps que les adresses des (sous-)rseaux, puisque la notion de classe ne peut plus
tre applique par la routeurs pour dterminer la partie rseau d'une adresse.

Exemples de rseaux classless

Une entreprise ayant besoin de 400 adresses IP peut se faire attribuer une partie dune classe B
(plutt quune classe B complte) :

Classe B : 142.34.0.0
Binaire : 10001110 . 00100010 . 00000000 . 00000000

29 = 512 adresses > 400; 28 = 256 adresses < 400 9 bits partie nud.

10001110 . 00100010 . 0000000x . xxxxxxxx

Masque de rseau : 11111111 . 11111111 . 11111110 . 00000000


255 . 255 . 254 . 0

Ainsi, le rseau de lentreprise utilise et est connu via ltendue dadresses

142.34.0.0 / 255.255.254.0 ou 142.34.0.0 / 23

Cette opration est trs semblable la cration de sous-rseaux (subnets), la diffrence que le
masque calcul est un masque de rseau.

12.4.7 Agrgation de routes et surnetting


Cette mme entreprise ayant besoin de 400 adresses IP pourrait galement se faire attribuer
deux classes C (194.124.34.0 et 194.124.35.0, 512 adresses au total). Ainsi, le rseau de
lentreprise serait connu avec ces 2 adresses de rseaux distincts.

Le surnetting, ou supernet, permet dagrger des rseaux classful de manire pouvoir


reprsenter diffrents rseaux au moyen dune seule tendue dadresses, associe un masque
englobant tous les autres rseaux contigus (masque de supernet ou surnet, par opposition
subnet).

106 / 289
Services et rseaux 5.0 Alain Bron

Ainsi, en mode CIDR, le masque permettant d'agrger ces deux rseaux de classe C est fix de
manire ce que l'entreprise ne soit connue que par une seule tendue dadresses (par un seul
rseau).

11000010.01111100.00100010.00000000 (194.124. 34. 0)


et
11000010.01111100.00100011.00000000 (194.124. 34. 0)

11111111.11111111.11111111.00000000 (masque classe C)

11111111.11111111.11111110.00000000 (masque commun = surnet)


255 .255 .254 .0

ce qui donne:
194.124.34.0 / 255.255.254.0 ou 194.124.34.0 / 23 44

De cette manire, le rseau de l'entreprise sera connu par lunique adresse 194.124.32.0 /
23, ce qui simplifie les tables de routage.

Il nest possible dagrger que des rseaux dont les adresses sont contiges, donc par groupes
de 2, 4, 8, 16, etc. rseaux.

xxxxxxxx.xxxxxxxx.xxxxxxx0. ........ agrgation par 2 rseaux contigus


xxxxxxxx.xxxxxxxx.xxxxxxx1. ........
11111111.11111111.1111111.. ........ partie commune
255 .255 .254 . 0 masque utilis

xxxxxxxx.xxxxxxxx.xxxxxx00. ........ agrgation par 4 rseaux contigus


xxxxxxxx.xxxxxxxx.xxxxxx01. ........
xxxxxxxx.xxxxxxxx.xxxxxx10. ........
xxxxxxxx.xxxxxxxx.xxxxxx11. ........
11111111.11111111.111111... ........ partie commune
255 .255 .252 . 0 masque utilis

Les routeurs prenant en charge ces rseaux doivent tre capables de fonctionner en mode CIDR
(ou classless).

destination masque prochain saut (exemple)


ip route 200.100.48.0 255.255.255.0 194.1.1.1
ip route 200.100.49.0 255.255.255.0 194.1.1.1
ip route 200.100.50.0 255.255.255.0 194.1.1.1
ip route 200.100.51.0 255.255.255.0 194.1.1.1
ip route 200.100.52.0 255.255.255.0 194.1.1.1
ip route 200.100.53.0 255.255.255.0 194.1.1.1
ip route 200.100.54.0 255.255.255.0 194.1.1.1
ip route 200.100.55.0 255.255.255.0 194.1.1.1

Figure 12.48
Table de routage contenant des rseaux de classe C dadressage contigu, mode classful.

44
On remarquera que le masque utilis est le mme dans le cas la classe B partielle ou dans l'agrgation de 2 classes C

107 / 289
Services et rseaux 5.0 Alain Bron

destination masque prochain saut (exemple)


ip route 200.100.48.0 255.255.248.0 194.1.1.1

Figure 12.49
Table de routage avec agrgation CIDR pour des rseaux de classe C dadressage contigu.
lagrgation ncessite ici un masque 255.255.248.0, ce qui permet de reprsenter les 8 rseaux
laide dune seule adresse de rseau (200.100.48.0), les 7 autres rseaux tant implicites

En agrgeant des rseaux, il est ainsi possible de considrablement rduire la taille des tables de
routages, notamment ceux des core-routeurs.

Un autre intrt de lagrgation dadresses de rseaux est de permettre de simplifier le routage


entre rseaux IP adjacents.
Dans le cas dune entreprise utilisant deux rseaux IP de classe C sur le mme rseau physique
(ip secondary chez Cisco ou routeur avec deux interfaces physiques), les paquets en provenance
dun nud du premier rseau IP doivent obligatoirement transiter par un routeur pour atteindre
un nud du second rseau IP et cela mme si les deux nuds sont branchs cte cte sur le
mme commutateur et situs dans le mme VLAN.

Lagrgation par surnetting de ces deux rseaux permet de spcifier aux nuds quils se
trouvent sur le mme rseau logique (mme rseau IP) et que le passage par un routeur est
inutile.

Figure 12.50
Flux IP sans ( gauche) et avec lagrgation ( droite)
de 2 rseaux laide dun masque de surnet

108 / 289
Services et rseaux 5.0 Alain Bron

12.4.8 Risque de chevauchement dadresses.


Labandon des classes dadresses ncessite une bonne coordination dans lattribution des
tendues dadressages, afin dviter des chevauchements dus aux diffrents masques utiliss.

Les adresses de classe B 145.232.0.0 et 145.235.0.0 peuvent tre attribues des rseaux
diffrents.
Ltendue dadresses 145.235.0.0 ne pourrait pas tre attribue un rseau indpendant, si elle
fait partie de ltendue 145.232.0.0 /14, dj attribue un rseau tiers.

Figure 12.51
Adresses de classe B 145.232.0.0 et 145.235.0.0
vs tendue dadresses 145.232.0.0 /14

109 / 289
Services et rseaux 5.0 Alain Bron

12.4.9 VLSM
Un rseau appliquant le principe du VLSM (variable-length subnet masking RFC 950 et 1878)
permet la cohabitation de masques de sous-rseaux de tailles diffrentes au sein dun mme
rseau45.

Un rseau de classe C peut tre dcoup en une srie de sous-rseaux de taille moyenne et en
quelques petits rseaux pour des usages spcifiques (sous-rseaux de tests, adressage de sites
distants, etc.).

193. 18. 45. 0 rseau de classe C


11000001.00010010.00101110.00000000 en binaire

255. 255. 255. 0 masque par dfaut


11111111.11111111.11111111.00000000 en binaire

11111111.11111111.11111111.11000000 masque de sous-rseau


255. 255. 255. 192

On obtient 4 sous-rseaux (193.18.45.0, 193.18.45.64, 193.18.45.128,


193.18.45.192) de 26-2 = 62 nuds chacun.

En dcoupant un des sous-rseaux obtenus par la mthode du subnetting traditionnel, il est


possible de dfinir une nouvelle srie de sous-rseaux, de plus petite taille.

193. 18. 45. 192 4me subnet


11000001.00010010.00101110.11000000
11111111.11111111.11111111.11000000 masque de sous-rseau

11111111.11111111.11111111.11111000 masque VLSM


193. 18. 45. 248

En dcoupant le subnet 193.18.45.192 obtenu grce au subnetting de la classe C


193.18.45.0, on obtient maintenant 23 = 8 plus petits sous-rseaux de 23 - 2 = 6 nuds
chacun.

Les rseaux VLSM obtenus sont ainsi :

11000001.00010010.00101110.11000... 193.18.45.192 (193..199)


11000001.00010010.00101110.11001... 193.18.45.200 (201..207)
11000001.00010010.00101110.11010... 193.18.45.208 (209..215)
11000001.00010010.00101110.11011... 193.18.45.216 (217..223)
11000001.00010010.00101110.11100... 193.18.45.224 (225..231)
11000001.00010010.00101110.11101... 193.18.45.232 (233..239)
11000001.00010010.00101110.11110... 193.18.45.240 (241..247)
11000001.00010010.00101110.11111... 192.18.45.248 (249..255)

45
Les protocoles de routage RIPv2, OSPF, BGP4, IS-IS et EIGRP supportent le routage VLSM

110 / 289
Services et rseaux 5.0 Alain Bron

Ainsi, deux masques sont utiliss sur ce rseau classe C 193.18.45.0:

255.255.255.192 pour les 3 sous-rseaux de 62 nuds.


255.255.255.248 pour les 8 sous-rseaux de 6 nuds.

Figure 12.52
Rseau de classe C 192.18.45.0 dcoup en mode VLSM,
avec 2 masques de sous-rseaux diffrents (/26 et /29)

111 / 289
Services et rseaux 5.0 Alain Bron

12.5 ARP
Le protocole IP prend place au-dessus d'une couche physique, telle quEthernet par exemple, et
utilise un adressage logique.
Ces couches physiques utilisent gnralement leur propre systme d'adressage, comme les
adresses MAC pour Ethernet.

Ainsi, un double systme d'adressage est utilis afin qu'un paquet IP arrive destination :
l'adressage logique l'aide d'une adresse IP de 32 bits qui permet de passer dun rseau un
autre et l'adressage physique via une adresse MAC de 48 bits, par exemple, qui permet la
livraison aux nuds.

Si ladressage IP permet le passage dun rseau lautre, ladresse physique (MAC) permet la livraison
au nud.

L'adresse IP du destinataire est obtenue par rsolution du nom ou est directement connue de
lexpditeur, l'adresse MAC du destinataire dpend quant elle de son matriel et n'est en
gnral pas connue de lexpditeur.

Une adresse MAC est susceptible de changer (en cas de remplacement dune interface rseau suite
une panne, par exemple).
La distribution des adresses MAC au sein du rseau est alatoire, puisqu'elle dpend du fabricant (donc
notamment de la date de fabrication du matriel) et ne rpond aucune logique hirarchique.
Il est illusoire de vouloir maintenir une base de donnes des adresses MAC sur un rseau d'une grande
taille, puisquil faudrait grer des tables de plusieurs milliers dadresses, susceptible de changer et de se
dplacer au sein du rseau.

Le protocole ARP (Address Resolution Protocol), encapsul directement dans une trame
Ethernet (Ethertype 0x806), permet d'tablir dynamiquement la correspondance entre une
adresse logique et une adresse physique.

Lorsqu'un nud communique au moyen d'un paquet IP avec un interlocuteur via un rseau Ethernet, sa
couche IP s'adressera sa couche homonyme distante, au moyen de ladresse IP du destinataire, selon
le principe du modle OSI.

Lorsque ce paquet sera confi la couche Ethernet de lmetteur, celle-ci s'adressera sa couche
homonyme distante l'aide de ladresse MAC du destinataire, le paquet IP tant encapsul dans la
trame Ethernet.
Il faut donc tablir une correspondance entre l'adresse physique du destinataire et son adresse logique.

Figure 12.53
Communication entre couches IP et couches Ethernet

112 / 289
Services et rseaux 5.0 Alain Bron

Le protocole ARP permet la couche IP de dterminer de manire autonome ladresse MAC


correspondant l'adresse IP de destination, l'aide d'un message de type broadcast demandant
au titulaire d'une adresse IP spcifique de s'annoncer.

Figure 12.54
Mcanisme de dcouverte ARP

La nature d'un message broadcast oblige tous les nuds dun rseau le lire, alors que le
format d'un ARP Request les oblige rpondre 46.
Le titulaire de l'adresse IP figurant dans le broadcast ARP Request rpond l'adresse MAC de
l'expditeur en spcifiant sa propre adresse MAC via un unicast ARP Respons.

Ainsi l'expditeur peut tablir une correspondance entre une adresse IP et une adresse MAC. Cette
information est stocke dans une table locale stocke en mmoire (table ARP), afin de pouvoir rutiliser
cette information sans devoir nouveau initier un processus ARP complet.

46
Comme dans toute normalisation, on considre que chaque participant se conforme la norme.

113 / 289
Services et rseaux 5.0 Alain Bron

EtherType 0x806 ARP

OpCode = 1 request

Adresse MAC
demande pour IP
10.224.10.31

Figure 12.55
Dcodage dune requte ARP (broadcast Ethernet)

Adresse MAC
demande =
00-15-17-0b-98-38
pour ip=10.224.10.31

Figure 12.56
Dcodage dune rponse ARP (unicast Ethernet)

Une entre dans la table ARP peut tre dynamique (dcouverte travers le processus ARP) ou
statique (dfinie par l'utilisateur).
Les entres dynamiques figurant dans la table ARP ont une dure de vie limite (aging time) : si
ladresse nest pas utilise pendant une certaine dure 47, lentre est supprime de la table.

C:\>arp -a

Interface : 10.224.10.92 --- 0x4


Adresse Internet Adresse physique Type
10.224.10.1 00-00-0c-07-ac-05 dynamique
10.224.10.2 00-0b-be-72-07-80 dynamique
10.224.10.45 00-1a-a0-0e-c5-85 dynamique
10.224.10.222 aa-bb-aa-bb-aa-bb statique

Figure 12.57
Contenu dune table ARP

47
De lordre de 5 minutes, en fonction des configurations et des couches IP :

114 / 289
Services et rseaux 5.0 Alain Bron

Le paquet IP contenant l'adresse IP de destination sera confie sa couche locale Ethernet qui
pourra ainsi s'adresser sa couche Ethernet homonyme, l'aide de l'adresse MAC dcouverte
par processus ARP et figurant dans sa table ARP. Il incombera la couche Ethernet de
destination de confier le paquet IP la couche IP de destination.

12.5.1 ARP avec routeur


Lorsque deux nuds sont situs dans des rseaux ou sous-rseaux (de niveau 3 OSI) distincts
spars par des quipements d'interconnexion (routeurs), le nud metteur transmet le paquet
IP dans une trame destination du routeur : il doit donc obtenir ladresse MAC de son routeur.

La livraison finale du paquet IP est ralise par le dernier routeur, qui effectue la requte ARP sur
ladresse IP de destination afin dobtenir ladresse MAC du destinataire du paquet IP.

Figure 12.58
ARP avec un routeur.

12.5.2 Proxy-ARP
Le mode proxy-ARP (RFC 1027) est un fonctionnement particulier du processus ARP.

Comme dcrit ci-dessus, le processus de communication IP classique implique que l'expditeur dun
paquet IP destination d'un (sous-)rseau distant (dtermin comme distant grce au subnetmask)
s'adresse son routeur par dfaut dfini au niveau de sa configuration et dtermine son adresse MAC
l'aide d'une requte ARP.

Dans le mcanisme proxy-ARP, l'expditeur peut utiliser un masque de rseau plus 'large' que
celui qui devrait normalement tre utilis (255.255.0.0 au lieu de 255.255.255.0, par
exemple).

De cette manire, une adresse destine un sous-rseau distant sera considre tort comme faisant
partie du mme sous-rseau que celui de l'expditeur, donc comme adresse locale ; ce dernier
effectuant alors une requte ARP directement sur l'adresse IP de destination.
Comme l'adresse IP de destination se trouve rellement dans un autre sous-rseau, cette requte ARP
ne parviendra jamais destination, rendant a priori toute communication impossible.

115 / 289
Services et rseaux 5.0 Alain Bron

Si le routeur est configur pour fonctionner en mode proxy-ARP, il se chargera de rpondre la


place de la machine de destination, constatant que cette requte est destine un autre sous-
rseau que celui de l'adresse IP de l'expditeur.
De manire transparente, l'expditeur pourra mettre sa table ARP jour avec une entre du
type:

IP destination = MAC routeur


au lieu de
IP routeur = MAC routeur

La trame transmise sera compose des mmes adresses physiques et logiques que dans un
processus de communication IP classique ; seul le mcanisme permettant d'obtenir l'adresse
MAC du routeur diffre.

Le proxy-ARP peut tre activ par dfaut sur les routeurs, en fonction des versions et des
modles.

Figure 12.59
ARP classique (en haut) et Proxy-ARP (en bas)

Cette manire particulire de fonctionner permet l'implantation d'une couche IP minimale


fullclass, sans notion de subnetmask et de routeur par dfaut, mais n'est plus gure utilise.

Le mode proxy-arp peut galement permettre dassurer simplement la redondance dans un


(sous-)rseau bnficiant de plusieurs routeurs de sortie : le chemin suivi par le paquet IP sera
celui passant par le routeur qui aura rpondu le premier la requte ARP.

Si cette manire de pratiquer vite de devoir dfinir de multiples routeurs au niveau de la


configuration des nuds IP, ou de devoir mettre en place des mcanismes de redondance au

116 / 289
Services et rseaux 5.0 Alain Bron

niveau des routeurs eux-mmes48, elle implique une perte de matrise au niveau des flux IP,
puisque les chemins suivis par les paquets IP deviennent alatoires.

Figure 12.60
Redondance des chemins en mode proxy-arp

C:\>arp -a

Interface : 10.224.10.92 --- 0x4


Adresse Internet Adresse physique Type
10.224.10.1 00-00-0c-07-ac-05 dynamique

Figure 12.61
Table ARP du nud 10.224.10.92 communiquant avec des adresses distantes, sans proxy-arp

C:\>arp -a

Interface : 10.224.10.92 --- 0x4


Adresse Internet Adresse physique Type
10.224.10.1 00-00-0c-07-ac-05 dynamique
10.224.12.2 00-00-0c-07-ac-05 dynamique
10.224.14.45 00-00-0c-07-ac-05 dynamique
10.224.12.222 00-00-0c-07-ac-05 dynamique
10.120.144.46 00-00-0c-07-ac-05 dynamique

Figure 12.62
Table ARP du mme nud communiquant avec des adresses distantes, avec proxy-arp

48
Tel que HSRP de Cisco

117 / 289
Services et rseaux 5.0 Alain Bron

Rponse du routeur
10.244.10.1 qui donne
son adresse MAC
Cible de la requte :
10.120.144.46 situe sur
un segment distant

Client local
10.224.10.92 ayant
effectu la requte.

Figure 12.63
Dcodage dune rponse ARP en provenance dun routeur fonctionnant en prox-arp

118 / 289
Services et rseaux 5.0 Alain Bron

12.5.3 Gratuitous ARP et scurit


Des messages ARP gratuits (gratuitous ARP) peuvent tre utiliss en dtournant lusage
premier du protocole ARP.

De manire lgitime, un nud peut chercher ainsi signaler que son adresse MAC a chang
(suite un basculement automatique en deux machines au sein dun cluster, par exemple) en
gnrant spontanment un ARP reply contenant sa nouvelle adresse MAC, afin que ses clients
mettent leur table ARP jour.

Afin de dterminer la disponibilit dune adresse IP, un nud peut gnrer des requtes ARP sur
cette adresse : si aucune ARP reply nest reu en retour, cela signifie que cette adresse nest
utilise par aucun nud du rseau, sinon il aurait fourni son adresse MAC.

Du point de vue de la scurit, le protocole ARP ne vrifiant pas quune rponse ARP correspond
une requte pralable (pas de numrotation des requtes, par exemple), nimporte qui peut
tenter de modifier la table ARP dune cible (ARP poisoning) afin dy faire figurer une entre
renvoyant sur une machine illgitime : par exemple, faire pointer ladresse IP du routeur local
(attaque de type Man in the middle) ou du serveur DNS sur ladresse MAC dune machine pirate.

Figure 12.64
Man In the middle avant et aprs l'mission de faux arp-reply

119 / 289
Services et rseaux 5.0 Alain Bron

13. Le protocole TCP

TCP et UDP sont les deux protocoles classiques s'appuyant sur IP.

On considre gnralement que le protocole TCP (Transmission Control Protocol, RFC 793, no
protocole dfini au niveau IP : 0x06) implmente les fonctionnalits de la couche 4 du modle OSI
(couche transport).

Le flux de niveau 4, contenu dans des segments TCP encapsuls dans des paquets IP, est tabli
de bout en bout conformment au modle OSI : la couche IP se charge de l'acheminement de
l'information, de manire transparente pour la couche TCP, qui ne se soucie pas de connatre le
chemin suivi par ses segments. De mme, les quipements intermdiaires de niveau rseau ne se
proccupent pas des informations contenues dans le segment TCP 49.

Si le protocole IP permet lacheminement de paquets entre deux nuds, le protocole TCP


achemine des segments entre deux processus ou services situs sur des nuds distants.

Figure 13.1
Flux TCP : les segments sont transmis entre processus situs sur des nuds distants.

Certaines applications peuvent indiffremment sappuyer sur le protocole TCP ou UDP.

Figure 13.2
Applications s'appuyant sur TCP/IP et UDP/IP

49
Sauf implmenter des fonctions de filtre (firewall) ou de QoS

120 / 289
Services et rseaux 5.0 Alain Bron

TCP est un protocole orient connexion qui veille ce que les segments parviennent correctement
destination et qui assure leur rmission si ncessaire. On observe donc un trafic bidirectionnel
de type "message-acquittement", avec une ngociation et une ouverture de connexion ainsi qu'une
fermeture de connexion.
TCP peut tre qualifi de protocole fiable en mode duplex, des donnes pouvant transiter dans les
deux sens de communication (de A B et de B A) : de ce point de vue, les deux extrmits du
flux TCP sont la fois metteur et rcepteur.

Figure 13.3
Communication entre processus de deux nuds IP A et IP B

TCP prend notamment en charge le dcoupage des donnes en segments, la mise en ordre des
segments reus, le contrle de flux, le contrle derreur au niveau des segments, l'limination des
segments en double et l'adressage logique des processus d'extrmit (via un numro de port).

13.1 Les numros de port


Si le protocole IP permet dadresser des paquets un nud travers diffrents rseaux, le
protocole TCP assure la transmission de segments entre processus (applications) prsents sur les
nuds.
Ladressage de ces processus (un sous-adressage par rapport ladresse IP) est ralis laide
dun numro de port.

Le couple adresse IP et le numro de port constitue un socket.

Chaque processus faisant appel TCP utilise un numro de port, en gnral associ de manire
dynamique pour les processus client et de manire statique pour les processus serveur.

Un processus serveur est dit lcoute dun port.

Ainsi TCP peut multiplexer des segments en provenance dun mme nud A mais de processus
diffrents, en direction de diffrents processus dun nud distant B, laide de paquets IP circulant
entre A B faisant appel des sockets diffrents.

Figure 13.4
Communication entre processus de deux nuds IP A et B

121 / 289
Services et rseaux 5.0 Alain Bron

Les numros de ports, cods sur 16 bits (de 0 65'535), sont dcoups en 3 catgories :

Les rservs (Well Known Ports)

Entre 0 et 1023
Attribus par lIANA/ICANN50
Utiliss par des applications standards (serveur).
Ncessitent en gnral des droits levs sur les machines (root ou administrateur)

Les ports enregistrs

Entre 1024 et 49151


galement enregistrs par lIANA, ils ne sont nanmoins pas rservs.
Ne ncessitent en gnral pas de droits levs sur les machines.

Les ports dynamiques ou privs.

De 49'152 65535
Rarement utiliss.

Le fichier services51 donne la liste des ports rservs et connus localement.


Un client utilise en principe toujours un numro de port suprieur 1023.

UDP TCP Usage


20 20 ftp-data
21 21 ftp-crtl
23 telnet
25 25 smtp
53 53 Domain (name server)
66 Oracle SQL*net
69 tftp
80 http
110 110 Pop3
161 SNMP

Figure 13.5
Quelques numros de ports rservs (well-known) en TCP (et UDP)

Un processus dsirant s'adresser au processus serveur http hberg sur une machine donne
enverra un paquet l'adresse IP de cette machine, en spcifiant le no de port de destination 80. A
la rception du paquet, la couche IP diagnostiquera un segment TCP destin au port 80 et la
couche TCP alertera le processus associ ce port (par exemple un serveur Apache httpd).

Le port source est le port sur lequel l'metteur souhaite recevoir la rponse, gnralement un port
choisi alatoirement dans la liste des ports non-rservs (suprieurs 1023).

Figure 13.6
Format simplifi d'une trame TCP/IP (ou UDP/IP)

50
http://www.iana.org/assignments/port-numbers
51
/etc/services sous linux et %systemroot%/system32/drivers/etc/services sous Windows

122 / 289
Services et rseaux 5.0 Alain Bron

13.2 L'en-tte TCP


Len-tte TCP est constitu de 20 Bytes dcoups en 10 champs, si les options ne sont pas
utilises.

Figure 13.7
Champs de len-tte dun segment TCP

Segment dacquittement

A la rception du segment,
linformation doit tre
immdiatement transmise la
couche suprieure.

Figure 13.8
En-tte dun segment TCP dcod

123 / 289
Services et rseaux 5.0 Alain Bron

Taille
Champ Signification
(bits)
Port sources / destination 16 Permet dadresser 216 = 65'536 ports (processus) par nud IP

SEQ : donne la position du premier Byte des donnes transportes par le


Numro de squence 32 segment, considres dans le flux global. La valeur initiale du 1er
segment transmis est dtermine alatoirement.

ACK : donne la position relative du prochain premier Byte attendu, ce qui


Numro d'acquittement 32 acquitte implicitement tous les Bytes reus jusqu'alors.
Pris en compte seulement si le flag ACK est 1.

Indique la longueur de l'en-tte TCP, en multiple de 32 bits (longueur


minimale de 5x32 = 160 bits / 20 Bytes).
Offset 4
Si le champ options nest pas utilis, la taille par dfaut de len-tte TCP
est donc de 20 Bytes

Inutilis selon le RFC 793 ; prend la valeur 0


Rserv 6 Le RFC 3260 associe le 5me bit CWR (Congestion Window Reduced)
et le 6me bit ECN.ECO (ECN Echo)

URG, pour les donnes prioritaires. Utilis en conjonction avec le


"Pointeur d'urgence".

ACK, pour les acquittements.

PSH, pour obliger la couche TCP de rception transmettre


immdiatement le segment sa couche suprieure, plutt que de le
garder en buffer, par exemple dans lattente des segments suivants.
Flags 6
Utilis pour les applications sensibles au dlai.

RST, pour demander une interruption brutale et bidirectionnelle de


communication (procdure exceptionnelle).

SYN, pour la demande de l'tablissement d'une connexion.

FIN, pour demander la fin d'une connexion (procdure normale)

Indique la quantit de donnes (en Bytes) que le rcepteur est d'accord


de recevoir (autrement dit, la quantit de donne que l'metteur est
autoriser transmettre sans recevoir d'acquittement en retour).
Fentre (RWIN) 16 L'adaptation de cette fentre permet de mettre en place un contrle de
flux.
Taille maximale de la fentre : 216 = 65'536 Bytes TCP supporte des
segments dune taille maximale denviron 65 kB
Somme de contrle permettant de valider le segment (complment 1
calcule sur lentier du segment : en-tte et donnes) ; de par sa relative
Somme de contrle 16
faible fiabilit, il ne sagit pas dun contrle dintgrit au sens stricte du
terme.

En conjonction avec le flag URG, indique la position du Bytes suivant la


Pointeur durgence 16
fin des donnes urgentes

1er Byte: type de l'option.


Options et remplissage 2me Byte: nombre de Bytes de l'option.
Bytes suivants: la valeur de l'option

Figure 13.9
Champs de len-tte TCP.

124 / 289
Services et rseaux 5.0 Alain Bron

13.3 Encapsulation TCP


Le segment TCP encapsule les donnes des niveaux 5 et suivants du modle OSI.
Les donnes du point de vue TCP (le champ Donnes) ont leur propre formatage, en fonction du
protocole transport, et prennent place immdiatement la suite de len-tte TCP ou de ses
options facultatives.

Dans le cas dun message http, len-tte http prend place aprs la fin de len-tte TCP, en commenant
par le type de requte effectu.

Ethernet
+ IP + TCP

http

Figure 13.10
Message http encapsul dans un segment TCP.
La requte GET (0x47 G en ASCII, 0x45 E en ASCII...) suit immdiatement len-tte TCP

125 / 289
Services et rseaux 5.0 Alain Bron

13.4 L'tablissement dune connexion TCP


Ltablissement dune connexion TCP utilise un mcanisme en trois phases (Three Ways
Handshake):

Une demande de connexion (ouverture active) est initie par l'metteur A en positionnant le flag SYN
1, accompagne d'un no de squence initial (ISN Inital Sequence Number), choisi par l'metteur52.

Le rcepteur B acquitte la demande de A et, du fait du caractre bidirectionnel du protocole TCP, met
sa propre demande de connexion (ouverture passive), en positionnant les flags SYN et ACK 1,
accompagns de son propre no de squence et du no de l'acquittement (no de squence de A + 1)53

L'metteur A valide finalement la demande de B en positionnant son flag ACK 1, accompagne du no


de squence initial + 1 et du no d'acquittement (no squence de B + 1).

Figure 13.11
Squence douverture de connexion TCP
(les no de squence sont choisis arbitrairement et, seuls les flags 1 sont reprsents)

Figure 13.12
Dtail dune ouverture de connexion TCP (session HTTP), avec ISN=0 (valeur relative)

52
Numro calcul l'aide d'une horloge de 32 bits, incrmente toutes les 4 microsecondes ; cycle de 65'535 x 4 s = 4,55 heures
53
B spcifie ainsi le no de squence attendu pour le prochain segment.

126 / 289
Services et rseaux 5.0 Alain Bron

13.5 Fermeture dune connexion TCP


Une connexion TCP tant bidirectionnelle, la fermeture de connexion s'effectue de manire
synchrone ou asynchrone.

La terminaison de connexion est signifie par le flag FIN mis 1, en utilisant les numros de squence
issus de la transmission des segments TCP.

La demande de fin de connexion est acquitte (flag ACK) par lextrmit du flux concern.

Figure 13.13
Fermeture dune connexion TCP

Figure 13.14
Dcodage dune fermeture dune connexion TCP (session HTTP)

En fonction des scnarios, la fermeture peut tre initie par le client ou par le serveur.

Une fermeture asynchrone peut intervenir si le client A termine sa connexion active (envoi du flag FIN)
alors que le serveur B a encore des donnes transmettre : dans ce cas, le serveur enverra sa
demande de fin de connexion passive (activation du flag FIN) une fois son transfert termin.

127 / 289
Services et rseaux 5.0 Alain Bron

Une fermeture de connexion peut tre initie par le serveur, aprs un dlai dinactivit (timeout).

Une fermeture inconditionnelle est dclenche en activant le flag RST (reset) : dans ce cas, la
connexion est interrompue immdiatement dans les deux sens, et les ressources libres.

Le flag RST peut galement tre utilis lorsquune erreur est dtecte par un rcepteur dune connexion
TCP (mauvais squencement, par exemple).

Lors de la fermeture dune connexion active, le socket source ne peut pas tre rutilis avant un
dlai fix 4 minutes (TCP_WAIT = 2 x MSL (Maximum Segment Life, arbitrairement fix 2
minutes par le RFC 793).
Avec une numrotation des squences issue dun processus alatoire, et un cycle de rutilisation des
numros de seulement 4 heures et 55 minutes, il est statistiquement possible que des segments
transmis dans le cadre dune nouvelle connexion et rutilisant un socket source, puissent tre mlangs
par le rcepteur avec des anciens segments portant des numros de squence proches et dlivrs en
retard.
Pour rappel, la dure de vie maximum dun paquet au sein dun rseau IP est de 255 secondes
(TTL=255, compris dans son acceptation temporelle), donc 4 minutes et 15 secondes.
TCP tient compte de ce cas de figure en interdisant la rutilisation dun socket source trop
rapidement .

13.5.1 Etats de lautomate TCP


Limplmentation TCP, sous forme logicielle, au sein dun nud IP, peut tre compare un
automate tats finis.

Le processus TCP prend diffrents tats, en fonction des vnements et des interactions avec ses
interfaces suprieures et infrieures : demande de cration dun socket de la part dun processus
local ou rception dun flag TCP SYN de la part dun processus distant, par exemple.

Application

Create socket()

TCP API

IP

TCP SYN
NDIS Ethernet

Figure 13.15
Interactions du processus TCP avec son environnement
(interface suprieure et interface infrieure).

128 / 289
Services et rseaux 5.0 Alain Bron

Figure 13.16
Etats dun processus (automate) TCP

Figure 13.17
Affichage des statuts (tats) des sockets TCP (netstat).

129 / 289
Services et rseaux 5.0 Alain Bron

13.6 Les numros de squence


Les numros de squences servent lordonnancement et lacquittement des segments.
Le numro de squence initial (ISN Initial Sequence Number) est choisi de manire alatoire lors
de la phase douverture de connexion.

La valeur des numros de squence (SEQ) hors phase de connexion (donc si SYN=0) reprsente la
position relative du premier Byte de donnes du segment courant, par rapport au numro de squence
initial issu de la squence douverture de connexion.

La valeur d'acquittement (ACK) prend la valeur de la position du premier Byte du segment suivant
attendu (de fait, cela acquitte les Bytes reus jusqu'alors).

Si no SEQinitial (ISN) = 1000


Le premier segment aura 1001 comme numro de squence (SEQ). Si 60 Bytes sont transmis, la
position du dernier Byte sera de 1060 (1001, 1002, 1003, 1060 = 60 Bytes), donc le prochain Bytes
attendu sera le numro 1061 (ACK=1061)
Le deuxime segment aura donc 1061 comme position de son premier Bytes (cf. fig. 13.17).

Un analyseur rseau tel que Wireshark affiche par dfaut la valeur relative du no de squence ou
d'acquittement, en posant que ISN = 0.

temps temps

, 64 Bytes
, ACK=9065
SEQ: 1133 SEQ = 1133
ACK: 9065
64 Bytes Donnes: 64 Bytes SEQ = 90
01, ACK
= 1133,
1133 1196 64 Bytes
SEQ: 9001
ACK: 1133
Donnes: 64 Bytes
, 72 Bytes
, ACK=9001
SEQ: 1061 SEQ = 1061
ACK: 9001
72 Bytes Donnes: 72 Bytes SEQ = 90
01, ACK
1061 1132 = 1061,
0 Byte
SEQ: 9001
ACK: 1061
60 Bytes Donnes: 0 Bytes
,
, ACK=9001
SEQ: 1001 SEQ = 1001
60 Bytes ACK: 9001
K=9001
Donnes: 60 Bytes Q= 1001, AC
1001 1060 ACK, SE

Position relative des segments issu de A, dans le SYN, ACK,


SEQ = 90
00, ACK =
flux TCP de196 Bytes, par rapport 1000 1001

= 1000
SYN, SEQ

A B

Figure 13.17
Ordonnancement TCP

130 / 289
Services et rseaux 5.0 Alain Bron

13.6.1 Acquittements
L'acquittement des segments peut tre ralis en bloc pour un certain nombre d'entre eux, afin de
limiter le nombre de transactions.

Un segment pour lequel aucun acquittement n'est reu aprs un dlai dtermin est retransmis par
l'metteur ; dans le cas o le segment avait bien t reu par le rcepteur, mais que son acquittement
s'est par exemple perdu, le rcepteur limine le segment reu double grce aux numros de squence
identiques.

Un segment dacquittement a son flag ACK positionn 1 et le numro dacquittement reprsente


la position relative du premier Byte de donnes du prochain segment TCP attendu. Les Bytes
occupant les positions relatives prcdentes sont de ce fait implicitement acquitts.

Si le segment transmis na rien acquitter (par exemple dans le cas ou deux segments sont
transmis la suite, sans rception dun segment dans lintervalle), le numro dacquittement
reprend la valeur prcdemment transmise.

La rception dacquittements successifs portant le mme numro laisse supposer la perte de


segments si lmetteur a effectivement transmis des segments.

13.6.2 TCP Keepalive


Le mcanisme TCP Keepalive permet de maintenir une session TCP active, mme en labsence
de trafic engendr par les couches suprieures.

En labsence de donnes transmettre, un segment TCP avec le flag ACK positionn 1 et ne


contenant aucune donne est transmis aprs un dlai dfini au niveau de la couche TCP.

Formellement, le protocole TCP supporte trs bien une session sans trafic (mode idle ), mais en
gnral des mcanismes de timeout ferment les connexions inutilises. De ce fait, le principe du
keepalive ne fait pas partie du RFC 793 et son implmentation diffre selon les couches TCP.

13.7 Fentre coulissante et contrle de flux


Un mcanisme de contrle de flux de type fentre coulissante est ralis en ajustant la valeur du
champ Fentre de len-tte TCP (RWIN - Receive Window).

13.7.1 Principe de la fentre coulissante


Chaque extrmit de la connexion TCP signale la quantit de donnes quil est prt recevoir
laide du champ RWIN, en fonction de ltat de ses buffers dentre.

A chaque envoi, la quantit de donnes transmissibles est dcrment de la taille du segment


envoy (fentre de transmission).
Lorsque lmetteur a transmis des donnes pour lquivalemment de la taille RWIN, il arrte de
transmettre.
A chaque rception dun acquittement, le nud augmente dautant la taille de sa fentre de
transmission, jusqu concurrence de la valeur RWIN.

Le champ RWIN a une taille maximale de 65'536 Bytes (champ de 16 bits). Afin de sadapter aux
rseaux grand dbit, loption TCP Window scale (WSOPT) permet daugmenter la taille de la fentre
RWIN.

131 / 289
Services et rseaux 5.0 Alain Bron

Figure 13.18
Acquittement et fentre coulissante avec W=5 paquets (taille fixe)

13.7.2 Principe du contrle de flux


Le champ RWIN de l'en-tte TCP permet au rcepteur de spcifier l'metteur le nombre de Bytes
qu'il est autoris envoyer avant de recevoir un acquittement de sa part.

Le rcepteur (serveur) peut ajuster cette valeur s'il considre ne pas pouvoir traiter autant de segments
avant acquittement (congestion due des buffers pleins54, par exemple) : dans ce cas, il modifiera la
baisse la valeur du champ fentre de len-tte TCP.

Lmetteur ajustera la taille de sa fentre dmission sur cette nouvelle valeur.

54
Il faut considrer qu'un serveur peut avoir grer plusieurs dizaines de connections simultanes.

132 / 289
Services et rseaux 5.0 Alain Bron

Figure 13.19
Contrle de flux par ajustement de la fentre TCP RWIN

133 / 289
Services et rseaux 5.0 Alain Bron
Ouverture de
session valeur alatoire
|Time | client Telnet | Serveur Telnet |

|0.609 | 1 SYN |Seq = 0 Ack = 1639904950


| |(1868) ------------------> (23) |
|0.610 | 2 SYN, ACK |Seq = 0 Ack = 1
| |(1868) <------------------ (23) |
|0.610 | 3 ACK |Seq = 1 Ack = 1
| |(1868) ------------------> (23) |
Position du
|1.135 | 4 PSH, ACK - Len: 12 |Seq = 1 Ack = 1
premier Byte
| |(1868) <------------------ (23) |
attendu = 1
|1.135 | 5 PSH, ACK - Len 6: |Seq = 1 Ack = 13
(= 1er segment)
| |(1868) ------------------> (23) |
|1.136 | 6 ACK |Seq = 13 Ack = 7
| |(1868) <------------------ (23) |
|1.136 | 7 PSH, ACK - Len: 9 |Seq = 7 Ack = 13 Les segments 6 et
| |(1868) ------------------> (23) | 7 sont envoys
|1.136 | 8 PSH, ACK - Len: 3 |Seq = 13 Ack = 7 en mme
| |(1868) <------------------ (23) | temps , alors que
|1.176 | 9 ACK |Seq = 16 Ack = 16 le segment 8 est
| |(1868) <------------------ (23) | transmis
|1.176 | 10 PSH, ACK - Len: 9 |Seq = 16 Ack = 16 directement la
| |(1868) ------------------> (23) | suite du 6. A cet
|1.176 | 11 PSH, ACK - Len: 12 |Seq = 16 Ack = 25 instant, le serveur
| |(1868) <------------------ (23) | na pas encore
|1.176 | 12 PSH, ACK - Len: 6 |Seq = 25 Ack = 28 reu le segment 7.
| |(1868) ------------------> (23) | Donc le segment 8
|1.216 | 13 ACK |Seq = 28 Ack = 31 ne peut pas
| |(1868) <------------------ (23) | encore acquitter le
|1.216 | 14 PSH, ACK - Len: 10 |Seq = 31 Ack = 28 segment 6.
| |(1868) ------------------> (23) | Cela sera la tche
|1.216 | 15 ACK |Seq = 28 Ack = 41 du segment
Rien dautre 9.

| |(1868) <------------------ (23) | acquitter ...
|1.217 | 16 PSH, ACK - Len: 12 |Seq = 28 Ack = 41
| |(1868) <------------------ (23) |
|1.217 | 17 PSH, ACK - Len: 3 |Seq = 41 Ack = 40
| |(1868) ------------------> (23) |
|1.257 | 18 ACK |Seq = 40 Ack = 44
| |(1868) <------------------ (23) |
|1.257 | 19 PSH, ACK - Len: 9 |Seq = 44 Ack = 40
| |(1868) ------------------> (23) |
|1.257 | 20 ACK | |Seq = 40 Ack = 53
| |(1868) <------------------ (23) |
|1.290 | 21 PSH, ACK - Len: 71 |Seq = 40 Ack = 53
| |(1868) <------------------ (23) |
|1.290 | 22 PSH, ACK - Len: 3 |Seq = 53 Ack = 111
| |(1868) ------------------> (23) |
|1.330 | 23 ACK | |Seq = 111 Ack = 56
| |(1868) <------------------ (23) |
|1.330 | PSH, ACK - Len: 3 |Seq = 56 Ack = 111
| |(1868) ------------------> (23) |
|1.330 | 24 ACK | |Seq = 111 Ack = 59
| |(1868) <------------------ (23) |
|1.540 | 25 PSH, ACK - Len: 7 |Seq = 111 Ack = 59
| |(1868) <------------------ (23) |
|1.744 | 26 PSH, ACK - Len: 7 |Seq = 111 Ack = 59
| |(1868) <------------------ (23) |
|1.744 | 27 ACK | |Seq = 59 Ack

Figure 13.20
Flux TCP complet (session Telnet)

134 / 289
Services et rseaux 5.0 Alain Bron

13.8 Contrle de congestion.


Le mcanisme de contrle de flux par fentre coulissante et adaptative agit entre lmetteur et le
rcepteur, puisque TCP est un protocole mettant en relation des processus sur des nuds
distants.

Lorsque des quipements intermdiaires prennent place entre les deux nuds distants (des
routeurs, par exemple), le phnomne de congestion peut intervenir au niveau de lun dentre eux :
comme le dimensionnement de la fentre dmission est rgle entre le rcepteur et lmetteur, il
nest pas possible dajuster la taille de la fentre en fonction des performances des routeurs et de
prvenir des pertes de segments.

Figure 13.21
Perte de segments par congestion d'un routeur

Afin de contourner ce problme, de nouvelles fonctions (RFC 2001) ont t ajoutes au protocole
TCP.

13.8.1 Slow start


Afin de dterminer la quantit de donnes quil lui est possible de transmettre risque de perte de
segments, lmetteur adapte le nombre de segments transmis en observant les acquittements en
retour.

Une deuxime fentre, la fentre de congestion (Congestion Window - cwnd), est utilise de manire
itrative par lmetteur :

Dans un premier temps, la fentre de congestion, qui reprsente le nombre de segments 55 quil est
possible de transmettre, est fixe 1.

A chaque acquittement reu, la valeur de la fentre est double, jusqu concurrence de la taille de
fentre de transmission dfinie par le rcepteur (RWIN - advertised window) ou jusqu la perte
dacquittement.
Le nombre de segments transmis augmente de cette manire de faon exponentielle.

55 Soit la taille du segment annonc par le rcepteur, soit une valeur par dfaut, typiquement 512 Bytes

135 / 289
Services et rseaux 5.0 Alain Bron

Figure 13.22
Slow Start et augmentation exponentielle du nombre de segments transmis

En cas de congestion dun lment situ le long de flux TCP (par exemple un routeur), des
segments sont supprims et donc perdus.

Les acquittements ne parvenant plus lmetteur, il peut ainsi dterminer la taille de la


fentre de congestion utiliser afin d'viter les pertes de segments.

Figure 13.23
Slow Start en cas de congestion (timeout sur la rception d'un acquittement)

136 / 289
Services et rseaux 5.0 Alain Bron

13.8.2 Congestion Avoidance


Une congestion peut tre dtecte par l'observation de deux vnements :

Lchance du timeout aprs lequel un segment est considr comme non acquitt (donc
potentiellement perdu)
La rception dun acquittement dupliqu (qui contient un numro dacquittement dj reu),
ce qui suggre quaucun segment nest parvenu au nud distant depuis lavant-dernier
message dacquittement.

Le mcanisme de Congestion Avoidance (vitement de congestion) fonctionne en conjonction


avec le mode Slow Start et une variable supplmentaire ssthresh (Slow Start Threshold Size)
doit tre gre par lmetteur.

Dans un premier temps, la Congestion Windows - cwnd est fix 1 et le Slow Start Threshold Size -
ssthresh 65'535.

Le mcanisme de Slow start est appliqu au dmarrage de la connexion.


En cas de congestion (timeout ou acquittement dupliqu), la taille de la fentre courante cwnd
divise par 2 est stocke dans la variable ssthresh (la taille minimale de ssthresh est fixe 2).

En cas de congestion par timeout, la valeur de cwnd est fixe 1 (cas du Slow Start).

Lorsque quun nouvel acquittement valide est reu, le processus daugmentation du cwnd reprend.
Si cwnd est plus petit ou gale sstresh, le processus de Slow Start est dmarr (transmission
exponentielle)

Dans le cas contraire, lalgorithme prvoit une croissance linaire de la variable cwnd.

Figure 13.24
Congestion avoidance (duplicate ACK)

137 / 289
Services et rseaux 5.0 Alain Bron

13.8.3 Fast Retransmit


Le mcanisme de Fast Retransmit apporte une modification au principe du Congestion
Avoidance, en acclrant les retransmissions en cas de perte de segments.

Des acquittements dupliqus peuvent intervenir lorsquun segment est rceptionn dans le
dsordre par le nud distant.

Afin de diffrencier les acquittements dupliqus parce quun segment est arriv dans le dsordre,
de ceux dupliqus cause de la perte dun segment, lmetteur attend de recevoir plusieurs
acquittements dupliqus.
La rception dun petit nombre dacquittements dupliqus est probablement symptomatique de
segments arrivs dans le dsordre, alors quun grand nombre de duplications indique plutt une
congestion.
Dans le cas o une congestion est souponne, TCP retransmet immdiatement les segments
supposs perdus, sans attendre que les timeouts arrivent chance.

13.8.4 Fast Recovery


La mise en uvre du Fast Recovery prvoit damliorer le dbit en cas de faible congestion.
Dans le cas du Fast Recovery, un processus de Congestion Avoidance est dmarr aprs la
phase de Fast Retransmit, au lieu dun processus Slow Start.

138 / 289
Services et rseaux 5.0 Alain Bron

13.9 Options TCP


Les options TCP permettent lajout de fonctionnalits ne faisant pas partie du RFC 793 de base.

Les options, de longueur variable multiple de 32 bits, sont structures avec un premier champ de 1 Byte
prcisant le type de loption, un 2 me Byte donnant la longueur du champ option. Les Bytes suivants
contiennent les valeurs de loption.
Des caractres de remplissage permettent datteindre 32 bits.

Une liste des options officielles est maintenue par lIANA56.

Kind Length Meaning Reference


------ ------ ------------------------------------- ---------
0 - End of Option List [RFC793]
1 - No-Operation [RFC793]
2 4 Maximum Segment Size [RFC793]
3 3 WSOPT - Window Scale [RFC1323]
4 2 SACK Permitted [RFC2018]
5 N SACK [RFC2018]
6 6 Echo (obsoleted by option 8) [RFC1072]
7 6 Echo Reply (obsoleted by option 8) [RFC1072]
8 10 TSOPT - Time Stamp Option [RFC1323]
9 2 Partial Order Connection Permitted [RFC1693]
10 3 Partial Order Service Profile [RFC1693]
11 CC [RFC1644]
12 CC.NEW [RFC1644]
13 CC.ECHO [RFC1644]
14 3 TCP Alternate Checksum Request [RFC1146]
15 N TCP Alternate Checksum Data [RFC1146]
16 Skeeter [Knowles]
17 Bubba [Knowles]
18 3 Trailer Checksum Option [Subbu & Monroe]
19 18 MD5 Signature Option [RFC2385]
20 SCPS Capabilities [Scott]
21 Selective Negative Acknowledgements [Scott]
22 Record Boundaries [Scott]
23 Corruption experienced [Scott]
24 SNAP [Sukonnik]
25 Unassigned (released 2000-12-18)
26 TCP Compression Filter [Bellovin]
27 8 Quick-Start Response [RFC4782]
28-252 Unassigned
253 N RFC3692-style Experiment 1 (*) [RFC4727]
254 N RFC3692-style Experiment 2 (*) [RFC4727]

Figure 13.23
Liste des options TCP officielle.

Loption de type 1 NOP (No Operation) est un champ de remplissage.

56
http://www.iana.org/assignments/tcp-parameters/

139 / 289
Services et rseaux 5.0 Alain Bron

13.9.1 Option MSS - Maximum Segment Size


Par dfaut, TCP utilise une taille de segment TCP de 536 Bytes (taille minimum dun paquet IP
en-tte IP - en-tte TCP = 576 -20-20)

Loption de type 2 MSS (Maximum Segment Size) permet de fixer, la connexion (SYN) la taille
maximum des segments transmissibles pour cette connexion.

Les couches IP drivent en gnral la valeur MSS de la valeur du MTU de l'interface locale.

Figure 13.24
Option MSS = 1460 (MTU Ethernet 20 Bytes en ttes IP 20 Bytes en-tte TCP)

13.9.2 Option SACK - Selective Acknowledgment


Le mcanisme dacquittement standard de TCP acquitte de manire globale des segments reus
successivement.
Dans le cas o lun dentre un est perdu, la totalit de ces segments doivent tre retransmis.

Les options 4 et 5 SACK (Selective Acknowledgment) permettent lacquittement slectif des


segments successifs, en prcisant la position des bornes infrieures et suprieures des donnes
acquittes.

140 / 289
Services et rseaux 5.0 Alain Bron

Figure 13.25
Mcanisme dacquittement TCP standard

Loption 4 (SACK permitted) signale, louverture de connexion (SYN=1), que lmetteur supporte le
SACK.
Loption 5 (SACK) donne les bornes des donnes acquittes de manire slective.

Figure 13.26
Mcanisme dacquittement TCP slectif

141 / 289
Services et rseaux 5.0 Alain Bron

Figure 13.26
Option Selective Acknowledgment

13.9.3 Option WSOPT


Le champ RWIN, prcisant la taille de la fentre accepte par le rcepteur, est cod sur 16 bits, ce
qui limite la taille de la fentre 65'536 Bytes (64 kB).
Cette taille peut tre sous-optimale compte tenu des performances des rseaux actuels.

Hypothses :

RTT de 10 ms
Dbit de 100 Mb/s.

64 kB au dbit de 100 Mb/s = 512 kb au dbit de 100 Mb/s = 5,12 ms


Aprs 5.12 ms, lmetteur aura atteint la taille de la fentre RWIN et devra attendre 4,88 ms le premier
acquittement.

Lmetteur passera prs de la moiti du temps attendre les acquittements de ses segments.
La taille de la fentre RWIN devrait idalement correspondre environ 10 ms, donc tre de lordre de
128 kB (128 kB au dbit de 100 ms = 1024 kb/s au dbit de 100 kb/s 10 ms.

Loption 3 WSOPT (Windows Scale option) permet daugmenter la taille de la fentre RWIN 1 GB
(230 !), en ajoutant 14 bits supplmentaires aux 16 bits de la fentre RWIN.

Loption WSOP=6 signifie quil faut dcaler la valeur RWIN de 6 bits sur la gauche (ce qui revient
multiplier la valeur RWIN par 26 = 64)

142 / 289
Services et rseaux 5.0 Alain Bron

Figure 13.27
Option 3 WSOPT ( fentre RWIN multiplie par 64)

143 / 289
Services et rseaux 5.0 Alain Bron

13.9.4 Option Time Stamp


Loption 10 (Time Stamp), introduite par le RCF 1323, permet de mesurer le temps daller-retour
courant (RTT Round tripe Time) pour un flux TCP (temps mesur entre lenvoi dun segment et la
rception de son acquittement.
La connaissance du RTT permet la couche TCP daffiner la valeur des diffrents timeouts.

Figure 13.28
Option Timestamps

144 / 289
Services et rseaux 5.0 Alain Bron

13.10 Programmation par sockets.


Dans le modle TCP/IP 4 couches, TCP est utilis pour transporter les donnes entre
processus : autrement dit, les processus confient directement leurs donnes la couche TCP (ou
UDP), charge eux de les formater correctement pour que le processus homonyme sur le nud
distant puisse les interprter correctement (par exemple, via le protocole HTTP ou FTP).

Laccs la couche TCP est ralis, comme pour un accs un systme de fichier, par
lintermdiaire de librairies ad-hoc.
Les librairies TCP, ou API TCP, initialement dveloppes par BSD (Berkeley Software
Distribution), puis intgres aux spcifications POSIX, prennent en gnral le nom de sockets (ou
winsocks - Windows sockets - pour lenvironnement Microsoft).

Les sockets supportent des flux bidirectionnels de types stream (TCP), datagramme (UDP) ou
raw (accs aux donnes brutes du flux ; permet de forger compltement des trames ; pas support
par tous les systmes).

Par ailleurs, les sockets peuvent galement tre utiliss pour permettre une connexion entre processus
locaux.

Les API sockets mettent disposition des fonctions permettant douvrir et fermer une connexion
TCP, gnrer un flux TCP ou UDP, ou mettre une connexion en attente douverture passive (mode
listen).

socket() Cre un nouveau socket (et lui alloue les ressources ncessaires),
identifie par un numro de rfrence utilis dans les appels suivants.

bind() Ct serveur, associe un socket, pralablement cre et rfrence


grce son numro, un couple adresse IP no de port TCP.

listen() Passe le socket, pralablement associe et cre, en mode dcoute


(listen).

Ct client, assigne un socket, pralablement associe et cre, un


connect() numro de port libre choisi localement et tente une connexion sur un
couple adresse IP no de port TCP distant (ouverture active).

accept() Ct serveur, permet daccepter des connexions entrantes (ouverture


passive).

send(),recv()
write(),read() Transmet ou reoit des donnes pour/dun socket distante.

close() Termine la connexion (dans le cas de TCP) et libre les ressources.

gethostbyname()
gethostbyaddr() Rsolution de nom (DNS) IP v4.

select()
poll() Vrifie ltat du socket (prt recevoir/mettre, en erreur).

getsockopt() Retourne la valeur dun paramtre TCP.

setsockopt() Dfini la valeur dun paramtre TCP.

Chaque fonction supporte ou ncessite un certain nombre de paramtres.

145 / 289
Services et rseaux 5.0 Alain Bron

Figure 13.29
Cration dun socket TCP : principe gnral

Figure 13.30
Cration dun socket TCP : interactions dans lenvironnement Windows.

146 / 289
Services et rseaux 5.0 Alain Bron

14. Le protocole UDP

Le protocole UDP (User Datagram Protocol, RFC 768, no protocole dfini au niveau IP : 0x17) est
le pendant non-connect (connectionless) du protocole TCP.

Protocole de niveau OSI 4 (transport), UDP fourni un systme de transmission de donne de type
best effort : les donnes sont transmises sans aucune garantie quant leur bonne rception, UDP
noffrant

Pas douverture / fermeture de session


Pas de squencement des donnes.
Pas dacquittement, ni de retransmission
Pas de notion durgence, etc.

La fiabilit des rseaux rcents, particulirement les rseaux LAN, permet dutiliser
raisonnablement UDP dans de bonnes conditions et avec un taux derreur trs faible.

Des mcanismes de reprise en cas derreur, ou de gestion de flux par exemple, peuvent
nanmoins tre mis en uvre au niveau des couches 5 7 ou au niveau applicatif.

Tout comme TCP, UDP permet deux processus situs sur des nuds IP de communiquer
laide de messages, forms dun en-tte et de donnes.

Figure 14.1
Champs de len-tte dun message UDP

Lusage des numros de ports de 16 bits est le mme que celle dfinie pour TCP.

Le champ longueur dfini la taille du message UDP en nombre de Bytes (taille minimale = taille de
len-tte sans donnes = 8, taille maximale = 2 16 = 65'526 Bytes), mme si historiquement la taille
des segments UDP a souvent t limite 512 Bytes.

La somme de contrle permet de valider lentier du message.

147 / 289
Services et rseaux 5.0 Alain Bron

Figure 14.2
Dcodage dun len-tte dun message UDP

Lavantage du protocole UDP est sa simplicit dimplmentation, puisquil ne ncessite pas la


gestion de compteurs, de buffers ou de timeout.

14.1 Cas dutilisation dUDP

SNMP (Simple Network Management Protocol), implment lorigine sur des


quipements rseau avec de faibles ressources.
TFTP (Trivial File Transfert Protocol), destin permettre des nuds simples et sans
ressources deffectuer des transferts de fichiers (mise jour de firmeware sur des
terminaux ou des quipements rseau).
DNS (Domaine Name Service), peut tre dploy en UDP ou TCP.
BOOTP/DHCP (Boot Protocol / Dynamic Host Control Protocol) : attribution dynamique de
paramtres IP.

Sa relative rapidit en fait un protocole utilis par certaines applications pouvant prendre le risque
de perdre des donnes au profit de lefficacit.

Application de type VoIP, o la rapidit prime (problme de gigue)


NFS (Network File Transfert), systme de partage de fichiers sous Unix.
Certains services NetBIOS.

De manire gnrale, le protocole UDP est utilis dans le cas de transmissions de flux multicast,
car la gestion dacquittements multiples en rponse un seul envoi TCP pose des problmes
pratiques difficiles rgler (nombre de destinataire inconnu ; comment grer les retransmissions,
etc.).

148 / 289
Services et rseaux 5.0 Alain Bron

15. Le protocole ICMP

Le protocole ICMP (Internet Control Message Protocol - RFC 792) est un protocole de gestion et
de contrle du rseau et nest pas prvu pour transporter des donnes.

Sa position selon le modle OSI est ambige, puisque utilisant le protocole IP, ICMP nest pas
pour autant une couche de transport (OSI 4). On peut considrer que ICMP est un protocole de
niveau 3,5, encapsul dans le protocole IP (no de protocole 0x01), puisquil nimplmente pas de
systme dadressage propre.

Figure 15.1
Champs de len-tte dun message ICMP

15.1 Len-tte ICMP


Len-tte ICMP est compos de 6 champs, dont un champ de Donnes ICMP.

Le champ Type de 8 bits dfinit la fonction du message ICMP.


Le champ Code, de 8 bits galement, prcise des options pour un type donn.
La combinaison type et code permet de dfinir un message ICMP complet.

Le champ Somme de contrle de 16 bits permet de valider le message ICMP.

Les champs Identifiant et No de squence, de 16 bits chacun, essentiellement utiliss par les
messages ICMP de type 0 et 8 ( ping )

Le champ Donnes ICMP permet dajouter des informations pour un message ICMP particulier.

Page suivante, Figure 5.2 : table des messages ICMP.

149 / 289
Services et rseaux 5.0 Alain Bron

Type Usage gnral Code Usage particulier


Reponse echo
0 Rponse un message type 8 0 Echo-reply = pong

1
2
0 Rseau inaccessible
1 Nud inaccessible
2 Protocole inaccessible
3 Port inaccessible
Fragmentation ncessaire mais interdite
4 (DF=1)
5 chec de routage par la source
6 Rseau de destination inconnu
7 Nud de destination inconnu
3 Destinataire inaccessible 8 Nud source isol
9 Rseau de destination interdit
10 Nud de destination interdit
Rseau de destination inaccessible pour ce
11 service
Nud de destination inaccessible pour
12 service
13 Communication interdite (filtre)
14 Host precedence violation
15 Precedence cutoff

Source quench Buffers pleins. Fonctionne indpendamment


4 Buffers pleins 0 du contrle de Flux de niveau TCP

Redirection (ICMP redirect) 0 Redirection pour rseau


Information signifiant que le chemin 1 Redirection pour un nud
5 emprunt nest pas correct. Peut permettre 2 Redirection pour un rseau et un service
de mettre jour les tables de routage
3 Redirection pour un nud et un service
6
7
Echo
8 Demande de rponse 0 Correspond la commande ping

Avertissement routeur
9 Permet la dcouverte du routeur local. 0 Permet un routeur de sannoncer.
RFC 1256

Sollicitation routeur
Permet un nud de connatre les routeurs
10 Permet la dcouverte du routeur local. 0 locaux ( 224.0.0.2)
RFC 1256

0 Expiration du champ TTL du paquet IP


11 Temps dpass
1 Datagramme pas rassembl temps

Dans le cas o une erreur est dtecte dans


12 En-tte erron 0 len-tte dun paquet par un nud distant.
timestamp request
13 Demande dheure 0 Permet la synchronisation dhorloge

timestamp reply Rponse en vue dune synchronisation


14 Rponse dheure 0 dhorloge.

15 Demande adresse IP 0 Ne pas confondre avec DHCP

16 Rponse adresse IP 0

17 Demande masque de sous-rseau 0 Ne pas confondre avec DHCP

18 Rponse masque de sous-rseau 0

150 / 289
Services et rseaux 5.0 Alain Bron

15.2 Exemples de messages ICMP

15.2.1 ICMP echo-request et echo-respons (8,0 et 0,0)


Une demande echo-request prend la forme dun message ICMP de type 8, code 0, gnralement
gnr par la commande ping .

Le champ Identifiant peut tre interprt comme un numro de port sous TCP ou UDP, alors que le
champ Numro de squence permet de squencer les envois et les rponses.

Le champ Donnes ICMP de 32 Bytes est gnralement occup par les 32 premiers caractres
ASCII.

Choisis
arbitrairement

Figure 15.2
Message ICMP echo-request

Un message ICMP type 0, code 0 constitue une rponse (echo-reply) une demande dcho
(echo-request).
Le champ Donnes ICMP doit contenir les donnes ICMP figurant dans le message echo-request.

Figure 15.3
Message ICMP echo-reply

151 / 289
Services et rseaux 5.0 Alain Bron

Figure 15.4
Dcodage de messages ICMP echo-reply et echo-reply

Dangers des messages ICMP echo.

Un message ICMP de type echo permet de dterminer quels sont les nuds et les services
disponibles sur un rseau, donc de scanner un rseau cible afin de connatre les ressources qui y
sont prsentes.

15.2.2 ICMP TTL Exceeded (11,0)


Le champ TTL de len-tte dun paquet IP est dcrment de 1 chaque passage dun routeur.

Un message ICMP de type 11, code 0 est mis lorsquun lment du rseau, typiquement un
routeur, assigne la valeur 0 au champ TTL (Time-To-Live) de len-tte du paquet IP.
Le paquet arriv en fin de vie est limin, et lmetteur est averti laide du message ICMP 11,0.

152 / 289
Services et rseaux 5.0 Alain Bron

Les champs Identifiant et Numro de squence ne sont pas utiliss, alors que le champ Donnes
ICMP contient len-tte du paquet IP arriv en fin de vie ainsi que les 64 premiers Bytes des
donnes quil transportait.

Figure 15.5
Message ICMP TTL Exceeded

Figure 15.6
Dcodage dun message ICMP TTL exceeded

Ce mcanisme est utilis par traceroute pour dterminer le chemin menant une destination
donne.

Dangers des messages ICMP TTL exceded.

Utiliss avec un mcanisme de type traceroute, les messages ICMP TTL exceeded permettent de
connatre la topologie IP dun rseau cible.

153 / 289
Services et rseaux 5.0 Alain Bron

Traceroute

La commande traceroute57 permet de tracer le chemin suivi par les messages ICMP et de
dterminer les routeurs par lesquels ils ont transit, en transmettant un destinataire une srie de
paquets IP contenant une valeur TTL incrmente de 1 chaque envoi, en dbutant par 1.

Chaque routeur, successivement du plus proche au plus distant, recevra un paquet pour lequel il
devra passer le TTL 0, lobligeant informer lexpditeur de la surpression du paquet laide
dun message ICMP 11,0.

En rcoltant les messages ICMP en retour pour chaque TTL, il est possible de reconstituer le
chemin menant un destinataire. Les routes tant susceptibles de changer au fil du temps, le
rsultat obtenu par le traceroute nest valable que pour la priode courante.

De plus en plus de rseaux ne laissent passer que trs slectivement les paquets ICMP, rendant
traceroute de moins en moins oprant.

Figure 15.7
Principe du traceroute : utilisation du champ TTL

57 Tracert.exe sous Windows, traceroute sous UNIX. Diffrents programmes existent galement sous forme graphique.

154 / 289
Services et rseaux 5.0 Alain Bron

15.2.3 ICMP Host unreacheable (3,1)


Llment du rseau (en gnral un routeur) qui constate quune destination est inatteignable
transmet lmetteur du paquet un message ICMP de type 3, le numro du code prcisant la
raison du problme.

code 0 rseau inatteignable


code 1 nud inatteignable
code 2 rseau et service inatteignables
code 3 nud et service inatteignables

Linformation reprsente par le numro du code nest pas toujours dune grande
pertinence, en fonction de linterprtation faite par llment lorigine du message
ICMP

Les champs Identifiant et Numro de squence ne sont pas utiliss, alors que le champ Donnes
ICMP contient len-tte du paquet IP arrive en fin de vie ainsi que les 64 premiers Bytes des
donnes quil transportait.

Figure 15.7
Message ICMP Host unreachable

Figure 15.8
Dcodage dun message ICMP Host unreachable (ICMP 3,1)

155 / 289
Services et rseaux 5.0 Alain Bron

15.2.4 ICMP Fragmentation needed (3,4)


Lorsquun quipement (en gnral un routeur) reoit un paquet trop grand pour le rseau sur
lequel il doit tre transmis, il le fragmente de manire ce que la taille des fragments soit conforme
au MTU du rseau.

Si le paquet trop grand ne peut tre fragment (le flag DF fix 1), lquipement llimine et avertit
lmetteur de cette suppression laide dun message ICMP de type 3 (destinataire inaccessible),
code 4 (Fragmentation ncessaire mais interdite).

Le flag DF est systmatiquement fix 1 dans le cadre du protocole PMTUd.


Une extension au protocole ICMP permet de prciser dans le message ICMP la taille du MTU
autoris, afin dviter que lmetteur ne doivent effectuer des essais itratifs successifs afin de
trouver la taille de paquet adquate.

Dans ce cas, les champs Identifiant et Numro de squence, inutiliss la plupart du temps, servent
prciser la taille du MTU autorise sur le rseau.

Figure 15.9
Message ICMP Fragmentation needed

Dangers des messages ICMP de fragmentation needed.

Un message ICMP peut tre un vecteur dattaque puisquil permet de modifier la taille des
messages transmis, et dgrader les performances dun flux de donnes (avec une taille de
donnes transmises sous optimale).

15.2.5 ICMP Redirection (5,n)


Un message ICMP de redirection permet un routeur de signaler une meilleure route expditeur.
Lorsque lexpditeur reoit lavis de redirection, il met sa table de routage dynamiquement jour
pour cette destination.
La redirection peut tre effectue pour un nud ou un rseau : cest la charge du routeur
redirecteur de prciser le type de redirection. Le routeur redirecteur ne peut tre quun gateway
local (se trouvant sur le mme rseau que lexpditeur).

156 / 289
Services et rseaux 5.0 Alain Bron

2.2.La
Laroute
routevers
versBBest
est
annonce par
annonce par le le
routeurlocal
routeur localR2
R2
meilleure route
meilleure route

3.3.ICMP
ICMPRedirect
Redirect
1.1.Route
Routepar
pardfaut
dfaut
passer
passerpar
parR2
R2
= routeur optimal
= routeur optimal
R1

Host A

Host B
4.4.Mise
Misejour
jour
tablede
table deroutage:
routage: R2
BB==R2R2

5.5.Flux
Fluxfinal
finalpour
pourBB

Figure 15.10
Scnario de redirection ICMP

Figure 15.11
Message ICMP redirect

Le champ code peut prendre les valeurs 0 = redirection pour un rseau, 1 = redirection pour un
nud, 2 = redirection pour un rseau et un service 3 = redirection pour un nud et un service.

157 / 289
Services et rseaux 5.0 Alain Bron

Figure 15.12
Segment TCP envoy ladresse IP 193.134.217.17 via le routeur 00:1e:4a:fc:53 :90

Gateway de redirection

Figure 15.13
Message ICMP redirect code 0 de la part du routeur 00:1e:4a:fc:53 :90
gateway optimal=10.224.10.1

Figure 15.14
Nouvelle route suivie via le routeur HSRP 00:00:0c:07:ac:05
pour ladresse IP 193.134.217.17 (MAC obtenue via ARP)

158 / 289
Services et rseaux 5.0 Alain Bron

C:\>netstat -rn

Table de routage Gateway par dfaut

===========================================================================
Itinraires actifs :
Destination rseau Masque rseau Adr. passerelle Adr. interface Mtrique
0.0.0.0 0.0.0.0 10.224.10.81 10.224.10.95 20
10.224.10.0 255.255.255.0 10.224.10.95 10.224.10.95 20
10.224.10.95 255.255.255.255 127.0.0.1 127.0.0.1 20
10.255.255.255 255.255.255.255 10.224.10.95 10.224.10.95 20
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1
...
193.134.217.17 255.255.255.255 10.224.10.1 10.224.10.95 1
255.255.255.255 255.255.255.255 10.224.10.95 10.224.10.95 1
Passerelle par dfaut : 10.224.10.81
===========================================================================

C:\>
C:\>ipconfig /all Gateway de redirection
... pour cette route
Carte Ethernet Connexion au rseau local 6:
Adresse physique . . . . . . . . .: 00-13-72-81-5F-92
DHCP activ. . . . . . . . . . . .: Non
Adresse IP. . . . . . . . . . . . : 10.224.10.95
Masque de sous-rseau . . . . . . : 255.255.255.0
Passerelle par dfaut . . . . . . : 10.224.10.81
Gateway par dfaut
...

C:\>arp -a

Interface : 10.224.10.95 --- 0x4


Adresse Internet Adresse physique Type
10.224.10.1 00-00-0c-07-ac-05 dynamique
10.224.10.81 00-1e-4a-fc-53-90 dynamique Cf. figures 15.12 15.14

C:\>

Figure 15.14
Nouvelle route suivie via le routeur All-HSRP-routeurs_05

Dangers des messages ICMP de redirection.

Un message ICMP de redirection peut tre un vecteur dattaque puisquil permet de modifier le
contenu dune table de routage distante ; cest pourquoi il est souvent dsactiv au niveau des
logiciels de protection des nuds (firewall et filtre IP).

Un message ICMP type 5 envoy une cible permet ainsi soit une attaque de type dni de service
(dans le cas o la redirection fait pointer la table de routage sur un gateway inexistant pour une
route donne), soit une attaque de type MitM (Man in the Middle) si la redirection oblige le flux
passer par un nud tiers (pirate), qui redirige son tour le trafic vers la destination finale.

159 / 289
Services et rseaux 5.0 Alain Bron

16. Le protocole HTTP

Le protocole HTTP (HyperText Transfer Protocol, RFC 1945, 2616) a t dvelopp pour permettre
le partage dinformations multimdia en mode hypertexte.

Prenant place au-dessus de TCP, HTTP fonctionne en mode client-serveur et implmente plus ou
moins les couches 5 7 du modles OSI.
HTTP permet notamment le transfert de donnes au format HTML.

Des mthodes permettent denvoyer des demandes ladresse dune ressource, rfrence via un
URI (Uniform Resource Identifiers), un URN (Uniform Resource Name) ou un URL (Uniform
Resource Locators)58.

La version actuelle (1.1) de HTTP supporte louverture et lutilisation de flux TCP parallles ainsi que
le maintien des connexions TCP une fois la rponse la requte http obtenue.

Les flux multiples sont initis par le client dans le but dacclrer la rcupration du contenu dun site
compos de plusieurs objets (texte, images, etc.).
Le serveur nest pas oblig dutiliser tous les flux ouverts par le client.

Le maintien de la connexion TCP permet dviter louverture dune nouvelle connexion sur le mme
serveur dans le cas o la ressource demande est compose de diffrents objets situs sur le mme
serveur.
Les timeouts de fermeture de connexion dpendent de limplmentation des serveurs (IIS, Apache) et
des clients (IE, firefox, ) et de leurs configurations.

TCP implmente ses propres timeouts.

La version HTTP 2.0 (RFC 7540), bien que parfois utilise, nest pas encore formellement
normalise.

58
http://www.w3.org/TR/uri-clarification/

160 / 289
Services et rseaux 5.0 Alain Bron

16.1 Format des messages HTTP


Un message HTTP est compos dun en-tte et de donnes (payload).

Figure 16.1
Format message http

16.1.1 Len-tte HTTP


Len-tte HTTP est compos de deux parties, le champ Requte/Rponse et le champ MIME.

Figure 16.2
Format de len-tte HTTP

Le partie Requte/Rponse permet la transmission de commandes entre clients et serveurs,


implmentes sous la forme de mthodes (*mthodes prsentent ds les versions http 0.9).

GET *demande une ressource un serveur


HEAD *demande len-tte dune ressource un serveur
POST envoie des donnes une ressource (formulaire, etc.)
PUT envoie une ressource sur un serveur (modifie ou cre)
DELETE demande la suppression dune ressource
TRACE demande au serveur de retourner la requte reue
OPTIONS retourne les mthodes supportes par le serveur
CONNECT permet le transport HTTPS via un proxy HTTP.
PATCH demande la modification partielle dune ressource.

161 / 289
Services et rseaux 5.0 Alain Bron

Figure 16.3
Requte http

Figure 16.4
Rponse HTTP

Le partie MIME (Multipurpose Internet Mail Extensions, RFC 2045), historiquement utilis pour les
changes de mails, permet, dans un contexte multimdia, de dfinir les types de donnes
supportes par les clients et les serveurs.

MIME request-header (RFC 2616)

MIME-Version 1.0
Accept Spcifie le type de donnes supportes
(Accept: text/html, audio/*)
Accept-Charset Spcifie le jeu de caractres supports
(Accept-Charset: iso-8859-5)
Accept-Encoding (Accept-Encoding: compress, gzip)
Accept-Language Spcifie la langue dsire
(Accept-Language: fr, en-gb)
Connection Demande le maintien de connexion TCP
(Connection: keep-alive Connection: close)
Host Spcifie le nom fqdn de lhte cible
(Host: www.w3.org)
If-Modified-Since Spcifie la date des donnes en possession du client (cache du
browser)
(If-Modified-Since: Sat, 29 Oct 2011 19:43:31 GM)
User-Agent Spcifie le modle du client gnrant la requte.
(User-Agent: Mozilla/5.0)

162 / 289
Services et rseaux 5.0 Alain Bron

MIME: respons-header (RFC 2616)

MIME_Version: 1.0
Content-Length Prcise la taille des donnes transmises
Content-Type Prcise le contenu des donnes transmises
(Content-Type: text/html)
Date Date denvoi des donnes
(Date: Wed, 20 Mar 2013 11:59:37 GMT)
ETag Empreinte (hash) des donnes transmises
(ETag: "9810004-583-4bdc9f31294c0")
Keep-Alive Prcise les paramtres du maintien de connexion
(Keep-Alive: timeout=5, max=10)
Last-Modified Dernire modification des donnes.
(Last-Modified: Mon, 16 Apr 2012 11:16:11 GMT)
Server Identification du serveur
(Server: Apache/2.2.3 (CentOS))

Figure 16.5
Champ MIME (Requte)

Une requte HTTTP est valide par un code de statuts, maintenus par lIANA:

1xx Information
2xx Succs (200 OK)
3xx Redirection (304 Not modified)
4xx Erreur client (404 Not found)
5xx Erreur serveur (501 Not implemented)

163 / 289
Services et rseaux 5.0 Alain Bron

Figure 16.6
Ouverture de 6 flux TCP parallles sur le mme serveur.

16.2 HTTPS
HTTPS (RFC 2818, formellement HTTP over TLS) permet la transmission scurise de flux http
en implmentant, via SSL/TLS, les services de confidentialit, dauthentification et dintgrit.

HTTPS utilise par dfaut le port TCP 443 et ncessite au minimum limplmentation dun
certificat X.509 de type SSL/TLS sur le serveur.

A une requte sur le port 443, le serveur rpond en transmettant son certificat (contenant sa cl
publique), qui permet de valider lidentit du serveur (pour autant que le certificat soit reconnu
valide par le client) et de chiffrer les donnes entre le client et le serveur (grce la cl publique
du serveur).
Aprs une phase initiale, une cl de session (cl symtrique) est gnre, puis utilise pour
chiffrer le flux HTTP de manire bi-directionnelle.

La fiabilit du processus repose en partie sur la confiance dans le certificat du serveur, donc dans
lexistence dune infrastructure de type PKI (Public Key Infrastructure).

Figure 16.7
Session HTTPS avec certificat valide.

164 / 289
Services et rseaux 5.0 Alain Bron

17. SSL/TLS

TLS (Transport Layer Security) assure un transport scuris de protocole de haut niveau tels que
HTTP, SMTP, FTP, etc. et prend place au-dessus de TCP.

Mme si TLS lui a formellement succd, le terme SSL (Secure Socket Layer) est encore
frquemment utilis.

TLS assure trois services de scurit :

Authentification, via un mcanisme de certificat.


Confidentialit, via un chiffrement laide dune cl de session symtrique temporaire.
Intgrit, via un mcanisme de contrle dintgrit.

La version actuelle de TLS est 1.2, RFC 5246 (dernire version de SSL : 3.0)
TLS intgre une grande varit de technologies, variables suivant les implmentations, ce qui
oblige une phase prliminaire de ngociation des paramtres utiliser.

TLS est compos de deux couches, la couche de ngociation (TLS Handshake Protocol) et la
couche de transport des donnes (TLS Record Protocol).

Figure 17.1
Connexion TCP, TLS Handshake et TLS Record (Application Data)

165 / 289
Services et rseaux 5.0 Alain Bron

17.1 TLS Handshake


La phase de dmarrage de la session TLS prvoit lenvoi dun message client-hello, prcisant la
version TLS supporte et une liste de paramtres, auquel est rpondu un message server-hello
confirmant la version TLS utilise et les paramtres choisis qui seront utiliss lors de cette session.

Figure 17.2
Echange de messages hello

La deuxime phase consiste lenvoi dun certificat, en gnral entre le serveur et le client sil
sagit de valider lidentit du serveur seul.
Un double change de certificats est possible si les deux extrmits de la session TLS doivent
sauthentifier.

En gnral, TLS utilise un certificat x.509 de type SSL, valid par une infrastructure de type PKI.

166 / 289
Services et rseaux 5.0 Alain Bron

Figure 17.3
Echange du certificat

La troisime phase consiste lchange des paramtres permettant la gnration de la cl


symtrique de session qui sera utilise pour chiffrer les messages ultrieurs.

Lintgrit des donnes peut tre assure par un mcanisme de type MAC (message
authentication code), par exemple via un hash ajout aux donnes.

167 / 289
Services et rseaux 5.0 Alain Bron

Figure 17.4
Echange des paramtres de cl de session

Figure 17.4
Donnes chiffres (TLS Record)

168 / 289
Services et rseaux 5.0 Alain Bron

18. Multicasting

Si le mode de transmission unicast permet de transmettre des donnes un destinataire unique et


le mode broadcast tous les nuds dun rseau, le multicasting permet de transmettre des
donnes plusieurs destinations simultanment.

Plutt que de transmettre autant de paquets (datagrammes) que de destinataires, lmetteur dun
multicast ne gnre quun seul paquet, adress laide dune adresse spciale de classe D (adresse de
multicast)

Les nuds dsirant recevoir les donnes du flux multicast se mettent lcoute de ladresse de
classe D correspondant au groupe de diffusion.
A lcoute de
A lcoute de l'adresse B
l'adresse A A lcoute de
ladresse C

Transmet
3x data1,
3x data2,

A lcoute des
A lcoute des adresses B et M
adresses A et M A lcoute des
adresses C et M

Transmet
1x data1,
1x data2...

Figure 18.1
Distribution unicast vs multicast

Dans le cas dun rseau multi-segments, les routeurs multicast59 ont la tche de dupliquer, si
ncessaire, le paquet afin que tous les destinataires puissent en recevoir une copie.

59 un routeur multicast est un routeur compatible IGMP.

169 / 289
Services et rseaux 5.0 Alain Bron

Seuls les routeurs desservant des abonns au groupe de diffusion prsent sur un segment
physique donn dupliquent le paquet sur ce segment, afin de limiter lusage de la bande-passante
pour les autres segments.

Figure 18.2
Distribution dun flux multicast auprs des abonns un groupe de diffusion
laide de routeurs multicast

La diffusion de contenu multimdia (flux audio et vido) fait partie des applications privilgies du
mode multicast : lenvoi de grosses quantits de donne de manire continue peut tre optimis en
ne transmettant quune seule fois linformation, plutt que de manire nominale chaque
destinataire (unicast).

Des logiciels de diffusion dimage dordinateur, tels que Norton Ghost, ou le transfert de tables de
routage (via un protocole de routage) fonctionnent galement souvent en mode multicast.

Figure 18.3
Gain de bande-passante li lusage du multicast (source : www.rad.prf.fr)

170 / 289
Services et rseaux 5.0 Alain Bron

18.1 Les adresses multicast


Une adresse IP multicast de classe D est toujours une adresse de destination, certaines dentre-
elles tant rserves (well-known) et assignes par lIANA60 (RFC 3171).

Classe D 4 premiers bits 1110 224.0.0.0 239.255.255.255

Les adresses comprises entre 224.0.0.1 / 24 et 224.0.0.255 / 24, dusage local, sont
rserves pour des protocoles de routage ou de bas niveau (quelques soit leur TTL, ces multicast
ne sont pas propags par les routeurs).

224.0.0.1 Tous les nuds multicast du rseau local


224.0.0.2 Tous les routeurs multicast du rseau local
224.0.0.5 Tous les routeurs OSPF
224.0.0.9 Tous les routeurs RIPv2
224.0.0.10 Tous les routeurs EIGRP
224.0.0.12 Tous les serveurs et relais DHCP
224.0.0.13 Tous les routeurs PIMv2
224.0.0.102 Tous les routeurs HSRP (Cisco)

Figure 18.4
Exemples dadresses IP multicast locales (224.0.0.x) rserves (well-know).

Les groupes associs des adresses well-known sont ainsi permanents, mme dans le cas o ils
ne contiennent aucun membre.

Les autres groupes sont temporaires et assigns manuellement une adresse IP multicast en
fonction des besoins et des applications ; ils sont alors crs la demande et supprims lorsquils
ne servent plus (lorsquils ne comportent de membres).

La transmission des paquets multicast seffectue sans tenir compte de la logique de la


segmentation en rseaux et sous-rseaux IP : les routeurs transmettent les paquets multicast sur
la base de la prsence ou non de nuds abonns un flux multicast (groupe), et non pas sur la
base de leurs tables de routage.

Les nuds abonns un flux multicast se mettent lcoute de ladresse IP multicast associe ce flux
(groupe), en plus de leur propre adresse IP. .

60 http://www.iana.org/assignments/multicast-addresses

171 / 289
Services et rseaux 5.0 Alain Bron

En fonction des abonns


prsents, le routeur
transmet le flux associ
ladresse 239.255.2.2

Se met
lcoute de
239.255.2.2 en
plus de sa
propre adresse.
Se met
lcoute de
239.255.2.2 en
plus sa propre
adresse.

Figure 18.5
Les nuds intresss par un flux multicast se mettent lcoute de ladresse IP de classe D associe au
groupe. Le routeur diffuse les paquets du flux sur les segments concerns.

Adresse IP
destination =
multicast

Figure 18.6
Dcodage dun paquet UDP dun flux multicast (RTP pour un stream MPEG)

172 / 289
Services et rseaux 5.0 Alain Bron

Variation de gigue

Figure 18.7
Analyse dun flux multicast

18.1.1 Espaces administratifs


La limite de porte dun paquet multicast peut tre rgle par lutilisation du champ TTL de len-tte
IP : lusage dun petit TTL limite le primtre de diffusion dun flux multicast.

Afin de saffranchir de lusage du TTL, lespace dadresses IP de classe D comprises entre


239.0.0.0 et 239.255.255.255 a t dvolue aux usages privs (espace administratif ou
adresses Administratively Scoped ).

Cet espace administratif utilis sous IPV4, fortement inspir des dveloppements issus dIPv6 [RFC
1884], permet de dfinir des tranches dadresses dont le primtre de diffusion est fix,
indpendamment du TTL figurant dans len-tte IP.

Les adresses de type 239.255.0.0 / 16 sont utiliss dans un espace local (Local Scope),
alors que les adresses de type 239.192.0.0 / 14 sont utiliss dans un espace plus large
(Organization Local Scope).

Les adresses les plus leves de chaque espace sont rserves pour des usages particuliers :
ainsi, ladresse 239.255.255.255 correspond ladresse dannonce SAP pour lespace local
(local scope).

18.1.2 Conversion multicast IP et multicast Ethernet


Un paquet IP est encapsul dans une couche physique, par exemple Ethernet, ncessitant
ltablissement dune correspondance entre une adresse IP logique et une adresse physique
Ethernet.
Si le mcanisme ARP permet dtablir la correspondance entre une adresse IP et une adresse
MAC de destination laide dune requte sur le rseau, ladresse de destination IP de multicast ne
correspondant aucun nud physique, il est fait appel un mcanisme de conversion
automatique.

173 / 289
Services et rseaux 5.0 Alain Bron

Le protocole Ethernet utilise le 1er bit de ladresse MAC pour dfinir si ladresse est de type
diffusion dirige (unicast : 1er bit 0) ou de type diffusion gnrale (1er bit 1 ; le cas particulier
des 48 bits 1 reprsentant ladresse de broadcast Ethernet).

La solution consistant encapsuler le flux multicast dans des trames Ethernet de type broadcast ne
serait pas raisonnable en termes de charge pour les nuds, puisque chacun dentre eux devrait
systmatiquement remonter sa couche IP pour dterminer si le message leur est rellement destin ou
non.

La solution retenue consiste tablir une correspondance mcanique entre une adresse IP
multicast et une adresse Ethernet spcifique.
LIANA gre cet effet les adresses Ethernet de type 00:00:5E:XX:XX:XX 61

Dautres tranches dadresses Ethernet multicast sont utilises, hors du contexte li au multicast IP :

Adresse MAC Ethertype Usage

01-00-5E-00-00-00 800 Multicast IP (selon RFC 1112)

01-80-C2-00-00-00 802 Spanning Tree (Bridges)

09-00-09-00-00-01 8005 HP Probe

09-00-4E-00-00-02 8137 Novell IPX

AB-00-00-02-00-00 6002 DEC MOP

CF-00-00-00-00-00 9000 Ethernet loopback

Figure 18.8
Quelques adresses multicast Ethernet.

Sur les 24 bits disponibles de ladresse Ethernet multicast 01-00-5E-xx-xxx-xx, les 23


derniers sont utiliss pour tablir la correspondance avec ladresse IP de multicast.

Figure 18.9
Structure dune adresse MAC multicast rserve lusage du multicast IP

Les adresses IP multicast sont ainsi encapsules dans des trames Ethernet ayant comme adresse
de destination des adresses MAC comprises entre 01:00:5E:00.00.00
01:00:5E:7F:FF:FF.

61 http://www.iana.org/assignments/ethernet-numbers

174 / 289
Services et rseaux 5.0 Alain Bron

La correspondance entre une adresse IP multicast et une adresse Ethernet multicast seffectue en
copiant les 23 bits de poids faible de ladresse IP lemplacement des 23 bits de poids faible de
ladresse Ethernet.

Figure 18.10
Construction de ladresse multicast Ethernet laide de ladresse IP multicast

Statistiquement, de multiples adresses IP multicast peuvent correspondre la mme adresse


Ethernet multicast, puisque seuls 23 des 32 bits sont utiliss pour la conversion ; la couche IP du
rcepteur est ainsi oblige de vrifier la valeur du champ adresse IP destinataire pour dterminer si
le multicast IP lui est bien destin.

Pour recevoir un flux multicast, il faut que la couche IP sache si le nud est abonn un groupe ou non
(dans ce cas, les paquets issus de trames Ethernet multicast sont limines).
Ainsi, la couche IP doit tre conforme au standard multicast, selon un niveau conformit :

Niveau 0 : aucun support dIP multicasting (ni en mission, ni en rception)


Niveau 1 : support pour lmission de multicast, mais pas pour la rception ; ne
ncessite pas la gestion dIGMP.
Niveau 2 : conforme lIP multicasting. Cela ncessite l'implantation du protocole
IGMP, ainsi que des services de correspondance d'adresse entre l'interface physique
et IP.

175 / 289
Services et rseaux 5.0 Alain Bron

18.2 Protocole IGMP


Le protocole IGMP (Internet Group Management Protocol), vhicul par des datagrammes IP
(protocole no 0x02), permet aux clients multicast dinformer les routeurs de leur participation un
flux multicast.

Comme le protocole ICMP, IGMP se positionne au niveau OSI 3,5 et est encapsul dans le protocole IP,
et est considrer comme un protocole de signalisation.

Les routeurs participant au flux multicast (et obligatoirement compatibles avec le protocole IGMP)
retransmettent les paquets multicast sur les segments physiques o figurent des abonns.

IGMP est dcrit par les RFC 1112 pour la version 1, et les RFC 2236 et 3376 pour les versions 2 et
3. IGMP ncessite loption Router Alert (RFC2113) de len-tte IP.

18.2.1 Len-tte IGMP


Les messages IGMP sont normalement toujours encapsuls et transmis dans des paquets IP avec
un TTL fix 1, les routeurs supprimant le paquet (le TTL passant 0), sans envoyer de message
ICMP en retour.

Un en-tte IGMP version 2 est compos de 8 Bytes dcoups en 4 champs et loption Router Alert
est utilise dans len-tte du paquet IP.

Figure 18.11
Champs de len-tte dun message IGMP v2

17 (0x11) : Membership (general) Query


Requte pour identifier les groupes ayant des membres actifs
18 (0x12): Membership Report (v1) - message dannonce
Prcise le type de message
Type IGMP
Annonce de participation un groupe de diffusion
22 (0x16): Membership Report (v2) - message dannonce
Annonce de participation un groupe de diffusion
23 (0x17) : Leave Group

Temps Permet la suppression Si un abonn ne valide pas son inscription (type 22) avant un
rponse dabonns fantmes . timeout alatoire dtermin laide de la valeur de ce champ,
maximum Max Respons Time. labonn est supprim du groupe. [1/10 s]

Somme de
Valide le message IGMP Identique la somme de contrle ICMP
contrle

Adresse de Permet de distinguer les


Correspond ladresse IP multicast (destination)
groupe diffrents groupes.

Figure 18.12
Signification des champs de len-tte IGMP v2

176 / 289
Services et rseaux 5.0 Alain Bron

18.2.2 Les types de messages IGMP v2


Les messages de requte IGMP de type 17 (Membership Query) permettent un nud de
connatre la liste des groupes actifs sur un rseau (cas o le champ Adresse de groupe est 0) ou
de connatre la liste des membres dun groupe dont ladresse figure dans le champ Adresse de
groupe. Un message de type 17 ncessite lutilisation du champ Temps de rponse maximum.
Dans le cas dune requte gnrale (General Query, Adresse de groupe = 0.0.0.0), ladresse de
destination du paquet IP prend la valeur 224.0.0.1

Figure 18.13
Message IGMP de type General Membership Query

Une requte IGMP de type General Query permet aux routeurs de dtecter la prsence de
routeurs jouant le rle de Querier, ou de le devenir.

Dans le cas dune requte cible sur un groupe (Group-Specific Query), ladresse de destination
du paquet IP est celle figurant dans le champ Adresse de groupe.

Un message dannonce IGMP de type 22 (Membership Report ou Rapport dappartenance)


permet un nud de sabonner, auprs du routeur multicast local, au groupe de diffusion dont
ladresse figure dans le champ Adresse de groupe et den devenir le client, ou de prolonger son
appartenance ce groupe.

Dans ce cas, ladresse IP de destination du paquet IP est celle figurant dans le champ Adresse de
groupe.
Add Ethernet destination =
Multicast IANA
00-01-5E-00-00-01

Add IP destination =
multicast classe D
IP TTL = 1 224.0.0.1 ( tous les
IP proto = 0x02 nuds)

Adresse de groupe =
0.0.0.0
General Query

Figure 18.14
Exemple de message de requte IGMP de type Membership (General) Query

177 / 289
Services et rseaux 5.0 Alain Bron

Add Ethernet destination =


Multicast IANA
00-01-5E-7F-FF-FA

Adresse IP destination =
multicast classe D
239.255.255.250

Adresse de groupe =
239.255.255.250
Idem adresse IP de destination
(Microsoft uPnP)

Figure 18.15
Exemple de message dannonce IGMP de type Membership Report
pour le groupe 239.255.255.250

Un message IGMP type 23 (Leave Group) doit tre utilis par un client multicast pour se
dsabonner du groupe dont ladresse figure dans le champ Adresse de groupe.

Ladresse IP de destination du paquet IP est celle du figurant dans le champ Adresse de groupe.

18.2.3 Mcanisme dabonnement et rle des routeurs multicast


Un nud dsirant recevoir des donnes dun flux multicast doit sabonner ce dernier par le biais
dun routeur.

Les routeurs multicast ont la tche de rpertorier les flux multicast disponibles et de grer la liste
des nuds (clients multicast ou abonns) dsirant recevoir les flux.

Dans le cas o un nud dsire sabonner pour un flux dont le routeur na pas la connaissance, ce
dernier sadressera un routeur de niveau suprieur (et ceci de manire rcursive) afin dobtenir le
flux ncessaire (le mcanisme utilis dpend des protocoles multicast implments)

Lorsquun client ne dsire plus recevoir un flux multicast, il se dsabonne auprs du routeur
multicast.
Lorsque tous les clients dun groupe donn se sont dsinscrits, le flux est abandonn par le routeur
lui-mme, qui se dsinscrit son tour auprs du routeur lui fournissant le flux.

178 / 289
Services et rseaux 5.0 Alain Bron

Je mabonne au
groupe a.b.c.d !

1 2

Jai besoin du
flux a.b.c.d !

Figure 18.16
Mcanisme dinscription un flux / groupe multicast

Les routeurs ne tiennent pas jour la liste nominative de tous les clients abonns aux groupes
dont ils ont la liste : ils se contentent de vrifier sil y a au moins un abonn au groupe par segment
physique62 sur lesquels ils sont connects (dans ce cas, le flux doit tre transmis sur linterface
physique correspondant ; dans le cas contraire, le flux nest pas/plus transmis).

Routeurs Querier.

Afin de dterminer lventuelle prsence de clients multicast dans un rseau, un routeur est
dsign pour interroger rgulirement les segments physiques sur lesquels il est connect (routeur
Querier ou Dominant Router DR).

Tous les routeurs multicast sont lcoute des messages IGMP, ce qui leur permet de dterminer
les groupes et les flux actifs en fonction des messages IGMP transmis par les clients multicast en
rponses aux requtes du routeur faisant office de Querier.
Lorsquaucun client nest dtect pour un groupe et un segment donn, le flux multicast associ
est interrompu par les routeurs multicast pour le segment physique en question.

62
Les adresses multicast de classe D ne sont pas soumises aux frontires de segments IP (ip secondary chez Cisco) se
partageant un segment physique.

179 / 289
Services et rseaux 5.0 Alain Bron

Un seul Querier est autoris par segment physique, les autres routeurs multicast du segment tant
considrs comme non-demandeur (Non-Querier).

Par dfaut, chaque routeur multicast dmarre en tant que Querier sur tous les segments physiques
sur lesquels il est connect et se met lcoute des messages IGMP en circulation. Si une requte
IGMP en provenance dun routeur ayant une adresse IP plus petite est dtecte, le routeur devient
Non-Querier pour le segment physique en question.
Dans le cas o plus aucun message IGMP nest rceptionn aprs un intervalle donn [Other
Querier Present Interval], le routeur sattribue nouveau le rle de Querier.

Les routeurs oprant en tant que Querier envoient rgulirement 63 une requte IGMP General
Query annonant leurs prsences sur le rseau et demandant aux clients multicast dannoncer les
groupes auxquels ils appartiennent.
Lannonce des clients seffectue laide dun message IGMP de type Membership Report.

La rception dune seule annonce IGMP est suffisante pour que les routeurs considrent un
groupe comme actif pour un segment physique donn. Les clients dtectant une annonce IGMP
pour un groupe auquel ils sont abonns stoppent lenvoi de leur propre annonce pour ce groupe,
afin de ne pas charger inutilement le rseau et les routeurs multicast.

Le routeur Querier nest pas forcment le routeur qui transmet les flux multicast.

Inscription et prolongation dinscription un groupe.

Un client multicast sabonne un flux auprs dun routeur multicast laide dune annonce IGMP
(Membership Report).

Quand un client multicast reoit une requte IGMP de type General Query, il rgle les timeouts
pour les groupes auxquels il est abonn sur la base des informations contenues dans le message
IGMP [Maximum Respons Time] et un facteur alatoire.
Ces timeouts prcisent les dlais dans lesquels labonn (client multicast) doit rpondre une
requte (Query)64 pour renouveler son appartenance un groupe.

Lorsque le timeout est atteint pour un groupe donn, le client multicast envoie une annonce IGMP
(Membership Report) lui permettant prolonger son inscription au groupe en question.
Les annonces IGMP ont pour but de permettre aux routeurs de dterminer sil existe (encore) des
membres pour un groupe et un segment physique donn.
Un nud multicast dtectant une annonce IGMP pour un groupe auquel il appartient stoppe son
propre timeout pour ce groupe et ne transmet pas lui-mme de dannonce, afin de ne pas crer
des messages inutiles.

Lorsquun routeur multicast reoit une annonce IGMP, il ajoute le groupe en question sa liste de
groupes, sil ny figure pas dj, enregistre linterface de rception et rgle le timeout pour ce
groupe [Group Membership Interval].
Lorsque le groupe est ajout la liste du routeur, ce dernier dmarre la retransmission des
paquets pour le flux multicast en question sur le segment physique concern.

Si le routeur Querier ne reoit aucune rponse (annonce IGMP) une requte IGMP, il considre
le groupe comme inactif pour un segment physique donn et stoppe la transmission du flux
multicast pour ce segment.

63 [Query Interval ] de lordre de 60 sec.


64 Lintroduction dun facteur alatoire vite que tous les clients ne rpondent en mme temps.

180 / 289
Services et rseaux 5.0 Alain Bron

Dsinscription un groupe.

Lorsquun abonn (client multicast) quitte un groupe, il se dsabonne laide dun message IGMP
(Leave Group) de dsinscription65.
Afin de minimiser le trafic, un client constatant la prsence dautres abonns (dtection de
dannonces IGMP pour le groupe en question) nest pas oblig de se dsinscrire.

Lorsquun routeur multicast jouant le rle de Querier reoit un message IGMP de dsinscription, il
envoie un message IGMP afin de vrifier lventuelle prsence dautres membres dans le groupe
(Group-Specific Queries).
Dans le cas o aucun message dannonce IGMP nest retourn, le groupe est considr comme
inactif, et le flux multicast stopp pour linterface physique en question.

Les messages de dsinscription un groupe sont ignors par les routeurs Non-Querier et les
routeurs qui ne possdent pas le groupe en question dans leur liste.

routeur-cisco>show ip igmp group


IGMP Connected group membership
group address Interface Uptime Expires Last Reporter
239.255.2.2 Ethernet 0 0d5h 00 :02 :31 10.224.20.100

Figure 18.17
En rfrence la Figure 6.4 : gestion IGMP par un routeur multicast Cisco

18.3 Flux multicast entre routeurs


Le protocole IGMP rgle la distribution des flux multicast entre le routeur et les clients situs sur les
segments directement connect.

Lorsquun flux multicast est transmis sur un rseau constitu de plusieurs routeurs, il faut viter
que les clients du flux ne reoivent des paquets identiques ayant suivis des chemins diffrents.

18.3.1 Chemins multicast


Ltablissement dune topologie logique en arborescence entre les routeurs multicast, limage du
protocole STP pour les rseaux de ponts, permet dviter la cration de boucles et la duplication
des paquets dun flux multicast.

Inondation et pruning

Le principe de linondation implique quun routeur recevant un paquet multicast le diffuse sur
lensemble de ses interfaces, lexception de linterface source.
Les flux reus plusieurs fois sont ignors, lexception du flux que le routeur estime le plus
adquat, notamment sur la base dune analyse inverse de la table de routage : le flux choisi est
celui qui prsente le meilleur mtrique de point de vue de la source du flux (RPF - Reverse Path
Forwarding).

Les flux dupliqus sont dtects sur la base de ladresse multicast de groupe.
La technique de linondation charge toutes les liaisons entre routeurs, mme celles qui sont
redondantes.

65 A partir dIGMP v2

181 / 289
Services et rseaux 5.0 Alain Bron

Figure 18.18
Multicasting par inondation

Une amlioration du modle par inondation consiste permettre aux routeurs de se dfinir un
fournisseur multicast unique en signalant aux routeurs adjacents quils ne sont pas intresss
recevoir les flux multicast sur certains interfaces/liens (mcanisme de pruning ou lagation).

Figure 18.19
Multicasting par inondation et envoi de messages de pruning

Arbres recouvrant

La mise en place dun arbre recouvrant consiste dterminer un chemin multicast unique entre
les routeurs multicast, vitant ainsi de charger inutilement les liaisons redondantes.
A limage de STP, larbre multicast est dfini pour toutes les sources, ce qui mobilise et charge
toujours les mmes liaisons.

Figure 18.20
Arbre recouvrant

Lamlioration du modle consiste dterminer un arbre multicast par source, afin de ne pas
charger systmatiquement les mmes liaisons.

182 / 289
Services et rseaux 5.0 Alain Bron

Figure 18.21
Etablissement dun arbre recouvrant par source de flux multicast

Arbres centrs sur le noyau CBT

Un arbre centr sur le noyau (CBT - Center Based Tree) dsigne un nud (routeur) centre (core)
de larbre.
Les routeurs dsirant participer larbre envoient un message daffiliation au routeur centre
(message join), les routeurs intermdiaires relayant, laide de leurs tables de routage standards,
les messages vers ce routeur centre, tout en notant linterface de provenance des messages.
En se joignant larbre, le routeur dvoile ainsi le chemin menant du routeur vers le centre de
larbre, ce qui permet aux diffrents routeurs constituant le rseau de dfinit les branches de
larbre menant aux diffrents routeurs multicast clients des flux.
Afin de partager la charge sur les diffrentes liaisons, un CBT peut tre dfini par flux.

Lmetteur dun flux multicast envoie ses paquets au routeur centre, qui les diffuse ensuite sur les
branches de son arbre.

Figure 18.22
Etablissement dune nouvelle branche sur un arbre centr sur le noyau (CBT)

183 / 289
Services et rseaux 5.0 Alain Bron

18.3.2 Protocol-Independent Multicast - PIM


Le protocole PIM (Protocol-Independent Multicast) permet la distribution de flux multicast tout en
vitant les boucles sur le principe de larbre multicast.

Le protocole PIM est considr comme indpendant, car il nutilise pas de mcanisme de
dcouverte de topologie qui lui est propre, mais se base sur les informations de routage dfinies
par les protocoles de routages standards, tel que BGP.

Deux variantes principales du protocole PIM sont actuellement utilises, en fonction de la densit
de clients multicast prsents dans un rseau donn.

PIM Dense Mode (PIM-DM) inondation / lagage

Bas sur le principe du RPF (Reverse Path Forwarding - RFC 3973) avec lagage (pruning), le
protocole PIM en mode dense (PIM-DM 66) implique la diffusion large des paquets multicast, en
limitant la complexit des mcanismes mettre en place entre les routeurs.
Si le paquet multicast nest pas reu via linterface menant lmetteur du flux multicast avec le
meilleur mtrique, il est supprim et un message dlagage (prune) est envoy au routeur auteur
de la transmission.

Le protocole PIM-DM est ainsi adapt aux rseaux multicast pour lesquels le nombre de clients est
important dans une zone donne.

PIM Sparse Mode (PIM-SM) arbre recouvrant

PIM en mode clairsem (Sparse mode - PIM-SM - RFC 2362) utilise un mcanisme proche de
larbre centr noyau (CBT) : un groupe de diffusion multicast dfinit un ou plusieurs routeurs
oprant comme point de Rendez-vous (RP) ; un routeur dsirant rejoindre un groupe envoie un
message de demande dadhsion un RP.
Les routeurs intermdiaires prennent note de ladresse IP de multicast du groupe et de celle du
routeur faisant office de RP afin de constituer les branches de larbre.

Figure 18.23
Arbre de diffusion multicast rsum des diffrents protocoles mis en action.

66 Proche dun autre protocole, plus ancien : DVRMP - Distance Vector Multicast Routing Protocol

184 / 289
Services et rseaux 5.0 Alain Bron

18.4 Protocole SAP


Le protocole SAP (Session Announcement Protocol - RFC 2974) permet un fournisseur
dannoncer les flux multicast quil met disposition (Session Announcement) ou quil retire
(Session Deletion).

Lannonce SAP contient notamment ladresse IP multicast du flux (groupe), le numro de port utilis et la
description du flux.

Par dfaut, les nuds coutent les annonces SAP sur ladresse IP multicast 224.2.127.254 et
le port UDP 9875 ainsi que sur les adresses dannonce SAP de la zone administrative laquelle
ils appartiennent ; un flux utilisant ladresse 239.255.2.2 utilise ladresse dannonce SAP
239.255.255.255, sur le port UDP 9875, le TTL tant fix 255 (chapitre 6.1.1).

Sur la base des messages SAP perus, les clients peuvent ainsi dresser la liste des flux disponibles et
se mettre leur coute via ladresse IP multicast et le port spcifis dans le message dannonce SAP.

Adresse
dmission SAP
239.255.255.255

UDP
9875

Nom du flux
(groupe) annonc
mon_flux

Adresse IP
multicast du flux
(groupe) annonc
239.255.2.2

Port et protocole
utilis par le flux
(groupe) annonc
1234 - RTP

Figure 18.24
Exemple dannonce SAP

185 / 289
Services et rseaux 5.0 Alain Bron

Figure 18.25
Visualisation dun flux obtenu via SAP (VLC de VideoLan)

18.5 Performances et mcanismes dacquittement.


Une des caractristiques des rseaux multicast est l'htrognit des clients en termes de
capacit de rception.

UDP, de par son fonctionnement en mode non-connect (chap. 4), est le protocole privilgi pour
la diffusion multicast.

Dans le cas dun flux TCP, des mcanismes dacquittement standards ce protocole devraient tre
utiliss.

Le dbit dun metteur est notamment rgl en fonction des diffrentes fentres dacquittement des
participants ; dans le cas o les acquittements tardent arriver en retour lmetteur, il doit
temporairement bloquer ses transmissions (chap. 3.6)

Un flux multicast TCP pourrait ainsi calquer son dbit sur les clients les moins performants.
Dans ce cas, on observerait une sous-utilisation des ressources pour les clients les plus puissants.

Dun autre ct, si lmetteur diminue ses timeouts ou ne tient pas comptes des acquittements en retard,
des clients risqueraient de devoir interrompre leur rception du flux par manque de capacit (dbit trop
lev).

De mme, le dbit disponible sur les diffrents liens menant aux diffrents clients du flux multicast peut
tre de capacit variable, impactant par l-mme les performances maximales potentiellement
atteignables par chaque client.
Si lmetteur se calquait sur le plus petit dbit (worst case), les clients atteignables par un chemin de
bonne qualit seraient desservis de manire sous-optimale, etc.

186 / 289
Services et rseaux 5.0 Alain Bron

18.6 Real-Time Transport Protocol - RTP


A lexception de technologies comme ATM, les rseaux mettant en uvre les technologies
actuelles ne peuvent pas tre considrs comme fonctionnant en mode temps rel (cest
notamment le cas pour Ethernet).

Figure 18.26
Introduction dune gigue dans un flux sensible au temps.

Le protocole UDP gnralement utilis pour les flux multicast ne fournissant aucun service
(acquittement, contrle de flux, etc.), ces fonctions peuvent tre implmentes au niveau des
protocoles prenant place au-dessus dUDP pour les flux sensibles aux erreurs, aux variations de
gigue et aux contraintes de temps (flux multimdias, par exemple).

Le protocole RTP (Real-Time Transport Protocol 67 RFC 1889) permet la transmission des flux
temps rel alors que RTCP (Real-Time Transport Control Protocol) permet de grer le canal
dinformation qui y est associ (contrle de flux, etc.).

Figure 18.27
En-tte dun message RTP

67 Version standardise du protocole RDP de Real Player

187 / 289
Services et rseaux 5.0 Alain Bron

Champ Signification Dtail


V Version, 2 bits En gnral, V=2

Signale si le message contient des


P Padding (remplisssage), 1 bit
caractres de bourrage

X eXtension, 1 bit Prcise si len-tte contient des extensions

Prcise le nombre de CSRC contenus dans


CC CSRC count, 4 bits
le message

M Marker, 1 bit Dfinie par le profile de lapplication

Contenu du message RPT (audio, vido,


PT Payload Type, 7 bits
texte, etc.)

Sequence 16 bits
Valeur de dpart alatoire ; incrment de 1
number chaque message RPT

Instant dchantillonnage du premier


TimeStamp 32 bits
message RTP (horodatage)

Synchronization Source Identifier, Identification de la source (numro de port),


SSRC 32 bits valeur choisie alatoirement

Contributing Source Identifiers, Identification des sources contribuantes


CSRC 32 bits (agrgation de sources de flux)

Figure 18.28
Champs de len-tte dun message RTP

188 / 289
Services et rseaux 5.0 Alain Bron

Version du RTP

Type du contenu (MPEG-2)


(tyoe 33)

Timestamp

Figure 18.29
Dcodage de len-tte dun message RTP.
Le champ Timestamp permet dassurer une restitution des donnes flux constant.

18.7 Le cas des commutateurs Ethernet


Si lintrt de la livraison de flux multicast apparat clairement du point de vue de lmetteur du flux
(un seul paquet multicast mettre plutt que n paquets unicast pour n clients) et des liaisons
entre routeurs (un seul paquet multicast en circulation sur le lien contre n paquets unicast), il est
moins vident du point de vue des commutateurs.

La livraison finale du flux multicast auprs des clients par des commutateurs Ethernet ncessite
une duplication des trames au niveau Ethernet, chaque trame Ethernet multicast tant copie sur
tous les ports du commutateur, la manire68 dune trame de type broadcast.

68 Du point de vue Ethernet, la valeur du 1er bit de ladresse Ethernet caractrise une trame de diffusion dirige (unicast) ou de
diffusion multiple (Broadcast ou Multicast)

189 / 289
Services et rseaux 5.0 Alain Bron

Figure 18.30
Livraison du flux multicast auprs des abonns via un commutateur Ethernet

Figure 18.31
Comparaison de livraison de donnes en mode unicast et multicast,
dans le cas dun rseau Ethernet partag (concentrateur) et commut (commutateur).

190 / 289
Services et rseaux 5.0 Alain Bron

Certaines fonctionnalits, telles que le protocole CGMP ou lIGMP-snooping, permettent de pallier


la faiblesse fonctionnelle des commutateurs en matire de multicasting et de limiter le trafic aux
clients des flux multicast uniquement.

18.7.1 IGMP-snooping

Lorsquun commutateur traite une trame Ethernet en entre dun port, dont l'adresse MAC de
destination est de type multicast (01-00-5E-xx-xx-xx), il dcode le message IGMP afin de
dtecter un message de type IGMP Membership Report ou IGMP Leave group.

Dans le cas o le message IGMP est un Membership Report, le commutateur active le port
concern pour le flux multicast en question (bas sur ladresse Ethernet multicast).
Dans le cas o le message IGMP est de type Leave Group, le port est dsactiv pour ce flux
multicast.

Les trames multicast appartenant des flux non rpertoris pour un port (pas de message IGMP
Membership Report dtect en entre dun port) ne sont pas transmises sur ce port.

18.7.2 CGMP
CGMP (Cisco Group Management Protocol), est un protocole propritaire Cisco qui permet aux
routeurs de communiquer aux commutateurs les informations sur les groupes multicast dont ils ont
la connaissance.

Les messages CGMP transmis par les routeurs Cisco aux commutateurs Cisco utilisent l'adresse
multicast 01-00-0C-DD-DD-DD et contiennent les adresses MAC des clients multicast abonns
un groupe particulier.

Sur la base de ces informations, le commutateur peut dcider de transmettre ou pas la trame sur
tel ou tel port (via sa CAM).

191 / 289
Services et rseaux 5.0 Alain Bron

Une srie de services apportant des fonctionnalits supplmentaires sont associs


aux protocoles rseau et transports, tels que IP, UDP ou TCP. Ils prennent place
aux niveaux OSI 5 7.

19. Services de configuration dynamique.

19.1 RARP
Le protocole RARP (Reverse Adresses Resolution Protocol RFC 903) a t dvelopp en 1984
pour permettre un nud dobtenir son adresse IP par lintermdiaire dune demande diffuse
(broadcast) sur le rseau.

A linverse du protocole ARP, le protocole RARP permet dobtenir ladresse logique (adresse IP)
correspondant une adresse physique (adresse MAC) et lassignation de ladresse IP est
effectue sur la base dune table dassociation tenue jour statiquement sur un serveur RARP (en
gnral hberg sur un routeur implmentant la fonction de serveur RARP).

Dans le cas dune implmentation de RARP sur Ethernet, le champ Ethertype prend la valeur de
0x8035.

Ne permettant que lattribution des adresses IP, RARP a t progressivement abandonn au profit
dun protocole plus performant : DHCP.

19.2 BootP
Bas sur UDP/IP, le protocole damorage BootP (Bootstrap Protocol RFC 1542) permet un
client dpourvu de capacit de stockage locale (client diskless ) de charger en mmoire son
systme dexploitation ou son firmeware depuis un serveur.

Le client tant nu sa mise en service (sans systme dexploitation, donc sans couches
rseau), sa ROM (boot ROM) intgre une couche rseau minimale capable de gnrer une
requte simple sur le rseau, lui permettant de rcuprer les informations ncessaires son
dmarrage, telles que :

Son adresse IP, ventuellement attribue provisoirement le temps de charger le systme.


Ladresse IP du serveur o le systme charger doit tre rcupr
Le nom du fichier contenant le systme charger en mmoire et gnralement transfr
via le protocole TFTP69 (Trivial File Transfert Protocole, sur UDP - RFC 1350).

69 Bas sur UDP, TFTP est plus simple implmenter au niveau dune ROM que FTP / TCP.

192 / 289
Services et rseaux 5.0 Alain Bron

19.2.1 Format dun message BootP.


1 16 17 32

OP HType HLength Hops

XID

Secs Flags

CI address

YI address

SI address

GI address

CH address

Sname
(64 Bytes)

File
(128 Bytes)

Vendor
(64 Bytes)

Figure 19.1
Format message BootP

Champs Taille Usage

Type de message :
OP 1 Bytes OP=1: Boot Request
OP=2: Boot Reply

Hardware Address Type.


HType 1 Byte Reprends les assignements du protocole ARP70.
HType=1 : Ethernet 10Mb/s

Hardware Address Length


HLength 1 Byte Prcise la longueur de ladresse physique.
Ethernet : Hlength=6

Nombre de sauts
Initialement fix 0 par le client.
Hops 1 Byte Incrment optionnellement par les routeurs.
Le message BootP est supprim en fonction de la limite dfinie
sur chaque routeur.

XID 4 Bytes Transaction ID


Valeur alatoire ; permet didentifier la rponse un requte.

Temps coul depuis la premire requte.


Champs renseigns par le client : prcise le nombre de secondes
Secs 2 Bytes
coule depuis lenvoi de la premire requte.
Secs pour la premire requte = 0.

70 RFC 1700 : Assigned Numbers

193 / 289
Services et rseaux 5.0 Alain Bron

1000000000000000 = les serveurs et relais BootP


Flags 2 Bytes doivent broadcaster le reply au client
0000000000000000 = unicast

CI Address 4 Bytes Adresse IP du client.


CI Add=0.0.0.0 si le client ne connait pas son adresse IP.

YI Address 4 Bytes Adresse IP attribue par le serveur BootP


(OP=2 :reply)
Adresse IP du serveur BootP auteur de la rponse,
ou prochain serveur impliqu dans le processus
SI Address 4 Bytes
(serveur TFTP, par exemple). RFC 2131

GI Address 4 Bytes Adresse IP dun relais BootP dsir.


Peut tre 0.0.0.0

CH Address 16 Bytes Adresse physique (MAC) du client.


Nom du serveur BootP dsir (OP=1) ou nom du
Sname 64 Bytes serveur BootP (OP=2)
termin par le caractre null. Optionnel
OP=1 (request)
Si nul fichier par dfaut
Sinon, string termin par null
File 128 Bytes
OP=2(reply)
Nom compltement qualifi du fichier de dmarrage ; termin
par le caractre null.

Vendor 64 Bytes Donnes spcifiques


(diteurs/applications)

Figure 19.2
Dfinition des champs dun message BootP

19.2.2 Mcanismes BootP.


Le client BootP transmet une requte BootP sous forme dun broadcast sur le port UDP 67, avec
une adresse IP source fixe 0.0.0.0 et une adresse destination dfinie 255.255.255.255.

Dans le cas o le serveur BootP se trouve sur un rseau IP distant, la requte est prise en charge
par un relais BootP (typiquement un routeur71).

La requte est alors retransmise avec ladresse IP du routeur relais BootP comme adresse source et
ladresse IP du serveur BootP, dfinie statiquement au niveau du relais, comme adresse de destination
(requte unicast).

Un compteur intgr la requte BootP permet de limiter son rayon de diffusion.

Le serveur BootP dtermine ladresse IP fournir sur la base de ladresse MAC figurant dans la
requte et sa table de correspondance.

La rponse BootP (sur le port UDP 68) est transmise par le serveur

71 Commande helper-address sous Cisco IOS.

194 / 289
Services et rseaux 5.0 Alain Bron

directement cette adresse MAC dans le cas o le serveur et le client sont situs sur le mme
rseau IP (et dans ce cas, le serveur en profite pour mettre sa table ARP jour),
ladresse IP du relais BootP (qui se charge ensuite de transmettre la rponse au client par
lintermdiaire de son adresse MAC).

En mme temps que ladresse IP du client, le serveur BootP fourni les paramtres permettant au
client de charger son systme (adresse IP du serveur TFTP et nom dun fichier).

Figure 19.3
Mcanisme BootP / TFTP

195 / 289
Services et rseaux 5.0 Alain Bron

MAC et IP destination : broadcast

UDP 67 : serveur BootP

BootP Request (OP=1)

Fichier de boot par dfaut fourni


par le serveur

Figure 19.4
Dcodage dune requte BootP

196 / 289
Services et rseaux 5.0 Alain Bron

19.3 DHCP
DHCP (Dynamic Host Configuration Protocol - RFC 2131 72) est une volution du protocole BootP, le
RFC 1534 rglant linteroprabilit entre ces deux protocoles 73.

BootP servant au transport des messages DHCP, les messages DHCP sont transmis entre deux
rseaux IP distants grce aux relais BootP.

DHCP diffre essentiellement de BootP par le fait que les adresses IP peuvent tre attribues
dynamiquement par un serveur, et que de nombreux autres paramtres peuvent tre distribus par
le biais de ce protocole.

DHCP spcifie deux composants : un protocole de communication entre un serveur et un client


demandeur de paramtres de configuration et un mcanisme dattribution dadresses rseaux
(adresses IP).

19.3.1 Mode dattribution des adresses IP


DHCP prvoit lattribution des adresses IP selon trois modes :

Allocation automatique

En mode automatique, ladresse IP est attribue de manire dfinitive au client.


Lallocation se base en gnral sur un lot (pool ou tendue) dadresses disponibles dans
lequel le serveur puise les adresses dont il a besoin.

Allocation dynamique

Lallocation dynamique permet de prter (louer - lease) une adresse pour une dure
dtermine (le bail). Ladresse peut tre attribue un autre client une fois la dure de prt
coule.
Lallocation se base en gnral sur un lot (pool) dadresses disponibles dans lequel le
serveur puise les adresses dont il a besoin.
Lallocation dynamique est le mode le plus dploy.
En principe, un serveur DHCP essaye de rattribuer la mme adresse IP ses clients,
dans la mesure des disponibilits.

Allocation manuelle

Une adresse alloue manuellement est dfinie par ladministrateur du serveur DHCP.
Laffectation de ladresse IP au client est effectue sur la base dune table de
correspondance entre adresses MAC et adresses IP. On peut parler de DHCP
statique .

Ces trois modes dallocation peuvent coexister un sein du mme rseau et dun mme serveur
DHCP.

72 Le RFC 3203 apporte des extensions au protocole DHCP.


73 Un serveur DHCP doit notamment tre capable de rpondre des requtes BootP natives.

197 / 289
Services et rseaux 5.0 Alain Bron

19.3.2 Format dun message DHCP


Un message DHCP est transport par le protocole BootP, DHCP utilisant le champ vendor du
message BootP pour vhiculer ses propres informations.

A cette occasion, le champ vendor a t renomm champ options et le champ CH address devient le
champ client identifier.

Tout comme un message BootP natif, les messages BootP/DHCP sappuient sur le protocole UDP
et les ports 67 (serveur) et 68 (client).

Figure 19.5
Format dun message BootP / DHCP

Les quatre premiers Bytes du champ options sont occups par les magic cookies74 et valent
respectivement 99, 130, 83 et 99.

Le RFC 1533 prcise la liste des options supporte par le protocole DHCP.

Le premier Byte dfini le type doption, le 2me Byte prcise la longueur de loption en question et
les Bytes suivants (jusqu concurrence de la longueur de loption) dfinissent la valeur de loption.

Figure 19.6
Structure dune option DHCP

74 RFC 1497 : valeurs permettant de dfinir dans quel ordre interprter la succession des donnes (big/little endian)

198 / 289
Services et rseaux 5.0 Alain Bron

Options et types de messages DHCP

Type Longueur
Nom Description RFC
(Tag) (Bytes)
0 Pad 1 Remplissage 2132

1 Subnetmask 4 2132

2 Time offset 4 Dcalage temporel en secondes par rapport UTC. 2132

3 Router Option nx4 Liste des adresses IP des routeurs du rseau 2132
Time Server Option
4 nx4 Liste des adresses IP des serveurs de temps (NTP) du rseau 2132

6 Name Server nx4 Liste des adresses IP des serveurs de noms (DNS) du rseau 2132

15 Domain Name n Nom de domaine local 2132

23 Default IP TTL 1 2132

26 MTU Interface 2 Taille MTU pour linterface courant. 2132

28 Broadcast address 4 2132

33 Static route n Dfinition de(s) route(s) statique(s) 2132

35 ARP timeout 4 Dure de vie des entres dans la table ARP locale 2132
Encapsulation
36 1 2132
Ethernet
38 TCP keepalive 4 Intervalle keepalive TCP 2132

42 NTP server nx4 Adresse(s) IP serveur(s) NTP 2132

43 Vendor Specific n 2132

44 NetBIOS Name srv n Serveur de nom NetBIOS (WINS) 2132

45 NetBIOS Dist srv n Serveur de distribution de datagramme 2132

46 NetBIOS Node Type 1 Type du nud NetBIOS (a-node, etc.) 2132

47 NetBIOS Sope n tendue NetBIOS 2132

50 Address Request 4 Adresse demande 2132

51 Address Time 4 Dure de location (prt) de ladresse 2132

53 DHCP message type 1 Type de message DHCP (cf. tableau ci-dessous) 2132
Parameters request
55 n Liste des paramtres demands par le client 2132
list
56 DHCP message n Message derreur DHCP 2132

58 Renewal Time 4 Dure avant prolongation dune adresse (T1) 2132

59 Rebinding Time 4 Dure avant renouvellement dadresse (T2) 2132

60 Class-ID n Dfinition spcifique au vendeur 2132

61 Client-ID n Identification unique du client ; en gnral, son adresse MAC. 2132

66 Server-Name n Nom du serveur TFTP 2132

67 Bootfile-Name n Nom du fichier de dmarrage 2132

199 / 289
Services et rseaux 5.0 Alain Bron

69 SMTP-server n Adresses des serveurs SMTP 2132

78 Directory Agent n 2610

81 Client FQDN n Nom FQDN du client (Microsoft) 4702

85 Netware NDS servers n Serveur NDS (Novell) 2241

Permet lauto-configuration du client (adresse de type


116 Auto-config n 2563
169.254.x.x)

Figure 19.7
Liste dune partie des options DHCP (selon RFC 1533) 75

Figure 19.8
Liste doptions DHCP dans un message DHCP

La valeur de loption 53 permet de dfinir le type de message DHCP.

Valeur Type
1 DHCP Discover

2 DHCP Offer

3 DHCP Request

q DHCP Decline

5 DHCP ACK

6 DHCP NACK

7 DHCP Release

8 DHCP Inform

9 DHCP Force renew

10 DHCP Lease query

11 DHCP Lease unasigned

12 DHCP Lease unknown

13 DHCP Lease active

Figure 19.9
Types de message DHCP (option 53)

75
Liste complte et mise jour des options DHCP : http://www.iana.org/assignments/bootp-dhcp-parameters/

200 / 289
Services et rseaux 5.0 Alain Bron

19.3.3 Mcanismes DHCP


Le mcanisme DHCP fonctionne laide de trois composants : un client, un serveur et un
protocole.
Le client effectue des requtes auprs dun serveur capable de lui fournir, outre une adresse IP
(fonctionnalit BootP), diffrents paramtres lis aux protocoles IP, TCP ou NetBIOS notamment.

Cycle de vie dun bail.


Le cycle de vie dun bail passe par diffrente tapes :

Allocation

Cette phase permet dallouer une adresse IP un client DHCP en lui prcisant la dure du
bail, ainsi que diffrents paramtres (subnetmask, etc.)

Rallocation

Un client qui rinitialise sa couche IP (ou qui redmarre) peut demander auprs de son
serveur DHCP un bail pour ladresse IP spcifique lui ayant t alloue auparavant.

Priode normale

Le client utilise ladresse IP et les paramtres qui lui ont t allous.

Renouvellement

Aprs un certain laps de temps (renewal time ou T1), le client DHCP essaye de prolonger
/ renouveler son bail auprs de son serveur DHCP.

Rebinding (rassociation)

Dans le cas o lopration de renouvellement auprs du serveur DHCP choue, le client


essaye dobtenir un renouvellement du bail auprs de tous les serveurs DHCP du rseau
local, une fois la dure du binding time, ou T2, chue.

Figure 19.10
Cycle de vie dun bail DHCP.

Restitution

Le client DHCP peut en tout temps restituer son bail auprs de son serveur DHCP.
Le bail est automatiquement restitu lors de la rinitialisation de la couche IP du client (ou
lors de son arrt).

201 / 289
Services et rseaux 5.0 Alain Bron

Mcanisme dallocation du bail

Le mcanisme dattribution initiale de ladresse IP et des diffrents paramtres fonctionne selon


quatre phases.

DHCP Discover

Un client DHCP (couches IP dun PC, par exemple) initie une demande de paramtres de
configuration sous la forme dune diffusion (broadcast), le client ne connaissant pas les
adresses des ventuels serveurs DHCP du rseau.

DHCP Offer

Les serveurs DHCP lcoute du rseau (UDP port 67) ayant une adresse IP disposition
la rservent et proposent au client une offre de bail, sous la forme dun message diffus
(broadcast), le client DHCP nayant pas encore dadresse IP (0.0.0.0).

DHCP Request

Le client slectionne la premire offre reue, et signifie son choix laide dun message de
diffusion (afin davertir tous les serveurs DHCP de son choix, ce qui permet aux serveurs
non slectionns de librer les adresses rserves).

DHCP ACK

Le serveur slectionn attribue dfinitivement ladresse IP et valide le bail laide dun


message DHCP ACK de type broadcast.
Le client DHCP peut ds lors utiliser ladresse IP fournie avec le bail.

DHCP Decline

Afin de sassurer de lunicit de ladresse IP fournie par le serveur DHCP, le client gnre
trois requtes ARP sur cette adresse : si aucune rponse nest reue, il considre
ladresse comme unique et lutilise pour la dure du bail.
Le message DHCP Decline permet au client de refuser une adresse IP, notamment parce
quelle est duplique sur le rseau.

202 / 289
Services et rseaux 5.0 Alain Bron

Figure 19.11
Mcanisme dattribution dun bail DHCP.

203 / 289
Services et rseaux 5.0 Alain Bron

Mcanisme de renouvellement du bail

Les options DHCP 58 et 59 prcisent deux compteurs : DHCP renewal time (T1) et rebinding
time (T2).

Aprs lcoulement de T1 (en gnral fix la moiti de la dure du bail), le client met un
message DHCP Request au serveur DHCP lui ayant fourni le bail (unicast) afin de renouveler son
bail.
En cas dacceptation du renouvellement, le serveur transmet au client un message DHCP
ACK prcisant la dure du nouveau bail et les paramtres en cours.

En cas de refus, le serveur DHCP transmet au client un message de type DHCP NACK lui
signifiant le refus.

Le client recevant un accord de renouvellement de bail (DHCP ACK), prend note des
ventuels nouveaux paramtres et rinitialise ses compteurs T1 et T2.

En cas de refus (DHCP NACK), le client initie une nouvelle demande de bail (cf. chapitre
2.3.3.1).

Dans le cas o le client DHCP ne reoit aucune rponse ses demandes de renouvellement, il
attend que le compteur T2 (rebinding time) soit coul et dclenche une demande de
renouvellement de son adresse IP en diffusant un message DHCP Request (broadcast).

Si un serveur DHCP accepte de prolonger le bail, il transmet au client un message DHCP


ACK prcisant la nouvelle dure du bail et ses diffrents paramtres ; le client rinitialise
ses compteurs T1 et T2.

Si un serveur DHCP dcide explicitement de ne pas renouveler le bail, il transmet au client


un message DHCP NACK. Le client initie alors une nouvelle demande de bail (cf. chapitre
2.3.3.1).

Dans le cas o aucun serveur DHCP ne rpond aux demandes de rebinding , le client
attend lexpiration du bail pour initier une nouvelle demande de bail (cf. chapitre 2.3.3.1).

Autres mcanismes

DHCP Release

Une adresse IP peut tre restitue au serveur laide dun message DHCP release.
Le serveur doit conserver la trace de lallocation du bail ce client (association adresse
MAC adresse IP) afin de pouvoir rallouer ce mme bail (adresse IP) lors dune demande
ultrieure de la part de ce client.

DHCP Inform

Permet de demander des paramtres (informations) supplmentaires au serveur DHCP,


tout en conservant le bail en cours.

DHCP Force renew

Le serveur DHCP peut obliger un client effectuer une nouvelle demande de bail en
mettant un message DHCP Force renew (unicast).
A la rception du message, le client DHCP doit effectuer une procdure de renouvellement
de bail (DHCP Request) ; si le serveur dsire apporter des changements au bail (nouvelle
adresse IP, par exemple), il rpondra la requte avec un message DHCP NACK,
obligeant le client initier une nouvelle procdure de demande de bail (cf. chapitre 2.3.3.1)

204 / 289
Services et rseaux 5.0 Alain Bron

DHCP Lease query

Ce message DHCP permet dinterroger un serveur DHCP afin dobtenir des informations
sur les baux en court sur le serveur (RFC 4388).

Les messages DHCP Lease query sont en gnral gnrs par des relais BootpP/DHCP
(typiquement, un serveur daccs stockant des informations sur ses clients)

Le serveur peut rpondre laide dun message :

DHCP Lease active : donne les informations concernant les paramtres ayant fait lobjet
dun DHCP Lease query, ainsi que la dure restante du bail.

DHCP Lease known : dans le cas o ladresse IP figurant dans le message DHCP Lease
query na pas de bail actif (en cours) dans le serveur DHCP.

DHCP Lease unknown : les informations figurant dans le message DHCP Lease query
nont aucune correspondance dans le serveur DHCP.

205 / 289
Services et rseaux 5.0 Alain Bron

broadcast
BootP

Dcouverte des serveurs


DHCP du rseau
(option 53, ID 1)

Paramtres additionnels
demands par le client

Figure 19.12
Message DHCP discover
(option 53, valeur 1 : diffusion dune demande de paramtres.)

206 / 289
Services et rseaux 5.0 Alain Bron

broadcast
Serveur DHCP offrant le
bail

Adresse IP propose
pour le bail (via BootP)

Offre de bail du serveur


DHCP 10.224.10.45

Options DHCP proposes


par le serveur offreur
du bail.

Figure 19.13
Message DHCP offer (option 53, valeur 2) : proposition dun bail de la part dun serveur DHCP.

207 / 289
Services et rseaux 5.0 Alain Bron

Broadcast

Requte DHCP
(option 53, ID 3)

Adresse IP demande

Liste des options

Paramtres demands au
serveur DHCP

Figure 19.14
Message DHCP request (option 53, valeur 3) : slection dune offre de bail.

208 / 289
Services et rseaux 5.0 Alain Bron

broadcast

Adresse dfinitivement
(al)loue (via BootP)

Confirmation de bail de
la part du serveur DHCP

Autres paramtres
attribus par le serveur
DHCP.

Figure 19.15
Message DHCP Ack (option 53, valeur 5) : confirmation de bail de la part du serveur DHCP.

209 / 289
Services et rseaux 5.0 Alain Bron

Figure 19.16
Message DHCP (option 53) : restitution d'une adresse IP au serveur DHCP.

210 / 289
Services et rseaux 5.0 Alain Bron

Demande dun
paramtre
supplmentaire

Figure 19.17
Requte DHCP (option 55) : demande de paramtres spcifiques de la part dun client DHCP.

19.3.4 IPv4LL ou APIPA


Dans le cas o aucun serveur DHCP ne peut fournir dadresse IP, le protocole IPv4LL (IPv4 Link-
Local Addresses RFC 3227 ou APIPA - Automatic Private Internet Protocol Addressing) construit
une adresse sur la base du prfixe 169.254.0.0 et des deux derniers Bytes de ladresse MAC,
garantissant ainsi statistiquement son unicit sur un segment local.

Les adresses IPv4LL sont purement locales, et ne traversent pas les routeurs.

19.3.5 Topologie DHCP


Le serveur DHCP est une ressource vitale du rseau : en son absence, les nuds du rseau
fonctionnant en client DHCP ne peuvent plus obtenir dadresse IP, ni leurs diffrents paramtres
de configuration.

Le positionnement du ou des serveurs DHCP dans le rseau est donc stratgique.

Cas 1 : le serveur DHCP se trouve sur le segment local.


Cas le plus simple, le ou les segments locaux sont quips de leur propre serveur DHCP
dlivrant des adresses et des paramtres adapts au segment sur lequel se trouve le
client.

Cas 2 : le serveur DHCP se trouve sur un segment distant.

211 / 289
Services et rseaux 5.0 Alain Bron

Dans ce scnario, les clients DHCP ne peuvent obtenir leurs paramtres que si un relais
DHCP permet le passage du segment local vers le segment distant sur lequel se trouve le
serveur DHCP.
Un relais DHCP prend typiquement place sur un routeur (commandes helper-address chez
Cisco). [Cf. figure 2.3]

Cas 3 : plusieurs serveurs DHCP sont prsents sur le segment local.


Pour des questions de redondance, plusieurs serveurs DHCP sont installs sur le segment
local. Pour lheure, il nexiste pas de protocole de synchronisation entre serveurs DHCP ;
chaque serveur doit donc grer son propre lot (pool ou tendue) dadresses IP (sans
chevauchement) ou des scripts de synchronisation doivent tre dvelopps.

Figure 19.18
Plusieurs serveurs DHCP sur le mme segment.

19.4 DHCP et scurit.


DHCP constitue un service important sur les rseaux actuels et constitue ainsi une cible potentielle
d'attaque.

L'attaque par DHCP spoofing consiste installer un serveur DHCP pirate fournissant de faux
paramtres IP afin de dtourner le trafic transmis par la victime (par exemple une fausse adresse
de gateway ou de serveur DNS afin de mettre en place une attaque de type Man in the Middle).

Beaucoup dlments installs sur les rseaux embarquent un serveur DHCP, activ par dfaut : lorsque
ce dernier rpond aux requtes, cela est videmment source de panne, les paramtres distribus ntant
pas conformes ceux utiliss sur le rseau.

Une attaque de type dni de service sur un serveur DHCP consiste lui faire parvenir
suffisamment de (fausses) requtes afin d'puiser son stock d'adresses IP disponibles. De cette
manire, les clients lgitimes en qute d'une adresse IP ne pourront pas tre servis.

19.5 PXE
Le standard industriel PXE (Preboot eXecution Environment - RFC 4578) dvelopp par Intel vise
normaliser les processus de dmarrage de clients (PC Windows ou Linux, terminaux diskless)
travers un rseau.
PXE est une adaptation du concept BootP/TFTP DHCP, pour lequel de nouvelles options ont t
dfinies.

Cette technologie ncessite un client compatible PXE implment au niveau du BIOS, ainsi quun
serveur DHCP/PXE.

Le transfert des fichiers binaires (NBP - Network Bootstrap Program) ncessaires au dmarrage
du client seffectuent soit via TFTP ou MFTP (Multicast Trivial File Transfer Protocol -
implmentation propritaire ?)

212 / 289
Services et rseaux 5.0 Alain Bron

Figure 19.19
Mcanisme PXE.

213 / 289
Services et rseaux 5.0 Alain Bron

Figure 19.20
Requte DHCP / PXE

.
Figure 19.21
Liste des paramtres demands lors dune DHCP / PXE

214 / 289
Services et rseaux 5.0 Alain Bron

Figure 19.22
Rponse DHCP / PXE.

Figure 19.23
Activation du mode PXE au niveau du BIOS

215 / 289
Services et rseaux 5.0 Alain Bron

20. Services de nom DNS

Lutilisation dune adresse numrique peut savrer fastidieux et contraignant: d'une part, la
mmorisation dadresses numriques n'est pas trs agrable et d'autre part une modification de
numrotation, par exemple pour cause dune rorganisation de larchitecture interne dun rseau,
implique que tous les correspondants potentiels soient avertis du changement.

Un service de nom permet dtablir une relation entre un nom humainement interprtable et
une adresse numrique afin de rendre la mmorisation et le changement dadresses numriques
plus simple.

20.1 Service de nom sous IP


Le service de nom sous IP permet dtablir une correspondance entre une adresse IP et un nom
DNS .

Un nom DNS (Domain Name System) est compos d'un nom de machine (host-name), d'un
nom de rseau ou de domaine (ventuellement de sous-rseau ou de sous-domaine : second-
level-domain - SLD et sub-level-domain) et d'un suffixe reprsentant le type d'activit ou le pays
(top-level-domain - TLD).

Le nom de la machine peut tre canonique (le "vrai" nom) ou constitu dun ou des alias
(pseudonyme) et tre complet (compltement qualifi Fully qualified domain name FQDN) ou ne
reprsenter que la machine, le nom de domaine tant alors implicite.

Figure 20.1
FQDN www.switch.ch

Figure 20.2
top-level-domain gnriques (gTLD)
Liste complte (gTLD et ccTLD) sous http://www.iana.org/domains/root/db/

216 / 289
Services et rseaux 5.0 Alain Bron

Suivant les applications (serveur DNS BIND, par exemple), le FQDN sexprime formellement avec
un point final reprsentant la racine de larborescence DNS :

www.switch.ch .

Figure 20.3
Arborescence DNS

20.1.1 Fichier hosts


Ds le milieu des annes 70 est apparu le besoin de centraliser une table de correspondance
entre noms et adresses IP afin de faciliter la communication entre nuds distants (RFC 608).

Le RFC 952 fixe le principe et les spcifications dune table de correspondance, maintenue sur un
serveur du NIC de la Defense Communications Agency (RFC 952 et 953).
De cette spcification est issu lactuel fichier hosts76 encore utilis et maintenu localement sur les
nuds des rseaux IP.

En plus de permettre une correspondance entre adresse IP et nom, le fichier hosts permet de
dfinir diffrents types dlment (htes, mais aussi gateway ou rseaux) tout en prcisant leurs
caractristiques (type de machine, OS), ainsi que les services proposs.

Figure 20.4
Format des entres du fichier hosts selon RFC 952

76/etc/hosts sous UNIX


\$Systemroot$\system32\drivers\etc\hosts sous Windows

217 / 289
Services et rseaux 5.0 Alain Bron

La mthode consistant maintenir un fichier local est videmment trs statique et ne convient que
pour les adresses internes d'un rseau.

Le fichier hosts nest en gnral plus utilis, lexception de lentre localhost qui pointe sur
ladresse de loopback 127.0.0.1
Toute autre entre figurant dans le fichier host est considrer avec mfiance.

# Copyright (c) 1993-1999 Microsoft Corp.


#
# Ceci est un exemple de fichier HOSTS utilis par Microsoft TCP/IP
# pour Windows.
#
# Ce fichier contient les correspondances des adresses IP aux noms d'htes.
# Chaque entre doit tre sur une ligne propre. L'adresse IP doit tre place
# dans la premire colonne, suivie par le nom d'hte correspondant. L'adresse
# IP et le nom d'hte doivent tre spars par au moins un espace.
#
# De plus, des commentaires (tels que celui-ci) peuvent tre insrs sur des
# lignes propres ou aprs le nom d'ordinateur. Ils sont indiqus par le
# symbole '#'.
#
# Par exemple :
#
# 102.54.94.97 rhino.acme.com # serveur source
# 38.25.63.10 x.acme.com # hte client x

127.0.0.1 localhost

Figure 20.5
Fichier hosts par dfaut (Windows)

20.1.2 Serveurs de nom DNS - principes


La mthode privilgie de rsolution de noms en adresses IP sappuie actuellement sur un
service de nom (RFC 1034 et 1035), pris en charge par de multiples serveurs ayant chacun la
responsabilit de la maintenance dun, ou plusieurs espaces de noms ou domaines.

La connaissance des noms et des adresses IP au niveau dInternet nest pas centralise mais
rpartie et dlgue de multiples niveaux.

Chaque second-level-domain est responsable de maintenir et publier les correspondances pour les
htes du domaine/rseau dont il a la charge et quil dsir rendre accessible par leur nom.

La correspondance entre les noms des htes et des adresses IP dun second-level-domain est
assure par un serveur de nom (name server ou serveur DNS).

Les serveurs de noms sont organiss en une arborescence au moins 3 niveaux :

1. Les serveurs de nom de second-level-domain (et ventuellement de sub-level-domain) ont


la charge de la maintenance et la publication des correspondances locales entre htes et
adresses IP.

2. Les serveurs de nom des top-level-domain maintiennent et publient la liste des second-
level-domains et des adresses IP des serveurs de nom responsables des second-level-
domains en question.

3. Les serveurs racine (root-servers) ont en charge la maintenance et la publication des


adresses IP des serveurs de nom des top-level-domain.

218 / 289
Services et rseaux 5.0 Alain Bron

Chaque nud du rseau qui dsire obtenir la correspondance entre un nom et une adresse IP
interroge le serveur DNS qui lui a t assign (paramtre de la couche IP) grce son resolver
(mcanisme de nslookup).

Le serveur DNS est charg de rpondre aux requtes (demande de rsolution de noms en
adresses IP ou de rsolution inverse (adresses IP en noms) en provenance des htes et des
autres serveurs de noms.

En mode rcursif (en principe, mode par dfaut), le serveur de nom qui ne peut pas fournir une
rponse, par exemple parce quil na pas la responsabilit de lespace de noms concern par la
requte, cherche obtenir ladresse IP du serveur en charge du second-level-domain qui est
lobjet de la requte.

De manire rcursive, il interroge un serveur racine, qui lui fournit ladresse IP dun serveur DNS du top-
level-domain concern par la requte, qui lui-mme lui transmet ladresse IP du serveur DNS
responsable de second-level-domain figurant dans la requte.

Finalement, le serveur de nom interroge le serveur du second-level-domain dont il vient dobtenir


ladresse pour connatre ladresse IP correspondant la requte.

Linformation obtenue chaque tape est conserve en mmoire (mise en cache) en vue dun
usage futur.

Figure 20.6
Arborescence des serveurs de noms (serveurs DNS)

En mode itratif, le serveur DNS qui ne peut fournir linformation demande renverra le client vers
un serveur DNS de rfrence susceptible de rpondre la question (referal).

219 / 289
Services et rseaux 5.0 Alain Bron

20.1.3 Rles et fonctions des serveurs DNS


Les serveurs de nom peuvent se voir attribuer diffrents rles.

Un serveur DNS primaire est un serveur de nom effectuant des rsolutions pour un ou
plusieurs domaines pour lesquels il agit en tant quautorit. Les rsolutions locales pour les
domaines/zones/espaces de noms sont effectues sur la base dun fichier local (authoritative
master table77) qui est charg en mmoire78.

Un serveur DNS secondaire, qui fonctionne galement en tant quautorit, charge ses
donnes non pas depuis un fichier mais directement auprs dun serveur primaire (transfert de
zones travers le rseau, via le protocole DNS/TCP).
Ces serveurs cache-only agissent en gnral comme serveurs redondants et mettent jour
leurs donnes auprs du serveur primaire (ou dun serveur secondaire) avec une priodicit
fonction de la valeur du champ refresh du champ SOA (chapitre 3.1.4). Si la valeur du champ
serial du SOA fournie par le DNS primaire est plus grande que la valeur courante, les donnes
sont rputes avoir t modifies et sont rcupres par le serveur secondaire et charges par
le processus concern (named, par exemple).
Le RFC 1995 permet un transfert incrmental des donnes modifies (IXFR), alors que le RFC
1996 stipule que le serveur primaire notifie les serveurs secondaires quun changement de
donnes a t effectu.

Un serveur DNS proxy neffectue aucune rsolution mais transmet les requtes un serveur
de rfrence (referal), comme le serveur DNS dun provider par exemple. Son rle est de
concentrer et mettre en cache les requtes DNS en provenance des clients DNS dun sous-
rseau, par exemple.

Un serveur primaire doit tre enregistr auprs dun Local Internet Registry (LIR) : switch.ch
pour la Suisse.

vd.ch est enregistr auprs de switch.ch

Un serveur faisant autorit pour un LIR doit tre enregistr auprs dun des 5 Regional Internet
Registry (RIR) : AfriNIC, ApNIC, Arin, LacNIC, RIPE NCC (europe).

switch.ch est enregistr auprs de RIPE NCC (www.ripe.net)

Un serveur racine (root server) se trouve au sommet de la hirarchie DNS et tient jour la liste
des serveurs DNS des TLD.

Les serveurs racines maintiennent la table TLD=serveur_de_nom_du_TLD

Les bases de donnes whois permettent de retrouver les informations concernant les diffrents
domaines enregistrs.

77 Typiquement le fichier named.local pour un serveur bind


78 Une modification dune entre du fichier ncessite en gnral un reload de la table.

220 / 289
Services et rseaux 5.0 Alain Bron

20.1.4 Serveur racines


Le sommet de larborescence est pris en charge par 13 serveurs racines (root-servers) nomms
a-.root-servers.net, b.root-servers.net, ... m.root-servers.net

La limitation de 13 serveurs est due une spcificit du RFC 1035 qui fixe la taille
maximale des segments UDP 512 Bytes. Au-del de cette limite, TCP doit tre utilis.

Les serveurs racines ont la charge de rpertorier les serveurs de nom des Top-Level-Domain
(gTLD - generic TLD , ccTLD - country code TLD, cc selon ISO-3136 ou sTLD - sponsored TLD,
RFC 3071).

La liste des adresses des serveurs racines est publique et disponible sous la forme dun fichier
ASCII (ftp://ftp.internic.net/domain/named.root)

Figure 20.7
Caractristiques des serveurs racines
(a m.root-servers.net)

Les serveurs c, f, i, j, k, l et m fonctionnent en mode anycast (RFC 3258): chaque serveur


racine est pris en charge par plusieurs serveurs 79 physiques, les requtes DNS tant diriges vers
le serveur le plus proche.

Cette technologie en cluster a permis de rpartir travers le monde la localisation des serveurs
racines, originellement uniquement situs sur le territoire amricain.

79 En 2012, 316 serveurs prennent en charge les fonctionnalits de serveur racine.

221 / 289
Services et rseaux 5.0 Alain Bron

Figure 20.8
Rpartition gographique des serveurs racines
(http://www.root-servers.org/)

Le serveur anycast k est pris en charge par RIPE NCC (http://k.root-servers.org/)

Figure 20.9
Localisation des serveurs k.root.servers.net en Suisse

222 / 289
Services et rseaux 5.0 Alain Bron

20.1.5 Contenu des tables DNS


Chaque serveur faisant autorit pour un domaine base ses rponses sur une table locale (fichier
master table80), compose denregistrements (RR - Resource Records).

Figure 20.10
Format dun enregistrement dune table DNS

Un enregistrement RR dune table DNS est compos des champs :

nom Nom de la ressource/hte dcrit par lenregistrement (< 256 Bytes)

type Type de la ressource (2 Bytes).

class Class de la ressource (2 Bytes).


IN (1) correspond la classe Internet.

TTL Dure de conservation de linformation en cache (4 Bytes), avant


rafraichissement du cache.

RDlength Longueur du champ RData (2 Bytes)

RData Description de la ressource, fonction du type et de la classe.


Dans le cas de la classe IN, le champ RData du type CNAME contient
le nom de la ressource la quelle fait rfrence cet alias.

80 Sous Linux, typiquement le fichier /var/named.local

223 / 289
Services et rseaux 5.0 Alain Bron

TYPE Value and meaning

A 1 a host address [RFC1035]


NS 2 an authoritative name server [RFC1035]
MD 3 a mail destination (Obsolete - use MX) [RFC1035]
MF 4 a mail forwarder (Obsolete - use MX) [RFC1035]
CNAME 5 the canonical name for an alias [RFC1035]
SOA 6 marks the start of a zone of authority [RFC1035]
MB 7 a mailbox domain name (EXPERIMENTAL) [RFC1035]
MG 8 a mail group member (EXPERIMENTAL) [RFC1035]
MR 9 a mail rename domain name (EXPERIMENT) [RFC1035]
NULL 10 a null RR (EXPERIMENTAL) [RFC1035]
WKS 11 a well known service description [RFC1035]
PTR 12 a domain name pointer [RFC1035]
HINFO 13 host information [RFC1035]
MINFO 14 mailbox or mail list information [RFC1035]
MX 15 mail exchange [RFC1035]
TXT 16 text strings [RFC1035]
RP 17 for Responsible Person [RFC1183]
AFSDB 18 for AFS Data Base location [RFC1183]
X25 19 for X.25 PSDN address [RFC1183]
ISDN 20 for ISDN address [RFC1183]
RT 21 for Route Through [RFC1183]
NSAP 22 for NSAP address, NSAP style A record [RFC1348]
NSAP-PTR 23 for domain name pointer, NSAP style [RFC1348]
SIG 24 for security signature [Donald Eastlake]
KEY 25 for security key [Donald Eastlake]
PX 26 X.400 mail mapping information [RFC1664]
GPOS 27 Geographical Position [Craig Farrell]
AAAA 28 IP6 Address [Susan Thomson]
SRV 33 Location of service [RFC2782]
AXFR 252 transfer of an entire zone [RFC1035]
MAILB 253 mailbox-related RRs (MB, MG or MR) [RFC1035]
MAILA 254 mail agent RRs (Obsolete - see MX) [RFC1035]
* 255 A request for all records

Figure 20.11
Types denregistrements dune table DNS

224 / 289
Services et rseaux 5.0 Alain Bron

Type Contenu RData Exemple de RR


Paramtres par dfaut des
serveurs autorits (nom du
serveur, nom de la mondomaine.com. IN SOA dns1.mondomaine.com
SOA personne responsable
(postmaster), version des postmaster.dns1.mondomaine.com (
(En-tte donnes, rafraichissement 200612301905 ;serial
de la automatique du cache [s], 3600 ;refresh period
table, retry [s], dure de vie dun Les requtes adresses 900 ;retry refresh
Start Of enregistrement en cache
[s], dure de vie minimale sans nom dhte sont 604800 ;expiration
Autority)
de la table) rediriges sur un serveur 3600 ;TTL par dfaut
par dfaut (idem *) )

IN NS dns1.mondomaine.com.
NS Serveur DNS autorit
IN NS dns2.mondomaine.com.

Adresse IP IN A 245.232.46.123
A correspondant lhte (au atlas IN A 245.232.46.123
nom) dns1 IN A 245.232.46.100

Adresse IPv6
AAA correspondant lhte (au dns1 IN AAA 2001 :1348 :1105 :14 ::2
nom)

www IN CNAME atlas


w3 IN CNAME atlas
CNAME Vrai nom de lalias
dns2 IN CNAME atlas
ftp IN CNAME atlas
Le nom correspondant
PTR une adresse IP. 123.46.232.245 IN PTR atlas.mondomaine.com.
Permet le reverse lookup

Serveur de messagerie
pour un domaine ou un mondomaine.com. IN MX 10 atlas.mondomaine.com.
MX host : mondomaine.com. IN MX 15 gedeon.provider.com.
Preference (2 Bytes) et oracle.mondomaine.com. IN MX 2 atlas.mondomaine.com.
Exchange RFC 974

Figure 19.12
Exemples denregistrements pour la classe IN

Un enregistrement type 255 * (wildcard) permet de regrouper un ensemble de noms.

La table DNS est lue ( parse ) squentiellement par le processus serveur DNS et ce dernier sarrte
la premire occurrence trouve (first match).

La rponse obtenue une requte peut dpendre de la prsence de wildcard et de leurs


emplacements dans le fichier.

225 / 289
Services et rseaux 5.0 Alain Bron

table 1

...
www.mondomaine.com IN A 245.232.46.122
*.mondomaine.com IN A 245.232.46.123
...

table 2

...
*.mondomaine.com IN A 245.232.46.123
www.mondomaine.com IN A 245.232.46.122
...

Une requte sur www.mondomaine.com retourne 245.232.46.122 dans le cas de la premire


table et 245.232.46.123 dans le cas de la deuxime table.

Dans le cas o plusieurs adresses IP correspondent au mme nom, les serveurs DNS peuvent
mettre en place des stratgies de tournus dans leurs rponses.

C:\ >nslookup www.google.com


Serveur : UnKnown
Address: 192.168.1.1

Rponse ne faisant pas autorit :


Nom : www.google.com
Addresses: 173.194.39.17
173.194.39.18
173.194.39.19
173.194.39.20
173.194.39.16

C:\>nslookup www.google.com
Serveur : UnKnown
Address: 192.168.1.1

Rponse ne faisant pas autorit :


Nom : www.google.com
Addresses: 173.194.39.19
173.194.39.20
173.194.39.16
173.194.39.17
173.194.39.18

226 / 289
Services et rseaux 5.0 Alain Bron

20.1.6 RR SRV et Active Directory


Dimplmentation relativement rcente, lenregistrement SRV (23) permet didentifier certains
services via le service DNS.

Figure 20.13
Format de lenregistrement SRV

_Service._Proto Le nom du service et du protocole sont dfinis avec le caractre _


en tte afin dliminer toute ambigit avec un nom denregistrement
classique.

.Name Nom du domaine concern.

TTL, CLASS Selon RFC 1035

Priority Permet de diriger les requtes sur un serveur de prfrence


(redondance) [0..65535]

Weight Permet de slectionner un server pour une mme valeur de priorit


(load sharing) [0..65535]

Port Ports TCP et UDP

Target Nom DNS du (des) serveur(s) ; ne doit pas tre un alias (CNAME)

Microsoft fait largement usage du champ SRV dans ses implmentations Active Directory
du protocole DNS.

_ldap._tcp.mondomaine.ch IN SRV 10 0 389 dc1.mondomaine.ch

227 / 289
Services et rseaux 5.0 Alain Bron

C:\>nslookup
Serveur par defaut : setmseb2k30003.etml.ch
Address: 10.224.10.45

> set q=SRV


> _ldap._tcp.etml.ch
Serveur : setmseb2k30003.etml.ch
Address: 10.224.10.45

_ldap._tcp.etml.ch SRV service location:


priority = 0
weight = 100
port = 389
svr hostname = setmseb2k30002.etml.ch
_ldap._tcp.etml.ch SRV service location:
priority = 0
weight = 100
port = 389
svr hostname = setmseb2k30001.etml.ch
_ldap._tcp.etml.ch SRV service location:
priority = 0
weight = 100
port = 389
svr hostname = setmseb2k30003.etml.ch
setmseb2k30002.etml.ch internet address = 10.224.38.45
setmseb2k30001.etml.ch internet address = 10.224.8.45
setmseb2k30003.etml.ch internet address = 10.224.10.45
>

Figure 20.14
Requte sur RR SRV ( _ldap = Active Directory)

20.1.7 UDP vs TCP


Les messages DNS peuvent sappuyer sur le protocole UDP ou le protocole TCP, dans les deux
cas en utilisant le port 53.

La mthode privilgie pour les requtes DNS utilise le protocole UDP, en limitant la taille du
segment 512 Bytes. Dans le cas dun message DNS dune taille suprieure 512 Bytes, le flag
TC de len-tte DNS est activ, ou TCP doit tre utilis.

La taille de 512 Bytes dcoule du fait que le plus petit paquet IP transmissible sans segmentation est
historiquement de 576 Bytes (MTU=576).
(576 Bytes - 20 Bytes en-tte IP - 4 Bytes en-tte UDP = 552 Bytes > 512)

Du fait de labsence de fiabilit dUDP, le RFC 1035 stipule que les clients qui constatent un
timeout lors de linterrogation dun serveur DNS doivent envoyer une requte un autre serveur.

Le transfert de zones entre serveurs DNS ncessite un transport fiable et sappuie normalement
sur TCP.

228 / 289
Services et rseaux 5.0 Alain Bron

20.2 Requtes DNS


Le mcanisme DNS fonctionne en mode client-serveur et transmet des messages (requtes et
rponses) travers le rseau IP pour permettre un client DNS (resolver) dobtenir des
informations de la part dun serveur DNS.
En fonction de la configuration du nud IP, la rsolution peut tre tente en premier sur le fichier
host local et ensuite sur un serveur DNS, ou inversement81.

La requte DNS du resolver peut tre :

Rcursive ; dans ce cas le resolver demande au serveur DNS interrog deffectuer les
requtes successives ncessaires pour lui fournir linformation (mode par dfaut des
resolvers des clients DNS).

Itrative ; si le serveur interrog ne connait pas la rponse, il renvoie au resolver ladresse


dun serveur de rfrence (referal) suppos pouvoir rpondre la requte (mode par
dfaut des resolvers des serveurs DNS)

sous la forme :
name, type, classe

sous la forme RR

Figure 20.15
Format gnral dun message (requte ou rponse) DNS

Figure 20.16
Format de len-tte dun message (requte ou rponse) DNS

81 Sous Linux, rgl via le fichier /etc/host.conf (directive order hosts,bind par exemple)
Sous Windows, ajouter une cl de registre :
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\DnsPriority

229 / 289
Services et rseaux 5.0 Alain Bron

ID Identificateur ; permet d'associer une rponse une requte; gnr


par le client DNS (2 Bytes).

QR Query (0) ou Respons (1)

OpCode Type de requte :


0 = standard (Query)
1 = Inverse Query (IQuery)
2 = server status query (Status)

AA 1 = la rponse provident d'un serveur autorit (Authoritative Answer)

TC 1 = message tronqu, car trop long (TrunCation)

RD 1 = demande au serveur d'effecteur une requte rcursive (Recursion


Desired)

RA 1 = rcursivit disponible (Recursion Available)

Z pas utilis (3 bits) : all zeros

Rcode Type de la rponse (Respons Code)


0 = No error condition
1 = Format error - The name server was unable to interpret the query.
2 = Server failure - The name server was unable to process this query
due to a problem with the name server.
3 = Name Error - Meaningful only for responses from an authoritative
name server, this code signifies that the domain name referenced in
the query does not exist.
4 = Not Implemented - The name server does not support the requested kind of
query.
5 = Refused - The name server refuses to perform the specified operation for
policy reasons. For example, a name server may not wish to provide the
information to the particular requester, or a name server may not wish to perform
a particular operation (e.g., zone transfer) for particular data.

QDcount Nombre dentre(s) de la section Question (2 Bytes)

ANcount Nombre denregistrement(s) RR figurant dans la section Answer (2 Bytes)

NScount Nombre de serveur(s) autorits spcifis dans la section Authority (2 Bytes)

ARcount Nombre denregistrement(s) RR figurant dans la section Additional (2 Bytes)

230 / 289
Services et rseaux 5.0 Alain Bron

H:\>nslookup
Serveur par defaut : setmseb2k30003.etml.ch
Address: 10.224.10.45

> www.epfl.ch
Serveur : setmseb2k30003.etml.ch
Address: 10.224.10.45

Rponse ne faisant pas autorit :


Nom : www6.epfl.ch
Address: 128.178.50.12
Aliases: www.epfl.ch
>

Figure 20.17
Requte DNS sur un serveur par dfaut et rponse ne faisant pas autorit

QR = 0 Query

Rcursivit demande

Une seule question dans


la section Question

Section Question :
name, type, classe

Figure 20.18
Dcodage dune requte DNS sur un serveur par dfaut

231 / 289
Services et rseaux 5.0 Alain Bron

QR = 1 Rponse

Rponse ne faisant
pas autorit

2 enregistrements RR
dans la section Answer

Section Answer :
2 enregistrements RR

Figure 20.19
Dcodage dune rponse DNS ne faisant pas autorit
(car rponse fournie par le cache du serveur DNS interrog)

H:\>nslookup
Serveur par defaut : setmseb2k30003.etml.ch
Address: 10.224.10.45

> server 128.178.15.8


Serveur par defaut : [128.178.15.8]
Address: 128.178.15.8

> www.epfl.ch
Serveur : [128.178.15.8]
Address: 128.178.15.8

Nom : www6.epfl.ch
Address: 128.178.50.12
Aliases: www.epfl.ch

>

Figure 20.20
Requte DNS sur un serveur faisant autorit

232 / 289
Services et rseaux 5.0 Alain Bron

Figure 20.21
Dcodage dune requte DNS sur un serveur faisant autorit

233 / 289
Services et rseaux 5.0 Alain Bron

Figure 20.22
Dcodage dune rponse DNS faisant autorit

> server 192.168.0.140


Serveur par defaut : [192.168.0.140]
Address: 192.168.0.140

> www.uvg.edu.gt
Serveur : [192.168.0.140]
Address: 192.168.0.140

Rponse ne faisant pas autorit :


Nom : kirika.uvg.edu.gt
Addresses: 200.35.167.66, 168.234.68.6, 168.234.76.6
Aliases: www.uvg.edu.gt

Figure 20.23
Requte sur un serveur DNS local, via nslookup.

234 / 289
Services et rseaux 5.0 Alain Bron

Exemple de trafic DNS

Rsolution de nom depuis un PC (Suisse 192.168.0.102)


Via un serveur de nom local (Suisse 192.168.0.140, FAI ww.citycable.ch)
Cible : www.sonabel.bf (Burkina Faso)

Figure 20.24
Squencement de requtes DNS rcursives

En dtail :

Requte du client DNS au serveur DNS local

Serveur DNS local :


192.168.0.140

Objet de la requte :
www.sonabel.ch

235 / 289
Services et rseaux 5.0 Alain Bron

Requte du serveur DNS local via b-root-servers.net

Rponse de :
b.root-servers.net

Serveurs DNS
pour TLD .bf

Requte du serveur DNS local via nahouri.onatel.bf

Rponse de :
nahouri.onatel.bf

Serveurs DNS pour


SLD sonabel.bf

236 / 289
Services et rseaux 5.0 Alain Bron

Requte du serveur DNS local via ns.zcp.bf

Rponse de :
ss.zcp.bf

Rponse du serveur DNS local au client DNS local.

Rponse de :
Serveur DNS local

www.sonabel.bf
=
212.52.147.202

237 / 289
Services et rseaux 5.0 Alain Bron

b.root-serveurs.net

Lausanne

Burkina Faso

Figure 20.25
Trafic DNS rcursif, localisation des serveurs DNS et whois SLD .bf

238 / 289
Services et rseaux 5.0 Alain Bron

20.2.1 Outils
Une srie doutils de base permettant dinteragir avec les serveurs de nom sont disponibles sur la
plupart des systmes, tels que nslookup, host et dig

Figure 20.26
dig sous Windows

Au niveau de Windows, les requtes DNS sont prises en charge par le service client DNS.
Windows stocke les requtes DNS en cache local, la fois au niveau de la couche IP et des
explorateur Internet.

Les commandes ipconfig /displaydns et ipconfig /flushdns permettent dafficher et


deffacer le contenu du cache DNS de la stack IP.

Sur les systmes Linux/UNIX, la rsolution est prise en charge par la bibliothque resolver et le
fichier /etc/resolver.conf.
Le processus named permet la prise en charge dun serveur DNS bind local (daemon).

20.3 dDNS
Un serveur de nom dDNS (dynamique DNS- RFC 2136) est capable dtablir et modifier des
enregistrements DNS de manire dynamique, la demande des clients DNS eux-mmes ou dun
serveur tiers, comme un serveur DHCP, sans intervention manuelle au niveau de sa table.

Un dDNS peut tre mis contribution pour associer un nom un noeud dont ladresse IP change
frquemment (par exemple cause de la politique du FAI).

A chaque modification dadresse IP, le client dDNS (un hte, ou un routeur de type SoHo) notifie
du changement son serveur dDNS, qui met jour dynamiquement sa table (enregistrements A et
PTR), de manire ce que le nom, via la nouvelle adresse IP, pointe toujours sur le nud
concern.

www.dyndns.org, www.changeip.com, www.no-ip.com, etc.

239 / 289
Services et rseaux 5.0 Alain Bron

20.3.1 Microsoft dDNS

Un serveur DHCP peut galement tre mis contribution pour maintenir les enregistrements de la
table dun serveur DNS.

Microsoft a particulirement dvelopp cette fonctionnalit dans son environnement Active


Directory.

Lorsquun client effectue une demande dadresse IP auprs dun serveur DHCP, il lui communique
son FQDN (option DHCP 81) et prcise la manire dont ces informations doivent tre rpercutes
sur le serveur DNS :

En fonction de la configuration du serveur DHCP :

Le serveur DHCP se conforme aux instructions du client DHCP et ne met jour le serveur
DSN que si le client le spcifie explicitement (configuration par dfaut des serveurs DNS
Microsoft).
Le serveur DHCP enregistre systmatiquement les clients sur les serveurs DNS.
Le serveur DHCP nenregistre jamais les clients, quelques soit leurs instructions.

Sur cette base, le serveur DHCP peut inscrire le client auprs de son serveur DNS
(enregistrements A et/ou PTR).

Clients DHCP Windows et protocole de mise jour dynamique du DNS


Les interactions DHCP/DNS des clients DHCP qui excutent Windows Server 2003, Windows 2000,
Windows XP ou un systme d'exploitation antrieur varient...

Mise jour DHCP/DNS sur les clients DHCP Windows Server 2003, Windows 2000 et Windows
XP
L'interaction des clients DHCP Windows Server 2003, Windows 2000 et Windows XP avec le
protocole de mise jour dynamique du DNS se droule de la manire suivante :

1. Le client envoie un message de requte DHCP (DHCPREQUEST) au serveur. La requte


contient l'option 81.
2. Le serveur renvoie un message de rception DHCP (DHCPACK) au client, qui attribue un bail
d'adresse IP avec l'option 81. Si le serveur DHCP est configur l'aide des paramtres par dfaut,
l'option 81 indique au client que le serveur DHCP sauvegardera l'enregistrement PTR DNS et que le
client sauvegardera l'enregistrement A DNS.
3. Le client envoie une requte dsynchronise de mise jour du DNS au serveur DNS pour son
propre enregistrement de recherche directe (enregistrement de ressource A d'hte).
4. Le serveur DHCP enregistre l'enregistrement PTR du client.

Mise jour DHCP/DNS pour les clients DHCP Windows qui utilisent une version de Windows
antrieure Windows Server 2003
Les versions antrieures des clients DHCP Windows ne prennent pas directement en charge le
processus de mise jour dynamique du DNS et ne peuvent pas avoir d'interaction directe avec le
serveur DNS. Pour ces clients DHCP, les mises jour sont gnralement traites de la manire
suivante :

1. Le client envoie un message de requte DHCP (DHCPREQUEST) au serveur. Cette requte ne


contient pas l'option 81.
2. Le serveur renvoie un message de rception DHCP (DHCPACK) au client, qui attribue un bail
d'adresse IP sans l'option 81.
3. Le serveur envoie les mises jour au serveur DNS pour l'enregistrement de recherche directe
du client, un enregistrement de ressource A d'hte, et envoie une mise jour pour l'enregistrement
de recherche inverse PTR du client.

240 / 289
Services et rseaux 5.0 Alain Bron

20.4 mDNS
Le mode multicast DNS82 , dvelopp par Apple (pas encore de RFC arrt), permet deffectuer
des requtes DNS sur espace de nom local (suffixe .local., non publi sur Internet) sans avoir
besoin de dployer un serveur DNS.
Chaque nud du rseau gre ses propres enregistrements et rpond (multicast responder) aux
requtes DNS multicast (224.0.0.251 :5353) qui le concerne.
Actuellement, le mcanisme mDNS est utilis dans le contexte des rseaux zeroconf.

20.5 Scurit
Linfrastructure DNS est un service vital pour les rseaux modernes qui peut tre lobjet de
plusieurs types dattaques.

Pharming via DNS Poisonning

Modification des enregistrements dun serveur DNS ou dun fichier hosts afin de rediriger le
trafic sur ladresse IP dune fausse destination.
Les mises jour dynamiques (dDNS) reprsentent, cet gard, un danger dont il faut tenir
compte lors de la configuration dun tel service.

Pharming via MITM (ou DNS Spoofing)

Interception et modification de la rponse une requte, dans le but de diriger le trafic sur
ladresse IP dune fausse destination

DNS Wildcard

Un caractre wilcard (*) permet de faire correspondre un ensemble de noms dun domaine
donn une seule adresse IP.
Ainsi, lenregistrement :

*.mondomaine.com IN A adresse_ip_4_All
ou
*.com IN MX smtp.pirate.com

Fait pointer tous les noms associs mondomaine.ch (www.mondomaine.com,


toto.mondomaine.com, etc.) sur une seule adresse IP ou tous les mails envoy un
domaine .com sur un unique serveur de messagerie.

Cette particularit permet de renvoyer des requtes mal orthographies sur un serveur
particulier, par exemple pour viter que des requtes mal orthographies naboutissent
une erreur, en vue de vendre un nom de domaine ou de commercialiser de la publicit 83.

DoS

Un dni de service sur un serveur de nom peut ralentir ou paralyser le trafic. Limpact dun
dni de service varie en fonction de la dure de lattaque, de la position du serveur dans
larborescence DNS et du nombre denregistrements prsents dans les diffrents caches
(locaux, sur les serveurs DNS intermdiaires, etc.).
Un dni de service classique consiste attaquer les serveurs racines. Si seule une partie
dentre eux est mis hors service, les performances dInternet seront ralenties pour les

82 http://www.multicastdns.org et http://www.zeroconf.org/
83 Notamment de manire plus ou moins frauduleuse par la socit VeriSign

241 / 289
Services et rseaux 5.0 Alain Bron

requtes ne figurant pas dans les caches intermdiaires (si un serveur racine ne rpond
pas, la requte est retransmise sur un autre serveur racine aprs un timeout).
Une srie de serveurs racines fonctionnent maintenant en mode anycast, ce qui limite
limpact gographique dun tel dni de service sur ces serveurs.

DNSSec

DNSSec84 (RFC 4033) permet de scuriser les donnes vhicules par les messages
DNS.
Les donnes sont cryptes via un systme de type cl publique / cl prive.
La cl publique du serveur DNS peut tre soit directement fournie par le serveur DNS lui-
mme, soit par un moyen tiers (PKI, PGP, configuration manuelle du client DNS).

20.6 Quelle nomenclature adopter ?


Les noms DNS ne sont pas sensibles la casse et seul un nombre limit de caractres sont
historiquement admis (RFC 698).

[a..z, 0..9, -]

Un nom DNS doit dbuter par une lettre, se terminer par une lettre ou un chiffre et ne pas dpasser
63 caractres.

Depuis quelques annes, de nombreux caractres additionnels sont admis 85 : il peut tre prudent
de ne pas les utiliser, tous les serveurs ntant encore forcment mme de supporter ces
extensions aux RC 698.

Un bon usage consiste utiliser des noms de nuds le plus neutre possible, en vitant des
appellations faisant explicitement rfrence leur emplacement, au type de systme ou
dapplications installes sur le nud (les systmes et les applications changent, les machines se
dplacent).

The DNS specifications attempt to be as general as possible in the rules for constructing domain
names. The idea is that the name of any existing object can be expressed as a domain name with
minimal changes.
However, when assigning a domain name for an object, the prudent user will select a name which
satisfies both the rules of the domain system and any existing rules for the object, whether these
rules are published or implied by existing programs.
For example, when naming a mail domain, the user should satisfy both the rules of this memo and
those in RFC-822. When creating a new host name, the old rules for HOSTS.TXT should be
followed. This avoids problems when old software is converted to use domain names.
[RFC1034]

Les alias permettent de nommer les nuds sans devoir changer le nom canonique.

nom srv1 alias www alias dellredhat

nom printer1 alias hp-bureau102

nom pc123 alias pc-rochat

84 http://www.dnssec.net/
85 www.switch.ch/fr/id/idn

242 / 289
Services et rseaux 5.0 Alain Bron

Si le serveur www est dplac sur un autre serveur, ou si limprimant du bureau 102 est dplace,
il suffit de dplacer lalias au niveau du serveur DNS.

nom srv1 alias dellredhat

nom srv5 alias www

nom printer1 alias hp-bureau321

nom pc123 alias pc-rochat

243 / 289
Services et rseaux 5.0 Alain Bron

21. Le routage

L'adressage logique permet de regrouper les nuds interconnects en entits logiques, les
rseaux et les sous-rseaux.

Le passage d'un rseau un autre, ou d'un sous-rseau un autre, s'effectue par lintermdiaire
dun routeur (ou gateway).

Les protocoles des couches logiques de niveau OSI 3 (rseau) sont dit routables (IPX, IP, etc.).

Un protocole comme NetBEUI est non-routable, car il nimplmente pas dadressage logique de niveau
OSI 3.

Fondamentalement, le routeur permet la transmission des paquets de donnes entre diffrents


rseaux.

Figure 21.1
Routeurs interconnectant 2 rseaux Ethernet et formant un rseau IP

La livraison finale (locale) seffectue laide des mcanismes de niveau 2 (ARP, par exemple).

Le routeur est un quipement comprenant :

Une partie matrielle : des interfaces (NICs) lui permettant d'interconnecter diffrents
types de rseaux physiques (Ethernet, ATM, Wifi, liaisons WAN synchrones, etc.).

Une partie logicielle permettant les oprations de slection et de calcul de routes, de


filtrage, etc.

244 / 289
Services et rseaux 5.0 Alain Bron

Figure 21.2
Router vs hub et switch selon le modle OSI

Un routeur implmente plusieurs fonctions.

De base :
Gestion et maintenance dune table de routage
Selon un format et des modalits dchange des informations de routage dfinis
par le protocole de routage.
Choix des routes
Selon lalgorithme implant dans le routeur.
Acheminement (forward) des paquets
Selon la technique de commutation utilise par le routeur

Avances
Filtrage (firewall)
Qualit de service (QoS) - priorisation

Figure 210.3
Fonctions dun routeur

245 / 289
Services et rseaux 5.0 Alain Bron

21.1 Table de routage


Le routeur est charg d'acheminer (forwarder) des paquets de niveau logique d'un rseau un
autre. Le dernier routeur de la chane livre le paquet, via une trame physique, au destinataire
final.

Le choix d'une route est dcid en fonction des informations et du poids ou mtriques
(metrics) figurant dans la table de routage du routeur.

Lalgorithme de routage dtermine la manire dont sont values et choisies les routes
prsentes dans la table de routage.

La table de routage est mise jour l'aide de protocoles de routage.

Un mtrique peut tre composite (compos laide de plusieurs paramtres, pondrs entre
eux) ou univalu.

En cas de connexions multiples entre deux rseaux, le routeur choisira laide du mtrique la
route la plus approprie pour dlivrer ses paquets et sera capable de slectionner un nouveau
chemin au cas o la route dfinie ne serait plus disponible, tout en vitant les boucles de
routage.

De la prcision et du dtail des informations contenues dans la table de routage dpendra la


pertinence du choix d'une route.

Rseau Adresse du Interface du Poids de la route Dure etc.


(* = route routeur voisin routeur local / mtrique d'existence de la
slectionne) route
*A 12 Ethernet 0 134 2 minutes
*B 3 Wifi 1 3 30 secondes
*R 12 Ethernet 0 456 2 minutes
A 14 WAN 4 1245 30 secondes

Figure 21.3
Contenu fictif d'une table de routage

246 / 289
Services et rseaux 5.0 Alain Bron

sh ip route

Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP


D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
Protocole ayant annonc i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
la route * - candidate default, U - per-user static route, o - ODR
P - periodic downloaded static route
Route (destination) par
_ dfaut pour ce rseau
Gateway of last resort is 155.105.1.4 to network 130.59.0.0

D EX 194.10.194.0/24 [170/40028416] via 155.105.1.4, 3w5d, Vlan1000


D EX 192.42.182.0/24 [170/28416] via 155.105.1.4, 3w5d, Vlan1000 VLSM
D EX 192.42.181.0/24 [170/28416] via 155.105.1.4, 3w5d, Vlan1000
155.105.0.0/16 is variably subnetted, 129 subnets, 3 masks
D 155.105.254.15/32 [90/156416] via 155.105.1.4, 3w5d, Vlan1000
D 155.105.250.0/24 [90/284416] via 155.105.1.4, 3w5d, Vlan1000
D EX 155.105.254.31/32 [170/40028416] via 155.105.1.4, 3w5d, Vlan1000
Rseau distant D 155.105.220.0/24 [90/156160] via 155.105.45.4, 3w5d, Vlan45
D 155.105.194.0/24 [90/40514816] via 155.105.1.4, 3w5d, Vlan1000
D 155.105.195.0/24 [90/40514816] via 155.105.1.4, 3w5d, Vlan1000 Interface locale
D 155.105.199.0/24 [90/28416] via 155.105.1.4, 3w5d, Vlan1000 de sortie
D 155.105.144.0/24 [90/1790208] via 155.105.1.4, 3w4d, Vlan1000
D EX 155.105.130.0/24 [170/40028416] via 155.105.1.4, 3w5d, Vlan1000
D EX 155.105.131.0/24 [170/40028416] via 155.105.1.4, 3w5d, Vlan1000
D 155.105.128.0/24 [90/40540416] via 155.105.1.4, 3w4d, Vlan1000
[]

Distance administrative Mtrique Routeur suivant

Figure 21.4
Contenu rel d'une table de routage Cisco

Figure 21.5
Typologie de routage et de routeurs

247 / 289
Services et rseaux 5.0 Alain Bron

La slection dune route dans la table de routage dpend de limplmentation de lalgorithme de


slection de la meilleure route, qui est indpendant du type de protocole de routage utilis.

Les algorithmes issus de la thorie des graphes, tels que Bellman-Ford ou Dijkstrad, sont en gnral
utiliss au sein des routeurs.

Les processus de routage dcrits par la suite s'appliquent tous les protocoles routables. Dans
ce chapitre, seul le routage du protocole IP sera voqu.

Mme si les fonctions de routage peuvent tre implmentes sur diffrents types d'quipements (PC
sous Windows ou Linux, Switch, etc.), les routeurs Cisco sont particulirement rpandus dans le monde
du routage.

21.2 Routage statique


Le routage statique est un procd simple de cration de tables de routage, puisque chaque
entre est cre et maintenue par l'administrateur du routeur.

Ainsi, chaque route est dfinie de manire manuelle et statique : chaque modification dans la table de
routage ncessite l'intervention de l'administrateur, qui doit alors dcider d'une nouvelle route (en cas de
modification de la topologie du rseau ou de panne, par exemple.)

Cette mthode est parfaitement adapte pour un routeur ne desservant qu'un seul rseau et n'ayant
qu'un seul chemin pour en sortir (cas des routeurs SoHo, par exemple).

Le principal avantage du routage statique tant la matrise totale sur le contenu de la table de
routage, ce qui permet d'viter certains problmes comme ceux dus des routes instables, par
exemple.
Un autre avantage est l'absence de trafic d au protocole de routage, ce qui permet d'viter un
'bruit de fond' sur des lignes faible dbit.

Une route par dfaut (default route 0.0.0.0) est typiquement dclare de manire statique :
c'est le chemin o seront dirigs les paquets pour lesquels il n'existe pas de route spcifique
connue (il est suppos que le routeur au bout de cette route par dfaut soit capable de prendre
en charge les paquets).

Lquipement connect un rseau ou sous-rseau est rput connatre le chemin menant ce


(sous)rseau, puisquil est y directement connect par lintermdiaire dun interface local.

En gnral, tous les nuds dun rseau IP possdent au moins une route par dfaut statique (gateway
par dfaut pour un PC, par exemple).

248 / 289
Services et rseaux 5.0 Alain Bron

C:\WINDOWS>netstat -rn

Table de routage
===========================================================================
Route par Liste d'Interfaces
0x1 ........................... . . MS TCP Loopback interface
dfaut 0x20006 ...00 14 22 f3 cf a1 ...... Broadcom NetXtreme 57xx Gigabit Controller #
===========================================================================
Itinraires actifs :
Destination rseau Masque rseau Adr. passerelle Adr. interface Mtrique
0.0.0.0 0.0.0.0 10.224.10.1 10.224.10.96 20
10.224.10.0 255.255.255.0 10.224.10.96 10.224.10.96 20
10.224.10.96 255.255.255.255 127.0.0.1 127.0.0.1 20 Route de
10.255.255.255 255.255.255.255 10.224.10.96 10.224.10.96 20
bouclage
Route 127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1
directement 224.0.0.0 240.0.0.0 10.224.10.96 10.224.10.96 20
255.255.255.255 255.255.255.255 10.224.10.96 10.224.10.96 1
connecte Passerelle par dfaut : 10.224.10.1
===========================================================================
Itinraires persistants : Aucun

Figure 21.6
Table de routage Windows pour linterface IP 10.224.10.96

249 / 289
Services et rseaux 5.0 Alain Bron

21.3 Routage dynamique


Les processus de routage dynamique sont bass sur lchange, laide dun protocole de
routage, de tables de routage ou dinformations sur les (sous-)rseaux connus entre routeurs
collaborant au sein dune entit.

Lchange des tables de routage peut tre dclench de manire rgulire ou lors dun vnement.

Lchange des tables peut tre incrmentiel (mise jour des changements intervenus depuis le dernier
envoi) ou global, et tre diffus en mode broadcast, multicast ou unicast.

Le protocole de routage idal devrait rpondre aux exigences suivantes :

tre dynamique et converger rapidement (changement de topologie connu rapidement


par lensemble des routeurs du rseau)
Supporter de nombreux critres permettant la dfinition du mtrique et donc le choix
dun chemin (dbit ou vitesse de la liaison, trafic ou charge de la liaison, fiabilit de la
liaison, nombre de nuds intermdiaires, poids administratif, etc.)
tre peu volubile (peu de trafic induit uniquement par les changes dinformations entre
routeurs) et demandant peu de ressources sur les routeurs.
tre adapt aux types de rseau (WAN, LAN, liaison inter-rseaux, etc.)
tre capable de regrouper les informations pour les prsenter et les vhiculer sous
forme rduite (agrgation de routes, par exemple).

On peut ainsi de distinguer deux familles de protocoles de routage dynamique :

Les protocoles de type tat de liens (link state), qui tiennent compte de diffrents
paramtres lis aux liaisons (bande-passante, taux d'erreur, etc.) et qui sont capables de
tenir jour une topologie globale du chemin menant aux rseaux distants.

Les protocoles de type vecteur de distance (distance vector), qui tiennent compte de
la distance de parcours, gnralement exprime simplement en termes de nombre de
routeurs traverser et de la direction suivre pour atteindre un rseau distant.

Bern 9
7 km
Bern 112 km

250 / 289
Services et rseaux 5.0 Alain Bron

Certains protocoles ont t dvelopps dans l'optique d'interconnecter des grands rseaux entre
eux et se retrouvent au cur d'Internet (core/exterior protocols), d'autres sont plus
spcifiquement utiliss l'intrieur des rseaux pour structurer des sous-rseaux (interior
protocols) alors que d'autres servent de lien entre l'intrieur et l'extrieur d'un rseau (border
protocols).

Un routeur peut construire sa table de routage laide dinformations en provenance de


diffrents protocoles de routage. Une valeur administrative permet alors de complter la
pondration de mtriques de natures diffrentes.

Figure 21.7
Familles de protocoles de routage dynamiques

21.4 RIP
Malgr ses dfauts, RIP (Routing Information Protocol ; RIP v2 = RFC 2453) est le protocole de
routage interne 'historique' encore largement utilis sur les rseaux et implment sur tous les
routeurs, ainsi que sur de nombreux OS, tels que UNIX, la famille Windows NT, VMS etc.,
notamment dans sa version 2 (RIPv2)

Protocole de type link state, RIP ne tient compte que d'un seul paramtre pour qualifier la route
vers un rseau : le nombre de routeurs traverss (mtrique univalu : sauts ou hops).

Le nombre de saut maximum est fix 15 pour un rseau fonctionnant sous RIP, ceci afin d'viter des
boucles de routage86, ce qui a pour effet de limiter la taille (le 'diamtre') maximum possible d'un rseau
fonctionnant avec ce protocole de routage.

Le critre du nombre de sauts ncessaires pour atteindre le rseau de destination ne tient


videmment pas compte de la qualit et du dbit des liaisons utilises.

Ainsi, dans le cas de la figure 21.8, la liaison travers la ligne faible dbit sera prfre la liaison
Ethernet + MAN haut dbit, en raison du plus faible nombre de routeurs traverss.

86
Un rseau associ 16 hops est considr comme inatteignable. Cette limitation conduit utiliser RIP essentiellement dans les
rseaux locaux.

251 / 289
Services et rseaux 5.0 Alain Bron

Figure 21.8
RIP: choix d'une route entre A et D en fonction du mtrique = nombre de hops

21.4.1 Transmission des informations de routage sous RIP.


Chaque routeur transmet, via un multicast (RIPv2), le contenu de sa table de routage aux
routeurs voisins participants au rseau IP et utilisant RIP comme protocole de routage.

Chaque routeur du rseau construit ensuite sa table de routage locale en fonction des
informations rcoltes grce au protocole de routage et des rseaux directement connects sur
ses interfaces (utilisation dun algorithme de type Bellman-Ford).

Une fois sa table re-caclule, le routeur transmet le rsultat de sa mise jour aux routeurs
voisins, et ainsi de suite.

Dans la version initiale de RIP (v1), le contenu de la table de routage de chaque routeur est envoy
toutes les 30 secondes sur le rseau l'aide d'un broadcast IP.
Chaque routeur met jour sa table locale et ne conserve que la route la plus favorable (nombre de hops
le plus faible).

Une srie de compteurs rgle la dure de vie des routes dans la table de routage et les supprime si
aucune mise jour n'est intervenue aprs un certain dlai (dans ce cas, la destination est considre
dans un premier comme invalide, puis inexistante).

Dans la version 2 de RIP, le routeur diffuse sa table locale, en mode multicast, chaque mise jour (
chaque vnement), indpendamment du cycle de 30 secondes, ce qui permet d'augmenter la rapidit
de convergence lors d'un changement de route, par exemple.

L'administrateur du rseau de routeurs peut, lors de la mise en uvre, agir sur certaines proprits de
diffusion des tables de routage, en dcidant, par exemple, de ne les transmettre que sur certains
interfaces (pour limiter le trafic, par exemple) ou d'ajouter administrativement un nombre de sauts une
route en provenance d'un interface donne (afin de favoriser une route par rapport une autre).

252 / 289
Services et rseaux 5.0 Alain Bron

RIP est mal adapt pour des rseaux pouvant contenir des chemins traversant plus 15 routeurs
(le rseau ne pouvant contenir plus de 15 routeurs en srie).

Protocole standard (RFC 2453), RIP version 2 supporte le transport et la gestion de routes
classless et implmente un mcanisme dauthentification entre routeurs.

gateway-labo#
0:03:39: RIP: sending update to 10.192.23.255 via Ethernet0 (10.192.23.254)
0:03:39: subnet 10.192.24.0, metric 1
0:03:39: RIP: sending update to 10.192.24.255 via Ethernet1 (10.192.24.1) Update
0:03:39: subnet 10.192.23.0, metric 1 avec un
0:03:39: default 0.0.0.0, metric 1
0:04:08: RIP: sending update to 10.192.23.255 via Ethernet0 (10.192.23.254)
delta de 30
0:04:08: subnet 10.192.24.0, metric 1 sec.environ
0:04:08: RIP: sending update to 10.192.24.255 via Ethernet1 (10.192.24.1)
0:04:08: subnet 10.192.23.0, metric 1
0:04:08: default 0.0.0.0, metric 1
Envois sous forme
[] de broadcast local
Un lien physique est dsactiv...
0:05:03: RIP: sending update to 10.192.24.255 via Ethernet1 (10.192.24.1)
0:05:03: subnet 10.192.23.0, metric 1
0:05:03: default 0.0.0.0, metric 1
0:05:07: %LINK-5-CHANGED: Interface Ethernet1, changed state to administratively down
0:05:09: RIP: sending update to 10.192.23.255 via Ethernet0 (10.192.23.254)
0:05:09: subnet 10.192.24.0, metric 16
0:05:09: RIP: broadcasting general request on Ethernet0
Update
dclench
Figure 21.9 (link down)
Evnements lors de la mise jour des tables de routage via RIP
aprs le changement dtat dune liaison physique ;
un mtrique de 16 signifie inatteignable

21.5 EIGRP
Le protocole RIP s'avrant relativement rustique, notamment du point de vue de la granularit
des informations vhicules concernant la qualit des liaisons, de leur charge, etc., ainsi que du
temps de convergence long (dans sa version standard), d'autres protocoles de routage ont t
dvelopps, tels que OSPF et IGRP / EIGRP (Extended Interior Gateway Routing Protocol, de
Cisco).

EIGRP utilise un mtrique composite, cr partir de paramtres pondrs :

Dbit nominal minimal rencontr sur le chemin


Dlai pour le chemin
Fiabilit du chemin
Charge du chemin

Dans les faits, les paramtres de fiabilit et de charge sont rarement utiliss et la valeur de dlai
est drive dune table normalise (1'000 s pour une liaison Ethernet, par exemple).

En plus de sa table de routage, EIGRP maintient jour une table des routeurs voisins, ainsi
quune table topologique qui contient des routes potentielles non optimales.
Lorsquune route de la table de routage nest plus valide, le routeur slectionne une route de
remplacement dans sa table topologique, ce qui acclre la convergence du rseau.

253 / 289
Services et rseaux 5.0 Alain Bron

Les mises jour, transmises de manire dclenche, sont multidiffuses ou transmises directement un
routeur voisin et peuvent tre partielles.

Protocole propritaire, EIGRP autorise le transport et la gestion de routes classless et


implmente un mcanisme dauthentification entre routeurs.

21.6 OSPF
Les routeurs participant un rseau ( area ) OSPF changent leurs informations de routage
entre voisins afin de constituer une table de l'tat des liens.

Une fois le rseau converg, les routeurs sont tous au bnfice dune table de ltat des liens
identique, de laquelle ils drivent indpendamment leurs tables de routage.

La cration de relation entre routeurs pairs induit un nombre de relations important pour chaque routeur
supplmentaire du rseau : 10 routeurs = 90 relations entre pairs, 11 routeurs = 110 relations.

La slection du chemin prfr est tablie sur la base des cots cumuls des liens menant au
rseau distant, la norme ne prcisant pas la manire dont est dfini le cot des liens !

Limplmentation OSPF de Cisco utilise un cot driv du dbit nominal du lien.

OSPF est rput convenir pour des rseaux comprenant jusqu un millier de routeurs mais
ncessiter beaucoup de ressources (cpu et mmoire) pour calculer les routes (application dun
algorithme de type dijkstra)

Protocole standard (RFC 2328), OSPF autorise le transport et la gestion de routes classless et
implmente un mcanisme dauthentification entre routeurs.

21.7 BGP
Contrairement RIP, EIGRP ou OSFP, BGP (Border Gateway Protocol) est un protocole de
routage spcialement prvu pour le routage entre grands-rseaux autonomes87, mme sil peut
galement tre mis en uvre en tant quIBGP (Interior BGP).

BGP est typiquement utilis par les ISP (Internet Service Providers), ce qui en fait le protocole de
routage d'Internet par excellence.

87Par rseau autonome, il faut comprendre un rseau sous une administration et une politique de routage commune, AS
autonomous system.

254 / 289
Services et rseaux 5.0 Alain Bron

Figure 21.10
Position de BGP comme protocole de routage inter-rseaux

Historiquement prvus pour fonctionner de manire compltement maille, les routeurs BGP ont
souffert de laccroissement de la taille des tables de routage du cur dInternet.

Figure 21.11
Accroissement du nombre de routes gres par un core routeur BGP

Les trs grands rseaux BGP ont ainsi volu vers une architecture logique en toile, o un
rflecteur de route (RR - route reflector) consolide les routes au profit de routeurs associs (RR
clients).

255 / 289
Services et rseaux 5.0 Alain Bron

Afin de rduire la taille des systmes autonomes, certains rseaux BGP sont diviss en sous-systmes
(confdrations).

Figure 21.12
Relations entre AS BGP core
(http://www.ris.ripe.net/bgpviz/)

256 / 289
Services et rseaux 5.0 Alain Bron

Figure 21.13
Rpartition au sein des rseaux des types de protocoles de routage.

257 / 289
Services et rseaux 5.0 Alain Bron

21.8 Risque de boucle de routage


En cas de problme de configuration, ou d'erreurs dans les tables de routage, des boucles de
routages peuvent apparatre et faire alors "tourner en rond" les paquets IP au sein du rseau.

Figure 21.14
Boucle de routage entre C et A

La dure de vie des paquets IP, dtermine par la valeur TTL de leur en-tte, permet de limiter,
dans une certaine mesure, limpact des boucles de routage dans un rseau. Nanmoins, les
boucles de routage rendent certaines destinations inaccessibles.

En cas de dfinition de routes statiques, il est de la responsabilit de ladministrateur du routeur


de veiller la pertinence des routes tablies, alors que les protocoles de routage mettent en
place diffrentes stratgies pour viter ce genre dvnements.

Split horizon
Les routes ne sont jamais annonces sur linterface par laquelle elles sont t apprises.

Poison-reverse
Au lieu de plus annoncer une route qui nest plus utilisable, elle est annonce comme
inatteignable (avec un mtrique de 16 sous RIP, par exemple).

21.9 Mixit de protocoles de routages.


Diffrents protocoles de routages peuvent tre employs sur un rseau.

Cette mixit, historique ou due des contraintes techniques (afin d'utiliser le protocole le plus
adquat chaque situation : routage statique dans les sites distants, EIGRP en local, par
exemple), ncessite de pouvoir convertir les informations en provenance de chaque protocole
afin de pouvoir les distribuer travers chaque autre protocole.

Cette redistribution entre systmes autonomes (AS) implique l'tablissement de


correspondances entres les mtriques de chaque protocole, diffrents par essence (distance
administrative chez Cisco).

258 / 289
Services et rseaux 5.0 Alain Bron

21.10 Un rseau de routeurs ?


Historiquement, les routeurs ont t utiliss pour segmenter les rseaux locaux, de manire
structurer les flux d'information, compartimenter les rseaux, scuriser certaines zones
informatiques et limiter le trafic inutile.

L'apparition des commutateurs (switch) a considrablement limit la ncessit des routeurs dans
les rseaux locaux, puisquun commutateur, de par ses performances intrinsquement largement
suprieures, un cot plus bas et une gestion simplifie remplit parfaitement ces rles.

Un des derniers rles attribus aux routeurs dans un cadre local et celui de limiter la diffusion des
broadcasts, largement utiliss par certains protocoles tel NetBIOS, par exemple.

La fonction de routage a toutefois t reprise par certains commutateurs, dans le cadre du


routage inter-VLAN (layer 3 switching).

Les routeurs restent nanmoins indispensables dans un environnement WAN, pour permettre
l'interconnexion de rseaux de technologies diffrentes (Ethernet et Token Ring, par exemple)
ou pour permettre l'accs Internet depuis un rseau local.

Si les dbits d'un rseau local sont actuellement de l'ordre de 100 Mb/s ou 1Gb/s, les liaisons distantes
ont en gnral un dbit qui n'est qu'une fraction de ces valeurs : seul un routeur est capable de grer le
trafic de manire ne diriger sur les liaisons WAN que les paquets ncessaires.

Les routeurs peuvent galement proposer une srie de services supplmentaires, tel que
firewall, QoS, VPN, encryption, etc.

21.11 Routage et scurit


Les tables des routages jouent un rle essentiel dans laiguillage des donnes vers la bonne
destination. Une modification dans une table de routage provoque un changement de chemin
pour des donnes, pouvant soit les mener vers une cible (attaque par rebond), vers un nud
ddi lcoute et au dcodage des paquets (attaque de type Man in the middle et sniffing) ou
vers un trou noir (dni de service).

La plupart des protocoles de routage, comme notamment RIPv2, EIGRP ou OSPF, permettent de
scuriser le transfert des tables de routage laide dun identifiant ou forcent les routeurs
naccepter des mises jour de leur table de routage que de la part de routeurs rpertoris.

Le protocole ICMP permet de rediriger des donnes vers une route plus adapte (ICMP redirect).
Utilise mauvais escient, cette fonctionnalit peut galement provoquer un changement de
chemin pour des donnes cibles.

21.12 Routage inter-VLAN


Un rseau constitu de VLAN applique les mmes principes de routage quun rseau construit
laide de rseaux physiques : le passage dun VLAN un autre ncessite un quipement
dinterconnexion, de niveau 2 ou 3 et lusage a impos le routeur pour jouer ce rle.

Dans la pratique, le routage entre VLAN est ralis de faon interne aux quipements de
commutation, par le biais dune fonction logicielle embarque dans le switch : on parle parfois de
layer 3 switching.

Les switchs implmentant les fonctions de routage supportent en gnral uniquement le routage
statique et le protocole RIP.

259 / 289
Services et rseaux 5.0 Alain Bron

Les quipements de type routeurs restent indispensables pour les rseaux composs de liens
WAN et ncessitant des configurations de routage complexes.

21.13 Acheminement des paquets


Les routeurs implmentent trois fonctions de base : la maintenance et la diffusion des tables de
routage, le calcul des routes et lacheminement des paquets.

La technologie permettant lacheminement des paquets, une fois la route calcule partie de la table de
routage, dpend de limplmentation et de larchitecture mise en uvre sur le routeur.

Le calcul de la route pour chaque paquet en transit sur le routeur ncessite du temps de calcul
gnrant de la latence.
En considrant que sur un temps relativement bref, une srie de paquets destins une mme
destination suit la mme route, constituant ainsi un flux, certaines technologies permettent de
simplement basculer les paquets constituant ce flux entre les interfaces physiques du routeur,
sans autres calculs que celui ncessaire dterminer la route du premier paquet.

Cisco Process Switching


Dans le mode process switching, chaque paquet est trait par un processus schedul de lIOS (systme
dexploitation des routeurs Cisco), qui calcul la route du paquet sur la base de la table de routage et de
la table ARP, pour dterminer quelle adresse transmettre le paquet.

Cisco Fast Switching, Optimal Switching et Cisco Expresse Forwarding


Ces diffrents modes de traitement (du moins efficace au plus efficace) traitent le premier paquet laide
de la table de routage et de la table ARP (Cisco Process Switching), puis stockent les informations
rsultantes ncessaires sa transmission (route et MAC adresse) dans une ou plusieurs tables
parallles (cache).
La diffrence defficacit de ces modes rsulte essentiellement de lalgorithme de recherche
doccurrences et sur la manire dont sont organises les donnes stockes en cache (arbre binaire,
tables parallles, etc.).
Des mcanismes daging time vitent que des donnes obsoltes subsistent dans les caches aprs un
changement de topologie ou des conditions relles sur le rseau.

MPLS (MultiProtocol Label Switching) est un protocole visant limiter les processus de routage
pour un flux de donnes.

Chaque paquet est marqu en fonction de sa destination (via un label) lentre du rseau
MPLS.

Chaque nud MPLS (en gnral, des routeurs) traitent le message MPLS en fonction de
son label, sans avoir calculer sa route : on se rapproche du mode commutation de circuits
virtuels.

21.14 Filtrage
De par leurs positions dans les rseaux, les routeurs peuvent tre utiliss pour mettre en place
des rgles de filtrage ou de pare-feu (firewall).

Les rgles peuvent en gnral tre dfinies sur la base des adresses IP et des numros de port
TCP/UDP sources et destinations.

En fonction des implmentations, les fonctions de firewalling peuvent tre de type statefull
(considrant non pas le paquet pour lui-mme en fonction de rgles statiques de type
source/destination, mais considrant le paquet en fonction des flux de donnes observs : par

260 / 289
Services et rseaux 5.0 Alain Bron

exemple, tel paquet de type TCP SYN/ACK en provenance de lextrieur rpond-il un paquet
TCP SYN gnr par un nud interne ?).

La gestion du filtrage peut savrer gourmand en ressources et peut ncessiter des routeurs
puissants en fonction du trafic et de la complexit des rgles appliques.

Des quipements spcifiquement ddis au filtrage sont parfois privilgi dans les rseaux
dimportance, afin de laisser les routeurs en charge uniquement de leur rle de base, le calcul
des routes optimales.

21.15 QoS
De par leur rle de frontire entre rseaux, et notamment entre rseaux haut-dbits (LAN) et
bas-dbit (WAN), les routeurs peuvent grer les flux en traitement en attribuant des priorits
diffrencies aux paquets en transit.

Limplmentation de la qualit de service (QoS Quality of Service) consiste privilgier un


certain type de trafic, au dtriment dun autre, puisque lopration vise optimaliser lutilisation de
liens engorgs88.

Figure 21.15
La QoS privilgie un type de trafic au dtriment dun autre

La QoS naugmente pas le dbit disposition, mais peut amliorer la latence pour un type de
trafic donn, ou partager le dbit de manire asymtrique.

Le trafic privilgi, par exemple de la voix sur IP sensible la latence et sa gigue, va tre trait
de manire garantir un certain dlai en mettant en attente du trafic considr comme moins
sensible (download ftp, par exemple).

La QoS peut tre mise en place individuellement, au niveau dun seul routeur : dans ce cas,
limpact de la mesure se limite au routeur et au(x) lien(s) directement concern(s) : la mise en
uvre dun QoS sur un routeur domestique na, par exemple, aucun impacte au-del du lien
xDSL, et notamment sur le traitement rserv au paquet par les diffrents ISP.

La QoS peut galement tre implmente sur un rseau partageant des rgles communes de
traitement et de marquage des paquets.
Dans ce cas, le champ ToS (Type of Service) de len-tte du paquet IP peut tre mis
contribution (chapitre 12).

88 La QoS na pas de sens sur un lien dont le taux dutilisation est faible.

261 / 289
Services et rseaux 5.0 Alain Bron

Figure 21.16
QoS au sein dun rseau partageant des rgles communes
(Domaine DiffServ)

Lalternative la mise en uvre de mcanisme de type QoS est en gnral laugmentation du


dbit du lien, ou la modification les flux de donnes en circulation en revoyant larchitecture du
systme dinformation (mise en place de serveurs dans les sites distants, par exemple).

262 / 289
Services et rseaux 5.0 Alain Bron

22. IPv6

Le protocole IP (ou plus prcisment IPv4) imagin aux alentours des 70 utilise un adressage sur
32 bits. Une fois retranches les diffrentes adresses rserves des usages particuliers
(adresses prives, multicast, etc.), le nombre d'adresses publiques rellement disponibles est de
l'ordre de 4 milliards.
Le protocole IP, devenu dans les annes 1980 le protocole rseau unique au niveau d'Internet,
montre ses limites en termes d'adresses disponibles et de taille des tables de routage 89, compte
tenu de la multiplication des usages du rseau Internet et l'accroissement parallle du nombre de
rseaux

Pour rgler ce problme, l'IETF (Internet Engineering Task Force) proposa au milieu des annes
90 un nouveau protocole, SIPP (Simple Internet Protocole Plus), baptis ensuite IPng (IP new
generation), puis finalement IPv6 90 (RFC 2460, dcembre 1998)

Rgulirement annonc comme amen remplacer rapidement IPv4, le protocole IPv6 ne s'est pas
encore rellement impos dans des rseaux locaux, sa prsence tant pour l'instant essentiellement
limite au cur du rseau Internet, chez certains providers et dans les laboratoires.

Figure 22.1
Pntration dIPv6, du point de vue des accs aux serveurs de Google.
http://www.google.com/intl/en/IPv6/statistics/

Le dveloppement d'artifices techniques comme le NAT (Network Address Translation) explique en


partie la rsistance dIPv4.

D'autre part, le passage d'IPv4 IPv6 n'est pas a priori une opration anodine alors que le
nombre d'quipements supportant ce nouveau protocole est rest pendant longtemps
relativement faible91.
La cohabitation au sein dun mme rseau des protocoles IPv4 et IPv6 pose un certain nombre
de problmes de compatibilit, ou ncessite de la gestion parallle des deux piles de protocoles
sur les diffrents nuds du rseau.

Nanmoins, le grand nombre d'adresses disponibles n'est pas le seul intrt de ce nouveau
protocole.

89 A l'heure actuelle, prs de 100% des adresses seraient attribues, et le nombre de rseaux de classe A et B encore disponibles
est proche de zro. De plus, l'Adressage IPv4 tant trs peu hirarchique, les tables de routage au niveau du cur d'Internet
deviennent de plus en plus grandes et donc difficiles grer.
90 IPv5 na formellement jamais exist.
91 Mme si depuis Windows Seven, par exemple, IPv6 est parfaitement intgr et fonctionnel.

263 / 289
Services et rseaux 5.0 Alain Bron

22.1 Les nouveauts essentielles

Adressage sur 128 bits (16 Bytes) au lieu de 32 bits (4 Bytes), hirarchique et auto
configurable.

3 types dadresses : unicast, multicast et anycast (disparition du broadcast).

En-tte simplifi de 40 Bytes, contenant 7 champs au lieu de 14.

Options facultatives et ne figurant plus dans l'en-tte, mais en extension de celui-ci (en-tte
doptions ou dextensions)

Suppression du checksum d'en-tte92.

Dfinition de flux particuliers (QoS).

Renforcement du rle dICMP.

Amlioration de la scurit (authentification, intgrit et confidentialit des donnes en option).

Routage partir de la source (SDRP - Source Demand Routing Protocol) autoris.

Fragmentation des donnes ralise uniquement par l'metteur, et non plus par les routeurs,
grce lutilisation du protocole PMTUd.

Support de Jumbo paquets (jumbograms) plus grands que 65'535 Bytes 93 ! (RFC 2675)

Mobilit des nuds travers diffrents rseaux

22.2 En-tte IPv6

0 31
version Trafic Class Flow Label
Payload Length Next Header Hop Limit

Source Address

Destination Address

319

Figure 22.2
En-tte IPv6 de 40 Bytes

92 Qui doit tre recalcul, en IPv4, par chaque routeur, le champ TTL tant modifi au passage !
93 Formellement 4 GB (!), car le champ longueur de len-tte optionnel hop by hop est construit sur 32 bits (232)

264 / 289
Services et rseaux 5.0 Alain Bron

Longueur
Champ Signification
(bits)

Version 4 Version du protocole (6)

Priorit ou classe de trafic (0 15)


0 - 7 : trafic supportant un ralentissement de dbit ( 0
Trafic Class 8 le moins sensible, 7 le plus sensible)
8 - 15: trafic temps rel, ncessitant un dbit
constant (8 le moins urgent, 15 le plus urgent)

No unique choisi par la source, pour un flux donn.


Le routeur peut utiliser ce no pour identifier et traiter
Flow Label 20 des flux de manire particulire (RSVP - Resource
reSerVation Protocol) ou viter de devoir recalculer
la route chaque paquet, par exemple.
Longueur des donnes utiles, sans l'en-tte ; 65'535
Payload Length 16
max
Mme fonction que le champ protocole d'IPv4:
Next Header 8 permet de spcifier le type de donnes suivant len-
tte IPv6 (extensions ou couche 4)

Mme fonction que le champ TTL d'IPv4: permet


Hop Limit 8
d'viter les boucles. Exprim en nombre de routeurs.

Source Address 128 Adresse source

Destination Address 128 Adresse destination

Figure 22.3
Les champs de l'en-tte IPv6

En-tte IPv6
Couche 4
Next Header = TCP

En-tte IPv6 En-tte ROUTING Couche 4


Next Header = ROUTING Next Header = TCP

En-tte IPv6 En-tte ROUTING En-tte FRAGMENT Couche 4


Next Header = ROUTING Next Header = FRAGMENT Next Header = TCP

Figure 22.4
Enchanement d'extensions

Next header (8 bits) Longueur des options (8 bits) Options (long. variable)

Type de loption (8 bits) Longueur donnes (8 bits) Donnes de loption (long. variable)

Figure 22.5
Format dune extension (n Bytes) et
format des options (TLV Type-Length-Value)

265 / 289
Services et rseaux 5.0 Alain Bron

22.2.1 Extensions (ou en-ttes optionnels)


Les extensions prennent place aprs l'en-tte IPv6, par l'intermdiaire den-ttes supplmentaires
et optionnels. Le champ Next Header permet de prciser quelle est lextension suivante, ou le
protocole de couche 4.

Si le Next Header vaut 59, il ny ni extensions supplmentaires, ni payload (couche 4).

Le champ Next Header est construit sur la base des numros de protocoles, tels quutiliss sous
IPv4 et dfinis dans le RFC 1700 (TCP=6, UDP=17).

Les extensions doivent tre traites dans lordre de chanage, et ne sont pas traits par les
nuds intermdiaires, lexception de len-tte Hop-by-Hop.

Chaque extension comporte une ou des options et a une longueur de n Bytes.


La valeur du champ type de loption permet de dfinir la manire de traiter loption.

Extensions

[0] Hop-by-Hop Header L'information (options) de ce Header doit tre examine par tous les
nuds traverss.

[1] ICMP Header TCP, RFC 792

[6] TCP Header TCP, RFC 793

[43] Routing Header Dtermine la manire dont la route dfinie par le nud source sera
traite par les routeurs.
Si la route est stricte, le chemin spcifi doit tre suivi, si la route est
lche, seuls les routeurs obligatoires sont prciss.
Il peut galement tre prcis si le chemin de retour doit tre
identique ou s'il doit tre recalcul par le nud destinataire.

[44] Fragment Header Dans le cas o les donnes sont plus longues que le MTU de 1500
Bytes, elles sont dcoupes en fragments. Les options de ce champ
indiquent si les donnes sont fragmentes, la position (offset) du
fragment et une information prcisant si un autre fragment suit.
Contrairement IPv4, seul le nud source peut fragmenter des
donnes.

[51 ] Authentication Hd. Mcanisme permettant au destinataire de s'assurer de l'identit de la


source (authentification et intgrit grce au calcul d'une empreinte
de type md5 l'aide de 2 cls prives, utilise qu'entre ces deux
nuds).

[50 ] Privacy Header Mcanisme de chiffrement assurant la confidentialit des donnes.

[59] Null Pas den-tte suivant

[66] Destination Header L'information (options) de ce Header ne concerne que le nud final.

266 / 289
Services et rseaux 5.0 Alain Bron

When more than one extension header is used in the same packet, it is
recommended that those headers appear in the following order:

IPv6 header
Hop-by-Hop Options header
Destination Options header
Routing header
Fragment header

Authentication header
Encapsulating Security Payload header
Destination Options header
upper-layer header
RFC 2460

22.2.2 Exemple dextensions chaines


Lextension fragment est chane par la valeur 44 du champ Next Header de len-tte prcdent,
et a toujours une longueur de 8 Bytes (64 bits).

rse
Next header (8 bits) rserv Fragment Offset M
rv

Identification du Fragment

Figure 22.6
Format de lextension Fragment

Figure 22.7
Chanage dextensions

267 / 289
Services et rseaux 5.0 Alain Bron

22.3 L'adressage IPv6

L'adressage sur 128 bits permet de dfinir 2128 adresses, soit environ 3,4x1038 adresses ...

La convention de reprsentation des adresses IPv6 se base sur l'emploi de 8 blocs de 16 bits,
exprims en hexadcimal et spars par le caractre : (donc 39 caractres en tout).

1FFF:0000:0A88:85A3:0000:0000:AC1F:8001

Cependant, la notation dcimale pointe en vigueur avec IPv4 est autorise pour les 32 derniers
bits de l'adresse IPv6 :

1FFF:0000:0A88:85A3:0000:0000:172.31.128.1

Mme si la ressemblance avec une adresse IPv4 classique semble notable, aucun rapport direct
entre une adresse IPv6 et une adresse IPv4 ne peut tre tablie.

Il est galement possible d'omettre des caractres 0 superflus :

1FFF:0:A88:85A3:0:0:172.31.128.1

De mme, une suite de n x 4 caractres 0 (hexadcimal) conscutifs peut tre omise ; pour viter
toute ambigit, la squence :: ne peut tre utilise quune seule fois, mais en fonction du
contexte, cette squence peut signifier :0000: ou :0000:0000:, par exemple :

1FFF:0:A88:85A3::172.31.128.1
ou
1FFF::A88:85A3:0:0:172.31.128.1

L'usage de caractres [ ] permet l'utilisation d'une adresse IPv6 en tant que nom d'hte

http://[1FFF:0:A88:85A3:0:0:AC1F:8001]/index.html
(avec no de port par dfaut)

http://[1FFF:0:A88:85A3:0:0:AC1F:8001]:8001/index.html
(avec no de port 8001)

22.3.1 Masque de rseaux et sous-rseaux.


Le masque de rseaux ou sous-rseaux a la mme signification que sous IPv4 et permet de
dlimiter un ensemble d'adresses ayant le mme prfixe binaire.
La notation utilise spcifie, l'aide du caractre /, le nombre de bits constituant la partie rseau,
exprim en dcimal (notation CIDR de IPv4)

2001:6b0:1:1a0:: / 59

reprsente les adresses comprises dans l'intervalle suivant [figure 22.26]:

2001:6b0:1:1a0:0:0:0:0 2001:6b0:1:1af:ffff:ffff:ffff:ffff

268 / 289
Services et rseaux 5.0 Alain Bron

22.3.2 Diffrentes portes et types d'adresses


Si les classes d'adresses n'existent pas avec IPv6 (classless), le prfixe des adresses IPv6
permet de hirarchiser diffrents types d'adresses ayant chacune une porte dfinie ( rayon
daction ou scope).

La porte dune adresse IPv6 dtermine son domaine dunicit et de validit : ladresse de
bouclage (loopback) a une porte limite lhte local, par exemple.

Ladressage IPv6 en usage sur Internet (type Unicast Global) peut tre considr comme un
sous-rseau dfini par le prfixe 2000:: / 3

(avec un masque sur les 3 premiers bits; 0x2 hexa = 0010 sous-rseaux possibles: 0010 et
0011, donc toutes adresses IPv6 commenant par 2xxx ou 3xxx).

2000:: / 3 Global unicast.


En vigueur sur Internet

2002:: / 16 Adresses IPv4 compatibles (6to4).


Permet d'encapsuler un paquet IPv6 dans un paquet
IPv4 (tunnel permettant deux machines Pv6 de
communiquer travers un rseau IPv4).
2002::IPv4 2002::145.232.12.56 / 16

3ffe:: /16 Adresses 6bone.


Adresses exprimentales pour backbone IPv6

fe80:: / 10 Adresses de lien local


Adresses obtenues automatiquement est n'ayant
qu'une existence locale (mme rseau physique,
niveau 2 OSI).
Une telle adresse n'est pas prise en charge par les
routeurs (adresses IPv4 de type APIPA)

fec0:: / 7 Adresses de site local.


Adresses n'tant pas routes sur Internet (= adresse
prive IPv4).

ff00:: / 8 Adresses de multicast.


ff02::1 Multicast all nodes
ff02::2 Multicast router solicitation

::ffff:IPv4 Adresses IPv4 mappes.


Permet une machine IPv6 de communiquer avec une
machine IPv4
Par exemple ::ffff:10.192.16.34

::1 Adresse de loopback.

:: Adresse indtermine.
Utilise dans la phase transitoire d'obtention d'une
adresse.

269 / 289
Services et rseaux 5.0 Alain Bron

22.3.3 Adressage de Lien local


Une adresse de lien local (use address), commenant par fe80:: /64, n'a une existence que
strictement locale et ne concerne que l'ensemble des machines ou des interfaces connectes
directement au niveau 2 OSI, sans routeur intermdiaire (sa porte est donc limite au rseau
local Ethernet, par exemple, et s'arrte au premier routeur).

Une adresse de lien local correspond une adresse de type APIPA94 (169.254.0.0)

La syntaxe add_IPv6%interface permet d'expliciter l'interface (au sens physique du


terme) utiliser ( ...:ca02:%2 interface 2)

F E 8 0

1111 1110 10 00 0000000 ..... 00000 Interface ID

10 bits 54 bits 64 bits

Figure 22.8
Adresse de lien local

22.3.4 Adressage de Site local


Une adresse de site local (RFC 4193), prfixe par fc00:: /7, n'a une existence qu'au sein
d'un rseau local IPv6 et n'est pas route sur l'extrieur.

Une adresse de site local IPv6 correspond une classe dadresse prive sous IPv4.

Les 7 premiers bits dfinissent une adresse de site local, les 40 bits suivants dterminent le
Global-ID local , alors que les 16 bits suivants permettent dadresser des sous-rseaux
locaux.

Le RFC 4193 prcise que le Global-ID local doit tre assign par un mcanisme de
gnration alatoire, afin dviter que des rseaux de type site local puissent tre mis
fortuitement en prsence (fusion de deux entreprises ayant choisi le mme Global-ID, accs par
VPN entre diffrents rseaux, etc.)

Figure 22.9
Adresse de site local (fc00 :: /7 ), Global-ID alatoire et 16 bits de sous-rseaux locaux

94 Automatic Private Internet Protocol Addressing ou IPv4LL (IPv4 Link-Local Addresses), RFC 3927

270 / 289
Services et rseaux 5.0 Alain Bron

22.3.5 Adressage Global Unicast.


Les adresses de type Global Unicast sont les adresses utilisables sur Internet.

Une adresse Global unicast correspond une classe dadresse publique sous IPv4.

Le plan d'adressage utilis (AGU - Aggregatable Global Unicast) permet l'agrgation des
adresses IPv6, de structurer gographiquement lespace d'adressage public et de diminuer la
taille des tables de routage.

2001:4C00::/23 RIPE NCC 17 Dec 04


2001:5000::/20 RIPE NCC 10 Sep 04
2A00:0000::/12 RIPE NCC 03 Oct 06
2001:4200::/23 AfriNIC 01 Jun 04

Figure 22.10
Exemples95 d'attribution diffrents RIR (RIPE NCC (Europe) et l'AfriNIC (Afrique))

Dans le cas d'une adresse de type Unicast Global, trois niveaux hirarchiques sont dfinis par le
RFC 3587 :

Topologie publique (prfixe sur 48 bits) niveau provider global


TLA (Top Level Aggregation) +
prfixe FAI global= RIR
NLA (Next Level Aggregator)
prfixe FAI local

Topologie de site (prfixe sur 16 bits) niveau rseau d'entreprise ou


provider local
SLA (Site Level Aggregation)
- subnet

Topologie d'interface (prfixe sur 64 bits) niveau machine


Adresse MAC ou EUI-64
- interface

95 (http://www.iana.org/assignments/IPv6-unicast-address-assignments).

271 / 289
Services et rseaux 5.0 Alain Bron

48 bits

3 bits 45 bits 16 bits 64 bits 64 bits

Prfix global Subnet ID


0 0 1 (TLA + NLA) (SLA ID)
Interface ID

Figure 22.11
Topologie publique (Unicast global - prfixe 2000:: / 3), selon le RFC 3587

Ces plages d'adresses, attribues par l'IANA aux RIR96 (Regional Internet Registries) sont
ensuite segmentes et attribues directement aux diffrents oprateurs rgionaux (LIR97) ou par
l'intermdiaire d'un organisme national (NIR98).

Le RFC 6177 propose deux modes d'attribution des adresses globales, en fonction notamment
de la taille du rseau demandeur, chaque RIR fixant ses propres critres dattribution.

Attribution directe par un RIR: Provider Independant Adressing (PI)


Attribution par un provider local: Provider Assigned Adressing (PA)

Figure 22.12
Attribution de type PA et PI

De mme, chaque RIR, puis chaque provider local (LIR), dfinit le masque qui sera utilis pour
distribuer ses espaces d'adressage.

22.3.6 Structure gnrale d'une adresse IPv6 Global Unicast


IPv6 utilise un adressage classless : l'usage actuel recommande d'affecter les 64 derniers bits de
l'adresse IPv6 l'adresse d'interface (264 adresses d'interface par (sous-)rseau)

Les 64 premiers bits reprsentent l'adresse rseau et est compose d'un prfixe, dfinissant le
type d'adresse et d'une seconde partie, le GRP (Global Routing Prefix) pouvant reprsenter
diffrents niveaux hirarchiques (providers) ainsi qu'une zone dfinissant potentiellement des
sous-rseaux (subnets).

96 Internet Assigned Numbers Authority (sous le contrle del'ICANN - Internet Corporation for Assigned Names and Numbers) et
Regional Internet Registries
97 Local Internet Registries
98 National Internet Registries

272 / 289
Services et rseaux 5.0 Alain Bron

Cas d'une adresse de type global unicast (2000::/3) :

Figure 22.13
Structure d'une adresse IPv6 de type global unicast, 3 niveaux : GRP, subnet, interface

La zone GRP (Global Routing Prefix) de l'adresse constitue la partie utile pour router le paquet
jusqu'au rseau final MyNet : adresse externe (publique) du rseau, telle que perue depuis
Internet, par exemple.

Le champ subnet ID est utilis pour dfinir les sous-rseaux du rseau MyNet : adresse interne.

L'usage actuel recommande l'affectation de 16 bits au champ subnet (216 sous-rseaux


possibles), ce qui implique un rseau final dfini par un masque de 48 bits (/48).

Contrairement IP v4, les sous-rseaux IPv6 ne sont pas, selon lusage actuel, dfinis laide de bits
pris sur la partie nud de ladresse.

Les 64 bits de l'interface assurent la livraison au nud destinataire : adresse interne.

Le GRP du rseau MyNet, d'une longueur usuelle de 45 bits (48 -3 bits de prfixe), peut tre
hirarchis par plusieurs champs de taille variables, en fonction des diffrents providers desquels
dpend ladresse :

Figure 22.14
Structure d'une adresse IPv6 du rseau MyNet, avec GRP 3 niveaux :
RIR + LIR + rseau final

273 / 289
Services et rseaux 5.0 Alain Bron

22.4 Cohabitation entre IPv6 et IPv4


Dans le monde de la technologie, il est trs rare de pouvoir faire table rase du pass, et
remplacer compltement, et dune seule fois, une ancienne technologie par une nouvelle : il faut
en gnral compter avec une priode de transition pendant laquelle les deux technologies
doivent cohabiter, ce qui rend ces volutions technologiques dautant plus complexes mettre en
uvre.

22.4.1 Tunnels 6to4 et 6in4


Ces techniques permettent deux nuds IPv6 de communiquer au travers d'un rseau IPv4 en
encapsulant les paquets IPv6 dans des paquets IPv4 travers un tunnel (automatique ou
configur).

Le rseau IPv6 est adress sur la base de ladresse IPv4 de lextrmit du tunnel.

Dans un tunnel automatique 6to4, ladresse IPv6 du rseau est dfinie avec un en-tte 2002 ::
/16, auquel est ajout ladresse IPv4. Les adresses IPv6 des nuds du rseau ainsi dfini
peuvent utiliser nimporte quelle adresse dfinie laide des 80 derniers bits (16 + 32 + 80 =128)

Ainsi ladresse IPv4 dextrmit de tunnel 145.232.12.56 correspond ladresse IPv6 de


rseau 2002:91E8:C38::/48 99. Les 80 derniers bits permettent dfinir les nuds du rseau
IPv6.

Figure 22.15
Tunnel automatique 6to4
permettant dadresser 280 nuds IPv6 avec une seule adresse IPv4

Le mode 6in4 ncessite la configuration explicite dun tunnel

99 Avec 91E8 0C38 = 145.232.12.56 converti en hexa

274 / 289
Services et rseaux 5.0 Alain Bron

Dans les 2 cas, le numro du protocole du point de vue IPv4 est 41.

Dans le cas o le MTU vaut 1500, la taille du MTU effectif utilisable par le nud IPv6 est de 1480
(1500 20 Bytes de len-tte IPv4).

22.4.2 Double pile


Lutilisation dune double pile (dual-stack) de protocoles (IPv4 et IPv6) permet dintgrer un nud
un rseau supportant les deux versions dIP.

Dans ce cas, chaque pile gre ces propres mcanismes et utilise sa propre logique dadressage.

Dans cette configuration particulire, et en fonction de limplmentation des deux piles, il se peut que le
trafic des couches 3 et suprieures soit dupliqu, et encapsul dans des paquets IPv4 et IPv6.

Une trame Ethernet transportant un paquet IPv6 utilise un Ethertype gal 0x86dd

Figure 22.16
Double pile IPv4 et IPv6

Adresses IPv4 mappe IPv6


Adresse interne permettant une application IPv6 native d'un nud de communiquer avec un
nud IPv4. Une adresse mappe, de format ::FFFF:a.b.c.d , ne devrait jamais tre
transmise sur un rseau. Ladresse mappe de 128 bits est utilise par lapplication, puis
transmise la couche IPv4 pour transmission.

Adresse IPv4 compatible IPv6


Ces adresses IPv6, de format ::a.b.c.d, sont utilises dans le cadre dun tunnel automatique.

275 / 289
Services et rseaux 5.0 Alain Bron

22.4.3 Unicast, anycast et multicast.


IPv6 supporte les adresses de type unicast et anycast.

Une adresse de type anycast, tout comme une adresse multicast, est destine un groupe de
destination mais ne sera rellement achemine qu' seul de ses membres (par exemple le plus
proche du point de vue du mtrique dfinissant sa route).

unicast broadcast

multicast anycast

Figure 22.17
unicast, broadcast, multicast et anycast

Les adresses multicast prennent de limportance avec le protocole IPv6, puisquelles remplacent
notamment les adresses de type broadcast.

Les adresses multicast sont regroupes en fonction de leur scope ( rayon daction ou
porte ) et reprsentent toujours une adresse source. Les routeurs dcident de transmettre les
paquets multicast sur la base de leur scope.

Les adresses multicast dbutent par le prfixe

ff00::/8

les 4 bits les moins significatifs du 2me Byte (ff0N::) identifient le scope de l'adresse :

ff01 (....0001), l'adresse multicast est locale l'hte,


ff02 (....0010), l'adresse multicast est locale au lien (rseau Ethernet),
ff05 (....0101), l'adresse multicast est locale au site (rseau IP),
ff08 (....1000), l'adresse multicast est locale l'organisation,
ff0E (....1110), l'adresse multicast est globale (world wide ...).

Les adresses multicast IPV6 well known sont attribues et rpertories par lIANA :
http://www.iana.org/assignments/IPv6-multicast-addresses/IPv6-multicast-addresses.xml

276 / 289
Services et rseaux 5.0 Alain Bron

22.5 Configuration des adresses IPv6 dinterface


Chaque interface peut utiliser plusieurs adresses IPv6, typiquement une adresse de lien local
complte par une adresse de type Global unicast, par exemple.

Une nouvelle tendance consiste dfinir deux adresses de Global unicast par interface (RFC
3041), une adresse attribue de manire durable et servant au trafic entrant, et une adresse
temporaire utilise pour les connexions sortantes : cette adresse tant change rgulirement,
elle permet dviter le traage bas sur ladresse IPv6 source.

Figure 22.18
Interface et addresses IPv6 sous Windows
(adresse de Lien-local et 2 adresses Global unicast)

Diffrents modes d'attribution des adresses IPv6 (Interface ID) ont t dfinis.

277 / 289
Services et rseaux 5.0 Alain Bron

22.5.1 Configuration manuelle.

Figure 22.18
Configuration IPv6 sous Windows

22.5.2 Mode auto-configuration sans tat (stateless).


En mode auto-configuration l'adresses IPv6 est construite sur la base de l'adresse Ethernet
(MAC) 48 bits ou de l'adresse IEEE EUI-64100 64 bits si elle existe.

Dans le cas d'une adresse MAC, un champ FFFE est insr dans l'adresse entre la partie
entreprise (e) et la partie locale (o) : ee:ee:ee:FF:FE:oo:oo:oo pour obtenir une adresse de 64
bits.

Figure 22.19
Adresse IP de lien local fe80 :...
et adresse IP DNS de site local dec0 :...

100 Comme pour l'adresse MAC, une partie des bits (les 24 premiers) sont attribus un fabricant. Les adresses EUI-64 sont
notamment utilises par les technologies IPv6, ZigBee et FireWire.

278 / 289
Services et rseaux 5.0 Alain Bron

Linsertion de ladresse MAC dans le champ Interface-ID pose la question de la traabilit des
flux IPv6, puisque par dfaut, une adresse MAC est lie un matriel prcis et quune adresse
de type Global unicast est directement utilise sans translation (NAT) en sortie du rseau local.

22.5.3 Mode auto-configuration avec tat (stateful).


Attribution via un serveur DHCPv6.

Une fois l'adresse obtenue, le nud gnre un message multicast ICMP Neigbhor Discovery afin
de s'assurer que cette adresse est bien unique sur le rseau considr.
Si aucune rponse nest reue, cette adresse est considre comme unique et utilisable.

L'tape suivante consiste dcouvrir le(s) routeur(s) du rseau, l'aide d'un nouveau message
multicast (router solicitation) ou en se mettant l'coute des messages envoys priodiquement
par les routeurs (router advertisement).

Cette opration permet notamment d'obtenir le prfixe valable sur ce (sous-)rseau, qui,
concatne avec sa propre adresse, donnera l'adresse IP complte (au rseau de l'entreprise ou
IPv6, en fonction du prfixe).

22.5.4 Dure de vie des adresses.


L'attribution des adresses aux machines est temporaire et a une dure de vie par dfaut de 30
jours.

Une adresse dont la dure de vie est chue devient invalide et ne doit plus tre utilise.
La dure de vie d'une adresse peut tre prolonge ou porte linfini ; ainsi, une adresse de type
lien local a toujours une dure de vie illimite.

adresse valide adresse invalide

prfr dprci

temps

attribution de
ladresse

Figure 22.20
tat d'une adresse IP en fonction du temps

Une adresse qui passe dans l'tat transitoire dprci ne peut pas tre utilise pour initier une
communication, mais seulement pour les transactions en cours.

Lobjectif est de permettre une transition entre deux adresses IPV6, en limitant les risques
dinterruption de service (ce qui serait le cas en cas de changement brusque dadresse).

Le RFC 3041 prconise lutilisation dadresses secondaires de courte dure de vie, afin de
minimiser les possibilits de traabilit des flux IPv6.

279 / 289
Services et rseaux 5.0 Alain Bron

22.6 ICMPv6
Le rle du protocole ICMP (Internet Control Message Protocol, RFC 4443, 4884) a t renforc,
notamment en rhabilitant des fonctions prvues dans sa premire version (ICMP v4), et
abandonnes ensuite.

ICMP dans sa version 6 reprend notamment les actuelles fonctions dICMP (v4), dIGMP et
dARP.

Les fonctions ICMPv6 Redirect, Time Exceeded (TTL exceeded) et Destination unreachable sont
identiques que sous ICMP (v4).

Les fonctions lies au multicasting (protocole IGMP) ont t intgres via 3 nouveaux types de
messages ICMP : Group Membership Query, Group Membership Report et Group Membership
Reduction.

Type Message
1 Destination Unreachable
2 Packet Too Big
3 Time Exceeded
4 Parameter Problem
128 Echo Request
129 Echo Reply
130 Group Membership Query
131 Group Membership Report
132 Group Membership Reduction
133 Router Solicitation
134 Router Advertisement
135 Neighbor Solicitation
136 Neighbor Advertisement
137 Redirect

Figure 22.21
Messages ICMPv6
http://www.iana.org/assignments/icmpv6-parameters

Les nouveauts dICMPv6 prennent la forme des messages ICMP/NDP Router Solicitation,
Router Advertisement et Neighbor Solicitation, Neighbor Advertisement.

280 / 289
Services et rseaux 5.0 Alain Bron

22.6.1 Neighbor Discovery Protocol (NDP)


NDP (Neighbor Discovery Protocol RFC 4861) est un protocole de service, utilisant des
messages ICMPv6.

Router Solicitation, Router Advertisement.

Prvus dans le protocole ICMP v4, mais pas utiliss, les messages NDP Router Solicitation et Router
Advertisement permettent un nud de connatre les routeurs disponibles sur le rseau.

La requte NDP est transmise via un multicast de type all-routers : FF02:0:0:0:0:0:0:2


(FF02::2)

Figure 22.22
Message multicast NDP Router Solicitation, bas sur ICMPv6

La rponse NDP peut tre transmise ladresse de multicast all-nodes : FF02:0:0:0:0:0:0:1


(FF02::1)

Figure 22.23
Message multicast NDP Router Advertisement, bas sur ICMPv6

281 / 289
Services et rseaux 5.0 Alain Bron

Neighbor Solicitation, Neighbor Advertisement.

Les messages NDP Neighbor Solicitation et Neighbor Advertisement remplacent le protocole ARP.

La requte NDP fait appel un message multicast de type solicited-node :

FF02:0:0:0:0:1:FF00::/104 complte par les 24 derniers bits de ladresse physique de la


cible.

La rponse est transmise via une trame unicast.

Les informations collectes sont stockes dans une table locale (Neighbor Cache Entry)101

Figure 22.24
Message multicast NDP Neighbor Solicitation, bas sur ICMPv6

La rponse NDP peut tre transmise ladresse de multicast all-nodes : FF02:0:0:0:0:0:0:1


(FF02::1)

Figure 22.25
Message multicast NDP Neighbor Advertisement, bas sur ICMPv6

101 Accessible via la commande arp a sous Windows

282 / 289
Services et rseaux 5.0 Alain Bron

22.7 UPD / TCP


Afin de garantir une compatibilit entre IPv4 et IPv6, les protocoles TCP et UDP nont pas subis
de modifications.

Du point du dveloppement des applications, les sockets utiliss doivent tre compatibles IPv6 et les
appels redfinis.

Figure 22.26
Message http encapsul dans un segment TCP
sur IPv6 tunnel dans IPV4

22.8 Mobilit
IPv6 est prvu pour faciliter la mobilit des nuds entre diffrents rseaux.
A une adresse principale (ou adresse mre) sera associ une adresse temporaire du rseau
daccueil.

Dans un premier temps, par le biais dun des routeurs du rseau mre (agent mre) qui se
chargera de rediriger les donnes
Dans un second temps, via un tunnel menant ladresse du rseau daccueil.

283 / 289
Services et rseaux 5.0 Alain Bron

Lorsque le nud mobile change de rseau, il en informe son agent mre et lui transmet sa
nouvelle adresse temporaire.

Lorsque seule ladresse mre est connue par un expditeur, les donnes seront envoyes cette
adresse, lagent mre se chargeant dintercepter les paquets et de les acheminer ladresse
temporaire du nud mobile.
Ladresse mre pourra ainsi continuer tre utilise de manire transparente par tous les
interlocuteurs du nud mobile.

Lorsque le nud mobile reoit des donnes tunnele de la part de son agent mre, il renseigne
lexpditeur sur son adresse temporaire.
De cette manire, les paquets suivants seront envoys directement ladresse temporaire du
nud mobile.

284 / 289
Services et rseaux 5.0 Alain Bron

Rseau mre

Adresse IPv6
mre

Adresse IPv6
temporaire
Racheminement Rseau daccueil
via un tunnel
Rseau mre

Communique ladresse
temporaire lexpditeur
Agent
mre

Adresse IPv6
temporaire
Rseau daccueil

Rseau mre

Figure 22.27
Mobilit avec IPv6

285 / 289
Services et rseaux 5.0 Alain Bron

22.9 DNSv6
La rsolution de nom en place avec IPv4 est galement utilise dans un contexte IPv6, les
serveurs de nom devant supporter un type denregistrement AAAA, permettant dassocier un nom
une adresse IPv6.

Figure 22.28
Ajout dun enregistrement AAAA IPv6, DNS Windows 200x

22.10 DHCPv6
Le protocole DHCPv6 (RFC 3315) rpond aux mmes usages que la version utilise dans un
environnement IPv4 et permet la mise en uvre le mode stateful address autoconfiguration
protocol.

Les numros de ports UDP utiliss sont le 546 pour le client et le 547 ct serveur, et un relais
DHCPv6 est ncessaire si client et serveur sont spars par un routeur.
Les requtes DHCPv6 sont transmises sous forme de multicast
All_DHCP_Relay_Agents_and_Servers (FF02::1:2).

Un client peut chercher obtenir une adresse IPv6, ou des informations de configuration.

Le client envoie un message Solicit pour trouver un serveur DHCPv6 actif.


Les serveurs disponibles rpondent laide dun message Advertise.
Le client choisi un des serveurs et lui envoie un message Request.
Le serveur rpond avec un message Reply contenant ladresse IPv6 et les autres paramtres
de configuration.

286 / 289
Services et rseaux 5.0 Alain Bron

Un client ne dsirant obtenir que des informations de configuration transmet un message


Information-Request sous forme de multicast.

Figure 22.29
Message DHCPv6 Solicit, sous forme de multicast FF02 ::1 :2

22.11 Routage
Les principes fondamentaux du routage IPv6 sont les mmes que pour les autres protocoles,
dont IPv4.

RIPng (RFC 2080) qui est limplmentation dun interior gateway protocol de type distance vector,
reprend les mcanismes de RIPv2, tout en assurant le support dadresses et de masques IPv6
de 128 bits.6.

OSPFv3 (RFC 2740) est une alternative, de type link state, de protocole de routage supportant
IPv6.

22.12 NAT v6
La question de lutilisation ou non de mcanismes de translation dadresses (NAT) fait dbat et
nest pas rgl.

Les mcanismes de translation dadresses constituent aujourdhui une des premires barrires
de scurit des rseaux (adresse masquerading), laquelle sont attachs les administrateurs
rseaux, alors le nombre dadresses IPv6 disposition permet enfin dassurer une
communication directe point point entre nuds distants.

287 / 289
Services et rseaux 5.0 Alain Bron

22.13 Comparaison IPv4 et IPv6

IPv4 (RFC 791) IPv6 (RFC 2460)

Adresses 32 bits. 128 bits.

Hirarchie Faible : 2 ou 3 niveaux. Forte, lchelle mondiale.

Remplac par multicast ;


Broadcast 1 dans la partie concerne
Multicast all-nodes : ff02::1
2000 :..., 2001 :...,
Adresses unicast Classes A, B ou C
2002 :...
Adresse de
127.0.0.1 ::1
bouclage local

Adresses locales 169.254.0.0 fe80:: / 10

10.0.0.0 / 8
Adresses prives 172.16.0.0 172.31.0.0 / 16 FEC0::/10
192.168.0.0 / 24
Simple, 40 Bytes, avec en-tte(s)
En-tte Complexe, 40 Bytes ou plus.
additionnel(s) ventuel(s)
Passage IP vers ARP (RFC 826) ; ICMP neighbour discovery ;
Ethernet Ethertype 0x800 Ethertype 0x86dd.
Manuelle, autoconfiguration ou
Configuration Manuelle ou DHCP.
DHCP v6.

Gestion multicast IGMP (RFC 2236). ICMP v6.

Scurit IPSec (RFC 2401) Natif, en-tte supplmentaire

Mobilit N/A Natif, en-tte supplmentaire

Taille maximale
216 = 65'535 Bytes = 64 kB 232 = 4294967'295 Bytes = 4GB
des datagrams

DNS RR A RR AAAA

288 / 289
Adresse et masque IPv6
bit no 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63

Figure 22.26
masque 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0
ip hexa 2 0 0 1 0 6 b 0 0 0 0 1 0 1 a 0
ip binaire 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 1 0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 1 0 0 0 0 0

289 / 289
0 0 0 0 0 0 0 1 1 0 1 0 0 0 0 0
ip posssibles binaires
0 0 0 0 0 0 0 1 1 0 1 1 1 1 1 1
ip posssibles a 0
2 0 0 1 0 6 b 0 0 0 0 1 0 1
hexa b f
Services et rseaux 5.0 Alain Bron