《电子技术应用》
您所在的位置:首页 > 通信与网络 > 业界动态 > 面向业务网络管理系统的通信模型的研究

面向业务网络管理系统的通信模型的研究

2009-02-19
作者:王建国,胡 川,洪 晶

  摘  要: 主要针对基于主动网络的面向业务网管系统的具体通信需要,分析了应该具备的通信功能,设计了执行环境,提出了一种分布式的主动代码存储机制,构建了业务层和网络层的通信有限自动机,提出了符合业务管理和主动网络技术特点的通信模型。该通信模型在网管原型系统中得到了运用,从运用结果看它能够较好地进行主动代码的动态加载,能够提供基础的通信服务。
  关键词: 通信模型; 主动网络; 网络管理; 面向业务

 

  通信在网络管理系统中占据着重要的地位,是网络管理系统必不可少的支撑功能之一。在网管系统中,管理中心需要下发各种管理命令,采集各种网管数据,这些都需要通过频繁的通信来完成,而且通常需要传输的数据量比较大,如果没有有效的通信模型的支撑,可能会造成网管系统的通信瓶颈。因此,通信模型直接影响着网管系统的性能。
  本项目组在多年从事网络管理和主动网络技术[1,2]研究的基础上,借鉴主动网络技术和电信网络业务管理的先进思想,提出了一种基于主动网络技术的面向业务的管理模型,并实现了原型系统。在该原型系统中,根据面向业务网管系统的需要和主动网络技术的特点,创新性地提出了一种符合需求的通信模型。
  在通信方面,面向业务的网络管理系统[3]与传统的网络管理系统具有共同之处。例如,处于业务层的网管中心与网络层的管理者之间需要通信以下达各种管理命令或者反馈管理数据,管理者mgr与下层的代理agent之间也需要通信以便采集各种管理数据。但是,在基于主动网络技术的面向业务网络管理系统中,由于业务管理的特殊性,需要利用主动网络技术采用主动代码实现对业务的管理。因此,在通信方面,与其他的业务管理系统又有不同之处,如由于采用了主动网络技术,就必须为主动代码的加载提供通信支持。为此,提出了一种满足上述要求的通信模型。本文将介绍这种符合业务管理和主动网络技术特点的通信模型,阐述主动代码的动态加载机制以及基于有限自动机的通信机制。
1 面向业务网管的通信模型
  一般网络管理系统中的通信服务主要包含以下内容[4]:网络管理命令的传送和接收、对管理命令的应答、传送各种通知或告警Trap信息。与传统的面向设备网络管理系统不同,面向业务的网络管理以网络业务为被管对象,也就是说在面向业务的网管系统中,通信的内容不仅有传统的设备对象数据,而且有业务管理层需要的业务对象数据。而在基于主动网络技术的面向业务网管系统中还应包含支持主动网络技术方面的通信内容,如主动代码的加载与传输。因此,根据基于主动网络技术的网管系统的需要,通信模块应该提供以下几种通信服务:(1)发送和接收主动信包;(2)发送和接收应答信包;(3)发送和接收通知或告警信包;(4)发起主动代码加载请求;(5)提供主动代码加载服务。为了满足这些通信服务的需求,提出了一种基于主动网络技术的面向业务网管的通信模型,如图1所示。

 

  从图1可以看到,主动节点ANN(Active Network Node)位于业务层和网络层,业务层的管理进程和网络层的主动管理者mgr均运行在主动节点上。管理进程根据管理功能的需要,通过发送主动信包AP(Active Packets)的形式发送管理命令(主动信包中包含有管理功能命令和相应的完成管理命令的主动代码的指针以及相关的参数),主动管理者收到主动信包后,解析主动信包AP,利用主动代码动态加载机制(详见第2节)动态加载主动代码AC(Active Code),并执行主动代码,采集相关的业务管理数据。由于与传统网络管理系统相同,主动管理者mgr与代理agent之间的通信仍然通过传统的网管协议(如SNMP或CMIP等)完成。因此,mgr与agent之间的通信在本文中不再赘述。
2 主动代码分发机制
  业务管理功能通过主动代码来实现,因此,如何将主动代码有效、准确地分发到相关的主动节点上以完成需求的管理功能是首先需要解决的问题。同时,根据主动网络的体系结构,主动信包的解析和主动代码的执行是在执行环境EE(Execution Environment)部件中完成的,因此要解决主动代码的分发和执行,需要研究和设计EE。
2.1 执行环境EE的设计
  执行环境EE在主动网络中占据核心的地位,为主动信包的解析和主动代码的执行提供必要的服务。在目前的主动网络实现技术中,通常采用Java虚拟机JVM(Java Virtual Machine)机制[5]。这是由于采用JVM作为执行环境的核心部件,主动代码就可以采用Java语言编写,便于管理功能的实现以及主动代码的加载。但是仅有JVM是不够的,EE必须能够管理本机的各种资源、收发和识别主动信包、管理本地存储的主动代码、加载和启动主动代码。这些都是一个完备的EE所必须的功能。为了完成上述功能,在每个主动节点上安装JVM,并使用Java语言开发了执行环境的各个部件。EE的结构如图2所示。

 

  从图2可以看出,执行环境由三部分组成:Java虚拟机、通信模块和类编译加载器。

  Java虚拟机:所有的部件(包括通信模块、类编译加载器以及主动代码)都是由Java语言开发的,所以它们的运行都离不开JVM提供的接口和服务。
  通信模块:通信模块不仅仅提供通信的接口和服务,还负责进行管理命令的侦听。可以说,位于通信模块中的命令侦听服务是整个管理应用运行的起点。
  类编译加载器:负责实现对类加载,有需要时也可以对没有编译过的Java文件进行处理,编译成类文件,以便在JVM上加载和执行。
2.2 分布式主动代码存储机制
  在目前的研究中,主动代码的分发主要有两种方式:封装和可编程交换[6]。基于封装的传输方式是:将代码和数据封装在一起,形成主动信包进行传输;而基于可编程交换的传输方式是:将代码和数据分离,用户预先将主动代码传送到目的主动节点并存储,在主动信包中只需包含相应主动代码的指针及必要的参数。这两种方法完全对立,各有优缺点。封装给分组交换网络带来了全新的方案,并对网络体系结构产生深远的影响。因为,主动节点ANN计算处理每个流经它的信包,并能够根据计算结果决定对信包的下一步处理工作,这对于网络诊断、主动可靠多播等应用十分有利。但是,一方面,由于对主动信包的解释目前都是采用虚拟机机制,为了保证安全,虚拟机机制必须限制封装主动代码AC的访问地址空间,即主动信包中代码的长度受到一定的限制,如Smart Packets[7]中代码的长度不能超过1KB,从而也限制了封装中AC的功能。另一方面,由于AC封装在主动信包中,使用相同AC的主动信包也就包含了相同的AC,即相同的AC在网络中重复传递,从而增加了网络上的信息流量。而可编程交换不存在这些缺点,由于代码与数据相分离,代码的长度不受信包长度的限制;使用相同AC的主动信包只需要包含相同的指针即可;代码的安全性可通过安全责任者(发送AC的管理者)的身份加以保证。但可编程交换也存在一些缺点,例如,由于主动信包的可流动和可再生特性,使得有的目的ANN预先无法确定;信包在中间节点只能被动地转发,灵活性不如封装。
  为了提高主动网络的运行性能,将可编程交换和封装两种技术相结合,研究了一种分布式的主动代码存储(DCCAN:Distributed Code Caching for Active Network)机制来实现主动代码AC的分发。DCCAN的基本思想是:网络上传递的主动信包AP中不再包含完整的主动代码AC,而只需包含相应主动代码的指针及状态参数、数据等信息。将各种主动代码分布式地存放在专门的主动代码服务器ACS(Active Code Server)或驻留在主动节点ANN中,其结构如图3所示。

 

 

  在图3中,ACS提供一个代码数据库,用于专门存放所有的AC,终端系统是指能够产生和发送主动信包的终端节点。当ANN接收到某个主动信包AP后,执行环境EE将AP进行解析,先检测指针所指示的AC在本地代码数据库LCD(Local Code Database)中是否存在,若存在,就立即调用;否则请求从ACS中临时动态加载并执行,同时将该AC存储在LCD中,以便后来到达的相同信包可以直接启动使用。可见,需要使用相同的AC不必再从ACS加载而可以直接从LCD中调用,即相同的AC在网络上只需传输一次,从而大大地降低了网络传输量,提高了网络的运行效率。
3 业务层与网络层间的通信机制
  图1中,主动节点ANN1与ANN2之间基于UDP协议通信(为了信息传输的可靠性,增加了对信息接收的确认),通过ANN1与ANN2之间的交互就能够实现业务层与网元层的通信。首先,考虑当AP流经ANN时,由ANN1和ANN2对AP进行解析、执行,这样ANN1和ANN2就会由于AP的输入输出而发生节点状态改变;其次,如果把ANN1和ANN2分别看作Client和Server两端的自动机,则ANN1和ANN2这两个节点状态的改变就体现出两个自动机之间的信息交互关系。因此,根据图1,可以构造ANN1与ANN2之间基于UDP协议的通信模型有限自动机UDP_ M。
  (1) 定义有限自动机UDP_ M
  定义:UDP_ M是一个七元组:UDP_M=(Q,∑i,∑o,δ,q0,F,C),其中,
  Q:通信状态的非空有限集合。
  ∑i:有限的输入字母表,Client_ANN1的输入字母表是指从Client端下达的主动代码和Server端上传的数据包;Server_ANN2的输入字母表是指所接收的主动代码和网络管理者Mgr.采集的网元数据。
  ∑o:有限的输出字母表,Client_ANN1的输出字母表是指给Client端上传的数据包和给Server端下达的主动代码;Server_ANN2的输出字母表是指给Client_ANN1上传的数据包和给Client_ANN1下达指令代码执行的输出。
  δ:状态转移函数,δ:Q×∑i×∑o→Q。
  q0:UDP_ M的开始状态,且q0∈Q。
  F:UDP_ M的终止状态集合,且FQ。
  C:限定条件集合。在ANN1和ANN2之间进行数据通信时,应当设置关于数据传输的属性,即Free(闲置时间)、TimeOut(超时)、TTL(生存周期)或Delay(延迟)等。
  (2)构造有限自动机Server_ANN2_UDP_ M
  定义:有限自动机Server_ANN2_UDP_ M=(Q,∑i,∑o ,δ,q0,F,C),其中,
  Q={Free, Send, Get_Confirm, Confirm}。
  ∑i={Yes_Confirm,Server_Request,TimeOut,No_Confirm}。
  ∑o={ANN2_network element datagram,Confirm_To_Client}。
  δ定义:若Server_ANN2处于闲置状态,则准备向Client_ANN1发送网元数据,描述为:
  δ(Free, Server_Request,Φ)=Send
  Server_ANN2向ANN1发送网元数据后,等待获取确认,
  描述为:
  δ(Send,Φ,ANN2_network element datagram)=Get_Confirm
  当通信网络不可靠时,UDP数据报不能传输,通信自动机根据重传次数RF(Retransmission Frequency)的阈值,决定下一步的状态转移,描述为:
         If RF      δ(Get_Confirm, TimeOut,Φ)=Send
    Else
      δ(Get_Confirm, TimeOut, Φ)= Free
    End if
  当网络可靠时,UDP数据报传输正常,自动机进行无条件状态转换。在Confirm状态下,通信自动机发生有条件的状态转换,描述为:
  δ(Get_Confirm, Φ, Φ)= Confirm
  在超时条件下,通信自动机则根据RF的阈值来发生两种异常状态转换,描述为:
      If C_UDP_TimeOut and RF>= C_UDP_RF Then
        δ(Confirm, No_Confirm, Φ)= Free
     Else if C_UDP_TimeOut and RF< C_UDP_RF Then
             δ(Confirm, No_Confirm, Φ)= Confirm
      End if
  q0 = {Free}。
  F = {Free}。
  C = {RF=C_UDP_RF}。
    (3) 构造有限自动机Client_ANN1_UDP_M
    对于有限自动机Client_ANN1_UDP_M=(Q,∑i,∑o,δ, q0,F,C),同理按照有限自动机Server_ANN2_UDP_M可以进行构造。
    通信模型在网络管理系统中占据重要的地位,是网络管理系统必不可少的支撑功能之一,通信模型直接影响着网管系统的性能。在基于主动网络技术的面向业务的网络管理系统中,基于业务管理的特殊性,利用主动网络技术采用主动代码实现对业务的管理。因此,从通信角度看,一方面由于通信的内容不仅包含了传统的设备对象数据,同时也包含了业务对象数据;另一方面,由于主动网络技术的特点,还需要充分考虑主动代码的通信。为此,本文提出了一种符合业务管理和主动网络技术特点的通信模型。该模型在笔者开发的原型系统中得到了运用,从运用结果看,该通信模型能够较好地进行主动代码的动态加载,能够提供给出的通信服务。同时由于该通信模型也有与网络管理系统无关的主动代码加载以及主动信包的传输功能,可以应用于其他基于主动网络技术应用的通用通信设施,提供基础的通信服务。


参考文献
[1]  CALVERT K L.Directions in active network[J].IEEE Comm.Mag.,1998,36(10):72-78.
[2]  DAVID L T,JONATHAN M S. A survey of active network research[J]. IEEE Comm. Mag., 1997,35(1):80-86.
[3]  郭健,吴伟明,张爱霞. 面向业务的NGN综合网管系统的研究[J].数据通信,2005(3):9-12.
[4]  王立, 李增智, 闫焱,等. 业务管理网结构和概念模型的研究与实现[J]. 西安交通大学学报, 2003,37(8):878-880.
[5]  DATTATRI S. An architecture for management of active
 network[D]. A paper for Degree of Master, University of
 TEXAS at Arlington, 1998.
[6]  何丹,谢立. 一种新型的网络体系结构——主动网络.
 计算机研究与发展, 1999,36(1):1-7.
[7]  SCHWART B. Smart packets for active network. BBN
 Technologies draft, http://www.nettech.bbn.com/smtpkts/
 smart.ps.gz, 1998.

本站内容除特别声明的原创文章之外,转载内容只为传递更多信息,并不代表本网站赞同其观点。转载的所有的文章、图片、音/视频文件等资料的版权归版权所有权人所有。本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如涉及作品内容、版权和其它问题,请及时通过电子邮件或电话通知我们,以便迅速采取适当措施,避免给双方造成不必要的经济损失。联系电话:010-82306118;邮箱:aet@chinaaet.com。