logo interstices logo interstices
rubrique  de la recherche rubrique connaitre rubrique itineraires rubrique c'etait hier rubrique debattre rubrique ludique rubrique lire et voir les thématiques
 Voir la thématique :

Sommaire du document
Page 1 / 4
 
Auteur(s) :
 

Internet, le conglomérat des réseaux

17/11/06


Qu'est-ce que l'internet ? Littéralement, « internet » vient du néologisme anglais « internetting » qui désigne le fait d'interconnecter des réseaux. L'internet est donc un réseau de réseaux. Comment ça marche ? L'information circule sous forme de paquets acheminés indépendamment les uns des autres. Pour cela, chaque paquet contient un identifiant de la destination : son adresse IP. La manière d'allouer les adresses IP et la manière d'acheminer les paquets sont intimement liées, c'est ce qui permet de faire fonctionner de concert plusieurs centaines de milliers de réseaux connectant ainsi plusieurs centaines de millions de machines entre elles.

Ce document vise essentiellement à donner une idée des principes de base du fonctionnement de l'internet. Il aborde notamment la façon dont y sont acheminées les données, comment est identifiée la destination d'un envoi de données (quelle est son adresse ?), les problèmes liés à la croissance de l'internet, et quelques aspects de son utilisation courante.

1. Circulation de l'information

Comment les données circulent-elles dans l'internet ?

Ce qui circule : des paquets

Dans un réseau, l'information qui circule est découpée en unités élémentaires appelées paquets. Il s'agit d'une suite d'octets suffisamment courte pour pouvoir être communiquée sous forme numérique et sans erreur sur un câble de communication ou tout autre type de liaison numérique (radio par exemple).

Dans le cas de l'internet, le format des paquets est spécifié par un protocole, l'Internet Protocol, connu sous l'acronyme IP. On parle donc de paquets IP. Quand on récupère un fichier par exemple, son contenu est découpé en petits morceaux inclus dans une multitude de paquets IP qui transitent sur le réseau. Chaque paquet circule indépendamment des autres. Pour cela, il contient un en-tête indiquant entre autres quelle est la destination du paquet. Le protocole IP spécifie que cette destination est identifiée par une suite de 4 octets : son adresse IP (chaque octet est généralement lu comme un nombre entre 0 et 255).

Voici le format de l'en-tête d'un paquet IP, tel que spécifié au bit près dans le standard RFC 791 document externe au site défini par l'IETF document externe au site (pour « Internet Engineering Task Force »), l'organisme de standardisation de l'internet. La première ligne indique la signification des quatre premiers octets du paquet (soit 32 bits), la deuxième, celle des quatre suivants et ainsi de suite. Le reste du paquet est constitué par les données qui transitent dans le paquet (typiquement de l'ordre de 1000 octets).

    0                   1                   2                   3   
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |Version|  IHL  |Type of Service|          Total Length         |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |         Identification        |Flags|      Fragment Offset    |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  Time to Live |    Protocol   |         Header Checksum       |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                       Source Address                          |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                    Destination Address                        |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                    Options                    |    Padding    |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

On voit qu'outre l'adresse IP de la destination (cinquième ligne), un paquet IP contient aussi celle de la source (quatrième ligne) et bien d'autres champs en savoir plus comme la version du protocole (quatre premiers bits de la première ligne). La version présentée ici (la plus courante à l'heure actuelle) est la version 4 (IPv4). Tout paquet IPv4 commence par les bits 0100, soit 4 en binaire.

À l'intérieur d'un réseau

Comment les paquets ainsi formés circulent-ils dans un réseau ? Un réseau est constitué de routeurs et de liens de communication. Les liens relient les routeurs entre eux à la manière de routes entre les villes d'un pays. Plus précisément, un routeur est une sorte d'aiguilleur qui possède des liens avec d'autres routeurs. Chaque lien est branché au routeur via une interface. La principale activité d'un routeur consiste à router des paquets.

Voici plus précisément comment fonctionne le routage :

  1. un paquet arrive sur une interface,
  2. son en-tête est lu (et éventuellement modifié),
  3. le paquet est retransmis sur une autre interface.

Le choix de l'interface de sortie dépend de l'en-tête du paquet. Pour faire ce choix, un routeur maintient à jour une table de routage qui contient pour une destination donnée le numéro d'interface où faire suivre le paquet. Un protocole de routage spécifie les informations que s'échangent les routeurs pour pouvoir construire leurs tables de routage. Calculer les tables de routages revient à calculer des chemins dans un graphe en savoir plus. La construction des tables de routage est détaillée plus loin.

Toute machine reliée à un des routeurs du réseau peut ainsi communiquer avec toute autre machine reliée à un routeur du réseau. Les machines qui sont ainsi mises en relation par un réseau sont appelées des hôtes.

À l'opposé, dans les réseaux téléphoniques (qui existent depuis beaucoup plus longtemps que l'internet), tous les paquets d'une communication se suivent avec régularité sur la même route. Toute communication commence par l'établissement d'une connexion qui va configurer les éléments du réseau de sorte qu'une route soit réservée pour la série de paquets qui va suivre. Ces réseaux dédiés à une application donnée, comme le transport de la voix, n'ont pas la malléabilité de l'internet, dont le principe de base consiste à interconnecter tout ce qui peut transporter un paquet IP. On oppose ainsi les réseaux en mode connecté comme les réseaux téléphoniques aux réseaux à commutation de paquets comme l'internet.

Comment agréger les réseaux

Comment les paquets circulent-ils d'un réseau à un autre ? Les hôtes, machines des utilisateurs de l'internet, sont généralement reliés à un réseau local. Pour chaque réseau local, un routeur appelé passerelle relie ce réseau avec l'internet. La seule décision de routage prise par un hôte est d'envoyer un paquet, soit directement à la destination si elle se trouve dans le réseau local, soit à la passerelle sinon.

Tous les routeurs d'un réseau sont gérés par la même organisation. Ils sont reliés entre eux, et savent acheminer des paquets entre eux. Certains des routeurs du réseau peuvent avoir des liens vers des routeurs d'autres réseaux, appelons-les des routeurs de frontière (pour « border gateway » en anglais). Le monde des destinations, vu d'un routeur de l'internet, se sépare donc en deux populations, les destinations qui sont accessibles sans sortir de son propre réseau d'une part, et celles qui sont en dehors de ce réseau d'autre part.

Internet est constitué par un empilement hiérarchique de réseaux. Les réseaux du bas de la hiérarchie ne possèdent souvent qu'un seul routeur frontière relié à un réseau de niveau supérieur. Tout paquet pour une destination hors de portée du réseau sera envoyé vers ce lien. On parle de route par défaut, puisque les paquets sont envoyés par là si aucune information concernant la destination n'est trouvée dans la table de routage. Celle-ci ne contient en effet que des entrées concernant les destinations accessibles via le réseau.

À l'inverse, un routeur du réseau supérieur qui connecte ce réseau à l'internet doit connaître l'ensemble des destinations accessibles via celui-ci, au cas où il recevrait un paquet pour l'une d'elles.

Les réseaux de plus haut niveau n'ont pas de route par défaut, on les appelle systèmes autonomes (en anglais « Autonomous System » ou AS), et ils constituent la nervure centrale (« backbone ») de l'internet. Ce sont eux qui assurent l'interconnexion globale de l'internet.

Les réseaux de différentes organisations sont reliés entre eux au gré d'accords bilatéraux (ou même multi-latéraux). Les deux organisations s'accordent sur les informations que s'échangent les routeurs et sur les conditions commerciales dans lesquelles ils s'échangent du trafic.

Les réseaux intermédiaires de la hiérarchie, que nous appellerons réseaux d'accès (ou « transit network » en anglais) peuvent aussi conclure à leur niveau de tels accords de « peering » (entre pairs).

structure de l'internet
Représentation schématique de la structure de l'internet.
Le réseau F est par exemple connecté par sa passerelle au réseau E, qui est lui-même un sous-réseau du système autonome A. Le réseau F pourrait par exemple être le réseau Wifi d'un particulier dont le modem ADSL f (qui fait aussi routeur Wifi) est relié à un routeur e (au nom de DSLAM) de son fournisseur d'accès à Internet. Ce routeur e fait partie du réseau national E de son fournisseur qui possède une connexion directe avec un système autonome A internationalement connecté.

Un réseau local peut aussi être directement connecté à un routeur du réseau d'accès. C'est souvent le cas pour les réseaux universitaires ou les réseaux d'entreprise.

Les routeurs des systèmes autonomes possèdent des sortes de méta-tables de routage qui indiquent pour une adresse IP comment atteindre le système autonome où se trouve la destination possédant cette adresse. Plus précisément, chacun de ces routeurs connaît la suite de systèmes autonomes qu'il va falloir traverser pour atteindre la destination. Pour cela, tout routeur frontière connecté au routeur frontière d'un autre système autonome échange avec lui des informations sur les adresses IP gérées par tel ou tel système autonome et sur les interconnexions entre système autonomes selon le protocole de routage BGP document externe au site (pour « Border Gateway Protocol »).

L'acheminement d'un paquet IP se fait donc généralement ainsi :

  1. le paquet remonte la hiérarchie de réseau jusqu'à un routeur du système autonome de la source,
  2. il transite ensuite de système autonome en système autonome jusqu'à celui de la destination,
  3. il descend la hiérarchie jusqu'à la passerelle en charge du réseau local de la destination,
  4. cette passerelle l'envoie à la destination.
structure de l'internet
Représentation schématique de l'acheminement d'un paquet.
Imaginons par exemple que le nœud s du réseau F envoie un paquet à destination de i (dans le réseau I en bas à droite de la figure). i ne faisant pas partie du réseau F, le routeur Wifi f relaie ce paquet vers sa passerelle par défaut e. e détectant que i n'est pas accessible sous le réseau E le fait parvenir à sa passerelle par défaut e' (le protocole de routage interne au réseau E indique qu'il faut pour cela passer par e"). e' passe alors le paquet à a dans le réseau A. Le réseau A ne possède pas de passerelle par défaut (il s'agit d'un système autonome). Ses routeurs savent que i est accessible sous le système autonome D qu'ils peuvent atteindre via C, qui est accessible via le routeur a' de A. a fait ainsi parvenir le paquet à a' (par routage interne à A), qui passe à c, qui passe de manière similaire à c', qui relaie le paquet vers d. d sait que i est dans un sous-réseau de D accessible via d', à qui il passe donc le paquet. d' qui interconnecte G sait qu'il doit passer le paquet à ce réseau d'accès intermédiaire pour atteindre i, le paquet circule ainsi ensuite par g, g', h, h', pour arriver finalement à i.

Bien sûr, un réseau intermédiaire de la hiérarchie peut s'apercevoir que la destination se trouve dans un autre des sous-réseaux qu'il connecte à l'internet. Dans ce cas, le paquet redescendra directement vers la destination, sans passer par les routeurs de plus haut niveau des systèmes autonomes. De même, un lien de « peering » avec un réseau intermédiaire en charge du réseau de la destination peut permettre de court-circuiter le passage par les systèmes autonomes.

Par exemple, sur la figure ci-dessus, un paquet envoyé depuis le réseau J à destination de i transitera par K, qui utilisera son lien de « peering » vers H, qui fera suivre directement vers I à destination de i. Notons qu'une commande, traceroute en savoir plus, vous permet de suivre la route suivie par vos paquets.

[ Page suivante ]

Url Lien