用户登录  |  用户注册
首 页商业源码原创产品编程论坛
当前位置:PB创新网文章中心解决方案电子通信

网络管理技术及电信管理网的开发

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2009-01-11 00:06:06
SG将复杂的通信基础设施和面向对象技术相结合,提供构筑分布式计算的软件平台。通信基础设施支持分布式计算中通信域的通信要求。如图4所示,它提供了四种主要的服务:透明远程操作、远程过程调用和消息传递、抽象数据服务及命名服务。借助于并发的面向对象框架,一个复杂的应用可以分解成一组相互通信的并发对象worker,除了支持例如类和多重继承等重要的传统面向对象特征外,为了构筑新的worker类,DSG也支持分布式对象。在一个开放系统中,一个worker可以和其它worker进行通信,而不必去关心它们所处的物理位置。

DSG提供给用户用以开发应用的构造块(building block)称为worker。一个worker可以有自己的控制线程,也可以和别的线程共享一个控制线程,每个Worker都有自己的服务访问点SAP(Service Access Point),通过SAP与其它worker通信。Worker是事件驱动的。在Worker内部,由有限状态机FSM(Finite State Machine〕定义各种动作及处理例程,DSG接受外部事件并分发到相应的动作处理例程进行处理。如图5所示,独占线程的此worker有三个状态,两个SAPs,并且每个SAP的消息队列中都有两个事件。DSG环境通过将这些事件送到相应的事件处理程序中来驱动worker的有限状态机。

Worker是分布式的并发对象,DSG用它来支持面向对象的特点,如:类,继承等等。Worker由worker class定义。Worker可以根据需要由应用程序动态创建。在一个UNIX进程中可以创建的Worker个数仅受内存的限制。

管理者工具箱由ASN.C/C++编译器、CMIP/ROSE协议和管理者代码生成器MCG构成,如图6所示。

其中的CMIP/ROSE协议提供全套符合Q3接口选用的OSI七层协议栈实施。由于TMN在典型的电信环境中以面向对象的信息模型控制和管理物理资源,所有被管理的资源均被抽象为被管对象(M0),被管理系统中的代理帮助管理者通过MO访问被管理资源,又根据ITU-T M.3010建议:管理者与代理之间通过Q3接口通信。为此管理者必须产生与代理通信的CMIP请求。管理者代码生成器读取信息模型(GDMO文件和ASN.1文件),创立代码模板来为每个被定义的MO类产生CMIP请求和CMIP响应。由于所有CMIP数据均由ASN.1符号定义,而上层管理应用可能采用C/C++,故管理者应用需要包含ASN.1数据处理代码,管理者工具箱中的ASN C/ C++编译器提供ASN.1数据到C/C++语言的映射,并采用“预处理技术“生成ASN.1数据的低级代码,可见利用DSET工具用户只需编写网管系统的信息模型和相关的抽象数据类型定义文件,然后利用DSET的ASN C/C++编译器,管理者代码生成器即可生成管理者部分代码框架。

代理工具箱包括可砚化代理生成器VAB、CMIP翻译器、ASN.C/C++ Toolkit,其结构见图7。用来开发符合管理目标定义指南GDMO和通用管理信息协议CMIP规定的代理应用.使用DSET独具特色的代理工具箱的最大的好处就是更快、更容易地进行代理应用的开发。DSET在代理应用的开发上为用户做了大量的工作。

一个典型的GDMO/CM1P代理应用包括三个代码模块:

·代理、MIT、MIB的实施

·被管理资源的接口代码

·后端被管理资源代码

第一个模块用于处理代理与MO实施。代理工具箱通过对过滤、特性处理、MO实例的通用支持,自动构作这一个模块。DSET的这一部分做得相当完善,用户只需作少量工作即可完成本模块的创建。对于mcreate、m-delete、m-get、m-cancel-get、m-set、m-set-confirmed、m-action、m-action-confirmed这些CMIP请求,第一个模块中包含有缺省的处理代码框架。这些缺省代码都假定管理者的CMIP请求只与MO打交道。为了适应不同用户的需求,DSET代理工具箱又提供在缺省处理前后调用用户程序的接入点(称为User hooks)。当某CMIP请求需与实际被管资源或数据库打交道时,用户可在相应的PRE-或POST-函数中加入自己的处理代码。例如,当你需要在二层管理应用中发CMIP请求,需望获取实际被管资源的某属性,而该属性又不在相应MO中时你只需在GDMO预定义模板中为此属性定义一PRE-GET函数,并在你自己的定制文件中为此函数编写从实际被管设备取到该属性值的代码即可。DSET的Agent代码在执行每个CMIP请求前都要先检查用户是否在GDMO预定义文件中为此清求定义了PRE-函数,若是,则光执行PRE-函数,并根据返回值决定是否执行缺省处理(PRE-函数返回D-OK则需执行缺省处理,否则Agent向管理者返回正确或错误响应)。同样当Agent执行完缺省处理函数时,也会检查用户是否为该请求定义了POST-函数,若是则继续执行POST-函数。至于Agent与MO之间具体是如何实现通信的,用户不必关心,因为DSET已为我们实现了。用户只需关心需要与设备交互的那一部分CMIP请求,为其定制PRE-/POST函数即可。

第二个模块实现MO与实际被管资源的通信。它的实现依赖于分布式系统生成器DSG所提供“网关处理单元”(gateway)、远程过程调用(RPC)与消息传递机制及MSL语言编译器。通信双方的接口定义由用户在简化的ROSE应用中定义,在DSG中也叫环境,该环境定义了双方的所有操作和相关参数。DSG的CTX编译器编译CTX格式的接口定义并生

上一页  [1] [2] [3] [4] [5] [6]  下一页

Tags:

作者:佚名

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
PB创新网ourmis.com】Copyright © 2000-2009 . All Rights Reserved .
页面执行时间:37,453.13000 毫秒
Email:ourmis@126.com QQ:2322888 蜀ICP备05006790号