CN106713064A - 一种虚拟机流量监控方法 - Google Patents
一种虚拟机流量监控方法 Download PDFInfo
- Publication number
- CN106713064A CN106713064A CN201510796199.8A CN201510796199A CN106713064A CN 106713064 A CN106713064 A CN 106713064A CN 201510796199 A CN201510796199 A CN 201510796199A CN 106713064 A CN106713064 A CN 106713064A
- Authority
- CN
- China
- Prior art keywords
- module
- data
- monitoring
- virtual machine
- data cache
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0631—Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/02—Capturing of monitoring data
- H04L43/028—Capturing of monitoring data by filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/04—Processing captured monitoring data, e.g. for logfile generation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种虚拟机流量监控方法及系统,首先启动包含监控模块的虚拟机;部署数据包捕获模块和数据缓存模块到虚拟机监控器内核中;数据包捕获模块根据过滤机制复制流经TCP/IP协议栈的数据包,并存储到数据缓存模块的缓存中;数据缓存模块将缓存中的数据包转发给监控模块;监控模块对数据包进行统计分析,实现对虚拟机的流量监控。解决服务器虚拟化带来的虚拟机间通信失去监控的问题,并且实现了同一物理服务器上虚拟机间的通信以及虚拟机与服务器外部网络的通信的统一监控。
Description
技术领域
该发明涉及服务器虚拟机化虚拟机流量监控,尤其涉及物理服务器上的虚拟机流量监控方法和系统。
背景技术
服务器虚拟化可以提高计算资源的利用率,增强IT资源的管理灵活性,因此,该技术成为当前数据中心重要技术。然而,服务器虚拟化后,同一台物理服务器上存在多个虚拟机,这些虚拟机之间的通信无法被部署在物理服务器外的监控系统所感知。
现有方法是通过流量重定向策略来实现,包括两大类,一类是将虚拟机流量重定向到服务器外的网络设备上进行监控处理。另一类是将虚拟机流量通过虚拟机交换机进行重定向到虚拟机监控器(Virtual MachineMonitor,VMM)上的虚拟机中进行监控。第一类方法的优势是可以利用现有的监控资源,但需要修改网络协议驱动或增加新的网络硬件设备。第二类方法比较常见,但依赖虚拟交换机的可配置能力,缺乏性能方面的优化能力,同时,对于虚拟机与外部的通信流量监控只能交给外部监控设备来处理,缺乏统一监控的管理能力。
发明内容
本发明的目的在于:利用虚拟机监控器的钩子机制来获取虚拟机的通信数据流,并引入缓存机制和过滤策略,提高监控的效率;同时本发明公开了一套监控系统,可以实现对虚拟机间通信和虚拟机与服务器外部通信的统一监控。
本发明是这样实现的:
一种虚拟机流量监控方法包括以下步骤:
步骤一:在虚拟机监控器(Virtual Machine Monitor,VMM)上启动包含监控模块的虚拟机,通过内核模块加载接口,将数据包捕获模块和数据缓存模块加载到内核中;将监控模块和数据缓存模块建立通信连接;监控模块下发过滤地址列表到内核;监控模块发送启动命令到内核。具体流程如下:
①、启动包含监控模块的虚拟机后,监控模块也启动运行;
②、监控模块调用内核模块加载接口,加载数据包捕获模块和数据缓存模块到内核;
③、数据缓存模块与安全监控模块建立连接;
④、安全监控模块向所述数据缓存模块发送地址过滤表;
⑤、安全监控模块向所述数据缓存模块发送启动指令;
⑥、数据缓存模块设置内核全局变量值为启动。
步骤二:数据包捕获模块监听通过虚拟机监控器VMM内核TCP/IP协议栈中数据;根据数据地址过滤表复制数据包,并存储到数据缓存模块的缓存中;数据模块模块将数据发送给监控模块。具体流程如下:
①、数据缓存模块判断所述内核全局变量值,如果为启动,则分配一定大小的缓存,并启动数据缓存处理进程;否则不作任何处理;
②、数据包捕获模块判断所述内核全局变量值,如果为启动,则启动所述数据包捕获模,否则,不作任何处理;
③、数据包捕获模块判断当前TCP/IP协议栈数据包地址是否匹配所述地址过滤表;匹配则复制数据包并存储到所述数据缓存模块的缓存中;否则,不作任何处理;
④、数据缓存进程判断所述缓存内是否为空,不空则读取缓存数据并通过所述数据缓存模块与所述安全监控模块建立的连接发送数据;空则不做任何处理。
步骤三:监控模块提取数据包的基本信息,统计分析数据流量,展示统计分析结果及告警。具体流程如下:
①、监控模块调用预处理模块提取数据包头信息,包括源目的MAC、源目的IP、数据包大小;
②、监控模块统计数据包所在的会话流量,会话内容,并根据入侵检测规则分析入侵行为;据恶意代码规则检测恶意代码;
③、统计分析模块根据输出配置要求,输出统计分析结果,并在页面展示;
④、统计分析模块根据告警配置要求,输出告警结果,并在页面展示。一种虚拟机流量监控系统,其特征在于,所述系统包括如下模块:
①、监控模块:用于部署数据包捕获模块、数据缓存模块;调用预处理模块和统计分析模块;与数据缓存模块建立通信连接;接受数据缓存模块发送来的数据包,下发过滤地址表、命令给数据缓存模块;管理监控配置;预处理模块:获取所述数据包头信息,包括源目的MAC、源目的IP、数据包大小;
②、统计分析模块:用于对所述的预处理模块的处理结果进行统计分析,包括会话流量统计,会话内容还原;根据入侵检测规则分析入侵行为;根据恶意代码规则检测恶意代码;根据输出配置和告警配置,输出统计分析结果和告警结果,并在页面展示;
③、数据包捕获模块:用于在虚拟机监控器(VMM)内核监控TCP/IP协议栈的数据包,并根据所述地址过滤表复制所述数据包;并存储到数据缓存模块的缓存中;
④、数据缓存模块:用于建立与所述监控模块的连接;发送所缓存中的数据给所述监控模块;接受所述监控模块发送的指令和数据;
本发明相较于现有技术具有的积极效果在于:本发明专利可以解决服务器虚拟化带来的虚拟机间通信失去监控的问题,并且实现了同一物理服务器上虚拟机间的通信以及虚拟机与服务器外部网络的通信的统一监控。另外,本发明专利通过引入缓存机制,包过滤机制,离线存储机制,解决了监控功能对虚拟机监控器的性能影响问题。
具体实施方式
本发明为虚拟机之间的流量监控以及虚拟机和服务器外部网络之间的流量监控提供了一种统一的监控系统。初始化阶段:在虚拟机监控器上启动包含监控模块的虚拟机,数据包捕获模块和数据缓存模块部署到内核,监控模块和数据缓存模块建立连接,监控模块下发过滤地址列表到内核,监控模块发送启动命令到内核,监控系统部署完毕。
本发明中,数据包捕获模块和数据缓存模块都运行在内核,在运行前先通过内核编程接口加载到内核中。由于监控模块部署在虚拟机中,而虚拟机运行在用户态,因此,需要构建内核和用户空间的通信连接。建立连接后,监控模块发送地址过滤列表给内核,提供数据包捕获模块使用。然后,监控模块内核发送启动命令至内核,数据捕获模块及数据缓存模块开始工作。
数据捕获阶段:数据包捕获模块监听TCP/IP协议栈数据,根据地址过滤表复制数据包,并存储到数据缓存模块的缓存中,数据缓存模块将数据发送给监控模块。
本发明中,数据包捕获模块检查每一个流经TCP/IP协议栈的数据包,根据每个数据包的MAC值或IP信息,与地址过滤列表中的地址信息进行比对,如果匹配,则相应的数据包被复制一份,并存储到数据缓存模块的缓存中。数据缓存模块中的缓存是数据缓存模块预先分配的,并且可以根据实际用量动态进行扩展;数据缓存模块发现缓存不空时,通过内核和用户空间建立的连接将数据包发送给虚拟机中的监控模块;
数据统计分析阶段:监控模块提取数据包头基本信息,统计分析数据流量,展示统计分析结果及告警。
Claims (5)
1.一种虚拟机流量监控方法,其特征在于包括以下步骤:
步骤一:在虚拟机监控器(Virtual Machine Monitor,VMM)上启动包含监控模块的虚拟机,通过内核模块加载接口,将数据包捕获模块和数据缓存模块加载到内核中;将虚拟机监控模块和数据缓存模块建立通信连接;监控模块下发过滤地址列表到内核,监控模块发送启动命令到内核;
步骤二:数据包捕获模块监听TCP/IP协议栈中数据;根据地址过滤表复制数据包,并存储到数据缓存模块的缓存中;数据缓存模块将数据发送到监控模块;
步骤三:监控模块提取数据包的基本信息,统计分析数据流量,展示统计分析结果及告警。
2.根据权利要求1所述的监控方法,其特征在于:所述的步骤一中的具体流程如下:
①、启动包含监控模块的虚拟机后,监控模块也启动运行;
②、监控模块调用内核模块加载接口,加载数据包捕获模块和数据缓存模块到内核;
③、数据缓存模块与监控模块建立连接;
④、监控模块向所述数据缓存模块发送地址过滤表;
⑤、监控模块向所述数据缓存模块发送启动指令;
⑥、数据缓存模块设置内核全局变量值为启动。
3.根据权利要求1所述的监控方法,其特征在于:所述的步骤二的具体流程如下:
①、数据缓存模块判断所述内核全局变量值,如果为启动,则分配一定大小的缓存,并启动数据缓存处理进程;否则不作任何处理;
②、数据包捕获模块判断所述内核全局变量值,如果为启动,则启动所述数据包捕获模,否则,不作任何处理;
③、数据包捕获模块判断当前TCP/IP协议栈数据包地址是否匹配所述地址过滤表;匹配则复制数据包并存储到所述数据缓存模块的缓存中;否则,不作任何处理;
④、数据缓存进程判断所述缓存内是否为空,不空则读取缓存数据并通过所述数据缓存模块与所述监控模块建立的连接发送数据;空则不做任何处理。
4.根据权利要求1所述的监控方法,其特征在于:所述的步骤三的具体流程如下:
①、监控模块接受所述数据缓存模块发送来的数据;并调用数据预处理模块提取数据包头信息,包括源目的MAC、源目的IP、数据包大小;
②、监控模块调用统计分析模块统计数据包所在的会话流量、会话内容,并根据入侵检测规则分析入侵行为;根据恶意代码规则检测恶意代码;
③、统计分析模块根据输出配置要求,输出统计分析结果,并在页面展示;
④、统计分析模块根据告警配置要求,输出告警结果,并在页面展示。
5.一种虚拟机流量监控系统,其特征在于,所述系统包括如下模块:
①、监控模块:用于部署数据包捕获模块、数据缓存模块;调用预处理模块和统计分析模块;与数据缓存模块建立通信连接;接受数据缓存模块发送来的数据包,下发过滤地址表、命令给数据缓存模块;管理监控配置;
②、预处理模块:获取所述数据包头信息,包括源目的MAC、源目的IP、数据包大小;
③、统计分析模块:用于对所述的预处理模块的处理结果进行统计分析,包括会话流量统计,会话内容还原;根据入侵检测规则分析入侵行为;根据恶意代码规则检测恶意代码;
根据输出配置要求和告警配置要求,输出统计分析结果和告警结果,并在页面展示;
④、数据包捕获模块:用于在虚拟机监控器(VMM)内核监控TCP/IP协议栈的数据包,并根据所述地址过滤表复制所述数据包;并存储到数据缓存模块的缓存中;
⑤、数据缓存模块:用于建立与所述监控模块的连接;发送所缓存中的数据给所述监控模块;接受所述监控模块发送的指令和数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510796199.8A CN106713064A (zh) | 2015-11-18 | 2015-11-18 | 一种虚拟机流量监控方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510796199.8A CN106713064A (zh) | 2015-11-18 | 2015-11-18 | 一种虚拟机流量监控方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106713064A true CN106713064A (zh) | 2017-05-24 |
Family
ID=58932830
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510796199.8A Pending CN106713064A (zh) | 2015-11-18 | 2015-11-18 | 一种虚拟机流量监控方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106713064A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107360058A (zh) * | 2017-07-12 | 2017-11-17 | 郑州云海信息技术有限公司 | 一种实现流量监控的方法及装置 |
CN109684301A (zh) * | 2018-11-26 | 2019-04-26 | 武汉烽火信息集成技术有限公司 | 一种基于大数据的多级网络流量存储方法及系统 |
CN109981403A (zh) * | 2019-03-05 | 2019-07-05 | 北京勤慕数据科技有限公司 | 虚拟机网络数据流量监控方法及装置 |
CN110351275A (zh) * | 2019-07-11 | 2019-10-18 | 北京脉冲星科技有限公司 | 一种主机端口流量监控方法、系统、装置和存储设备 |
-
2015
- 2015-11-18 CN CN201510796199.8A patent/CN106713064A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107360058A (zh) * | 2017-07-12 | 2017-11-17 | 郑州云海信息技术有限公司 | 一种实现流量监控的方法及装置 |
CN109684301A (zh) * | 2018-11-26 | 2019-04-26 | 武汉烽火信息集成技术有限公司 | 一种基于大数据的多级网络流量存储方法及系统 |
CN109981403A (zh) * | 2019-03-05 | 2019-07-05 | 北京勤慕数据科技有限公司 | 虚拟机网络数据流量监控方法及装置 |
CN110351275A (zh) * | 2019-07-11 | 2019-10-18 | 北京脉冲星科技有限公司 | 一种主机端口流量监控方法、系统、装置和存储设备 |
CN110351275B (zh) * | 2019-07-11 | 2022-08-19 | 北京长亭未来科技有限公司 | 一种主机端口流量监控方法、系统、装置和存储设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104063267B (zh) | 一种虚拟机流量监控方法及系统 | |
CN105635035A (zh) | 一种虚拟机流量监控方法 | |
US10452422B2 (en) | Method and apparatus for deploying virtual machine instance, and device | |
CN106713064A (zh) | 一种虚拟机流量监控方法 | |
AU2013372879B2 (en) | Rule swapping in a packet network | |
CA2831705C (en) | Frameworks and interfaces for offload device-based packet processing | |
US10277717B2 (en) | Network introspection in an operating system | |
CN112671578B (zh) | 一种sriov虚拟化网络配置方法及相关装置 | |
EP2747381B1 (en) | Method, network device and system for implementing network card offloading function | |
CN103067242A (zh) | 一种用于提供网络服务的虚拟机系统 | |
US20200028785A1 (en) | Virtual machine packet processing offload | |
CN105827629B (zh) | 云计算环境下软件定义安全导流装置及其实现方法 | |
US10243799B2 (en) | Method, apparatus and system for virtualizing a policy and charging rules function | |
CN108989151B (zh) | 用于网络或应用性能管理的流量采集方法 | |
DE102018004111A1 (de) | Datencenter-Leistungsmanagement | |
CN103118149A (zh) | 同一租户内服务器间的通信控制方法及网络设备 | |
CN108833305A (zh) | 主机的虚拟网络架构 | |
CN114710356A (zh) | 车载防火墙的数据处理方法、装置及车载防火墙设备 | |
CN107249038A (zh) | 业务数据转发方法及系统 | |
CN103795603A (zh) | 一种基于多网卡的边缘虚拟桥接的实现方法和设备 | |
CN108234425A (zh) | 一种虚拟机流量监控方法 | |
CN101582880B (zh) | 一种基于被审计对象的报文过滤方法及系统 | |
CN111262782B (zh) | 一种报文处理方法、装置及设备 | |
Shirokov | XDP: 1.5 years in production. Evolution and lessons learned | |
CN107659511B (zh) | 一种过载控制方法、主机和存储介质以及程序产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20170524 |
|
WD01 | Invention patent application deemed withdrawn after publication |