北向接口
软件技术手册
UniViewDA
V1.00
800-810-9292
目 录
软件技术手册 1
UniViewDA 1
1 概述 1
2 功能说明和使用方法 1
2.1 开发工具 1
2.2 初始化客户端连接 1
2.2.1 注册命名服务 1
2.2.2 注册通知服务 1
2.3 获取命名服务对象 1
2.4 获取EMSSessionFactory会话 2
2.5 注册并得到EMSSession会话 2
2.6 获取EMS版本信息 2
2.7 获得事件通道 3
2.8 告警管理 3
2.8.1 告警信息定义 3
2.8.2 objectName说明 4
2.8.3 获取EMS上所有当前告警信息 7
2.8.4 获取EMS上指定网元(指定网元的IP地址信息)的所有当前告警信息 7
为使由UniViewDA网管平台所管理维护的设备能与上层网管进行交互、通信,我司提供北向接口软件。上层网管开发人员可依据该手册对北向接口软件进行二次开发,以达到将设备纳入到综合网管平台进行统一管理的目的。
该北向接口软件采用可靠、高效、已成为业内流行趋势的CORBA通信协议,并参照814规范(“814规范”即为《Multi-Technology Network Management Solution Set Document NML-EML Interface Version 2.1》 TMF 814(2002))。以保证接口的通用性、规范性,保证管理系统与被管系统的互连互通。
北向接口软件支持与多个上层网管系统并行交互的能力。
下面详细说明北向接口软件支持的功能及使用方法。
CORBA客户端开发工具为:JacORB2.2.2。
根据EMS名字(IP地址)创建命名上下文,然后将此命名上下文绑定在所有命名服务器上的命名服务上,实现对其名字的注册
完成对命名服务的注册,然后创建通道并进行对通知通道的注册
该软件中命名上下文定义如下:
●
●
●
●
●
命名树结构如下图:
通过窄化编译emsSessionFactory.idl得到的EmsSessionFactory_IHelper.java的narrow方法得到EMSSessionFactory
实现IDL中方法为:
● IDL:emsSessionFactory.idl
● Interface:emsSessionFactory::EmsSessionFactory_I
● 方法:void getEmsSession(
in string user,
in string password,
in nmsSession::NmsSession_I client,
out emsSession::EmsSession_I emsSessionInterface)
raises(globaldefs::ProcessingFailureException);
实现IDL中方法为:
● IDL:emsMgr.idl
● Interface:emsMgr::EMSMgr_I
● 方法:void getEMS(out EMS_T emsInfo) raises(globaldefs::ProcessingFailureException);
实现IDL中方法为:
● IDL:emsSession.idl
● Interface:emsSession::EmsSession_I
● 方法:void getEventChannel(
out CosNotifyChannelAdmin::EventChannel eventChannel)
raises(globaldefs::ProcessingFailureException);
表2-1
表2-2
表2-2
注意:C120H设备无此级别告警
请参照相应的设备告警级别定义文件。
实现IDL中方法为:
● IDL:emsMgr.idl
● Interface:emsMgr::EMSMgr_I
● 方法:void getAllEMSAndMEActiveAlarms(
in notifications::ProbableCauseList_T excludeProbCauseList,
in notifications::PerceivedSeverityList_T excludeSeverityList,
in unsigned long how_many,
out notifications::EventList_T eventList,
out notifications::EventIterator_I eventIt)
raises(globaldefs::ProcessingFailureException);
实现IDL中方法为:
● IDL:managedElementManager.idl
● Interface:managedElementManager::ManagedElementMgr_I
● 方法:void getAllActiveAlarms(
in globaldefs::NamingAttributes_T meName,
in notifications::ProbableCauseList_T excludeProbCauseList,
in notifications::PerceivedSeverityList_T excludeSeverityList,
in unsigned long how_many,
out notifications::EventList_T eventList,
out notifications::EventIterator_I eventIt)
raises(globaldefs::ProcessingFailureException);
实现IDL中方法为:
● IDL:CosNotifyComm.idl
● Interface:StructuredPushConsumer : NotifyPublish
方法:void push_structured_event(in CosNotification::StructuredEvent notification)
raises(CosEventComm::Disconnected);
实现IDL中方法为:
● IDL:managedElementManager.idl
● Interface:managedElementManager::ManagedElementMgr_I
● 方法:void getAllManagedElements(in unsigned long how_many,
out managedElement::ManagedElementList_T meList,
out managedElement::ManagedElementIterator_I meIt)
raises(globaldefs::ProcessingFailureException);
实现IDL中方法为:
● IDL:managedElementManager.idl
● Interface:managedElementManager::ManagedElementMgr_I
● 方法:void getAllPTPs(in globaldefs::NamingAttributes_T managedElementName,
in transmissionParameters::LayerRateList_T tpLayerRateList,
in transmissionParameters::LayerRateList_T connectionLayerRateList,
in unsigned long how_many,
out terminationPoint::TerminationPointList_T tpList,
out terminationPoint::TerminationPointIterator_I tpIt)
raises(globaldefs::ProcessingFailureException);
目前对于E6300、E6100设备,additionalInfo里面用名值对上报端口的屏蔽、环回状态,具体格式是:第一组数据为端口名称,第二组为屏蔽状态,第三组为环回状态,第四组为类型。
环回状态值:不环回(值:0),系统侧环回(值:2);线路侧环回(值:1);环回(值:4)(这里值针对的是本端V35板卡和远端V35板卡,在网管上显示的为“环回”,实际所做的操作是双向侧环回,);不使用(值为:238,数据库有本字段,但目前没用);无效(值为:No Data,数据库根本没有本字段)
告警状态值:不使能(值为2,即告警屏蔽);使能(值为1,即告警不屏蔽)
其它值暂时不做定义
另外有的端口根本没有这些信息,如E1离线测试端口、远端电源管理端口等,是因为我们网管本身就没有实现端口告警屏蔽、环回
实现IDL中方法为:
● IDL:emsMgr.idl
● Interface:emsMgr::EMSMgr_I
● 方法:
void getAllTopLevelTopologicalLinks(in unsigned long how_many,
out topologicalLink::TopologicalLinkList_T topoList,
out topologicalLink::TopologicalLinkIterator_I topoIt)
raises(globaldefs::ProcessingFailureException);
实现IDL中方法为:
● IDL:emsMgr.idl
● Interface:equipment::EquipmentInventoryMgr_I
● 方法: void getAllEquipment(in globaldefs::NamingAttributes_T meOrHolderName,
in unsigned long how_many,
out EquipmentOrHolderList_T eqList,
out EquipmentOrHolderIterator_I eqIt)
raises(globaldefs::ProcessingFailureException);
实现IDL中方法为:
● IDL:performance.idl
● Interface:performance:: PMDataIterator_I
● 方法: void getAllCurrentPMData(in PMTPSelectList_T pmTPSelectList,
in PMParameterNameList_T pmParameters,
in unsigned long how_many,
out PMDataList_T pmDataList,
out PMDataIterator_I pmIt)
raises(globaldefs::ProcessingFailureException)
● 参数说明:
pmTPSelectList:
struct PMTPSelect_T {
globaldefs::NamingAttributes_T name;
transmissionParameters::LayerRateList_T layerRateList;
PMLocationList_T pMLocationList;
GranularityList_T granularityList;
};
几个参数都按照标准定义填写。Name填端口信息,layerRateList填速率信息,15或11;pMLocationList,随便填;granularityList,填粒度,15min或24h
pmParameters :String[] pmParameters = {"ES","SES","UAS","BBE","OPR","OPT"};
返回值也按照标准上报,不支持pmLocation,unit,intervalStatus,其他返回都支持。另外"OPR","OPT"因为设备不支持,所以没有相应数据。
实现IDL中方法为:
● IDL:maintenanceOps.idl
● Interface:MaintenanceMgr_I : common::Common_I
方法: void performMaintenanceOperation(in
CurrentMaintenanceOperation_T maintenanceOperation,
in MaintenanceOperationMode_T maintenanceOperationMode)
raises(globaldefs::ProcessingFailureException);
● 参数说明:
maintenanceOperation:
struct CurrentMaintenanceOperation_T {
globaldefs::NamingAttributes_T tpName;
MaintenanceOperation_T maintenanceOperation;
transmissionParameters::LayerRate_T layerRate;
globaldefs::NVSList_T additionalInfo;
};
其中tpName目前应该是端口对应的NamingAttributes_T;maintenanceOperation填操作名称,814标准里定义的名称不够用,经过了扩展,具体操作名称包括:ALARM_MASK:告警屏蔽,FACILITY_LOOPBACK:系统侧环回,TERMINAL_LOOPBACK:线路侧环回;LOOPBACK_CLEAR:取消环回。本操作名称要和maintenanceOperationMode结合使用,确定是进行还是取消操作,下面会有详细的解释;LayerRate_T:由于E6300设备我公司有大量私有端口,所以标准定义也被扩展,它对应的就是资源信息里的端口信息里的transmissionParams,详细字典值是:
5代表E1,46代表电口,47代表光口,61代表以太口(这些是标准里定义的),公司自定义端口说明如下:(对于E6300设备,从2007-12-3起,本属性不能上报0,如果上报0,说明下面的字典定义需要更新)
public static final short LR_GW_E6300_E2OpticalPort = 1102;//E2物理光端口
public static final short LR_GW_E6300_E2_E1Port = 1103;//E2物理端口中复用的E1
public static final short LR_GW_E6300_RemoteE2OpticalPort = 1104;//E2远端物理光端口
public static final short LR_GW_E6300_RemoteE1Port = 1105;//E1远端物理电端口
public static final short LR_GW_E6300_E1OutLineTestPort = 1106;//E1离线测试端口
public static final short LR_GW_E6300_E3OpticalPort = 1107;//E3物理光端口
public static final short LR_GW_E6300_RemoteE3OpticalPort = 1108;//E3远端物理光端口
public static final short LR_GW_E6300_E3_E1Port = 1109;//E3物理端口中复用的E1
public static final short LR_GW_E6300_EEOpticalPort = 1110;//EE物理光端口
public static final short LR_GW_E6300_RemoteEEOpticalPort = 1111;//EE远端物理光端口
public static final short LR_GW_E6300_EE_E1Port = 1112;//EE物理端口中复用的E1
public static final short LR_GW_E6300_STM1Port = 1201;//STM-1物理光端口
public static final short LR_GW_E6300_STM4OpticalPort = 1202;//STM-4 物理光端口
public static final short LR_GW_E6300_STM1ElectricPort = 1203;//STM-1物理电端口
public static final short LR_GW_E6300_DxcPort = 1301;//交叉连接矩阵交叉端口
public static final short LR_GW_E6300_TU12OutLineTestModel = 1302;//TU12离线测试发生器
public static final short LR_GW_E6300_EthernetServicePort = 1401;//以太网业务电端口
public static final short LR_GW_E6300_V35Port = 1402;//V35数据端口
public static final short LR_GW_E6300_EthernetServiceOpticalPort = 1403;//以太网业务光端口
public static final short LR_GW_E6300_RemoteEthernetServicePort = 1404;//远端以太网业务电端口
public static final short LR_GW_E6300_RemoteV35Port = 1405;//远端V.35数据端口
public static final short LR_GW_E6300_RemoteEthernetServiceOpticalPort = 1406;//远端以太网业务光端口
public static final short LR_GW_E6300_EthernetOutLineTestPort = 1407;//以太网离线测试端口
public static final short LR_GW_E6300_RemoteETRMAdapterOpticalPort = 1409;//远端ETRM适配器光端口
public static final short LR_GW_E6300_ETRMEthernetPort = 1410;//ETRM以太网电端口
public static final short LR_GW_E6300_EthernetPort = 1411;//以太网电端口
public static final short LR_GW_E6300_EthernetEEOpticalPort = 1412;//EE以太网光端口
public static final short LR_GW_E6300_TU12VCGPort = 1501;//TU-12虚级联端口
public static final short LR_GW_E6300_TU12VCGSubPort = 1502;//TU-12虚级联映射子端口
public static final short LR_GW_E6300_RemotePowerPort = 1803;//远端电源管理端口
additionalInfo:目前不填。
maintenanceOperationMode:
enum MaintenanceOperationMode_T {
MOM_OPERATE,
MOM_RELEASE
};
操作类型。共两种:MOM_OPERATE, MOM_RELEASE;操作或取消,对应的值分别是0和1。这个操作类型和前面的操作名称结合使用,确定要进行什么操作的下发,具体组合如下:
maintenanceOperation和maintenanceOperationMode可能的操作组合:
1) ALARM_MASK+0:告警屏蔽
2) ALARM_MASK+1:取消告警屏蔽
3) FACILITY_LOOPBACK+0:系统侧环回
4) TERMINAL_LOOPBACK+0:线路侧环回
5) BIDIRECTION_LOOPBACK+0:双侧环回
6) LOOPBACK_CLEAR+1:取消环回
7) 注意:不应该出现FACILITY_LOOPBACK+1、TERMINAL_LOOPBACK+1、BIDIRECTION_LOOPBACK+1、LOOPBACK_CLEAR+0这几种情况
ProcessingFailureException:
exception ProcessingFailureException {
ExceptionType_T exceptionType;
string errorReason;
};
抛出异常。
1) 配置成功,不抛出异常
2) 配置失败的时候会抛出两类异常:ExceptionType_T.EXCPT_NOT_IMPLEMENTED:设备不支持此操作
ExceptionType_T.EXCPT_INTERNAL_ERROR:配置失败
不是这两类异常属于:未知原因的错误。
● 支持的端口说明:
STM-1物理光/电端口(主交叉板):支持告警设置和环回设置
E1物理电端口(ETH-E1板卡):支持告警设置和环回设置
E2物理光端口(PDH板卡):支持告警设置 ,不支持环回
以太网光端口(MC100板卡):支持告警设置,不支持环回
E3物理光端口(A480板卡):支持告警设置,不支持环回
环网伴侣星网专家
地址:北京市海淀区上地西路38号格林威尔公司
邮编:100085
电话:(86-10)62961177
传真:(86-10)82899881
服务热线:800-810-9292
24小时售后服务热线:136********/133********
网址:www.gwtt.com
E-mail:gwtt@gwtt.com
本文来源:https://www.2haoxitong.net/k/doc/ed2998c79ec3d5bbfd0a7428.html
文档为doc格式