0% ont trouvé ce document utile (0 vote)
90 vues268 pages

Cours Reseaux L3 Pro

Le document présente les concepts fondamentaux des réseaux et téléinformatique, y compris les topologies de réseaux (bus, étoile, anneau) et les types de réseaux (PAN, LAN, MAN, WAN). Il décrit également le modèle OSI en 7 couches, qui standardise les protocoles de communication entre systèmes informatiques. Enfin, il aborde des notions d'adressage, de commutation et de routage dans le contexte de l'interconnexion des réseaux.

Transféré par

Ciné max
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
90 vues268 pages

Cours Reseaux L3 Pro

Le document présente les concepts fondamentaux des réseaux et téléinformatique, y compris les topologies de réseaux (bus, étoile, anneau) et les types de réseaux (PAN, LAN, MAN, WAN). Il décrit également le modèle OSI en 7 couches, qui standardise les protocoles de communication entre systèmes informatiques. Enfin, il aborde des notions d'adressage, de commutation et de routage dans le contexte de l'interconnexion des réseaux.

Transféré par

Ciné max
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

REPUBLIQUE DU CAMEROUN REPUBLIC OF CAMEROON

Paix-Travail-Patrie Peace-work-fatherland
**** ****
MINISTERE DE L’ENSEIGNEMENT SUPERIEUR MINISTRY OF HIGHER EDUCATION
**** ****
INSTITUT SUPERIEUR HINTEL THE HIGHER INSTITUTE HINTEL
**** ****
DEPARTEMENT D’INFORMATIQUE DEPARTMENT OF COMPUTER SCIENCE

INSTITUT SUPERIEUR HINTEL

UE : RESEAU ET TELEINFORMATIQUE

Enseignant : Ing. BALLA MEKONGO JOSEPH AUBIN

ANNEE ACADEMIQUE : 2022-2023


Ensemble de systèmes informatiques (systèmes
d'exploitation différents)
Reliés entre eux directement ou indirectement
( liaison de 2 ou plusieurs ordinateurs )
Afin d'échanger des données (messageries, ...)
Ou de partager des ressources (transfert de
fichiers, exécution d'applications à distance)

2
Topologie des réseaux
Il en existe trois:
La topologie en bus
La topologie en étoile
La topologie en anneau

3
Topologie en bus
Tous les ordinateurs sont reliés à une même ligne
de transmission par l'intermédiaire de câble,
généralement coaxial.

4
Topologie en bus
Topologie facile à mettre, par contre si l'une des
connexions est défectueuse, c'est l'ensemble du
réseau qui est affecté.

5
Topologie en étoile
Les ordinateurs sont reliés à un hub.

Topologie en étoile

6
Si un ordinateur est débranché du hub (ou tombe en
panne) le reste du réseau n'est pas paralysé.

7
Topologie en étoile
En général en utilise plusieurs hubs.

8
Topologie en anneau

9
Les ordinateurs communiquent chacun à leur
tour, on a donc une boucle d'ordinateurs sur
laquelle chacun d'entre-eux va "avoir la parole"
successivement.

Topologie en anneau
10
En réalité les ordinateurs ne sont pas reliés en
boucle, mais sont reliés à un répartiteur qui va
gérer la communication entre les ordinateurs
qui lui sont reliés.

11
Types de réseaux
On distingue différents types de réseaux (privés)
selon leur taille (en terme de nombre de
machine), leur vitesse de transfert des données
ainsi que leur étendue.

12
Bus
Les bus que l'on trouve dans un ordinateur pour
relier ses différents composants (mémoires,
13
périphériques d'entrée-sortie, processeurs, ...)
peuvent être considérés comme des réseaux
dédiés à des tâches très spécifiques.
PAN (Personnal Area Network)
Un réseau personnel interconnecte (souvent par
des liaisons sans fil) des équipements personnels
comme un ordinateur portable, un agenda
électronique...
Un cluster est un groupe d'unités centrales reliées
entre elles de manière à agir comme un seul
14
ordinateur soit pour pouvoir faire de la
répartition de charges soit du calcul distribué.
LAN (Local Area Network)
Un réseau local peut s'étendre de quelques mètres
à quelques kilomètres et correspond au réseau
d'une entreprise.
Il est possible de distinguer deux modes de
fonctionnement :
dans un environnement d'"égal à égal" (en
anglais peer to peer (P2P)), dans lequel il n'y a
15
pas d'ordinateur central et chaque ordinateur a
un rôle similaire
dans un environnement "client/serveur", dans
lequel un ordinateur central fournit des services
réseau aux utilisateurs
MAN (Metropolitan Area Network)
Interconnecte plusieurs lieux situés dans une
même vile, par exemple les différents sites d'une
université ou d'une administration, chacun
possédant son propre réseau local.
16
WAN (Wide Area Network)
Un réseau étendu permet de communiquer à
l'échelle d'un pays, ou de la planète entière, les
infrastructures physiques pouvant être
terrestres ou spatiales à l'aide de satellites de
télécommunications.
Les WAN fonctionnent grâce à des routeurs qui
permettent de "choisir" le trajet le plus
approprié (en terme de temps ou de distance)
pour atteindre un nœud du réseau.
17
Le plus connu des WAN est Internet.
Pourquoi des protocoles et des
architectures de réseaux ?
Message

Processus A Message
Processus B

Le réseau permet aux processus d’échanger des


messages.
18
Condition : Définir des règles d’échange
normalisées pour chaque type d’application 
PROTOCOLE

19
Pourquoi des protocoles et des
architectures de réseaux ?

Machine
Message
Processus A Message
Processus B

20
Pourquoi des protocoles et des
architectures de réseaux ?

Machine 1 Machine 2
Un ou plusieurs liens
Message
Processus A Message
Processus B

21
La normalisation

Besoin de définir des protocoles normalisés ou


standardisés afin que seule l ’implémentation des
protocoles change
Standards de fait ou définis par des organismes privés
Organismes les plus connus :
– ISO : International Organisation for Standardisation
– ITU : International Telecommunication Union
– IEEE : Institute of Electrical and Electronic Engineers
Le modèle OSI de l'ISO
22
1977 : ISO (International Standard Organization –
Organisation Internationale de Normalisation) démarre
une réflexion sur une architecture de réseau en
couches
1983 : définition du modèle OSI
– Open : systèmes ouverts à la communication avec
d’autres systèmes
– Systems : ensemble des moyens informatiques
(matériel et logiciel) contribuant au traitement et
au transfert de l’information
– Interconnection
Le modèle OSI de l'ISO
23
propose une norme pour le nombre, le nom et la
fonction de chaque couche
garantit que 2 systèmes hétérogènes pourront
communiquer si :
– même ensemble de fonctions de communication
– fonctions organisées dans le même ensemble de
couches
– les couches paires partagent le même protocole

24
Le modèle OSI de l'ISO
basé sur 7 couches:
chaque couche:
– fourni des services à la couche supérieure
– utilise des services de la couche inférieure
– les données transférées par les services sont des
SDU= Service Data Unit
– échange de l’information suivant un protocole avec
des couches distantes de même niveaux

25
– les données transférées par ce protocole sont des
PDU= Protocol Data Unit
Définitions
Couche : ensemble d’entités participant à la
réalisation d’une partie de la communication.

Service : fonctionnalité rendue par une couche.

Primitive : fonction (au sens logiciel) permettant


d’accéder à un service.
26
7 (application) : interface vers les programmes et/ou les
utilisateurs
6 (présentation) : conversion de formats
5 (session) : synchronisation, établissement
4 (transport) : fiabilité/qualité de service (QoS) de bout
en bout
3 (réseau) : échange les données via des nœuds
intermédiaires
2 (liaison de données) : accès entre nœuds voisins
1 (physique) : modulation d’information élémentaire
( souvent 1 bit) sur le médium
0 : médium de transmission
27
La couche physique
Définit les spécifications électriques, mécaniques
et fonctionnelles des procédures assurant la
transmission de la liaison physique

r
28
Application  Norme ISO 10022

Présentation La couche physique


Session
Transport Gère la transmission des bits
Réseau de façon brute sur un lien
physique
Liaison de données
Physique
Transmet un flot de bit sans en
connaître la signification ou la
structure

29
Un bit envoyé à 1 par la source doit être reçu
comme un bit à 1 par la destination
Couche Physique : Codage et transmission
Codage : représenter une information sous
la forme d’une suite de 0 et de 1
 Transmission des informations codées

30
Couche Physique : Types de Médias
Câbles coaxiaux
Câbles à paires torsadées
Fibre optique
Liaisons sans fil
Couche Physique : Equipement - Répéteur
Reforme, régénère, resynchronise un signal sur
un brin du réseau
31
➱Augmentation de la distance couverte par le
réseau

➲Baisse des performances s’il y a trop de


répéteurs
Couche Physique : Equipement -
Concentrateur
Reforme, régénère, resynchronise un signal vers
plusieurs brins du réseau

32
➱Augmentation de la distance couverte par le
réseau

➲Baisse des performances s’il y a trop de


concentrateurs

33
Couche Physique : Topologie physique
La topologie physique détermine comment les
équipements réseaux sont reliés entre eux :
Bus
Étoile
Anneau
…

34
La couche liaison Assure un
Application transfert fiable des données mises sous
forme de trames
Présentation
Session
Transport
Réseau

Liaison de données
Physique  Gère l’adressage physique, la
topologie du réseau et son accès
 Norme ISO 886
35
Couche Liaison : Adresse physique
L’adresse physique est employée pour
l’acheminement dans les réseaux locaux (LAN)

L’adresse physique localise de manière unique


un équipement de couche liaison au sein d’un
réseau local

L’adresse physique est utilisée par la carte


réseau, le pont et le commutateur
36
Couche Liaison : Equipement - Carte
réseau
La carte réseau porte l’adresse physique
Elle assure le verrouillage de trame, le contrôle
d’accès au réseau (Media Access Control)
Varie en fonction du média et de la technologie
utilisé pour le réseau

37
Couche Liaison : Equipement - Pont
Un pont connecte entre-eux deux segments
LAN

38
Un pont peut filtrer, au moyen de l’adresse
contenue dans la trame, le trafic entre deux
segments LAN

39
Couche Liaison : Equipement -
Commutateur
Assure la commutation (aiguillage) des trames
en fonction de l’adresse qu’elle porte

Allie les fonctionnalités d’un pont et d’un


concentrateur (pont multiport)

Augmente le débit d’un réseau

40
41
La couche réseau

Application
Présentation
Session
 Assure la connexion entre un
Transport hôte source et un hôte
destination
Réseau
 Etablit la sélection du chemin
Liaison de données (Routage)
Physique  Gère l’adressage logique
(Adressage) 42
Couche Réseau : Adresse logique
L’adresse logique est employée pour
l’acheminement entre les réseaux locaux

L’adresse logique localise de manière unique un


équipement de couche réseau au sein d’un
réseau WAN

L’adresse logique est uniquement utilisée par les


routeurs
43
Couche Réseau : Equipement - Routeur
Un routeur détermine, à partir de l’adresse
logique contenue dans le paquet, le meilleur
chemin pour atteindre le destinataire .

Un routeur permet de connecter des réseaux


utilisant des technologies différentes au niveau
de la couche liaison.

44
Application
Présentation
Session
La couche transport
Assure un transport fiable et de
Transport bout en bout, des données issues de
la couche session
Réseau
Détecte et corrige des erreurs
Liaison de données
Physique Contrôle le flux d'informations (ni perte, ni duplication)
La couche transport
45
Si la couche 3 réalise un service connecté fiable
alors la couche 4 devient simple.
Si la couche 3 fournit un service sans connexion
non fiable, alors la couche 4 doit réaliser la
connexion et la fiabilisation.

46
La couche session

Application
Présentation
Session
Transport
Réseau

Liaison de données
Physique
47
 Ouvre, gère et ferme les sessions entre deux systèmes
hôtes en communication.
 Synchronise le dialogue entre les couches de
présentation des deux hôtes
La couche session

Fiabilité assurée par les couches inférieures.


Gestion du dialogue :
– dialogue unidirectionnel ou bidirectionnel
– gestion du tour de parole
– synchronisation entre les 2 applications
48
Mécanisme de point de reprise en cas
d’interruption dans le transfert d’informations.
La couche session communication
simplex : communication dans 1 sens
half-duplex : communication dans les 2 sens
mais 1 seul à la fois (aussi appelé communication
à l’alternat)
full-duplex : communication simultanée dans les
2 sens

49
La couche présentation

Application
Présentation
Session
Transport
Réseau

Liaison de données
Physique
50
La couche application

Fournit les services réseau aux applications de l'utilisateur

Application
Présentation
Session
Transport
Réseau

Liaison de données
Physique
51
La couche application

Permet de fournir des protocoles normalisés


d’applications réseaux :
– transfert de fichiers
– messagerie électronique
– gestion et administration de réseaux
– consultation de serveurs et de bases de données
– …

52
Chapitre I: Interconnexion de
réseaux
( Généralités )
Pour transférer un message le service de transfert
doit connaître :
• l’adresse de la machine de destination
• sa boîte aux lettres

Ce service se décompose en deux parties :


• le transfert entre machines
53
• le transfert entre boîtes aux lettres
Interconnexion de réseaux (Adressage)
Adressage = identification sans ambiguïté d’une machine
dans un grand réseau.

Une machine doit être accessible aussi bien par des


humains que par d'autres machines, elle se présente
sous la forme :
● D’un nom (mnémotechnique pour les utilisateurs)

● D’une adresse (code numérique) L'adresse doit :

● prendre en charge un grand nombre de machines

54
● faciliter la localisation
● être gérée au niveau mondial

Interconnexion de réseaux
( Commutation )
Commutation = politique d'échange des données
Commutation de circuits
Création d'un chemin (virtuel) entre deux
machines pour toute la durée de l'échange
Autres appellations : Circuit Virtuel - Mode
connect
55
Commutation de données ou de paquets
Affecter un chemin pour la durée de transfert
d'un paquet
Autres appellations : Datagramme - Mode non
connecté
Interconnexion de réseaux (Routage)
Routage = processus permettant à un paquet
d’être acheminé vers le destinataire lorsque
celui-ci n’est pas sur le même réseau physique

56
que l’émetteur (en fonction de la politique
choisie).

Le routeur réalise le choix du chemin en


appliquant un algorithme particulier à partir de
tables de routage.
Interconnexion de réseaux (Adressage
IP)
IP est un protocole à commutation de paquets :

57
• service sans connexion (paquets traités
indépendamment les uns des autres)
• remise de paquets non garantie.

Protocole non fiable

IP défini :
• une fonction d’adressage
• une structure pour le transfert des données
( datagramme )
• une fonction de routage
58
Interconnexion de réseaux (Adressage
IP)
✦ Adressage binaire compact assurant un routage
efficace
✦ Utilisation de noms pour identifier des
machines
✦ Une adresse = 32 bits dite "internet address" ou
"IP address" constituée d'une paire (n° réseau,
n° machine).

59
✦ Cette paire est structurée de manière à définir
cinq classes d'adresse
Interconnexion de réseaux (Adressage
IP)
✦ Une adresse se note sous la forme de quatre entiers
décimaux séparés par un point, chaque entier
représentant un octet de l'adresse IP :

Ex : [Link]
✦ Adresses particulières :

60
[Link] représente un hôte inconnu
[Link] représente tous les hôtes
[Link] machine locale (localhost)
 Ces valeurs ne peuvent être utilisées comme adresses

61
Interconnexion de réseaux
(Classes d'adresses IP)
0 8 16 24 31

A 0 N° Réseau N° Machine

B 10 N° Réseau N° Machine

C 110 N° Réseau N° Machine

D 1110 Multicast

E 11110 Réservé 62
Interconnexion de réseaux
( Classes d'adresses IP )
Classe A :
Il est possible de créer 27=128 réseaux possédant
chacun 224=16777216 hôtes
Classe B :
Il est possible de créer 214=16384 réseaux
possédant chacun 216=65536 hôtes Classe
C:

63
Il est possible de créer 221=2097152 réseaux
possédant chacun 28=256 hôtes
Interconnexion de réseaux
(Classes d'adresses IP)
Classe A :
[Link] → [Link]
Classe B :
[Link] → [Link]
Classe C :
[Link] → [Link]
Classe D :
64
[Link] → [Link]
Classe E :
[Link] → [Link]
Adresses réservées

Désignation de la machine elle même


0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 [Link]

classe A [Link]
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Numéro de l’hôte classe B [Link]
classe C [Link]

65
Désignation du réseau lui même
classe A [Link]
Numéro du réseau 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 classe B
[Link] classe
C [Link]

Adresses réservées (suite)

Broadcast
Classe A [Link]
Numéro du réseau 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Classe B [Link]
Classe C [Link]

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 11 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 [Link]

66
Boucle locale pour les tests : [Link]
Adresses privées (ou non routables)
Adresse de classe A
[Link] ↔ [Link]

Adresses de classe B
[Link] ↔ [Link]

67
Adresses de classe C
[Link] ↔ [Link]
Faiblesse de l’adressage IP
• L’adressage IP fait référence non pas à un
ordinateur mais à un point d’entrée du réseau →
ordinateur déplacé ⇒ modification de son adresse IP
• Croissance d’un réseau qui dépasse 255 ordinateurs
⇒ il faut obtenir une adresse de classe B et modifier
les adresse réseaux : long + difficile à mettre au
point
68
Faiblesse de l’adressage IP
• Le routage utilise la partie réseau de l’adresse
IP ⇒ la route empruntée pour rejoindre une
machine à plusieurs adresses IP dépend de
l’adresse réseau fournie.
• La connaissance d’une adresse IP peut être
insuffisante pour atteindre une machine (à
plusieurs adresses IP).
Les sous réseaux
69
On peut découper un réseau en plusieurs entités
à usage interne, alors que l’ensemble continue à
se comporter comme un seul réseau vis-à-vis de
l’extérieur.
Ces entités sont appelés des sous-réseaux.
Le champ d’identification de l’ordinateur est
subdivisé en 2 parties : N° sous réseau et N°
machine.
BUT :
faciliter l’administration du réseau.
70
séparer les machines sensibles.

71
Les sous réseaux
La partie N° de machine est découpée en deux.
Une pour le N° de sous réseau et une pour la
partie N° de machine.

N° Réseau N° Machine

N° Réseau S. Réseau N° Machine


72
Les sous réseaux : choix
Le choix se fait en fonction des besoins et des
limites:
Une plage est allouée par le fournisseur d’accès.
Un nombre de machines qui peut croître.
Perspectives d’évolution site.
Exemple de sous-réseaux
Un réseau de classe B : 16 bits pour N° machine
73
6 bits pour identifier le sous-réseau
10 bits pour la machine
⇒ permet de définir 64 réseaux locaux

10 N° réseau N° machine
ss_ré
N° réseau N° machine
10 s
14 6 10
Les masques de sous réseaux
74
Pour réaliser un découpage du réseau, on
dispose des masque de sous réseaux (subnet
mask).
Sans découpage, les bits correspondant au N°
réseau sont tous mis à 1, les autres à 0.
Les masques par défaut
Classe A :
11111111.00000000.00000000.00000000 →
[Link]
75
Classe B :
11111111. 11111111.00000000.00000000 →
255. [Link]

Classe C :
11111111.11111111.11111111.00000000 →
[Link]
Masque de sous-réseaux

76
Les bits correspondant à id_res et à la partie
désignant le sous-réseau de id_ord sont tous mis
à 1, les autres à 0.
Pour trouver l’adresse du sous-réseau auquel
appartient un ordinateur, on fait un ET logique
entre le masque de sous-réseau du réseau et
l’adresse IP de l’ordinateur.
Il est recommandé d’avoir des bits à 1 contiguës
dans ses masques.

77
Exemple de masque
adresse réseau : [Link]
sous-réseau 1 : [Link] sous-
réseau 2 : [Link]

masque : 111…11111110000000000

[Link]
Utilisation du masque
78
À quel sous-réseau appartient la machine d’adresse IP
[Link] ?
10000010 00110010 00001111 00000110
ETlogique
11111111 11111111 11111100 00000000

10000010 00110010 00001100 00000000


→ Elle appartient au sous réseau [Link]

79
Remarque
Les bits du masque identifiant sous-réseau et machine
peuvent ne pas être contigus :
11111111 11111111 00011000 01000000
([Link])

80
Exemple de découpage
Si on veut découper un réseau de classe C en deux
sous réseaux, on utilise le masque
[Link] (12810=100000002).
Après découpage, on obtient 256/2-2=126 adresses.
On obtient 126x2=252 adresses.
Les bornes de chaque sous réseau sont :
s.réseaux1.0 s.réseaux1.127
s.réseaux2.128 s.réseaux1.255
81
Exemple de découpage (classe C)
Nombre de Valeur binaire Valeur Nombre de
s. réseaux décimale machines

2 1000 0000 128 252

4 1100 0000 192 248

8 1110 0000 224 240

16 1111 0000 240 224


82
32 1111 1000 248 192

64 1111 1100 252 128


Exercice
Le masque de sous réseau [Link] peut être
utilisé pour des adresses de :
a. classe B et classe C
b. classe C uniquement
c. classe A et classe B
83
d. classe B uniquement
e. classe A uniquement
Exercice
• Soit l’adresse IP = [Link]
Masque de sous réseau = [Link]
Donner le numéro de sous réseau.
• Soit l’adresse IP = [Link]
Masque de sous réseau = [Link]
Donner le numéro de sous réseau.
84
Exemple de découpage en 4 SR (A, B)
Classe Masque de SR Sous Zone d’adressage
réseau
A Sr1 [Link] à [Link] [Link] [Link] Sr2
[Link] à [Link]
Sr3 [Link] à [Link]
Sr4 [Link] à [Link]
Sr1 [Link] à [Link]
B
[Link] [Link] Sr2 [Link] à [Link]
Sr3 [Link] à [Link]

85
Sr4 [Link] à [Link]
Exemple de découpage en 4 SR (C)
Classe Masque de SR Sous Zone d’adressage
réseau
C [Link] Sr1 [Link] à [Link]
[Link]
Sr2 [Link] à [Link]
Sr3 [Link] à
[Link]

86
Sr4 [Link] à
[Link]

87
88
Exemple de découpage en 4 SR (C)
Classe Sous Adresse de réseau Adresse de diffusion
réseau
C Sr1 [Link] [Link]
[Link]
Sr2 [Link] [Link]

Sr3 [Link] [Link]

Sr4 [Link] [Link]

Notation /n
89
/n à la suite d ’une adresse IP indique que les n
premiers bits servent au routage. n représente
donc la longueur du masque de réseau.

/8 [Link] 11111111. 00000000. 00000000.00000000


/16 [Link] 11111111. 11111111. 00000000.00000000
/19 [Link] 11111111. 11111111. 11100000.00000000

90
Adressage physique
Dans le cas d’une liaison multipoint, il est
nécessaire de disposer d’une adresse physique
pour chaque machine.

Adresse de A ? Adresse de B ? Adresse de C ? Adresse de D ?

A B C D

91
Adresse MAC (Media Access Control)
Les réseaux Ethernet, Token Ring et FDDI
utilisent le même type d’adressage : l’adressage
MAC.
Cette adresse (sur 48 bits) permet d’identifier de
manière unique un nœud dans le monde.
La notation hexadécimale qui est utilisé
( aa-aa-aa-aa-aa-aa )

92
Format d’une adresse MAC

I/G U/L Adresse Constructeur Sous-adresse

1 bit 22 bits 24 bits


I/G (Individual/Group)
– si le bit est à 0 alors l’adresse spécifie une machine unique
(et non un groupe).
U/L (Universal/Local)
– si le bit est à 0 alors l’adresse est universelle et respecte le
format de l’IEEE.

93
Adresse Constructeur
Une adresse universelle est attribuée par l’IEEE à
chaque constructeur.

Exemple:
Constructeur Adresse (3 octets)
Cisco 00-00-0 C
00-00-D8, 00-20AF,
02-60-8 C, 08-00-
3Com 02
Intel 00- AA -00
IBM 08-00-5A 95

95
Sous-adresse
La partie sous-adresse est propre au
constructeur. Cette partie peut être identique
pour deux constructeurs différents.

Adresse Constructeur (unique) + Sous-adresse (non unique)

Adresse MAC (unique)

Exemple d’adresse MAC


96
00-0F-20-29-54-A0
Types d’adressage
Adresse pour la diffusion générale
( broadcasting) : tous les bits à 1
Adresse pour la diffusion restreinte (
multicasting) : bit I/G à 1
Adresse correspondant à un unique destinataire
(unicasting) : bit I/G à 0
Protocole ARP

97
✦ Objectif : La communication entre machines ne peut
s'effectuer qu'à travers l'interface physique or les
applications ne connaissant que des adresses IP,
comment établir le lien adresse IP / adresse physique?
✦ Le protocole: ARP (Adress Resolution Protocol )
permet de fournir à une machine donnée
l'adresse physique d'une autre machine située
sur le même réseau à partir de l'adresse IP
✦ Technique : Une machine émet un message contenant
l’adresse IP dont elle veut l’adresse physique

98
La machine concernée répond; les autres
machines ne répondent pas
Protocole RARP
✦ Objectif : L'adresse IP d'une machine est
configurable (elle dépend du réseau sur lequel
elle se trouve) et est souvent enregistrée sur la
mémoire secondaire où le système d'exploitation
l'accède au démarrage.
Ce fonctionnement usuel n'est plus possible dès
lors que la machine est une station sans
99
mémoire secondaire. Il faut déterminer un
mécanisme permettant à la station d'obtenir
son adresse IP depuis le réseau.
Protocole RARP
✦ Le protocole RARP (Reverse Adress Resolution
Protocol) permet d'obtenir son adresse IP à
partir de l'adresse physique qui lui est associée.
✦ Technique

100
On utilise un serveur RARP sur le réseau
physique qui fourni les adresses IP associées aux
adresses physiques des stations du réseau.
Protocole DHCP
✦ Le protocole DHCP (Dynamic Host
Configuration Protocol) est un protocole de
configuration dynamique d’hôtes. Il se base sur
un serveur qui permet d’attribuer des
adresses IP aux machines qui en font la
demande.
101
✦ Remarque: pour limiter le nombre d’adresses
allouées, il est possible de fixer une période fixe
d’allocation. Juste avant la fin de cette période,
la machine doit renouveler sa demande.
Protocole ICMP
✦ Beaucoup d’erreurs sont rencontrées sur l’Internet :
● machine destination déconnectée

● durée de vie du datagramme expirée ●


congestion de passerelles
intermédiaires.

102
✦ Si une passerelle détecte un problème sur un
datagramme IP, elle le détruit et émet un message
ICMP (Internet Control Message Protocol) pour
informer l’émetteur initial.
✦ Les messages ICMP sont véhiculés à l’intérieur de
datagrammes IP et sont routés comme n’importe quel
datagramme IP sur l’internet.
Protocole ICMP
Une erreur engendrée par un message ICMP ne peut
donner naissance à un autre message ICMP (pas d’effet
cumulatif)

103
Les informations contenues dans un message ICMP
sont :
TYPE 8 bits ; type de message
CODE 8 bits ; informations complémentaires
CHECKSUM 16 bits ; champ de contrôle
HEAD-DATA en-tête du datagramme incriminé
avec 64 premiers bits des données.
Les différents messages
TYPE Message ICMP
0 Echo Reply
3 Destination Unreachable

104
4 Source Quench
5 Redirect (change a route)
8 Echo Request
11 Time Exceeded (TTL)
12 Parameter Problem with a
Datagram
13 Timestamp Request
14 Timestamp Reply
17 Address Mask Request
18 Address Mask Reply

Exemples de messages
Demande d’écho et réponse d’écho
105
– permet à une machine ou un routeur de déterminer la
validité d’un chemin sur le réseau
– Utilisé par les outils tels ping et traceroute
Synchronisation des horloges
– Les horloges de deux machines qui diffèrent de manière
importante peuvent poser des problèmes pour des logiciels
distribués
– Une machine peut émettre une demande d’horodatage à
une autre susceptible de répondre en donnant l’heure
d’arrivée de la demande et l’heure de départ de la réponse.
– L’émetteur peut alors estimer le temps de transit ainsi que
la différence entre les horloges locale et distante.
Les messages d’erreur
106
Lorsqu’un routeur émet un message ICMP de type «
destination inaccessible », le champ code précise :
– 0 Network Unreachable
– 1 Host Unreachable
– 2 Protocol Unreachable
– 3 Port Unreachable
– 4 Fragmentation Needed and DF set
– 5 Source Route Failed
– 6 Destination Network Unknown
– 7 Destination Host Unknown
– 8 Source Host Isolated
– 9 Destination network administratively prohibited

107
– 10 Destination host administratively prohibited
– 11 Network Unreachable for type of Service
– 12 Host Unreachable for type of Service

DNS
✦ Objectif : Un utilisateur mémorise plus facilement un
nom de machine sous forme textuelle or les
applications ne connaissant que des adresses IP,
comment établir le lien nom de machine / adresse IP?
✦ Le DNS (Domain Name Service )
Objectif : fournir à une machine donnée l'adresse
IP de la machine a atteindre.
108
✦ Technique :
La machine émet au serveur DNS un message
contenant le nom de la machine à atteindre
La machine concernée répond en renvoyant l’adresse
IP, ou sollicite un autre serveur DNS.
Le principe
[Link] identifie la machine www
sur le réseau [Link]
Le système est mis en œuvre par une base de
données distribuée au niveau mondial
109
Les noms sont gérés au niveau mondial
basé sur le modèle client/serveur
le logiciel client interroge un serveur de noms

110
Architecture DNS

Demande adresse
???
[Link]
.Fm
HO

Serveurs
Réponse
DNS
[Link]

111
L’espace Nom de domaine
 Chaque unité de donnée dans la base DNS est
indexée par un nom
 Les noms constituent un chemin dans un arbre
appelé l’espace Nom de domaine

• Chaque noeud est identifié par un nom


• la racine (root) est identifiée par «.» 112

• il y a 127 niveaux au maximum


Les noms de domaine
Un nom de domaine est la séquence de labels depuis le
noeud de l’arbre correspondant jusqu’à la racine
.

Fm

ac

univ-QGHU
H
sciences1

113
Deux noeuds fils ne peuvent avoir le même nom
 Unicité d’un nom de domaine au niveau mondial
Le domaine
Un domaine est un sous-arbre

114
.
Domaine complet

Fm Domaine Fm

ac Domaine ac

univ-QGHU Domaine univ-QGHU


H H
sciences1

Domaines et sous-domaines

115
le domaine Fm comprend le noeud Fm et tous les
noeuds contenus dans tous les sous-domaines de Fm Un
nom de domaine est un index dans la base DNS
– [Link] pointe vers une adresse IP
– [Link] pointe vers des informations de routage,
de courrier électronique et éventuellement des
informations de sousdomaines
– FP
pointe vers des informations structurelles de sous-domaines
Domaines racine
Le système DNS impose peu de règles de nommage :
– noms < 63 caractères
116
– majuscules et minuscules non significatives
– pas de signification imposée pour les noms
Le premier niveau de l’espace DNS fait exception
– domaines racines prédéfinis :
• com : organisations commerciales ; [Link]
• edu : organisations concernant l’education ; [Link]
• gov : organisations gouvernementales ; [Link]
• mil : organisations militaires ; [Link]
• net : organisations réseau Internet ; [Link]
• org : organisations non commerciales ; [Link]
• int : organisations internationales ; [Link]
– arpa : domaine réservé à la résolution de nom inversée –
organisations nationales : ma, fr, uk, de ...

117
Domaines racine
Nouveaux domaines racine :
– biz, tv, info …

Les divisions en sous-domaines existent dans


certains pays et pas dans d’autres :
– [Link], [Link], [Link]
– [Link], [Link], ...
– [Link], [Link], ...

118
Lecture des noms de domaine
A l’inverse de l’adressage IP la partie la plus significative
se situe à gauche de la syntaxe :
[Link]
[Link]
vers le plus significatif
vers le plus significatif

[Link]

119
domaine FDPHURXQDLV (.Fm)

domaine de

l’[Link]

machine sciences1 du domaine [Link]

Délégation
Le système DNS est entièrement distribué au
niveau planétaire

120
Le mécanisme sous-jacent est la délégation de
domaine : à tout domaine est associé une
responsabilité administrative
Une organisation responsable d’un domaine peut
– découper le domaine en sous-domaines
– déléguer les sous-domaines à d’autres organisations :
• qui deviennent à leur tour responsables du (des)
sousdomaine(s) qui leurs sont délégué(s)
• peuvent, à leur tour, déléguer des sous-domaines des
sousdomaines qu’elles gèrent

121
Les serveurs de noms
Les logiciels qui gèrent les données de l’espace nom de
domaine sont appelés des serveurs de noms
(name servers)
Les serveurs de noms enregistrent les données propres
à une partie de l’espace nom de domaine dans une
zone.
Le serveur de noms a une « autorité administrative » sur
cette zone.
Un serveur de noms peut avoir autorité sur plusieurs
zones.

122
Une zone contient les informations d’un domaine sauf
celles qui sont déléguées.

123
Les serveurs de noms

c Fm
a

bc ab on qb domaine

zone

124
Types de serveurs de noms
Le serveur de nom primaire maintient la base de
données de la zone dont il a l’autorité administrative
Le serveur de nom secondaire obtient les données de la
zone via un autre serveur de noms qui a également
l’autorité administrative
– interroge périodiquement le serveur de noms primaire et met
à jour les données
Il y a un serveur primaire et généralement plusieurs
secondaires
La redondance permet la défaillance éventuelle du
primaire et du (des) secondaire(s)
125
Un serveur de noms peut être primaire pour une (
des) zone(s) et secondaire pour d’autre(s ).
Résolution de noms
 Les «resolvers» sont les processus clients qui contactent
les serveurs de noms
 ils contactent un serveur (dont l’(les) adresse(s) est
(sont) configurée(s) sur sa machine), interprète les
réponses, retourne l’information au logiciel appelant et
gère un cache (selon la mise en œuvre)

126
 Le serveur serveur de noms interroge également
d’autres serveurs de noms, lorsqu’il n’a pas autorité
sur la zone requise (fonctionnement itératif ou récursif)
 Si le serveur de noms est en dehors du domaine requis,
il peut être amené à contacter un serveur racine
Serveurs racine
Les serveurs racine connaissent les serveurs de nom
ayant autorité sur tous les domaines racine
Les serveurs racine connaissent au moins les serveurs de
noms pouvant résoudre le premier niveau (.com, .edu,
.ma, ...)

127
il est indispensable que les serveurs racine soient
opérationnels sinon plus de communication sur
l’Internet
– multiplicité des serveurs racines
– actuellement jusqu’à 14 éparpillés sur la planète
– chaque serveur racine reçoit environ 100000 requêtes / heure
Création de sous réseaux virtuels
Un réseau de classe C ne permet de créer que
254 hôtes : le réseau de l'université ne peut
avoir que 254 adresse IP, or l'université dispose

128
de plus de 1000 (chiffre estimatif) ordinateurs
qui sont connectés à Internet!
Pour pourvoir connecter tous ces machines à
Internet on utilise des passerelles.
Passerelle
Une passerelle (Gateway) est une machine qui
dispose de deux (ou plusieurs) cartes réseaux.

129
Une carte avec une adresse IP réelle et les autres
cartes avec des adresses privés choisis par
l'administrateur.

130
Exemple : Faculté des Sciences
Université Med 1er DNS
([Link]) [Link]
[Link]

Faculté des Sciences Internet


[Link]
Passerelle
[Link] ping [Link]
[Link] 131
[Link]
Configuration d'un réseau sous
Windows
Clic droit sur « Favoris Réseaux », puis un clic sur propriétés

132
Configuration d'un réseau sous
Windows
Clic droit sur l'icône «Connexion au réseau local», puis puis un clic sur propriétés
133
Configuration d'un réseau sous
Windows
134
Double-clic « Protocole Internet
( TCP/IP) »

135
Saisir les informations

136
Configuration réseau sous Linux
mode console
Configuration de l'IP et du masque de sous réseau
ifconfig eth0 [Link] netmask [Link] up
Configuration du passerelle route add default gw
[Link]

Pour avoir de l'aide sur une commande :

137
man commande
man route

138
Configuration réseau sous Linux
mode console
Pour la configuration du DNS, mettre dans le
fichier /etc/[Link]

search [Link]
nameserver [Link]
nameserver [Link]

139
Configuration réseau sous Linux
mode console
Fichier /etc/hosts (pour la configuration DNS local)
[Link] [Link] localhost
[Link] [Link] m10-bis
[Link] [Link] m10

140
Le routage
➢Pour passer d'une machine source à une machine
destination, il peut être nécessaire de passer par
plusieurs points intermédiaires.

➢Pour faire transiter des informations depuis un


réseau vers un autre réseau on utilise des
passerelles ou le plus souvent des routeurs.

141
➢Les routeurs possèdent une connexion sur
chacun des réseaux qu’ils interconnectent.
Routeurs
➢Les routeurs disposent de plusieurs adresses
IP et plusieurs adresses physiques : ➢ 1
adresse physique par interface ➢1 adresse IP
par réseau.
➢Ils sont chargés de l’acheminement des paquets
IP.

142
Interconnexion simple

Réseau A R1 Réseau B

R1 transfère sur le réseau B, les paquets circulant sur le réseau


A et destinés au réseau B
143
interconnexion multiple

Réseau A R1 Réseau B R2 Réseau C

➢R1 transfère sur le réseau B, les paquets circulant sur le réseau A


et destinés aux réseaux B et C.
➢R1 doit avoir connaissance de la topologie du réseau, à savoir que
C est accessible depuis le réseau B.

144
➢Le routage n'est pas effectué sur la base de la machine
destinataire mais sur la base du réseau destinataire

145
Problème du routage

Source

Destination
Table de routage
146
➢Les routeurs décident de la route à faire suivre
aux paquets IP par consultation d’une table de
routage.
➢La maintenance des tables de routages est une
opération fondamentale. Elle peut être
manuelle, statique ou dynamique.
Table de routage
Ne contiennent que les identifiants réseau des
adresses IP.

147
La table contient, pour chaque numéro de réseau
à atteindre, l’adresse IP du routeur le plus
proche.
Chaque routeur possède une liste de couples
(réseau, 0) [définit comment accéder à un réseau
distant] ou (ce_réseau, ordinateur) [comment
accéder à un ordinateur du réseau local].
Table de routage (exemple)
destination masque passerelle interface

148
[Link] [Link] [Link] [Link]
[Link] [Link] [Link] [Link]
[Link] [Link] [Link] [Link]
[Link] [Link] [Link] [Link]
[Link] [Link] [Link] [Link]
[Link] [Link] [Link] [Link]
[Link] [Link] [Link] [Link]

149
[Link]
eth0
[Link] RA [Link]
eth1

[Link]
table de routage
réseau interface
[Link] [Link] eth0
[Link] eth1
[Link]
[Link]

table de routage de RB
[Link]
destination passerelle
[Link] [Link]
[Link] [Link] [Link]
eth0 eth [Link] [Link]
2
RB 150
[Link] eth1
Méthode de routage
extraire adresse
IP destinataire

destination adresse
non accessible non locale

utiliser la table oui oui


de routage pour
déterminer le
prochain routeur déterminer le paquet
adresse physique est arrivé
et transmettre sur
l’interface adéquat 151
Route par défaut
Une route par défaut permet d’acheminer un
paquet dont la destination ne correspond à
aucune autre route de la table de routage

152
Route par défaut

153
Table de routage
[Link] eth0
[Link] eth1
[Link] eth2
Ailleurs eth2

eth0 eth1
eth2

154
Objet du routage
Trouver (calculer) le plus court chemin à
emprunter d'une source à une destination

Distance ? nombre de sauts distance


kilométrique temps moyen de
transmission longueur moyenne des
files d'attente
Propriétés d’un algorithme de routage
Exactitude
155
Simplicité
Robustesse (capacité d'adaptation aux pannes et
changement de topologie)
Stabilité (convergence vers un état d'équilibre)
Optimisation
Classes d'algorithmes de routage
Comment un routeur peut-il connaître les
différents chemins le reliant aux autres

156
routeurs ? routage statique routage
dynamique (protocole de routage)
Routage Statique

L’administrateur réseau spécifie manuellement la


table de routage
Inconvénients : l’administrateur doit faire les mises
à jour en cas de changement de la topologie du
réseau
Avantages : réduction de la charge du système, car
aucune mise à jour de routage n'est envoyée
157
Routage dynamique
L’administrateur réseau met en place un
protocole de routage établissant automatiquement
les chemins entre deux routeurs
Inconvénients : augmentation de la charge du
système, car des mises à jour de routage doivent
êtres envoyées
Avantages : prise en compte automatique d’un
changement de la topologie du réseau

158
Routage dynamique

159
160
Le protocole IP

Internet Protocol
( Protocole Internet )
Introduction
Les différents réseaux hétérogènes d’Internet
coopèrent grâce au protocole IP.
IP permet l’identification de tout équipement (
grâce à l’adressage IP ).
IP permet l’échange de datagrammes entre tout
couple d’équipements.
Objectif : faire le mieux possible pour
transmettre les datagrammes de leur source
vers leur destination.
Communication via IP
La couche transport (protocole TCP) découpe le
flux de données en datagrammes IP.

162
Chaque datagramme est transmis au travers du
réseau Internet. Il peut être re-découpé en
fragments IP.
À destination, tous les morceaux sont
réassemblés par la couche réseau pour
recomposer le datagramme.
La couche transport reconstitue le flux de
données initial pour la couche application.
Le service offert par IP

163
Le service offert par le protocole IP est dit non
fiable :
remise de paquets non garantie, sans
connexion (paquets traités
indépendamment les uns des autres),
pour le mieux (best effort, les paquets ne sont
pas éliminés sans raison).
Datagramme IP

164
Constitué de deux parties : un entête et des
données.
En-tête : partie fixe (20 octets) + partie
optionnelle Variable
Données : charge utile du datagramme

165
Format du Datagramme IP
0 4 8 16 31
Longueur Type de Longueur totale du datagramme en
Version
entête service octets

Identificateur DF MF Position du fragment

Durée de vie Protocole qui utilise IP Total de contrôle d’entête

Adresse IP émetteur

Adresse IP destination

Options (0 ou plusieurs mots)

Données
... 156
Datagramme IP
Chaque ordinateur convertit l’en-tête de sa
représentation locale vers la représentation
standard d’Internet.
Le récepteur effectue la conversion inverse.
Le champ données n’est pas converti.
Champs d’en-tête
Version : numéro de la version du protocole utilisé pour créer le
datagramme (4 bits) : version 4 ou 6.
167
Longueur entête : longueur de l’en-tête exprimée en mots de 32
bits (égal à 5 s’il n’y a pas d'option)
Type de service : précise le mode de gestion du datagramme (8
bits)
Priorité : 0 (normal) → 7 (supervision réseau) (3 bits)
Indicateurs D, T, R : indiquent le type d'acheminement
désiré du datagramme, permettant à un routeur de choisir
entre plusieurs routes (si elles existent) :
D signifie délai court, T signifie débit élevé et R signifie
grande fiabilité.
2 bits inutilisés
Champs d’en-tête
168
Longueur totale : en octets (16 bits)
Identificateur : permet au destinataire de savoir
à quel datagramme appartient un fragment
(16 bits )
Drapeau : 3 bits
DF : “ Don’t fragment ”
MF : “ More fragments ”
1 bit inutilisé
Champs d’en-tête

169
Position du fragment : localisation du déplacement du
fragment dans le datagramme (13 bits)
Durée de vie (TTL) : compteur utilisé pour limiter la
durée de vie des datagrammes (8 bits). Nombre
maximal de routeurs que ledatagramme peut
traverser :
décrémenté à chaque saut
détruit quand il passe à 0
Protocole : indique par un numéro à quel protocole
confier le contenu du datagramme (8 bits)
6 = TCP, 17 = UDP, 1 = ICMP.
Protocole de niveau supérieur ayant créé le datagramme

170
Champs d’en-tête
Total de contrôle d’en-tête : vérifie la validité de
l’en-tête, doit être recalculé à chaque saut (16
bits)
Adresse IP source : 32 bits
Adresse IP destination : 32 bits
Les options du datagramme
Le champ OPTIONS est facultatif et de longueur variable. Les
options concernent essentiellement des fonctionnalités de mise
au point. Une option est définie par un champ octet
171
classe
C Numéro d’option
d’option

●copie (C) indique que l'option doit être recopiée dans


tous les fragments (c=1) ou bien uniquement dans le
premier fragment (c=0).
●les bits classe d'option et numéro d'option indiquent le
type de l'option et une option particulière de ce type
Les options du datagramme
Enregistrement de route (classe = 0, option = 7)
Oblige chaque passerelle/routeur d'ajouter son
adresse dans la liste.
172
Routage strict prédéfini par l'émetteur (classe = 0,
option = 9) prédéfinit le routage qui doit être utilisé
dans l'interconnexion en indiquant la suite des
adresses IP.
Routage lâche prédéfini par l'émetteur (classe = 0,
option = 3) autorise, entre deux passages obligés, le
transit par d'autres intermédiaires.
Horodatage (classe = 2, option = 4) permet d'obtenir les
temps de passage (timestamp) des datagrammes dans
les routeurs. Exprimé en heure et date universelle

173
Le protocole UDP

User Datagram Protocol


Introduction
La couche transport d’Internet dispose de deux
protocoles pour la communication entre
applications :

UDP : protocole en mode sans connexion


TCP (Transmission Control Protocol) : protocole
en mode orienté connexion
UDP
Service en mode non connecté
Livraison des messages sans garantie
Ordonnancement et arrivé des messages non
garanti
UDP

175
Identification du service : les ports les adresses IP désignent
les machines entre lesquelles les communications sont
établies. Lorsqu'un processus désire entrer en
communication avec un autre processus, il doit adresser le
processus s'exécutant cette machine.
L'adressage de ce processus est effectué selon un concept
abstrait indépendant du système d'exploitation :
les processus sont créés et détruits dynamiquement sur les
machines, il faut pouvoir remplacer un processus par un
autre sans que l'application distante ne s'en aperçoive,
il faut identifier les destinations selon les services offerts, sans
connaître les processus qui les mettent en oeuvre, un
processus doit pouvoir assurer plusieurs services.

UDP : les ports


176
Ces destinations abstraites permettant d'adresser un service
applicatif s'appellent des ports de protocole.
Port : entier identifiant l’application à laquelle la couche
transport doit remettre les messages
L'émission d'un message se fait sur la base d'un port source et un
port destinataire.
Les processus disposent d'une interface système leur permettant
de spécifier un port ou d'y accéder.
Les accès aux ports sont généralement synchrones, les opérations
sur les ports sont « tamponnés » (files d'attente).
Datagrammes UDP
Port source Port destination
177
Longueur Checksum
Données

Port source : optionnel (identifie un port pour la


réponse)
Port destination : numéro de port (démultiplexage)
Longueur : longueur totale du datagramme en
octets (8 au minimum)
Checksum : optionnel (seule garantie sur la validité
des données)
Classement des ports
178
1-1023 : services réservés s’exécutant avec des
droits privilégiés (root)

1024-49151 : services enregistrés auprès de


l’IANA et pouvant s’exécuter avec des droits
ordinaires

49152-65535 : libres de toutes contraintes


Numéros de ports

179
Les derniers numéros de ports peuvent être
obtenus sur le site de IANA :
[Link]

Sous Linux le fichier /etc/services contient les


numéros de ports et les services associés.
Les ports standards
Certains ports sont réservés
N° port Mot-clé Description
7 ECHO Echo
11 USERS Active Users
180
13 DAYTIME Daytime
37 TIME Time
42 NAMESERVER Host Name Server
53 DOMAIN Domain Name Server
67 BOOTPS Boot protocol server
68 BOOTPC Boot protocol client
69 TFTP Trivial File Transfer protocol
123 NTP Network Time Protocol
161 SNMP Simple Network Management prot.
D'autres numéros de port (non réservés) peuvent être alloués dynamiquement
aux applications.

181
Le protocole TCP/IP

Transport Control Protocol


Introduction
S’appuie sur IP (réseau non fiable)
Communication en mode connecté
Ouverture d’un canal
Communication Full-Duplex
Fermeture du canal
TCP doit :
assurer la délivrance en séquence (Arrivée et ordre
garanties)
contrôler la validité des données reçues
organiser les reprises sur erreur
réaliser le contrôle de flux
Connexion
une connexion de type circuit virtuel est établie connexion =
une paire d'extrémités de connexion extrémité de connexion
= couple (adresse IP, numéro port) Exemple de connexion :
(([Link], 1034), ([Link], 21))
183
Une extrémité de connexion peut être partagée par plusieurs
autres extrémités de connexions (multi-instanciation)
La mise en oeuvre de la connexion se fait en deux étapes :
une application (extrémité) effectue une ouverture passive en indiquant
qu'elle accepte une connexion entrante,
une autre application (extrémité) effectue une ouverture active pour
demander l'établissement de la connexion.

Garantie de réception
Comment savoir si un paquet arrive ?
 Accusé de réception

184
Machine 1 Machine 2

Réception
Accuse réception

Réception
Accuse réception

Envoi de message

185
Reçoit accusé
Envoi suite du message

Trop long ! Ré-


envoi du message

Utilisation du réseau
La technique acquittement simple pénalise les
performances puisqu'il faut :
Envoyer des données
Attendre
Envoyer un accusé de réception
Attendre
186

On peut faire mieux !
 Fenêtrage : une fenêtre de taille T permet
l'émission d'au plus T messages "non acquittés"
avant de ne plus pouvoir émettre

187
Gestion de la fenêtre
Source Réseau Destination
Emission de Mi
Emission de Mi+1
Réception de Mi
Emission de Mi+2 Emission de Ai

Réception de Ai

Fenêtre de taille 3
188
Gestion de la fenêtre
fenêtre glissante permettant d'optimiser la bande passante
permet également au destinataire de faire diminuer le débit
de l'émetteur donc de gérer le contrôle de flux
Le mécanisme de fenêtre mis en oeuvre dans TCP opère
au niveau de l'octet et non pas au niveau du segment ; il
repose sur : la numérotation séquentielle des octets de
données, la gestion de trois pointeurs par fenêtre

1 2 3 4 5 6 7 8 9 10 11 . . .

189
Octets émis Octets émis et Octets Octets non émissibles et
acquittés non acquittés émissiblespour l’instant

Notion de segments
UDP gère des messages
TCP gère une communication
Echange soutenu entre deux machines
Durée importante
Messages  Flux de données
Taille inconnue à l’avance
 segmentation

190
TCP gère des segments de 64K (ou moins)

191
Réception
Chaque segment est un morceau
Ressemble à la fragmentation IP
Ordre nécessaire pour recomposer le message initial
IP ne garantit pas l’ordre
Chaque paquet est routé séparément
Certains routeurs équilibrent la charge des réseaux
 routes différentes pour paquets successifs
Problème des pertes de trames
 trou dans la séquence ( retransmission)
Fenêtre glissante  retard d’un segment
 les segments sont reçus en désordre

192
Notion de segment
Segment : unité de transfert du protocole TCP
pour établir les connexions
transférer les données et émettre des acquittements
fermer les connexions

193
194
Le contenu du segment
Port Source Port Destination

Port : entier identifiant l’application à laquelle la


couche transport doit remettre les messages

195
Le contenu du segment
Numéro de séquence

Numéro d’acquittement

Numéro de séquence : identifie la position des


données par rapport au segment original
Numéro d’accusé de réception : identifie la
position du dernier octet reçu dans le flux
entrant

196
Le contenu du segment
HLEN Réservé Bits de code Taille de fenêtre

HLEN : longueur de l’en-tête


Bits de code : modificateur du comportement de
TCP par caractérisation du segment
Taille de fenêtre : nombre d'octets que
l'émetteur est prêt à accepter

197
Le contenu du segment
Bits de code
URG : le champ "pointeur d ’urgence" doit être
exploité
ACK : "numéro d’accusé de réception" doit être
exploité
PSH : l'émetteur indique au récepteur que toutes les
données collectées doivent être transmises à
l’application sans attendre les éventuelles données
qui suivent.
RST : Re-initialisation de la connexion
198
SYN : Le champ "numéro de séquence" contient la
valeur de début de connexion.
FIN : L’émetteur du segment a fini d'émettre.

199
Début et clôture de connexion
Ouverture (1)
CLIENT SERVEUR

Envoie Syn
(séq = x)
Reçoit Syn
(séq = x)
Envoie Syn
(séq = y, AR= x+1)
Reçoit Syn
(séq = y, AR = x+1)
Envoie Ack
(AR = y+1) 201
Reçoit Ack
(AR = y+1)
Ouverture (2)
Etablissement de la connexion en trois temps
L’émetteur (appelé client) du premier paquet est
à l’origine de l’établissement du circuit. on
parle "d’ouverture active"
Le récepteur (appelé serveur) du premier paquet
accepte l'établissement de la connexion. On
parle "d’ouverture passive"

202
Clôture (1) Clôture (2) 203
Etablissement de la clôture normale en quatre
temps car TCP est Full Duplex

Possibilité de clore brutalement la connexion par


l’envoi d’un segment RST

204
Mécanismes de contrôle du
transport
Principes fondamentaux
Acquittement positif : un segment bien reçu doit
être acquitté ; un segment non acquitté doit
être réémis au bout d’un certain temps
Numérotation des segments envoyés
Acquittement cumulatif et par anticipation
Utilisation d’une fenêtre glissante dont la taille
variera au cours de l’échange
le retransmet

206
Acquittement positif

Segment
Acquittement

Segment
 
Segment 
mauvais

Retransmission du segment

Si le segment n’est pas acquitté, le segment est considéré comme perdu et TCP
Un réseau d’interconnexion offre des temps de transit variables nécessitant le
réglage des temporisations
207
TCP gère des temporisations variables pour chaque connexion en utilisant un
algorithme de retransmission adaptative

Acquittement cumulatif et par


anticipation
Segment n° x contenant n octets

Acquittement x + n

208
Il indique le numéro de séquence du prochain octet attendu : tous
les octets précédents cumulés sont implicitement acquittés
Si un segment a un numéro de séquence supérieur au numéro de
séquence attendu (bien que dans la fenêtre), le segment est
conservé mais l’acquittement référence toujours le numéro de
séquence attendu

209
Fenêtre glissante

Taille de la fenêtre 600 octets


Taille du segment émis 100 octets

100 200 300 400 500 600 700 800 900 1000 1100...

Octets émis Octets émis Octets Octets non


et acquittés et non acquittés émissibles émissibles

100 200 300 400 500 600 700 800 900 1000 1100...

Octets émis Octets émis Octets Octets non


et acquittés et non acquittés émissibles émissibles
210
Time keep alive
Cette fonction permet de détecter les
« absences » : si aucune donnée ne circule, la
connexion est silencieuse
permet de refermer les connexions que les
utilisateurs ont laissé ouvertes
(exemple : si 9 segments « sondes » consécutifs,
émis avec des intervalles de 75 secondes restent
sans réponse, la connexion est fermée)
211
Bilan
Une connexion TCP :
Ouverture de connexion
Sychronisation
Acknowledge Synchronisation
Envoi de trames selon fenêtre disponible
Si accusé réception, décaler la fenêtre
Si TimeOut, ré-envoyer le segment fautif
Envoi trame de fin
Accuse réception de la trame de fin
212
Exemple

D1 : Séq=1565
D3 : Séq=3565
ACK 124
TimeOut D1 ACK 124
D0 : Séq=565 D2 : Séq=2565 D1 : Séq=1565
SYN Séq=564 ACK 124 ACK 124 ACK 124

.........

SYN Séq=123 ACK 1565 ACK 3565


ACK 565 213
TCP : ports standards
No port Mot-clé Description

20 FTP-DATA File Transfer [Default Data]


21 FTP File Transfer [Control]
23 TELNET Telnet
25 SMTP Simple Mail Transfer
37 TIME Time
42 NAMESERVER Host Name Server
43 NICNAME Who Is
53 DOMAIN Domain Name Server
79 FINGER Finger
80 HTTP WWW
214
110 POP3 Post Office Protocol - Version 3
111 SUNRPC SUN Remote Procedure Call

Serveur DHCP
Dynamic Host Configuration Protocol
(Protocole de configuration dynamique
des hôtes)
Introduction
Une adresse réseau peut être configurer soit de
manière statique ou dynamique.

215
Statique : vous déterminez vous-même l'adresse
IP de la machine.
dynamique : obtention de l'adresse grâce à un
serveur DHCP.

Remarque : ne pas confondre statique et fixe.

216
Serveur dhcp3-server
Installation :
#apt-get install dhcp3-server
Configuration :
Deux cas seront traités :
– adresse fixe alloué à la machine web-smi.
– adresses dynamiques alloués aux autres
machines.

217
Cas traité
On suppose que le serveur dispose de trois
interfaces réseaux.
– eth0 : interface pour se connecter à Internet ;
adresse obtenue par dhcp.
– eth1 et eth2 : interfaces connectés à deux
réseaux différents.
– eth1 @IP = [Link]
– eth2 @IP = [Link]

218
Interface(s) d'écoute(s)
Si vous voulez que le serveur écoute sur
certaines interfaces vous devez les spécifier
dans /etc/default/dhcp3-server à :

INTERFACES="eth1 eth2"

L'écoute se fera sur les interfaces eth1 et eth2.

219
Configuration du serveur
La configuration se fait dans le fichier :
/etc/dhcp3/[Link]
Les options sont définies de façon globale ou par
réseau.
Dans ce qui suit, nous allons voir un exemple de
configuration pour le cas traité.

220
Options générales
# options communes aux différents réseaux.

#Nom du domaine DNS


option domain-name "[Link]";

#Nom(s) de(s) serveur(s) DNS


option domain-name-servers [Link],
[Link];

221
Options générales
#Temps de renouvèlement des adresses

#par défaut en s (1 h)
default-lease-time 3600;

# maximum (2 h)
max-lease-time 7200;

222
Options générales
# Mode autoritaire (autoritaire)
#Est-ce-que ce serveur DHCP est le serveur
principal?
authoritative;

## Masque de sous-réseau
option subnet-mask [Link];

223
Réseaux
# déclaration sous réseau 192.168.1.*
subnet [Link] netmask [Link] {
# Si vous voulez spécifier un domaine différent
de celui par défaut :
#option domain-name "[Link]";
## Adresse de diffusion
option broadcast-address [Link];

224
# routeur par défaut option
routers [Link]; range
[Link] [Link];
Réseaux
# déclaration sous réseau 192.168.10.*
subnet [Link] netmask [Link] {
# Si vous voulez spécifier un domaine différent
de celui par défaut :
#option domain-name "[Link]";
225
## Adresse de diffusion
option broadcast-address [Link];
# routeur par défaut option
routers [Link]; range
[Link] [Link];
hôte « web-smi »
host web-smi {

226
# adresse mac de la carte réseau ! # A
remplacer par celle de la machine
hardware ethernet [Link];
# adresse attribué
fixed-address [Link];
}
Serveurs HTTP
Le protocole HTTP
 Le protocole HTTP (HyperText Transfer Protocol) est le
protocole de transport de données le plus utilisé sur Internet
227
depuis 1990. La version 0.9 était uniquement destinée à
transférer des données sur Internet (en particulier des pages
Web écrites en HTML. La version 1.0 du protocole (la plus
utilisée) permet désormais de transférer des messages avec
des en-têtes décrivant le contenu du message.
 Le but du protocole HTTP est de permettre un transfert de
fichiers (essentiellement au format HTML) localisés grâce à
une chaîne de caractères appelée URL entre un navigateur
(le client) et un serveur Web (appelé httpd sur les systèmes
de type UNIX).
Pourquoi utiliser HTTP ?
 HTTP est devenu le protocole de communication de l’Internet.
228
 HTTP est disponible sur toutes les plates-formes.
 HTTP est un protocole simple, qui ne requière que peu de
support pour fonctionner correctement.
 HTTP: Peu de paquets sont nécessaires pour échanger des
informations
 HTTP offre un niveau de sécurité simple et efficace.
 HTTP est le seul protocole utilisable à travers des pare-feu.
Fonctionnement de HTTP
 Fonctionnement
 Connexion du client vers le serveur
 Demande d’une information via une méthode
 Renvoi de l’ information, erreur ou information sur le document
Déconnexion
 Code de retour
229
 1xx :Information
 2 xx : Succès
 3 xx : Redirection
 4 xx : Erreurs ([Link]. 404)
 5 xx : Erreurs venant du serveur HTTP
 Méthodes
 GET : Requête de la ressource située à l'URL spécifiée
 HEAD : Requête de l'en-tête de la ressource située à l'URL spécifiée
 POST : Envoi de données au programme situé à l'URL spécifiée
 PUT : Envoi de données à l'URL spécifiée
 DELETE: Suppression de la ressource située à l'URL spécifiée
Le protocole HTTP
Requête HTTP
Une requête HTTP est un ensemble de lignes envoyé au serveur par le
navigateur. Elle comprend :

230
 Une ligne de requête: c'est une ligne précisant le type de document
demandé, la méthode qui doit être appliquée, et la version du protocole
utilisée. La ligne comprend trois éléments devant être séparés par un espace
:
– La méthode
– L'URL
– La version du protocole utilisé par le client (généralement HTTP/1.0)
 Les champs d'en-tête de la requête: il s'agit d'un ensemble de lignes
facultatives permettant de donner des informations supplémentaires sur la
requête et/ou le client (Navigateur, système d'exploitation, ...). Chacune
de ces lignes est composée d'un nom qualifiant le type d'en-tête, suivi de
deux points (:) et de la valeur de l'en-tête
 Le corps de la requête: c'est un ensemble de lignes optionnelles devant être
séparées des lignes précédentes par une ligne vide et permettant par
exemple un envoi de données par une commande POST lors de l'envoi de
données au serveur par un formulaire.

Le protocole HTTP
231
Réponse HTTP
Une réponse HTTP est un ensemble de lignes envoyées au navigateur par le
serveur. Elle comprend :
 Une ligne de statut: c'est une ligne précisant la version du protocole utilisé et
l'état du traitement de la requête à l'aide d'un code et d'un texte explicatif.
La ligne comprend trois éléments devant être séparés par un espace :
– La version du protocole utilisé
– Le code de statut
– La signification du code
 Les champs d'en-tête de la réponse: il s'agit d'un ensemble de lignes
facultatives permettant de donner des informations supplémentaires sur la
réponse et/ou le serveur. Chacune de ces lignes est composée d'un nom
qualifiant le type d'en-tête, suivi de deux points (:) et de la valeur de l'entête
 Le corps de la réponse: il contient le document demandé

Serveurs Web
232
Serveurs Web
Principaux serveurs :
– Apache
– Microsoft : Internet Information Server
( IIS )

233
Serveurs Web en ligne 2003

Parts de marchés 2003:


 Apache : 63% serveurs actifs
 Microsoft Internet Information Server : 23%

234
( source [Link] m )
Serveurs Web en ligne 2008
Parts de marchés 2008:
 Apache : 50%
 Microsoft Internet Information Server : 35%

( source [Link] m ) 235


Développeur Janvier 2010 Pourcentage février 2010 Pourcentage
Apache 111,307,941 53.84% 112,903,926 54.46 %
Microsoft 49,792,844 24.08% 50,928,226 24.57 %
Google 14,550,011 7.04% 14,315,464 6.91 %
nginx 15,568,224 7.53% 13,978,719 6.74 %
224

lighttpd 955,146 0.46% 1,097,685 0.53 %


Parts
Serveurs Web en ligne 2011
2010
Partsdedemarchés
marchés2011:
2010:
 Apache
Apache: 60%
: 54%
 Microsoft
MicrosoftInternet
InternetInformation
InformationServer
Server:20%
:24%

Apache est
toujours
largement
dominant…

Développeur 01/02/11 Pourcentage 01/03/11 Pourcentage


Apache 171,195,554 60.10% 179,720,332 60.31 %

238
Microsoft 57,084,126 20.04% 57,644,692 19.34 %

nginx 21,570,463 7.57% 22,806,060 7.65 %

Google 14,454,484 5.07% 15,161,530 5.09 %


225

lighttpd 1,953,966 0.69% 1,796,471 0.60 %

Apache
Généralités
Apache est le serveur web le plus populaire sur
Internet. Il est robuste et extensible. Il est
maintenu est développé par la fondation ASF
( Apache Software Foundation )
Existe depuis 1995, à l’origine basé sur le serveur
NCSA httpd 1.3 (Université de l’Illinois
EtatsUnis)
Site officiel : [Link]

240
Distribué sous une licence "Open source" (
Licence Apache ).
Pourquoi Apache?
Gratuit.
Code source disponible et modifiable permet un
développement rapide du serveur.
Très grande réactivité dans la correction de tout
bogue identifié.
Très grande flexibilité du serveur grâce à sa
structure modulaire l'ajout d'un nouveau
241
module permet d'ajouter de nouvelles
fonctionnalités.
Disponibles sur plusieurs plateformes (Linux,
windows, … )
Pré-requis systèmes
Apache s'exécute sur n'importe quel type de
machine.
Pour un serveur de sites WEB peu exigeant, un
simple processeur fera l'affaire.

242
Pour des sites très exigeants utilisant de
nombreuses bases de données, un
multiprocesseur doit être envisagé.
Concernant la mémoire : plus il y a de mémoire
vive et plus la quantité de donnée en mémoire
est importante ce qui permet d'accélérer les
accès.
Pré-requis systèmes

243
Concernant le disque dur : un disque dur rapide
permet d'améliorer les performances d'accès
aux données des sites WEB.
Pour les sites à grande audience, il est préférable
d'utiliser plusieurs disques de tailles moyennes
plutôt qu'un seul disque à grande capacité (un
disque dur ne pouvant lire qu'à un seul endroit
à la fois!).
Installation et configuration sous un
système de type Debian
244
Installation minimale
Installation en mode console :
#apt-get install apache2
Ou utilisation d'un gestionnaire graphique (synaptic).

245
Vérification de l'installation

246
247
Fichiers et répertoires d'apache dans
/etc/apache2
[Link] : fichier de configuration
principale.
[Link] : fichier vide. envars : contient les
variables d'environnement.
conf.d/ : contient des fichiers de configuration
additionnels. Il sont utilisés dans [Link],
par la ligne :
Include /etc/apache2/conf.d
248
[Link] : directives de configuration pour
ports les IP adresses d'écoutes.

249
Fichiers et répertoires d'apache dans
/etc/apache2
mods-available/ : contient une série de fichiers
.load et .conf. Un fichier .load contient les
paramètres de configuration nécessaires pour
charger un module in question. Le fichier .conf
correspondant, es paramètres de configuration
nécessaires pour utiliser le module en question.
mods-enabled/ : pour utilisé un module
(autorisé), il faut mettre un lien symbolique vers
le fichier .load (et .conf, s'il existe) du module
associé dans le dossier mods-available.235
Fichiers et répertoires d'apache dans
/etc/apache2
sites-available/ : même chose que modsavailable/,
mais cette fois pour les sites virtuels.
Ce n'est obligé d'avoir le même nom pour le
site et le fichier. sites-enabled/ : même chose
que mods-enabled/.

251
Par défaut, un seul serveur est disponible (le
serveur par défaut). Il est disponible dans
[Link] par la ligne :
Outils

Les commandes a2enmod et a2dismod sont


disponibles pour permettre ou ne pas permettre
un module.

#a2enmod userdir
252
pour permettre aux utilisateurs d'avoir leurs
propres pages web disponibles via un lien de
type :
[Link]
[Link]

253
Exemple d'une page personnelle

254
Outils

Les commandes a2ensite et a2dissite sont


disponibles pour permettre ou ne pas permettre
un site.

255
Configuration de base

Avant de commencer la configuration, il faut faire


une sauvegarde des fichiers que vous voulez
modifier :
#cp [Link] [Link]

Racine du serveur :
ServerRoot "/etc/apache2"
256
Adresse électronique de l'administrateur du
serveur :
ServerAdmin webmaster@localhost
Configuration de base

Port à écouter ([Link]):


Listen 80
Listen [Link]:80

257
Emplacement par défaut des pages html :
DocumentRoot /var/www/

Pages par défaut (mods-enabled/[Link] ):


DirectoryIndex [Link] [Link] [Link]
Configuration de base

Journal d'erreur par défaut :


ErrorLog /var/log/apache2/[Link]
258
PHP
PHP est un Langage de script interprété (non
compilé) spécialement conçu pour le
développement d'applications web. Il peut être
intégré facilement au HTML (voir [Link]).
Pour installer la version 5 de PHP, il faut
exécuter la commande :
# apt-get install php5 libapache2-mod-php5
Il faut redémarrer apache :

259
# /etc/init.d/apache2 restart
Vérification de l'installation
Dans /var/www, créer le script [Link],
contenant les lignes :
< ?php
phpinfo();
?>
Dans votre navigateur, tapez l'adresse
[Link]
260
il fournira un ensemble d'informations et de
paramètres de configuration.
MySQL

MySQL est un système de gestion de bases de


données relationnel (SGBDR) libre, opensource
et gratuit. Il est performant et très populaire. Il
est multi-utilisateurs.
Installation :
apt-get install mysql-server
261
Utilisation
Si vous n'avez pas défini de mot de passe
( déconseillé) : mysql -u root
Si vous avez défini un mot de passe :
mysql -u root -p et tapez votre mot
de passe.
Vous arriverez alors sur un prompt du type :
mysql>

262
Vous pouvez alors taper des requêtes MySQL.
N'oubliez pas le point-virgule à la fin de la
requête.
Ajouter ou changer le mot de passe de
root
Pour affecter un mot de passe à l'utilisateur root,
tapez la commande suivante :
# mysqladmin -u root password MotPasse

263
Pour changer le mot de passe de l'utilisateur root,
tapez la commande :
# mysqladmin -u root -p password MotPasse
Enter password: (ancien mot passe)
Sélectionner la base de données
Soit directement lorsque vous lancez le client
mysql en ligne de commande : mysql -u root
-p votre_base

264
Soit une fois connecté à mysql en tapant :
mysql> use votre_base;
Quelques requêtes SQL
Créer une base de données :
CREATE DATABASE nom_de_la_base;
Liste des bases de données :
SHOW DATABASES;
Liste des tables de la base de données active
SHOW TABLES;
265
Structure d'une table :
DESCRIBE nom_table;
Renommer une table :
ALTER TABLE nom_table RENAME AS
nouveau_nom;
Quelques requêtes SQL
Créer un un utilisateur
CREATE user "nom_utilisateur"@"localhost";
Supprimer un utilisateur
DROP user nom_utilisateur@localhost;
266
Donner tous les droits sur une base de données à
un utilisateur précis
GRANT ALL ON nom_base.* TO
nom_utilisateur@localhost;
Supprimer les droits sur une base de données à
un utilisateur précis
REVOKE ALL privileges ON nom_base.*
FROM nom_utilisateur@localhost;
PhpMyAdmin

267
phpMyAdmin est une application écrite en PHP,
pour l'administration de MySQL. Elle est
accessible via un navigateur.
Avant l'installation, il faut s'assurer, que php et
MySQL sont déjà installés. Installation :
apt-get install phpmyadmin
Utilisation : dans votre navigateur,
saisir l'adresse
[Link]

268

Vous aimerez peut-être aussi