CN103795729A - 一种多协议的统一设备控制方法 - Google Patents
一种多协议的统一设备控制方法 Download PDFInfo
- Publication number
- CN103795729A CN103795729A CN201410065025.XA CN201410065025A CN103795729A CN 103795729 A CN103795729 A CN 103795729A CN 201410065025 A CN201410065025 A CN 201410065025A CN 103795729 A CN103795729 A CN 103795729A
- Authority
- CN
- China
- Prior art keywords
- class
- equipment
- mode
- connection
- configuration
- 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.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及设备控制技术领域,特别是涉及一种多协议的统一设备控制方法。本发明接收第三方调用时,首先加载所有需要控制的设备的基本配置,验证这些配置是否可用;依据配置信息和第三方调用的相关控制API,***开始连接对应的设备;***执行操作命令,并在获取命令执行结果后关闭连接;对获取的执行结果进行格式化处理;***将结果返回给第三方调用者;主要使用环境支持类、设备配置类、设备连接工厂类、连接类以及设备实现类来实现;实现时采用类复用的设计模式。本发明基于SNMP、SSH、Telnet协议,同时支持串口协议;可以用于网络设备管理。
Description
技术领域
本发明涉及设备控制技术领域,特别是涉及一种多协议的统一设备控制方法。
背景技术
传统的网络设备管理方式都是直接使用设备自带的管理***,这种方式的弊端是每个设备都有一个管理***,不能实现统一控制管理。而部分设备提供的API接口虽然可以满足统一控制设备的二次开发需求,但其实现方式太过复杂且效率不高,并且对于不同品牌或者不同类型的设备并没有通用的调用方式,也没有通用的操作API,这使得第三方的基于设备统一控制的二次开发变得不切实际。
发明内容
本发明解决的技术问题在于提供一种基于SNMP、SSH、Telnet协议的多协议统一设备控制方法,实现设备的统一控制。
本发明解决上述技术问题的技术方案是:
接收第三方调用时,首先加载所有需要控制的设备的基本配置,验证这些配置是否可用;依据配置信息和第三方调用的相关控制API,***开始连接对应的设备;***执行操作命令,并在获取命令执行结果后关闭连接;对获取的执行结果进行格式化处理;***将结果返回给第三方调用者;主要使用环境支持类、设备配置类、设备连接工厂类、连接类以及设备实现类来实现;实现时采用类复用的设计模式。
详细流程为:
第一步,接收第三方调用,接收调用时,首先进行设备初始化,从配置文件加载设备的各种参数,包括设备的用户名、登录密码、IP地址、登录设备的方式;
第二步,连接设备,根据初始化的内容连接到网络设备,若初始化时的登录设备方式为SSH,则使用SSH方式连接到设备;若初始化为Telnet登录方式,则使用Telnet方式连接,同时也支持SNMP方式和串口方式连接,连接状态由套接字(TCP可靠连接方式)自动维护;
第三步,执行命令,执行设备的相关操作、设置命令;
第四步,获取命令执行的结果;
第五步,获取执行结果后,关闭设备连接;
第六步,处理执行命令返回的内容,对内容进行过滤、清理,最后格式化;
第七步,返回结果给第三方调用者。
所述方法将***分为5个基础类,分别为Context环境支持类、DeviceConfig设备配置类、Conn_Factory设备连接工厂类、Conn连接类、NetworkDvice设备实现类;其中,
(1)Context环境支持类
主要是维护与第三方调用者之间的上下文信息,提供环境支持,通过统一的上下文,减少类之间的相互引用;
(2)DeviceConfig设备配置类
管理网络设备的配置参数,如用户名、登陆密码、IP地址与连接方式,负责连接设备时的初始化;
(3)Conn_Factory设备连接工厂类
组织、管理Conn连接类,降低Conn连接类的改变所造成的维护工作量,增强设备连接模块的可扩展性;
(4)Conn连接类
处理设备的登陆、设备命令发送及登出功能,主要有4个具体实现类,串口连接类、SSH连接类,Telnet连接类及SNMP连接类;
(5)NetworkDvice设备实现类
设备的抽象类,将设备控制的主要功能类综合起来,实现总体的抽象,再由不同种类的设备来继承,如防火墙、交换机、IDS,各自具体型号的设备继承来自不同的分类,实现自己具体的功能。
防火墙网络设备操作类是网络设备操作类关联的具体命令操作类,主要实现防火墙设备所支持功能的具体命令操作,在具体命令类中根据抽象层次可以再独立出一个格式转换操作类,主要用于不同信息格式化;根据业务要求,如果设备实现比较简单,可直接在命令类中实现。
交换机网络设备操作类是网络设备操作类关联的具体命令操作类,主要实现交换机设备所支持功能的具体命令操作,在具体命令类中根据抽象层次可以再独立出一个格式转换操作类,主要用于不同信息格式化;根据业务要求,如果设备实现比较简单,可直接在命令类中实现。
所述方法的***主要采用工厂模式、装饰器模式以及命令模式设计;其中,
(1)工厂模式
主要用来生成连接信息,直接从配置读取设备配置,然后返回一个设备支持的连接实例;
(2)命令模式
主要独立出设备以及设备的操作,设备本身只维护设备最近的操作信息和临时状态,资源管理,将容易变化的部分变成独立可扩展的类;
(3)装饰器模式:
主要用于同一类型设备命令的复用。
采用本发明的方法,具有以下有益效果:(1)可供任意第三方调用;(2)支持多种通用的防火墙、交换机及IDS设备;(3)基于SNMP、SSH、Telnet协议,同时支持串口操作,适用范围广,基本上可以覆盖现有的所有设备;(4)使用类复用的设计模式,大大简化***同时提高效率;(5)简化设备控制的方式,对设备进行统一的控制管理。
附图说明
下面结合附图对本发明进一步说明:
图1是本发明的***处理流程图;
图2是本发明的***基础类图;
图3是本发明的防火墙设备操作类图;
图4是本发明的交换机设备操作类图。
具体实施方式
如图1所示,本发明的***处理流程为:
第一步,接收第三方调用,接收调用时,首先进行设备初始化,从配置文件加载设备的各种参数,包括设备的用户名、登录密码、IP地址,登录设备的方式;
第二步,连接设备,根据初始化的内容连接到网络设备,若初始化时的登录设备方式为SSH,则使用SSH方式连接到设备;若初始化为Telnet登录方式,则使用Telnet方式连接,同时也支持SNMP方式和串口方式连接,连接状态由套接字(TCP可靠连接方式)自动维护;
第三步,执行命令,执行设备的相关操作、设置命令;
第四步,获取命令执行的结果;
第五步,获取执行结果后,关闭设备连接;
第六步,处理执行命令返回的内容,对内容进行过滤、清理,最后格式化;
第七步,返回结果给第三方调用者。
如图2所示,是整个***涉及到的类图,主要的基础类介绍如下:
(1)Context环境支持类:
主要是维护与第三方调用者之间的上下文信息,可以给本发明框架提供环境支持,通过统一的上下文,可减少类之间的相互引用。
(2)DeviceConfig设备配置类:
管理网络设备的配置参数,如用户名、登陆密码、IP地址与连接方式,负责连接设备时的初始化。
(3)Conn_Factory设备连接工厂类:
组织、管理Conn连接类,降低Conn连接类的改变所造成的维护工作量,增强设备连接模块的可扩展性。
(4)Conn连接类:
处理设备的登陆、设备命令发送及登出功能,主要有4个具体实现类,串口连接类、SSH连接类,Telnet连接类及SNMP连接类。
(5)NetworkDvice设备实现类:
设备的抽象类,把硬件绑定的主要功能类综合起来,实现总体的抽象,再由不同种类的设备来继承,如防火墙、交换机、IDS,各自具体型号的设备继承来自不同的分类,实现自己具体的功能。
如图3所示,是防火墙网络设备操作类图,是网络设备操作类关联的具体命令操作类,主要实现防火墙设备所支持功能的具体命令操作,在具体命令类中根据抽象层次可以再独立出一个格式转换操作类,主要用于不同信息格式化(根据业务要求,如果设备实现比较简单,可直接在命令类中实现)。
如图4所示,是交换机网络设备操作类图,是网络设备操作类关联的具体命令操作类,主要实现交换机设备所支持功能的具体命令操作,在具体命令类中根据抽象层次可以再独立出一个格式转换操作类,主要用于不同信息格式化(根据业务要求,如果设备实现比较简单,可直接在命令类中实现)。
Claims (9)
1.一种多协议的统一设备控制方法,其特征在于:接收第三方调用时,首先加载所有需要控制的设备的基本配置,验证这些配置是否可用;依据配置信息和第三方调用的相关控制API,***开始连接对应的设备;***执行操作命令,并在获取命令执行结果后关闭连接;对获取的执行结果进行格式化处理;***将结果返回给第三方调用者;主要使用环境支持类、设备配置类、设备连接工厂类、连接类以及设备实现类来实现;实现时采用类复用的设计模式。
2.根据权利要求1所述的多协议的统一设备控制方法,其特征在于:
详细流程为:
第一步,接收第三方调用,接收调用时,首先进行设备初始化,从配置文件加载设备的各种参数,包括设备的用户名、登录密码、IP地址、登录设备的方式;
第二步,连接设备,根据初始化的内容连接到网络设备,若初始化时的登录设备方式为SSH,则使用SSH方式连接到设备;若初始化为Telnet登录方式,则使用Telnet方式连接,同时也支持SNMP方式和串口方式连接,连接状态由套接字(TCP可靠连接方式)自动维护;
第三步,执行命令,执行设备的相关操作、设置命令;
第四步,获取命令执行的结果;
第五步,获取执行结果后,关闭设备连接;
第六步,处理执行命令返回的内容,对内容进行过滤、清理,最后格式化;
第七步,返回结果给第三方调用者。
3.根据权利要求1所述的多协议的统一设备控制方法,其特征在于:所述方法将***分为5个基础类,分别为Context环境支持类、DeviceConfig设备配置类、Conn_Factory设备连接工厂类、Conn连接类、NetworkDvice设备实现类;其中,
(1)Context环境支持类
主要是维护与第三方调用者之间的上下文信息,提供环境支持,通过统一的上下文,减少类之间的相互引用;
(2)DeviceConfig设备配置类
管理网络设备的配置参数,如用户名、登陆密码、IP地址与连接方式,负责连接设备时的初始化;
(3)Conn_Factory设备连接工厂类
组织、管理Conn连接类,降低Conn连接类的改变所造成的维护工作量,增强设备连接模块的可扩展性;
(4)Conn连接类
处理设备的登陆、设备命令发送及登出功能,主要有4个具体实现类,串口连接类、SSH连接类,Telnet连接类及SNMP连接类;
(5)NetworkDvice设备实现类
设备的抽象类,将设备控制的主要功能类综合起来,实现总体的抽象,再由不同种类的设备来继承,如防火墙、交换机、IDS,各自具体型号的设备继承来自不同的分类,实现自己具体的功能。
4.根据权利要求2所述的多协议的统一设备控制方法,其特征在于:所述方法将***分为5个基础类,分别为Context环境支持类、DeviceConfig设备配置类、Conn_Factory设备连接工厂类、Conn连接类、NetworkDvice设备实现类;其中,
(1)Context环境支持类
主要是维护与第三方调用者之间的上下文信息,提供环境支持,通过统一的上下文,减少类之间的相互引用;
(2)DeviceConfig设备配置类
管理网络设备的配置参数,如用户名、登陆密码、IP地址与连接方式,负责连接设备时的初始化;
(3)Conn_Factory设备连接工厂类
组织、管理Conn连接类,降低Conn连接类的改变所造成的维护工作量,增强设备连接模块的可扩展性;
(4)Conn连接类
处理设备的登陆、设备命令发送及登出功能,主要有4个具体实现类,串口连接类、SSH连接类,Telnet连接类及SNMP连接类;
(5)NetworkDvice设备实现类
设备的抽象类,将设备控制的主要功能类综合起来,实现总体的抽象,再由不同种类的设备来继承,如防火墙、交换机、IDS,各自具体型号的设备继承来自不同的分类,实现自己具体的功能。
5.根据权利要求3或4所述的多协议的统一设备控制方法,其特征在于:
防火墙网络设备操作类是网络设备操作类关联的具体命令操作类,主要实现防火墙设备所支持功能的具体命令操作,在具体命令类中根据抽象层次可以再独立出一个格式转换操作类,主要用于不同信息格式化;根据业务要求,如果设备实现比较简单,可直接在命令类中实现。
6.根据权利要求3或4所述的多协议的统一设备控制方法,其特征在于:
交换机网络设备操作类是网络设备操作类关联的具体命令操作类,主要实现交换机设备所支持功能的具体命令操作,在具体命令类中根据抽象层次可以再独立出一个格式转换操作类,主要用于不同信息格式化;根据业务要求,如果设备实现比较简单,可直接在命令类中实现。
7.根据权利要求1至4任一项所述的多协议的统一设备控制方法,其特征在于:所述方法的***主要采用工厂模式、装饰器模式以及命令模式设计;其中,
(1)工厂模式
主要用来生成连接信息,直接从配置读取设备配置,然后返回一个设备支持的连接实例;
(2)命令模式
主要独立出设备以及设备的操作,设备本身只维护设备最近的操作信息和临时状态,资源管理,将容易变化的部分变成独立可扩展的类;
(3)装饰器模式:
主要用于同一类型设备命令的复用。
8.根据权利要5所述的多协议的统一设备控制方法,其特征在于:所述方法的***主要采用工厂模式、装饰器模式以及命令模式设计;其中,
(1)工厂模式
主要用来生成连接信息,直接从配置读取设备配置,然后返回一个设备支持的连接实例;
(2)命令模式
主要独立出设备以及设备的操作,设备本身只维护设备最近的操作信息和临时状态,资源管理,将容易变化的部分变成独立可扩展的类;
(3)装饰器模式:
主要用于同一类型设备命令的复用。
9.根据权利要求6所述的多协议的统一设备控制方法,其特征在于:所述方法的***主要采用工厂模式、装饰器模式以及命令模式设计;其中,
(1)工厂模式
主要用来生成连接信息,直接从配置读取设备配置,然后返回一个设备支持的连接实例;
(2)命令模式
主要独立出设备以及设备的操作,设备本身只维护设备最近的操作信息和临时状态,资源管理,将容易变化的部分变成独立可扩展的类;
(3)装饰器模式:
主要用于同一类型设备命令的复用。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410065025.XA CN103795729A (zh) | 2014-02-25 | 2014-02-25 | 一种多协议的统一设备控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410065025.XA CN103795729A (zh) | 2014-02-25 | 2014-02-25 | 一种多协议的统一设备控制方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103795729A true CN103795729A (zh) | 2014-05-14 |
Family
ID=50671015
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410065025.XA Pending CN103795729A (zh) | 2014-02-25 | 2014-02-25 | 一种多协议的统一设备控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103795729A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104615410A (zh) * | 2015-01-22 | 2015-05-13 | 北京彩云动力教育科技有限公司 | 一种多类型硬件接口指令处理方法及*** |
CN105681346A (zh) * | 2016-03-15 | 2016-06-15 | 福建星海通信科技有限公司 | 一种基于工厂类实现报文解析的方法 |
CN106376039A (zh) * | 2016-08-31 | 2017-02-01 | 苏州工业园区服务外包职业学院 | 呼叫流程控制方法及所适用的接入网关 |
CN108717362A (zh) * | 2018-05-21 | 2018-10-30 | 北京晨宇泰安科技有限公司 | 一种基于可继承结构的网络设备配置模型及配置方法 |
-
2014
- 2014-02-25 CN CN201410065025.XA patent/CN103795729A/zh active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104615410A (zh) * | 2015-01-22 | 2015-05-13 | 北京彩云动力教育科技有限公司 | 一种多类型硬件接口指令处理方法及*** |
CN105681346A (zh) * | 2016-03-15 | 2016-06-15 | 福建星海通信科技有限公司 | 一种基于工厂类实现报文解析的方法 |
CN106376039A (zh) * | 2016-08-31 | 2017-02-01 | 苏州工业园区服务外包职业学院 | 呼叫流程控制方法及所适用的接入网关 |
CN106376039B (zh) * | 2016-08-31 | 2020-01-10 | 苏州工业园区服务外包职业学院 | 呼叫流程控制方法及所适用的接入网关 |
CN108717362A (zh) * | 2018-05-21 | 2018-10-30 | 北京晨宇泰安科技有限公司 | 一种基于可继承结构的网络设备配置模型及配置方法 |
CN108717362B (zh) * | 2018-05-21 | 2022-05-03 | 北京晨宇泰安科技有限公司 | 一种基于可继承结构的网络设备配置***及配置方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10404832B2 (en) | Management of gateway device using virtual gateway device | |
CN105807617B (zh) | 智能家居设备的控制方法及装置 | |
CN105471686B (zh) | 终端控制方法、装置及*** | |
CN103023681B (zh) | 智能家居控制设备、更新方法 | |
KR102350430B1 (ko) | 홈 오토메이션 시스템의 하드웨어 엘리먼트들의 무선 프로비저닝 및 구성 | |
WO2017165105A1 (en) | Universal internet of things (iot) smart translator | |
CN104967560B (zh) | 实现与网关管理的设备的联动方法和装置 | |
CN111182074B (zh) | 具有边缘计算能力的智能设备终端、计算机可读存储介质 | |
CN103297506A (zh) | 对家居设备控制的方法及*** | |
WO2020168568A1 (zh) | 数据处理方法、装置、电子设备及可读存储介质 | |
CN103795729A (zh) | 一种多协议的统一设备控制方法 | |
CN104869054A (zh) | 一种用于控制智能家居的家庭网关及其实现方法 | |
CN109842537A (zh) | 智能家居*** | |
CN101997721B (zh) | 一种电信网络管理***、方法及相应的装置 | |
CN112911426B (zh) | 一种网络控制***、方法、装置及智能光网关 | |
CN104869129B (zh) | 一种应用程序管理方法、设备及*** | |
WO2015154588A1 (zh) | 一种串口信息传递方法、单板设备和公用单板 | |
CN104283968A (zh) | 智能家电后台管理*** | |
WO2018000686A1 (zh) | 通话建立方法及*** | |
CN106130863A (zh) | 局域网协议报文的传送方法、装置以及*** | |
CN108011825B (zh) | 一种基于软件定义网络的多网络设备互联现实方法及*** | |
CN102594636A (zh) | 一种基于多种无线协议的家庭智能网关***和控制方法 | |
CN102025576A (zh) | 一种家庭自动化***及其控制方法 | |
CN106681157A (zh) | 一种设备的控制方法、装置及网关 | |
CN109194738A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20140514 |