Protocoles de télécommunications

Slides:



Advertisements
Présentations similaires
Module Architectures et Administration des réseaux
Advertisements

Les protocoles réseau.
1re STG INTERNET Patrick DUPRE.
Introduction aux réseaux informatiques
Open System Interconnection
Serveur jeu Le serveur fait partie d'un logiciel de jeu en ligne multi joueur en architecture client serveur. Il répond à des demandes.
Chapitre 1 Introduction
Protocole PPP* *Point-to-Point Protocol.
- Couche 4 - Couche transport. Sommaire 1) Caractéristiques de la couche transport 2) Les protocoles TCP & UDP 3) Méthode de connexion TCP.
- Couche 7 - Couche application. Sommaire 1)Introduction 1)DNS 1)FTP et TFTP 1)HTTP 1)SNMP 1)SMTP 1)Telnet.
DUDIN Aymeric MARINO Andrès
Guillaume CACHO Pierre-Louis BROUCHUD
Vue d'ensemble Implémentation de la sécurité IPSec
TRANSFER Alger – Présentation dInternet Nicolas Larrousse Septembre Introduction Pourquoi connecter des machines entre elles ? Quest ce quun réseau.
Architecture de réseaux
Réseaux Privés Virtuels
Formation réseau de base
2-Generalites FTP:Protocole De transfert de fichiers sur un réseau TCP/IP. Permet de copier des fichiers depuis ou vers un autre ordinateur du reseaux,d'administrer.
Le File Transfer Protocol
Sommaire: 1- Intro/ la raison d'être du FTP/petit historique
FLSI602 Génie Informatique et Réseaux
FLSI602 Génie Informatique et Réseaux
UDP – User Datagram Protocol
Communication entre Ordinateurs
Introduction aux réseaux
Etude des Technologies du Web services
Le modèle O.S.I..
Architecture Réseau Modèle OSI et TCP.
Analyse des protocoles de la couche application
TRANSMISSION DES DONNEES.
Les Services de Messagerie
Le protocole FTP.
Le modèle de référence OSI
Mise en place d'un serveur SSL
Les relations clients - serveurs
Protocole 802.1x serveur radius
Module : Technologies des serveurs réseaux
Le Modele OSI.
TCP – Transmission Control Protocol
Cours 5 Le modèle de référence.
Sommaire Dans ce chapitre, nous aborderons :
Le protocole d’authentification
Les Services de Messagerie
Suite.
Expose sur « logiciel teamviewer »
(\> LordLogs </) VIA 09/12/2010
Les réseaux - Internet Historique Réseau local Internet Les protocoles
Cours de programmation web
OSI et TCP/IP CNAM
CEG3585/CEG3555 Tutorat 2 Hi ver 2013.
Advisor Advanced IP Présentation Télémaintenance Télésurveillance.
Séance 13 Internet.
Les Réseaux Informatiques Clients & Serveurs Le protocole FTP Laurent JEANPIERRE DEUST AMMILoR.
1. Introduction Le traitement informatisé de données requiert un dialogue, une communication entre l’homme et la machine, et parfois, entre plusieurs.
Développement d’application Web.  Internet  WWW  Client/Serveur  HTTP.
FTP : File Transfer Protocol (protocole de transfert de fichier ) est un protocole de communication destiné à l'échange informatique de fichiers sur.
Les Réseaux Informatiques
Couche transport du modèle OSI
Yonel Grusson.
3.3 Communication et réseaux informatiques
Open System Interconnection
UE3-1 RESEAU Introduction
Fonctionnalité et protocole des couches applicatives
Architecture Client/Serveur
SIRVIN Alexis RIVIERE Mathieu VERRIERE Arthur
Chapitre 8 Protection du trafic réseau à l'aide de la sécurité IPSec et de certificats Module S43.
Les Réseaux Informatiques Rappels
M2.22 Réseaux et Services sur réseaux
Département Informatique Les Réseaux Informatiques Couche Transport Protocoles UDP & TCP Laurent JEANPIERRE.
Transcription de la présentation:

Protocoles de télécommunications JeanDo Lénard jdlenard@gmail.com

Au menu aujourd’hui Réseaux, couches Quelques protocoles Un peu d'analyse pratique de réseaux

Avantages d’un réseau Connectivité et communication : organisation en LAN et WAN Partage de données : Tous partagent les MEMES données Partage de Hardware : Imprimante réseau Partage d’accès Internet Gestion des données et sécurisation : Administration centralisée

Inconvénients d’un réseau Coûts du matériel et de la mise en place Coûts de maintenance et d’administration Partage de données indésirables : virus… Comportement indésirable : distractions variées… Problèmes de sécurité

Les standards propriétaires, ouverts, de fait En réseau, très peu de standards propriétaires. Les interconnexions nécessitent des standards ouverts. L’adoption de standards est fondé sur la mise en place d’organisations et d’un processus de définition.

La définition d’un standard : la RFC A l’origine, n’importe qui pouvait écrire une RFC. Actuellement, l’IETF (Internet Engineering Task Force) écrit les RFC qui sont revues par l’IESG (Internet Engineering Steering Group) et l’IAB (Internet Architecture Board). Elles peuvent ensuite être publiées. Elles sont toutes en accès libre et gratuit (ce qui est rare pour des normes) sur http://www.rfc-editor.org/rfc-index.html

Un réseau, une pile de protocoles Qu’est-ce qu’un protocole ? Hors informatique, un protocole est un code de conduite, un ensemble de règles de manière à ce que des personnes de culture différente puissent communiquer sans générer de conflit. En réseau, il s’agit que des composants soient en accord sur la manière de réaliser une action dans un processus de communication.

Le modèle OSI (Open System Interconnection) Le modèle d'interconnexion des systèmes ouverts de l'ISO est un modèle de communications entre ordinateurs. Il décrit les fonctionnalités nécessaires à la communication et l'organisation de ces fonctions. La norme complète, de référence ISO 7498 est globalement intitulée «Modèle de référence de base pour l'interconnexion de systèmes ouverts (OSI)» ISO = International Organization for Standardization

Réseaux : modèles ISO : 7 couches 1. physique : niveau physique: support physique (Ethernet gros, fin, paires torsadées, fibre optique) et codage des bits. 2. liaison : paquets Ethernet, partage d'accès. 3. réseau : niveau IP: adresses du routage. 4. transport : niveau TCP: un port d'une machine dialogue avec un autre port d'une machine via un standard. 5. session : RPC. 6. présentation : XDR. 7. application : mail, DNS, rwho, ruptime, etc.

Couche 1 : Physique source : wikipedia Un circuit électronique chargé de convertir les bits en signaux électriques ou optiques et inversement. Le circuit se charge de l’émission et de la réception. Protocoles courants : NRZ NRZI Biphase ou Manchester Manchester différentiel Miller Bipolaire simple ou d'ordre 2 BHDn source : wikipedia

Couche 2 : Liaison La couche «liaison de données» gère les communications entre 2 machines adjacentes, i.e. directement reliées entre elles par un support physique. Elle est chargée du regroupement de bits isolés en trames ou de la délimitation de ces trames dans un flot de bit continu. Protocoles courants : Ethernet Fiber Distributed Data Interface (FDDI) HDLC LocalTalk Multiprotocol Label Switching (MPLS) Point-to-point protocol (PPP) Serial Line Internet Protocol (SLIP) Token Ring

Couche 3 : Réseau Protocoles courants : IP IPX La couche réseau construit une voie de communication de bout en bout à partir de voies de communication avec ses voisins directs. Elle effectue donc: - le routage : détermination d'un chemin permettant de relier les 2 machines distantes; - le relayage : retransmission d'un message dont la destination n'est pas locale pour le rapprocher de sa destination finale. Cette couche est donc la seule à être directement concernée par la topologie du réseau. C'est aussi la dernière couche supportée par toutes les machines du réseau pour le transport des données utilisateur: Les couches supérieures sont réalisées uniquement dans les machines d'extrémité. Protocoles courants : IP IPX

Transmission Control Protocol (TCP) User datagram protocol (UDP) Couche 4 : Transport La couche transport gère le communications de bout en bout entre processus. Cette couche : - gère l'envoi des données - établit l'ordre et la priorité des envois - contrôle l'intégrité de la réception Protocoles courants : Transmission Control Protocol (TCP) User datagram protocol (UDP) Sequenced packet exchange (SPX)

Couche 5 : Session Protocoles courants : NETBIOS Les 2 services originaux de la couche session sont la synchronisation des communications (quel intervenant peut émettre à tel moment) et la gestion des "transactions", un mécanisme de correction des erreurs de traitement par restauration d'un état antérieur connu. Les services de transport sont des services de communication point à point, i.e. avec 2 interlocuteurs. Mais le modèle OSI doit aussi convenir aux communications multipoints. 2 genres de communications multipoints sont explicitement mentionnées dans la norme: les communications en étoile où une session est un ensemble de communications point à point avec un interlocuteur engagé dans tous les échanges; et la diffusion où tous les interlocuteurs reçoivent tous les messages. Des mécanismes de synchronisation sont alors requis pour savoir par exemple qui répond à quoi. C'est le rôle des protocoles de cette couche. Protocoles courants : NETBIOS

Couche 6 : Présentation La couche présentation est chargée du codage des données applicatives. Les couches 1 à 5 transportent des octets bruts sans se préoccuper de leur signification. Mais ce qui doit être transporté en pratique, c'est du texte, des nombres et parfois des structures de données arbitrairement complexes. Le rôle de la couche présentation est donc de convertir entre données applicatives manipulées par les programmes et chaînes d'octets effectivement transportées par le réseau. - conversion des données émises par l'application - plus de format de fichier, de caractères (ASCII, etc.) particuliers - format commun d'envoi indépendant de la machine reconversion des données au format de l'application réceptrice Couche absente dans le protocole IP, ce rôle est dévolu à la couche supérieure (type MIME par exemple pour HTTP).

Couche 7 : Application C’est la couche qui permet d’accéder aux services réseaux. Comme elle est purement applicative, rien n’est précisé dans la norme. Dans le monde IP ce sont les protocoles les plus connus : - transfert de fichiers: FTP (IETF), NFS (Sun Microsystems) et AFS, SMB/CIFS (Microsoft) - messageries: Simple mail transfer protocol (SMTP), Post Office Protocol (POP), IMAP et pour la diffusion NNTP (Usenet) et encore X.400 - « session distante » : Telnet, rlogin, Secure shell (SSH) et des protocoles associés comme le déport d'affichage: X, XDMCP - type un peu tout et n'importe quoi: HTTP - protocoles d'exploitation et de gestion: Domain Name System pour la résolution d'adresse, Simple Network Management Protocol pour la supervision

Les protocoles s’intègrent les uns dans les autres Données utilisateur Données utilisateur En-tête applicative 7 En-tête TCP Données d’application Segment TCP 4 En-tête TCP Données d’application IP Datagramme IP 3 2 En-tête TCP Données d’application IP Ethernet Fin Trame Ethernet

Couche 4 : Transport par TCP La couche transport gère le communications de bout en bout entre processus. Cette couche gère l'envoi des données et contrôle l'intégrité de la réception. Grâce au protocole TCP, les applications peuvent communiquer de façon sûre (grâce au système d'accusés de réception du protocole TCP), indépendamment des couches inférieures. Le principe est d'ajouter au segment de données des informations d'en-tête et d'accusé de réception pour contrôler les flux.

L'envoi de données peut commencer, les machines sont synchornisées. Couche 4 : Transport par TCP Etablissement d'une connexion entre 2 machines : Les ports TCP doivent être ouverts. L'application sur le serveur est à l'écoute, en attente d'une connexion. L'application sur le client fait une requête de connexion sur le serveur. Les 2 machines se synchronisent avec un mécanisme en 3 temps (three ways handshake) : Le client transmet un segment dont le drapeau SYN est à 1 (pour signaler qu'il s'agit d'un segment de synchronisation), avec un numéro d'ordre N initial Le serveur reçoit le segment initial, et envoie un accusé de réception, c'est-à-dire un segment dont le drapeau ACK est à 1 et le drapeau SYN est à 1 (car il s'agit là encore d'une synchronisation). Le client transmet au serveur un accusé de réception, c'est-à-dire un segment dont le drapeau ACK est à 1, dont le drapeau SYN est à zéro (il ne s'agit plus d'un segment de synchronisation). L'envoi de données peut commencer, les machines sont synchornisées.

Couche 4 : Transport par TCP Fiabilité des données transmises : Lors de l'émission d'un segment, un numéro d'ordre est associé. A réception d'un segment de donnée, la machine réceptrice va retourner un segment de donnée dont le drapeau ACK est à 1 accompagné d'un numéro d'accusé de réception égal au numéro d'ordre précédent. La machine émettrice sait donc que le segment est bien arrivé. Elle envoie le segment suivant.

Couche 4 : Transport par TCP Fiabilité des données transmises (suite) : Grâce à une minuterie déclenchée dès réception d'un segment au niveau de la machine émettrice, le segment est réexpédié dès que le temps imparti est écoulé, car dans ce cas la machine émettrice considère que le segment est perdu... Si le segment n'est pas perdu et qu'il arrive tout de même à destination, la machine réceptrice saura grâce au numéro d'ordre qu'il s'agit d'un doublon et ne conservera que le dernier segment arrivé à destination...

Couche 4 : Transport par TCP Fin d'une connexion : Le client comme le serveur peut demander à mettre fin à une connexion. La fin de la connexion se fait de la manière suivante : Une des machines envoie un segment avec le drapeau FIN à 1, et l'application se met en état d'attente de fin, c'est-à-dire qu'elle finit de recevoir le segment en cours et ignore les suivants Après réception de ce segment, l'autre machine envoie un accusé de réception avec le drapeau FIN à 1 et continue d'expédier les segments en cours. Suite à cela la machine informe l'application qu'un segment FIN a été reçu, puis envoie un segment FIN à l'autre machine, ce qui clôture la connexion...

FTP (File Transfer Protocol) Quelques protocoles de haut niveau FTP (File Transfer Protocol) Ce protocole développé au MIT existe depuis 1971. Il reste un des principaux outils de transfert de fichiers entre machines. Le protocole FTP a pour objectifs de : permettre un partage de fichiers entre machines distantes permettre une indépendance aux systèmes de fichiers des machines clientes et serveur permettre de transférer des données de manière efficace Ce protocole est totalement non sécurisé ! (à tester) Il serait normalement à proscrire, mais sa large diffusion et son intégration dans les applications le rendent difficile à enlever complètement.

HTTP (HyperText Transfer Protocol) Quelques protocoles de haut niveau HTTP (HyperText Transfer Protocol) C'est le protocole le plus utilisé sur Internet depuis 1990. Le but du protocole HTTP est de permettre un transfert de fichiers localisés grâce à une chaîne de caractères appelée URL entre un navigateur (le client) et un serveur Web (httpd). La communication entre le navigateur et le serveur se fait en deux temps :

HTTP (HyperText Transfer Protocol) Quelques protocoles de haut niveau HTTP (HyperText Transfer Protocol) Une requête HTTP est un ensemble de lignes envoyé au serveur par le navigateur. Elle comprend : 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. Les champs d'en-tête de la requête (facultatives). Le corps de la requête (lignes optionnelles -par exemple pour un envoi de données par une commande POST lors de l'envoi de données au serveur par un formulaire)

HTTP (HyperText Transfer Protocol) Quelques protocoles de haut niveau HTTP (HyperText Transfer Protocol) Une réponse HTTP est un ensemble de lignes envoyé du serveur vers le navigateur. Elle comprend : Une ligne de statut contenant La version du protocole utilisé Le code de statut (200 OK, 404 fichier non trouvé, 304 non modifié) La signification du code Les champs d'en-tête de la réponse: lignes facultatives permettant de donner des informations supplémentaires sur la réponse et/ou le serveur. Le corps de la réponse: il contient le document demandé

SSH (Secure SHell) Quelques protocoles de haut niveau Il existe de nombreux protocoles permettant de réaliser des opérations à distance (telnet, les r-commandes..). L'inconvénient est de faire circuler en clair sur le réseau les informations échangées, notamment l'identifiant (login) et le mot de passe pour l'accès à la machine distante ! Comme on ne maîtrise pas les infrastructures situées entre l'utilisateur et la machine distante (Internet étant un réseau ouvert), la seule solution est de recourir à une sécurité au niveau logique (au niveau des données). Le protocole SSH (Secure Shell) répond à cette problématique en permettant à des utilisateurs (ou bien des services TCP/IP) d'accéder à une machine à travers une communication chiffrée (appelée tunnel).

SSH (Secure SHell) Quelques protocoles de haut niveau Les données circulant entre le client et le serveur sont chiffrées, ce qui garantit leur confidentialité (personne d'autre que le serveur ou le client ne peut lire les informations transitant sur le réseau). Il n'est donc pas possible d'écouter le réseau à l'aide d'un analyseur de trames. Le client et le serveur s'authentifient mutuellement afin d'assurer que les deux machines qui communiquent sont bien celles que chacune des parties croit être. Il n'est donc plus possible pour un pirate d'usurper l'identité du client ou du serveur.

SSH (Secure SHell) Quelques protocoles de haut niveau Etablissement d'une connexion : Dans un premier temps le serveur et le client s'identifient mutuellement afin de mettre en place un canal sécurisé (couche de transport sécurisée). On débute par une phase de négociation entre le client et le serveur afin de s'entendre sur les méthodes de chiffrement à utiliser. Ensuite, le serveur envoie sa clé publique d'hôte (host key) au client. Le client génère une clé de session qu'il chiffre grâce à la clé publique du serveur, et envoie au serveur la clé de session chiffrée ainsi que l'algorithme utilisé. Le serveur déchiffre la clé de session grâce à sa clé privée et envoie un message de confirmation chiffré à l'aide de la clé de session. A partir de là le reste des communications est chiffré grâce à un algorithme de chiffrement symétrique en utilisant la clé de session partagée par le client et le serveur. Dans un second temps le client s'authentifie auprès du serveur pour obtenir une session (via mots de passe ou via les clefs publiques).

Ethereal (Wireshark) Voir ce qui se passe via un analyseur réseau Un analyseur réseau est un logiciel (passif) qui écoute tout se qui se passe sur un réseau et qui le met en forme. C'est l'outil de base des administrateurs réseau et des pirates. Un des analyseurs libres les plus connus est Ethereal (maintenant Wireshark). Objectif : Installer Wireshark et voir comment se passe les transactions FTP, HTTP, SSH. Le serveur (portable) accepte des connexions FTP, HTTP et SSH pour le compte hetic, mot de passe F1l2fer.