Vous êtes sur la page 1sur 14

Modle TCP/IP et Internet

Plan :
Prsentation gnrale De TCP/IP OSI et TCP/IP Pile de protocoles TCP/IP Des organismes de gestion. Ladressage Avec la norme IPv4 Aperu de la norme Ipv6 Le protocole rseau IP Prsentation Structure du Datagramme IP Le Routage IP Le protocole de transport TCP Structure du message TCP La connexion TCP

TCP/IP :
Modle OSI et protocoles TCP/IP (Transport Control Protocol / Internet Protocol)

Dans ce contexte, on parlera d'une pile de protocoles du modle TCP/IP. Par exemple :

ARP (Adress Resolution Protocol) Permet de faire la correspondance entre les adresses logiques et les adresses physique (MAC) - Type = 806 RARP (Reverse Adress Resolution Protocol) Correspondance Adresse physique / adresse logique - Type = 8035 UDP (User Datagram Protocol) Protocole quivalent TCP mais en mode non connect (Datagramme). Livraison non fiabilise (pas de garantie d'arrive, pas de contrle de flux ni du squencement)

La Gestion d'internet
Le rseau Internet est gr par l'ICANN (Internet Corporation for Assigned Names and Numbers) organisation de droit priv (droit californien) but non lucratif cr en 1998. De par ses statuts elle doit : Coordonner les lments techniques pour prserver la connectivit universelle des rseaux. De par ses statuts elle doit : Allouer et grer l'espace des adresses IP Attribuer des identificateurs de protocole Grer les noms de domaine de premier niveau pour les codes gnriques (.com, .net, etc.) et nationaux (.fr, .it, etc.) Superviser et garantir le fonctionnement du systme racine DNS. L'ICANN remplace et assume maintenant les fonctions assure prcdemment par l'IANA (Internet Assigned Number Authority). L'ICANN est dirig par un comit directeur de 19 membres lus. Les principales composantes de l'ICANN : Le DNSO (Domain Name Supporting Organization) qui traite des noms de domaines. Les principales composantes de l'ICANN : L'ASO (Address Supporting Organization) qui s'occupe des adresses IP. Elle dlgue la gestion des adresses IP divers organismes :
2

RIPE NCC (Rseaux IP Europens - Network Coordination Center) pour l'Europe, Moyen-Orient, Afrique du Nord APNIC (Asia-Pacific NetWork Information Center) pour l'Asie et le Pacifique ARIN (American Registry for Internet Numbers) pour les tats-Unis et le reste du monde Ces organisme dlguent leur tour (en France, lAFNIC -au sein de lINRIA- gre le domaine .fr). Le PSO (Protocol Supporting Organization) travaille sur les protocoles utiliss dans les communication sur l'Internet. PSO collabore avec les organismes qui ont dfinis ou fait volus les standards (IETF, W3C, etc.) et les organismes de tlcommunication

L'adressage IP (Ipv4)
La norme IPv4, bientt remplace par IPv6, a connu de nombreuses volutions : Une application "Classfull" de la norme. Puis devant les limites de ce type d'adressage, Le SubNetting (sous-rseaux) L'adressage CLASSFULL Une adresse IP est code sur 32 bits (4 octets) traditionnellement exprime l'aide de 4 nombres (0 255) spars par des points Exemple d'adresse : 192.48.92.2 Dcomposition d'une adresse IP :

Classe A (premier bit zro) 126 Rseaux possibles (00 7F) + 16 millions de machines (000000 FFFFFF). Adresses attribues aux grands organismes (Dfense US, MIT, etc.). Actuellement plus attribu.
3

Classe B (second bit zro) 16384 rseaux (8000 BFFF) et 65535 machines. Adresses alloues aux grands sites industriels, centres de recherche, universits, etc.). Classe C (troisime bit zro) 2097152 rseaux (C00000 DFFFFF) avec 254 machines sur chaque rseau. Classe D (quatrime bit zro) Ces adresses ne dsignent pas une machine mais un groupe de machines voulant partager la mme adresse. La diffusion sur le groupe s'appelle MULTICAST

Adresses Particulires : 0.0.0.0 Adresse utilise par une machine pour connatre son adresse Internet durant une procdure d'initialisation (cf DHCP). 255.255.255.255 message envoy toutes les machines du rseau mais pas vers les autres rseaux (broadcast limit). <rseau>.255 message envoy toutes les machines du rseau <rseau> (broadcast dirig). Par exemple : 193.16.24.255. <rseau>.0 Adresse utilise pour dsigner le rseau <rseau>. Par exemple : 193.16.12.0. 127.x.x.x Adresse de boucle. Le paquet envoy avec cette adresse revient l'metteur. La valeur de 'x' est indiffrente. On utilise gnralement 127.0.0.1 Le RFC 1597 fournit des adresses pour les rseaux privs (Adresses non routables sur l'Internet) : 10.0.0.0 1 rseau de classe A Soit le bloc dadresses : 10.0.0.0 - 10.255.255.255 de 172.16.0.0 172.31.0.0 16 rseaux de classe B Soit le bloc dadresses : 172.16.0.0 - 172.31.255.255 de 192.168.0.0 192.168.255.0 256 rseaux de classe C Soit le bloc dadresses : 192.168.0.0 - 192.168.255.255

Partant d'une adresse d'hte (machine), le masque de rseau va permettre de reconnatre chacune des deux parties. Dans un contexte "classfull", il y a un masque par classe.
4

Remarque importante : Avec le protocole IP, contrairement l'adresse IP, LE MASQUE NE CIRCULE PAS sur le rseau (voir trame IP ). Il est connu par les htes et les diffrents routeurs situs sur le ou les rseaux. Le masque se dduit du premier octet. Rseaux IP: Un rseau IP se dfini comme un ensemble de machines (htes) interconnectes ayant la mme adresse rseau et le mme masque. Les rseaux IP sont spars et interconnects par des routeurs

Rseaux IP: Dans un contexte "classfull" chaque rseau possde une adresse de classe et son masque

Rseaux IP : Sur un rseau local on crera des rseaux IP pour : des raisons doptimisation du trafic : Un rseau IP formera au moins un domaine de collision. La diffusion ARP et DHCP se fait sur le rseau IP de lmetteur. des raisons de scurit : La fonction routage peut tre associ des fonctions de filtrage (proxy, firewall, filtre,)
5

Limites du "classfull" L'utilisation stricte du "classfull" a trs rapidement atteint ses limites : Le stock d'adresses publiques fut rapidement puis. Pour les trs grands rseaux, le nombre d'adresses prives est insuffisants. Gaspillage d'adresses ; Avec une adresse de classe C, 253 htes, pour parfois un nombre d'htes infrieur. Le SubNetting (sous-rseau) L'administrateur d'un LAN est matre de sa codification. Il peut s'il le dsire crer diviser une adresse "classfull" en sous-rseaux dans la partie qui lui revient. L'adresse IP dun hte sera alors lassociation de 3 adresses : Adresse du rseau Adresse du Sous-rseau Adresse de la machine sur le sous-rseau Donc deux problmes peuvent se poser ladministrateur : Dfinir son plan dadressage donc dfinir un masque de rseau Retrouver grce au masque de rseau, les lments constitutifs dune adresse (rseau, sous-rseau et hte).

Le masque de rseau doit permettre de sparer la partie rseau + sous-rseau d'avec la partie numro de machine. Exemples : Rappel : sans sous-rseau (classfull) Classe A : 255.0.0.0 - Classe B : 255.255.0.0 Classe C : 255.255.255.0 Calcul : <Adresse-IP> ET <Masque> = <Adresse-rseau>.0 La division des bits la disposition de l'administrateur se fera selon : Le nombre de sous-rseaux adresser et/ou Le nombre d'htes adresser sur chaque sous-rseau en tenant compte de l'volution de ce nombre. Application: calculs des sous-rseaux et VLSM :variable length subnet mask Une convention d'criture des adresses IP On trouve parfois l'criture suivante des adresses IP (reprise de la notation CIDR) :
6

142.12.42.145 / 24 - 153.121.219.14 / 20 Dans cette criture les nombres 24 (pour 255.255.255.0) et 20 (pour 255.255.240.0) reprsentent le nombre de bits consacr la codification du rseau (et sous rseau). C'est une autre faon de donner le masque. La technique CIDR La mthodologie CIDR (Classless Internet Domain Routing Routage de domaine Internet sans classe ) s'applique essentiellement l'Internet. Devant l'expansion d'Internet 2 problmes qui sont lis, sont apparus : Faire face au manque d'adresses Faire face la taille importante des tables de routage des routeurs. Problme : Une organisation dsire 2000 adresses. Un rseau de classe B lui procurera 65534 htes (63534 adresses perdues). Un rseau de classe C lui procurera seulement 254 htes. Pour une bonne gestion du stock d'adresses, l'organisation obtiendra 8 rseaux de classe C (254*8 = 2032 adresses) par exemple les ID de rseau 220.78.16.0 220.78.23.255 (ID contigus) Mais cette multiplicit de rseaux implique une surcharge des tables de routage car pour 1 organisation 8 lignes sont ncessaires alors qu'une seule devrait suffire.

La technique du CIDR va permettre de remplacer ces 8 lignes par une seule. Cette entre dans la table de routage sera : [ID Rseau la plus basse Masque de rseau_CIDR] Entre d'autres termes, cette mthode fixe une adresse de dpart et une tendue.

Les Adresses IP (Ipv6)


L'adressage 32 bits se rvle insuffisant avec le dveloppement d'Internet
7

(mergence de nouveaux pays Inde, Chine). IPv6 (ou Ipng - ng pour "Next Gnration") prvoit des adresses sur 128 bits (1 milliard de rseaux). IPv6 pourra contenir un adresse IPv4 sur les 32 bits de poids faibles + un prfixe sur les bits de poids forts. Une adresse IPv6 s'exprime en notation hexadcimal avec le sparateur "deuxpoints".[vu plus tard dans un chapitre consacr lIPV6] Exemple d'adresse : 5800:10C3:E3C3:F1AA:48E3:D923:D494:AAFF

Le Protocole IP
Le protocole IP offre une couche d'abstraction par rapport aux caractristiques physiques et matriels du rseau

Un rseau IP est : En mode DATAGRAMME ou sans connexion (chaque datagramme est rout indpendamment du prcdent) La couche IP ne tente pas d'assurer "une livraison fiable la destination". La fiabilit et le problme du squencement sont traits par un protocole de couche suprieure comme TCP. Le DATAGRAMME IP sera encapsul dans "la zone de donne" de la trame du niveau infrieur.

Version : 4 bits pour la version ( 4 pour IPv4 -actuellement utilis- ou 6 pour IPv6). Internet Header Length (IHL) : 4 bits pour donner la longueur de l'en-tte IP exprime en mot de 32 bits. Avec un bourrage dans le champs option pour s'aligner sur un multiple de 32 bits. Sans le champs options la longueur minimum de l'en-tte
8

IP est de 20 octets soit 5 mots de 32 bits. Type de Service (ToS :Type Of Service) 8 bits qui se dcomposent ainsi

Longueur totale du Datagramme : 16 bits pour la longueur totale (En-tte + Donnes). Les Datagrammes dont la longueur dpasse la zones de donnes (MTU : Maximum Transmission Unit) du rseau sous-jacent doivent tre fragments (rappel : MTU Ethernet 1500 octets mais de valeurs diffrentes selon les types de rseaux emprunts La Fragmentation : La fragmentation recouvre les champs identification, drapeau et place du fragment. Identification : Chaque metteur numrote le datagramme (0 65535). Champs utilis pour rassembler un datagramme fragment. Drapeau : 3 bits

Drapeau (suite) : DF = 0 Fragmentation possible. DF = 1 Fragmentation interdite. MF = 0 Dernier fragment. MF = 1 Ce n'est pas le dernier fragment. Place du fragment : 13 bits pour indiquer la position des donnes du fragment par rapport au dbut du datagramme originel (en mot de 8 octets). La Dure de Vie (TTL : Time To Live) Temps maximal pendant lequel le paquet peut rester dans le systme. Valeur = 0 =====> Le paquet est dtruit En principe TTL est exprim en Seconde. Mais les dures de propagation sont difficilement valuables par les routeurs. En pratique TTL contient le nombre de routeurs maximal qu'un paquet peut traverser. Chaque routeur dcrmente de 1. vite ainsi un bouclage infini dans les rseaux maills des routeurs de linternet. Protocole Ce champ indique le protocole de couche suprieur

CheckSum : gal au complment 1 de la somme des mots de 16 bits (except le checksum). Cette somme est recalcule par chaque routeur (modification du champs TTL) Adresse Source (cf Adressage IP) Adresse Destination (cf Adressage IP)

Le Routage IP
Les rseaux IP sont interconnects entre eux pour former un vaste rseau dont l'tendue peut tre mondial (INTERNET). Les rseaux IP sont relis entre eux l'aide de priphriques : Les ROUTEURS. La transmission des datagrammes IP vers leurs destinataires s'appelle le ROUTAGE. (Le routage ne s'entend que dans un environnement interconnect de rseaux ou de sous-rseaux.) Dans chaque routeur un logiciel de routage IP l'aide d'une table de routage achemine l'information de proche en proche vers le destinataire Les htes -station d'un rseau- peuvent avoir aussi une table de routage. Schma simplifi d'une table de Routage :

Les Protocoles de transport On trouve typiquement au dessus du protocole IP (couche rseau - 3), les protocoles de transport (couche 4) suivants :

UDP (User Datagramme Protocol)


10

Protocole sans connexion:transmet sans sassurer de lcoute lextrmit Livraison non fiabilise (pas de garantie d'arrive, pas de contrle de flux ni du squencement)

TCP (Transmission Control Protocol)


Mode connect: tablit une relation entre les extrmits avant denvoyer

Le Message TCP
Caractristiques du protocole TCP Un contrle des donnes transfres (donnes endommages, perdues et/ou dupliques) et un resquencement si la couche IP ne les dlivre pas dans l'ordre. Un niveau de priorit. Les donnes transmises dans un message peuvent tre traites avec plus ou moins de priorit. Un contrle du flux grce un mcanisme de "fentre danticipation qui permet denvoyer x paquets sans attendre laccus rception. Cette fentre se rajuste automatiquement si paquets perdus et retransmis, ce qui permet de sadapter la surcharge des rseaux

Port Source - Port Destination L'adresse IP, au niveau 3, permet de situer une machine. Une fois la machine trouve, il faut pouvoir dterminer l'application qui doit traiter les donnes. L'application est dsigne par un NUMERO DE PORT.

Le RFC 1700 donne l'affectation des numros de port aux applications connues (wellknown ports)
11

Les numros de port compris entre 0 et 1023 sont rservs pour les ports usuels. L'association : [Adresse IP + Numro de port] s'appelle un Socket . Numro de squence et Acquittement Principe : Pour la fiabilit de la transmission les octets sont numrots. Champ des bits de contrle (Flag) 6 Bits pour dfinir la fonction des message et la validit de certains champs : URG : Message urgent - Les donnes doivent tre traites sans attendre que le rcepteur ait trait les octets envoys dans le flux. ACK : Indique la validit du champ acquittement. Champ des bits de contrle (Flag) PSH : Les donnes reues doivent tre immdiatement remises la couche suprieure. RST (Reset) : Rinitialisation de la connexion suite une erreur irrcuprable. SYN : Indique l'ouverture d'une connexion. FIN : Fermeture normale d'une connexion Champ rserv Pour un usage futur et positionn 0. Dplacement Nombre de mots de 32 bits qui constitue l'entte TCP car le champ Option est de longueur variable. Avec aucune option, dplacement = 5 (20 octets). Champ fentre Ce champ est une implmentation du contrle de flux . Nombre d'octets qu'il est possible de recevoir par rapport au numro d'acquittement (cf. plus loin ). Il est calcul par le rcepteur en fonction de la taille encore disponible dans son buffer d'entre. CheckSum Pointeur message Urgent Pointe sur les octets qui doivent tre traits en priorit. Options Champ de longueur variable avec un bourrage pour s'aligner sur un multiple de 32 bits (voir dplacement)

La Connexion TCP
Gestion d'une connexion TCP Les champs numro de squence , acquittement et flags sont utiliss par le protocole TCP grer la communication de bout en bout (couche 4) Une application qui appelle le module TCP utilise les appels systmes suivants : OPEN pour ouvrir la connexion. On distingue : OPEN PASSIF qui est un open type serveur. Il reste l'coute et accepte les requtes qui lui arrive. OPEN ACTIF qui est un open type client qui aprs une connexion sur un open passif enverra des donnes. CLOSE pour fermer la connexion
12

SEND pour envoyer les donnes aprs un OPEN RECEIVE pour recevoir des donnes STATUS pour obtenir des informations sur la connexion. L'ouverture d'un connexion TCP se ngocie en 3 temps l'aide des flags SYN et ACK :

Le contrle de flux se fait l'aide des champs numro de squence (not #SEQ) et acquittement (not #ACK). La valeur initiale de #SEQ est produite partir d'une horloge et d'un compteur incrment toutes les 4 ms. Il permet de numroter les octets de donnes. Avec ces lments un schma d'une connexion TCP sera le suivant (il existe d'autres squences de protocole ) :

13

14