Faire communiquerlesmachinesentre elles,lacouche 2
La couche 1 n'a plusde secretspourvous: voussavezcâblerunréseauetmaîtri...
L'adresse MAC est donc l'adresse d'une carte réseau.
Notationde l'adresse MAC
Un peude calcul binaire
Attention,sortezvosc...
Un octet estune unité informatique indiquantune quantitéde données.
Par exemple,quandvousachetezundisque dur,vousconnaisse...
Ainsi,quandunconstructeurveutproduire lescartes,il achète troisoctetsqui lui permettrontde
donnerdesadressesàsescartes.Par...
L'objectif desréseaux estde pouvoirs'échangerdesinformations.Étantdonné que nousdiscutons
entre desmachinestrèsdifférentes...
Trame Ethernet
Et ensuite ?
Ensuite,nousavonsbesoind'une informationunpeu particulière.Pourlacomprendre,vousdevez
vousrapp...
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 a...
genre de problème qu'une taille maximale aété choisie.
La taille maximaleestde 1518 octets,pourune trame Ethernet.
Au pass...
Prochain SlideShare
Chargement dans…5
×

Communiquer entre réseaux

212 vues

Publié le

0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
212
Sur SlideShare
0
Issues des intégrations
0
Intégrations
3
Actions
Partages
0
Téléchargements
2
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Communiquer entre réseaux

  1. 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. 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. 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. 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. 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. 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. 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. 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.

×