Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parTristan Martin Modifié depuis plus de 9 années
1
T A L E N T E D T O G E T H E R 1 Titre de la présentation / date Ultra CORBA Simulator (UCS) v1.1.3 Simulation d’un client ou d’un serveur CORBA Auteur : Motte Nicolas (lingusinpg@gmail.com)lingusinpg@gmail.com 30 Août 2007
2
2 Titre de la présentation / date Sommaire I – Description II – Installation III - Présentation III – UCS Servant Side IV – UCS Client Side
3
3 Titre de la présentation / date Simulateur de client ou de serveur CORBA Complet et simple d’utilisation Seul simulateur opensource Disponible sur http://sourceforge.net/project/downloading.php?group_id=201026& use_mirror=ovh&filename=UCSV1.1.2.zip&14224593 http://sourceforge.net/project/downloading.php?group_id=201026& use_mirror=ovh&filename=UCSV1.1.2.zip&14224593 En cas de problème, contactez ucs_2008@hotmail.com, ils répondent très vite et sont ravis d’apporter leur aide (ou nicolas.motte087@orange.fr)ucs_2008@hotmail.com I - Description
4
4 Titre de la présentation / date II - Installation Télécharger le zip sur sourceforge (v1.1.3 ou +) Décompresser (unzip UCSVx.x.x) Se placer dans le répertoire UCSVx.x.x (cd UCSVx.x.x) Éditer le fichier ucs.sh (pour Unix) ou ucs.bat (pour Windows) Modifier les variables JAVA_HOME et CUR_DIR
5
5 Titre de la présentation / date III - Présentation Lancer UCS (source ucs.sh) Ouvrir un nouveau projet (New Project) Il faut ensuite placer manuellement toutes les fichiers *.idl dans le répertoire ~/UCSVx.x.x/projects/nomDuProjet/idl/ Dans UCS il faut reloader le projet pour voir les interfaces (Project/Reload)
6
6 Titre de la présentation / date III - Présentation Voilà ce que l’on a à l’écran Interface IDL Files Common Output Client Output Server Output Notification Output IdlBrowser OperationEntry OperationFlow SpecGeneration NtfManager MsManager Boutons I_x Boutons O_x
7
7 Titre de la présentation / date III - Présentation Interface : Ce sont toutes les interfaces qui ont été placé dans le répertoire ~/UCSVx.x.x/projects/nomDuProjet/idl/. En sélectionnant une interface dans cet onglet, on active les Boutons I_x. En sélectionnant une méthode dans une interface, on active les Boutons O_x.Cet onglet est en rapport avec les onglets OperationEntry et OperationFlow. Idl Files : On y trouve le code de description des idl chargées. En cliquant sur une des idl, on voit le code apparaître dans l’onglet IdlBrowser IdlBrowser : Cet onglet permet de lire le code de l’idl sélectionnée dans l’onglet Idl Files OperationEntry : Après avoir sélectionné une méthode dans une une interface dans l’onglet Interface, on peut remplir les champs de cette méthode dans cet onglet (en cliquant simplement sur chaque paramètre) OperationFlow : Cet onglet permet de créer une batterie de test, on charge toutes les méthodes a appeler puis UCS les exécute toutes les unes à la suite des autres (clic droit puis AddOperation puis ExecuteOperationFlow)
8
8 Titre de la présentation / date III - Présentation SpecGeneraiton : Cet onglet permet de choisir quelle interface on souhaite rendre accessible NtfManager : Permet de connecter une NotificationFactory (clic droit puis ConnectNotificationFactory) NsManager : Permet de connecter un Naming Service (clic droit puis ConnectNamingService) Boutons I_x : I_1 permet de lier une IOR à une interface, I_2 permet de générer l’IOR d’une interface (disponible dans la Common Output), I_3 supprime tous les servants et I_4 permet de supprimer un servant lié à une interface. Boutons O_x : O_1 appelle la méthode sélectionnée, O_2 sauvegarde la méthode sélectionnée et tous ses paramètres, O_3 load une méthode sauvegardée auparavant Common Output : On y trouve les IOR générées, les servants liés aux interfaces, le résultat des appels de méthodes (success ou failure)
9
9 Titre de la présentation / date III - Présentation Client Output : Paramètres envoyés et reçus lorsque UCS fonctionne en Client Server Output : Paramètres envoyés et reçus lorsque UCS fonctionne en Serveur Notification Output : Affiche les alarmes reçues par UCS lorsqu’il fonctionne en Client
10
10 Titre de la présentation / date IV – UCS Servant Side Pré requis : L’AM est compilé, l’EMS est créé avec un emsname et un nspath, il fait partie d’un domain, lui-même associé à un OC. Note : Tous les exemples respectent le standard MTNM, les interfaces seront différents dans le cas du standard 3GPP mais le principe reste le même Étape 1 : Binder un objet avec l’IOR de l’emsSessionFactory::EmsSessionFactory_I dans le Naming Service Connecter le Naming Service Dans l’onglet NsManager, clic droit, connectNamingService, sélectionner un fichier qui contient l’IOR du Naming Service Binder un object Descendre dans l’arbre du Naming Service jusqu’à la branche TMF_MTNM.Class/HUAWEI.Vendor/Huawei/T2000.EmsInstance/2.0.Version/ puis clic droit sur « 2.0.Version » et sélectionner « Bind Object ». Il suffit d’entrer le nom de l’objet et l’IOR de l’EmsSessionFactory générée par UCS (I_1 après avoir cliquer qur l’interface, l’IOR s’affiche dans Common Output). Attention, cela doit s’accorder à l’emsname de l’EMS créé. Par exemple, si on créé un ems (manage create mtnm_system toto) avec emsname=/iManager.ns et que iManager.ns contient TMF_MTNM.Class/HUAWEI.Vendor/Huawei\/T2000.EmsInstance/2\.0.Version/titi, il faut que l’objet que l’on bind dans le Naming service s’appelle titi (Remarque : les « \ » sont nécessaires dans le fichier ~/iManager.ns) Note Importante : Lorsque l’on copy/paste une IOR, il est très fréquent que des caractères se rajoutent à la fin de l’IOR (/n ou /r) rendant l’IOR inutilisable, il est conseillé de copier/coller tous les caractères de l’IOR sauf le dernier et d’écrire le dernier caractère manuellement.
11
11 Titre de la présentation / date IV – UCS Servant Side Étape 2 : Suivre le protocole de connexion Générer (I_2) puis donner l’IOR de l’emsSession::EmsSession_I dans la méthode getEmsSession (champ out emsSessionInterface) de l’interface emsSessionFactory::EmsSesisonFactory_I Générer (I_2) puis donner l’IOR de CosNotifyChannelAdmin::EventChannel dans la méthode getEventChannel (champ out EventChannel) de l’interface emsSession::EmsSession_I Générer (I_2) puis donner l’IOR de CosNotifyChannelAdmin::ConsumerAdmin dans la méthode _get_default_consumer_admin (champ out EventChannel) de l’interface CosNotifyChannelAdmin::EventChannel (possible dans la version 1.1.3 ou dans la version 1.1.2 après mise à jour du fichier CorbaMNQ.jar (voir README dans G:\NetworkServiceManagement\DIA\On Going\CorbaSimulator\) Générer (I_2) puis donner l’IOR de CosNotifyChannelAdmin::StructuredProxyPushSupplier dans la méthode obtain_notification_push_supplier (champ out return ProxySupplier, mettre le champ out proxy_id à 0) de l’interface CosNotifyChannelAdmin::ConsumerAdmin
12
12 Titre de la présentation / date IV – UCS Servant Side Étape 3 (facultative) : GetManager, cette étape fournit des informations facultatives au client Mise en forme du problème : Dans le protocole de connexion, le client (TeMIP) appel plusieurs fois d’affilé la méthode getManager de l’interface emsSession::EmsSession_I. Le client s’attend à recevoir successivement les IOR des interfaces emsMgr::EmsMgr_I, managedElementManager::ManagedElementMgr_I, protection::ProtectionMgr_I, maintenanceOps::MaintenanceMgr_I, equipement::EquipementInventoryMgr_I, guiCutThrough::GuiCutThroughMgr_I. Or UCS ne peut renvoyer qu’un seul IOR. Il faut donc intégrer ces IOR directement dans le fichier mtnm_base.cxx dans le dossier Src de l’AM.
13
13 Titre de la présentation / date IV – UCS Servant Side Étape 4 : Connexion Côté client (TeMIP) Manage resume mtnm_system NomDeLEMS Côté Serveur (UCS) On peut voir dans l’onglet Server Output toutes les méthodes appelées, les paramètres in et out. Il faut récupérer les IOR envoyées par le client (il y en a 2) et les liées aux interfaces nmsSession::NmsSession_I et CosNotifyComm::StructuredPushConsumer Le client et le serveur sont maintenant connectés.
14
14 Titre de la présentation / date IV – UCS Servant Side Étape 5 : Envoi d’alarmes L’envoi d’alarmes s’effectue sur l’interface CosNotifyComm::StructuredPushConsumer à l’aide de la méthode push_stuctured_event. Pour que l’alarme soit prise en compte par TeMIP, elle doit respecter une certaine norme.
15
15 Titre de la présentation / date V – UCS Client Side En récupérant l’IOR d’une interface et en la liant à une interface de UCS (clic sur l’interface puis I_1), on peut effectuer tous les get sur l’interface d’un EMS. En suivant le protocole de connexion entre un client et un serveur, on peut donc connecter UCS à l’EMS et recevoir les alarmes dans l’onglet Notification Output.
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.