Ethernet — IEEE 802.3

Couche OSI : L2 — Liaison de données (+ L1 pour le medium physique)
Standard : IEEE 802.3

Ethernet est le protocole dominant des réseaux locaux (LAN) filaires. Il définit comment les données sont encapsulées en trames et comment les machines partagent le medium de transmission.


La trame Ethernet

┌──────────┬──────────┬────────┬──────────────────────┬─────┐
│ MAC dst  │ MAC src  │ EType  │        Payload        │ FCS │
│ 6 octets │ 6 octets │ 2 oct. │    46 à 1500 octets   │ 4o  │
└──────────┴──────────┴────────┴──────────────────────┴─────┘
ChampTailleRôle
MAC destination6 octetsAdresse MAC du destinataire (FF:FF:FF:FF:FF:FF = broadcast)
MAC source6 octetsAdresse MAC de l’émetteur
EtherType2 octetsProtocole encapsulé : 0x0800 = IPv4 · 0x0806 = ARP · 0x86DD = IPv6 · 0x8100 = VLAN
Payload46-1500 octetsDonnées (paquet IP ou autre)
FCS4 octetsFrame Check Sequence — CRC32 pour détecter les erreurs de transmission

Adresse MAC

L’adresse MAC (Media Access Control) est un identifiant de 48 bits (6 octets) gravé dans la carte réseau.

AA:BB:CC:DD:EE:FF
│──────┘ │──────┘
OUI       NIC Specific
(fabricant) (unique par carte)
TypeExempleUsage
UnicastAA:BB:CC:DD:EE:FFAdresse d’une carte réseau spécifique
BroadcastFF:FF:FF:FF:FF:FFTous les hôtes du LAN (ex: ARP Request)
Multicast01:00:5E:xx:xx:xxGroupe d’hôtes (ex: OSPF, protocoles multicast)
# Voir les adresses MAC des interfaces
ip link show
# → link/ether aa:bb:cc:dd:ee:ff
 
# Voir la table MAC d'un switch (sur switch Cisco)
# show mac address-table
 
# Changer temporairement son MAC (spoofing)
sudo ip link set eth0 address 02:00:00:00:00:01

Évolution des standards Ethernet

StandardDébitMediumDistance max
10BASE-T10 MbpsPaire torsadée Cat3100m
100BASE-TX (Fast Ethernet)100 MbpsCat5100m
1000BASE-T (Gigabit)1 GbpsCat5e/Cat6100m
10GBASE-T10 GbpsCat6a100m
25GBASE-T25 GbpsCat830m
100GBASE-SR4100 GbpsFibre multimodo100m
400GBASE400 GbpsFibreVariable

MTU — Maximum Transmission Unit

Le MTU est la taille maximale du payload d’une trame Ethernet : 1500 octets par défaut.

Trame Ethernet maximale : 1518 octets
  = 6 (MAC dst) + 6 (MAC src) + 2 (EType) + 1500 (payload) + 4 (FCS)

Si un paquet IP dépasse le MTU, il est fragmenté (coupé en plusieurs paquets).

Jumbo Frames

Dans les datacenters et clusters Kubernetes, on augmente souvent le MTU à 9000 octets (Jumbo Frames) pour réduire l’overhead de traitement :

# Configurer le MTU d'une interface
sudo ip link set eth0 mtu 9000
 
# Vérifier
ip link show eth0 | grep mtu
 
# Dans Kubernetes — vérifier le MTU des pods (Cilium)
kubectl exec -it mon-pod -- ip link show eth0

VLAN — Virtual LAN

Les switches modernes supportent les VLAN (802.1Q) : segmenter un réseau physique en plusieurs réseaux logiques isolés.

Trame Ethernet avec tag VLAN (802.1Q) :
┌──────────┬──────────┬────────┬────────────┬──────────────┬─────┐
│ MAC dst  │ MAC src  │ 0x8100 │  VLAN tag  │   Payload    │ FCS │
│ 6 octets │ 6 octets │ 2 oct. │  4 octets  │  46-1500 o.  │ 4o  │
└──────────┴──────────┴────────┴────────────┴──────────────┴─────┘
                                │
                          VLAN ID (12 bits) → 4096 VLAN possibles
# Créer une interface VLAN sur Linux
sudo ip link add link eth0 name eth0.100 type vlan id 100
sudo ip addr add 192.168.100.1/24 dev eth0.100
sudo ip link set eth0.100 up

En relation avec