Memoire 1
Memoire 1
Memoire 1
MEMOIRE
Présenté pour l’obtention du diplôme de MASTER
En : Informatique
Sujet
Toute ma famille.
À tous ceux qui ont étudié avec moi pendant ce merveilleux 18 ans
avec son doux et amer (Bani, Rabeh, Toufik ...)
N'oubliez pas les ennemis et les gens qui ne nous aiment pas, je dis
merci et je vous pardonne. Merci de nous avoir surveillés.
BOUDRAA Hammani
Ghardaïa 2018
DEDICACES
A Celle qui a attend avec patience les fruits de sa bonne éducation.
A ma mère.
A celui qui m’aindiqué la bonne voie en me rappelant que la volanté fait toujours
les grands hommes Et femmes
A mon père.
A mes frères et mes chère ssoeurs.
A mes grandes mère et mes grandes père.
À toutes mes belles copines.
A mes tantes et mes oncles ainsi que toute la famille haili et Souilem
RABIA
Remerciements
Nous remercions tout les professeurs, qu’ils nous enseigné dans les cinq
années passé et nous amis.
iii
Résumé
Mots-clés :
Cloud Computing, Découvrez les services Cloud, Sélectionnez le service
Cloud, Système multi-Agents
iv
Abstract
Keywords :
Cloud computing, Discover cloud services, select the cloud service, multi-
agent system
v
المـلخـص
الحوسبة السحابية هي الحوسبة المستندة على الشبكة حيث يتم عرض الموارد و الخدمات
للمستخدم حسب الطلب ,و الدفع يكون حسب االستعمال .بعد الضجة التي قامت بها الحوسبة
السحابية في مجال الكومبيوتر و االنترنت أصبحت محل اهتمام اكبر الشركات و الباحثين في
المجال تكنولوجيا الحاسب ,أدى التطور السريع و العدد الهائل من الخدمات المطروحة لمشكل
عويص للمستخدم ,بحيث أصبح يجد صعوبة كبيرة في اكتشاف و اختيار الخدمة المناسبة له من بين
ماليين الخدمات الموجودة .في هذا التقرير نقترح دراسة للمشكل و طريقة لصيغته باإلضافة إلى
برمجة نظام يعمل على اكتشاف و اختيار امثل خدمة على حسب طلب المستخدم ,نعتمد في هذا نظام
على نظام العمالء و على بعض قواعد حساب التشابه و هي )1 :حساب التشابه بالنسبة للنصوص
)2حساب التشابه لألعداد ) 3حساب التشابه لنوع البيانات المنطقي .في األخير نقوم بدراسة كفاءة و
تقييم أداء هذا النظام من عدة جوانب.
vi
Table des matières
Introduction 1
1 Cloud Computer 5
1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2 Problématique . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3 Cloud Computing . . . . . . . . . . . . . . . . . . . . . . . 6
1.3.1 Historique . . . . . . . . . . . . . . . . . . . . . . . 7
1.3.2 Acteurs du cloud computing . . . . . . . . . . . . . 9
1.3.3 Système de grille et Cloud computing . . . . . . . . 10
1.3.4 Caractéristiques et les modèles de cloud . . . . . . 11
1.3.5 Les architecture de cloud . . . . . . . . . . . . . . . 18
1.3.6 Exemple des clouds computing . . . . . . . . . . . . 22
1.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3 Évaluation et résultats 46
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 46
3.2 Problématique . . . . . . . . . . . . . . . . . . . . . . . . . 46
3.3 Outils et Plateformes Utilisés . . . . . . . . . . . . . . . . 47
3.3.1 Java . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.3.2 Système Multi-Agent (SMA) . . . . . . . . . . . . . 47
3.4 Formalisation du problème . . . . . . . . . . . . . . . . . . 49
3.5 Implémentation et test de système . . . . . . . . . . . . . . 50
vii
3.6 Évaluation des performances . . . . . . . . . . . . . . . . . 59
3.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Conclusion et Perspectives 64
viii
Table des figures
1 Illustration du problème. . . . . . . . . . . . . . . . . . . . 3
1.1 Cloud et les services de cloud . . . . . . . . . . . . . . . . 7
1.2 Chronologie du cloud computing . . . . . . . . . . . . . . . 8
1.3 Statistiques et l’avenir de cloud technologie . . . . . . . . . 9
1.4 Acteurs du cloud computing . . . . . . . . . . . . . . . . . 9
1.5 Caractéristiques et les modèles de cloud . . . . . . . . . . . 11
1.6 Modèle De Service Cloud . . . . . . . . . . . . . . . . . . . 13
1.7 Types de service Cloud Computing . . . . . . . . . . . . . 13
1.8 Exemple de fournisseur de IaaS . . . . . . . . . . . . . . . 14
1.9 Exemple de fournisseur de PaaS . . . . . . . . . . . . . . . 15
1.10 Cycle de vie du développement SaaS . . . . . . . . . . . . 16
1.11 Cloud public . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.12 Cloud privé . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.13 Cloud communautaire . . . . . . . . . . . . . . . . . . . . 18
1.14 Cloud hybride . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.15 Architecture générale de cloud computing . . . . . . . . . 19
1.16 Architecture mobile Cloud Computing . . . . . . . . . . . 20
1.17 Architecture de Cloud orientée sur le marché . . . . . . . . 21
1.18 Dropbox . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.19 Messagerie . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.1 Système pour découvert les services de Cloud Computing . 30
2.2 Une découverte de service Cloud basée sur un agent . . . . 32
2.3 Architecture de l’agent de middleware . . . . . . . . . . . . 32
2.4 Concepts haut de la couche IaaS . . . . . . . . . . . . . . . 34
2.5 Les méthodes de MCDA . . . . . . . . . . . . . . . . . . . 36
2.6 Procédures d’approche SSCM . . . . . . . . . . . . . . . . 39
2.7 Mode de comportement du service Cloud . . . . . . . . . . 40
3.1 Plateforme Jade (RMA) . . . . . . . . . . . . . . . . . . . 48
3.2 Architecture de système de découvert et de sélection des
services clouds . . . . . . . . . . . . . . . . . . . . . . . . . 51
ix
3.3 Détails du système de découverte et de sélection des services
clouds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.4 Interface de utilisateur/fournisseur . . . . . . . . . . . . . 52
3.5 Complexité de notre système . . . . . . . . . . . . . . . . . 61
3.6 Temps d’exécution en fonction de # des services et de # des
requête . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
3.7 Taux de succès en fonction de # des services et de # des
requête . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
x
Liste des tableaux
xi
List of Algorithms
xii
Introduction
Contexte
Au cours de ces dernières années, avec l’évolution rapide des technolo-
gies de l’information, de nombreuses entreprises et organisations ont cher-
ché la meilleure façon pour assurer la mise à l’échelle de leurs systèmes
informatiques, réduire les coûts de fonctionnement, fournir une bonne per-
formance à leurs applications tout en optimisant l’utilisation des ressources
informatiques [27]. Plusieurs technologies sont apparues au fil des années,
tels que, le traitement parallèle, les systèmes distribués, le grid computing,
et d’autres qui abordent la question de l’approvisionnement efficace des
ressources et le déploiement des applications, La technologie que nous al-
lons prendre dans cette thèse, c’est "le cloud computing".
1
gences spécifiques à l’utilisateur, est devenu un défi important pour les
décideurs [19].
Problématique et Objectifs
Avec l’avènement de cette énorme quantité de services proposés à l’uti-
lisateur en nombre, et en fonctionnalités sur internet, ainsi que la diversité
de technologies utilisées pour l’implémentation et la présentation de ces
derniers, il est devenu très importante de proposer un système de décou-
verte et de sélection de services qui permet au client de choisir les meilleurs
services qu’il désire sans avoir à effectuer n’importe quelle tâche manuelle-
ment.
2
L’objectif principal de ce travail de thèse est de proposer des solutions
aux problématiques via la création d’un système pour la découverte et la
sélection des services cloud. Le système proposé doit également bénéficier
des capacités offertes par la technologie cloud, et les possibilités de modé-
lisation pour implémenter, et gérer ses propres ressources.
Plans de thèse
Le reste de ce mémoire est structuré autour de trois chapitres avec une
introduction, et une conclusion générale.
3
de formaliser le problème, développer, et tester les outils développés. En-
fin, nous décrivons nos expérimentations, puis exposons, et discutons les
résultats obtenus.
Enfin, notre mémoire s’achève par une conclusion générale résumant les
grands points qui ont été abordes, ainsi que les perspectives de recherche
futures à partir de notre travail.
4
Chapitre 1
Cloud Computer
1.1 Introduction
L’informatique est l’art, la technique ou la science qui consistent à ma-
nipuler des informations à l’aide d’un outil, l’ordinateur. L’informatique a
pour objet de définir des algorithmes qui permettent de modifier la vision
que l’on a d’un problème, ou d’extraire d’une grande quantité d’informa-
tions mal structurées, de nouvelles connaissances plus utiles.
1.2 Problématique
Tout ce développement a permis aux gens de profiter des services ou
de communiquer les uns avec les autres à tout moment et n’importe où,
en plus de la possibilité de travailler ensemble en même temps de leurs
maisons ou même de différentes villes et lieux. Il est maintenant possible
de stocker les informations ou même d’installer le logiciel à distance, avec
la possibilité de l’utiliser et de l’atteindre à tout moment, n’importe où,
mais les questions suivantes se posent :
√
Comment stocker l’information dans l’Internet ?
5
CHAPITRE 1. CLOUD COMPUTER
√
Comment puis-je installer ou utiliser un logiciel via Internet ?
√
Comment les gens peuvent collaborer dans un projet en même temps ?
6
CHAPITRE 1. CLOUD COMPUTER
1.3.1 Historique
L’idée du cloud computing a pris naissance en 1990 : surtout
en 1991 avec la naissance d’Internet et l’apparence du logiciel CERN le
1er logiciel accessible par le Web. Ensuite, avec les nouvaux solution de IT
et le lancement du navigateur Mosaic en 1993 et le navigateur Netscape
en 1994. En 1995, la découverte d’EBay et d’Amazon a encore accéléré le
processus. Enfin, le lancement en 1996 de l’assistant Palm PDA a donné
une nouvelle impulsion.[36]
• 2010 CLOUD
• 2006 AWS (Amazon Web Service) : 1er cloud public
• 2000 SOA, Service-Oriented Architecture.
• Hébergeurs Web d’applications (ancêtre du Saas).
• 2000 Premières applications cloud Web 2.0 : courrier électronique,
outils collaboratifs, CRM, environnements de développement et de
test.
7
CHAPITRE 1. CLOUD COMPUTER
1961
John McCarthy introduces le
concept de cloud computer 1971
envoyer 1 er email
1981
La Lencement de PC de IBM 1984
La Lencement Macintoch
1989
Compaq trouvé 1 er Notebook
l'Internet arrive
1994
Netscape a été fondée
1995
Amazon & eBay a été
fondée
1999
Salesforce.com livrer
2002
Amazon lance Mechenical
Turk
RIM lance Blackberry
2004
Netscape a été fondée
2006
Amazon Lancé S3
Pay-as-you-go
2007
Salesforce lancé force.com
Appel lancé iphone
2008
HTC lancé 1 er android
phone
2009
Lancéement de Google
App
En se basant sur les dernières statistiques (Voir la figure 1.3), Les experts
estiment cloud computing est un grand avenir et aura un rôle actif dans
l’avenir.
8
CHAPITRE 1. CLOUD COMPUTER
La Figure (1.4) montre les cinq acteurs définis par le NIST, leurs rela-
tions et leurs différentes interactions.
9
CHAPITRE 1. CLOUD COMPUTER
les principes essentiels des réseaux n’ont pas beaucoup changé au cours
de la dernière décennie, il existe encore des conceptions différentes de ce
qu’est réellement une grille. En 2002, Ian Foster [18] a proposé une défi-
nition de la grille comme "un système qui coordonne les ressources qui ne
sont pas soumises à un contrôle centralisé, en utilisant des protocoles et
des interfaces standard, ouverts et généraux pour fournir des qualités de
service non triviales". Des définitions plus récentes soulignent la capacité
de combiner des ressources provenant de différentes organisations pour un
objectif commun [11]. Dans [18, 28], la préoccupation n’est pas tant la co-
ordination des ressources de différents domaines, mais la façon dont ces
ressources doivent être gérées et présentées. En fait, c’est cette divergence
de conceptions sur la grille que ce travail vise à éviter pour les clouds.[31]
10
CHAPITRE 1. CLOUD COMPUTER
final.
• Modèle de paiement : Les services de grille sont facturés à l’aide
d’un taux fixe par service ou de différentes organisations partageant
des ressources inactives. D’autre part, les utilisateurs de Cloud sont
généralement facturés à l’aide d’un modèle pay-per-use.
• ...
Fonctionnalité Grid Cloud
Le logiciel SP fonctionne sur un
plateforme de sensibilisation Le logiciel client doit être Grid activé.
environnement personnalisé.
Les applications nécessitent un flux de Le workflow n’est pas essentiel pour la
Software Workflow
travail prédéfini. plupart des applications.
Les nœuds, les sites et l’évolutivité
Évolutivité L’évolutivité des nœuds et des sites.
matérielle.
Autogestion Reconfigurabilité Reconfigurabilité, auto-guérison.
Degré de centralisation Decentralized control. Centralized control (until now).
Utilisabilité Difficile à gérer Facile à gérer (utiliser)
Manque de normes pour l’interopérabilité
Standardisation Standardisation et interopérabilité
des nuages.
Accès à la transparence pour l’utilisateur Accès à la transparence pour l’utilisateur
Accès utilisateur
final. final.
Payment Model Rigide (STRICT). Flexible.
Support limité, de dix meilleurs efforts Support limité, axé sur la disponibilité et la
Garanties QoS
seulement. prête
Caractéristiques essentielles
11
CHAPITRE 1. CLOUD COMPUTER
12
CHAPITRE 1. CLOUD COMPUTER
13
CHAPITRE 1. CLOUD COMPUTER
14
CHAPITRE 1. CLOUD COMPUTER
15
CHAPITRE 1. CLOUD COMPUTER
Supervision
Évaluation de
Opération
plateforme
Interaction
Développement Rabotage
Souscription
Toutes les choses dans le cloud computing sont un service Table (1.2) :
16
CHAPITRE 1. CLOUD COMPUTER
17
CHAPITRE 1. CLOUD COMPUTER
18
CHAPITRE 1. CLOUD COMPUTER
19
CHAPITRE 1. CLOUD COMPUTER
20
CHAPITRE 1. CLOUD COMPUTER
Utilisateur/Middelware
Prix Comptabilité
Machine
virtuelle
Machine
physique
21
CHAPITRE 1. CLOUD COMPUTER
22
CHAPITRE 1. CLOUD COMPUTER
Messagerie
Avantage
23
CHAPITRE 1. CLOUD COMPUTER
24
CHAPITRE 1. CLOUD COMPUTER
Avantage
25
CHAPITRE 1. CLOUD COMPUTER
1.4 Conclusion
Le cloud computing est une récente innovation. Il accroît l’efficacité et
la souplesse des sociétés dans la mesure où il permet de travailler sans
contrainte (technique, horaire, géographique. . . ), de gérer à la carte les lo-
giciels et donc les fonctionnalités utilisées, de ne plus s’occuper de tâches
longues, compliquées et contraignantes liées à la technique, de gagner du
temps en limitant les ressaisies et surtout de faire des économies.
26
Chapitre 2
2.1 Introduction
Au cours du dernier chapitre, nous avons défini ce qu’est le cloud com-
puting et ce que ses composants et ses avantages et inconvénients.
2.2 Problématique
La grande popularité de cloud computing et l’augmentation exponen-
tielle du nombre de services ont crée de nouveaux problèmes. Notamment,
comment l’utilisateur peut découvrir tous les services offerts, qui sont des
millions ou des milliards, et comment ils font le choix le plus approprié ?
27
CHAPITRE 2. DÉCOUVERT ET SÉLÉCTION DE SERVICE CLOUD
√
Qu’est-ce que la découverte ?
√
Comment est découvert les services de cloud ?
√
Qu’est-ce que la sélection ?
√
Comment sectionné une service cloud ?
2.3.1 Définition
Découvrir les services cloud est de trouver l’emplacement et les carac-
téristiques de service qui sont offerts et inconnu sur le réseau.
Taekgyeong Han et Kwang Mong Sim ont mis en place un système pour
découvrir les services de cloud computing (CSDS) par une ontologie, ce
système basé sur les agents et en particulier CSRA (Agent de raisonnement
du service Cloud ).
l’une des principales contributions est de créer un agent pour :
28
CHAPITRE 2. DÉCOUVERT ET SÉLÉCTION DE SERVICE CLOUD
29
CHAPITRE 2. DÉCOUVERT ET SÉLÉCTION DE SERVICE CLOUD
30
CHAPITRE 2. DÉCOUVERT ET SÉLÉCTION DE SERVICE CLOUD
31
CHAPITRE 2. DÉCOUVERT ET SÉLÉCTION DE SERVICE CLOUD
Agent Middelware
User Agent
Évaluation
Demande file procédure de connection
prix & intervalle utilitaire de correspondance
d'attente 1. Prix de correspondance Utility
Sélection 2. Intervalle Utility correspondant
Résultat
Raisonnement similarité
File d'attente Évaluation
de connexion 1. Raisonnement de similarité de
concept
2. Raisonnement de similarité de
Filtring propriété d'objet
Résultat
3. Raisonnement de similarité de
File d'attente propriété de type de données
de publicité Recommandation
Provider Agent
concepts Score de
Cloud similarité
Agent Middelware
Agent Middelware
Agent Middelware
Base de donnée
Cloud ontologie
Dans [35], Les auteurs présentent une ontologie basée sur OWL, l’onto-
logie du cloud computing (CoCoOn) qui définit les concepts fonctionnels et
32
CHAPITRE 2. DÉCOUVERT ET SÉLÉCTION DE SERVICE CLOUD
33
CHAPITRE 2. DÉCOUVERT ET SÉLÉCTION DE SERVICE CLOUD
34
CHAPITRE 2. DÉCOUVERT ET SÉLÉCTION DE SERVICE CLOUD
l’aide de SQL.
35
CHAPITRE 2. DÉCOUVERT ET SÉLÉCTION DE SERVICE CLOUD
36
CHAPITRE 2. DÉCOUVERT ET SÉLÉCTION DE SERVICE CLOUD
Le AHP est utilisé par les décideurs afin de prendre des décisions plus
éclairées concernant leur investissement dans diverses technologies.,
employant la comparaison par paires pour dériver une gamme de pré-
férences d’un ensemble d’alternatives. Cela est réalisé en déterminant
la réceptivité du processus de sélection à l’évolution rapide des règles
et des critères d’affaires. Le AHP transforme le processus décisionnel
d’un jugement subjectif en une détermination objective. Un modèle
de décision mathématique formelle sophistiquée soutenant la sélec-
tion des services de cloud computing. Pour sélectionner les services
de cloud computing appropriés offerts par différents fournisseurs, Ces
auteurs tiennent compte des facteurs de coût et de risque dans le
processus décisionnel. En employant le AHP, les risques sont pris en
compte lors de la mise en œuvre du modèle dans une approche glo-
bale durable de prise de décision. Cette méthode a été validée par
une étude de simulation et en considérant des scénarios réalistes.
37
CHAPITRE 2. DÉCOUVERT ET SÉLÉCTION DE SERVICE CLOUD
2.4.1 Définition
La sélection est de sélectionner le choix optimal parmi les nombreux
choix, la sélection est la même que la demande dans les propriétés et les
capacités.
Selon [32]. Les paramètres de qualité de service (QoS) (p. ex., temps de
réponse, prix, débit, etc.) jouent un rôle important dans la détermination
du succès ou de l’échec du système composite. L’accord de niveau de ser-
vice (SLA). L’environnement internet est très dynamique. Les valeurs QoS
des services Web peuvent changer dynamiquement en raison de la mise à
jour du matériel/logiciel du serveur ou du changement de charge de travail
38
CHAPITRE 2. DÉCOUVERT ET SÉLÉCTION DE SERVICE CLOUD
des serveurs.
Dans cet article, Les auteurs présenté une approche efficace de sélection
des services au service de QoS. Cette approche emploie d’abord le modèle
de cloud pour calculer l’incertitude de QoS pour l’élagage des services re-
dondants tout en extrayant des services fiables. Ensuite, la programmation
des entiers mixtes est utilisée pour sélectionner les services optimaux.
1: Calcul de Moteur de
Obtient des 2: Sélection des
composition de
données QoS l'incertitude QoS services
service
39
CHAPITRE 2. DÉCOUVERT ET SÉLÉCTION DE SERVICE CLOUD
Selon [34]. Dans cet article, Les auteurs proposent une architectures du
service cloud raisonnable et des algorithmes de sélection de service dis-
ponibles, évolutifs et adaptables aux différents types d’environnements de
services et de clients.
Registre de Découverte de
service service
Proxy de
service
40
CHAPITRE 2. DÉCOUVERT ET SÉLÉCTION DE SERVICE CLOUD
Selon [30]. Dans cet article, Les auteurs ont discuté et formalisé le pro-
blème de la sélection de services cloud en général et ont proposé une mé-
thodologie pour la sélection de services cloud à critères multiples, pour
sélectionner le service qui correspond le mieux aux exigences de l’utilisa-
teur du cloud parmi les nombreux services disponibles.
41
CHAPITRE 2. DÉCOUVERT ET SÉLÉCTION DE SERVICE CLOUD
A. Formalisation du problème
1. Services (ensemble) : S = {s1 , s2 , s3 , ...sl } être un ensemble de
services l où l ≥ 2. Cet ensemble contient toutes les offres de service
à partir des quelles un service doit être sélectionné par l’utilisateur
(décideur).
2. Critères de performance (ensemble) : C = {c1 , c2 , c3 , ...cm }
être l’ensemble des valeurs de m où m ≥ 2 et chaque ci ∈ C
représente un critère qui peut être un paramètre utile pour la
sélection de service.
3. Fonctions de mesure du rendement (ensemble) : À chaque
critère ci ∈ C correspond une fonction unique fi ∈ F lorsqu’il est
appliqué à un service particulier, retourne une valeur pi c’est une
évaluation de son rendement à une échelle prédéfinie. L’ensemble
de ces fonctions peut être défini comme F = {f1 , f2 , f3 , ...fm }.
4. Descripteur de service (vecteur) : Di être un vecteur de ligne
(1 x n matrice) qui décrit un service si ∈ S où chaque élément
Dj de Di représente la performance ou l’évaluation du service si
selon les critères cj ∈ C. En d’autres termes Di = [d1 d2 d3 dm ]
où dj = fj (si ). Certains des critères peuvent être de nature quali-
tative et doivent être attribués à des valeurs quantitatives à l’aide
de l’échelle de type Likert [24]. De plus, ces valeurs doivent être
normalisées pour éliminer les problèmes de calcul résultant d’une
dissimilitude dans les unités de mesure. La procédure de normali-
sation est utilisée pour obtenir des unités sans dimension qui sont
comparables. Par conséquent, plus la valeur devient grande, plus
elle a de préférence. Les deux méthodes de normalisation les plus
populaires sont (1) la normalisation linéaire et (2) la normalisation
vectorielle [24].
5. Matrice de décision : Les vecteurs de descripteur de service di
peuvent être combinés pour former la matrice de décision a qui
est une matrice l x n :
a1,1 a1,2 . . . a1,n
a2,1 a2,2 . . . a2,n
.. .. . . . ...
. .
al,2 al,2 . . . al,n
42
CHAPITRE 2. DÉCOUVERT ET SÉLÉCTION DE SERVICE CLOUD
43
CHAPITRE 2. DÉCOUVERT ET SÉLÉCTION DE SERVICE CLOUD
Cette méthode, bien que simple par calcul, a un court terme dras-
tique à venir que pendant le calcul du classement, les critères où
un service est inférieur à l’exigence de l’utilisateur (a1,1 < r) sont
équilibrés par ceux qui dépassent la spécification de l’utilisateur
(a1,1 > r). Nous présentons une autre méthode pour remédier à
cet inconvénient.
44
CHAPITRE 2. DÉCOUVERT ET SÉLÉCTION DE SERVICE CLOUD
2.5 Conclusion
Les chercheurs ont obtenu un rôle important et efficace dans le déve-
loppement rapide et phénoménal du cloud computing, ils ont introduit de
nombreuses fonctions et outils dans le domaine de découverte et de sé-
lection des services cloud. de sorte que d’autres ont examiné le problème
et l’ont reformulé d’autres façons, ils ont éliminé l’un des problèmes les
plus importants que l’utilisateur souffraient, à savoir découverte les ser-
vices existants (les millions des services), ensuite le problème de choisir le
bon service au besoin.
45
Chapitre 3
Évaluation et résultats
“The cloud services companies of all sizes. . . The cloud is for everyone.
The cloud is a democracy.”
3.1 Introduction
Au cours du dernier chapitre, Nous avons mentionné des travaux précé-
dents et état de l’art dans le domaine de la découverte et la sélection des
services clouds.
3.2 Problématique
Après le grand travail effectué par les chercheurs, ils ont facilité l’utili-
sateur à découvrir et à sélectionner le meilleur service en fonction de ses
besoins, mais le problème est le suivant :
√
Comment peut-on présenter le problème ?
√
Comment découvrir et choisir le service optimal ?
√
Comment programmer le système pour la découverte et la sélection
d’un service cloud ?
√
Comment faire une expérimentation de ce système ?
√
Quel est le succès de ce système ?
46
CHAPITRE 3. ÉVALUATION ET RÉSULTATS
3.3.1 Java
"Java est un langage de programmation et une plate-forme informatique
qui ont été créés par Sun Microsystems en 1995. Beaucoup d’applications et
de sites Web ne fonctionnent pas si Java n’est pas installé et leur nombre
ne cesse de croître chaque jour. Java est rapide, sécurisé et fiable. Des
ordinateurs portables aux centres de données, des consoles de jeux aux
superordinateurs scientifiques, des téléphones portables à Internet, la tech-
nologie Java est présente sur tous les fronts !"[2]
Dans notre cas, nous allons utiliser NetBeans IDE dans la programma-
tion en langage Java. NetBeans [12] est un environnement de développe-
ment intégré (EDI), open source. NetBeans est disponible sous Windows,
Linux, Solaris...
47
CHAPITRE 3. ÉVALUATION ET RÉSULTATS
Concept d’Agent
Jade
48
CHAPITRE 3. ÉVALUATION ET RÉSULTATS
Langage de communication
49
CHAPITRE 3. ÉVALUATION ET RÉSULTATS
Implémentation de système
50
CHAPITRE 3. ÉVALUATION ET RÉSULTATS
Courtier (Intermédiaire)
51
CHAPITRE 3. ÉVALUATION ET RÉSULTATS
Consulté
Ontologie
Retourne l'utilisateur recommandé Similarité
Similarité dans les données boolean
Informe
Demande file d'attente
Agent Broker
Agent Fournisseur
52
CHAPITRE 3. ÉVALUATION ET RÉSULTATS
53
CHAPITRE 3. ÉVALUATION ET RÉSULTATS
54
CHAPITRE 3. ÉVALUATION ET RÉSULTATS
55
CHAPITRE 3. ÉVALUATION ET RÉSULTATS
u : sous-mot de T 1, v : sous-mot de T 2
|Super(x) Super(y)|
T
sim(x, y) = q
Super(x)Super(y)
Super(x) : La distance entre le mot x et root de fichier
56
CHAPITRE 3. ÉVALUATION ET RÉSULTATS
57
CHAPITRE 3. ÉVALUATION ET RÉSULTATS
yi − x i
sim(xi , yi ) = 1 −
M ax(i) − xi
x : la valeur de critère i dans la demande de l’utilisateur, y : la
valeur de critère i dans le service, M ax(i) : la valeur maximal
de critère i parmi tout les services disponibles, M in(i) : la valeur
minimal de critère i parmi tout les services disponible.
Par exemple, la figure suivante présentée les valeurs de critère
RAM par tout les services tel que :
y i − xi 20 − 10
sim(xi , yi ) = 1 − =1− = 0.33
M ax(i) − xi 40 − 10
L’algorithme 8 suivant est que vous calculez la similarité dans les
Données numériques :
Algorithm 8 Calculer la similarité des données numériques
1: INITILAIZE :
2: function compSim
3: Input :(i) min : Number (ii) max : Number (iii) x : Number (iv) y : Number
4: Output : Value Of Similarity Between 0 & 1
5: if (y ≥ x) then
6: if ((max - x) <> 0) then
7: return (1 - Math.round(((y − x)/(max − x)) * 1000.0) / 1000.0)
8: else
9: return 1.0
10: end if
11: else
12: return 0.0
13: end if
14: end function
Test de système
58
CHAPITRE 3. ÉVALUATION ET RÉSULTATS
Utilisateur0 Utilisateur1
fournisseur1 47% 30%
fournisseur2 0% 55%
fournisseur3 33% 30
59
CHAPITRE 3. ÉVALUATION ET RÉSULTATS
Paramètre
Complexité de système
60
CHAPITRE 3. ÉVALUATION ET RÉSULTATS
...
public class main {
...
public void regesterProvider (){ ... } //--> Complexite de cette
fonction c’est O(m)
//--> Complexite de cette fonction c’est C * n * m
for (i = 0; i < n; i++){
for (i = 0; i < m; i++){
simText();//--> Complexite de cette fonction c’est C
simNum();//--> Complexite de cette fonction c’est C
simBoolean();//--> Complexite de cette fonction c’est C
}
}
public void sendRes (){ ... }//--> Complexite de cette fonction
c’est C
...
}
Temps d’exécution
61
CHAPITRE 3. ÉVALUATION ET RÉSULTATS
T emps(ms)
0.6 0.6
0.5 0.5
0.4 0.4
0.3 0.3
0.2 0.2
0.1 0.1
0 0
0 5 10 15 20 25 0 5 10 15 20 25
Requêtes Services
Taux de succès
62
CHAPITRE 3. ÉVALUATION ET RÉSULTATS
T auxdesuccès(%)
70 70
60 60
50 50
40 40
30 30
20 20
10 10
0 0
0 5 10 15 20 25 0 5 10 15 20 25
Requêtes Services
3.7 Conclusion
Le système de découverte et de sélection de cloud service a éliminé l’un
des plus grands problèmes de l’utilisateur du cloud, il est donc facile pour
l’utilisateur de découvrir et de choisir le service approprié pour lui et ses
besoins.
63
Conclusion et Perspectives
Finalement nous avons mentionné les outils utilisés et les méthodes ap-
pliquées dans notre modèle qui est basé sur les travaux effectués par les
recherches mentionnés précédemment, nous avons proposé une algorithme
pour faire la découverte et la sélection des services de cloud. Après avoir
expérimenter et analyser les résultats obtenus, le système a prouvé son ef-
ficacité et sa bonne performance.
64
Bibliographie
65
BIBLIOGRAPHIE
66
BIBLIOGRAPHIE
67
BIBLIOGRAPHIE
[34] Wenying Zeng, Yuelong Zhao, and Junwei Zeng. Cloud service and
service selection algorithm research. In Proceedings of the first ACM/-
SIGEVO Summit on Genetic and Evolutionary Computation, pages
1045–1048. ACM, 2009.
[35] Miranda Zhang, Rajiv Ranjan, Armin Haller, Dimitrios Georgakopou-
los, Michael Menzel, and Surya Nepal. An ontology-based system
for cloud infrastructure services’ discovery. In Collaborative Compu-
ting : Networking, Applications and Worksharing (CollaborateCom),
2012 8th International Conference on, pages 524–530. IEEE, 2012.
[36] Qi Zhang, Lu Cheng, and Raouf Boutaba. Cloud computing : state-
of-the-art and research challenges. Journal of Internet Services and
Applications, 1(1) :7–18, May 2010.
68