CN101145953A - 网络设备管理软件动态调试的方法和系统 - Google Patents
网络设备管理软件动态调试的方法和系统 Download PDFInfo
- Publication number
- CN101145953A CN101145953A CNA2007101110691A CN200710111069A CN101145953A CN 101145953 A CN101145953 A CN 101145953A CN A2007101110691 A CNA2007101110691 A CN A2007101110691A CN 200710111069 A CN200710111069 A CN 200710111069A CN 101145953 A CN101145953 A CN 101145953A
- Authority
- CN
- China
- Prior art keywords
- registration center
- network device
- management software
- user
- order
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种网络设备管理软件动态调试的方法和系统,其中,该方法包括以下步骤:步骤一,当开发网络设备管理软件时,定义统一的对象接口;步骤二,当启动网络设备管理软件时,将对象注册到注册中心;步骤三,注册中心响应对象的注册,接受用户的登录;以及步骤四,用户登录注册中心,输入动态调试命令进行动态调试。因而,通过本发明,克服了现有技术中为了进行动态调试,需要重新启动网管以及拥有网管源代码的缺点,实现了网络设备管理软件的动态调试。
Description
技术领域
本发明涉及通信领域,更具体的,涉及一种网络设备管理软件动态调试的方法和系统。
背景技术
网络设备管理软件(以下简称为网管)是通信网络的控制中心和数据中心。为了提高可靠性和可维护性,需要在网管运行期间也支持动态调试。这样,无论是遇到突发故障还是进行主动维护,都可以做到快速响应。
所谓的在运行期间支持动态调试就是指在网管运行期间,可以通过某种机制查看和设置网管中的重要数据。这种情形类似于调试程序当中的动态调试,可以查看变量的取值并且直接修改当前变量的取值,让程序继续运行。
一般意义上的动态调试都需要重新启动网管以及拥有网管源代码,才能观察到运行当中的变量取值以及修改变量取值。这种动态调试一方面要求必须拥有源代码,当网管已经交付客户使用之后,这个条件是不具备的。另外,重新启动网管可能就无法重现刚才出现的问题,只能够根据之前的现象去猜测,严重影响定位和解决问题的效率。
因而,急需一种解决方案,能够不需要停止或者重新启动当前网管,也不需要获取网管的源码,实现对网管的动态调试。
发明内容
本发明提供了一种网络设备管理软件动态调试的方法和系统,克服了现有技术中为了进行动态调试,需要重新启动网管以及拥有网管源代码的缺点。
本发明的一个方面提供了一种网络设备管理软件动态调试的方法,其可以包括以下步骤:步骤一,当开发网络设备管理软件时,定义统一的对象接口;步骤二,当启动网络设备管理软件时,将对象注册到注册中心;步骤三,注册中心响应对象的注册,接受用户的登录;以及步骤四,用户登录注册中心,输入动态调试命令进行动态调试。
步骤二中包括以下处理:在网络设备管理软件启动之后,启动对象和注册中心;以及网络设备管理软件内的对象将自己注册到注册中心。
步骤三中包括以下处理:在对象注册到注册中心之后,监听对象的端口;以及注册中心接受用户的登录。
步骤四中包括以下处理:在登录到注册中心之后,用户根据用户手册输入注册中心支持的命令;注册中心将命令转发给对象;以及对象执行命令来支持动态调试。
上述命令可以包括两种类型:查询和设置,其中,查询类型的命令要求对象将目前的状态输出给用户,用于进行故障的定位;以及设置类型的命令要求对象将目前的状态按照用户的要求进行改变,用于进行故障的解决。
本发明还提供了一种网络设备管理软件动态调试的系统,其可以包括:定义单元,用于在开发网络设备管理软件时,定义统一的对象接口;注册单元,用于当启动网络设备管理软件时,将对象注册到注册中心;登录单元,用于在注册中心响应对象的注册后,接受用户的登录;以及调试单元,用于在用户登录注册中心后,输入动态调试命令进行动态调试。
注册单元包括:启动模块,用于在网络设备管理软件启动之后,启动对象和注册中心;以及对象自注册模块,用于使网络设备管理软件内的对象自己注册到注册中心。
登录单元包括:监听模块,用于在对象注册到注册中心之后,监听指定端口;以及登录接受模块,用于接受用户的登录。
调试单元包括:输入模块,用于在登录到注册中心之后,根据用户手册输入注册中心支持的命令;转发模块,用于将来自输入模块的命令转发给对象;以及执行模块,用于执行命令来支持动态调试。
上述命令可以包括两种类型:查询和设置,其中,查询类型的命令要求对象将目前的状态输出给用户,用于进行故障的定位;以及设置类型的命令要求对象将目前的状态按照用户的要求进行改变,用于进行故障的解决。
本发明提供了一种网管支持动态调试的技术方案,与现有的动态调试技术相比有以下优点:
一、不需要网管源代码,在网管已经交付客户使用的情形下,依然可以进行动态调试;
二、不需要重新启动网管,便于准确高效地定位问题;以及
三、支持远程的动态调试,便于开发人员远程进行问题的定位和解决。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1是根据本发明的网络设备管理软件动态调试的方法的流程图;
图2是描述了网管的各个对象和注册中心的关系的示图;
图3是描述了收到用户的命令之后的注册中心和对象的调用关系的示图;以及
图4是根据本发明的网络设备管理软件动态调试的系统的框图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
图1是根据本发明的网络设备管理软件动态调试的方法的流程图,图2是描述了网管的各个对象和注册中心的关系的示图,以及图3是描述了收到用户的命令之后的注册中心和对象的调用关系的示图,以下参考图2和图3对图1进行详细描述。
如图1所示,网络设备管理软件动态调试的方法包括以下步骤:
步骤S102,当开发网络设备管理软件时,定义统一的对象接口;
步骤S104,当启动网络设备管理软件时,将对象注册到注册中心:
步骤S106,注册中心响应对象的注册,接受用户的登录;以及
步骤S108,用户登录注册中心,输入动态调试命令进行动态调试。
在步骤S102中,一般来说,网管都是使用面向对象的编程语言来进行开发,比如说C++,java等等。为网管当中一些重要的对象定义统一的对象接口,这些接口就是为了支持动态调试。
定义对象接口的技术有很多种,其中比较通用的是使用IDL。为了能让不同语言(机器环境,操作系统)下的对象与对象之间可以对话,需要一套共同语言。IDL就是专门为此而制定的。IDL(InterfaceDefinition Language)看起来非常类似与C++(或Java)的头文件定义。IDL定义了一个对象支持的方法和属性,一个对象的实现只要符合这个定义,可以完全自由开发,例如,你可以用任何你喜欢的语言。给出一个对象的IDL文件,其它对象就完全掌握了这个对象的行为,可以按照自己的意图随意操纵。另外IDL不仅仅是让人看的,IDL编译器可以编译它,替程序员自动生成sub和skeleton,使得程序员从这项难堪的工作中解脱出来。
另外,步骤S104中具体包括以下处理:在网络设备管理软件启动之后,启动对象和注册中心;以及网络设备管理软件内的对象将自己注册到注册中心。
实现注册中心的技术有多种,此处推荐使用Corba的对象命名服务。Corba的对象命名服务就是给对象实例提供一个名称,以便用户通过这些名称来获取对象的实例。对象命名服务是ORB上的对象找到其它对象的基本机制。名字是用来识别一个对象的可人工辨认的值,命名服务将这些名字映射到对象标记,名字-对象关联叫做名字联编。命名语言环境是一个名字空间,对象名字在这里是独一无二的。每个对象都有一个独一无二的参考标识符。可以有选择地将一个或多个名字与一个对象标记关联起来。相对于其命名语言环境始终定义一个名字。
利用命名服务可以创建命名分层结构,客户可以搜寻不同的命名语言环境树,查找所要的对象。来自不同域的名字语言环境可以一起使用,为对象创建联合命名服务。CORBA命名分层结构不需要一个“统一”的根目录。一般情况下,用户可以规定对象的命名原则,表示对象所在的主机,功能等一系列的信息。
进一步,步骤S106中具体包括以下处理:在对象注册到注册中心之后,监听对象的端口;以及注册中心接受用户的登录。
注册中心和用户的交互协议可以有多种,这里推荐使用Telnet。Telnet是传输控制协议/因特网协议(TCP/IP)网络(例如Internet)的登录和仿真程序。它最初是由ARPANET开发的,但是现在它主要用于Internet会话。它的基本功能是,允许用户登录进入远程主机系统。以前,Telnet是一个将所有用户输入送到远方主机进行处理的简单的终端程序。它的一些较新的版本在本地执行更多的处理,因而可以提供更好的响应,并且减少了通过链路发送到远程主机的信息数量。
步骤S108中具体包括以下处理:在登录到注册中心之后,用户根据用户手册输入注册中心支持的命令;注册中心将命令转发给对象;以及对象执行命令来支持动态调试。
其中,用户手册当中会明确写出对象支持的哪些命令,这些命令需要哪些输入参数,这些命令执行之后有哪些效果,会有什么样的输出等等信息。命令一般分成两种类型,一种类型是查询,另外一种类型是设置。查询类的命令主要是要求对象将目前的状态输出给用户,此时主要是进行故障的定位。而设置类的命令主要是要求对象将目前的状态按照用户的要求进行改变,此时主要是进行故障的解决。
如上所述的命令可以包括两种类型:查询和设置,其中,查询类型的命令要求对象将目前的状态输出给用户,用于进行故障的定位;以及设置类型的命令要求对象将目前的状态按照用户的要求进行改变,用于进行故障的解决。
图4是根据本发明的网络设备管理软件动态调试的系统400的框图。如图4所示,该系统包括:定义单元402,用于在开发网络设备管理软件时,定义统一的对象接口;注册单元404,用于当启动网络设备管理软件时,将对象注册到注册中心;登录单元406,用于在注册中心响应对象的注册后,接受用户的登录;以及调试单元408,用于在用户登录注册中心后,输入动态调试命令进行动态调试。
注册单元404包括:启动模块,用于在网络设备管理软件启动之后,启动对象和注册中心;以及对象自注册模块,用于使网络设备管理软件内的对象自己注册到注册中心。
登录单元406包括:监听模块,用于在对象注册到注册中心之后,监听指定端口;以及登录接受模块,用于接受用户的登录。
调试单元408包括:输入模块,用于在登录到注册中心之后,根据用户手册输入注册中心支持的命令;转发模块,用于将来自输入模块的命令转发给对象;以及执行模块,用于执行命令来支持动态调试。
上述命令可以包括两种类型:查询和设置,其中,查询类型的命令要求对象将目前的状态输出给用户,用于进行故障的定位;以及设置类型的命令要求对象将目前的状态按照用户的要求进行改变,用于进行故障的解决。
综上所述,通过本发明的方法和系统,不需要网管源代码,在网管已经交付客户使用的情形下,依然可以进行动态调试,而且不需要重新启动网管,便于准确高效地定位问题。另外,本发明的方案支持远程的动态调试,便于开发人员远程进行问题的定位和解决。
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种网络设备管理软件动态调试的方法,其特征在于,包括以下步骤:
步骤一,当开发网络设备管理软件时,定义统一的对象接口;
步骤二,当启动网络设备管理软件时,将对象注册到注册中心;
步骤三,所述注册中心响应所述对象的注册,接受用户的登录;以及
步骤四,所述用户登录所述注册中心,输入动态调试命令进行动态调试。
2.根据权利要求1所述的方法,其特征在于,所述步骤二包括以下处理:
在所述网络设备管理软件启动之后,启动所述对象和所述注册中心;以及
所述网络设备管理软件内的对象将自己注册到所述注册中心。
3.根据权利要求1所述的方法,其特征在于,所述步骤三包括以下处理:
在所述对象注册到所述注册中心之后,监听所述对象的端口;以及
所述注册中心接受所述用户的登录。
4.根据权利要求1所述的方法,其特征在于,所述步骤四包括以下处理:
在登录到所述注册中心之后,所述用户根据用户手册输入所述注册中心支持的命令;
所述注册中心将所述命令转发给所述对象;以及
所述对象执行所述命令来支持动态调试。
5.根据权利要求4所述的方法,其特征在于,所述命令包括两种类型:查询和设置,其中,
查询类型的命令要求所述对象将目前的状态输出给所述用户,用于进行故障的定位;以及
设置类型的命令要求所述对象将目前的状态按照所述用户的要求进行改变,用于进行故障的解决。
6.一种网络设备管理软件动态调试的系统,其特征在于,包括:
定义单元,用于在开发网络设备管理软件时,定义统一的对象接口;
注册单元,用于当启动网络设备管理软件时,将对象注册到注册中心;
登录单元,用于在所述注册中心响应所述对象的注册后,接受用户的登录;以及
调试单元,用于在所述用户登录所述注册中心后,输入动态调试命令进行动态调试。
7.根据权利要求6所述的系统,其特征在于,所述注册单元包括:启动模块,用于在所述网络设备管理软件启动之后,启动所述对象和所述注册中心;以及
对象自注册模块,用于使所述网络设备管理软件内的对象自己注册到所述注册中心。
8.根据权利要求6所述的系统,其特征在于,所述登录单元包括:监听模块,用于在所述对象注册到所述注册中心之后,监听指定端口;以及
登录接受模块,用于接受所述用户的登录。
9.根据权利要求6所述的系统,其特征在于,所述调试单元包括:
输入模块,用于在登录到所述注册中心之后,根据用户手册输入所述注册中心支持的命令;
转发模块,用于将来自所述输入模块的所述命令转发给所述对象;以及
执行模块,用于执行所述命令来支持动态调试。
10.根据权利要求9所述的系统,其特征在于,所述命令包括两种类型:查询和设置,其中,
查询类型的命令要求所述对象将目前的状态输出给所述用户,用于进行故障的定位;以及
设置类型的命令要求所述对象将目前的状态按照所述用户的要求进行改变,用于进行故障的解决。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200710111069.1A CN101145953B (zh) | 2007-06-13 | 2007-06-13 | 网络设备管理软件动态调试的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200710111069.1A CN101145953B (zh) | 2007-06-13 | 2007-06-13 | 网络设备管理软件动态调试的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101145953A true CN101145953A (zh) | 2008-03-19 |
CN101145953B CN101145953B (zh) | 2014-08-13 |
Family
ID=39208267
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200710111069.1A Expired - Fee Related CN101145953B (zh) | 2007-06-13 | 2007-06-13 | 网络设备管理软件动态调试的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101145953B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101430648A (zh) * | 2008-12-24 | 2009-05-13 | 北京中星微电子有限公司 | 一种固化、加载镜像的方法及装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100351785C (zh) * | 2003-12-10 | 2007-11-28 | 华为技术有限公司 | 嵌入式系统的调试方法 |
CN100502309C (zh) * | 2006-09-12 | 2009-06-17 | 成都迈普产业集团有限公司 | 嵌入式Web网管系统及其交互方法 |
CN100419711C (zh) * | 2006-09-22 | 2008-09-17 | 中国科学院计算技术研究所 | 一种服务调试命令发射器及其处理方法 |
-
2007
- 2007-06-13 CN CN200710111069.1A patent/CN101145953B/zh not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101430648A (zh) * | 2008-12-24 | 2009-05-13 | 北京中星微电子有限公司 | 一种固化、加载镜像的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101145953B (zh) | 2014-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10310828B2 (en) | System and method for providing and executing a domain-specific language for cloud services infrastructure | |
CN103403707B (zh) | 用于数据库代理请求交换的系统和方法 | |
CN103077024B (zh) | 一种支持SaaS应用流程按需定制与运行的装置及方法 | |
US20080071922A1 (en) | Methods, systems, and computer program products to transparently dispatch requests to remote resources in a multiple application server environment | |
US20070124005A1 (en) | Interfacing between a command line interface-based application program and a remote network device | |
CN101408899A (zh) | 一种网站多数据源切换方法和装置 | |
JP2005505055A (ja) | モバイルウェブクライアントに対する方法、装置及びシステム | |
CA2511912A1 (en) | System and method for building and execution of platform-neutral generic services' client applications | |
CN103843308A (zh) | 跨越多个计算设备分布的应用的执行 | |
CN110347942A (zh) | 页面跳转方法、装置、存储介质及计算机设备 | |
CN103473696A (zh) | 一种收集、分析和分发网络商业信息的方法和系统 | |
CN105893055A (zh) | 流程引擎平台化触发方法 | |
CN113039498A (zh) | 在工业系统网络中调试现场设备的方法 | |
CN110011875A (zh) | 拨测方法、装置、设备及计算机可读存储介质 | |
US7281236B1 (en) | System and methods for developing and deploying a remote domain system | |
CN101727475A (zh) | 一种获取数据库访问过程的方法、装置及系统 | |
CN109857757A (zh) | 数据库间的语句转换方法、系统和终端 | |
US7237222B1 (en) | Protocol for controlling an execution process on a destination computer from a source computer | |
US11461288B2 (en) | Systems and methods for database management system (DBMS) discovery | |
KR102124954B1 (ko) | 이기종 데이터베이스 관리 시스템을 동시 지원하기 위한 IoT 플랫폼 시스템 및 그 동작 방법 | |
CN116881040A (zh) | 一种业务操作处理方法、装置、电子装置和存储介质 | |
JP5081888B2 (ja) | ロボットソフトウェアコンポーネントのためのメソッドポート装置及び構成方法 | |
CN101145953B (zh) | 网络设备管理软件动态调试的方法和系统 | |
US9537931B2 (en) | Dynamic object oriented remote instantiation | |
CN107493251A (zh) | 一种登录目标服务器的方法及终端 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20140813 Termination date: 20170613 |