Vous êtes sur la page 1sur 53

La couche 3 du modèle OSI :

la couche réseau

H.Kochkar 1
Couche réseau : fonctionnalités
• Elle a en charge d’acheminer les paquets à travers le maillage
du réseau.

• Ses principales fonctions concernent l’adressage des éléments


constitutifs du réseau et le routage de l’information.

• Elle est présente dans le modèle TCP/IP. Ses fonctions


principales sont regroupées au sein du protocole IP.

• Cette couche doit permettre une transmission entre 2


machines.

• Celles-ci ne sont pas nécessairement directement connectées.

• Les données sont fragmentées en paquets. 2


Couche réseau : description (1)

couche transport couche transport


message message

couche réseau couche réseau couche réseau

paquet paquet

couche liaison couche liaison couche liaison

trame trame

couche physique couche physique couche physique

Emetteur Routeur Récepteur


3
Couche réseau : description (2)

• Sur la machine source


– la couche réseau récupère des messages de la couche
transport,
– pour chaque message, elle construit un (ou plusieurs)
paquet(s),
– la couche réseau envoie chaque paquet à la couche liaison.

• Sur chaque machine intermédiaire (routeur)


– la couche réseau récupère les paquets de la couche liaison,
– pour chacun d’entre eux, elle construit un nouveau
paquet,
– la couche réseau envoie chaque paquet à la couche liaison.4
Couche réseau : description (3)

• Sur la machine destination

– la couche réseau récupère des paquets de la


couche liaison,
– Elle extrait les données de chaque paquet et les
envoie à la couche transport

5
Commutation et routage
• Modes de communication
– Au niveau de la couche réseau, il ya deux modes de
communication
• mode connecté
• mode non connecté

– Mode sans connexion :


• Les données envoyées sont découpées en paquets
(taille fixe ou non selon les protocoles) appelés
datagramme
• Les datagrammes sont acheminés indépendamment les
uns des autres.
• Aucun contrôle sur le flux d’information n’est effectué
(pas d’évaluation préalable du trafic ou de la qualité du
transfert). 6
– Mode orienté connexion :
• Phase d’établissement de la connexion préalable à
l’envoi des données : un circuit virtuel est mis en place.
• Toutes les données émises emprunteront le même
chemin.
• L’acquittement depuis le récepteur se fait par le même
circuit virtuel
Service en mode connecté
• Une connexion
– doit être établie préalablement à tout envoi entre deux
machines.
– est appelée circuit virtuel
– Chaque paquet contient une référence représentant le
numéro du circuit virtuel.
• Une route est calculée à chaque connexion

8
• La commutation:
• La commutation est utilisée en mode connecté. Elle consiste à
:
– calculer une route au moment de la connexion
– emprunter cette route pour transférer chaque paquet tant
que dure la connexion.
• Les équipements permettant la commutation s’appellent des
commutateurs.
Service en mode non connecté
• Chaque paquet
– est transporté de façon indépendante.
– comprend l'adresse de destination
– est appelé datagramme

• Une route est calculée pour chaque paquet

• Le routage : est utilisé en mode non connecté. Il consiste à :


– calculer une route pour transférer chaque paquet
– Les équipements permettant le routage s’appellent des routeurs.

10
Le routage
• Principe du routage :
– Son rôle : acheminer un paquet de données à travers le
réseau.
– Fonction présente dans chaque nœud du maillage.
– Pour chaque paquet qui arrive sur l’un de ses ports en
entrée, la fonction de routage choisie de façon
déterministe le port de sortie vers lequel envoyer le
paquet.

11
– Deux classes d’algorithmes de routage :
• les algorithmes non adaptatifs utilisent des routes
statiques et ne tiennent pas compte de l’état des lignes
de transmission.
• les algorithmes adaptatifs précédent tout envoi de
données par une étude préalable du contexte. On parle
de routage dynamique. Ils sont plus complexes à mettre
en œuvre mais permettent de meilleures
performances.
Commutation / routage

Avantage de la commutation Avantage du routage


• Efficacité  Souplesse

– Temps : il n’est pas  chaque paquet peut


nécessaire de recalculer emprunter un chemin
une route pour chaque différent
paquet.  en cas de congestion
– Espace : une table de ou de panne, cela
commutation à chaque s’avère
nœud (commutateur) particulièrement
gère les références intéressant.
actives des circuits
virtuels. 13
Adressage
• Il est nécessaire de pouvoir désigner toute machine
quelconque accessible directement ou
indirectement.
• Il faut donc introduire un mécanisme d’adressage
universel.
• Adressage en mode non connecté : IP

14
Le protocole IP
• Un protocole de communication universel permettant
l’interconnexion de systèmes hétérogènes,
indépendamment des supports de transmission, de la
nature de l’architecture réseau, des systèmes
d’exploitation ou des applications utilisées.

• Le protocole de communication le plus répandu à


l’heure actuelle.

• Il fait partie intégrante de l’architecture TCP/IP.


• Souvent associé au protocole de transport TCP, il peut
néanmoins communiquer avec d’autres protocoles de
niveau transport.
• Sa première version est IPv4 mais une nouvelle
version (IPv6) normalisée depuis 1995 qui commence
à remplacer l’IPv4. 15
Le datagramme IP
• Le protocole IP fonctionne en mode non connecté :
IP propose un service non fiable et sans connexion.

• IP véhicule des entités (datagramme IP) entre deux


éléments du réseau.

• Il n’y a donc ni établissement ni libération de


connexion.

• Chaque paquet IP (datagramme IP) est envoyé


indépendamment des autres paquets et contient
l’adresse destination
• En cas de constat d’erreur dans le datagramme, il
n’est pas remis à la couche supérieure (transport) et
une demande de ré-émission est effectuée. 16
Format du datagramme IP (4)

• Drapeau, Identification, Position du fragment : le


Drapeau permet de savoir si le datagramme est
fragmenté ou non. S’il est fragmenté le champ
Identification indique à quel datagramme appartient
le fragment et sa position sera connue au moyen du
champ Position du fragment.
• Durée de vie : elle permet de limiter dans le temps la
présence d’un datagramme sur le réseau Internet,
elle décrémente chaque fois que le datagramme
traverse un routeur.
• . Protocole : il spécifie le protocole de niveau
transport à l’origine de l’émission afin d’être traité
par le même protocole à la réception.
17
• Total de contrôle de l’en-tête : il permet de
détecter des erreurs de transmission survenues
sur les champs de l’en-tête. La validité des
données n’est pas vérifiée au niveau réseau car
elle le sera au niveau transport.
• Adresse source et Adresse destination : ce sont
des adresses IP.
• Options : elles permettent, dans certains
contextes, d’augmenter les contraintes
d’acheminement du datagramme. Des bits de
Bourrage complètent ce champ jusqu’à une taille
fixe de 32 bits.
• Données : de longueurs variables, elles ne
peuvent cependant pas dépasser 65536 octets.
L’adressage IP (1)

• Chaque élément du réseau allant du simple LAN au


réseau Internet et travaillant avec le protocole IP doit
posséder une adresse unique : son adresse IP.

• On attribue des adresses IP aux ordinateurs, aux


routeurs, aux périphériques réseaux (imprimantes,
caméras, copieurs, etc.).

• Une adresse IP est une suite de 32 bits regroupant


l’identifiant réseau auquel appartient cet ordinateur
(rID) et l’identifiant de ce dernier à l’intérieur du
réseau (oID).
19
• 4 octets (IPv4):
– representés en decimal
– séparés par des points
– premiers octets : numéro de réseau : accordé par
un organisme appelé NIC (Network Information
Center).
– derniers octets : adresse locale de l'entité sur le
réseau
Les classes d’adresse
• Il existe cinq classes d’adresses IP notées : A, B, C, D
et E.
• On peut identifier la classe d’appartenance d’une
adresse à partir de ses premiers bits.
• Les adresses de classe A, B et C sont composées :
– d’une partie identifiant le réseau
– d’une partie identifiant la machine
• Les machines d’un même réseau doivent partager la
partie de l’adresse identifiant le réseau.
• En fonction de la taille du réseau, une adresse de
classe A, B ou C est utilisée.

21
• Les classes A et B sont totalement saturées et
plus aucune classe de ce type n’est disponible.
• La classe D est utilisée pour diffusion de
groupe (datagrammes envoyés à un groupe
d’ordinateurs).
• La classe E avait été prévue initialement pour
les évolutions futures d’Internet. Dans les
faits, elle a été très peu utile à cause de la
saturation rapide des classes A, B et C.
Classe A
• Le premier bit (poids fort) est à 0.
• Le premier octet est toujours inférieur à 128 (exclus).
• Par exemple : 26.102.0.3

adresse réseau adresse machine

23
Classe B
• Les 2 premiers bits (poids fort) sont à 10.
• Le premier octet est toujours compris entre 128 et 192 (exclus).
• Par exemple : 128.55.7.1

1 0

adresse réseau adresse machine

24
Classe C
• Les 3 premiers bits (poids fort) sont à 110.
• Le premier octet est toujours compris entre 192 et 224 (exclus).
• Par exemple : 196.121.56.1

1 1 0

adresse réseau adresse machine

25
Les différentes plages d’adresses

26
Adresses particulières
• octets de l'adresse locale à 0 : nom de réseau
• octets de l'adresse locale à 255 : adresse de diffusion sur le réseau
• numéro de réseau 169.254 : adresses « link-local » pour l'autoconguration
• adresses privées

• Les adresses dont le premier octet est 127 sont appelées adresses de
bouclage et désignent l’ordinateur local, quelques soient les valeurs des
trois autres octets.

• Ces adresses sont utilisées pour les échanges de données entre les
applications sur une même machine.

• Elles ne sont pas considérées comme des adresses de classe A.

27
Sous Réseaux (Subneting)
• Pourquoi fragmenter un réseau ?
– Optimisation des tables de routage
– Limiter les congestions.

• Principe :
– C’est un séparateur entre la partie réseau et la partie machine d’une
@ IP.
– Une fonction ET Logique pour déterminer l’@ réseau.

28
Net-id Host-id

Net-id Sous réseau Host-id

111111111111111 00000000000 0

Masque de sous réseau

Classe C : 255.255.255.0
Classe B : 255.255.0.0
Classe A : 255.0.0.0

29
Masque de sous réseaux
• On peut utiliser certains bits de l’identificateur pour découper le réseau
en plusieurs sous-réseaux.

• Pour pouvoir interpréter une adresse IP, un ordinateur doit connaître le


nombre de bits utilisés pour la partie de l’identifiant de machine dans un
sous-réseau.

• On associe à chaque adresse un masque de sous-réseau exprimé sur 32


bits comme l’adresse IP.

• Chaque bit du masque qui correspond à l’adresse du réseau est positionné


à 1 et chaque bit qui correspond à l’identifiant (numéro de machine) est
positionné à 0.

30
Sous réseaux : exemple
• Soit une adresse IP: 192.168.25.132
Traduit en binaire:
11000000.10101000.00011001.10000100
• Le masque de ce réseau: 255.255.255.128
Traduit en binaire:
11111111.11111111.11111111.10000000
• @ réseau:
11000000.10101000.00011001.10000000
Soit: 192.168.25.128
on peut supposer que les machines de mon réseau local ont pour adresse:
128 à 254…

31
Calcul de route
• Pour passer d'une machine source à une machine destination, il peut être
nécessaire de passer par plusieurs points intermédiaires.
• A chacun de ces points, une machine spécialisée effectue une opération
d’aiguillage.

• Routage :
– En mode connecté (commutation), le calcul d’une route s’effectue
uniquement lors de l'établissement de la connexion.

– En mode non connecté (routage), le calcul d’une route s’effectue pour


chaque paquet transmis.
– Routag e Statique
– Routage Dynamique

32
Problème de routage

Src

Dst

33
Routage dynamique
• Routage dynamique
– les tables de routage sont mises à jour régulièrement en fonction de
l'état du réseau
– plus complexe que le routage statique et surcharge du réseau par
l'échange d'informations de routage
– permet de choisir la route optimale
– le séquencement des paquets n'est plus assuré en mode non connecté
• Protocoles de routage dynamique
– routage par vecteur de distance (distance vector routing)
– routage à état des liens (link state routing)

Routage dynamique 34
Routage par vecteur de distance
• Un routeur utilisant un protocole de routage à vecteur de
distance ne connaît pas le chemin complet vers un réseau
de destination. Le routeur ne connaît que les éléments
suivants :
– La direction ou l’interface dans laquelle les paquets
doivent être transférés
– la distance jusqu’au réseau de destination
• Le nœud récepteur apprend ainsi qui son voisin est
capable de joindre et à quel coût
• Chaque routeur diffuse périodiquement à ses voisins sa
table de routage

Routage dynamique – Partie 1 35


• Mise à jour de la table sur le récepteur
– Si la table reçue contient une entrée qui n'est pas dans sa
table : il ajoute cette entrée dans sa table avec coût = coût
reçu + coût du lien de réception de la table
– Si la table reçue contient une entrée déjà présente : il met
à jour son entrée si coût connu > coût calculé ou si le coût
connu à changer de valeur

Routage dynamique – Partie 1 36


Routage par vecteur de distance

Routage dynamique – Partie 1 37


Routage par vecteur de distance

Routage dynamique – Partie 1 38


Routage par vecteur de distance

Routage dynamique – Partie 1 39


Routage par vecteur de distance
• Deux problèmes surviennent :
– un bouclage apparaît dans le réseau : tous les paquets à
destination de R3 oscillent entre R1 et R2
– l'algorithme ne converge plus : à l'échange suivant, R1 apprend de
R2 que désormais le coût pour joindre R3 en passant par R2 est de
3 -> il met sa table à jour (R3, R2, 4) ; de même, R2 va apprendre
de R1 que désormais le coût pour joindre R3 est de 4…
• Une solution :
– interdire à un noeud de signaler une destination qu'il connaît au
routeur par lequel il l'a apprise (split horizon)
– limiter la valeur infinie du coût à une petite valeur (16 dans RIP) ->
convergence dès que l'infini est atteint

Routage dynamique – Partie 1 40


Avantages
• Implémentation et maintenance simples.
• Faibles ressources requises
– ils nécessitent peu de mémoire pour stocker les
informations
– ils ne nécessitent pas non plus une UC puissante
– ils ne nécessitent généralement pas une bande passante
importante pour envoyer les mises à jour de routage.
Cependant, cela peut devenir un problème si vous
déployez un protocole à vecteur de distance dans un
réseau important

Routage dynamique – Partie 1 41


Inconvénients
• Convergence lente. L’utilisation de mises à jour périodiques
peut ralentir cette convergence
• Évolutivité limitée. La convergence lente peut limiter la taille
du réseau car des réseaux plus importants nécessitent
davantage de temps pour propager les informations de
routage
• Boucles de routage. Des boucles de routage peuvent survenir
lorsque des tables de routage incohérentes ne sont pas mises
à jour en raison d’une convergence lente dans un réseau
changeant

Routage dynamique – Partie 1 42


Routage à état des liens
• Problème du routage à vecteur de distance :
– la seule info que connaît un routeur est le coût pour atteindre chaque
destination
– la convergence peut être longue sur de grands réseaux
• Principe du routage à état des liens : chaque routeur doit
– découvrir les routeurs voisins et leur adresse réseau
– déterminer le coût pour atteindre chaque voisin
– construire un paquet spécial contenant son adresse, l'adresse du voisin et le
coût pour l'atteindre
– envoyer ce paquet à tous les autres routeurs
– calculer le chemin le plus court vers chaque routeur à partir de la matrice des
coûts

Routage dynamique – Partie 2 43


Routage à état des liens

• Chaque routeur a une vision complète de la topologie du


réseau à partir d'informations distribuées
• La matrice des coûts est construite à partir des
informations reçues des autres routeurs
• La topologie (graphe valué du réseau) est construite à
partir de la matrice de coûts
• La table de routage est construite à partir du graphe

Routage dynamique – Partie 2 44


Routage à état des liens
• En pratique
– découverte des voisins : envoi d'un paquet spécial, HELLO, auquel les
voisins répondent par leur identité
– mesure du coût de la ligne : envoi d'un paquet spécial, ECHO, qui est
aussitôt renvoyé par les voisins ; un timer mesure le temps A/R en
tenant compte ou non de la charge du lien (temps dans les files
d'attente)
– élaboration des paquets d'état de lien : à intervalles réguliers ou
quand un événement important se produit
– distribution des paquets : par inondation avec numérotation des
paquets et âge du paquet
– calcul de la nouvelle table : algorithme de Dijkstra

Routage dynamique – Partie 2 45


Routage à état des liens

Routage dynamique – Partie 2 46


Le protocole OSPF (Open Shortest Path First)

• Protocole de routage à état de liens qui a été développé pour remplacer le


protocole de routage à vecteur de distance RIP
• OSPF est un protocole de routage sans classe qui utilise le concept de
zones pour son évolutivité. Le document RFC 2328 définit la métrique
OSPF comme une valeur arbitraire nommée coût
• Le système d’exploitation Internet (IOS) de Cisco utilise la bande passante
comme métrique de coût du protocole OSPF
• Les principaux avantages d’OSPF sur RIP sont une convergence rapide et
une évolutivité vers la mise en œuvre de réseaux bien plus importants

Routage dynamique – Partie 2 47


Détection des voisins
• Les routeurs OSPF envoient des paquets Hello sur toutes
les interfaces OSPF pour déterminer s’il existe des voisins
sur ces liens. La réception d’un paquet Hello OSPF
confirme à un routeur qu’il existe un autre routeur OSPF
sur le lien.
• Les routeurs doivent s’entendre sur trois valeurs :
– l’intervalle Hello, indique la fréquence à laquelle un routeur OSPF
envoie des paquets Hello (10 sec par défaut et 30 sec sur les
segments d’accès NBMA)
– l’intervalle Dead (arrêt), période pendant laquelle le routeur
attendra de recevoir un paquet Hello avant de déclarer le voisin
« hors service » (40 sec et 120 sec pour les réseaux NBMA)
– le type de réseau, OSPF définit cinq types de réseau (Point à point,
Accès multiple avec diffusion, Accès NBMA, Point à multipoint, Liaisons
virtuelles)

Routage dynamique – Partie 2 48


Les protocoles ARP et RARP
• Chaque interface réseau possède une adresse physique unique
dépendante du type d’architecture
• L’adressage sur Internet est basé sur des adresses IP, de niveau réseau.
 Il faut donc faire le lien entre les deux adresses (IP et MAC) d’une même
machine : les protocoles ARP (Address Resolution Protocol) et RARP
(Reverse Address Resolution Protocol)

• ARP permet de faire correspondre une adresse MAC à une adresse IP


donnée et RARP permet l’inverse.

49
Le protocole ARP
• La résolution d’adresses est effectuée en trois étapes :
1) Le protocole ARP émet un datagramme particulier par diffusion à toutes les
stations du réseau et qui contient entre autre l’adresse IP à convertir
2) La station qui se reconnaît retourne un message (réponse ARP) à l’émetteur
avec son adresse MAC.
3) L’émetteur dispose alors de l’adresse physique du destinataire et ainsi la
couche liaison de données peut émettre les trames directement vers cette
adresse physique.

• Les adresses résolues sont placées dans un cache ce qui évite de


déclencher plusieurs requêtes lorsque plusieurs datagrammes doivent
être envoyés.

50
ARP
Une machine A veut obtenir l'adresse MAC d'une machine B :
A envoie un paquet ARP.request(MACA,IPA,0,IPB)
B répond par un paquet ARP.reply(MACB,IPB,MACA,IPA)
RARP
Objectif : Trouver une adresse IP a partir d'une adresse MAC
Comment ?
diffusion de l'adresse MAC
un serveur RARP renvoie l'adresse IP correspondante

51
Congestion (1)

• Trop de paquets présents dans le sous-réseau


 dégradation des performances

Idéale
Nombre de paquets reçus

Acceptable

Congestion

Nombre de paquets transmis

52
Congestion (2)

• Facteurs de la congestion :
– Performance CPU des routeurs
– Trafic trop important en entrée par rapport aux capacités des lignes en
sortie
– Taille insuffisante des mémoires tampons des différents routeurs.

• Contrôle de congestion = assurer que le sous-réseau est capable de


transporter le trafic présent
#
• Contrôle de flux = assurer le trafic point à point entre un émetteur et un
récepteur (= assurer que l’émetteur ne soit pas trop rapide vis à vis du
récepteur)

53

Vous aimerez peut-être aussi