Difference between revisions of "MOOC:Compagnon Act11"

From Livre IPv6

(Question de taille)
Line 1: Line 1:
 
__NOTOC__  
 
__NOTOC__  
  
= Activité 11  : Qu'est ce qu'une adresse IP ? =
+
= Activité 11  : Qu'est ce qu'une adresse IP ? 🎓 =
 
   
 
   
 
== Introduction à l'adressage ==
 
== Introduction à l'adressage ==

Revision as of 15:49, 10 May 2019


Activité 11  : Qu'est ce qu'une adresse IP ? 🎓

Introduction à l'adressage

Le format et la représentation des adresses sont les éléments les plus directement visibles de la nouvelle version du protocole, pour l'utilisateur et l'administrateur réseau. La pénurie des adresses IPv4 étant le premier élément qui a motivé la création d'une nouvelle version du protocole, la définition du nouveau format d'adressage a conditionné certains choix techniques pour IPv6. Bien que les principes de base soient dérivés de ceux employés en IPv4, cet adressage apparaît de prime abord plus complexe. Il est important de se familiariser avec les règles et les principes de représentation et d'attribution avant d'aborder le nouveau protocole.

Fonctions d'une adresse réseau

Dans une architecture IP, une adresse sert en fait à deux fonctions distinctes :

  • L'identification : une adresse de niveau réseau identifie de manière unique la machine parmi les « N » machines du réseau, « N » pouvant être arbitrairement grand, dans l'Internet par exemple. L'identification permet à deux interlocuteurs de se reconnaître pendant une connexion. Cette vérification est mise en oeuvre dans les pseudo entêtes d'une connexion TCP ou dans les associations de sécurité IPSec.
  • La localisation : elle est utilisée pour décider de la remise directe ou de la recherche d'un intermédiaire qui saura délivrer les datagrammes, selon le principe du routage en "saut par saut". En fait, elle ne varie qu'en cas de changement de prestataire IP ou de réorganisation de site. La localisation est découpée en deux parties : localisation globale, identifiant le réseau, et localisation locale, distinguant les machines sur un même réseau. Ces deux niveaux de localisation ont une influence déterminante dans la structuration du format des adresses, que nous verrons ultérieurement.

Lors des études initiales d'IPv6, il avait été envisagé de séparer les deux fonctions pour faciliter la résolution des problèmes liés à la renumérotation, la mobilité ou la multi-domiciliation. Pour l'instant, la séparation des fonctions est encore à l'état de recherche[1], et les premiers plans d'adressage IPv6 continuent, comme en IPv4, à lier les deux fonctions. De même, comme en IPv4, on considérera qu'une adresse est associée à une interface. Une machine peut posséder plusieurs interfaces. De même, une interface peut supporter plusieurs adresses.

Question de taille

Une adresse IPv6 est un mot de 128 bits (16 octets). Cette taille de 128 bits semble techniquement bien adaptée aux mots manipulés par les processeurs d'aujourd'hui. Les processeurs 32 bits et 64 bits sont aujourd'hui banalisés. Le quadruplement, comparativement à la version précédente d'IP, de la longueur binaire de l'adresse fait apparaître l'adressage IPv6 comme plus "ardu". Cette complexité n'est qu'apparente. Elle traduit la nécessaire adaptation au changement, pour laquelle la plupart d'entre nous montrons naturellement une réticence initiale. Certes, la représentation des adresses de 16 octets a nécessité l'abandon de la notation décimale pointée pour une nouvelle notation hexadécimale (cf. activité suivante), qui est un compromis raisonnable pour la manipulation des adresses par les administrateurs "réseau". Pour le commun des utilisateurs, l'auto-configuration et la banalisation des services de nommage (DNS Domain Name Service) et des annuaires "réseaux" suppléeront, comme pour IPV4, la nécessité d'avoir à manipuler directement les adresses.

Les principes de structuration de cet adressage dérivent des techniques déjà utilisées en IPv4, à savoir une classification de divers plans d'adressage sur les parties hautes de l'adresse (c'est-à-dire sur les préfixes les plus courts), associée à une agrégation des tables de routage, généralisant la méthode dite CIDR (Classless Inter Domain Routing). L'usage de divers masques de taille « élastique » permet d'une part, une certaine souplesse dans la définition et l'attribution des préfixes, une optimisation de l'espace d'adressage limitant le gaspillage des larges portions d'adresses, comparativement à IPv4 ; et d'autre part, une optimisation du routage en facilitant sa hiérarchisation : les équipements des opérateurs de coeur de l'internet prennent leur décision de routage sur des préfixes courts, les « grandes directions ». Les équipements de routage des opérateurs de distribution, en périphérie du réseau, routent sur des préfixes plus longs, ce qui a pour effet de contenir la taille des tables de routage de cœur du réseau dans des proportions raisonnables.

Toutefois, en IPv4, l'amélioration induite par CIDR semble limitée du fait des adresses de 32 bits trop courtes pour permettre une bonne structuration, et du fait qu'il faut assumer le coût du passé : les adresses ont été allouées sans préoccupation d'organisation d'ordre hiérarchique ou géographique. Malgré ces limitations, l'adressage IPv6 s'appuie de facto sur CIDR. La gestion des tables de routage, dans le cœur du réseau, s'en trouvera quand même améliorée car :

  • dès le début, le plan d'adressage est hiérarchisé, éliminant les longs préfixes ;
  • les sites multi-domiciliés posséderont autant d'adresses que de fournisseurs de service ;
  • des mécanismes de renumérotation automatique faciliteront le changement de préfixes lors du changement de fournisseur d'accès, ou de basculement sur un nouveau plan d'adressage.

Le nombre de combinaisons possibles sur 128 bits (2 à la puissance 128) est "astronomique". Il dépasse les 3,4 x 10 puissance 38 :

  • 340 milliards de milliards de milliards de milliards
  • Précisément : 340 282 366 920 938 463 463 374 607 431 701 211 156

Certaines estimations encadrent le nombre d'adresses disponibles par mètre carré de surface terrestre, océans compris, entre 1 564 et 3 911 873 538 269 506 102.

1 564 < @ au mètre carré, océans compris < 3 911 873 538 269 506 102

Figure 1 : Estimation de la densité des adresses IPv6 par mètre carré de surface terrestre.

Une citation de Jean Michel Cornu tente de nous en donner une représentation palpable : si on recouvrait la surface de la terre d’une couche de sable de 50 km d’épaisseur (jusqu’en haut de la stratosphère), et que l’on attribue une adresse IPv6 à chaque grain de sable, on n’utiliserait qu’environ deux cent milliardièmes des adresses disponibles. [2]

Sans tomber dans l'optimisme béat de ces grandeurs, ni le pessimisme primitif rappelant qu'au début d'Arpanet (réseau ancêtre d'internet dans les années 1960) les 4 milliards d'adresses possibles d'IPv4 (2 puissance 32) paraissaient également une limite matériellement inaccessible, force est de constater que l'adressage IPv6 est largement dimensionné et qu'une organisation raisonnée de cet espace devrait lui offrir une certaine pérennité. Il est toutefois difficile de prévoir l'utilisation des adresses dans le futur. Ainsi, par exemple, le plan d'adressage actuellement mis en oeuvre utilise un identifiant d'équipement de 64 bits, c'est-à-dire la moitié de la taille de l'adresse. En fait, ce genre de calcul n'est qu'un argument pour justifier l'usage de préfixes d'adresses de taille fixe, qui simplifie le traitement de l'en-tête des datagrammes.

Durée de vie d'une adresse

IPv6 généralisant le plan d'adressage CIDR, les préfixes restent dans tous les cas la propriété des opérateurs. Il ne peuvent plus être attribués "à vie" aux équipements. Les adresses IPv6 sont donc "prêtées" aux interfaces des équipements. L'attribution d'une adresse à une interface est faite temporairement. La durée du prêt (quelque fois appelée durée de vie : lifetime) associée à l'adresse, indique la durée pendant laquelle l'interface est dépositaire de l'adresse. Quand la durée de vie est épuisée, l'adresse devient invalide. Elle est supprimée de l'interface et devient potentiellement assignable à une autre interface. Une adresse invalide ne doit jamais être utilisée comme adresse dans des communications. La valeur par défaut de la durée de vie d'une adresse est de 30 jours, mais cette durée peut être prolongée, voire portée à l'infinie (valeur réservée avec tous bits à 1). L'adresse "lien-local" a une durée de vie illimitée.

Ce système de prêt d'adresse vise à faciliter la renumérotation. La renumérotation de l'interface d'un équipement consiste à passer d'une adresse à une autre. Lors de cette opération, il n'est pas souhaitable de changer brusquement d'adresse. Sinon, toutes les connexions TCP en cours, qui utilisent l'adresse comme identificateur de connexion, seraient brutalement coupées. Ceci pourrait entraîner des perturbations importantes au niveau des applications utilisant TCP à ce moment-là.

Pour faciliter cette transition, un mécanisme d'obsolescence est mis en place pour invalider progressivement une adresse. Ce mécanisme s'appuie sur la capacité d'affectation de plusieurs adresses valides à une même interface. Pour effectuer le choix de l'adresse à utiliser, un état est associé à chaque adresse. Cet état indique dans quelle phase de sa durée de vie une adresse se situe vis-à-vis de l'interface. La figure 2 représente les différents états que prend une adresse depuis sa création. En voici la description.

  • Le premier de ces états est qualifié de provisoire (tentative). L'adresse a été créée par l'auto-configuration mais son unicité sur le lien n'a pas encore été réalisée. Tant que l'adresse est dans l'état provisoire, elle ne peut être utilisée pour communiquer.
  • Une fois que l'unicité a été vérifiée par une procédure dédiée, l'adresse devient valide(valid). Elle est effectivement allouée à l'interface.
  • Après l'allocation de l'adresse à l'interface, le premier des états valides est qualifié de préféré (preferred). L'utilisation de l'adresse n'est aucunement restreinte.
  • Peu avant son invalidation, l'adresse passe dans un second état valide dit déprécié (deprecated). Son utilisation est déconseillée, mais pas interdite. L'adresse ne doit plus être utilisée comme adresse source pour de nouvelles communications (établissement de connexions TCP par exemple). Par contre, elle peut encore servir d'adresse source pour les connexions existantes. Les datagrammes reçus à une adresse dépréciée continuent à être remis normalement. À la durée de validité, il est également associé une durée de son état préféré.
  • Quand l'adresse atteint l'état invalide (invalid), elle ne doit plus être utilisée du tout. Le délai du prêt est expiré.
Figure 2 : États successifs d'une adresse sur une interface.

Conclusion

L'adresse est un élément essentiel dans un réseau de communication. L'adresse se doit d'être unique. Elle identifie un noeud dans le réseau. Dans le cas de l'Internet, elle a une fonction supplémentaire, elle sert à le localiser. L'adresse est un nombre codé en binaire. Le nombre de bits utilisés pour le codage de ce nombre détermine le nombre maximum d'adresses disponibles. L'adresse utilisée en IPv4 comportait 32 bits. En IPv6, ce nombre a été passé à 128 bits soit une taille 4 fois plus grande pour le codage. L'espace d'adressage a ainsi grandi d'une magnitude de 10 puissance 30. D'autres aspects vont être développés dans les prochaines activités, notamment :

  • la notation des adresses IPv6 ;
  • les différents types d'adresses ;
  • l'utilisation des adresses.

Références bibliographiques

  1. Bortzmeyer, S. (2009) Création du groupe de travail IETF sur LISP.
  2. Cornu, Jean-Michel (2001) AFING: Fondation Internet Nouvelle Génération
    [1]

Pour aller plus loin

Le lecteur intéressé par l'état des travaux sur la séparation des fonctions d'identification et de localisation des adresses pourra consulter les références suivantes :

Personal tools