Cours BUT Info

Ch. 3 — Pile et modèles

Pourquoi des couches, service vs protocole, l'encapsulation lue comme dans Wireshark, le modèle OSI couche par couche face à TCP/IP — et les trames Ethernet.

Pourquoi un modèle en couches

L'objectif est de décrire la communication de bout en bout : quels problèmes faut-il résoudre, et comment ? Le modèle en couches répond par un empilement de fonctionnalités (la pile de communication) : on sépare le problème en sous-problèmes plus simples, et chaque sous-problème est traité indépendamment des autres. Plusieurs modèles coexistent : OSI (Open System Interconnection), TCP/IP (du nom de ses deux protocoles centraux), ou encore IEEE et μC/TCP-IP pour l'embarqué.

Service et protocole

L'exemple générique du cours met en scène deux personnes : l'une énonce une requête métier (dialogue dans sa langue), l'autre la traduit dans une langue commune, et un canal (fax, téléphone, courrier postal) assure la transmission. Trois niveaux, chacun avec son propre dialogue — et deux notions à distinguer :

  • un service est un dialogue « local », vertical : l'étage du dessous rend service à celui du dessus (encapsulation des protocoles). Les services utilisent des protocoles ;
  • un protocole définit les procédures de dialogue horizontal, à distance, entre deux entités identiques de machines différentes.

L'encapsulation lue dans Wireshark

Une capture réelle montre l'empilement des couches comme des poupées russes. Le même octet d'octets se lit niveau par niveau — chaque couche interprète son en-tête puis délègue le reste :

0000   f4 6d 04 15 7c c5 00 24 d4 b9 1b c2 08 00 45 00
0010   01 05 59 a0 40 00 35 06 45 1d c3 53 22 30 c0 a8
0020   00 0a 00 50 f4 d9 b3 b4 e3 46 89 c4 1b a8 50 18
0030   04 50 42 1e 00 00 48 54 54 50 2f 31 2e 31 20 32
0040   30 30 20 4f 4b 0d 0a 44 61 74 65 3a 20 53 75 6e
  • Niveau 2 — Ethernet II : Src 00:24:d4:b9:1b:c2, Dst f4:6d:04:15:7c:c5 ; le champ type vaut 0x800 → un datagramme IP est transporté ;
  • Niveau 3 — IP : source 195.83.34.48 (soit 0xc3532230), destination 192.168.0.10 (0xc0a8000a) ; le champ protocole vaut 0x06 → du TCP ;
  • Niveau 4 — TCP : port source 80 (0x0050), port destination 62681 (0xf4d9) ;
  • Niveau 5 — HTTP : réponse positive 200 OK, contenu text/html (serveur Apache/2.2.22 (Debian)).

Savoir replacer ces adresses et ces numéros dans le flux hexadécimal est l'exercice type du cours — on le retrouve au chapitre 4 pour décoder le datagramme champ par champ.

Le modèle OSI couche par couche

Chaque couche OSI a son PDU (Protocol Data Unit) — bit, trame, paquet, TPDU, SPDU, PPDU, APDU — et son périmètre : les couches 5 à 7 relèvent du logiciel, 4 et 3 du middleware, 2 et 1 du matériel.

#CouchePDURôle et exemples
7ApplicationAPDUservices orientés utilisateurs : telnet, ssh, FTP, SMTP, HTTP, SOAP, RMI, REST
6PrésentationPPDUreprésentation des données indépendante des systèmes : ASCII, EBCDIC, ASN.1, XDR ; compression, cryptage
5SessionSPDUsession de communication, synchronisation, transactions : SOCKS, TLS, SSL, H225.0
4TransportTPDUtransport bout en bout, inter-processus : TCP, UDP, DCCP, SCTP
3RéseauPaquetroutage de bout en bout : IP, ICMP, IGMP ; protocoles de routage BGP, OSPF, RIP, IS-IS, AODV
2Liaison de donnéesTrametransmission point à point, gestion bas niveau des erreurs et des flux : Ethernet, PPP, HDLC, LAP-B
1PhysiqueBitcodage et transmission : multiplexage CDMA, TDMA, FDMA ; porteuse CSMA/CD/CA ; codages 4B5B, NRZ, Manchester, Miller

Côté matériel : le routeur opère au niveau 3 (il route les paquets entre réseaux), le commutateur au niveau 2 (il commute les trames dans un réseau local).

TCP/IP : le modèle en pratique

Le modèle TCP/IP compte cinq couches : Application, Transport, IP (Internet), Accès réseau (les drivers), Physique — avec comme PDU les flots, les segments/datagrammes, les trames et les bits. C'est un modèle sablier : IP est central, toutes les applications passent par lui et il s'appuie sur toutes les technologies de lien.

« Comparaison n'est pas raison »

OSI propose un découpage clair (services, interfaces, protocoles) et un transport orienté connexion. TCP/IP a un découpage moins clair mais est orienté protocole : IP est totalement intégré, et le mode de connexion est au choix du protocole applicatif. OSI sert à décrire, TCP/IP à faire tourner.

Les trames Ethernet

Au niveau 2, la trame Ethernet née en 1973 au Xerox PARC (Robert Metcalfe) existe en deux formats : DIX (II) (Dec/Intel/Xerox, 1980) avec un champ Ether Type, et IEEE 802.3 avec un champ Longueur. Le champ est interprété ainsi : si sa valeur est inférieure ou égale à 1500, c'est la longueur du champ de données ; si elle est supérieure, c'est le type des données encapsulées (registre RFC 1700 / IANA).

Quelques constantes : le préambule est hors trame (couche physique, délimitation du début de trame, synchronisation octet) ; les adresses @Dst/@Src font 48 bits (ff:ff:ff:ff:ff:ff = broadcast) ; le FCS est un CRC de 32 bits. La longueur minimale de 64 octets correspond au slot time (fenêtre de collision) : elle permet de détecter les collisions en comparant le signal entrant et sortant pendant l'émission. La longueur maximale est de 1518 octets (802.3), portée à 1522 avec un VLAN (802.3ac : nouvel ether type 0x8100 + étiquette de 4 octets). Enfin, les trames sont espacées d'un IFS de 96 bits (9,6 µs à 10 Mb/s, 96 ns en Gigabit) — sauf en burst mode sur un support fiable.

A retenir

  • le modèle en couches sépare les sous-problèmes et les rend indépendants ;
  • service = dialogue vertical local (encapsulation) ; protocole = dialogue horizontal entre entités identiques ;
  • une capture Wireshark se lit de la trame vers l'application : chaque en-tête nomme le protocole transporté (0x800 IP, 0x06 TCP…) ;
  • OSI décrit 7 couches (PDU : bit, trame, paquet, TPDU…) ; TCP/IP en pratique 5, avec IP au centre (modèle sablier) ; routeur = couche 3, commutateur = couche 2.

R205-3-pile.pdf

R2.05 · Cours 3 — Services réseaux, modèles et piles · 28 pages

Consultation seule — téléchargement désactivé

Chargement du document…

Dernière mise à jour le

Sur cette page