Vous êtes sur la page 1sur 56

Cours 2 : Protocole IP

Protocole IP

Fonctions de la couche Rseau


Protocole IP
Les services offerts par IP
Description du paquet IP
Fragmentation et Rassemblage
Adressage
ARP
RARP
BOOTP

Fonctions de la couche Rseau

Principale
change de paquets travers un rseau

Fonctions
Service avec connexion ou sans
connexion(datagramme)
Routage (trouver le chemin du destinataire)
Contrle de flux
Contrle d'erreur
Segmentation et rassemblage des paquets
Congestion

Protocole Internet (IP)

Pierre angulaire du rseau Internet


Ralise le transfert en datagramme
N'assure pas la dtection de paquets en
erreurs
N'indique pas qu'une donne est perdue
(errone)
Fait abstraction des caractristique des sous
rseaux

Avantage

Service en datagramme
gestion des paquets facilite
rsolution des engorgements
pas besoin d'tablissement de connexion

Adressage (rseau, hte)


Souplesse
Extension de la source et de la destination
Routage indpendant du type de routage
slectionn

Inconvnients

Adressage est actuellement limite


Qualit de service peu tendue
Peu de scurit

Architecture TCP/IP

Description du paquet IP
31

15

0
Version

Longueur

Type de service

d'entte

Identification du pa quet
Compteur du
temps de vie

Longueur total du paquet IP


Fanion

Protocole

Position relative

Zone de conrle d'erreur


(Checksum)

Adresse du source
Adresse du destinata ire
Options

Donnes

Bour rage

Les champs du paquet IP

Version
Longueur de l'entte du paquet Internet
(IHL).
Type de service (TOS, Type of service)(voir
plus loin).
Longueur totale du paquet.

Les champs du paquet IP(suite)

Identification du paquet.
Fanion.
le premier le bit D (Dont Fragment);
le deuxime le bit M (More Fragment);
le troisime bit est le bit O (Qualificator of paquet).

Position relative.

Les champs du paquets IP(suite)

Compteur du temps de vie.


Protocole.
Zone de contrle derreurs (Header
Checksum).
Adresse source et Adresse destination.
Options.
Bourrage

Les protocoles dans le paquet IP


0
1
2
3
6
8
9
16
17
18
22
29

Reserv
ICMP(Internet Control Message Protocol)
IGMP(Internet Group Management Protocol)
GGP ( Gataway to Gateway Protocol)
TCP(Transmission Control Protocol)
EGP (Exterior gateway Protocol)
IGP(Interior Gateway Protocol)
CHAOS
UDP ( User DAtagram Protocol)
MUX ( Multiplexing)
XNS-IDP ( Xerox IDP)
ISO-TP4 ISO transport Class 4)

Rassemblage des paquets

On ne fait de rassemblage qu' la station


hte.
Perte de performance
On n'utilise pas les paquets au maximum
des tailles permises.

Les types de service


Type of service
Prcdence

dlai Dbit Fiabilit

rserv

Prcdence
111 = Network Control
110 = Internetwork Control
100 = Flash Override
011 = Flash
010 = Immediate
001 = Priority
000 = Routine
Delai
0 = Normal
1 = Low

Debit
0 = Normal
1 = High

Fiabilit
0 = Normal
1 = High

Services IP versus les applications


Application
Telnet
FTP
contrle
donnes
SMTP
phase de com.
phase de donn.
DNS
requtes TCP
requtes UDP
zone de transf.
ICMP
SNMP
BOOTP
NNTP

Dlai
1

Dbit
0

1
0

0
1

1
0

fiabilit
0

Cout
0

valeur Hex
0x10

0
0

0
0

0x10
0x08

0
1

0
0

0
0

0x10
0x08

1
0
0

0
0
1

0
0
0

1
0
0

0x10
0x00
0x08

0
0
0
0

0
0
0
0

0
1
0
0

0
0
0
1

0x00
0x04
0x00
0x02

Les options de IP

Enregistremet du chemin utilis


Scurit
Marquage du temps de transit (Timestamp)

Les options de IP
1 octet
Code

0
flag
bit

Longueur octets

1 octet
Longueur

Donnes d'option

Classe

bits

Numro d'option

Classe

Numro

Longueur

description

fin de l'option

11

scurit

var

enregistrement de
route

var

Internet
Timestamp

LAB 1: Etherreal

Les tudiants installent lanalyseur de


protocole Etherreal: installation des modules
Windows et examen de paquets sur le LAN
Dans un premier temps, les tudiants
analysent le trafic sur le rseau en faisant un
capture avec Etherreal.

Types de services (partie 1)

ARP
RARP
DNS
RIP

Requte ARP

Station B

Station A

Station E

Qui est sur le segment ?


Station C

Station D

Rponse ARP
Station B

Station A

Station E

Je suis l et mon adresse


physique est :
Station C

Station D

Paquet ARP dans Ethernet

Paquet ARP

Adresse Adresse Type ouData


destinationdestinationlongueurEthernet

CRC

Reverse Address Resolution Protocol

Dans le cas des processeurs (i.e. des htes


sans mmoire secondaire = Diskless Host) on
utilise le protocole .
Le serveur garde une copie des adresses de
tous les processeurs qui sont connects lui.
Quand un processeur entre en service pour
la premire fois, il envoie un message RARP
Request au serveur qui contient sa propre
adresse NPA.
Le serveur va lui rpondre par RARP Reply
contenant ladresse IP du qureur et son
propre IP

Paquet ARP/RARP

HLEN

PLEN

Opration

Adresse Hardware Source


Adresse IP Source
Adresses Hardware
Destination
Adresse IP
HLEN : Longueur de l'adresse Hardware
PLEN : Longueur de l'adresse IP

DNS root

DNS query

RIP

Command
Version Reserved
Family Net 1Net 1 address, 1-2
Net 1 address, 3-6
Net 1 address, 7-10
Net 1 address, 11-14
Distance network 1
Family Net 2Net 2 address, 1-2
Net 2 address, 3-6
Net 2 address, 7-10
Net 2 address, 11-14
Distance network 2

Routing

Simple Network Management


Protocol

SNMP

MIB

Application

MIB

TCP/UDP

MIB
MIB

ICMP

MIB
MIB

ARP
Datalink

MIB

Physical

IP

Types de services (partie 2)

TCP
UDP

Protocole TCP et UDP

Fonctions de la couche transport


Services offerts par TCP
Le paquet TCP
La phase de connexion TCP
La phase de transfert de donnes
La dconnexion
Les primitives de transport
Le protocole UDP

Fonctions de la couche transport

Une transmission de bout-en-bout des


messages entre deux stations (End-To-End
Transport Service).
Le protocole de transport est aussi appell
protocole entre htes (Host-To-Host
Protocol).
Toutes les fonctions que le rseau ne peut
offrir et qui est demand par lapplication.

Services TCP

Le TCP s'engage produire un service de


transport
Service de bout en bout
Efficient(efficace)
Sans erreur
Ordonnencement des paquets.
TCP est un client (utilise) du protocole IP
IP a t mis en place pour produire un service en
datagramme o les paquets sont transmis et reus
travers les rseaux.

Le service offert par le TCP ressemble auTP4


d'ISO
La connexion ici est ralise en Full-Duplex.

Fonctions de TCP

Gestion de la connexion
Avec phase de connexion et une phase de libration

Transfert de donnes

Transfert de donnes fiable


Messages ordonns
Bidirectionnelle (full duplex)
Contrle de flux (Crdit, accus de reception positive )
Envoie les donnes sous forme de paquets de dimension
variable.

Fonctions TCP

Urgence
De plus le TCP permet de transmettre un paquet
immdiatement et directement sans subir le contrle de
flux du TCP. Il suffit pour cela de passer les bons
paramtres dans les primitives.

Contrle d'erreur

Dtection d'erreur sur les donnes


Dtection des duplications
Dtection des paquets hors d'ordre
Retransmission

Adressage
Ports ou sockets

Multiplexage
Plusieurs apllications peuvent utiliser le mme service
TCP

Autres services

PUSH
C'est TCP qui dcide quand il doit transmettre un
nouveau paquet. Le TCP de destination met les
informations reues dans un tampon et ne dlivre ces
informations que du moment o ce tampon est plein.

Dimension de paquets
La taille du paquet qui peut contenir un large paquet ou
un ensemble de petits paquets dpend du TCP
responsable d'une livraison efficace.

Qualit de service
Le TCP dtermine la taille des paquets en fonction des
exigences de qualit de service, de vitesse, de dbit
exprimes par l'utilisateur

Description du paquet TCP


31

15

0
Adresse du port source

Adresse du port destination


Numro de squence
Zone de conrle d'erreur
Numro d'accus de rception
(Checksum)

Long.
de l'
entte

U A S
R C Y
G K N

Rserve

Champ de contrle erreur


Options

Donnes

P
S
H

R
S
T

F
I
N

Fentre coulissante

Zone d'urgence
Bourrage

Port

Les adresses des ports source et destination


correspondent aux points d'accs

Numro
5
7
11
13
20
21
23
25
42
43
53
53
67
68
69
79
101
102
103

Nom
RJE
ECHO
USERS
DAYTIME
FTP-DATA
FTP-CONTROL
TELNET
SMTP
TIME
NAMESERV
NICKNAME
DOMAIN
BOOTPS
BOOTPC
TFTP
FINGER
HOSTNAME
ISO-TSAP
X400

Description
Remote Job Entry
Echo
Active Users
Daytime
File Transfert Data
File Transfert Control
Telent
Simple Mail
Time
Host Name sever
Who Is
Domain Name Sever
Bootstrap Server
Bootstrap Client
Trivial FTP
Finger
Nic Host Name Server
ISO transport
X400

Les numros de squence

Le numro de squence de 32 bits


Le paquet doit tre livr directement au destinataire; la
fentre coulissante est alors mis N.
Supposons que le numro de squence est X. L'entit
destinataire retourne un paquet avec le fanion ACK 1
et le numro d'accus de rception (X+N+1), le
numro de squence attendu du prochain octet. La
fentre coulissante est remise sa valeur initiale.

Le numro d'accus de rception de 32 bits


le numro de squence reu sans erreur dans le bon
ordre .

La longueur de l'entte de 4 bits


le nombre de 32 bits contenus dans ce paquet.

Un espace de rserve
il est allou pour un usage futur.

Les fanions

Viennent ensuite 6 fanions (Flag) d'un bit


chacun, ce sont:
URG (URGent-Flag) indique qu'il faut passer travers le
contrle de flux;
ACK (ACKnowledgment) est rserv l'accus de
rception;
SYN (SYNchronization) est l pour synchronisation;
PSH (Push-Flag) dit qu'il faut que les informations soient
transmises tout de suite l'application et non mise dans
un buffer;
RST (ReSeT-Flag) exige une rinitialisation de la
connexion; et enfin
FIN indique qu'il n'y a plus d'informations envoyer. Ces
fanions sont 1 lorsque la fonction correspondante est
demande.

Fentre et Urgence

La fentre coulissante de 16 bits


sert pour le contrle de flux
Cest le nombre de crdit donn lautre pour lui
permetre denvoyer des octets
Ce nombre est estim par la dimension des tampons
libres dans la station

Zone durgence
utilis pour envoyer des informations exprs avec URG.

Gestion de la connexion et transfert


de paquets

Trois phases:
l'tablissement de la connexion,
le transfert des informations et le contrle de
flux.
la libration de la connexion

Etablissement de la connexion
Application
Client

Passive
Open

TCP

TCP

Closed

Closed

Application
Serveur

Passive
Open
Listen
Listen
Syn, ISN
Syn Received
Syn,ACK, ISN',
ISN+1

Open
Succes

Etablished
ACK, ISN'+1,
ISN+1
Etablished
Open
Succes

tablissement de la connexion

Pour permettre non plus seulement une


relation de qureur des clients et de
rpondant du serveur,
On utilise la procdure trois mains (ThreeWay Handshake).
ISN (Initiale Sequence Number)
le numro de squence du premier octet d'information
transport par le paquet.
Si ce numro est prsent ce numro correspond au
numro de squence initial (ISN = Initial Sequence
Number) et le premier octet d'information est alors de
(ISN+1).

Transfert des des donnes

Squencement
L'tablissement de la connexion tant fait, les
informations sont transmises dans les paquets sous forme
d'une srie d'octets. Les octets sont numrots modulo
232.
Le champs numro de squence du paquet dcrit le
premier octet du paquet.

Crdit( contrle de flux)


Crdit
stratgie de fentre coulissante (Appliques sur les
octets et non pas sur le paquet, plus flexible et plus
efficient)

Le contrle d'erreur -> la mthode Go back


N ARQ sans accus de reception ngative

Le contrle derreur.
1

SEQ = 3
(300 bytes sent)
ACK = 303

Receive ACK =303


5

SEQ = 303
(300 bytes sent)

X Not delivered

ACK = 303
SEQ = 603
(300 bytes sent)
ACK = 303

7 Time out and resend


two segments

Still expecting 303 6

SEQ = 303
(300 bytes sent)
SEQ = 303
(300 bytes sent)
ACK = 903

ACK the two segments 8

TCB (Transport Connection


Block)

A chaque fois qu'un paquet est envoy, le


numro de squence et le temps de
transmission sont enregistr dans Transport
connection Block.
Lorsque l'accus de rception est reu, la
station calcule le temps d'un aller/retour.
Ce temps l, va servir a estimer le Smooth
round-Trip delay.

Libration de la connexion

Nous allons voir deux cas:


La libration normale;
Dans le premier cas de libration normale nous
pouvons tre en prsence de deux situations o celui
qui prend l'initiative de libration est soit le client soit le
serveur.
On suppose que le client a fini de transmettre ses
informations et veut librer la connexion.

La libration brutale ou d'interruption.


Une libration brutale est gnre si l'utilisateur envoie
la primitive ABORT avec le fanion RST 1.
Ds lors toute transmission ou rception est interrompue
et les tampons sont vids de toutes leurs informations.
Le serveur gnre alors la primitive TERMINATE avec un
code indiquant la raison de cette libration brutale.

Libration de la connexion
Application
Client

Close
request

TCP

TCP

Etablished

Etablished

Fin Wait1

Application
Serveur

Listen
Fin
Close Wait

Fin Wait2

Fin ACK
Data
Data
Fin

Close
Indication

Timewait
Fin ACK
Closed
Closed

Closed
Closed

Diagramme de lautomate
ltat fini du TCP.
Active Open
createTCB
and SYN

CLOSED

Passive OPEN
create TCB

CLOSE
delete TCB
CLOSE
delete TCB
LISTEN

rcv SYN
and SYN,ACK

SEND
and SYN
rcv SYN
and ACK

SYN RCVD
rcv ACK of SYN
x

SYN SENT
rcv SYN,ACK
and ACK

CLOSE
and FIN

ESTAB
rcv FIN
and ACK

rcv ACK of SYN


x
FIN WAIT -1

CLOSE WAIT

rcv ACK of FIN


x

rcv FIN
and ACK

FIN WAIT-2

CLOSE
and FIN
LAST_ACK

CLOSING
rcv ACK of FIN
x

rcv ACK of FIN


x
CLOSED

TIME WAIT
rcv FIN
and ACK

Timeout=2MSL
delete TCB

Interface avec les applications

Primitives TCP
En effet le TCP utilise des primitives pour assurer les
services TCP.

OPEN
Passive open,Active open
Open parameters,Adressing,Timout,Security,Quality of
service

Transfert de donnes
Send, Send parameter,Urgent,Push,Timout

Terminate
Close

Protocole UDP

L'UDP comme TCP est utilis avec IP.


Le protocole UDP offre un service de
transport en datagramme
L'UDP utilise la technique d'une main (OneWay-Handshake) i.e. l'UDP produit un UDP
paquet et le transfre au protocole IP pour
transmission.

Services UDP

Service datagramme sans connexion


Peu overhead
pas de detection derreur et de duplication

Applications utilisant UDP


DNS
TFTP
NFS

Format des paquets du protocole UDP


31

15

0
Adresse du port source
Longueur

Donnes

Adresse du port destination


Checksum

Fonctions UDP

Pour toutes ces raisons le paquet du protocole UDP est


trs simplifi
Le paquet gnr par le protocole UDP correspond
la zone d'information du datagramme IP.
Si le checksum calcul par le destinataire ne
correspond pas celui contenu dans le paquet, le
paquet est tout simplement ignor.
De plus il n'y a aucune garantie de livraison. Il n'existe
aucune protection contre les erreurs telles la
duplication, un numro de squence incorrect, la
perte d'octet, l'absence d'accus de rception. La
seule protection contre ces erreurs est le champ
checksum.

Sources dinformation

RFC : http://www.rfc-editor.org/
Google

Vous aimerez peut-être aussi