CN114006839A - 一种基于eBPF的流量采集方法及装置 - Google Patents

一种基于eBPF的流量采集方法及装置 Download PDF

Info

Publication number
CN114006839A
CN114006839A CN202111137577.3A CN202111137577A CN114006839A CN 114006839 A CN114006839 A CN 114006839A CN 202111137577 A CN202111137577 A CN 202111137577A CN 114006839 A CN114006839 A CN 114006839A
Authority
CN
China
Prior art keywords
traffic
flow
tenant
information
ebpf
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
Application number
CN202111137577.3A
Other languages
English (en)
Other versions
CN114006839B (zh
Inventor
何文娟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Unihub China Information Technology Co Ltd
Original Assignee
Unihub China Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Unihub China Information Technology Co Ltd filed Critical Unihub China Information Technology Co Ltd
Priority to CN202111137577.3A priority Critical patent/CN114006839B/zh
Publication of CN114006839A publication Critical patent/CN114006839A/zh
Application granted granted Critical
Publication of CN114006839B publication Critical patent/CN114006839B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/20Support for services
    • H04L49/208Port mirroring
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开一种基于eBPF的流量采集方法及装置,其中,该方法包括:待采集节点接收到采集参数的配置信息以及镜像端口信息,根据镜像端口信息创建镜像端口,并将采集参数的配置信息和镜像端口传递给内核态的eBPF模块;内核态的eBPF模块接收采集参数的配置信息和镜像端口,内核态的eBPF模块附着在XDP跟踪点上,根据采集参数的配置信息对流量进行过滤,并通过镜像端口发送到流量分析系统;控制系统汇总流量分析系统的分析结果,结合租户网络信息以及租户资产信息进行关联分析,统一呈现租户资产之间的拓扑关系,流量路径关系以及租户资产的安全状态。该方法及装置实现多租户的流量采集,效率更高,方案更简单,更通用。

Description

一种基于eBPF的流量采集方法及装置
技术领域
本发明涉及云安全管理技术领域,尤其是一种基于eBPF的流量采集方法及装置。
背景技术
随着云计算的发展,其灵活分配,弹性扩容和快速恢复的特性,使得越来越多的业务选择云上部署,用户希望对云内的业务进行监控,了解云内资产的运行状态。
对于租户内的流量,所有传统的和物理的流量采集手段都变得不可用。对于数据中心通过镜像端口的方式采集流量,也不能满足多租户的场景,汇聚之后的流量无法区分租户信息。
目前,一种方案是通过在租户VPC网络内部署虚拟机进行量的采集,但虚拟机的部署仅仅适用于虚拟化的场景,不能适应于容器化的环境,同时虚拟机的部署也占用了租户的计算资源;另一种方案是通过运管接口来采集流量,但仅适用某个特定的网管,对接不同的运管,需要适配不同的接口。这两种方案都是在用户态进行流量的捕获和处置,效率较低。
eBPF(extended Berkeley Packet Filter,扩展的伯克利包过滤器)作为Linux的顶级项目,其优越的性能以及可编程等特性,使其在系统跟踪、观测、性能调优、安全和网络等领域发挥重要的角色。相对于系统的性能分析和观测,eBPF技术在网络技术中的表现,更是让人眼前一亮,eBPF技术与XDP(eXpress Data Path,特快数据路径)和TC(TrafficControl,流量控制)组合可以实现更加强大的网络功能,更可为SDN(software definednetwork,软件定义网络)提供基础支撑。
发明内容
为解决目前两种方案存在的上述问题,本发明提供一种基于eBPF的流量采集方法及装置,实现多租户的流量采集,效率更高,方案更简单,更通用。
为实现上述目的,本发明采用下述技术方案:
在本发明一实施例中,提出了一种基于eBPF的流量采集方法,该方法包括:
待采集节点接收到采集参数的配置信息以及镜像端口信息,根据镜像端口信息创建镜像端口,并将采集参数的配置信息和镜像端口通BPF_MAP传递给内核态的eBPF模块;
内核态的eBPF模块附着在XDP跟踪点上,接收采集参数的配置信息和镜像端口,对于进入待采集节点的流量,根据采集参数的配置信息进行过滤,将过滤后的流量通过镜像端口发送到流量分析系统;
流量分析系统接收到流量后,根据流量处置规则,对流量进行处理和分析;
控制系统汇总流量分析系统的分析结果,结合租户网络信息以及租户资产信息进行关联分析,统一呈现租户资产之间的拓扑关系,流量路径关系以及租户资产的安全状态。
进一步地,控制系统接收租户的监控请求,结合租户网络信息,确定待采集的节点信息和流量特征,并根据流量分析系统的部署位置与租户网络的关系,确定镜像端口信息。
进一步地,控制系统根据所确定的待采集的节点信息,向待采集节点分发采集参数的配置信息以及镜像端口信息,并将流量处置规则发送给流量分析系统。
进一步地,控制系统从云管平台获取租户网络信息以及租户资产信息。
进一步地,根据流量特征确定采集参数的配置信息。
进一步地,控制系统直接对待采集节点进行采集参数的配置,或者通过云管平台对待采集节点进行采集参数的配置。
进一步地,流量分析系统若部署在VPC内部,则镜像端口为待采集机器的物理接口或者虚拟接口,若部署在VPC外部,则需要配置镜像接口为镜像端口与流量分析系统之间通道的源端,且该通道头部携带租户标识。
进一步地,流量分析系统包括流量汇聚组件以及多个流量分析组件;流量汇聚组件接收流量并进行预处理,再根据流量处置规则将匹配的流量转发至相应的流量分析组件;流量分析组件根据租户所订阅的信息,将分析结果上报至控制系统。
进一步地,若流量分析组件为多租户共享或者与流量汇聚组件部署在不同网络时,则流量汇聚组件将携带租户信息的流量转发至流量分析组件,流量分析组件将携带租户信息的分析结果上报至控制系统。
进一步地,流量处置规则是根据用户对流量的分析需求以及流量分析系统的拓扑结构,转化为相应的流量映射规则,将符合匹配特征的流量转发至租户所订阅的流量分析系统。
在本发明一实施例中,还提出了一种基于eBPF的流量采集装置,该装置包括:
待采集节点,用于接收采集参数的配置信息以及镜像端口信息,根据镜像端口信息创建镜像端口,并将采集参数的配置信息和镜像端口传递给内核态的eBPF模块;内核态的eBPF模块附着在XDP跟踪点上,接收采集参数的配置信息和镜像端口,对于进入待采集节点的流量,根据采集参数的配置信息进行过滤,将过滤后的流量通过镜像端口发送到流量分析系统;
流量分析系统,用于接收到流量后,根据流量处置规则,对流量进行处理和分析;
控制系统,用于汇总流量分析系统的分析结果,结合租户网络信息以及租户资产信息进行关联分析,统一呈现租户资产之间的拓扑关系,流量路径关系以及租户资产的安全状态。
进一步地,控制系统,还用于接收租户的监控请求,结合租户网络信息,确定待采集的节点信息和流量特征,并根据流量分析系统的部署位置与租户网络的关系,确定镜像端口信息;
进一步地,控制系统,还用于根据所确定的待采集的节点信息,向待采集节点分发采集参数的配置信息以及镜像端口信息,并将流量处置规则发送给流量分析系统;
进一步地,控制系统从云管平台获取租户网络信息以及租户资产信息。
进一步地,根据流量特征确定采集参数的配置信息。
进一步地,控制系统直接对待采集节点进行采集参数的配置,或者通过云管平台对待采集节点进行采集参数的配置。
进一步地,流量分析系统若部署在VPC内部,则镜像端口为待采集机器的物理接口或者虚拟接口,若部署在VPC外部,则需要配置镜像接口为镜像端口与流量分析系统之间通道的源端,且该通道头部携带租户标识。
进一步地,流量分析系统包括流量汇聚组件以及多个流量分析组件;流量汇聚组件接收流量并进行预处理,再根据流量处置规则将匹配的流量转发至相应的流量分析组件;流量分析组件根据租户所订阅的信息,将分析结果上报至控制系统。
进一步地,若流量分析组件为多租户共享或者与流量汇聚组件部署在不同网络时,则流量汇聚组件将携带租户信息的流量转发至流量分析组件,流量分析组件将携带租户信息的分析结果上报至控制系统。
进一步地,流量处置规则是根据用户对流量的分析需求以及流量分析系统的拓扑结构,转化为相应的流量映射规则,将符合匹配特征的流量转发至租户所订阅的流量分析系统。
在本发明一实施例中,还提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现前述基于eBPF的流量采集方法。
在本发明一实施例中,还提出了一种计算机可读存储介质,计算机可读存储介质存储有执行基于eBPF的流量采集方法的计算机程序。
有益效果:
1、本发明通过eBPF采集流量,效率更高。
2、本发明通过OVERLAY(堆叠)承载租户的流量,实现多租户流量的统一监控。
附图说明
图1是本发明一实施例的基于eBPF的流量采集方法流程示意图;
图2是本发明一实施例的对租户A网络的流量监控实例图;
图3本发明一实施例的基于eBPF的流量采集装置结构示意图;
图4是本发明一实施例的计算机设备结构示意图。
具体实施方式
下面将参考若干示例性实施方式来描述本发明的原理和精神,应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
本领域技术人员知道,本发明的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
根据本发明的实施方式,提出了一种基于eBPF的流量采集方法及装置,内核态的eBPF模块接收采集参数的配置信息和镜像端口,内核态的eBPF模块附着在XDP跟踪点上,根据采集参数的配置信息对流量进行过滤,并通过镜像端口发送到流量分析系统;控制系统汇总流量分析系统的分析结果,结合租户网络信息以及租户资产信息进行关联分析,统一呈现租户资产之间的拓扑关系,流量路径关系以及租户资产的安全状态,提高了租户云上业务的可视性和安全性。
下面参考本发明的若干代表性实施方式,详细阐释本发明的原理和精神。
图1是本发明一实施例的基于eBPF的流量采集方法流程示意图。如图1所示,该方法包括:
S1、控制系统接收租户的监控请求,结合租户网络信息,确定待采集的节点信息和流量特征,并根据流量分析系统的部署位置与租户网络的关系,确定镜像端口信息;
控制系统可以是软件定义安全控制器或者安全运营平台或者云安全管理中心等;
控制系统从云管平台获取租户网络信息以及租户资产信息;租户网络信息包括租户标识、租户网络类型、VPC(Virtual Private Cloud,虚拟私有云)信息、子网信息以及接口信息、云主机信息、网络组件信息以及安全组件信息;租户网络类型可以是VLAN(VirtualLocal Area Network,虚拟局域网)或者VXLAN(Virtual Extensible Local AreaNetwork,虚拟扩展局域网)等;
租户的监控请求可以是对某个网络或者某个节点或者某种特征的流量进行监控;
流量分析系统若部署在VPC内部,则镜像端口可以为待采集机器的物理接口或者虚拟接口,若部署在VPC外部,则需要配置镜像接口为隧道的源端,该隧道为镜像端口与流量分析系统之间的通道,即流量分析系统为隧道的终端,该隧道头部携带租户标识;
租户可以独享流量分析系统,也可以选择和其他用户共享流量分析系统;独享流量分析系统时,租户可以选择将流量分析系统部署在VPC内部,若有多个VPC,则可以将流量分析系统部署在VPC内部,并打通VPC网络;
流量特征包括端口信息,五元组信息以及某种应用类型的流量;可以根据流量特征确定采集参数的配置信息;
S2、控制系统根据所确定的待采集的节点信息,向待采集节点分发采集参数的配置信息以及镜像端口信息,并将流量处置规则发送给流量分析系统;
控制系统可以直接对待采集节点进行采集参数的配置,或者通过云管平台对待采集节点进行采集参数的配置;
采集参数包括流量的端口信息,五元组信息以及某种应用类型;
S3、待采集节点接收到采集参数的配置信息以及镜像端口信息,根据镜像端口信息创建镜像端口,并将采集参数的配置信息和镜像端口通BPF_MAP(BPF是用户态和内核态进行通信的结构体)传递给内核态的eBPF模块;
镜像端口即流量的转发接口,可以是实际的物理端口,也可以是节点的虚拟端口以及隧道端口;隧道可以为VXLAN或者NVGRE(Network Virtualization using GenericRouting Encapsulation,通用路由协议封装的网络虚拟化)或者GENEVE(Generic NetworkVirtualization Encapsulation,通用网络虚拟化封装)等,隧道中携带租户标识;
通过BPF_MAP在用户态程序和插入内核的bpf函数间进行异步通信,使得eBPF模块可以动态接收采集参数的配置信息的变化;
S4、内核态的eBPF模块附着在XDP跟踪点上,接收采集参数的配置信息和镜像端口,对于进入待采集节点的流量,根据采集参数的配置信息进行过滤,将过滤后的流量通过镜像端口发送到流量分析系统;
eBPF模块附着在XDP跟踪点上,使得不需要进入内核协议栈,即可以对流量进行处理,使得性能获得极大的提高;
S5、流量分析系统接收到流量后,根据流量处置规则,对流量进行处理和分析;
流量分析系统可以部署在VPC的内部,也可以部署在VPC的外部;流量分析系统包括流量汇聚组件以及多个流量分析组件;流量汇聚组件接收流量并进行预处理,再根据流量处置规则将匹配的流量转发至相应的流量分析组件;流量分析组件根据租户所订阅的信息,将分析结果上报至控制系统;流量分析组件包括深度包检测,入侵检测和安全审计等组件;分析结果包括告警信息、安全事件和流信息等;
流量汇聚组件和流量分析组件,作为流量分析系统的构成组件,可以部署在一起,也可以分开部署;
若流量汇聚组件和流量分析组件部署在不同的网络中,则流量汇聚组件将流量转发至流量分析组件时,需要携带租户信息;
若流量分析组件为多租户共享时,则流量汇聚组件将携带租户信息的流量转发至流量分析组件,流量分析组件上报分析结果时,需要携带租户信息;流量分析系统中的租户信息和租户网络可以分离,控制系统根据实际组网,在流量分析系统中配置租户标识,可以是基于接口,基于VLAN,也可以使用隧道的方式;
流量处置规则是根据用户对流量的分析需求以及流量分析系统的拓扑结构,转化为相应的流量映射规则,将符合匹配特征的流量转发至租户所订阅的流量分析系统;
S6、控制系统汇总流量分析系统的分析结果,结合租户网络信息以及租户资产信息进行关联分析,统一呈现租户资产之间的拓扑关系,流量路径关系以及租户资产的安全状态。
需要说明的是,尽管在上述实施例及附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
为了对上述基于eBPF的流量采集方法进行更为清楚的解释,下面结合一个具体的实施例来进行说明,然而值得注意的是该实施例仅是为了更好地说明本发明,并不构成对本发明不当的限定。
实施例:
租户A根据自身的业务需求,希望对租户私有云网络VPC-1中的节点VM1和VM2的进行流量监控,VPC-1部署在某公有云的上海资源池可用区域A。如图2所示,租户A网络VPC-1中的核心资产VM1和VM2,流量分析系统中的流量汇聚组件H1以及流量分析组件A1和A2。
实现步骤如下:
S1、控制系统接收租户的监控请求,结合租户网络信息,确定待采集的节点信息和流量特征,并根据流量分析系统的部署位置与租户网络的关系,确定镜像端口信息;
控制系统可以是软件定义安全控制器或者安全运营平台或者云安全管理中心等;
控制系统从云管平台获取租户网络信息以及租户资产信息;租户网络信息包括租户标识、租户网络类型、VPC(Virtual Private Cloud,虚拟私有云)信息、子网信息以及接口信息、云主机信息、网络组件信息以及安全组件信息;租户网络类型可以是VLAN(VirtualLocal Area Network,虚拟局域网)或者VXLAN(Virtual Extensible Local AreaNetwork,虚拟扩展局域网)等;
租户的监控请求可以是对某个网络或者某个节点或者某种特征的流量进行监控;本实施例中,需要对节点VM1和VM2进行流量监控;可以对某个子网或者某个业务系统或者某种类型的流量,比如web应用的流量或者DNS流量进行采集,或者某个端口流量,比如8080端口的流量进行监控,还可以指定监控某个接口的流量。
流量分析系统若部署在VPC内部,则镜像端口可以为待采集机器的物理接口或者虚拟接口,若部署在VPC外部,则需要配置镜像接口为隧道的源端,该隧道为镜像端口与流量分析系统之间的通道,即流量分析系统为隧道的终端,该隧道头部携带租户标识;
租户可以独享流量分析系统,也可以选择和其他用户共享流量分析系统;独享流量分析系统时,租户可以选择将流量分析系统部署在VPC内部,若有多个VPC,则可以将流量分析系统部署在VPC内部,并打通VPC网络;
流量特征包括端口信息,五元组信息以及某种应用类型的流量;可以根据流量特征确定采集参数的配置信息;
S2、控制系统根据所确定的待采集的节点信息,向待采集节点分发采集参数的配置信息以及镜像端口信息,并将流量处置规则发送给流量分析系统;
控制系统可以直接对待采集节点进行采集参数的配置,或者通过云管平台对待采集节点进行采集参数的配置;
采集参数包括流量的端口信息,五元组信息以及某种应用类型;
S3、待采集节点接收到采集参数的配置信息以及镜像端口信息,根据镜像端口信息创建镜像端口,并将采集参数的配置信息和镜像端口通BPF_MAP(BPF是用户态和内核态进行通信的结构体)传递给内核态的eBPF模块;
镜像端口即流量的转发接口,可以是实际的物理端口,也可以是节点的虚拟端口以及隧道端口;隧道可以为VXLAN或者NVGRE(Network Virtualization using GenericRouting Encapsulation,通用路由协议封装的网络虚拟化)或者GENEVE(Generic NetworkVirtualization Encapsulation,通用网络虚拟化封装)等,隧道中携带租户标识;
通过BPF_MAP在用户态程序和插入内核的bpf函数间进行异步通信,使得eBPF模块可以动态接收采集参数的配置信息的变化;
S4、内核态的eBPF模块附着在XDP跟踪点上,接收采集参数的配置信息和镜像端口,对于进入待采集节点的流量,根据采集参数的配置信息进行过滤,将过滤后的流量通过镜像端口发送到流量分析系统;
eBPF模块附着在XDP跟踪点上,使得不需要进入内核协议栈,即可以对流量进行处理,使得性能获得极大的提高;
S5、流量分析系统接收到流量后,根据流量处置规则,对流量进行处理和分析;
流量分析系统可以部署在VPC的内部,也可以部署在VPC的外部;流量分析系统包括流量汇聚组件以及多个流量分析组件;流量汇聚组件接收流量并进行预处理,再根据流量处置规则将匹配的流量转发至相应的流量分析组件;流量分析组件根据租户所订阅的信息,将分析结果上报至控制系统;流量分析组件包括深度包检测,入侵检测和安全审计等组件;分析结果包括告警信息、安全事件和流信息等;
流量汇聚组件和流量分析组件,作为流量分析系统的构成组件,可以部署在一起,也可以分开部署;
若流量汇聚组件和流量分析组件部署在不同的网络中,则流量汇聚组件将流量转发至流量分析组件时,需要携带租户信息;
若流量分析组件为多租户共享时,则流量汇聚组件将携带租户信息的流量转发至流量分析组件,流量分析组件上报分析结果时,需要携带租户信息;流量分析系统中的租户信息和租户网络可以分离,控制系统根据实际组网,在流量分析系统中配置租户标识,可以是基于接口,基于VLAN,也可以使用隧道的方式;
流量处置规则是根据用户对流量的分析需求以及流量分析系统的拓扑结构,转化为相应的流量映射规则,将符合匹配特征的流量转发至租户所订阅的流量分析系统;比如,租户A希望对IPv4类型的流量进行入侵检测,根据用户请求结合流量分析系统的拓扑结构,将用户请求转换为流量映射规则,即流量汇聚组件筛选出入端口P1的IPv4的流量,将该入端口为P1(P1为该租户A的流量入端口)的IPv4类型的流量转发至P2端口(流量分析系统的P2端口连接入侵检测系统)
S6、控制系统汇总流量分析系统的分析结果,结合租户网络信息以及租户资产信息进行关联分析,统一呈现租户资产之间的拓扑关系,流量路径关系以及租户资产的安全状态。
基于同一发明构思,本发明还提出一种基于eBPF的流量采集装置。该装置的实施可以参见上述方法的实施,重复之处不再赘述。以下所使用的术语“模块”,可以是实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图3是本发明一实施例的基于eBPF的流量采集装置结构示意图。如图3所示,该装置包括:
控制系统101,用于接收租户的监控请求,结合租户网络信息,确定待采集的节点信息和流量特征,并根据流量分析系统103的部署位置与租户网络的关系,确定镜像端口信息;根据所确定的待采集的节点信息,向待采集节点102分发采集参数的配置信息以及镜像端口信息,并将流量处置规则发送给流量分析系统103;
待采集节点102,用于接收到采集参数的配置信息以及镜像端口信息,根据镜像端口信息创建镜像端口,并将采集参数的配置信息和镜像端口通BPF_MAP传递给内核态的eBPF模块;内核态的eBPF模块附着在XDP跟踪点上,接收采集参数的配置信息和镜像端口,对于进入待采集节点的流量,根据采集参数的配置信息进行过滤,将过滤后的流量通过镜像端口发送到流量分析系统103;
控制系统101可以是软件定义安全控制器或者安全运营平台或者云安全管理中心等;
控制系统101从云管平台获取租户网络信息以及租户资产信息;租户网络信息包括租户标识、租户网络类型、VPC(Virtual Private Cloud,虚拟私有云)信息、子网信息以及接口信息、云主机信息、网络组件信息以及安全组件信息;租户网络类型可以是VLAN(Virtual Local Area Network,虚拟局域网)或者VXLAN(Virtual Extensible LocalArea Network,虚拟扩展局域网)等;
租户的监控请求可以是对某个网络或者某个节点或者某种特征的流量进行监控;
流量分析系统103若部署在VPC内部,则镜像端口可以为待采集机器的物理接口或者虚拟接口,若部署在VPC外部,则需要配置镜像接口为隧道的源端,该隧道为镜像端口与流量分析系统103之间的通道,即流量分析系统103为隧道的终端,该隧道头部携带租户标识;
租户可以独享流量分析系统103,也可以选择和其他用户共享流量分析系统103;独享流量分析系统103时,租户可以选择将流量分析系统103部署在VPC内部,若有多个VPC,则可以将流量分析系统103部署在VPC内部,并打通VPC网络;
流量特征包括端口信息,五元组信息以及某种应用类型的流量;可以根据流量特征确定采集参数的配置信息;
控制系统101可以直接对待采集节点进行采集参数的配置,或者通过云管平台对待采集节点进行采集参数的配置;
采集参数包括流量的端口信息,五元组信息以及某种应用类型;
镜像端口即流量的转发接口,可以是实际的物理端口,也可以是节点的虚拟端口以及隧道端口;隧道可以为VXLAN或者NVGRE(Network Virtualization using GenericRouting Encapsulation,通用路由协议封装的网络虚拟化)或者GENEVE(Generic NetworkVirtualization Encapsulation,通用网络虚拟化封装)等,隧道中携带租户标识;
通过BPF_MAP在用户态程序和插入内核的bpf函数间进行异步通信,使得eBPF模块可以动态接收采集参数的配置信息的变化;
eBPF模块附着在XDP跟踪点上,使得不需要进入内核协议栈,即可以对流量进行处理,使得性能获得极大的提高;
流量分析系统103,用于接收到流量后,根据流量处置规则,对流量进行处理和分析;
流量分析系统103可以部署在VPC的内部,也可以部署在VPC的外部;流量分析系统103包括流量汇聚组件以及多个流量分析组件;流量汇聚组件接收流量并进行预处理,再根据流量处置规则将匹配的流量转发至相应的流量分析组件;流量分析组件根据租户所订阅的信息,将分析结果上报至控制系统101;流量分析组件包括深度包检测,入侵检测和安全审计等组件;分析结果包括告警信息、安全事件和流信息等;
流量汇聚组件和流量分析组件,作为流量分析系统103的构成组件,可以部署在一起,也可以分开部署;
若流量汇聚组件和流量分析组件部署在不同的网络中,则流量汇聚组件将流量转发至流量分析组件时,需要携带租户信息;
若流量分析组件为多租户共享时,则流量汇聚组件将携带租户信息的流量转发至流量分析组件,流量分析组件上报分析结果时,需要携带租户信息;流量分析系统103中的租户信息和租户网络可以分离,控制系统根据实际组网,在流量分析系统103中配置租户标识,可以是基于接口,基于VLAN,也可以使用隧道的方式;
流量处置规则是根据用户对流量的分析需求以及流量分析系统103的拓扑结构,转化为相应的流量映射规则,将符合匹配特征的流量转发至租户所订阅的流量分析系统103;
控制系统101,用于汇总流量分析系统103的分析结果,结合租户网络信息以及租户资产信息进行关联分析,统一呈现租户资产之间的拓扑关系,流量路径关系以及租户资产的安全状态。
应当注意,尽管在上文详细描述中提及了基于eBPF的流量采集装置的若干模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多模块的特征和功能可以在一个模块中具体化。反之,上文描述的一个模块的特征和功能可以进一步划分为由多个模块来具体化。
基于前述发明构思,如图4所示,本发明还提出一种计算机设备200,包括存储器210、处理器220及存储在存储器210上并可在处理器220上运行的计算机程序230,处理器220执行计算机程序230时实现前述基于eBPF的流量采集方法。
基于前述发明构思,本发明还提出一种计算机可读存储介质,计算机可读存储介质存储有执行前述基于eBPF的流量采集方法的计算机程序。
本发明提出的基于eBPF的流量采集方法及装置,通过eBPF采集流量,效率更高;通过OVERLAY(堆叠)承载租户的流量,实现多租户流量的统一监控。
虽然已经参考若干具体实施方式描述了本发明的精神和原理,但是应该理解,本发明并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本发明旨在涵盖所附权利要求的精神和范围内所包含的各种修改和等同布置。
对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。

Claims (22)

1.一种基于eBPF的流量采集方法,其特征在于,该方法包括:
待采集节点接收到采集参数的配置信息以及镜像端口信息,根据镜像端口信息创建镜像端口,并将采集参数的配置信息和镜像端口传递给内核态的eBPF模块;
内核态的eBPF模块附着在XDP跟踪点上,接收采集参数的配置信息和镜像端口,对于进入待采集节点的流量,根据采集参数的配置信息进行过滤,将过滤后的流量通过镜像端口发送到流量分析系统;
流量分析系统接收到流量后,根据流量处置规则,对流量进行处理和分析;
控制系统汇总流量分析系统的分析结果,结合租户网络信息以及租户资产信息进行关联分析,统一呈现租户资产之间的拓扑关系,流量路径关系以及租户资产的安全状态。
2.根据权利要求1所述的基于eBPF的流量采集方法,其特征在于,所述控制系统接收租户的监控请求,结合租户网络信息,确定待采集的节点信息和流量特征,并根据流量分析系统的部署位置与租户网络的关系,确定镜像端口信息。
3.根据权利要求2所述的基于eBPF的流量采集方法,其特征在于,所述控制系统根据所确定的待采集的节点信息,向待采集节点分发采集参数的配置信息以及镜像端口信息,并将流量处置规则发送给流量分析系统。
4.根据权利要求1所述的基于eBPF的流量采集方法,其特征在于,所述控制系统从云管平台获取租户网络信息以及租户资产信息。
5.根据权利要求2所述的基于eBPF的流量采集方法,其特征在于,根据所述流量特征确定采集参数的配置信息。
6.根据权利要求3所述的基于eBPF的流量采集方法,其特征在于,所述控制系统直接对待采集节点进行采集参数的配置,或者通过云管平台对待采集节点进行采集参数的配置。
7.根据权利要求2所述的基于eBPF的流量采集方法,其特征在于,所述流量分析系统若部署在VPC内部,则镜像端口为待采集机器的物理接口或者虚拟接口,若部署在VPC外部,则需要配置镜像接口为镜像端口与流量分析系统之间通道的源端,且该通道头部携带租户标识。
8.根据权利要求1所述的基于eBPF的流量采集方法,其特征在于,所述流量分析系统包括流量汇聚组件以及多个流量分析组件;流量汇聚组件接收流量并进行预处理,再根据流量处置规则将匹配的流量转发至相应的流量分析组件;流量分析组件根据租户所订阅的信息,将分析结果上报至控制系统。
9.根据权利要求8所述的基于eBPF的流量采集方法,其特征在于,若所述流量分析组件为多租户共享或者与流量汇聚组件部署在不同网络时,则流量汇聚组件将携带租户信息的流量转发至流量分析组件,流量分析组件将携带租户信息的分析结果上报至控制系统。
10.根据权利要求1或8所述的基于eBPF的流量采集方法,其特征在于,所述流量处置规则是根据用户对流量的分析需求以及流量分析系统的拓扑结构,转化为相应的流量映射规则,将符合匹配特征的流量转发至租户所订阅的流量分析系统。
11.一种基于eBPF的流量采集装置,其特征在于,该装置包括:
待采集节点,用于接收采集参数的配置信息以及镜像端口信息,根据镜像端口信息创建镜像端口,并将采集参数的配置信息和镜像端口传递给内核态的eBPF模块;内核态的eBPF模块附着在XDP跟踪点上,接收采集参数的配置信息和镜像端口,对于进入待采集节点的流量,根据采集参数的配置信息进行过滤,将过滤后的流量通过镜像端口发送到流量分析系统;
流量分析系统,用于接收到流量后,根据流量处置规则,对流量进行处理和分析;
控制系统,用于汇总流量分析系统的分析结果,结合租户网络信息以及租户资产信息进行关联分析,统一呈现租户资产之间的拓扑关系,流量路径关系以及租户资产的安全状态。
12.根据权利要求11所述的基于eBPF的流量采集装置,其特征在于,所述控制系统,还用于接收租户的监控请求,结合租户网络信息,确定待采集的节点信息和流量特征,并根据流量分析系统的部署位置与租户网络的关系,确定镜像端口信息。
13.根据权利要求12所述的基于eBPF的流量采集装置,其特征在于,所述控制系统,还用于根据所确定的待采集的节点信息,向待采集节点分发采集参数的配置信息以及镜像端口信息,并将流量处置规则发送给流量分析系统。
14.根据权利要求11所述的基于eBPF的流量采集装置,其特征在于,所述控制系统从云管平台获取租户网络信息以及租户资产信息。
15.根据权利要求12所述的基于eBPF的流量采集装置,其特征在于,根据所述流量特征确定采集参数的配置信息。
16.根据权利要求13所述的基于eBPF的流量采集装置,其特征在于,所述控制系统直接对待采集节点进行采集参数的配置,或者通过云管平台对待采集节点进行采集参数的配置。
17.根据权利要求12所述的基于eBPF的流量采集装置,其特征在于,所述流量分析系统若部署在VPC内部,则镜像端口为待采集机器的物理接口或者虚拟接口,若部署在VPC外部,则需要配置镜像接口为镜像端口与流量分析系统之间通道的源端,且该通道头部携带租户标识。
18.根据权利要求11所述的基于eBPF的流量采集装置,其特征在于,所述流量分析系统包括流量汇聚组件以及多个流量分析组件;流量汇聚组件接收流量并进行预处理,再根据流量处置规则将匹配的流量转发至相应的流量分析组件;流量分析组件根据租户所订阅的信息,将分析结果上报至控制系统。
19.根据权利要求18所述的基于eBPF的流量采集装置,其特征在于,若所述流量分析组件为多租户共享或者与流量汇聚组件部署在不同网络时,则流量汇聚组件将携带租户信息的流量转发至流量分析组件,流量分析组件将携带租户信息的分析结果上报至控制系统。
20.根据权利要求11或18所述的基于eBPF的流量采集装置,其特征在于,所述流量处置规则是根据用户对流量的分析需求以及流量分析系统的拓扑结构,转化为相应的流量映射规则,将符合匹配特征的流量转发至租户所订阅的流量分析系统。
21.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1-10中任一项所述方法。
22.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求1-10中任一项所述方法的计算机程序。
CN202111137577.3A 2021-09-27 2021-09-27 一种基于eBPF的流量采集方法及装置 Active CN114006839B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111137577.3A CN114006839B (zh) 2021-09-27 2021-09-27 一种基于eBPF的流量采集方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111137577.3A CN114006839B (zh) 2021-09-27 2021-09-27 一种基于eBPF的流量采集方法及装置

Publications (2)

Publication Number Publication Date
CN114006839A true CN114006839A (zh) 2022-02-01
CN114006839B CN114006839B (zh) 2023-06-23

Family

ID=79921733

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111137577.3A Active CN114006839B (zh) 2021-09-27 2021-09-27 一种基于eBPF的流量采集方法及装置

Country Status (1)

Country Link
CN (1) CN114006839B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114745307A (zh) * 2022-02-25 2022-07-12 网宿科技股份有限公司 一种容器流量的监控方法及bpf控制器
CN114928562A (zh) * 2022-04-28 2022-08-19 杭州悦数科技有限公司 一种图计算平台的流量处理方法和系统
CN115118791A (zh) * 2022-05-20 2022-09-27 网宿科技股份有限公司 Udp报文的分发方法、设备及可读存储介质
US11743108B1 (en) * 2022-03-15 2023-08-29 Cisco Technology, Inc. Dynamic customization of network controller data path based on controller internal state awareness

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107241283A (zh) * 2017-05-23 2017-10-10 国家计算机网络与信息安全管理中心 一种跨主机租户的东西向网络流量镜像采集方法
CN107689953A (zh) * 2017-08-18 2018-02-13 中国科学院信息工程研究所 一种面向多租户云计算的容器安全监控方法及系统
CN111198976A (zh) * 2019-12-27 2020-05-26 浙江省北大信息技术高等研究院 云上资产关联分析系统、方法、电子设备及介质
CN112564967A (zh) * 2020-12-02 2021-03-26 杭州谐云科技有限公司 基于eBPF的云服务拓扑自发现方法及系统、电子设备、存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107241283A (zh) * 2017-05-23 2017-10-10 国家计算机网络与信息安全管理中心 一种跨主机租户的东西向网络流量镜像采集方法
CN107689953A (zh) * 2017-08-18 2018-02-13 中国科学院信息工程研究所 一种面向多租户云计算的容器安全监控方法及系统
CN111198976A (zh) * 2019-12-27 2020-05-26 浙江省北大信息技术高等研究院 云上资产关联分析系统、方法、电子设备及介质
CN112564967A (zh) * 2020-12-02 2021-03-26 杭州谐云科技有限公司 基于eBPF的云服务拓扑自发现方法及系统、电子设备、存储介质

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114745307A (zh) * 2022-02-25 2022-07-12 网宿科技股份有限公司 一种容器流量的监控方法及bpf控制器
CN114745307B (zh) * 2022-02-25 2023-09-22 网宿科技股份有限公司 一种容器流量的监控方法及bpf控制器
US11743108B1 (en) * 2022-03-15 2023-08-29 Cisco Technology, Inc. Dynamic customization of network controller data path based on controller internal state awareness
US20230300019A1 (en) * 2022-03-15 2023-09-21 Cisco Technology, Inc. Dynamic customization of network controller data path based on controller internal state awareness
CN114928562A (zh) * 2022-04-28 2022-08-19 杭州悦数科技有限公司 一种图计算平台的流量处理方法和系统
CN115118791A (zh) * 2022-05-20 2022-09-27 网宿科技股份有限公司 Udp报文的分发方法、设备及可读存储介质
CN115118791B (zh) * 2022-05-20 2023-09-22 网宿科技股份有限公司 Udp报文的分发方法、设备及可读存储介质
US12120203B2 (en) 2022-05-20 2024-10-15 Wangsu Science and Technology Co., Ltd. UDP message distribution method, UDP message distribution apparatus, electronic device and computer readable storage medium

Also Published As

Publication number Publication date
CN114006839B (zh) 2023-06-23

Similar Documents

Publication Publication Date Title
CN114006839B (zh) 一种基于eBPF的流量采集方法及装置
US10454824B2 (en) Generic communication channel for information exchange between a hypervisor and a virtual machine
US10230616B2 (en) Monitoring virtualized network
CN105207873B (zh) 一种报文处理方法和装置
JP7035227B2 (ja) データパケット検出方法、デバイス、及びシステム
US10205657B2 (en) Packet forwarding in data center network
US9832136B1 (en) Streaming software to multiple virtual machines in different subnets
AU2015382846B2 (en) Alarm information processing method, related device and system
CN113169894A (zh) 基于事件的数据的直观可视化
CN114070723A (zh) 裸金属服务器的虚拟网络配置方法、系统及智能网卡
US9755854B2 (en) Tag conversion apparatus
CN113709017A (zh) 虚拟化流量的采集方法及装置
US9716688B1 (en) VPN for containers and virtual machines in local area networks
CN112437072A (zh) 一种云平台中虚拟机流量牵引系统、方法、设备及介质
CN114172854A (zh) 报文镜像、镜像配置方法、虚拟交换机及镜像配置装置
US20140310377A1 (en) Information processing method and information processing apparatus
CN111314461B (zh) Ip挂载、数据处理方法和装置
KR101934908B1 (ko) Sdn 기반의 통합 라우팅에 의한 피씨 전원 제어 방법
CN114039914A (zh) 一种城域网存活IPv6地址与规划分析方法及装置
CN113852546A (zh) 面向物联泛在接入网关的异构网络接入及转换方法、网关
CN114697278A (zh) 通信方法、装置及系统
WO2024199223A1 (zh) 设备接入位置的获取方法及装置
JP2015142269A (ja) 通信解析装置、通信解析システム、通信解析方法、及び、プログラム
CN116132435B (zh) 一种容器云平台的双栈跨节点通信方法和系统
CN118041701B (zh) 一种基于容器云微服务访问流量定向采集预警方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant