Table des matières
Accès réseau
Détail de la trame
Dans le modèle TCP/IP, cette couche englobe les couches Physique et Liaison du modèle OSI. Si l'on regarde de très près:
Ce qui est en vert représente des bits spécifiques à la sous-couche physique.
- le préambule est une succession de 1 et de 0 . C'est un truc classique sur toutes les liaisons série asynchrones. Cette séquence permet à la carte réceptrice de synchroniser son horloge sur celle de l'émetteur;
- le SFD e une valeur convenue qui est toujours 10101011.
- à l'autre bout, l' IPG est un temps silencieux, l'équivalent de 96 bits tous à 0.
Ce qui est en orangé représente la trame Ethernet. Elle contient successivement:
- L'adresse MAC de destination sur 6 octets,
- l'adresse MAC de la source (6 octets également),
- éventuellement un tag 802.1Q de 4 octets s'il y a du vlan dans l'air, nous verrons ceci plus tard,
- les 4 octets suivants représentent suivant leur valeur:
- le type transporté, c'est à dire la nature de la couche réseau supérieure. Il est prévu une très grande quantité de types possibles. retenons en ce qui nous concerne principalement:
- 0x0800 pour IPv4
- 0x0806 pour ARP
- 0x8100 pour 802.1Q
- 0x86DD pour IPv6
- si la valeur se situe en dessous de 0x05DC (1500 en décimal), alors ceci représente la longueur du payload. Voir Ethertype (en anglais) pour plus de détail.
- la charge utile (Payload) qui n'est rien d'autre le datagramme IP dans son entier. 1500 octets étant la charge maximale appelée MTU comme Maximum Transmission Unit.
- le FCS qui est un Contrôle de redondance cyclique une sorte de condensé de la charge utile. Il est calculé lors de l'émission de la trame et recalculé à son arrivée. Si les deux résultats diffèrent, c'est que les données ont été corrompues.
- l'IFG noté ici 12 octets (96 bits) correspond à une durée de 0.96 μs pour un réseau 100 Mb/s. Ce qui importe ici, c'est le temps d'attente. Ce temps est nécessaire pour éviter les collisions. Il doit être détectable par la source de manière à déduire si l'Ether est libre ou non. En cas de collision détectée, cette durée sera allongée temporairement de façon aléatoire. Plus de détails (en anglais) ici.
Pour observer la totalité de dette trame, il faudrait pouvoir installer un appareil de mesure de type oscilloscope à mémoire ou un analyseur de trame matériel directement sur le câble. En revanche, toute la partie en orange est analysable avec un sniffeur comme Wireshark qui est distribué sous licence GNU GPL.
En conclusion
Nous avons pris le parti d'entamer cette étude en partant de la couche la plus basse, nous allons donc nous placer en position du destinataire qui, après que son interface ait détecté que la trame lui était destinée grâce à l'adresse MAC du destinataire, après avoir contrôlé l'intégrité de la charge utile en recalculant le CRC et après avoir débarrassé la charge utile de tout ce qui ne concerne pas la couche supérieure, lui transmet le paquet, avec la satisfaction du travail bien accompli.