2. Quelques notions sur les réseaux locaux Ethernet

Aujourd'hui, un réseau local repose systématiquement sur la technologie Ethernet. Il hérite donc des caractéristiques de cette technologie et les notions de collision et de diffusion sont les deux points clés.

Une collision intervient lorsque deux hôtes d'un réseau émettent simultanément sur un média partagé. On appelle domaine de collision un sous-ensemble du réseau à l'intérieur duquel les hôtes sont en compétition pour accéder à un même média ou canal de communication. Plus le nombre d'hôtes présents dans un même domaine de collision est important, plus la fréquence des collisions augmente et plus les performances se dégradent. Pour garantir les meilleures conditions de communication, on cherche donc à réduire au maximum l'étendue du domaine de collision. Sur les réseaux filaires actuels, les domaines de collision ne posent plus aucun problème depuis que l'on utilise des commutateurs. La vocation d'un commutateur est de constituer un circuit de communication unique entre deux hôtes. Une fois le circuit constitué, toute collision est impossible.

La diffusion est un mécanisme d'annonce générale qui assure que tous les hôtes d'un réseau local reçoivent les trames de diffusion émises par n'importe quel autre hôte de ce même réseau. On appelle domaine de diffusion un réseau à l'intérieur duquel tous les hôtes peuvent émettre et doivent recevoir des trames de diffusion. Comme dans le cas précédent, plus le nombre d'hôtes présents dans le domaine de diffusion est important, plus les performances se dégradent. Là encore, pour garantir les meilleures conditions de communication, on cherche à réduire «raisonnablement» l'étendue du domaine de diffusion. C'est précisément sur le dimensionnement des domaines de diffusion que le débat sur le choix du niveau d'interconnexion entre réseaux locaux intervient. Le document Segmentation des réseaux locaux apporte un premier niveau d'éclairage.

Voyons comment on délimite les domaines de collision et de diffusion en faisant la correspondance entre les définitions données par la modélisation OSI et le standard Ethernet. Une fois cette correspondance faite, les unités de données manipulées par les équipements d'interconnexion permettent de définir l'étendue des domaines de collision et de diffusion.

2.1. Correspondance entre modélisation OSI et standard Ethernet

Depuis fort longtemps, la modélisation OSI sert de référence à la description des couches orientées transmission de l'information. Cette modélisation est présentée de façon plus détaillée dans le support Modélisations réseau.

Les spécifications des réseaux Ethernet ont été publiées à la même époque et ont été développées par l'Institute of Electrical and Electronics Engineers. Elles sont accessibles à la page IEEE 802.3™: ETHERNET.

Si on fait correspondre le modèle OSI et le standard Ethernet, ce sont les couches physique et une moitié de la couche liaison qui nous intéressent.

La représentation graphique fait apparaître un grand nombre d'acronymes. Même si le propos de ce document n'est pas de traduire le standard IEEE 802.3, voici quelques éléments d'explication pour chaque sous-couche du standard Ethernet représentée.

Logical Link Control, LLC

Cette sous-couche ne fait pas partie du standard Ethernet proprement dit. Il s'agit d'une sous couche de services qui occupe la moitié supérieure de la couche liaison de données du modèle OSI. Elle est définie par le standard IEEE 802.2 pour les réseaux locaux. Les services offerts sont relatifs au traitement d'erreurs et au contrôle de flux.

Media Access Control, MAC

Cette sous-couche joue un rôle très important dans les réseaux Ethernet. Elle est responsable des mécanismes de contrôle d'accès au canal de transmission sur le réseau de diffusion multi-accès. Ce rôle d'arbitrage des accès entre les différents hôtes présents dans le réseau de diffusion suppose que ces hôtes soient identifiés par une adresse. Les formats de ces adresses sont présentés en détail dans la Section 2.3, « Types d'adresses MAC ».

Reconciliation Sublayer, RECONCILIATION

Cette sous-couche est chargée de faire la correspondance entre les signaux fournis au niveau xMII et les instructions de contrôle de la couche physique (PLS).

  • MII : Media Independent Interface. Cette interface isole la sous-couche MAC de la couche physique de façon à ce que plusieurs implémentations différentes soient utilisables au niveau de la couche physique.

  • PCS : Physical Coding Sublayer. Encodage/décodage des flux de données depuis et vers la sous-couche MAC. Les techniques de codage varient suivant les générations des variantes d'Ethernet et les débits.

  • PMA : Physical Medium Attachment. Transformation et synchronisation des groupes de code en flux de bits adaptés à des composants de transmission série et vice versa.

  • PMD : Physical Medium Dependent. Transmission du signal à l'aide des fonctions d'amplification, de modulation et de changement de forme d'onde. Ces fonctions varient suivant les variantes d'Ethernet et les débits.

  • MDI : Medium Dependent Interface. Définitions des différents types de connecteurs suivant les médias utilisés : paires torsadées cuivre ou fibres optiques.

2.2. Correspondance entre unités de données et équipements réseau

Le modèle OSI a introduit un acronyme particulier pour caractériser les unités de données manipulées au niveau de chaque couche : PDU pour Protocol Data Unit. L'Encapsulation est la notion clé pour isoler les traitements effectués sur les unités de données. Le principe de l'encapsulation veut que les unités de données utilisées à chaque niveau soient indépendantes. Par conséquent, les champs de la trame sont traités au niveau liaison et ne devraient avoir aucune relation avec les champs du paquet au niveau réseau et ainsi de suite.

Si les unités de données sont spécifiques à chaque couche du modèle, il est plus aisé de concevoir des équipements spécialisés dans le traitement de ces unités des données. On aboutit ainsi à la représentation suivante.

Concentrateur, Hub

La capacité de traitement d'un concentrateur se limite à la couche physique et l'unité de données manipulée est le bit. Comme cet équipement est incapable de distinguer le début ou la fin d'un flot de bits, il n'a aucun impact sur la délimitation des domaines de collision ou de diffusion.

On peut considérer que les Hubs sont des équipements obsolètes qui n'ont plus leur place dans les réseaux locaux contemporains.

Pont, Bridge

La capacité de traitement d'un pont couvre les couches liaison et physique. L'unité de données manipulée est la trame. La couche liaison constitue le niveau le plus bas de délimitation des bornes du flot de bits reçus ou émis sur une interface réseau. C'est aussi dans la couche liaison que l'on définit la méthode d'accès aux différents médias de transmission.

C'est la capacité à reconnaître les champs d'une trame qui est déterminante dans la détection d'une collision lorsque deux hôtes ou plus émettent simultanément dans un même réseau local. De plus, comme les trames contiennent les adresses source et destination, il est possible de prendre une première décision sur l'acheminement. Pour réaliser ce traitement sur l'acheminement des trames entre ses différents ports, un pont maintient une table de correspondance entre les adresses source des hôtes qui émettent du trafic et le numéro du port sur lequel les trames sont reçues. En conséquence, peut donc dire qu'une interface de pont délimite un domaine de collision.

Si un réseau local comprend plusieurs segments et donc plusieurs ponts, ceux-ci utilisent le Spanning Tree Protocol (STP) dans le but de constituer une topologie réseau sans boucle. Ce protocole est basé sur l'échange de trames dédiées appelées Bridge Protocol Data Unit (BPDU). La description du fonctionnement de ce protocole sort du cadre de cet article. Il est possible de consulter la page Wikipedia correspondante : Spanning Tree Protocol.

Si les ponts, en tant qu'équipement d'interconnexion réseau ont quasiment disparu, toutes leurs fonctionnalités ont été intégralement conservées dans les commutateurs présentés ci-après.

Commutateur, Switch

En première approximation, un commutateur est un pont avec une électronique spécialisée qui garantit la bande passante par port. On retrouve les fonctions essentielles.

  1. Transmission ou non des trames en fonction des adresses MAC destination.

  2. Apprentissage des adresses MAC source en examinant chaque trame reçue sur un port.

  3. Construction d'une topologie réseau sans boucle entre équipements d'interconnexion de niveau liaison à l'aide du protocole STP.

Relativement aux équipements des générations précédentes, les bénéfices apportés par l'utilisation des commutateurs Ethernet sont nombreux. Un commutateur créé un domaine de collision distinct par port. Les connexions sur chaque port utilisent le mode full-duplex, ce qui offre des garanties sur les temps de transmission des trames. Enfin, on peut considérer qu'un commutateur multiplie la quantité totale de bande passante disponible sur un réseau local.

Routeur, Router

La capacité de traitement d'un routeur couvre les trois couches basses du modèle OSI : physique, liaison et réseau. Les traitements du niveau réseau permettent de délimiter un domaine de diffusion par interface sur un routeur. Comme la gestion du sous-réseau inclut la couche liaison, une interface de routeur délimite aussi une domaine de collision.

Dans la quasi totalité des réseaux, le protocole routé utilisé est IP. Il est basé sur le principe de la commutation de paquets et son format d'adressage permet de construire un découpage en groupes logiques d'hôtes à la différence du format des adresses Ethernet. C'est justement cette absence de capacité à découper l'espace d'adressage en groupes logiques au niveau liaison qui a conduit au développement des réseaux locaux virtuels présentés ci-après.

Il faut ajouter qu'un routeur réalise des traitements plus complexes qu'un commutateur au niveau liaison. La prise de décision sur l'acheminement des paquets, c'est à dire le routage, est alimentée par un ou plusieurs protocoles de routage dynamique. Ces protocoles de routage sont des processus qui s'exécutent dans l'espace utilisateur d'un système d'exploitation complet. On voit donc que la première prise de décision sur le routage d'un nouveau paquet vers une destination non connue, passe par un traitement 100% logiciel. Ce n'est que dans un second temps qu'il est possible de déléguer la transmission des paquets vers des destinations mémorisées à une électronique spécialisée.

Pour distinguer les traitements, on peut dire que le routage de paquets est une opération logicielle tandis que la commutation de paquets peut être une opération matérielle sur un équipement disposant de composants spécialisés.

Passerelle, Gateway, Application Level Gateway, ALG

La capacité de traitement d'une passerelle couvre toutes les couches du modèle OSI de la couche application à la couche physique. La gestion du sous-réseau est donc incluse et une interface de passerelle délimite à la fois un domaine de diffusion et un domaine de collision.

Parmi les traitements réalisés par une passerelle, on trouve les fonctions de cache de filtrage et de redirection. On peut citer les exemples des services mandataires avec filtrage d'URLs ou les services de routage d'appels en téléphonie sur IP.

2.3. Types d'adresses MAC

Les adresses utilisées dans les trames Ethernet sont appelées adresses MAC ; acronyme issu du nom de la sous-couche consacrée à la méthode d'accès. Ces adresses sont représentées sur 48 bits ou 64 bits soit 6 ou 8 octets. Le terme d'adressage matériel est généralement utilisé dans la mesure où les adresses MAC sont directement gravées dans les composants d'interface réseau.

Même si ce format d'adressage est non hiérarchisé et ne prévoit aucune possibilité de découpage en groupes logiques, on distingue différents types d'adresses MAC.

EUI-48, 48-bit Extended Unique Identifier

À l'origine, la représentation sur 48 bits a été retenue par le comité IEEE 802 et est utilisée dans plusieurs technologies réseau dont Ethernet.

Dans les spécifications de l'IEEE, l'espace d'adressage est découpé en deux parties. Les trois octets ou les 24 bits de poids fort sont réservés à l'identification du constructeur de l'interface réseau. C'est la partie Organizationally Unique Identifier (OUI) de l'adresse ; attribuée et enregistrée directement par l'IEEE ou l'IANA. Les trois octets ou les 24 bits de poids faible sont attribués par le constructeur comme numéro de série.

Les deux bits de poids faible l'octet de poids le plus fort servent à identifier les usages d'une adresse MAC.

  • Le bit de rang 0 (de poids le plus faible) sert à distinguer une adresse individuelle (I) ou unicast (bit = 0) d'une adresse de groupe (G) ou multicast (M) (bit = 1).

    Une trame avec une adresse MAC source unicast est émise à destination des hôtes du domaine de collision. Dans notre cas, le domaine de collision se limite au port du commutateur sur lequel l'hôte émetteur est connecté. Une trame avec une adresse MAC destination unicast est traitée après réception uniquement par l'hôte pour lequel il y a correspondance exacte entre cette adresse destination et l'adresse de son interface.

    Une trame multicast est émise à partir d'une source unique à destination de tous les hôtes abonnés à un flux particulier. La notion d'abonnement est gérée par les couches supérieures. Suivant l'électronique d'un commutateur, il est possible de filtrer (IGMP snooping) la transmission des trames vers les seuls hôtes abonnés au flux. Si cette fonction n'est pas présente sur le commutateur, les trames sont recopiées sur tous les ports indistinctement.

  • Le bit de rang 1 ou Universal/Local sert à distinguer une adresse universelle pour laquelle la partie Organizationally Unique Identifier a été attribuée par l'IEEE (bit = 0) d'une adresse pour laquelle la même partie est administrée localement (bit = 1).

Pour plus de détails, voir le document Standard Group MAC Addresses: A Tutorial Guide.

EUI-64, 64-bit Extended Unique Identifier

La représentation sur 64 bits des adresses MAC est apparue plus récemment dans les réseaux Ethernet. C'est encore l'IEEE qui publie les spécifications liées à l'utilisation de ces adresses sur 8 octets.

Les adresses au format EUI-64 sont de plus en plus répandues avec le déploiement du protocole IPv6 qui compose automatiquement les adresses de lien local avec l'adresse MAC sur 48 bits de l'interface dans laquelle deux octets supplémentaires insérés entre la partie OUI et la partie numéro de série.

Par exemple, une interface ayant l'adresse MAC EUI-48 00:3f:1c:54:5e:65 aura pour adresse de lien local IPv6 : fe80::23f:1cff:fe54:5e65/64. On reconnaît ici l'insertion des deux octets ff:fe.

Pour plus de détails, voir le document Guidelines for 64-bit Global Identifier (EUI-64™) Registration Authority.

Après cette présentation succincte des différents formats et usages des adresses véhiculées dans les trames Ethernet, il est facile d'admettre que la constitution de groupes d'adresses sur une base logique ou hiérarchisée n'est pas possible. Il faut donc recourir à une modification des champs de la trame pour introduire cette notion de groupe logique. C'est justement l'objet des réseaux locaux virtuels ou VLANs.