SlideShare une entreprise Scribd logo
1  sur  8
Faire communiquerlesmachinesentre elles,lacouche 2
La couche 1 n'a plusde secretspourvous: voussavezcâblerunréseauetmaîtrisezle matériel
associé.
Maintenant,il seraitbiende pouvoirenvoyerdesinformationsd'une machineàune autre,de
s'ouvrirau grand monde,de rêverd'unmonde de communication...OKje m'emporte.
Commençonsparcomprendre lacouche 2 et nousaurons déjàfaitungrand pas !
Vousallezvoirque dansce chapitre etle suivantnousallonsaborderbeaucoupde notionsqui vous
serontutilesenréseau.Il esttrèsimportantde bienmaîtrisercesnotions,ne négligezdoncpasces
chapitresetlessuivants.
La couche 2, sesrôles
Comme nousl'avonsvudans unchapitre précédent,lacouche 2 se nomme la couche liaison,ouplus
précisément,liaisonde données.Cependant,ce qu'il ya à retenirn'estpasdans le nom, maisbien
dans le rôle.
Le rôle donné àla couche 2 estde connecterdesmachinessurunréseaulocal.
Plusexactement,l'objectif estde permettre àdesmachinesconnectéesensemblede communiquer.
Nousallonsdoncdansce chapitre voirce qu'il fautmettre enœuvre pourétablirune
communicationentre deux ouplusieursmachines.
Ceci étant,nousallonsunpeuvite enbesogne,carla couche 2 possède unautre rôle importantqui
estla détectiondeserreursde transmission.J'ai bienditdétection,etnonpascorrection,la
différence estimportante,carlacouche 2 verra leserreurs,etfermeralesyeux surcelles-ci.
Si avec tout celaonn'arrive pas à parler,je n'ai plusqu'à changerde métier!
Un identifiant,l'adresseMAC
Pourparlerensemble quandnoussommesdeux,ce n'estpasbiencompliqué :je parle etl'autre
écoute (dumoinslaplupartdu temps...).
Dèsque le nombre de participantsaugmente,çadevientpluscompliqué,carl'onpeutvouloir
s'adresserà une personne enparticulierpourlui communiquerune informationsecrète.
En réseauc'estpareil,onveutparfoisparlerà toutle monde maisaussi,laplupartdu temps,parlerà
une machine enparticulier. Etpourpouvoirparlerà une machine enparticulier,il vabienfalloirêtre
capable de l'identifier.Leschercheursontdonccréé un identifiantparticulieràlacouche 2 qui
permettraitde distinguerlesmachinesentre elles,il s'agitde l'adresse MAC!
Waouh ! Une machine a donc une adresse MACpour être identifiée ?
Pas exactementenfait.Vuque noussommesencouche 2,etdonc encore prochesde lacouche 1,
l'adresse MACesten liaisonavecle matériel,etnotammentlacarte réseau.
L'adresse MAC est donc l'adresse d'une carte réseau.
Notationde l'adresse MAC
Un peude calcul binaire
Attention,sortezvoscerveaux,il vafalloirfaire ducalcul binaire.Etenréseau,onva enfaire
beaucoup,beaucoup.Doncautants'y mettre dèsmaintenant!
Euh, c'estquoi le binaire ?
Le binaire estunsystème de numérationenbase 2.Globalement,celaveutdire qu'onne peut
compterqu'avec1 et0, contrairementausystème de numérationdécimal que nousavons
l'habitude d'utiliserdanslequel onse sertdeschiffres de 0à 9.
Hima Bachirou Pas besoin
Maintenantque noussommesdesprosdu binaire,nouspouvonsnousattaqueràl'adresse MAC.
Sauf que l'adresse MACs'écrit enhexadécimal...
Quoi ? On se moque de nous,on travaille le binaire,onse saigne aux quatre veinesetonne s'ensert
même pas?
Mais si ! Car quandon a comprisle binaire,l'hexadécimal n'estpasbiencompliqué.À l'inverse du
binaire pourlequel nousn'avionsque 0et 1 comme chiffresànotre disposition,enhexadécimal
nousen avons16 !
Moi je connaisleschiffresde 0à 9, maisil existeraitd'autreschiffres?
Oui,enfaitnousutilisonssimplementlespremièreslettresde l'alphabetaprès9.En hexadécimal
nousavonsdonc :
Citation
0, 1, 2, 3, 4, 5, 6, 7, 8, 9... a, b,c, d, e etf !
Par exemple,10en hexadécimal s'écrita.
11 s'écritb, etc.
Tout nombre décimal peuts'écrire comme lasomme de puissancesde 16.
Je vaisvous épargnerlescalculs,maisle principeestle même.Notreadresse MACs'écriradoncen
hexadécimal.
En voici une pourl'exemple:00:23:5e:bf:45:6a
Codage de l'adresse MAC
Noussavonsmaintenantde quoi estcomposée l'adresse MAC,maispourlavoirplusendétail,nous
allonsdéjàvoirsataille.
L'adresse MAC estcodée sur 6 octets.
Un octet estune unité informatique indiquantune quantitéde données.
Par exemple,quandvousachetezundisque dur,vousconnaissezsataille ennombre d'octets.Un
disque 40 Go fera 40 gigaoctets,soit40 000 000 000 octets!
Un octet représente 8bits.Un bitestune valeurbinaire.
Comme nousl'avonsvuavant, une valeurbinaire peutêtre soit0,soit1. Un bit peutdonccoder
deux valeurs,deux bitspeuventcoderquatre valeurs,troisbits8valeurs,etc.Dansl'exemple de
deux bits,chacund'eux peutprendre lesvaleurs0ou1 ; quandon lescouple onpeutdonc prendre
lesvaleurs:00, 01, 10, 11
Ceci donne bien4 valeursdifférentes.Vouspouvezessayeravec3 ou 4 bitsde trouvertoutesles
combinaisonspossibles.
En fait,on endéduitque x bitspeuventcoder2x valeurs!
Ce qui nousdonne pourun octet,qui représente 8bits: 1 octet = 28 = 256 valeurs!
Un octet estdonc comprisentre 0 et...255 (puisqu'ondémarre à0)
Notre adresse MACest codée sur48 bits.Combiencelareprésente-t-ild'octetsetde valeurs
possibles (enpuissancesde 2) ?
1 octet= 8 bits,donc48 bits= 48/8 octets= 6 octets.
L'adresse MAC estcodée sur 6 octets.
Vuque l'adresse MACest codée sur48 bits,elle peutprendre 248 valeurs.Soit...281 474 976 710
656 valeurs!Soitplusde 280 mille milliardsd'adressesMACpossibles!Çafait beaucoup...
Trucs et astuces!
Si vous voulezavoirune idée de lavaleurdécimaled'une grande puissancede 2,c'est facile.
Prenonspourexemple248 :
248=210×210×210×210×28
Or, 210 vaut à peuprès1000 (1024 exactement).
Nousavonsdonc 248 = 1000 * 1000 * 1000 * 1000 * 256.
Soit256 mille milliards...facile,etplusbesoinde calculette!
Nousavonsdonc beaucoup,beaucoup...beaucoupd'adressesMAC.
Ça tombe bien,car chaque adresse MACva être unique aumonde.
Chaque carte réseaua donc sa propre adresse MAC,unique aumonde.
Commentc'estpossible,ça?On ne se trompe jamais?
Normalementnon.Unconstructeurqui fabrique descartesréseauvaacheterdesadressesMAC,ou
plusexactementdesmorceauxd'adressesMAC.
Les troispremiersoctetsde l'adresse représententle constructeur.
Ainsi,quandunconstructeurveutproduire lescartes,il achète troisoctetsqui lui permettrontde
donnerdesadressesàsescartes.Par exemple,j'achète lasuite de troisoctets:00:01:02. Toutesles
cartes réseauque je vaisproduire vontcommencerparcestroisoctets,par exemple:
00:01:02:00:00:01 ; puis: 00:01:02:00:00:02 ; etc.
Si je choisistoujourslestroisderniersoctetsdifférentspourlescartesque je produis,je suissûr
qu'aucune autre carte réseaun'aura lamême adresse MAC,car je suisle seul àposséderlestrois
premiersoctets00:01:02 etj'ai faitattentionàce que lestroisderniersne soientpasidentiques.
Récapitulons:
L'adresse MAC estl'adresse d'une carte réseau.
Elle estunique aumonde pourchaque carte.
Elle estcodée sur6 octets(soit48 bits).
Grâce à l'adresse MAC,je suisdonccapable d'envoyerdesinformationsàlacarte réseaud'une
machine !
Une adresse MACspéciale
Parmi lesadressesMAC,il y ena une particulière,c'estl'adressedanslaquelletouslesbitssontà1,
ce qui donne ff:ff:ff:ff:ff:ff.
Cette adresse estappeléel'adresse de broadcast.
L'adresse de broadcastest une adresse universellequi identifien'importequellecarte réseau.
Elle me permetainsi d'envoyerunmessage àtouteslescartesréseaux desmachinesprésentessur
monréseau,enune seule fois.
Toute machine qui reçoitune trame qui a, comme adresse MAC de destination,l'adressede
broadcast, considère que latrame lui estdestinée.
Et maintenant?
Maintenant,noussavonsrelierlesordinateursentreeux grâce àla couche 1 etlesidentifiergrâce à
l'adresse MACde couche 2.
Il seraitbiende définirunlangage pourpouvoirlesfaire communiquer!
Un protocole,Ethernet
Le langage de couche 2, c'est quoi ?
Nousallonsdevoirdéfinirunlangage pourcommuniquerentre machines.Ce langage permettrade
définirle formatdesmessagesque lesordinateursvonts'échanger.Etle gagnantest...Ethernet!En
réseau,ontraduitlangage par protocole,pourfaire pluspro.
Ethernetn'estpasle seul protocole de couche 2, maisil estde trèsloinle plusutilisé aujourd'hui.
À quoi sertun protocole ?
L'objectif desréseaux estde pouvoirs'échangerdesinformations.Étantdonné que nousdiscutons
entre desmachinestrèsdifférentes,qui elles-mêmesontdessystèmesd'exploitationtrèsdifférents
(Windows,MacOS, Linux,etc.),nousdevonscréerunlangage de communicationcommunpourse
comprendre.C'estle protocole.
Nousavonsvu que des0 etdes1 allaientcirculersurnoscâbles.Nousallonsdoncrecevoirdes
chosesdugenre : 001101011110001100100011111000010111000110001...
Ce qui ne veutpas dire grand-chose...tantque nousne nousentendonspassur leursignification.Le
protocole vaainsi définirquellesinformationsvontêtre envoyées,etsurtoutdansquel ordre.
Dans notre message,nousallonsaumoinsdevoirenvoyer:
l'adresse de l'émetteur;
l'adresse dudestinataire;
le message proprementdit.
Ainsi,nouspouvonstrèsbiendire que les48 premierscaractèresque nousallonsrecevoir
représententl'adresseMACde l'émetteur(puisque l'adresse MACfait48 bits) les48 suivants
l'adresse durécepteur,puisenfinle message.
Le protocole vadonc définirle formatdesmessagesenvoyéssurle réseau.
Plusexactement,nousallonsappelerce message,une trame.
La trame estle message envoyé surle réseau,encouche 2.
Format d'une trame Ethernet
Nousavonsdonné unformat d'exemple dansle paragraphe précédent,maisnousallonsvoirle vrai
formatutilisé.Intéressons-nousd'abordaux adressesMAC.Laquelle placerenpremier?L'émetteur
ou le récepteur?
Pourrépondre à cette question,nousallonsnousmettre danslapeaud'une machine qui
réceptionne unmessage.
Est-ce plusintéressantde connaître l'adresse de celuiqui nousenvoie le message,oucellede celui à
qui il estdestiné ?
Eh bienleschercheursontestimé qu'il étaitplusintéressantde connaître l'adresse dudestinataire,
car ainsi nous pouvonsimmédiatementsavoirsi le messageestpournousoupas. S'il estpour nous,
nousen continuonslalecture.S'il n'estpaspournous,ce n'est pasla peine de passerdutempsà le
lire...poubelle !
Nousallonsdoncpositionnerenpremierl'adresse MACdudestinataire,suivie de l'adresse MACde
l'émetteur(aussi appelée adresse MACsource).
Adresse MACDST (destinataire) Adresse MACSRC (source) Suite dumessage ???
Trame Ethernet
Et ensuite ?
Ensuite,nousavonsbesoind'une informationunpeu particulière.Pourlacomprendre,vousdevez
vousrappelerdumodèle OSI...Bond'accord,je vousaide avecun schéma(voirlafigure suivante)!
Nousavonsvu que,lorsde l'envoi d'une information,nousparcouronslescouchesde hautenbas
(voirlafigure suivante).
Noussommesdoncpasséspar lacouche 3 avant de passerpar la couche 2. La couche 3 peutdonc
indiqueràlacouche 2 quel estle protocole qui a été utiliséencouche 3.
Et c'est utile,carà l'arrivée,quandlacouche 2 de la machine réceptrice reçoitlesdonnées,qu'elle
voitque l'adresse MACde destinationestbienlasienne,elledoitenvoyerlesinformationsàla
couche 3, etdonc au bonprotocole de couche 3.
Il est doncnécessaire d'indiquerdanslatrame quel protocole de couche 3 a été utilisé quandle
message aété envoyé etqu'il atraversé lescouchesdumodèle OSIde hauten bas.
Notre trame devientdonc:
Adresse MACDST
(destinataire)
Adresse MACSRC
(source)
Protocole de couche
3
Suite dumessage
???
Trame Ethernet
Nousavonspresque tout!
Pourquoi presque ?!
Parce qu'il nousmanque l'essentiel :
l'informationàenvoyer;
nousn'avonstoujourspas réglé le problèmede ladétectiond'erreurs.
Pourl'information,nousallonslaplacerjuste aprèsle protocole de couche 3. De plus,nousallons
enchaîneravecle code de correctiondeserreurs,ouCRC.
Qu'est-ce que le CRC?
Le CRC estune valeurmathématiquequi estreprésentativedesdonnéesenvoyées.
En gros celaveutdire que c'est unnombre qui sera différentpourchaque message.
Imaginonsqu'une machine A envoieunmessage àune machine B.
Lors de l'envoi,A calcule le CRC(une valeurX) etle metà la finde la trame.
B reçoitle message etfaitle même calcul que A avec la trame reçue (une valeurY).
B compare la valeurqu'elle acalculée (Y) aveclavaleurque A avaitcalculée etmise àla finde la
trame (X).
Si ellessontégales,bingo!Latrame envoyée parA estbienidentique àlatrame reçue par B.
Si ellessontdifférentes,gloups!Il y a euune erreurlors de la transmission.Latrame reçue par B
n'estapparemmentpaslamême que celle envoyée parA.Il y a euun problème quelquepart,mais
nousl'avonsdétecté !
La trame complète
Nousavonsmaintenanttouslesélémentsde latrame etavonsdoncla trame complète :
Adresse MACDST
(destinataire)
Adresse MACSRC
(source)
Protocole de couche
3
Donnéesà
envoyer
CRC
Trame Ethernet
Quelle taille pourlatrame ?
Il y a desélémentsqui ne varientjamaisd'une trame àl'autre.L'ensemblede cesélémentsest
appelé en-tête ou,dansle casde lacouche 2, en-tête Ethernet.Ilssontindiquésici enrouge.
Adresse MACDST Adresse MACSRC Protocole de couche 3 Donnéesàenvoyer CRC
Trame Ethernet
Ceten-tête ne variantpas,nouspouvonsdéfinirsataille :
lesadressesMACfontchacune 6 octets;
le protocole de couche 3 est codé sur 2 octets;
le CRC estcodé sur 4 octets.
Ce qui donne untotal de 18 octetspourl'en-tête Ethernet.
Mais la trame a-t-elle besoind'une tailleminimale?Et d'une taille maximale ?
La réponse estoui.Lataille minimale permettrade garantirque,lorsd'une collision,lamachine
ayant provoqué lacollisiondétecteracelle-ci (l'explicationétantunpeucomplexe etpeuutileici,je
vousenferai grâce).
La taille minimale estde 64 octets,pourune trame Ethernet.
La raisonde la taille maximaleesttoutautre.
S'il n'y avaitpas de taille maximale,il seraitpossible qu'unemachine envoieune gigantesque trame
qui occuperaittoutle réseau,empêchantlesautresmachinesde communiquer.C'estpouréviterce
genre de problème qu'une taille maximale aété choisie.
La taille maximaleestde 1518 octets,pourune trame Ethernet.
Au passage,onse rendcompte que si onenlève les18octetsd'en-tête àla taille maximale,nous
tombonssurun chiffre rondde 1500 octetsde donnéespourlesdonnéesàenvoyer!
Noussavonsdonc maintenanttoutde latrame Ethernet! Récapitulonsunpeu,enobservantun
échange de donnéesentre deuxmachinesA etB.
Une applicationsurlamachine A veutenvoyer desdonnéesàune autre applicationsurune machine
B.
Le message parcourtlescouchesdumodèle OSIde hautenbas.
La couche 3 indique àla couche 2 quel protocole aété utilisé.
La couche 2 peutalors formerlatrame etl'envoyersurle réseau.
La machine Breçoitla trame et regarde l'adresse MACde destination.
C'estelle !elle litdonclasuite de latrame.
Grâce à l'informationsurle protocole de couche 3 utilisé,elle peutenvoyerlesdonnées
correctementàla couche 3.
Le message remonte lescouchesdumodèle OSIetarrive àl'applicationsurlamachine B.
Waouh ! Noussavonscommuniquerentre machinessurunréseaulocal !
Enfinpresque,carnousn'avonspas encore vucommentconnecterplusieursmachinesentreelles,et
celava se faire grâce à un matériel particulier...
on saitmaintenantque le rôle principal de lacouche 2 estde connecterlesmachinessurunréseau
local ;
elle permetaussi de détecterleserreurs;
le protocole utiliséencouche 2est le protocole Ethernet;
lescartesréseauont une adresse qui estl'adresse MAC;
l'adresse MACestcodée sur 6 octets,soit48 bits;
chaque adresse MACest unique aumonde ;
il existe une adresse particulière,l'adresse de broadcastqui permetde parleràtout le monde,
ff:ff:ff:ff:ff:ff ;
Vousconnaissezlesprincipesde lacouche 2 etnousallonsmaintenantétudierendétail
l'équippementqui permetde connecterlesmachinesentre elles,le switch.

Contenu connexe

En vedette

Informatica Educativa
Informatica EducativaInformatica Educativa
Informatica Educativaraul
 
Silofilter richtig auslegen. Von Jens Kampmeyer
Silofilter richtig auslegen. Von Jens KampmeyerSilofilter richtig auslegen. Von Jens Kampmeyer
Silofilter richtig auslegen. Von Jens KampmeyerInfastaub GmbH
 
Zur Zukunft Der Bibliotheken
Zur Zukunft Der BibliothekenZur Zukunft Der Bibliotheken
Zur Zukunft Der BibliothekenZukunftswerkstatt
 
Rudolf Mumenthaler, Kommunikation 2.0 Erfahrungen der ETH-Bibliothek mit Komm...
Rudolf Mumenthaler, Kommunikation 2.0 Erfahrungen der ETH-Bibliothek mit Komm...Rudolf Mumenthaler, Kommunikation 2.0 Erfahrungen der ETH-Bibliothek mit Komm...
Rudolf Mumenthaler, Kommunikation 2.0 Erfahrungen der ETH-Bibliothek mit Komm...Zukunftswerkstatt
 
Klimaschutz und neue Kohlekraftwerke
Klimaschutz und neue KohlekraftwerkeKlimaschutz und neue Kohlekraftwerke
Klimaschutz und neue KohlekraftwerkeErhard Renz
 
Laboratorio 1
Laboratorio 1Laboratorio 1
Laboratorio 1iue
 
Tarea modos de transporte
Tarea modos de transporteTarea modos de transporte
Tarea modos de transportevaleria
 
Industrieanalysen - Services für die Strategie- und Managementberatung
Industrieanalysen - Services für die Strategie- und ManagementberatungIndustrieanalysen - Services für die Strategie- und Managementberatung
Industrieanalysen - Services für die Strategie- und ManagementberatungWinfried Kempfle Marketing Services
 
Métiers de services auprès des animaux de compagnie
Métiers de services auprès des animaux de compagnieMétiers de services auprès des animaux de compagnie
Métiers de services auprès des animaux de compagnieCyrille Georgel
 
La educación parvularia en chile 2
La educación parvularia en chile 2La educación parvularia en chile 2
La educación parvularia en chile 2estefany1233
 
Anuario ufro 2008
Anuario ufro 2008Anuario ufro 2008
Anuario ufro 2008webbib
 
Sintesis evidencia trabajadora embarazada
Sintesis evidencia trabajadora embarazadaSintesis evidencia trabajadora embarazada
Sintesis evidencia trabajadora embarazadamiguelmolina2008
 
Hessischer Bibliothekstag 2010
Hessischer Bibliothekstag  2010Hessischer Bibliothekstag  2010
Hessischer Bibliothekstag 2010Zukunftswerkstatt
 

En vedette (20)

Informatica Educativa
Informatica EducativaInformatica Educativa
Informatica Educativa
 
Silofilter richtig auslegen. Von Jens Kampmeyer
Silofilter richtig auslegen. Von Jens KampmeyerSilofilter richtig auslegen. Von Jens Kampmeyer
Silofilter richtig auslegen. Von Jens Kampmeyer
 
Zur Zukunft Der Bibliotheken
Zur Zukunft Der BibliothekenZur Zukunft Der Bibliotheken
Zur Zukunft Der Bibliotheken
 
Rudolf Mumenthaler, Kommunikation 2.0 Erfahrungen der ETH-Bibliothek mit Komm...
Rudolf Mumenthaler, Kommunikation 2.0 Erfahrungen der ETH-Bibliothek mit Komm...Rudolf Mumenthaler, Kommunikation 2.0 Erfahrungen der ETH-Bibliothek mit Komm...
Rudolf Mumenthaler, Kommunikation 2.0 Erfahrungen der ETH-Bibliothek mit Komm...
 
Klimaschutz und neue Kohlekraftwerke
Klimaschutz und neue KohlekraftwerkeKlimaschutz und neue Kohlekraftwerke
Klimaschutz und neue Kohlekraftwerke
 
Laboratorio 1
Laboratorio 1Laboratorio 1
Laboratorio 1
 
Web Quest
Web QuestWeb Quest
Web Quest
 
Analisis blog
Analisis blogAnalisis blog
Analisis blog
 
Tarea modos de transporte
Tarea modos de transporteTarea modos de transporte
Tarea modos de transporte
 
Industrieanalysen - Services für die Strategie- und Managementberatung
Industrieanalysen - Services für die Strategie- und ManagementberatungIndustrieanalysen - Services für die Strategie- und Managementberatung
Industrieanalysen - Services für die Strategie- und Managementberatung
 
Métiers de services auprès des animaux de compagnie
Métiers de services auprès des animaux de compagnieMétiers de services auprès des animaux de compagnie
Métiers de services auprès des animaux de compagnie
 
Subsecretaría de Información - Enlaces Ciudadano
Subsecretaría de Información - Enlaces CiudadanoSubsecretaría de Información - Enlaces Ciudadano
Subsecretaría de Información - Enlaces Ciudadano
 
Tractament sida 2011
Tractament sida 2011Tractament sida 2011
Tractament sida 2011
 
La educación parvularia en chile 2
La educación parvularia en chile 2La educación parvularia en chile 2
La educación parvularia en chile 2
 
Svec
SvecSvec
Svec
 
Sociologia
SociologiaSociologia
Sociologia
 
Criptografía
CriptografíaCriptografía
Criptografía
 
Anuario ufro 2008
Anuario ufro 2008Anuario ufro 2008
Anuario ufro 2008
 
Sintesis evidencia trabajadora embarazada
Sintesis evidencia trabajadora embarazadaSintesis evidencia trabajadora embarazada
Sintesis evidencia trabajadora embarazada
 
Hessischer Bibliothekstag 2010
Hessischer Bibliothekstag  2010Hessischer Bibliothekstag  2010
Hessischer Bibliothekstag 2010
 

Communiquer entre réseaux

  • 1. Faire communiquerlesmachinesentre elles,lacouche 2 La couche 1 n'a plusde secretspourvous: voussavezcâblerunréseauetmaîtrisezle matériel associé. Maintenant,il seraitbiende pouvoirenvoyerdesinformationsd'une machineàune autre,de s'ouvrirau grand monde,de rêverd'unmonde de communication...OKje m'emporte. Commençonsparcomprendre lacouche 2 et nousaurons déjàfaitungrand pas ! Vousallezvoirque dansce chapitre etle suivantnousallonsaborderbeaucoupde notionsqui vous serontutilesenréseau.Il esttrèsimportantde bienmaîtrisercesnotions,ne négligezdoncpasces chapitresetlessuivants. La couche 2, sesrôles Comme nousl'avonsvudans unchapitre précédent,lacouche 2 se nomme la couche liaison,ouplus précisément,liaisonde données.Cependant,ce qu'il ya à retenirn'estpasdans le nom, maisbien dans le rôle. Le rôle donné àla couche 2 estde connecterdesmachinessurunréseaulocal. Plusexactement,l'objectif estde permettre àdesmachinesconnectéesensemblede communiquer. Nousallonsdoncdansce chapitre voirce qu'il fautmettre enœuvre pourétablirune communicationentre deux ouplusieursmachines. Ceci étant,nousallonsunpeuvite enbesogne,carla couche 2 possède unautre rôle importantqui estla détectiondeserreursde transmission.J'ai bienditdétection,etnonpascorrection,la différence estimportante,carlacouche 2 verra leserreurs,etfermeralesyeux surcelles-ci. Si avec tout celaonn'arrive pas à parler,je n'ai plusqu'à changerde métier! Un identifiant,l'adresseMAC Pourparlerensemble quandnoussommesdeux,ce n'estpasbiencompliqué :je parle etl'autre écoute (dumoinslaplupartdu temps...). Dèsque le nombre de participantsaugmente,çadevientpluscompliqué,carl'onpeutvouloir s'adresserà une personne enparticulierpourlui communiquerune informationsecrète. En réseauc'estpareil,onveutparfoisparlerà toutle monde maisaussi,laplupartdu temps,parlerà une machine enparticulier. Etpourpouvoirparlerà une machine enparticulier,il vabienfalloirêtre capable de l'identifier.Leschercheursontdonccréé un identifiantparticulieràlacouche 2 qui permettraitde distinguerlesmachinesentre elles,il s'agitde l'adresse MAC! Waouh ! Une machine a donc une adresse MACpour être identifiée ? Pas exactementenfait.Vuque noussommesencouche 2,etdonc encore prochesde lacouche 1, l'adresse MACesten liaisonavecle matériel,etnotammentlacarte réseau.
  • 2. L'adresse MAC est donc l'adresse d'une carte réseau. Notationde l'adresse MAC Un peude calcul binaire Attention,sortezvoscerveaux,il vafalloirfaire ducalcul binaire.Etenréseau,onva enfaire beaucoup,beaucoup.Doncautants'y mettre dèsmaintenant! Euh, c'estquoi le binaire ? Le binaire estunsystème de numérationenbase 2.Globalement,celaveutdire qu'onne peut compterqu'avec1 et0, contrairementausystème de numérationdécimal que nousavons l'habitude d'utiliserdanslequel onse sertdeschiffres de 0à 9. Hima Bachirou Pas besoin Maintenantque noussommesdesprosdu binaire,nouspouvonsnousattaqueràl'adresse MAC. Sauf que l'adresse MACs'écrit enhexadécimal... Quoi ? On se moque de nous,on travaille le binaire,onse saigne aux quatre veinesetonne s'ensert même pas? Mais si ! Car quandon a comprisle binaire,l'hexadécimal n'estpasbiencompliqué.À l'inverse du binaire pourlequel nousn'avionsque 0et 1 comme chiffresànotre disposition,enhexadécimal nousen avons16 ! Moi je connaisleschiffresde 0à 9, maisil existeraitd'autreschiffres? Oui,enfaitnousutilisonssimplementlespremièreslettresde l'alphabetaprès9.En hexadécimal nousavonsdonc : Citation 0, 1, 2, 3, 4, 5, 6, 7, 8, 9... a, b,c, d, e etf ! Par exemple,10en hexadécimal s'écrita. 11 s'écritb, etc. Tout nombre décimal peuts'écrire comme lasomme de puissancesde 16. Je vaisvous épargnerlescalculs,maisle principeestle même.Notreadresse MACs'écriradoncen hexadécimal. En voici une pourl'exemple:00:23:5e:bf:45:6a Codage de l'adresse MAC Noussavonsmaintenantde quoi estcomposée l'adresse MAC,maispourlavoirplusendétail,nous allonsdéjàvoirsataille. L'adresse MAC estcodée sur 6 octets.
  • 3. Un octet estune unité informatique indiquantune quantitéde données. Par exemple,quandvousachetezundisque dur,vousconnaissezsataille ennombre d'octets.Un disque 40 Go fera 40 gigaoctets,soit40 000 000 000 octets! Un octet représente 8bits.Un bitestune valeurbinaire. Comme nousl'avonsvuavant, une valeurbinaire peutêtre soit0,soit1. Un bit peutdonccoder deux valeurs,deux bitspeuventcoderquatre valeurs,troisbits8valeurs,etc.Dansl'exemple de deux bits,chacund'eux peutprendre lesvaleurs0ou1 ; quandon lescouple onpeutdonc prendre lesvaleurs:00, 01, 10, 11 Ceci donne bien4 valeursdifférentes.Vouspouvezessayeravec3 ou 4 bitsde trouvertoutesles combinaisonspossibles. En fait,on endéduitque x bitspeuventcoder2x valeurs! Ce qui nousdonne pourun octet,qui représente 8bits: 1 octet = 28 = 256 valeurs! Un octet estdonc comprisentre 0 et...255 (puisqu'ondémarre à0) Notre adresse MACest codée sur48 bits.Combiencelareprésente-t-ild'octetsetde valeurs possibles (enpuissancesde 2) ? 1 octet= 8 bits,donc48 bits= 48/8 octets= 6 octets. L'adresse MAC estcodée sur 6 octets. Vuque l'adresse MACest codée sur48 bits,elle peutprendre 248 valeurs.Soit...281 474 976 710 656 valeurs!Soitplusde 280 mille milliardsd'adressesMACpossibles!Çafait beaucoup... Trucs et astuces! Si vous voulezavoirune idée de lavaleurdécimaled'une grande puissancede 2,c'est facile. Prenonspourexemple248 : 248=210×210×210×210×28 Or, 210 vaut à peuprès1000 (1024 exactement). Nousavonsdonc 248 = 1000 * 1000 * 1000 * 1000 * 256. Soit256 mille milliards...facile,etplusbesoinde calculette! Nousavonsdonc beaucoup,beaucoup...beaucoupd'adressesMAC. Ça tombe bien,car chaque adresse MACva être unique aumonde. Chaque carte réseaua donc sa propre adresse MAC,unique aumonde. Commentc'estpossible,ça?On ne se trompe jamais? Normalementnon.Unconstructeurqui fabrique descartesréseauvaacheterdesadressesMAC,ou plusexactementdesmorceauxd'adressesMAC. Les troispremiersoctetsde l'adresse représententle constructeur.
  • 4. Ainsi,quandunconstructeurveutproduire lescartes,il achète troisoctetsqui lui permettrontde donnerdesadressesàsescartes.Par exemple,j'achète lasuite de troisoctets:00:01:02. Toutesles cartes réseauque je vaisproduire vontcommencerparcestroisoctets,par exemple: 00:01:02:00:00:01 ; puis: 00:01:02:00:00:02 ; etc. Si je choisistoujourslestroisderniersoctetsdifférentspourlescartesque je produis,je suissûr qu'aucune autre carte réseaun'aura lamême adresse MAC,car je suisle seul àposséderlestrois premiersoctets00:01:02 etj'ai faitattentionàce que lestroisderniersne soientpasidentiques. Récapitulons: L'adresse MAC estl'adresse d'une carte réseau. Elle estunique aumonde pourchaque carte. Elle estcodée sur6 octets(soit48 bits). Grâce à l'adresse MAC,je suisdonccapable d'envoyerdesinformationsàlacarte réseaud'une machine ! Une adresse MACspéciale Parmi lesadressesMAC,il y ena une particulière,c'estl'adressedanslaquelletouslesbitssontà1, ce qui donne ff:ff:ff:ff:ff:ff. Cette adresse estappeléel'adresse de broadcast. L'adresse de broadcastest une adresse universellequi identifien'importequellecarte réseau. Elle me permetainsi d'envoyerunmessage àtouteslescartesréseaux desmachinesprésentessur monréseau,enune seule fois. Toute machine qui reçoitune trame qui a, comme adresse MAC de destination,l'adressede broadcast, considère que latrame lui estdestinée. Et maintenant? Maintenant,noussavonsrelierlesordinateursentreeux grâce àla couche 1 etlesidentifiergrâce à l'adresse MACde couche 2. Il seraitbiende définirunlangage pourpouvoirlesfaire communiquer! Un protocole,Ethernet Le langage de couche 2, c'est quoi ? Nousallonsdevoirdéfinirunlangage pourcommuniquerentre machines.Ce langage permettrade définirle formatdesmessagesque lesordinateursvonts'échanger.Etle gagnantest...Ethernet!En réseau,ontraduitlangage par protocole,pourfaire pluspro. Ethernetn'estpasle seul protocole de couche 2, maisil estde trèsloinle plusutilisé aujourd'hui. À quoi sertun protocole ?
  • 5. L'objectif desréseaux estde pouvoirs'échangerdesinformations.Étantdonné que nousdiscutons entre desmachinestrèsdifférentes,qui elles-mêmesontdessystèmesd'exploitationtrèsdifférents (Windows,MacOS, Linux,etc.),nousdevonscréerunlangage de communicationcommunpourse comprendre.C'estle protocole. Nousavonsvu que des0 etdes1 allaientcirculersurnoscâbles.Nousallonsdoncrecevoirdes chosesdugenre : 001101011110001100100011111000010111000110001... Ce qui ne veutpas dire grand-chose...tantque nousne nousentendonspassur leursignification.Le protocole vaainsi définirquellesinformationsvontêtre envoyées,etsurtoutdansquel ordre. Dans notre message,nousallonsaumoinsdevoirenvoyer: l'adresse de l'émetteur; l'adresse dudestinataire; le message proprementdit. Ainsi,nouspouvonstrèsbiendire que les48 premierscaractèresque nousallonsrecevoir représententl'adresseMACde l'émetteur(puisque l'adresse MACfait48 bits) les48 suivants l'adresse durécepteur,puisenfinle message. Le protocole vadonc définirle formatdesmessagesenvoyéssurle réseau. Plusexactement,nousallonsappelerce message,une trame. La trame estle message envoyé surle réseau,encouche 2. Format d'une trame Ethernet Nousavonsdonné unformat d'exemple dansle paragraphe précédent,maisnousallonsvoirle vrai formatutilisé.Intéressons-nousd'abordaux adressesMAC.Laquelle placerenpremier?L'émetteur ou le récepteur? Pourrépondre à cette question,nousallonsnousmettre danslapeaud'une machine qui réceptionne unmessage. Est-ce plusintéressantde connaître l'adresse de celuiqui nousenvoie le message,oucellede celui à qui il estdestiné ? Eh bienleschercheursontestimé qu'il étaitplusintéressantde connaître l'adresse dudestinataire, car ainsi nous pouvonsimmédiatementsavoirsi le messageestpournousoupas. S'il estpour nous, nousen continuonslalecture.S'il n'estpaspournous,ce n'est pasla peine de passerdutempsà le lire...poubelle ! Nousallonsdoncpositionnerenpremierl'adresse MACdudestinataire,suivie de l'adresse MACde l'émetteur(aussi appelée adresse MACsource). Adresse MACDST (destinataire) Adresse MACSRC (source) Suite dumessage ???
  • 6. Trame Ethernet Et ensuite ? Ensuite,nousavonsbesoind'une informationunpeu particulière.Pourlacomprendre,vousdevez vousrappelerdumodèle OSI...Bond'accord,je vousaide avecun schéma(voirlafigure suivante)! Nousavonsvu que,lorsde l'envoi d'une information,nousparcouronslescouchesde hautenbas (voirlafigure suivante). Noussommesdoncpasséspar lacouche 3 avant de passerpar la couche 2. La couche 3 peutdonc indiqueràlacouche 2 quel estle protocole qui a été utiliséencouche 3. Et c'est utile,carà l'arrivée,quandlacouche 2 de la machine réceptrice reçoitlesdonnées,qu'elle voitque l'adresse MACde destinationestbienlasienne,elledoitenvoyerlesinformationsàla couche 3, etdonc au bonprotocole de couche 3. Il est doncnécessaire d'indiquerdanslatrame quel protocole de couche 3 a été utilisé quandle message aété envoyé etqu'il atraversé lescouchesdumodèle OSIde hauten bas. Notre trame devientdonc: Adresse MACDST (destinataire) Adresse MACSRC (source) Protocole de couche 3 Suite dumessage ??? Trame Ethernet Nousavonspresque tout! Pourquoi presque ?! Parce qu'il nousmanque l'essentiel : l'informationàenvoyer; nousn'avonstoujourspas réglé le problèmede ladétectiond'erreurs. Pourl'information,nousallonslaplacerjuste aprèsle protocole de couche 3. De plus,nousallons enchaîneravecle code de correctiondeserreurs,ouCRC. Qu'est-ce que le CRC? Le CRC estune valeurmathématiquequi estreprésentativedesdonnéesenvoyées. En gros celaveutdire que c'est unnombre qui sera différentpourchaque message. Imaginonsqu'une machine A envoieunmessage àune machine B.
  • 7. Lors de l'envoi,A calcule le CRC(une valeurX) etle metà la finde la trame. B reçoitle message etfaitle même calcul que A avec la trame reçue (une valeurY). B compare la valeurqu'elle acalculée (Y) aveclavaleurque A avaitcalculée etmise àla finde la trame (X). Si ellessontégales,bingo!Latrame envoyée parA estbienidentique àlatrame reçue par B. Si ellessontdifférentes,gloups!Il y a euune erreurlors de la transmission.Latrame reçue par B n'estapparemmentpaslamême que celle envoyée parA.Il y a euun problème quelquepart,mais nousl'avonsdétecté ! La trame complète Nousavonsmaintenanttouslesélémentsde latrame etavonsdoncla trame complète : Adresse MACDST (destinataire) Adresse MACSRC (source) Protocole de couche 3 Donnéesà envoyer CRC Trame Ethernet Quelle taille pourlatrame ? Il y a desélémentsqui ne varientjamaisd'une trame àl'autre.L'ensemblede cesélémentsest appelé en-tête ou,dansle casde lacouche 2, en-tête Ethernet.Ilssontindiquésici enrouge. Adresse MACDST Adresse MACSRC Protocole de couche 3 Donnéesàenvoyer CRC Trame Ethernet Ceten-tête ne variantpas,nouspouvonsdéfinirsataille : lesadressesMACfontchacune 6 octets; le protocole de couche 3 est codé sur 2 octets; le CRC estcodé sur 4 octets. Ce qui donne untotal de 18 octetspourl'en-tête Ethernet. Mais la trame a-t-elle besoind'une tailleminimale?Et d'une taille maximale ? La réponse estoui.Lataille minimale permettrade garantirque,lorsd'une collision,lamachine ayant provoqué lacollisiondétecteracelle-ci (l'explicationétantunpeucomplexe etpeuutileici,je vousenferai grâce). La taille minimale estde 64 octets,pourune trame Ethernet. La raisonde la taille maximaleesttoutautre. S'il n'y avaitpas de taille maximale,il seraitpossible qu'unemachine envoieune gigantesque trame qui occuperaittoutle réseau,empêchantlesautresmachinesde communiquer.C'estpouréviterce
  • 8. genre de problème qu'une taille maximale aété choisie. La taille maximaleestde 1518 octets,pourune trame Ethernet. Au passage,onse rendcompte que si onenlève les18octetsd'en-tête àla taille maximale,nous tombonssurun chiffre rondde 1500 octetsde donnéespourlesdonnéesàenvoyer! Noussavonsdonc maintenanttoutde latrame Ethernet! Récapitulonsunpeu,enobservantun échange de donnéesentre deuxmachinesA etB. Une applicationsurlamachine A veutenvoyer desdonnéesàune autre applicationsurune machine B. Le message parcourtlescouchesdumodèle OSIde hautenbas. La couche 3 indique àla couche 2 quel protocole aété utilisé. La couche 2 peutalors formerlatrame etl'envoyersurle réseau. La machine Breçoitla trame et regarde l'adresse MACde destination. C'estelle !elle litdonclasuite de latrame. Grâce à l'informationsurle protocole de couche 3 utilisé,elle peutenvoyerlesdonnées correctementàla couche 3. Le message remonte lescouchesdumodèle OSIetarrive àl'applicationsurlamachine B. Waouh ! Noussavonscommuniquerentre machinessurunréseaulocal ! Enfinpresque,carnousn'avonspas encore vucommentconnecterplusieursmachinesentreelles,et celava se faire grâce à un matériel particulier... on saitmaintenantque le rôle principal de lacouche 2 estde connecterlesmachinessurunréseau local ; elle permetaussi de détecterleserreurs; le protocole utiliséencouche 2est le protocole Ethernet; lescartesréseauont une adresse qui estl'adresse MAC; l'adresse MACestcodée sur 6 octets,soit48 bits; chaque adresse MACest unique aumonde ; il existe une adresse particulière,l'adresse de broadcastqui permetde parleràtout le monde, ff:ff:ff:ff:ff:ff ; Vousconnaissezlesprincipesde lacouche 2 etnousallonsmaintenantétudierendétail l'équippementqui permetde connecterlesmachinesentre elles,le switch.