Upload
bachir-benyammi
View
510
Download
0
Embed Size (px)
Citation preview
Suivi par: Mr. BENSAAD Mohamed Lahcen
Réalisé par :
BENYAMMI BACHIR & HASSANI Mustapha
Promotion : 2007/2008
République Algérienne Démocratique et Populaire
Ministère de l’Enseignement Supérieur et de la Recherche Scientifique
UNIVERSITE AMAR TELIDJI - LAGHOUAT
FACULTE DES SCIENCES ET DE L’INGENIERIE
DEPARTEMENT DE GENIE INFORMATIQUE
Projet de fin d’études
Pour l’obtention du diplôme d’ingénieur d’état en informatique
Option : Systèmes Parallèles et Distribués(SPD)
THÈME:
2
Plan du travail
Introduction
Le bureau distant
Outils & technologies utilisés
Conception & implémentation
Présentation & Evaluation
jrdesktop sur le net
Conclusion
Conception et réalisation d’une application de
Bureau à distance en Java12/01/2016
Pla
n d
u tra
vail
3
Introduction De nouvelles applications apparaissent chaque jour qui se déroulent à
distance pour:
Vidéoconférence,
Assistance à distance (helpdesk),
Enseignement à distance,
Maintenance,
Télétravail,
…etc.
Les responsables informatiques ont pris conscience de l'intérêt des
dispositifs de bureau distant pour répondre à leurs défis :
la continuité de l’activité,
la rentabilité.
Conception et réalisation d’une application de
Bureau à distance en Javamardi 12 janvier 2016
Intro
du
ctio
n
4
Le bureau distant garantissant:
la sécurité de l’accès,
la mobilité des utilisateurs,
la mise à disposition des applications
Le bureau à distance est capable d’apporter une aide quelconque à un
utilisateur se trouvant dans un poste d’un réseau local ou mondiale par le
biais de l’internet comme si vous étiez à sa place.
Comment contrôler et visualiser un ordinateur distant quel que soit
son emplacement sur un réseau (LAN, MAN, WAN ou même sur
Internet) ?
Introduction (suite …)
Conception et réalisation d’une application de
Bureau à distance en Java
Intro
du
ctio
n
mardi 12 janvier 2016
5
Le bureau distant L'observation et la prise de contrôle d'un ordinateur distant depuis un
ordinateur local
Le
bu
reau
dis
tan
t
mardi 12 janvier 2016Conception et réalisation d’une application de
Bureau à distance en Java
Dépannage à distance
Aide en
ligneFormation
maintenanceTéléintervention
Télétravail
6
Le bureau distant (suite …) Utiliser l’écran, clavier et souris pour connecter à l'ordinateur distant et de le
piloter.
Les mouvements transférés de l'ordinateur local :
Souris;
Signaux du clavier.
Les Captures d’écran depuis l'ordinateur distant vers l’ordinateur local.
Travailler et accéder à tous:
Les applications,
Les fichiers,
Les ressources réseau.
Piloter simultanément plusieurs ordinateurs distants.
Le
bu
reau
dis
tan
t
mardi 12 janvier 2016Conception et réalisation d’une application de
Bureau à distance en Java
7
Fonctionnement
Module Admin: prend le contrôle de par
l’écran, le clavier, et la sourisLe
bu
reau
dis
tan
t
mardi 12 janvier 2016Conception et réalisation d’une application de
Bureau à distance en Java
Module Hôte : exécute les commandes
du Module Admin et lui envoie l'état
de son écran.
8
Outils et technologies utilisés
Outils
& te
chn
olo
gie
s u
tilisés
mardi 12 janvier 2016Conception et réalisation d’une application de
Bureau à distance en Java
Java
RMI
SSL
NetBeans
• orienté réseau et objet
• multiplateformeJava• API Java
• Invocation de méthode distante
• Utilise le protocole JRMP
RMI• IDE pour Java
• Multiplateforme(Windows, Linux, Solaris et Mac OS X…etc.)
NetBeans
• Sécuriser des échanges de données sur Internet
• Sécuriser le protocole de transmission des données, tel que HTTP,FTP,SMTP
• Sécuriser le système d'identification
SSL
Conception du Système
Diagramme de cas d’utilisation
Diagramme de classe
Digramme de séquence
12/01/2016 Rélisation d'un interpréteur Khawarizmi 9
Con
ce
ptio
n d
u s
ystè
me
Diagramme de cas d’utilisation
12/01/2016 10
Conception et réalisation d’une application de
Bureau à distance en Java
Con
ce
ptio
n d
u s
ystè
me
Relations entre cas d’utilisation
12/01/2016 11
Conception et réalisation d’une application de
Bureau à distance en Java
Con
ce
ptio
n d
u s
ystè
me
Diagramme de classe
12/01/2016 12
Conception et réalisation d’une application de
Bureau à distance en Java
Con
ce
ptio
n d
u s
ystè
me
Diagramme de séquence
12/01/2016 13
Conception et réalisation d’une application de
Bureau à distance en Java
Processus d’authentification
Con
ce
ptio
n d
u s
ystè
me
Implémentation du Système
Architecture RMI
Communication entre modules
Architecture interne
Fonctionnalités de base
12/01/2016 Rélisation d'un interpréteur Khawarizmi 14
Implé
me
nta
tion d
u s
ystè
me
Architecture RMI
12/01/2016 15
Conception et réalisation d’une application de
Bureau à distance en Java
Implé
me
nta
tion d
u s
ystè
me
Implé
me
nta
tion d
u s
ystè
me
Architecture interne
12/01/2016 16
Conception et réalisation d’une application de
Bureau à distance en Java
Server Viewer
Communication entre modules
12/01/2016 17
Conception et réalisation d’une application de
Bureau à distance en Java
Implé
me
nta
tion d
u s
ystè
me Entrées-sorties :
Evénements clavier & souris; Captures d’écran;
Fonctionnalités de base Capture d’écran:
Evénements clavier & souris;
Transfert de données et de fichiers;
Communication via RMI;
Serveur « multihomed »
Sécurité & cryptage;
Compression de données;
Traitement d’image;
Qualité de couleurs;
Synchronisation du Presse-papiers;
Configuration;
…etc.
12/01/2016 18
Conception et réalisation d’une application de
Bureau à distance en Java
Implé
me
nta
tion d
u s
ystè
me
1. Initialisation du
rectangle de la capture;
2. Capture d’écran;
Capture d’écran
12/01/2016 19
Conception et réalisation d’une application de
Bureau à distance en Java
Implé
me
nta
tion d
u s
ystè
me
0, 0 0, 308
157, 0 157, 308
Capture d’écran (suite …)
3. Redimensionnement du rectangle;
4. Changement de la palette
des couleurs;
12/01/2016 Rélisation d'un interpréteur Khawarizmi 20
Implé
me
nta
tion d
u s
ystè
me
75%
256
couleurs
Capture d’écran (suite …)
5. Changement de la qualité d’image;
6. Conversion d’image vers un
tableau d’octets;
12/01/2016 Rélisation d'un interpréteur Khawarizmi 21
25%
01001111011001
Implé
me
nta
tion d
u s
ystè
me
Transfert de données
12/01/2016 22
public void run() {
while (true) {
Wait();
while(recording && !pause)
{
viewer.sendData();
viewer.recieveData();
}
}
}
Conception et réalisation d’une application de
Bureau à distance en Java
Implé
me
nta
tion d
u s
ystè
me
Déploiement du Système
Présentation du logiciel
Evaluation du logiciel
Architecture interne
Fonctionnalités de base
jrdesktop sur le net
12/01/2016 Rélisation d'un interpréteur Khawarizmi 23
Déplo
iem
ent d
u s
ystè
me
12/01/2016 Rélisation d'un interpréteur Khawarizmi 24
Zone de
visualisation
Barre d’outils
Aperçu sur la fenêtre de visualisation
Présentation du logiciel
Barres
d’ défilement
Déplo
iem
ent d
u s
ystè
me
12/01/2016 25
Présentation du logiciel (suite …)
Interface textuelle
Interface fenêtrier Icône dans la barre des tâches
Diverses interfaces
Conception et réalisation d’une application de
Bureau à distance en Java
Délp
oie
me
nt d
u s
ystè
me
Evaluation
Avantages du logiciel;
Tests et résultats sur le transfert de données;
Limitations du logiciel;
Comparaison du logiciel avec d’autres projets
du Bureau à distance.
12/01/2016 26
Délp
oie
me
nt d
u s
ystè
me
Conception et réalisation d’une application de
Bureau à distance en Java
Evaluation (suite …)Avantages
Interface utilisateur conviviale et intuitive ;
Haute vitesse et performance dans les réseaux LAN;
Plein de paramètres de réglages;
Sécurité, cryptage et authentification.
Multiples connexions simultanées ;
Transfert de fichiers, de textes et des images (à l'aide
de presse-papiers);
Indépendance de la plateforme;
….etc.
12/01/2016 27
Délp
oie
me
nt d
u s
ystè
me
Conception et réalisation d’une application de
Bureau à distance en Java
0%
69%
50%
51%
54%
60%
69%
37%
65%
67%
12/01/2016 28
Effet de la compression sur les données envoyées
Emission de donnéesDélp
oie
me
nt d
u s
ystè
me
Evaluation (suite …)
Conception et réalisation d’une application de
Bureau à distance en Java
Vitesse moyenne
Sans compression: 116.08 KB/S Avec compression: 43.23 KB/S
9%6%
8%67%
1%2%
3%51%
4%6%
7%49%
10%2%
3%53%
12/01/2016 29
Effet de la qualité de la compression d'image JPEG
Délp
oie
me
nt d
u s
ystè
me
Evaluation (suite …)
Conception et réalisation d’une application de
Bureau à distance en Java
Réception de données
Vitesse moyenne
Sans compression: 408.64 KB/S Avec compression: 386.77 KB/S
12/01/2016 30
Transfert de fichiersDélp
oie
me
nt d
u s
ystè
me
Evaluation (suite …)
Conception et réalisation d’une application de
Bureau à distance en Java
Vitesse moyenne : 4 835,7 KB/S
Evaluation (suite …)Limitations
Occupation élevée de la bande passante;
Occupation élevée de ressources matérielles;
Réglage des paramètres de visualisation à chaque nouvelle
session;
Manque de diverses documentation du projet;
Support partiel du presse-papiers;
Transfert de fichiers est limité aux fichiers de petites tailles et
occupe la mémoire ;
Pas de client Web (pas de support de visualisation pour les
navigateurs Web) ;
Pas de support de Proxy, ni de tunnel http et absence d'un relai;
…etc.
12/01/2016 31
Délp
oie
me
nt d
u s
ystè
me
Conception et réalisation d’une application de
Bureau à distance en Java
12/01/2016 32
Délp
oie
me
nt
du
systè
me
jrdesktop vs autres projetsEvaluation (suite …)
Conception et réalisation d’une application de
Bureau à distance en Java
Cry
pta
ge
Au
then
tificatio
n
Com
pressio
n
Qu
alité d
'image
Cop
yR
ect
Con
versio
n d
e
cou
leurs
Tra
nsfère d
e
fichiers
Tra
nsfère d
e
presse
-pap
iers
Mu
lti sessio
ns
Clien
t Web
Clien
t
Serv
er
Tech
nolo
gie
Date
Versio
n
Licen
ce
Projet
×××?××socket15.02.052.3OSSJxta Remote
Desktop
××××××××socket14.11.072.1bOSSJava Remote
Control
SSL×××socket21.11.020.1OSSRobo
×××××socket20044.1PropVNC Viewer
×××××××××RMI29.05.061.0OSSJ Remote Desktop
RC4××?××××socket27.09.051.1OSSproperJavaRDP
××××××××socket24.06.06?PropAJAX Remote
Desktop Viewer
DES××××××socket17.02.081.2PropGSVNCJ
SSL××RMI23.06.080.2OSSjrdesktop
jrdesktop sur le net
Site web officiel:
jrdesktop.sourceforge.net
Différentes sources du trafic;
Statistiques sur les visites;
Statistiques sur les téléchargements;
12/01/2016 33
Délp
oie
me
nt d
u s
ystè
me
Conception et réalisation d’une application de
Bureau à distance en Java
Délp
oie
me
nt d
u s
ystè
me
jrdesktop sur le net (suite …)Visites
(en %)VisitesDateLienSite web
10.0430409-03-2008
01-05-2008
http://sourceforge.net/projects/jrdesktop/
http://jrdesktop.sourceforge.net/
02.7710020-03-2008http://jrdesktop.googlecode.com/
http://code.google.com/p/jrdesktop/
02.404309-05-2008http://www.ohloh.net/projects/jrdesktop/
57.271 73409-05-2008http://en.wikipedia.org/wiki/Java_Remote_Desktop
http://en.wikipedia.org/wiki/Jrdesktop
05.1610415-05-2008http://www.freshports.org/net/jrdesktop/
http://www.freebsd.org/cgi/cvsweb.cgi/ports/net/jrdesktop/
04.72143?http://www.open-open.com/open218835.htm
13.84419??
12/01/2016 34
Conception et réalisation d’une application de
Bureau à distance en Java
3 028 Visites, 9 611 Pages vuesDifférentes sources du trafic (27-06-08)
Délp
oie
me
nt d
u s
ystè
me
jrdesktop sur le net (suite …)
12/01/2016 35
VisitesPays
882États-Unis
198Angleterre
190Allemagne
187Chine
153Canada
62France
61Algérie
Conception et réalisation d’une application de
Bureau à distance en Java
Nombre total de pays = 93
Statistiques
sur les visites
(27-06-08)
jrdesktop sur le net (suite …)
Octets servisTéléchargementsMois
121.4 MB922Juin
151.9 MB1 500Mai
16.2 MB433Avril
14.6 MB252Mars
12/01/2016 36
Conception et réalisation d’une application de
Bureau à distance en Java
Nombre total de téléchargements = 3 107
Statistiques sur les
téléchargements
Délp
oie
me
nt d
u s
ystè
me
Conclusion
12/01/2016 37
Conception et réalisation d’une application de
Bureau à distance en Java
Conclu
sio
n
Notre application « jrdesktop » est un outil très puissant,
facile à utiliser et qui est capable de fournir à travers ces
fonctionnalités intéressantes, un grand nombre de
manipulations à distance.
Le point fort de notre application réside dans le fait
qu’elle est multiplateforme grâce à la machine virtuelle Java
et qu’elle ne nécessite aucune installation.
Nous espérons que ce travail pourra contribuer à servir
des travaux futurs en vue d’élargir le domaine d’application.
38
Conclusion (suite …)
Perspectives
Réécriture du code en utilisant les sockets;
Implémentation de l'algorithme CopyRect;
Etablissement des documentations sur le projet;
Mise en œuvre d'un visualisateur web;
Implémentation de la connexion inversible;
Ajout des fonctions d’optimisation automatiques;
Intégration de la gestion es droits d'accès;
Implémentation d'un gestionnaire de fichiers;
Inclusion d'un chat (écrit et/ou vocale);
…etc.
12/01/2016
Conclu
sio
n
Conception et réalisation d’une application de
Bureau à distance en Java