• Aucun résultat trouvé

Cette section présente la structuration en couchesdes réseaux. Cette structuration est à l’origine de la présence d’encapsulations et de désencapsulations dans le réseau.

4.3.1 Le modèle OSI

Afin de gérer la complexité des réseaux et disposer d’un standard dans la conception de services réseaux, l’International Organization for Standardization (ISO) a proposé le modèleOpen Systems In-terconnection (OSI) [61]. Le modèle OSI est une décomposition en couches fonctionnelles qui spécifient chacune un ensemble de services qu’elle doit fournir (principalement à la couche supérieure). Ce modèle définit7 couches, allant de la couchephysique à la coucheapplication [62] :

1. Couche physique : Elle fournit les moyens matériels (électroniques, mécaniques, etc.) et fonc-tionnels permettant d’activer, maintenir et désactiver une connexion physique et une transmission de données sous format de bits. elle comprend tout moyen de transmission et de codage (câbles, ondes, modulation/démodulation, etc.).

2. Couche liaison de données : Elle fournit les moyens fonctionnels pour permettre la commu-nication entre deux entités adjacentes du réseau partageant une connexion physique. Elle gère notamment l’adressage physique. Les PDU transmis sur cette couche sont généralement appelés trames.

3. Couche réseaux : Elle fournit des services de routage et permet la connexion entre entités ne se trouvant pas forcément dans le même réseau physique (et qui ne peuvent pas directement com-muniquer via les fonctions de la couche2). Elle gère notamment l’adressage logique et permet aux couches supérieures de fonctionner indépendamment des problématiques de routage et de calcul de chemin. Les PDU transmis sur cette couche sont généralement appelés paquets.

4. Couche transport : Elle fournit aux couches supérieurs un service de transmission de données complètement transparent à la gestion des ressources réseau et des coûts associés à ces transmis-sions. Elle comprend des fonctions d’optimisation des ressources utilisées afin de répondre au mieux et à moindre coût aux besoins des entités de couches supérieures. Tous les protocoles définis dans la couche 4sont de bout en bout.

5. Couche session : Elle gère la synchronisation des entités de la couche supérieure et permet de restaurer la communication à un état antérieur si des erreurs se produisent.

6. Couche présentation : Elle permet la conversion des données applicatives en données codées transmissibles entre les différentes entités. Elle permet également aux entités de la couche supérieure d’avoir une représentation commune et cohérente des données.

7. Couche application : Elle constitue le point d’accès aux services du réseau. Les fonctions de cette couche (ou applications) peuvent être tout service utile à l’utilisateur ainsi que les interfaces entre ce dernier et les services.

4.3.2 Exemple : le cas IP sur Ethernet

Une des instanciations les plus courantes de ce fonctionnement en couches est le cas IP surEthernet. Cette section présente brièvement les deux protocoles et la manière dont les paquets IP sontencapsulés dans des trames Ethernet.

4.3.2.1 Le protocole IP :

Le protocole IP se situe à la couche3(réseau) du modèle OSI. Il en existe plusieurs versions (principa-lement IPv4 et IPv6), nous nous intéressons ici à la version4 (IPv4). Le protocole IPv4 gère l’adressage logique dans le réseau. Chaque entité communicante dispose d’une adresse IP unique qui l’identifie. Les données sont structurées en paquets et chaque paquet contient un en-tête et un champ de données. La taille maximale d’un paquet est de64ko.

La figure 4.4 montre la structure d’un en-tête de paquet IPv4. Le lecteur intéressé par les fonctions des différents champs peut se référer aux standards définis par l’Internet Engineering Task Force (IETF) : [92, 16, 86, 110] entre autres.

Remarque. Le protocole IP est normalement défini dans le modèle TCP/IP21. Il se situe au niveau de la couche 2 de ce modèle. On peut néanmoins faire une correspondance grossière (avec quelques

Figure4.4 – En-tête d’un paquet IP [92]

inexactitudes) entre la couche2 du modèle TCP/IP et la couche 3du modèle OSI. Nous avons préféré présenter ces protocoles dans le modèle OSI car il est plus générique et ne correspond pas à une technologie donnée.

4.3.2.2 Le protocole Ethernet

Le protocole Ethernet se situe au niveau de la couche 2 du modèle OSI. Il en existe de nombreuses versions (Ethernet802.3, Ethernet II, Ethernet802.11, etc.). Nous nous intéressons au standard802.3[10]. Le protocole Ethernet gère l’adressage physique dans le réseau. Chaque entité dispose d’une adresse MAC22 qui l’identifie. Les données sont structurées en trames. La taille minimum des données est de

46 octets. Si les données sont insuffisantes, ce champ est rempli de données inutiles pour atteindre la taille minimum. Usuellement, la taille maximum des données est de1500octets.

Figure4.5 – Structure d’une trame Ethernet [10]

La figure 4.5 montre la structure d’une trame Ethernet. Le détail des fonctionnalités de chaque champ peut-être trouvé dans [10].

4.3.2.3 Encapsulation de paquets IP dans des trames Ethernet

Pour transporter des paquets IP sur un réseau Ethernet, les paquets IP sont encapsulés dans les trames. C’est-à-dire que chaque paquet IP (en-tête et données) est placé dans le champ “données” de la trame Ethernet. L’encapsulation de paquets IPv4 dans Ethernet est standardisée dans [59]. L’encapsu-lation de paquets IPv6 est standardisée dans [33].

Figure 4.6 – Encapsulation d’un paquet IP dans une trame Ethernet.

La figure 4.6 montre un paquet IP encapsulé dans une trame Ethernet. Il est placé dans le champ “données” de la trame. Cependant, ce champ est limité à 1500 octets alors qu’un paquet IPv4 peut atteindre64ko. Les deux solutions les plus courantes à ce problème de compatibilité sont les suivantes : – Limiter la taille des paquets IP à 1500octets. Cela peut se faire par paramétrage sur les couches supérieures (par exemple limiter la taille des segments TCP, ce qui aura pour effet de limiter la taille des paquets IP [93]).

– Fragmenter les paquets IP de taille supérieure à 1500octets et encapsuler chaque fragment dans une trame.