Upload
roul-hubert
View
105
Download
0
Embed Size (px)
Citation preview
Pierre Lancastre - Frédéric Anjubault
Option ILR – 24 Mars 2006
ENIC Telecom Lille 1
PLAN
Présentation de JAIN SLEE Fonctionnement de JAIN SLEE Les avantages de JAIN SLEE Quelques Exemples
Présentation de JAIN SLEE
Pierre Lancastre - Frederic Anjubault | Telecom Lille - Option ILR - Mars 2006
3
Client/Server
Contexte actuel : convergence IT/Telecom
Serveur d’applicationJ2EE
Serveur d’AppelJAIN SLEE
Réseau Intelligent
TELECOMS
IT
NextGenerationService
Pourquoi JAIN SLEE ? De nombreuses contraintes
Actuellement, il existe de nombreux inconvénients pour les opérateurs :
Les applications sont liées aux équipements réseaux
L'equipement réseau est un environnment clos Coûts importants pour les nouvelles
applications Coûts importants pour les opérateurs multi-
réseaux
Présentation de JAIN SLEE
Pourquoi JAIN SLEE ? Une réponse adaptée
Permet de créer des applications portables à travers les différents réseaux et protocoles
Offre un environnement ouvert et standard
Permet de réduire les coûts de développement et le temps de mise sur le marché grâce aux standards
Permet une utilisation et un dévelopement dans un environnement multi-vendeurs, multi-marques
Présentation de JAIN SLEE
Qu'est-ce que JAIN ?
JAIN = Java API for Integrated Networks
La technologie JAIN : Applications Java pour serveurs de communication Applications Java pour des interfaces de
communication
Portabilité : ”Write Once, Run Anywhere”
Indépendance du réseau : ”Any Network”
Interface de développement ouverte ”By Anyone”
Technologie développée et spécifiée par des experts industriels
Présentation de JAIN SLEE
La communauté JAIN
Présentation de JAIN SLEE
SUN VODAFONE OPEN CLOUD NTT GROUP …
Qu'est-ce que SLEE ?
Faible latence, environnement haut débit, géré par le traitement d'évènements : Latence < 100 ms 100 à 1000 évènements par seconde
Service orienté évènements/messages
Créer en 1998 pour des demandes d’application dans le domaine des telecoms
Présentation de JAIN SLEE
SLEE = Service Logic Execution EnvironmentService d’exécution avec gestion par évènements
Qu'est-ce que JAIN SLEE ?
• Fournit un framework pour des services portables
• Comparable à Java Bean Enterprise
• Infrastructure abstraite sous-jacente avec l’utilisation des Ressource Adaptors (RA)
• Support intégré pour une grande disponibilité et adaptabilité
Présentation de JAIN SLEE
Basé sur le langage Java
Communauté de développeurs très importante (>1000)
Modulaire, basé sur des exécutions transactionnelles et un modèle composants/conteneurs
PLAN
Présentation de JAIN SLEE Fonctionnement de JAIN SLEE Les avantages de JAIN SLEE Quelques Exemples
Présentation de JAIN SLEE
Architecture de JAIN SLEE
Fonctionnement de JAIN SLEE
Les types de composants
Fonctionnement de JAIN SLEE
SBB et les services
Un SBB peut contenir une ou plusieurs instances de SBB
ou différents types de SBB.
Le même SBB peut être inclus dans plusieurs services
Les SBB fonctionnent sur la réception d'évènements
Fonctionnement de JAIN SLEE
SBB : Service Building BlockComposant logiciel en java
Service de type programmatique
Gestion du flux d'activité La gestion des évènements se fait à travers le flux d’activités
Exemples d’évènements :
Appel d’objets, émission d’appel, connexion, déconnexion,
Localisation de portables, report d’objet, emission de mis à jour de la localisation
Les évènements sont transmis aux entités SBB concernées
Fonctionnement de JAIN SLEE
Flux d'activité - Contexte Principe : les évènements sont notifiés et transportés à
travers un canal d'évènements
Les entités SBB recoivent seulement les évènements concernant leur contexte d'activité
Fonctionnement de JAIN SLEE
Abstraction du réseau : comment ?
Fonctionnement de JAIN SLEE
Que se passe t’il en cas de coupure ?
• Réplication d’état- Possibilité d’accéder à un état persistant d’un autre nœud
- Sémantique transactionnel- Atomicité : les opérations sont soit réussies soit échouées- Isolation : similaire à des ordres d’exécution en série- Automatisme : pas de transaction API (JTA non requis)
• Les exceptions gèrent les retour arrière
Fonctionnement de JAIN SLEE
Pierre Lancastre - Frederic Anjubault | Telecom Lille - Option ILR - Mars 2006
18
SBB Container
Reso
urce
Adapto
r Fram
ew
ork
Couche Réseau
Resource Adapter
X
SBB
SBB
X
JAIN SLEE 1.0
Xpublic void onEventA(EventA e, AcitivtyContextInterface aci) { doWork(e);}
public void onEventA(EventA e, AcitivtyContextInterface aci) { doWork(e);}
public void onEventB(EventB e, AcitivtyContextInterface aci) { doWork(e);}
public void onEventB(EventB e, AcitivtyContextInterface aci) { doWork(e);}
Exemple de fonctionnement de JAIN SLEE
Framework.activityCreated(activity);Framework.activityCreated(activity);
Framework.sendEvent(activity, eventA);Framework.sendEvent(activity, eventA);
Framework.sendEvent(activity, eventB);Framework.sendEvent(activity, eventB);
Pierre Lancastre - Frederic Anjubault | Telecom Lille - Option ILR - Mars 2006
19
PLAN
Présentation de JAIN SLEE Fonctionnement de JAIN SLEE
Les avantages de JAIN SLEE Quelques Exemples
Présentation de JAIN SLEE
J2EE / JSLEE
Les avantages de JAIN SLEE
J2EE
Majorité d'invocations en mode synchronisé
Utilisation d'objets/composants lourds
"Utilisation fréquente de bases de données pour stocker les informations "
"Les accès aux bases de données requièrent de lourds traitements CPU. "
Pas de comportement temps réel
Faible nombre de noeuds dans les clusters
JSLEE
Majorité d'événements, messages en mode asynchrone
Utilisation d'objets légers d'une faible durée de vie
"Une multitude de sources de données (stockage confié aux API) "
"Traitement rapide de transactions légères et traitement intensif des états de transition "
Comportement temps réel « léger »
Grand nombre de nœud dans les clusters
JSLEE par rapport à J2EE
JSLEE est un modèle de composant spécialisé pour les applications « event driven »
JSLEE reprend les concepts stricts et fiables testés dans le monde de l'entreprise par les EJB JSLEE est comparable à la plateforme J2EE mais ne fait pas partie de ce modèle de composants.
JSLEE est concu pour les applications orientées événement qui requièrent de faibles temps de réponses et un haut débit.
Les avantages de JAIN SLEE
J2EE ou JSLEE?
Les implémentations JSLEE sont utilisées pour fournir de hautes performances dans les réseaux de communication
Les avantages de JAIN SLEE
Les implémentations J2EE sont utilisées pour fournir de hautes performances dans des réseaux d'entreprise
Aujourd'hui, les implémentations J2EE ne sont pas capables de fournir les performances requises pour un réseau de communication
Aujourd'hui, les implémentations JSLEE ne sont pas capables de fournir les performances requises pour un réseau d'entreprises
JSLEE
J2EE
Les avantages de JAIN SLEE
J2EE ou JSLEE : illustration
Valeur ajoutée de JSLEE
Puissant modèle de composants pour la gestion d’évènements
Support du mode asynchrone
Gestion de composants d’événements à l’aide d’interfaces fortement typées (standardisation)
Les avantages de JAIN SLEE
PLAN
Présentation de JAIN SLEE Fonctionnement de JAIN SLEE Les avantages de JAIN SLEE Quelques Exemples
Présentation de JAIN SLEE
Exemples d’applications
Services réseaux Services prépayés VPN (Réseaux Privés Virtuels) Messagerie instantanée (SMS)
Contrôles réseaux “IP Multimedia Subsystem” (IMS) (comme SIP o) Contrôle d’appel Réseaux de nouvelle génération (Voix sur IP, 3G, etc..)
Services prépayés
Quelques Exemples
Call Control APIAccountManager API
PSTNMobile
AccountManager RA
SLEE
ComponentContainer
SBBInstance A
Timer Facility
SBBInstance B
PrePaidChargingService
Profile Table
Mobile CC RA Fixed CC RA
AccountManager
A B
Contient pour chaque n° de Tel la grille tarifaire et le n° de compte associé
Start Call AStart Call
Consult. Tarif
Fetch Workmoney
Arm Timer
Evenements périodiques
Timer
Exemple d’application : le service prépayé
Call Control APIAccountManager API
PSTNMobile
AccountManager RA
SLEE
ComponentContainer
SBBInstance A
Timer Facility
SBBInstance B
PrePaidChargingService
Profile Table
Mobile CC RA Fixed CC RA
AccountManager
A B
Stop Call BStop Call
Cancel Timer
Exemple d’application : le service prépayé
Call Control APIAccountManager API
PSTNMobile
AccountManager RA
SLEE
ComponentContainer
SBBInstance A
Timer Facility
SBBInstance B
PrePaidChargingService
Profile Table
Mobile CC RA Fixed CC RA
AccountManager
A B
Refund Leftover
Exemple d’application : le service prépayé
Call Control APIAccountManager API
PSTNMobile
AccountManager RA
SLEE
ComponentContainer
SBBInstance A
Timer Facility
PrePaidChargingService
Profile Table
Mobile CC RA Fixed CC RA
AccountManager
A
Exemple d’application : le service prépayé
Call Control APIAccountManager API
PSTNMobile
AccountManager RA
SLEE
ComponentContainer
SBBInstance A
Timer Facility
PrePaidChargingService
Profile Table
Mobile CC RA Fixed CC RA
AccountManager
A
Exemple d’application : le service prépayé
Call Control APIAccountManager API
PSTNMobile
AccountManager RA
SLEE
ComponentContainer
Timer Facility
PrePaidChargingService
Profile Table
Mobile CC RA Fixed CC RA
AccountManager
Exemple d’application : le service prépayé
Exemples d’applications
Services réseaux Services prépayés VPN (Réseaux Privés Virtuels) Messagerie instantanée (SMS)
Contrôles réseaux “IP Multimedia Subsystem” (IMS) (comme SIP o) Contrôle d’appel Réseaux de nouvelle génération (Voix sur IP, 3G, etc..)
Quelques Exemples
Une technologie d’avenir
Conclusion
Solution Open Source présentant une grande interopérabilité (J2EE, CORBA, ...)
Communauté de développeurs en pleine expansion ( Mobicents, Open Cloud, ...)
Succés d’implémentation chez de grands opérateurs (Vodafone, NTT DoCoMo, Telco, …)
JAIN SLEE
Plus d’informations sur JAIN SLEE http://www.jainslee.org "JAIN and Java in
Communications." Sun Microsystems. March 2004. JAIN API Specifications, 2003and 2004:
java.sun.com/products/jain/api_specs.html Ferry, D.; Page, D.; Lim, S.; and O'Doherty, Phelim.
2003. "JAIN SLEE Tutorial." Sun Microsystems: jainslee.org/downloads/jainslee-tutorial-04.pdf
Bibliographie Rava Jain -Programming Converged Network. Wiley.USA
: 2005, 267 pages. ISBN 0-471-26801-1
Quelques références