首页 / 专利库 / 软件 / 软件套件 / 软件组件 / 插件 / 一种云平台虚拟机的流量监控系统

一种平台虚拟机的流量监控系统

阅读:315发布:2024-01-28

专利汇可以提供一种平台虚拟机的流量监控系统专利检索,专利查询,专利分析的服务。并且本 发明 涉及 云 计算技术领域,特别是一种云平台 虚拟机 的流量 监控系统 。所述系统包括云平台流量监控服务模 块 第三方sFlow 控制器 模块和sFlow流量收集代理模块。云平台流量监控服务模块负责实时与所述第三方sFlow控制器模块交互、统计生成云平台虚拟机的流量信息,接收和响应云平台前端用户的API 请求 ;第三方sFlow控制器模块负责接收与分析由sFlow流量收集代理模块发送过来的sFlow流量数据包;最后sFlow流量收集代理模块部署在云平台的计算 节点 ,负责 采样 虚拟交换机 的数据包并发送给 指定 的第三方sFlow控制器。本发明满足了云平台实时监控虚拟网络通信的安全需求。,下面是一种平台虚拟机的流量监控系统专利的具体信息内容。

1.一种平台虚拟机的流量监控系统,其特征在于,所述的系统包括云平台流量监控服务模,第三方sFlow控制器模块和sFlow流量收集代理模块;
所述的云平台流量监控服务模块负责实时与所述第三方sFlow控制器模块交互、统计生成云平台虚拟机的流量信息,接收和响应云平台前端用户的API请求
所述的第三方sFlow控制器模块负责接受sFlow流量收集代理模块上报的采样流量信息并进行分析,包括但不限于sFlow-RT,sFlowTrend;
所述的sFlow流量收集代理模块部署在云平台各个计算节点虚拟交换机上,负责对虚拟交换机上面的虚拟机端口进行流量采样,并将采样后的信息以sFlow报文的形式上报到所述的第三方sFlow控制器模块。
2.根据权利要求1所述的系统,其特征在于,所述的云平台流量监控服务模块进一步包括sFlow控制器注册子模块、平台虚拟机识别子模块、流量监控服务插件子模块和定时器流量收集子模块四个子模块;
所述的sFlow控制器注册子模块用于记录所述第三方sFlow控制器的相关信息;相关信息包括sFlow控制器访问IP、API访问端口、sFlow监听端口,所负责的各sFlow流量收集代理标识;所述sFlow流量收集代理标识用于唯一标识sFlow流量收集代理,一般为代理所在计算节点的sFlow通信网卡IP;
所述的平台虚拟机识别子模块读取云平台配置文件获取云平台虚拟机的标识信息;所述标识信息可以是云平台虚拟机所使用的专用MAC地址通用段标识,可以是云平台虚拟机所在虚拟网络子网段;
所述的流量监控服务插件子模块用于实现云平台监控流量的API接口服务,规定接口的入参和相应结果参数;所述的API接口服务读取本地流量信息缓存表数据及时反馈给前端用户;
所述的定时器流量收集子模块实现:调用各第三方sFlow控制器API获取其所管理的所有sFlow流量收集代理上的端口流量信息,根据定时获取的sFlow流量信息更新本地流量信息缓存表。
3.根据权利要求2所述的系统,其特征在于,所述的本地流量信息缓存表结构为字典结构数组,每一个元素agent关键字的值为“sFlow控制器标识符_sFlow流量收集代理标识符”,每一个元素flows关键字对应的值为“sFlow流量收集代理定时采样得到的流量信息”;
所述的本地流量信息缓存表只保存最近一次汇总的流量信息。
4.根据权利要求1、2或3所述的系统,其特征在于,所述的云平台流量监控服务模块可以是一个单独运行在云平台控制节点上面的服务组件,也可以是以插件的形式集成到云平台控制节点虚拟网络控制服务组件里面运行。

说明书全文

一种平台虚拟机的流量监控系统

技术领域

[0001] 本发明涉及云计算技术领域,特别是一种云平台虚拟机的流量监控系统。

背景技术

[0002] sFlow
[0003] sFlow技术是一种以设备端口为基本单元的数据流采样的流量监控技术。sFlow监控工具由sFlow Agent和sFlow Collector两部分组成,Agent作为客户端,一般内嵌于网络转发设备如交换机、路由器中,通过获取本设备上的接口统计信息和数据信息,将信息封装成sflow报文,然后通过UDP协议发送到指定的Collector。Collector作为远端服务器,负责对sFlow报文分析、汇总、生成流量报告。
[0004] 目前主流云平台如openstack、cloudstack等都支持使用openvswitch(简称OVS)作为计算节点上的虚拟交换机,云平台虚拟机通过将虚拟端口接入OVS实现网络通信。

发明内容

[0005] 本发明解决的技术问题在于提供一种云平台虚拟机的流量监控系统,实现对整个云平台上虚拟机的流量监控,满足云平台实时监控虚拟网络通信的安全需求。
[0006] 本发明解决上述技术问题的技术方案是,
[0007] 所述的系统包括云平台流量监控服务模,第三方sFlow控制器模块和sFlow流量收集代理模块;
[0008] 所述的云平台流量监控服务模块负责实时与所述第三方sFlow控制器模块交互、统计生成云平台虚拟机的流量信息,接收和响应云平台前端用户的API请求
[0009] 所述的第三方sFlow控制器模块负责接受sFlow流量收集代理模块上报的采样流量信息并进行分析,包括但不限于sFlow-RT,sFlowTrend;
[0010] 所述的sFlow流量收集代理模块部署在云平台各个计算节点的虚拟交换机上,负责对虚拟交换机上面的虚拟机端口进行流量采样,并将采样后的信息以sFlow报文的形式上报到所述的第三方sFlow控制器模块。
[0011] 所述的云平台流量监控服务模块进一步包括sFlow控制器注册子模块、平台虚拟机识别子模块、流量监控服务插件子模块和定时器流量收集子模块四个子模块;
[0012] 所述的sFlow控制器注册子模块用于记录所述第三方sFlow控制器的相关信息;相关信息包括sFlow控制器访问IP、API访问端口、sFlow监听端口,所负责的各sFlow流量收集代理标识;所述sFlow流量收集代理标识用于唯一标识sFlow流量收集代理,一般为代理所在计算节点的sFlow通信网卡IP;
[0013] 所述的平台虚拟机识别子模块读取云平台配置文件获取云平台虚拟机的标识信息;所述标识信息可以是云平台虚拟机所使用的专用MAC地址通用段标识,可以是云平台虚拟机所在虚拟网络子网段;
[0014] 所述的流量监控服务插件子模块用于实现云平台监控流量的API接口服务,规定接口的入参和相应结果参数;所述的API接口服务读取本地流量信息缓存表数据及时反馈给前端用户;
[0015] 所述的定时器流量收集子模块实现:调用各第三方sFlow控制器API获取其所管理的所有sFlow流量收集代理上的端口流量信息,根据定时获取的sFlow流量信息更新本地流量信息缓存表。
[0016] 所述的本地流量信息缓存表结构为字典结构数组,每一个元素agent关键字的值为“sFlow控制器标识符_sFlow流量收集代理标识符”,每一个元素flows关键字对应的值为“sFlow流量收集代理定时采样得到的流量信息”;所述的本地流量信息缓存表只保存最近一次汇总的流量信息。
[0017] 所述的云平台流量监控服务模块可以是一个单独运行在云平台控制节点上面的服务组件,也可以是以插件的形式集成到云平台控制节点虚拟网络控制服务组件里面运行。
[0018] 本发明方案的有益效果如下:
[0019] 1、提供一种云平台虚拟机的流量监控系统,实现对整个云平台上虚拟机的流量监控,满足了云平台实时监控虚拟网络通信的安全需求。
[0020] 2、本发明的子系统基于sFlow通用协议实现,适用于大部分现有云平台,只需要进行简单的扩展即可在现有云平台中实现集成。附图说明
[0021] 下面结合附图对本发明进一步说明:
[0022] 图1为本发明实施例中系统模块架构图;
[0023] 图2为本发明实施例中基于OVS的虚拟机流量监控示意图。

具体实施方式

[0024] 以下结合附图及实施例对本发明作进一步详细说明。
[0025] 参见图1所示,为本发明所提供的一种云平台虚拟机的流量监控系统的模块图,图2为本发明基于OVS实现的一个具体实施例。下面分别对其各个模块的具体实现进行描述。
[0026] 第三方sFlow控制器模块中,这里以开源控制器sFlow-RT为例进行描述,在任一个云平台计算节点上启动sFlow-RT控制器,具体步骤如下:
[0027] wget http://www.inmon.com/products/sFlow-RT/sflow-rt.tar.gz[0028] tar-xvzf sflow-rt.tar.gz
[0029] cd sflow-rt
[0030] java  -Xincgc -Xmx200m -Dsflow.port=6343 -Dhttp.port=8008-Dscript.file=init.js-jar./lib/sflowrt.jar
[0031] 如上启动第三方sFlow-RT控制器,监听端口为6343,对外提供API端口为8008。
[0032] sFlow流量收集代理模块中,这里以在OVS启动sFlow代理为例进行描述,启动的具体指令如下:
[0033] ovs-vsctl----id=@sflow  create  sflow agent=em1 target=\″20.251.51.107:6343\″header=128 sampling=5 polling=5--set bridge br-int sflow=@sflow
[0034] ovs-vsctl----id=@sflow  create  sflow agent=em1 target=\″20.251.51.107:6343\″header=128 sampling=5 polling=5--set bridge br-vlan sflow=@sflow
[0035] 如上我们在计算节点的OVS虚拟交换机br-int和br-vlan上启动sFlow流量收集代理,指定其sFlow控制器为20.251.51.107,控制器上监听sFlow报文的端口为6343。
[0036] 云平台流量监控服务模块中,sFlow控制器注册子模块记录所述第三方sFlow控制器的相关信息,相关信息包括sFlow控制器访问IP、API访问端口、sFlow监听端口,所负责的各sFlow流量收集代理标识;
[0037] 所述sFlow流量收集代理标识用于唯一标识sFlow流量收集代理,一般为代理所在计算节点的sFlow通信网卡IP;
[0038] 如上第三方sFlow控制器中记录的相关信息为:
[0039] sFlow控制器访问IP:20.251.51.107
[0040] API访问端口:8080
[0041] sFlow监听端口:6343
[0042] 所负责的各sFlow流量收集代理标识:[20.251.51.107,20.251.51.108]。
[0043] 所述的平台虚拟机识别子模块读取云平台配置文件获取云平台虚拟机的标识信息;
[0044] 所述标识信息可以是云平台虚拟机所使用的专用MAC地址通用段标识,可以是云平台虚拟机所在虚拟网络子网段。这里以云平台虚拟机MAC地址通用段FA163E为标识,在监控流量分析过程中,MAC地址以FA163E为开始的代表着是虚拟机的通信流量。
[0045] 所述的定时器流量收集子模块主要功能包括:
[0046] 定时调用各第三方sFlow控制器API获取其所管理的所有sFlow流量收集代理上的端口流量信息;
[0047] 根据定时获取的sFlow流量信息更新本地流量信息缓存表。
[0048] 所述的本地流量信息缓存表结构可以为字典结构数组,每一个元素agent关键字的值为“sFlow控制器标识符_sFlow流量收集代理标识符”,每一个元素flows关键字对应的值为“sFlow流量收集代理定时采样得到的流量信息”。
[0049] 本地流量信息缓存表示例:
[0050]
[0051]
[0052] 所述的流量监控服务插件子模块用于实现云平台监控流量的API接口服务,规定接口的入参和相应结果参数,如下所示:
[0053]
[0054]
[0055] 前端用户或云平台管理员通过调用云平台监控流量的API接口,系统根据收到的参数,在本地流量信息缓存表中查询指定sFlow agent关键字,并响应对应的流量信息值。
[0056] 以上所揭露的仅为本发明其中一个实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈