专利名称:网管接口适配器及信息交互的方法
技术领域:
本发明涉及网络通信技术领域,具体涉及一种网管接口适配器及信息交互的方法。
背景技术:
随着网络通信技术的发展,网络的规模和复杂度不断增加,网络管理逐渐成为提高网络服务质量、合理使用网络资源、降低维护成本的关键。目前,电信网正朝着由多制造厂商提供网络设备、多网络运营部门协同提供业务的方向发展,未来的电信网是一个异构型的互连网络,它是由电话网、ISDN(综合业务数字网)网、X.25网、移动式电话网以及会议电视网等电信子网互连而成的网络。为了适应电信网的这种发展,ITU-T(国际电信联盟)提出了TMN(电信管理网)的概念,其目的在于从全球电信网的角度出发,提供一种有组织的体系结构及标准化的接口,使不同类型的管理系统之间、管理系统和电信设备之间都能以统一的方式交换管理信息,按照规范方法对整个电信网进行集中统一管理TMN的一个主要特点是管理功能与电信功能分离,网络管理员能够管理范围广泛的来自各个管理节点的分布式电信设备,采用分层管理体系结构,如图1所示包括事务管理层、业务管理层、网络管理层及网元管理层,分别由各自的网络实体BMS(事务管理系统)、SMS(业务管理系统)、NMS(网络管理系统)和EMS(网元管理系统)来完成对应层面的管理功能。其中,NMS作为TMN管理体系中的一个重要网络管理层次,如何与下层EMS进行协调配合,达到集中高效管理非常关键。
目前,NMS与EMS间接口主要采用基于标准Q3或CORBA(CommonObject Request Broker Architecture,公共对象请求代理体系结构)接口进行协议适配,其优点是标准化接口,只要符合Q3或CORBA模型标准的EMS都可以接入NMS。
这两种接口的实现方式如图2所示无论是Q3接口还是CORBA接口,都需要提供适配标准接口的Manager(管理器)与Agent(代理),它们的网络层次与网络部署方式相似。每个EMS向上提供标准Q3或CORBA接口,然后通过Q3/CORBA Mananger接入NMS,Q3/CORBA Manager是NMS的南向Q3/CORBA接口适配器,而Q3/CORBA Agent则是EMS的北向Q3/CORBA接口适配器。
NMS对EMS的请求处理流程如图3所示NMS向Q3/CORBA管理器发出请求,Q3/CORBA管理器收到该请求后首先进行协议转换,将该请求转换为标准的Q3/CORBA格式,然后将其发送给Q3/CORBA代理,再由Q3/CORBA代理将其转换为EMS能够识别的格式并发送给EMS。同样,对该请求的响应也需要通过Q3/CORBA代理和Q3/CORBA管理器进行协议转换。
EMS向NMS的通知上报处理流程如图4所示由EMA将上报消息发送给Q3/CORBA代理,Q3/CORBA代理收到该消息后首先进行协议转换,将该消息转换为标准的Q3/CORBA格式,然后将其发送给Q3/CORBA管理器,再由Q3/CORBA管理器将其转换为NMS能够识别的格式并上报给NMS。
由上述两个处理流程可以看出,采用Q3/CORBA接口有以下缺点1、层次太多,运行效率较低,较高的硬件成本,每个Q3/CORBA Agent单独部署,需要独占服务器资源。
2、Q3/CORBA接口协议处理复杂,需要大量采用第三方软件包,导致软件成本的增加,而且第三方软件的缺陷会导致产品的稳定度下降,不利于产品的维护。
发明内容
本发明的目的是提供一种网管接口适配器,以克服现有技术中采用Q3或CORBA接口实现复杂、运行效率低的缺点,以减少网络通信层次,提升网管运行效率。
本发明的另一个目的是提供一种网管接口信息交互的方法,以克服现有技术中采用Q3或CORBA接口协议处理复杂的缺点,简单、高效地实现网络管理系统和不同网元管理系统之间的通信。
为此,本发明提供如下的技术方案一种网管接口适配器,用于完成网络管理系统与多个网元管理系统之间的协议适配,所述适配器包括消息处理模块、至少一个业务处理模块、协议处理模块,线程管理模块;所述消息处理模块接收所述网络管理系统下发的请求消息,并将其转发给对应的业务处理模块对其进行业务处理,然后,由所述协议处理模块对处理后的请求消息进行协议转换并发送给对应的网元管理系统;所述协议处理模块接收到所述网元管理系统的响应消息后,对所述响应消息进行协议转换并发送给对应的业务处理模块,由所述业务处理模块对其进行业务处理,并将处理后的响应消息通过所述消息处理模块发送给所述网络管理系统;所述线程管理模块分别耦合于所述业务处理模块,用于为各业务处理模块分配业务处理线程并控制所述业务处理模块在所述业务处理线程中的运行。
所述线程管理模块包括线程分配模块,用于为所述业务处理模块分配处理不同请求消息所需的业务处理线程;
线程控制模块,用于控制所述业务处理模块处理请求消息时所需的线程。
可选地,所述适配器还包括与所述网元管理系统对应的多个通知上报模块,分别耦合于所述消息处理模块、所述线程管理模块和所述协议处理模块,用于处理所述协议处理模块接收并进行协议转换后的网元管理系统的上报消息,并将处理后的上报消息通过所述消息处理模块发送给所述网络管理系统。
可选地,所述适配器还包括定时检测模块,分别耦合于所述消息处理模块和所述协议处理模块,用于定时检测所述网元管理系统的连接状态。
一种网管接口信息交互的方法,用于实现网络管理系统与多个网元管理系统之间的通信,所述方法包括A、分别建立对应于不同请求消息的业务处理模块;B、通过所述业务处理模块同步并行处理对不同网元管理系统的请求消息;C、将处理后的请求消息下发给对应的网元管理系统;D、将不同的网元管理系统的响应消息进行协议转换后发送给所述网络管理系统。
所述步骤B包括B1、获取所述请求消息对应的业务处理模块;B2、分配对应于所述业务处理模块的业务处理线程;B3、通过所述业务处理线程同步串行处理对应于所述网元管理系统的多个请求消息。
所述步骤B3包括B31、在所述业务处理线程中处理当前请求消息;B32、对处理后的请求消息进行协议转换,将其转换为所述对应的网元管理系统能够识别的格式,同时阻止对应于该网元管理系统的其他业务处理线程处理后的消息进行协议转换;B33、当所述当前请求消息处理结束后,挂起所述业务处理线程。
所述步骤D包括D1、将所述网元管理系统的响应消息转换为所述网络管理系统能够识别的格式;D2、在对应于该网元管理系统的业务处理线程中处理转换后的响应消息;D3、将处理后的响应消息发送给所述网络管理系统。
所述步骤D2包括D21、唤醒所述挂起的业务处理线程;D22、在唤醒后的业务处理线程中处理所述转换后的响应消息。
所述步骤B3还包括当在所述业务处理线程中将对应于当前请求消息的响应消息处理完成后或者所述业务处理线程挂起超过预定时间后,结束该业务处理线程,使被阻塞的其他业务处理线程继续运行。
可选地,所述方法还包括E、接收不同网元管理系统的上报消息;F、对所述上报消息同步处理后发送给所述网络管理系统。
所述步骤F包括F1、配置对应于不同网元管理系统的上报处理线程;F2、将所述上报消息转换为所述网络管理系统能够识别的格式;F3、通过所述上报处理线程串行处理对应于所述网元管理系统的上报消息;F4、将处理后的上报消息发送给所述网络管理系统。
由以上本发明提供的技术方案可以看出,通过本发明提供的网管接口适配器直接在NMS和多个不同的EMS之间进行协议转换,不需要提供满足适配标准的Manger和Agent,减少了网络通信层次,提高了网管的运行效率;在该适配器中通过线程管理模块保证了对多个EMS的同步并发管理以及对单个EMS的同步串行管理,从而有效地实现了对不同EMS的协议适配;该方案实现简单,无需依赖第三方软件,从而提高了网管系统的稳定性并降低了系统成本。
图1是电信管理网的分层体系结构示意图;图2是现有技术中NMS和EMS之间接口协议适配方式示意图;图3是采用Q3或CORBA接口时NMS对EMS的请求处理流程;图4是采用Q3或CORBA接口时EMS向NMS的通知上报处理流程;图5是本发明网管接口适配器第一实施例原理框图;图6是本发明网管接口适配器第二实施例原理框图;图7是本发明方法的实现流程图;图8是本发明方法中采用同步通信机制对消息处理的控制流程;图9是本发明方法中对EMS的上报消息的处理流程图。
具体实施例方式
本发明的核心在于利用网管接口适配器直接在NMS和多个不同的EMS之间进行协议转换,完成网络管理系统与多个网元管理系统之间的协议适配。通过不同的业务处理模块完成对所有请求及响应消息的处理,通过一个线程管理模块为不同的业务处理模块分配独立的业务处理线程,使业务处理模块在这些线程中分别完成对不同网元管理系统请求消息的处理,并控制多个线程串行处理对应于同一个网元管理系统的相关请求及响应消息。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和实施方式对本发明作进一步的详细说明。
图5是本发明网管接口适配器第一实施例原理框图在本实施例中,网管接口适配器分别与网络管理系统S 1及网元管理系统S2和网元管理系统S3相连,完成网络管理系统和不同网元管理系统之间的协议适配。该适配器包括消息处理模块S01、业务处理模块S02、业务处理模块S03、协议处理模块S05、线程管理模块S04。
为了保证业务处理模块能够同时处理对应于不同EMS的请求消息,由连接于协议处理模块和业务处理模块的线程管理模块S04控制业务处理模块的运行。
在消息处理模块中预先配置了消息号与业务处理模块的对应关系,当其接收到NMS下发的请求消息后,根据该对应关系通知线程管理模块为业务处理模块分配相应的线程,同时将该请求消息转发给业务处理模块,由业务处理模块对该请求消息进行业务处理,比如,对请求消息进行解析,转换成协议适配器内部接口,获取处理该请求消息需要交互的网元管理系统信息,确定需要从网元管理系统获取的信息等。然后,由协议处理模块对处理后的请求消息进行协议转换,将其转换为对应的EMS能够识别的消息格式,然后将其发送给对应的EMS。
当协议处理模块接收到EMS的响应消息后,将其转换为NMS能够识别的消息格式,将转换后的响应消息发送给业务处理模块,由业务处理模块对其进行业务处理,然后,将处理后的响应消息通过消息处理模块发送给NMS。
线程管理模块S04包括线程分配模块S15和线程控制模块S16。其中,线程分配模块用于为业务处理模块分配处理不同请求消息所需的线程;线程控制模块用于控制业务处理模块处理不同请求消息所需的线程。
当NMS同时下发针对不同的EMS的多个请求消息时,由线程分配模块分别为这些消息对应的业务处理模块分配相应的业务处理线程,在分配的线程中调用相应的业务处理模块对请求消息进行业务处理。各业务处理模块在各自分配的线程中独立运行,这样即可并行处理NMS下发的对不同网元管理系统的请求消息。
由线程控制模块控制不同线程针对同一EMS的多个请求及响应消息串行工作。当NMS同时下发针对某个EMS的多个请求消息时,由线程分配模块分别为对应这些请求消息分配业务处理线程,调用对应的业务处理模块处理当前请求消息,在该请求消息处理完成后,线程控制模块将该线程挂起,当通过协议处理模块收到EMS返回的响应消息后,唤醒该线程处理收到的响应消息。在该业务处理线程通过协议处理模块与EMS进行交互时,如果其他的业务处理线程也需要与该EMS交互,则由线程控制模块控制,阻塞其他的业务处理线程,只有当该业务处理线程处理完响应消息处理后或者线程挂起超时后,才会继续其他的业务处理线程。超时时间可以根据实际需要来设定。
为了增强NMS的管理功能,对EMS的故障等进行统一管理,在图6所示本发明网管接口适配器的第二实施例中增加了通知上报模块S12和通知上报模块S13。
通知上报模块分别与消息处理模块S01、线程管理模块S04和协议处理模块S05相连,用于处理协议处理模块接收并进行协议转换后的EMS的上报消息,并将处理后的上报消息通过消息处理模块发送给NMS。
同样,在协议处理模块S05中预先配置了网元管理系统通知上报消息字与通知上报模块的对应关系。当协议处理模块接收到某个EMS的上报消息后,首先对该上报消息进行解析,转换成适配器内部接口识别格式,然后根据该对应关系通知线程管理模块为通知上报模块分配相应的线程,同时将转换后的上报消息传送给通知上报模块,由通知上报模块在分配的线程中对其进行处理,然后将处理后的上报消息通过消息处理模块发送给NMS。
当不同的EMS上报消息时,由协议处理模块对这些消息进行转换,并通知线程分配模块分别为这些来自不同的EMS的上报消息分配相应的线程,使通知上报模块分别在这些不同的线程中完成上报消息的处理,然后通过消息处理模块将处理后的上报消息发送给NMS。
同样,还可以在本发明网管接口适配器中设置定时检测模块,以完成一些定时检测功能。其分别连接于消息处理模块和协议处理模块,用于定时检测各EMS的连接状态,并将检测结果通过消息处理模块发送到NMS。例如,通过线程分配模块为其分配定时检测线程,通过该线程使定时检测模块与EMS定时进行交互,获取如EMS名称等信息,如果交互成功,标识网络连接正常。
由于本发明网管接口适配器需要管理多个EMS对象,使NMS可同时对这些EMS对象操作,因此可以在线程管理模块中建立一个线程池。对于每个EMS在协议转换模块中建立两个Socket(套接字)连接,其中一个是通知上报的Socket,另一个是请求处理的Socket。通过通知上报的Socket,在处理通知上报消息时,线程分配模块针对每个EMS创建一个通知上报线程,该通知上报线程通过阻塞方式无限循环读取EMS的通知上报消息;通过请求处理的Socket,在每得到NMS的请求操作后,立即开始一个新的线程,该线程将NMS侧的请求操作发送给EMS后挂起,直到EMS返回消息或等待超时后将该线程唤醒。
超时时间可以根据实际需要确定。由于一个对EMS的操作的超时时间是指此操作下发给EMS到EMS返回结果给网管接口适配器之间的时间,故超时时间不包括该操作被阻塞的时间。鉴于上述原因,要求NMS等待适配器返回消息的时间应该等于N*TIMEOUT(其中假定NMS对一个EMS的操作最多同时进行N个,即有N个对同一EMS进行操作的线程被阻塞),而TIMEOUT应该大于EMS的操作超时时间,为EMS的操作超时时间加业务处理线程阻塞时间。
图7是本发明方法的实现流程图,包括以下步骤步骤701分别建立对应于不同请求消息的业务处理模块。
步骤702通过业务处理模块同步并行处理对不同网元管理系统的请求消息。也就是说对于不同的请求消息需要分别独立处理,这些处理是并发进行的。
具体过程如下首先,获取请求消息对应的业务处理模块;分配对应于该业务处理模块的业务处理线程;然后,通过该业务处理线程同步串行处理对应于某网元管理系统的多个请求消息。
步骤703将处理后的请求消息下发给对应的网元管理系统;步骤704将不同的网元管理系统的响应消息进行协议转换后发送给网络管理系统。
在本发明方法中,采用同步通信机制实现NMS对多个EMS的并行管理,即对多个EMS的操作是并发的,而对单个EMS来说是串行的。
图8示出了采用同步通信机制对消息处理的控制流程首先,在步骤801获取NMS的请求消息。NMS下发的消息包括对不同的EMS的请求消息,以及对同一个EMS的多个请求消息。
步骤802分别获取请求消息对应的EMS。
比如,预先配置好EMS编号与EMS消息的对应关系,在NMS下发的请求中包括EMS编号信息,收到NMS下发的请求消息后,根据该请求消息中的EMS编号即可获知该消息是针对哪些EMS的。
步骤803获取对应于该请求消息的业务处理线程。
如果同时获得了NMS下发的多个请求消息,则需要为不同消息分配对应的业务处理线程,这些请求消息可能对应一个或多个EMS。
步骤804同步串行处理对应于该EMS的多个请求消息。
如果同时收到针对某个EMS的多个请求消息,则需要在上述分配的业务处理线程中对这些请求消息串行进行处理。同步串行处理过程如下首先,获取对应于该EMS的当前请求消息;然后,在分配的业务处理线程中处理当前请求消息,对处理后的请求消息进行协议转换,将其转换为所述对应的网元管理系统能够识别的格式。因为不同的EMS采用的协议可能不同,而NMS下发的消息格式则是完全一样的,因此需要根据各消息对应的EMS使用的协议,分别将其转换为对应的EMS能够识别的格式。
在对当前请求消息进行协议转换的同时,阻止对应于该EMS的下一个请求消息对应的业务处理线程处理后的消息进行协议转换;当所述当前请求消息处理结束后,挂起该线程,等待EMS返回针对该请求消息的响应消息。
当EMS返回响应消息后,或者等待超时后,释放该线程,使其他的业务处理线程继续处理针对该EMS的下一个请求消息。
当收到EMS返回的响应消息时,首先进行协议转换,将其转换为NMS能够识别的格式;然后获取对应于该EMS的业务处理线程,将处理完NMS的请求消息后挂起的线程唤醒,在该线程中对收到的响应消息进行业务处理。这样,对于不同的EMS,使其发送的响应消息也同样得到了并行的处理。将这些响应消息处理后就可发送给NMS。
为了增强NMS的管理功能,还可将EMS的故障信息等上报给NMS,由NMS进行统一管理。
EMS上报消息的处理流程如图9所示,包括以下步骤步骤901预先配置对应于各EMS的上报处理线程。
步骤902接收不同EMS的上报消息,比如,告警上报消息、性能上报消息等。
步骤903将接收的上报消息转换为NMS能够识别的格式。
步骤904在已分配的对应于该EMS的通知上报处理线程中对EMS上报消息进行业务处理。当EMS有多个上报消息时,需要在该上报处理线程中对这些消息串行处理。
该串行处理是在单个EMS通知上报线程内串行处理每个通知消息,而对请求消息的同步串行处理是当多个业务处理线程需要与同一个EMS交互时所需要的,这两者是不同的。
步骤905将处理后的上报消息发送给NMS。
当然,也可以由接收的EMS上报消息触发相应的上报处理线程。每个EMS对应一个上报处理线程,如果某EMS有多个消息需要上报,则在对应的上报处理线程中串行处理这些上报消息。
虽然通过实施例描绘了本发明,本领域普通技术人员知道,本发明有许多变形和变化而不脱离本发明的精神,希望所附的权利要求包括这些变形和变化而不脱离本发明的精神。
权利要求
1.一种网管接口适配器,用于完成网络管理系统与多个网元管理系统之间的协议适配,其特征在于,所述适配器包括消息处理模块、至少一个业务处理模块、协议处理模块,线程管理模块;所述消息处理模块接收所述网络管理系统下发的请求消息,并将其转发给对应的业务处理模块对其进行业务处理,然后,由所述协议处理模块对处理后的请求消息进行协议转换并发送给对应的网元管理系统;所述协议处理模块接收到所述网元管理系统的响应消息后,对所述响应消息进行协议转换并发送给对应的业务处理模块,由所述业务处理模块对其进行业务处理,并将处理后的响应消息通过所述消息处理模块发送给所述网络管理系统;所述线程管理模块分别耦合于所述业务处理模块,用于为各业务处理模块分配业务处理线程并控制所述业务处理模块在所述业务处理线程中的运行。
2.根据权利要求1所述的网管接口适配器,其特征在于,所述线程管理模块包括线程分配模块,用于为所述业务处理模块分配处理不同请求消息所需的业务处理线程;线程控制模块,用于控制所述业务处理模块处理请求消息时所需的线程。
3.根据权利要求1所述的网管接口适配器,其特征在于,所述适配器还包括与所述网元管理系统对应的多个通知上报模块,分别耦合于所述消息处理模块、所述线程管理模块和所述协议处理模块,用于处理所述协议处理模块接收并进行协议转换后的网元管理系统的上报消息,并将处理后的上报消息通过所述消息处理模块发送给所述网络管理系统。
4.根据权利要求1所述的网管接口适配器,其特征在于,所述适配器还包括定时检测模块,分别耦合于所述消息处理模块和所述协议处理模块,用于定时检测所述网元管理系统的连接状态。
5.一种网管接口信息交互的方法,用于实现网络管理系统与多个网元管理系统之间的通信,其特征在于,所述方法包括A、分别建立对应于不同请求消息的业务处理模块;B、通过所述业务处理模块同步并行处理对不同网元管理系统的请求消息;C、将处理后的请求消息下发给对应的网元管理系统;D、将不同的网元管理系统的响应消息进行协议转换后发送给所述网络管理系统。
6.根据权利要求5所述的网管接口信息交互的方法,其特征在于,所述步骤B包括B1、获取所述请求消息对应的业务处理模块;B2、分配对应于所述业务处理模块的业务处理线程;B3、通过所述业务处理线程同步串行处理对应于所述网元管理系统的多个请求消息。
7.根据权利要求6所述的网管接口信息交互的方法,其特征在于,所述步骤B3包括B31、在所述业务处理线程中处理当前请求消息;B32、对处理后的请求消息进行协议转换,将其转换为所述对应的网元管理系统能够识别的格式,同时阻止对应于该网元管理系统的其他业务处理线程处理后的消息进行协议转换;B33、当所述当前请求消息处理结束后,挂起所述业务处理线程。
8.根据权利要求7所述的网管接口信息交互的方法,其特征在于,所述步骤D包括D1、将所述网元管理系统的响应消息转换为所述网络管理系统能够识别的格式;D2、在对应于该网元管理系统的业务处理线程中处理转换后的响应消息;D3、将处理后的响应消息发送给所述网络管理系统。
9.根据权利要求8所述的网管接口信息交互的方法,其特征在于,所述步骤D2包括D21、唤醒所述挂起的业务处理线程;D22、在唤醒后的业务处理线程中处理所述转换后的响应消息。
10.根据权利要求9所述的网管接口信息交互的方法,其特征在于,所述步骤B3还包括当在所述业务处理线程中将对应于当前请求消息的响应消息处理完成后或者所述业务处理线程挂起超过预定时间后,结束该业务处理线程,使被阻塞的其他业务处理线程继续运行。
11.根据权利要求5所述的网管接口信息交互的方法,其特征在于,所述方法还包括E、接收不同网元管理系统的上报消息;F、对所述上报消息同步处理后发送给所述网络管理系统。
12.根据权利要求11所述的网管接口信息交互的方法,其特征在于,所述步骤F包括F1、配置对应于不同网元管理系统的上报处理线程;F2、将所述上报消息转换为所述网络管理系统能够识别的格式;F3、通过所述上报处理线程串行处理对应于所述网元管理系统的上报消息;F4、将处理后的上报消息发送给所述网络管理系统。
全文摘要
本发明公开了一种网管接口适配器,所述适配器包括消息处理模块、至少一个业务处理模块、协议处理模块,线程管理模块。本发明还公开了一种网管接口信息交互的方法,包括分别建立对应于不同请求消息的业务处理模块;通过业务处理模块同步并行处理对不同网元管理系统的请求消息;将处理后的请求消息下发给对应的网元管理系统;将不同的网元管理系统的响应消息进行协议转换后发送给网络管理系统。利用本发明,可以简单有效地实现网络管理系统对不同网元管理系统的统一管理。
文档编号H04L12/24GK1812397SQ20051000275
公开日2006年8月2日 申请日期2005年1月26日 优先权日2005年1月26日
发明者陶建军 申请人:华为技术有限公司