53
Réseaux d’ordinateurs Richard Baron, Franck Thollard

Réseaux dordinateurs Richard Baron, Franck Thollard

Embed Size (px)

Citation preview

Page 1: Réseaux dordinateurs Richard Baron, Franck Thollard

Réseaux d’ordinateurs

Richard Baron, Franck Thollard

Page 2: Réseaux dordinateurs Richard Baron, Franck Thollard

Sommaire Motivation, notion de réseau, réseaux de

réseaux Lien système d’exploitation, processus et

réseaux Paradigme client-serveur Paradigme Systèmes distribués Applications client-serveur usuelles Sécurité des communications Architecture de réseau Ethernet, TCP/IP, aspects techniques

Page 3: Réseaux dordinateurs Richard Baron, Franck Thollard

Motivations Permettre aux ordinateurs de

communiquer les résultats de leurs opérations, pour enchaîner les tâches exécutées

Permettre aux utilisateurs de communiquer avec les ordinateurs distants (pour travailler et/ou consulter des données, …), ou avec d’autres utilisateurs

Répartir le travail à faire sur plusieurs ordinateurs

Page 4: Réseaux dordinateurs Richard Baron, Franck Thollard

Notions de réseau Un réseau est un ensemble :

d’ordinateurs, communiquant à l’aide d’un protocole commun à travers

Des lignes spéciales de communications Les réseaux peuvent être

différemment construits au niveau matériel, mais on peut les interconnecter, pour former des internets

Page 5: Réseaux dordinateurs Richard Baron, Franck Thollard

Lien système d’exploitation, processus et réseaux Un ordinateur est dirigé par son système

d’exploitation, qui est la collection de programmes de base nécessaire au bon fonctionnement de l’ordinateur

Un système d’exploitation multi-tâches (et multi-utilisateur) exécute plusieurs processus de manière entrelacé

Une partie de ces processus peuvent communiquer entre eux à travers des canaux spéciaux à l’intérieur du système d’exploitation …

… ou avec des processus s’exécutant sur d’autres ordinateurs, à travers le réseau.

Page 6: Réseaux dordinateurs Richard Baron, Franck Thollard

Paradigme client-serveur Besoin de mettre de l’ordre dans la

philosophie des réseaux Inspiration de la vie réelle : bureau de

poste, magasins, … Paradigme client-serveur : modèle de

communication dans lequel Un programme principal appelé serveur tourne

en permanence (ou est prêt à tourner) Des programmes client se connectent

occasionnellement au serveur, échangent des données, puis se déconnectent

Page 7: Réseaux dordinateurs Richard Baron, Franck Thollard

Paradigme systèmes distribués Autre inspiration : dans une équipe,

chacun sa tâche Paradigme système distribué : modèle de

communication dans lequel : Les données et les instructions de traitement

sont réparties sur plusieurs ordinateurs … … qui communiquent avec des programmes

spéciaux, pour interagir, partager les résultats, et réaliser ensemble une tâche complexe

Page 8: Réseaux dordinateurs Richard Baron, Franck Thollard

Applications client-serveur usuelles Courrier électronique

Dans la famille des moyens de communications comme les lettres, le fax, les sms

Transfert de fichiers (ftp)Comparable à un système de

bibliothèque, où l’on demande à un employé de chercher des ouvrages, on attend, puis les ouvrages sont apportés

Page 9: Réseaux dordinateurs Richard Baron, Franck Thollard

(suite) Session distante (telnet)

Dans la famille des moyens de contrôle à distance, comme la consultation de compte bancaire, l’achat de billet de train …

Forums de discussion (newsgroup)Dans la famille des moyens d’échange

d’information comme les petites annonces de journaux. Sorte de pannaux d’affichage à echelle mondiale

Page 10: Réseaux dordinateurs Richard Baron, Franck Thollard

(suite) Consultation de pages Web (World

Wide Web) Dans la famille des moyens de

consultation et d’information comme la télévision, la consultation de catalogue de vente par correpondance …

Page 11: Réseaux dordinateurs Richard Baron, Franck Thollard

Courrier électronique Permet l’échange de messages Rédigés au moyen d’un logiciel dédié ou de

simples éditeurs de texte Envoyés et consultés au moyen de logiciels

spécifiques Chaque utilisateur dispose d’une adresse

internet e-mail, de la forme nom@domaine. Le domaine peut être formé de plusieurs mots, séparés par des points. Le dernier est soit un indicatif de pays, soit un top-level (.com, .gov, .net, .org …).

Page 12: Réseaux dordinateurs Richard Baron, Franck Thollard

Transfert de fichiers : ftp Permet la copie de fichier d’un

ordinateur à l’autre En fonction de droits spécifiques Les machines sont identifiées par

une adresse ou un nom réseau : machine.domaineexemple : moneta.univ-st-etienne.fr

Page 13: Réseaux dordinateurs Richard Baron, Franck Thollard

Sur la machine qui initie la communication, il faut avoir le programme client ftp (WS_ftp …)

L’autre machine doit avoir en exécution un processus serveur ftp, à l’écoute d’éventuelles requêtes de connexion et transfert

L’utilisateur du client doit être connu par la machine serveur, ou bien celle-ci doit permettre les connexions anonymes avec un login anonymous

Page 14: Réseaux dordinateurs Richard Baron, Franck Thollard

Session distante : telnet Permet la connexion et le dialogue

avec un ordinateur distant multi-tâche/multi-utilisateur

À travers une émulation de terminal : Chaque touche du clavier appuyée est

envoyée à l’ordinateur distant Chaque caractère émis par l’ordinateur

distant est récupéré et affiché

Page 15: Réseaux dordinateurs Richard Baron, Franck Thollard

Nécessite (comme ftp) une application client telnet et un serveur qui écoute les requêtes de connexion et lance les programmes gérant les communications

L’utilisateur doit être connu par la machine serveur

Page 16: Réseaux dordinateurs Richard Baron, Franck Thollard

Forums de discussion (newsgroup)

Permet l’échange de messages (opinions, questions/réponses, petites annonces …) à l’échelle d’Internet

Groupes de discussions repertoriés par thèmes et sous-thèmes : soc.culture.ecuador, comp.os.linux.admin

Page 17: Réseaux dordinateurs Richard Baron, Franck Thollard

Web Browsing Permet la visualisation de documents

multimédia entreposés sur des ordinateurs distants

Au moyen d’un navigateur (IE, Mozilla, Opera …)

Qui se connecte à des serveur Web à travers le réseau, leur demande des fichiers précis, les récupère et les affiche à l’écran

Les fichiers distants résident dans des répertoires dédiés

Page 18: Réseaux dordinateurs Richard Baron, Franck Thollard

(suite) Les fichiers récupérés et affichés comportent

De l’information utile pour l’utilisateur du browser

Des hyperliens vers d’autres fichiers, qui sont des ponts pour aller trouver d’autres fichiers, éventuellement sur d’autres ordinateurs

Ces liens sont activés avec la souris pointée en appuyant sur le bouton gauche

Et le browser recherche alors les nouveaux fichiers et les affichent

Page 19: Réseaux dordinateurs Richard Baron, Franck Thollard

Côté serveur Les cgi (Common Gate Interface),

calculent ou retrouvent des données, et les fournissent comme résultat à afficher par le browser

PHP permet la génération de pages dynamiques et l’interfaçage avec des bases de données

Page 20: Réseaux dordinateurs Richard Baron, Franck Thollard

Côté client Les applets Java : un langage

compilé en code virtuel, interpreté par le browser

Les contenus JavaScript : un langage interpreté avec des fonctionnalités plus flexibles et dynamiques que HTML

Page 21: Réseaux dordinateurs Richard Baron, Franck Thollard

Adressage et fichiers du web browsing

Chaque fichier est repertorié au moyen d’un URL (Uniform Ressource Locator), de la forme Protocole://machine.domaine/chemin/fichier

Les hyperliens sont des mentions de tels URL à l’intérieur d’un fichier, rédigés dans un langage spécial (Hyper Text Markup Language)

Le fichier peut être : du texte simple, des images, du son, une vidéo, une URL

Les protocoles sont : http, https,ftp, telnet, mailto, …

Page 22: Réseaux dordinateurs Richard Baron, Franck Thollard

Sécurité des transmissions Problème général de tout moyen de

communication Différents types d’attaques :

Écoute frauduleuse (Charles écoute ce que Bernard dit à Alice)

Imposture (Alice croit que Bernard lui écrit, alors que c’est Charles qui l’a fait)

Accès frauduleux (Charles se connecte sur un ordinateur sur lequel il n’a pas de droit d’accès)

Copie illégale (Charles donne à Alice une copie d’un document qu’il n’a pas le droit de reproduire)

Page 23: Réseaux dordinateurs Richard Baron, Franck Thollard

Sécurité Solutions basées sur l’arithmétique

des grands nombres et les limitations actuelles de calcul

Plusieurs familles, dont celle des clés publiques

Une méthode répandue : RSA

Page 24: Réseaux dordinateurs Richard Baron, Franck Thollard

Système de protection à clé publique Alice possède une clé (un nombre) publique, que

tout le monde connaît, y compris Bernard et Charles Alice possède une clé privée, qu’elle seule connaît Quand Bernard écrit à Alice, il code le message à

l’aide de la clé publique d’Alice, par une opération arithmétique difficilement réversible

Quand Alice reçoit le message, elle le décode avec sa clé privée

Seule la clé privée permet de décoder correctement le message codé avec la clé publique

Page 25: Réseaux dordinateurs Richard Baron, Franck Thollard

Système d’authentification à clé publique Pour que Alice soit certaine que c’est

bien Bernard qui lui avait écrit, Bernard, écrit son nom à la fin du message et le code avec sa clé privée

Le système étant symétrique, Alice décode la fin du message avec la clé publique de Bernard, et vérifie que le résultat obtenu est bien le nom de Bernard

Page 26: Réseaux dordinateurs Richard Baron, Franck Thollard

Comment circule l’information Elle est découpée en paquets de bits Comparable aux chemins de fer :

l’information est un chargement, mis dans plusieurs trains indépendants, qui doivent tous aller de A vers B

Les trains peuvent se suivre sur la même voie, ou bien emprunter des voies ou des trajets différents, arriver à des moments différents, se perdre …

Page 27: Réseaux dordinateurs Richard Baron, Franck Thollard

Comment circule l’information Le mécanisme global fait que tout le

chargement arrive (si des trains sont perdus, d’autres sont renvoyés avec le remplacement du chargement)

Les trains sont aiguillés dans des directions précises

Parfois, des trains très longs sont décomposés dans des sous-trains, en regroupant des wagons

Page 28: Réseaux dordinateurs Richard Baron, Franck Thollard

Comment circule l’information Un réseau est dit local (Local Area Network)

lorsqu’il s’étend sur quelques centaines de mètres (bâtiments …)

Les réseaux locaux sont interconnectés, formant des réseaux de plus grande taille

Dans un réseau local, les paquets émis atteignent tous les ordinateurs, et seul le destinataire les récupère

Pour aller d’un LAN à un autre, il faut faire du routage, au moyen d’ordinateurs appelés routeurs

Page 29: Réseaux dordinateurs Richard Baron, Franck Thollard

Caractéristiques d’un réseau Le graphe de connexion Le médium physique utilisé : courant

électrique, ondes lumineuses, radio … Les programmes gérant les communications

: pile de protocoles La structure en couche (norme Open

Systems Interconnections) : chaque couche prend les données de la couche supérieure, les traite, et les fournit à la couche inférieure. Une couche ne « dialogue » qu’avec la couche correspondante

Page 30: Réseaux dordinateurs Richard Baron, Franck Thollard

Schéma OSI

Couche application

Couche présentation

Couche session

Couche transport

Couche réseau

Couche liaison de données

Couche physique

Couche application

Couche présentation

Couche session

Couche transport

Couche réseau

Couche liaison de données

Couche physique

Page 31: Réseaux dordinateurs Richard Baron, Franck Thollard

Couche physique Assure l’interface avec le matériel Prend en charge la bonne

conversion des signaux digitaux en signaux analogiques, la modulation, l’emission physique sur la ligne de communication, la réception

Le filtrage du bruit, la reconversion en signaux digitaux

Page 32: Réseaux dordinateurs Richard Baron, Franck Thollard

Couche liaison de données Met les paquets (trains) qui lui sont

donnés par la couche réseau dans des trames (l’unité de transmission pour cette couche = groupe de wagons)

Assure la bonne transmission de chaque trame (délimitation dans le flot de signaux, synchronisation) sur une ligne point-à-point (i.e. entre deux ordinateurs)

Page 33: Réseaux dordinateurs Richard Baron, Franck Thollard

Couche liaison de données Utilise des algorithmes de

correction d’erreur Peut mettre en oeuvre un contrôle

de congestion limitée à la ligne point-à-point

Gère l’accès des ordinateurs à la ligne, lorsqu’elle est partagée

Page 34: Réseaux dordinateurs Richard Baron, Franck Thollard

Couche réseau Assure la bonne transmission de chaque

paquet (train) qui lui est confié par la couche transport, indépendamment des autres paquets, de l’émetteur jusqu’au destinataire, donc à travers (éventuellement) d’autres réseaux intermédiaires

Gère les tables de routage qui indiquent comment il faut acheminer les paquets qui traversent plusieurs réseaux avant d’arriver à destination

Page 35: Réseaux dordinateurs Richard Baron, Franck Thollard

Couche réseau Contrôle la congestion du réseau

avec des algorithmes spécifiques (sceau percé, files d’attentes, …)

Détecte et corrige les erreurs (avec le couche liaison)

Page 36: Réseaux dordinateurs Richard Baron, Franck Thollard

Couche transport Assure la bonne transmission d’un

message, de l’expéditeur au destinataire Récupère le message et le segmente en

un groupe de paquets S’assure qu’ils soient délivrés dans

l’ordre, tous, et sans duplication Met en œuvre des algorithmes qui

numérotent les paquets, récupèrent des accusés de réception, et gèrent ainsi le traffic au niveau global

Page 37: Réseaux dordinateurs Richard Baron, Franck Thollard

Couche session Première couche « au dessus » du

niveau réseau concret Gère la connexion lorsqu’il s’agit de

communications établissant un canal virtuel (un peu comme un conversation téléphonique)

Aide à la synchronisation des entités communiquantes (jeton pour la gestion des ressources critiques)

Page 38: Réseaux dordinateurs Richard Baron, Franck Thollard

Couche présentation Assure les éventuelles conversion

de type ou de format de données nécessaires, en tant qu’interface entre l’application et les protocoles réseau

Assure une partie de la compression des donnée

Assure le cryptage-décryptage des données transmises

Page 39: Réseaux dordinateurs Richard Baron, Franck Thollard

Couche application Constitué des applications qui

utilisent les services réseau Évoqué précédemment

Page 40: Réseaux dordinateurs Richard Baron, Franck Thollard

Protocoles usuels : TCP/IP, Ethernet

Ordinateur 1

telnet, ftp, smtp …

TCP

IP

Ethernet

Câble ethernet

Ordinateur 2

telnet, ftp, smtp …

TCP

IP

Ethernet

Câble ethernet

Page 41: Réseaux dordinateurs Richard Baron, Franck Thollard

Ethernet Standard pour les réseaux locaux (couche

physique et liaison de données) Câbles électriques sur lesquelles les

ordinateurs écoutent et essaient de communiquer, écoutant le résultat

Si des collisions apparaissent (deux ou plusieurs ordinateurs ont émis des signaux en même temps), les essais sont renouvelés, après des attentes probabilisées

Page 42: Réseaux dordinateurs Richard Baron, Franck Thollard

Ethernet Câbles coaxiaux, et maintenant

10BaseT (10 Mbps) et 100BaseT (100 Mbps)

Présence de concentrateurs (hubs) et de commutateurs (switches)

Page 43: Réseaux dordinateurs Richard Baron, Franck Thollard

TCP/IP Standard pour les réseaux, et les réseaux de

réseaux Chaque ordinateur possède un identificateur

unique, son adresse IP : quatre octet x.y.z.t Des correspondances entre les adresses IP

et les nom machine.domaine sont faites par des ordinateurs spécifiques, appelés serveur de noms (Domain Name Server) connectés au réseau

Les adresses IP ont une structure : partie réseau et partie hôte

Page 44: Réseaux dordinateurs Richard Baron, Franck Thollard

Classes d’adresses

Classe A 0Net id 7

bitsHost id 24 bits

Classe B 1 0 Net id 14 bits Host id 16 bits

Classe C 1 1 0 Net id 21 bitsHost id 8 bits

Page 45: Réseaux dordinateurs Richard Baron, Franck Thollard

Dialogue TCP/IP Pour émettre un paquet, un ordinateur doit

spécifier (entre autres) l’adresse du destinataire, son adresse d’émetteur, la longueur des informations, et le paquet effectif

Le protocole TCP/IP assure la livraison du paquet, même si plusieurs réseaux sont à traverser, et assure aussi la livraison intégrale, correcte, dans le bon ordre et sans duplication, de plusieurs paquets

Il existe un autre protocole, UDP, qui permet seulement l’envoi de datagrammes, unités de communication, sans garantir leur livraison

TCP et UDP identifient les applications avec des numéros de ports

Page 46: Réseaux dordinateurs Richard Baron, Franck Thollard

Encapsulation de l’information

Données utilisateur + en-tête application

En-tête TCP

Données application

En-tête IP En-tête TCP

Données application

En-tête Ethernet

En-tête IP En-tête TCP

Données application

Remorque Ethernet

telnet, ftp, smtp …

TCP

IP

Ethernet

Câble ethernet

46 à 1500 octets

Page 47: Réseaux dordinateurs Richard Baron, Franck Thollard

Problème de traffic dans les réseaux Il faut pouvoir mettre à jour les tables de routage,

pour avoir le réseau opérationnel en cas de changements : Ordinateur (routeur) qui tombe en panne, ou trop

occupé Ordinateur (routeur) nouveau qui apparaît sur le

réseau Liaisons défectueuses Liaisons nouvelles

Il faut pouvoir redimensionner les réseaux (locaux ou longue distance), bien choisir entre les commutateurs (plus cher, mais sans réduire la BP) et les concentrateurs (moins chers mais réduisant la BP)

Page 48: Réseaux dordinateurs Richard Baron, Franck Thollard

Problème de traffic Comme sur les autoroutes, il peut y

avoir des bouchons Il faut contrôler le nombre de paquets

sur les lignes En stocker dans des zones tampon, si

possible Réguler le traffic, gérer la congestion À l’aide d’algorithme de contrôle, qui

sont activement développés

Page 49: Réseaux dordinateurs Richard Baron, Franck Thollard

TCP/IP, Internet : aspects techniques Savoir si un ordinateur est atteignable :

ping www.univ-st-etienne.fr Savoir ce qui se passe sur le trajet d’un

ordinateur à un autre : traceroute www.nasa.gov

Si le serveur de noms est un ordinateur sous Unix, la gestion est assurée par un « démon » (named) qui a les tables de correspondance adresse IP-nom. Pour ajouter ou supprimer un ordinateur ou une imprimante, il faut éditer le fichier et redémarrer le démon

Page 50: Réseaux dordinateurs Richard Baron, Franck Thollard

Schéma des protocoles TPC/IP Il en existe plusieurs dans cette famille Servant aussi à des tâches

administratives : ICMP – extension de IP IGMP – multi-casting ARP,RARP – conversions adresse IP-num

Ethernet et réciproquement BOOTP, DHCP – conversion et configuration

au lancement

Page 51: Réseaux dordinateurs Richard Baron, Franck Thollard

TCP/IP, Internet et système d’exploitation Pour bien gérer les communications, TPC/IP

définit pour chaque machine des numéros de port, un peu comme les quais d’une gare

Parallèle Message : chargement dans plusieurs trains Ordinateur : gare Lignes de communications : voies ferrées Paquets d’information : trains Adresses IP : coordonnées des gares Noms IP : noms des gares Ports : quais dans la gare

Page 52: Réseaux dordinateurs Richard Baron, Franck Thollard

TCP/IP, Internet et les ports Les protocoles d’application (comme telnet, ftp,

http, …) utilisent des numéros de port standard, sur tous les ordinateurs

Sur ces ports, des processus spéciaux (des démons) sont à l’écoute de requête de communications

Lors d’une requête favorablement traitée, un processus spécialisé pour le traitement d’une requête est lancé, et s’en occupe

Parallèle : centre d’allocation des trains au quai dans une gare, ou encore l’accueil dans une administration, où l’on prend un ticket en attendant d’être dirigé vers un guichet spécifique

Page 53: Réseaux dordinateurs Richard Baron, Franck Thollard

TCP/IP et Unix L’objet de base pour gérer les

communications est la socket A l’aide de fonctions spécifiques, on crée des

sockets, on les attache à des ports, on écoute pour savoir s’il y a une requête de connexion, on envoie des messages, on récupère des messages

Les système possède aussi des commandes de surveillance des connexions en cours (netstat pour énumérer les sockets ouvertes)

Parallèle : commande ps pour les processus