Difference between revisions of "MOOC:Compagnon Act03-f"

From Livre IPv6

(Nouveaux besoins d’adressage)
(Mesure 2 : NAT (Network Address Translation))
 
(59 intermediate revisions by 5 users not shown)
Line 1: Line 1:
 
__NOTOC__  
 
__NOTOC__  
 
= Activité 03 : Évolution de l'Internet =
 
= Activité 03 : Évolution de l'Internet =
{{Decouverte}}
+
<!-- {{Decouverte}} -->
  
== IPv4 à l'origine de l'Internet ==
+
== Introduction ==
 +
En 40 ans, Internet a connu une croissance exponentielle en termes de nombre de réseaux connectés et de nombre d’hôtes connectés. Internet connecte aujourd'hui 4,8 milliards d’utilisateurs soit 59 % de la population mondiale. A travers des graphiques et l'histoire récente des technologies associées, nous allons voir comment cette évolution s’est produite.
  
Au début des années 1980, alors que s'opérait l'interconnexion de différents réseaux informatiques pour créer l'Internet que nous connaissons aujourd'hui, IP s'est imposé comme le protocole standard de l'Internet. L'organisme de standardisation IETF spécifie la version 4 du protocole IP (IPv4) dans le document RFC 791, daté de 1981. En 1983, le réseau étasunien ARPANET choisit la pile TCP/IPv4 comme le standard de communication pour les équipements et les réseaux souhaitant se connecter. Ce choix s'est ensuite imposé sur l'ensemble des réseaux et des systèmes de ce qui allait devenir ensuite l'Internet.
+
<!--{{nouvelle version}}-->
  
 +
== Les différentes phases de l’évolution d’Internet ==
 +
La figure 1 reprend le graphique de Peter Magnusson <ref> The Internet Revolution – History and Significance https://petersmagnusson.org/2010/06/06/the-internet-revolution-history-and-significance/    </ref>
 +
qui présente des années 70 à 2000, une croissance en 3 phases, pour arriver à environ 100 millions d'hôtes connectés.
 +
 +
<center>
 +
[[Image:03-fig1.png|300px|center|thumb|Figure 1: Internet Evolution (Internet Society).
 +
]]
 +
</center>
 +
 +
=== La première phase : expérimentale ===
 +
La première phase est dite expérimentale et court de 1969 à 1986
 +
<ref>Internet Society: Brief History of the Internet https://www.internetsociety.org/internet/history-internet/brief-history-internet/</ref>, environ. En pleine guerre froide, le DARPA (Département de la Défense Américaine) souhaite interconnecter différents sites avec un contrôle décentralisé afin d’éviter une attaque du centre de contrôle qui pourrait affecter le fonctionnement de tout le réseau et des autres sites. Sur la figure 2, on voit le plan du réseau ARPANET en 1973. En 1971, ce réseau comprend 23 nœuds et 111 nœuds en 1977.
 +
 +
<center>
 +
[[Image:03-fig2.jpg|400px|center|thumb|Figure 2: Carte d’ARPANET en 1973.
 +
]]
 +
</center>
 +
 +
=== Les fondements : intelligence répartie et mode non connecté ===
 +
 +
L'intelligence répartie sur tous les éléments est le principe fondateur de l'Internet. Ce qui est révolutionnaire pour l’époque où tous les réseaux de télécommunication mais aussi les sytèmes informatiques étaient bâti sur un contrôle centralisé. Dans ces réseaux centralisés, le centre de contrôle gérait tout le fonctionnement du réseau, notamment pour construire les tables de routage utilisées par les noeuds, mais aussi pour établir une connexion entre deux utilisateurs afin de transférer des données (en mode connecté). Le mode réparti va donc être décliné dans les premiers protocoles développés. Contrairement au routage centralisé, tous les noeuds du réseau participent au routage en s'envoyant des informations de connectivité afin que chaque routeur construise sa table de routage.
 +
 +
=== IPv4 ===
 +
 +
Au début des années 1980, alors que s'opérait l'interconnexion de différents réseaux informatiques pour créer l'Internet que nous connaissons aujourd'hui, IP (Internet Protocol) s'est imposé comme le protocole standard de l'Internet. L'organisme de standardisation IETF spécifie la version 4 du protocole IP (IPv4) dans le document RFC 791, daté de 1981. Ce RFC définit d'une part, l'adresse sur 32 bits et son format en 2 champs de longueur variable et d'autre part, le paquet, son unité de données de transfert.
 +
En 1983, le réseau étasunien ARPANET choisit la pile TCP/IPv4 comme le standard de communication pour les équipements et les réseaux souhaitant se connecter. Ce choix s'est ensuite imposé sur l'ensemble des réseaux et des systèmes de ce qui allait devenir ensuite l'Internet.
 
Le protocole IPv4 a été un élément décisif dans le passage à l'échelle de l'Internet. Ses spécifications généralisent les propriétés importantes de connectivité globale et de contrôle de bout en bout. Elles définissent pour les adresses IP une longueur fixe de 32 bits. IPv4 permet ainsi de définir un nombre important d'adresses (2<sup>32</sup> soit plus de 4,3 milliards), donc autant d'identifiants attribués à chaque équipement connecté. Au moment où ont été définies ces spécifications, le réseau ARPANET comptait quelques centaines d'équipements. En 1987, ce nombre dépassa les 10 000 puis 160 000 à la fin de l'année 1989 <ref>Internet History of 80s, https://www.computerhistory.org/internethistory/1980s/</ref>. La capacité d'adressage d'IPv4 semblait alors suffisante pour pouvoir répondre au besoin de nouvelles connexions, même si celui-ci augmentait rapidement.
 
Le protocole IPv4 a été un élément décisif dans le passage à l'échelle de l'Internet. Ses spécifications généralisent les propriétés importantes de connectivité globale et de contrôle de bout en bout. Elles définissent pour les adresses IP une longueur fixe de 32 bits. IPv4 permet ainsi de définir un nombre important d'adresses (2<sup>32</sup> soit plus de 4,3 milliards), donc autant d'identifiants attribués à chaque équipement connecté. Au moment où ont été définies ces spécifications, le réseau ARPANET comptait quelques centaines d'équipements. En 1987, ce nombre dépassa les 10 000 puis 160 000 à la fin de l'année 1989 <ref>Internet History of 80s, https://www.computerhistory.org/internethistory/1980s/</ref>. La capacité d'adressage d'IPv4 semblait alors suffisante pour pouvoir répondre au besoin de nouvelles connexions, même si celui-ci augmentait rapidement.
  
Au début des années 1990, le réseau précurseur ARPANET a laissé sa place à l'interconnexion des réseaux que nous appelons aujourd'hui l'Internet. Au même moment est apparue une nouvelle application utilisant les capacités de communication de l'Internet : le ''World Wide Web''. Très simple d'utilisation, permettant de consulter des contenus de plus en plus riches, le Web a vite créé un nouveau besoin de connexion à l'Internet, notamment chez les particuliers qui s'équipaient alors massivement avec des ordinateurs personnels. L'Internet devint alors mondial, se structurant par l'interconnexion des opérateurs publics et privés des différents pays. En 1992, le nombre d'équipements connectés à l'Internet dépasse le million.
+
=== La seconde phase : l’expansion  ===
  
== Apparition des premières limitations et mesures d'urgence ==
+
En 1983, le réseau Arpanet a été séparé du réseau militaire pour rester utilisé par des écoles et des universités américaines. L'intégration par l'Université de Berkeley des protocoles TCP/IP dans le noyau du système d'exploitation Unix est un événement très important qui va accélérer la diffusion des protocoles de l'Internet et son adhésion par le plus grand nombre.
  
L'Internet n'avait pas été prévu pour supporter une telle croissance. Chaque nouveau foyer, entreprise ou établissement se raccordant à Internet crée de nouvelles demandes en adresses IP. De plus, la topologie du réseau se complexifie avec la multiplication des sites et des opérateurs. Des projections ont alors montré que les politiques de gestion de l'Internet alors en vigueur risquaient d'entrainer une pénurie très rapide.
+
Les années 80 voient la généralisation des stations de travail sous Unix autonomes mais avec des capacités limitées en termes de puissance de calcul et de capacité de stockage disque. Ces stations ont besoin de communiquer entre elles pour l'accès à des ressources partagées comme le système de fichiers ou les imprimantes.  La pile TCP/IP va être massivement utilisée pour ces communications locales puis mondiales.
  
Les organismes régulateurs de l’Internet ont donc modifié les politiques d'attribution des adresses afin d’éviter tout gaspillage de cette ressource limitée et ainsi maintenir le développement des réseaux IPv4. Le premier changement a concerné les opérateurs. Ceux-ci se sont vu imposé de nouvelles règles dans l'attribution des blocs d'adresses <ref>Wikipedia, [https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing Classless Inter-Domain Routing].</ref>
+
<!--Elles utilisent le système UNIX, un système évolutif et multi-tâches qui est le premier système  non propriétaire programmé en langage C.-->
  
Une adresse codée sur 32 bits permet théoriquement d'adresser 2^32 machines, soit à peu près 4 milliards. Ce nombre pourrait paraître au premier abord très élevé, mais les ordinateurs ne sont pas numérotés séquentiellement. Ils sont regroupés par réseaux. À chaque réseau est affecté un numéro qui est codé sur une partie des 32 bits de l'adresse des machines. On s'aperçoit alors que le nombre d'adresses "réseaux" disponibles n'est pas si important que cela et conduit à une pénurie. La tendance actuelle consiste à freiner au maximum l'allocation des adresses réseaux. Ce n'est pas un problème pour les sites déjà équipés disposant déjà de larges plages d'adresses. Cette contrainte est déjà forte pour les nouveaux sites dans les pays dits "développés" pour lesquels un grand nombre d'adresses a été réservé mais se révèle être un problème majeur pour les pays émergents où parfois moins de 10 réseaux de 250 machines ont été attribués pour l'ensemble du pays.
+
En effet, les protocoles Internet proposent des applications de communication inter-personnelle comme le mail, le transfert de fichiers, ou les news. Très vite, les chercheurs et les ingénieurs vont les adopter pour échanger des informations scientifiques entre collègues du monde entier. Ces utilisateurs experts <!-- qui ne sont pas rebutés par des lignes de commandes et parlent couramment anglais--> vont réaliser des tests en vraie grandeur de l'Internet.  
  
Les équipements d'interconnexion des réseaux, orientant les paquets vers leur destination finale, sont des routeurs. Pour prendre leurs décisions, ils consultent une table dite de routage. Le nombre de réseaux dans l'Internet croissant de manière vertigineuse, ces tables de routage deviennent de plus en plus volumineuses et difficiles à maintenir. Pour pallier ce problème, une solution d'adressage hiérarchique permettant de réunir un ensemble de numéros de réseaux contigus en un seul préfixe a été conçue (CIDR : ''Classless Inter Domain Routing''). En plus de la réduction des tables de routage, CIDR permet aussi de réduire la surallocation d'adresses aux sites terminaux, réduisant quelque peu la pénurie d'adresses. Avec CIDR, le propriétaire de l'adresse est modifié. Dans les plans d'adressage initiaux, le site était propriétaire de son préfixe ; avec CIDR le préfixe devient la propriété de son opérateur, rendant la renumérotation du réseau nécessaire si le site change d'opérateur. Cet adressage hiérarchique a montré son efficacité opérationnelle et les règles d'adressage actuelles pour IPv6 généralisent ce principe.
+
=== La troisième phase : l’universalité ===
  
== Nouveaux besoins d’adressage ==
+
Au début des années 1990, le réseau précurseur ARPANET a laissé sa place à l'interconnexion des réseaux que nous appelons aujourd'hui l'Internet. L'Internet devint alors mondial, se structurant par l'interconnexion des opérateurs publics et privés des différents pays. En 1992, le nombre d'équipements connectés à l'Internet dépasse le million.
 +
En parallèle, dans les années 90, la micro-informatique se développe dans les entreprises et chez les particuliers qui commencent à s'équiper d'ordinateurs personnels assez basiques mais très économiques. Et grâce à la technologie ADSL, dès la fin des années 90, le débit d'accès va être dopé en utilisant toute la capacité des paires téléphoniques. Une autre avancée technologique vient de la généralisation des interfaces graphiques qui va simplifier l'accès des utilisateurs aux informations et aux commandes du système. Ainsi, grâce à la souris, aux fenêtres, boutons et autres barres de défilement, l’utilisateur n’a plus besoin de connaître les commandes Unix !
  
L’Internet a créé de nouveaux usages. Il a fait naitre aussi de nouveaux besoins de communication. De nouveaux objets communicants apparaissent aussi bien dans le domaine domestique que dans l’industrie, dans les transports, dans le milieu médical...   Les 4,3 milliards d’adresses (2<sup>32</sup>) du protocole IPv4 s’avèrent aujourd’hui insuffisantes pour les nouveaux usages d'Internet. Tandis que les supports de transmission et les équipements ont évolué, le protocole IPv4 a gardé des fonctionnalités historiques devenues obsolètes aujourd'hui.  En plus d'une capacité d'adressage accrue, le protocole IPv6 est un retour aux principes qui ont fait le succès d'IP, garantissant efficacité, résilience et perspectives d’évolution.
+
Les informations contiennent toujours des textes mais sont aussi enrichies par des images, des sons et des vidéos. Dès cette époque, dans l'Internet se pose le problème de la recherche d'informations dans ce réseau mondial avec des contenus toujours plus nombreux. Les premiers moteurs de recherche font leur apparition [ref sur moteurs] . Mais le progrès le plus significatif a été le développement de l'application Web, connu aussi sous le nom ''World Wide Web''. Cette application, dite client-serveur, se compose d'un navigateur, programme qui s’exécute sur le terminal de l’utilisateur et d’un serveur Web qui gère des contenus. La communication entre navigateur et serveur se fait à travers l’Internet.  
 +
Le serveur Web propose des contenus tels que des pages HTML, des sons, des images ou des vidéos. Un fichier HTML est une description de la page Web à afficher et des objets qu’elle contient. Le navigateur envoie des requêtes au serveur pour obtenir cette page et ses objets. En réponse, le serveur lui envoie le fichier HTML et les objets. Le navigateur réalise le formattage des contenus reçus pour les afficher sur le terminal de l’utilisateur.
 +
Dans cette page, des éléments sont mis en évidence et peuvent être ‘’cliqués’’ pour accéder directement à une nouvelle page. Grâce aux liens ‘hypertexte’ qui chaînent les pages entre elles, les contenus sont faciles à trouver. Au fur et à mesure, les contenus se sont enrichis dans toutes les langues et dans tous les pays du monde, rendant le Web plus proche et plus attractif pour les particuliers.
  
Nous avons décrit une analogie de l'acheminement des données dans l'Internet avec celui du courrier dans le système postal. Un élément fondamental dans ce système est que chaque maison, pour recevoir du courrier, doit posséder une boîte aux lettres. Cette boîte est identifiée de manière unique par une adresse postale qui est renseignée sur chaque enveloppe devant être distribuée dans cette même boîte. De la même manière, une adresse postale sert à identifier de manière unique l’expéditeur de la lettre. Par analogie, on peut rapprocher les notions dans le système postal de boîte aux lettres et d’adresse postale à celles, dans l’Internet, d’interface de communication et d’adresse IP. Les paquets IP sont émis et reçus à travers l’interface de communication. Ils sont acheminés à travers l’Internet vers la destination désignée par l’adresse IP contenue dans l’en-tête de chaque paquet.
+
=== La quatrième phase : l’explosion ===
<!--
+
{{Note| BS|Reprendre l'analogie des numéros de téléphone plutôt que du système postal pour explique la pénurie}}
+
-->
+
  
À la fin de la décennie 2010, les opérateurs de l’Internet ont commencé à ressentir sévèrement les effets de la pénurie des adresses IPv4 amorcée dès le milieu des années 1990. La prise de conscience de ce phénomène s’est amplifiée alors que les effets ont commencé à toucher le grand public, clients de ces opérateurs.  
+
Dès les années 2010, la croissance a continué de manière exponentielle pour arriver à 4,5 milliards d'utilisateurs soit 59% de la population mondiale. La 4ème phase que nous vivons actuellement pourrait s’appeler l’explosion !
 +
Quatre phénomènes expliquent cette croissance sans précédent.
 +
* D'abord, le nombre d'hôtes utilisant Internet a augmenté car les consoles de jeux, les tablettes ou les télévisions sont maintenant connectés à Internet . Il y a désormais 4 à 5 terminaux ou ‘’écrans’’ par personne. <!-- : smartphone, tablette, PC entreprise, PC portable, ou la console de jeux. -->
 +
<!-- : On parle ''d'écrans'' car souvent l'utilisateur se contentent de regarder une vidéo.-->
 +
* Les 3èmes et 4èmes générations des réseaux mobiles permettent désormais à des terminaux intelligents comme les smartphones, de transférer non seulement de la voix mais aussi des données, des images et des vidéos.
 +
Comme on le constate sur ce schéma qui représente une minute d'utilisation d'Internet, de nouvelles applications sont massivement utilisées par les internautes comme la vidéo à la demande et le streaming, les réseaux sociaux, le pair-à-pair ou les jeux. Les communications inter-personnelles vidéo se généralisent.
 +
* Enfin, ces 20 dernières années, de nombreux pays émergents, en Asie, en Amérique du Sud ou en Afrique, ont connu un développement économique sans précédent. Il s'est accompagné de leur développement technologique conduisant à leur adhésion massive à l'Internet.
 +
* De nouveaux usages ont dopé la demande de débit sur Internet. Ainsi la figure 3 représente une minute d'utilisation d'Internet. On constate ainsi que les nouvelles applications, telles que la vidéo à la demande et le streaming, les réseaux sociaux, le pair-à-pair ou les jeux sont massivement utilisées par les internautes. De même, les communications inter-personnelles vidéo se généralisent.
 +
<center>
 +
[[Image:03-fig3.jpg|300px|center|thumb|Figure 3:</ref This is what happens in An Internet Minute [ ]/ref>.
 +
]]
 +
</center>
  
<!--
+
Sur le graphique de la figure 4(a), on voit la forte progression du nombre d’utilisateurs d’Internet entre 2000 et 2010, pour chaque région du monde. Le développement économique de l’Asie lui a donné la croissance la plus forte. Le nombre d’utilisateurs a été multiplié par 7 pour prendre la tête du nombre d’internautes, à la place de l’Europe et des Etats-Unis. En fait, le nombre d’utilisateurs de l’Internet augmente plus vite que la croissance de la population mondiale (voir Fig.5).  
{{Note| BS|Trouver des courbes permettant de rendre compte de l'augmentation de la pénétration d'Internet, ou du nombre d'équipements connectés}}
+
-->
+
Reprenons l’analogie avec le système postal pour mieux comprendre ce problème de pénurie d’adresses IPv4. Les opérateurs de l’Internet font face à un besoin croissant de raccordements à l’Internet, notamment aujourd'hui avec la multiplication des centres de données et le développement de nouveaux usages à travers les objets connectés. Un scénario similaire serait celui d’un système postal devant s’adapter à une urbanisation effrénée. Chaque nouvelle habitation installe sa boîte aux lettres à laquelle il faut assigner une adresse postale. La contrainte, dans le cas de l’Internet, est que le stock d’adresses disponibles est limité. <!--Cela reviendrait à limiter la possibilité pour le système postal de numéroter les boîtes aux lettres d’une même rue (de 0 à 99 par exemple).-->On est dans la situation où la numérotation des boîtes aux lettres d'une même rue serait codée uniquement sur deux chiffres (de 0 à 99 par exemple). Alors que le nombre de ces boîtes augmentent, le système ne pourra plus assigner de nouvelles adresses lorsque la limite sera atteinte. De la même façon, confrontés à la limitation du nombre d’adresses IPv4 disponibles, les opérateurs de l’Internet ont des difficultés pour attribuer des adresses IP à chaque nouveau raccordement.
+
<!--
+
{{Note| BS|Reprendre l'analogie des numéros de téléphone plutôt que du système postal pour explique la pénurie}}
+
-->
+
  
== Contourner la pénurie ==
+
<center>
 +
{| border="0" cellspacing="4"
 +
! [[Image:03-fig4-penetration.png|300px]] <br>(a)
 +
! [[Image:03-fig5.png|300px]] <br>(b)
 +
|}
 +
Figure 4: (a) Nombre d’internautes en 2000 et 2010, par régions du monde[Internet World Stats: www.pingdom.com].
 +
(b) Croissance de la population et du nombre depuis 1985. .
 +
</center>
  
Bien sûr, des solutions ont été trouvées pour contourner un problème qui aurait autrement signifié l’arrêt de l’expansion de l’Internet. En réalité, l’Internet a déjà connu un tel risque de pénurie au début des années 1990, lors de l’émergence de l’Internet commercial. Le nombre d’adresses IPv4 disponibles (4 milliards) semblait à ce moment suffisant.
 
<!--
 
{{Note|Pascal| l’effondrement de l’Internet c'est quoi concretement si il n'y a plus d'adresse ? ce n'est pas la fin de la croissance plutôt; A développer}}
 
-->
 
  
Le second changement a porté sur l'attribution des adresses aux systèmes terminaux. L'idée a été le partage des adresses. Un système ne possède plus une adresse mais doit utiliser une adresse partagée avec d'autres systèmes. Pour mettre ce nouveau mode d'attribution des adresses IP, des dispositifs techniques ont été introduits et des plages d'adresses ont été réservées pour leur mise en oeuvre. L'adresse IP à partager est attribuée à ce dispositif à charge à lui de la partager avec les systèmes d'extrémités qui lui sont connectés. La connectivité entre cet équipement et les systèmes d'extrémités est réalisé par un réseau privé ayant une plage d'adresses spécifiques (RFC 1918).  
+
 
 +
 
 +
 
 +
Le nombre d’internautes en 2020 est d’environ 4,8 milliards et représente 59% de la population mondiale. L'Internet n'avait pas été prévu pour supporter une telle croissance. La capacité d'adressage des 32 bits d'adresse, en théorie 4,3 milliards, est donc largement dépassée.
 +
 
 +
== Mesures d’urgence pour lutter contre la pénurie d’adresses ==
 +
 
 +
L'Internet vit depuis des années en situation de pénurie d'adresses. Cette pénurie d'adresses a été prédite dès le milieu des années 1990, peu après la naissance du Web. Des mesures palliatives ont été prises pour ralentir la consommation des adresses et ralentir l'apparition de la pénurie complète des adresses IPv4.
 +
 
 +
=== Mesure 1 : CIDR (Classless Inter Domain Routing) ===
 +
 
 +
Comme on l’a vu sur la figure 4, l'accroissement du nombre d'hôtes date du début des années 90 ce qui a alerté les instances de l'Internet qui ont pris plusieurs mesures d'urgence. La première mesure a consisté à abandonner le système de classes d'adresses. En effet, les classes d’adresse utilisent une granularité d'allocation trop grossière menant à un gaspillage excessif. Un deuxième inconvénient était une représentation trop importante des très grands réseaux aux détriments des petits réseaux, qui étaient les plus nombreux.
 +
La méthode sans classe ou <ref> Classless Inter-Domain Routing (CIDR) [https://datatracker.ietf.org/doc/html/rfc1817] </ref>, a été mise au point en 1993, de sorte que la totalité de l'espace d'adressage unicast soit disponible. La longueur du préfixe réseau qui est variable, comme on l'a vu, est spécifiée pour chaque adresse en ajoutant à la fin "/x" où x est le nombre de bits dans le préfixe réseau.
 +
Par exemple, si un FAI a besoin de 8000 adresses, avec les classes, on lui aurait allouer une classe B qui dispose de 65536 adresses d'où un énorme gaspillage ! Sans classe, on peut allouer à ce FAI un bloc /19 soit 8192 adresses ce qui est proche de son besoin.
 +
 
 +
=== Mesure 2 : NAT (Network Address Translation) ===
 +
 
 +
La deuxième mesure, appelée NAT ou Network Address Translation, consiste à translater en sortie de réseau, une adresse privée vers une adresse publique. Cela permet d’économiser les adresses publiques en combinant un adressage privé dans le sous-réseau, et le partage de l'adresse publique entre les hôtes en sortie du sous-réseau. Cette translation est effectuée sur tous les paquets traversant les routeurs et les box. L’adressage privé est défini dans la <ref> RFC 1918 [https://datatracker.ietf.org/doc/html/rfc1918 ] </ref>,  et permet d’utiliser 3 plages d’adresses réservées à cet usage et donc non routables :  10.0.0.0/8, 172.16.0.0/12, et 192.168.0.0/16.
 +
 
 +
Par exemple, sur la figure 8(a), Alice doit connecter 5 machines à la maison et son FAI lui a donc distribué 5 adresses : 123.45.67.2, 123.45.67.3, 123.45.67.4, 123.45.67.5, 123.45.67.6.
 +
Cependant, le FAI ne dispose pas d’un bloc d’adresses suffisant pour distribuer autant d’adresses que demandées par ses clients. En effet, les FAI ne proposent qu’une seule adresse publique dans leur forfait standard d’abonnement à Internet. En utilisant NAT, le fournisseur d’Alice ne lui alloue plus qu’une seule adresse routable et Alice a affecté à ses hôtes une adresse privée. Dans la figure 8(b), les 5 hôtes d’Alice dispose respectivement des adresses : 192.168.0.2, 192.168.0.3, 192.168.0.4, 192.168.0.5, 192.168.0.6.
 +
 
 +
<center>
 +
{| border="0" cellspacing="12"
 +
! [[Image:03-fig8-a.png|300px]] <br>(a)
 +
! [[Image:03-fig8-b.png|300px]] <br>(b)
 +
|}
 +
Figure 8 : (a) Plan d'adressage sans NAT. (b) Plan d'adressage privé et NAT
 +
</center>
 +
 
 +
Le mécanisme NAT a été ajouté aux fonctions classiques du routeur. Il consiste à translater les adresses privées internes au réseau vers l’adresse publique, routable sur l’Internet. A chaque fois qu’un paquet IP sort vers l’Internet, le routeur effectue la translation de l’adresse source de ce paquet en l’adresse publique attribuée à cet abonné. Comme plus d’une machine est connectée sur le réseau, il faut utiliser un autre champ de l’en-tête pour distinguer les hôtes sources. On utilise le port source qui est dans l’en-tête TCP ou UDP. Une table de translation NAT est maintenue par le routeur qui mémorise ainsi 4 informations : adresse IP source, numéro de port source, adresse IP translatée, numéro de port translaté. En sortie, il translate (adresse IP source, numéro de port source) vers (adresse IP translatée, numéro de port translaté) c’est-à-dire qu’il réécrit les adresse et port source dans les en-têtes IP et TCP du paquet. Quand un paquet de réponse arrive en entrée du routeur, la translation inverse est effectuée avec toujours réécriture de l’adresse et du port.
 +
Le mécanisme NAT engendre donc des opérations supplémentaires pour le routeur qui doit les faire pour chaque paquet.  
 +
 
 
<!--
 
<!--
{{Note|V| pourquoi ne pas mettre directement routeur, qui a déjà été introduit. Ce n'est pas clair !}}
+
== Où en est IPv4 ? ==
 +
 
 +
L'Internet vit depuis des années en situation de pénurie d'adresses. Cette pénurie d'adresses a été prédite dès le milieu des années 1990, peu après la naissance du Web. Des mesures palliatives ont été prises pour ralentir la consommation des adresses et ralentir l'apparition de la pénurie complète des adresses IPv4. La première mesure a été de retenir une méthode plus efficace d'attribution des adresses IPv4 en s'appuyant sur des longueurs de préfixe réseau de taille variable. Ce changement connu sous le nom de CIDR (''Classless Inter-Domain Routing'') n'était pas suffisant. Il fallait toujours une adresse IP par nœud se connectant à l'Internet. La seconde mesure a été de restreindre l'attribution des adresses aux nœuds par une allocation temporaire et non plus permanente. Ceci revient plus exactement à partager, dans le temps, une adresse IP entre plusieurs nœuds. Ce partage des adresses a validé le constat qu'il y a bien une pénurie d'adresses dans l'Internet. En pratique, le partage des adresses IPv4 a été possible avec l'introduction de la fonction de NAT (''Network Address Translation'') [RFC 2663] dans le routeur  et le recours à l'adressage privé [RFC 1918], comme le préfixe <tt>192.168.0.0/16 </tt>largement utilisé dans les accès des particuliers.
 +
 
 +
{{HorsTexte|Plan d'adressage privé IPv4 RFC1918|Le plan d'adressage privé [RFC 1918] réserve des préfixes pour des réseaux de différentes tailles  qui sont dans l'ordre décroissant : 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16. Ces préfixes sont non routables sur l'Internet public, mais les réseaux issus de ces préfixes peuvent être routés sur des topologies privatives (réseaux de campus, réseaux d'entreprise, réseaux domestiques...).}}
 +
 
 +
Un ensemble de nœuds derrière le NAT et identifié par l'adressage privé (routable sur une topologie privative) se partage une ou plusieurs adresses IP globales (aussi appelés adresses publiques, routables sur l'Internet public). Le NAT est une fonction de la "box" (routeur résidentiel) que chacun utilise à domicile pour accéder à Internet.  Le NAT remplace dynamiquement les adresses privées par des adresses globales dans un sens et inversement dans l'autre sens. Lorsque qu'il n'y a qu'une simple adresse IP globale de disponible, à partager entre plusieurs machines d'adresse privée, la mise en correspondance avec cette adresse globale nécessite d'utiliser le numéro de port. Dans ce cas, en plus de traduire l'adresse, le NAT change aussi le numéro de port, on parle alors de NAPT (''Network Address and Port Translation'').
 
-->
 
-->
  
Afin d'assurer l'interconnexion des réseaux privés avec l'Internet, ces  équipements effectue une traduction d’adresses. C'est à dire l'adresse privée est remplacée par l'adresse publique à partager. Techniquement, ces équipements sont appelés des NAT (''Network Address Translation'') et se trouve dans les box Internet que vous avez chez vous.
+
La figure 9 représente le cumul des adresses IPv4 consommées et l'effet des différentes mesures de réduction de consommation des adresses. <ref>Huston, G (2013). APNIC Labs. [http://labs.apnic.net/?p=335 A Primer on IPv4, IPv6 and Transition] </ref>. Les adresses IPv4 sont exprimées par le préfixe de longueur 8 bits. Cette figure montre bien une diminution du taux de consommation des adresses IPv4. Ce qui a permis de gagner du temps avant de passer à une solution définitive. Mais le développement de l'Internet dans la téléphonie mobile et la banalisation des accès ADSL ont accéléré la pénurie. Le graphique (b) de la figure 9 montre que, depuis 2011, la pénurie est aigüe par cette chute du taux de consommation des adresses.
 +
 
 +
<center>
 +
{| border="0" cellspacing="2"
 +
! [[Image:41-fig1-v1.png|290px]] <br> (a)
 +
! [[Image:41-fig27I.png|300px]] <br>(b)
 +
|}
 +
Figure 9 : Cumul de consommation des adresses IPv4 et taux de consommation.
 +
</center>
 +
 
 +
{{HorsTexte|Notation "/8"|Dans les diagrammes montrant l'usage des adresses IPv4, celles-ci sont agrégées par "/8". Comme l'espace d'adressage IPv4 est un champ de 32 bits, il y a 4 294 967 296 valeurs uniques représentées dans ce contexte par une séquence de 256 "/8" bits où chaque "/8" correspond à 16 777 216 adresses uniques.}}
 
<!--
 
<!--
{{Note|V| mais NAT est un logiciel  !}}
+
{| style="border-style: solid; border-width: 1px; background-color:#ededed"
{{Note|Pascal| mettre un schéma du NAT}}
+
|-
 +
| Dans les diagrammes montrant l'usage des adresses IPv4, celles-ci sont agrégées par "/8". Comme l'espace d'adressage IPv4 est un champ de 32 bits, il y a 4 294 967 296 valeurs uniques représentées dans ce contexte par une séquence de 256 "/8" bits où chaque "/8" correspond à 16 777 216 adresses uniques.
 +
|-
 +
|}
 
-->
 
-->
Ces équipements sont intrusifs et modifient en profondeur le mécanisme d’acheminement des paquets sur l’Internet, car ils exploitent des informations au delà de l’en-tête IP. C’est un peu comme si, dans le système postal, le facteur était obligé d’ouvrir l’enveloppe du courrier et de lire le contenu de la lettre pour en connaître le destinataire.
 
Et comme le facteur ne connait pas toutes les langues, les contenus dont il n'est pas capable de déchiffrer, il jète la lettre. Vous en conviendrez que le service postal serait moyen si on peut dire !
 
Dans le cas de l'Internet, cela signifie qu'un nouveau protocole lorsqu'il est utilisé peut ne pas passer les NAT. Ces paquet sont jetés par le NAT dans la mesure qu'ils ne le comprennent pas. Ce comportement est très fâcheux car il bloque l'innovation sur l'Internet. Ce phénomène connu porte le barbarisme "d'ossification". C'est la conséquence du nom respect du principe de bout en bout. Ce principe dicte une règle de distribution des fonctions qui est central de l'architecture du réseau Internet. Il énonce que « plutôt que d’installer l’intelligence au cœur du réseau, il faut la situer aux extrémités : les nœuds au sein du réseau n’ont à exécuter que les fonctions très simples qui sont nécessaires pour les applications les plus diverses, alors que les fonctions qui sont requises par certaines applications spécifiques seulement doivent être exécutées en bordure de réseau. Ainsi, la complexité et l’intelligence du réseau sont repoussées vers ses lisières. Des réseaux simples pour des applications intelligentes. » <ref>Lawrence Lessig, L'Avenir des idées, 2005, Presses universitaires de Lyon, 1re partie, paragraphe 75 dans l'édition numérique des Presses. </ref> La première conclusion que nous pouvons tirer de la mise en place de cette solution à base de traduction d'adresses est que le principe fondateur de l'Internet est non respecté ayant pour conséquence d'empêcher son évolution.
 
  
L'autre effet de ce nouveau mode d'attribution des adresses est la complexité pour pouvoir joindre un système d'extrémité qui n'a pas d'adresse propre (on parle d'adresse publique).
+
== Limites des mesures d'urgence ==
Traditionnellement l'interaction des applications communicantes se fait à l'initiative d'un client. Ce dernier contacte un serveur.  Un client peut s'accommoder de ne pas avoir une adresse publique. Il en est tout différemment  pour un serveur. Pour être contacté par le client, il doit avoir une adresse qui l'identifie sans ambiguité. Il lui faut donc une adresse publique qui lui est propre.  Le nouveau dispositif de partage d'adresse n'est pas utilisable pour un serveur. Il s'ensuit que les systèmes d'extrémités ne sont plus équivalents vis à vis de l'adressage.
+
La conséquence c'est selon la connectivité à Internet, le système d'extrémité est limité dans son rôle.  Soit il ne peut être que client ou soit  il  peut avoir un rôle de client ou serveur.
+
Avec le développement de la domotique, de l'internet des objets, des applications de téléphonie ou de visio conférences, il est nécessaire d'avoir des adresses propres.  L'utilisation de ces services dans le contexte des dispositif de partage de l'adresse public, rend énormément compliqué leur accès et leur utilisation depuis un téléphone portable (Ceux qui ont installé une caméra IP dans leur domicile peuvent en témoigner). La seconde conclusion de l'introduction d'une connectivité à base d'un dispositif de traduction à l'impossibilité d'héberger simplement des serveurs  avec des adresses privées.
+
<!--
+
{{Note|Pascal| tout semble marcher en IPv4 mais ce n'est pas suffisant trop de limitation, à développer}}
+
  
 +
=== Fin du bout-en-bout ===
  
== La bonne solution à  la pénurie ==
+
Cependant, la solution NAT rend la connectivité Internet coûteuse et complexe. Les serveurs qui sont dans un réseau avec adressage privé et NAT ne sont plus atteignables  et des techniques  de contournement  ont dû être mise en œuvre pour que les applications retrouvent une connectivité globale (à savoir, pouvoir être appelées ou appelantes).  
 +
De plus, le NAT introduit un état dans le réseau qui fragilise la robustesse du système de communication. Il convient ici de ne pas oublier qu'un principe fondateur de l'Internet est de rendre le fonctionnement de l'infrastructure de communication indépendante du fonctionnement des producteurs et consommateurs de données. Ce principe connu sous le nom de "bout-en-bout" a conduit à définir le service réseau en mode "non connecté". Aucune marque ou état, issu d'une communication, n'est mémorisé dans le réseau : tout est indiqué dans le paquet. On parle d'unité de transfert auto-descriptive. L'en-tête du paquet comporte toutes les informations pour aller de la source à la destination.
 +
Le NAT est en complète contradiction avec ce principe. Le paquet n'est plus auto-descriptif de la source à la destination car chaque passerelle NAT traversée modifie les informations de l'acheminement du paquet. On peut considérer que chaque NAT traversé conduit à constituer un tronçon du chemin pour atteindre la destination. C'est cette succession de tronçons qui devient le chemin de la source à la destination. On peut voir que, d'une infrastructure de communication de bout-en-bout, l'Internet a évolué vers une infrastructure de communication devant gérer des changements de tronçons. Or, ces changements de tronçons demandent des états complexes à gérer en mode "non connecté", ce qui rend le système fragile. En effet, une panne d'un NAT suffit à interrompre toutes les communications le traversant, ce qui n'est pas le cas quand cela arrive à un routeur. Certes, des solutions existent, à base de redondances de NAT, pour maintenir la disponibilité de ce dispositif. Ces solutions sont coûteuses et complexes à mettre en œuvre et ne constituent pas le cas courant.
  
{{Note|Jacques| "A défaut d’autres solutions," ??? S. Bortzmeyer, indique (mais je n'ai pas retrouvé la référence), que l'inertie à la migration a aussi pour origine la rentabilité et la croissance immédiate. Plutôt que d'investir le premier dans une techno (IPv6) avec d'hypothétiques gains concurrentiels futurs, les opérateurs ont misé sur les gains immédiats et faciles en généralisant le NAT, quitte à ce que le coût en devienne prohibitif (cf la complexité du CGN). *A simplifier dans un contexte d'activité introductive.* s/A défaut d’autres solutions,/Par facilité, mais aussi réticence à l'appropriation du nouveau protocole, ces mécanismes de translation se sont généralisées dans les infrastructures des opérateurs pour atteindre aujourd'hui un niveau de complexité d'acheminement pénalisant (cf CGN Carrier Grade NAT) pour la croissance d'Internet/g}}
+
L'introduction du NAT a donc changé l'architecture de l'Internet, supprimant la propriété de bout-en-bout [RFC 2993]. La conséquence est que déployer des nouveaux services ou des nouveaux protocoles de transport est devenu quasi impossible. Car, non seulement NAT change l'adresse IP, mais il modifie souvent aussi le numéro de port situé au niveau de la couche de transport, ce qui a pour conséquence de figer les protocoles de transport actuels. L'ajout d'un nouveau protocole de transport nécessite de mettre à jour le code de tous les NAT en activité, ce qui représente une opération quasi impossible du fait de la diversité des NAT et de leur nombre. Cette idée de rigidification de l'Internet est nommée par le terme d'"ossification". Devant cet état de fait, des réflexions sont menées dans les instances de la gouvernance Internet pour essayer de sortir de cette impasse [RFC 7663].
-->
+
  
A défaut d’autres solutions, ces dispositifs se sont généralisés dans l’Internet et sont aujourd’hui nécessaires pour permettre de continuer l’acheminement des paquets IPv4.
+
=== Complexité accrue ===
  
Cette séparation créée entre réseaux privés et réseaux publics pénalise la capacité de communiquer entre n'importe quel équipement connecté à l'Internet qui était à l'origine une propriété importante de l'Internet.  Elle limite aussi l'introduction des nouvelles applications ou d'installer des serveurs simplement.
+
Le routeur doit effectuer plus d'opérations pour chaque paquet à relayer mais NAT a aussi des conséquences sur les applications notamment client-serveur. Le modèle d'interaction se trouve aussi, d'une certaine manière, rigidifié. Dans le modèle d'interaction client-serveur, les clients qui sont derrière le NAT peuvent s'accommoder de partager une simple adresse IP. Il en est tout autrement pour les serveurs qui ont besoin d'une adresse IP qui leur soit propre afin d'être contactés. Ainsi, ce changement architectural de l'Internet l'a transformé petit à petit en un système minimaliste à l'image des services télématiques utilisés à l'époque du minitel. Il est composé de clients et de serveursLes possédants d'un adressage public ont ainsi un avantage pour promouvoir leur service. Une certaine forme de contrôle des services est ainsi donnée aux hébergeurs et opérateurs. La conséquence de cette évolution est qu'il est très difficile pour un utilisateur derrière un NAT d'offrir un service. Il en est de même pour les applications de type "pair à pair" (comme la téléphonie sur IP, les jeux répartis...) qui sont devenues terriblement complexes pour contourner les difficultés introduites par le NAT pour les connexions entrantes [RFC 5128]. De fait, l'innovation dans ce type d'application est d'une certaine manière réduite. Le NAT est le composant qui participe à limiter l'apparition de nouveaux acteurs et à maintenir une certaine forme de rente pour les acteurs en place.
  
Au moment de cette prise de conscience de la pénurie d’IPv4, l’IETF, organisme responsable de la standardisation des protocoles utilisés sur Internet, a lancé des travaux pour définir une nouvelle version du protocole IP, travaux qui ont abouti en 1996 au standard IPv6 (RFC 8200). Cette nouvelle version du protocole IP offre notamment une capacité d’adressage quasi-infinie ce qui permet d’écarter le risque de pénurie. Il est donc possible grâce à la capacité d'IPv6 de déployer des nouveaux réseaux sans avoir besoin des dispositifs de translation d'adresses. La capacité d'adressage d'IPv6 permet d'attribuer aux équipements des adresses joignables directement, rendant ainsi de nouveau possibles les communications de bout-en-bout. Le rétablissement de cette propriété est indispensables pour les nouveaux usages de l'Internet que sont les objets communiquant, la santé ou l'agriculture connectée et les villes intelligentes.
+
=== NAT et la sécurité ===
  
== La bonne solution n'est pas simple à déployer ==
+
Enfin, certains ont vu dans le NAT un élément de sécurité d'un réseau local, dans la mesure où le NAT agit comme un filtre en bloquant les paquets entrants non sollicités. Les attaques sont de nos jours dans le contenu, au niveau de l'application, comme les chevaux de Troie ou les codes malveillants (''malware'') dans les pages Web. Le NAT n'améliore donc pas la sécurité car il n'apporte aucune protection contre ces attaques <ref>Bortzmeyer, S. (2012) [http://www.bortzmeyer.org/nat-et-securite.html La traduction d'adresses (NAT) apporte-t-elle vraiment de la sécurité ?] </ref>. Le RFC 4864 montre comment avoir le même niveau de sécurité qu'un NAT en IPv6 sans en reprendre les inconvénients. 
  
 +
=== Double-NAT ===
 +
 +
La pénurie d'adresses ne faisant que s'aggraver avec le temps, on en arrive à la situation que les adresses publiques ne sont plus suffisantes pour être attribuées aux opérateurs eux-mêmes. C'est ce que montre la figure 10<ref>Huston, G. [http://www.potaroo.net/tools/ipv4/ IPv4 Address Report]</ref>.  Cette figure représente, sous forme d'un histogramme, l'état des allocations et donc la situation de l'adressage dans l'Internet IPv4. L'histogramme est composé de 256 barres indiquées par la valeur du premier octet de l'adresse d'IPv4 (notée ici "/8"). Pour la même valeur du premier octet, est alors indiqué l'état de l'usage des 3 autres octets. Cette figure montre qu'il ne reste quasiment plus rien à allouer (en vert).  Les RIR (''Regional Internet Registries'') sont sur leur réserve. Ils allouent maintenant les dernières adresses publiques sous des conditions draconiennes et donc, le plus souvent, n'allouent plus d'adresses publiques.
 +
 +
<center>
 +
[[File:Fig05.png|thumb|center|400px|Figure 10 : État du plan d'adressage IPv4 en 2015.]]
 +
</center>
 +
 +
Aussi, certains opérateurs, par manque d'adresses publiques, ont recours au NAT444, encore appelée technique du "double NAT" ou CGN (Carrier Grade Nat) RFC 6888. Le réseau de l'opérateur est, lui-même, en adressage privé. Ainsi, le client de l'opérateur n'a même plus une adresse publique. Le NAT du client final se retrouve à faire un passage d'un adressage privé à un autre adressage privé. D'un point de vue de la terminologie, le NAT du client est dorénavant qualifié de NAT44 pour un changement d'adressage de derrière (le coté client) à devant (le coté opérateur) cet équipement.
 +
{{HorsTexte|Un NAT ou des NAT ?|La traduction, qui se veut une solution provisoire, s'est intégrée dans l'architecture de l'Internet comme une technique classique. À tel point qu'elle se décline en différents usages. Stéphane Bortmeyer parle du "zoo des sytèmes de traduction d'adresse IP"<ref>Bortzmeyer, S. (2010), [http://www.bortzmeyer.org/nats.html "Le zoo des systèmes de traduction d'adresse IP"] </ref> lorsqu'il en recense les différentes évolutions.}}
 +
 +
Le déploiement des super NAT, ou NAT444, pose de nombreux problèmes. Par exemple, il était complexe pour un client d'un opérateur d'héberger un serveur derrière un NAT44, mais ceci devient maintenant impossible derrière un NAT444. Les RFC 5684 et RFC 7021 dressent d'ailleurs une liste des ennuis apparus par l'introduction des NAT444. La seule solution a toutes ces complexités réside dans le passage à IPv6 pour sortir enfin de la pénurie.
  
Cependant, par conception, le protocole IPv6 n’est pas compatible avec IPv4 et ces deux versions de protocole devront cohabiter le temps de la transition de l’ensemble de l’Internet vers IPv6. Par analogie, l’ancien système postal qui ne permet pas directement d’adresser les nouvelles habitations sera amené à être remplacé par un nouveau système ayant ses propres boites aux lettres, adresses et format d’enveloppe. Les deux systèmes n’étant pas compatibles, il est toujours nécessaire pour envoyer et recevoir du courrier d’une habitation dans l’ancien ou le nouveau système de posséder une boite aux lettres pour chacun de ces systèmes. Les anciennes boites aux lettres ne seront plus utiles seulement lorsque l’ensemble des correspondants n’utiliseront plus l’ancien système. S’il peut être envisagé dans un système postal de remplacer unilatéralement une version par une autre à une date choisie, il n’en va pas de même avec l’Internet qui est un système multi-acteur faiblement coordonné. Chaque opérateur choisi indépendamment sa stratégie pour le passage à IPv6. Même si les incitations à accélérer la transition sont nombreuses, cette période de cohabitation entre les deux protocoles peut potentiellement durer encore des années.
 
Nous reviendrons sur ce problème de la cohabitation entre les 2 versions du protocole IP dans la suite de ce cours.
 
 
<!--
 
<!--
{{Note| PA|Il manque une conclusion qui résumé et qui soit positive}}
+
Partie IPV6 Déplacée dans Act04
 +
-->
 +
 
 +
== Conclusion ==
 +
La demande d'adresses va exploser avec l'Internet des objets et l'industrie 4.0. Dans un rapport en 2020, CISCO recense environ 20 milliards d'objets connectés, avec environ 200 objets par personne. Ce nombre pourrait augmenter jusqu'à 50 milliards à terme. Il est à relativiser car le plus souvent, seulement une passerelle qui connecte les objets, accèdera à Internet.Mais même si on divise 50 milliards par 100 ou 1000, c'est colossal !
 +
 
 +
Le protocole IPv6 en donnant une capacité d'adressage immense va permettre d'intégrer ces nouveaux usages et de redonner sa simplicité au réseau. Les institutions de la gouvernance de l'Internet ne cessent d'ailleurs d'avertir et de demander d'accélérer le passage à IPv6. Par exemple, en mai 2016, le président du RIPE a lancé un avertissement solennel sur l'épuisement des ressources en adressage IPv4 et l’impérieuse nécessité de passer sans délai à IPv6 <ref> Col, P. (2016). ZDNet.
 +
''IPv6 : avertissement solennel du RIPE''.
 +
 
 +
http://www.zdnet.fr/actualites/ipv6-avertissement-solennel-du-ripe-39837614.htm</ref>
 +
 
 +
 
 +
 
 +
<!--
 +
{{TODO|inclure Note}}
 +
[[Compagnon_Act02|Note]]
 
-->
 
-->
  
Line 92: Line 197:
  
 
<references />
 
<references />
 +
  
 
== Pour aller plus loin ==
 
== Pour aller plus loin ==
Line 97: Line 203:
 
RFC et leur analyse par S. Bortzmeyer :
 
RFC et leur analyse par S. Bortzmeyer :
 
* RFC 1918 Address Allocation for Private Internets [https://www.bortzmeyer.org/1918.html Analyse]
 
* RFC 1918 Address Allocation for Private Internets [https://www.bortzmeyer.org/1918.html Analyse]
 +
 +
 +
----

Latest revision as of 08:28, 2 March 2022

Activité 03 : Évolution de l'Internet

Introduction

En 40 ans, Internet a connu une croissance exponentielle en termes de nombre de réseaux connectés et de nombre d’hôtes connectés. Internet connecte aujourd'hui 4,8 milliards d’utilisateurs soit 59 % de la population mondiale. A travers des graphiques et l'histoire récente des technologies associées, nous allons voir comment cette évolution s’est produite.


Les différentes phases de l’évolution d’Internet

La figure 1 reprend le graphique de Peter Magnusson [1] qui présente des années 70 à 2000, une croissance en 3 phases, pour arriver à environ 100 millions d'hôtes connectés.

Figure 1: Internet Evolution (Internet Society).

La première phase : expérimentale

La première phase est dite expérimentale et court de 1969 à 1986 [2], environ. En pleine guerre froide, le DARPA (Département de la Défense Américaine) souhaite interconnecter différents sites avec un contrôle décentralisé afin d’éviter une attaque du centre de contrôle qui pourrait affecter le fonctionnement de tout le réseau et des autres sites. Sur la figure 2, on voit le plan du réseau ARPANET en 1973. En 1971, ce réseau comprend 23 nœuds et 111 nœuds en 1977.

Figure 2: Carte d’ARPANET en 1973.

Les fondements : intelligence répartie et mode non connecté

L'intelligence répartie sur tous les éléments est le principe fondateur de l'Internet. Ce qui est révolutionnaire pour l’époque où tous les réseaux de télécommunication mais aussi les sytèmes informatiques étaient bâti sur un contrôle centralisé. Dans ces réseaux centralisés, le centre de contrôle gérait tout le fonctionnement du réseau, notamment pour construire les tables de routage utilisées par les noeuds, mais aussi pour établir une connexion entre deux utilisateurs afin de transférer des données (en mode connecté). Le mode réparti va donc être décliné dans les premiers protocoles développés. Contrairement au routage centralisé, tous les noeuds du réseau participent au routage en s'envoyant des informations de connectivité afin que chaque routeur construise sa table de routage.

IPv4

Au début des années 1980, alors que s'opérait l'interconnexion de différents réseaux informatiques pour créer l'Internet que nous connaissons aujourd'hui, IP (Internet Protocol) s'est imposé comme le protocole standard de l'Internet. L'organisme de standardisation IETF spécifie la version 4 du protocole IP (IPv4) dans le document RFC 791, daté de 1981. Ce RFC définit d'une part, l'adresse sur 32 bits et son format en 2 champs de longueur variable et d'autre part, le paquet, son unité de données de transfert. En 1983, le réseau étasunien ARPANET choisit la pile TCP/IPv4 comme le standard de communication pour les équipements et les réseaux souhaitant se connecter. Ce choix s'est ensuite imposé sur l'ensemble des réseaux et des systèmes de ce qui allait devenir ensuite l'Internet. Le protocole IPv4 a été un élément décisif dans le passage à l'échelle de l'Internet. Ses spécifications généralisent les propriétés importantes de connectivité globale et de contrôle de bout en bout. Elles définissent pour les adresses IP une longueur fixe de 32 bits. IPv4 permet ainsi de définir un nombre important d'adresses (232 soit plus de 4,3 milliards), donc autant d'identifiants attribués à chaque équipement connecté. Au moment où ont été définies ces spécifications, le réseau ARPANET comptait quelques centaines d'équipements. En 1987, ce nombre dépassa les 10 000 puis 160 000 à la fin de l'année 1989 [3]. La capacité d'adressage d'IPv4 semblait alors suffisante pour pouvoir répondre au besoin de nouvelles connexions, même si celui-ci augmentait rapidement.

La seconde phase : l’expansion

En 1983, le réseau Arpanet a été séparé du réseau militaire pour rester utilisé par des écoles et des universités américaines. L'intégration par l'Université de Berkeley des protocoles TCP/IP dans le noyau du système d'exploitation Unix est un événement très important qui va accélérer la diffusion des protocoles de l'Internet et son adhésion par le plus grand nombre.

Les années 80 voient la généralisation des stations de travail sous Unix autonomes mais avec des capacités limitées en termes de puissance de calcul et de capacité de stockage disque. Ces stations ont besoin de communiquer entre elles pour l'accès à des ressources partagées comme le système de fichiers ou les imprimantes. La pile TCP/IP va être massivement utilisée pour ces communications locales puis mondiales.


En effet, les protocoles Internet proposent des applications de communication inter-personnelle comme le mail, le transfert de fichiers, ou les news. Très vite, les chercheurs et les ingénieurs vont les adopter pour échanger des informations scientifiques entre collègues du monde entier. Ces utilisateurs experts vont réaliser des tests en vraie grandeur de l'Internet.

La troisième phase : l’universalité

Au début des années 1990, le réseau précurseur ARPANET a laissé sa place à l'interconnexion des réseaux que nous appelons aujourd'hui l'Internet. L'Internet devint alors mondial, se structurant par l'interconnexion des opérateurs publics et privés des différents pays. En 1992, le nombre d'équipements connectés à l'Internet dépasse le million. En parallèle, dans les années 90, la micro-informatique se développe dans les entreprises et chez les particuliers qui commencent à s'équiper d'ordinateurs personnels assez basiques mais très économiques. Et grâce à la technologie ADSL, dès la fin des années 90, le débit d'accès va être dopé en utilisant toute la capacité des paires téléphoniques. Une autre avancée technologique vient de la généralisation des interfaces graphiques qui va simplifier l'accès des utilisateurs aux informations et aux commandes du système. Ainsi, grâce à la souris, aux fenêtres, boutons et autres barres de défilement, l’utilisateur n’a plus besoin de connaître les commandes Unix !

Les informations contiennent toujours des textes mais sont aussi enrichies par des images, des sons et des vidéos. Dès cette époque, dans l'Internet se pose le problème de la recherche d'informations dans ce réseau mondial avec des contenus toujours plus nombreux. Les premiers moteurs de recherche font leur apparition [ref sur moteurs] . Mais le progrès le plus significatif a été le développement de l'application Web, connu aussi sous le nom World Wide Web. Cette application, dite client-serveur, se compose d'un navigateur, programme qui s’exécute sur le terminal de l’utilisateur et d’un serveur Web qui gère des contenus. La communication entre navigateur et serveur se fait à travers l’Internet. Le serveur Web propose des contenus tels que des pages HTML, des sons, des images ou des vidéos. Un fichier HTML est une description de la page Web à afficher et des objets qu’elle contient. Le navigateur envoie des requêtes au serveur pour obtenir cette page et ses objets. En réponse, le serveur lui envoie le fichier HTML et les objets. Le navigateur réalise le formattage des contenus reçus pour les afficher sur le terminal de l’utilisateur. Dans cette page, des éléments sont mis en évidence et peuvent être ‘’cliqués’’ pour accéder directement à une nouvelle page. Grâce aux liens ‘hypertexte’ qui chaînent les pages entre elles, les contenus sont faciles à trouver. Au fur et à mesure, les contenus se sont enrichis dans toutes les langues et dans tous les pays du monde, rendant le Web plus proche et plus attractif pour les particuliers.

La quatrième phase : l’explosion

Dès les années 2010, la croissance a continué de manière exponentielle pour arriver à 4,5 milliards d'utilisateurs soit 59% de la population mondiale. La 4ème phase que nous vivons actuellement pourrait s’appeler l’explosion ! Quatre phénomènes expliquent cette croissance sans précédent.

  • D'abord, le nombre d'hôtes utilisant Internet a augmenté car les consoles de jeux, les tablettes ou les télévisions sont maintenant connectés à Internet . Il y a désormais 4 à 5 terminaux ou ‘’écrans’’ par personne.
  • Les 3èmes et 4èmes générations des réseaux mobiles permettent désormais à des terminaux intelligents comme les smartphones, de transférer non seulement de la voix mais aussi des données, des images et des vidéos.

Comme on le constate sur ce schéma qui représente une minute d'utilisation d'Internet, de nouvelles applications sont massivement utilisées par les internautes comme la vidéo à la demande et le streaming, les réseaux sociaux, le pair-à-pair ou les jeux. Les communications inter-personnelles vidéo se généralisent.

  • Enfin, ces 20 dernières années, de nombreux pays émergents, en Asie, en Amérique du Sud ou en Afrique, ont connu un développement économique sans précédent. Il s'est accompagné de leur développement technologique conduisant à leur adhésion massive à l'Internet.
  • De nouveaux usages ont dopé la demande de débit sur Internet. Ainsi la figure 3 représente une minute d'utilisation d'Internet. On constate ainsi que les nouvelles applications, telles que la vidéo à la demande et le streaming, les réseaux sociaux, le pair-à-pair ou les jeux sont massivement utilisées par les internautes. De même, les communications inter-personnelles vidéo se généralisent.
Figure 3:</ref This is what happens in An Internet Minute [ ]/ref>.

Sur le graphique de la figure 4(a), on voit la forte progression du nombre d’utilisateurs d’Internet entre 2000 et 2010, pour chaque région du monde. Le développement économique de l’Asie lui a donné la croissance la plus forte. Le nombre d’utilisateurs a été multiplié par 7 pour prendre la tête du nombre d’internautes, à la place de l’Europe et des Etats-Unis. En fait, le nombre d’utilisateurs de l’Internet augmente plus vite que la croissance de la population mondiale (voir Fig.5).

03-fig4-penetration.png
(a)
03-fig5.png
(b)

Figure 4: (a) Nombre d’internautes en 2000 et 2010, par régions du monde[Internet World Stats: www.pingdom.com]. (b) Croissance de la population et du nombre depuis 1985. .



Le nombre d’internautes en 2020 est d’environ 4,8 milliards et représente 59% de la population mondiale. L'Internet n'avait pas été prévu pour supporter une telle croissance. La capacité d'adressage des 32 bits d'adresse, en théorie 4,3 milliards, est donc largement dépassée.

Mesures d’urgence pour lutter contre la pénurie d’adresses

L'Internet vit depuis des années en situation de pénurie d'adresses. Cette pénurie d'adresses a été prédite dès le milieu des années 1990, peu après la naissance du Web. Des mesures palliatives ont été prises pour ralentir la consommation des adresses et ralentir l'apparition de la pénurie complète des adresses IPv4.

Mesure 1 : CIDR (Classless Inter Domain Routing)

Comme on l’a vu sur la figure 4, l'accroissement du nombre d'hôtes date du début des années 90 ce qui a alerté les instances de l'Internet qui ont pris plusieurs mesures d'urgence. La première mesure a consisté à abandonner le système de classes d'adresses. En effet, les classes d’adresse utilisent une granularité d'allocation trop grossière menant à un gaspillage excessif. Un deuxième inconvénient était une représentation trop importante des très grands réseaux aux détriments des petits réseaux, qui étaient les plus nombreux. La méthode sans classe ou [4], a été mise au point en 1993, de sorte que la totalité de l'espace d'adressage unicast soit disponible. La longueur du préfixe réseau qui est variable, comme on l'a vu, est spécifiée pour chaque adresse en ajoutant à la fin "/x" où x est le nombre de bits dans le préfixe réseau. Par exemple, si un FAI a besoin de 8000 adresses, avec les classes, on lui aurait allouer une classe B qui dispose de 65536 adresses d'où un énorme gaspillage ! Sans classe, on peut allouer à ce FAI un bloc /19 soit 8192 adresses ce qui est proche de son besoin.

Mesure 2 : NAT (Network Address Translation)

La deuxième mesure, appelée NAT ou Network Address Translation, consiste à translater en sortie de réseau, une adresse privée vers une adresse publique. Cela permet d’économiser les adresses publiques en combinant un adressage privé dans le sous-réseau, et le partage de l'adresse publique entre les hôtes en sortie du sous-réseau. Cette translation est effectuée sur tous les paquets traversant les routeurs et les box. L’adressage privé est défini dans la [5], et permet d’utiliser 3 plages d’adresses réservées à cet usage et donc non routables : 10.0.0.0/8, 172.16.0.0/12, et 192.168.0.0/16.

Par exemple, sur la figure 8(a), Alice doit connecter 5 machines à la maison et son FAI lui a donc distribué 5 adresses : 123.45.67.2, 123.45.67.3, 123.45.67.4, 123.45.67.5, 123.45.67.6. Cependant, le FAI ne dispose pas d’un bloc d’adresses suffisant pour distribuer autant d’adresses que demandées par ses clients. En effet, les FAI ne proposent qu’une seule adresse publique dans leur forfait standard d’abonnement à Internet. En utilisant NAT, le fournisseur d’Alice ne lui alloue plus qu’une seule adresse routable et Alice a affecté à ses hôtes une adresse privée. Dans la figure 8(b), les 5 hôtes d’Alice dispose respectivement des adresses : 192.168.0.2, 192.168.0.3, 192.168.0.4, 192.168.0.5, 192.168.0.6.

03-fig8-a.png
(a)
03-fig8-b.png
(b)

Figure 8 : (a) Plan d'adressage sans NAT. (b) Plan d'adressage privé et NAT

Le mécanisme NAT a été ajouté aux fonctions classiques du routeur. Il consiste à translater les adresses privées internes au réseau vers l’adresse publique, routable sur l’Internet. A chaque fois qu’un paquet IP sort vers l’Internet, le routeur effectue la translation de l’adresse source de ce paquet en l’adresse publique attribuée à cet abonné. Comme plus d’une machine est connectée sur le réseau, il faut utiliser un autre champ de l’en-tête pour distinguer les hôtes sources. On utilise le port source qui est dans l’en-tête TCP ou UDP. Une table de translation NAT est maintenue par le routeur qui mémorise ainsi 4 informations : adresse IP source, numéro de port source, adresse IP translatée, numéro de port translaté. En sortie, il translate (adresse IP source, numéro de port source) vers (adresse IP translatée, numéro de port translaté) c’est-à-dire qu’il réécrit les adresse et port source dans les en-têtes IP et TCP du paquet. Quand un paquet de réponse arrive en entrée du routeur, la translation inverse est effectuée avec toujours réécriture de l’adresse et du port. Le mécanisme NAT engendre donc des opérations supplémentaires pour le routeur qui doit les faire pour chaque paquet.


La figure 9 représente le cumul des adresses IPv4 consommées et l'effet des différentes mesures de réduction de consommation des adresses. [6]. Les adresses IPv4 sont exprimées par le préfixe de longueur 8 bits. Cette figure montre bien une diminution du taux de consommation des adresses IPv4. Ce qui a permis de gagner du temps avant de passer à une solution définitive. Mais le développement de l'Internet dans la téléphonie mobile et la banalisation des accès ADSL ont accéléré la pénurie. Le graphique (b) de la figure 9 montre que, depuis 2011, la pénurie est aigüe par cette chute du taux de consommation des adresses.

41-fig1-v1.png
(a)
41-fig27I.png
(b)

Figure 9 : Cumul de consommation des adresses IPv4 et taux de consommation.

Notation "/8"

Dans les diagrammes montrant l'usage des adresses IPv4, celles-ci sont agrégées par "/8". Comme l'espace d'adressage IPv4 est un champ de 32 bits, il y a 4 294 967 296 valeurs uniques représentées dans ce contexte par une séquence de 256 "/8" bits où chaque "/8" correspond à 16 777 216 adresses uniques.

Limites des mesures d'urgence

Fin du bout-en-bout

Cependant, la solution NAT rend la connectivité Internet coûteuse et complexe. Les serveurs qui sont dans un réseau avec adressage privé et NAT ne sont plus atteignables et des techniques de contournement ont dû être mise en œuvre pour que les applications retrouvent une connectivité globale (à savoir, pouvoir être appelées ou appelantes). De plus, le NAT introduit un état dans le réseau qui fragilise la robustesse du système de communication. Il convient ici de ne pas oublier qu'un principe fondateur de l'Internet est de rendre le fonctionnement de l'infrastructure de communication indépendante du fonctionnement des producteurs et consommateurs de données. Ce principe connu sous le nom de "bout-en-bout" a conduit à définir le service réseau en mode "non connecté". Aucune marque ou état, issu d'une communication, n'est mémorisé dans le réseau : tout est indiqué dans le paquet. On parle d'unité de transfert auto-descriptive. L'en-tête du paquet comporte toutes les informations pour aller de la source à la destination. Le NAT est en complète contradiction avec ce principe. Le paquet n'est plus auto-descriptif de la source à la destination car chaque passerelle NAT traversée modifie les informations de l'acheminement du paquet. On peut considérer que chaque NAT traversé conduit à constituer un tronçon du chemin pour atteindre la destination. C'est cette succession de tronçons qui devient le chemin de la source à la destination. On peut voir que, d'une infrastructure de communication de bout-en-bout, l'Internet a évolué vers une infrastructure de communication devant gérer des changements de tronçons. Or, ces changements de tronçons demandent des états complexes à gérer en mode "non connecté", ce qui rend le système fragile. En effet, une panne d'un NAT suffit à interrompre toutes les communications le traversant, ce qui n'est pas le cas quand cela arrive à un routeur. Certes, des solutions existent, à base de redondances de NAT, pour maintenir la disponibilité de ce dispositif. Ces solutions sont coûteuses et complexes à mettre en œuvre et ne constituent pas le cas courant.

L'introduction du NAT a donc changé l'architecture de l'Internet, supprimant la propriété de bout-en-bout [RFC 2993]. La conséquence est que déployer des nouveaux services ou des nouveaux protocoles de transport est devenu quasi impossible. Car, non seulement NAT change l'adresse IP, mais il modifie souvent aussi le numéro de port situé au niveau de la couche de transport, ce qui a pour conséquence de figer les protocoles de transport actuels. L'ajout d'un nouveau protocole de transport nécessite de mettre à jour le code de tous les NAT en activité, ce qui représente une opération quasi impossible du fait de la diversité des NAT et de leur nombre. Cette idée de rigidification de l'Internet est nommée par le terme d'"ossification". Devant cet état de fait, des réflexions sont menées dans les instances de la gouvernance Internet pour essayer de sortir de cette impasse [RFC 7663].

Complexité accrue

Le routeur doit effectuer plus d'opérations pour chaque paquet à relayer mais NAT a aussi des conséquences sur les applications notamment client-serveur. Le modèle d'interaction se trouve aussi, d'une certaine manière, rigidifié. Dans le modèle d'interaction client-serveur, les clients qui sont derrière le NAT peuvent s'accommoder de partager une simple adresse IP. Il en est tout autrement pour les serveurs qui ont besoin d'une adresse IP qui leur soit propre afin d'être contactés. Ainsi, ce changement architectural de l'Internet l'a transformé petit à petit en un système minimaliste à l'image des services télématiques utilisés à l'époque du minitel. Il est composé de clients et de serveurs. Les possédants d'un adressage public ont ainsi un avantage pour promouvoir leur service. Une certaine forme de contrôle des services est ainsi donnée aux hébergeurs et opérateurs. La conséquence de cette évolution est qu'il est très difficile pour un utilisateur derrière un NAT d'offrir un service. Il en est de même pour les applications de type "pair à pair" (comme la téléphonie sur IP, les jeux répartis...) qui sont devenues terriblement complexes pour contourner les difficultés introduites par le NAT pour les connexions entrantes [RFC 5128]. De fait, l'innovation dans ce type d'application est d'une certaine manière réduite. Le NAT est le composant qui participe à limiter l'apparition de nouveaux acteurs et à maintenir une certaine forme de rente pour les acteurs en place.

NAT et la sécurité

Enfin, certains ont vu dans le NAT un élément de sécurité d'un réseau local, dans la mesure où le NAT agit comme un filtre en bloquant les paquets entrants non sollicités. Les attaques sont de nos jours dans le contenu, au niveau de l'application, comme les chevaux de Troie ou les codes malveillants (malware) dans les pages Web. Le NAT n'améliore donc pas la sécurité car il n'apporte aucune protection contre ces attaques [7]. Le RFC 4864 montre comment avoir le même niveau de sécurité qu'un NAT en IPv6 sans en reprendre les inconvénients.

Double-NAT

La pénurie d'adresses ne faisant que s'aggraver avec le temps, on en arrive à la situation que les adresses publiques ne sont plus suffisantes pour être attribuées aux opérateurs eux-mêmes. C'est ce que montre la figure 10[8]. Cette figure représente, sous forme d'un histogramme, l'état des allocations et donc la situation de l'adressage dans l'Internet IPv4. L'histogramme est composé de 256 barres indiquées par la valeur du premier octet de l'adresse d'IPv4 (notée ici "/8"). Pour la même valeur du premier octet, est alors indiqué l'état de l'usage des 3 autres octets. Cette figure montre qu'il ne reste quasiment plus rien à allouer (en vert). Les RIR (Regional Internet Registries) sont sur leur réserve. Ils allouent maintenant les dernières adresses publiques sous des conditions draconiennes et donc, le plus souvent, n'allouent plus d'adresses publiques.

Figure 10 : État du plan d'adressage IPv4 en 2015.

Aussi, certains opérateurs, par manque d'adresses publiques, ont recours au NAT444, encore appelée technique du "double NAT" ou CGN (Carrier Grade Nat) RFC 6888. Le réseau de l'opérateur est, lui-même, en adressage privé. Ainsi, le client de l'opérateur n'a même plus une adresse publique. Le NAT du client final se retrouve à faire un passage d'un adressage privé à un autre adressage privé. D'un point de vue de la terminologie, le NAT du client est dorénavant qualifié de NAT44 pour un changement d'adressage de derrière (le coté client) à devant (le coté opérateur) cet équipement.

Un NAT ou des NAT ?

La traduction, qui se veut une solution provisoire, s'est intégrée dans l'architecture de l'Internet comme une technique classique. À tel point qu'elle se décline en différents usages. Stéphane Bortmeyer parle du "zoo des sytèmes de traduction d'adresse IP"[9] lorsqu'il en recense les différentes évolutions.

Le déploiement des super NAT, ou NAT444, pose de nombreux problèmes. Par exemple, il était complexe pour un client d'un opérateur d'héberger un serveur derrière un NAT44, mais ceci devient maintenant impossible derrière un NAT444. Les RFC 5684 et RFC 7021 dressent d'ailleurs une liste des ennuis apparus par l'introduction des NAT444. La seule solution a toutes ces complexités réside dans le passage à IPv6 pour sortir enfin de la pénurie.


Conclusion

La demande d'adresses va exploser avec l'Internet des objets et l'industrie 4.0. Dans un rapport en 2020, CISCO recense environ 20 milliards d'objets connectés, avec environ 200 objets par personne. Ce nombre pourrait augmenter jusqu'à 50 milliards à terme. Il est à relativiser car le plus souvent, seulement une passerelle qui connecte les objets, accèdera à Internet.Mais même si on divise 50 milliards par 100 ou 1000, c'est colossal !

Le protocole IPv6 en donnant une capacité d'adressage immense va permettre d'intégrer ces nouveaux usages et de redonner sa simplicité au réseau. Les institutions de la gouvernance de l'Internet ne cessent d'ailleurs d'avertir et de demander d'accélérer le passage à IPv6. Par exemple, en mai 2016, le président du RIPE a lancé un avertissement solennel sur l'épuisement des ressources en adressage IPv4 et l’impérieuse nécessité de passer sans délai à IPv6 [10]



Références bibliographiques

  1. The Internet Revolution – History and Significance https://petersmagnusson.org/2010/06/06/the-internet-revolution-history-and-significance/
  2. Internet Society: Brief History of the Internet https://www.internetsociety.org/internet/history-internet/brief-history-internet/
  3. Internet History of 80s, https://www.computerhistory.org/internethistory/1980s/
  4. Classless Inter-Domain Routing (CIDR) [1]
  5. RFC 1918 [2]
  6. Huston, G (2013). APNIC Labs. A Primer on IPv4, IPv6 and Transition
  7. Bortzmeyer, S. (2012) La traduction d'adresses (NAT) apporte-t-elle vraiment de la sécurité ?
  8. Huston, G. IPv4 Address Report
  9. Bortzmeyer, S. (2010), "Le zoo des systèmes de traduction d'adresse IP"
  10. Col, P. (2016). ZDNet. IPv6 : avertissement solennel du RIPE. http://www.zdnet.fr/actualites/ipv6-avertissement-solennel-du-ripe-39837614.htm


Pour aller plus loin

RFC et leur analyse par S. Bortzmeyer :



Personal tools