SlideShare une entreprise Scribd logo
Dirigé par:
M. BOUKHELKHAL Ahmed
Travail Réalisé par :
 BENYAMMI Bachir
 HASSANI Mustapha
 OULD BAHAMMOU Abdelaziz
Niveau: 4eme Année informatique - Cycle long
Ministère de l’Enseignement et de la Recherche Scientifique
UNIVERSITE AMAR TELIDJI
LAGHOUAT
FACULTE DES SCIENCES ET DE L’INGENIERIE
DEPARTEMENT DE GENIE INFORMATIQUE
Module Réseau et Communication
THÈME:
Année Universitaire
2006-2007
13 janvier 2016 Programmation Réseau en JAVA 2
Plan
 Introduction.
 JAVA (Historique, Caractéristiques, API,…).
 Réseau (TCP-IP, TCP, UDP, Socket, Port, Diffusion, URLs, …).
 Adressage et Internet (Couche Réseau).
 Communication par Sockets (couche Transport).
 Ressources Internet (URL) (couche Application).
 Exceptions liées aux réseaux.
 Conclusion.
 Bibliographie.
P
L
A
N
D
U
T
R
A
V
A
I
L
13 janvier 2016 Programmation Réseau en JAVA 3
I - Introduction
Depuis son origine, Java fournit plusieurs
classes et interfaces destinées à la
programmation réseau, à cause de son API
qui a été bien conçu et riche d'une côté, et
traité la plupart des interfaces, protocoles et
plateformes d'autres côté; la programmation
des applications réseaux en JAVA est
devenue un choix primordial.
I
N
T
R
O
D
U
C
T
I
O
N
13 janvier 2016 Programmation Réseau en JAVA 4
Quelque Domaines d’application
 Navigation d'un l'Internet (HTTP).
 Messagerie électronique (SMTP et POP).
 Conception de nouveaux protocoles.
 Sécurité des communications (Cryptage des
messages, authentification, …).
 Mise en place des services Internet et interfaces GUI
clients.
 Recherche des hôtesses et adressage (DNS).
 Transfert de fichiers (FTP).
 Déploiement à distance des applications multiple
systèmes (RMI).
 …
I
N
T
R
O
D
U
C
T
I
O
N
13 janvier 2016 Programmation Réseau en JAVA 5
Bref historique de Java
Les principaux événements de la vie de Java sont les suivants :
Année Événements
1995 mai : premier lancement commercial
1996 janvier : JDK 1.0
1996 septembre : lancement du JDC
1997 février : JDK 1.1
1998 décembre : lancement de J2SE et du JCP
1999 décembre : lancement J2EE
2000 mai : J2SE 1.3
2002 J2SE 1.4
2004 J2SE 1.5
2006 J2SE 1.6
L
A
N
G
A
G
E
J
A
V
A
13 janvier 2016 Programmation Réseau en JAVA 6
Les caractéristiques de JAVA
JAVA est:
 Familier,
 Orienté objet,
 Client / Serveur;
 Multithreadé,
 Interprété.
JAVA à une:
 Architecture neutre,
 Portable,
 Dynamiquement adaptable.
Les applications JAVA sont:
 Sécurisées,
 Performantes,
 Robustes,
 Plateformes multiples,
 Réseaux hétérogènes, distribués.
L
A
N
G
A
G
E
J
A
V
A
13 janvier 2016 Programmation Réseau en JAVA 7
L’ API du JAVA
JAVA inclut un grand nombre de librairies de classes utiles et de
méthodes, très brièvement, ces librairies sont :
 java.lang : Classes de base du langage.
 java.io : Gestion les flux (Entrées/Sorties).
 java.net : Fonctionnalités réseaux (programmation réseaux).
 Java.util : Utilitaires divers.
 java.awt : Jeux d’outils pour les interfaces graphiques (GUI).
 Java.Applet: Développement des applets.
 Java.RMI : Développement d'objets distribués.
 Java.Swing : Développement des interfaces graphiques.
 java.sql : JDBC pour l'accès aux bases de données.
 Java.Security : Gestion des signatures et des certifications.
 java.JavaBean : Développer des composants réutilisables.
L
A
N
G
A
G
E
J
A
V
A
13 janvier 2016 Programmation Réseau en JAVA 8
Comparaison du JAVA
L
A
N
G
A
G
E
J
A
V
A
13 janvier 2016 Programmation Réseau en JAVA 9
Architecture Client - Serveur
 C’est une communication entre deux machines
 L’un de ces machine offre des services (Serveur).
 L’autre machine consomme ces services (Client).
 Le client lance une requête pour l’acquisition d’une
ressource (Texte, Image, Son, …).
 Le serveur exécute la requête (lancement des scripts,
interaction avec BDD, …).
 Le résultat de la requête (réponse) est envoyé au client.
R
E
S
E
A
U
X
13 janvier 2016 Programmation Réseau en JAVA 10
Le protocole TCP-IP
HTTP FTP Telnet SMTP NFS SNMP DNS RIP
TCP UDP
IP
Token RingEthernet FDDI
Application
Transport
Réseau
Liaison
TCP-IP et hiérarchie de ces protocoles
HTTP (Hypertext Transfer Protocol) FTP (File Transfer Protocol)
SMTP (Simple Mail Transfer Protocol) NFS (Network File System)
RIP (Routing Information Protocol) DNS (Domain Name System)
SNMP (Simple Network Management Protocol)
IP (Internet Protocol) FDDI (Fiber Distributed Data Interface)
R
E
S
E
A
U
X
13 janvier 2016 Programmation Réseau en JAVA 11
TCP-IP et java.net
 Les classes et interfaces utiles au développement
réseau sont regroupées dans le package java.net.
 Dans le cadre de ce mini projet; 10 classes ont été
choisies.
 Les couche programmable du TCP-IP sont:
Application, Transport et Réseau.
URL, URLConnection, URLEncoder
Socket, ServerSocket
InetAdress, NetworkInterfaces
Application
Transport
(TCP/UDP)
Réseau (IP)
DatagramSocket,
DatagramPacket,
MulticastSocket
R
E
S
E
A
U
X
13 janvier 2016 Programmation Réseau en JAVA 12
Notion de Socket et de Port
Communication
par Sockets
Socket
 Un modèle de communication basé sur TCP ou UDP.
 Dans une communication; au moins 2 sockets sont utilisées.
 Chaque socket est identifiée par une adresse IP et un numéro de port.
Port
 La liaison d’une machine à un réseau est physique.
 Les données passent par cette liaison sont utilisées par diverses
applications (ou protocoles).
 Les ports sont fondus pour distinguer les données propriétaire à chaque
processus (plusieurs communications TCP et/ou UDP en parallèle).
 Quelque numéros de port sont réservés (Well Known Ports).
R
E
S
E
A
U
X
13 janvier 2016 Programmation Réseau en JAVA 13
TCP
 Communication garantie.
 Ordre de la livraison des paquets est prise en compte.
 Pas de perte ou de duplication des paquets.
 Communication fiable (moins performante).
 Utile pour l’implantation des services réseaux tel que
l’accès à distance (telnet, rlogin) et le transfert des
fichiers (ftp) où un grand flux de donnés est échangé.
R
E
S
E
A
U
X
13 janvier 2016 Programmation Réseau en JAVA 14
UDP
 Communication non garantie.
 Ordre de la livraison des paquets n'est pas important
et non garantie.
 Possibilité de perte ou de duplication des paquets.
 Communication très rapide (bonnes performances).
 UDP est réservé à des taches peu importantes.
 UDP est utilisé dans plusieurs applications (eMule,
Kaza, iMesh...).
R
E
S
E
A
U
X
13 janvier 2016 Programmation Réseau en JAVA 15
Mode connecté en non connecté
Émetteur Récepteur
Mot 2 Mot 1Mot 3 Mot 2 Mot 1Mot 3
3 12 3 21
Émetteur Récepteur
X
1
Appel téléphonique
(Support de transmission : l’opérateur téléphonique)
Courriers postaux
(Support de transmission : Service portal)
R
E
S
E
A
U
X
13 janvier 2016 Programmation Réseau en JAVA 16
La diffusion
 Envoyer des paquets à plusieurs machines sans
faire la duplication de ces paquets.
 L’adresse IP doit être type classe D, c-à-d entre
224.0.0.1 et 239.255.255.255
(Tous ces adresse sont déjà occupées !!).
 Utilisation du champ TTL (Time To Live)
pour contrôler le chemin du paquet:
 1 = Réseau local.
 16 = Région.
 127 = Monde entier.
R
E
S
E
A
U
X
13 janvier 2016 Programmation Réseau en JAVA 17
La diffusion
PC 1 diffuse des informations au autres PC
R
E
S
E
A
U
X
13 janvier 2016 Programmation Réseau en JAVA 18
Les URLs
 Une URL (Uniform Source Locator) est une
chaîne de caractères qui désigne une
ressource accessible par Internet ou Intranet.
 Une URL est composée en générale d’un
protocole, un serveur, un port, chemin
d’accès et un ensemble de paramètres.
R
E
S
E
A
U
X
13 janvier 2016 Programmation Réseau en JAVA 19
Exemples d’URLs
 http://<serveur>:<port>/<chemin>?<param1>&<param2>&...&<paramn>
http://www.google.com/convert?value=100&src=miles&dist=kilometers
 ftp://<user>:<motdepasse>@<serveur>:<port>/<chemin>
ftp://benbac:2007dz47@free.fr/siteperso
 mailto:<email>
mailto:benbac20@gmail.com
 file://<serveur>/<chemin>
file:///C:/My%20documents/Mes%20images/logo.jpg
R
E
S
E
A
U
X
13 janvier 2016 Programmation Réseau en JAVA 20
IV – Adressage et Internet
(Couche Réseau)
Chaque machine du
réseau Internet à une adresse
unique, cette adresse (appelée
adresse IP ) est codée sur 4
octets séparés par des points.
192 168 0 15
Adresse du réseau
(poids fort)
Adresse du machine sur
le réseau (poids faible)
Pour faciliter la compréhension humaine, un serveur
particulier appelé DNS (Domaine Name Service) est
capable d'associer un nom à une adresse IP.
A
D
R
E
S
S
A
G
E
13 janvier 2016 Programmation Réseau en JAVA 21
Méthode Rôle
InetAddress
getByName(String)
Renvoie l'adresse Internet associée au
nom d'hôte passé en paramètre.
InetAddress[]
getAllByName(String)
Renvoie un tableau des adresses
Internet associées au nom d'hôte.
InetAddress getLocalHost() Renvoie l’IP de la machine locale.
byte[] getAddress() Renvoie les 4 octets de l'adresse IP.
String getHostAddress() Renvoie L’IP sous la forme d'une chaîne.
String getHostName() Renvoie le nom du serveur.
Cette classe offre des méthodes de manipulation des adresses Internet,
elle est constituée
 D’un objet de la classe InetAddress représente l’adresse Internet.
 Des méthodes pour lire l’adresse, la comparer avec
d’ autre ou la convertir en chaîne de caractères.
A - La classe InetAddress
A
D
R
E
S
S
A
G
E
13 janvier 2016 Programmation Réseau en JAVA 22
Les interfaces de connexions aux réseaux
 La nouvelle classe NetworkInterface (J2SE 1.4)
permet d'obtenir la liste des interfaces de connexion
aux réseaux de la machine.
 Une interface de connexion
au réseau se caractérise par :
 Un nom court,
 Une désignation,
 Une liste d'adresses IP.
A
D
R
E
S
S
A
G
E
13 janvier 2016 Programmation Réseau en JAVA 23
B - La Classe NetworkInterface
Méthode Description
String getName() Renvoie le nom court de l'interface
String
getDisplayName() Renvoie la désignation de l'interface
Enumeration
getInetAddresses()
Renvoie une énumération d'objet
InetAddress contenant la liste
des adresses IP associée à
l'interface
Les méthode utilisées dans cette classe sont:
A
D
R
E
S
S
A
G
E
13 janvier 2016 Programmation Réseau en JAVA 24
V - Communication par Sockets
(Couche Transport)
Les sockets représentent l’outil de base pour la conception
des protocoles et le développement des applications de
communication tel que la messagerie, transmission des fichiers,
vidéoconférence,….etc. deux protocoles sont utilisés:
1. Le protocole TCP
a. ServerSocket
b. Socket
2. Le protocole UDP
a. DatagramSocket
b. DatagramPacket
c. MulticastSocket
S
O
C
K
E
T
S
13 janvier 2016 Programmation Réseau en JAVA 25
1- Communication en mode Connecté(TCP)
 La classe SocketServer
 Elle est utilisée au coté serveur.
 Elle attend simplement les appels des clients.
 Chaque objet est associé à un port sur lequel il va attendre les connexions.
 Pour chaque client, un thread est lancé pour assurer le dialogue avec lui.
 La classe Socket
 La classe contient les méthodes de création des flux d'entrée-sortie.
 Les sockets constituent la base des communications sur le réseau.
 La classe gère la connexion, l'envoi de données, la réception de données
et la déconnexion.
S
O
C
K
E
T
S
13 janvier 2016 Programmation Réseau en JAVA 26
A - La classe ServerSocket
Constructeur Rôle
ServerSocket() Constructeur par défaut.
ServerSocket
(int)
Créer une Socket sur le port fourni en
paramètre.
ServerSocket
(int, int)
Créer une Socket sur le port avec la taille
maximale de la file fourni en paramètre.
La classe possède plusieurs constructeurs dont les principaux sont :
Méthode Rôle
Socket accept() Attendre une nouvelle connexion
void close() Fermer la socket
La classe SocketServer possède plusieurs méthodes :
S
O
C
K
E
T
S
13 janvier 2016 Programmation Réseau en JAVA 27
Constructeur Rôle
Server() Constructeur par défaut.
ServerSocket
(String, int)
Créer une socket sur la machine dont le nom
et le port sont fournis en paramètre.
ServerSocket
(InetAddress, int)
Créer une socket sur la machine dont
l'adresse et le port sont fournis en paramètre.
Méthode Rôle
InetAddress
getInetAddress()
Renvoie l'adresse IP distant.
void close() Fermer la socket.
InputStream
getInputStream()
Renvoie un flux en entrée pour recevoir
les données de la socket.
OutputStream
getOutputStream()
Renvoie un flux en sortie pour émettre
les données de la socket.
B - La classe Socket
S
O
C
K
E
T
S
13 janvier 2016 Programmation Réseau en JAVA 28
Mécanisme de communication entre le Client et le Serveur par TCP
S
O
C
K
E
T
S
13 janvier 2016 Programmation Réseau en JAVA 29
2 - Communication en mode
non connecté (UDP)
La classe DatagramSocket
 Émission et réception des paquets à l’aide des méthodes
Send() et Recieve().
La classe DatagramPacket
 Émission et la réception des données d’un paquet à l’aide d’un
tableau d’octets à l’aide de getData()et sendData().
La classe MulticastSocket
 Diffusion des paquets sur un réseau.
S
O
C
K
E
T
S
13 janvier 2016 Programmation Réseau en JAVA 30
A - La classe DatagramSocket
Constructeur Rôle
DatagramSocket() Créé une socket attachée à toutes les IP de
la machine et avec un à des ports libres.
DatagramSocket(int) Créé une socket attachée à toutes les IP
avec un port précisé en paramètre.
DatagramSocket
(int, InetAddress)
Créé une socket attachée à une adresse IP
et un port précisé en paramètre.
Méthode Rôle
close() Fermeture de la Socket.
receive(DatagramPacket) Recevoir des données.
send(DatagramPacket) Envoyer des données.
int getPort() Renvoie le port associé à la socket.
S
O
C
K
E
T
S
13 janvier 2016 Programmation Réseau en JAVA 31
B - La classe DatagramPacket
Constructeur Rôle
DatagramPacket
(byte tampon[], int length)
Encapsule des paquets en
réception dans un tampon.
DatagramPacket
(byte port[], int length,
InetAddress adresse, int port)
Encapsule des paquets en
émission à destination d'une
machine.
La classe possède plusieurs constructeurs dont les principaux sont :
Méthode Rôle
InetAddress getAddress() Renvoie l'adresse du serveur.
byte[] getData() Renvoie les données du paquet.
int getPort Renvoie le port.
int getLength () Renvoie la taille des données.
setData(byte[]) Mettre à jour les données.
S
O
C
K
E
T
S
13 janvier 2016 Programmation Réseau en JAVA 32
Mécanisme de communication entre le Client et le Serveur par UDP
S
O
C
K
E
T
S
13 janvier 2016 Programmation Réseau en JAVA 33
C - La classe MulticastSocket
Constructeur Rôle
MulticastSocket() Pour l'envoi des paquets.
MulticastSocket
(int port)
Pour la réception des paquets sur un
port spécifié.
La classe possède plusieurs constructeurs dont les principaux sont :
Méthode Rôle
void joinGroup
(InetAddress mcastaddr)
La jointure avec à un groupe
de diffusion.
leaveGroup
(InetAddress mcastaddr)
Abandonner le groupe de
diffusion.
La classe MulticastSocket possède plusieurs méthodes :
S
O
C
K
E
T
S
13 janvier 2016 Programmation Réseau en JAVA 34
VI – Ressources Internet (URL)
(Couche Application)
Les classes du Java.net les plus important de la
gestion et la manipulation des liens sont:
La classe URL
 Validation syntaxique des liens.
La classe URLConnection
 Établir des connexion vers des ressources.
La classe URLEncoder
 Utilitaire de codification (encodage) des URL.
R
E
S
S
O
U
R
C
E
S
13 janvier 2016 Programmation Réseau en JAVA 35
A - La classe URL
La classe URL possède plusieurs méthodes pour obtenir les
différents éléments qui composent l’URL, parmi ces méthodes:
Si la syntaxe de l’URL n’est pas correcte; une exception de type
MalformedURLException est signalée.
Méthode Rôle
getProtocol() Renvoie le protocole utilisé.
getHost() Renvoie le nom du hôte.
getPort() Renvoie le port utilisé.
getFile() Renvoie le chemin complet du fichier.
openConnection() Ouvrir une connexion vers la
ressource.
openStream() Ouvrir un flux de données en entrée
pour lire la ressource.
R
E
S
S
O
U
R
C
E
S
13 janvier 2016 Programmation Réseau en JAVA 36
B - La classe URLConnection
Cette classe établir une connexion vers une ressource
désignée par une URL pour obtenir un flux de données ou
des informations sur cette ressource.
En plus de ça, la classe URLConnection offre des outils
pour la lecture et l’écriture dans les ressources désignées .
Méthode Rôle
getInputStream() Renvoie un flux de données
getContentLength() Renvoie la taille du flux.
R
E
S
S
O
U
R
C
E
S
13 janvier 2016 Programmation Réseau en JAVA 37
C - La classe URLEncoder
Cette classe est une classe utilitaire qui propose
la méthode statique encode() pour encoder une
URL.
Elle remplace notamment les espaces par un
signe "+" et les caractères spéciaux par un signe
"%" suivi du code du caractère.
R
E
S
S
O
U
R
C
E
S
13 janvier 2016 Programmation Réseau en JAVA 38
VII-Les exception liées au réseaux
Le package java.net définit plusieurs exceptions qui
permettant de gérer les différentes erreurs résultantes de
l'exécution des ces classes et méthodes. Parmi ces exceptions:
Exception Description
BindException Port utilisé par une autre application.
ConnectException Aucun serveur n'écoute sur le port précisé.
MalformedURLException L'URL n'est pas valide
NoRouteToHostException Un firewall empêche la connexion
SocketTimeoutException Délai d'attente écoulé.
UnknownHostException L'adresse de l'hôte n'a pas pu être trouvée
E
X
C
E
P
T
I
O
N
S
13 janvier 2016 Programmation Réseau en JAVA 39
Conclusion
 En voie claire et net la puissance et la souplesse du langage JAVA dans
divers domaines d’application et spécialement l’Internet et les réseaux
interconnectées.
 JAVA est actuellement prend l'avantage complet de l'Internet en dominant
ces principales aspects :
 Rechercher et visualisation des informations.
 Transmission des données.
 Jeux interactifs.
 Chat et messagerie.
 Commerce électronique.
 Actualités.
 Diffusion radio et TV.
 Conférence en ligne.
 …
 En future, il semble que JAVA devient la plateforme la plus adéquate de
tous type d'applications réseau et spécialement l'Internet.
C
O
N
C
L
I
T
I
O
N
13 janvier 2016 Programmation Réseau en JAVA 40
Bibliographie
 Emmanuel Remy : Généralités sur java,
http://emmanuel-remy.developpez.com.
 Dr.Irène Charon: Java concepts et pratique, 2éme édition 2003.
 Dr.Bruce Eckel: Penser en Java, 2éme édition 2000.
 Package pédagogique multimédia, 8éme édition, Août 2006.
 Jean Michel DOUDOUX : Développons en Java,
http://www.jmdoudoux.fr/java/.
 CISCO Academy American Network.
 Elliotte Rusty Harold : Java Network Programming,
2nd Edition , O‘Reilly.
 The Java Tutorials, : Custom Networking
http://java.sun.com/docs/books/tutorial.
 Gilles ROUSSEL : Programmation réseau avec JAVA.
 Comment ça marche, http://commentcamarche.net.
 Didier Donsez, Programmation Réseau, Université de Valenciennes.
 Boukhalkhal Ahmed et Sahel Naima, Réalisation d’une application
d’aide à l’administration sous Windows NT.
B
I
B
L
I
O
G
R
A
P
H
I
E
Programmation réseau en JAVA

Contenu connexe

Tendances

Presentation pfe Système de gestion des rendez-vous médicaux
Presentation pfe Système de gestion des rendez-vous médicauxPresentation pfe Système de gestion des rendez-vous médicaux
Presentation pfe Système de gestion des rendez-vous médicaux
Fehmi Arbi
 
Architecture réparties et les services web
Architecture réparties et les services webArchitecture réparties et les services web
Architecture réparties et les services web
CHOUAIB EL HACHIMI
 
Sécurité des Applications Web avec Json Web Token (JWT)
Sécurité des Applications Web avec Json Web Token (JWT)Sécurité des Applications Web avec Json Web Token (JWT)
Sécurité des Applications Web avec Json Web Token (JWT)
ENSET, Université Hassan II Casablanca
 
Architectures 3-tiers (Web)
Architectures 3-tiers (Web)Architectures 3-tiers (Web)
Architectures 3-tiers (Web)
Heithem Abbes
 
PFE :: Application de gestion des dus d'enseignement
PFE :: Application de gestion des dus d'enseignementPFE :: Application de gestion des dus d'enseignement
PFE :: Application de gestion des dus d'enseignement
Nassim Bahri
 
service NFS sous linux
 service NFS sous linux service NFS sous linux
service NFS sous linux
Souhaib El
 
Modele mvc
Modele mvcModele mvc
Modele mvc
Soulef riahi
 
Architecture orientée service (SOA)
Architecture orientée service (SOA)Architecture orientée service (SOA)
Architecture orientée service (SOA)
Klee Group
 
Formation1 sockets
Formation1 socketsFormation1 sockets
Formation1 sockets
Mariem SOMRANI
 
Mise en place d'un système de messagerie sécurisée pour une PME/PMI
Mise en place d'un système de messagerie sécurisée pour une PME/PMIMise en place d'un système de messagerie sécurisée pour une PME/PMI
Mise en place d'un système de messagerie sécurisée pour une PME/PMI
Papa Cheikh Cisse
 
Tp n 3 linux
Tp n 3 linuxTp n 3 linux
Tp n 3 linux
Amir Souissi
 
Introduction aux architectures des SI
Introduction aux architectures des SI Introduction aux architectures des SI
Introduction aux architectures des SI
Heithem Abbes
 
mémoire de projet de fin d'études
mémoire de projet de fin d'études mémoire de projet de fin d'études
mémoire de projet de fin d'études
MortadhaBouallagui
 
Support de cours Spring M.youssfi
Support de cours Spring  M.youssfiSupport de cours Spring  M.youssfi
Support de cours Spring M.youssfi
ENSET, Université Hassan II Casablanca
 
applications-reparties
applications-repartiesapplications-reparties
applications-reparties
mourad50
 
Rapport pfe- Refonte et déploiement d’une solution de messagerie en utilisant...
Rapport pfe- Refonte et déploiement d’une solution de messagerie en utilisant...Rapport pfe- Refonte et déploiement d’une solution de messagerie en utilisant...
Rapport pfe- Refonte et déploiement d’une solution de messagerie en utilisant...
Nawres Farhat
 
présentation pfe projet fin d'étude développement et conception d'une applica...
présentation pfe projet fin d'étude développement et conception d'une applica...présentation pfe projet fin d'étude développement et conception d'une applica...
présentation pfe projet fin d'étude développement et conception d'une applica...
Raoua Bennasr
 
TD_complet_reseau__CISCO__Packet Tracer.pdf
TD_complet_reseau__CISCO__Packet Tracer.pdfTD_complet_reseau__CISCO__Packet Tracer.pdf
TD_complet_reseau__CISCO__Packet Tracer.pdf
Ines Ben Hassine
 
Support POO Java Deuxième Partie
Support POO Java Deuxième PartieSupport POO Java Deuxième Partie
Support POO Java Deuxième Partie
ENSET, Université Hassan II Casablanca
 
Support Java Avancé Troisième Partie
Support Java Avancé Troisième PartieSupport Java Avancé Troisième Partie
Support Java Avancé Troisième Partie
ENSET, Université Hassan II Casablanca
 

Tendances (20)

Presentation pfe Système de gestion des rendez-vous médicaux
Presentation pfe Système de gestion des rendez-vous médicauxPresentation pfe Système de gestion des rendez-vous médicaux
Presentation pfe Système de gestion des rendez-vous médicaux
 
Architecture réparties et les services web
Architecture réparties et les services webArchitecture réparties et les services web
Architecture réparties et les services web
 
Sécurité des Applications Web avec Json Web Token (JWT)
Sécurité des Applications Web avec Json Web Token (JWT)Sécurité des Applications Web avec Json Web Token (JWT)
Sécurité des Applications Web avec Json Web Token (JWT)
 
Architectures 3-tiers (Web)
Architectures 3-tiers (Web)Architectures 3-tiers (Web)
Architectures 3-tiers (Web)
 
PFE :: Application de gestion des dus d'enseignement
PFE :: Application de gestion des dus d'enseignementPFE :: Application de gestion des dus d'enseignement
PFE :: Application de gestion des dus d'enseignement
 
service NFS sous linux
 service NFS sous linux service NFS sous linux
service NFS sous linux
 
Modele mvc
Modele mvcModele mvc
Modele mvc
 
Architecture orientée service (SOA)
Architecture orientée service (SOA)Architecture orientée service (SOA)
Architecture orientée service (SOA)
 
Formation1 sockets
Formation1 socketsFormation1 sockets
Formation1 sockets
 
Mise en place d'un système de messagerie sécurisée pour une PME/PMI
Mise en place d'un système de messagerie sécurisée pour une PME/PMIMise en place d'un système de messagerie sécurisée pour une PME/PMI
Mise en place d'un système de messagerie sécurisée pour une PME/PMI
 
Tp n 3 linux
Tp n 3 linuxTp n 3 linux
Tp n 3 linux
 
Introduction aux architectures des SI
Introduction aux architectures des SI Introduction aux architectures des SI
Introduction aux architectures des SI
 
mémoire de projet de fin d'études
mémoire de projet de fin d'études mémoire de projet de fin d'études
mémoire de projet de fin d'études
 
Support de cours Spring M.youssfi
Support de cours Spring  M.youssfiSupport de cours Spring  M.youssfi
Support de cours Spring M.youssfi
 
applications-reparties
applications-repartiesapplications-reparties
applications-reparties
 
Rapport pfe- Refonte et déploiement d’une solution de messagerie en utilisant...
Rapport pfe- Refonte et déploiement d’une solution de messagerie en utilisant...Rapport pfe- Refonte et déploiement d’une solution de messagerie en utilisant...
Rapport pfe- Refonte et déploiement d’une solution de messagerie en utilisant...
 
présentation pfe projet fin d'étude développement et conception d'une applica...
présentation pfe projet fin d'étude développement et conception d'une applica...présentation pfe projet fin d'étude développement et conception d'une applica...
présentation pfe projet fin d'étude développement et conception d'une applica...
 
TD_complet_reseau__CISCO__Packet Tracer.pdf
TD_complet_reseau__CISCO__Packet Tracer.pdfTD_complet_reseau__CISCO__Packet Tracer.pdf
TD_complet_reseau__CISCO__Packet Tracer.pdf
 
Support POO Java Deuxième Partie
Support POO Java Deuxième PartieSupport POO Java Deuxième Partie
Support POO Java Deuxième Partie
 
Support Java Avancé Troisième Partie
Support Java Avancé Troisième PartieSupport Java Avancé Troisième Partie
Support Java Avancé Troisième Partie
 

En vedette

Le Réseau et Java
Le Réseau et JavaLe Réseau et Java
Le Réseau et Java
Korteby Farouk
 
Programmation sous Android
Programmation sous AndroidProgrammation sous Android
Programmation sous Android
Olivier Le Goaër
 
programmation réseau en java
programmation réseau en java programmation réseau en java
programmation réseau en java
Ezéquiel Tsagué
 
Support programmation orientée aspect mohamed youssfi (aop)
Support programmation orientée aspect mohamed youssfi (aop)Support programmation orientée aspect mohamed youssfi (aop)
Support programmation orientée aspect mohamed youssfi (aop)
ENSET, Université Hassan II Casablanca
 
Support programmation orientée objet c# .net version f8
Support programmation orientée objet c#  .net version f8Support programmation orientée objet c#  .net version f8
Support programmation orientée objet c# .net version f8
ENSET, Université Hassan II Casablanca
 
Gwt jetty et sources de données
Gwt   jetty et sources de donnéesGwt   jetty et sources de données
Gwt jetty et sources de données
Franck SIMON
 
JavaFX 2.0 - リッチクライアントのためのUI基盤
JavaFX 2.0 - リッチクライアントのためのUI基盤JavaFX 2.0 - リッチクライアントのためのUI基盤
JavaFX 2.0 - リッチクライアントのためのUI基盤Yuichi Sakuraba
 
Les ateliers android_1_vers2015
Les ateliers android_1_vers2015Les ateliers android_1_vers2015
Les ateliers android_1_vers2015
Saber LAJILI
 
Hacking Tomcat
Hacking TomcatHacking Tomcat
Hacking Tomcat
guestc27cd9
 
Socket programming using java
Socket programming using javaSocket programming using java
Socket programming using java
UC San Diego
 
Autumn collection JavaOne 2014
Autumn collection JavaOne 2014Autumn collection JavaOne 2014
Autumn collection JavaOne 2014
José Paumard
 
Chat application in java using swing and socket programming.
Chat application in java using swing and socket programming.Chat application in java using swing and socket programming.
Chat application in java using swing and socket programming.
Kuldeep Jain
 
Network protocols and Java programming
Network protocols and Java programmingNetwork protocols and Java programming
Network protocols and Java programming
difatta
 
50 new things you can do with java 8
50 new things you can do with java 850 new things you can do with java 8
50 new things you can do with java 8
José Paumard
 
Java 8-streams-collectors-patterns
Java 8-streams-collectors-patternsJava 8-streams-collectors-patterns
Java 8-streams-collectors-patterns
José Paumard
 
Passive reporting 2
Passive reporting 2Passive reporting 2
Passive reporting 2englishbites
 
Les nouveautés de asp.net mvc 3
Les nouveautés de asp.net mvc 3Les nouveautés de asp.net mvc 3
Les nouveautés de asp.net mvc 3
Jerome Hugon
 
Les collections en JAVA
Les collections en JAVALes collections en JAVA
Les collections en JAVA
Axel KAMALAK
 
Cycle de vie d'activité Android et les composant d'Android
Cycle de vie d'activité Android et les composant d'AndroidCycle de vie d'activité Android et les composant d'Android
Cycle de vie d'activité Android et les composant d'Android
Houssem Lahiani
 

En vedette (20)

Le Réseau et Java
Le Réseau et JavaLe Réseau et Java
Le Réseau et Java
 
Programmation sous Android
Programmation sous AndroidProgrammation sous Android
Programmation sous Android
 
programmation réseau en java
programmation réseau en java programmation réseau en java
programmation réseau en java
 
Support programmation orientée aspect mohamed youssfi (aop)
Support programmation orientée aspect mohamed youssfi (aop)Support programmation orientée aspect mohamed youssfi (aop)
Support programmation orientée aspect mohamed youssfi (aop)
 
Support programmation orientée objet c# .net version f8
Support programmation orientée objet c#  .net version f8Support programmation orientée objet c#  .net version f8
Support programmation orientée objet c# .net version f8
 
Gwt jetty et sources de données
Gwt   jetty et sources de donnéesGwt   jetty et sources de données
Gwt jetty et sources de données
 
JavaFX 2.0 - リッチクライアントのためのUI基盤
JavaFX 2.0 - リッチクライアントのためのUI基盤JavaFX 2.0 - リッチクライアントのためのUI基盤
JavaFX 2.0 - リッチクライアントのためのUI基盤
 
Les ateliers android_1_vers2015
Les ateliers android_1_vers2015Les ateliers android_1_vers2015
Les ateliers android_1_vers2015
 
Hacking Tomcat
Hacking TomcatHacking Tomcat
Hacking Tomcat
 
Socket programming using java
Socket programming using javaSocket programming using java
Socket programming using java
 
Introduction aux-sockets
Introduction aux-socketsIntroduction aux-sockets
Introduction aux-sockets
 
Autumn collection JavaOne 2014
Autumn collection JavaOne 2014Autumn collection JavaOne 2014
Autumn collection JavaOne 2014
 
Chat application in java using swing and socket programming.
Chat application in java using swing and socket programming.Chat application in java using swing and socket programming.
Chat application in java using swing and socket programming.
 
Network protocols and Java programming
Network protocols and Java programmingNetwork protocols and Java programming
Network protocols and Java programming
 
50 new things you can do with java 8
50 new things you can do with java 850 new things you can do with java 8
50 new things you can do with java 8
 
Java 8-streams-collectors-patterns
Java 8-streams-collectors-patternsJava 8-streams-collectors-patterns
Java 8-streams-collectors-patterns
 
Passive reporting 2
Passive reporting 2Passive reporting 2
Passive reporting 2
 
Les nouveautés de asp.net mvc 3
Les nouveautés de asp.net mvc 3Les nouveautés de asp.net mvc 3
Les nouveautés de asp.net mvc 3
 
Les collections en JAVA
Les collections en JAVALes collections en JAVA
Les collections en JAVA
 
Cycle de vie d'activité Android et les composant d'Android
Cycle de vie d'activité Android et les composant d'AndroidCycle de vie d'activité Android et les composant d'Android
Cycle de vie d'activité Android et les composant d'Android
 

Similaire à Programmation réseau en JAVA

Cours services web_fabrice_mourlin
Cours services web_fabrice_mourlinCours services web_fabrice_mourlin
Cours services web_fabrice_mourlinangeeLee
 
JavaRMI.pdf
JavaRMI.pdfJavaRMI.pdf
JavaRMI.pdf
ngombeemmanuel
 
COUPLAGE ENTRE Asterisk et OpenIMSCore
COUPLAGE ENTRE Asterisk et OpenIMSCoreCOUPLAGE ENTRE Asterisk et OpenIMSCore
COUPLAGE ENTRE Asterisk et OpenIMSCore
Abdou Lahad SYLLA
 
Vinothkumar palaniyappan cv
Vinothkumar palaniyappan cvVinothkumar palaniyappan cv
Vinothkumar palaniyappan cv
Vinothkumar PALANIYAPPAN
 
Administration reseau
Administration reseauAdministration reseau
Administration reseauRiadh Briki
 
Administration reseau
Administration reseauAdministration reseau
Administration reseau
Roka Elmourabiti
 
cours-gratuit.com--id-5598.pdf
cours-gratuit.com--id-5598.pdfcours-gratuit.com--id-5598.pdf
cours-gratuit.com--id-5598.pdf
GodefroyCheumaniTche1
 
Ports et definitionscp
Ports et definitionscpPorts et definitionscp
Ports et definitionscp
Jovial Childeric Norcel SICKA
 
Chap1_PresentationJava.pdf
Chap1_PresentationJava.pdfChap1_PresentationJava.pdf
Chap1_PresentationJava.pdf
sayf7
 
Couche1 couche2 s4_v05
Couche1 couche2 s4_v05Couche1 couche2 s4_v05
Couche1 couche2 s4_v05
LeslyOctave
 
Évaluation des performances du réseau 3G : application à la couche réseau
Évaluation des performances du réseau 3G : application à la couche réseauÉvaluation des performances du réseau 3G : application à la couche réseau
Évaluation des performances du réseau 3G : application à la couche réseau
Achraf Trabelsi
 
Architecture Décentralisée
Architecture DécentraliséeArchitecture Décentralisée
Architecture Décentraliséeparigot
 
IPv6 au Clusir-Est
IPv6 au Clusir-EstIPv6 au Clusir-Est
IPv6 au Clusir-Est
Johan Moreau
 
Priorité des flux
Priorité des fluxPriorité des flux
Priorité des fluxbuffy14
 
Chap 02 poo en java
Chap 02 poo en javaChap 02 poo en java
Chap 02 poo en java
Yassine Badri
 
Présentation Packet Radio et APRS par F4BHQ et F1IJP
Présentation Packet Radio et APRS par F4BHQ et F1IJPPrésentation Packet Radio et APRS par F4BHQ et F1IJP
Présentation Packet Radio et APRS par F4BHQ et F1IJP
Lionel Repellin
 

Similaire à Programmation réseau en JAVA (20)

Cours services web_fabrice_mourlin
Cours services web_fabrice_mourlinCours services web_fabrice_mourlin
Cours services web_fabrice_mourlin
 
JavaRMI.pdf
JavaRMI.pdfJavaRMI.pdf
JavaRMI.pdf
 
Chap7 java net
Chap7 java netChap7 java net
Chap7 java net
 
COUPLAGE ENTRE Asterisk et OpenIMSCore
COUPLAGE ENTRE Asterisk et OpenIMSCoreCOUPLAGE ENTRE Asterisk et OpenIMSCore
COUPLAGE ENTRE Asterisk et OpenIMSCore
 
Vinothkumar palaniyappan cv
Vinothkumar palaniyappan cvVinothkumar palaniyappan cv
Vinothkumar palaniyappan cv
 
Administration reseau
Administration reseauAdministration reseau
Administration reseau
 
Administration reseau
Administration reseauAdministration reseau
Administration reseau
 
cours-gratuit.com--id-5598.pdf
cours-gratuit.com--id-5598.pdfcours-gratuit.com--id-5598.pdf
cours-gratuit.com--id-5598.pdf
 
Ports et definitionscp
Ports et definitionscpPorts et definitionscp
Ports et definitionscp
 
Chap1_PresentationJava.pdf
Chap1_PresentationJava.pdfChap1_PresentationJava.pdf
Chap1_PresentationJava.pdf
 
Les reseaux
Les reseauxLes reseaux
Les reseaux
 
Couche1 couche2 s4_v05
Couche1 couche2 s4_v05Couche1 couche2 s4_v05
Couche1 couche2 s4_v05
 
Évaluation des performances du réseau 3G : application à la couche réseau
Évaluation des performances du réseau 3G : application à la couche réseauÉvaluation des performances du réseau 3G : application à la couche réseau
Évaluation des performances du réseau 3G : application à la couche réseau
 
Architecture Décentralisée
Architecture DécentraliséeArchitecture Décentralisée
Architecture Décentralisée
 
IPv6 au Clusir-Est
IPv6 au Clusir-EstIPv6 au Clusir-Est
IPv6 au Clusir-Est
 
Priorité des flux
Priorité des fluxPriorité des flux
Priorité des flux
 
Cv
CvCv
Cv
 
Chap 02 poo en java
Chap 02 poo en javaChap 02 poo en java
Chap 02 poo en java
 
Présentation Packet Radio et APRS par F4BHQ et F1IJP
Présentation Packet Radio et APRS par F4BHQ et F1IJPPrésentation Packet Radio et APRS par F4BHQ et F1IJP
Présentation Packet Radio et APRS par F4BHQ et F1IJP
 
10 ipv6
10 ipv610 ipv6
10 ipv6
 

Plus de Bachir Benyammi

NIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopNIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 Workshop
Bachir Benyammi
 
Cadre pour l'amélioration de la cybersécurité des infrastructures critiques, ...
Cadre pour l'amélioration de la cybersécurité des infrastructures critiques, ...Cadre pour l'amélioration de la cybersécurité des infrastructures critiques, ...
Cadre pour l'amélioration de la cybersécurité des infrastructures critiques, ...
Bachir Benyammi
 
Déclaration d'applicabilité (DdA) - ISO27002:2013
Déclaration d'applicabilité (DdA) - ISO27002:2013Déclaration d'applicabilité (DdA) - ISO27002:2013
Déclaration d'applicabilité (DdA) - ISO27002:2013
Bachir Benyammi
 
Organigramme de la mise en œuvre du SMSI et processus de certification ISO 27...
Organigramme de la mise en œuvre du SMSI et processus de certification ISO 27...Organigramme de la mise en œuvre du SMSI et processus de certification ISO 27...
Organigramme de la mise en œuvre du SMSI et processus de certification ISO 27...
Bachir Benyammi
 
كل ما تحب معرفته عن محرك البحث قوقل (Google)
كل ما تحب معرفته عن محرك البحث قوقل (Google)كل ما تحب معرفته عن محرك البحث قوقل (Google)
كل ما تحب معرفته عن محرك البحث قوقل (Google)
Bachir Benyammi
 
Réalisation d'un site web dynamique mobile pour Air Algérie
Réalisation d'un site web dynamique mobile pour Air AlgérieRéalisation d'un site web dynamique mobile pour Air Algérie
Réalisation d'un site web dynamique mobile pour Air Algérie
Bachir Benyammi
 
Evolution des exportations de marchandises en Algérie de de 1992 à 2004
Evolution des exportations de marchandises en Algérie de de 1992 à 2004Evolution des exportations de marchandises en Algérie de de 1992 à 2004
Evolution des exportations de marchandises en Algérie de de 1992 à 2004
Bachir Benyammi
 
Simulation d’un système à temps partagé
Simulation d’un système à temps partagéSimulation d’un système à temps partagé
Simulation d’un système à temps partagé
Bachir Benyammi
 
الموقع الإلكتروني لمصحة الواحات للتشخيص و العلاج
الموقع الإلكتروني لمصحة الواحات للتشخيص و العلاجالموقع الإلكتروني لمصحة الواحات للتشخيص و العلاج
الموقع الإلكتروني لمصحة الواحات للتشخيص و العلاج
Bachir Benyammi
 
Réalisation d’un site web pour la Clinique des Oasis Ghardaïa
Réalisation d’un site web pour la Clinique des Oasis GhardaïaRéalisation d’un site web pour la Clinique des Oasis Ghardaïa
Réalisation d’un site web pour la Clinique des Oasis Ghardaïa
Bachir Benyammi
 
Le périphérique souris
Le périphérique sourisLe périphérique souris
Le périphérique souris
Bachir Benyammi
 
L'équipe de développement
L'équipe de développementL'équipe de développement
L'équipe de développement
Bachir Benyammi
 
L'équipe de développement
L'équipe de développementL'équipe de développement
L'équipe de développement
Bachir Benyammi
 
Le périphérique souris (programmation)
Le périphérique souris (programmation)Le périphérique souris (programmation)
Le périphérique souris (programmation)
Bachir Benyammi
 
Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...
Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...
Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...
Bachir Benyammi
 
Réalisation d'un compilateur de mini langage - Khawarizmi
Réalisation d'un compilateur  de mini langage - KhawarizmiRéalisation d'un compilateur  de mini langage - Khawarizmi
Réalisation d'un compilateur de mini langage - Khawarizmi
Bachir Benyammi
 
Réalisation d’un interpréteur en langue Arabe - Khawarizmi
Réalisation d’un interpréteur en langue Arabe - KhawarizmiRéalisation d’un interpréteur en langue Arabe - Khawarizmi
Réalisation d’un interpréteur en langue Arabe - Khawarizmi
Bachir Benyammi
 

Plus de Bachir Benyammi (17)

NIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopNIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 Workshop
 
Cadre pour l'amélioration de la cybersécurité des infrastructures critiques, ...
Cadre pour l'amélioration de la cybersécurité des infrastructures critiques, ...Cadre pour l'amélioration de la cybersécurité des infrastructures critiques, ...
Cadre pour l'amélioration de la cybersécurité des infrastructures critiques, ...
 
Déclaration d'applicabilité (DdA) - ISO27002:2013
Déclaration d'applicabilité (DdA) - ISO27002:2013Déclaration d'applicabilité (DdA) - ISO27002:2013
Déclaration d'applicabilité (DdA) - ISO27002:2013
 
Organigramme de la mise en œuvre du SMSI et processus de certification ISO 27...
Organigramme de la mise en œuvre du SMSI et processus de certification ISO 27...Organigramme de la mise en œuvre du SMSI et processus de certification ISO 27...
Organigramme de la mise en œuvre du SMSI et processus de certification ISO 27...
 
كل ما تحب معرفته عن محرك البحث قوقل (Google)
كل ما تحب معرفته عن محرك البحث قوقل (Google)كل ما تحب معرفته عن محرك البحث قوقل (Google)
كل ما تحب معرفته عن محرك البحث قوقل (Google)
 
Réalisation d'un site web dynamique mobile pour Air Algérie
Réalisation d'un site web dynamique mobile pour Air AlgérieRéalisation d'un site web dynamique mobile pour Air Algérie
Réalisation d'un site web dynamique mobile pour Air Algérie
 
Evolution des exportations de marchandises en Algérie de de 1992 à 2004
Evolution des exportations de marchandises en Algérie de de 1992 à 2004Evolution des exportations de marchandises en Algérie de de 1992 à 2004
Evolution des exportations de marchandises en Algérie de de 1992 à 2004
 
Simulation d’un système à temps partagé
Simulation d’un système à temps partagéSimulation d’un système à temps partagé
Simulation d’un système à temps partagé
 
الموقع الإلكتروني لمصحة الواحات للتشخيص و العلاج
الموقع الإلكتروني لمصحة الواحات للتشخيص و العلاجالموقع الإلكتروني لمصحة الواحات للتشخيص و العلاج
الموقع الإلكتروني لمصحة الواحات للتشخيص و العلاج
 
Réalisation d’un site web pour la Clinique des Oasis Ghardaïa
Réalisation d’un site web pour la Clinique des Oasis GhardaïaRéalisation d’un site web pour la Clinique des Oasis Ghardaïa
Réalisation d’un site web pour la Clinique des Oasis Ghardaïa
 
Le périphérique souris
Le périphérique sourisLe périphérique souris
Le périphérique souris
 
L'équipe de développement
L'équipe de développementL'équipe de développement
L'équipe de développement
 
L'équipe de développement
L'équipe de développementL'équipe de développement
L'équipe de développement
 
Le périphérique souris (programmation)
Le périphérique souris (programmation)Le périphérique souris (programmation)
Le périphérique souris (programmation)
 
Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...
Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...
Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...
 
Réalisation d'un compilateur de mini langage - Khawarizmi
Réalisation d'un compilateur  de mini langage - KhawarizmiRéalisation d'un compilateur  de mini langage - Khawarizmi
Réalisation d'un compilateur de mini langage - Khawarizmi
 
Réalisation d’un interpréteur en langue Arabe - Khawarizmi
Réalisation d’un interpréteur en langue Arabe - KhawarizmiRéalisation d’un interpréteur en langue Arabe - Khawarizmi
Réalisation d’un interpréteur en langue Arabe - Khawarizmi
 

Dernier

Burkina Faso library newsletter May 2024
Burkina Faso library newsletter May 2024Burkina Faso library newsletter May 2024
Burkina Faso library newsletter May 2024
Friends of African Village Libraries
 
Procédure consignation Lock Out Tag Out.pptx
Procédure consignation  Lock Out Tag Out.pptxProcédure consignation  Lock Out Tag Out.pptx
Procédure consignation Lock Out Tag Out.pptx
caggoune66
 
Edito-B1-francais Manuel to learning.pdf
Edito-B1-francais Manuel to learning.pdfEdito-B1-francais Manuel to learning.pdf
Edito-B1-francais Manuel to learning.pdf
WarlockeTamagafk
 
Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...
Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...
Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...
M2i Formation
 
Iris van Herpen. pptx
Iris            van        Herpen.     pptxIris            van        Herpen.     pptx
Iris van Herpen. pptx
Txaruka
 
Conseils pour Les Jeunes | Conseils de La Vie| Conseil de La Jeunesse
Conseils pour Les Jeunes | Conseils de La Vie| Conseil de La JeunesseConseils pour Les Jeunes | Conseils de La Vie| Conseil de La Jeunesse
Conseils pour Les Jeunes | Conseils de La Vie| Conseil de La Jeunesse
Oscar Smith
 
Cycle de Formation Théâtrale 2024 / 2025
Cycle de Formation Théâtrale 2024 / 2025Cycle de Formation Théâtrale 2024 / 2025
Cycle de Formation Théâtrale 2024 / 2025
Billy DEYLORD
 
Iris van Herpen. pptx
Iris         van        Herpen.      pptxIris         van        Herpen.      pptx
Iris van Herpen. pptx
Txaruka
 
Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...
Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...
Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...
cristionobedi
 
Newsletter SPW Agriculture en province du Luxembourg du 12-06-24
Newsletter SPW Agriculture en province du Luxembourg du 12-06-24Newsletter SPW Agriculture en province du Luxembourg du 12-06-24
Newsletter SPW Agriculture en province du Luxembourg du 12-06-24
BenotGeorges3
 
Iris van Herpen. pptx
Iris         van         Herpen.      pptxIris         van         Herpen.      pptx
Iris van Herpen. pptx
Txaruka
 

Dernier (11)

Burkina Faso library newsletter May 2024
Burkina Faso library newsletter May 2024Burkina Faso library newsletter May 2024
Burkina Faso library newsletter May 2024
 
Procédure consignation Lock Out Tag Out.pptx
Procédure consignation  Lock Out Tag Out.pptxProcédure consignation  Lock Out Tag Out.pptx
Procédure consignation Lock Out Tag Out.pptx
 
Edito-B1-francais Manuel to learning.pdf
Edito-B1-francais Manuel to learning.pdfEdito-B1-francais Manuel to learning.pdf
Edito-B1-francais Manuel to learning.pdf
 
Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...
Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...
Formation M2i - Onboarding réussi - les clés pour intégrer efficacement vos n...
 
Iris van Herpen. pptx
Iris            van        Herpen.     pptxIris            van        Herpen.     pptx
Iris van Herpen. pptx
 
Conseils pour Les Jeunes | Conseils de La Vie| Conseil de La Jeunesse
Conseils pour Les Jeunes | Conseils de La Vie| Conseil de La JeunesseConseils pour Les Jeunes | Conseils de La Vie| Conseil de La Jeunesse
Conseils pour Les Jeunes | Conseils de La Vie| Conseil de La Jeunesse
 
Cycle de Formation Théâtrale 2024 / 2025
Cycle de Formation Théâtrale 2024 / 2025Cycle de Formation Théâtrale 2024 / 2025
Cycle de Formation Théâtrale 2024 / 2025
 
Iris van Herpen. pptx
Iris         van        Herpen.      pptxIris         van        Herpen.      pptx
Iris van Herpen. pptx
 
Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...
Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...
Formation Intelligence Artificielle pour dirigeants- IT6-DIGITALIX 24_opt OK_...
 
Newsletter SPW Agriculture en province du Luxembourg du 12-06-24
Newsletter SPW Agriculture en province du Luxembourg du 12-06-24Newsletter SPW Agriculture en province du Luxembourg du 12-06-24
Newsletter SPW Agriculture en province du Luxembourg du 12-06-24
 
Iris van Herpen. pptx
Iris         van         Herpen.      pptxIris         van         Herpen.      pptx
Iris van Herpen. pptx
 

Programmation réseau en JAVA

  • 1. Dirigé par: M. BOUKHELKHAL Ahmed Travail Réalisé par :  BENYAMMI Bachir  HASSANI Mustapha  OULD BAHAMMOU Abdelaziz Niveau: 4eme Année informatique - Cycle long Ministère de l’Enseignement et de la Recherche Scientifique UNIVERSITE AMAR TELIDJI LAGHOUAT FACULTE DES SCIENCES ET DE L’INGENIERIE DEPARTEMENT DE GENIE INFORMATIQUE Module Réseau et Communication THÈME: Année Universitaire 2006-2007
  • 2. 13 janvier 2016 Programmation Réseau en JAVA 2 Plan  Introduction.  JAVA (Historique, Caractéristiques, API,…).  Réseau (TCP-IP, TCP, UDP, Socket, Port, Diffusion, URLs, …).  Adressage et Internet (Couche Réseau).  Communication par Sockets (couche Transport).  Ressources Internet (URL) (couche Application).  Exceptions liées aux réseaux.  Conclusion.  Bibliographie. P L A N D U T R A V A I L
  • 3. 13 janvier 2016 Programmation Réseau en JAVA 3 I - Introduction Depuis son origine, Java fournit plusieurs classes et interfaces destinées à la programmation réseau, à cause de son API qui a été bien conçu et riche d'une côté, et traité la plupart des interfaces, protocoles et plateformes d'autres côté; la programmation des applications réseaux en JAVA est devenue un choix primordial. I N T R O D U C T I O N
  • 4. 13 janvier 2016 Programmation Réseau en JAVA 4 Quelque Domaines d’application  Navigation d'un l'Internet (HTTP).  Messagerie électronique (SMTP et POP).  Conception de nouveaux protocoles.  Sécurité des communications (Cryptage des messages, authentification, …).  Mise en place des services Internet et interfaces GUI clients.  Recherche des hôtesses et adressage (DNS).  Transfert de fichiers (FTP).  Déploiement à distance des applications multiple systèmes (RMI).  … I N T R O D U C T I O N
  • 5. 13 janvier 2016 Programmation Réseau en JAVA 5 Bref historique de Java Les principaux événements de la vie de Java sont les suivants : Année Événements 1995 mai : premier lancement commercial 1996 janvier : JDK 1.0 1996 septembre : lancement du JDC 1997 février : JDK 1.1 1998 décembre : lancement de J2SE et du JCP 1999 décembre : lancement J2EE 2000 mai : J2SE 1.3 2002 J2SE 1.4 2004 J2SE 1.5 2006 J2SE 1.6 L A N G A G E J A V A
  • 6. 13 janvier 2016 Programmation Réseau en JAVA 6 Les caractéristiques de JAVA JAVA est:  Familier,  Orienté objet,  Client / Serveur;  Multithreadé,  Interprété. JAVA à une:  Architecture neutre,  Portable,  Dynamiquement adaptable. Les applications JAVA sont:  Sécurisées,  Performantes,  Robustes,  Plateformes multiples,  Réseaux hétérogènes, distribués. L A N G A G E J A V A
  • 7. 13 janvier 2016 Programmation Réseau en JAVA 7 L’ API du JAVA JAVA inclut un grand nombre de librairies de classes utiles et de méthodes, très brièvement, ces librairies sont :  java.lang : Classes de base du langage.  java.io : Gestion les flux (Entrées/Sorties).  java.net : Fonctionnalités réseaux (programmation réseaux).  Java.util : Utilitaires divers.  java.awt : Jeux d’outils pour les interfaces graphiques (GUI).  Java.Applet: Développement des applets.  Java.RMI : Développement d'objets distribués.  Java.Swing : Développement des interfaces graphiques.  java.sql : JDBC pour l'accès aux bases de données.  Java.Security : Gestion des signatures et des certifications.  java.JavaBean : Développer des composants réutilisables. L A N G A G E J A V A
  • 8. 13 janvier 2016 Programmation Réseau en JAVA 8 Comparaison du JAVA L A N G A G E J A V A
  • 9. 13 janvier 2016 Programmation Réseau en JAVA 9 Architecture Client - Serveur  C’est une communication entre deux machines  L’un de ces machine offre des services (Serveur).  L’autre machine consomme ces services (Client).  Le client lance une requête pour l’acquisition d’une ressource (Texte, Image, Son, …).  Le serveur exécute la requête (lancement des scripts, interaction avec BDD, …).  Le résultat de la requête (réponse) est envoyé au client. R E S E A U X
  • 10. 13 janvier 2016 Programmation Réseau en JAVA 10 Le protocole TCP-IP HTTP FTP Telnet SMTP NFS SNMP DNS RIP TCP UDP IP Token RingEthernet FDDI Application Transport Réseau Liaison TCP-IP et hiérarchie de ces protocoles HTTP (Hypertext Transfer Protocol) FTP (File Transfer Protocol) SMTP (Simple Mail Transfer Protocol) NFS (Network File System) RIP (Routing Information Protocol) DNS (Domain Name System) SNMP (Simple Network Management Protocol) IP (Internet Protocol) FDDI (Fiber Distributed Data Interface) R E S E A U X
  • 11. 13 janvier 2016 Programmation Réseau en JAVA 11 TCP-IP et java.net  Les classes et interfaces utiles au développement réseau sont regroupées dans le package java.net.  Dans le cadre de ce mini projet; 10 classes ont été choisies.  Les couche programmable du TCP-IP sont: Application, Transport et Réseau. URL, URLConnection, URLEncoder Socket, ServerSocket InetAdress, NetworkInterfaces Application Transport (TCP/UDP) Réseau (IP) DatagramSocket, DatagramPacket, MulticastSocket R E S E A U X
  • 12. 13 janvier 2016 Programmation Réseau en JAVA 12 Notion de Socket et de Port Communication par Sockets Socket  Un modèle de communication basé sur TCP ou UDP.  Dans une communication; au moins 2 sockets sont utilisées.  Chaque socket est identifiée par une adresse IP et un numéro de port. Port  La liaison d’une machine à un réseau est physique.  Les données passent par cette liaison sont utilisées par diverses applications (ou protocoles).  Les ports sont fondus pour distinguer les données propriétaire à chaque processus (plusieurs communications TCP et/ou UDP en parallèle).  Quelque numéros de port sont réservés (Well Known Ports). R E S E A U X
  • 13. 13 janvier 2016 Programmation Réseau en JAVA 13 TCP  Communication garantie.  Ordre de la livraison des paquets est prise en compte.  Pas de perte ou de duplication des paquets.  Communication fiable (moins performante).  Utile pour l’implantation des services réseaux tel que l’accès à distance (telnet, rlogin) et le transfert des fichiers (ftp) où un grand flux de donnés est échangé. R E S E A U X
  • 14. 13 janvier 2016 Programmation Réseau en JAVA 14 UDP  Communication non garantie.  Ordre de la livraison des paquets n'est pas important et non garantie.  Possibilité de perte ou de duplication des paquets.  Communication très rapide (bonnes performances).  UDP est réservé à des taches peu importantes.  UDP est utilisé dans plusieurs applications (eMule, Kaza, iMesh...). R E S E A U X
  • 15. 13 janvier 2016 Programmation Réseau en JAVA 15 Mode connecté en non connecté Émetteur Récepteur Mot 2 Mot 1Mot 3 Mot 2 Mot 1Mot 3 3 12 3 21 Émetteur Récepteur X 1 Appel téléphonique (Support de transmission : l’opérateur téléphonique) Courriers postaux (Support de transmission : Service portal) R E S E A U X
  • 16. 13 janvier 2016 Programmation Réseau en JAVA 16 La diffusion  Envoyer des paquets à plusieurs machines sans faire la duplication de ces paquets.  L’adresse IP doit être type classe D, c-à-d entre 224.0.0.1 et 239.255.255.255 (Tous ces adresse sont déjà occupées !!).  Utilisation du champ TTL (Time To Live) pour contrôler le chemin du paquet:  1 = Réseau local.  16 = Région.  127 = Monde entier. R E S E A U X
  • 17. 13 janvier 2016 Programmation Réseau en JAVA 17 La diffusion PC 1 diffuse des informations au autres PC R E S E A U X
  • 18. 13 janvier 2016 Programmation Réseau en JAVA 18 Les URLs  Une URL (Uniform Source Locator) est une chaîne de caractères qui désigne une ressource accessible par Internet ou Intranet.  Une URL est composée en générale d’un protocole, un serveur, un port, chemin d’accès et un ensemble de paramètres. R E S E A U X
  • 19. 13 janvier 2016 Programmation Réseau en JAVA 19 Exemples d’URLs  http://<serveur>:<port>/<chemin>?<param1>&<param2>&...&<paramn> http://www.google.com/convert?value=100&src=miles&dist=kilometers  ftp://<user>:<motdepasse>@<serveur>:<port>/<chemin> ftp://benbac:2007dz47@free.fr/siteperso  mailto:<email> mailto:benbac20@gmail.com  file://<serveur>/<chemin> file:///C:/My%20documents/Mes%20images/logo.jpg R E S E A U X
  • 20. 13 janvier 2016 Programmation Réseau en JAVA 20 IV – Adressage et Internet (Couche Réseau) Chaque machine du réseau Internet à une adresse unique, cette adresse (appelée adresse IP ) est codée sur 4 octets séparés par des points. 192 168 0 15 Adresse du réseau (poids fort) Adresse du machine sur le réseau (poids faible) Pour faciliter la compréhension humaine, un serveur particulier appelé DNS (Domaine Name Service) est capable d'associer un nom à une adresse IP. A D R E S S A G E
  • 21. 13 janvier 2016 Programmation Réseau en JAVA 21 Méthode Rôle InetAddress getByName(String) Renvoie l'adresse Internet associée au nom d'hôte passé en paramètre. InetAddress[] getAllByName(String) Renvoie un tableau des adresses Internet associées au nom d'hôte. InetAddress getLocalHost() Renvoie l’IP de la machine locale. byte[] getAddress() Renvoie les 4 octets de l'adresse IP. String getHostAddress() Renvoie L’IP sous la forme d'une chaîne. String getHostName() Renvoie le nom du serveur. Cette classe offre des méthodes de manipulation des adresses Internet, elle est constituée  D’un objet de la classe InetAddress représente l’adresse Internet.  Des méthodes pour lire l’adresse, la comparer avec d’ autre ou la convertir en chaîne de caractères. A - La classe InetAddress A D R E S S A G E
  • 22. 13 janvier 2016 Programmation Réseau en JAVA 22 Les interfaces de connexions aux réseaux  La nouvelle classe NetworkInterface (J2SE 1.4) permet d'obtenir la liste des interfaces de connexion aux réseaux de la machine.  Une interface de connexion au réseau se caractérise par :  Un nom court,  Une désignation,  Une liste d'adresses IP. A D R E S S A G E
  • 23. 13 janvier 2016 Programmation Réseau en JAVA 23 B - La Classe NetworkInterface Méthode Description String getName() Renvoie le nom court de l'interface String getDisplayName() Renvoie la désignation de l'interface Enumeration getInetAddresses() Renvoie une énumération d'objet InetAddress contenant la liste des adresses IP associée à l'interface Les méthode utilisées dans cette classe sont: A D R E S S A G E
  • 24. 13 janvier 2016 Programmation Réseau en JAVA 24 V - Communication par Sockets (Couche Transport) Les sockets représentent l’outil de base pour la conception des protocoles et le développement des applications de communication tel que la messagerie, transmission des fichiers, vidéoconférence,….etc. deux protocoles sont utilisés: 1. Le protocole TCP a. ServerSocket b. Socket 2. Le protocole UDP a. DatagramSocket b. DatagramPacket c. MulticastSocket S O C K E T S
  • 25. 13 janvier 2016 Programmation Réseau en JAVA 25 1- Communication en mode Connecté(TCP)  La classe SocketServer  Elle est utilisée au coté serveur.  Elle attend simplement les appels des clients.  Chaque objet est associé à un port sur lequel il va attendre les connexions.  Pour chaque client, un thread est lancé pour assurer le dialogue avec lui.  La classe Socket  La classe contient les méthodes de création des flux d'entrée-sortie.  Les sockets constituent la base des communications sur le réseau.  La classe gère la connexion, l'envoi de données, la réception de données et la déconnexion. S O C K E T S
  • 26. 13 janvier 2016 Programmation Réseau en JAVA 26 A - La classe ServerSocket Constructeur Rôle ServerSocket() Constructeur par défaut. ServerSocket (int) Créer une Socket sur le port fourni en paramètre. ServerSocket (int, int) Créer une Socket sur le port avec la taille maximale de la file fourni en paramètre. La classe possède plusieurs constructeurs dont les principaux sont : Méthode Rôle Socket accept() Attendre une nouvelle connexion void close() Fermer la socket La classe SocketServer possède plusieurs méthodes : S O C K E T S
  • 27. 13 janvier 2016 Programmation Réseau en JAVA 27 Constructeur Rôle Server() Constructeur par défaut. ServerSocket (String, int) Créer une socket sur la machine dont le nom et le port sont fournis en paramètre. ServerSocket (InetAddress, int) Créer une socket sur la machine dont l'adresse et le port sont fournis en paramètre. Méthode Rôle InetAddress getInetAddress() Renvoie l'adresse IP distant. void close() Fermer la socket. InputStream getInputStream() Renvoie un flux en entrée pour recevoir les données de la socket. OutputStream getOutputStream() Renvoie un flux en sortie pour émettre les données de la socket. B - La classe Socket S O C K E T S
  • 28. 13 janvier 2016 Programmation Réseau en JAVA 28 Mécanisme de communication entre le Client et le Serveur par TCP S O C K E T S
  • 29. 13 janvier 2016 Programmation Réseau en JAVA 29 2 - Communication en mode non connecté (UDP) La classe DatagramSocket  Émission et réception des paquets à l’aide des méthodes Send() et Recieve(). La classe DatagramPacket  Émission et la réception des données d’un paquet à l’aide d’un tableau d’octets à l’aide de getData()et sendData(). La classe MulticastSocket  Diffusion des paquets sur un réseau. S O C K E T S
  • 30. 13 janvier 2016 Programmation Réseau en JAVA 30 A - La classe DatagramSocket Constructeur Rôle DatagramSocket() Créé une socket attachée à toutes les IP de la machine et avec un à des ports libres. DatagramSocket(int) Créé une socket attachée à toutes les IP avec un port précisé en paramètre. DatagramSocket (int, InetAddress) Créé une socket attachée à une adresse IP et un port précisé en paramètre. Méthode Rôle close() Fermeture de la Socket. receive(DatagramPacket) Recevoir des données. send(DatagramPacket) Envoyer des données. int getPort() Renvoie le port associé à la socket. S O C K E T S
  • 31. 13 janvier 2016 Programmation Réseau en JAVA 31 B - La classe DatagramPacket Constructeur Rôle DatagramPacket (byte tampon[], int length) Encapsule des paquets en réception dans un tampon. DatagramPacket (byte port[], int length, InetAddress adresse, int port) Encapsule des paquets en émission à destination d'une machine. La classe possède plusieurs constructeurs dont les principaux sont : Méthode Rôle InetAddress getAddress() Renvoie l'adresse du serveur. byte[] getData() Renvoie les données du paquet. int getPort Renvoie le port. int getLength () Renvoie la taille des données. setData(byte[]) Mettre à jour les données. S O C K E T S
  • 32. 13 janvier 2016 Programmation Réseau en JAVA 32 Mécanisme de communication entre le Client et le Serveur par UDP S O C K E T S
  • 33. 13 janvier 2016 Programmation Réseau en JAVA 33 C - La classe MulticastSocket Constructeur Rôle MulticastSocket() Pour l'envoi des paquets. MulticastSocket (int port) Pour la réception des paquets sur un port spécifié. La classe possède plusieurs constructeurs dont les principaux sont : Méthode Rôle void joinGroup (InetAddress mcastaddr) La jointure avec à un groupe de diffusion. leaveGroup (InetAddress mcastaddr) Abandonner le groupe de diffusion. La classe MulticastSocket possède plusieurs méthodes : S O C K E T S
  • 34. 13 janvier 2016 Programmation Réseau en JAVA 34 VI – Ressources Internet (URL) (Couche Application) Les classes du Java.net les plus important de la gestion et la manipulation des liens sont: La classe URL  Validation syntaxique des liens. La classe URLConnection  Établir des connexion vers des ressources. La classe URLEncoder  Utilitaire de codification (encodage) des URL. R E S S O U R C E S
  • 35. 13 janvier 2016 Programmation Réseau en JAVA 35 A - La classe URL La classe URL possède plusieurs méthodes pour obtenir les différents éléments qui composent l’URL, parmi ces méthodes: Si la syntaxe de l’URL n’est pas correcte; une exception de type MalformedURLException est signalée. Méthode Rôle getProtocol() Renvoie le protocole utilisé. getHost() Renvoie le nom du hôte. getPort() Renvoie le port utilisé. getFile() Renvoie le chemin complet du fichier. openConnection() Ouvrir une connexion vers la ressource. openStream() Ouvrir un flux de données en entrée pour lire la ressource. R E S S O U R C E S
  • 36. 13 janvier 2016 Programmation Réseau en JAVA 36 B - La classe URLConnection Cette classe établir une connexion vers une ressource désignée par une URL pour obtenir un flux de données ou des informations sur cette ressource. En plus de ça, la classe URLConnection offre des outils pour la lecture et l’écriture dans les ressources désignées . Méthode Rôle getInputStream() Renvoie un flux de données getContentLength() Renvoie la taille du flux. R E S S O U R C E S
  • 37. 13 janvier 2016 Programmation Réseau en JAVA 37 C - La classe URLEncoder Cette classe est une classe utilitaire qui propose la méthode statique encode() pour encoder une URL. Elle remplace notamment les espaces par un signe "+" et les caractères spéciaux par un signe "%" suivi du code du caractère. R E S S O U R C E S
  • 38. 13 janvier 2016 Programmation Réseau en JAVA 38 VII-Les exception liées au réseaux Le package java.net définit plusieurs exceptions qui permettant de gérer les différentes erreurs résultantes de l'exécution des ces classes et méthodes. Parmi ces exceptions: Exception Description BindException Port utilisé par une autre application. ConnectException Aucun serveur n'écoute sur le port précisé. MalformedURLException L'URL n'est pas valide NoRouteToHostException Un firewall empêche la connexion SocketTimeoutException Délai d'attente écoulé. UnknownHostException L'adresse de l'hôte n'a pas pu être trouvée E X C E P T I O N S
  • 39. 13 janvier 2016 Programmation Réseau en JAVA 39 Conclusion  En voie claire et net la puissance et la souplesse du langage JAVA dans divers domaines d’application et spécialement l’Internet et les réseaux interconnectées.  JAVA est actuellement prend l'avantage complet de l'Internet en dominant ces principales aspects :  Rechercher et visualisation des informations.  Transmission des données.  Jeux interactifs.  Chat et messagerie.  Commerce électronique.  Actualités.  Diffusion radio et TV.  Conférence en ligne.  …  En future, il semble que JAVA devient la plateforme la plus adéquate de tous type d'applications réseau et spécialement l'Internet. C O N C L I T I O N
  • 40. 13 janvier 2016 Programmation Réseau en JAVA 40 Bibliographie  Emmanuel Remy : Généralités sur java, http://emmanuel-remy.developpez.com.  Dr.Irène Charon: Java concepts et pratique, 2éme édition 2003.  Dr.Bruce Eckel: Penser en Java, 2éme édition 2000.  Package pédagogique multimédia, 8éme édition, Août 2006.  Jean Michel DOUDOUX : Développons en Java, http://www.jmdoudoux.fr/java/.  CISCO Academy American Network.  Elliotte Rusty Harold : Java Network Programming, 2nd Edition , O‘Reilly.  The Java Tutorials, : Custom Networking http://java.sun.com/docs/books/tutorial.  Gilles ROUSSEL : Programmation réseau avec JAVA.  Comment ça marche, http://commentcamarche.net.  Didier Donsez, Programmation Réseau, Université de Valenciennes.  Boukhalkhal Ahmed et Sahel Naima, Réalisation d’une application d’aide à l’administration sous Windows NT. B I B L I O G R A P H I E