Académique Documents
Professionnel Documents
Culture Documents
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 de Socket
Notion de Port
La classe URL
Les Sockets Java
TCP/IP et les principaux services
La classe InetAdress
Processus de Sockets
Exemple de process serveur
Exemple de process client simple et multi-clients
Datagram- Buffered stream- et Data Stream- sockets
Un port est identifié sur une machine par un nombre entier (16 bits)
de 0 à1023 :
ports réservés assignés par l'IANA (Internet Assigned Numbers Authority)
donnent accès aux services standard :
> 1024
ports utilisateurs disponibles pour placer un service applicatif quelconque
Source Christine Bulfone : Le client/Serveu©r et l’API socket
Application NIS
NIS NFS
NFS
TELNET
Etc...
TELNET
Etc...
HTTP
SMTP
X11
FTP
HTTP
SMTP
X11
FTP
Présentation XDR
XDR
Session
Sockets
RPC
RPC
Transport UDP
UDP TCP
TCP
Réseau IP
IP
Liaison Ethernet
Ethernet FDDI
FDDI Token
Token Ring
Ring Etc...
Etc...
Socket()
Socket()
Client
Socket()
Socket()
Client
Socket()
Socket() listen()
listen()
un
unserveur
serveur“Datagram
“Datagramsockets”
sockets”
Client n’utilise
n’utilisepas
pasde
delisten()
listen()::ililn’y
n’yaa
pas
pasde dedéroulement
déroulementde desessions
sessions
Socket()
Socket() listen()
listen()
session création
connect()
connect() accept()
accept()
TCP thread
Client accept()
accept()
attente client
suivant
un
unserveur
serveur“Datagram
“Datagram Le serveur accepte la connexion
sockets”
sockets”n’utilise
n’utilisepas
pas accept() et déclenche un nouveau
de
deaccept()
accept() processus pour prendre en compte le
client
© Rémy Courdier 1996-2009 - Java Réseau - Version du cours 3.0 15
java.net
Processus de Sockets - 5
session création
connect()
connect() accept()
accept()
TCP thread
Client accept()
accept()
attente client
suivant
write()
write() read()
read()
nbXLab
read()
read() write()
write()
50
close()
close() close()
close()
Socket()
Socket() listen()
listen()
session création
connect()
connect() accept()
accept()
TCP thread
Client accept()
accept()
attente client
suivant
write()
write() read()
read()
nbXLab
read()
read() write()
write()
50
close()
close() close()
close()