Téléinformatique Chapitre VI : La couche réseau : adressage et routage dans Internet ESEN Université De La Manouba Définitions et principes 16/02/15 2 Définitions et principes Les routeurs permettent de concevoir des réseaux sans limitation de taille et de nombre d’équipements. Le routage devient indispensable pour interconnecter un réseau au reste de l’Internet, pour construire un grand réseau ou gérer des flux à l’intérieur du réseau. La difficulté de configuration d’un réseau routé n’est pas uniquement liée à l’administration du routeur proprement dit. Un plan d’adressage (c’est-à-dire l’ensemble de règles appliquées pour affecter une adresse à un équipement) doit être conçu et géré par l’administrateur du réseau 16/02/15 3 Définitions et principes Le terme routage est souvent confondu avec le terme de relayage (forwarding ) qui fait référence à la fonction principale d’un routeur . Cette fonction consiste à recopier le plus vite possible un paquet sur l’interface de sortie. Initialement les équipements d’interconnexion mémorisaient entièrement l’information avant de la retransmettre (stockage et retransmission), mais pour optimiser les performances, certains équipements prennent la décision dès que l’en-tête est reçue. Cette technologie est appelée commutation (switching ) La fonction de routage construit les bases de données (appelées tables de routage ) indiquant l’interface de sortie pour une destination. Cette information servira pour le relayage. 16/02/15 4 Définitions et principes À première vue, ces définitions peuvent s’appliquer aux équipements de niveau 2 du (ponts) et de niveau 3 (routeurs). Dans la pratique, les algorithmes mis en œuvre dans les équipements sont différents. Le pontage de niveau 2 a un fonctionnement fortement automatisé. Lorsque l’on connecte un pont ou un commutateur sur un réseau local, celuici va se configurer automatiquement. Il en va de même pour les équipements terminaux : il n’est pas nécessaire de leur apprendre la présence des ponts ou des commutateurs. En contrepartie de cette simplicité de configuration, les réseaux pontés ou commutés résistent mal au facteur d’échelle : les performances du réseau se dégradent avec l’augmentation du nombre d’équipements ou de réseaux interconnectés. S’il est théoriquement possible de construire des réseaux de niveau 2 mondiaux, ceux-ci ne contiendront qu’un nombre limité d’équipements. 16/02/15 5 Définitions et principes Le principe de fonctionnement est opposé pour les routeurs. Si la configuration de ce type d’équipement est relativement délicate, il n’existe pas de limite théorique quant à la taille du réseau. → Le routage devient indispensable pour interconnecter un réseau au reste de l’Internet, pour construire un grand réseau ou gérer des flux à l’intérieur du réseau. 16/02/15 6 Définitions et principes Le routage et le pontage ne s’opposent pas, mais se complémentent. Suivant la taille de l’entreprise et du réseau, les routeurs peuvent être employés de différentes manières : dans les sites relativement petits , le pontage peut être privilégié . Le routage consistera essentiellement à attribuer logiquement les adresses aux équipements. La configuration des routeurs sera manuelle. 16/02/15 7 Définitions et principes s’il s’agit de sites de taille moyenne, en plus des règles d’attribution d’adresses, les routeurs échangeront des informations sur les réseaux qu’ils peuvent atteindre par le biais de protocoles spécialisés appelés protocoles de routage. → Cela permettra une configuration plus automatisée du routeur, une découverte de la topologie du réseau sans intervention humaine et une adaptation éventuelle des chemins pris par les paquets en fonction de l’état du réseau ; les sites très importants ayant des connexions à plusieurs réseaux Internet, aux fournisseurs d’accès Internet ou aux opérateurs, devront échanger entre eux des informations sur les routes, mais devront aussi traiter ces informations pour pouvoir influer sur le chemin des paquets. 16/02/15 8 Définitions et principes La difficulté de configuration d’un réseau routé n’est pas uniquement liée à l’administration du routeur proprement dit. Un plan d’adressage (c’est-à-dire l’ensemble de règles appliquées pour affecter une adresse à un équipement) doit être conçu et géré par l’administrateur du réseau 16/02/15 9 Définitions et principes Ces principes sont à l’opposé de ceux pris par l’IEEE pour la gestion des niveaux 2 dans les réseaux locaux. Les adresses MAC (medium access conted ) sont attribuées en usine par le fabricant. La seule contrainte à respecter est l’unicité dans le réseau (celle-ci est garantie au niveau mondial en concaténant un numéro de série à l’identifiant du fabricant). En conséquence, il n’existe aucune logique dans la numérotation de niveau 2 à l’intérieur du réseau de l’entreprise. Les adresses peuvent être considérées comme réparties au hasard. Ceci n’est pas trop grave car la gestion des adresses de niveau 2 est fortement automatisée et ni l’utilisateur, ni l’administrateur du réseau n’ont à s’en préoccuper. Les équipements d’interconnexion de niveau 2 vont maintenir la liste exhaustive des adresses des équipements présents sur le réseau pour en connaître leur localisation. Cette information est obtenue en lisant les adresses de la source dans les trames qui circulent. On voit que l’augmentation de la taille du réseau va nécessiter des tables de plus en plus grandes. 16/02/15 10 Définitions et principes Pour le niveau 3, l’adressage est structuré. L’adresse de la machine est liée à son emplacement sur le réseau. Si la machine est déplacée, l’adresse devra être modifiée. Certains protocoles comme IPX de Novell permettent une configuration automatique de l’adresse de la machine ; cela simplifie grandement l’administration du réseau. Ainsi l’adresse IPX est constituée d’un numéro de réseau auquel l’adresse MAC est concaténée. Pour construire son adresse de niveau 3, un équipement n’a qu’à écouter les trames qui circulent pour déterminer le numéro de réseau que l’ingénieur système a attribué et d’y ajouter son adresse MAC. Par contre, pour les réseaux IP la taille de l’adresse sur 32 bits est trop petite pour permettre une configuration complètement automatisée. Ce problème de configuration devrait être réglé dans la prochaine version du protocole IP appelée IPv6 16/02/15 11 Adressage IP 16/02/15 12 Adressage IP Pouvoir évoluer pour s’adapter aux besoins actuels du réseau est l’une des forces de l’Internet. On se souvient qu’à l’origine, ce réseau était conçu pour l’armée américaine et servait à connecter un très petit nombre de machines. Les universitaires prirent ensuite le relais, principalement pour leurs activités de recherche. En 1992, le réseau a été ouvert aux activités commerciales et le nombre d’équipements connectés a littéralement explosé, en partie grâce à la facilité d’utilisation d’applications comme le web. Depuis ses débuts, le protocole IP a été très peu transformé et le format de l’adresse n’a pas changé ; seules les règles d’attribution ont été modifiées pour accompagner l’évolution du réseau et en particulier pour répondre à la pénurie actuelle d’adresses. 16/02/15 13 Fonction d’une adresse Dans l’Internet, l’adresse joue plusieurs rôles. Elle sert d’identificateur , c’est-à-dire qu’elle permet de désigner un équipement sans ambiguïté. Ce rôle est garanti en assurant l’unicité dans l’attribution des adresses, comme dans le cas des adresses MAC. Cette fonction d’identifiant est utilisée, par exemple, par le protocole TCP (transmission control protocol ) pour faire le tri entre les différentes connexions. L’adresse Internet joue aussi le rôle de localisateur . Elle permet d’indiquer où est située la machine sur le réseau. C’est pour cette raison que les règles d’adressage sont si strictes. En effet, comme toutes les adresses « derrière » un routeur ont une partie commune, il n’est pas nécessaire à un routeur extérieur de connaître l’ensemble des équipements. 16/02/15 14 Fonction d’une adresse Les adresses doivent aussi offrir une facilité d’attribution. En effet, les organismes gérant l’Internet ne doivent pas être surchargés par les demandes des administrateurs de site voulant un préfixe. La structuration de l’adressage doit aussi faciliter la traduction d’un nom symbolique (par exemple www.esen.tn) en une adresse IP. La traduction inverse (adresse IP en nom de machine) doit aussi être possible. Enfin, le plan d’adressage doit permettre une bonne utilisation de l’espace d’adressage. La structuration de l’espace d’adressage induit inévitablement le risque de sous utilisation. 16/02/15 15 Format d’une adresse Une adresse IP dans la version actuelle (version 4) est un mot de 32 bits. Elle est généralement représentée par quatre nombres de 0 à 255, séparés par des points, qui représentent la valeur des quatre octets qui composent le mot de 32 bits, par exemple : 192.44.77.123. Cette information se retrouve dans les en-têtes des paquets IP. 16/02/15 16 Format d’une adresse Les règles d’attributions des adresses sur le réseau sont les suivantes : une adresse est divisée en deux parties : numéro du réseau et numéro de l’équipement ; tous les équipements qui se trouvent derrière un même routeur doivent avoir la partie réseau commune. Par contre, la partie numéro d’équipement doit être spécifique à chaque unité connectée ; le numéro de réseau ne peut pas se retrouver dans des adresses de machines situées à un autre endroit sur le réseau. Les ponts étant des équipements de niveau 2, ils sont complètement transparents et n’influent pas sur les règles de numérotation. 16/02/15 17 Format d’une adresse Ces règles permettent de simplifier l’interconnexion puisqu’il n’est plus nécessaire à un routeur de se rappeler toutes les adresses. Seule la partie réseau permet de localiser un équipement. De ce fait, le routage consiste essentiellement à retrouver le routeur du réseau sur lequel se trouve le destinataire. La localisation précise du destinataire est faite par le dernier équipement d’interconnexion en utilisant le protocole ARP (address resolution protocol ) pour déterminer l’adresse MAC vers laquelle la trame contenant le paquet doit être émise. Nous appellerons préfixe cette partie commune à tous les équipements situés derrière un routeur. L’information concernant la longueur du préfixe est nécessaire lors de la configuration des équipements. 16/02/15 18 Format d’une adresse L’adresse seule, c’est-à-dire le mot de 32 bits, ne suffit pas. On utilise : initialement une séquence binaire appelé netmask où les bits à 1 indiquent le numéro du réseau et les bits à 0 le numéro de l’équipement. Ainsi pour l’adresse 192.44.77.123, un netmask 255.255.255.0 indique que les trois premiers octets de l’adresse numérotent le réseau et le dernier octet contient le numéro de l’équipement. Le netmask peut être plus complexe, par exemple 255.255.224.0 indique que le numéro du réseau se lit sur les deux premiers octets et les trois premiers bits du troisième octets. de plus en plus souvent, un entier donne la longueur en bits du préfixe. Cette valeur est indiquée après un symbole « / » à la fin de l’adresse. Ainsi, pour reprendre les deux exemples précédents, on aurait 192.44.77.123/24 et 192.44.77.123/19. 16/02/15 19 Format d’une adresse Les adresses dont les parties numéro de machine ont tous leurs bits à 1 ou tous leurs bits à 0 sont réservées pour la diffusion à tous les équipements situés sur le réseau physique et ne peuvent donc pas être affectées à un équipement particulier. Exemple 1 : si l’on retrouve dans un paquet les adresses de destination 192.44.77.0 ou 192.44.77.255 pour un réseau configuré avec une longueur de préfixe de 24 et 192.44.128.0 ou 192.44.79.255 pour un réseau configuré avec une longueur de préfixe de 19, le paquet sera envoyé vers tous les équipements connectés au réseau local. On utilise aussi la partie machine n’ayant que des bits à 0 pour noter un numéro de réseau. Exemple 2 : 192.44.77.0/24 représente un réseau. Par contre 192.44.77.0/16 représente la machine 77.0 sur le réseau 192.44.0.0/16. Pour rendre la représentation plus compacte, les 0 à droite peuvent être supprimés, par exemple 192/8 correspond à 192.0.0.0/8. 16/02/15 20 Adressage avec classe Le plan d’adressage initial de l’Internet était divisé en trois classes : la classe A (commençant par la séquence binaire 0) réserve 7 bits pour les numéros de réseau et 24 bits pour les équipements ; la classe B (commençant par la séquence binaire 10) réserve 14 bits pour les numéros de réseau et 16 bits pour les équipements ; la classe C (commençant par la séquence binaire 110) réserve 21 bits pour les numéros de réseau et 8 bits pour les équipements. 16/02/15 21 Adressage avec classe À cela s’ajoutent les classes D (commençant par la séquence binaire 1110), utilisées pour joindre un groupe d’équipements (ces adresses sont appelées multicast ) et les classes E (commençant par la séquence binaire 1111) qui sont réservées à un usage futur. L’allocation de la partie réseau était gérée par un organisme de l’Internet, ce qui garantissait l’unicité des adresses et permettait ainsi la construction d’un réseau mondial. 16/02/15 22 Adressage avec classe Il est à noter que l’attribution des préfixes ne se faisait pas en tenant compte des contraintes géographiques ou suivant la topologie du réseau. L’adressage est dit « à plat ». Pour trouver le chemin du paquet, certains routeurs du réseau doivent connaître tous les préfixes qui ont été attribués L’administrateur du réseau gère la partie équipement. On peut remarquer que cette découpe en sous-réseau n’est pas bien adaptée aux besoins. Il peut exister jusqu’à 126 réseaux de classe A (c’est-à-dire 2 [7] - 2) contenant chacun jusqu’à 16 777 214 équipements. À l’opposé, il existe certes 2 097 150 réseaux de classe C, mais ceux-ci ne peuvent contenir que 254 équipements. 16/02/15 23 Découpage en sous-réseaux Les besoins en adresses des entreprises se situent souvent entre ces deux extrêmes. Certains sites historiques, pionniers de l’Internet, possèdent des adresses de classe A, mais cela reste relativement rare. Il s’en suit que les adresses de classe B ont été privilégiées dans ce plan d’allocation des adresses. Dans ce plan d’adressage, l’ingénieur réseau du site peut ensuite découper la partie adresse comme il l’entend pour définir des sousréseaux. Le nombre de bits alloué aux parties réseau et sous-réseau est indiqué par le netmask. 16/02/15 24 Découpage en sous-réseaux Si un site auquel une classe B a été allouée contient des routeurs, la partie servant à la numérotation des équipements doit être redécoupée pour pouvoir définir des sous-réseaux. Généralement, le netmask utilisé pour ces réseaux de classe B est 255.255.255.0 ; le troisième octet est vu comme le numéro de sous réseau et le quatrième octet comme le numéro de l’équipement sur ce sous-réseau 16/02/15 25 Découpage en sous-réseaux Il en va de même si le site possède des adresses de classe C. Les contraintes liées aux performances des réseaux locaux font qu’il est peu réaliste de connecter plus d’une cinquantaine d’équipements sur un même réseau local. Or une adresse de classe C permet d’adresser jusqu’à 254 équipements. La division en sous-réseaux en utilisant un netmask s’avère alors nécessaire. L’emploi du netmask est plus délicat car les bits du dernier octet doivent servir à la fois à numéroter les sous-réseaux et les équipements. Or la représentation en décimal à la fois des adresses et du netmask ne facilite pas la lecture. 16/02/15 26 Découpage en sous-réseaux Déterminer le nombre de bits à allouer pour numéroter les sousréseaux est relativement complexe et dépend bien évidemment du nombre de sous-réseaux, du nombre d’équipements à y connecter, mais également de l’évolution prévue ou possible. En effet, si la valeur du netmask doit être modifiée, tous les équipements doivent être renumérotés, ce qui va entraîner une indisponibilité du réseau pendant la durée de cette activité de renumérotation. En particulier avec les adresses de classe C, il est important de perdre le moins de place possible. Le netmask n’est pas nécessairement identique sur tous les sous-réseaux. On parle alors de netmask de longueur variable (VLSM : variable-length subnet mask ). 16/02/15 27 Découpage en sous-réseaux Le site dispose de l’adresse de classe C 192.1.2.0 (le préfixe commence par la séquence binaire 110) et doit affecter des adresses sur trois sousréseaux IP. En utilisant des netmasks de longueur variable, il est possible de s’adapter aux besoins en adresses pour chacun des sous-réseaux. Les deux sous-réseaux contenant des terminaux auront un netmask de 255.255.255.192 pour permettre jusqu’à 62 équipements. Les numéros de ces sous- réseaux seront 01 et 10. Le besoin en adresses est moindre pour numéroter le sous-réseau où se trouvent les routeurs. Il est donc possible de se servir dans la partie non exploitée par la numérotation précédente. Pour ce sous-réseau, la taille du netmask est augmentée pour toujours éviter les numéros de sousréseaux ne comportant que des 0 ou de 1. Dans l’exemple de la figure 1, le sous-réseau 001 est 16/02/15 28 choisi. Limites Les classes B n’ont pas été uniquement attribuées pour faciliter la gestion à l’intérieur d’un site. Elles ont aussi facilité la gestion du réseau Internet dans son ensemble. Ainsi, si une entreprise possède 2 000 équipements à connecter sur son réseau, elle peut demander soit une adresse de classe B (mais alors le « gâchis » en adresses est important), soit demander huit adresses de classe C. Dans ce dernier cas, la gestion du réseau Internet s’en trouve compliquée. En effet pour la classe B, les routeurs n’ont besoin que d’une seule information pour retrouver le chemin vers l’entreprise. Dans le cas des adresses de classe C, il en faudra huit fois plus. 16/02/15 29 Limites Ce plan d’adressage a bien fonctionné durant la phase universitaire du réseau, mais quand celui-ci à été ouvert aux sites commerciaux et aux entreprises, le besoin d’adresses à fortement augmenté. Le nombre d’adresses disponible pour la classe B a rapidement diminué et les adresses de classe C ont été de plus en plus souvent utilisées, ce qui a conduit à une saturation des tables de routage de réseau. Les organismes qui gèrent l’Internet ont alors pris des mesures d’urgence consistant à : modifier les règles d’attribution des adresses pour mieux utiliser l’espace d’adressage. Ces nouvelles techniques rendent aussi l’adressage hiérarchique, ce qui permet de réduire le nombre d’information dans les routeurs ; proposer un adressage privé pour réduire les besoins en adresses « officielles » des entreprises ; développer une nouvelle version du protocole offrant un espace d’adressage plus important. 16/02/15 30 Adressage sans classe Depuis 1994, les règles d’attribution des adresses ont été modifiées, avec un nouveau plan d’adressage appelé CIDR (classless Internet domain routing ). Comme son nom l’indique, ce plan d’adressage est sans classe : le préfixe binaire (0, 10, ou 110) n’est plus pris en compte pour déterminer la longueur de la partie réseau et celle de la partie numéro d’équipement. Il s’agit d’une généralisation du concept de netmask (ou de la longueur du préfixe) utilisé pour le découpage en sous-réseaux. Ce nouveau plan d’adressage opère dans le même espace d’adressage que celui avec classe. La zone contenant les adresses de classe B étant presque saturée, les allocations ont commencé dans la zone des classes C, mais des préfixes anciennement utilisés pour les classes A ont aussi été attribués. 16/02/15 31 Adressage sans classe Dans ce plan d’adressage, les adresses dont le préfixe est : 192/7 , soit les adresses comprises entre 192.0.0.0 et 193.255.255.255, correspondent aux adresses de classe C déjà attribuées dans le plan d’adressage avec classes ; 194/7 soit les adresses comprises entre 194.0.0.0 et 195.255.255.255 sont attribuées à l’Europe et gérées par un orga nisme appelé RIPE NCC (Réseaux IP européens - Network Coordination Center ) ; 198/7 sont attribuées à l’Amérique du Nord et gérées maintenant par un organisme appelé ARIN (American Registery for Internet numbers ) ; 200/7 sont attribuées à l’Amérique centrale et l’Amérique du Sud 202/7 sont attribuées aux pays du Pacifique. 16/02/15 32 Adressage sans classe Ce plan d’adressage facilite la gestion des adresses. Le monde a été découpé en différentes zones et une autorité possède la délégation d’adresses pour sa région. Ces autorités vont ensuite déléguer aux fournisseurs d’accès des préfixes plus longs. Les fournisseurs d’accès vont à leur tour connecter d’autres fournisseurs d’accès couvrant une aire géographique plus limitée ou directement des sites. Il est ainsi plus facile d’attribuer un préfixe correspondant aux besoins du site. Par exemple, si un site a besoin de 2 000 adresses, il se verra attribuer par son fournisseur d’accès un préfixe de longueur 21. 16/02/15 33 Adressage privé Une autre méthode pour réduire le besoin des sites en adresses consiste à introduire des adresses privées. Rien ne distingue à première vue une adresse publique d’une adresse privée. Les organismes de normalisation de l’Internet garantissent simplement que les préfixes 10.0.0.0/8, 172.16.0.0/14 et 192.168.0.0/16 ne seront jamais officiellement attribués à des sites. En conséquence, ces adresses, sans ambiguïté, peuvent être utilisées sans autorisation pour numéroter des équipements. En contrepartie, les paquets émis par des équipements ayant une adresse privée ne peuvent pas sortir du site. Différentes architectures basées soit sur les proxy, soit sur la traduction d’adresses, permettent de s’accommoder de cette contrainte. 16/02/15 34 Adressage privé 16/02/15 35 Proxy Un proxy est une passerelle (équipement d’interconnexion de niveau application) qui va relayer les informations venant des équipements ayant une adresse privée . Le site possède un nombre limité d’adresses publiques officiellement attribuées par son fournisseur d’accès. Le routeur en entrée du réseau sait router les paquets à la fois vers ce réseau officiel et vers le reste de l’Internet. Sur ce réseau public , on place un routeur qui sait router vers les réseaux privés et vers le réseau officiel. Quand un équipement veut accéder à des informations sur l’Internet, il envoie ses données au proxy qui les analyse et qui envoie, avec l’adresse de l’équipement, une requête vers la destination. La réponse du destinataire arrive au proxy qui la relaie vers 16/02/15 l’équipement à l’origine de la requête 36 Proxy Le principal inconvénient d’un proxy provient du fait que les applications doivent être recompilées pour le prendre en considération. Pour certaines applications récentes, comme les navigateurs, il est possible d’en paramétrer l’usage. De plus, pour les navigateurs, les proxys peuvent servir de cache et évitent ainsi que les mêmes demandes provenant d’utilisateurs différents au sein de l’entreprise ne soient réémises plusieurs fois sur le réseau Internet public. 16/02/15 37 Traduction d’adresses La traduction d’adresses est une technique très populaire, efficace pour les petits sites. A priori, le principe est relativement simple. Il s’agit de remplacer à la volée l’adresse de la source privée des paquets quittant le site par une adresse publique. Le routeur mémorise un contexte contenant la correspondance entre l’adresse publique et l’adresse privée. Quand l’équipement à l’extérieur du site répond, le routeur fait la substitution inverse et change l’adresse de destination publique par l’adresse privée. 16/02/15 38 Traduction d’adresses 16/02/15 39 Traduction d’adresses Cette technique est en théorie complètement transparente pour les applications et serait relativement simple si le modèle architectural de l’Internet reprenait l’indépendance des couches du modèle de référence de l’ISO. À chaque fois que l’adresse est modifiée dans l’en-tête IP, le checksum du paquet IP doit être recalculé. De plus, le checksum de l’en-tête TCP, calculé en fonction de l’adresse IP, doit être aussi modifié. Cela n’est pas un frein à l’utilisation de la traduction d’adresses, surtout sur des petits sites, car ces calculs peuvent être réalisés par un composant électronique spécialisé. Par contre, l’adresse peut être aussi reprise par les applications. C’est le cas par exemple du protocole FTP qui émet des messages de contrôle comme PORT 10,2,0,2,4,31 pour demander à l’équipement distant d’ouvrir une connexion TCP. Le boîtier de traduction doit donc analyser aussi les données applicatives pour effectuer la substitution d’adresse. 16/02/15 40 Traduction d’adresses Il n’est pas nécessaire d’avoir un ensemble d’adresses publiques, une seule peut suffire. Dans ce cas, le boîtier de traduction modifiera les numéros de ports. Cette technique est très utile quand le site, de taille très réduite, ne dispose que d’un accès Internet via PPP (point to point protocol ) et que le fournisseur d’accès attribue temporairement une adresse IP. Les boîtiers de traduction présentent aussi un avantage lors du changement de fournisseur d’accès car il n’est pas nécessaire de changer le plan d’adressage privé, il suffit de modifier la configuration du boîtier. 16/02/15 41 Traduction d’adresses Il est relativement polémique d’affirmer que les boîtiers de traduction d’adresses augmentent la sécurité du site. Ils peuvent simplement donner l’illusion d’une isolation des équipements. Tant que l’équipement n’a pas tenté de sortir du site, il est inaccessible de l’extérieur puisqu’il n’existe pas de contexte dans le boîtier pour l’atteindre. Par contre, la traduction d’adresse remet en cause l’authentification de bout en bout offerte par les protocoles de sécurisation de l’Internet. En effet, l’adresse est modifiée en cours de route par le boîtier. 16/02/15 42 Traduction d’adresses Aussi efficaces qu’ils soient, les boîtiers de traduction modifient fortement les principes conceptuels initiaux de l’Internet. Le réseau est sans état, il traite les paquets indépendamment les uns des autres. Or les boîtiers maintiennent un contexte. Si un boîtier est « rebooté », le contexte est détruit et les connexions qui le traversaient sont coupées. En revanche, les connexions sont simplement interrompues lorsque un routeur « reboote » 16/02/15 43 Traduction d’adresses Si le site n’est relié à l’extérieur que par un seul routeur, la traduction d’adresse est acceptable Par contre, dans le cas d’un site multidomicilié, c’est-à-dire relié au reste de l’Internet par plusieurs routeurs, la traduction d’adresse est difficile. En effet, si le routage n’est pas symétrique ou si le chemin pris par les paquets à l’extérieur ou à l’intérieur du site change, les connexions ne pourront pas se faire, faute de contexte. 16/02/15 44 Équipements terminaux et intermédiaires L’ISO nomme équipement terminal (end system ) un équipement dont le but est de produire ou de consommer de l’information équipement intermédiaire (intermediate system ) un équipement dont l’unique fonction est de relayer l’information. Un équipement terminal est par exemple un ordinateur personnel ou une imprimante, tandis qu’un routeur est un équipement intermédiaire. 16/02/15 45 Équipements terminaux et intermédiaires La configuration d’un équipement terminal doit être relativement simple. Pour accéder à l’Internet, un équipement terminal n’a besoin que d’une configuration minimale, c’est-à-dire son adresse IP et le netmask associé. L’équipement en déduit le préfixe qu’il partagera avec les autres équipements connectés sur le même réseau local. Il doit aussi apprendre l’adresse d’un routeur dit par défaut vers lequel le trafic destiné à un équipement en dehors du réseau local sera envoyé. L’adresse par défaut est représentée par la valeur 0.0.0.0 (ou 0.0.0.0/0 dans la représentation avec préfixe). 16/02/15 46 Équipements terminaux et intermédiaires La notion de table de routage est primordiale pour pouvoir acheminer les paquets vers une destination. C’est un tableau ou une base de données composées d’une destination (machine ou préfixe), de l’adresse d’un équipement intermédiaire et parfois d’un coût permettant de différencier des destinations identiques. Il est à noter que l’équipement intermédiaire doit être directement accessible. On le désigne parfois de prochain saut (next hop ). Équipements terminaux et intermédiaires La première entrée correspond aux équipements qui sont directement accessibles par l’interface locale (par exemple la carte Ethernet de la machine). Pour joindre une machine qui a ce préfixe, il suffit d’encapsuler le paquet IP dans une trame et de trouver l’adresse MAC du destinataire à l’aide du protocole ARP. La deuxième entrée dans la table indique que pour joindre n’importe quelle autre machine, il faudra envoyer le paquet au routeur 192.44.77.1. 16/02/15 48 Équipements terminaux et intermédiaires Il est important de remarquer que l’adresse du routeur est une adresse accessible par l’équipement terminal grâce à la première entrée de la table de routage. Quand l’équipement terminal voudra envoyer une information à l’extérieur du réseau local, il consulte une première fois la table de routage qui lui donne l’adresse de l’équipement intermédiaire, puis il re-consulte une deuxième fois la table de routage pour trouver l’interface qui permet de joindre ce routeur. Le protocole ARP permet de trouver l’adresse MAC du routeur pour y envoyer le paquet. 16/02/15 49 Équipements terminaux et intermédiaires Sauf dans de très rares exceptions, la décision de routage (c’est-àdire le choix de l’interface de sortie) n’est prise qu’en fonction de l’adresse de destination contenue dans l’en-tête du paquet IPv4. Pour trouver dans une table de routage l’entrée correspondant à une adresse de destination contenue dans un paquet, on choisit celle qui a le plus de bits en commun. Ainsi dans dans notre exemple, pour l’adresse de destination 192.44.77.56, la deuxième entrée aurait pu s’appliquer puisqu’elle ne nécessite aucun bit en commun. Par contre, la règle du plus long préfixe fait que la règle 1 sera utilisée. 16/02/15 50 Équipements terminaux et intermédiaires Dans la plupart des systèmes d’exploitation, la commande netstat -rn permet de visualiser cette table. On y trouve une troisième entrée liant l’adresse 127.0.0.1 à l’interface lo0. Il s’agit d’une interface d’auto-bouclage (loopback ). Tous les paquets émis à cette adresse de destination ne sont pas envoyés sur le réseau mais reviennent sur la machine. Elle sert pour les tests et la communication entre les processus d’un même Équipement. L’équipement intermédiaire a une meilleure connaissance de la topologie du réseau. Un routeur possède autant d’adresses que d’interfaces sur le réseau. La configuration minimale d’un routeur lui permet de connaître les réseaux auxquels il est directement attaché. Sa table de routage doit permettre d’orienter les paquets vers des réseaux auxquels le routeur n’est pas directement connecté. Pour cela, il faut y ajouter des informations supplémentaires. Ceci peut se faire manuellement ou par un dialogue entre routeurs qui échangent leur configuration. Comme indiqué, les protocoles qui permettent ces échanges sont appelés protocoles de routage. 16/02/15 51 Protocole IP 16/02/15 52 Protocole IP Dans le paquet, les champs sont alignés sur des mots de 32 bits. Il est très important de maintenir cet alignement car il permet d’optimiser le traitement des paquets. Supposons qu’un paquet ne soit pas correctement aligné. Pour que le routeur retrouve l’adresse de destination avec laquelle il a pris sa décision de routage, il devrait par exemple faire une lecture en mémoire d’un mot de 1 octet, puis lire 16 bits et encore 1 octet. Si par contre les champs sont bien alignés, une seule instruction de lecture de la mémoire est nécessaire. 16/02/15 53 Protocole IP Version : vaut 4 dans les versions actuelles et 6 dans la prochaine version du protocole. C’est pour cette raison que ces protocoles sont généralement désignés par IPv4 et IPv6. 16/02/15 54 Protocole IP Longueur de l’en-tête : donne la longueur de l’en-tête en mots de 32 bits. Initialement, l’en-tête de cinq mots de 32 bits ne devait contenir que les informations minimales. Si d’autres informations étaient nécessaires, il était possible d’utiliser un champ option de longueur variable. L’expérience à montré que ce n’était pas une bonne idée. En effet, les paquets portant des options étant minoritaires, les routeurs ont donc été optimisés pour le traitement de paquets sans option. Si un équipement émet des paquets avec option, ceux-ci seront retardés. Il est donc très rare de voir de tels paquets dans le réseau. La valeur que l’on retrouve dans ce champ est généralement 5. 16/02/15 55 Protocole IP Type de service : la sémantique de ce champ a récemment été modifiée. Initialement, ce champ devait servir à prendre des décisions de routage différentes. Il contenait une priorité codée sur 3 bits, puis une bitmap qui indiquait quatre plans de routages pouvant être possibles, favorisant le délai, le débit, la fiabilité ou le coût. La précédence n’est utile que si des mécanismes sont mis en œuvre pour limiter son usage ; sinon, tous les paquets seront émis avec la priorité la plus forte. Le routage par type de service ne s’est jamais non plus réellement déployé à grande échelle dans l’Internet. Pour qu’il soit efficace, il faudrait que tous les routeurs prennent l’octet type de service en considération, sinon des boucles peuvent apparaître entre 16/02/15 56 les plans. Protocole IP Type de service : L’octet type de service a été réattribué en partie au groupe DiffServ de l’IETF (Internet Engineering Task Force) travaillant sur la différenciation de service. Son but est de définir plusieurs classes de services. Pour chaque classe de service, un site passe un contrat avec son fournisseur d’accès. Le fournisseur vérifie que le site ne dépasse pas le débit défini dans le contrat. Cet octet donne une priorité pour le paquet dans les files d’attente des routeurs. En cas de saturation de ceux-ci, les paquets moins prioritaires seront rejetés en premier. Contrairement aux bits ToS qui définissaient une route différente pour chaque valeur, avec la différenciation de service, le routage des paquets suivra la même route quelle que soit la valeur du bit, seul le taux de perte de paquet sera différent. 16/02/15 57 Protocole IP Longueur : donne la longueur en octets du paquet, en-tête comprise. 16/02/15 58 Protocole IP Fragmentation : ce champ de 32 bits ne devrait plus être utilisé dans les mises en œuvre actuelles des routeurs. À l’origine, il devait permettre d’adapter la taille des paquets IP à la taille des trames de niveau 2. En effet, si une station connectée à un réseau à jeton émet un datagramme de 4 Ko, celui-ci ne pourra pas être routé vers un réseau Ethernet où la taille maximale est de 1 500 octets. Le champ fragmentation permet au routeur qui se trouve entre ces deux réseaux de redécouper le paquet en paquets de taille inférieure appelés fragments. 16/02/15 59 Protocole IP Fragmentation : Comme le réseau IP est un réseau datagramme, plusieurs problèmes se posent, liés au fait que l’ordre des fragments n’est pas forcément respecté à la réception. Il faut pouvoir associer le fragment au paquet initial. Le champ séquence est choisi par la source et sera recopié dans chaque fragment. Le bit MF (more fragment ) indique quand il est à 0 qu’il s’agit du dernier fragment d’un paquet. 16/02/15 60 Protocole IP Le bit DF (Don’t Fragment ) permet d’interdire au routeur de réaliser la fragmentation du paquet. Dans ce cas, un routeur qui ne peut pas transmettre un paquet, informe l’émetteur en retournant un message ICMP. L’émetteur devra adapter la taille des paquets en conséquence. Ce mécanisme appelé découverte du MTU (maximum transmission unit ) est de plus en plus employé. Le but est de réduire la charge des routeurs en effectuant la fragmentation à l’entrée dans le réseau. 16/02/15 61 Protocole IP Durée de vie : ce champ permet d’éviter les boucles dans le réseau. Il porte ce nom car il devait initialement limiter la durée de séjour d’un paquet dans le réseau (nécessaire pour pouvoir borner les valeurs des temporisateurs de retransmission). Or, comme il est très difficile de pouvoir mesurer cette durée, il a été convenu que chaque routeur décrémente sa valeur de 1 et qu’un équipement ne doit pas émettre un paquet avec une durée de vie de 0. Cela permet de se préserver des conséquences d’une boucle de routage. Il est en effet très difficile dans un réseau mondial de garantir que toutes les tables de routage soient cohérentes. Un paquet peut très bien être renvoyé entre deux routeurs. Si aucune mesure n’est prise, les paquets tourneront indéfiniment entre les routeurs et 16/02/15 62 toutes les ressources du réseau seront consommées pour ces paquets. Protocole IP Durée de vie : Le champ durée de vie est aussi utilisé d’une manière détournée pour déterminer la route prise par un paquet. Si la source émet un message avec une durée de vie de 1, le premier routeur va éliminer le paquet et retourner à la source un message ICMP. La source peut ainsi déterminer l’adresse du premier routeur. Si la source émet un paquet avec une durée de vie de 2, suivant le même principe, elle obtiendra l’adresse du deuxième routeur. Ce principe est mis en œuvre par l’utilitaire traceroute que l’on retrouve sur la plupart des équipements. 16/02/15 63 Protocole IP Protocole : donne le protocole de niveau supérieur 16/02/15 64 Protocole IP Checksum : permet de valider le contenu de l’en-tête IP. À noter que comme le champ durée de vie est modifié à chaque traversée de routeur, le champ checksum doit être modifié par ce dernier. 16/02/15 65 Protocole IP Le paquet IP peut contenir des informations optionnelles. À noter le champ bourrage en fin d’option qui permet, le cas échéant, de maintenir l’alignement du reste des informations sur des mots de 32 bits. Le champ longueur de l’en-tête permet de connaître leur taille. Pour les raisons de performances, il est très rare de trouver des options dans un en-tête IP. Parmi les options prévues par le protocole, certaines concernent le routage : l’option router alert permet d’indiquer aux routeurs qu’ils doivent examiner le contenu du paquet. l’option routage par la source (source routing ) . Cette option permet de préciser un chemin dans le réseau, c’est-à-dire l’adresse IP des routeurs par lesquels le paquet devra passer. 16/02/15 66 Routage par la source Le routage par la source permet à l’émetteur de préciser le chemin par lequel devra transiter le paquet pour joindre le destinataire. Il existe deux modes de fonctionnement : mode strict où la liste exhaustive des routeurs doit être fournie ; mode libéral (loose ) où seulement l’adresse de certains routeurs sur le chemin est précisée. Pour aller d’un routeur à un autre, les tables de routage de l’Internet sont utilisées. Le premier mode n’est plus utilisé. Le second mode est intéressant dans certaines configurations, en particulier pour la mobilité. Or, à cause de l’inefficacité des options dans IPv4 et des problèmes liés à la sécurité, son emploi est délicat. 16/02/15 67 Routage par la source La station S émet un paquet à destination de l’équipement D. En fait, le champ destination du paquet IP contient l’adresse du premier routeur intermédiaire R1, le champ option contient le routeur intermédiaire suivant R2 et le destinataire D. Le paquet est naturellement routé vers le routeur R1 qui permute l’adresse destination avec celle contenue dans le champ option. Le paquet est ensuite routé vers R2 qui effectue à son tour une permutation et place l’adresse du destinataire qui est finalement atteint. 16/02/15 68 Routage par la source Le routage par la source peut être employé dans plusieurs cas : pour connaître la route prise par les paquets pour aller dans le sens in...
Téléinformatique
IEEE
1/106
100%
Rendu du PDF...