Articles

Mac

TCP/IP et Internet

Par Contributeur - Publié le

Historique :



TCP/IP est un sigle très connu dans le domaine des réseaux. Au sens strict, TCP/IP est un ensemble de deux protocoles :

* IP (Internet Protocol) qui est un protocole de niveau 3
* TCP (Transmission Control Protocol) qui est un protocole de niveau 4

L'adoption quasi universelle de TCP/IP en fait son interêt. Le DARPA (Defense Advanced Research Projects Agency) a développé un concept de réseaux interconnectés dénommé Internet dans le milieu des années 70, avec une architecture et des protocoles qui ont acquis leur forme actuelle vers 1977-79.

A cette époque, le DARPA, le premier centre de recherche sur les réseaux à commutation de paquets créa Arpanet. A partir de 1979, il y eut tant de chercheurs impliqués dans TCP/IP que le DARPA fonda un comité de coordination appelé ICCB (Internet Control and Configuration Board). Le groupe s'est réuni régulièrement jusqu'en 1983, année où il fut réorganisé.

Le réseau Internet a démarré en 1980 quand le DARPA commenca à convertir les protocoles du réseau de la recherche à TCP/IP. La migration vers l'Internet fut complète en 1983 quand le bureau du secrétariat de la défense rendit obligatoires les protocoles pour tous les hôtes connectés aux réseaux grandes distance. Au même moment, Arpanet fut scindé en 2 réseaux séparés un pour la recherche et l'autre pour les militaires appelé Milnet.

En 1985, la national science foundation commenca un programme pour mettre en place un réseau autour de 6 centres de super-calculateurs. En 1986, elle créa un réseau longue distance fédérateur, le NSFNET, pour relier tous les centres de calcul et se connecter à Arpanet. L'ensemble de ces réseaux forma l'Internet à qui se sont rajoutés des milliers de petits réseaux.

Etat actuel :



L'Internet s'est rapidement développé pour interconnecter des milliers de réseaux aux Etats-Unis en Europe, au départ il permetait de relier 20000 ordinateurs dans les universités et les laboratoires de recherche. Alors que les prévisions de croissances étaient de 15 %, elle sont aujourd'hui de 60 % par an. L'adoption des protocoles s'est élargie aux entreprises privées qui utilisent les protocoles TCP/IP pour leurs réseaux d'entreprise, mêmes si elle ne sont pas connectées à l'Internet. Cette partie privée s'appelle l'Intranet.

Etat de la "Normalisation" :



Les documents de travail de l'Internet, les propositions pour l'ajout ou la modification de protocoles, et les normes TCP/IP sont édités dans une série de rapports techniques appelés les RFC ou Request For Comment. Les RFC sont très disparates ; ils peuvent couvrir des sujets précis ou vastes et ils peuvent faire figure de normes ou seulement de propositions. Les normes et la documentation relative aux protocoles peuvent être obtenues auprès de la DCA (Defense Communication Agency).

Une version des RFC de TCP/IP, datée de décembre 1985, a été rassemblée en trois volumes portant le nom de DDN Protocol Handbook.Aujourd'hui tous les premiers documents sont périmés, et seule une partie du DDN Protocol Handbook a été modifié. Les protocoles TCP/IP étant relativement stables, les projets de recherche portent plutôt sur leur interprétation et leur implémentation.

Il existe un statut de protocole qui indique sous quelles conditions le protocole doit être utilisé :

  • Exigé (required) : toutes les machines et les passerelles doivent implémenter le protocole
  • Recommandé (recommended) : toutes les machines et passerelles sont encouragées à implémenter le protocole.
  • Facultatif (elective) : on peut choisir d'implémenter ou non le protocole.
  • Utilisation limitée (limited use) : le protocole n'a pas été spécifié pour une utilisation générale par exemple un protocole expérimental.
  • Non recomandé (non recommanded) : l'utilisation du protocole n'est pas recomandée par exemple un protocole périmé.


Nom
Description
Statut/RFC
ARP Adres resolution Prtocol Elective 826
RARP Reverse ARP Elective 903
IP Internet protocol Required 791
ICMP Internet control Message Protocol Required 792
IGMP Internet Group Multicast Protocol Required 1112
UDP User Datagram Protocol Required 768
TCP Transmission Control Protocol Required 793


Fonctionnement de l'internet :



L'Internet est le résultat de l'interconnexion de différents réseaux physiques en ajoutant des passerelles et en respectant certaines conventions. C'est un exemple d'interconnexion de système ouverts.

Pour arriver à faire communiquer ces différents systèmes ils fallait un système d'adressage performant : c'est le protocole IP qui va s'en charger. Globalement Internet est donc un réseau à commutation de paquets. Ces paquets traversent 1 ou plusieurs sous réseaux pour atteindre leur destination. Les paquets sont routés dans les passerelles qui sont situées dans les noeuds d'interconnexion. Ces passerelles sont appellés des routeurs. Ces routeurs commutent des paquets d'une entrée vers une sortie, en déterminant pour chaque paquet la meilleure route à suivre. On dit qu'Internet est un réseau routé par comparaison avec les réseaux X25 et ATM qui sont des réseaux commutés. En d'autres termes dans un réseau routé chaque paquet suit sa propre route qui est optimisée à chaque instant, et dans un réseau commuté la route est toujours la même. En fait la route est liée au mode de connexion de la couche réseau pour Internet. L'IP est un protocole sans connexion, les paquets sont routés.

La difficulté rencontrée par ce type de routage est le synchronisme. En effet le temps de traversée d'un paquet est très aléatoire (comme les paquets changent de chemin). Aussi transporter des applications temps réel avec des synchronisation fortes, comme la parole, pose des problèmes complexes à gérer.

Explication : Si l'on suppose qu'une communication entre 2 individus, en temps réel accepte une latence de 300 ms, il sera possible de resynchroniser les octets à la sortie si le temps total de mise en paquet et de depaquétisation de traversée de réseau est effectivement inférieur à 300 ms.

1) L'adressage IPv4:



Comme l'Internet est composé de millions de réseaux, l'adressage est particulièrement important. Voici les problèmes d'adressage du protocole IP de première génération (IPv4).

Les machines sur Internet ont une adresse IPv4 représentée sur un entier de 32 Bits l'adresse est constituée de 2 parties : un identificateur de réseau et un identificateur de la machine pour ce réseau. Il existe 4 classe d'adresses, chacune permettant de coder un nombre différent de réseaux et machines :

  • Classe A : 128 réseaux et 16 777 216 Hôtes (7 bits pour les réseaux et 24 pour les hôtes)
  • Classe B : 65 535 réseaux et 16 384 Hôtes (16 bits pour les réseaux et 14 pour les hôtes)
  • Classe C : 2 097 152 réseaux et 256 Hôtes (21 bits pour les réseaux et 8 bits pour les hôtes)
  • Classe D : adresses de groupe (28 pour les hôtes appartenant à un même groupe)


2) ARP : Protocoles de Résolution des Adresses :



Les adresses IP sont attribuées indépendament des adresses matérielles des machines. Pour envoyer un datagramme dans l'Internet, le logiciel réseau doit convertir l'adresse IP en une adresse physique qui est utilisé pour transmettre la trame. Si l'adresse physique est un entier court, elle peut être facilement modifiée pour lui faire correspondre l'adresse IP machine. Sinon la traduction doit être effectuée dynamiquement. C'est le protocole ARP (Adress Resolution Protocol) qui effectue cette traduction en s'appuyant sur le réseau physique. ARP permet aux machines de résoudre les adresses sans utiliser une table statique. Une machine utilise ARP pour déterminer l'adresse physique destinataire en diffusant, sur le sous réseau une requête ARP qui contient l'adresse IP à traduire. La machine possédant l'adresse IP concernée répond en renvoyant son adresse physique.

3) Le DNS (Domain Name Service)



Les adresses IPv6 tiennent sur 8 groupes de 4 chiffres décimaux et taper de telles adresses deviendrait vite insupportable. Le but du DNS sera de permettre la mise en correspondance des adresses physiques dans le réseau et des adresses logiques. La structure logique est hiérarchique et utilise au plus haut niveau des domaines caractérisant principalement les pays, qui sont indiqués par 2 lettres comme fr pour la france et des domaines focntionnels comme

  • com pour organisation commerciales
  • edu institutions académiques
  • org organisation institutionelle
  • gov gouvernement américain
  • net opérateurs de réseaux


etc... mais souvent ces domaines focntionnels ne sont pas respectés et on voit des sites non commerciaux en .com car cela signifie aussi que c'est un peu universel.

A l'intérieur de ces grands domaines on trouve des sous-domaines.

Par exemple : macintosh.com on rajoutera liens.macintosh.com en fait en partant de droite a gauche on spécifie le sujet d'abord on voit.com donc c'est un site commercial ou autres ensuite macintosh cela parle du mac et ensuite liens. On peut encore décomposer l'adresse en mettant le nom de l'utilisateur bernard.liens.macintosh.com.

Les serveurs de noms du DNS sont hiérarchiques et, lorsqu'il faut retrouver l'adresse physique IP d'un utilisateur, les DNS s'envoient des requêtes de façon à remonter suffisament dans la hiérarchie pour trouver l'adresse physique du correspondant. Ces requêtes sont effectuées par l'intermédiaire de petits messages qui portent la question et la reponse en retour. La sécurisation de cet environement passe par les fonctionnalitées d'IPv6.

4) L'achitecture IP :



L'architecture TCP/IP réside dans l'utilisation obligatoire du protocole IP qui va avoir comme fonction de base l'adressage et le routage des paquets IP. Le niveau IP correspond exactement au niveau 3 de l'architecture OSI. Au dessus d'IP, 2 protocole ont été choisis : TCP et UDP prennent en charge les fonctionnalitées de niveau 4 et 5. La différence provient d'un mode avec connexion pour TCP et un mode sans connexion pour UDP. Le protocole TCP est très complet et permet de garantir une bonne qualité de service en particulier sur le taux d'erreur des paquets transportés. En revanche UDP est un protocole sans connexion qui supporte des applications moins contraignantes au niveau de la qualité du service.


IP: Internet Protocol



1) IPv4:



Un réseau comme Internet est une abstraction d'un réseau physique car, à son niveau le plus bas, il fournit les mêmes fonctions comme accepter des paquets ou les remettre au destinataire.

Le service de remise de paquets sur Internet est dit non fiable car la remise n'est pas garantie. Un paquet peut être dupliqué, perdu, ou remis hors séquence, mais Internet ne détectera rien et ne préviendra ni l'émmeteur ni le récepteur. Sur l'Internet chaque paquet est traité indépendamment.

Le protocole qui définit le mécanisme de transmission sans connexion est appelé Internet Protocol. IP définit l'unité de donnée de protocole de base et le format exact de toutes les données qui transitent sur le réseau. IP inclut également un ensemble de règles qui définissent comment traiter les paquets et les cas d'erreurs et effectuent la fonction de routage. 2 grandes générations ont vu le jour IP version 4 et IP version 6 qui seront abrégés IPv4 et IPv6.

Dans un réseau l'unité transférée est le paquet qui contient un en-tête et des données. L'en-tête contient des informations comme l'adresse source et le destinataire. Dans l'Internet l'unité de base à transférer est appellé Datagramme IP ou simplement Datagramme. Le Datagramme est également constitué comme un paquet dans un réseau local ; un en-tête et les données.

Contrairement aux paquets, les datagrammes sont manipulés par le logiciel. Ils peuvent être de longueur quelconque. Cependant comme ils doivent transiter de machine en machine, ils sont toujours transportés par des trames physiques.

Ce concept est appelé l'encapsulation. Pour le sous réseau, le datagramme est une donnée comme les autres. Dans le meilleur cas le datagramme est contenu dans une seule trame ce qui rend la transmission plus performante. L'Internet ne limite pas la taille des datagrammes mais suggère que les réseaux et passerelles puisent supporter ceux de 576 octets sans les fragmenter.

Dans l'Internet lorsqu'un datagramme a été fragmenter il voyage indépendament des autres datagrammes jusqu'a leur destination commune. Si un des fragments est perdu le datagramme ne peut plus être réassemblé et les autres fragements doivent être éventuellment détruits sans être traités.

2) IPv6



Le protocole IPv6 représente la nouvelle génération du protocole IP, d'où le nom IPng (Next génération) qu'on lui donne également. Il a été entierement repensé et est réellement nouveau.

La version porte le N°6. Les principales valeurs sont les suivantes :

1) Trafic de base (news)
2) Transfert de données sans contraintes temporelle (E-mail)
3) Réservé pour le futur
4) Transfert en bloc avec attente du récepteur (transfert de fichiers)
5) Réservé pour le futur
6) Traffic interactif(rlogin, terminal virtuel)
7) Traffic pour le contrôle (routage, contrôle de flux)

Le champ suivant est aussi nouveau il permet d'indiquer la qualité de service des informations transportées dans le paquet. Cette indiquation pourra servir aux routeurs de prendre des décisions plus adaptées aux données transportées.

Le champ "longueur des données" indique le total du datagramme en octets (sans tenir compte de l'en tête). Ce champ étant de 2 octets, la longueur maximale du datagramme est de 64 Ko

Le champ "en-tête suivant" indique l'en-tête qui va être rencontré dans le champ de données, en identifiant le protocole transporté. Les options sont les suivantes :

0 Hop-by-Hop Option header
4 IP
6 TCP
17 UDP
43 Routing Header
44 Fragement Header
45 Interdomain Routing protocol
46 Resourse Reservation Prtotocol
50 Encapsulating Security Payload
51 Authentification Header
58 ICMP
59 No Next Head
60 Destination Options Header


La nouvelle adresse IP tient sur 16 octets. La difficulté réside dans la représentation et l'utilisation rationnelle de ces 128 Bits. Le nombre d'adresse potentielle dépasse 10 puissance 23 pour chaque mètre carré de la surface terrestre ! la représentation s'effectue par groupe de 16 Bits et se présente sous la forme : 123 : FCBB : 1024 : AB23 : 1 : 1 FEDC alors que l'IPv4 est de la forme 192.152.14.6