[0034] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0035] 需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
[0036] 下面结合附图和具体实施例对本发明作进一步说明,但不作为本发明的限定。
[0037] 如图1所示,一种网络设备1的管理系统,包括:
[0038] 至少一个代理单元2,每个代理单元2连接至少一处于本地的网络设备1,每个代理单元2关联到一用户账户,代理单元2采集对应的网络设备1的设备数据,以及下发网络设备1的配置指令;
[0039] 一服务器3,服务器3提供与代理单元2数量匹配的接口单元,每个接口单元通过网络与一个代理单元2连接,代理单元2将采集到的设备数据发送至对应的接口单元;
[0040] 服务器3提供与代理单元2数量匹配的独立的数据储存空间,每个数据储存空间连接关联到一用户账户,并连接用户账户对应的接口单元,接口单元可控制的读取对应的代理单元2发送的设备数据,并储存至对应的数据储存空间中,以及可控制的向对应的代理单元2发送配置指令。
[0041] 在本实施例中,网络设备1的管理系统通过服务器3可同时管理多个对应不同用户账户的代理单元2的连接,基于这些相互独立的连接,可独立采集以及存储用户账户的相关数据,用户账户之间完全隔离,灵活性强,集成度高,易于维护、信息承载能力强且便于用户数量动态部署。管理系统可根据用户的不同需求快速定制,可以让多个用户共用一个应用程序或运算环境,具有硬件成本低,操作系统成本小与相关软件的授权成本少等优点。
[0042] 如图2所示,在优选的实施例中,代理单元2包括:
[0043] 注册模块21,用于连接服务器3提供的一注册及登录接口以注册用户账户;
[0044] 配置模块23,用以采集代理单元2对应的网络设备1的设备数据,以及执行配置指令对代理单元2对应的网络设备1进行配置;
[0045] 通信模块22,分别连接注册模块21及配置模块23,用以将配置模块23采集的设备数据及用户账户发送至与代理单元2关联的接口单元,以及接收与代理单元2对应的接口单元发送配置指令并将配置指令发送至配置模块23。
[0046] 在本实施例中,代理单元2用于提供用户的注册与登录界面,通过向服务器3调用注册及登录接口,注册成功之后服务器3将用户账户ID(代表唯一的一个用户的身份标识)和相应的密码返回至代理单元2;当用户账户登录成功后代理单元2可自动启动通信模块22。
[0047] 在优选的实施例中,通信模块22包括解析元件,解析元件用以对接收到的配置指令进行解析,通信模块22将解析后的配置指令发送至配置模块23。
[0048] 在本实施例中,通信模块22可定时调用采集模块采集得到的设备数据,并通过注册模块21得到用户账户ID,再将用户账户与设备数据一起发送至服务端;通信模块22还可接收服务器3发送的命令,对命令解析后调用采集模块以采集设备数据并将设备数据与用户账户组合后发送至服务器3。
[0049] 如图2所示,在优选的实施例中,服务器3包括:
[0050] 一管理单元31,通过注册及登录接口与代理单元2连接,用于接收代理单元2的请求,创建对应用户账户,以及用于接收代理单元2的请求,以接受对应的用户账户登录;
[0051] 一应用服务单元33,连接管理单元31,用于创建与代理单元2的用户账户对应的接口单元。
[0052] 在本实施例中,管理单元31用于用户账户的注册创建,登录验证,用户请求、响应的适配,以及长连接服务端的维护;应用服务单元33用于互联网应用实例的创建、启动以及应用的业务逻辑的实现。
[0053] 管理单元31可设置于供应商云端互联网数据中心(IDC)机房中,该管理单元31所在的虚拟机有一公网IP地址,用于提供用户由浏览器端访问管理单元31的接入点,该接入点也是用户代理单元2连接服务器3的接入点。
[0054] 在优选的实施例中,服务器3包括:
[0055] 一数据库单元32,分别连接管理单元31和应用服务单元33,用于划分出与代理单元2数量相匹配的数据储存空间。
[0056] 在本实施例中,数据库单元32用于存储业务物理数据,其中包括用户独立的业务数据与共享的基本数据。用户采用浏览器端通过互联网登录并由管理单元31跳转到用户账户对应的WEB应用实例URL,以对用户账户对应的网络设备1进行管理,数据库单元32可在保存数据以及应用程序环境的同时与其他用户完全隔离。
[0057] 如图2所示,在优选的实施例中,管理单元31包括:
[0058] 创建模块311,通过注册及登录接口与代理单元2连接,用于创建用户账户;和/或[0059] 验证模块312,用以对登录的用户账户进行验证。
[0060] 在本实施例中,在通过管理单元31跳转至数据库单元32中与用户账户对应的互联网应用实例以对用户的设备数据进行管理之前,用户账户需先通过验证模块312的验证,再向管理单元31发起数据上报请求,以通过用户账户对应的互联网应用实例对网络设备1进行配置管理。
[0061] 在优选的实施例中,还包括:
[0062] 一关联于用户账号的客户端4,与对应的代理单元2和服务器3分别连接,用以通过用户账户登录服务器3,以获取与用户账户关联的代理单元2采集到的网络设备1的设备数据;和/或
[0063] 通过与用户账户对应的接口单元对相应的网络设备1进行配置管理。
[0064] 在本实施例中,用户账户通过客户端4的浏览器登录成功后通过管理单元31跳转至数据库单元32中与用户账户对应的互联网应用实例以对与用户账户对应的设备数据进行管理。
[0065] 在优选的实施例中,客户端4通过一与对应的代理单元2关联的长连接通道与代理单元2和服务器3连接。
[0066] 在本实施例中,服务器3与每个代理单元2保持一条TCP(Transmission Control Protocol,传输控制协议)长连接通道,将{用户账户ID—长连接ID}作为{Key—Value}形式的映射关系储存,将{长连接ID—长连接通道对象}作为{Key—Value}形式的映射关系储存。服务器3可生成长连接ID和长连接通道对象,用户账户ID由代理单元2发送到服务器3,用户设备数据从长连接通道中取出。对于网络设备1主动发起的数据上报请求,服务器3根据用户账户ID得到其互联网应用实例,将设备数据封装成JSON格式的数据作为参数发送给此实例指定Restful接口来处理(该Restful接口包含在此实例中的应用业务的逻辑实现组件中)。对于由客户端4的用户账户从该实例前端页面发起的对设备的Restful操作请求(此请求中的消息包含用户账户ID和操作命令的约定接口名和参数数据),服务器3根据用户账户ID得到长连接ID,再根据长连接ID得到长连接通道,再使用长连接通道向代理单元2发送数据。然后等待代理单元2返回响应数据,得到响应数据后,将响应数据返回给之前的Restful请求。
[0067] 在优选的实施例中,应用服务单元33可以是一WEB应用服务模块;进一步的,接口单元可以是WEB应用实例。WEB应用服务模块可根据用户账户创建对应的WEB应用实例,以于相应的代理单元2或者客户端4进行连接。
[0068] 在本实施例中,应用服务单元33用于WEB应用实例的创建、启动以及应用的业务逻辑的实现。当应用服务单元33收到管理单元31发送的注册成功的消息后,可根据消息中包含的用户账户ID,为用户账户ID分配一空闲的端口和一个独立的数据库对象的集合(Schema),Schema在数据库单元32的独立数据库中,该Schema名称中包含用户账户ID。应用服务单元33将用户账户ID和WEB应用实例URL的对应关系保存在数据库单元32中。
[0069] WEB应用实例创建的过程为:应用服务单元33可自动在指定目录下(该目录下包含一份原始的WEB应用实例)新建一个包含用户账户ID的目录,再自动复制一份已经包含管理系统的业务逻辑实现组件是WEB应用实例到此目录并自动修改此目录中的WEB应用实例配置文件,此配置文件中应用服务单元33的端口和数据源的配置,将此端口改为上述分配的空闲的端口,将此数据源改为上述分配的用户独立的Schema,最后启动此WEB应用实例。
[0070] 在优选的实施例中,通信模块22可采用简单网络管理协议(Simple Network Management Protocol,SNMP)或广域网管理协议(TR069)将配置模块23采集的设备数据及用户账户发送至与代理单元2关联的接口单元,以及
[0071] 接收与代理单元2对应的接口单元发送配置指令并将配置指令发送至配置模块23。
[0072] 在本实施例中,通信模块22可通过通信协议采集网络设备1的设备数据。其中,通信协议可采用SNMP,TR069等;网络设备1可包括数据通信设备、光网络设备1、无线网络设备1等;设备数据可包括设备的配置数据、告警数据、性能数据、拓扑数据等。
[0073] 本发明的服务器3可以是数据中心的虚拟机,可将几百甚至几千个用户部署在同一台高性能的服务器3上,可根据业务需求动态增加计算资源包括CPU和内存大小等。
[0074] 以上所述仅为本发明较佳的实施例,并非因此限制本发明的实施方式及保护范围,对于本领域技术人员而言,应当能够意识到凡运用本发明说明书及图示内容所作出的等同替换和显而易见的变化所得到的方案,均应当包含在本发明的保护范围内。