X25.3 IPv4 IPv6 IPX
Grégory MILA
DESS TNI
05/11/2001
Sommaire :
Réseaux Andrew Tanenbaum (3eme édition)
www.info.univ-angers.fr/pub/pn/poly/index.htm
(cours sur la couche réseau de Pascal Nicolas)
www.brillianet.com/programming/ipxnetwork
(topo sur le protocole IPX de Martin Pedersen)
La couche réseau suscite deux grands mouvements, deux écoles de pensées:
- ceux qui pensent que la couche réseau doit offrir des services fiables en mode connecté.le protocole x25.3 obeit à cette règle.
- ceux qui pensent que la couche réseau doit offrir des services non fiables en mode non connecté.les protocoles IP et IPX obéissent à cette règle.
Le débat réel est en fait de savoir où placer la complexité.Soit on la place dans la couche réseau, c'est le cas pour le mode connecté, soit dans la couche transport, c'est le cas du mode non connecté.Les partisants du mode non connecté argumentent que l'on peut placer la complexité au niveau de la couche transport, donc chez les utilisateurs du réseau, prétextant que le coût des machines personnelles est plutôt faible par rapport au machines constituant le sous-réseau national.C'est ainsi que dans l'Internet, la couche réseau offre des services non fiables en mode non connecté.Au contraire, le réseau national de télécommunication offre des services fiables en mode connecté.
Les réseaux X25 sont issus d'une norme établie en 1976 par le CCITT pour les réseaux à commutation de paquets sur propositions de 4 pays (France, Canada, Grande-Bretagne et Etats-Unis) pour leur réseau public de communication (respectivement Transpac, Datapac, EPPS et Telenet).
Un réseau X25 est basé sur les trois premières couches du modèle OSI.La couche réseau de ce modèle est nommée X25.3.
Les services offert par la couche réseau dans les réseaux X25 sont:
- une transmission fiable.
- la conservation de l'ordre d'emission des paquets.
- le contrôle de flux (interdit un émetteur rapide de saturer un recepteur lent).
|
Voici le scénario idéal d'un dialogue entre deux entités sur un réseau X25. Le source commence à envoyer une requête de connexion à la destination.Cette dernière lui renvoie une réponse positive si la communication est acceptée. Des données sont ensuite envoyées. Pour clore la connection, la source envoie une requête de libération de connexion et quitte.A la reception de celle-ci, la destination quitte également. |
![]() |
|
Une fois l'établissement d'un circuit virtuel effectué, le dialogue entre les deux entités se fait par l'envoie de datagrammes dont la structure est décrite ci-contre. Chaque circuit virtuel est utilise une voie logique identifiée par un numéro de groupe (16 possibles) et un numéro de voie (256 possibles).La voie logique "0" étant réservée, il existe donc 4095 voies logiques possibles. |
![]() |
C'est le ciment qui permet à tous les réseaux hétérogène connectés à l'Internet de communiquer.Le principe de ce protocole est de faire de son mieux pour délivrer les datagrammes de leur source vers leur destination.Ce principe est appelé, en anglais, Best Effort Delivery.Ce protocole n'offre qu'un service non fiable de délivrance de datagrammes.Ceux-ci peuvent atteindre leur destination dans un ordre différent de leur émission, ou ne pas atteindre leur destination du tout.
|
Voici la struture d'un datagramme IPv4. Lg_Ent contient la taille de l'entête de ce datagramme en mot de 32 bits.La taille maximale d'un datagramme IPv4 est donc de 60 octets. Type de service contient un ensemble de bits indiquant au sous-réseau les services demandés.Par exemple, un bit est réservé pour indiquer la priorité des données contenues dans le datagramme.Si ce sont des données provenant d'un voie numérisée, le delai de transmission doit être court alors que lla transmission de tous les datagrammes n'est pas obligatoire.En pratique ce champs est peu utilisé par les routeurs. Identification permet de savoir à quel datagramme appartient le fragment de datagramme reçu. Durée de vie est utilisé pour limiter la durée de vie d'un datagramme.C'est un compteur qui est décrémenté lors du passage du datagramme dans un routeur. Protocole définie le protocole de la couche transport à qui le datagramme est destiné.L'dentification des protocoles est définie par la RFC 1700. Options contient des informations sur la sécurité, le chemin que le datagramme peut prendre, doit prendre ou a pris à travers le sous-réseau. |
![]() |
|
Une machine connectée à un réseau IPv4 possède une adresse.Les adresses IPv4 sont codées sur 32 bits. Elles sont constituées de trois champs: un en-tête,un numéro identifiant un réseau et un numéro identifiant une machine sur ce réseau.L'en-tête définie la classe du réseau à laquelle cette machine appartient. Il existe donc 2^7 (128) réseaux de classes A possibles.Un réseau de classe A peut contenir jusqu'à 2^32 machines(environ 16 millions). Il existe 2^14 (32512) réseaux de classes B possibles.Un réseau de classe A peut contenir jusqu'à 2^16 machines(environ 16 millions). Il existe 2^21 (2097152) réseaux de classes C possibles.Un réseau de classe A peut contenir jusqu'à 2^8 machines(environ 16 millions). |
![]() |
|
En fait, certaines adresses sont réservées. L'adresse nulle est utilisée par toute machine au démarage, lorsqu'elle ne connait pas encore son adresse IPv4 sur le réseau sur lequel elle est connectée. Une adresse dont le champ id_res est nulle indique une machine sur le réseau d'attachement. L'adresse "tout à un" permet la diffusion de datagramme à l'ensemble des machines connectées au réseau d'attachement. Enfin, les adresses dont id_res vaut 127 sont utilisées pour le rebouclage.Elle permettent la communication inter-processus sur une même machine.Un datagramme dont la destination a pour id_res 127 n'est jamais diffusé sur un réseau. |
![]() |
| Voilà un bref récapitulatif des adresses IPv4 possibles pour chaque classe. | ![]() |
Notion de sous-réseau et de sur-réseau IP :
Pour connecter son réseau à l'Internet, un administrateur réseau doit effectuer un demande d'adresses IP auprès du NIC (Network Information Center) afin d'attribuer une adresse unique à chacune des machines constituant son réseaux.En fait, le NIC n'attibue pas d'adresse réseau telle quelle, mais un numéro id_res libre dans une classe de réseau qui lui convient.
Ainsi, si cette personne administre 200 machine, il peut demander au NIC de lui donner un numéro id_res libre de classe C.
|
Il est fréquent qu'un administateur réseau désire fractionner son réseau en plusieurs sous-réseaux. Il peux le faire en configurant les routeurs présents sur son réseau à l'aide de masques de sous-réseaux. L' exemple ci-contre montre comment fractionner un réseau de classe B en 62 réseaux, chacun constitué au maximum de 1022 machines.Il suffit, comme on peut le voir, de définir un champ id_res dans le champ id_ord sur 6 bits.Le nouvel id_ord se trouve alors codé sur 10 bits.Comme les sous-réseaux "tout à zéro" et "tout à un" sont réservés, on obtient 2^6-2 sous-réseaux possibles.idem pour id_ord. |
![]() |
Routage CIDR (classles InterDomain Routing):
|
Il peut également arriver qu'un administrateur désire fusionner plusieurs réseau de même classe en un seul. Par exemple, si il administre 500 machines, Le NIC doit lui fournir deux id_res de classe C.En fait, il existe une alternative à cela : Il peut demander un seul id_res dans ce cas. En effet, le NIC peut se débrouiller pour trouver deux id_res consécutifs et configurer les routeurs dans l'internet à l'aide d'un masque de "sur-réseaux".En fusionnant ces deux id_res à l'aide du bon masque, on obtient un nouvel id_res et un nouvel id_ord. Ci-contre un exemple basé sur deux adresses de classe B consécutives. |
![]() |
Ainsi est née, en 1987, l'idée d'utiliser les adresses restantes de classe C de la manière décrite précédement.C'est la technique du routage CIDR décrite dans la RFC 1519.
Le protocole IPv6 est une amélioration récente du protocole IPv4.
En 1990, le désir d'améliorer IPv4 se fait sentir.Ainsi l'IETF (Internet Engineering Task Force ) diffuse, dans la RFC 1550, les objectifs que le successeur d'IPv4 doit avoir.Voici les principaux :
- augmenter l'espace des adresses ip car celles-ci commencent à manquer.
- réduire la taille des tables de routage qui sont à l'heure actuelle gigantesques.
- simplifier le protocole pour permettre aux routeurs de router plus rapidement les datagrammes.
- augmenter la sécurité, en permettant l'authentification des utilisateurs et une confidentialité des données.
- accorder plus d'attention aux types de services, et notament au service requis par le trafic temps-réel qui a explosé ces dernière années.
- augmenter l'efficacité de la diffusion multidestinataire en permettant de spécifier l'envergure d'une telle diffusion.
- permettre à une machine de se connecter au réseau de n'importe quel endroit de la planète avec la même adresse ip.
- permettre aux protocole ipv4 et ipv6 une coexistence pacifique.
- garder une grande évolutivité.
En 1993, une proposition combinée et modifiée de Deering et Francis fut choisit et fut appelée IPv6.
Les grandes améliorations de ce protocole sont :
- L'utilisation d'adresse codée sur 16 octets.
- La simplification des en-têtes des datagrammes.
- Une plus grande souplesse dans les options.
- La sécurité.
|
Voici la struture d'un datagramme IPv6. Priorité permet de décrire la priorité des données contenues dans le datagramme.Celle-ci varie de 0 à 15, das l'ordre croissant de priorité.Les priorité 0 à 7 sont réservées aux sources capables de diminuer leur débit en cas de congestion.Les autres priorités sont réservées au trafic temps réel.Exemple: 1 pour les news,4 pour ftp et 6 pour telnet. Longueur de charge utile est la longueur en octets de données qui suivent l'en-tête. Nombre max. de saut est identique au champs durée de vie des datagrammes IPv4. Adresse source et adresse destination sont décrites ci-après. |
![]() |
Certaines controverses existent parmi les acteurs de la création de IPv6:
- Le nombre maximum de saut est toujours codé sur 8 bits.Ces détracteurs argumentent que le réseau Internet grandit chaque jour et par conséquent le nombre de routeurs aussi.Il pourra selon eux arriver que, dans une durée plus ou moins longue, un chemin entre deux entité du réseau contienne plus de 255 routeurs.Ses Défenseurs, eux, argumentent que si le réseau est bien construit, ce cas ne peut pas se produire.S'il devait ce présenter, il faudrait revoir l'architecture du réseau.
- La longueur maximale d'un datagramme est de 65575 octets.Ces détracteurs argumentent que certains superordinateurs ne peuvent être interrompus tout les 65575 octets lors de transmission de résultats important.Ces défenseurs argumentent que si un datagramme géant (appelé aussi jumbogrammes) arrivent sur une artère à moyen débit, sa transmission consommera une durée trop importante, ajoutant un délai inacceptable aux autres datagrammes.
- Le total de contrôle a été supprimé délaissant la tâche de la détection d'erreurs à la couche transport.
- La sécurité.Elle reste optionnelle dans IPv6.Ceux qui ont peu confiance aux méthodes de cryptage utilisés par IPv6 peuvent crypter leur données dans la couche application.L'usage de la cryptographie n'est pas la même partout.En France, par exemple, elle est considérée comme une arme de guerre et donc interdite dans une moindre mesure.Enfin, les algorithmes de chiffrement choisis (MD5 et DES) suffisent au jour d'aujourd'hui mais les récentes avancées en cryptanalyse pourraient les affaiblir.
|
Voici, ci-contre, les différents classes d'adresses qu'offre le protocole IPv6. Il est à noté que le fait que les adresses IPv6 soient codées sur 16 octets rends quasi-innépuisable le nombre d'adresse.En effet, selon certains calculs, dans les cas les plus pessimistes, le nombre d'adresses IP disponibles au mètre carré (terre et mer) serait de plus de 1000.
|
![]() |
Le système de réseaux de PC le plus connus est sans doute les réseaux Netware.Ils peuvent être fondés sur une multitude d'architectures matériels comme Ethernet, Token Ring ou encore ARCnet.
Ils sont basés sur une architecture logicielle de type client/serveur.
Le protocole IPX (Internetworking Packet eXchange):
C'est un protocole propriétaire utilisé dans les réseaux Netware de Novell.Il constitue une amélioration du protocole Xerox's Internetwork PacketProtocol.
Il est semblable au protocole IP à ceci près que les adresses IPX sont codées sur 10 octets.Celles-ci sont constituées de deux champs:
- l'adresse réseau sur 32 bits.
- l'adresse de la machine sur ce réseau sur 48 bits.
|
Dans les réseaux Netware, le total de contrôle n'est quasiment pas utilisé car la couche liaison en a un. longueur contient la longueur en octets des données utiles contenues par le datagramme.Elle ne peut être supérieure à 576. |
![]() |
L'administrateur d'un réseau Netware choisit une adresse réseau (sur 32 bits) arbitrairement lors de l'installation de son réseau.Grâce à cette adresse, la couche réseau de chaque machine dans ce réseau forme sa propre adresse IPX en concaténant cette adresse réseau à l'adresse MAC de l'interface réseau.Exception faite des serveurs, lesquels prennent la valeur 1 au lieu de leur adresse MAC.
Environ chaque minute, chaque serveur diffuse un paquet indiquant son adresse et les services qu'il propose.