Architecture Client/Serveur

Slides:



Advertisements
Présentations similaires
Les protocoles réseau.
Advertisements

Les principaux modèles de communication
GESTION D’IMPRISSION SOUS WINDOWS & LINUX
Programmation réseau Les sockets de Berkeley
Le protocole IPX/SPX Lajouad Rachid.
Mode Message Asynchrone (interface Socket)
Administrer Internet et les réseaux TCP / IP
- 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.
Firewall sous Linux Netfilter / iptables.
Vue d'ensemble Présentation multimédia : Rôle du routage dans l'infrastructure réseau Activation et configuration du service Routage et accès distant Configuration.
Architecture de réseaux
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.
4.La connexion de données 4-1.Présentation 4-2.Le mode actif 4-3.Le mode passif 4-4.Les commandes.
Sommaire: 1- Intro/ la raison d'être du FTP/petit historique
UDP – User Datagram Protocol
Introduction aux réseaux
Les Services Web Avec.NET version 1.1. Un service Web en bref… Méthodes ou objets accessible à distance via SOAP (Simple Object Access Protocol ); SOAP.
Etude des Technologies du Web services
Le modèle O.S.I..
Module 1 : Préparation de l'administration d'un serveur
Labview Programmation réseau Communication par sockets
Le protocole FTP.
CAT 2000 LES MIDDLEWARES Présenté par : Tagmouti Siham Smires Ali
Les relations clients - serveurs
Le Modele OSI.
TCP – Transmission Control Protocol
Technique de programmation : Le client/Serveur de traitements.
Développement d’application client/serveur
PHP 5° PARTIE : LES COOKIES
02 - Le modèle OSI* *OSI = Open Systems Interconnections.
Sommaire Dans ce chapitre, nous aborderons :
Suite.
Structures de données avancées : Concepts réseaux et protocole de communication. D. E ZEGOUR Institut National d ’Informatique.
User Datagram Protocol
Développement d’application client/serveur
OSI et TCP/IP CNAM
Les listes de contrôle d’accès
Concepts fondamentaux des réseaux
CEG3585/CEG3555 Tutorat 2 Hi ver 2013.
Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Advisor Advanced IP Présentation Télémaintenance Télésurveillance.
Répartition des adresses IP
Introduction à l’informatique en gestion 1 Internet Les réseaux Le modem Architecture Connectivité entre réseaux L’Internet Protocoles et adresses.
Les Réseaux Informatiques Clients & Serveurs Le protocole FTP Laurent JEANPIERRE DEUST AMMILoR.
Les sockets.
Master 1 SIGLIS Ingénierie des réseaux Stéphane Tallard Chapitre 4 – Couche réseau Master 1 SIGLIS1 Ingénierie des réseaux - Chapitre 4 La couche réseau.
INTERNET heg eid Avril-juin 2001 A.Rezzonico.
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.
Le protocole DHCP.
Les Réseaux Informatiques
Les RPC remote procedure call
Couche transport du modèle OSI
COMPARAISON ENTRE GNUTELLA ET FREENET
Ingénierie des réseaux - Chapitre 2 bis Les sockets en Java
Réseaux Informatiques
LE FTP.
Ingénierie des réseaux
Les protocoles de niveau message
V- Identification des ordinateurs sur le réseau
Fonctionnalité et protocole des couches applicatives
Les fonctionnalités de base des réseaux
SIRVIN Alexis RIVIERE Mathieu VERRIERE Arthur
L. Gurret – M. Herve – P. Mignon – J. Prarioz. Introduction  Dernière étape d’analyse  Cahier des charges, spécifications et conception orientée objet.
Java Remote Method Invocation
Synthèse: une journée dans la vie d'une requête Web 5: DataLink Layer5-1.
Client/Server Socket. Client/Serveur.
Département Informatique Les Réseaux Informatiques Couche Transport Protocoles UDP & TCP Laurent JEANPIERRE.
Transcription de la présentation:

Architecture Client/Serveur Les Sockets

PLAN Socket Implémentation Travaux pratiques Définition Propriétés Les modes de connexion Implémentation sockets en mode connecté sockets en mode non connecté Travaux pratiques

Définition Le terme “ socket ” désigne à la fois une bibliothèque d’interface réseau et l’extrémité d’un canal de communication (point de communication) par lequel un processus peut émettre ou recevoir des données. Ce point de communication est représenté par une variable entière, similaire à un descripteur de fichier.

Définition L’interface socket est un ensemble de primitives qui permettent de gérer l’échange de données entre processus, que ces processus soient exécutés ou non sur la même machine. La bibliothèque socket masque l’interface et les mécanismes de la couche transport : un appel socket se traduit par plusieurs requêtes transport

Propriétés Sockets : interface (point de communication) client/serveur utilisée à l’origine dans le monde UNIX et TCP/IP Étendue aux PCs (Winsock) et mainframes Primitives pour le support de communications reposant sur les protocoles (TCP/IP, UDP/IP) Les applications client/serveur ne voient les couches de communication qu’à travers l’API socket (abstraction)

Propriétés Sockets / OSI

Propriétés Modèle client / serveur et sockets

Les modes de connexion Le mode connecté correspond au protocole TCP. Le protocole établit une connexion virtuelle et se charge alors de maintenir l'intégrité de la communication et de gérer les erreurs de transmission. Le mode non connecté correspond au protocole UDP. Ce protocole fait l'envoi au mieux ("best effort"). C'est à l'application de maintenir la qualité de la transmission. UDP est une "couche mince" au-dessus de IP.

Les modes de connexion TCP UDP Garantie d’arrivée dans l’ordre de paquets de données Fiabilité de transmission Lenteur des transmissions (http par exemple) Vu comme un «service téléphonique» UDP Arrivée dans le bon ordre non garantie Non fiabilité des transmissions Rapidité des transmissions Applications audio/vidéo Vu comme un «service postal»

Implémentation sockets en mode connecté sockets en mode non connecté

Principes de base Chaque machine crée une socket, Chaque socket sera associée à un port de sa machine hôte, Les deux sockets seront explicitement connectées si on utilise un protocole en mode connecté …, Chaque machine lit et/ou écrit dans sa socket, Les données vont d’une socket à une autre à travers le réseau, Une fois terminé chaque machine ferme sa socket.

Notion de port Un service est rendu par un programme serveur sur une machine. Ce service est accessible à travers un réseau TCP/IP par un port. Un port est identifié par un entier (16 bits). Les ports numérotés de 0 à 511 sont les "well known ports" de l'architecture TCP/IP. Ils donnent accès aux services standard de l'interconnexion: transfert de fichiers (FTP port 21), terminal (Telnet port 23), courrier (SMTP port 25),serveur web (HTTP port 80) De 512 à 1023, on trouve les services Unix. Au delà, (1024 ...) ce sont les ports "utilisateurs" disponibles pour placer un service applicatif quelconque.

sockets en mode connecté SERVEUR : Crée une socket Associe une adresse socket (adresse Internet et numéro de port) Se met à l’écoute des connexions entrantes ; Pour chaque connexion entrante: Accepte la connexion (une nouvelle socket est créée avec les mêmes caractéristiques que la socket d’origine, ce qui permet de lancer un thread ou un processus fils pour gérer cette connexion). Lit et/ou écrit sur la nouvelle socket Ferme la nouvelle socket

sockets en mode connecté CLIENT : Crée une socket Se connecte au serveur en donnant l’adresse socket distante (adresse Internet du serveur et numéro de port du service). Le système d'exploitation attribue pour cette connexion automatiquement un numéro de port local au client Lit et/ou écrit sur la socket Ferme la socket

sockets en mode connecté Implémentation des algorithmes Client/Serveur en mode connecté

sockets en mode connecté class ServerSocket : (coté serveur) Constructeur : ServerSocket(int port) : creation d’une socket TCP connectée sur le port spécifié de la machine hôte. Méthodes : close() : ferme la socket. Socket accept() : écoute la socket et attend une requête de connection, retourne une nouvelle socket sur laquelle écouter le nouveau client (et lui seul)

sockets en mode connecté class OutputStream : Méthodes : write(…) : écrit dans le flux. close() : ferme flux. class InputStream : read(…) : lit le flux. close() : ferme le flux

sockets en mode non connecté CLIENT (émetteur) : Crée une socket Associe une adresse socket (opération qui n’est nécessaire que si le Processus va recevoir des données) Lit et/ou écrit sur la socket SERVEUR (récepteur) : Associe une adresse socket

sockets en mode non connecté Implémentation des algorithmes Client/Serveur en mode non connecté

sockets en mode non connecté Sockets UDP en Java (une démarche possible) : class DatagramSocket : (coté client et coté serveur) Constructeur : DatagramSocket() : creation d’une socket UDP, libre Méthodes : close() : ferme la socket. receive(DatagramPacket p) :reçoit un « DatagramPacket » de cette socket. send(DatagramPacket p):envoit un « DatagramPacket » sur cette socket.

sockets en mode non connecté class DatagramPacket : Constructeur : DatagramPacket(byte[ ] buf, int length,InetAddress address, int port) :creation d’un packet à destination d’une machine et d’un port spécifiés

Travaux Pratique Écrire deux programmes client et serveur en mode connecté. le serveur et le client échangent des messages Le client envoie un message "END" pour terminer la communication Utiliser un numéro de port de votre choix le programme client reçoit en paramètre l’adresse IP et le port du serveur.