一种基于名字提取的网络包处置方法及系统

文档序号:30381050发布日期:2022-06-11 04:01阅读:153来源:国知局
一种基于名字提取的网络包处置方法及系统

1.本发明涉及一种网络包处置方法及系统,特别涉及一种基于名字提取的网络包处置方法及系统。


背景技术:

2.随着网络用户需求的多样化发展,网络环境愈发复杂,如何灵活、高效地处置数据流中的网络包成为亟待解决的难题。而目前针对网络包分析处理技术,仅停留在了解网络的特征、识别网络资源的使用情况上,尚未涉及根据实际应用需求,充分挖掘并发挥网络内的计算潜能。其中包过滤技术作为包处置技术的核心,通常仅根据包头信息进行包过滤,无法对网络包内容摘要进行有效分析,采用逐包检查策略,影响网络传输效率;同时现有网络包处置方法难以对网络包进行有效缓存、qos服务、内容验证、加密、负载均衡等计算模式的实现。


技术实现要素:

3.本发明的目的在于针对现有网络包处置技术的不足,设计一种基于名字提取的网络包处置方法及系统,增加包处置功能的多样性,提高网络安全可靠性、网络性能高效性、控制操作灵活性,从根本上解决包处置技术中网络包信息无法表达、包过滤效率低下、规则设定复杂等问题。
4.本发明所述的基于一种名字提取的网络包处置方法及系统,包括基于名字提取的网络包处置方法和基于名字提取的网络包处置系统两部分。
5.第一方面,本发明实施例提供一种基于名字提取的网络包处置方法,包括:
6.名字提取步骤:根据用户定义的有序名字形式及提取的网络包特征信息,构造网络包名字,并执行名字操作步骤;
7.名字操作步骤:将网络包名字与用户设定的匹配模式或计算模式进行运算,并得到对应的包处置动作;
8.还包括:
9.包重组步骤:对进入网络的数据流进行分组,并执行包处理步骤;
10.包处理步骤:在规则表中查询是否有网络包所属组别及组别对应的包处置动作,若查到,则执行该包处置动作,否则在规则表中记录下未查询到包处置动作的网络包对应的组别,并执行名字提取步骤。
11.第二方面,本发明实施例提供一种基于名字提取的网络包处置系统,包括:
12.名字提取模块、名字操作模块、包成组模块、包处理模块;
13.名字提取模块:对网络包构造一个名字,所述名字是用户定义的特征信息的有序组合;
14.其中特征信息包括:网络包的特征信息及包含应用层协议内容类型、传输层统计信息等特征信息;
15.名字操作模块:将名字与规则表中用户设置的匹配模式、计算模式进行运算,同时维护规则表中设置规则与包处置动作集的对应关系;
16.其中规则表的匹配模式包括但不限于黑名单列表、白名单列表、名字关键字等;规则表的计算模式包括但不限于缓存替换、qos服务、负载均衡、网络包加密、网络包内容验证等;包处置动作集包括缓存、转发、丢弃等;
17.还包括:
18.包成组模块:获得数据流,重组数据流中网络包,并为网络包做组别标记;
19.网络包成组方法包括通过五元组或应用层协议对网络包分组;
20.包处理模块:包含组别与包处置动作关系表,关系表中记录并更新相应组别的包处置动作;接收包成组模块输出的网络包组别,并在关系表中查询组别对应的包处置动作,如果查询到,则执行相应的动作,否则在关系表中记录包对应的组别,并将带有组别标记的网络包输送至名字提取模块。
21.第三方面,本发明实施例提供了一种终端,包括:
22.一个或多个处理器;
23.存储器,用于存储一个或多个程序;
24.当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明任一实施例所述的一种基于名字提取的网络包处置方法;
25.第四方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任一实施例所述的一种基于名字提取的网络包处置方法。
26.有益效果
27.本发明实施例提供的一种基于名字提取的网络包处置方法及系统。其中该方法包括:对网络数据流分组;在规则表中查询是否有网络包所属组别及组别对应的包处置动作,若查到,执行包处置动作,否则在规则表中记录下未查询到网络包处置动作的网络包对应的组别;并对带有组别标记的网络包根据用户定义的有序名字形式及提取的网络包特征信息,构造网络包名字;网络包名字与用户设定的匹配模式或计算模式进行运算,得到包处置动作,并在规则表中记录,并执行组别对应的网络包处置动作。至此,完成基于名字提取的网络包处置方法。
28.该方法及系统具有如下有益效果:
29.(1)通过名字提取模块,完成网络包及所在分组到名字的映射,实现对网络包的摘要表达,采用名字处理而非网络包处理使得对网络包的处置形式更加灵活多样、对匹配模式及计算模式的设置更加简洁清晰;
30.(2)通过名字操作模块,可设置多种类型的网络包匹配模式及计算模式,能够满足不同用户多种类型信息请求及对网络包处理的要求,使得对网络包的控制及操作更加灵活、多样;
31.(3)通过包成组及包处理模块,对数据流中网络包分组、管理网络包组别与包处置方式间的映射关系,减少了逐包及逐包头信息的检查次数、网络带宽资源的消耗,提高了对网络包处置的效率及网络的安全可靠性,增加了网络资源的利用率。
附图说明
32.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做简单介绍,显而易见地,下面描述的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
33.图1是本发明实施例中基于名字提取的网络包处置系统;
34.图2是本发明实施例中网络包处置系统处理网络包的流程;
35.图3是本发明实施例中网络包处置系统网络包提取、规则配置及包处置流程图;
36.图4是本发明实施例中网络包处置系统的包成组模块处理示意图;
37.图5是本发明实施例中网络包处置系统的名字定义形式示意图。
具体实施方式
38.为使本发明的目的、技术方案和优点更加清楚,以下将参照本发明实施例中的附图,通过实施方式清楚、完整地描述本发明的技术方案,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。下述各实施例中,每个实施例中同时提供了可选特征和示例,实施例中记载的各个特征可进行组合,形成多个可选方案,不应将每个编号的实施例仅视为一个技术方案。
39.下面结合附图和实施例对本发明做进一步说明和详细描述。
40.实施例一
41.图1是本发明实施例一提供的一种基于名字提取的网络包处置系统示意图,系统包括:包成组模块、名字提取模块、名字操作模块、包处理模块。
42.其中包成组模块的功能是获取数据流,根据包头信息重组数据流中网络包;
43.其中包处理模块的功能是根据名字操作模块结果更新包处置动作,记录包成组模块对网络包的组别标记,维护网络包对应的组别与经过名字操作模块得到的包处置动作的关系;
44.其中名字提取模块的功能是根据用户定义的有序名字形式及提取的网络包特征信息,构造网络包名字。其中定义的名字能够准确地表达网络包内容,有序地表达网络包特征信息。名字可作为网络包及其组别在全系统内的唯一标识符,支持同一或多个对象一次或多次使用。例如网络包packeti的特征值为“λ1,λ2,λ
3”,构成的名字表达为“groupj:n1/n2/n
3”,其中特征值λm对应名字片段ni。至此,形成“packet
i”到“λ1,λ2,λ
3”到“groupj:n1/n2/n
3”的映射关系。
45.其中名字操作模块的功能是将网络包名字与用户设置的匹配模式或计算模式进行运算,得到对应的包处置动作。其中所述设定的匹配模式包括,但不限于黑名单列表、白名单列表、名字关键字匹配列表等,计算模式包括,但不限于缓存替换、qos服务、负载均衡、内容验证、加密等。
46.参见图1,网络包处置系统中各模块的连接关系是:
47.名字提取模块主要根据网络包特征信息及用户定义的有序网络包名字形式,构造网络包名字;
48.名字操作模块接收名字提取模块的输入,主要维护规则表及规则的匹配与计算;
49.包成组模块能加速网络包处置的过程,提高包处理效率。例如,网络包首先经过包成组模块将网络包分组,通过分组的形式,对同一组别的网络包执行相同的包处置动作,减少数据流中对网络包操作、处置次数;
50.包处理模块接收包成组模块与名字操作模块的输入。具体地,该模块维护来自包成组模块的组别标记与经过名字操作模块得到的网络包处置动作的关系表。
51.实施例二
52.本实施例进一步阐述网络包处置方法的大致流程。本实施例与上述实施例具有相同的发明构思,与上述实施例相同或相应的术语解释,本实施例不再赘述。
53.图2是本发明实施例二提供的一种基于名字提取的网络包处置方法流程图。具体的处理步骤如下:
54.首先获取数据流中的网络包,分组并标记组号;
55.之后查询规则表,查看网络包对应的组别是否有对应的包处置动作,若有,执行相应的处理动作,完成对网络包处理,否则在包处理模块中记录包对应的组别;
56.对带有组别标记的网络包,根据用户定义的有序网络包名字形式及提取的网络包特征信息,构造网络包名字;
57.将网络包名字与用户设置的匹配模式或计算模式进行运算,得到对应的包处置动作;
58.最后执行对应的包处置动作;
59.至此,完成对网络包的处理。
60.实施例三
61.本实施例在上述实施例一的基础上,进一步地阐述了本发明基于名字提取的网络包处置系统对单个网络包进行包过滤的情况。本实施例与上述实施例具有相同的发明构思,与上述实施例相同或相应的术语解释,本实施例不再赘述。
62.该网络包处置系统处理流程,参见图3,以p0为例:
63.步骤1:首先网络包在名字提取模块中,参见图5的名字定义形式及网络包p0的特征构造网络包语义表达,形成网络包的名字,在本实例中,p0的特征包含有基于http协议的内容类型及host字段,构造的网络包名字表达为“group0:n1/n2/n
3”的形式;
64.步骤2:将网络包名字在名字操作模块中与规则表中匹配模式或计算模式进行运算,在本实例中用户设定的规则有r1或r2或r3,指的是具体的匹配模式或计算模式;
65.步骤3:得到对应的包处置动作。
66.实施例四
67.本实施例在上述实施例一的基础上,进一步地阐述了本发明基于名字提取的网络包处置系统对首次进行网络的数据流及数据流中仅有单个网络包的包过滤情况。本实施例与上述实施例具有相同的发明构思,与上述实施例相同或相应的术语解释,本实施例不再赘述。
68.该网络包过滤系统处理流程为:
69.步骤1:接收网络包p0,p1,p2,p3,

,pi,在包成组模块,参见图4的包成组方式将网络包分组;
70.步骤2:将接收的网络包成组标记,在本实例中p0对应的成组标记为g0,p1对应的成组标记为g2,p2对应的成组标记为g3,p3对应的成组标记为g1,pi对应的成组标记为gj;
71.步骤3:根据各个包成组标记在包处理模块中查询包处理的结果,在本实例中,p0未在包处理模块中查询到其组别g0对应的处理结果,则进入下一阶段;
72.步骤4:参见图3,以p0为例,作为下一阶段网络包处置系统中的名字提取,名字操作的流程:
73.步骤4-1:首先网络包在名字提取模块中,参见图5所示的名字定义形式及网络包p0的特征构造网络包语义表达,形成网络包的名字,在本实例中,p0的特征包含有基于http协议的内容类型及host字段,构造的网络包名字表达为“group0:n1/n2/n
3”的形式;
74.步骤4-2:将网络包名字在名字操作模块中与规则表中设定的匹配模式进行运算,并执行对应的包过滤动作。在本实例中用户设定的过滤规则为r1;
75.步骤4-3:将规则对应的包处置动作传入包处理模块并做记录,在本实例中,a1作为网络包g1的包处理结果,具体是指将所有标记为g1组别的网络包丢弃。
76.实施例五
77.本实施例在上述实施例一的基础上,进一步地阐述了本发明基于名字提取的网络包处置系统对数据流中首次进行网络的数据流及数据流中仅为单个网络包的包缓存情况。本实施例与上述实施例具有相同的发明构思,与上述实施例相同或相应的术语解释,本实施例不再赘述。
78.判断该网络包是否被缓存的流程为:
79.步骤1:接收网络包p0,p1,p2,p3,

,pi,在包成组模块,参见图4的包成组方式将网络包分组;
80.步骤2:将接收的网络包成组标记,在本实例中p0对应的成组标记为g0,p1对应的成组标记为g2,p2对应的成组标记为g3,p3对应的成组标记为g1,pi对应的成组标记为gj;
81.步骤3:根据各个包成组标记在包处理模块中查询包处理的结果,在本实例中,p1未在包处理模块中查询到其组别g2对应的处理结果,则进入名字提取模块;
82.步骤4:首先网络包在名字提取模块中,参见图5的名字定义形式及网络包p1的特征构造网络包语义表达,形成网络包的名字,在本实例中,网络包名字表达为特定的url形式;
83.步骤5:将网络包名字在名字操作模块中与规则表中设定的缓存计算模式进行运算,并得到对应的包处置动作,具体的包处置动作包含缓存或转发,在本实例中,设定的计算模式规则表达式为r2,对应的处置动作a2代表缓存网络包及网络包对应的数据流;
84.步骤6:将对应的包处置动作a2传入包处理模块并做记录,在本实例中,a2对应的处置动作为缓存。具体是指将所有标记为g2组别的网络包缓存。
85.实施例六
86.本实施例在上述实施例三、四、五的基础上,进一步地阐述了本发明基于名字提取的网络包处置系统对非首次进入网络的网络包进行包处置的情况。本实施例与上述实施例具有相同的发明构思,与上述实施例相同或相应的术语解释,本实施例不再赘述。
87.处置流程为:
88.步骤1:接收网络包p0,p1,p2,p3,

,pi,在包成组模块,参见图4的包成组方式将网
络包分组;
89.步骤2:将接收的网络包成组标记,在本实例中p0对应的成组标记为g0,p1对应的成组标记为g2,p2对应的成组标记为g3,p3对应的成组标记为g1,pi对应的成组标记为gj;
90.步骤3:根据各个包成组标记在包处理模块中查询包处置的动作,在本实例中,p3在包处理模块中查询到其组别g1对应的包处置动作,则转向步骤4;
91.步骤4:确认p3所属g1的包处置动作,在本实例中,g3对应的包处置动作包含,但不限于转发、丢弃、缓存。
92.实施例七
93.本实施例提供了一种终端,可用于对网络包的处置。
94.该终端包括:
95.一个或多个处理器;
96.存储器,用于存储一个或多个程序;
97.当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如上述实施例提出的网络包处置方法。
98.存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
99.实施例八
100.本实施例提供一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述实施例提出的网络包处置方法。
101.本实施例提出的存储介质与上述实施例提出的网络包处置方法属于同一发明构思,未在本实施例中详尽描述的技术细节可参见上述实施例,并且本实施例与上述实施例具有相同的有益效果。
102.以上所述为本发明的较佳实施例,本发明不应该局限于该实施例和附图所公开的内容。凡是不脱离本发明所公开完成的等效或修改,都落入本发明保护的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1