Technologies du Web - Architectures matérielles et logicielles

218
Frédéric Simonet Formateur Entreprise 2.0 Email : [email protected] Tél. : 06 62 63 94 49 Technologies Web Architectures matérielle/logicielle 9 heures Pôle universitaire Léonard de Vinci ILV : MBA MCI Full/Part Time Année 2013/2014

description

Support de formation

Transcript of Technologies du Web - Architectures matérielles et logicielles

Page 1: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Technologies Web

Architectures matérielle/logicielle — 9 heures

Pôle universitaire Léonard de Vinci

ILV : MBA MCI Full/Part Time

Année 2013/2014

Page 2: Technologies du Web - Architectures matérielles et logicielles

Progr. MCI Full Time – 9 h

1. Fondamentaux de l’informatique (3 h)

2. Architecture des ordinateurs (1 h 30)

3. Architecture des réseaux (1 h 30)

4. Architecture des applications (1 h)

5. Cloud computing (1 h)

6. Évaluation (questionnaire) (1 h)

Page 3: Technologies du Web - Architectures matérielles et logicielles

Progr. MCI Part Time – 8 h

1. Fondamentaux de l’informatique (2 h)

2. Architecture des ordinateurs (1 h)

3. Architecture des réseaux (1 h)

4. Architecture des applications (2 h)

5. Cloud computing (1 h)

6. Évaluation (questionnaire) (1 h)

Page 4: Technologies du Web - Architectures matérielles et logicielles

Bibliographie

[Za-1] P. ZANELLA, Y. LIGIER, Architecture et technologie

des ordinateurs, 4e édition, DUNOD, 2011.

[Ta-1] A. TANENBAUM, D. WETHERALL, Réseaux, 5e édition,

PEARSON, 2011.

[Ro-1] , P. ROQUES, UML par la pratique, 2e édition,

EYROLLES, 2011.

[Bu-1] R. BUYYA, J. BROBERG, A. GOSCINSKI, CLOUD

COMPUTING (Principles and Paradigms), WILEY, 2011.

Page 5: Technologies du Web - Architectures matérielles et logicielles

Groupes de travail

Organisme Fonction

ICANN Gestion des DNS et attribution des adresses IP

IETF Spécification des protocoles (rédaction des RFCs)

IRTF Spécification des protocoles (rédaction des RFCs)

W3C Spécification des standards du web (patterns et langages)

WHATWG Spécification du langage HTML

Page 6: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Partie I Fondamentaux

Informa[tion] + [robo]tique = Informatique

1. Fondamentaux de l’informatique

2. Architecture des ordinateurs

3. Architecture des réseaux

4. Architecture des applications

5. Cloud computing

Page 7: Technologies du Web - Architectures matérielles et logicielles

Programme sur fondamentaux

Principaux composants de l’ordinateur

Types d’information/opération

Représentation externe vs interne

Encodage vs codage

Page 8: Technologies du Web - Architectures matérielles et logicielles

Principaux composants

Processeur, aussi appelé CPU*

Espaces** mémoire

Unités périphériques

Clavier

Souris

Écran

Imprimante, etc.

* Central Processing Unit. ** Plusieurs types d’espace mémoire.

Page 9: Technologies du Web - Architectures matérielles et logicielles

Fonction du processeur

Le processeur sert à exécuter les

instructions d’un programme. (Un

programme en cours d’exécution s’appelle

un processus.)

Page 10: Technologies du Web - Architectures matérielles et logicielles

Fonction de la mémoire

Les espaces mémoire (mémoire de masse,

mémoire centrale et registres) servent à

stocker des programmes, des instructions

ou des données.

Page 11: Technologies du Web - Architectures matérielles et logicielles

Fonction des périphériques

Les périphériques (clavier, écran, etc.)

permettent d’interagir avec l’ordinateur. La

communication périphériques-ordinateur est

assurée par le système d’exploitation.

Page 12: Technologies du Web - Architectures matérielles et logicielles

Trois types d’information

Instructions

Données non numériques

Données numériques

Page 13: Technologies du Web - Architectures matérielles et logicielles

Composition d’une instruction

Les instructions associent un code opération

et des opérandes. Ces opérandes désigne

l’ensemble des paramètres impliqués dans

l’exécution d’une opération.

Illustration. — L’addition de deux nombres

fait intervenir une opération – l’addition – et

deux opérandes.

Page 14: Technologies du Web - Architectures matérielles et logicielles

Trois types d’opérations

Opérations d’écriture et de lecture

Opérations logiques

Opérations arithmétiques

Page 15: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Représentation externe/interne

Codage et adressage de l’information

Page 16: Technologies du Web - Architectures matérielles et logicielles

Problématique du stockage

Fixer la capacité de stockage

Fixer la taille des espaces de stockage

Adresser les espaces de stockage

Page 17: Technologies du Web - Architectures matérielles et logicielles

Parabole du parking

Dimensionnement et adressage des espaces de stockage

Page 18: Technologies du Web - Architectures matérielles et logicielles

Quatre unités de base

Unité de stockage physique

Unité élémentaire d’information

Unité logique d’information

Unité d’information adressable

Page 19: Technologies du Web - Architectures matérielles et logicielles

1

2

3

4

5

6

Page 20: Technologies du Web - Architectures matérielles et logicielles

Commentaire

1. Chaque cellule contient un condensateur et un transistor.

2. Chaque cellule fait l’objet d’une représentation logique (chiffre binaire).

3. Ce chiffre binaire (bit) constitue l’unité d’information la plus élémentaire.

4. L’unité d’information élémentaire sert à former l’unité logique d’information*.

5. L’unité logique d’information est couplée à une adresse.

6. L’unité d’information adressable associe adresse et unité logique.

* L’unité logique porte sur un ou plusieurs octets.

Page 21: Technologies du Web - Architectures matérielles et logicielles

Bit (binary digit)

Le bit est un chiffre binaire qui prend soit la

valeur 0, soit la valeur 1 ; il constitue l’unité

d’information la plus élémentaire : toute

information fait l’objet d’un codage faisant

appel au bit.

Page 22: Technologies du Web - Architectures matérielles et logicielles

Octet (byte)

L’octet représente un jeu de huit bits. Ces

huit bits constituent l’unité logique

d’information « de base » : toute information

fait l’objet d’un codage sur un ou plusieurs

octets.

Page 23: Technologies du Web - Architectures matérielles et logicielles

Mot mémoire

Le mot mémoire constitue l’unité

d’information adressable : il associe unité

logique d’information, dont la fonction est

d’« héberger » une information codée en

binaire, et une adresse.

Page 24: Technologies du Web - Architectures matérielles et logicielles

Écriture et lecture

Les opérations d’écriture et de lecture

portent obligatoirement sur un mot mémoire

qui associe à chaque unité logique

d’information une adresse, facilitant ainsi

l’accès aux informations enregistrées.

Page 25: Technologies du Web - Architectures matérielles et logicielles

Exemples de codage

Caractère Y : 01011001

Chiffre 1 : 00000001

Instruction addition : 10000001

Page 26: Technologies du Web - Architectures matérielles et logicielles

Taille logique des mots

Nombre de bits

1 bit

2 bits

3 bits

8 bits =1 octet (byte)

n bits

Nombre d’informations

21 informations

22 informations

23 informations

28 informations

2n informations

Page 27: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Codage de l’information

Cas des entiers

Page 28: Technologies du Web - Architectures matérielles et logicielles

Exemple de codage

65 en base décimale i.e. 6510

se traduit par

01000001 en binaire i.e. 010000012.

Page 29: Technologies du Web - Architectures matérielles et logicielles

Explication

65 en base décimale i.e. 6510

est égal à

6 x 101 + 5 x 100

donc 65 en notation condensée.

Page 30: Technologies du Web - Architectures matérielles et logicielles

Explication (suite)

65 en base binaire

est égal à

0+(1 x 26)+0+0+0+0+0+(1x20)

donc 01000001 en notation condensée.

Page 31: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Codage de l’information

Cas des caractères

Page 32: Technologies du Web - Architectures matérielles et logicielles

Standard Unicode

Le standard Unicode se définit comme un

système de codage de caractères universel

associant représentation externe, point de

code et représentation interne.

Page 33: Technologies du Web - Architectures matérielles et logicielles

Cas de la lettre A

Représentation externe : A

Point de code (hex.*) : 0041

Représentation interne (bin.) : 01000001

* Les points de code sont représentés en base hexadécimale (base 16).

Page 34: Technologies du Web - Architectures matérielles et logicielles

Écran BabelMap (I)

Page 35: Technologies du Web - Architectures matérielles et logicielles

Écran BabelMap (II)

Page 36: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Encodage de l’information

Contrôle des erreurs, cryptage et compression

Page 37: Technologies du Web - Architectures matérielles et logicielles

Problématique de l’ENcodage

Sûreté[-intégrité] des données*

Sécurité des données

Optimisation des ressources

* NON corruption des données.

Page 38: Technologies du Web - Architectures matérielles et logicielles

ENcodage - enjeux

CONTRÔLE DES ERREURS SÛRETÉ DES DONNÉES

COMPRESSION/DÉCOMPRESSION OPTIMISATION DES RESSOURCES

CRYPTAGE/DÉCRYPTAGE SÉCURITÉ DES DONNÉES

Page 39: Technologies du Web - Architectures matérielles et logicielles

Ce qu’il faut retenir

Instructions et données sont

nécessairement représentées par une

séquence de chiffres binaires (0/1).

Page 40: Technologies du Web - Architectures matérielles et logicielles

Conséquence

Il faut distinguer les langages de haut

niveau*, qui permettent de définir le code

source des applications, et les langages de

bas niveau, utilisés pour définir le code

machine*.

* PHP, Java, C++, C, etc. ** Code soumis au processeur avant exécution.

Page 41: Technologies du Web - Architectures matérielles et logicielles

À savoir

Le code source est transformé en code

machine par des logiciels qu’on appelle des

traducteurs ; ces traducteurs font appel à

des langages de haut niveau* et des

langages de bas niveau**.

* Langage C le plus souvent. ** Langage d’assemblage aussi appelé assembleur.

Page 42: Technologies du Web - Architectures matérielles et logicielles

Traduction en deux temps

Première traduction : le compilateur

transforme le code source en bytecode en

faisant abstraction des attentes du

processeur.

Deuxième temps : l’assembleur, aussi

appelé machine virtuelle, traduit le bytecode

en code machine*.

* Le code machine dépend spécifiquement du processeur cible.

Page 43: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Partie II Architecture des ordinateurs

CPU, mémoires et OS

1. Fondamentaux de l’informatique

2. Architecture des ordinateurs

3. Architecture des réseaux

4. Architecture des applications

5. Cloud computing

Page 44: Technologies du Web - Architectures matérielles et logicielles

Programme sur architecture

Architecture du processeur

Hiérarchie des mémoires

Rôle du système d’exploitation

Page 45: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Architecture du processeur

Unité de commande et unité arithm. et logique

Page 46: Technologies du Web - Architectures matérielles et logicielles

Unité centrale : RAM + CPU

[Za-1] : « Présentation générale », p.26.

Page 47: Technologies du Web - Architectures matérielles et logicielles

Unité de commande

Principaux dispositifs

Compteur ordinal [CO] (registre)

Registre instruction [RI] (registre)

Décodeur (automate)

Séquenceur (automate)

Page 48: Technologies du Web - Architectures matérielles et logicielles

Compteur ordinal [CO]

Le compteur ordinal est un registre (cellule

mémoire) dont la fonction est d’enregistrer

l’ADRESSE de la prochaine instruction à

exécuter.

Page 49: Technologies du Web - Architectures matérielles et logicielles

Registre instruction [RI]

Le registre instruction est un registre (cellule

mémoire) dont la fonction est d’enregistrer

l’INSTRUCTION à exécuter.

Page 50: Technologies du Web - Architectures matérielles et logicielles

Décodeur

Le décodeur est un automate dont la

fonction est de déterminer l’OPÉRATION À

EXÉCUTER à partir du code [opération]

fournie par le registre instruction.

Illustration. — Le code 101 active la sortie

n°5 (8 sorties possibles en tout).

* Rappel. — Les instructions associent code opération et opérandes.

Page 51: Technologies du Web - Architectures matérielles et logicielles

Séquenceur

Le séquenceur est un automate dont la

fonction est de COMMANDER le chargement

des opérandes [dans l’accumulateur] et

l’exécution de l’opération.

Remarque. — Les opérandes sont d’abord

chargées dans le registre mot.

Page 52: Technologies du Web - Architectures matérielles et logicielles

Unité arithmétique et logique

Principaux dispositifs

Accumulateur (registre)

Unité de calcul (de 50 à 250 opérations)

Transferts des données

Opérations logiques

Opérations arithmétiques

Etc.

Page 53: Technologies du Web - Architectures matérielles et logicielles

Accumulateur

L’accumulateur est un registre (cellule

mémoire) dont la fonction est d’enregistrer

les OPÉRANDES des opérations à exécuter.

Page 54: Technologies du Web - Architectures matérielles et logicielles

Cycle de recherche du CPU

[Za-1] : « Unité centrale de traitement », p.193.

Circulation/transfert des informations initié par le CPU

Page 55: Technologies du Web - Architectures matérielles et logicielles

Cycle d’exécution du CPU

[Za-1] : « Unité centrale de traitement », p.194.

Circulation/transfert des informations initié par le CPU

Page 56: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Hiérarchie des mémoires

Typologie ; rapport vitesse/capacité associé

Page 57: Technologies du Web - Architectures matérielles et logicielles

Typologie des mémoires

Registres

Mémoire centrale i.e. RAM, mémoire vive

Mémoire de masse, de stockage i.e. ROM

Page 58: Technologies du Web - Architectures matérielles et logicielles

Hiérarchie des mémoires

[Za-1] : « Mémoires », p. 154.

Page 59: Technologies du Web - Architectures matérielles et logicielles

Rapport vitesse/capacité

[Za-1] : « Mémoires », p. 185.

Page 60: Technologies du Web - Architectures matérielles et logicielles

Parabole du bureau

Illustration du rapport vitesse/capacité

Page 61: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Rôle du système d’exploitation

Exploitation des ressources et virtualisation

Page 62: Technologies du Web - Architectures matérielles et logicielles

Exploitation des ressources

Gestion des processus*

Gestion de la mémoire centrale

Gestion des entrées/sorties

Gestion des fichiers

* Allocation du CPU, planification et interruption.

Page 63: Technologies du Web - Architectures matérielles et logicielles

Pile OS

Mémoire

Entrées/Sorties

Processus

Fichiers

Pile système d’exploitation

Page 64: Technologies du Web - Architectures matérielles et logicielles

Virtualisation

En introduisant un niveau d’abstraction entre

l’utilisateur et la machine (interface

graphique ou commande en ligne), le

système d’exploitation est devenu une

machine virtuelle.

Page 65: Technologies du Web - Architectures matérielles et logicielles

Exemples de commandes Linux

login

logout

mkdir (make directory)

vi (editor)

cp (copy)

chmod (change mode)

Page 66: Technologies du Web - Architectures matérielles et logicielles

OS orientés Web

Multitâche/transactionnel

Multiutilisateur

Sûr (conçu pour fonctionner 24h/24h)

Commentaire. — UNIX, Windows Server et

Linux sont les trois systèmes d’exploitation

les plus utilisés*.

* Source : « Usage share of operating systems », wiikipedia.org.

Page 67: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Système d’exploitation

Gestion de la mémoire

Page 68: Technologies du Web - Architectures matérielles et logicielles

Gestion des adresses

Partition : espace mémoire faisant

intervenir une borne inférieure et une borne

supérieure.

Réallocation dynamique : l’adresse

effective des instructions est recalculée par

addition de l’adresse de base* et du

déplacement.

* Borne inférieure de la partition allouée au programme.

Page 69: Technologies du Web - Architectures matérielles et logicielles

Partitions de taille variable

[Za-1] : « Systèmes d’exploitation », p. 370.

Page 70: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Partie III Architecture des réseaux

Architecture matérielle et protocolaire

1. Fondamentaux de l’informatique

2. Architecture des ordinateurs

3. Architecture des réseaux

4. Architecture des applications

5. Cloud computing

Page 71: Technologies du Web - Architectures matérielles et logicielles

Programme sur réseaux

Architecture matérielle

Architecture des protocoles

Terminologie du protocole HTTP

Page 72: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Architecture matérielle

Typologie des réseaux et des équipements

Page 73: Technologies du Web - Architectures matérielles et logicielles

Typologie des réseaux

E/S (entrées/sorties) : 1 m

PAN (Personal Area Network) : 10 m

LAN (Local Area Network) : 1 km

WAN (Wide Area Network)

Page 74: Technologies du Web - Architectures matérielles et logicielles

Typologie des équipements*

Concentrateur (hub)

Commutateur (switch)

Routeur

* Ne sont présentés que les équipements les plus communs.

Page 75: Technologies du Web - Architectures matérielles et logicielles

Fonction du concentrateur

Le concentrateur est un équipement qui sert

à interconnecter plusieurs ordinateurs à

l’échelle du LAN*.

Exemple. — 50 PC sur un même étage.

* Les ordinateurs ainsi connectés forment un « segment ».

Page 76: Technologies du Web - Architectures matérielles et logicielles

Fonction du commutateur

Le commutateur est un équipement qui sert

à interconnecter plusieurs segments à

l’échelle du LAN*.

Exemple. — 150 PC répartis sur trois

étages-: les trois concentrateurs sont

connectés au commutateur.

* Le commutateur permet d’optimiser la gestion des flux d’information.

Page 77: Technologies du Web - Architectures matérielles et logicielles

Fonction du routeur

Les routeurs sont des équipement qui

servent à interconnecter plusieurs LAN à

l’échelle du WAN.

Remarque. — Internet : association de

« inter » et « network » (le réseau des

réseaux) puis troncation.

Page 78: Technologies du Web - Architectures matérielles et logicielles

Couplage LAN-WAN

routeur

PC

PC

hub switch

switch

hub

PC

PC switch

serveur

serveur

routeur

PC

PC

hub switch

switch

hub

PC

PC switch

serveur

serveur

sous-réseau de communication

Page 79: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Architecture des protocoles

Principes de fonctionnement

Page 80: Technologies du Web - Architectures matérielles et logicielles

Problématique des réseaux

Dissocier les données et les entêtes*

Structurer les entêtes

Encapsuler/désencapsuler les données

* Informations utilisées par le réseau pour acheminer les données.

Page 81: Technologies du Web - Architectures matérielles et logicielles

Parabole de la lettre

Encapsulation, routage et désencapsulation de la lettre

Page 82: Technologies du Web - Architectures matérielles et logicielles

Modèle OSI

Les logiciels de réseaux se réfèrent à un

modèle d’architecture qu’on appelle le

modèle OSI (Open Systems

Interconnection). Ce modèle fait intervenir

sept couches/strates/niveaux.

Page 83: Technologies du Web - Architectures matérielles et logicielles

Couches du modèle OSI

Page 84: Technologies du Web - Architectures matérielles et logicielles

Logiciels de réseaux

À chacune des couches du modèle OSI

correspond une couche logicielle constituée

de logiciels de réseaux spécialisés.

Page 85: Technologies du Web - Architectures matérielles et logicielles

Couche logicielle vs protocole et PDU

La couche logicielle génère des PDU (messages) en faisant

référence à un protocole

Page 86: Technologies du Web - Architectures matérielles et logicielles

Protocole

Les protocoles désignent un ensemble de

règles destinées à standardiser le

séquencement et le format des informations

contenues dans les « messages » générés

par les logiciels de réseaux.

Page 87: Technologies du Web - Architectures matérielles et logicielles

Parabole de l’enveloppe

Protocole : nom du destinataire, numéro et nom de rue etc.

Page 88: Technologies du Web - Architectures matérielles et logicielles

Types de PDU*

Message : PDU des niveaux 6/7

Segment : PDU des niveaux 4/5

Datagramme : PDU du niveau 3

Frame/paquet : PDU du niveau 2

* Protocol Data Unit.

Page 89: Technologies du Web - Architectures matérielles et logicielles

Principe d’encapsulation

Données Entête Niveau N+ 1

Niveau N Données Entête

Données Entête Niveau N-1

PDU N+ 1

PDU N

PDU N-1

Page 90: Technologies du Web - Architectures matérielles et logicielles

Chemin physique vs logique

[Za-1] : « Réseaux », p. 326.

Page 91: Technologies du Web - Architectures matérielles et logicielles

Exemples de protocoles

HTTP : présentation/appl. (niveaux 6/7)

TCP : transport/session (niveaux 4/5)

IP : réseau (niveaux 3)

Ethernet : liaison (niveau 2)

Page 92: Technologies du Web - Architectures matérielles et logicielles

Protocoles appl. : niveaux 6/7

Protocole Spécification Mise à jour

FTP 1971 1985

SMTP 1982 2008

HTTP 1990 1999

Page 93: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Partie IV Architecture des applications

Typologie des architectures et langages

1. Fondamentaux de l’informatique

2. Architecture des ordinateurs

3. Architecture des réseaux

4. Architecture des applications

5. Cloud computing

Page 94: Technologies du Web - Architectures matérielles et logicielles

Programme arch. et langages

Modèle d’architecture client-serveur

Modèle d’architecture 3-Tiers

Modèles d’architecture du Web 2.0

Page 95: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Modèle d’arch. client-serveur

Externalisation/distribution des ressources

Page 96: Technologies du Web - Architectures matérielles et logicielles

Architecture client/serveur

Externalisation des ressources i.e. données/programmes

Page 97: Technologies du Web - Architectures matérielles et logicielles

Message Definition

“The basic unit of HTTP communication,

consisting of a structured sequence of

octets.”

Page 98: Technologies du Web - Architectures matérielles et logicielles

Client and User Agent Definition

Client : “a program that establishes

connections for the purpose of sending

requests.”

User agent : “the client which initiates a

request. These are often browsers, spiders

(web-traversing robots).”

Page 99: Technologies du Web - Architectures matérielles et logicielles

Server Definition

“An application program that accepts

connections in order to service requests by

sending back responses.”

Page 100: Technologies du Web - Architectures matérielles et logicielles

Format des URL

"http:" "//"

host [":" port]

[abs_path]

Page 101: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Modèle d’architecture 3-Tiers

Éclatement des couches logicielles

Page 102: Technologies du Web - Architectures matérielles et logicielles

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8" />

<title>CV de M. Dupont</title>

</head>

<body>

<h1>M. Dupont</h1>

<h2>Expérience</h2><p>[…]</p>

<h2>Compétences</h2><p>[…]</p>

<h2>Diplômes</h2><p>[…]</p>

</body>

</html> Ap

p.

sta

tiq

ue CV-dupont.html

Page 103: Technologies du Web - Architectures matérielles et logicielles

Architecture 3-Tiers

1. Couche présentation

2. Couche application-métier

3. Couche persistance des données

Page 104: Technologies du Web - Architectures matérielles et logicielles

Couche présentation* :

Couche logicielle responsable de la mise en

page, de la typographie et de la navigation

du site.

Exemples de langages : (X)HTML et CSS

notamment, mais aussi, Javascript.

* Les scripts sont exécutés par le poste client.

Page 105: Technologies du Web - Architectures matérielles et logicielles

Couche application* :

Couche logicielle responsable de la logique

métier et des services techniques : gestion

des sessions et sécurité notamment.

Exemples de langages applicatifs : PHP,

Java, etc.

* Les scripts sont exécutés par le serveur.

Page 106: Technologies du Web - Architectures matérielles et logicielles

Couche données* :

Couche logicielle responsable de l’accès

aux données et de la persistance des

données.

Exemple de langage de requête : SQL.

* Les requêtes sont exécutées par le serveur.

Page 107: Technologies du Web - Architectures matérielles et logicielles

Parabole des couches logicielles

Prise de commande, préparation et approvisionnement

Page 108: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Plate-forme vs arch. logicielle

Plate-forme Lamp

Page 109: Technologies du Web - Architectures matérielles et logicielles

Plate-forme logicielle

La notion de plate-forme désigne l’ensemble

des composants logiciels (système

d’exploitation et environnement d’exécution)

qui supportent le fonctionnement d’une

application.

Page 110: Technologies du Web - Architectures matérielles et logicielles

Ex. : plate-forme Lamp

Système d’exploitation Linux

Serveur HTTP Apache

Serveur de base de données MySQL

Composant applicatif PHP (Zend Engine*)

* Moteur d’exécution des scripts codés en PHP.

Page 111: Technologies du Web - Architectures matérielles et logicielles

Intégration du composant PHP

Option 1 : le composant PHP est un

module, c’est-à-dire une extension du

serveur HTTP Apache.

Option 2 : le composant PHP n’est pas

utilisé comme module du serveur HTTP

Apache. Dans ce cas, le couplage Apache-

PHP est assuré par une interface*.

* Source : « PHP : SAPI et modes de communication », developpez.com.

Page 112: Technologies du Web - Architectures matérielles et logicielles

Zend Engine

Le composant PHP contient un moteur

d’exécution (scripting engine) — Zend

Engine — dont la fonction est d’interpréter

les scripts codés en PHP. (Zend Engine

transforme le code source en code machine

puis exécute le code.)

Page 113: Technologies du Web - Architectures matérielles et logicielles

Architecture logicielle

La notion d’architecture logicielle désigne

l’ensemble des composants (ou briques

logicielles) qui structurent une application.

Page 114: Technologies du Web - Architectures matérielles et logicielles

Couches logicielles et plate-forme associée

Couches HTML/CSS, PHP et SQL | Plate-forme LAMP

Les 3 couches logicielles

Page 115: Technologies du Web - Architectures matérielles et logicielles

Pile application

Couche Métier

Couche Données

Env. d’exécution

Couche Présentation

Pile Application

Page 116: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Modèles d’arch. du Web 2.0

Participation, RIA, SOA et Web sémantique

Page 117: Technologies du Web - Architectures matérielles et logicielles

Patterns du Web 2.0

Participation Pattern : Wiki, CMS, Blog

RIA/MVC Pattern : applications riches

SOA Pattern : Web Services

Semantic Web Pattern

Page 118: Technologies du Web - Architectures matérielles et logicielles

Tech. des Wikis/CMS/Blogs

Langage de structuration (X)HTML

Feuilles de style CSS

Langage d’interaction Javascript*

Langage applicatif PHP

Langage de requête SQL

* Utilisé pour exécuter des programmes interactifs sur poste client.

Page 119: Technologies du Web - Architectures matérielles et logicielles

Tech. des patterns RIA/MVC

Framework Flex (Adobe)

Framework Silverlight (Microsoft)

Technologie(s) AJAX

Commentaire. — Les frameworks sont des

espaces de travail qui associent langage,

outils de développement et environnement

d’exécution.

Page 120: Technologies du Web - Architectures matérielles et logicielles

Tech. du pattern SOA

Protocole SOAP

Format de description des services WSDL

Annuaire de référencement UDDI*

Framework .NET (Microsoft)

Framework Java/J2EE

* Web service dédié à la publication des services disponibles.

Page 121: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Partie V Cloud computing

Virtualisation et classes de services

1. Fondamentaux de l’informatique

2. Architecture des ordinateurs

3. Architecture des réseaux

4. Architecture des applications

5. Cloud computing

Page 122: Technologies du Web - Architectures matérielles et logicielles

Programme cloud computing

Principes de la virtualisation

Logiciels de virtualisation

Avantages de la virtualisation

Modèle économique du cloud

Classes de services

Page 123: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Principes de la virtualisation

Hyperviseur vs superviseur

Page 124: Technologies du Web - Architectures matérielles et logicielles

Base technologique du cloud

Multicore computing : plusieurs UAL

Clustering : N serveurs — LAN

Grid computing : N serveurs — WAN

Page 125: Technologies du Web - Architectures matérielles et logicielles

VMM* vs machines virtuelles

* Virtual Machine Monitor.

[Bu-1] : « Virtual machines provisionning and migration services », p. 126.

Virtualization Layer (VMM or Hypervisor)

Page 126: Technologies du Web - Architectures matérielles et logicielles

Workload

La notion de workload désigne une

application et sa plate-forme logicielle hors

système d’exploitation.

Page 127: Technologies du Web - Architectures matérielles et logicielles

Exemple de workload

CMS WordPress

Serveur HTTP Apache

Serveur de base de données MySQL

Module applicatif PHP (Zend Engine)

Page 128: Technologies du Web - Architectures matérielles et logicielles

Philosophie de l’hypervision*

Principe 1 : avoir un minimum de code pour

réduire le nombre de failles de sécurité.

Principe 2 : limiter le code partagé entre

[…] machines virtuelles pour augmenter leur

isolation réciproque.

* Source : « Présentation des hyperviseurs xen et kvm », octo.com.

Page 129: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Logiciels de virtualisation

VMM vs VIM

Page 130: Technologies du Web - Architectures matérielles et logicielles

Logiciels de virtualisation

Les logiciels de virtualisation sont des

hyperviseurs aussi appelés VMM (Virtual

Machine Monitor).

Hyperviseurs leaders du marché : VMWare,

Xen et KVM (hyperviseurs open source).

* Hyperviseur [vs superviseur : système d’exploitation].

Page 131: Technologies du Web - Architectures matérielles et logicielles

Logiciels d’administration

Les logiciels d’administration des machines

virtuelles sont des VIM (Virtual Infrastructure

Manager).

Outils leaders du marché : VMWare vCloud,

Open Nebula et Apache VCL.

Page 132: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Avantages de la virtualisation

En termes de qualité logicielle

Page 133: Technologies du Web - Architectures matérielles et logicielles

La virtualisation…

Plus de rendement

Plus de sûreté/sécurité

Plus de stabilité

Plus d’élasticité

… en termes de qualité.

Page 134: Technologies du Web - Architectures matérielles et logicielles

Rendement

Le chargement de plusieurs machines

virtuelles sur un même serveur permet de

diminuer le nombre de serveurs… et la

consommation électrique.

Page 135: Technologies du Web - Architectures matérielles et logicielles

Sûreté

En cas d’accident, le cloud permet de

récupérer – sans rupture de service – une

machine virtuelle préalablement répliquée

sur d’autres serveurs.

Page 136: Technologies du Web - Architectures matérielles et logicielles

Sécurité

Le plantage d’une machine virtuelle – qui

serait dû à une attaque –, n’a pas

d’incidence sur le fonctionnement des autres

machines virtuelles.

Page 137: Technologies du Web - Architectures matérielles et logicielles

Stabilité

La mise à jour de l’OS d’une des machines

virtuelles, n’aura pas d’incidence sur les

machines virtuelles qui utiliseraient une

version antérieure.

Page 138: Technologies du Web - Architectures matérielles et logicielles

Élasticité

En cas de besoin – pic de charge

(augmentation brutale du trafic) –, le cloud

permet de solliciter automatiquement des

ressources supplémentaires sur d’autres

serveurs… Inversement, le cloud est

capable de libérer de ressources.

Page 139: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Modèle économique du cloud

Ressource as a [Service vs Product]

Page 140: Technologies du Web - Architectures matérielles et logicielles

Comparaison des modèles

Ressource as a Service

Abonnement

Segmentation

Mutualisation

Ressource as a Product

Investissement*

Standardisation

Logique propriétaire

* L’investissement implique un amortissement qui engage dans la durée.

Page 141: Technologies du Web - Architectures matérielles et logicielles

Ressource as a Product

Stratégie

de « courte traîne »

basée sur

standardisation

Ressource as a Service

Stratégie de « longue traîne »

basée sur

segmentation [personnalisation]

Page 142: Technologies du Web - Architectures matérielles et logicielles

Mutualisation des services

SaaS : mutualisation de logiciels

PaaS : mutualisation des plates-formes

IaaS : mutualisation des infrastructures

Page 143: Technologies du Web - Architectures matérielles et logicielles

Valeur ajoutée du cloud…

Réduction des coûts (virtualisation)

Flexibilité des coûts (pay-per-use)

Contrôle des coûts (longue traîne)

… en termes de coûts.

Page 144: Technologies du Web - Architectures matérielles et logicielles

Valeur ajoutée du cloud…

Accès ATAWAD

Fonctions de partage

Simplicité des interfaces

… en termes d’usages.

Page 145: Technologies du Web - Architectures matérielles et logicielles

Valeur ajoutée du cloud…

Pas de logiciel/matériel à installer

Pas de contrainte de ressources

Pas de maintenance

… en termes d’administration.

Page 146: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Classes de services du cloud

IaaS, PaaS et SaaS

Page 147: Technologies du Web - Architectures matérielles et logicielles

Classes de services

IaaS (Infrastructure as a Service)

PaaS (Platform as a Service)

SaaS (Software as a Service)

Page 148: Technologies du Web - Architectures matérielles et logicielles

Rôle des acteurs du cloud

Exploitant

Architecte

Éditeur

Architecte

Éditeur

Utilisateur

PaaS

IaaS

SaaS

met en œuvre

met en œuvre

développe

dimensionne

déploie

utilise

Page 149: Technologies du Web - Architectures matérielles et logicielles

Services IaaS côté client

Nombre de machines virtuelles

Nombre de CPU et espace de stockage

Degré d’élasticité (Load Balancing)

Disponibilité (en %)

Page 150: Technologies du Web - Architectures matérielles et logicielles

Services PaaS côté client

Sélection du langage de développement

Synchronisation* des plates-formes

Administration des applications

Facturation des applications

* Déploiement : migration de l’application vers la plate-forme de production.

Page 151: Technologies du Web - Architectures matérielles et logicielles

Déploiement vers Google App Engine

Déploiement d’une application depuis l’environnement Eclipse

Page 152: Technologies du Web - Architectures matérielles et logicielles

Services Google App Engine

Main (Instances, Versions etc.), Data, Administration, Billing

Page 153: Technologies du Web - Architectures matérielles et logicielles

Services SaaS côté client

Gestion des ressources

Partage des ressources

Agrégation de flux/données

Ouverture/intégration de services*

* Web services : API permettant d’accéder à des ressources.

Page 154: Technologies du Web - Architectures matérielles et logicielles

Ce qu’il faut retenir

Self-service ATAWAD*

Facturation des services à la demande

Scalabilité/élasticité des applications

* Any Where, Any Time, Any Device.

Page 155: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Conclusion

Ordres de grandeurs et

synthèse sur couches logicielles

Page 156: Technologies du Web - Architectures matérielles et logicielles

Ordres de grandeur

Processeurs : le Pentium IV compte environ 125 millions

de transistors.

Systèmes d’exploitation : les systèmes d’eploitation

comptent plusieurs millions de LOC*.

Centres de données : les centre de données (Data

Center) plusieurs milliers de serveurs.

Applications : les applications modernes comptent

plusieurs dizaines de milliers de LOC*.

* Lines of Code.

Page 157: Technologies du Web - Architectures matérielles et logicielles

Pile OS

Mémoire

Entrées/Sorties

CPU

Fichiers

Pile OS

Page 158: Technologies du Web - Architectures matérielles et logicielles

Pile { OS+réseau }

Couche 5

Couche 3

Couche 1

Couche 7

Couche 4

Couche 2

Couche 6

Pile Réseau

Pile OS

Page 159: Technologies du Web - Architectures matérielles et logicielles

Pile { OS+réseau+applications }

Couche Métier

Couche Données

Env. d’exécution

Couche Présentation

Pile Applications

Pile Réseau

Pile OS

Page 160: Technologies du Web - Architectures matérielles et logicielles

Contexte Interface(s) MACHINE VIRTUELLE Couche virtualisée

Utilisateur Administration d’un

ordinateur

Interfaces

graphiques :

Windows, MacOs ,

etc.

Logiciel : système

d’exploitation Hardware

Développeur Développement

d’une application

Code source de

haut niveau : PHP,

Python, Java, etc.

Composant logiciel

de traduction :

compilateur

Code exécutable de

bas niveau :

assembleur

Éditeur de langage Développement

d’un compilateur

Code source de

haut niveau : Java,

C, C++, etc.

Composant logiciel

de traduction :

assembleur

(JVM, CLR, AVM)

Code machine

[soumis au

processeur]

Exploitant d’un

centre de données

Administration d’une

ferme de serveurs

(data center)

Interface

graphique : VIM ;

hyperviseur : VMM

Environnement :

workload et système

d’exploitation

Hardware

Synonymes. — Code exécutable - bytecode.

Page 161: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Annexe : fondamentaux

Systèmes de numération

Page 162: Technologies du Web - Architectures matérielles et logicielles

Systèmes de numération

[Za-1] : « Représentation interne des informations », p. 45.

Page 163: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Annexe : fondamentaux

Types de données

Page 164: Technologies du Web - Architectures matérielles et logicielles

Types de données

[Za-1] : « Représentation interne des informations », p. 56.

Page 165: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Annexe : fondamentaux

Langages

Page 166: Technologies du Web - Architectures matérielles et logicielles

Définition d’un langage

[Za-1] : « Langages de programmation », p. 425.

Page 167: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Annexe : fondamentaux

Programmation

Page 168: Technologies du Web - Architectures matérielles et logicielles

Env. de programmation

[Za-1] : « Langages de programmation », p. 419.

Page 169: Technologies du Web - Architectures matérielles et logicielles

Edition des Liens

[Za-1] : « Langages de programmation », p. 421.

Page 170: Technologies du Web - Architectures matérielles et logicielles

Macro vs sous-programme

[Za-1] : « Langages de programmation », p. 413.

Page 171: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Annexe : arch. des ordinateurs

Ordres de grandeur

Page 172: Technologies du Web - Architectures matérielles et logicielles

Transistors

[Za-1] : « Présentation générale »; p. 21.

Page 173: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Annexe : arch. des ordinateurs

Système d’exploitation

Page 174: Technologies du Web - Architectures matérielles et logicielles

Trois scénarios…

1. Lancement manuel de 3 programmes

2. Lancement automatisé et séquentiel

3. Lancement automatisé

et exécution des programmes en parallèle

… Trois systèmes.

Page 175: Technologies du Web - Architectures matérielles et logicielles

Exploitation par lots - batch

[Za-1] : « Systèmes d’exploitation », p. 355.

PA

S d

e s

ystè

me d

’explo

itatio

n

Page 176: Technologies du Web - Architectures matérielles et logicielles

Exploitation par lots - spooling

[Za-1] : « Systèmes d’exploitation », p. 355.

Page 177: Technologies du Web - Architectures matérielles et logicielles

Multiprogrammation

[Za-1] : « Systèmes d’exploitation », p. 357.

Page 178: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Annexe : arch. des réseaux

Complément sur les protocoles

Page 179: Technologies du Web - Architectures matérielles et logicielles

Trois principes…

Hiérarchisation - couche logicielle

Encapsulation - service

Abstraction - machine virtuelle

…Trois définitions

Page 180: Technologies du Web - Architectures matérielles et logicielles

Principe de hiérarchisation

Une couche n doit nécessairement faire

appel aux services de la couche (n-1) ; la

couche n ne peut pas accéder aux services

subalternes de niveaux (n-2), (n-3), etc.

* Aussi appelées API (Application Programming Interface).

Page 181: Technologies du Web - Architectures matérielles et logicielles

Principe d’encapsulation

Une couche n fait appel aux services* de la

couche (n-1) sans pouvoir accéder au

programme de la couche (n-1).

* Aussi appelées API (Application Programming Interface).

Page 182: Technologies du Web - Architectures matérielles et logicielles

Principe d’abstraction (I)

Une couche n fait abstraction des

problématiques traitées par la couche de

niveau (n-1). Les logiciels de la couche (n-1)

sont des machines virtuelles.

Page 183: Technologies du Web - Architectures matérielles et logicielles

Principe d’abstraction (II)

En introduisant un niveau d’abstraction entre

l’utilisateur et la machine, le système

d’exploitation apparaît lui aussi comme une

machine virtuelle*.

* Voir supra : transparent n°66.

Page 184: Technologies du Web - Architectures matérielles et logicielles

Rôle de la couche physique

La couche physique fait intervenir les

équipements dont le rôle est de transformer

le signal numérique en signal analogique et

inversement.

Exemple. — Le modem*.

* Modulateur-demodulateur.

Page 185: Technologies du Web - Architectures matérielles et logicielles

Numérique vs analogique

[Za-1] : « Réseaux », p. 315

Page 186: Technologies du Web - Architectures matérielles et logicielles

Protocole IP : niveau 3

Page 187: Technologies du Web - Architectures matérielles et logicielles

Protocole TCP : niveau 4/5

Page 188: Technologies du Web - Architectures matérielles et logicielles

Generic HTTP Message

Request-Line | Status-Line

Suivi de :

*(message-header CRLF)

Suivi de :

CRLF [ message-body ]

Page 189: Technologies du Web - Architectures matérielles et logicielles

Requête du client

Request-Line

Method (GET, POST, etc.)

URI

Protocol Version

Exemple. — GET /rfc.html HTTP/1.1

Page 190: Technologies du Web - Architectures matérielles et logicielles

Réponse du serveur

Status Line + Header + Body

Status Line

- Success Code | Error Code

- Protocol Version

Message Header

Message Body

Page 191: Technologies du Web - Architectures matérielles et logicielles

Typologie des Status Code

Successful : 2xx

Redirection : 3xx

Client Error : 4xx (404 - Not Found)

Server Error : 5xx

Page 192: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Annexe : arch. des applications

Définition d’un proxy ; définition d’un cache

Page 193: Technologies du Web - Architectures matérielles et logicielles

Proxy Definition

“An intermediary program which acts as

both a server and a client.” [Les serveurs

d’application jouent aussi le rôle de client en

soumettant leurs requêtes à des serveurs de

bases de données.]

Page 194: Technologies du Web - Architectures matérielles et logicielles

Cache Definition

“A program that stores responses in order to

reduce the response time and network

bandwidth consumption.”

Page 195: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Annexe : arch. des applications

Langages incontournables du Web

Page 196: Technologies du Web - Architectures matérielles et logicielles

Langages orientés Web

PHP (Utilisé côté serveur.)

Java [utilisé côté serveur : servlets]

Java [utilisé côté client : applets]

Javascript (Utilisé côté client.)

Page 197: Technologies du Web - Architectures matérielles et logicielles

Indice TIOBE 2013

Source : « TIOBE programming … October 2013 », tiobe.com.

Page 198: Technologies du Web - Architectures matérielles et logicielles

Indice TIOBE 2012

Source : tiobe.com.

Page 199: Technologies du Web - Architectures matérielles et logicielles

Indice TIOBE 2011

Source : tiobe.com.

Page 200: Technologies du Web - Architectures matérielles et logicielles

Objective-C

Main programming language used by Apple

for the OS X and iOS operating systems and

their respective APIs.

Page 201: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Annexe : arch. des applications

Zend Engine vs JVM

Page 203: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Annexe : arch. des applications

Qualité logicielle

Page 204: Technologies du Web - Architectures matérielles et logicielles

Facteurs qualité ISO 9126

Capacité fonctionnelle (Functionnality)

Fiabilité (Reliability)

Facilité d’utilisation (Usability)

Page 205: Technologies du Web - Architectures matérielles et logicielles

Facteurs qualité ISO 9126

Rendement (Efficiency)

Maintenabilité (Maintainability)

Portabilité (Portability)

Page 206: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Annexe : cloud computing

Modèles de virtualisation

Page 208: Technologies du Web - Architectures matérielles et logicielles

Paravirtualisation*

« Modification du noyau de l’OS de la

machine virtuelle afin de coopérer avec

l’hyperviseur pour l’accès aux ressources

physiques et délégation des opérations

d’E/S. »

Source : « Présentation des hyperviseurs xen et kvm », octo.com.

Page 209: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Annexe : cloud computing

Modèles de déploiement

Page 210: Technologies du Web - Architectures matérielles et logicielles

Modèles de déploiement

Cloud public (mode partagé ou dédié)

Cloud privé

Cloud hybride (public et privé)

Page 211: Technologies du Web - Architectures matérielles et logicielles

Modèle cloud public partagé

[Bu-1] : « SLA management », p. 419.

Page 212: Technologies du Web - Architectures matérielles et logicielles

Modèle cloud public dédié

[Bu-1] : « SLA management », p. 416.

Page 213: Technologies du Web - Architectures matérielles et logicielles

Modèle cloud public : PaaS

Exploitant

Architecte

Éditeur

Architecte

Éditeur

Utilisateur

PaaS

IaaS

SaaS

met en œuvre

met en œuvre

développe

dimensionne

déploie

utilise

Page 214: Technologies du Web - Architectures matérielles et logicielles

Modèle cloud public : IaaS

Exploitant

Architecte

Architecte

Utilisateur

PaaS

IaaS

SaaS

met en œuvre

met en œuvre

développe

dimensionne

déploie

utilise Éditeur

Éditeur

Page 215: Technologies du Web - Architectures matérielles et logicielles

Modèle cloud privé

Exploitant

Architecte

Architecte

Utilisateur

PaaS

IaaS

SaaS

met en œuvre

met en œuvre

développe

dimensionne

déploie

utilise

Éditeur

Éditeur

Page 216: Technologies du Web - Architectures matérielles et logicielles

Frédéric Simonet

Formateur Entreprise 2.0

Email : [email protected]

Tél. : 06 62 63 94 49

Annexe : création de valeur

Stratégie acquisition vs vente

Page 217: Technologies du Web - Architectures matérielles et logicielles

Stratégies d’acquisition*

Achat de licence (Buy)

Location de service (Lease)

Développement

Build on Services

Build on Open Source

* Motivées par réduction des coûts/gains de productivité.

Page 218: Technologies du Web - Architectures matérielles et logicielles

Stratégies de vente*

Modèle propriétaire

Modèle « as a Service »

Modèle open source

* Motivées par la création de valeur.