corba-based performance management system - … · • system architecture • function block...
TRANSCRIPT
2000 OMG Embedded Object-based Systems Workshop 1 12/22/2000
CORBA-based Performance Management System
Bing LengLucent Technologies
January 18, 2001
2000 OMG Embedded Object-based Systems Workshop 2 12/22/2000
Outline • Objectives• Scope• Design• Implementation• Examples• Performance Evaluation• Conclusion & Next Steps
2000 OMG Embedded Object-based Systems Workshop 3 12/22/2000
Objectives• Assess the applicability of CORBA in Telecom
Network Management– Verify the information model– Verify the mapping to proprietary interface– End-to-end connection– Performance/Scalability
2000 OMG Embedded Object-based Systems Workshop 4 12/22/2000
Performance Management Requirements• Monitor real-time traffic (calls/packets/cells)• Control network traffic congestion• Provide "agreed-upon" Quality of Service
2000 OMG Embedded Object-based Systems Workshop 5 12/22/2000
CORBA PM Information Model
• Based on T1M1 CORBA NM Framework guideline• Inherited from X.721 and M.3100 IDL model• Includes X.739, X.738, Q.822, and Q.823• Key Objects:
– Scanner, Simpler Scanner– Current Data, History Data, Threshold Data– State Indicator– Traffic Controls
2000 OMG Embedded Object-based Systems Workshop 6 12/22/2000
Scope• 30-second Discrete Data
– status discretes - indication of problem at the office, or routine status advisories– configuration change discretes - indication of surveillance and control changes in the
office,
• 5-minute Measurements– office (machine) data - various office-wide counts on total traffic at the office, total
processor load– trunk group data - peg count, incoming and outgoing calls per circuit hour, – control data - total number of controls in effect on an office, attempts and successes on
call gaps and reroutes
• Traffic Control– manual control - destination code control
2000 OMG Embedded Object-based Systems Workshop 7 12/22/2000
Design• System Architecture• Function Block Diagram• Interface Inheritance Hierarchy• Interface Examples• Naming Tree• POA Structure• POA Policies
2000 OMG Embedded Object-based Systems Workshop 8 12/22/2000
System Architecture
X.25/OSIX.25/OSI
SwitchSwitch
ODBCODBC&&
SocketSocket
HTTPHTTP
CORBA Server & Web ServerCORBA Server & Web Server
Web BrowserWeb Browser
IIOPIIOP
2000 OMG Embedded Object-based Systems Workshop 9 12/22/2000
Function Block Diagram
NT StationWindows NT 4.0System
Platform
PM Prototype SystemPM Prototype System
CORBA ServerX.721- Q.823Data Model
(ITU-T)
OMG CORBACompliant
Follow ITU-TX721 - Q823
WebServer
javaapplet
Performance Data
CGI
CORBAClient
DataBaseManagement
SwitchConnectivity
the CoreProject
Switch
SwitchMediation
ModuleX.25
ManagementWork Stations
Web Browser
X721,M.3100,X.739, X.738Q.822, Q823
CORBA IDL/IIOPHTML/HTTP
TCP/IP
javaapplet
HTML
CORBANaming Service
2000 OMG Embedded Object-based Systems Workshop 10 12/22/2000
Interface Inheritance HierarchyCORBA::Object
ITU_X721::ManagedObject
ITU_M3100::ManagedElement
ITU_M3100::CircuitEndPoint-Subgroup
ITU_Q823::TmCircuitEndPoint-Subgroup
ITU_Q823::TrafficControl
ITU_Q823::DestinationCodeControl
ITU_X739::Scanner
ITU_X738::HomogeneousScanner
ITU_X738::SimpleScanner
LucentEss::QueryScanner
ITU_Q822::CurrentData
ITU_Q823::ExchangeCurrentData
ITU_Q823::TrafficControl-CurrentData
ITU_Q823::CircuitEndPoint-SubgroupCurrentData
ITU_Q823::StateIndicator
ITU_Q822::ThresholdData
ITU_Q823::CongestionLevel-Indication
ITU_X721::ManagedObjectFactory
LucentEss::DestinationCodeControlFactory
LucentEss::TrunkGroupSet-FactoryITU_X721::
TerminatorService
LucentEss::DestinationCodeControlTerminator
LucentEss::TrunkGroupSet-Terminator
NOTES:1. Add activateQueryReport( st_time, interval) operation2. Add activateHistoryReport(st_time, interval) operation3. Add accumulated counter attributes
1
3
LucentEss::TrunkGroupSet
2
LucentEss::QueryScannerFactory
LucentEss::QueryScanner-Terminator
2000 OMG Embedded Object-based Systems Workshop 11 12/22/2000
Interface Example 1: Scanner
Inherited From: Managed Object Attributes:
Administrative State:[RW] activates and deactivates (administratively suspending the scanner fromemitting PM summary reports) the function performed by the scanner. Operational State:[R] identifies whether or not the scanning function represented by this entity iscapable of performing its normal functions. Availability State:[R] identifies whether a scanner is on duty or not. Granularity Period:[RW] specifies the time between scans (e.g., retrieve PM data every 24 hours). Start Time:[RW] defines the date and time at which this scanner starts functioning. Stop Time:[RW] defines the date and time at which this scanner stops functioning.
Notifications: Attribute Value Change:State Change:
2000 OMG Embedded Object-based Systems Workshop 12 12/22/2000
Interface Example 2: CurrentDataInherited From: ScannerAttributes:
Granularity Period:[R] inherited from Scanner, specifies the PM parameters collection period (5minutes, 15 minutes, 1 hour, or 24 hours).Suspect Interval Flag:[R] indicates that the performance data for the current period may not bereliable, or the NE was unable to collect data (‘True’). For reliable data the value of this attribute is‘False’.Elapsed Time:[R] represents the difference between the current time and the start of the presentsummary interval.Threshold Data Instance:[R] * identifies the Threshold Data entity which contains the thresholdvalues for the performance monitoring data collected by this entity. Initially this attribute identifies aThreshold Data entity that contains default threshold values.History Retention:[RW] specifies the history data retention time for History Data entity (7 days of 5minutes, 15 minutes, 1 hour, or 24 hours intervals, ).
Notifications: Quality of Service Alarm:
2000 OMG Embedded Object-based Systems Workshop 13 12/22/2000
Interface Example 3: SimpleScanner Inherited From: Homogeneous Scanner Attributes:
Once Report Attribute Id List:[RW] contains a set of attribute Ids. The value of the attributesidentified shall be included only once in the summary report if they have the same value across allthe observed objects. Numeric Attribute Identifier Array:[RW] contains a numeric array of attribute identifiers forreporting purposes.
Actions: Activate Scan Report: initiates a scan according to the current entity and attribute selectionattributes of the scanner. The reply includes all scanned attribute values.
Notifications: Scan Report: emitted upon completion of a scan, and includes the name of the observed objects and requested attribute values observed during the scan.
2000 OMG Embedded Object-based Systems Workshop 14 12/22/2000
Naming Tree
TOLLCONN
IN/SSP
MyQueryScanner
ITU_Q823::CircuitEndPointSubgroupCurrentData
<EssName>
ITU_Q823::DestinationCodeControl
<root>
dcc01 dcc64object
ITU_Q823::TmCircuitEndPointSubgroup
tg0001 tg1999object
LucentEss::QueryScanner
ITU_X721::ManagedObjectFactory
ITU_M3100::ManagedElement
ITU_X738::SimpleScanner
LucentEss::TrunkGroupSet
LucentEss::TrunkGroupSetFactory
LucentEss::DestinationCodeControlFactory
ITU_Q823::StateIndicator
ITU_Q823::ExchangeCurrentData
ITU_Q823::CongestionLevelIndication
ITU_Q823::TrafficControlCurrentData
AllDccObject
AllDccTrafficData
AllTgSetObjectNaming Context
Binding to Naming Context
Binding to gereanl object
Binding of the specific name 'object'
Legends:
"object"
LucentEss::QueryScannerFactory
ITU_X721::TerminatorService
LucentEss::TrunkGroupSetTerminator
LucentEss::DestinationCodeControlTerminator
LucentEss::QueryScannerTerminator
2000 OMG Embedded Object-based Systems Workshop 15 12/22/2000
POA Structure
TG POAw/ Default_Servant
DCC POAw/ Default_Servant
TG_Data POAw/ Default_Servant
DCC_Data POAw/ Default_Servant
ESS POAw/ Active_Map
Factory POAw/ Active_Map
Scanner POAw/ Active_Map
ROOT POA
NOTE: Use a single POA manager for all the POAs
2000 OMG Embedded Object-based Systems Workshop 16 12/22/2000
Polices for Map-type POAPolicy T yp e Polity V alu e C om m en tsL ifespanP o licy P E R S IST E N T S erver need s C O R B A o bjects that
live beyo nd any part icu lar pro cessin w h ich they are created o ractivated .
IdA ssig nm entPo licy U S E R _ID S erver need s to assig n its o w nident ifiers to its persistent o b jectsfo r keep ing track o f them .
Im p lic itA ctivatio nP o licy N O _IM P LIC IT _A C T IV A T IO N S erver need s to exp lic it ly act ivateC O R B A o bjects fo r P E R S IST E N Tpo licy.
R equestP ro cess ingP o licy U S E _A C T IV E _O B JE C T _M A P_O N LY S ince o nly a few o bjects under th ispo a, S erver can use active o bjectm ap.
IdU niquenessPo licy U N IQ U E _ID S erver need s unique asso c iat io nbetw een o b ject id and theco rrespo nd ing servant in the activeo bject m ap.
S ervantR etentio nP o licy R E T A IN A gain , fo r o nly a few o bjectsunder th is po a, S erver can keep theasso c iat io ns in the active o bjectm ap.
T hreadP o lic y O R B _C T R L_M O D E L S erver need s m u lt ip le threads toserv ic e m u lt ip le requestsco ncurrent ly.
2000 OMG Embedded Object-based Systems Workshop 17 12/22/2000
Polices for Default Servant-type POAPolicy Type Polity Value CommentsLifespanPolicy PERSISTENT Server needs CORBA objects that live
beyond any particular process in whichthey are created or activated.
IdAssignmentPolicy USER_ID Server needs to assign its own identifiersto its persistent objects for keeping trackof them.
ImplicitActivationPolicy NO_IMPLICIT_ACTIVATION Server needs to explicitly activateCORBA objects for PERSISTENTpolicy.
RequestProcessingPolicy USE_DEFAULT_SERVANT Containing many thousands of objectswith the same IDL interface type underthis poa, Server needs to use defaultservant.
IdUniquenessPolicy MULTIPLE _ID To map multiple object identifiers to asingle servant, Server needs MULTIPLE_ID policy.
ServantRetentionPolicy NON_RETAIN With DEFAULT_SERVANT, Serverdoesn't need to retain the associations.
ThreadPolicy ORB_CTRL_MODEL Server needs multiple threads to servicemultiple requests concurrently.
2000 OMG Embedded Object-based Systems Workshop 18 12/22/2000
Implementation• System - Windows NT 4.0
– CPU: 366 MH; Memory: 128MB; Disk: 10 GB
• Toolkit - IONA’s Orbix2000• CORBA Service - Naming Service• DB Connection - ODBC• Inter Process Communication - Socket• WebServer - Apache v1.3• Language - C++, Java
2000 OMG Embedded Object-based Systems Workshop 19 12/22/2000
Examples
• 5 min. Exchange Data– the switch data is updated to a database every 5 minutes– the CORBA server retrieves the data every 5 minutes
• Destination Code Control– Factory Object creates the Control Object and– sends switch-specific control command to the switch– Terminator Object destroys the Control Object and– cancels the control command from the switch
2000 OMG Embedded Object-based Systems Workshop 20 12/22/2000
Example 1: 5 min. ExchangeData
X.25/OSIX.25/OSI
SwitchSwitch
ODBCODBC
HTTPHTTP
CORBA Server & Web ServerCORBA Server & Web Server
Web BrowserWeb Browser
Web Web ServerServer
CORBACORBAClientClient
CORBACORBAServerServer
NamingNamingServiceService
1
2
3
5
4
IIOPIIOP
2000 OMG Embedded Object-based Systems Workshop 21 12/22/2000
Example 1 (cont.): Data Display
1045Incoming
60Transit
996Terminatng
1506Originating
495Intra-Office
2001Origination
1509Outgoing
1440Terminating
96 %
SwitchCompletion
Rate
1999/11/20 13:15 ~ 13:20
2000 OMG Embedded Object-based Systems Workshop 22 12/22/2000
Example 2: DestinationCodeControl
X.25/OSIX.25/OSI
SwitchSwitch
SocketSocket
HTTPHTTP
CORBA Server & Web ServerCORBA Server & Web Server
Web BrowserWeb Browser
Web Web ServerServer
CORBACORBAClientClient
CORBACORBAServerServer
NamingNamingServiceService
1
2
35
4
6
7
IIOPIIOP
ODBCODBC
2000 OMG Embedded Object-based Systems Workshop 23 12/22/2000
Example 2 (cont.): Data Display
Parameters Current Counts Accumulated Counts
ID Type Code Pri. Pct. Gap. Ann. Attempt Pass Elapse Attempt Pass
005 ALL 35779 ALL 12.5 % NCA 81 11 101 7205 902
010 INTL 86 ALL 0.25 sec EA1 128 16 20 980 125
022 ALL 2547 ALL 25 % NCA 32 8 5 160 40
. . .
Destination Code Control Table
2000 OMG Embedded Object-based Systems Workshop 24 12/22/2000
Performance Evaluation
• Number of Instances• Number of Name Bindings
2000 OMG Embedded Object-based Systems Workshop 25 12/22/2000
Number of Instances• Facts
– the number of different types of objects is small– the number of instances is large
• Approach– use a default-servant to represent a object type– use database records to represent instances
• Performance– the performance is only bound by the underlying database
system
2000 OMG Embedded Object-based Systems Workshop 26 12/22/2000
Number of Name Bindings• Facts
– the number of “to be published” instances is large– the number of Name Bindings is large
• Approach– T1M1 CORBA NM Framework defined a principle for
mapping from TMN containment tree to CORBA Naming tree
• Performance– the performance is bound by the specific Naming Service
implementation
2000 OMG Embedded Object-based Systems Workshop 27 12/22/2000
Object Resolving Latency
-0.01
0
0.01
0.02
0.03
0.04
0.05
0.06
0.07
0.08
10
2000
4000
1200
0
2000
0
3000
0
5000
010
0000
# of Objects
Sec
.
level4level62ndAccess
2000 OMG Embedded Object-based Systems Workshop 28 12/22/2000
Naming Tree Building Time
0
500
1000
1500
2000
2500
3000
1010
0020
0030
0040
0080
0012
000
1600
020
000
2400
030
000
4000
050
000
7000
010
0000
# of Objects
Sec
.
NOTE: the slope is linear(ave sec/obj = 0.025)
40 min.
2000 OMG Embedded Object-based Systems Workshop 29 12/22/2000
Memory Size of Naming Service
0
5
10
15
20
25
30
35
1010
0020
0030
0040
0080
0012
000
1600
020
000
2400
030
000
4000
050
000
7000
010
0000
# of Objects
MB
NOTE: the slope is linear (ave byte/obj = 320)
2000 OMG Embedded Object-based Systems Workshop 30 12/22/2000
Conclusion• CORBA can be used in Network Management
– CORBA NM framework– IDL information model– mapping to proprietary interface– end-to-end connection (integration)
• Performance is acceptable– with POA, large number of instances will not cause performance problem– with current Naming Service implementation, resolving a name is very fast, but
initialization time and memory size might need to be considered when the number of name bindings become large
2000 OMG Embedded Object-based Systems Workshop 31 12/22/2000
Next Steps
• Cooperate with Notification Service• Expend it to cover packet side (ATM switch)• Submit a joint contribution on Performance
Management to standards body (T1M1, ITU-T)