Cours Intro Reseaux
Cours Intro Reseaux
Renaud Lachaize
Université Grenoble Alpes
[Link] @ [Link]
Mai 2019
■ Principes
◆ A. Tanenbaum, D. Wetherall, Computer Networks (5th edition). Prentice Hall, 2010.
❖ Version française : Les réseaux, 5ème édition, Pearson Education, 2011.
❖ Remarque : les éditions antérieures ont un seul auteur (Tanenbaum)
◆ L. Peterson, B. S. Davie, Computer Networks, a systems approach, 5th edition, Morgan
Kaufmann, 2011.
❖ Il existe une traduction française mais seulement pour la 1ère édition actuellement : Réseaux
d’ordinateurs : une approche orientée système, Vuibert)
◆ J. F. Kurose, K. W. Ross, Computer Networking, a top-down approach featuring the Internet,
Addison-Wesley, 7th ed. 2016.
❖ Il existe une traduction française d’une édition plus ancienne : Analyse structurée des
réseaux, Pearson Education)
■ Divers
◆ [Link], A. Gallais, S. Marc-Zwecker, J. Montavont. Mini-manuel des réseaux
informatiques. Dunod, 2012.
❖ Un ouvrage assez compact conçu pour le premier cycle universitaire.
◆ O. Alphand, A. Duda, F. Rousseau. Computer networking - Explanation of the main
concepts with example exercises. Ensimag, 2016.
❖ [Link]
◆ G. Cizault (nom d’emprunt d’un collectif d’universitaires et d’ingénieurs). IPv6 – théorie
et pratique. Livre disponible en ligne : [Link]
S. Krakowiak, [Link] 5
Bibliographie sommaire sur les réseaux (suite)
◆ Voir notamment les cours disponibles sur la plateforme FUN (France Université
Numérique) : [Link]
❖ Principes des réseaux de données
❖ Les réseaux locaux
❖ Routage et qualité de service dans l’Internet
❖ Objectif IPv6 : vers l’Internet nouvelle génération
◆ Voir aussi les cours (en anglais) disponibles sur les plateformes EdX
([Link] ou Coursera ([Link]
❖ N.B. : Les certificats de réussite aux cours sont payants mais l’accès aux
contenus est libre/gratuit
❖ Par exemple :
▲ The bits and bytes of computer networking ([Link]
networking)
▲ Networks illustrated: principles without calculus ([Link]
illustrated)
▲ Fundamentals of network communication ([Link]
network-communications)
S. Krakowiak, [Link] 6
Introduction aux réseaux informatiques
S. Krakowiak, [Link] 7
Le défi de la puissance de calcul à bon marché :
des grappes aux nuages
❖ Liaison commutée
▲ la liaison passe par des organes intermédiaires
S. Krakowiak, [Link] 9
Types de réseaux (2)
La classification par étendue de la couverture géographique est souvent utilisée, bien que non stricte
■ Réseaux locaux (Local Area Networks, LAN)
◆ Communication au sein d’une organisation (département d’entreprise, etc.)
◆ Administration unique
◆ Couverture géographique limitée (~1 km) bus anneau
◆ Débit élevé, taux d’erreur faible
◆ Topologies diverses : bus, anneau, étoile, arbre ...
■ Réseaux à grande distance (Wide Area Networks, WAN)
◆ Communication entre des organisations (souvent) diverses
◆ Administrations (souvent) multiples
◆ Couverture géographique étendue : un pays, toute la planète
◆ Débit variable, taux d’erreur parfois non négligeable
◆ Topologie maillée ; interconnexion de réseaux (exemple : l’Internet)
■ Réseaux métropolitains (Metropolitan Area Networks, MAN)
◆ Intermédiaires entre LAN et WAN - qq dizaines de km, ville ou région
■ Autres réseaux
◆ System & Storage Area Networks (SAN), Desk Area Networks (DAN) ...
◆ Réseaux de mobiles, réseaux de capteurs, ... (potentiellement ad hoc)
S. Krakowiak, [Link] 10
Bref historique des réseaux informatiques
réseaux sociaux
L’Internet et les applications téléphonie géolocalisation
World Internet of things
Wide Web commerce
électronique Cloud computing
réseaux moteurs de
mail, ftp, telnet appli.
spécialisés 1970 1980 1990 recherche 2000 mobiles 2010
navigateurs
4 sites x 100 sites 100 000 sites 6 millions 100 millions
militaires
de sites de sites
comp. aériennes
Arpanet l’Internet
1969 XML HTML5
appel de procédure JEE AJAX SDN
Outils logiciels à distance CORBA Java Virtualisation
.NET
client-serveur
S. Krakowiak, [Link] 13
Performances des réseaux (1)
S. Krakowiak, [Link] 14
Performances des réseaux (2)
débit élevé
latence de base
latence de base = forte
attente + propagation débit faible
latence de base
faible taille du message
S. Krakowiak, [Link] 15
Qualité de service
S. Krakowiak, [Link] 17
Qualité de service
Exemples de besoins applicatifs
Application Perte de Débit nécessaire Sensibilité à la
données latence ?
tolérable ?
Transfert de fichiers Non Élastique Non
un fichier HTML
client l’Internet
S. Krakowiak, [Link] 19
Comment fonctionne un réseau ? (2)
[Link]
[Link]
l’Internet
le service de noms
client DNS (“annuaire”)
serveur web
S. Krakowiak, [Link] 20
Comment fonctionne un réseau ? (3)
8 routeur [Link]
7 paquets
2
4
6
client 1
5
3
serveur web
Chaque paquet contient son numéro et son adresse de destination. Quand il arrive sur un réseau,
et que le site destinataire n’en fait pas partie, le paquet est transmis à un routeur.
Les routeurs contiennent les informations qui permettent d’acheminer le paquet vers son site
destinataire
S. Krakowiak, [Link] 21
Comment fonctionne un réseau ? (4)
Fonctionnement du serveur
Le serveur reconstruit le message initial en mettant les paquets dans l’ordre de leurs
numéros. Que fait le serveur à la réception de la requête ?
Le site serveur interprète la requête comme une demande de fourniture de fichier.
Il envoie le fichier au client (sous forme d’une suite de paquets, comme précédemment).
Que se passe-t-il si un paquet s’est perdu, ou a mal été transmis ?
Le destinataire est capable de le détecter et demande qu’on lui renvoie le paquet manquant
ou erroné.
Transmission de l’information
Comment sont transmis concrètement les paquets ?
Chaque paquet est une suite de bits. La transmission utilise un support physique : fils,
fibre optique, ondes radio, etc., sur lequel sont envoyés des signaux (électriques, lumineux,
etc.). Chaque bit (0 ou 1) est représenté par une configuration particulière du signal
Exemple 1 0 0 1 0 1 1
(non réaliste)
S. Krakowiak, [Link] 22
Connaître le chemin suivi (1)
S. Krakowiak, [Link] 23
Connaître le chemin suivi (2)
S. Krakowiak, [Link] 24
Connaître le chemin suivi (3)
S. Krakowiak, [Link] 25
Connaître le chemin suivi (4)
Même requête que la précédente, à partir de la même ville (Grenoble) mais depuis
un autre réseau (fournisseur d’accès Internet à domicile à la place du réseau de
l’Université)
S. Krakowiak, [Link] 26
Notions de protocole et d’interface (1)
couche i-1
S. Krakowiak, [Link] 28
Organisation en couches (1/2)
S. Krakowiak, [Link] 29
Organisation en couches (2/2)
■ Modularité
◆ Indépendance entre l’interface offerte par une couche et sa
réalisation interne
◆ Simplifie la maintenance et l’évolution du système
S. Krakowiak, [Link] 30
Les protocoles de l’Internet
Services
Web
Informations
transmises
SOAP …
dépend de
applications … HTTP FTP TFTP DNS… l’application
Application Application
compression
chiffrement, etc. Présentation Présentation
synchronisation,
gestion du dialogue Session Session
entre processus
routage,
interconnexion Réseau Réseau Réseau Réseau paquet
gestion d’erreurs,
contrôle de flux Liaison Liaison Liaison Liaison trame
(point à point)
représentation
physique de Physique Physique Physique Physique bit
l’information
Les protocoles OSI servent plutôt de cadre de référence pour la définition des fonctions
que de normes de réalisation. La normalisation de fait est autour de TCP/IP
S. Krakowiak, [Link] 32
Le modèle en couches de l’Internet
Les services des couches Session et Présentation définies par le modèle OSI
sont ici intégrés dans la couche applicative (si nécessaire)
S. Krakowiak, [Link] 33
Encapsulation
S. Krakowiak, [Link] 34
Les services de l’Internet
S. Krakowiak, [Link] 35
Le réseau vu de l’utilisateur (1)
Client Serveur
(demande un service) (fournit un service)
Le schéma client-serveur peut être mis en œuvre pour des processus sur une
même machine. Ce schéma se transpose à un réseau, où les processus
client et serveur sont sur des machines différentes.
Pour le client, un service est souvent désigné par un nom symbolique.
Ce nom doit être converti en une adresse interprétable par les protocoles du
réseau.
La conversion d’un nom symbolique (par ex. [Link] en une
adresse IP ([Link]) est à la charge du service DNS (vu plus loin)
S. Krakowiak, [Link] 36
Le réseau vu de l’utilisateur (2)
port 45321
connexion
adresse IP :
[Link]
Client Serveur
(demande un service) (fournit un service)
socket
serveur
[Link]:34231
socket
client [Link]:45321
Client Serveur
(demande un service) (fournit un service)
S. Krakowiak, [Link] 38
DNS : noms de domaines (1)
■ La hiérarchie des noms a une racine multiple : les domaines du premier niveau
◆ domaines “géographiques” :
❖ fr (France), uk (Royaume Uni), de (Allemagne), jp (Japon),
❖ USA est souvent compris “par défaut”, bien qu’il existe un domaine us
◆ domaines “d’activité”, génériques :
❖ com (commercial), org (organisations),
edu (universités, aux USA), net (l’Internet), …
S. Krakowiak, [Link] 39
DNS : noms de domaines (2)
■ Dans chaque domaine, les noms sont attribués par une autorité responsable
du domaine
◆ Pour établir la liste des domaines du premier niveau : l’Internet Society (ISOC) via
un groupe technique ad hoc
◆ Pour les domaines “publics” du premier niveau (com, org, net, …) : une autorité
centrale, l’lCANN ([Link]), avec des autorités déléguées
◆ Pour les domaines géographiques : une autorité nationale par pays - en France,
l’AFNIC ([Link]) - Association Française pour le Nommage sur l’Internet en
Coopération)
S. Krakowiak, [Link] 40
DNS : noms de domaines (3)
[Link] ... [Link] [Link] [Link] [Link] [Link] [Link] [Link] [Link] …
[Link] [Link] [Link] [Link] [Link]
zone
[Link] [Link]
[Link] [Link]
[Link]
[Link]
■ Domaines et zones
◆ Domaine = unité de désignation (espace de noms)
◆ Zone = unité de gestion administrative (serveur de noms propre à la zone)
◆ Le plus souvent, un domaine est aussi une zone, mais une zone peut grouper
plusieurs domaines, administrés en commun
S. Krakowiak, [Link] 41
DNS : noms de domaines (4)
■ Services
◆ Correspondance Nom → adresse IP et adresse IP → Nom
◆ Gestion d’alias (alias → nom canonique)
◆ Distribution de charge
❖ Association d’un nom canonique à plusieurs adresses
◆ Gestion d’alias pour les serveurs mail (sera étudié ultérieurement)
■ Principes
◆ Le DNS est une protocole applicatif qui fournit des services essentiels à
d’autres protocoles applicatifs
◆ La gestion des noms est donc gérée aux « extrémités » du réseau, par un
ensemble d’interactions entre clients et serveurs
◆ Cette organisation est conforme à la philosophie de conception de
l’Internet : simplifier le cœur du réseau et gérer les aspects complexes aux
extrémités
S. Krakowiak, [Link] 43
DNS : mise en œuvre (1)
Bref historique
S. Krakowiak, [Link] 44
DNS : mise en œuvre (2)
Une base de données hiérarchique et répartie
■ Idées générales
◆ Pas de point central : un ensemble de serveurs répartis sur le globe
◆ Un découpage des responsabilités
S. Krakowiak, [Link] 46
DNS : mise en œuvre (4)
Autres classes de serveurs DNS
S. Krakowiak, [Link] 47
DNS : Résolution de nom (1)
S. Krakowiak, [Link] 48
DNS : Résolution de nom (2)
■ Procédure de requête
récursive
S. Krakowiak, [Link] 49
DNS : résolution de noms (3)
■ Ces adresses :
◆ sont fournies aux utilisateurs de l’hôte par l’administrateur de sa
zone (ou son fournisseur d’accès à l’Internet)
◆ sont généralement inscrites “à la main” dans les tables de
configuration pour l’accès à l’Internet ...
◆ mais peuvent aussi être configurées automatiquement (via le
protocole DHCP qui peut gérer la configuration réseau d’une
machine lors de son raccordement à un réseau)
S. Krakowiak, [Link] 50
DNS : résolution de noms (4)
■ Compléments :
◆ Lorsqu’un serveur apprend une information, il la conserve dans un cache local
◆ Les informations mises en cache ont une durée de vie limitée (pour garantir
leur fraîcheur)
◆ Tous les serveurs DNS (même locaux) existent en plusieurs exemplaires
■ En pratique :
◆ Les serveurs ont beaucoup d’informations en cache donc :
❖ une résolution de nom nécessite moins de messages que dans l’exemple
précédent
❖ les niveaux les plus hauts de la hiérarchie sont peu sollicités
◆ Les interactions pour une résolution suivent généralement le premier schéma :
❖ Mode récursif entre le demandeur et son serveur local
❖ Mode itératif entre le serveur local et les serveurs de la hiérarchie
S. Krakowiak, [Link] 51
DNS : résumé des principes
S. Krakowiak, [Link] 52
DNS : détails techniques
S. Krakowiak, [Link] 53
Utiliser DNS (1)
DNS est automatiquement utilisé par toute application sur l’Internet utilisant des
noms de domaines. Mais on peut aussi y accéder directement
;; QUESTION SECTION:
;[Link]. IN A
;; ANSWER SECTION:
[Link]. 355486 IN CNAME [Link]. nom canonique
[Link]. 238 IN A [Link]
[Link]. 238 IN A [Link] entrées
[Link]. 238 IN A [Link] multiples
S. Krakowiak, [Link] 55
Utiliser DNS (3)
mandelbrot:~> dig -x [Link]
;; QUESTION SECTION:
;[Link].[Link]. IN PTR
;; ANSWER SECTION:
[Link].[Link]. 7200 IN PTR [Link].
;; AUTHORITY SECTION:
[Link]. 7200 IN NS [Link].
serveurs
[Link]. 7200 IN NS [Link].
[Link]. 7200 IN NS [Link].
de noms
;; ADDITIONAL SECTION:
[Link]. 72447 IN A [Link]
[Link]. 72447 IN AAAA 2001:660:5301:1e::101
■ Protocoles et interfaces
◆ Fonctionnement d’ensemble d’un réseau
◆ Notions de protocole et d’interface
◆ Protocoles en couches, fonctions des principales couches
S. Krakowiak, [Link] 57
Annexes
S. Krakowiak, [Link] 58
Structure globale de l’Internet
■ Idée générale
◆ Prestataire T1 (”Tier-1 ISP” ou ”Backbone networks”)
❖ Couverture internationale/mondiale
❖ Chaque ISP T1 est interconnecté avec tous les autres ISP T1
❖ … et avec un grand nombre d’ISP T2
❖ Très haut volume de trafic / hautes performances
❖ Une dizaine (ou quelques dizaines) d’ISP T1 dans le monde
◆ Prestataire T2 (”Tier-2 ISP” )
❖ Couverture souvent nationale ou régionale
❖ Relié (techniquement et contractuellement) à un ou quelques ISP T1
❖ Souvent aussi relié à des ISP T2 (potentiellement beaucoup)
❖ Ne s’appuie en général pas majoritairement sur l’infrastructure du T1 (cf.
peering/transit plus loin)
❖ Quelques centaines d’ISP T2 dans le monde
S. Krakowiak, [Link] 61
Structure globale de l’Internet (suite)
S. Krakowiak, [Link] 62
Structure globale de l’Internet (suite)
S. Krakowiak, [Link] 63
Structure globale de l’Internet (suite)
S. Krakowiak, [Link] 64
Structure globale de l’Internet (suite)
S. Krakowiak, [Link] 65
Structure globale de l’Internet (suite)
Schéma emprunté à A. Tanenbaum et D. Wetherall. Computer Networks, 5th edition, Pearson Education
S. Krakowiak, [Link] 66
Structure globale de l’Internet (suite)
S. Krakowiak, [Link] 67
Structure globale de l’Internet (suite)
S. Krakowiak, [Link] 68
Annexes (suite)
S. Krakowiak, [Link] 69
Ressources
S. Krakowiak, [Link] 70
Déploiement et maintenance des liaisons sous-marines
S. Krakowiak, [Link] 71