Programmation client/serveur

Save this PDF as:
 WORD  PNG  TXT  JPG

Dimension: px
Commencer à balayer dès la page:

Download "Programmation client/serveur"

Transcription

1 Programmation client/serveur (sockets sur TCP/IP) java.net Philippe GENOUD UJF Novembre Communications sur Internet Pour communiquer sur Internet les ordinateurs utilisent différents protocoles : TCP (Transfert Control Protocol) protocole destiné aux applications nécessitant une communication fiable et robuste. Permet d établir une fiable entre deux machines pas de perte d information respect de l ordre dans lequel les informations sont envoyées et reçues les applications sont prévenues si la communication est interrompue UDP (User Datagram Protocol) protocole qui permet l envoi de paquets indépendants (datagrammes) d un ordinateur à un autre sans garantie quand à leur arrivée plus rapide mais moins fiable Philippe GENOUD UJF Novembre

2 Applications réseau Java Package standard qui permet aux programmes Java de réaliser des communications réseau de façon indépendante du système Object InetAdress Application Java java.net Socket Trans TCP, UDP, Réseau IP, Couche de base Device driver Couche Physique Ethernet, Applications HTTP, ftp, telnet, ServerSocket De nombreuses applications se basent sur ces protocoles Représente une adresse IP Connexions TCP/IP DatagramSocket DatagramPacket Connexions UDP URL URLConnection HttpURLConnection Connexions à un serveur HHTP Philippe GENOUD UJF Novembre Sockets et applications Client/Serveur 1) Le programme serveur tourne sur une machine hôte spécifique Serveur Client Le programme serveur possède un «socket» associé à un numéro de spécifique Le serveur est en attente d une demande de 2) Le client effectue une demande de Serveur demande de Client Le client connaît la machine hôte (hostname ou numéro IP) et le numéro de auquel est connecté le serveur 3) Le serveur accepte la Serveur Client Attribution d un socket (et d un numéro de ) Attribution d un nouveau socket (et d un nouveau numéro de ) 2 flots de données sont établis entre les deux machines : Le client et le serveur peuvent communiquer en écrivant ou en lisant dans leur socket Philippe GENOUD UJF Novembre

3 Sockets TCP dans java.net Assymétrie des s Deux classes pour les sockets en mode connecté (TCP) ServerSocket Encapsule le socket du serveur Pour s initialiser un ServerSocket a besoin d un numéro de Attente et acceptation des demandes de Socket Encapsule le socket du client Pour s initialiser un Socket a besoin d une adresse IP et d un numéro de Demande de avec le serveur Philippe GENOUD UJF Novembre Client / Serveur avec java.net : principe (1) Le serveur enregistre son service (2) Le serveur se met en attente de (4) Utilisation du socket Serveur ServerSocket svs = new ServerSocket(#) Le client doit être démarré après le serveur. Si le serveur n a pas encore démarré, levée d une exception après un time-out Client (3) Etablir la svs.accept() Socket sc = new Socket(host, #) Sortie de accept retour d un objet Socket (4) Utilisation Socket s = du socket (5 ) Fermer la (6) Fermer le service InputStream OutputStream s.close() svs.close() socket Canal TCP socket sc.close() OutputStream InputStream close() ferme (détruit) le socket côté client comme côté serveur (5) Fermer la Philippe GENOUD UJF Novembre

4 Echanges entre client et serveur Pour échanger des données le serveur et le client utilisent les flux d entrée/sortie fournis par leur socket : Un objet java.io.inputstream pour la lecture retourné par la méthode getinputstream() de Socket Un objet java.io.outputstream pour l écriture retourné par la méthode getoutputstream() de Socket InputStream et OutputStream sont les classes du package java.io proposant les primitives de base pour la lecture et l écriture sur un flux d entrée ou de sortie Deux types d échanges sont possibles Échanges en mode ligne (chaînes de caractères) Echanges en mode bloc d octets (bytes) Philippe GENOUD UJF Novembre Les classes d'entrées/sorties Quelques classe du package java.io Flux d'octets Flux de caractères Flux d'entrée InputStream FilterInputStream FileInputStream BufferedInputStream ByteArrayInputStream Reader InputStreamReader BufferedReader FileReader Flux de sortie OutputStream FilterOutputStream FileOutputStream BufferedOutputStream ByteArrayOutputStream InputStreamWriter FileWriter Writer BufferedWriter Philippe GENOUD UJF Novembre

5 Echanges en mode ligne Requêtes et réponses sont constituées d une ou plusieurs lignes de texte (ASCII 7 bits, UTF-8, ISO (Latin-1) ) Exemple : HTTP, SMTP, Utilisation des classes d entrées/sorties du package java.io BufferedReader BufferedWriter Attention : Variation des terminateurs de ligne selon les OS LF '\n', CR '\r', CRLF '\r' '\n' Encodage n est pas supé par tous les langages Certains protocoles (HTTP, SMTP ) limitent la longueur des lignes Philippe GENOUD UJF Novembre Echanges en mode ligne Le flux d entrée 1) Obtention d un flux (stream) d entrée simple : définit les opérations de base InputStream in = masocket.getinputstream(); 2) Création d un stream convertissant les octets (bytes) reçus en char InputStreamReader isreader = new InputStreamReader(in); BufferedReader buffreader = new BufferedReader(isReader); String line = buffreader.readline(); 3) Création d un stream de lecture avec tampon pour lire ligne par ligne dans un stream de caractères 4) Lecture d une ligne (chaîne de caractères) Philippe GENOUD UJF Novembre

6 Echanges en mode ligne Le flux de sortie 1) Obtention d un flux (stream) de sortie simple : définit les opérations de base OutputStream out = masocket.getoutputstream(); 2) Création d un stream convertissant chaînes de caractères en octets (bytes) PrintWriter writer = new PrintWriter(out); writer.println(line); 3) Envoi d une ligne (line est une String) writer.flush(); 4) Force l envoi effectif sur le réseau (force le «vidage» du buffer d E/S) Philippe GENOUD UJF Novembre Echanges en mode bloc de données Les données échangées sont des blocs d octets (bytes) Les blocs sont d une taille et d un format connus des deux partenaires (le serveur et le client) un bloc peut avoir un entête qui contient un code d opération et la longueur des données (talle du bloc) Exemple : RPC (Remote Procedure Call), RMI (Remove Method Invocation), En Java, possibilité d utiliser les classes java.io.datainputstream java.io.dataoutputstream Philippe GENOUD UJF Novembre

7 Protocole d échange Un protocole d échange spécifiant la structure des requêtes et réponses échangées par le client et le serveur doit être fixé. Le client et le serveur doivent respecter ce protocole Exemples de problèmes possibles Format de données incorrect : le client envoie un entier alors que le serveur attend un flottant Interblocage : le client attend des données du serveur et le serveur attend des données du client Hétérogénéité des plateformes client et serveur différence de codage des données sur le serveur et le client Philippe GENOUD UJF Novembre Classes d exceptions de java.net Principales classes d exceptions de java.net C Coté client S Coté serveur java.lang.exception C Problème générique de S java.io.ioexception C S Erreur du protocole TCP/IP (problème de configuration De la pile TCP/IP) SocketException ProtocolException ConnectException UnknownHostException C Refus de par l hôte (aucun service associé au numéro de ) BindException S Un service est déjà associé à ce numéro de NoRouteToHostException C Erreur du DNS : L adresse IP de l hôte ne peut être déterminée L hôte n est pas joignable. Le routeur ne trouve pas le serveur ou le serveur est C protégé par un firewall Philippe GENOUD UJF Novembre

8 Servir plusieurs clients ServeurSocket ssock = new ServeurSocket(4444); Ne permet de servir qu un seul client Socket s = ssock.accept(); // création d une socket quand un demande de a été acceptée // traiter le client associé à cette Si plusieurs demandes de arrivent simultanément, une seule est acceptée, les autres sont mises en attente jusqu au accept suivant (modulo les time-out) ServeurSocket ssock = new ServeurSocket(4444); boolean arretserveur = false; while (! arretserveur) { Sert plusieurs clients MAIS consécutivement Socket s = ssock.accept(); // création d une socket quand un demande de a été acceptée // traiter le client associé à cette Pour accepter et traiter plusieurs s simultanées, il faut multithreader le serveur Philippe GENOUD UJF Novembre Serveur Multithreadé ServeurSocket ssock = new ServeurSocket(4444); boolean arretserveur = false; while (! arretserveur) { Thread dispatcher ❶ ❷ ❸ ❶ ❷ ❷ ❸ ❶ ❸ Socket s = ssock.accept(); // création d une socket quand un demande de a été acceptée // traiter le client associé à cette Créer et Lancer un thread pour traiter ce client Attente demande de Récupération de la socket Dédiée à la Création et lancement d un thread de service Attente demande de Récupération de la socket Dédiée à la Création et lancement d un thread de service Attente demande de ❶ Thread de service Client 2 Prise en charge du dialogue avec le client Thread de service Client 1 Prise en charge du dialogue avec le client 1 Philippe GENOUD UJF Novembre

9 Serveur Multithreadé ServeurSocket ssock = new ServeurSocket(4444); boolean arretserveur = false; while (! arretserveur) { Socket sock = ssock.accept(); // création d une socket quand un demande de a été acceptée // traiter le client associé à cette // créer un thread pour traiter le client ServiceClient sc = new ServiceClient(sock); Thread threadservice = new Thread(sc); threadservice.start(); <interface> Runnable + run() ServiceClient + ServiceClient(Socket s) + run() Le traitement du client Philippe GENOUD UJF Novembre Client Multitread public class ServiceClient implements Runnable { private Socket s; private BufferedReader in; private PrintWriter out; private boolean termine = false; public ServiceClient(Socket s) { this.s = s; in = new BufferedReader( new InputStreamReader((s.getInputStream())); out = new PrintWriter(s.getOutputStream()); Création des flux d entrée/sortie pour communiquer avec le serveur public void run() { try { while (! termine) { String line = in.readline(); out.println(); catch (IOException ioe) { finally { try { s.close(); catch (IOException ioe) { Le traitement du client Une gestion plus fine des exceptions est possible Quel que soit le cas de figure on essaye de fermer le socket avant de terminer le traitement du client Philippe GENOUD UJF Novembre

10 Exercice (1) Ecrire une application client serveur minimale Le client lit une chaîne au clavier qu il envoie vers le serveur Le serveur affiche la chaîne lue et renvoie un accusé de réception au client qui l affiche Pour terminer sa session le client envoie la chaîne "fin" (2) Modifier le programme de façon à avoir plusieurs clients Philippe GENOUD UJF Novembre

Sockets. Karima Boudaoud IUT- R&T

Sockets. Karima Boudaoud IUT- R&T Sockets Karima Boudaoud IUT- R&T Rappels sur les sockets Qu est ce qu un socket? Point d entrée entre 2 appli. du réseau Permet l échange de donnée entre elles à l aide des mécanismes d E/S (java.io) Différents

Plus en détail

Programmation Socket en Java

Programmation Socket en Java Programmation Socket en Java Cours sockets Université Paul Sabatier Plan Un bon réflexe Les adresses IP en Java Sockets en mode flot La classe Socket La classe ServerSocket Communication via les Sockets

Plus en détail

Le réseau. Sommaire. Ce chapitre concerne les classes du package java.net qui permettent de travailler avec le réseau au niveau applicatif.

Le réseau. Sommaire. Ce chapitre concerne les classes du package java.net qui permettent de travailler avec le réseau au niveau applicatif. Le réseau Ce chapitre concerne les classes du package java.net qui permettent de travailler avec le réseau au niveau applicatif. Sommaire 1.LES URL... 2 1.1DÉFINITIONS...2 1.2LES CLASSES URL ET URLCONNECTION...

Plus en détail

La programmation réseau. Java

La programmation réseau. Java Chapitre 7 : Java et les réseaux La programmation réseau Java Rémy Courdier 1996-2003 - Java Réseau - Version du cours 3.0 1 Sommaire La programmation réseau La classe URL Les Sockets TCP/IP et les principaux

Plus en détail

Java. Exception et Entrée/Sortie

Java. Exception et Entrée/Sortie Java Exception et Entrée/Sortie Plan Exception Principe, utilisation, création Paquetage java.io Notion de flots Organisation du paquetage Flots d octets Flots de caractères Exceptions Principe Définition

Plus en détail

Travaux Pratiques de Réseaux DUT 2 eme année

Travaux Pratiques de Réseaux DUT 2 eme année Travaux Pratiques de Réseaux DUT 2 eme année Copyright c Emmanuel Nataf Chapitre 1 Programmation réseaux 1.1 Communication avec UDP - package java.net Le but de ce TP est de réaliser deux programmes permettant

Plus en détail

Programmation Java Avancée

Programmation Java Avancée Programmation Java Avancée Module RPCI01 Département R&T IUT de Villetaneuse 2 novembre 2015 Département R&T Programmation Java Avancée 2 novembre 2015 1 / 74 Plan du cours 1 La gestion des exceptions

Plus en détail

Java : Les FLUX de données

Java : Les FLUX de données 1 Java : Les FLUX de données Les flux de données introduction les flux binaires les flux binaires de sortie (FBS) les flux binaires d entrée (FBE) les flux textes (FTS & FTE) les flux textes de sortie

Plus en détail

La programmation réseau. Java

La programmation réseau. Java Chapitre 7 : Java et les réseaux La programmation réseau Java Rémy Courdier 1996-2009 - Java Réseau - Version du cours 3.0 1 Sommaire La programmation réseau Rappel Réseau Couches réseau et TCP-IP Notion

Plus en détail

TP programmation Internet en JAVA

TP programmation Internet en JAVA TP programmation Internet en JAVA préparé par P. Bakowski Ce TP nécessite quelques préparations du logiciel. Vous pouvez utiliser l environnement NetBeans avec le pack SDK Java SE Le site polytech2go.fr

Plus en détail

Programmation réseau en java : les sockets

Programmation réseau en java : les sockets Programmation réseau en java : les sockets M. Belguidoum Université Mentouri de Constantine Département Informatique M. Belguidoum (UMC) Programmation réseau 1 / 46 Plan 1 Rappel sur les entrées/sorties

Plus en détail

CEG3585/CEG3555 Tutorat 2. Été 2015

CEG3585/CEG3555 Tutorat 2. Été 2015 CEG3585/CEG3555 Tutorat 2 Été 2015 Architecture TCP/IP Les applications sont développées avec le socket API (en Java les classes Socket et ServerSocket) Adresse socket: Port TCP Adresse IP Les deux adresses

Plus en détail

Programmation réseaux avec le langage Java

Programmation réseaux avec le langage Java Programmation réseaux avec le langage Java Février 2015 Ivan Madjarov Partie I Introduction à la programmation Java réseau 2 Introduction Le modèle OSI (Open System Interconnexion) 3 Routage et Passerelle

Plus en détail

Sérialisation sur le système de fichiers. Gestion des exceptions en Java.

Sérialisation sur le système de fichiers. Gestion des exceptions en Java. Sérialisation sur le système de fichiers. Gestion des exceptions en Java. Christophe Gravier, Frédérique Laforest, Julien Subercaze Télécom Saint-Étienne Université Jean Monnet {pnom.nom}@univ-st-etienne.fr

Plus en détail

Programmation Réseau. API Java TCP. Jean-Baptiste.Yunes@univ-paris-diderot.fr. ! UFR Informatique ! 2013-2014

Programmation Réseau. API Java TCP. Jean-Baptiste.Yunes@univ-paris-diderot.fr. ! UFR Informatique ! 2013-2014 Programmation Réseau API Java TCP Jean-Baptiste.Yunes@univ-paris-diderot.fr UFR Informatique 2013-2014 Les flux réseau en Java pré-requis : utiliser correctement les classes d entrées-sorties Java (package

Plus en détail

Travaux pratiques. Protocoles de la couche transport et de la couche applications

Travaux pratiques. Protocoles de la couche transport et de la couche applications Travaux pratiques Protocoles de la couche transport et de la couche applications Objectif Ce laboratoire se veut une introduction aux protocoles de la couche transport et de la couche application du modèle

Plus en détail

RESEAUX. Communications dans les systèmes Centralisés vs Répartis. Le modèle OSI : 7 couches Open System Interconnexion. Plan.

RESEAUX. Communications dans les systèmes Centralisés vs Répartis. Le modèle OSI : 7 couches Open System Interconnexion. Plan. RESEAUX Communications dans les systèmes Centralisés vs Répartis Espace utilisateur P1 P2 P1 P2 Programmation par sockets Espace noyau Systèmes centralisés Systèmes répartis Nécessité d avoir une mémoire

Plus en détail

Pour plus de détails concernant le protocole TCP conférez vous à la présentation des protocoles Internet enseignée pendant.

Pour plus de détails concernant le protocole TCP conférez vous à la présentation des protocoles Internet enseignée pendant. Chapitre 7 Le mode de communication en connexion est, a priori, supporté par le protocole TCP. Ce protocole fournit une communication fiable; les données sont transmises comme chaînes d octets. Avant de

Plus en détail

Données et communications en Java

Données et communications en Java Données et communications en Java Programmation des applications réparties Olivier Flauzac Master EEAMI-Informatique première année Olivier Flauzac (URCA) Données et communications en Java EEAMI-INFO 1

Plus en détail

Première étape : Le modèle client/serveur avec le protocole TCP (client unique)

Première étape : Le modèle client/serveur avec le protocole TCP (client unique) École de technologie supérieure Responsable du cours : Hassan Zeino Département de génie logiciel et des TI Chargés de laboratoire : Fatna Belqasmi (A-3326) Session : Automne 2010 LOG610 - RÉSEAUX DE TELECOMMUNICATION

Plus en détail

TP 3 Programmation client/serveur

TP 3 Programmation client/serveur PhL - 20/03/2007 - Page 1 / 5 TP 3 Programmation client/serveur 1. Modèle de programmation 1. Introduction Au-dessus des protocoles de transmission, on peut construire des applications réparties reposant

Plus en détail

Socket Programming. (Dr. ) Sébastien Varrette

Socket Programming. (Dr. ) Sébastien Varrette Socket Programming (Dr. ) Sébastien Varrette Network Model Modèle OSI Modèle TCP/IP TYPES DE COUCHES Service Réseau Applicative Réseau Matérielle Application Presentation Session Transport Réseau Liaison

Plus en détail

Mise en situation FOUR. Température. Capteur. température. Ethernet. Le capteur attend une demande de connexion du PC pour envoyer la valeur de la

Mise en situation FOUR. Température. Capteur. température. Ethernet. Le capteur attend une demande de connexion du PC pour envoyer la valeur de la François SCHNEIDER Mise en situation Température FOUR Capteur température Ethernet Le PC effectue une requête de connexion au capteur de température, il reçoit la valeur de la mesure de la température

Plus en détail

java.io: les bases Notion de «I/O Stream» (courant,ruisseau, flux) input stream output stream

java.io: les bases Notion de «I/O Stream» (courant,ruisseau, flux) input stream output stream java.io.* java.io: les bases Notion de «I/O Stream» (courant,ruisseau, flux) input stream output stream Byte streams Les programmes utilisent des bytes de 8-bits pour réaliser des entrées/sorties de byte

Plus en détail

Les protocoles UDP et TCP

Les protocoles UDP et TCP 3 Les protocoles UDP et TCP TCP comme UDP s exécute au-dessus d IP et se fonde sur les services fournis par ce dernier. TCP (Transport Control Protocol) assure un service de transmission de données fiable

Plus en détail

Les réseaux. Le Generic Connection Framework GCF

Les réseaux. Le Generic Connection Framework GCF Les réseaux Le Generic Connection Framework GCF Connexion réseau Le profil MIDP fournit quelques classes du package java.io mais aucune classe du package java.net les terminaux mobiles peuvent supporter

Plus en détail

En général, les données qui circulent sur un réseau peuvent être envoyées en deux modes:

En général, les données qui circulent sur un réseau peuvent être envoyées en deux modes: Chapitre 6 Ce chapitre est le premier des chapitres consacrés à la programmation réseau en langage Java. Une étude efficace de ces chapitres nécessite quelques connaissances concernant les réseaux informatiques

Plus en détail

DUT Informatique Module Système S4 C Département Informatique 2009 / 2010. Travaux Dirigés n o 3 : Sockets Stream

DUT Informatique Module Système S4 C Département Informatique 2009 / 2010. Travaux Dirigés n o 3 : Sockets Stream iut ORSAY DUT Informatique Département Informatique 2009 / 2010 Travaux Dirigés n o 3 : Sockets Stream Objectifs : comprendre les principes et les mécanismes de communication par sockets stream, être capable

Plus en détail

Les réseaux : Principes de fonctionnement d Internet

Les réseaux : Principes de fonctionnement d Internet Les réseaux : Principes de fonctionnement d Internet Table des matières 1. Le modèle TCP/IP... 2 2. Couche 1 ou couche physique... 3 3. Couche 2 ou couche liaison ou couche lien... 4 4. Couche 3 ou couche

Plus en détail

Chapitre 6. Flux binaires (illustration sur les fichiers) Les flux. Plan. Flux. Types de Flux. Flux binaire entrant sur un fichier

Chapitre 6. Flux binaires (illustration sur les fichiers) Les flux. Plan. Flux. Types de Flux. Flux binaire entrant sur un fichier Chapitre 6 Les flux Flux binaires (illustration sur les fichiers) 05/12/03 Les flux page 1 05/12/03 Les flux page 5 Plan Flux binaires (flux d octets) Flux textes (flux de caractères) Conversions de flux

Plus en détail

Programmation Internet en Java

Programmation Internet en Java Chapitre 8 Programmation Internet en Java Vous avez déjà utilisé Internet, le plus connu des inter-réseaux mondiaux d ordinateurs et quelques-uns de ses services, en particulier le web et le courrier électronique.

Plus en détail

Cours. Majeure Informatique Ecole Polytechnique. Applications client/serveur

Cours. Majeure Informatique Ecole Polytechnique. Applications client/serveur Cours Système et Réseaux Majeure Informatique Ecole Polytechnique 7 Applications client/serveur François Bourdoncle Francois.Bourdoncle@ensmp.fr http://www.ensmp.fr/ bourdonc/ 1 Plan Les sockets d Unix

Plus en détail

Le réseau est l ordinateur

Le réseau est l ordinateur Le réseau est l ordinateur (Bill Joy) Les applets 1 Les applets : principe Les applets sont des programme Java téléchargés à partir d un serveur WEB et qui s exécutent dans le browser d un client : Fichier.html

Plus en détail

Programmation client/serveur

Programmation client/serveur Les sockets Programmation client/serveur Le serveur est la machine à l écoute des requêtes des clients auxquelles il doit répondre. Il exécute une boucle infinie qui attend une requête d un client. Il

Plus en détail

Systèmes distribués. Sockets TCP/UDP et leur mise en œuvre en Java

Systèmes distribués. Sockets TCP/UDP et leur mise en œuvre en Java Systèmes distribués Sockets TCP/UDP et leur mise en œuvre en Java Eric Cariou Université de Pau et des Pays de l'adour Département Informatique Eric.Cariou@univ-pau.fr 1 Rappel sur les réseaux TCP ou UDP

Plus en détail

NOTIONS FONDAMENTALES SUR LES RÉSEAUX CHAP. 2 MODÈLES OSI ET TCP/IP

NOTIONS FONDAMENTALES SUR LES RÉSEAUX CHAP. 2 MODÈLES OSI ET TCP/IP BTS I.R.I.S NOTIONS FONDAMENTALES SUR LES RÉSEAUX CHAP. 2 MODÈLES OSI ET TCP/IP G.VALET Nov 2010 Version 2.0 Courriel : genael.valet@diderot.org, URL : http://www.diderot.org 1 LE BESOIN D UN MODÈLE Devant

Plus en détail

Programmation orientée objet appliquée avec le langage Java Réseaux

Programmation orientée objet appliquée avec le langage Java Réseaux Programmation orientée objet appliquée avec le langage Java Réseaux IUT d'aix en Provence Réseaux et Télécommunications Décembre 2013 Ivan Madjarov Partie XIII Programmation en Java par Socket en mode

Plus en détail

TCP/IP TCP/IP. Le modèle de TCP/IP comporte 4 couches: Application, Transport, Network, Link.

TCP/IP TCP/IP. Le modèle de TCP/IP comporte 4 couches: Application, Transport, Network, Link. TCP/IP TCP/IP Le modèle de TCP/IP comporte 4 couches: Application, Transport, Network, Link. 1 TCP/IP Link : C'est le protocole bas niveau utilisé pour communiquer sur le même réseau physique. On utilise

Plus en détail

as Architecture des Systèmes d Information

as Architecture des Systèmes d Information Présentation Flux octet Flux caractère Sérialisation Présentation Flux octet Flux caractère Sérialisation Programmation - Gestion des entrées / sorties - Nicolas Malandain March 30, 2011 as Architecture

Plus en détail

Exemple : Lecture d un registre, à l offset 4, sur l équipement d ID 9, qui renvoie la valeur 5 :

Exemple : Lecture d un registre, à l offset 4, sur l équipement d ID 9, qui renvoie la valeur 5 : 1 Ethernet TCP/IP Protocole Modbus TCP 2 Ethernet TCP/IP - Protocole Modbus TCP Codage des Données Type de représentation des adresse et données utilisé par Modbus : big-endian, soit :lorsqu une quantité

Plus en détail

Simulateur Ip. Chapitre 3. 3.2 Construction des topologies

Simulateur Ip. Chapitre 3. 3.2 Construction des topologies Chapitre 3 Simulateur Ip 3.1 Présentation générale Le simulateur IP permet de : construire une topologie de réseau composée de routeurs et de machines reliés deux à deux par des liaisons ; donner des adresses

Plus en détail

Cisco Certified Network Associate

Cisco Certified Network Associate Cisco Certified Network Associate Version 4 Notions de base sur les réseaux Chapitre 4 1 D après l en-tête de la couche transport illustré, quelles affirmations parmi les suivantes définissent la session

Plus en détail

Programmation par sockets-java

Programmation par sockets-java 2A-SI 3 Prog. réseau et systèmes distribués 3.1 - Programmation par sockets-java Stéphane Vialle Stephane.Vialle@supelec.fr http://www.metz.supelec.fr/~vialle Support de cours élaboré avec l aide de l

Plus en détail

LES FICHIERS. 1-169169 JAVA Christine BONNET

LES FICHIERS. 1-169169 JAVA Christine BONNET 12 LES FICHIERS 1-169169 JAVA Christine BONNET LES FLOTS Package java.io La gestion des E/S s'effectue à l'aide des flots. Un stream (flot) représente un canal de communication ( écran, fichier, pipe,

Plus en détail

Chapitre IX : Introduction à la programmation

Chapitre IX : Introduction à la programmation Chapitre IX : Introduction à la programmation réseau Eric.Leclercq@u-bourgogne.fr Département IEM http://ufrsciencestech.u-bourgogne.fr http://ludique.u-bourgogne.fr/~leclercq 24 mars 2011 1 La communication

Plus en détail

Package java.net. Interfaces Interface ContentHandlerFactory Interface SocketImplFactory Interface URLStreamHandlerFactory

Package java.net. Interfaces Interface ContentHandlerFactory Interface SocketImplFactory Interface URLStreamHandlerFactory Package java.net Classes class ContentHandler class DatagramPacket class DatagramSocket class InetAddress final class ServerSocket final class Socket class SocketImpl final class URL abstract class URLConnection

Plus en détail

Java - TP3. Nicolas Baudru, Carine Guivier-Curien, Laurent Vallet. Année 2008-2009

Java - TP3. Nicolas Baudru, Carine Guivier-Curien, Laurent Vallet. Année 2008-2009 Java - TP3 Nicolas Baudru, Carine Guivier-Curien, Laurent Vallet Année 2008-2009 Le but de ce TD est d'écrire une application client/serveur de type msn : 1. Des clients se connectent à un serveur 2. Un

Plus en détail

LES PROTOCOLES TCP ET UDP

LES PROTOCOLES TCP ET UDP LES PROTOCOLES TCP ET UDP 1. LES NUMEROS DE PORT TCP et UDP sont des protocoles de la couche Transport (niveau 4) du modèle OSI. A la réception d'un datagramme, une machine est identifiée de manière unique

Plus en détail

Livres disponibles à la bibliothèque (RDC)

Livres disponibles à la bibliothèque (RDC) Livres disponibles à la bibliothèque (RDC) Réseaux, 3 ème édition, A.TANENBAUM, 1997. TCP/IP : Architecture, protocoles et applications, 3 ème édition, D.COMER, 1998 TCP/IP : Administration de réseaux,

Plus en détail

Parseur XML (2 séances)

Parseur XML (2 séances) Parseur XML (2 séances) Raksmey PHAN Ce TP vous a pour objectif de vous faire découvrir les fichiers XML. Nous allons créer un programme qui permet de lire et écrire un fichier XML. Puis nous verrons un

Plus en détail

Réseaux - partie 4 Transport

Réseaux - partie 4 Transport Réseaux - partie 4 Transport Michel RIVEILL, INP Grenoble Laboratoire SIRAC INRIA Rhône-Alpes 655, av. de l Europe - 38330 Montbonnot St Martin Michel.Riveill@inpg.fr Plan Introduction Physique Liaison

Plus en détail

Communication inter-processus (IPC) : tubes & sockets. exemples en C et en Java. F. Butelle

Communication inter-processus (IPC) : tubes & sockets. exemples en C et en Java. F. Butelle F. Butelle, E. Viennet, Système GTR2 IUT Paris 3 Communication inter-processus (IPC) : tubes & sockets exemples en C et en Java F. Butelle F. Butelle, E. Viennet, Système GTR2 IUT Paris 3 Java : implémentation

Plus en détail

Couche transport TCP

Couche transport TCP Couche transport TCP Sébastien Jean IUT de Valence Département Informatique v3.1, 30 avril 2012 TCP, en bref Généralités TCP? TCP (Transmission Control Protocol, RFC 793) fournit un service de transfert

Plus en détail

Etude de cas PLM. Patrice TORGUET IRIT Université Paul Sabatier

Etude de cas PLM. Patrice TORGUET IRIT Université Paul Sabatier Etude de cas PLM Patrice TORGUET IRIT Université Paul Sabatier Plan Exemple PLM Répartition avec Sockets Répartition avec RMI Répartition avec CORBA Répartition avec JMS Répartition avec Java EE Améliorations

Plus en détail

TP4 : Stockage de données

TP4 : Stockage de données TP4 : Stockage de données 1 TP4 : Stockage de données Programmation Mobile Objectifs du TP Ce TP a pour objectif de vous initier au stockage des données dans le téléphone Android, dans la mémoire interne

Plus en détail

Université Mohammed Premier Année universitaire 2012-2013

Université Mohammed Premier Année universitaire 2012-2013 Université Mohammed Premier Année universitaire 2012-2013 Faculté des Sciences Filière SMI Département de Mathématiques Module : POO Java et d Informatique Semestre : S5 Responsable du cours : El Mostafa

Plus en détail

Obert Hervé Stumpf Mathieu Licence 3 RIA. Réseaux & Protocoles. Client pair-à-pair. Projet L3 RIA 2005-2006 Sommaire.

Obert Hervé Stumpf Mathieu Licence 3 RIA. Réseaux & Protocoles. Client pair-à-pair. Projet L3 RIA 2005-2006 Sommaire. Obert Hervé Stumpf Mathieu Licence 3 RIA Réseaux & Protocoles Client pair-à-pair Projet L3 RIA 2005-2006 Sommaire Page 1 sur 10 Introduction - Présentation du projet 3 Fonctionnement coté graine 4 Fonctionnement

Plus en détail

OS Réseaux et Programmation Système - C4

OS Réseaux et Programmation Système - C4 OS Réseaux et Programmation Système - C4 Rabie Ben Atitallah Rabie.benatitallah@univ-valenciennes.fr Sockets Communications dans les systèmes centralisés Communications dans les systèmes répartis Protocole

Plus en détail

Interface des sockets

Interface des sockets Interface des sockets IUT Bordeaux I 08/12/2008 Interface des Sockets 1 A quoi servent les sockets? Applications client/serveur Transfert de fichiers, Connexion à distance, Courrier électronique, Groupe

Plus en détail

Université Pierre Mendès France U.F.R. Sciences de l Homme et de la Société Licence MIASS. TP sur IP

Université Pierre Mendès France U.F.R. Sciences de l Homme et de la Société Licence MIASS. TP sur IP Université Pierre Mendès France U.F.R. Sciences de l Homme et de la Société Licence MIASS TP sur IP L'objectif de ce premier TP est de vous montrer comment les données circulent dans un réseau, comment

Plus en détail

Principe de la récupération d erreur dans TCP. Exercices sur La couche Transport. Récupération d erreur

Principe de la récupération d erreur dans TCP. Exercices sur La couche Transport. Récupération d erreur Exercices sur La couche Transport Principe de la récupération d erreur dans TCP» Fenêtre d anticipation avec re-émission sélective et acquittements cumulatifs (voir chapitre Contrôle d erreur) 4 3 2 Transport

Plus en détail

Zouhair ELHADARI Centre de BTS Dakhla 2 ème année BTS DSI

Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d application client/serveur Zouhair ELHADARI www.hadari.jimdo.com Centre de BTS Dakhla 2 ème année BTS DSI Chapitre 5 Programmation réseau en JAVA Prof:EL HADARI zouhair 2 Partie 1 : La

Plus en détail

Entrées / Sorties. Entrées / Sorties. Entrées/Sorties. System.out. Fonctionnement par flots (stream) Karima Boudaoud IUT- R&T. Terrain connu.

Entrées / Sorties. Entrées / Sorties. Entrées/Sorties. System.out. Fonctionnement par flots (stream) Karima Boudaoud IUT- R&T. Terrain connu. Entrées / Sorties Entrées/Sorties Fonctionnement par flots (stream) Karima Boudaoud IUT- R&T Karima Boudaoud IUT GTR-Sophia Antipolis 2 Terrain connu Entrées / Sorties la classe java.lang.system cette

Plus en détail

Le modèle client-serveur

Le modèle client-serveur Le modèle client-serveur Introduction Christian Bulfone christian.bulfone@gipsa-lab.fr www.gipsa-lab.fr/~christian.bulfone/ic2a-dciss Master IC2A/DCISS Année 2012/2013 Encapsulation : rappel Données Données

Plus en détail

Base de programmation Objet en JAVA. 5ème partie.

Base de programmation Objet en JAVA. 5ème partie. Base de programmation Objet en JAVA. 5ème partie. Frédéric Vernier (Université Paris-Sud / LRI / LIMSI-CNRS) Frederic.Vernier,@limsi.fr Ce cours reprend en grande partie le matériel pédagogique mis au

Plus en détail

Programmation répartie avec les sockets. Patrice Torguet IRIT Université Paul Sabatier

Programmation répartie avec les sockets. Patrice Torguet IRIT Université Paul Sabatier Programmation répartie avec les sockets Patrice Torguet IRIT Université Paul Sabatier Plan Problèmes liés au réseau Protocoles applicatifs Sockets BSD Protocoles de Transport Programmation en Java Conclusion

Plus en détail

Chapitre 3 : Les échanges dans le monde TCP-IP. Support des Services et Serveurs

Chapitre 3 : Les échanges dans le monde TCP-IP. Support des Services et Serveurs SI 5 BTS Services Informatiques aux Organisations 1 ère année Chapitre 3 : Support des Services et Serveurs Objectifs : Les échanges dans le monde TCP-IP Maîtriser le modèle TCP/IP, l'ensemble de ses protocoles,

Plus en détail

AUCUN DOCUMENT AUTORISÉ. Détailler autant que possible vos réponses, en particulier pour les questions de cours!

AUCUN DOCUMENT AUTORISÉ. Détailler autant que possible vos réponses, en particulier pour les questions de cours! Test du Module M3102 Samedi 10 janvier 2015 Durée : 2 heures IUT Aix-en-Provence Semestre 3 DUT INFO AUCUN DOCUMENT AUTORISÉ Détailler autant que possible vos réponses, en particulier pour les questions

Plus en détail

Les couches transport UDP et TCP. Bibliographie et sources. La couche transport (4) Encapsulation des données. Objectifs et plan:

Les couches transport UDP et TCP. Bibliographie et sources. La couche transport (4) Encapsulation des données. Objectifs et plan: Les couches transport UDP et TCP Bibliographie et sources Objectifs et plan: Couche 4 : plaque tournante entre Fournisseurs des services de transport (les «réseaux») Utilisateurs des services de transport

Plus en détail

1 Programmation Client/Serveur basée sur TCP/IP

1 Programmation Client/Serveur basée sur TCP/IP Outils Informatique pour l ingénieur TD 1 Réseau et Web IP, Client/serveur 1 Programmation Client/Serveur basée sur TCP/IP 1.1 Buts de cette réalisation Ce TP sur la programmation client/serveur a pour

Plus en détail

Serveurs réseau. 2011 Pearson Education France Java, mise à jour pour Java 7 Timothy Fisher

Serveurs réseau. 2011 Pearson Education France Java, mise à jour pour Java 7 Timothy Fisher 11 Serveurs réseau En pratique, il y a bien plus de chances que vous écriviez du code de client réseau que du code de serveur réseau. Toutefois, bon nombre d applications intègrent à la fois des fonctionnalités

Plus en détail

Programmation Réseau en Java Support Numéro 1 Sockets

Programmation Réseau en Java Support Numéro 1 Sockets Programmation Réseau en Java Support Numéro 1 Sockets 1. Introduction Le langage Java a été conçu par SUN, une société dont l activité est fortement tournée vers le réseau et qui a mis au point plusieurs

Plus en détail

Les Sockets/1. samia.bouzefrane@cnam.fr - CEDRIC ( CNAM) -

Les Sockets/1. samia.bouzefrane@cnam.fr - CEDRIC ( CNAM) - Les Sockets/1 La version Berkeley 4.2 d Unix a été la première à inclure TCP/IP dans le noyau du système d exploitation et à proposer une interface de programmation de ces protocoles : les sockets. Les

Plus en détail

Master Miage 2010-2011 Réseau. La couche Application II. Les sockets : l API de la couche transport

Master Miage 2010-2011 Réseau. La couche Application II. Les sockets : l API de la couche transport Master Miage Réseau La couche Application II Les sockets : l API de la couche transport 2 Protocoles de couche application API: Application Programming Interface Définit l interface entre l application

Plus en détail

NFA032 Programmation objet avec Java

NFA032 Programmation objet avec Java NFA032 Programmation objet avec Java CNAM-Paris-Île-de-France Première session 2013 (sujet bis) Documents et calculatrice interdits. Le barème est donné à titre indicatif. Exercice 1 : programmation objet

Plus en détail

Les Flux : principes de base

Les Flux : principes de base Les Flux : principes de base Introduction Les flux permettent de travailler avec des données des fichiers provenant de l extérieur. Toutes les commandes de type Ouvrir, Enregistrer, Enregistrer sous des

Plus en détail

QUESTIONNAIRE N 1 SUR TCP/IP : GÉNÉRALITÉS

QUESTIONNAIRE N 1 SUR TCP/IP : GÉNÉRALITÉS QUESTIONNAIRE N 1 SUR TCP/IP : GÉNÉRALITÉS 1) Quelle est la signification de l'acronyme DOD IP? 2) Quel organisme est à l'origine de TCP/IP? 3) Quand a-t-il été inventé? 4) Dans quel but a-t-il été inventé?

Plus en détail

Introduction. Licence MASS L3 Inf f3

Introduction. Licence MASS L3 Inf f3 Le modèle client serveur Introduction Licence MASS L3 Inf f3 Encapsulation : rappel Données Données Application En-tête En-tête Transport UDP Données TCP Données Paquet UDP Segment TCP En-tête IP Données

Plus en détail

Plan. Environnement Client/Serveur. Cours 2 Généralités sur les réseaux IP UDP. Définitions. Organismes de Standardisation

Plan. Environnement Client/Serveur. Cours 2 Généralités sur les réseaux IP UDP. Définitions. Organismes de Standardisation Plan Environnement Client/Serveur Cours 2 Généralités sur les réseaux IP UDP kn@lri.fr http://www.lri.fr/~kn 1 Rappels sur les systèmes d'exploitations / Communication par mémoire partagée 2 Réseaux généralités,

Plus en détail

CCI - Initiation à Java. E.Coquery emmanuel.coquery@liris.cnrs.fr

CCI - Initiation à Java. E.Coquery emmanuel.coquery@liris.cnrs.fr CCI - Initiation à Java E.Coquery emmanuel.coquery@liris.cnrs.fr Présentation du langage Outline 1 Présentation du langage 2 Types de données primitifs 3 Objets Présentation du langage Un langage orienté

Plus en détail

Réseaux Informatiques 2

Réseaux Informatiques 2 Ministère de l Enseignement Supérieur et de la Recherche Scientifique Université Mohamed Khider - Biskra Faculté des Sciences Exactes et des Sciences de la Nature et de la Vie Département d informatique

Plus en détail

Introduction Fonctionnement L API Servlet SERVLET. Claude Duvallet 1/32

Introduction Fonctionnement L API Servlet SERVLET. Claude Duvallet 1/32 Claude Duvallet Université du Havre UFR Sciences et Techniques 25 rue Philippe Lebon - BP 540 76058 LE HAVRE CEDEX Claude.Duvallet@gmail.com http://litis.univ-lehavre.fr/ duvallet/ Claude Duvallet 1/32

Plus en détail

Plan. Environnement Client/Serveur. Cours 6 Rappels Java (suite) Appel de méthode à distance. Utilité. static

Plan. Environnement Client/Serveur. Cours 6 Rappels Java (suite) Appel de méthode à distance. Utilité. static Plan Environnement Client/Serveur Cours 6 Rappels Java (suite) Appel de méthode à distance kn@lri.fr http://www.lri.fr/~kn 1 Rappels sur les systèmes d'exploitations / Communication par mémoire partagée

Plus en détail

Exceptions. Fiabilité d un logiciel. Fiabilité en Java. Erreurs/exceptions. Localisation du traitement des erreurs/exceptions.

Exceptions. Fiabilité d un logiciel. Fiabilité en Java. Erreurs/exceptions. Localisation du traitement des erreurs/exceptions. Fiabilité d un logiciel Exceptions Université Française d Egypte Version O 5.7 5/10/15 Richard Grin Robustesse : fonctionne correctement, même en présence d événements exceptionnels Correction : donne

Plus en détail

Introduction aux Systèmes Distribués. XDR : external Data Representation

Introduction aux Systèmes Distribués. XDR : external Data Representation Introduction aux Systèmes Distribués XDR : external Data Representation Eric Cariou Université de Pau et des Pays de l'adour Département Informatique Eric.Cariou@univ-pau.fr 1 Introduction : XDR Lors d'une

Plus en détail

ESIREM - 3ème année ITC7-2 (1 séance) Étude d une communication entre deux hôtes du réseau

ESIREM - 3ème année ITC7-2 (1 séance) Étude d une communication entre deux hôtes du réseau ESIREM - 3ème année ITC7-2 (1 séance) Étude d une communication entre deux hôtes du réseau Michael Choisnard, Arnaud Da Costa, Benoît Darties Mars 2010 L objectif de ce TP est de développer et mettre en

Plus en détail

Introduction à la programmation de clients/serveur TCP/IP en Java

Introduction à la programmation de clients/serveur TCP/IP en Java Introduction à la programmation de clients/serveur TCP/IP en Java Rushed Kanawati LIPN, CNRS UMR 7030 Université Paris 13 http://lipn.fr/ kanawati rushed.kanawati@lipn.univ-paris13.fr December 17, 2012

Plus en détail

Framework d'implémentation de services distribués

Framework d'implémentation de services distribués Framework d'implémentation de services distribués Eric Cariou Master Technologies de l'internet 1 ère année Université de Pau et des Pays de l'adour Département Informatique Eric.Cariou@univ-pau.fr 1 Algorithmique

Plus en détail

TP2. 1. Création Ecrire une classe Com pour l envoi et la réception de paquets de la discussion. Votre classe contiendra les champs :

TP2. 1. Création Ecrire une classe Com pour l envoi et la réception de paquets de la discussion. Votre classe contiendra les champs : Université Paris 7 M2 II Protocole Internet TP2 Document à rendre: Vous devez déposer sur didel pour le 3 décembre: le code java des questions 7, 8 et 9(b) accompagné d un cours rapport (environ 3 pages)

Plus en détail

TP d initiation aux systèmes et applications répartis

TP d initiation aux systèmes et applications répartis TP d initiation aux systèmes et applications répartis Grégory Mounié, Simon Nieuviarts, Sébastien Viardot Au début de l informatique, on exploitait simplement des ordinateurs. Maintenant, on construit

Plus en détail

Trames Ethernet et IEEE 802.3:

Trames Ethernet et IEEE 802.3: Trames Ethernet et IEEE 802.3: PLAN I. Introduction II.Trames Ethernet et IEEE 802.3: Trame ETHERNET : III. 1. Description des différentes couches de TCP/IP 2. Couche INTERNET la norme IEEE 802.3 est légèrement

Plus en détail

Les classes du JDK. Les types composites TD/TP-4. Le paquet java.lang. Les autres paquets. Les classes du JDK et les types composites Page 1 sur 15

Les classes du JDK. Les types composites TD/TP-4. Le paquet java.lang. Les autres paquets. Les classes du JDK et les types composites Page 1 sur 15 Les classes du JDK et les types composites Page 1 sur 15 Les classes du JDK et les types composites Page 2 sur 15 Pour affecter une valeur à une variable simple, if suffit d utiliser les lignes suivantes:

Plus en détail

Java Avancé - Cours 1 Solution des exercices

Java Avancé - Cours 1 Solution des exercices Solution des exercices Java Avancé - Cours 1 1/6 Java Avancé - Cours 1 Solution des exercices Liste des exercices: Exercice 1.1 Q1 On utilise les deux constructeurs suivants : java.io.inputstreamreader

Plus en détail

Installation d un proxy web sous ISA server 2006

Installation d un proxy web sous ISA server 2006 Installation d un proxy web sous ISA server 2006 ISA Server est une passerelle de sécurité qui intègre un proxy (anciennement Proxy Server), un firewall et une gestion des VPN. Plus d info sont disponible

Plus en détail

La taille de fenêtre est le processus TCP utilisé pour préparer les données à transmettre

La taille de fenêtre est le processus TCP utilisé pour préparer les données à transmettre 1 À quel protocole les serveurs de messagerie font-ils appel pour communiquer les uns avec les autres? FTP HTTP TFTP SMTP POP SNMP 2 Lequel de ces énoncés décrit le fonctionnement de la taille de fenêtre

Plus en détail

Programmation orientée objet appliquée avec le langage Java

Programmation orientée objet appliquée avec le langage Java Programmation orientée objet appliquée avec le langage Java IUT d'aix Marseille Réseaux et Télécommunications Novembre 2013 Ivan Madjarov Partie X Programmation objet avec Java Application et Applet Dessiner

Plus en détail

Le site du BTS-IRIS de Niort

Le site du BTS-IRIS de Niort Cours Modbus/TCP Soumis par DS 10-03-2006 Dernière mise à jour : 16-10-2006 Depuis l'introduction fulgurante des réseaux ethernet dans l'industrie, le protocole Modbus et notamment sa version Modbus/TCP

Plus en détail

Chapitre 1. 1.1 types primitifs. 1.2 Casting

Chapitre 1. 1.1 types primitifs. 1.2 Casting Chapitre 1 Généralités 1.1 types primitifs byte (1 octet) peut contenir les entiers entre -128 et +127. short (2 octets) contient les entiers compris entre -32768 et +32767. int (4 octet) va de -2*10e9

Plus en détail

Introduction. UDP et IP UDP

Introduction. UDP et IP UDP Introduction Protocoles TCP et UDP M. Berthet. Les illustrations sont tirées de l ouvrage de Guy Pujolle, Cours réseaux et Télécom TCP (Transmission Control Protocol) et UDP (User Datagram Protocol) assurent

Plus en détail

L3 informatique Réseaux : Configuration d une interface réseau

L3 informatique Réseaux : Configuration d une interface réseau L3 informatique Réseaux : Configuration d une interface réseau Sovanna Tan Septembre 2009 Révision septembre 2012 1/23 Sovanna Tan Configuration d une interface réseau Plan 1 Introduction aux réseaux 2

Plus en détail