Ethernet est un protocole de réseau local à commutation de paquets.
Bien qu'il implémente la couche physique (PHY) et
la sous-couche Media Access Control (MAC) du modèle OSI, le protocole Ethernet est classé dans la couche de liaison, car
les formats de trames que le standard définit sont normalisés et peuvent être encapsulés dans des protocoles autres que ses
propres couches physiques MAC et PHY. Ces couches physiques font l'objet de normes séparées en fonction des débits,
du support de transmission, de la longueur des liaisons et des conditions environnementales.
Ethernet a été standardisé sous le nom IEEE 802.3. C'est maintenant une norme internationale : ISO/IEC 8802-3.
Depuis les années 1990, on utilise très fréquemment Ethernet sur paires torsadées pour la connexion des postes clients,
et des versions sur fibre optique pour le cœur du réseau. Cette configuration a largement supplanté d'autres standards
comme le Token Ring, FDDI et ARCNET. Depuis quelques années, les variantes sans-fil d'Ethernet (normes IEEE 802.11, dites « Wi-Fi »)
ont connu un fort succès, aussi bien sur les installations personnelles que professionnelles.
Le nom Ethernet vient de son ancêtre ALOHAnet qui utilisait des ondes radiofréquences. Or on disait autrefois de ces dernières
qu'elles se propageaient dans l'éther, milieu mythique dans lequel était censé baigner l'Univers. Quant au suffixe net, il s'agit de
l'abréviation du mot « réseau » en Anglais.
L'Ethernet a originellement été développé comme l'un des projets pionniers du Xerox PARC.
Une histoire commune veut qu'il ait été inventé en 1973, date à laquelle Bob Metcalfe écrivit un mémo à ses patrons à propos
du potentiel d'Ethernet. Metcalfe affirme qu'Ethernet a en fait été inventé sur une période de plusieurs années.
En 1976, Robert Metcalfe et David Boggs (l'assistant de Metcalfe) ont publié un document intitulé Ethernet :
Distributed Packet-Switching For Local Computer Networks (Ethernet : commutation de paquets distribuée pour les
réseaux informatiques locaux).
Metcalfe a quitté Xerox en 1979 pour promouvoir l'utilisation des ordinateurs personnels et des réseaux locaux, et a
fondé l'entreprise 3Com. Il réussit à convaincre DEC, Intel et Xerox de travailler ensemble pour promouvoir Ethernet
en tant que standard.
Ethernet était à l'époque en compétition avec deux systèmes propriétaires, Token Ring et ARCnet,
mais ces deux systèmes ont rapidement diminué en popularité face à l'Ethernet. Pendant ce temps, 3Com est devenue une
compagnie majeure du domaine des réseaux informatiques.
haut de page
L'Ethernet est basé sur le principe de membres (pairs) sur le réseau, envoyant des messages dans ce qui était essentiellement
un système radio, captif à l'intérieur d'un fil ou d'un canal commun, parfois appelé l'éther. Chaque pair est identifié par une
clé globalement unique, appelée adresse MAC, pour s'assurer que tous les postes sur un réseau Ethernet aient des adresses distinctes.
Une technologie connue sous le nom de Carrier Sense Multiple Access with Collision Detection (Écoute de porteuse avec accès multiples et
détection de collision) ou CSMA/CD régit la façon dont les postes accèdent au média. Au départ développée durant les années 1960
pour ALOHAnet à Hawaii en utilisant la radio, la technologie est relativement simple comparée à Token Ring ou aux réseaux contrôlés
par un maître. Lorsqu'un ordinateur veut envoyer de l'information, il obéit à l'algorithme suivant :
- 1 - Si le média n'est pas utilisé, commencer la transmission, sinon aller à l'étape 4
- 2 - [transmission de l'information] Si une collision est détectée, continue à transmettre jusqu'à ce que le temps minimal pour
un paquet soit dépassé (pour s'assurer que tous les postes détectent la collision), puis aller à l'étape 4
- 3 - [fin d'une transmission réussie] Indiquer la réussite au protocole du niveau supérieur et sortir du mode de transfert.
- 4 - [câble occupé] Attendre jusqu'à ce que le fil soit inutilisé.
- 5 - [le câble est redevenu libre] Attendre pendant un temps aléatoire, puis retourner à l'étape 1, sauf si le nombre maximal
d'essais de transmission a été dépassé.
- 6 - [nombre maximal d'essais de transmission dépassé] Annoncer l'échec au protocole de niveau supérieur et sortir du mode
de transmission.
En pratique, ceci fonctionne comme une discussion ordinaire, où les gens utilisent tous un médium commun (l'air) pour parler
à quelqu'un d'autre. Avant de parler, chaque personne attend poliment que plus personne ne parle. Si deux personnes commencent
à parler en même temps, les deux s'arrêtent et attendent un court temps aléatoire.
Il y a de bonnes chances que les deux personnes attendent un délai différent, évitant donc une autre collision. Des temps d'attente
exponentiels sont utilisés lorsque plusieurs collisions surviennent à la suite.
Comme dans le cas d'un réseau non commuté, toutes les communications sont émises sur un médium partagé, toute information
envoyée par un poste est reçue par tous les autres, même si cette information était destinée à une seule personne.
Les ordinateurs connectés sur l'Ethernet doivent donc filtrer ce qui leur est destiné ou non. Ce type de communication
« quelqu'un parle, tous les autres entendent » d'Ethernet est une de ses faiblesses, car, pendant que l'un des nœuds émet,
toutes les machines du réseau reçoivent et doivent, de leur côté, observer le silence.
Ce qui fait qu'une communication à fort débit entre seulement deux postes peut saturer tout un réseau local.
De même, comme les chances de collision sont proportionnelles au nombre de transmetteurs et aux données envoyées,
le réseau devient extrêmement congestionné au-delà de 50 % de sa capacité (indépendamment du nombre de sources de trafic).
Pour résoudre ce problème, les commutateurs ont été développés afin de maximiser la bande passante disponible.
Suivant le débit utilisé, il faut tenir compte du domaine de collision régi par les lois de la physique et notamment le
déplacement électronique dans un câble de cuivre. Si l'on ne respecte pas ces distances maximales entre machines,
le protocole CSMA/CD n'a pas lieu d'exister.
De même si on utilise un commutateur, CSMA/CD est désactivé. Et ceci pour une raison que l'on comprend bien.
Avec CSMA/CD, on écoute ce que l'on émet, si quelqu'un parle en même temps que moi il y a collision. Il y a donc
incompatibilité avec le mode full-duplex des commutateurs.
Il y a quatre types de trame Ethernet :
1 - Ethernet originale version I (n'est plus utilisée):
2 - Ethernet Version 2 ou Ethernet II (appelée trame DIX, toujours utilisée)
3 - IEEE 802.x LLC
4 - IEEE 802.x LLC/SNAP
Ces différents types de trame ont des formats et des valeurs de MTU
(Maximum Transfert Unit) différents mais peuvent coexister sur
un même médium physique.
La version 1 originale de Xerox possède un champ de 16 bits
(unité informatique) identifiant la taille de trame, même si la longueur maximale
d'une trame était de 1500 octets
(1 octet = 8 bits). Ce champ fut vite réutilisé dans la version 2 de Xerox comme champ d'identification,
avec la convention que les valeurs entre 0 et 1500 indiquaient une trame Ethernet originale, mais que les valeurs plus
grandes indiquaient ce qui a été appelé l'EtherType, et l'utilisation du nouveau format de trame. Ceci est maintenant
pris en charge dans les protocoles IEEE 802 en utilisant l'entête SNAP.
L'IEEE 802.3 a de nouveau défini le champ de 16 bits après les adresses MAC comme la longueur. Comme l'Ethernet I n'est
plus utilisé, ceci permet aux logiciels de déterminer si une trame est de type Ethernet II ou IEEE 802.3, permettant la
cohabitation des deux standards sur le même médium physique. Toutes les trames 802.3 ont un champ LLC
(Logical Link Control).
En examinant ce dernier, il est possible de déterminer s'il est suivi par un champ SNAP ou non.
Information extraite du document de G.Requilé du CNRS
Synthèse graphique:
Les différentes trames peuvent coexister sur un même réseau physique.
En octets
| 0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 à 1513 |
1514 |
1515 |
1516 |
1517 |
|
Adresse MAC destination
|
Adresse MAC source
|
Type de protocole
|
Données
|
FCS/CRC
|
Attention il existe d'autres types de trames Ethernet qui possèdent d'autres particularités.
Le champ Type de protocole peut prendre les valeurs suivantes :
0x0800 : IPv4
0x86DD : IPv6
0x0806 : ARP
0x8035 : RARP
0x0600 : XNS
0x809B : AppleTalk
Remarques :
si le champ type de protocole possède une valeur hexadécimale inférieure à 0x0600 alors la trame est une trame Ethernet 802.3 et
le champ indique la longueur du champ données ;
on notera la présence parfois d'un préambule de 64 bits de synchronisation, alternance de 1 et 0 avec les deux
derniers bits à 1 (non représenté sur la trame) ;
l'adresse de broadcast (diffusion) Ethernet a tous ses bits à 1 ;
la taille minimale des données est de 46 octets (RFC 894 - Frame Format).