CN112953841B - 报文分流方法及系统 - Google Patents
报文分流方法及系统 Download PDFInfo
- Publication number
- CN112953841B CN112953841B CN202110194498.XA CN202110194498A CN112953841B CN 112953841 B CN112953841 B CN 112953841B CN 202110194498 A CN202110194498 A CN 202110194498A CN 112953841 B CN112953841 B CN 112953841B
- Authority
- CN
- China
- Prior art keywords
- shunted
- message
- packet
- flow table
- hit
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- 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/18—Protocol analysers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开涉及一种报文分流方法及系统,其中,报文分流方法包括:基于流表,确定待分流报文是否命中流表,并为未命中流表的待分流报文重新构建流表项和进行初始化;基于三元组表,确定所重新构建的流表项的服务器三元组是否命中三元组表,并为未命中三元组表的待分流报文重新构建三元组表项和进行初始化;以及识别被重新构建三元组表项的待分流报文的应用层协议,并在未识别出应用层协议的情况下,对所述待分流报文按五元组策略进行过滤和分流,并更新其对应的流表项和三元组表项相关信息。通过本发明的技术方案,能够克服常规网络应用协议识别方案在分流器上使用时遇到的性能瓶颈的问题。
Description
技术领域
本发明涉及通信技术领域,具体而言,涉及一种报文分流方法、一种报文分流系统、一种网络设备及计算机可读存储介质。
背景技术
随着网络技术的发展,大带宽已成趋势,而随着网络流量的日益增多以及网络流量成分的日益多样,对于流量可视化系统来说,非价值流量也在增多(尤其是高清视频、加密流量等),此类流量如果大量输出到后端业务服务器上,会导致后端业务服务器大量浪费,导致成本、功耗不必要地增加。
而现有的分流器主要是在三层、四层做规则,对于网络中的高清视频、加密等非价值流量的识别和丢弃能力有限,常规应用协议识别流程如图1所示,基于三层、四层做协议推导后,再基于DPI(Packet Inspection,深度包检测)做协议推导来实现协议识别,整个过程多依赖DPI技术,DPI技术是一种基于应用层的流量检测和控制技术,其在分析包头的基础上,增加了对应用层的分析,需要逐包进行拆包操作,并与后台数据库进行匹配对比,处理速度相对较低,在实际使用时往往成为性能瓶颈,不适用于接入流量很大的分流器使用。
在所述背景技术部分公开的上述信息仅用于加强对本公开的背景的理解,因此它可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本发明旨在解决现有常规网络应用协议识别方案在分流器上使用时遇到的性能瓶颈的问题。
为了解决上述技术问题,本发明的第一方面提出了一种报文分流方法,包括:基于流表,确定待分流报文是否命中流表,并为未命中流表的待分流报文重新构建流表项和进行初始化;基于三元组表,确定所重新构建的流表项的服务器三元组是否命中三元组表,并为未命中三元组表的待分流报文重新构建三元组表项和进行初始化;以及识别被重新构建三元组表项的待分流报文的应用层协议,并在未识别出应用层协议的情况下,对所述待分流报文按五元组策略进行过滤和分流,并更新其对应的流表项和三元组表项相关信息。
在上述技术方案中,优选地,还包括:基于流表,确定命中流表的包含未知应用的待分流报文的包序列数是否小于所命中流表项的第一预定报文计数,如果不是,则对所述待分流报文按五元组策略进行过滤和分流,如果是则识别所述待分流报文的应用层协议,并在未识别出应用层协议的情况下,对所述待分流报文按五元组策略进行过滤和分流,并增加其所命中流表项报文计数。
在上述任一项技术方案中,优选地,还包括:在识别命中三元组表的待分流报文的应用或命中流表的待分流报文的应用为已知应用时,对该待分流报文进行应用策略精细化过滤和分流。
在上述任一项技术方案中,优选地,还包括:基于流表,确定命中三元组表的待分流报文的包序列数是否小于所命中三元组表项的第二预定报文计数,如果不是,则对所述待分流报文按五元组策略进行过滤和分流,如果是,则识别所述待分流报文的应用层协议,并在未识别出应用层协议的情况下,对所述待分流报文按五元组策略进行过滤和分流,并增加其所命中三元组表项的报文计数。
在上述任一项技术方案中,优选地,还包括:在识别出应用层协议时,对该待分流报文进行应用策略精细化过滤和分流并更新对应流表项和三元组表项的应用信息。
在上述任一项技术方案中,优选地,还包括:定时遍历所述三元组表,并将预定时间内命中计数无增加的三元组表项删除。
为了解决上述技术问题,本发明的第二方面提出了一种报文分流系统,包括:流表查询组件,基于流表,确定待分流报文是否命中流表;流表构建组件,为未命中流表的待分流报文重新构建流表项和进行初始化;三元组表查询组件,基于三元组表,确定所重新构建的流表项的服务器三元组是否命中三元组表;三元组表构件组件,为未命中三元组表的待分流报文重新构建三元组表项和进行初始化;应用层协议识别组件,识别被重新构建三元组表项的待分流报文的应用层协议;以及分流决策组件,在未识别出应用层协议的情况下,对所述待分流报文按五元组策略进行过滤和分流,并更新其对应的流表项和三元组表项相关信息。
在上述技术方案中,优选地,还包括:第一包序列数判断组件,基于流表,确定命中流表的包含未知应用的待分流报文的包序列数是否小于所命中流表项的第一预定报文计数,以便分流决策组件在包序列数大于或等于所命中流表项的第一预定报文计数时对所述待分流报文按五元组策略进行过滤和分流,以及在小于所命中流表项的第一预定报文计数且应用层协议识别组件未识别所述待分流报文的应用层协议时,对所述待分流报文按五元组策略进行过滤和分流,并增加其所命中流表项报文计数。
在上述任一项技术方案中,优选地,所述分流决策组件在应用层协议识别组件识别命中三元组表的待分流报文的应用或命中流表的待分流报文的应用为已知应用时,对该待分流报文进行应用策略精细化过滤和分流。
在上述任一项技术方案中,优选地,还包括:第二包序列数判断组件,基于流表,确定命中三元组表的待分流报文的包序列数是否小于所命中三元组表项的第二预定报文计数,以便分流决策组件在包序列数大于或等于所命中三元组表项的第二预定报文计数时对所述待分流报文按五元组策略进行过滤和分流,以及在包序列数小于所命中三元组表项的第二预定报文计数且应用层协议识别组件未识别所述待分流报文的应用层协议时,对所述待分流报文按五元组策略进行过滤和分流,并增加其所命中三元组表项的报文计数。
在上述任一项技术方案中,优选地,分流决策组件在应用层协议识别组件识别出应用层协议时,对该待分流报文进行应用策略精细化过滤和分流并更新对应流表项和三元组表项的应用信息。
在上述任一项技术方案中,优选地,还包括:三元组表老化组件,用于定时遍历所述三元组表,并将在预定时间段内命中计数无增加的三元组表项删除。
为了解决上述技术问题,本发明第三方面提出了一种网络设备,包括:处理器以及存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行如上述技术方案中任一项所述的方法。
为了解决上述技术问题,本发明第四方面提出了一种计算机可读存储介质,其中,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被处理器执行时,实现如上述技术方案中任一项所述的方法。
通过上述技术方案,对于待分流报文,经过流表命中分析、流表项的报文计数命中分析、三元组表命中分析、三元组表项的报文计数命中分析,若经过上述命中分析无法识别出应用层协议则按照五元组策略对待分流报文进行过滤和分流,若经过上述命中分析识别出应用层协议或应用已知,则对待分流报文按照应用策略精细化过滤和分流,整个分流过程引入了三元组表的分析,可大大减少需要经过DPI处理的网络流量,特别是对于P2P类的量大且大部分加密的非价值流量,基于P2P原理的应用会产生三元组,引入三元组表来过滤此类非价值流量,并通过DFI(Deep/Dynamic Flow Inspection,深度/动态流检测)的方法进行快速识别后过滤,从而在不影响应用协议识别准确性的情况下,能大大减少需要经过DPI处理的网络流量,使得应用协议识别技术能有效的用在分流器上,实现大规模流量做精细化过滤和分流,提升整个系统的效率、降低成本和能耗,此外由于基于P2P原理的应用产生的三元组量大且多变,为此还增设服务器端三元组表的老化机制,以加快无价值的三元组的老化,节省三元组表项资源。
附图说明
为了使本发明所解决的技术问题、采用的技术手段及取得的技术效果更加清楚,下面将参照附图详细描述本发明的具体实施例。但需声明的是,下面描述的附图仅仅是本发明本发明示例性实施例的附图,对于本领域的技术人员来讲,在不付出创造性劳动的前提下,可以根据这些附图获得其他实施例的附图。
图1示出了常规应用协议识别流程;
图2示出了根据本发明的一个实施例的报文分流方法的示意流程图;
图3A-3C示出了根据本发明的另一个实施例的报文分流方法的示意流程图;
图4示出了根据本发明的实施例的报文分流系统的示意框图;
图5示出了根据本发明的实施例的网络设备的示意框图;
图6示出了根据本发明的实施例的计算机可读存储介质的示意框图。
具体实施方式
现在将参考附图更全面地描述本发明的示例性实施例。然而,示例性实施例能够以多种形式实施,且不应被理解为本发明仅限于在此阐述的实施例。相反,提供这些示例性实施例能够使得本发明更加全面和完整,更加便于将发明构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的元件、组件或部分,因而将省略对它们的重复描述。
在符合本发明的技术构思的前提下,在某个特定的实施例中描述的特征、结构、特性或其他细节不排除可以以合适的方式结合在一个或更多其他的实施例中。
在对于具体实施例的描述中,本发明描述的特征、结构、特性或其他细节是为了使本领域的技术人员对实施例进行充分理解。但是,并不排除本领域技术人员可以实践本发明的技术方案而没有特定特征、结构、特性或其他细节的一个或更多。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
各附图中相同的附图标记表示相同或类似的元件、组件或部分,因而下文中可能省略了对相同或类似的元件、组件或部分的重复描述。还应理解,虽然本文中可能使用第一、第二、第三等表示编号的定语来描述各种器件、元件、组件或部分,但是这些器件、元件、组件或部分不应受这些定语的限制。也就是说,这些定语仅是用来将一者与另一者区分。例如,第一器件亦可称为第二器件而不偏离本发明实质的技术方案。此外,术语“和/或”或者“及/或”包括相关联的列出项目中的任一个及一或多者的所有组合。
文本中的三元组表项和三元组表:三元组表项是一条以四层协议号、服务器端IP和端口号为key的信息集合,三元组表是指一张包含多条三元组表项的全局查找表;
流表项和流表:流表项是一条以源IP、目的IP、源端口号、目的端口号、四层协议号为key的信息集合,流表是指一张包含多条流表项的全局查找表;
应用协议识别:是指七层的应用协议识别,不只是用三层IP和四层端口号来识别,通常用到DPI和DFI等技术来精准灵活的识别丰富多变的网络应用协议;
分流器:分流器是指部署在网络可视化系统前端的一种设备,旁路部署,接入从运营商分光而来的流量(通常接入流量包含多条链路,带宽较大,在几十G到十T之间),在分流器上按IP、端口号等做过滤、复制及分流输出等功能,分流器后端连接多种业务软件的服务器。
考虑到大量非价值流量的存在,特别是P2P类量大且大部分加密的流量,若采用图1中常规应用协议识别方法,则多依赖DPI技术会导致处理速度大大降低,进而影响分流器性能,为克服分流器的性能瓶颈,经过研究发现基于P2P原理的应用会产生三元组,引入三元组表来过滤此类非价值流量可有效克服分流器的性能瓶颈,具体方案,如图2所示,包括以下步骤:
步骤S202,基于流表,确定待分流报文是否命中流表,并为未命中流表的待分流报文重新构建流表项和进行初始化。
步骤S204,基于三元组表,确定所重新构建的流表项的服务器三元组是否命中三元组表,并为未命中三元组表的待分流报文重新构建三元组表项和进行初始化。
步骤S206,识别被重新构建三元组表项的待分流报文的应用层协议,并在未识别出应用层协议的情况下,对待分流报文按五元组策略进行过滤和分流,并更新其对应的流表项和三元组表项相关信息。
进一步地,还包括:基于流表,确定命中流表的包含未知应用的待分流报文的包序列数是否小于所命中流表项的第一预定报文计数,如果不是,则对待分流报文按五元组策略进行过滤和分流,如果是则识别待分流报文的应用层协议,并在未识别出应用层协议的情况下,对待分流报文按五元组策略进行过滤和分流,并增加其所命中流表项报文计数。
进一步地,还包括:在识别命中三元组表的待分流报文的应用或命中流表的待分流报文的应用为已知应用时,对该待分流报文进行应用策略精细化过滤和分流。
进一步地,还包括:基于流表,确定命中三元组表的待分流报文的包序列数是否小于所命中三元组表项的第二预定报文计数,如果不是,则对待分流报文按五元组策略进行过滤和分流,如果是,则识别待分流报文的应用层协议,并在未识别出应用层协议的情况下,对待分流报文按五元组策略进行过滤和分流,并增加其所命中三元组表项的报文计数。
进一步地,还包括:在识别出应用层协议时,对该待分流报文进行应用策略精细化过滤和分流并更新对应流表项和三元组表项的应用信息。
上述实施例中,待分流报文经过流表命中分析、流表项的报文计数命中分析、三元组表命中分析、三元组表项的报文计数命中分析,若经过上述命中分析无法识别出应用层协议则按照五元组策略对待分流报文进行过滤和分流,若经过上述命中分析识别出应用层协议或应用已知,则对待分流报文按照应用策略精细化过滤和分流,整个分流过程引入了三元组表的分析,可大大减少需要经过DPI处理的网络流量,特别是对于P2P类的量大且大部分加密的非价值流量,基于P2P原理的应用会产生三元组,引入三元组表来过滤此类非价值流量,并通过DFI的方法进行快速识别后过滤,从而在不影响应用协议识别准确性的情况下,能大大减少需要经过DPI处理的网络流量,使得应用协议识别技术能有效的用在分流器上,实现大规模流量做精细化过滤和分流,提升整个系统的效率、降低成本和能耗。
进一步地,还包括:定时遍历三元组表,并将预定时间内命中计数无增加的三元组表项删除。
考虑到基于P2P原理的应用产生的三元组量大且多变,通过增设服务器端三元组表的老化机制,以加快无价值的三元组的老化,从而节省三元组表项资源。
如图3A所示,根据本发明的第二个实施例的报文分流方法,包括以下步骤:
1a.报文进入分流器首先查找流表,如果未命中流表,则新增流表项,并初始化表项信息,转到2a;如果命中流表,则执行流程B;
2a.流表项中服务器三元组是否命中三元组表,如果未命中三元组表,则新建三元组表项,并初始化表项信息,转到3a,如果命中三元组表,则执行流程C;
3a.进DPI应用协议识别流程,如果未识别出应用协议,则按五元组策略过滤和分流,并更新流表项和三元组表项相关信息,如果识别出应用协议,则按APP策略精细化过滤和分流,并更新APP信息到流表项和三元组表项中。
如图3B所示,流程B具体包括以下步骤:
1b.流表中的APP是否已知,如果已知,则按APP策略精细化过滤和分流,如果未知,转到2b;
2b.判断报文是否为流表项的前N包(N可配置),如果不是,则按五元组策略过滤和分流,如果是,转到3b;
3b.进DPI应用协议识别流程,如果未识别出应用协议,则按五元组策略过滤和分流,并更新流表项和三元组表项相关信息,如果识别出应用协议,则按APP策略精细化过滤和分流,并更新APP信息到流表项和三元组表项中。
如图3C所示,流程C具体包括以下步骤:
1c.增加三元组表项中的流表命中计数,并看三元组表项中APP是否已知,如果已知,则按APP策略精细化过滤和分流,并更新流表项中APP信息,如果未知,转到2c;
2c.判断报文是否为三元组的前M条(M可配置),如果否,则按五元组过滤和分流,如果是,则转到3c;
3c.进DPI应用协议识别流程,如果未识别出应用协议,则按五元组策略过滤和分流,并更新流表项和三元组表项相关信息,如果识别出应用协议,则按APP策略精细化过滤和分流,并更新APP信息到流表项和三元组表项中。
整个分流过程,若报文可以知道是哪种应用协议,则按应用协议精细化过滤和分流,如果还不知道是哪种应用协议,则按五元组策略过滤和分流。
下面描述本发明的装置实施例,该装置可以用于执行本发明的方法实施例。对于本发明装置实施例中描述的细节,应视为对于上述方法实施例的补充;对于在本发明装置实施例中未披露的细节,可以参照上述方法实施例来实现。
如图4所示,根据本发明的实施例的报文分流系统400,包括:流表查询组件402、流表构建组件404、三元组表查询组件406、三元组表构件组件408、应用层协议识别组件410及分流决策组件412。
其中,流表查询组件402基于流表,确定待分流报文是否命中流表;流表构建组件404为未命中流表的待分流报文重新构建流表项和进行初始化;三元组表查询组件406基于三元组表,确定所重新构建的流表项的服务器三元组是否命中三元组表;三元组表构件组件408为未命中三元组表的待分流报文重新构建三元组表项和进行初始化;应用层协议识别组件410识别被重新构建三元组表项的待分流报文的应用层协议;以及分流决策组件412在未识别出应用层协议的情况下,对待分流报文按五元组策略进行过滤和分流,并更新其对应的流表项和三元组表项相关信息。
进一步地,报文分流系统400还包括:第一包序列数判断组件414,基于流表,确定命中流表的包含未知应用的待分流报文的包序列数是否小于所命中流表项的第一预定报文计数,以便分流决策组件在包序列数大于或等于所命中流表项的第一预定报文计数时对待分流报文按五元组策略进行过滤和分流,以及在小于所命中流表项的第一预定报文计数且应用层协议识别组件未识别待分流报文的应用层协议时,对待分流报文按五元组策略进行过滤和分流,并增加其所命中流表项报文计数。
进一步地,分流决策组件412在应用层协议识别组件识别命中三元组表的待分流报文的应用或命中流表的待分流报文的应用为已知应用时,对该待分流报文进行应用策略精细化过滤和分流。
进一步地,报文分流系统400还包括:第二包序列数判断组件416,基于流表,确定命中三元组表的待分流报文的包序列数是否小于所命中三元组表项的第二预定报文计数,以便分流决策组件在包序列数大于或等于所命中三元组表项的第二预定报文计数时对待分流报文按五元组策略进行过滤和分流,以及在包序列数小于所命中三元组表项的第二预定报文计数且应用层协议识别组件未识别待分流报文的应用层协议时,对待分流报文按五元组策略进行过滤和分流,并增加其所命中三元组表项的报文计数。
进一步地,分流决策组件412在应用层协议识别组件识别出应用层协议时,对该待分流报文进行应用策略精细化过滤和分流并更新对应流表项和三元组表项的应用信息。
进一步地,报文分流系统400还包括:三元组表老化组件418,用于定时遍历三元组表,并将在预定时间段内命中计数无增加的三元组表项删除。
本领域技术人员可以理解,上述装置实施例中的各模块可以按照描述分布于装置中,也可以进行相应变化,分布于不同于上述实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
下面描述本发明的网络设备实施例,该网络设备可以视为对于上述本发明的方法和装置实施例的具体实体实施方式。对于本发明网络设备实施例中描述的细节,应视为对于上述方法或装置实施例的补充;对于在本发明网络设备实施例中未披露的细节,可以参照上述方法或装置实施例来实现。
图5是根据本发明的一种网络设备的示例性实施例的结构框图。下面参照图5来描述根据本发明该实施例的网络设备。图5显示的网络设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图5所示,网络设备的组件可以包括但不限于:一个处理单元510、一个存储单元520、连接不同系统组件(包括存储单元520和处理单元510)的总线530等。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元510执行,使得所述处理单元510执行本说明书上述电子处方流转处理方法部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元510可以执行如图2和图3所示的步骤。
所述存储单元520可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)和/或高速缓存存储单元,还可以进一步包括只读存储单元(ROM)。
所述存储单元520还可以包括具有一组(至少一个)程序模块的程序/实用工具,这样的程序模块包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线530可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
图6是本发明的一个计算机可读存储介质的示意图。如图6所示,所述计算机程序可以存储于一个或多个计算机可读介质上。计算机可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
综上所述,本发明可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)等通用数据处理设备来实现根据本发明实施例中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,应理解的是,本发明不与任何特定计算机、虚拟装置或者电子设备固有相关,各种通用装置也可以实现本发明。以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种报文分流方法,包括:
基于流表,确定待分流报文是否命中流表,并为未命中流表的待分流报文重新构建流表项和进行初始化;
基于流表,确定命中流表的包含未知应用的待分流报文的包序列数是否小于所命中流表项的第一预定报文计数,如果不是,则对所述待分流报文按五元组策略进行过滤和分流,如果是则识别所述待分流报文的应用层协议,并在未识别出应用层协议的情况下,对所述待分流报文按五元组策略进行过滤和分流,并增加其所命中流表项报文计数;
基于三元组表,确定所重新构建的流表项的服务器三元组是否命中三元组表;
基于三元组表,确定命中三元组表的待分流报文的包序列数是否小于所命中三元组表项的第二预定报文计数,如果不是,则对所述待分流报文按五元组策略进行过滤和分流,如果是,则识别所述待分流报文的应用层协议,并在未识别出应用层协议的情况下,对所述待分流报文按五元组策略进行过滤和分流,并增加其所命中三元组表项的报文计数;
为未命中三元组表的待分流报文重新构建三元组表项和进行初始化;
识别被重新构建三元组表项的待分流报文的应用层协议,并在未识别出应用层协议的情况下,对所述待分流报文按五元组策略进行过滤和分流,并更新其对应的流表项和三元组表项相关信息;以及
在识别命中三元组表的待分流报文的应用为已知应用时或命中流表的待分流报文的应用为已知应用时,对该待分流报文进行应用策略精细化过滤和分流。
2.根据权利要求1所述的报文分流方法,其还包括:
在识别出应用层协议时,对该待分流报文进行应用策略精细化过滤和分流并更新对应流表项和三元组表项的应用信息。
3.根据权利要求1所述的报文分流方法,还包括:
定时遍历所述三元组表,并将预定时间内命中计数无增加的三元组表项删除。
4.一种报文分流系统,包括:
流表查询组件,基于流表,确定待分流报文是否命中流表;
第一包序列数判断组件,基于流表,确定命中流表的包含未知应用的待分流报文的包序列数是否小于所命中流表项的第一预定报文计数,以便分流决策组件在包序列数大于或等于所命中流表项的第一预定报文计数时对所述待分流报文按五元组策略进行过滤和分流,以及在小于所命中流表项的第一预定报文计数且应用层协议识别组件未识别所述待分流报文的应用层协议时,对所述待分流报文按五元组策略进行过滤和分流,并增加其所命中流表项报文计数;
流表构建组件,为未命中流表的待分流报文重新构建流表项和进行初始化;
三元组表查询组件,基于三元组表,确定所重新构建的流表项的服务器三元组是否命中三元组表;
第二包序列数判断组件,基于流表,确定命中三元组表的待分流报文的包序列数是否小于所命中三元组表项的第二预定报文计数,以便分流决策组件在包序列数大于或等于所命中三元组表项的第二预定报文计数时对所述待分流报文按五元组策略进行过滤和分流,以及在包序列数小于所命中三元组表项的第二预定报文计数且应用层协议识别组件未识别所述待分流报文的应用层协议时,对所述待分流报文按五元组策略进行过滤和分流,并增加其所命中三元组表项的报文计数;
三元组表构件组件,为未命中三元组表的待分流报文重新构建三元组表项和进行初始化;
应用层协议识别组件,识别被重新构建三元组表项的待分流报文的应用层协议;以及
分流决策组件,在未识别出应用层协议的情况下,对所述待分流报文按五元组策略进行过滤和分流,并更新其对应的流表项和三元组表项相关信息以及在应用层协议识别组件识别命中三元组表的待分流报文的应用为已知应用时或命中流表的待分流报文的应用为已知应用时,对该待分流报文进行应用策略精细化过滤和分流。
5.根据权利要求4所述的报文分流系统,其中分流决策组件在应用层协议识别组件识别出应用层协议时,对该待分流报文进行应用策略精细化过滤和分流并更新对应流表项和三元组表项的应用信息。
6.根据权利要求4所述的报文分流系统,还包括:
三元组表老化组件,用于定时遍历所述三元组表,并将在预定时间段内命中计数无增加的三元组表项删除。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110194498.XA CN112953841B (zh) | 2021-02-20 | 2021-02-20 | 报文分流方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110194498.XA CN112953841B (zh) | 2021-02-20 | 2021-02-20 | 报文分流方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112953841A CN112953841A (zh) | 2021-06-11 |
CN112953841B true CN112953841B (zh) | 2022-05-27 |
Family
ID=76244966
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110194498.XA Active CN112953841B (zh) | 2021-02-20 | 2021-02-20 | 报文分流方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112953841B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113923270B (zh) * | 2021-08-30 | 2024-05-17 | 北京百卓网络技术有限公司 | 一种报文的处理方法、装置、设备及可读存储介质 |
CN113839882B (zh) * | 2021-09-26 | 2023-09-26 | 杭州迪普信息技术有限公司 | 一种报文流分流方法及装置 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101656677A (zh) * | 2009-09-18 | 2010-02-24 | 杭州迪普科技有限公司 | 一种报文分流处理方法及装置 |
CN103051725A (zh) * | 2012-12-31 | 2013-04-17 | 华为技术有限公司 | 应用识别方法、数据挖掘方法、装置及系统 |
CN103563328A (zh) * | 2011-12-21 | 2014-02-05 | 华为技术有限公司 | 数据分流方法和装置 |
CN104753857A (zh) * | 2013-12-26 | 2015-07-01 | 华为技术有限公司 | 网络流量控制设备及其安全策略配置方法及装置 |
CN110198315A (zh) * | 2019-05-30 | 2019-09-03 | 新华三信息安全技术有限公司 | 一种报文处理的方法及装置 |
CN110460619A (zh) * | 2019-08-30 | 2019-11-15 | 北京卓识网安技术股份有限公司 | 报文识别方法、系统、装置及存储介质 |
CN110601990A (zh) * | 2019-10-30 | 2019-12-20 | 杭州迪普科技股份有限公司 | 一种报文分流方法和装置 |
CN111224891A (zh) * | 2019-12-24 | 2020-06-02 | 北京百卓网络技术有限公司 | 一种基于动态学习三元组的流量应用识别系统及方法 |
CN111865809A (zh) * | 2019-04-30 | 2020-10-30 | 中国科学院声学研究所 | 基于协议无感知转发的设备状态感知方法、系统及交换机 |
CN111988211A (zh) * | 2019-05-21 | 2020-11-24 | 华为技术有限公司 | 网络设备的报文分流方法和装置 |
CN112272123A (zh) * | 2020-10-16 | 2021-01-26 | 北京锐安科技有限公司 | 网络流量分析方法、装置、电子设备和存储介质 |
CN112350833A (zh) * | 2020-11-25 | 2021-02-09 | 杭州迪普信息技术有限公司 | 流量过滤方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190215385A1 (en) * | 2018-01-10 | 2019-07-11 | Nexvortex, Inc. | Packet Replication Over Dynamically Managed Bonded Tunnels |
-
2021
- 2021-02-20 CN CN202110194498.XA patent/CN112953841B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101656677A (zh) * | 2009-09-18 | 2010-02-24 | 杭州迪普科技有限公司 | 一种报文分流处理方法及装置 |
CN103563328A (zh) * | 2011-12-21 | 2014-02-05 | 华为技术有限公司 | 数据分流方法和装置 |
CN103051725A (zh) * | 2012-12-31 | 2013-04-17 | 华为技术有限公司 | 应用识别方法、数据挖掘方法、装置及系统 |
CN104753857A (zh) * | 2013-12-26 | 2015-07-01 | 华为技术有限公司 | 网络流量控制设备及其安全策略配置方法及装置 |
CN111865809A (zh) * | 2019-04-30 | 2020-10-30 | 中国科学院声学研究所 | 基于协议无感知转发的设备状态感知方法、系统及交换机 |
CN111988211A (zh) * | 2019-05-21 | 2020-11-24 | 华为技术有限公司 | 网络设备的报文分流方法和装置 |
CN110198315A (zh) * | 2019-05-30 | 2019-09-03 | 新华三信息安全技术有限公司 | 一种报文处理的方法及装置 |
CN110460619A (zh) * | 2019-08-30 | 2019-11-15 | 北京卓识网安技术股份有限公司 | 报文识别方法、系统、装置及存储介质 |
CN110601990A (zh) * | 2019-10-30 | 2019-12-20 | 杭州迪普科技股份有限公司 | 一种报文分流方法和装置 |
CN111224891A (zh) * | 2019-12-24 | 2020-06-02 | 北京百卓网络技术有限公司 | 一种基于动态学习三元组的流量应用识别系统及方法 |
CN112272123A (zh) * | 2020-10-16 | 2021-01-26 | 北京锐安科技有限公司 | 网络流量分析方法、装置、电子设备和存储介质 |
CN112350833A (zh) * | 2020-11-25 | 2021-02-09 | 杭州迪普信息技术有限公司 | 流量过滤方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112953841A (zh) | 2021-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220124070A1 (en) | Methods, Systems, and Computer Readable Media for Adaptive Packet Filtering | |
EP2482520B1 (en) | System and method for efficient classification and processing of network traffic | |
US9774707B2 (en) | Efficient packet classification for dynamic containers | |
US11595503B2 (en) | Efficient packet classification for dynamic containers | |
US20060221967A1 (en) | Methods for performing packet classification | |
CN112953841B (zh) | 报文分流方法及系统 | |
US20060221956A1 (en) | Methods for performing packet classification via prefix pair bit vectors | |
US20060221954A1 (en) | Methods for performing packet classification | |
US8719917B1 (en) | Merging firewall filters using merge graphs | |
WO2012080170A1 (en) | Network processor and method for accelerating data packet parsing | |
US11522795B1 (en) | End to end application identification and analytics of tunnel encapsulated traffic in the underlay | |
US10979542B2 (en) | Flow cache support for crypto operations and offload | |
CN114041276A (zh) | 屏蔽外部源地址的网络架构的安全策略实施和可见性 | |
US9813357B2 (en) | Filtration of network traffic using virtually-extended ternary content-addressable memory (TCAM) | |
US10992553B2 (en) | Method and apparatus for tap aggregation and network data truncation | |
Weng et al. | Deep packet pre-filtering and finite state encoding for adaptive intrusion detection system | |
CN114006831B (zh) | 报文数据处理方法及装置 | |
WO2015187200A1 (en) | Efficient packet classification for dynamic containers | |
US10355985B2 (en) | Network property verification | |
US20190116112A1 (en) | Network property verification in hybrid networks | |
CN114363257B (zh) | 隧道报文的五元组匹配方法及装置 | |
US9319351B1 (en) | Mechanism for wire-speed stateful packet inspection in packet processors | |
CN115250254B (zh) | Netflow报文分发处理方法及装置 | |
WO2023219718A1 (en) | Re-simulation of updated sdn connection flows | |
WO2024177915A1 (en) | Packet processing for network security groups |
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 |