Réseaux : Transmission des données
I. Introduction au réseau et à Internet
Dans ce chapitre, nous allons voir comment les ordinateurs communiquent entre eux, et comment ces communications se composent pour faire fonctionner Internet.
Un réseau informatique est un système composé d'éléments matériels (contrôleurs Ethernet, câbles, fibres optiques, bornes Wi-Fi, routeurs…) et de logiciels dont la fonction est le transport de flux d'informations sous forme de données numériques. Afin que les machines puissent communiquer, elles ont besoin de règles communes : les protocoles.
Un réseau doit permettre d'offrir à ses utilisateurs un ensemble de services : échanges de fichiers, échanges de messages, partage de matériel (disque dur, imprimantes…), etc. Un réseau doit être capable de transporter tout type d'information, de toute taille et n'importe où, tout en conciliant sécurité et fiabilité.
Internet
Internet est la contraction de internetworking : c'est une interconnexion de réseaux, ou un réseau de réseaux. C'est le réseau public mondial qui interconnecte tous les équipements informatiques, via des liaisons physiques variées (câbles, satellites, fibres…) et des équipements (répéteurs, commutateurs, routeurs).
- 1969–1983 : le réseau ARPANET, ancêtre d'Internet.
- 1983 : naissance officielle d'Internet avec l'adoption des protocoles TCP et IP.
- Les deux protocoles principaux d'Internet sont TCP et IP. L'ensemble des protocoles qui permettent de faire fonctionner Internet est appelé architecture TCP/IP.
Les opérateurs possèdent les infrastructures du réseau. En France, on trouve par exemple Orange (anciennement France Télécom), Bouygues Telecom, SFR ou Free. Les fournisseurs d'accès Internet (FAI) offrent des services aux utilisateurs (adresse mail, DNS, télévision…). En France, opérateurs et FAI se confondent souvent.
Certains organismes mondiaux veillent au bon fonctionnement d'Internet :
- IETF (Internet Engineering Task Force) : élabore les normes internet, notamment celles de l'architecture TCP/IP.
- ICANN (Internet Corporation for Assigned Names and Numbers) : attribue les noms de domaine et administre les adresses IP.
- W3C (World Wide Web Consortium) : standardise les technologies du Web (HTML, CSS…).
II. Architecture d'un réseau
On distingue 3 types de composants réseau :
- Les périphériques de terminaison : ordinateurs, imprimantes, serveurs…
- Les équipements réseau : switchs (commutateurs) et routeurs, dont le rôle est d'interconnecter les périphériques.
- Les supports : câbles Ethernet, fibre optique, ondes radio (Wi-Fi…).
Taille des réseaux
Les réseaux se différencient d'abord par leur étendue géographique :
| Sigle | Nom | Étendue | Exemple |
|---|---|---|---|
| PAN | Personal Area Network | Quelques mètres | Bluetooth entre smartphone et casque |
| LAN | Local Area Network | Un bâtiment / site | Réseau d'un lycée ou d'une entreprise |
| MAN | Metropolitan Area Network | Une ville | Différents sites d'une université |
| WAN | Wide Area Network | Pays / planète | Internet |
Topologie physique
La topologie physique décrit la façon dont les machines sont reliées physiquement. Il en existe trois principales :
C'est la topologie la plus utilisée dans les réseaux modernes (lycées, entreprises…). Toutes les machines sont reliées à un équipement central appelé switch (commutateur). La panne d'une machine ne perturbe pas les autres. Seule la panne du switch met le réseau hors service.
III. Identifier les machines : adresses IP et MAC
1. Le câblage Ethernet et les switchs
Le réseau le plus simple consiste à relier 2 ordinateurs par un câble Ethernet (réseau en bus). On utilise pour cela des connecteurs RJ45 et chaque ordinateur doit posséder une carte réseau.
En pratique, pour relier plusieurs ordinateurs, on utilise un réseau en étoile autour d'un switch. On peut relier plusieurs switchs entre eux pour couvrir de plus grandes surfaces (comme au lycée).
2. Les adresses IP
Relier physiquement des machines ne suffit pas : chaque machine doit posséder une adresse unique pour pouvoir être contactée, comme une adresse postale. C'est le rôle des adresses IP.
Une adresse IPv4 est composée de 4 nombres entiers compris entre 0 et 255, séparés par des points.
Exemple :
212.123.12.1Elle est codée sur 32 bits (4 × 8 bits = 4 octets), ce qui permet au maximum $2^{32} \approx 4$ milliards d'adresses différentes. Ce nombre étant insuffisant, une nouvelle norme IPv6 utilise 128 bits pour adresser $3{,}4 \times 10^{38}$ machines.
Une adresse IP est constituée de deux parties :
- l'adresse du réseau (identique pour toutes les machines du même réseau) ;
- l'adresse de la machine (unique au sein du réseau).
Ce découpage est précisé par un masque sous-réseau (netmask). On peut le noter sous forme d'un nombre de bits après un « / ». Par exemple :
172.16.1.7/16- Les 16 premiers bits (2 octets) → adresse réseau : 172.16
- Les 16 bits suivants → adresse machine : 1.7
- Adresse du réseau :
172.16.0.0 - Adresse de broadcast :
172.16.255.255 - Nombre d'adresses machines disponibles : $256 \times 256 - 2 = 65\,534$
3. Les adresses MAC
C'est un identifiant physique unique, gravé dans chaque carte réseau par son fabricant. Elle est constituée de 48 bits (6 octets), notés en hexadécimal séparés par « : ».
Exemple :
00:1A:3F:DA:1E:24—
00:1A:3F identifie le constructeur—
DA:1E:24 identifie la carte réseau
- L'adresse IP permet d'acheminer les données d'un réseau vers un autre réseau (routage).
- L'adresse MAC permet d'identifier la machine destinataire au sein d'un réseau local.
Le protocole ARP (Address Resolution Protocol) permet de faire le lien entre une adresse IP et une adresse MAC. Lorsqu'une machine veut contacter une IP, elle envoie une requête ARP en broadcast (à toutes les machines du réseau) : « Qui possède l'adresse IP X.X.X.X ? ». La machine concernée répond avec son adresse MAC.
IV. Transmission de l'information
1. Communication par paquets
Pour transmettre des données sur un réseau, l'information n'est pas envoyée d'un seul tenant : elle est découpée en paquets. Chaque paquet est constitué d'un en-tête (informations sur le contenu et la destination) et d'une charge utile (fragment des données).
- La transmission est plus rapide : plusieurs paquets peuvent emprunter des chemins différents simultanément.
- En cas d'erreur ou de perte, seul le paquet concerné est renvoyé, pas tout le message.
- Le réseau est moins engorgé.
À chaque étape, chaque couche du modèle réseau ajoute ses propres informations autour des données : c'est l'encapsulation. Le processus inverse, qui consiste à retirer ces en-têtes à la réception, s'appelle la désencapsulation.
2. Le modèle TCP/IP
Internet repose sur le modèle TCP/IP, composé de 4 couches de protocoles :
Il existe un autre modèle, le modèle OSI (7 couches), qui est antérieur au modèle TCP/IP. C'est un modèle théorique qui a posé les bases des communications réseau, mais c'est bien le modèle TCP/IP à 4 couches qui est implémenté dans les machines réelles.
3. Les protocoles TCP et UDP (couche Transport)
a. Le protocole TCP
Protocole de la couche Transport. C'est un protocole orienté connexion : il établit et maintient la connexion entre deux machines. Il garantit que les données arrivent dans le bon ordre et sans perte.
TCP assure le transport fiable des données en effectuant les actions suivantes :
- Établissement de la connexion (poignée de main entre les deux machines).
- Découpage des données en segments TCP. Chaque segment = en-tête TCP + fragment de données.
- Numérotation des segments pour les remettre dans le bon ordre à l'arrivée.
- Accusés de réception (ACK) : le récepteur confirme chaque segment reçu. Si A n'obtient pas d'ACK de B dans un délai imparti, il renvoie le segment.
- Terminaison de la connexion.
b. Le protocole UDP
Protocole de transport sans connexion : il envoie les données sans établir de connexion préalable et sans attendre d'accusé de réception. Les paquets perdus ne sont pas renvoyés.
Avantage : plus rapide (pas d'attente de confirmation).
Inconvénient : non fiable (perte possible de données).
| Caractéristique | TCP | UDP |
|---|---|---|
| Connexion | Orienté connexion | Sans connexion |
| Fiabilité | Garantie (accusé de réception) | Non garantie |
| Ordre des paquets | Garanti | Non garanti |
| Vitesse | Plus lent | Plus rapide |
| Utilisation typique | Web (HTTP), mail (SMTP), FTP | Streaming vidéo/audio, DNS, jeux en ligne |
4. Le protocole IP (couche Internet)
Protocole de la couche Internet. Il achemine les données (sous forme de paquets IP, aussi appelés datagrammes) d'une machine à une autre, en s'appuyant sur les adresses IP source et destination.
IP est un service non fiable : il ne vérifie pas le contenu des données, ne garantit pas l'ordre d'arrivée des paquets, et ne renvoie pas les paquets perdus. C'est TCP qui se charge de compenser ces limitations.
5. La couche Accès Réseau
Quand un paquet IP arrive à la couche Accès Réseau, des informations propres à la technologie physique (Ethernet ou Wi-Fi) lui sont ajoutées : un en-tête contenant les adresses MAC source et destination, et un champ CRC de contrôle d'erreur. L'ensemble s'appelle une trame Ethernet (ou trame Wi-Fi).
| Champ | Taille | Rôle |
|---|---|---|
| Préambule | 8 octets | Synchronisation des récepteurs |
| Adresse MAC destination | 6 octets | Machine destinataire |
| Adresse MAC source | 6 octets | Machine émettrice |
| Type | 2 octets | Protocole encapsulé (IPv4, IPv6, ARP…) |
| Données | 46 à 1500 octets | Le paquet IP encapsulé |
| CRC | 4 octets | Contrôle d'intégrité (détection d'erreur) |
6. Récapitulatif : encapsulation complète
- Les switchs fonctionnent au niveau de la couche Accès Réseau : ils lisent les adresses MAC pour acheminer les trames à l'intérieur d'un même réseau local.
- Les routeurs fonctionnent jusqu'à la couche Internet : ils lisent les adresses IP pour acheminer les paquets entre différents réseaux.
V. Protocole du bit alterné
Ce protocole est un protocole de correction d'erreurs. Il a été décrit par Barlett et Scantlebury en 1969 et permet de récupérer certaines erreurs lors de transmissions. Bien qu'il ne soit plus utilisé dans les réseaux modernes (remplacé par des protocoles plus performants), il illustre parfaitement les mécanismes de fiabilisation des communications.
L'émetteur A ajoute un bit de séquence (0 ou 1, appelé drapeau ou flag) à chaque trame qu'il envoie. Ce bit alterne entre 0 et 1 d'une trame à l'autre.
- À chaque trame reçue, le récepteur B envoie un accusé de réception (ACK) contenant le même bit de séquence.
- Si A ne reçoit pas l'ACK attendu avant expiration d'un minuteur (timeout), il renvoie la trame.
- Si B reçoit deux fois le même bit de séquence, il détecte un doublon et ignore la trame dupliquée.
Cas nominaux et cas d'erreur
De la même façon, si c'est l'accusé de réception (ACK) qui se perd, A déclenche son timeout et retransmet la trame. B reçoit alors deux fois la trame portant le même bit : il reconnaît le doublon et l'ignore, mais renvoie quand même l'ACK.
Ce protocole ne peut gérer qu'un seul bit de séquence (0 ou 1). Il fonctionne bien pour des pertes ponctuelles, mais est mis en échec si un paquet est très en retard : A renvoie la trame à cause du timeout, B reçoit un doublon qu'il ne peut pas distinguer d'un nouveau paquet. C'est pourquoi des protocoles plus avancés (avec des numéros de séquence sur plusieurs bits) ont été développés pour remplacer celui-ci.