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
P

TCP/IP

ROTOCOLES

DE

COMMUNICATION

+
A

D ' INTERCONNEXION

PPLICATIONS

DE

SYSTEMES

HETEROGENES

Ensemble des
couches physiques

NVIRONNEMENTS

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

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

Services d'application :
- Transfert de fichiers (FTP, TFTP)
- Messagerie (SMTP)
- Service de nommage (DNS)
- Gestion de rseau (SNMP)

Transport

TCP ou UDP

Inter-rseau

IP

Rseau
Ethernet, IEEE 802,. .
Liaison
X25, DECNet, IBM, SNA
Physique
Modle OSI

Modle TCP/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

NIS
SNMP

XDR
RIP
OSPF

IGMP

RPC

ICMP

rlogin
rsh
rcp

telnet

SMTP

DNS

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

16

Net-id

Classe A

Classe B

1 0

Classe C

1 1 0

Classe D

1 1 1 0

Classe E

1 1 1 1 0

24

31

Host-id

Net-id

Host-id
Net-id

Host-id

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 (netid)
ne contient que des zros;
17

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

Host-id

127

machine Host-id
sur le rseau courant

diffusion limite sur


le rseau courant

Tout un
Net-id

dsigne la machine
31 Courante ou adresse
non spcifie

Tout un
Nimporte quoi (souvent 1)

diffusion dirige sur


le rseau Net-id
boucle locale

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

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

10.100.1.34

10.100.1.2

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

Type de matriel
LGR-MAT

16

24

31

Type de protocole

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

Adresse Mat metteur (octets 4,5)

Adresse IP metteur (octets 0,1)

Adresse IP metteur (octets 3,4)

Adresse Mat cible (octets 0,1)

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

16

VERS HLEN Type de service


Identification
Dure de
vie

1
2
9Longueur 4totale

Flags

Protocole

31

Offset fragment

Somme de contrle Header

Adresse IP Source
Adresse IP Destination

Options IP (eventuellement)

Padding

Donnes

...
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 de perte
31
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

P1

Donnes 1400 octets

En-tte datagramme

EF1 et EF2 ont le bit More (M)


positionn.
Le dplacement (depl) est
relatif au datagramme initial.

Rseau 2
MTU=620

P2

Rseau 3
MTU=1500

EF1 600 octets

EF1 600 octets

EF2 600 octets

EF2 600 octets

EF3 200 oct.

EF3 200 oct.

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
C

classe
doption

Numro doption

37