Vous êtes sur la page 1sur 128

Protocole

École Nationale d’Ingénieur de Sfax

Réalisé par:
Taktak Mariam
Fakhfakh Faten
Fakhfakh Fairouz
Zouari Faiza

1
Plan
• Introduction
Exercice
Attribution d’adresse IP
Sous-réseau
• Sur-réseau
• Commandes Dos
• Exercice
• Datagramme IP
• IPv4 vs IPv6
• Fragmentation
• Routage IP

Historique •



TCP/IP

OSI vs TCP/IP

Encapsulation

Diffusion d’information

Protocole IP

• Fontionnalités
• Adressage

Classes
• masque de réseau
• Adresse de diffusion
• Adresse privé/Adresse Publique
• Adresse logique/Adresse physique
• directives d’adressage

2
Historique

• En 1969,DARPA lance ARPANET.

• En 1973 se développe le standard TCP/IP .

•1974,parler d’Internet.

•1976, adopter TCP/IP pour ARPANET.

•En Juin 1978 Jon Postel définit IPv4 et en 1981 IP est standardisé.

•En 1983 les protocoles TCP/IP sont adoptés comme un standard militaire.3
TCP/IP
• Standard+Implémentation
• Modèle en couches:indépendances de OS
• Plusieurs protocoles+Commutation de paquets

Utilité du modèle en couches

 Séparer le problème en différentes parties selon leur niveau


d'abstraction.
 Chaque couche du modèle communique avec une couche
adjacente.

4
OSI vs TCP/IP
HTTP,FTP
SMTP, Telnet
Application réseau qui
Exploite les données

TCP,UDP
•Contrôle et transport
des flots de données
•Accusés de réception
IP
•Adressage logique
•Correspondance
Protocole avec l'adressage physique
LAN
•Interface physique
avec le réseau
•Contrôle d'erreurs

OSI TCP/IP
5
Encapsulation

Données utilisateur

Message
Entête
applicatif Données utilisateur Application

segment
Entête
TCP Données applicatives Transport
Segment TCP

datagramme
Entête
IP
Entête
TCP Données applicatives Internet
datagramme IP

trame
Entête
Ethernet
Entête
IP
Entête
TCP Données applicatives
Remorque
Ethernet
Physique
6
14 octet 20 octet 20 octet
Trame Ethernet 46 à1500 octets(Données)
Diffusion d’information
Src Dst

× × OK ×
• Il existe 3 types d’adresse IP :
– Unicast (destiné à une seule machine)
– Broadcast (destiné à toutes les machine d’un réseau donné)
UNICAST
–Src
Multicast (destiné à toutes les machines d’un groupe multicast)

OK OK OK OK

Src Broadcast

× OK × OK

7
Multicast
Qu’est ce qu’un protocole?

A B
E1
E2 A B
E3 SMS1
R1 SMS2
R2 SMS3
R3 E4
SMS4

Définition Régles+Procédures pour émettre et recevoir des données


sur un réseau

Type Orienté connexion: Non orienté connexion:pas de


Il y a contrôle de contrôle d’erreur
transmission.(processus
du handshake)
Exemples TCP UDP,IP
8
Qu’est ce qu’ IP

L'adresse IP
est une adresse
unique (c'est-à-dire
qu'il n'existe pas sur
Internet deux
ordinateurs ayant la
même adresse IP).9
Protocole IP
• Il fait partie de la couche Internet .
• C'est un des protocoles les plus importants d'Internet car
il permet l'élaboration et le transport des datagrammes
IP (les paquets de données), sans toutefois en assurer
la « livraison ».

« Le protocole IP est dit « Best effort delivery » c’est à dire qu’il


fait de son mieux pour envoyer les données. Ce n’est pas lui qui
est chargé de s’assurer que le message final est bien arrivé à
destination. »

10
Protocole IP:Fonctionnement
• L’adressage:

» Il permet principalement d'identifier les machines à l'aide d'adresses.


• Transporte des datatgrammes de bout en bout:
-Pour aller de A vers C,le datagramme passe par R1,R2,R3
B
R1
-Chaque Datagramme contient: A

» L’adresse IP de l’émetteur
» L’adresse IP du destinataire R2

• La fragmentation et le réassemblage:
C R3
• Le routage:

11
Adressage IP
• Système de communication universel : établir une
méthode générale d’identification des machines.

• 32 bits utilisés, écriture en 4*8 bits.


 11000000.10101000.00001020.10000010 = 192.168.10.130

• Adresse = 32 bits = 4 octets = 4 entiers < 256

• Adresse en 2 parties :
– Net ID : Identifiant du réseau
– Host ID : Identifiant de la "machine"

12
Adressage IP : Classes
d'adresses
0 8 16 24 31
Classe A 0 Net-id Host-id

Classe B 10 Net-id Host-id

Classe C 1 1 0 Net-id Host-id

Classe D 1 1 1 0 Multicast

Classe E 11110 Réservé


13
Classes d’adresses:Classe A,
Grand Réseau
• le premier octet représente le réseau dans la classe A.
• Les autres représentent les hôtes dans le réseau.

• Classe A :
Plage d’adresse du réseau 1.0.0.0 126.0.0.0
Masque de sous-réseau par défaut 255.0.0.0
Nbre de réseaux possibles 2^7-2=126
Nbre de Machines/Réseau 2^24-2=16777214hôtes/réseau.

RQ: • le réseau 0.0.0.0 n'existe pas et le nombre 127._._._ est réservé pour
désigner votre machine.
• 0.0.0.0 est utilisée par une machine pour connaître sa propre adresse IP
• 127.X.Y.Z est une adresse de rebouclage qui est utilisée pour permettre
les communications inter-processus sur un même ordinateur ou réaliser
des tests de logiciels
• Les adresses de classe A de 10.0.0.0 à 10.255.255.254 sont réservés à
l’Intranet. 14
Classes d’adresses:Classe B,
Moyen Réseau
• Dans une adresse IP de classe B, les deux premiers octets représentent le réseau.
• La plage d’ adresses IP de la classe B sont celles entre 128.0.0.0 et 191.255.255.255.

• Le nombre max d’ordinateurs = 2^16 -2 = 65534

• Le nombre de réseaux = 2^14 = 16384

la structure d'une adresse IP de la classe B


Exemple:
@IP= 172.40.0.5
NetID=172.40
HostID=0.5
Mais pourquoi l'identité réseau prend deux octets dans ce cas ?

C’est à cause au masque de sous-réseau par défaut

RQ:

Les adresses de 172.16.0.0 à 172.31.255.254 sont réservés à l’intranet.


15
Classes d’adresses:Classe C,
Petit Réseau

• 24 bits qui désignent le réseau ; 8 bits qui désignent les hôtes

• la plage d’adresses IPv4 correspondant à la class C : 192.0.0.0 à


223.255.255.255

• Le nombre max d’ordinateurs = 2^8 -2 = 254

• Le nombre de réseaux = 2^21 = 2097152 On élimine


l’adresse de
diffusion
et l’adresse du
réseau lui
même

16
Classe D&E
• Classe D:
» Adresse multicast:

- Adresse qui identifie un groupe (de stations).


- Utilisation illégale en tant qu'adresse source.

- Il existe un protocole de niveau supérieur qui permet de contrôler l'attribution des


adresses multicast(IGMP : Internet group management protocol).

- Actuellement, la plupart des routeurs Internet ne routent pas les datagrammes


multicast,

Plage d’Adresse:

224.0.0.0 239.255.255.255

• Classe E:
» Adresse non réservée:
240.0.0.0 247.255.255.255

17
Masque de réseau

• Chaque classe a un masque de sous-réseau par défaut.

• Pour connaître le NetID et le HostID de l'adresse IP, il suffit d'utiliser


le masque de réseau. Pour obtenir NetID, il faut effectuer un ET
(AND) bit à bit entre l'adresse IP et le NetMask.
Exemple:
11000000 10101000 00000100 11010011
Et
11111111 11111111 11111111 00000000

11000000 10101000 00000100 00000000


192 . 168 . 4 . 0

Le masque de réseau sert à séparer les parties réseau et hôte


d'une adresse.

18
Adresse de diffusion
• Cette adresse permet à une machine d'envoyer un datagramme à toutes
les machines d'un réseau. Cette adresse est obtenue en mettant tous les
bits de HostID à 1.

diffusion limitée sur


Tout à un le réseau courant

diffusion dirigée sur


Net id Tout à un le réseau Net-id
Exemple:

• 200.140.29.255 est une adresse de diffusion sur tout le réseau de


200.140.29.0

• 150.70.255.255 est une adresse de diffusion sur tout le réseau de


150.70.0.0
19
Adresse privé/adresse publique
• Adresse privé:
»Ces adresses ne peuvent pas être routées sur Internet (que sur le LAN)
» De 10.0.0.1 à 10.255.255.254 soit plus de 16 millions d'adresses. (classeA)
» De 172.16.0.1 à 172.31.255.254 soit plus de 1 million d'adresses. (ClasseB)
» De 192.168.0.1 à 192.168.255.254 soit près de 65000 adresses. (Classe C)
• Adresse publiques:

»sont attribuées par l’IANA (Internet Assigned Numbers Authority). Elles


sont garanties pour être uniques au niveau mondial et accessibles sur Internet.
Cela assure qu'aucun ordinateur ne possède la même adresse IP qu'un autre

20
Adresse
logique(IP)/physique(MAC)
Notion d'adresse Physique (48 bits)et de trames :
Trame
Message envoyé par A vers B Lit le message

Interdit

Station A
Station B
Comment sait-il que cette trame lui est adressée ?

Car il reconnaît l'adresse de destination, contenue dans la trame.

Comment sait il qui lui a envoyé la trame ?

Car la trame contient aussi l'adresse de l'émetteur.

21
Adresse
logique(IP)/physique(MAC)
Notion d'adresse logique et de paquets:

• L'adresse d'une carte réseau correspond à l'adresse d'un poste et d'un seul.
• On appelle le message contenu dans une trame un paquet.
• Les machines (hôtes) d'un réseau TCP/IP sont identifiées par leur adresse IP.
IP.

Or les postes sont généralement regroupés en réseau.


réseau

Comment identifier le réseau auquel appartient le poste ?

Il faut une adresse logique qui soit indépendante de l'adresse physique.


C'est ce que propose le protocole IP.
IP

Pourquoi identifier le réseau ?


Pour permettre à 2 postes qui ne sont pas connectés au même réseau de communiquer.
Cela est impossible avec une adresse MAC.
MAC 22
Directives d’adressage

• Le numéro de réseau ne peut être 127 :


– 127.0.0.1 : adresse de rebouclage (loopback).
– Réservé pour des fonctions de bouclage et de
diagnostics.

• Le numéro d’hôte doit être unique dans chaque numéro de


réseau.

23
Directives d’adressage
• Les bits du numéro de réseau et les bits de l’hôte ne
peuvent pas avoir tous la valeur 1 : c’est l’adresse de
diffusion ou broadcast.
– Ex : dans le réseau d’adresse 192.168.1.0, l’adresse
192.168.1.255 est l’adresse de diffusion.

• Les bits du numéro de réseau et les bits de l’hôte ne


peuvent pas avoir tous la valeur 0 : c’est l’adresse du
réseau lui-même.
– Ex : 192.168.1.0

24
Exercice de réflexion
Les adresses suivantes peuvent-elles être attribuées
à un hôte ?

131.107.256.80 NON 256 > 255


222.222.255.222 OUI
231.200.1.1 NON 231 : classe D
172.16.0.0 NON adresse réseau
190.7.2.0 OUI
198.121.254.255 NON adresse de diffusion

25
Comment attribuer une
adresse IP à un hôte ?

26
Attribution statique ou
dynamique ?
• Statique : l’administrateur configure
manuellement chaque hôte du réseau
Dans un réseau de grande taille, attribuer une adresse IP à
chaque station en respectant l’unicité de valeur peut rapidement
devenir une tâche très lourde !

• Dynamique : l’attribution est réalisée


automatiquement par un serveur DHCP()
27
Sous-réseaux (subnetting)
Pourquoi créer des sous-réseaux ?
Important :
• Renforcement de la sécurité
pour parer à d'éventuels problèmes
• Optimisation de l'espace réservé à une adresse IP de routage et d'adressage, tous les ordinateurs
d'un réseau logique doivent utiliser le
même masque de sous-réseau
Masques de sous-réseau et le même identificateur de réseau.

Partie Internet
permettent de segmenter un réseau en plusieurs sous-réseaux.
Partie locale

• Partie
On utilise alors Internet
une partie Sous-réseau
des bits de l'adresse d'hôte Identifiant
pour identifier des sous-réseaux. Machine
Toutes les machines appartenant à un sous-réseau possèdent le
même numéro de réseau.
• On utilise le même principe que pour le masque par défaut sur l'octet de la partie hôte auquel on va
prendre des bits. Ainsi, le masque de sous-réseau d'une adresse de classe B commencera toujours par
255.255.xx.xx
Exemple:
Ex : adresse : 192.0.0.131
Masque sous-réseau : 255.255.255.192
Conversion de l'adresse en binaire : 11000000 00000000 00000000 10000011 ET bit à bit
Conversion du masque en binaire : 11111111 11111111 11111111 11000000
11
Décomposition de l'adresse (R,H) : 11000000 00000000 00000000 10000000
La machine appartient au réseau 192 . 0 . 0 . 128
28
Sous-réseau
Nombre de sous-réseaux
• Le nombre théorique de sous-réseaux est égal à 2^n,
2^n n étant le nombre de bits à 1 du masque, utilisés
pour coder les sous-réseaux.
Exemple :
• Adresse de réseau : 200.100.40.0
• Masque : 255.255.255.224
• 224 = 11100000 donc 3 bits pour le N° de sous-réseau et 5 bits pour l'hôte.
• Le nombre de sous-réseaux est donc de : 2^3-2 =8.-
2=6(2:@diffusion(200.100.40.224)+@réseau(200.100.40.0))
2=6
Adresse des sous-réseaux
• Il faut donc maintenant trouver les adresses des sous-réseaux valides en utilisant les bits à 1 du masque.
• Pour l'exemple précédent, il faut utiliser les 3 premiers bits:
000 00000 001 00000 010 00000 011 00000 100 00000 101 00000 110 00000 111 00000
0 32 64 96 128 160 192 224

On constate que le pas entre 2 adresses de sous-réseau est de 32= 2^5 correspondant au nombre

théorique d'hôtes par sous-réseau .


29
Sous-réseau
Adresse de diffusion d'un sous-réseau
• Il faut mettre tous les bits de la partie hôte à 1.
• Cherchons l'adresse de diffusion des sous réseaux précédents.
• Avec le masque 255.255.255.224
• Pour le sous-réseau 200.100.40.32
• 32 = 001 00000 donc l'adresse de diffusion est 001 11111 = 63.
63
• L'adresse de diffusion complète est donc 200.100.40.63
• Pour le sous-réseau 200.100.40.64 l'adresse de diffusion est 200.100.40.95...ETC
200.100.40.95 ...

Nombre de postes d'un sous-réseau


• Le nombre de postes est égal à 2^n, 2^n n étant le nombre de bits à 0 du masque permettant de
coder l'hôte. A ce chiffre il faut enlever 2 numéros réservés :
• tous les bits à zéro qui identifie le sous-réseau lui-même.
• tous les bits à 1 qui est l'adresse de diffusion pour le sous-réseau.

Exemples :
• Soit le masque 255.255.255.224
• 224 = 11100000 donc 3 bits pour le N° de sous-réseau et 5 bits pour l'hôte
• le nombre de poste est donc de : 2^5 -2 =30 postes.
• De même, avec le masque non contigu 255.255.255. 30 =
255.255.255 129 le nombre de postes sera de 2^6-2
62 postes
Caractéristiques d’IP

• Implémente la couche réseaux par rapport au modèle OSI.


• Définit l’adressage logique des machine ainsi que le routage
des données entre les nœuds.
• C’est un protocole non fiable car il ne garanti pas la remise des
données à la destination final.
• C’est un protocole sans connexion car il n’y a pas de circuit
établi au préalable et les paquets sont acheminés
indépendamment les uns des autres.
• C’est un protocole de transmission pour le mieux (best effort)
car il compte sur la technologie physique sous-jacente pour
l’acheminement des paquets.

31
Commandes Dos

32
IPCONFIG: permet de connaître les adresses affectées à chaque
interface de la machine.
Syntaxe : IPCONFIG / Option

EX :
ipconfig /all : Affiche toutes les informations de configuration
ipconfig /? : Affiche un message d'aide

PING : permet de tester la connectivité à un ordinateur. Quand on fait une


commande PING, elle envoie un paquet de données à un PC et à attendre le retour
du parquet.

Syntaxe : PING _ option

EX : PING 127.0.0.1 permet de vérifier que les protocoles TCP/IP sont bien
installés sur l'ordinateur. Cette adresse loopback a fait un aller-retour localement sans
sortir de l'ordinateur.

L'adresse IP 127.0.0.1 est l'adresse locale de la carte réseau. Si la commande renvoie délai
dépassé, la configuration TCP/IP est en erreur. Ceci nécessite une réparation ou une
réinstallation de la partie réseau de l'ordinateur. Cette commande ne nécessite pas de connexion
33
réseau physique (câble Ethernet ou sans fils) avec d'autres ordinateurs..
Autre commandes

• TRACERT www.google.com :permet d'afficher les sauts lors de


la connexion au nom de domaine google.com, adresses IP et nom d'hôte.

• ROUTE PRINT affiche les tables de routage pour l'ordinateur utilisé .

• NetStat -a permet d'afficher tous les ports sur un ordinateur tant en


TCP qu'en UDP, y compris ceux qui sont inactifs.

• netstat – r affiche la table de routage.

34
PING 127.0.0.1
Teste si la pile TCP/IP est opérationnelle

Ces 4 lignes indiquent que le test a réussi

35
Autres commandes DOS
ARP -a: permet d’obtenir l’adresse MAC à partir de
l’adresse IP

Affiche le cache ARP 36


37
Datagramme IP version 4

38
Datagramme IP
L'unité de transfert de base dans un réseau internet est le
datagramme (généralement appelé paquet IP) qui est
constitué d'un en-tête et d'un champ de donnée.

 Le protocole IP encapsule les données générées par les


couches 7 à 4 du modèle OSI pour former un paquet IP

39
Datagramme IP
0 4 8 1 1 2 31 bits
6 9 4
VERS HLEN Type de service Longueur totale
Identification Flags Offset fragment
Durée de Protocole contrôle de l’en-tête
En-tête

vie
Adresse IP Source

Adresse IP Destination

Taille variable
Options IP (éventuellement) Padding

Données Données

40
Datagramme IP
VERS HLEN Type de service Longueur totale

• VERS : (4 bits)
Version du protocole IP qui doit interpréter ce datagramme.

 La version actuelle la plus “déployée” est 4 (soit 0100 en binaire).

41
Datagramme IP
VERS HLEN Type de service Longueur totale

• HLEN : (ou IHL) Internet Header Length (4 bits)


Cette valeur est à multiplier par 4 pour connaître le nombre d’octets
constituant l’en-tête.

 L’en-tête correspond au début du datagramme jusqu’au données.


 Elle permet notamment de savoir si il y a des options et où commencent les
données.
 Elle peut varier de 5 (soit 20 octets d’entête) à 15 (60 octets d’entête). Cette
variation s’explique par la présence ou non d’options.

42
Datagramme IP

VERS HLEN Type de service Longueur totale

• Type de service : Type Of Service (8 bits)


Indique la qualité du service demandé pour ce datagramme où
les 8 bits sont décomposés comme suit (les deux derniers devant
être à 0) :

43
Datagramme IP

VERS HLEN Type de service Longueur totale

Priorité : (3 bits) Indique la priorité voulue pour le datagramme.


Bit D(elay) : à 1, indique que l’acheminement du datagramme doit
privilégier le délai (il doit arriver le plus rapidement possible).
Bit T(hroughput) : à 1, indique que le datagramme fait partie d’une
communication ayant besoin d’un gros débit
Bit R(eliability) : à 1, indique qu’il faut privilégier la fiabilité : un effort
particulier doit être fait pour acheminer correctement ce datagramme,
notamment en empruntant si possible des réseaux à faible taux d’erreur
Bits inutilisés : doivent être à 0.
44
Datagramme IP
VERS HLEN Type de service Longueur totale

• Longueur totale : (16 bits)


Donne la taille totale en octets  un datagramme ne peut pas excéder
65535 octets (216 -1). La norme impose à toute implémentation de pouvoir
traiter des datagrammes d’au moins 576 octets.

 Si un datagramme devant traverser un réseau est de taille supérieure à ce


que le réseau peut transmettre il doit être fragmenté par le routeur ou la
station l’injectant dans le réseau.

 Fragmenter veut dire que le datagramme sera découpé en datagrammes


plus petits (des fragments) qui pourront être transmis. Ces fragments auront
pour Longueur Totale la taille des données qu’ils transportent plus la
longueur de l’en-tête indiquée dans le champ HLEN. Le datagramme d’origine
sera reconstitué par le destinataire.

45
Datagramme IP

Identification Flags Offset fragment

• Identification : (16 bits)


Numéro identifiant le datagramme de façon non ambiguë par
rapport à sa source (identifiée par l’adresse IP source).

 Permet de rassembler les fragments d’un même datagramme


afin de le reconstituer.

46
Datagramme IP

Identification Flags Offset fragment

• Flags : (ou drapeau) Indicateurs de fragmentation (3 bits)


Ces indicateurs se composent des 3 bits suivants dont le premier est inutilisé et
doit être à 0 :

47
Datagramme IP

Identification Flags Offset fragment

bit 0 : bit inutilisé et à 0.


bit Don’t Fragment : si positionné à 1, indique que ce
datagramme ne doit pas être fragmenté  Dans ce cas, un
routeur qui n’a d’autre choix que le fragmenter va le détruire et
enverra un message ICMP de compte rendu de destination
inaccessible.
bit More : si positionné à 1, indique que le datagramme n’est
qu’une partie (fragment) du datagramme d’origine et que ce
n’est pas le dernier fragment. Si à 0, indique que le
datagramme est le dernier fragment du datagramme 48
d’origine  On reconnaît un datagramme non fragmenté
Datagramme IP

Identification Flags Offset fragment

• Offset fragment : (13 bits)


Ce champ sert pour la fragmentation.

 En multipliant sa valeur par 8, on obtient la position dans le datagramme d’origine du premier octet de données de
ce datagramme.

 Le Déplacement (offset) est différent de 0 uniquement si le datagramme a été fragmenté. Il vaut 0 si le


datagramme n’est pas fragmenté, ou si c’est le premier fragment.

49
Datagramme IP

Durée de Protocole contrôle de l’en-tête


vie
• Durée de vie : (ou TTL) Time To Live (8 bits)
Ce compteur est décrémenté à chaque traversée de routeur.

 Si la valeur 0 est atteinte, le paquet est jeté. Cela signifie qu'il ne peut être
délivré à sa destination finale.

 La valeur initiale du champ TTL dépend du système d'exploitation utilisé.

50
Datagramme IP

Durée de Protocole contrôle de l’en-tête


vie
• Protocole : (8 bits)
Ce champ spécifie le protocole utilisé dans les données du paquet IP.

Quelques protocoles reconnus par IP (en décimal) :


0 : IP
1 : ICMP
6 : TCP
17 : UDP

51
Datagramme IP

Durée de Protocole contrôle de l’en-tête


vie
• Contrôle de l’en-tête : header checksum (16 bits)
A chaque création ou modification d'un paquet, une somme de contrôle (cyclic redundancy
check) est calculée sur son en-tête.

 Permet de contrôler l’intégrité de l’entête (mais pas des données).

 Lorsque le paquet arrive à destination, cette somme est recalculée. Si le résultat diffère, c'est que
le paquet a été endommagé lors de son trajet.

52
Datagramme IP

Adresse IP Source

Adresse IP Destination

• Adresse IP source : (32 bits)


Entier non signé identifiant l’adresse IP de l’émetteur du datagramme.

 On représente une telle adresse en notation décimale pointée (ex. 10.10.35.5).

53
Datagramme IP

Adresse IP Source

Adresse IP Destination

• Adresse IP destination : (32 bits)


Entier non signé identifiant l’adresse IP du destinataire du datagramme.

 On représente une telle adresse en notation décimale pointée (ex. 192.168.22.50).

54
Datagramme IP
Options IP Padding
Données

• Option IP : taille variable (pouvant être nulle)


Cette partie de l'en-tête est optionnelle.

 Ce champ est utilisé pour fournir des instructions spécifiques de


distribution du paquet qui ne sont pas couvertes par les
autres champs de l'en-tête (ex. l’enregistrement d’une route
suivie par un datagramme, le routage à la source, etc. ).

55
Datagramme IP
Options IP Padding
Données

• Padding : bourrage (taille variable, pouvant être nulle)


N’est présent que pour compléter la taille des options jusqu’à un
multiple de 4 octets. Ceci parce que la taille de l’en-tête est HLEN x 4
octets.

56
Datagramme IP
Options IP Padding
Données

• Données : data (taille variable)


C'est le dernier champ du paquet IP est présente les données véhiculées par le
datagramme.

 Sur la station destinataire du datagramme, ces octets seront communiqués à l’entité


(protocole) indiquée par le champ Protocole si le Checksum est confirmé.

 La taille maximale de ce champ est 65535 moins la longueur de l’en-tête.

57
Datagramme IP : capture de trame
 Pour comprendre ce que contient le datagramme, on peut utiliser un
logiciel de capture de trame tel que wireshark en mode graphique
ou tcpdump en mode commande.
La figure ci-dessous montre une capture d’écran faite avec wireshark qui
montre ce que ce logiciel peut nous dire sur le contenu des paquets IP.

C’est un simple ping entre 2 machines se situant sur des réseaux


différents.

58
Datagramme IP : capture de trame
Voyons le détail de ce datagramme :

59
Datagramme IP : capture de trame
Voyons le détail de ce datagramme :

Nous sommes en IPv4.


Le header fait 20 octets (1octet=8bits).
La longueur total du datagramme est de 60 octets. On en conclue
donc que nous avons 40 octets de données.
Le numéro identifiant le datagramme est 3428
60
Datagramme IP : capture de trame
Voyons le détail de ce datagramme :

Le message n’est pas fragmenté.


Le TTL est de 128 ce qui signifie qu’après avoir traversé 128
routeurs, le paquet sera détruit.
Le protocole contenu dans les data est ICMP
Le checksum est correct.
61
Passer à la version IPv6 est
une nécessité
Selon le protocole de communication IP dans sa version 4, l'adresse IP est composée de
4 octets allant de 0 à 255
 cette adresse est attribuée de manière statique ou dynamique, selon le choix de
l'administrateur réseau, à tout appareil qui se connecte à un réseau et permet ainsi de
l'identifier.

Si le nombre d'adresses qu'il est possible d'attribuer avec la norme IPv4 est relativement
important  il ne suffira plus au vu du nombre important d'appareils qui se
connectent aujourd'hui.

 Les postes de travail, les serveurs et les routeurs ont, ces dernières années, été rejoints
par d'autres appareils comme les consoles de jeu et les téléphones portables.

62
Passer à la version IPv6 est
une nécessité

en 2015, il n'y aura probablement plus d'adresses IP


libres.

Passer à la version IPv6 est une


nécessité

63
IPv4 vs IPv6

Le schéma suivant présente une comparaison entre les composantes des


entêtes IPv4 et IPv6

64
IPv4 vs IPv6 : différences

Principe de modification IPv4  IPv6

Extension des capacités 32bits  128 bits


d'adressage  Anycast (+ unicast,+multicast)

Simplification de l'entête plusieurs champs sont devenus optionnels


diminue le surcoût (overhead) :
temps de traitement
+
quantité de données
Amélioration de la  + Authentification
65
sécurité + Confidentialité des données
Fragmentation des datagrammes
IP
Problème :
• Les réseaux n'ont pas une capacité suffisante pour
envoyer de gros paquets.
• La taille maximale d'une trame est appelée MTU
(Maximum Transfer Unit).
• La taille maximale d'un datagramme varie suivant le type
de réseau.

• Comment adapter la taille des unités de données à


transmettre à la taille des unités de transport ?

66
Fragmentation des datagrammes
IP

Solution :
 Découper les datagrammes en morceau
de tailles inférieures au MTU du réseau
dénommés fragments de telle façon que la
taille du fragment soit un multiple de 8
octets.

 La fragmentation d'un datagramme se fait


au niveau des routeurs .
67
Fragmentation des datagrammes
IP

Réseau1 Réseau2
MTU=4020 MTU=1500
octets octets
Routeur
Donnée:3500 octets

Réseau1 Réseau2
MTU=4020 MTU=1500octet
octets s
Routeur
onnée:6000 octets
68
Fragmentation des datagrammes
IP

Après fragmentation, le routeur envoie les


fragments de manière indépendante et les
ré encapsule (ajoute un en-tête à chaque
fragment) de telle façon à tenir compte de
la nouvelle taille du fragment.
69
Fragmentation des datagrammes
IP

• De plus, le routeur ajoute des informations


afin que la machine de destination puisse
réassembler les fragments dans le bon
ordre:Grâce au champs offset ,on peut
faire le tri des fragment.

70
Les champs de l’entête pour contrôler
le mécanisme de fragmentation- réassemblage

• Fragment total length : longueur totale du 71


fragment (et pas du datagramme !) en octets (<
Les champs de l’entête pour contrôler le mécanisme de
fragmentation- réassemblage
0 4 8 16 19
31 Identification Drapeau Offset (fragment)

Identification:(16 bits) est un entier qui identifie de manière unique chaque


datagramme émis et qui est recopié dans le champ identification de chacun des
fragments si ce datagramme est fragmenté.

Drapeau(Flags) : 3 bits (0 , DF , MF)
-Bit 0 : réservé, doit être laissé à zéro.
-Bit 1(DF) : 1 fragmentation interdite, 0fragmentation
possible
-Bit 2 (MF): 1  fragmentation possible(il y a encore des
fragments)
0 fragmentation non possible

Offset: (13 bits)indique le déplacement du premier octet du fragment


par rapport au début du datagramme initial (en unité de 8 octets).
72
Schéma général de la fragmentation
Datagramme d’origine

Position=@fragment1 Position=@fragment3
Position=0

La position offset permet de reconstruire le datagramme d’origine 73


Exemple
1300 octets A
B

En-tête
datagramme
De 20
octets

Question
•Décrivez la fragmentation réalisée pour la transmission d’un
paquet IP de taille 1300 octets(donnéé) émis par A à destination
de B, en précisant pour chaque fragment de paquet, les valeurs
des champs (ID,DF,MF,OFFSET).
•On supposera que la valeur initiale de l’Identifiant du paquet 74
est
500 .
1300 octets
20
552 552 196
octets
Entête IP octets octets octets

20 552
octets
Entête IP octets

20 552
octets octets
Entête IP
ID=500
DF=0
MF=1 20 196
ID=500
OFFSET=0 octets octets
DF=0
MF=1 Entête IP
OFFSET=6
9=552/8 ID=500
DF=0
MF=0
75
OFFSET=6
9*2
Remarques :
• Un datagramme fragmenté n'est réassemblé que
lorsqu'il arrive à destination finale, même s'il traverse
des réseaux avec un plus grand MTU, les routeurs
ne réassemblent pas les petits fragments.

Réseau1
MTU=1500 Réseau
2
Routeur MTU=4
020
Donnée:3500
octets

76
Remarques

• Chaque fragment est routé de manière


totalement indépendante des autres
fragments du datagramme d'où il provient.

• Le destinataire final réassemble les


fragments dont les champs
identification,@destinataire,@émetteur et
protocole sont identiques.

77
Remarques
• La durée de vie (TTL) indique le nombre
maximal de routeurs que peut traverser le
datagramme. Elle est initialisée à N (souvent
32 ou 64) par la station émettrice et
décrémenté de 1 par chaque routeur qui le
reçoit.
• Lorsqu'un routeur reçoit un datagramme dont
la durée de vie est nulle, il le détruit et envoie
à l'expéditeur un message ICMP.
=> Ainsi, il est impossible qu'un datagramme
«tourne» indéfiniment dans un internet.
78
Remarques
• Le destinataire final qui reçoit un premier fragment d'un
datagramme arme un temporisateur de réassemblage, c'est-à-dire
un délai maximal d'attente de tous les fragments.

Si, passé ce délai, tous les fragments ne sont pas arrivés il détruit
les fragments reçus et ne traite pas le datagramme.

• Plus précisément, l'ordinateur destinataire décrémente, à


intervalles réguliers, de une unité le champ TTL de chaque
fragment en attente de réassemblage.
• Cette technique permet également de ne pas faire coexister au
même instant deux datagrammes avec le même identifiant.

79
Exercice2
• Soit un réseau constitué de 5 routeurs IP
(R1 … R5) et de trois stations A, B et C
qui doivent
communiquer.
• Chaque liaison entre hôtes (station ou
routeur) est étiquetée par son MTU.
• On suppose que A doit émettre 1520
octets de données vers B.
80
Exercice2

81
Exercice2
Question:
• Décrivez les fragmentations réalisées pour
la transmission d’un paquet IP émis par A
à destination de B, en supposant que le
routeur R1 transmet les trames qu’il reçoit
vers R2-R3. Préciser pour chaque
fragment de paquet, les valeurs des
champs (Identification, More Fragment ,
Offset).
• On supposera que la valeur initiale de
l’Identifiant du paquet est 71.

82
Réponse
1500 octets
20
1080 octets 420 octets
octets
Entête IP
20 1080 octets ID=71
octets
Entête IP MF=1
A- OFFSET=0
>R1
ID=71 20 420 octets
MF=0 octets
OFFSET=1080/ Entête IP
8=135

ID=71
20 octets 600 octets
MF=1
Entête IP OFFSET=0
ID=71
R1- 20 octets 480 octets MF=0
>R2 Entête IP
OFFSET=600
/8=75 83
Exercice de réflexion
1. De quelles informations dispose-t-on pour savoir qu'un
datagramme n’est pas fragmenté?
• Réponse
.Si MF = 0 et offset = 0 =>datagramme non fragmenté.
2. Comment est reconstitué un datagramme à l'arrivée ?

84
Exercice de réflexion
Réponse
Les fragments sont remis en ordre dans un buffer de
réception, grâce aux champs ID, offset, et MF.
3. Un serveur peut-il confondre deux fragments qui ont
les mêmes éléments suivants : IP source, IP
destination, et position fragment?
Réponse:Non, grâce au champ ID.

85
Routage ?

• Processus par lequel un élément (courrier, appels


téléphoniques, …) va être acheminé d’un endroit à
un autre.

• Ce rôle est assuré par des machines appelées


routeurs.

• Les routeurs sont des machines reliant au moins


un réseau .

86
Qu’est ce qu’un routage ?

87
C'est la même chose 
sur Internet !

88
Principe du Routage IP
• Chaque équipement du réseau sait atteindre un
équipement d’un autre réseau, s’il existe au
moins un équipement de routage pour
acheminer les paquets à l’extérieur du réseau
local.

89
Principe du routage IP

Question: Comment chaque hôte peut connaître le routeur par lequel il faut sortir pour
pouvoir atteindre un réseau extérieur ?
Réponse: Les informations de routage sont mémorisées dans la table de
routage des équipements.
90
Table de routage
• La table de routage contient:

 Adresse de destination
 Adresse du prochain routeur directement
accessible
 Interface

91
Exemple de table de routage

20.0.0.1 30.0.0.5 40.0.0.1

Reseau F Reseau G Reseau H Reseau


10.0.0.0 20.0.0.0 30.0.0.0 40.0.0.0

10.0.0.1 20.0.0.2 30.0.0.1

Table de routage de G

Pour atteindre les 10.0.0.0 20.0.0.0 30.0.0.0 40.0.0.0


machines du réseau

Router vers 20.0.0.1 direct direct 30.0.0.1


92
Exercice 2

1. Écrire la visualisation de la table de routage de la station


112.3.45.67 et du routeur R1.
2. Écrire celle de 175.110.28.82 sachant que l’on ne veut pas qu’elle
puisse communiquer avec les stations du réseau 112.0.0.0
93
Réponse
1/: La table de routage de la station 112.3.45.67 peut être la suivante :

Celle du routeur R1 peut être

94
Réponse

2)

95
Organigramme de routage
Masque réseau

datagramme @D &
@Rés(E)

@Rés_D
5 1
@Rés(D)#
@Rés(D)=
Erreur de routage @Rés(E)
@Rés(E)
Table de routage 4
2 3
∃ une ∃ une route ∃ une
route vers @D vers @Rés_D route par défaut Routage directe:Envoie
de datagramme

transmettre le
Datagramme au Router le router le datagramme vers
Routeur du prochain Datagramme la passerelle par défaut.
96
pas
Types de routage
 Statique :
Le routeur apprend ces routes quand l'administrateur
les entre manuellement.
route add [-net|-host] @IP_destination@ netmasque @IP_router
route del [-net|-host] @IP_destination netmasque @IP_router
route vers un réseau (net), ou vers un équipement (host)
route add default @IP_router

Exemples:
route add –net 192.168.100.0/24 198.168.2.1
route add default 198.168.1.1

97
Problèmes du routage statique

• Mise à jour manuelle de tous les équipements


du réseau.
Perte de temps

• Une station ne peut atteindre que les réseaux


qu’on lui indique par la commande route
• Boucle possible quand un lien est coupé.

98
Exemple

99
• Commandes pour R1
route add -net 192.168.1.0/24 172.16.2.2
route add –net 192.168.2.0/24 172.16.2.2
Question
• Est-ce que les paquets de PC1 peuvent atteindre les
réseaux 192.168.1.0/24 et 192.168.2.0/24?
Oui!
• Est-ce que cela veut dire que les paquets de ces
réseaux peuvent atteindre le réseau de PC1?
Non, car les routeurs R2 et R3 n’ont pas de route vers
le réseau 172.16.3.0/24

100
Types de routage
 dynamique
• Le routeur apprend ces routes de
manière automatique.

• Pour cela, on utilise un protocole de


routage:
 Permet des échanges d’informations
inter-routeurs
101
Routage dynamique
prend connaissance de toutes les routes
disponibles.
 insère les meilleures routes dans la
table de routage et supprime celles qui ne
sont plus valides.
Modifications automatiques de la table de
routage.

102
Routage dynamique
• Le procédé qu'utilise un protocole de routage pour déterminer la
meilleure route vers un réseau de destination s'appelle un
algorithme de routage.
• Il existe deux types de protocole
 protocole internes (RIP, OSPF,…)
Il existe deux algorithmes:
• Vecteur de distance ( distance vector)
• Etat de ligne (link state algorithm)
protocole externes ( EGP, BGP…)

103
Autonomous System (AS)
• Un Système Autonome est
" un ensemble de réseaux gérés par un
administrateur commun et partageant une stratégie
de routage commune ".

104
Les protocoles de routage
internes
• Les protocoles de routage internes
permettent le routage des informations à
l'intérieur d'un système autonome.

105
Les protocoles de routage externe

 Il s'agit d'un échange d'informations de routage


entre deux systèmes autonomes.
 Utilisés pour interconnecter les grands
réseaux.

Exemple:
EGP (exterior gateway protocol)
BGP(Border Gateway Protocol)

106
Les protocoles de routage externe

EGP
routeur externe

systeme autonome 107


vecteur de distance

108
Vecteur de distance
 Principe:
• Transmettre régulièrement des copies de table de
routage d’un routeur à l’autre.
• Ces mises à jour régulières entre les routeurs
permettent de communiquer les modifications
topologiques.

• Les algorithmes de routage à vecteur de distance


sont également appelés algorithmes Bellman-
Ford.

109
Vecteur de distance

Principe: Chaque routeur reçoit une table de routage


La même procédure
des routeurs est auxquels
voisins répétée étape
il est par étape dans
Le routeur B ajoute undirectement
toutes les directions entre les routeurs directement
connecté.
Le
nombre
routeurdeBvecteurs
adjacents. Le routeur B transmet
reçoit
(par exemple,
des un
la nouvelle table de
informations
nombre de sauts)du qui
routage à son voisin, le
routeur
allonge A.le vecteur de
routeur C.
distance.

110
Vecteur de distance

111
Exemple :

D
A
C

Questions :

• Table initiale pour chaque noeud ?


• Table de routage au noeud A ?

112
Réponses :

• A envoie le vecteur de distance (<A,0>, <B,1>, <C,4>)à


ses voisins B et C.

 Table de routage initiale du noeud A

Destination Coût Proch. Noeud

A 0 --
B 1 B
C 4 C

113
 Table de routage initiale du noeud D

Destination Coût Proch. Noeud

B 1 B
C 2 C
D 0 --

D envoie à C et B les vecteurs de distance (<B,1>, <C,2>,


<D,0>)
 Table de routage initiale du noeud C

Destination Coût Proch. Noeud

A 4 A
B 1 B
C 0 --
D 2 D

C envoie à A, et D les vecteurs de distance (<A,4>, <B,1>,


<C,0>, <D,2>)
114
 Table de routage initiale du noeud B

Destination Coût Proch. Noeud

A 1 A
B 0 --
C 1 C
D 1 D

B envoie à A,C et D les vecteurs de distance (<A,1>, <B,0>,


<C,1>, <D,1>)
Mise à jour de la Table de A parMise
B : à jour de la Table de A par C

Destination Coût Proch. Noeud Destination Coût Proch. Noeud

A 0 -- A 0 --
B 1 B B 1 B
C 4 2 C B C 2 B
D 2 B D 2 B

A reçoit de B les vecteurs de distance


A reçoit de C les vecteurs de
(<A,1>, <B,0>, <C,1>, <D,1>)
distance (<A,4>, <B,1>,
115
 d(A,B) = 1 ; d(A,C) = 2 ; d(A,D)= 2
<C,0>, <D,2>)
Question?
• Sur quels critères l'algorithme à vecteur de
distance évalue les informations de route qu'il
reçoit des autres routeurs?

Distance : exprimé en termes de coût


Direction: correspond à l'adresse du saut suivant

116
Vecteur de distance
Avantage :
• C’est simple .
Inconvénients :
• Convergence peut être longue dans un réseau de grande
dimension: calcul des routes réparti entre tous les
routeurs
• La notion de distance ne peut rendre compte de tout ...
• Le volume des informations échangées est directement
proportionnel aux nombres de réseaux.

117
Etat de liens
• Des qu'un lien change d'état, le périphérique qui a
détecté le changement envoie un paquet avec les
données de ce changement à tous les routeurs.

• Chaque routeur met donc à jour sa table avec les


données du paquet.

• Ce protocole est moins " lourd " que le DVP,


car il envoie beaucoup moins de paquet que lui et ne
risque donc pas de surcharger le réseau.

• Le principal protocole basé là-dessus est l'OSPF.


118
Protocole de routage à état de liens
⇒Un algorithme de routage à état de liens gère une
base de connaissances complète sur les routeurs
distants et leurs interconnexions.

• Ces algorithmes sont également appelés


algorithme de Dijkstras ou algorithme SPF
(shortest path first ou du plus court chemin
d’abord).

119
Protocole de routage à état de liens

120
Le routage à état de liens utilise
les éléments suivants:
• Mises à jour de routage à état de liens (LSA):
est un petit paquet d’informations de routage qui
est transmis entre les routeurs.
• Base de données:
ensemble d’informations rassemblées à partir des
mises à jour de routage à état de liens.
• L’algorithme du plus court chemin d’abord
(SPF):
est un calcul effectué sur la base de données qui
génère un arbre SPF.
• Tables de routage :
Une liste des chemins et des interfaces connus.
121
Processus de découverte du réseau
pour le routage à état de liens

122
Processus de découverte du réseau
pour le routage à état de liens

123
Processus de découverte du réseau
pour le routage à état de liens
• Chaque routeur génère une base de données
topologiques comprenant toutes les mises à jour
de routage à état de liens échangées.

• L’algorithme du plus court chemin d’abord (SPF)


calcule l’accessibilité aux réseaux.

124
Processus de découverte du réseau
pour le routage à état de liens
• Le routeur génère cette topologie logique
sous la forme d’un arbre dont il est la racine
et qui comporte tous les chemins possibles
menant à chaque réseau de l’interréseau
utilisant le protocole à état de liens.

• Ensuite, il trie ces chemins sur la base du


chemin le plus court.

125
Protocole de routage à état de liens
Inconvénients :
 Le calcul peut être très complexe.
 Surcharge du système lors des calculs
SPF ( demandent de gros CPU ).
 Mémoire requise à cause du nombre et de
la taille des tables

126
webographie
• http://sebsauvage.net/comprendre/tcpip/
• http://dept-info.labri.fr
• http://www.esto.ump.ma/
• http://www.cril.univ-artois.fr
• http://infodoc.iut.univ-aix.fr
• http://www.linux-france.org

127
Merci pour votre attention

128

Vous aimerez peut-être aussi