Vous êtes sur la page 1sur 37

TCP/IP

PLAN DU COURS
Introduction Historique protocole IP Routage IP protocole TCP protocole UDP protocole ICMP Quelques applications
2

INTRODUCTION 1 - Prsentation gnrale


TCP/IP
PROTOCOLES DE COMMUNICATION + APPLICATIONS D'INTERCONNEXION DE SYSTEMES
HETEROGENES

Ensemble des couches physiques

ENVIRONNEMENTS PHYSIQUES

C'est l'architecture rseau la plus rpandue. TCP/IP n'est pas rduit 2 protocoles, TCP et IP, mais cest une suite de protocoles dont TCP et IP sont les deux principaux. TCP/IP s'appuie sur n'importe quelles couches basses existantes.

Introduction
But de TCP/IP : permettre linterconnexion des rseaux htrognes sur une base plantaire Fournir un systme dadressage universel permettant deux machines Quelconques de communiquer indpendamment du type des rseaux Interconnecte divers rseaux : Ethernet, T.R., X25, FR, FDDI, etc Projet des annes 1970, de projets DARPA Une famille de protocoles dont TCP et IP sont les deux principaux Ces protocoles se prsentent sous la forme dune architecture en couches Interconnexion dgal gal (pas de machines prioritaires)

Concepts de linterconnexion
Le concept d'interconnexion ou d'internet repose sur la mise en uvre d'une couche rseau IP masquant les dtails de la communication physique du rseau et dtachant les applications des problmes de routage. L'interconnexion : faire transiter des informations depuis un rseau vers un autre rseau par des noeuds spcialiss appels passerelles ou routeurs

Concepts de linterconnexion (suite)


Les routeurs possdent une connexion sur chacun des rseaux:

Reseau 1

Reseau 2

La passerelle P interconnecte les rseaux 1 et 2. Le rle de la passerelle P est de transfrer sur le rseau 2, les paquets circulant sur le rseau 1 et destins au rseau 2 et inversement.

Concepts de linterconnexion (suite)

Reseau A

P1

Reseau B

P2

Reseau C

P1 transfre sur le rseau B, les paquets circulant sur le rseau A et destins aux rseaux B et C

P1 doit avoir connaissance de la topologie du rseau; savoir que C est accessible depuis le rseau B. Le routage n'est pas effectu sur la base de la machine destinataire mais sur la base du rseau destinataire
7

Concepts de linterconnexion (suite)


A l'intrieur de chaque rseau, les noeuds utilisent la technologie spcifique de leur rseau (Ethernet,Token Ring, X25, etc)
Le logiciel d'interconnexion (couche rseau) encapsule ces spcificits et offre un service commun tous les applicatifs, faisant apparatre l'ensemble de ces rseaux disparates comme un seul et unique rseau.

Vue utilisateur

Vue relle du rseau


8

INTRODUCTION 1 - Prsentation gnrale


TCP/IP ne cadre pas exactement avec le modle OSI.
Application Prsentation Session Transport Inter-rseau Rseau Ethernet, IEEE 802,... Liaison X25, DECNet, IBM, SNA Physique Modle OSI Modle TCP/IP Services d'application : - Transfert de fichiers (FTP, TFTP) - Messagerie (SMTP) - Service de nommage (DNS) - Gestion de rseau (SNMP) TCP ou UDP IP

1 - Prsentation gnrale
IP :
Est situ au niveau 3 du modle OSI, responsable dadressage et du routage dans un environnement inter-rseau. Permet l'change de datagrammes en mode non connect entre des htes relis des rseaux physiques divers.

TCP :
Est situ au niveau 4 du modle OSI, c'est un protocole orient connexion, c'est dire que les changes de donnes ont lieu de faon ordonne et fiable, aprs ngociation des paramtres de transfert. Garde une copie des donnes mises jusqu' leur acquittement. Utilise un mcanisme de checksum pour garantir l'intgrit des donnes, plus des numros de squence pour la rception ordonne des donnes.

UDP

Protocole rpondant un besoin de rapidit et de simplicit, plutt que de fiabilit. 10 Checksum optionnel.

INTRODUCTION Ensemble des protocoles

FTP NFS XDR RIP OSPF RPC DNS NIS SNMP rlogin rsh rcp telnet SMTP

IGMP

ICMP

UDP IP

TCP ARP RARP

Ethernet, IEEE 802,... X25, DECNet, IBM, SNA

11

PROTOCOLE IP 1 - Dfinitions
LE PROTOCOLE DE BASE DE L'ARCHITECTURE TCP/IP Vhicule des datagrammes entre htes connects des rseaux physiques diffrents Schma d'adressage universel => Routage "interrseau" des datagrammes (liens inter-rseaux = "Routeurs") quipements connects un seul rseau = "Htes" quipement utilisant le protocole IP = "Station IP"
12

PROTOCOLE IP 2 - Fonctions
Assure un adressage uniforme, logique et distinct des adressages des sous-rseaux physiques Permet le transfert de datagrammes entre les htes Effectue le relais de datagrammes de sous-rseaux en sous-rseaux Offre une interface d'accs un rseau logique quel que soit le sous-rseau physique utilis Ralise une adaptation des tailles des paquets aux trames des sous-rseaux physiques utiliss Comporte des lments de contrle du fonctionnement des rseaux
13

Ladressage Internet
But : fournir un service de communication standards et universel permettant la communication entre toutes les machines de lInternet Solution : Adressage binaire compact assurant un routage Adressage plat permettant la mise en uvre de linterconnexion dgal gal Utilisation des noms pour identifier les machines : (pour les utilisateurs) (voir partie DNS) Une route prcisant comment la machine peut tre atteinte.

14

Ladressage Internet
Les classes d'adressage Ladresse IP est constitue de 32 bits; soit 4 octets nots de faon dcimale de 0 255; par ex 192.168.20.30. Une adresse est affecte non pas une machine mais une interface dune machine. Celle-ci peut donc avoir plusieurs adresses. Une adresse Internet se dcompose en deux parties, une partie rseau NetId et une partie machine ou Hte TCP/IP HostId

Pour des raisons administrative et de routage, cette paire (netid, hostid) est structure de manire dfinir cinq classes d'adresse
15

Ladressage Internet (suite)


0 8 16 24 31

Classe A Classe B Classe C Classe D Classe E

Net-id Net-id Net-id

Host-id Host-id Host-id

10

110

1110 11110

Multicast Rserv

16

Ladressage Internet (suite)


Notation dcimale L'interface utilisateur concernant les adresses IP consiste en la notation de quatre entiers dcimaux spars par un point, chaque entier reprsentant un octet de l'adresse IP : 01000000 00001000 00001010 00011101 est crit :

127.8.10.29
Adresses particulires Adresse rseau : adresse IP dont la partie hostid ne comprend que des zros; => la valeur zro ne peut tre attribue une machine relle : 192.168.0.0 dsigne le rseau de classe B 192.168. Adresse machine locale : adresse IP dont le champ rseau 17 (netid) ne contient que des zros;

Ladressage Internet (suite)


Adresses de diffusion : la partie hostid ne contient que des 1

Adresse de diffusion limite : netid ne contient que des 1 : l'adresse constitue concerne uniquement le rseau physique associ L'adresse de diffusion dirige : netid est une adresse rseau spcifique => la diffusion concerne toutes les machines situes sur le rseau spcifi : 192.20.255.255 dsigne toutes les machines du rseau 192.20. En consquence, une adresse IP dont la valeur hostid ne comprend que des 1 ne peut tre attribue une interface dune machine relle.
18

Ladressage Internet (suite)


Adresse de boucle locale : l'adresse rseau 127.x.y.z est particulier , il est rserve pour lusage locale de la machine et ne doit jamais tre utilise sur le rseau. Ceci permet de faire des tests en local sans sortir sur le rseau. adresse non routable

19

Ladressage Internet (suite)


0

Rsum
8

16

24

Tout zro Tout zro Tout un Host-id

dsigne la machine 31 Courante ou adresse non spcifie


machine Host-id sur le rseau courant

diffusion limite sur le rseau courant


diffusion dirige sur le rseau Net-id boucle locale

Net-id
127

Tout un
Nimporte quoi (souvent 1)

20

Ladressage Internet (suite)


Adresses et connexions Une adresse IP => une interface physique => une connexion rseau.

S'applique particulirement aux routeurs qui possdent par dfinition plusieurs connexions des rseaux diffrents
A une machine, est associ un certain nombre N d'adresses IP. Si N > 0 la machine (ou passerelle) est multi-domicilie.

193.49.60.41

193.49.60.43

193.49.60.1 192.100.1.2 192.100.1.1

La passerelle est multi-domicilie: interface 1 : Ethernet 193.49.60.1 interface 2 : Token Ring 192.100.1.1

192.100.1.7
21

ARP : Address Resolution Protocol


Comment faire communiquer deux machines en sachant que ces dernires ne peuvent communiquer que via l'interface physique et que Les applicatifs ne connaissent que des adresses IP, donc comment faire le lien entre les deux niveaux dadressage Rponse : cest le rle de ARP protocole de bas niveau de la Pile TCP/IP capable de faire le lien entre les adresses de niveau liaison (MAC : ex ETHERNET) et les adresses IP niveau 3. Pour arriver informer tout le monde, au niveau liaison ex : ETHERNET , on utilise comme adresse de destination, une adresse de diffusion. Ainsi, toutes les machines lisent la trame, et celle qui a la bonne adresse rpond.

22

ARP : Adress Resolution Protocol


Je suis pas concerne

10.100.1.1

10.100.1.34

10.100.1.2 Diffusion pour tout le monde, Quelle est la machine Dont ladresse IP est 10.100.1.2 Mon adresse est 10.100.1.1

Cest moi, Voila mon adresse MAC : XX:XX:XX:XX:XX:XX

23

ARP : Adress Resolution Protocol


La Commande arp permet de donner la correspondance adreese IP > adresse MAC Arp a : existe sous Unix, Windows ARP correspond un numro de service bien particulier dans la trame niveau 2 (806 : dans la trame ETHERNET). Dans la trame ARP, est indiqu le type de protocole. Cache ARP: une fois une rsolution ARP est fait, le rsultat est mis dans un cache en mmoire, et qui peut tre effac par la commande arp d. Ce cache doit tre rafrachi priodiquement entre 10 et 20 minutes selon les systmes.
24

ARP: Address Resolution Protocol


0 8 16 24 31

Type de matriel
LGR-MAT

Type de protocole

Opration LGR-PROT Adresse matriel metteur (octets 0-3)


Adresse IP metteur (octets 0,1) Adresse Mat cible (octets 0,1)

Adresse Mat metteur (octets 4,5) Adresse IP metteur (octets 3,4)

Adresse Matriel cible (octets 2,5) Adresse IP cible (octets 0-3)

25

RARP: ReverseAddress Resolution Protocol


cest arp lenvers, la machine diffuse une trame pour demander sa propre adresse IP. Un serveur va lui rpondre avec une trame qui contient son adresse IP demande. Ceci est utilis pour des machines nayant pas de disque dur, serveurs de terminaux

26

IP : Internet Protocol
LINTERNET sappuie sur le protocole IP qui est un service de remise de paquets non fiable. La remise du paquet seffectue sans garantie de remise mais un message ICMP (voir plus tard) doit signaler la suppression du paquet; les paquets peuvent suivre des chemins diffrents ( mode sans connexion les paquets sont traits indpendamment les uns des autres), arriver dans le dsordre, tre dupliqus, Le protocole ralise les fonctionnalits de la couche rseau selon le modle OSI

Applications

Transport Service rseau en mode non connect


27

IP : Internet Protocol (suite)


Le protocole IP dfinit : l'unit de transfert de donnes paquet ou (datagramme); Le routage; les rgles de remise de paquets en mode non connect.

28

IP : Format du datagramme
Le datagramme IP = en-tte + donnes:
0 4 8 16 19 24 31

VERS HLEN Type de service Identification Dure de vie Protocole Flags

Longueur totale Offset fragment

Somme de contrle Header

Adresse IP Source Adresse IP Destination

Options IP (eventuellement) Donnes

Padding

...
29

IP : Internet Protocol (le datagramme)


Signification : VERS : numro de version de IP HLEN ou LGMAT : longueur de l'en-tte en mots de 32 bits, gnralement gal 5 c.a.d 20 octets (pas d'option), Type de service : cod sur 8 bits, indique comment le datagramme doit tre gr :
Priorit

D T R

Inutilis

Priorit 0 (cas normal), 7 (supervision rseau) D, T, R : reprsentent le type d'acheminement dsir du datagramme, permettant un routeur de choisir entre plusieurs routes (si elles existent) : D requiert un dlai court T dbit lev R grande fiabilit.
30

IP : Internet Protocol (le datagramme)


Longueur totale : longueur en octets du datagramme (en-tte+ donnes) FRAGMENT OFFSET, FLAGS, IDENTIFICATION : les champs de la fragmentation. Sur toute machine ou passerelle mettant en oeuvre TCP/IP une unit maximale de transfert (Maximum Transfert Unit ou MTU) dfinit la taille maximale d'un datagramme vhicul sur le rseau physique correspondant lorsque le datagramme est rout vers un rseau physique dont le MTU est plus petit que le MTU courant, la passerelle fragmente le datagramme en un certain nombre de fragments, vhiculs par autant de trames sur le rseau physique correspondant, lorsque le datagramme est rout vers un rseau physique dont le MTU est suprieur au MTU courant, la passerelle route les fragments tels quels (rappel : les datagrammes peuvent emprunter des chemins diffrents), le destinataire final reconstitue le datagramme initial partir de l'ensemble des fragments reus; la taille de ces fragments correspond au plus petit MTU emprunt sur le rseau. Si un seul des fragments est perdu, le datagramme initial est considr comme perdu : la probabilit 31 de perte d'un datagramme augmente avec la fragmentation.

IP : Internet Protocol (le datagramme)

FRAGMENT OFFSET

indique le dplacement des donnes contenues dans le fragment par rapport au datagramme initial. C'est un multiple de 8 octets; la taille du fragment est donc galement un multiple de 8 octets.

chaque fragment a une structure identique celle du datagramme initial, seul les champs FLAGS et FRAGMENT OFFSET sont spcifiques.

32

IP : Internet Protocol (le datagramme)


Rseau 1 MTU=1500
Donnes 1400 octets

P1

Rseau 2 MTU=620

P2

Rseau 3 MTU=1500

EF1 600 octets EF2 600 octets EF3 200 oct.

EF1 600 octets EF2 600 octets EF3 200 oct.

En-tte datagramme

EF1 et EF2 ont le bit More (M) positionn. Le dplacement (depl) est relatif au datagramme initial.

En-tte fragments: M=0; depl=1200

En-tte fragments: M=1; depl=600


En-tte fragments: M=1; depl=00
33

IP : Internet Protocol (le datagramme) Longueur totale :


taille du fragment et non pas celle du datagramme initial, partir du dernier fragment (TOTAL LENGTH, FRAGMENT OFFSET et FLAGS) on peut dterminer la taille du datagramme initial. IDENTIFICATION : entier qui identifie le datagramme initial (utilis pour la reconstitution partir des fragments qui ont tous la mme valeur). FLAGS : contient un bit appel "do not fragment" (01X) un autre bit appel "More fragments" (FLAGS = 001 signifie d'autres fragments suivre) permet au destinataire final de reconstituer le datagramme initial en identifiant les diffrents fragments (milieu ou fin du datagramme initial) les passerelles doivent accepter des datagrammes dont la taille maximale correspond celle du MTU le plus grand, des rseaux auxquels elle est connecte. les passerelles doivent accepter sans les fragmenter, les datagrammes de longueur 576 octets.
34

IP : Internet Protocol (le datagramme)


Dure de vie

Un compteur que lon dcrmente a chaque passage dun routeur ou dune passerelle, quand il atteint un 0, le paquet est dtruit, et un message ICMP est retourn la source. Protocole : Ici on indique le type de protocole de niveau suprieur dont le message est vhicul dans le champ donnes du datagramme, il sagit de : 6 : TCP, 17 : UDP, 1 : ICMP

35

IP : Internet Protocol (le datagramme) Somme de contrle de len-tte


Ce champ permet de vrifier lintgrit de lentte.

36

IP : Internet Protocol (le datagramme)


OPTIONS : Souvent utilises pour la supervision du rseau : pour
rsumer, on trouve : Enregistrement de route Routage dfinit par la source (avec retour des temps de passage) Horodatage 0 1 2 3 7 classe C doption Numro doption

37