Support Ethern..

Download Report

Transcript Support Ethern..

Ethernet

Ethernet

 Ethernet a été inventé par Robert Metcalfe et David Boggs chez Xerox dans la fin des années 70  Sa version 1 a été mise au point par Xerox, Intel et Digital en 1980 et utilisée par l'industrie aéronautique : Boeing a monté sur cette base son réseau TOP (« Technical and Office Protocol »)  Sur un réseau Ethernet la durée d'attente d'une trame est variable

Ethernet

 Le caractère aléatoire du délai d'émission n'est pas gênant dans l'industrie aéronautique, ni dans les applications bureautiques où la production ne supporte pas de contraintes strictes de temps réel  Par contre elle est gênante dans l'industrie automobile où les automates qui communiquent ont des contraintes de temps réel fortes  General Motors a mis au point la technique du bus à jeton pour éviter les collisions et maîtriser les délais (réseau MAP, pour « Manufacturing Automation Protocol »)

Ethernet

 IBM a mis au point l'anneau à jeton Token Ring en 1985  Ces trois techniques ont été proposées aux organismes de normalisation qui n'ont pas voulu choisir entre elles puisqu'elles répondaient à des besoins différents  Les trois normes cohabitent actuellement  En pratique Ethernet s'impose à 95% aujourd'hui sur les réseaux locaux à utilisation bureautique et gestion, Token Ring ou Token Bus étant utilisés pour des applications industrielles

Ethernet Les trois principaux protocoles réseaux locaux :

 Ethernet, norme IEEE 802.3 de 1983 (origine : Xerox, puis DEC)  Bus à jeton (Token Bus), norme IEEE 802.4 (origine : General Motors)  Anneau à jeton (Token Ring), norme IEEE 802.5 (origine : IBM)

Ethernet 1 – Le codage de l’information

Ethernet

Ethernet Le code NRZ (Non Return to Zero)

 C'est un des codes les plus simples qui correspond à une suite de valeurs binaires  Le code a tendance à minimiser les composantes continues du signal transmis  Cette caractéristique peut être gênante pour une suite de 1 ou de 0

Ethernet Le code NRZI (Non Return to Zero Inverted)

 Le chiffre 1 est codé par un changement d'état après le coup d'horloge, le 0 par l'absence de changement d'état

Ethernet Le codage Manchester

 Le codage Manchester est utilisé pour l'Ethernet 10Base5, 10Base2, 10BaseT et 10BaseFL  Dans le codage Manchester, l'idée de base est de provoquer une transition du signal pour chaque bit transmis  Un 1 est représenté par le passage de -V à +V, un 0 est représenté par le passage de +V à -V

Ethernet Le codage Manchester différentiel

 Il existe un autre type de codage utilisé pour le Token Ring et nommé le codage Manchester différentiel  La présence ou l'absence de transition au début de l'intervalle du signal d'horloge réalise le codage  Un 1 est codé par l'absence de transition, un 0 est codé par une transition au début du cycle d'horloge

Ethernet

Ethernet

 Il existe deux symboles particuliers : J et K (Joker et King)  Ils sont codés par +V et -V sur toute la durée d'un cycle d'horloge  Ils ont pour but de marquer le début et la fin d'une trame (préambule de trame Token Ring)  La synchronisation des échanges entre émetteur et récepteur est toujours assurée

Ethernet

 Un bit 0 ou 1 étant caractérisé par une transition du signal et non par un état comme dans les autres codages, il est très peu sensible aux erreurs de transmission  La présence de parasites peut endommager le signal et le rendre incompréhensible par le récepteur, mais ne peut pas transformer accidentellement un 0 en 1 ou inversement  La porteuse Ethernet est basée sur les voltages suivants : 3.3V ou 5V±10%

Ethernet 2 – La trame Ethernet

Ethernet

Ethernet Les adresses physiques

 Chaque coupleur possède une adresse unique au monde formée de 6 octets et inscrite dans la carte Ethernet lors de sa fabrication  Ces adresses sont généralement affichées comme une séquence de nombres hexadécimaux sur deux digits, séparés par deux points ou des tirets, comme aa:bb:cc:dd:ee:ff  Exemple d’adresse MAC Ethernet : 00:3f:25:5e:31:aa

Ethernet

 Tous les coupleurs sur le réseau enregistrent la trame au fur et à mesure de son passage  Le composant chargé de l'extraction des données contenues dans la trame, vérifie la concordance entre l'adresse de la station et l'adresse de destination  S'il y a concordance, le paquet est alors transféré vers la couche supérieure après vérification de la trame

Ethernet

 Le préambule sur 7 octets comporte 56 bits=7x10101010 (Synchronisation Bits) soit 0xAA  Sur un réseau Ethernet à 10 Mb/s il dure 5,6 microsecondes  Le préambule est suivi d'un délimiteur de début de trame (Start Frame Delimiter) sur 8 bits=10101011 soit 0xAB  Après ces 8 octets, les données proprement dites, arrivent

Ethernet

 L'adresse physique Ethernet est codée sur 2 ou 6 octets  Dans le cas le plus répandu de la codification à 6 octets, les trois premiers constituent la codification du constructeur  Les 3 derniers octets correspondent au numéro de série chez le constructeur  Par exemple, 00-00-0C correspond à un coupleur Cisco, tandis que 00-00-1B correspond à un coupleur Novell

Ethernet

 Quand l'adresse se présente sous la forme FF-FF-FF-FF-FF-FF, celle-ci correspond à une adresse de diffusion générale « broadcast »  Communication unicast : de 1 vers 1  Communication multicast : de 1 vers plusieurs  Communication broadcast : de 1 vers tous

Ethernet

 Dans la structure IEEE 802.3, le premier bit d'une adresse est appelé Individual ou Group (I/G)  Si le premier octet est impair, c'est à dire quand le premier bit de l'adresse est à 1 (envoi des octets du bit de poids le plus faible au bit de poids le plus fort, LSB Least Significant Bit) il s'agit de l'adressage d'un groupe de stations  On parle alors d'adressage « multicast »

Ethernet

 Le second bit est dénommé Universally ou Locally administered (U/L)  Le second bit d'une adresse Ethernet longue indique s'il s'agit d'une adresse universelle ou s'il s'agit d'une adresse gérée localement  Dans ce cas, les 46 bits d'adresse restants sont gérés par l'utilisateur et ne sont pas nécessairement les numéros du constructeur et du coupleur

Ethernet Le champ Type/Longueur

 La norme de fait « Ethernet » édictée par le consortium DEC, INTEL, XEROX (DIX en 1980 ou Ethernet II) a été normalisée par l'IEEE (Institute for Electrical and Electronics Engineers) et son sous-comité 802.3 en 1985  Ce champ de deux octets a été défini dans le standard Ethernet, plus ancien que l'IEEE 802.3, pour indiquer le type de protocole de niveau 3 employé pour transporter le message  Il s'agissait d'une information servant à l'aiguillage des données vers le processus gérant la couche supérieure

Ethernet

 Ce champ a changé de signification avec la normalisation (IEEE 802.3 puis 8802.3) et comporte, selon la norme, une information de longueur sur le champ de données  Cette longueur n'est pas indispensable à la fonction du récepteur puisque le début et la fin de la trame se déduisent respectivement par le Start Delimiter et par la chute de la porteuse au dernier bit  La longueur des données est utile quand le champ de données n'est pas entièrement rempli et comporte du bourrage ou pour effectuer une vérification de cohérence entre la longueur totale de la trame reçue et le nombre d'octets communiqué par ce champ

Ethernet

 Les champs DSAP, SSAP permettent d'identifier le type de protocoles des couches supérieures (Destination Service Access Point, Source Service Access Point)

Ethernet

 Comment différencier les trames Ethernet des trames IEEE 802.3

sur le réseau ?

 Les deux types de trames peuvent parfaitement coexister  Si la valeur du champ est comprise entre 0 et 1500 octets c'est à dire 0x0000 et 0x5DC en hexadécimal, il s’agit d’une « longueur » et donc d’une trame IEEE 802.3

 Sinon, il s'agit d'un champ « type » et donc d'une trame Ethernet DIX ou Ethernet II

Ethernet

 Dans la trame Ethernet DIX le champ protocole permet d'aiguiller le paquet vers les protocoles de niveau supérieur au niveau MAC (la couche LLC Link Layer Control n'existe pas)  Dans la trame IEEE 802.3 c'est la couche LLC qui devra effectuer cet aiguillage  La trame Ethernet DIX ne permet pas de supprimer (en réception) les bits de bourrage au niveau MAC  La trame IEEE 802.3 le permet grâce au champ longueur des données

Ethernet

 Dans le cas d'Ethernet, il y a violation du modèle en couches car les bits de bourrage élaborés au niveau MAC vont être traités dans les couches supérieures  Dans la trame 802.3 les champs SAP (SSAP et DSAP) n'ont pas les mêmes valeurs que le champ protocole de la trame Ethernet  Exemple : le protocole IP est codé 0x0800 (16 bits) dans une trame Ethernet DIX et 0x06 (8 bits) dans une trame IEEE 802.3

Ethernet

Exemples des types les plus courants utilisés sur les réseaux : • 0x0800 DoD IP • 0x0801 X75 Internet • 0x0803 DNA Naming Service • 0x0806 ARP  Il existe quelques « type » inférieurs à0x05DC correspondant à des définitions antérieures à la normalisation IEEE 802.3

 Ils sont alors reproduits avec des « types » supérieurs à 0x05DC

Ethernet Le champ Données

 Le champ de données ne possède pas de signification propre pour Ethernet  Ce champ est vu comme une suite de 46 à 1500 octets de data intégrée dans la trame et n’est pas interprétée par la couche 2  Le seul traitement effectué sur les données sera le calcul du CRC (Cyclic Redundancy Check, calcul de redondance cyclique)  Si moins de 46 octets sont fournis par la couche supérieure, ce champ sera complété par du bourrage (le padding)

Ethernet Le champ FCS

 FCS signifie Frame Check Sequence ou séquence de vérification de trame, appelé également CRC  Il s'agit d'un champ de quatre octets placé en fin de trame et permettant de valider l'intégrité au bit près de la trame après la réception

Ethernet

 Pour le calcul du CRC (Cyclic Redundancy Check), un algorithme basé sur un polynôme de degré 32 est appliqué aux champs « adresse », « type/longueur » et « données/bourrage »  La station réceptrice passera le paquet de données à la couche supérieure si aucune erreur n'est relevée  polynôme : x32+x26+x23+x22+x16+x12+x10+x8+x7+x5+x4+x2+1

Ethernet Le temps inter-trame

 Grâce au temps inter-trame, toutes les stations du réseau peuvent prendre la main dans un délai assez faible, même sur un réseau où transitent déjà des données de façon régulière  Les coupleurs ne peuvent pas émettre toutes les trames les unes à la suite des autres  Un temps d'au moins 9,6 micro-secondes doit être laissé entre la chute du signal occupant le média et le début de la trame suivante

Ethernet

 Ce délai, pour un débit de 10 Mb/s, correspond au temps d'émission de 96 bits soit 12 octets, ce qui n’est n’est pas négligeable  Exemple : 10b/s ==> 1 bit/10-7 s ==> 1/10-7 = 10000000 = 10 Mb/s

Ethernet

Ethernet 3 – Principe d’accès au média

Ethernet

 Un coupleur Ethernet qui envoie les données à un débit de 10 Mb/s implique qu'un bit utilise 100 nanosecondes  On suppose que la lumière et l'électricité se déplacent à la même vitesse, soit environ 30 centimètres par nanoseconde  De cette manière, la carte envoie le deuxième bit alors que le premier a déjà parcouru 30 mètres  Si deux stations sont distantes d'environ 90 mètres et que toutes les deux émettent en même temps sur le câble, lors de l'émission du troisième bit se produira une collision

Ethernet

 Quelques nanosecondes plus tard, les deux signaux entreront en collision  Les deux données cartes cesseront d’émettre et reprendront ultérieurement, après un délai choisi aléatoirement, l'envoi des  La vitesse de propagation du signal électrique est en fait de l'ordre de 0,77 C (C = vitesse de la lumière dans le vide) 0,77 x 3 x 10 puissance 8=230 000 km/s

Ethernet

 A 10 Mbits/s un bit occupe le signal électrique pendant 1/(10 x 10 puissance 6)s soit 100 nanosecondes  Ce temps correspondant à la durée d'un bit est nommé Bit Time ou BT  Comme le signal se déplace à 230 000 km/s, un bit occupe donc 2,3 x 10 puissance 8 x 10-7 = 23m sur le câble  Sur un câble de 500 mètres peuvent se trouver 500/23 = 22 bits, à un instant donné, qui occuperont le câble pendant 22/(10 x 10 puissance 6) = 2,2 microsecondes

Ethernet

 La norme Ethernet fixe le temps d'aller retour (Round Trip Delay) entre deux émetteurs récepteurs les plus éloignés à 46,4 us (464 BT), ce qui permet au signal un aller retour : 230x10 puissance 6 x 46,4 x 10 puissance -6 =10672 mètres, soit un réseau de 5 336 mètres sur un seul câble coaxial  Pour des raisons d'atténuation le signal doit être régénéré tous les 500 mètres car la détection de collisions nécessite la différenciation d'un signal de la superposition de 2 signaux (la superposition de 2 signaux affaiblis pourrait avoir la même énergie qu'un signal non affaibli)

Ethernet

 Pour régénérer le signal on utilise des répéteurs qui induisent un retard  La taille maximale d'un réseau Ethernet a été fixée à 2 800 mètres au lieu de 5 336 mètres à cause de ce retard  La durée du signal de brouillage (JAM) a été fixée à une valeur comprise entre 3,2 et 4,8 microsecondes (32 à 48 BT)

Ethernet

 La norme Ethernet fixe le slot time (tranche canal) à 51,2 microsecondes (46,4 + 4,8)  La taille maximum d'un paquet est fixée à 1518 caractères pour ne pas pénaliser les temps d'accès et limiter les mémoires tampons des émetteurs-récepteurs  Pour être sûr de détecter les collisions, il faut que les messages émis à 10 Mbits/s aient au moins une longueur de 10 x10 puissance 6 b/s x 51,2 x 10 puissance -6 s = 512 bits soit 64 octets (préambule exclu)

Ethernet L’accès aléatoire

 Lorsqu'un coupleur a de l'information à transmettre, il l'envoie, sans se préoccuper des autres coupleurs réseau  S'il y a collision, c'est-à-dire superposition des signaux de deux ou plusieurs utilisateurs, les signaux deviennent indéchiffrables et ils sont perdus  Ils seront retransmis ultérieurement

Ethernet

 Outre son extrême simplicité, cette technique a l'avantage de ne nécessiter aucune synchronisation et d'être complètement décentralisée  Son principal inconvénient provient de la perte d'informations qui résulte d'une collision et de son manque d'efficacité puisque les trames sont renvoyées  Le débit d'un tel système devient très faible dès que le nombre de coupleurs augmente  Quand le nombre de stations tend vers l'infini, le débit devient nul

Ethernet L'accès aléatoire avec écoute de la porteuse

 Cette technique appelée CSMA (Carrier Sense Multiple Access), consiste à écouter le canal avant d'entreprendre une émission  Si le coupleur détecte un signal sur la ligne, il diffère son émission à une date ultérieure

Ethernet

 Cette méthode réduit considérablement les risques de collision sans les éviter complètement  En effet, si l'on considère le temps de propagation entre le couple de stations les plus éloignées (période de vulnérabilité) et si le coupleur ne détecte pas l'émission d'une trame pendant cette période, il peut y avoir une superposition de signaux  Il faudra donc réémettre ultérieurement les trames perdues

Ethernet CSMA non persistant

 Le coupleur écoute le canal lorsqu'une trame est prête à être envoyée  Si le canal est libre, le coupleur émet  Dans le cas contraire, il recommencera le même processus après un délai aléatoire

Ethernet CSMA persistant

 De la même manière que précédemment, un coupleur prêt à émettre écoute préalablement le canal et transmet s'il est libre  Si le coupleur détecte l'occupation de la porteuse, il continue à écouter jusqu'à ce que le canal soit libre, et émet à ce moment-là  Cette technique permet de perdre moins de temps que dans le cas précédent, mais elle a l'inconvénient d'augmenter la probabilité de collision puisque les paquets qui s'accumulent pendant la période occupée vont tous être transmis en même temps

Ethernet CSMA P-persistant

 Dans cette approche, l'algorithme est le même précédemment, mais, lorsque le canal devient libre, le coupleur émet après un délai calculé avec une certaine probabilité que  Cela permet de diminuer notablement la probabilité de collision

Ethernet CSMA/CD ou CSMA avec détection de collisions (Collision Detection)

 Cette technique est actuellement la plus utilisée parmi les techniques d'accès aléatoire  A l'écoute préalable du réseau s'ajoute l'écoute pendant la transmission

Ethernet

 Un coupleur prêt à émettre, ayant détecté le canal libre, transmet et continue d'écouter le canal  S'il se produit une collision, il avorte dès que possible sa transmission et envoie des signaux spéciaux appelés bits de bourrage afin que tous les coupleurs soient prévenus de la collision  Le protocole CSMA/CD est semblable à une communication téléphonique au cours de laquelle plusieurs personnes se retrouvent à discuter sur la même ligne, en même temps

Ethernet CSMA/CA ou CSMA avec résolution des collisions (CSMA with Collision Avoidance)

 Moins connue, cette technique d'acquittement par accusé de réception utilise une procédure  Elle ne nécessite pas de circuit de détection de collision