Les méandres de TCP/IP (2002)

Introduction

TCP et IP ont été développé par l’agence de projets de recherche avancée (DARPA, Defense Advanced Research Project Agency) du département de la défense américaine (DOD), en 1969, dans le cadre du projet de recherche ARPANET (Advanced Research Project Agency Network) visant à connecter des réseaux conçus par différents fournisseurs en un super-réseau, le “réseau des réseaux”: internet.

Remarque: le mot internet (avec i minuscule) fait référence à de multiples réseaux TCP/IP interconnectés avec des “routeurs”. Internet (avec I majuscule) fait référence au réseau mondial public Internet. Un intranet est un réseau internet privé. Et enfin, un extranet est un réseau intranet privé et protégé, accessible depuis Internet.

TCP/IP

Le succès initial de TCP/IP vient du fait qu’il fournit des services de base essentiels (tranfert de fichiers (FTP), email (SMTP, POP, IMAP), contrôle à distance (TELNET), …) et qu’il peut être utilisé par plusieurs ordinateurs sur le même réseau local, tout en cohabitant avec les protocoles de communication déjà en place.

Le composant IP est chargé du routage de l’information, du poste de travail d’un réseau local à un réseau d’entreprise, en passant par un réseau régional, et finalement jusqu’au réseau global Internet. IP cherche la meilleure route utilisable pour communiquer, d’un point à un autre.
Comme les réseaux physiques sont sujets à des pannes inévitables, le DOD a conçu TCP/IP afin qu’il soit stable. Lorsqu’un chemin de communication est obstrué (ou surchargé), IP se charge de trouver une route alternative.

Cette conception permet la construction de très larges réseaux nécessitant une administration centrale minimale. L’inconvénient majeur étant que les problèmes réseaux sont diagnostiqués plus difficilement car moins visibles.

Comme nombres d’autres protocoles, TCP/IP est composé de couches.

Adresse IP

Une adresse IP est un numéro codé sur 32 bits (soit 4 octets), conventionellement représenté par quatre chiffres décimaux séparés par un point. Par exemple: 194.38.3.24 est une adresse IP. Cette représentation est appelée notation w.x.y.z (notation décimal pointée ou dotted decimal notation, termes que vous rencontrerez également dans la littérature).

Une adresse IP est constituée de deux parties : le Network ID (identifiant de réseau, ou adresse de réseau) et le host ID (identifiant de noeud, ou adresse de noeud).

Classes d’adresses

Les classes d’adresses IP accomodent les différentes tailles et configurations de réseaux TCP/IP (rappelez-vous bien que TCP/IP est un monde de réseaux divers interconnectés, il y a un nombre gigantesque combinaisons possibles).

Il y a 5 classes d’adresses. Windows NT supporte les classe A, B et C.

La classe A

Les adresses de classe A sont assignées à des réseaux disposant d’un nombre très large de machines connectées. Avec des adresses de cette classe, 126 réseaux peuvent être définis et 16’777’214 machines.

La classe B

Pour les moyens et grands réseaux. Avec des adresses de cette classe, 16’384 réseaux peuvent être définis et 65’534 machines.

La classe C

Pour les petits réseaux (typiquement les réseaux de PME). Avec des adresses de cette classe, 2’097’152 réseaux peuvent être définis avec 254 machines par réseau.

Résumé

Classe Valeur pour w Portion Netword ID Portion Host ID réseaux Machines
A 1-126 w x.y.z 126 16’777’214
B 128-191 w.x y.z 16’384 65’534
C 192-223 w.x.y z 2’097’152 254
Classe 1er Network ID Dernier Network ID
A 1.0.0.0 126.0.0.0
B 128.0.0.0 191.255.0.0
C 192.0.0.0 223.255.255.0

Remarques:
1. Les NetworkID spécifiés ci-dessus ne sont pas des adresses IP.
2. L’adresse de classe A 127.x.y.z est utilisée pour des test de bouclage locaux et pour la communication interprocessus sur la machine locale.
127.0.0.1: Cette adresse virtuelle est disponible sur toute plateforme Windows où TCP/IP est installé. Les serveurs web installés localement sur la machine, répondrons à cette adresse par défaut dont l’url correspondante est: http://localhost.

Sous-réseaux et masques de sous-réseau

Si vous trouviez ça compliqué jusqu’ici, alors accrochez-vous, parceque la suite c’est une vrai cuisine où il y a beaucoup de plats qui mijotent en même temps. C’est d’ailleurs le dernier point sur TCP/IP que j’aborde ici et j’en fais un survol vraiement très, très sommaire.

C’est parti.

On voit que la classe A permet d’avoir physiquement plus de 16 millions de machines connectées au même brin de réseau qui est délimité par des routeurs. C’est un chiffre énorme et qui de toute évidence pose un problème de gestion du parc (imaginez vous le temps que ça prendrait, rien qu’à afficher les machines dans votre voisinage réseau).

On a donc trouvé un moyen de délimiter des sous-ensembles du réseau que forme un classe d’adresse, en ajoutant ce que l’on pourrait qualifier de sélecteur: le masque de sous-réseau.

Masque de sous-réseau

Une adresse IP ne suffit donc pas à identifier une machine sur un réseau TCP/IP. Il faut connaître encore son masque de sous-réseau. Ce masque est un nombre, codé sur 32 bits, comme l’est également l’adresse IP.
En combinant ce masque avec l’adresse IP, par l’opérateur logique ET, bit à bit, on peu identifier la partie réelle représentant le Network ID de l’adresse IP, ainsi que la partie représentant le Host ID. La recette prends des pages, alors oublions-là et concentrons nous sur ce qu’il reste d’essentiel à savoir sur le masque de sous-réseau.

Le masque de sous-réseau est représenté en notation w.x.y.z.

Rien ne nous oblige à diviser un réseau TCP/IP en sous-réseaux. Lorsqu’un réseau TCP/IP n’est pas sub-divisé, on doit tout de même spécifier un masque de sous-réseau. Ce sont les masques de sous-réseaux par défaut, que je récapitule dans la table suivante:

Classe Masque de sous-réseau (par défaut)
A 255.0.0.0
B 255.255.0.0
C 255.255.255.0

C’est l’administrateur de votre réseau ou votre fournisseur d’accès internet qui fixe ces paramètres.

(Article publié en 2002 à l’origine)