System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及网络流量管理,尤其涉及一种基于xdp的出境流量管控方法。
技术介绍
1、xdp(express data path)是linux内核中的一种高性能数据包处理框架,它通过在中断驱动程序之前插入一个暂停的内核层次处理程序来实现数据包的快速处理和路由选择。xdp允许开发者在内核空间编写高效的数据包过滤和处理逻辑,并在数据包到达网络协议栈之前进行处理,从而提供非常低的延迟和高吞吐量的数据包处理能力。基于xdp的出境流量管理方法可以用于实施防火墙规则、应对ddos攻击、实现访问控制和数据包过滤等安全策略,同时,它也可以用于负载均衡、流量分发和优化网络性能等流量管理任务。
2、现有的基于xdp的出境流量管理方法主要通过xdp程序加载、数据包拦截、出境流量过滤、拦截流量处理等实现出境流量管理。具体为,将编写好的xdp程序加载到网络接口的驱动程序中,以便在数据包处理阶段进行拦截和处理;其次,在xdp程序中,通过编写ebpf代码实现对出境流量的过滤;最后,对于被xdp程序拦截的出境流量,选择将其通过控制路径继续传送到网络协议栈中的下一步处理,或者直接丢弃它们。
3、然而现有的出境流量管理方法,当面对大规模网段组合时,每个网段都需要在xdp程序中进行匹配和过滤,这将导致需要维护大量的过滤规则和内存数据结构,增加了内存消耗,如果网段组合非常庞大,可能会超过操作系统或硬件的可用内存限制,从而导致性能下降或系统崩溃;其次,传统的基于xdp的方法通常使用单一的线性搜索的方式进行规则匹配,对于每个数据包,需要逐条遍历规则
技术实现思路
1、本专利技术旨在至少解决相关技术中存在的技术问题之一。为此,本专利技术提供一种基于xdp的出境流量管控方法。
2、本专利技术提供一种基于xdp的出境流量管控方法,包括:
3、s1:通过xdp程序解析经过网卡的多个封包,提取每个所述封包的关键信息;
4、s2:根据每个封包的关键信息分别采集每个封包中可用网段的网段信息及约束条件,基于所述网段信息建立表示多个可用网段间连接的拓扑关系;
5、s3:构建导出树,根据所述约束条件将多个可用网段作为节点分别插入所述导出树,对所述导出树进行最小化地址空间寻优获得优化导出树;
6、s4:根据所述优化导出树更新所述拓扑关系,将更新后的拓扑关系转换为图结构,对所述图结构进行特征学习获得图神经网络,通过所述图神经网络对每个所述封包中的可用网段进行组合优化,获得多个优化封包;
7、s5:预设基于树结构的管控规则,通过第一规则对多个所述优化封包与所述管控规则进行一次匹配,通过第二规则对一次匹配中未匹配的优化封包与所述管控规则进行二次匹配,获得管控策略;
8、s6:根据所述管控策略对经过网卡的每个封包进行流量管控。
9、根据本专利技术提供的一种基于xdp的出境流量管控方法,步骤s1中的所述关键信息包括源ip地址、目标ip地址、协议类型、源端口及目标端口。
10、根据本专利技术提供的一种基于xdp的出境流量管控方法,步骤s1还包括:
11、s11:预编译xdp程序,将所述xdp程序加载至待管控网络设备的网卡上。
12、根据本专利技术提供的一种基于xdp的出境流量管控方法,步骤s11包括:
13、s111:采集待管控网络设备的索引信息,根据所述索引信息编译xdp程序;
14、s112:将所述xdp程序通过网络唤醒与待管控网络设备的中断挂钩点关联;
15、s113:启用所述xdp程序,所述xdp程序开始拦截并解析每个所述封包,提取到每个所述封包的关键信息。
16、根据本专利技术提供的一种基于xdp的出境流量管控方法,步骤s2中所述拓扑关系通过邻接矩阵建立,所述拓扑关系的节点表示所述可用网段,所述拓扑关系的边表示多个可用网段间的关系。
17、根据本专利技术提供的一种基于xdp的出境流量管控方法,根据所述约束条件将多个可用网段分别插入所述导出树进一步包括:
18、s31:收集所述可用网段中的已选网段,根据所述拓扑关系将所述已选网段插入所述导出树;
19、s32:将已经插入至导出树的已选网段标记,并更新所述拓扑关系;
20、s33:收集所述可用网段中除已选网段的待选网段,通过前缀树查找与所述待选网段匹配的插入导出树后的已选网段;
21、s34:将待选网段补充至步骤s33中匹配到的已选网段进行组合。
22、根据本专利技术提供的一种基于xdp的出境流量管控方法,步骤s3中,将多个可用网段作为节点分别插入所述导出树时,通过贪心算法分别选取多个可用网段的节点位置。
23、根据本专利技术提供的一种基于xdp的出境流量管控方法,步骤s5中,所述第一规则包括正则表达式、精确匹配及相邻匹配,所述第二规则包括二叉查找树及字典树。
24、根据本专利技术提供的一种基于xdp的出境流量管控方法,所述第一规则中的正则表达式、精确匹配及相邻匹配并行运行,所述第二规则中的二叉查找树及字典树顺序运行。
25、根据本专利技术提供的一种基于xdp的出境流量管控方法,步骤s6包括:
26、对于与所述管控策略匹配的封包,传送至网络协议栈处理;
27、对于与所述管控策略不匹配的封包,停止传送并丢弃封包。本专利技术提供的一种基于xdp的出境流量管控方法,通过加载xdp程序、封包解析、大规模网段组合优化、规则匹配以及管控处理对网卡的出境流量进行管控,不仅可以减少匹配时间和减轻资源开销,从而提高整体的数据包处理性能和系统吞吐量,同时还基于多种匹配规则对解析出的封包信息与预先定义的管控规则进行精准匹配,匹配效率更高还提升了匹配精度。
28、本专利技术的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本专利技术的实践了解到。
本文档来自技高网...【技术保护点】
1.一种基于XDP的出境流量管控方法,其特征在于,包括:
2.根据权利要求1所述的一种基于XDP的出境流量管控方法,其特征在于,步骤S1中的所述关键信息包括源IP地址、目标IP地址、协议类型、源端口及目标端口。
3.根据权利要求1所述的一种基于XDP的出境流量管控方法,其特征在于,步骤S1还包括:
4.根据权利要求1所述的一种基于XDP的出境流量管控方法,其特征在于,步骤S11包括:
5.根据权利要求1所述的一种基于XDP的出境流量管控方法,其特征在于,步骤S2中所述拓扑关系通过邻接矩阵建立,所述拓扑关系的节点表示所述可用网段,所述拓扑关系的边表示多个可用网段间的关系。
6.根据权利要求1所述的一种基于XDP的出境流量管控方法,其特征在于,步骤S3中,根据所述约束条件将多个可用网段分别插入所述导出树进一步包括:
7.根据权利要求1所述的一种基于XDP的出境流量管控方法,其特征在于,步骤S3中,将多个可用网段作为节点分别插入所述导出树时,通过贪心算法分别选取多个可用网段的节点位置。
8.根据权利要求
9.根据权利要求8所述的一种基于XDP的出境流量管控方法,其特征在于,所述第一规则中的正则表达式、精确匹配及相邻匹配并行运行,所述第二规则中的二叉查找树及字典树顺序运行。
10.根据权利要求1所述的一种基于XDP的出境流量管控方法,其特征在于,步骤S6包括:
...【技术特征摘要】
1.一种基于xdp的出境流量管控方法,其特征在于,包括:
2.根据权利要求1所述的一种基于xdp的出境流量管控方法,其特征在于,步骤s1中的所述关键信息包括源ip地址、目标ip地址、协议类型、源端口及目标端口。
3.根据权利要求1所述的一种基于xdp的出境流量管控方法,其特征在于,步骤s1还包括:
4.根据权利要求1所述的一种基于xdp的出境流量管控方法,其特征在于,步骤s11包括:
5.根据权利要求1所述的一种基于xdp的出境流量管控方法,其特征在于,步骤s2中所述拓扑关系通过邻接矩阵建立,所述拓扑关系的节点表示所述可用网段,所述拓扑关系的边表示多个可用网段间的关系。
6.根据权利要求1所述的一种基于xdp的出境流量管控方法,其特征在于,步骤s...
【专利技术属性】
技术研发人员:童天成,李继超,彭晓靖,彭廷鑫,刘毅,曹大林,
申请(专利权)人:中电信数智科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。