Les composantes
Les composantes
Chapitre 2
Chapitre 2
2
Les attentes
Les attentes
 Acquérir une connaissance de base des
composants(logiciel et matériel) d'un système
distribuées et de leurs fonctions
 Comprendre les implications organisationelles du
développement d'application client/serveur.
3
Plan de cours
Plan de cours
 Revue des grands thèmes.
– Systèmes d'exploitation, les
systèms ouverts, la
connectitvité informatique,
le modèle OSI, le dépannage,
la sécurité des OS.
 L'approche client/Serveur
– Revue des définitions.
– défis,bénéfices et
inconvénients de l'approche
– Logiciels, matériels
– Outils de développements
d'applications.
 Les serveurs de bases de données
– Les stokages de fichiers
– SQL(Structured Query Language)
– La performance
– Les responsabilités de l'adminitrateur
– La sécurité
 Les interfaces utilisateurs
– Lesprincipes d'une bonne interface
– Les caratéristiques
 L'évaluation d'un projet
– le choix des applications à évaluer:
– L'analysede faisabilité
4
Architecture Client/serveur
Architecture Client/serveur
 L’informatique client/serveur est
– une architecture flexible et rentable dans lequel
les clients sont des applications « front-end »
qui interagissent avec des serveurs, qui sont des
applications « back-end ».
5
Définition du client/serveur
Définition du client/serveur
Logiciel de
serveur
fournit les
services
Logiciel client
affiche la réponse
Ethernet
Réseau
Requête /réponse
6
L’environnement Client/Serveur
L’environnement Client/Serveur
 Service
 Ressources partagées
 Protocoles asymétriques
 Transparence des sites
 mix and match
 Echanges basées sur des messages
 Encapsulation de services
 Mise à l'échelle(scalability)
 Intégrité
7
Avant le client/serveur
Avant le client/serveur
Token Ring
8
Les points critiques
Les points critiques
 Le client fait une requête de service.
 Le serveur fournit le service.
 Les clients sont des applications « front-end ».
 Les serveurs sont des applications « back-end ».
 Les deux sont requis pour une transaction.
 Le client et le serveur sont normalement sur des
ordinateurs différents.
 La communication est normalement faite sur un réseau.
 La séparation est transparente pour l’utilisateur.
9
La prochaine étape
La prochaine étape
10
Parallèles avec la Réingénerie
Parallèles avec la Réingénerie
de l’Entreprise
de l’Entreprise
 Amélioration de la qualité
 Aplanissement de la pyramide
organisationnelle
 Donner le pouvoir aux employés
 Faciliter le partage de l’information
 Effets de la réingénerie
11
Bénéfices de la Technologie
Bénéfices de la Technologie
Client/Serveur
Client/Serveur
 Cycle de développement plus court
 Coût plus bas
 Mise en echelle (Scalability)
 Flexibilité/spécialisation
 Opportunité
 Potentiel
 Potentiel de la technologie
12
Potentiel (suite)
Potentiel (suite)
 Potentiel pour changer l’entreprise
 Barrières à la technologie client/serveur
 Coûts d’implémentation
 Acquérir le support des administrateurs clés
 La peur de déranger le flux de travail
 Vitesse rapide de changement
 Difficultés techniques
 Le manque d’une architecture cohésive
 Manque de compétence
13
Barrières à la technologie
Barrières à la technologie
client/serveur
client/serveur
 Coûts d’implémentation
 Acquérir le support des administrateurs clés :
– Un parrainage corporatif
– Administrateurs de SI
– Administrateurs des département affectés
 La peur de déranger le flux de travail
 Vitesse rapide de changement
 Difficultés techniques
 Le manque d’une architecture cohésive
 Manque d’habilité
14
Mythes et Réalités
Mythes et Réalités
1: La migration client/serveur veut dire qu’on doit tout faire rouler sur des
PC.
2: Nos applications sont trop grosses.
3: Les MIPS ne comptent pas.
4: Les goulot d’étranglement d’E/S avec les systèmes client/serveur font que
leurs performances ne sont pas aussi bonne que les minis et mainframe
traditionnel.
5: Les LANs ne sont pas fiable
6: DANGER! Les LANs ne fournissent pas de sécurité, de backups et de
contrôles adéquates.
7: Le client/serveur, parce qu’il roule sur des microprocesseurs, peut être
implémenté à 100% avec des logiciels off-the-shelf.
8: La migration client/serveur ne requière que le remplacement des
applications mainframe avec des alternatives pour PC.
15
Revue des grands thèmes
Revue des grands thèmes
 Le midleware
 Les systèmes d'exploitation
 Les systèmes ouverts
 La connectitvité informatique
 Le modèle OSI
 Le dépannage
 la sécurité des OS.
16
Le midleware
Le midleware
Netbios TCP/IP IPX SNA
Directory Securité Distribution des fichiers
RPC Messages Named Pipes
SNMP CMIP DME
SQL/API Mail RPC-T ORB
Services spécifiques
DSM
NOS
Couche de transport
17
Le midleware dans le
Le midleware dans le
client/serveur
client/serveur
Client Middleware Serveur
18
Qu'est ce qu'un serveur peut
Qu'est ce qu'un serveur peut
attendre d'un OS
attendre d'un OS
Multitasking
Theads Sémaphores
Gestion de fichiers
IPC Gestion de
la mémoire
19
Les Systèmes d'exploitation
Les Systèmes d'exploitation
 UNIX
 Windows NT
 VMS
 DOS
 Windows 95
 OS/2
20
Transparence du NOS
Transparence du NOS
 Transparence des sites
 Transparence des noms
 Transparence des acc`s)Login)
 transpararence de réplication
 Transparence du temps distribuée
 Transparence des pannes
 Admintration transparente
21
Qu'est ce que le client/serveur
Qu'est ce que le client/serveur
peut faire?
peut faire?
 Serveurs de fichiers
 Serveurs de base de données
 Serveurs transactionnels
 Serveurs d'applications
 Serveurs d'objets
22
Serveur de fichiers
Serveur de fichiers
Applications Application Applications
Appels de fichiers
Serveur de fichiers
Disque
Clients
23
Serveur de base de données
Serveur de base de données
Applications Applications Applications
Appels SQL
Serveur DBMS
Clients
Base de données
24
Serveur transactionnel
Serveur transactionnel
Applications Application Applications
Transactions
TRANsactions
DBMS
Disque
Clients
25
Serveur d'applications
Serveur d'applications
Applications Application Applications
Messages d'applications
Serveur d'application
Disque
Clients
26
Serveur d'objets
Serveur d'objets
Applications
ORB
Application
ORB
Applications
ORB
Remote Method Invocation
Serveur d'objet
ORB
Disque
Clients
27
Réseau Téléinformatique ?
Réseau Téléinformatique ?
Réseau
Lien
Stations Hôtes
Noeuds de
communication
28
Les fonctions d’un réseau
Les fonctions d’un réseau
téléinformatiques
téléinformatiques
•objectif principal
– réaliser une transmission efficace des données.
Principales fonctions
Génération du signal;
Synchronisation;
Gestion des échanges;
Détection d’erreur
Correction d'erreur;
Contrôle de flux;
Adressage;
Routage;
Récupération;
Formattage des
messages;
Protection (sécurité);
Gestion du système;
Contrôle de la charge du
réseau.
29
Le modèle OSI en sept
Le modèle OSI en sept
couches
couches
Application
Présentation
Transport
Réseau
Liaison
Physique
Session
Réseau
Liaison
Physique
Application
Présentation
Transport
Réseau
Liaison
Physique
Session
Protocole de bout en bout
30
Les piles de protocoles
Les piles de protocoles
Application Application Application Application
Sockets TLI CPI-C Named Pipes
SNA TCP/IP IPX/SPX Netbios
NDIS ODI Packet Driver
31
Cheminement du message
Cheminement du message
Couche Présentation
Couche Application
Couche Session
Couche Transport
Couche Réseau
Couche Liaison
Couche Physique
D
D H7
H6
D H7
H5
H6
D H7
H4
H5
H6
D H7
H3
H4
H5
H6
D H7
H2
H3
H4
H5
H6
D H7
H2
H3
H4
H5
H6
D H7
D
H7 D
H6 H7 D
H5 H6 H7 D
H5 H6 H7 D
H4
H5 H6 H7 D
H4
H3
H5 H6 H7 D
H4
H3
H2
H5 H6 H7 D
H4
H3
H2
Médium de transmission
Hôte B
Hôte A
32
Les protocoles TCP/IP versus
Les protocoles TCP/IP versus
ISO
ISO
FTP,TELNET,SMTP
ISO TCP
TCP UDP
Tranport
Session
Application
Présentation
Réseau
IP
Application
802.2 LLC
..
..
Lisaion
Physique
Slip, HDLC, PPP
Ethernet, Token Ring,X21, etc.
33
Les protocoles TCP/IP
Les protocoles TCP/IP
UDP TCP
IP ICMP
ARP RARP
EGP
ETHERNET TOKEN RING
C. Liaison
C. Réseau
C. Transport
SNMP TFTP DNS
Rlogin
C. Application
IGP
NFS BOOTP
SMTP
FTP
Telnet
34
Encapsulation d'un paquet de données
Encapsulation d'un paquet de données
FTP dans la Pile TCP/IP
FTP dans la Pile TCP/IP
Data ethernet CRC
Entête Ip Data IP
Adresse
Source
Adresse
Destination
Type ou
longueur
Entête TCP Data TCP
Entête FTP Data FTP
35
CPI-C OSI
Netbios
IPX/SPX
TCP/IP
Les couches d'IBM
Les couches d'IBM
CPI-C
Application
36
Le serveur
Le serveur
Groupeware
OLPT
DBMS
Objets
37
Quels sont les caractéristiques d'une
Quels sont les caractéristiques d'une
architecture Client/Serveur?
architecture Client/Serveur?
 Combinaison de client et serveur
 Ressources informatiques différentes
 Environnement hétérogène
 Mise à échelle
38
Quels sont les différents styles
Quels sont les différents styles
de traitements Client/Serveur?
de traitements Client/Serveur?
 Comment diviser les trois logiques entre le
client et le serveur
– Logique de présentation
– Logique d'affaire ,
– Logique des données
39
La logique de distribution
La logique de distribution
DBMS
Logique de base de donnée
Logique d'affaires
Logique de présentation
Application
Data
Serveur
Client
40
Les modèles d'architectures
Les modèles d'architectures
distribuées
distribuées
Fonctions de la
logique de
présentation
Fonctions de la
logique
d'affaire
Fonctions de la
logique
des données
Client
Serveur
Distributed
Presentation
Client
Serveur
Remote
Presentation
Client
Serveur
Distributed
Business Logic
Client
Serveur
Client
Serveur
Client
Serveur
Remote
Data management
Distributed Data
Management
Combinaison
de DDM et DBL
41
Qu'est ce que le client/serveur
Qu'est ce que le client/serveur
peut faire?
peut faire?
 Serveurs de fichiers
 Serveurs de base de données
 Serveurs transactionnels
 Serveurs d'applications
 Serveurs d'objets
 Serveurs Groupe de travail(Workgroup)
42
T
Té
échnologie Client/Serveur
chnologie Client/Serveur
 Communications Client/Serveur
– Appels de procédure à distance
– Interprèteur de langage
– Middleware
 Architecture en Lots
 Objets
– La programmation orienté-objet
– La gestion d’objets
– La conception orienté-objet
43
Serveur de fichiers
Serveur de fichiers
Applications Application Applications
Appels de fichiers
Serveur de fichiers
Disque
Clients
44
Serveur de base de données
Serveur de base de données
Applications
Applications
Applications
Appels SQL
Serveur DBMS
Clients
Base de
données
45
SGBD
SGBD
 Système de Gestion gestion de Base de
données
– Ensemble de tables contenant des informations
liés entre elles
– Environnement réseau multi-usager permettant
la protection des données
46
Exemple de SGBD
Exemple de SGBD
PARTS( PartNum, PartName)
PRODUCTS( ProdNum, ProName)
BILL-OF-MATERIELS ( ProdNum, PartNum, Quantity)
VENDOR( VendNum, VendName, VendAdress)
SUPPLIER( PartNum, VenNum, Price, VendPN)
Schéma
SELECT VendNum, Price
FROM SUPPLIER
WHERE PartNum =40235
Commandes SQL
UPDATE SUPPLIER SET
Price =1.2 *Price WHERE
VendAdress= ' los Angeles'
47
Différents modèles de
Différents modèles de
distribution de SGBD
distribution de SGBD
Interface
utilisateur
Logique
d'affaire
Logique
des donnés
Données
Données
SGBDR passif
SGBDR actif
(SQL serveur)
Interface
utilisateur
Logique
d'affaire
Logique
des donnés
48
Multiserveurs de SGBD
Multiserveurs de SGBD
Serveur SGBD
Serveur SGBD
Client
Serveur SGBD Serveur SGBD
Client
49
SQL
SQL
 Langage de requêtes interactives à une Base de données Relationnel
– Format requête algébrique
 Langage de programmation de base de données
 Langage de définition de données et d'administration de données
 Indépendance
– Transport
– Plate-forme
 Options de traitement de requête(Query Processing)
– Stored Procedure
– Triggers
– Securité
 Support Multiserver
– Deux phases Commit/recovery avec multiples serveurs
– Répercution d'un requête sur d'autres serveurs
50
Fonctions d'un serveur SQL
Fonctions d'un serveur SQL
IBM Compatible
IBM Compatible
IBM Compatible
Data
Data
Data
Serveur
SQL
Mémoire
Données Procédures
•Utilisateurs multiples et tâches multiples
•Base de données multiples sur disques multiples
•Mappage d'objets logiques sur des données d'unités physiques
•Mémoires caches de données et de procédures
51
Fournisseurs de serveurs SQL
Fournisseurs de serveurs SQL
 Microsoft SQL
 Sybase SQL
 IBM
 Oracle SQL
 Gupta SQLBase
52
Services de transport versus
Services de transport versus
Serveur SQL
Serveur SQL
Transport Microsoft
/Sybase
IBM Oracle Gupta
TCP Oui Oui OUI
IPX Oui
APPC Oui Oui Oui
Vines Oui
Named Pipes Oui Oui Oui
Netbios Oui Oui
IBM Netbios Oui Oui Oui
53
Les versions SQL
Les versions SQL
SQL-89 SQL-92 SQL3 1995
SQL Intersection
Enchassement
Intégrité référentiel
Connections
BLOBs
Join Operators
Catalogs
Dynamic SQL
Intégrité de
domaine
Object SQL
Stored Procedures
Triggers
User defined type
CLI
Sensitive cursors
Multimédia
54
RDA (Remote Data base
RDA (Remote Data base
Access)
Access)
Client Serveur
BD
avant plan
Application
BD
arrière plan
Remote Data
Access Protocol
Requête
Résultats
55
Avantages RDA
Avantages RDA
 Réduit le trafic réseau
 Haute performance
 Réduit la mémoire requise chez le client
 Polices de gestion de consistance des données
– Sécurité
– Règles de consistance de la BD
 Réduction du temps de développement des applications
 Flexibilité du système
– Options du système en avant plan
– Options de la plate-forme en arrière plan
56
API de SQL Access
API de SQL Access
Application
Client
SQL
enchassée
Call Interface
SQL
Interface RDA
Protocole RDA
Protocole
Transport
Client
Serveur
SQL
Interface RDA
Protocole RDA
Protocole
Transport
Serveur
57
Groupes de standards SQL
Groupes de standards SQL
Access
Access
 SQL Access technical specification
 Partie de X/Open Portabilité Guide(XPG 4)
 Phase 1
 Format et protocole tel que ISO RDA
 SQL API définie
 ANSI SQL standards utilisée
 Phase II
 supporte TCP/IP et Call Level Interface (CLI)API
 Phase III
 Enregistrement des procédures, commit deux phases
58
ODBC
ODBC
 Open Data Base Connectivity
 ODBC est une Spécification de pilotes
d'acc`s à une base de données
 Développé par Microsoft
59
Client /serveur dans un
Client /serveur dans un
Environement ODBC
Environement ODBC
Ethernet
Production
Comptabilité
Ressource Humaines
Microsoft Excel
ODBC Interface
Gestionnaire
pilote
Pilote
Oracle
ODBC
Pilote
Sybase
ODBC
Communication
Microsoft Excel
ODBC Interface
Gestionnaire
pilote
Pilote
Oracle
ODBC
Pilote
Microsoft
ODBC
Communication
Lotus 123
ODBC Interface
Serveur SGBD
Oracle
Serveur SGBD
Sybase
Serveur SGBD
Micrososft SQL
60
Serveur transactionnel
Serveur transactionnel
Applications Application Applications
Transactions
Transactions
DBMS
Disque
Clients
61
OLTP (Online Transaction Processing)
OLTP (Online Transaction Processing)
& DSS (Decision Support Systems)
& DSS (Decision Support Systems)
 Deux catégories de C/S
 OLTP: Système de réservation, Contrôle
d'inventaire, Serveurs des Brokker d'actions
de Systèmes Tracking , etc....
 DSS: Génération de rapports, temps n'est
pas critique
 DSS/EIS(Executive Information System)
62
Propriétés d'une transaction
Propriétés d'une transaction
 ACID
– Atomicité
– Consistance
– Isolation
– Durabilité
63
Commit à deux phases
Commit à deux phases
BEGIN BEGIN
Serveur Serveur
READY READY
COMMIT COMMIT
COMMIT OK COMMIT OK
Client
BEGIN BEGIN
Serveur Serveur
READY REFUSE
ROLLBACK
ROLLBACK OK
Client
Succés
Echec
64
Les modèles de transactions
Les modèles de transactions
Systèmes
Start
Les transactions
Commit Abord
Tuxedo TPBEGIN TPCONNECT TPABORD
Top End tx_begin tx_commit tx_rollback
Encina RPC transaction onCommit onAbord
X/Open tx_begin tx_commit tx_rollback
OSI TP C-BEGIN C-COMMIT C-ROLLBACK
Tandem RSC Begin_Transaction End_Transaction Abord_Transaction
CICS SYNCPOINT SYNCPOINT SYNCPOINT ou
ROLBACK
65
Transaction processing
Transaction processing
 Propriétés d'une transaction
 ACID
– Atomicité
– Consistance
– Isolation
– Durabilité
66
ISO CCR ASE
ISO CCR ASE
 Toolkit Application Service Element (ASE)
 Requiert deux phases commit
 CCR Opérations
– Begin (supérieur)
– Prepare (supérieur)
– Ready (subordonnée)
– Rollback (au choix)
– Recover (au choix)
67
Serveur d'applications
Serveur d'applications
Applications Application
Applications
Messages d'applications
Serveur d'application
Disque
Clients
68
Serveurs Groupeware
Serveurs Groupeware
 Documents multimédias
 Workflow
 E-mail
 Téléconférence
 Planificateur de temps
69
Serveur d'objets
Serveur d'objets
Applications
ORB
Application
ORB
Applications
ORB
Remote Method Invocation
Serveur d'objet
ORB
Disque
Clients
70
Objets
Objets
 Objets
 Object Brokers
 Objects Services
 Objects TP Monitors
 Object Groupeware
 Object Database
 Object Linking
 Objects Frameworks
71
CORBA solution de OMG?
CORBA solution de OMG?
 CORBA (Common Object Request Broker
Architecture).
Applications
Object
Object Request Broker
Object services
Facilités
communues
72
Structure d'ORB deCorba 2.0
Structure d'ORB deCorba 2.0
Dynamic
Invocation
Object Adapter
ORB
Interface
Cl;ient
IDL:
Stubs
Dynamic
Sketon
Invocation
Statics
Sketons
OBject Request Broker Core
Interface
Repository
Implementation
Repository
Client Object
Implementation
73
Les APIs
Les APIs
 Application Programming Interface
 TLI(Transport Layer Interface)
 RPC(Sun, DCE,Microsoft)
 Socket(Unix, Winsock)
 SQL API
 ORB(Corba)
74
RPC
RPC (Remote Procedure Call)
(Remote Procedure Call) ?
?
 l’exécution des procédures sur une
machine distante.
 créer des programmes répartis.
 Deux standards: ONC et DCE
 But
– Facilité
– Distribution
– Transparence:
– Indépendance
75
Fonctionnement
Fonctionnement
main()
{
.....
....
result = add(x,y);
....
}
add(x,y)
int x;
int y;
{
return(x+y);
}
main()
{
.....
....
result = rpc(server,add,(x,y);
....
}
add(x,y)
int x;
int y;
{
return(x+y);
}
Appel de procedure local Appel de procedure à distance
Client
Serveur
part
l’execution
sur le serveur
retourne le résultat
76
Architectures des vendeurs
Architectures des vendeurs
 GUI
 API (Application program interfaces)
 Protocoles de réseaux
 Gestion de système
 Sécurité
 Outils CASE (Computer-aided software
engineering)
 Gestion d’objet
 DBMS
77
System Application
System Application
Architecture d'IBM?
Architecture d'IBM?
 Common User Access (CUA)
 Common Programming Interface (CPI)
 Common Communication Support (CCS)
 Common Applications
78
Qu'est ce que VITAL
Qu'est ce que VITAL
architecture de APPLE?
architecture de APPLE?
 Construction d' un système d'information à partir
de modules généraux qui peuvent être réutilisées
et partgées.
 Spécification pour la construction et Interface des
modules
 DAL (Data Acees Language): consiste en des
composantes logiciels que le client et le serveur
inclue dans son système d'exploitation (system 7)
 Cette approche permet à différents clients de
communiquer avec différents serveurs.
79
Open Network Computing
Open Network Computing
Architecture?
Architecture?
 Architecture de Sun
 RPC-ONC : licenciées par 300
Compagnies.
 TI-RPC
 NFS
 Yellow Page
80
Network Application System
Network Application System
(NAS) architecture?
(NAS) architecture?
 Architecture de Digital
 NAS est une suite de logiciels qui permettent d'intégrer les
applications sur des systèmes distribuées et multi-
vendeurs:
 Les services NAS sont divisées dans les quatre groupes :
- Application Access Services.
- Services centraux et de communications (Communication and
Central services).
- Ressources de partage et d'information(Information and resource
sharing).
- Services d'accès au système (System Access services).
81
Qu'est ce que l'OSF-DCE?
Qu'est ce que l'OSF-DCE?
DCE Threads Service
RPC
Time S.
Dist. File Serv.
Diskless
Service
Services de transport
Security
services DME
Mana-
gement
Directory
Applications
Autres serv. Distr.
82
OSF
OSF
 OSF (Open Software Foundation) est un
groupe de développeurs UNIX qui établit
des standards en sélectionnant des
implémentations spécifiques de
technologie, le code, aussi bien que les
spécifications et la documentation.
 L’OSF a été formé pour garder le contrôle
de la direction des systèmes ouverts hors
des mains d’un seul fournisseur.
83
Disponibilité de DCE
Disponibilité de DCE
 IBM : DCE sur AIX v3.0 pour RS/6000 et
AIX/ESA pour mainframe
 HP : MPE/XL, HP-LJX, Domain/OS et OSF/L
 Locus Computing : RPC test-and-validation suite
 Banyan : support dans VINES pour permettre des
clients DOS, Windows, OS/2 et Macintosh
 NCR : DCE est incorporé dans Open Cooperative
Computing (OCC)
84
DOMS (Distributed Object
DOMS (Distributed Object
Management Systems)?
Management Systems)?
 DOMS fournit un ensemble diverses composantes
ensemble, et de gérer leurs communications.
 Les objectifs sont les suivants:
- Un simple interface pour gérer la complexité d' environnement
hétérogène
- C'est un cadre de travail , basé sur le standard et l'extensibilité,
permettant de construire , d'intégrer et de déployer les applications
distribuées ouvertes.
- Une méthode pour créer des applications clientes indépendantes du
site où elles sont.
85
DAE?
DAE?
 Distributed Application Environment a été
conçu pour développer des applications
d'affaire sur les RISC System/6000 d'IBM
et PS2.
 DAE consiste
(1) MESSAGING services;
(2) DATABASE services;
(3) PRESENTATION services;
(4) DEVICE services.
86
La vague du Client/Serveur
La vague du Client/Serveur
Serveurs de
fichiers
Serveurs de
SGBD
Distributed
Objects
1982 1986 1995 1998
Groupeware
87
DBMS
DBMS
 SQL?
– Langage de requêtes intéractives
– Langage de programmation de base de données
– langage de définition de données et
d'administration de données
– langage des serveurs de base de données
réseaux
– Environement réseau multi-usager permettant
la protection des données
88
Les versions SQL
Les versions SQL
SQL-89 SQL-92 SQL3 1995
SQL Intersection
Enchassement
Intégrité
référentiel
Connections
BLOBs
Join Operators
Catalogs
Dynamic SQL
Intégrité de
domaine
Object SQL
Stored Procedures
Triggers
User defined type
CLI
Sensitive cursors
Multimédia
89
Groupeware
Groupeware
 Documents multimédias
 Workflow
 E-mail
 Téléconférence
 Planificateur de temps
90
Groupeware
Groupeware
 Lotus Notes
 Windows- workgroup
91
Les objets
Les objets
subselect.me
sdfsd sadf
asdfs df
Gestion des objets
Conception orienté
objet
Programmation
orienté objet
92
Les objets (suite)
Les objets (suite)
–La programmation orientée-objet
La structure des données est cachée et
tous les processus sont encapsulés
comme des opérations sur des objets.
– La gestion d’objets
Les objets peuvent être presque
n’importe quoi, incluant des fichiers, des
ordinateurs, des organisations, des
interfaces de services RPC, des
imprimantes et des pays. Les objets
peuvent être imbriqués à l’intérieur
d’autres objets. La gestion d’objets est
une approche commode pour le réseau
étendu.
–La conception orientée-
objet
La conception orientée-objet
donne une conception de
programmes du point de vue de
l’utilisateur. Les objets sont des
items qui apparaissent sur l’écran
de l’utilisateur, comme les boites
d’entrées, les boites à cocher, les
boutons et les boutons radio.
L’interface utilisateur est créée
en premier, et est construite à
l’intérieur d’un environnement
de développement graphique.
93
Le processus de sélection
Le processus de sélection
des équipements
des équipements
 1. Faire la liste de tous les éléments que vous avez
déjà et que vous allez garder :
– Description du matériel et des logiciels, incluant
les différentes versions.
– La raison pour laquelle vous garder ces items.
– Dates significatives;
– Qui dans l’organisation choisit la technologie?
– Qui la défend aujourd’hui? Répondez à cette
question pour éviter des problèmes politiques
potentiels.
94
Le processus de sélection des
Le processus de sélection des
équipements
équipements
 2. Faites la liste du nouvel équipement que vous devez
obtenir. Inclure les raisons pour ces acquisitions
spécifiques:
– Relation stratégique
– Directives corporatives
– Requis pour que les composantes existantes fonctionnent
 3. Faites la liste des items que vous ne pouvez acquérir,
avec les raisons pour l’interdiction.
 4. En travaillant dans les limites de ces trois listes, choisir
les éléments que vous allez investiguer dans la conception
de la plateforme de réseaux.
95
Le processus de sélection des
Le processus de sélection des
équipements
équipements
 5. Diviser le système
dans des composantes
physiques:
– a. DBMS
 Logiciel de serveur de base
de données
 Système d’exploitation
 Matériel
– b. Stations de
travail
 · Logiciel client
 · Système d’exploitation
 · Matériel
– c. Plateforme de
réseaux
 Système d’exploitation
de serveur de fichier
 Matériel
 Système de câblage
 Cartes d’interface de
réseaux (NIC)
 Ponts, routeurs et
passerelles
 Système de reléve
96
Sélection du Système de
Sélection du Système de
gestion de Base de Données
gestion de Base de Données
 Capacité du DBMS
 Type de transaction
 Commodité pour le
serveur :
 Système d’exploitation
 Compatibilité avec la
carte d’interface de
réseaux (NIC)
 Fiabilité du matériel
 Error trapping
 Compatibilité
 Capacité du matériel
 Bus
 Vitesse
97
Architectures des vendeurs
Architectures des vendeurs
 GUI
 API (Application program interfaces)
 Protocoles de réseaux
 Gestion de système
 Sécurité
 Outils CASE (Computer-aided software
engineering)
 Gestion d’objet
 DBMS
98
OSF
OSF
 OSF (Open Software Foundation) est un groupe
de développeurs UNIX qui établit des standards en
sélectionnant des implémentations spécifiques de
technologie, le code, aussi bien que les
spécifications et la documentation.
 L’OSF a été formé pour garder le contrôle de la
direction des systèmes ouverts hors des mains
d’un seul.
99
DCE
DCE
 Le DCE inclut les éléments suivant :
 DECdns : Digital’s Distributed Name Services, une
convention de nommage développée pour localiser des
ressources et des usagers à travers des WAN
 DIR-X : Siemen’s CCITT X.50 worldwide directory
service
 RPC : HP(Apollo) et DEC
 Threads Service : DEC
 Distributed Time Services : DEC
100
Disponibilté de DCE
Disponibilté de DCE
 IBM : DCE sur AIX v3.0 pour RS/6000 et
AIX/ESA pour mainframe
 HP : MPE/XL, HP-LJX, Domain/OS et OSF/L
 Locus Computing : RPC test-and-validation suite
 Banyan : support dans VINES pour permettre des
clients DOS, Windows, OS/2 et Macintosh
 NCR : DCE est incorporé dans Open Cooperative
Computing (OCC)
101
L’architecture client/serveur
L’architecture client/serveur
de DEC
de DEC
 Open Computing
Environnement, est conçu pour
supporter l’interopabilité entre
des plates-formes hétérogènes.
 DCE inclut plusieurs produits
DEC :
– DECdns
– Threads Service
– Distributed Time Service
 Network Application Support
(NAS) :
– Services d’accès : définit l’accès
usagers et l’accès application au
autre applications
– Services de communication :
– Services d’information et de
partage de ressources :
– Services de systèmes :
– UNIX, VMS, Macintosh,
DOS, OS/2, Sun et SNA. Il
supporte des BD multiples,
incluant DB2, IMS, VSAM,
Oracle, Rdb, RMS, Sybase et
Apple DAL; et des réseaux
multiples, incluant OSI,
TCP/IP, DECnet, SNA,
Microsoft LAN Manager,
AppleTalk et NetWare.
102
SUN
SUN
 Open Network Computing
 Le RPC de Sun est licenciés par plus de 300 compagnies,
incluant DEC, IBM et Apple Computer.
 Les Transport Independent Remote Procedure Calls (TI-RPC)
furent co-développés par Sun et AT&T. TI-RPC fonctionne de
façon indépendante du réseau de transport sous-jacent,
permettant les applications de rouler sans modifications sur
des protocols de transport multiple incluant NetWare,
PC/NFS, AIX/6000, Solaris, UNIX/SVR4 et AIX/ESA.
 NetManage développa le ONC RPC-Dynamic Link Library,
une implémentation de RPC/XDR sous Windows 3.0.

Client serveur pour administration de réseau informatique

  • 1.
  • 2.
    2 Les attentes Les attentes Acquérir une connaissance de base des composants(logiciel et matériel) d'un système distribuées et de leurs fonctions  Comprendre les implications organisationelles du développement d'application client/serveur.
  • 3.
    3 Plan de cours Plande cours  Revue des grands thèmes. – Systèmes d'exploitation, les systèms ouverts, la connectitvité informatique, le modèle OSI, le dépannage, la sécurité des OS.  L'approche client/Serveur – Revue des définitions. – défis,bénéfices et inconvénients de l'approche – Logiciels, matériels – Outils de développements d'applications.  Les serveurs de bases de données – Les stokages de fichiers – SQL(Structured Query Language) – La performance – Les responsabilités de l'adminitrateur – La sécurité  Les interfaces utilisateurs – Lesprincipes d'une bonne interface – Les caratéristiques  L'évaluation d'un projet – le choix des applications à évaluer: – L'analysede faisabilité
  • 4.
    4 Architecture Client/serveur Architecture Client/serveur L’informatique client/serveur est – une architecture flexible et rentable dans lequel les clients sont des applications « front-end » qui interagissent avec des serveurs, qui sont des applications « back-end ».
  • 5.
    5 Définition du client/serveur Définitiondu client/serveur Logiciel de serveur fournit les services Logiciel client affiche la réponse Ethernet Réseau Requête /réponse
  • 6.
    6 L’environnement Client/Serveur L’environnement Client/Serveur Service  Ressources partagées  Protocoles asymétriques  Transparence des sites  mix and match  Echanges basées sur des messages  Encapsulation de services  Mise à l'échelle(scalability)  Intégrité
  • 7.
    7 Avant le client/serveur Avantle client/serveur Token Ring
  • 8.
    8 Les points critiques Lespoints critiques  Le client fait une requête de service.  Le serveur fournit le service.  Les clients sont des applications « front-end ».  Les serveurs sont des applications « back-end ».  Les deux sont requis pour une transaction.  Le client et le serveur sont normalement sur des ordinateurs différents.  La communication est normalement faite sur un réseau.  La séparation est transparente pour l’utilisateur.
  • 9.
    9 La prochaine étape Laprochaine étape
  • 10.
    10 Parallèles avec laRéingénerie Parallèles avec la Réingénerie de l’Entreprise de l’Entreprise  Amélioration de la qualité  Aplanissement de la pyramide organisationnelle  Donner le pouvoir aux employés  Faciliter le partage de l’information  Effets de la réingénerie
  • 11.
    11 Bénéfices de laTechnologie Bénéfices de la Technologie Client/Serveur Client/Serveur  Cycle de développement plus court  Coût plus bas  Mise en echelle (Scalability)  Flexibilité/spécialisation  Opportunité  Potentiel  Potentiel de la technologie
  • 12.
    12 Potentiel (suite) Potentiel (suite) Potentiel pour changer l’entreprise  Barrières à la technologie client/serveur  Coûts d’implémentation  Acquérir le support des administrateurs clés  La peur de déranger le flux de travail  Vitesse rapide de changement  Difficultés techniques  Le manque d’une architecture cohésive  Manque de compétence
  • 13.
    13 Barrières à latechnologie Barrières à la technologie client/serveur client/serveur  Coûts d’implémentation  Acquérir le support des administrateurs clés : – Un parrainage corporatif – Administrateurs de SI – Administrateurs des département affectés  La peur de déranger le flux de travail  Vitesse rapide de changement  Difficultés techniques  Le manque d’une architecture cohésive  Manque d’habilité
  • 14.
    14 Mythes et Réalités Mytheset Réalités 1: La migration client/serveur veut dire qu’on doit tout faire rouler sur des PC. 2: Nos applications sont trop grosses. 3: Les MIPS ne comptent pas. 4: Les goulot d’étranglement d’E/S avec les systèmes client/serveur font que leurs performances ne sont pas aussi bonne que les minis et mainframe traditionnel. 5: Les LANs ne sont pas fiable 6: DANGER! Les LANs ne fournissent pas de sécurité, de backups et de contrôles adéquates. 7: Le client/serveur, parce qu’il roule sur des microprocesseurs, peut être implémenté à 100% avec des logiciels off-the-shelf. 8: La migration client/serveur ne requière que le remplacement des applications mainframe avec des alternatives pour PC.
  • 15.
    15 Revue des grandsthèmes Revue des grands thèmes  Le midleware  Les systèmes d'exploitation  Les systèmes ouverts  La connectitvité informatique  Le modèle OSI  Le dépannage  la sécurité des OS.
  • 16.
    16 Le midleware Le midleware NetbiosTCP/IP IPX SNA Directory Securité Distribution des fichiers RPC Messages Named Pipes SNMP CMIP DME SQL/API Mail RPC-T ORB Services spécifiques DSM NOS Couche de transport
  • 17.
    17 Le midleware dansle Le midleware dans le client/serveur client/serveur Client Middleware Serveur
  • 18.
    18 Qu'est ce qu'unserveur peut Qu'est ce qu'un serveur peut attendre d'un OS attendre d'un OS Multitasking Theads Sémaphores Gestion de fichiers IPC Gestion de la mémoire
  • 19.
    19 Les Systèmes d'exploitation LesSystèmes d'exploitation  UNIX  Windows NT  VMS  DOS  Windows 95  OS/2
  • 20.
    20 Transparence du NOS Transparencedu NOS  Transparence des sites  Transparence des noms  Transparence des acc`s)Login)  transpararence de réplication  Transparence du temps distribuée  Transparence des pannes  Admintration transparente
  • 21.
    21 Qu'est ce quele client/serveur Qu'est ce que le client/serveur peut faire? peut faire?  Serveurs de fichiers  Serveurs de base de données  Serveurs transactionnels  Serveurs d'applications  Serveurs d'objets
  • 22.
    22 Serveur de fichiers Serveurde fichiers Applications Application Applications Appels de fichiers Serveur de fichiers Disque Clients
  • 23.
    23 Serveur de basede données Serveur de base de données Applications Applications Applications Appels SQL Serveur DBMS Clients Base de données
  • 24.
    24 Serveur transactionnel Serveur transactionnel ApplicationsApplication Applications Transactions TRANsactions DBMS Disque Clients
  • 25.
    25 Serveur d'applications Serveur d'applications ApplicationsApplication Applications Messages d'applications Serveur d'application Disque Clients
  • 26.
  • 27.
    27 Réseau Téléinformatique ? RéseauTéléinformatique ? Réseau Lien Stations Hôtes Noeuds de communication
  • 28.
    28 Les fonctions d’unréseau Les fonctions d’un réseau téléinformatiques téléinformatiques •objectif principal – réaliser une transmission efficace des données. Principales fonctions Génération du signal; Synchronisation; Gestion des échanges; Détection d’erreur Correction d'erreur; Contrôle de flux; Adressage; Routage; Récupération; Formattage des messages; Protection (sécurité); Gestion du système; Contrôle de la charge du réseau.
  • 29.
    29 Le modèle OSIen sept Le modèle OSI en sept couches couches Application Présentation Transport Réseau Liaison Physique Session Réseau Liaison Physique Application Présentation Transport Réseau Liaison Physique Session Protocole de bout en bout
  • 30.
    30 Les piles deprotocoles Les piles de protocoles Application Application Application Application Sockets TLI CPI-C Named Pipes SNA TCP/IP IPX/SPX Netbios NDIS ODI Packet Driver
  • 31.
    31 Cheminement du message Cheminementdu message Couche Présentation Couche Application Couche Session Couche Transport Couche Réseau Couche Liaison Couche Physique D D H7 H6 D H7 H5 H6 D H7 H4 H5 H6 D H7 H3 H4 H5 H6 D H7 H2 H3 H4 H5 H6 D H7 H2 H3 H4 H5 H6 D H7 D H7 D H6 H7 D H5 H6 H7 D H5 H6 H7 D H4 H5 H6 H7 D H4 H3 H5 H6 H7 D H4 H3 H2 H5 H6 H7 D H4 H3 H2 Médium de transmission Hôte B Hôte A
  • 32.
    32 Les protocoles TCP/IPversus Les protocoles TCP/IP versus ISO ISO FTP,TELNET,SMTP ISO TCP TCP UDP Tranport Session Application Présentation Réseau IP Application 802.2 LLC .. .. Lisaion Physique Slip, HDLC, PPP Ethernet, Token Ring,X21, etc.
  • 33.
    33 Les protocoles TCP/IP Lesprotocoles TCP/IP UDP TCP IP ICMP ARP RARP EGP ETHERNET TOKEN RING C. Liaison C. Réseau C. Transport SNMP TFTP DNS Rlogin C. Application IGP NFS BOOTP SMTP FTP Telnet
  • 34.
    34 Encapsulation d'un paquetde données Encapsulation d'un paquet de données FTP dans la Pile TCP/IP FTP dans la Pile TCP/IP Data ethernet CRC Entête Ip Data IP Adresse Source Adresse Destination Type ou longueur Entête TCP Data TCP Entête FTP Data FTP
  • 35.
    35 CPI-C OSI Netbios IPX/SPX TCP/IP Les couchesd'IBM Les couches d'IBM CPI-C Application
  • 36.
  • 37.
    37 Quels sont lescaractéristiques d'une Quels sont les caractéristiques d'une architecture Client/Serveur? architecture Client/Serveur?  Combinaison de client et serveur  Ressources informatiques différentes  Environnement hétérogène  Mise à échelle
  • 38.
    38 Quels sont lesdifférents styles Quels sont les différents styles de traitements Client/Serveur? de traitements Client/Serveur?  Comment diviser les trois logiques entre le client et le serveur – Logique de présentation – Logique d'affaire , – Logique des données
  • 39.
    39 La logique dedistribution La logique de distribution DBMS Logique de base de donnée Logique d'affaires Logique de présentation Application Data Serveur Client
  • 40.
    40 Les modèles d'architectures Lesmodèles d'architectures distribuées distribuées Fonctions de la logique de présentation Fonctions de la logique d'affaire Fonctions de la logique des données Client Serveur Distributed Presentation Client Serveur Remote Presentation Client Serveur Distributed Business Logic Client Serveur Client Serveur Client Serveur Remote Data management Distributed Data Management Combinaison de DDM et DBL
  • 41.
    41 Qu'est ce quele client/serveur Qu'est ce que le client/serveur peut faire? peut faire?  Serveurs de fichiers  Serveurs de base de données  Serveurs transactionnels  Serveurs d'applications  Serveurs d'objets  Serveurs Groupe de travail(Workgroup)
  • 42.
    42 T Té échnologie Client/Serveur chnologie Client/Serveur Communications Client/Serveur – Appels de procédure à distance – Interprèteur de langage – Middleware  Architecture en Lots  Objets – La programmation orienté-objet – La gestion d’objets – La conception orienté-objet
  • 43.
    43 Serveur de fichiers Serveurde fichiers Applications Application Applications Appels de fichiers Serveur de fichiers Disque Clients
  • 44.
    44 Serveur de basede données Serveur de base de données Applications Applications Applications Appels SQL Serveur DBMS Clients Base de données
  • 45.
    45 SGBD SGBD  Système deGestion gestion de Base de données – Ensemble de tables contenant des informations liés entre elles – Environnement réseau multi-usager permettant la protection des données
  • 46.
    46 Exemple de SGBD Exemplede SGBD PARTS( PartNum, PartName) PRODUCTS( ProdNum, ProName) BILL-OF-MATERIELS ( ProdNum, PartNum, Quantity) VENDOR( VendNum, VendName, VendAdress) SUPPLIER( PartNum, VenNum, Price, VendPN) Schéma SELECT VendNum, Price FROM SUPPLIER WHERE PartNum =40235 Commandes SQL UPDATE SUPPLIER SET Price =1.2 *Price WHERE VendAdress= ' los Angeles'
  • 47.
    47 Différents modèles de Différentsmodèles de distribution de SGBD distribution de SGBD Interface utilisateur Logique d'affaire Logique des donnés Données Données SGBDR passif SGBDR actif (SQL serveur) Interface utilisateur Logique d'affaire Logique des donnés
  • 48.
    48 Multiserveurs de SGBD Multiserveursde SGBD Serveur SGBD Serveur SGBD Client Serveur SGBD Serveur SGBD Client
  • 49.
    49 SQL SQL  Langage derequêtes interactives à une Base de données Relationnel – Format requête algébrique  Langage de programmation de base de données  Langage de définition de données et d'administration de données  Indépendance – Transport – Plate-forme  Options de traitement de requête(Query Processing) – Stored Procedure – Triggers – Securité  Support Multiserver – Deux phases Commit/recovery avec multiples serveurs – Répercution d'un requête sur d'autres serveurs
  • 50.
    50 Fonctions d'un serveurSQL Fonctions d'un serveur SQL IBM Compatible IBM Compatible IBM Compatible Data Data Data Serveur SQL Mémoire Données Procédures •Utilisateurs multiples et tâches multiples •Base de données multiples sur disques multiples •Mappage d'objets logiques sur des données d'unités physiques •Mémoires caches de données et de procédures
  • 51.
    51 Fournisseurs de serveursSQL Fournisseurs de serveurs SQL  Microsoft SQL  Sybase SQL  IBM  Oracle SQL  Gupta SQLBase
  • 52.
    52 Services de transportversus Services de transport versus Serveur SQL Serveur SQL Transport Microsoft /Sybase IBM Oracle Gupta TCP Oui Oui OUI IPX Oui APPC Oui Oui Oui Vines Oui Named Pipes Oui Oui Oui Netbios Oui Oui IBM Netbios Oui Oui Oui
  • 53.
    53 Les versions SQL Lesversions SQL SQL-89 SQL-92 SQL3 1995 SQL Intersection Enchassement Intégrité référentiel Connections BLOBs Join Operators Catalogs Dynamic SQL Intégrité de domaine Object SQL Stored Procedures Triggers User defined type CLI Sensitive cursors Multimédia
  • 54.
    54 RDA (Remote Database RDA (Remote Data base Access) Access) Client Serveur BD avant plan Application BD arrière plan Remote Data Access Protocol Requête Résultats
  • 55.
    55 Avantages RDA Avantages RDA Réduit le trafic réseau  Haute performance  Réduit la mémoire requise chez le client  Polices de gestion de consistance des données – Sécurité – Règles de consistance de la BD  Réduction du temps de développement des applications  Flexibilité du système – Options du système en avant plan – Options de la plate-forme en arrière plan
  • 56.
    56 API de SQLAccess API de SQL Access Application Client SQL enchassée Call Interface SQL Interface RDA Protocole RDA Protocole Transport Client Serveur SQL Interface RDA Protocole RDA Protocole Transport Serveur
  • 57.
    57 Groupes de standardsSQL Groupes de standards SQL Access Access  SQL Access technical specification  Partie de X/Open Portabilité Guide(XPG 4)  Phase 1  Format et protocole tel que ISO RDA  SQL API définie  ANSI SQL standards utilisée  Phase II  supporte TCP/IP et Call Level Interface (CLI)API  Phase III  Enregistrement des procédures, commit deux phases
  • 58.
    58 ODBC ODBC  Open DataBase Connectivity  ODBC est une Spécification de pilotes d'acc`s à une base de données  Développé par Microsoft
  • 59.
    59 Client /serveur dansun Client /serveur dans un Environement ODBC Environement ODBC Ethernet Production Comptabilité Ressource Humaines Microsoft Excel ODBC Interface Gestionnaire pilote Pilote Oracle ODBC Pilote Sybase ODBC Communication Microsoft Excel ODBC Interface Gestionnaire pilote Pilote Oracle ODBC Pilote Microsoft ODBC Communication Lotus 123 ODBC Interface Serveur SGBD Oracle Serveur SGBD Sybase Serveur SGBD Micrososft SQL
  • 60.
    60 Serveur transactionnel Serveur transactionnel ApplicationsApplication Applications Transactions Transactions DBMS Disque Clients
  • 61.
    61 OLTP (Online TransactionProcessing) OLTP (Online Transaction Processing) & DSS (Decision Support Systems) & DSS (Decision Support Systems)  Deux catégories de C/S  OLTP: Système de réservation, Contrôle d'inventaire, Serveurs des Brokker d'actions de Systèmes Tracking , etc....  DSS: Génération de rapports, temps n'est pas critique  DSS/EIS(Executive Information System)
  • 62.
    62 Propriétés d'une transaction Propriétésd'une transaction  ACID – Atomicité – Consistance – Isolation – Durabilité
  • 63.
    63 Commit à deuxphases Commit à deux phases BEGIN BEGIN Serveur Serveur READY READY COMMIT COMMIT COMMIT OK COMMIT OK Client BEGIN BEGIN Serveur Serveur READY REFUSE ROLLBACK ROLLBACK OK Client Succés Echec
  • 64.
    64 Les modèles detransactions Les modèles de transactions Systèmes Start Les transactions Commit Abord Tuxedo TPBEGIN TPCONNECT TPABORD Top End tx_begin tx_commit tx_rollback Encina RPC transaction onCommit onAbord X/Open tx_begin tx_commit tx_rollback OSI TP C-BEGIN C-COMMIT C-ROLLBACK Tandem RSC Begin_Transaction End_Transaction Abord_Transaction CICS SYNCPOINT SYNCPOINT SYNCPOINT ou ROLBACK
  • 65.
    65 Transaction processing Transaction processing Propriétés d'une transaction  ACID – Atomicité – Consistance – Isolation – Durabilité
  • 66.
    66 ISO CCR ASE ISOCCR ASE  Toolkit Application Service Element (ASE)  Requiert deux phases commit  CCR Opérations – Begin (supérieur) – Prepare (supérieur) – Ready (subordonnée) – Rollback (au choix) – Recover (au choix)
  • 67.
    67 Serveur d'applications Serveur d'applications ApplicationsApplication Applications Messages d'applications Serveur d'application Disque Clients
  • 68.
    68 Serveurs Groupeware Serveurs Groupeware Documents multimédias  Workflow  E-mail  Téléconférence  Planificateur de temps
  • 69.
  • 70.
    70 Objets Objets  Objets  ObjectBrokers  Objects Services  Objects TP Monitors  Object Groupeware  Object Database  Object Linking  Objects Frameworks
  • 71.
    71 CORBA solution deOMG? CORBA solution de OMG?  CORBA (Common Object Request Broker Architecture). Applications Object Object Request Broker Object services Facilités communues
  • 72.
    72 Structure d'ORB deCorba2.0 Structure d'ORB deCorba 2.0 Dynamic Invocation Object Adapter ORB Interface Cl;ient IDL: Stubs Dynamic Sketon Invocation Statics Sketons OBject Request Broker Core Interface Repository Implementation Repository Client Object Implementation
  • 73.
    73 Les APIs Les APIs Application Programming Interface  TLI(Transport Layer Interface)  RPC(Sun, DCE,Microsoft)  Socket(Unix, Winsock)  SQL API  ORB(Corba)
  • 74.
    74 RPC RPC (Remote ProcedureCall) (Remote Procedure Call) ? ?  l’exécution des procédures sur une machine distante.  créer des programmes répartis.  Deux standards: ONC et DCE  But – Facilité – Distribution – Transparence: – Indépendance
  • 75.
    75 Fonctionnement Fonctionnement main() { ..... .... result = add(x,y); .... } add(x,y) intx; int y; { return(x+y); } main() { ..... .... result = rpc(server,add,(x,y); .... } add(x,y) int x; int y; { return(x+y); } Appel de procedure local Appel de procedure à distance Client Serveur part l’execution sur le serveur retourne le résultat
  • 76.
    76 Architectures des vendeurs Architecturesdes vendeurs  GUI  API (Application program interfaces)  Protocoles de réseaux  Gestion de système  Sécurité  Outils CASE (Computer-aided software engineering)  Gestion d’objet  DBMS
  • 77.
    77 System Application System Application Architectured'IBM? Architecture d'IBM?  Common User Access (CUA)  Common Programming Interface (CPI)  Common Communication Support (CCS)  Common Applications
  • 78.
    78 Qu'est ce queVITAL Qu'est ce que VITAL architecture de APPLE? architecture de APPLE?  Construction d' un système d'information à partir de modules généraux qui peuvent être réutilisées et partgées.  Spécification pour la construction et Interface des modules  DAL (Data Acees Language): consiste en des composantes logiciels que le client et le serveur inclue dans son système d'exploitation (system 7)  Cette approche permet à différents clients de communiquer avec différents serveurs.
  • 79.
    79 Open Network Computing OpenNetwork Computing Architecture? Architecture?  Architecture de Sun  RPC-ONC : licenciées par 300 Compagnies.  TI-RPC  NFS  Yellow Page
  • 80.
    80 Network Application System NetworkApplication System (NAS) architecture? (NAS) architecture?  Architecture de Digital  NAS est une suite de logiciels qui permettent d'intégrer les applications sur des systèmes distribuées et multi- vendeurs:  Les services NAS sont divisées dans les quatre groupes : - Application Access Services. - Services centraux et de communications (Communication and Central services). - Ressources de partage et d'information(Information and resource sharing). - Services d'accès au système (System Access services).
  • 81.
    81 Qu'est ce quel'OSF-DCE? Qu'est ce que l'OSF-DCE? DCE Threads Service RPC Time S. Dist. File Serv. Diskless Service Services de transport Security services DME Mana- gement Directory Applications Autres serv. Distr.
  • 82.
    82 OSF OSF  OSF (OpenSoftware Foundation) est un groupe de développeurs UNIX qui établit des standards en sélectionnant des implémentations spécifiques de technologie, le code, aussi bien que les spécifications et la documentation.  L’OSF a été formé pour garder le contrôle de la direction des systèmes ouverts hors des mains d’un seul fournisseur.
  • 83.
    83 Disponibilité de DCE Disponibilitéde DCE  IBM : DCE sur AIX v3.0 pour RS/6000 et AIX/ESA pour mainframe  HP : MPE/XL, HP-LJX, Domain/OS et OSF/L  Locus Computing : RPC test-and-validation suite  Banyan : support dans VINES pour permettre des clients DOS, Windows, OS/2 et Macintosh  NCR : DCE est incorporé dans Open Cooperative Computing (OCC)
  • 84.
    84 DOMS (Distributed Object DOMS(Distributed Object Management Systems)? Management Systems)?  DOMS fournit un ensemble diverses composantes ensemble, et de gérer leurs communications.  Les objectifs sont les suivants: - Un simple interface pour gérer la complexité d' environnement hétérogène - C'est un cadre de travail , basé sur le standard et l'extensibilité, permettant de construire , d'intégrer et de déployer les applications distribuées ouvertes. - Une méthode pour créer des applications clientes indépendantes du site où elles sont.
  • 85.
    85 DAE? DAE?  Distributed ApplicationEnvironment a été conçu pour développer des applications d'affaire sur les RISC System/6000 d'IBM et PS2.  DAE consiste (1) MESSAGING services; (2) DATABASE services; (3) PRESENTATION services; (4) DEVICE services.
  • 86.
    86 La vague duClient/Serveur La vague du Client/Serveur Serveurs de fichiers Serveurs de SGBD Distributed Objects 1982 1986 1995 1998 Groupeware
  • 87.
    87 DBMS DBMS  SQL? – Langagede requêtes intéractives – Langage de programmation de base de données – langage de définition de données et d'administration de données – langage des serveurs de base de données réseaux – Environement réseau multi-usager permettant la protection des données
  • 88.
    88 Les versions SQL Lesversions SQL SQL-89 SQL-92 SQL3 1995 SQL Intersection Enchassement Intégrité référentiel Connections BLOBs Join Operators Catalogs Dynamic SQL Intégrité de domaine Object SQL Stored Procedures Triggers User defined type CLI Sensitive cursors Multimédia
  • 89.
    89 Groupeware Groupeware  Documents multimédias Workflow  E-mail  Téléconférence  Planificateur de temps
  • 90.
  • 91.
    91 Les objets Les objets subselect.me sdfsdsadf asdfs df Gestion des objets Conception orienté objet Programmation orienté objet
  • 92.
    92 Les objets (suite) Lesobjets (suite) –La programmation orientée-objet La structure des données est cachée et tous les processus sont encapsulés comme des opérations sur des objets. – La gestion d’objets Les objets peuvent être presque n’importe quoi, incluant des fichiers, des ordinateurs, des organisations, des interfaces de services RPC, des imprimantes et des pays. Les objets peuvent être imbriqués à l’intérieur d’autres objets. La gestion d’objets est une approche commode pour le réseau étendu. –La conception orientée- objet La conception orientée-objet donne une conception de programmes du point de vue de l’utilisateur. Les objets sont des items qui apparaissent sur l’écran de l’utilisateur, comme les boites d’entrées, les boites à cocher, les boutons et les boutons radio. L’interface utilisateur est créée en premier, et est construite à l’intérieur d’un environnement de développement graphique.
  • 93.
    93 Le processus desélection Le processus de sélection des équipements des équipements  1. Faire la liste de tous les éléments que vous avez déjà et que vous allez garder : – Description du matériel et des logiciels, incluant les différentes versions. – La raison pour laquelle vous garder ces items. – Dates significatives; – Qui dans l’organisation choisit la technologie? – Qui la défend aujourd’hui? Répondez à cette question pour éviter des problèmes politiques potentiels.
  • 94.
    94 Le processus desélection des Le processus de sélection des équipements équipements  2. Faites la liste du nouvel équipement que vous devez obtenir. Inclure les raisons pour ces acquisitions spécifiques: – Relation stratégique – Directives corporatives – Requis pour que les composantes existantes fonctionnent  3. Faites la liste des items que vous ne pouvez acquérir, avec les raisons pour l’interdiction.  4. En travaillant dans les limites de ces trois listes, choisir les éléments que vous allez investiguer dans la conception de la plateforme de réseaux.
  • 95.
    95 Le processus desélection des Le processus de sélection des équipements équipements  5. Diviser le système dans des composantes physiques: – a. DBMS  Logiciel de serveur de base de données  Système d’exploitation  Matériel – b. Stations de travail  · Logiciel client  · Système d’exploitation  · Matériel – c. Plateforme de réseaux  Système d’exploitation de serveur de fichier  Matériel  Système de câblage  Cartes d’interface de réseaux (NIC)  Ponts, routeurs et passerelles  Système de reléve
  • 96.
    96 Sélection du Systèmede Sélection du Système de gestion de Base de Données gestion de Base de Données  Capacité du DBMS  Type de transaction  Commodité pour le serveur :  Système d’exploitation  Compatibilité avec la carte d’interface de réseaux (NIC)  Fiabilité du matériel  Error trapping  Compatibilité  Capacité du matériel  Bus  Vitesse
  • 97.
    97 Architectures des vendeurs Architecturesdes vendeurs  GUI  API (Application program interfaces)  Protocoles de réseaux  Gestion de système  Sécurité  Outils CASE (Computer-aided software engineering)  Gestion d’objet  DBMS
  • 98.
    98 OSF OSF  OSF (OpenSoftware Foundation) est un groupe de développeurs UNIX qui établit des standards en sélectionnant des implémentations spécifiques de technologie, le code, aussi bien que les spécifications et la documentation.  L’OSF a été formé pour garder le contrôle de la direction des systèmes ouverts hors des mains d’un seul.
  • 99.
    99 DCE DCE  Le DCEinclut les éléments suivant :  DECdns : Digital’s Distributed Name Services, une convention de nommage développée pour localiser des ressources et des usagers à travers des WAN  DIR-X : Siemen’s CCITT X.50 worldwide directory service  RPC : HP(Apollo) et DEC  Threads Service : DEC  Distributed Time Services : DEC
  • 100.
    100 Disponibilté de DCE Disponibiltéde DCE  IBM : DCE sur AIX v3.0 pour RS/6000 et AIX/ESA pour mainframe  HP : MPE/XL, HP-LJX, Domain/OS et OSF/L  Locus Computing : RPC test-and-validation suite  Banyan : support dans VINES pour permettre des clients DOS, Windows, OS/2 et Macintosh  NCR : DCE est incorporé dans Open Cooperative Computing (OCC)
  • 101.
    101 L’architecture client/serveur L’architecture client/serveur deDEC de DEC  Open Computing Environnement, est conçu pour supporter l’interopabilité entre des plates-formes hétérogènes.  DCE inclut plusieurs produits DEC : – DECdns – Threads Service – Distributed Time Service  Network Application Support (NAS) : – Services d’accès : définit l’accès usagers et l’accès application au autre applications – Services de communication : – Services d’information et de partage de ressources : – Services de systèmes : – UNIX, VMS, Macintosh, DOS, OS/2, Sun et SNA. Il supporte des BD multiples, incluant DB2, IMS, VSAM, Oracle, Rdb, RMS, Sybase et Apple DAL; et des réseaux multiples, incluant OSI, TCP/IP, DECnet, SNA, Microsoft LAN Manager, AppleTalk et NetWare.
  • 102.
    102 SUN SUN  Open NetworkComputing  Le RPC de Sun est licenciés par plus de 300 compagnies, incluant DEC, IBM et Apple Computer.  Les Transport Independent Remote Procedure Calls (TI-RPC) furent co-développés par Sun et AT&T. TI-RPC fonctionne de façon indépendante du réseau de transport sous-jacent, permettant les applications de rouler sans modifications sur des protocols de transport multiple incluant NetWare, PC/NFS, AIX/6000, Solaris, UNIX/SVR4 et AIX/ESA.  NetManage développa le ONC RPC-Dynamic Link Library, une implémentation de RPC/XDR sous Windows 3.0.

Notes de l'éditeur

  • #27 La téléinformatique ? Application du domaine de la télécommunication (transport des informations) au domaine de l'informatique (traitement de l’information). Réseau téléinformatique L'ensemble des liens de communication pour l'interconnexion de différentes unités . Les noeuds de communication peuvent être des passerelles , routeurs, des ponts, etc.
  • #29 Chaque couche contient un certain nombre de fonctions et les limites de chaque couche représente la démarcation entre chaque groupe de fonctions. la couche d’Application fournit des services de communication aux utilisateurs, la couche Présentation résoud les problèmes syntaxiques des données échangées, la couche Session organise le dialogue entre deux applications, la couche Transport pallie aux insuffisances de la couche réseau, la couche Réseau fournit les moyens de communication des données à travers le réseau, la couche Liaison s’assure de transférer les données sans erreur entre deux stations reliées entre elles par un lien physique, la couche Physique transmet les suites de bits sur un médium physique d’interconnexion.
  • #31 Selon OSI, un message issu de la couche Application d'un hôte A et envoyé vers un hôte B pourrait voyager comme suit: L'entête Hi est apposée au message et on passe le message à la couche inférieure l’entête Hi du message est enlevéé et on passe le reste à la couche supérieure
  • #32 Les couches la pile TCP/IP ne correspondent pas à celle d'ISO
  • #37 1) Combinaison entre la portion client de l'interface à l'avant plan qui interagit avec l'usager et un serveur en arrière plan qui interagit avec les ressources partagées. Le processus client contient une solution de sa logique spécifique et une fournit une interface à l'usager avec le reste de l'application. Le processus serveur gère les ressources partagées tel que les bases de données, les imprimantes, les modems, ou les puissants processeurs 2) Les tâches en avant plan et en arrière plan diffèrent fondamentalement aux niveaux des ressources informatiques: performance des processeurs, la mémoire, la vitesse des disques et leur capacité, les unités d'entrée/sortie. 3)L'environnement est typiquement hétérogène et multivendeurs. Les OS du client et du serveur ne sont pas les mêmes. Le matériel du client et du serveur sont différents. Les processus client et serveur communique à travers des API bien défini et standardisé (RPC) 4) Une importance caractéristique du C/S est sa mise à échelle. Elle peut être horizontale ou verticale. La mise à l'échelle horizontale veut dire que le retrait ou l'ajout d'un client a peut d'impact sur la performance. La mise à l'échelle signifie une migration vers un serveur des gros et performant serveurs ( multiserveurs).
  • #40 Ditributed Présentation: DP Remote Presentation: RP Distributed Business Logic: DBL Remote Data Base Management: DDM Distributed Data Management : DDM Combination DBL et DBL
  • #43 Les serveurs de fichiers et les serveurs de disques sont la simple forme de serveur. Cette forme de service requiert une large bande passante et perdre beaucoup de performance lorsque le nombre de client est important. Les LAN(Local Area Network)sont utilisées pour permettre de faire partagées des fichiers de données et des unités périphériques. NFS (Network File System)développé et sous licence de SUN. Novell Netware Banyan
  • #44 Pour les serveurs de bases de données , le client passe la requête SQL (Structured Query Language) en message au serveur et le résultats de la requête est retourné à travers le réseau. .
  • #50 SQL Server gère les taches de l'utilisateur, la mémoire et les données des unités physiques: utilisateurs multiples et tâches multiples bases de données multiples sur les disques multiples mapping d'objets logiques sur les données d'unités physiques mémoires caches de données et de procédures
  • #51 Microsoft SQL /Sybase SQL Os/2 plate-forme Transport Named pipe Support commit 2 étapes Supporte requêtes IBM DB2 IBM Extended Edition SQL Database Manager Oracle SQL OS/2, Unix, Novell, Vines VMS, MVS,.. SQL*Net transport: TCP,IPX,Vines, Pipes,Netbios Gupta SQL
  • #60 Pour les serveurs transactionnels, le client invoque une procédure à distance ( Remote procedure) qui résident sur le serveur laquelle peut aussi contenir un base de donnée SQL. Il y a un ensemble de d'étapes dans la procédure que le serveur doit exécuter dont une ensemble requêtes SQL qui doit soit réussir soit s'annuler en bloc. Les applications basées sur les transactions de serveurs sont appelé On-line Transaction Processing (OLTP). Ces applications sont habituellement critiques pourune organisation: les temps de réponses sont habituellement de 1 à 3 secondes, requière 100 du temps machines. On doit habituellement maintenir un contrôle serré sur l'intégrité de la base de donnée et de la sécurité.
  • #62 Atomicité: la transaction est une unité indivisible dans le traitement. Consistance: lorsque la transaction est terminée , elle laisse le système dans un état stable. Isolation: lorsque deux transactions s'exécutent en même temps, l'une n'affecte l'autre. Durabilité: effet d'un transaction est permanent après les (committements ), en cas de panne de système, la transaction survie (persistence).
  • #67 les serveurs d'applications ne sont pas nécessairement centrées sur les bases de données mais elles peuvent les utilisées pour les besoins de l'usager( chargées des données de la bourse). En se basant sur les ressources de base, le serveur permet au usagers de partager des données lorsque la sécurité et la gestion des services aussi basées sur le serveur.
  • #70 Objets: Combinaison de données et de fonctions qui ont des propriétés de polymorphisme, héritage et encapsulation. Object Brokers: Fournit le système distribué ultime . Il va permettre la découverte dynamique des objets et intervient entre les OS et les plates-formes. Objects Services: Permet de créer , gérer , nommer, déplacer, copier, enregistrer et rétablir des objets: Objects TP Monitors: Comme les Moniteurs transactionnels , il grée de façon flexible et puissante les transactions. Object Groupeware: La nouveau Groupeware sont construit de façon à allouer un espace aux objets, aux gestionnaires intelligent d'événements et les services de réplications. Object Database: L'objectif ultime des SGBD. Object Linking: C'est la technologie qui permet d'établir des liens (web ) `travers les documents. Objects Frameworks: c'est la technologie qui est supposé révolutionner la conception et la construction de système distribuer.
  • #71 CORBA est un ensemble standard de mécanismes permettant de nommer, de localiser et de définir des objets dans un environnement de traitement distribué. Entre autres termes, c’est un système orienté objet distribué basé sur le protocole d'objets des réseaux universels. Elle est définie par "object managment group" (OMG) qui est un consortium ouverts de 300 de vendeurs dont HP, IBM, Sun, NEC, Orbix, etc. L’objectif est de fournir un support pour utiliser et gérer des objets dans les systèmes distribués des machines hétérogènes et des systèmes d’exploitations. Ces objets peuvent être les composantes d'applications distribuées ou les applications elles-mêmes qui fournissent l'interface CORBA afin de permettre de l'utiliser par les programmes clients sur une même ou différentes machines dans les réseaux. En plus, le but technique est de prendre l'interoperabilité et la transportabilité d'intégration des applications par : • la terminologie unique pour orientée objet. • la plate-forme abstraite commune. • le modèle référence commun. • l'interfaces et protocoles communs.
  • #72 L'IDL(Interface definition language)Stubs (traduit terminaison) fournit une interface statique au services d'objets. Cette terminaison est précompilée, elle définit comment le client doit invoquer les services du serveurs. (IDL stubs: C, C++, Smaltalk, etc...). Le DII (Dynamic Invocation Interface ) permet de découvrir la méthode invoqué en pleine exécution. L'interface ORB consiste en un essemble d' API pour les services locauxde certaines applications.
  • #74 permettent l’exécution des procédures sur une machine distante. En d’autres termes, ils permettent de créer des programmes répartis en fournissant un mécanisme d’appel de procédures distant. But: Facilité facilité la transformation des applications locales en applications réparties; Distribution utiliser une application sur plusieurs machines; Transparence: appeler une procédure distante comme si elle était locale; Indépendance TCP, UDP, ISO TP4;
  • #77 SAA est une ensemble de logiciels d'interface, de règles(Conventions) et de protocoles qui sont utilisées pour le développement d'application intégrées et consistantes à travers les environnements d'IBM. Cette architecture est composées - Common User Access (CUA) définie les conventions de présentation et de comportement des GUI (Interface graphique des Usagers). - Common Programming Interface (CPI) fournit des langages, outils, et APIs qui permettent une plus grande portabilité des applications et plus de consistance des interfaces usagers à travers les différentes plate-formes. - Common Communication Support (CCS) supportent les standards de protocoles existants tel que LU 6.2. - Common Applications, développé par IBM, serve de démonstration des concepts de SAA et rendent plus facile la migration entre les systèmes.
  • #78 VITAL fournit les moyens de construire un système d'information à partir de modules généraux qui peuvent être réutilisées et partagées. On spécifie comment les construire et fournir l'interface pou chaque module. La pierre angulaire du système C/S de Apple est le langage Data Acees Language(DAL) .Dal consiste en des composantes logiciels que le client et le serveur inclue dans son système d'exploitation (système 7). Cette approche permet à différent client de communiquer avec différents serveurs. Avec DAL, Le changement de SGBD n'affecte l'avant plan qu'avec un remplacement par le lien DAL appropriée.
  • #79 Open Network Computing Le RPC de Sun est licenciés par plus de 300 compagnies, incluant DEC, IBM et Apple Computer. Les Transport Independent Remote Procedure Calls (TI-RPC) furent co-développés par Sun et AT&T. TI-RPC fonctionne de façon indépendante du réseau de transport sous-jacent, permettant les applications de rouler sans modifications sur des protocoles de transport multiple incluant NetWare, PC/NFS, AIX/6000, Solaris, UNIX/SVR4 et AIX/ESA. NetManage développa le ONC RPC-Dynamic Link Library, une implémentation de RPC/XDR sous Windows 3.0.
  • #80 NAS est une suite de logiciels qui permettent d'intégrer les applications sur des systèmes distribuées et multi-vendeurs: Les services NAS sont divisées dans les quatre groupes : - Application Access Services lesquels supporte l'interface usager (forms based, graphical ou character terminal based) - Services centraux et de (Communication and Central services) lesquels supportent les communications en utilisant la messagerie électronique et l'EDI - Ressources de partage et d'information(Information and resource sharing), lesquelles supportent l'accès aux base de donnée et les principaux les principaux document( création d'images, graphiques et du texte conventionnel) - Services d'accès au système(System Access services)lesquelles fournissent une interface standard au système d'exploitation.
  • #81 DCE l'environnement de traitement distribuées développé par Open Software Foundation. Le DCE inclut les éléments suivant : DEC dns : Digital’s Distributed Name Services, une convention de nommage développée pour localiser des ressources et des usagers à travers des WAN. DIR-X : Siemen’s CCITT X.500 worldwide directory service RPC : HP(Apollo) et DEC Threads Service : DEC Distributed Time Services : DTC Cell et Global Directory Services (CDS and GDS) DFS est une composante optionnel.