App Internet
App Internet
l'Internet
PLAN
• Principes Fondamentaux
– Modèle Client / Serveur
– DNS: Domain Name System
• Applications Principales (« Historiques ») Cours 1
Si
SiAAveut
veutcommuniquer
communiqueravec avecB,
B,AAdoit
doitconnaître:
connaître:
••l’@IP
l’@IPdedeBB
••leleport
portsur
surlequel
lequelBBécoute
écoute
B,
B,ne
nedoit
doitrien
rienconnaître
connaîtrede
deAA
Client
Serveur
PLAN
• Principes Fondamentaux
– Modèle Client / Serveur
– DNS: Domain Name System
Motivations
Comment
Commentfaire
fairelalacorrespondance:
correspondance:
Nom logiqueÙ
Nomlogique Ù@IP@IP(et(etvice-versa?)
vice-versa?)
Idée
Idée
connexion
[Link] svp
[Link]
[Link]
Navigateur
(client) [Link]
@IP de www.g DNS
[Link]?
3 MIC/IMACS Applications Internet 7
Fondements Historiques Récentes Modèle C/S DNS
En
EnFrance
France
AFNIC
AFNIC Gestion
Gestiondes
deszones
zonesDNS
[Link]
.[Link]
.repar
pardélégation
délégationaux
aux««bureaux
bureauxd’enregistrement
d’enregistrement»»
RIPE
RIPE Gestion
Gestiondes
des@IP
@IP
3 MIC/IMACS Applications Internet 8
Fondements Historiques Récentes Modèle C/S DNS
DNS: Définitions
Le
LeDNS
DNSfonctionne
fonctionneselon
selonlelemodèle
modèleclient/serveur
client/serveur
Définitions
A?
in
[Link]
.fr
.14
se
gethostbyname() .fr - [Link]
08
ou
1.2
1 9 .f r .
ul
3.5
A IC
-to
. IN XT.N
A?
sa
Resolver r.
t.f
in
IC A.E
in
Hypothèse:
Hypothèse: e.
[Link]
ci c
w.
.fr
sns 9.2
EX NS
ww
ou
NS .5
T.N
ul
A. IN
6
N .220
[Link]
o I
.
t
fr
a- fr.
e. A 19
5
Tous
Tousles
lescaches
cachessont
sont i. n
s us
w ulo IN
to [Link].
vides
videsààt=0
t=0 w w -
a ic
ins 1.c r inA
? .insa-toulouse
se.f
ns lo u
u [Link].
nsa-to sa - toulous
Proxy DNS w.i 2 .in
ww wwnew
C N A ME w .9.106
(FAI) [Link]. IN A 195.83
lo [Link]. IN
sa-tou
[Link] [Link]-toulou www
w
wwwne
DNS: Enregistrements
Faire
Fairelalacorrespondance:
correspondance:Nom logiqueÙ
Nomlogique Ù@IP
@IP
Plusieurs
Plusieurstypes
typesd’enregistrements
d’enregistrementsen
enfonction
fonctiondu
dubesoin
besoin
DNS: Caching
Tous
Tousles
lesserveurs
serveursDNS
DNSfont
fontdu
du««caching
caching»»
Toutes
Toutesles
lesréponses
réponses(pos/neg)
(pos/neg)sont
sontmémorisées
mémorisées
ÎÎRéduction
Réductiondudunombre
nombredederequêtes
requêtes
[Link]. 2D IN A [Link]
[Link]. 2D IN A [Link]
[Link]. 2D IN AAAA 2001:660:3006:1::1:1
[Link]. 2D IN A [Link]
Applications « Historiques »
• Applications Principales (« Historiques »)
Serveur
Entité regroupant le serveur HTTP et le contenu qu’il héberge
Web
Client Application permettant à un utilisateur de rapatrier, interpréter
et afficher un contenu (qu’il désigne par une URL) hébergé sur
Web un serveur HTTP
[Link]
Principe de fonctionnement
Idée
Idée
port 80
[Link] connexion
requête serveur
[Link]
Navigateur
(client) réponse
affichage
affichage
HTTP – Requêtes/Réponses
Requêtes
Réponses (Statut)
HTTP – Requêtes/Réponses
[Link]
DISK
DYNAMIQUE
DYNAMIQUE
GET / HTTP/1.1
Navigateur Serveur HTTP
(client) HTTP/1.1 200 OK
[Link]?pId=90123
EXEMPLE
EXEMPLE
POST /[Link] HTTP/1.1
login=toto&password=plouf&lang=en
HTTP/1.1 200 OK ;
Set-Cookie : SID=9AOEIA8293
GET /[Link] HTTP/1.1
Cookie : SID=9AOEIA8293
HTTP/1.1 200 OK ; SESSION
GET /[Link] HTTP/1.1
Cookie : SID=9AOEIA8293
HTTP/1.1 200 OK ;
Set-Cookie : SID=+
Applications « Historiques »
• Applications Principales (« Historiques »)
MAIL – SMTP/POP3/IMAP4
MAIL
Boîtes
BoîtesPostales:
Postales:La
LaPoste
Poste––Modèle
Modèlede
defonctionnement
fonctionnement
émetteur destinataire
MAIL – SMTP/POP3/IMAP4
Mail
Mail––Modèle
Modèlede
defonctionnement
fonctionnement
émetteur destinataire
user@[Link] user@[Link]
MAIL – SMTP
destinataire@[Link] MTA
MTA
SMTP Serveur SMTP
de la zone
[Link]
220 [Link] ESMTP spamd IP-based SPAM blocker; Fri Mar 23 12:21:12 2007
HELO [Link]
250 [Link] Hello vitoria [[Link]], pleased to meet you
MAIL FROM:<user@[Link]>
250 2.1.0 <user@[Link]>... Sender ok
RCPT TO:<destinataire@[Link]>
250 2.1.5 <destinataire@[Link]>... Recipient ok
DATA
354 Enter mail, end with "." on a line by itself
Le SMTP, c'est facile en fait!
.
250 2.0.0 l2NBLC0A021500 Message accepted for delivery
QUIT
221 2.0.0 [Link] closing connection
MAIL – SMTP
MTA
MTA
MTA
MTA
SMTP Serveur MAIL
Serveur MAIL de la zone
de la zone [Link]
[Link]
220 [Link] ESMTP spamd IP-based SPAM blocker; Fri Mar 23 12:21:12 2007
HELO [Link]
250 [Link] Hello [Link] [[Link]], pleased to meet you
MAIL FROM:<user@[Link]>
250 2.1.0 <user@[Link]>... Sender ok
RCPT TO:<destinataire@[Link]>
250 2.1.5 <destinataire@[Link]>... Recipient ok
DATA
354 Enter mail, end with "." on a line by itself
Le SMTP, c'est facile en fait!
.
250 2.0.0 lC0A022NBL1500 Message accepted for delivery
QUIT
221 2.0.0 [Link] closing connection
Serveur MAIL 1
de la zone
h] [Link]
[a Æ
Serveur MAIL
de la zone
[i Æ m] Serveur MAIL 2
[Link] de la zone
[Link]
[n Æ z
]
Serveur MAIL 3
de la zone
[Link]
jdupond@[Link]
MAIL – POP3/IMAP4
Serveur MAIL POP3/IMAP4
de la zone
[Link]
POP3/IMAP4
Comparatif rapide
1 73300
C 1 772255 POP3 RRFFCC1
7
IMAP4
RRFFC 1
Boite Unique (tri coté client) Arborescence de Boites (tri coté serveur)
Pas de concurrence Gestion boîte partagée à plusieurs
Entêtes et/ou corps uniquement Message téléchargeable par parties
Applications « Historiques »
• Applications Principales (« Historiques »)
Telnet
54
/ SSH
2511
: Shell à distance
8 4 4 5
RRFFCC85 RRFFCC42
Objectif Premier
Comparatif rapide
Telnet SSH
Client/Serveur Client/Serveur
Transactions en clair Transactions chiffrées
Authentification Utilisateur Authentification Utilisateur et Machine
SSH
SSHajoute
ajoutede
denouvelles
nouvellesfonctionnalités
fonctionnalités: :tunnels
tunnelstransport
transportsécurisés,
sécurisés,
authentification
authentificationpar
parclé
clépublique/clé
publique/cléprivée,
privée,……
Telnet
Client Serveur
SY N
S YN - A C K Connexion TCP
ACK
Etablissement de la session
Î Négociation des fonctionnalités(capacités)
login: user
Authentification par mot de passe password:
Telnet
machine[~] telnet Négociation
telnet> toggle options
Will show option processing.
telnet> open athena WILL Je suis prêt à m’occuper de cet aspect de la communication si tu veux bien
Trying [Link]...
Connected to athena.
Escape character is '^]'. DO Je souhaiterai que tu t’occupes de cet aspect de la communication
Annonce
SENT DO SUPPRESS GO AHEAD
Je ne m’occuperai pas de cet aspect de la communication
SENT WILL TERMINAL TYPE
SENT WILL NAWS
WONT (je n’en suis pas capable)
SENT WILL TSPEED
SENT WILL LFLOW
SENT WILL LINEMODE
DONT Ne t’occupe pas de cet aspect de la communication, je souhaite le faire
SENT WILL NEW-ENVIRON
SENT DO STATUS
RCVD DO TERMINAL TYPE
RCVD DO TSPEED Annonce Serveur et Réponse Client
RCVD DO XDISPLOC
SENT WONT XDISPLOC
RCVD DO NEW-ENVIRON
RCVD WILL SUPPRESS GO AHEAD
Réponse Serveur
RCVD DO NAWS
SENT IAC SB NAWS 0 80 (80) 0 24 (24) à l’annonce
RCVD DO LFLOW
RCVD DONT LINEMODE
RCVD WILL STATUS
RCVD IAC SB TERMINAL-SPEED SEND
SENT IAC SB TERMINAL-SPEED IS 38400,38400
RCVD IAC SB NEW-ENVIRON SEND
SENT IAC SB NEW-ENVIRON IS Echange de valeurs
RCVD IAC SB TERMINAL-TYPE SEND
SENT IAC SB TERMINAL-TYPE IS "XTERM"
RCVD DO ECHO
SENT WONT ECHO
RCVD WILL ECHO Que se passe-t-il?
SENT DO ECHO Liste
Listedes
desoptions
optionstelnet
telnetet
etdes
desRFCs
RFCsassociées
associées
athena login: [Link]
[Link]
SSH
Client Serveur
SYN
SYN - ACK Connexion TCP
ACK
serveur$ uptime
4:19pm up 6 day(s), 23:58, 2 users, load average: 0.08, 0.02, 0.02
serveur$ exit
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the RSA1 host key has just been changed.
It is also possible that the RSA1 host key has just been changed.
The fingerprint for the RSA1 key sent by the remote host is
The fingerprint for the RSA1 key sent by the remote host is
bd:29:25:2f:02:9c:1f:47:55:8d:8c:9b:3e:4a:fc:91. Please contact your system administrator.
bd:29:25:2f:02:9c:1f:47:55:8d:8c:9b:3e:4a:fc:91. Please contact your system administrator.
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: POSSIBLE DNS SPOOFING DETECTED! @
@ WARNING: POSSIBLE DNS SPOOFING DETECTED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
The RSA1 host key for falun has changed, and the key fo r the according IP address [Link]
The RSA1 host key for falun has changed, and the key fo r the according IP address [Link]
is unchanged. This could either mean that DNS SPOOFING is happening or the IP address for the host
is unchanged. This could either mean that DNS SPOOFING is happening or the IP address for the host
and its host key have changed at the same time. Offending key for IP in /home/dsk13/ugrad/foo/.ssh/known_hosts:92
and its host key have changed at the same time. Offending key for IP in /home/dsk13/ugrad/foo/.ssh/known_hosts:92
SSH – Tunnels
Applications « Historiques »
• Applications Principales (« Historiques »)
Objectif Premier
Comparatif rapide
FTP SFTP
Client/Serveur - Standalone Client/Serveur – Sous système de SSH
Transfert en clair Transfert chiffrées par SSH
Authentification Utilisateur Authentification Utilisateur et Machine
Connexions anonymes OK Pas de connexions anonymes
L’utilitaire
L’utilitairescp
scppermet
permetlalacopie
copiede
defichiers
fichiersààdistance,
distance,ililrepose
reposesur
surSFTP.
SFTP.
Syntaxe
Syntaxegénérale:
générale:scp
scplogin@machine1:/chemin/vers/fichier/source
login@machine1:/chemin/vers/fichier/sourcelogin@machine2:/chemin/destination
login@machine2:/chemin/destination
machine[~]
machine[~]ftp ftp
ftp> open [Link]
ftp> open [Link]
Connected
[Link]
[Link]
220
220 ProFTPD 1.3.0Server
ProFTPD 1.3.0 Server(ProFTPD
(ProFTPDDefault
DefaultInstallation)
Installation)[[Link]]
[[Link]]
Name ([Link]:login):
Name ([Link]:login): anonymous anonymous
331
331Anonymous
Anonymouslogin loginok,ok,send
sendyour
yourcomplete
completeemail
emailaddress
addressas
asyour
yourpassword.
password.
Password:
Password:
230
230Anonymous
Anonymousaccess accessgranted,
granted,restrictions
restrictionsapply.
apply.
Remote system type is
Remote system type is UNIX. UNIX.
Using
Usingbinary
binarymode
modetototransfer
transferfiles.
files.
ftp> ls
ftp> ls
200
200PORT
PORTcommand
commandsuccessful
successful
150
150 Opening ASCII modedata
Opening ASCII mode dataconnection
connectionforforfile
filelist
list
iperf_2.[Link]
iperf_2.[Link]
226
226Transfer
Transfercomplete.
complete.
2525 bytes receivedinin0.011
bytes received 0.011seconds
seconds(2.32
(2.32Kbytes/s)
Kbytes/s)
ftp> quit
ftp> quit
221
221Goodbye.
Goodbye.
machine[~] ftp
machine[~]
ftp> ftp
open [Link]
ftp> opento
Connected [Link]
[Link]
Connected to
220 ProFTPD 1.3.0 [Link]
Server (ProFTPD Default Installation) [[Link]]
220 ProFTPD 1.3.0 Server (ProFTPD
Name ([Link]:login): Default Installation) [[Link]]
anonymous
331Name ([Link]:login):
Anonymous anonymous
login ok, send your complete email address as your password.
331 Anonymous login ok, send your complete email address as your password.
Password:
230Password:
Anonymous access granted, restrictions apply.
230 Anonymous
Remote system type access granted, restrictions apply.
is UNIX.
Remote
Using binary system
modetype is UNIX.
to transfer files.
Using
ftp> ls binary mode to transfer files.
200ftp> ls command successful
PORT
150200 PORT command
Opening ASCII mode successful
data connection for file list
150 Opening ASCII mode data connection for file list
iperf_2.[Link]
iperf_2.[Link]
226 Transfer complete.
25226 Transfer
bytes complete.
received in 0.011 seconds (2.32 Kbytes/s)
25quit
ftp> bytes received in 0.011 seconds (2.32 Kbytes/s)
221ftp> quit
Goodbye.
221 Goodbye.
Ouverture connexion
FTP de données
Fermeture connexion
FTP de données
TYPE
TYPEI:I: Binary
Binary
TYPE
TYPEA: ASCII
A: ASCII
3 MIC/IMACS Applications Internet 39
Fondements Historiques Récentes Web E-Mail Telnet SSH FTP SFTP
142x256+89
142x256+89==36441
36441
machine[~] ftp
machine[~]
ftp> ftp
open [Link]
ftp> open to
Connected [Link]
[Link].
220Connected
ProFTPDto1.3.0 [Link].
Server (ProFTPD Default Installation) [[Link]]
220 ProFTPD
Name 1.3.0 Server (ProFTPD
([Link]:login): Default Installation) [[Link]]
anonymous
Name ([Link]:login):
331 Anonymous login ok, send your complete anonymousemail address as your password.
331 Anonymous login ok, send your complete email address as your password.
Password:
Password:
230 Anonymous access granted, restrictions apply.
230 Anonymous
Remote system type access granted, restrictions apply.
is UNIX.
Idem Actif
Remote
Using binary system
modetype is UNIX.
to transfer files.
Using
ftp> binary mode to transfer files.
passive
ftp> passive
Passive mode on.
Passive
ftp> ls mode on.
227ftp> ls
Entering Passive Mode (82,224,71,131,194,22).
150227 Entering
Opening Passive
ASCII mode Mode
data(82,224,71,131,194,22).
connection for file list
150 Opening ASCII mode data connection for file list
iperf_2.[Link]
iperf_2.[Link]
226 Transfer complete.
25226 Transfer
bytes receivedcomplete.
in 0.0073 seconds (3.36 Kbytes/s)
25quit
ftp> bytes received in 0.0073 seconds (3.36 Kbytes/s)
ftp> quit
221 Goodbye.
221 Goodbye.
Idem Actif
Client Serveur
SYN Connexion TCP
SYN - ACK
ACK
Authentification mutuelle des machines (clés)
et mise en place d’un canal sécurisé
Bibliographie
DNS
DNS et BIND
Paul Albitz et Cricket Liu ; O'Reilly 2002
SMTP
Sendmail : installer, administer et optimiser un serveur de messagerie
Thibaut Maquet ; Eyrolles 2003
SSH / SFTP
SSH, le shell sécurisé
Daniel J. Barrett & Richard E. Silverman; O'Reilly 2002
PLAN
• Evolutions Récentes
– Techniques de mutualisation/clusterisation
– Modèle P2P (DHT …)
– Applications Multimédia
Mutualisation/Clusterisation
Mutualisation
Technique de mise en commun des ressources visant à permettre à plusieurs
entités le partage de celles-ci de façon équitable
Clusterisation
Technique visant à mettre en commun les ressources de plusieurs entités
dans le but de former une entité plus puissante
Exemple: Le calcul scientifique fait souvent appel aux grilles de calcul qui
permettent l’utilisation de nombreux calculateurs « moyen de gamme » pour
obtenir des performances semblables à quelques calculateurs
« haut de gamme »
Mutualisation - Constat
machine[~]
machine[~]dig
[Link]
[Link]
[Link].
[Link]. 10h30m59s
10h30m59sININAA [Link]
[Link]
machine[~]
machine[~]dig
[Link]
[Link]
[Link].
[Link]. 10h30m59s
10h30m59sIN INAA [Link]
[Link]
Mutualisation - Principe
hote1 svp
GET
Client / HT [Link]
TP/1
Web .1 hote1
www
hote2 [Link]
Serveur /
Web
Client T P/1.1
T / HT
Web GE
hote2 svp Le
Leserveur
serveurdoitdoit««savoir
savoir»»ààquel
quelhôte
hôte
leleclient
clientsouhaite
souhaites’adresser
s’adresser
Mutualisation - Analyse
C S
[Link]
Le
Leserveur
serveur««sait sait»»
car
carleleclient
client
[Link]
lelelui
luidit
dit
IlIlest
estnécessaire
nécessairededeconfigurer
configurerleleserveur
serveur
(directive
(directiveVirtualHost
VirtualHostpour
pourapache)
apache)
Clusterisation - Constat
machine1[~]
machine1[~][Link]
[Link]
[Link].
[Link]. 271915
271915 IN IN CNAME
CNAME [Link].
[Link].
[Link].
[Link]. 600328
600328 IN IN CNAME
CNAME [Link].
[Link].
[Link].
[Link]. 63
63 IN
IN AA [Link]
[Link]
[Link].
[Link]. 63
63 IN
IN AA [Link]
[Link] 4 @IP
[Link].
[Link]. 63
63 IN
IN AA [Link]
[Link]
[Link].
[Link]. 63
63 IN
IN AA [Link]
[Link]
machine2[~]
machine2[~][Link]
[Link]
[Link].
[Link]. 2d7h10m47s
2d7h10m47sIN
INCNAME
CNAME [Link].
[Link].
[Link].
[Link]. 5S
5S IN
INAA [Link]
[Link]
[Link].
[Link]. 5S
5S IN
INAA [Link]
[Link] 4 @IP
[Link].
[Link]. 5S
5S IN A
IN A [Link]
[Link]
[Link].
[Link]. 5S
5S IN
INAA [Link]
[Link]
Certains
Certainshôtes
hôtespossèdent
possèdentplusieurs @IPÙ
plusieurs@IP ÙDans
Dansquel
quelbut?
but?
3 MIC/IMACS Applications Internet 49
Fondements Historiques Récentes Mutualisation Clusterisation P2P Multimédia
Clusterisation - Constat
machine[~]
machine[~]dig
[Link]
[Link]
[Link].
[Link]. 1h46m11s
1h46m11sIN
INCNAME
CNAME [Link].
[Link].
[Link].
[Link]. 1h59m17s
1h59m17sIN
INAA [Link]
[Link]
machine[~] 1 @IP
machine[~]dig
[Link]
[Link]
[Link].
[Link]. 2H
2H IN
INCNAME
CNAME [Link].
[Link].
[Link].
[Link]. 1h11m4s
1h11m4s IN
INAA [Link]
[Link]
[Link] #3
Un
Unseul
seulserveur
serveur??
[Link] #106
[Link] #366
Clusterisation - Analyse
Clusterisation
Clusterisationpar
parRound
RoundRobin
RobinDNS
DNS [Link]
ection Server 1
onn
HTTP c Server 2
Client Server 3
Web 1
Server 4
ex
Client
am
pl
Server 5
e.
Web 2 c
om
@
in
IP
A?
Server n
1
o nn ection
HT TP c
Client
Web n exa
mp
le.c
om
@I in A
?
DNS DATA
Pn DNS FAI
[Link]. 63 IN AA @IP1
[Link]. 63 IN @IP1
[Link]. 63 IN AA @IP2
[Link]. 63 IN @IP2
CeCemodèle
modèleprésente
présentequelques
quelquesinconvénients:
inconvénients: [Link].
[Link]. 63
63 IN
IN AA @IP3
@IP3
•
•
•• [Link] 63 IN AA @IPn
[Link] 63 IN @IPn
Clusterisation - Analyse
Clusterisation
Clusterisationpar
parload
loadbalancing
balancing [Link]
(«
(«serveur
serveurvirtuel
virtuel»)
»)
Server 1
Server 2
Client HTTP connectio
n Server 3
Web 1 LB
ex Server 4
am @IP1
Client pl n Server 5
Web 2
e.
c ectio
om n
co n
@
in
TP
IP
A? T
H
1
Server n
Client
Web n exa
mp
le.c
om
@I in A
P1 ?
DNS FAI
Ce DNS DATA
Cemodèle
modèleprésente
présentequelques
quelquesinconvénients:
inconvénients:
•
• [Link]. 63 IN AA @IP1
•• [Link]. 63 IN @IP1
Clusterisation - Analyse
Combinaison
Combinaisondes
desdeux
deux [Link] Server 1
Server 2
HTTP connectio Server 3
n
LB
Client @IP1
Web 1
ex
Client
am LB
pl
e.
Web 2 c
om
@
in
IP
A?
1
LB
@IPn
Client Server n
Web n exa
mp
le.c
om
@I in A
?
DNS DATA
Pn DNS FAI
[Link]. 63 IN AA @IP1
[Link]. 63 IN @IP1
[Link]. 63 IN AA @IP2
[Link]. 63 IN @IP2
[Link]. 63 IN AA @IP3
[Link]. 63 IN @IP3
[Link] 63 IN AA @IPn
[Link] 63 IN @IPn
PLAN
• Evolutions Récentes
– Techniques de mutualisation/clusterisation
– Modèle P2P (DHT …)
– Applications Multimédia
P2P - Présentation
Objectif du P2P
me
PPrroobblèlème
Client FTP
Client FTP
155Mbps
Serveur FTP
Client FTP
Client FTP
Capacité
Capacitépartagée
partagéepar
partous
tous
Client FTP
P2P - Présentation
P2P Pure / P2P Hybride
Nœud P2P
Tous
Tousles
lesnoeuds
noeudsont
ontlelemême
mêmerôle
rôle
P2P - Analyse
yb r id
idee
H
PP22PP Hy b r
Cherche donn
ée 7?
n:
sio née
n SI donnée 7: @IP
3, @ IP1
es n
s
os , do
de p 2, … Nœud P2P
ce ée
non onn
An 1, d
onn
ée 2
d
Nœud P2P
3
Nœud P2P
Tout
Toutnoeud
noeudentrant
entrantannonce
annonceles
lesdonnées
donnéesqu’il
qu’ilpossède
possèdeau auserveur
serveurd’index
d’index(identifiant
(identifiantunique
uniquedes
desdonnées?)
données?)
Lors d’une recherche, le serveur d’index (SI) va donner au noeud les ID des noeuds à contacter
Lors d’une recherche, le serveur d’index (SI) va donner au noeud les ID des noeuds à contacter
P2P - Analyse
PP22P non
P nonsstrt uctu
re ructurréé
PP22PPPPuure Nœud P2P
Nœud P2P
e7
nné ch
do er
er c he
erch rd Nœud P2P
ch on Nœud P2P
né
e7 7
Nœud P2P ée
onn
chercher donnée7 rd
ch che
er Nœud P2P ch
er
ch
er
do
nn
ée
Nœud P2P
7 Nœud P2P
Nœud P2P
chercher donnée
7
Un
Unnoeud
noeudentrant:
entrant:Comment
Commentconnaître
connaîtrelelepremier
premiernoeud
noeudààcontacter?
contacter?
AAqui
qui donner la liste des données partagées? Comment faire unerecherche?
donner la liste des données partagées? Comment faire une recherche?
P2P - Analyse
Construire PP22P stru
Construireune
unestructure
structure“logique”
“logique”ordonnée P strucctu
re
ordonnée
turréé
PP22PPPPuure
i.e.
[Link]
DHT(Table
(Tablede
deHashage
HashageDistribuée),
Distribuée),......
Nœud P2P
Nœud P2P
Un
Unnoeud
noeudentrant:
entrant:Comment
Commentconnaître
connaîtrelelepremier
premiernoeud
noeudààcontacter?
contacter?
P2P - Analyse
Table
Tablede
deHachage
Hachage Structure
Structurede
dedonnée
donnéepermettant
permettantlelestockage
stockaged’une
d’unevaleur
valeurassociée
associéeààune
uneclé:
clé:
Ex: (Dupond Î 0706050403)
Ex: (Dupond Î 0706050403)
H(Dupond) = 256
1 5 256
0706050403
Généralement fonctionH()
Généralementlalafonction H()est
estnon
noninversible
inversibleeteton
onsouhaite
souhaitelelemoins
moins
de
decollisions
collisionspossibles
possibles(aucune
(aucuneidéalement)
idéalement)
P2P - Analyse
DHT
DHT Chaque
Chaquenoeud
noeudpossède
possèdeununIDIDunique (ex:H
unique(ex: H(@IP))
(@IP))
(Chord
(Chord&&Pastry)
Pastry)
IlIlest
est responsable pour une partie de l’espace des clésde
responsable pour une partie de l’espace des clés delalatable
table
Nœud P2P
Nœud P2P
Nœud P2P
Nœud P2P
Nœud P2P
Nœud P2P
Nœud P2P
P2P - Analyse
DHT
DHT Chaque
Chaquenoeud
noeudpossède
possèdeununIDIDunique (ex:H
unique(ex: H(@IP))
(@IP))
(Chord
(Chord&&Pastry)
Pastry)
IlIlest
est responsable pour une partie de l’espace des clésde
responsable pour une partie de l’espace des clés delalatable
table
Nœud P2P
Nœud P2P
put(Dupond, 0706050403)
pu
)
03
t(D
04
up
05
on
06
d,
07
07
06
d,
05
on
Nœud P2P
0
up
40
t( D
3 )
pu
Nœud P2P
pu
t( D
up
on
d,
07
06
05
04
03
)
Nœud P2P
Nœud P2P
25
6
03
504
0 Comment
07
06
Nœud P2P Commentplacer
placerles
lesnœuds?
nœuds?
Comment gérer les départs?
Comment gérer les départs?
P2P - Pointeurs
Chord & Pastry
[Link]
[Link]
JXTA – (Juxtapose)
[Link] - API Java pour développer des logiciels P2P
PLAN
• Evolutions Récentes
– Techniques de mutualisation/clusterisation
– Modèle P2P (DHT …)
– Applications Multimédia
Applications Multimédia
Application Multimédia
Application manipulant plusieurs types de média différents
(Audio, Vidéo, Texte, …)
Streaming
Diffusion en temps réel d’un flux multimédia de telle sorte que la
présentation de ce flux à l’utilisateur puisse commencer avant la fin
du transfert de ce flux.
Client
Client Client
Client Serveur
Client
Video
Videoon
onDemand
Demand Conferencing
Conferencing
3 MIC/IMACS Applications Internet 65
Fondements Historiques Récentes Mutualisation Clusterisation P2P Multimédia
Applications Multimédia
Plusieurs Challenges
Les média ont des caractéristiques propres
Le réseau présente une variabilité des ressources disponibles
de
de32Kbps
32Kbpsààplusieurs
plusieurs(~10)Mbps
(~10)Mbps
Réseau
débit = f(t)
délai = g(t)
Applications Multimédia
Plusieurs Challenges
Les média ont des caractéristiques propres
Le réseau présente une variabilité des ressources disponibles
de
de32Kbps
32Kbpsààplusieurs
plusieurs(~10)Mbps
(~10)Mbps
Réseau
débit = f(t)
délai = g(t)
Conclusion
Principes Fondamentaux
Modèle Client / Serveur et applications fondamentales
- Web, Mail, Shell à distance
Pour aller plus loin: IRC / Réseaux d’Instant Messaging (i.e. XMPP)
Système de fichier distribué (NFS, SMB, …)
Annuaires LDAP et applications
Applications Web / Ajax
Evolutions Récentes
Modèle P2P: différents types de réseaux et exemples
« Introduction » à la Qualité de Service (QdS) pour les applications multimédia