一种基于corba的eml-nml接口实现浮动的方法

文档序号:7612710阅读:221来源:国知局
专利名称:一种基于corba的eml-nml接口实现浮动的方法
技术领域
本发明涉及一种网元管理层-网络管理层EML-NML接口和网元管理系统EMS分离运行的设计方案及其相关的组网应用,特别涉及一种基于公共对象请求代理体系结构CORBA的网元管理层-网络管理层EML-NML接口实现浮动的方法。
背景技术
为了提高电信设备运行维护效率,电信设备运营商开始构筑网络管理层NML统一网管-网络管理系统NMS,将各设备供应商提供的网元管理系统EMS纳入统一管理平台中。NMS和各EMS之间的通信设施为电信综合数据通信网(DCN)。DCN网采用分层管理模式,分为三层接入层、汇聚层和骨干层,EMS位于DCN网的接入层,NMS则位于汇聚层或骨干层。接入层由各个地区的私网构成,每个EMS所拥有的IP地址仅在接入层各私网内有效。由于EML-NML接口应用层通信协议业内多采用CORBA规范,现有EML-NML接口的开发是和EMS紧耦合,即EMS必须和接口运行于同一台机器或同一个进程,因此NMS要通过接口管理EMS时必须和EMS可以直接互连,会造成如下不利1)每台EMS需要分配一个骨干层IP地址,造成IP地址的消耗大2)每台EMS需要安装CORBA基础软件,如果出于稳定性和安全性考虑,采用商用CORBA软件则需要为每台EMS支付基础软件费用3)由于接口和EMS一起分布在全网各地造成维护不便。
由于在DCN中IPV4和IPV6需要共存很长一段时间,其中IPV4是互联网IP协议,IPv6是下一版本的互联网协议,IPv4采用32位地址长度,地址资源即将耗尽,而IPv6采用128位地址长度,地址资源比较充足。另外由于本地网的网管节点数量多,因此现有EML-NML接口和EMS紧耦合的软件体系在IP地址的消耗、基础软件成本和接口维护成本都会比较大。
根据《通信世界网》中信息产业部电信研究院 徐贵宝的“运营商网络IP地址分配原则”以及国内实际工程状况,运营商实现节省IPV4地址、不同网络IP地址转换和IP分域管理主要采用两种方式动态主机配置协议(DHCP,Dynamic Host Configuration Protocol,RFC1541)和网络地址转换(NAT,Network Address Translation,RFC 1631);(1)DHCP方式DHCP是利用多个设备不同时使用公网地址原理实现的。当一个设备连接到网络时,该设备会向DHCP服务器申请IP地址,当该设备与网络断开连接时,就会释放公网IP地址,DHCP服务器则可以将该地址分配给其他设备。DHCP技术实现了IP地址共享,简化了网络配置开销,但DHCP也增加了网络时延。
DHCP是一种动态分配IP地址技术,在电信管理网的应用环境下存在着缺陷致使其不可用。原因在于私网内EMS系统在大部分时间内作为服务器存在,为了方便NMS连接需要为每个EMS系统分配固定的骨干层IP地址,同时NMS和EMS需要保持永久连接以便于NMS侦听EMS有关告警、配置的变化消息,因此不满足多个设备不同时使用公网地址原理。综上所述动态IP分配技术不适应电信管理网下NMS和EMS互通,以上缺陷对于所有动态IP地址分配技术都存在。
(2)NAT方式NAT技术包括三种方式静态NAT、动态地址NAT、网络地址端口转换NAPT。静态NAT配置最为简单,网络时延最少。该技术为私网中的每个需要公网地址的主机永久性分配一个外部网络中的某个合法的地址。静态NAT适合于私网中提供服务器功能的应用,即可以满足EML-NML接口作为服务器,但由于目前开发的接口和EMS是紧偶合关系,且每个EMS需要提供一个接口,因此需要为每个EMS分配一个DCN网地址,失去了节约地址作用。
动态地址NAT则是在外部网络中定义了一系列的合法地址,为每一个内部的IP地址分配一个临时的外部IP地址,主要应用于拨号,对于频繁的远程联接也可以采用动态NAT。当远程用户联接上之后,动态地址NAT就会分配给他一个IP地址,用户断开时,这个IP地址就会被释放而留待以后使用。NAPT则是把内部地址映射到外部网络的一个IP地址的不同端口上,NAPT与动态地址NAT不同,它将内部连接映射到外部网络中的一个单独的IP地址上,同时在该地址上加上一个由NAT设备选定的传输控制协定TCP端口号。两者都是动态IP分配技术不适合私网中主机作为服务器的应用环境。
综上所述,现有的节约IP地址的方法均不适合EML-NML连接组网。
之所以出现IP地址消耗大的关键在于EML-NML接口必须和EMS在同一机器上运行,导致NMS通过接口管理EMS系统时必须为每个EMS分配一个骨干网地址,而且每台EMS都必须购买接口运行所需的基础软件-CORBA。现有接口必须和EMS系统绑定运行的关键在于接口需要调用大量EMS系统的功能函数,现有接口的开发通常是直接EMS源代码之上扩充的,或者调用EMS系统的动态库,因此接口须和EMS在同一台机器上甚至同一进程内运行。

发明内容
本发明针对上述现有网管的不足和缺陷,提供了一种新的EML-NML接口实现浮动的方法,本发明使接口系统具有网络可移植性,简称为EML-NML浮动接口,主要解决如下三大问题(1)每台EMS需要分配一个骨干层IP地址,造成IP地址的消耗大;(2)每台EMS需要安装CORBA基础软件,如果出于稳定性和安全性考虑,采用商用CORBA软件则需要为每台EMS支付基础软件费用;3)由于接口和EMS一起分布在全网各地造成维护不便。
本发明的技术方案基于公共对象请求代理体系结构CORBA的网元管理层-网络管理层EML-NML接口实现浮动的方法,EML-NML接口采用CORBA做为底层通信模型,采用电信管理论坛TMF的TMF.513、TMF.608和TMF.814规范做为信息模型,且该接口主要包括网元管理系统EMS封装层、应用协议转换层和CORBA接口实现层,按以下步骤进行EMS封装层由接口侧封装层以及EMS侧远过程调用RPC代理两部分组成,EMS封装层将EMS以动态库和原代码紧耦合方式提供的功能接口封装成基于网络的远程调用RPC接口,当接口需要调用EMS系统功能时,由EMS封装层将功能类型及参数封装成RPC接口类型和参数,并发送给EMS侧RPC代理,由EMS侧RPC代理解码、调度EMS功能并返回结果;协议转换层将从EMS系统获取的信息换成TMF608规范定义的信息模型;CORBA接口实现层定义IDL接口文件,接口文件参照TMF814规范,实现CORBA接口功能及实施对象Servant。
RPC调用形式采用TCP/IP通信帧的形式,传递内容有EMS功能类型、功能调度的参数及返回结果。CORBA实施对象在命名空间发布采用厂商名称、EMS在接口服务器范畴内的唯一ID号以及对象名称共同命名。
一种基于CORBA的EML-NML浮动接口的组网方法,主要包括TCP/IP和CORBA网络通信协议、一台多宿主机、被管理的私网内的EMS系统及一个公网IP地址,组网方法按以下方式进行将多个私网IP地址静态地转换为一个公网IP和多个端口进行通信。将电信综合数据通信网(DCN)接入层中m个私网划分为一个私网集群(m≥1);在DCN骨干层子网段简称为公网中为每个EML私网集群分配一台多宿主机;私网集群中各EMS私网分别与多宿主机相连,每个EMS系统对应一个EML-NML浮动接口;接口集中运行在多宿主机上,每个私网集群对应运行于同一台多宿主机上的一组EML-NML浮动接口系统;多宿主机配置双网卡及私网、公网两个IP地址,公网IP和多宿主机的主机名绑定;多宿主机上安装CORBA基础软件,并在其公网IP地址上配置一个CORBA域,作为向NMS发布信息和实现请求的平台;在同一台多宿主机上运行的所有接口系统使用一个公网IP地址与NMS对接,并使用一个私网IP地址和多个不同的端口从私网集群中的相应EMS上获得必要信息;NMS通过命名服务获得EML-NML浮动接口发布的入口CORBA对象-emsSessionFactory,参考TMF814,并进行身份验证以及后继的互操作;DCN网络中的NMS通过多宿主机所在的公网IP地址对私网集群内所有EMS系统进行操作,从而达到节约公网IP地址的功能。
本发明的优越性在三方面节约公网IP地址;节约基础软件成本;方便接口集中管理;简化工程维护;降低组网的复杂度。


图1是应用本方案浮动接口技术的系统组网图。
图2是EML-NML浮动接口体系结构图。
图3a是没有浮动接口的组网图。
图3b是增加浮动接口后的组网变化图。
图4是实际利用浮动接口+多宿主机试验网样例图。
具体实施例方式
EML-NML浮动接口采用CORBA做为底层通信模型,采用TMF中TMF.513、TMF.608、TMF.814规范做为信息模型。其体系结构的关键在于存在一个EMS封装层和EMS侧安装RPC代理,该封装层和RPC代理将EMS以动态库等紧耦合形式提供的功能接口转换为基于TCP/IP的通信帧格式并以网络远程调用形式完成,从而保证了EML-NML接口可以和EMS系统分别运行于不同网段的网络。
本发明是基于浮动接口技术的电信管理网EML-NML层组网管理方案,主要包括相应的一系列网络通信协议(TCP/IP、CORBA)、一台多宿主机(Multihomed Host)、被管理的私网内的EMS系统及一个公网IP地址。
其基本原理是将多个私网IP地址静态地转换为一个公网IP和多个端口进行通信。其特征是将DCN接入层中m个私网划分为一个私网集群(m≥1)。在公网中为每个EML私网集群分配一台多宿主机;私网集群中各EMS私网分别与多宿主机相连,每个EMS系统对应一个EML-NML浮动接口。每个EMS系统对应一个EML-NML浮动接口,由接口的体系结构支持接口可浮动,接口集中运行在多宿主机上,每个私网集群对应运行于同一台多宿主机上的一组EML-NML浮动接口系统。在同一台多宿主机上运行的所有接口系统使用一个公网IP地址和NMS对接,接口利用一个私网IP地址和多个不同的端口从私网集群中的相应EMS上获得必要信息。对于DCN网络中的NMS而言可以只通过Multihomed Host所在的一个公网IP地址对集群内所有EMS系统进行操作,从而达到节约公网IP地址的功能。组网方式如图1所示本发明的实现依赖于其软件的体系结构,如图2所示,接口软件系统分为三层EMS封装层,应用协议转换层以及CORBA接口实现层。
(1)EMS封装层EMS封装层通过套接字SOCKET的网络技术将接口和EMS的紧耦合关系转换成1∶1的网络连接关系,保证了接口的网络可移植。这是实现浮动接口技术的基础,也就是接口和EMS分离运行的基础。
接口采用TCP/IP方式远程调用EMS提供的功能模块、接收上报消息;
采用远程数据库模式采集EMS系统信息。接口和EMS通信的帧结构如下

a)帧头标识描述帧起始定位;b)参数定位指针描述“参数长度”的起始位置,为后继扩充帧类型信息预留可扩充位置;c)帧序列号描述帧时间顺序的编码,编码只在产生帧的实体内进行,例如由EMS产生的帧则编码只描述EMS发出帧的时间先后顺序;d)用户ID表示发起请求的客户端ID号,是客户端向EMS申请得到的;e)结果码表示处理结果,0为正确,否则填写错误代码;f)帧类别和帧详细类别表示帧的功能类型,例如调度EMS的功能,或者是上报类型;g)参数长度和参数表示了帧参数的内容和长度,参数内容为可变长,格式由各帧类型确定;由于采用TCP作为网络层通信协议因此不再有帧头校验字节。
以EML-NML浮动接口调用EMS的清除网元性能计数器功能为例子,EML-NML浮动接口通过TCP/IP向EMS发送帧类别为’D0’,帧详细类别为‘M6’,参数为网元位置信息的命令帧,EMS侧RPC代理接收到命令帧后解析成EMS功能接口调用,并将结果码填写入返回帧中。返回帧的帧类别为’D0’,帧详细类别为‘M6’,同命令帧(2)协议转换层协议转换层将从EMS系统获取的信息换成TMF608规范定义的信息模型,减少EMS和统一网管的语义差。本层的实现根据EMS系统提供的信息不同而不同,与浮动技术无关在此不详述。
(3)CORBA接口实现层CORBA实现层定义IDL接口文件,接口文件参考TMF814规范,实现CORBA接口功能以及实施对象(Servant)。
本方案的基本技术如下1)浮动技术的实现浮动技术是通过EMS封装层实现。
对于EMS以动态库方式提供的功能,在EMS侧安装RPC代理。由代理完成功能调用,接口系统通过通信应答协议TCP/IP传送和代理通信,传递功能类型、功能参数和接收结果;对于EMS以RPC方式提供的功能则直接调度;其中RPC方式含CORBA提供的功能。
对于信息采集利用数据库远程调用接口搜集,在接口初试化配置文件中为每个EMS系统指定数据库服务器以及用户信息。
对于EMS上报的消息直接通过SOCKET或其它RPC渠道接收;对于通过SOCKET传递的上报,在接口初试化配置文件中为每个EMS指定不同的侦听端口。
2)命名空间的规划以CORBA基础软件为ORBIX6.1,应用层协议为TMF规范作为例子,由于多个EMS接口均运行在一台多宿主机上,这意味着多个基于CORBA的接口均在一个CORBA域内,因此必须保证接口在命名空间中发布的对象在命名树上不能重。接口以TMF作为应用层规范,因此接口只在命名空间中发布一个工厂对象-emsSessionFactory,由它向客户端提供其它CORBA接口的引用。
本方案在每个多宿主机上配置一个独立的CORBA域,在多宿主机上为每个EMS系统分配一个本多宿主机范畴内相对唯一ID号标识,接口系统在命名空间中发布工厂对象时以此区分。例如工厂对象命名可以是厂商名称/EMS_i/emsSessionFactory,i为EMS系统相对ID,厂商名称是命名空间的上下文结点,以区分不同厂商的北向接口。对于其它CORBA对象也做同样的处理,包括事件通道。
3)利用多宿主机MultiHome Host实现组网方法根据负载轻重可以选中私网中一台EMS或者单独的一台效率较高服务器作为Multihomed Host,配置双网卡及两个IP地址。一个IP地址属于私网,另一个属于公网,公网IP和多宿主机的主机名绑定。
只在多宿主机上安装CORBA基础软件,并在其公网IP地址上配置一个CORBA域,作为向NMS发布信息和实现请求的平台;NMS通过命名服务获得入口CORBA对象-emsSessionFactory,并进行身份验证以及后继的互操作;4)接口管理接口管理不再是分散在各接入层,而是集中在DCN的骨干层几个多宿主机上,便于统一管理和工程维护。
本发明的优越性在三方面节约公网IP地址;节约基础软件成本;方便接口集中管理;简化工程维护;降低组网的复杂度。
浮动接口技术效益评估如图3所示,假设在DCN网络中共有m个EMS系统,i个EML层私有网络,一个私网集群只包含一个EMS私网,n个NMS系统,并满足m>>n,i>n。
图3a表示未加浮动接口时网络连接图,G1={V1,E1},V1={EMS节点,NMS节点},E1是无向连接,包含于{{EMS节点}×{NMS节点}};图3b表示增加浮动接口后的网络连接图,G2={V2,E2},V={EMS节点,NMS节点,多宿主机节点},E2是无向连接,包含于{{EMS节点}×{多宿主机节点}}∪{{多宿主机节点}×{NMS节点}},节点表示处理节点(Processing node),边(edges)表示节点间的通信。
(1)节约公网IP地址组件统一网管平台所需的DCN的骨干网IP地址原来为m个,应用本方案后为i个,i为子网个数,m>>i。只需要为每个多宿主机分配一个骨干网地址即可。如果m/i≥10,即每个地区的EML私网内有10台EMS,那么就可以节约10倍的IP地址资源。
(2)节约基础软件成本原来需要购买商用CORBA基础软件的套数为m套,现在为i套,只需要在每个多宿主机安装一套CORBA基础软件即可。如果m/i≥10,即每个地区的EML私网内有10台EMS,假设m=100,每个License16万RMB,那么费用可以节约1440万,费用只需要原来的1/10。
1)方便接口集中管理、简化工程维护同上,原来需要在m个地方维护接口,一般一个EMS位于一个地市,现在只需要维护多宿主机上的接口系统组即可。
(3)降低组网的复杂度节点的度决定了处理节点的连接复杂性,如果单个节点的度过大会造成该节点成为通信瓶颈;而网络直径决定了消息传播时延(Latency)。维持最小的节点度和最小的网络直径是组网的基本原则。
在电信管理网TMN管理体系中NMS、接口和EMS之间的连接是相对固定和持久的,从逻辑连接上看属于静态网络。静态网络的复杂度和最大节点的度(degree)以及网络直径(diameter)成正比,即C=kd,C为网络连接复杂度,k是网络直径,d是最大节点度。节点的度指在图中连接到节点的最大边数,网络直径指图中任意两点间最少的边数。
图3a的网络连接复杂度(1)由于通信只发生在EMS-NMS,NMS-NMS,也就是NMS-EMS-NMS之间,因此k=2;(2)节点度最大的是NMS系统为m(3)所以c=2m。
图3b的网络连接复杂度(1)通信发生在EMS-多宿主机,多宿主机-NMS,NMS-NMS也就是NMS-多宿主机-NMS之间,所以k=2;
(2)度最大的节点是多宿主机节点,由于EMS系统总数固定,因此只有当所有EMS私网内中节点数相同时,节点最大的度才能最小,d≥(m/i+n);(3)网络增加了i个多宿主机节点,由于i<<m+n,因此在本方案中暂不考虑对网络连接复杂度的影响;(4)假设EMS私网内节点数目相同,则c=2(m/i+n)。
如果要使图3b的网络复杂度小于图3a则必须满足2(m/i+n)≤2mi≥m/(m-n);由于m>>n,m/(m-n)≈1,所以只要i大于1即可使新的组网结构优越于原有结构,该条件在实际组网中基本成立,因此本方案可以优化网络结构。
组网样例图4描述一个由浮动接口组成的试验网,本试验网基于数据库软件为Informix 7.30,CORBA软件为Orbix6.1以及JDK1.4.2,CORBA总线间的通信协议为IIOP。本组网测试样例测试了浮动接口功能以及多头管理的情况,即NMS1、NMS2同时管理A1、A2。
1、具体配置(1)NMS1,NMS2主机上运行NMS系统,每台主机上的NMS系统管理都管理A1、A2上的EMS系统。在NMS1、NMS2上配置一个连接域,做为客户端连接到多宿主机的CORBA域上,本样例中域名为WRI-domain。
(2)A1和A2是EMS系统,在其上安装运行EMS管理系统以及EMS侧RPC代理,本样例中为Armyapi程序,可通过通信帧和浮动接口交互。其中A1是同步数字系统SDH网管,A2是波分复用系统WDM网管;(3)A为多宿主机,在其上安装浮动接口系统,本样例中为NI814系统、Orbix6.1、JDK1.4.2运行环境以及数据库客户端。并配置WRI-domain的域。A具有双网卡,IP配置如图所示,主机名A绑定网卡1,两个网卡的不在同一个域里面。
(4)A的网卡1(10.22.9.75)与10.22.9.0网段相连,运行CORBA总线以及两个浮动接口实例来分别管理A1,A2,这两个浮动接口实例分别称为N1,N2。
(a)CORBA配置在本地址上创建CORBA域,本样例中域名为WRI-domain,并对外提供通知notify、命名naming、定位locator等服务(b)命名空间发布在命名空间根节点下创建名为厂商名称WRI的上下文结点,在浮动接口初试化配置文件中为A1分配一个WRI-domain域内相对唯一的ID=1,为A2分配的ID为2。每个接口实例在命名空间中各发布的一个emsSessionFactory,名称分别为/EMS_1/emsSessionFactory和/EMS_1/emsSessionFactory;其它的CORBA对象以此类推。
(5)网卡2与10.22.18.0网段内所有主机相连,N1、N2通过网卡2(10.22.18.4)和A1、A2的EMS侧RPC代理交互。
(a)N1、N2分别绑定不同的侦听端口和A1、A2通信,端口由浮动接口初试化配置文件指定,本样例中N1对应的侦听端口是2666,N2对应的侦听端口是2667;(b)在初试化文件中为N1、N2指定A1、A2的数据库服务器名称,通过INFORMIX客户端从远端获取数据,在本样例中指定的A1数据库服务器为ol_sunbeacher,A2数据库服务器为ol_taoyufen;2、运行步骤(1)按照上述配置搭建运行平台。
(2)A1、A2主机上运行网元管理系统,本样例中为OTNM2000和RPC代理,Armyapi程序。
(3)在A上启动CORBA服务,然后针对A1、A2分别运行一个EML-NML浮动接口实例N1和N2。
(4)在NMS1、NMS2上分别运行NMS,本样例中使用NMS模拟程序-TmfClient,连接多宿主机A上的命名服务,并获取命名空间中的WRI/EMS_1/emsSessionFactory和WRI/EMS_2/emsSessionFactory的引用,然后通过emsSessionFactory的引用进行后继操作。
权利要求
1.一种基于公共对象请求代理体系结构CORBA的网元管理层-网络管理层EML-NML接口实现浮动的方法,EML-NML浮动接口采用CORBA做为底层通信模型,该接口主要包括网元管理系统EMS封装层、应用协议转换层和CORBA接口实现层,EMS封装层由接口侧封装层以及EMS侧远过程调用RPC代理两部分组成,按以下步骤进行EMS封装层将EMS以动态库和原代码紧耦合方式提供的功能接口封装成基于网络的远程调用RPC接口,当接口需要调用EMS系统功能时,由EMS封装层将功能类型及参数封装成RPC接口类型和参数,并发送给EMS侧RPC代理,由EMS侧RPC代理解码、调度EMS功能并返回结果;协议转换层将从EMS系统获取的信息换成应用层信息模型;CORBA接口实现层IDL接口。
2.根据权利要求1所述的方法,其特征在于RPC调用形式采用TCP/IP通信帧的形式,传递内容有EMS功能类型、功能调度的参数及返回结果。
3.根据权利要求1或2所述的方法,其特征在于CORBA实施对象在命名空间发布采用厂商名称、EMS在接口服务器范畴内的唯一ID号以及对象名称共同命名。
全文摘要
本发明涉及一种基于CORBA的EML-NML接口实现浮动的方法。EML-NML浮动接口增加EMS封装层,包括接口侧封装层以及EMS侧RPC代理两部分,EMS封装层将EMS以动态库和源代码紧耦合方式提供的接口封装成基于TCP/IP通信帧的网络远程调用接口,通信帧在EMS系统和接口系统之间传递调用的功能类型、参数及返回结果;接口系统CORBA实施对象的发布采用厂商名称、EMS在私网域范畴内的唯一ID号及对象名称共同命名方法。组网方法将接入层私网划分成多个私网群,每个私网集群对应运行于同一台多宿主机上的一组EML-NML浮动接口系统;NMS系统通过多宿主机管理EMS。使用本发明的方法使接口系统具有网络可移植性,节约IP地址、方便接口集中管理及降低组网成本和复杂度。
文档编号H04L12/24GK1741535SQ20051001945
公开日2006年3月1日 申请日期2005年9月21日 优先权日2005年9月21日
发明者张丽雅 申请人:烽火通信科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1