![]() |
![]() |
||||||||
http://www.e-favreau.com | |||||||||
|
|||||||||
Sous réseaux IP |
Protocoles réseaux:TCP - IP |
||||||||
Avec 150 millions d'abonnés dans le monde et une augmentation de son trafic de 10% par mois, Internet est le plus grand réseau d'informations dans le monde. Tant sur le plan médiatique que sur celui du trafic, le réseau Internet connaît depuis 2 ans une progression foudroyante. Lancé en 1969 sur l'initiative de l'administration américaine et réservé, au départ à la communauté scientifique et universitaire, ce réseau, qui est en fait un "réseau de réseau", compte aujourd'hui plus de 1.3 millions d'ordinateurs serveurs répartis dans prés de 50 pays. ARPANET crée en 1969 par le ministère américain de la défense, Internet devait en effet servir à interconnecter le réseau ARPANET de ce ministère à plusieurs autres réseaux et satellites. La vocation militaire d'ARPANET était de favoriser la recherche et la construction de réseaux de télécommunication capables de résister à des destructions partielles en cas de conflit d'où l'absence de centralisation. Le projet expérimental ARPANET à été un tel succès que la plupart des organisations qui y participaient commencèrent à l'utiliser pour leurs propres transmissions de données. En 1978 ARPANET passe du stade expérimental au stade opérationnel, la responsabilité de la gestion du réseau est alors confiée à l'agence de communication du ministère de la défense (D.C.A. : Défense Communication Agency) appelée maintenant (DISA : Défense Information Système Agency). Bien qu'étant utilisé comme réseau opérationnel, le développement d'ARPANET n'en continua pas moins, et permis la naissance des protocoles TCP/IP. En 1983 les protocoles TCP/IP ont été adoptés comme standards militaires (MIL STD : Military standard). Les nouveaux protocoles ont été alors installés sur toutes les machines connectées au réseau et la DARPA demande à Bol, Beranek, et Newman (BBN) de mettre en oeuvre TCP/IP sur UNIX c'est de la que vient la suprématie des protocoles TCP/IP dans le monde UNIX. En 1990 ARPANET est considéré comme étant obsolète, mais on peut remarquer que depuis sa création Internet n'a cessé de s'agrandir et intègre aujourd'hui des réseaux répartis dans le monde entier. DIFFUSION DES MODIFICATIONSDu fait de la nature ouverte des protocoles TCP/IP il est indispensable de diffuser des documents relatant des modifications et changements de ces protocoles. Il existe 3 modes de diffusions.
Etant donné qu'il n'existe pas d'accord général concernant la description de TCP/IP à l'aide modèle en couche, celui-ci est généralement représenté sous la forme d'un modèle dont le nombre de couche est inférieur à celui du modèle OSI qui en contient 7. Nous étudierons ici un modèle qui comporte 4 couches.
Chaque couche de la pile ajoute des informations de contrôle de manière à garantir une transmission de données correcte. Couche Accès RéseauLes protocoles de cette couche fournissent au système les moyens nécessaires lui permettant de transmettre des données vers d'autres machines périphériques directement connectées sur le réseau. Elle définit l'utilisation de réseau afin de transmettre un datagramme IP. La couche accès réseau TCP/IP peut intégrer les fonctions des trois couches inférieures du modèle de référence OSI (réseau, liaison de données, matériel). Les utilisateurs ignorent souvent la couche accès réseau, la conception de TCP/IP cache les fonctions des couches inférieures. Les protocoles les mieux connus (IP, TCP, UDP, etc) correspondent à des protocoles de niveau supérieur. Les fonctions qui sont exécutées à ce niveau comprennent l'encapsulation des datagrammes dans les trames transmises par le réseau et la mise en correspondance des adresses IP avec les adresse physique qu'utilise le réseau. L'une des grandes forces de TCP/IP réside dans son plan d'adressage qui permet d'identifier précisément chaque machine-hôte connectée à Internet. Cette adresse IP doit être convertie en l'adresse appropriée du réseau physique sur lequel le datagramme est transmis. Couche INTERNETLe protocole Internet est l'élément du réseau Internet, ses fonctions incluent:
Les datagrammesLes protocoles TCP/IP ont été développés pour transmettre des données sur ARPANET, qui était un réseau à commutation de paquets. Le datagramme correspond au format de paquet défini par le protocole Internet. Les 5 ou 6 premiers mots de 32 bits représentent les informations de contrôle appelées en-tête. Puisque la longueur de l'en-tête est variable, elle induit un champ appelé longueur de l'en-tête en mots. L'en-tête contient toutes les informations nécessaires à la transmission du paquet. Le protocole Internet transmet le datagramme en utilisant l'adresse de destination qui est une adresse IP standard de 32 bits permettant d'identifier le réseau de destination et la machine-hôte connectée à ce réseau. Si l'adresse de destination correspond à l'adresse d'une machine-hôte connectée au réseau local, le paquet est transmis directement vers la destination. Dans le cas contraire, le paquet est transmis vers une passerelle afin d'être transmis à la machine-hôte. Les passerelles sont des périphériques qui transfèrent les paquets entre les différents réseaux physiques. Le routage correspond à la sélection de la passerelle à utiliser pour la transmission de données. Acheminement des datagrammesIl existe deux types de machines périphériques de réseau :
Les machines-hôtes (terminaux) traitent les paquets à travers les 4 couches de protocole alors que les passerelles (intermédiaires) traitent les paquets jusqu’à la couche Internet au sein de laquelle la voie de routage des données est déterminée. Fragmentation des datagrammesPuisqu'un datagramme est acheminé sur différents réseaux, il est parfois nécessaire que le module IP d'une passerelle divise le datagramme en élément de plus petite taille. Il se peut qu'un datagramme provenant d'un réseau soit trop long pour être transmis en un seul paquet sur un autre réseau. Chaque type de réseau se caractérise par une unité de transfert maximale (MTU) Maximum Transmission Unit, qui correspond au plus grand paquet que celui-ci puisse transférer. Si la longueur du datagramme provenant d'un réseau est supérieure à la MTU il est nécessaire de le diviser en fragment de plus petite taille. C'est ce qui se passe sur un Ethernet relié sur X25 ICMPUne partie du protocole IP Correspond au protocole ICMP défini dans le RFC 792. Ce protocole est une partie intégrante de la couche Internet et réalise les fonctions suivantes. Contrôle de flux (ICMP out of sequence)Lorsque les datagrammes arrivent trop rapidement pour être traités, l'élément destination renvoie un message de congestion qui indique à la source de suspendre temporairement l'envoi de datagrammes.
Redirection des voies (ICMP Redirect)Une passerelle envoie le message de redirection afin d'indiquer à une machine-hôte d'utiliser une autre passerelle, probablement parce que l'autre passerelle constitue un meilleur choix. Vérification des machines-hôtes à distances (PING)Une machine-hôte peut envoyer le message d'écho ICMP pour vérifier que le protocole Internet du système à distance est opérationnel. Couche TRANSPORTLes deux protocoles les plus important de la couche transports sont :
Protocole UDP : User Datagram ProtocolUDP est un protocole de datagramme sans connexion, peut fiable. Le protocole UDP permet aux applications d'accéder directement à un service de transmission de datagrammes, tel que le service de transmission qu'offre IP. Sur un ordinateur classique UDP transmet correctement les données. Il utilise les 16 éléments binaires du "port source" et du "port destination" contenus dans le premier mot de l'en-tête du message, afin de transmettre les données aux processus d'applications appropriées. UDP est utilisé pour transmettre de faibles quantités de données, où le coût de la création de connexions et au maintient de transmissions fiables s'avèrent probablement supérieur au travail dû à la retransmission de la totalité des données. UDP peut également être utilisé pour les applications satisfaisant à un modèle de type "interrogation réponse". La réponse étant utilisée comme un accusé de réception positif à l'interrogation. Protocole de contrôle de la transmission TCPTCP vérifie si les données sont correctement transmises sur le réseau et si elles sont dans l'ordre approprié. Les applications qui requièrent dès lors l'utilisation de protocole de transfert pour garantir une transmission des données fiable utilise alors TCP. C'est protocole fiable orienté connexion, à flot d'octets. L'utilisation d'un mécanisme appelé "accusé de réception positif avec la retransmission" (PAR : Positif Acknowlegment with Retransmission) permet à TCP de garantir des transmissions fiables. Le système PAR envoie de nouveau les données à moins que le système à distance ne lui renvoie à un message précisant que les données sont arrivées correctement. L'unité d'échange de données est appelée "segment". Chaque segment contient un total de contrôle que le destinataire utilise pour vérifier que les données n'ont pas été endommagées pendant leurs transmissions. Si le segment de données est reçu en parfait état, le récepteur envoie un accusé de réception positif à l'émetteur. Dans le cas contraire, le récepteur élimine ce segment de données. Après un délai d'attente déterminé, l'émetteur retransmet les segments pour lesquels aucun accusé de réception positif n'a été reçu. TCP est également responsable de la transmission des données provenant du protocole IP à l'application appropriée. Un numéro de 16 bits, appelé "numéro de port" permet d'identifier 'application destinatrice des données. Les numéros de "ports source" et "port destination" sont contenus dans le premier mot de l'en-tête du segment. La transmission correcte des données à destination et à partir de la couche application constitue une partie importante des activités que les services de la couche transport assurent. Couche ApplicationLa couche application constitue le sommet de l'architecture TCP/IP. Cette couche inclut tous les processus qui utilisent les protocoles de la couche transport pour transmettre des données. Il existe de nombreux protocoles d'application, la plupart assurent les services utilisateur; les nouveaux services sont toujours ajoutés au niveau de cette couche. Les protocoles d'applications les plus répandus sont:
Bien que FTP, SMTP et TELNET soient les applications les liens qui TCP/IP les plus souvent utilisés. Il est possible d'en utiliser d'autres comme :
Cette figure permet de mieux visualiser les liens qui existent entre les différents protocoles d'une machine-hôtes déterminée. Les protocoles d'applications tels que TFP et TELNET se trouvent dans la partie supérieure de la figure. A chaque protocole est associé le numéro de RFC qui le définit. On peut constater que FTP, TELNET et SMTP dépendent de TCP, alors que NFS, DNS et RIP dépendent de UDP, quelques protocoles de type application, tels que le protocole de passerelle externe (EGP), qui est un autre protocole d'acheminement, n'utilisent pas les services de couche transport; ils utilisent directement les services IP. Les socketsLes "ports réservés" correspondent à des numéros de port standardisés permettant aux ordinateurs à distance de déterminer à quel port il doivent se connecter pour bénéficier d'un service de réseau particulier. De cette manière, le processus de connexion est simplifié, puisque l'émetteur et le récepteur connaissent à l'avance le port spécifique qui sera utilisé pour les données destinées à une opération déterminée. Exemple tous les systèmes offrant le service TELNET, le proposent sur le port 23. Il existe un deuxième type de numéro de port appelé "port alloué dynamiquement". Comme l'indique le nom, les ports alloués dynamiquement ne sont pas préattribués. Ils sont attribués aux opérations, si nécessaire. Le système s'assure qu'il n'attribue pas le même numéro de port à deux opérations et que les numéros attribués ne sont pas compris dans la plage des numéros de ports standard. Les ports attribués dynamiquement confèrent la flexibilité nécessaire au support de plusieurs utilisateurs. Si on attribue le numéro de port 23 comme ports source et de destination à un utilisateur TELNET, le deuxième utilisateur TELNET n'a plus de port attribué. Pour déterminer de manière unique chaque connexion, un numéro de port est alloué dynamiquement ce sont les sockets (qui seront développées en détail dans un autre chapitre). Ports et ProtocolesLes Datagrammes IP utilisent le champ Protocole définissant le type de Protocole. Le fichier /etc/Protocol et /etc/services met en correspondance les services et les numéros de port. Le fichier /etc/servicesCe fichier indique pour chaque service le numéro de port correspondant et le protocole utilisé sous la forme port/protocole, suivi d’un nom d’alias éventuel et d’un commentaire. exemple:
Les ports sont utilisés par les protocoles TCP et UDP. TCP et UDP peuvent attribuer les mêmes numéros de Port. La combinaison des numéros de protocole et port identifie de manière spécifique l’application appropriée à laquelle les données doivent être transmises. Les numéros de Port sont des valeurs de 16bits. Le groupement d’une adresse IP et d’un numéro de port est appelé socket. |
|||||||||
- Copyright 2003 - | Contact
: stephane@e-favreau.com |