CORBA/SNMP DPNM Lab. POSTECH email : ymkang@postech.ac.kr
Motivation CORBA/SNMP CORBA/SNMP 2
Motivation CMIP, SNMP and CORBA high cost, low efficiency, complexity 3
Goal (Information Model) (Operation) CORBA/SNMP 4
(1) - Network Management,,,, Internet (SNMP), OSI (CMIP) SNMP, Fault Configuration Account Performance Security Request Manager Agent MIB Response 5
(2) - CORBA Client Object Implementation Interface Dynamic Client Repository InvocationIDL Stub ORB Interface Static Skeletons Dynamic Skeleton Invocation Object Adapter Implementation Repository Object Request Broker Core 6
(3) - CORBA Common Object Services Application 16 service Property service Naming service Event service Life Cycle service 7
(4) - JIDM Joint Inter-Domain Management (JIDM) Group CMIP, SNMP CORBA Specification Translation (ST) ASN.1 to IDL, GDMO to IDL, SMI to IDL Interaction Translation (IT) CMIP to IDL, SNMP to IDL 8
(5) - Smile & UHC product Smile Company UH Communication GDMO/ASN.1 SNMP MIB IDL Specification GDMO CORBA-based Management Application IDL ORB GDIDL SNMPIDL IDLGD IDL Specification IDL Specification GDMO Specification GDMO to IDL compiler Mapping Information CORBA/CMIP gateway TMN agents 9
(6) - Subrata Mazumdar s work CORBA/SNMP smi2idl Java Web-based Management SNMP MIB IDL SNMP Web (Java Applet) C++ Application ORB COSS Gateway SNMP API DII DSI BOA Naming Event IFR 10
(1) (Information Model Translation) Source model Destination model. (Information Model Mapping) ) IBM System Agent View 11
(2) (Direct Translation) (Syntax Translation) (Abstract Translation) (Semantic) 12
CORBA/SNMP (1) 13
CORBA/SNMP (2) CORBA/SNMP CORBA => IDL CORBA/SNMP SNMP Get/Set operation SNMP Trap(Notification) operation 14
CORBA/SNMP (3), SMI IDL : JIDM ST. 15
CORBA/SNMP (4) + Source Information Definition Translator Intermediate File User Interface Destination Information Definition Management Information 16
CORBA/SNMP (5) SNMP MIB CORBA IDL SNMP MIB MIB Group Module Interface SMI->IDL Compiler Variable of a group Entry of a table Variable of a table Attribute of its interface Interface Attribute of its interface ASN.1 types MACROs IDL file Trap(Notification) 17
CORBA/SNMP (6) FIZ-MIB DEFINITION ::= BEGIN eval OBJECT IDENTIFIER={bin 2} evalslot OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION ::= {eval 1} evaltable OBJECT-TYPE SYNTAX SEQUENCE OF EvalEntry MAX-ACCESS not-accessible STATUS curren DESCRIPTION ::= {eval 2} END Module FIZ-MIB { const ASN1_ObjectIdentifier eval; interface eval : SNMPMgmt::SmiEntry{ /* DESCRIPTION */ readonly attribute ASN1_Integer evalslot /* DESCRIPTION */ SNMPMgmt::SmiTableIterator get_eval Table(); }; }; // End of FIZ-MIB module 18
CORBA/SNMP (7) JIDM. SNMP Action SNMP Action. 19
CORBA/SNMP (8) A IDL file using Direct Translator Super class : User Interface New Superclass concept SNMP Action CORBA method Explicit action definition Other management information Result IDL file 20
CORBA/SNMP (9) : IDL. Action CORBA method (Inheritance) (Aggregation) OMT notation IDL. 21
system sysdescr : string sysobjectid:oid sysuptime :TimeTicks sysname : string... interfaces ifindex:integer ifdescr : string iftype : integer ifspeed : Gauge... ip ipforwarding:integer ipdefaultttl:integer ipreasmtime:integer ipreasmreqds:counter Sun sunhostperf rsuserprocesstime:counter rsnicemodetime:counter rsidlemodetime:counter rsdiskxfer1:counter... interfaces ifnumber:integer ifindex : integer ifdescr : string iftype : integer sunsystem agentdescr :string hostid : string motd : string unixtime : Counter... Common In/Out Packets : counter Ucast : counter Nucast : counter Discards : counter Errors : counter... ip ipforwarding :integer ipdefaultttl :integer ipreasmtime:integer ipreasmreqds:counter Forwarding() not_forwarding() sunsystem agentdescr:string hostid : string motd :string UnixTime:counter sunhostperf systemprocesstime:counter IdleModeTime:counter NiceModeTime:counter Diskxfer1 : counter 22
CORBA get/set SNMP GET/SET SNMP Agent CORBAbased Manager O R B SNMP/ CORBA Gateway Trap Notification Service Notification(trap) handler 23
Gateway IDL CORBA Management Application Request Response Events MIB Repository CORBA Request Handler SNMP Request Response Traps SNMP Agent SNMP Trap Handler 24
CORBA/SNMP Sun Ultra 1, Solaris 2.5 Iona Orbix 2.3 flex, yacc, C, C++ : SnmpIDL + : COS service (Naming & Event service), SNMP API 25
(1) 3. get()/set() SNMP SNMP Agent CORBAbased Manager 1. bind () CORBA Request Management Module Trap 2. create() SnmpMoFactory Notification Service Notification(trap) handler 26
(2) MoFactory_var var; CORBA::Object* ptr; RFC1213_MIB::system* ptr2; Char* host_name="tigris"; Char* community="public"; //Step 1 var = snmpmoproxyfactory::_bind(); //Step2 ptr = var->create("system"); ptr2= RFC1213_MIB::system::_narrow(ptr); //Step3 ptr2->host(host_name); ptr2->community(community); //Step4 cout << "sysname= "<< ptr2->sysname() << endl; cout << "syscontact= "<< ptr2->syscontact() << endl; cout << "sysdescr= "<< ptr2->sysdescr() << endl; cout << "sysobjectid= "<< ptr2->sysobjectid() << endl; cout << "syslocation= "<< ptr2->syslocation() << endl; cout << "sysservices= "<< ptr2->sysservices() << endl; } ptr-> delete( ptr2); 27
CORBA CORBA/CMIP, CORBA/Proprietary Proxy Coordinator non CORBA prototype 28