CN115250254A - Netflow报文分发处理方法及装置 - Google Patents

Netflow报文分发处理方法及装置 Download PDF

Info

Publication number
CN115250254A
CN115250254A CN202210872595.4A CN202210872595A CN115250254A CN 115250254 A CN115250254 A CN 115250254A CN 202210872595 A CN202210872595 A CN 202210872595A CN 115250254 A CN115250254 A CN 115250254A
Authority
CN
China
Prior art keywords
forwarding
netflow
messages
message
original
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
CN202210872595.4A
Other languages
English (en)
Other versions
CN115250254B (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.)
Hangzhou DPTech Technologies Co Ltd
Original Assignee
Hangzhou DPTech Technologies 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 Hangzhou DPTech Technologies Co Ltd filed Critical Hangzhou DPTech Technologies Co Ltd
Priority to CN202210872595.4A priority Critical patent/CN115250254B/zh
Publication of CN115250254A publication Critical patent/CN115250254A/zh
Application granted granted Critical
Publication of CN115250254B publication Critical patent/CN115250254B/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
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/026Capturing of monitoring data using flow identification

Landscapes

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

Abstract

本公开涉及一种Netflow报文分发处理方法、装置、电子设备及计算机可读介质。该方法包括:由多个设备中获取Netflow报文;将所述Netflow报文进行解析生成解析数据;根据解析数据生成多个转发报文;根据所述多个转发报文对应的序列号码将其转发到多个队列中;基于所述多个队列将所述多个转发报文转发到多个下游设备中以进行处理。本申请涉及的Netflow报文分发处理方法、装置、电子设备及计算机可读介质,能够通过负载分类设备将N台上游设备的netflow报文,根据其对应的内容分发到不同的检测设备中,提高netflow报文处理速度。

Description

Netflow报文分发处理方法及装置
技术领域
本公开涉及计算机信息处理领域,具体而言,涉及一种Netflow报文分发处理方法、装置、电子设备及计算机可读介质。
背景技术
随着运营商网络中流量越来越大,路由器的性能也在不断提高,一些核心骨干的路由器性能已经达到T级别,单独一台路由器输出的Netflow量就可能远远超过了检测设备的性能。这种情况下,需要对netflow流量进行负载才可以完成,现有的方案有3种:
1.使用通用负载分发设备完成,通过逐包或者根据IP进行分发。这种方案由于netflow数据五元组一样,通用负载设备只能逐包进行分发,而且对于netflow v9存在模板报文,模板报文必须给所有流量分析设备或者软件发送,这种通用负载设备无法处理
2.使用netflow专用负载设备进行完成。这种方案现阶段支持netflow v9模板报文的单独处理,但是依然是逐包发送的模式,对于目的IP等特征相同的netflow数据依然送到了不同的检测设备,对于统计数据而言不是很友好。
3.使用性能足够的框式设备进行内部板卡负载完成。这种方案比较适合,框式设备自行处理解决了上述问题,但是首先是框式设备要求高,满配置板卡的情况下是否可以达到性能,否则依然存在问题,同时,框式设备要求检测设备必须是同一厂商的设备。
因此,需要一种新的Netflow报文分发处理方法、装置、电子设备及计算机可读介质。
在所述背景技术部分公开的上述信息仅用于加强对本申请的背景的理解,因此它可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
有鉴于此,本申请提供一种Netflow报文分发处理方法、装置、电子设备及计算机可读介质,能够通过负载分类设备将N台上游设备的netflow报文,根据其对应的内容分发到不同的检测设备中,提高netflow报文处理速度。
本申请的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本申请的实践而习得。
根据本申请的一方面,提出一种Netflow报文分发处理方法,该方法包括:由多个设备中获取Netflow报文;将所述Netflow报文进行解析生成解析数据;根据解析数据生成多个转发报文;根据所述多个转发报文对应的序列号码将其转发到多个队列中;基于所述多个队列将所述多个转发报文转发到多个下游设备中以进行处理。
在本申请的一种示例性实施例中,还包括:为多个下游设备中的每个下游设备分配单独的队列。
在本申请的一种示例性实施例中,由多个设备中获取Netflow报文,包括:由多个上游路由器和/或多个上游交换机获取Netflow报文。
在本申请的一种示例性实施例中,将所述Netflow报文进行解析生成解析数据,包括:将所述Netflow报文进行解析提取其中包含的多个原始报文;通过所述多个原始报文生成所述解析数据。
在本申请的一种示例性实施例中,根据解析数据生成多个转发报文,包括:由所述解析数据中提取多个原始报文;根据转发策略生成所述多个原始报文中每一个原始报文的转发标识;根据所述转发标识生成序列号码;将所述序列号码填入所述原始报文中以生成转发报文。
在本申请的一种示例性实施例中,根据转发策略生成所述多个原始报文中每一个原始报文的转发标识,包括:根据转发策略提取原始报文中指定特征;根据指定特征的哈希值确定所述转发标识。
在本申请的一种示例性实施例中,根据所述转发标识生成序列号码,包括:根据所述转发标识确定待转发的下游设备;根据所述下游设备的索引获取所述序列号码。
在本申请的一种示例性实施例中,根据所述下游设备的索引获取所述序列号码,包括:实时查询所述下游设备的当前序列号码;对所述当前序列号码进行递增处理以生成所述序列号码。
在本申请的一种示例性实施例中,根据所述多个转发报文对应的序列号码将其转发到多个队列中,包括:根据所述多个转发报文对应的序列号码中提取代转发队列;将其转发到所述队列中。
根据本申请的一方面,提出一种Netflow报文分发处理装置,该装置包括:报文模块,用于由多个设备中获取Netflow报文;解析模块,用于将所述Netflow报文进行解析生成解析数据;数据模块,用于根据解析数据生成多个转发报文;转发模块,用于根据所述多个转发报文对应的序列号码将其转发到多个队列中;处理模块,用于基于所述多个队列将所述多个转发报文转发到多个下游设备中以进行处理。
根据本申请的一方面,提出一种电子设备,该电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如上文的方法。
根据本申请的一方面,提出一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如上文中的方法。
根据本申请的Netflow报文分发处理方法、装置、电子设备及计算机可读介质,通过由多个设备中获取Netflow报文;将所述Netflow报文进行解析生成解析数据;根据解析数据生成多个转发报文;根据所述多个转发报文对应的序列号码将其转发到多个队列中;基于所述多个队列将所述多个转发报文转发到多个下游设备中以进行处理的方式,能够通过负载分类设备将N台上游设备的netflow报文,根据其对应的内容分发到不同的检测设备中,提高netflow报文处理速度。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本申请。
附图说明
通过参照附图详细描述其示例实施例,本申请的上述和其它目标、特征及优点将变得更加显而易见。下面描述的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据一示例性实施例示出的一种Netflow报文分发处理方法及装置的系统框图。
图2是根据一示例性实施例示出的一种Netflow报文分发处理方法的流程图。
图3是根据另一示例性实施例示出的一种Netflow报文分发处理方法的示意图。
图4是根据另一示例性实施例示出的一种Netflow报文分发处理方法的流程图。
图5是根据一示例性实施例示出的一种Netflow报文分发处理装置的框图。
图6是根据一示例性实施例示出的一种电子设备的框图。
图7是根据一示例性实施例示出的一种计算机可读介质的框图。
具体实施方式
现在将参考附图更全面地描述示例实施例。然而,示例实施例能够以多种形式实施,且不应被理解为限于在此阐述的实施例;相反,提供这些实施例使得本申请将全面和完整,并将示例实施例的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本申请的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本申请的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本申请的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
应理解,虽然本文中可能使用术语第一、第二、第三等来描述各种组件,但这些组件不应受这些术语限制。这些术语乃用以区分一组件与另一组件。因此,下文论述的第一组件可称为第二组件而不偏离本申请概念的教示。如本文中所使用,术语“及/或”包括相关联的列出项目中的任一个及一或多者的所有组合。
本领域技术人员可以理解,附图只是示例实施例的示意图,附图中的模块或流程并不一定是实施本申请所必须的,因此不能用于限制本申请的保护范围。
本申请涉及的技术缩略语解释如下:
NetFlow:是一种网络监测功能,可以收集进入及离开网络界面的IP封包的数量及资讯,最早由思科公司研发,应用在路由器及交换器等产品上。经由分析Netflow收集到的资讯,网络管理人员可以知道封包的来源及目的地,网络服务的种类,以及造成网络拥塞的原因。一个NetFlow流定义为在一个源IP地址和目的IP地址间传输的单向数据包流,且所有数据包具有共同的传输层源、目的端口号。其基本结构如下:
Figure BDA0003761468910000051
每个netflow报文可以携带1至30个flow数据,每个flow数据都是独立的,传统的方案按照报文整体进行负载显然会难以处理,如果一个netflow报文中携带30个flow,那么只能把报文送到其中一台设备,无法根据flow具体内容进行负载。
本申请的发明人发现,每个flow的具体内容,里面携带了源IP,目的IP,目的端口等,是流量分析的关键。如上所述的pdu 1/6展开如下:
Figure BDA0003761468910000061
如果需要根据netflow的目的IP内容进行负载,那么假设一个netflow拥有30条flows数据内容,这30条flows分别属于10个目的IP所有,那么就需要把这一条netflow拆成10份转发给不同的检测设备或者软件,保证相同的目的IP能到达同一台检测设备。
但是由于netflow报文的头部拥有FLowSequence字段标识netflow的连续性,如果这个字段中间有跳跃或者相同,检测设备可能会认为丢包或者数据重复,这可能导致数据不准确。
上面提到的方案中,如果有一个目的IP拥有3个flows,那么这3个flows重组之后的FlowSequence是无法填写的。而本申请中提出对每个设备的sequence进行维护以保证每个设备的sequence值是连续的,更具体的,可通过给分发报文的每台检测设备或者软件分配一个FLowSequence计数实现。
当拆分之后的netflow数据发送时,可以查询对应的检测设备或者软件的FlowSequence值并赋值同时对这个值进行递增处理。这样,所有的检测设备或者软件将会收到连续的FlowSequence值。
发送netflow的设备不止一台,有可能有多台同时将netflow数据发给专用负载设备进行处理,每台设备的FlowSequence编号是独立的,在本申请中的专用负载设备可以给每个下游待转发设备分配一个FlowSequence队列,队列的大小由上游发送netflow的路由器或者交换机决定。
通过本申请中的Netflow报文分发处理方法、装置,可以满足N台上游flow设备通过负载分流设备将netflow数据根据内容分发到M台不同的检测设备或者软件上的目的。
下面借助具体的实施例,对本申请的内容进行详细描述。
图1是根据一示例性实施例示出的一种Netflow报文分发处理方法、装置的系统框图。
如图1所示,系统架构10可以包括上游设备101、102、103,网络104、负载设备105、下游设备106、107、108。网络104用以在上游设备101、102、103和负载设备105之间;负载设备105和下游设备106、107、108之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用上游设备101、102、103通过负载设备105与下游设备106、107、108交互,以接收或发送消息等。上游设备101、102、103上可以安装有各种报文转发类应用。
上游设备101、102、103可以是具有报文转发功能的电子设备。包括但不限于路由器、交换机、智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
负载设备105可以是提供负载均衡处理的服务器,例如对上游设备101、102、103所发送的Netflow报文提供分发支持的后台服务器。后台服务器可以对接收到的Netflow报文进行解析和分发等处理,并将处理结果(例如转发报文)反馈给下游设备106、107、108。
负载设备105可例如由上游设备101、102、103中获取Netflow报文;负载设备105可例如将所述Netflow报文进行解析生成解析数据;负载设备105可例如根据解析数据生成多个转发报文;负载设备105可例如根据所述多个转发报文对应的序列号码将其转发到多个队列中;负载设备105可例如基于所述多个队列将所述多个转发报文转发到下游设备106、107、108以进行处理。
上游设备101、102、103,网络104、负载设备105、下游设备106、107、108均可以是一个实体的服务器,还可例如为多个服务器组成,需要说明的是,本申请实施例所提供的Netflow报文分发处理方法可以由负载设备105执行,相应地,Netflow报文分发处理装置可以设置于负载设备105中。
图2是根据一示例性实施例示出的一种Netflow报文分发处理方法的流程图。Netflow报文分发处理方法20至少包括步骤S202至S210。
如图2所示,在S202中,由多个设备中获取Netflow报文。可例如由多个上游路由器和/或多个上游交换机获取Netflow报文。
在S204中,将所述Netflow报文进行解析生成解析数据。可将所述Netflow报文进行解析提取其中包含的多个原始报文;通过所述多个原始报文生成所述解析数据。
更具体的,可在负载设备中设置流量接收模块,流量接收模块用于将收到的不同上游设备的数据解析。
在S206中,根据解析数据生成多个转发报文。可例如,由所述解析数据中提取多个原始报文;根据转发策略生成所述多个原始报文中每一个原始报文的转发标识;根据所述转发标识生成序列号码;将所述序列号码填入所述原始报文中以生成转发报文。
其中,根据转发策略生成所述多个原始报文中每一个原始报文的转发标识,包括:根据转发策略提取原始报文中指定特征;根据指定特征的哈希值确定所述转发标识。
其中,根据所述转发标识生成序列号码,包括:根据所述转发标识确定待转发的下游设备;根据所述下游设备的索引获取所述序列号码。更具体的,可实时查询所述下游设备的当前序列号码;对所述当前序列号码进行递增处理以生成所述序列号码。
更具体的,可在负载设备中设置重组模块,重组模块可根据每条原始报文的指定特征(用户定义)进行hash计算,通过hash值计算对应的下游设备,同时根据下游设备的索引获取到对应的FlowSequence数据填入报文并放入到指定的发送队列。
还可在负载设备中设置FLowSequence调整模块,FLowSequence调整模块用于接收发送的flows数量并更新对应下游设备队列的对应FlowSequence值并提供查询接口。
在S208中,根据所述多个转发报文对应的序列号码将其转发到多个队列中。可根据所述多个转发报文对应的序列号码中提取代转发队列;将其转发到所述队列中。
在一个实施例中,还可将具有相同转发队列的转发报文进行打包,作为一个Netflow报文进行后续处理。
更具体的,可在负载设备中设置转发模块,转发模块将转发报文从不同的队列发送给对应的下游设备,需要注意的是,转发设备并不会更改上游设备的源IP地址,属于透明处理。
在一个实施例中,还包括:为多个下游设备中的每个下游设备分配单独的队列。
在S210中,基于所述多个队列将所述多个转发报文转发到多个下游设备中以进行处理。
根据本申请的Netflow报文分发处理方法,通过由多个设备中获取Netflow报文;将所述Netflow报文进行解析生成解析数据;根据解析数据生成多个转发报文;根据所述多个转发报文对应的序列号码将其转发到多个队列中;基于所述多个队列将所述多个转发报文转发到多个下游设备中以进行处理的方式,能够通过负载分类设备将N台上游设备的netflow报文,根据其对应的内容分发到不同的检测设备中,提高netflow报文处理速度。
应清楚地理解,本申请描述了如何形成和使用特定示例,但本申请的原理不限于这些示例的任何细节。相反,基于本申请公开的内容的教导,这些原理能够应用于许多其它实施例。
图3是根据另一示例性实施例示出的一种Netflow报文分发处理方法的示意图。每台设备的FlowSequence编号是独立的,也就是专用负载设备需要给每个下游待转发设备分配一个FlowSequence队列,队列的大小由上游发送netflow的路由器或者交换机决定,如图3所示,虚线框代表一个FlowSequence队列,它唯一对应一台下游待转发设备,它里面的内容表示上游的每个发送设备的FlowSequence,双点划线框表示这一行代表同一台上游设备切分到不同下游设备的FlowSequence数据的重组。通过这种方式就可以满足N台上游设备通过负载分流设备将netflow数据根据内容分发到M台不同的检测设备或者软件上的目的。
图4是根据另一示例性实施例示出的一种Netflow报文分发处理方法的流程图。图4所示的流程40是对图2所示的流程中S206“根据解析数据生成多个转发报文”的详细描述。
如图4所示,在S402中,由所述解析数据中提取多个原始报文。可例如在解析数据中提取到了原始报文A,原始报文B,原始报文C,原始报文D。
在S404中,根据转发策略生成所述多个原始报文中每一个原始报文的转发标识。可根据转发策略提取原始报文中指定特征;根据指定特征的哈希值确定所述转发标识。
在一个具体的应用中,转发策略为按照报文的源IP地址进行转发,则可提取原始报文A,原始报文B,原始报文C,原始报文D对应的源IP地址。
计算源IP地址的哈希值,预先设置哈希值和队列的对应关系,以根据哈希值确定转发队列。更具体的,可例如,原始报文A和原始报文C对应着转发队列1和下游设备1;原始报文B对应着转发队列2和下游设备2;原始报文D对应着转发队列3和下游设备3。
还可例如,将原始报文A和原始报文C进行打包,作为一个整体Netflow报文进行处理。
在S406中,根据所述转发标识生成序列号码。可根据所述转发标识确定待转发的下游设备;根据所述下游设备的索引获取所述序列号码。
更具体的,可实时查询所述下游设备的当前序列号码;对所述当前序列号码进行递增处理以生成所述序列号码。
可获取转发队列对应的下游设备当前的序列号码,可例如,下游设备1对应的当前序列号码为233,则设置下游设备1对应的转发队列1中原始报文A和原始报文C对应的Netflow报文的序列号码为234。
在S408中,将所述序列号码填入所述原始报文中以生成转发报文。将序列号码234填入Netflow报文中,以生成转发报文。
本领域技术人员可以理解实现上述实施例的全部或部分步骤被实现为由CPU执行的计算机程序。在该计算机程序被CPU执行时,执行本申请提供的上述方法所限定的上述功能。所述的程序可以存储于一种计算机可读存储介质中,该存储介质可以是只读存储器,磁盘或光盘等。
此外,需要注意的是,上述附图仅是根据本申请示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
图5是根据一示例性实施例示出的一种Netflow报文分发处理装置的框图。如图5所示,Netflow报文分发处理装置50包括:报文模块502,解析模块504,数据模块506,转发模块508,处理模块510。
报文模块502用于由多个设备中获取Netflow报文;报文模块502还用于由多个上游路由器和/或多个上游交换机获取Netflow报文。
解析模块504用于将所述Netflow报文进行解析生成解析数据;解析模块504还用于将所述Netflow报文进行解析提取其中包含的多个原始报文;通过所述多个原始报文生成所述解析数据。
数据模块506用于根据解析数据生成多个转发报文;数据模块506还用于由所述解析数据中提取多个原始报文;根据转发策略生成所述多个原始报文中每一个原始报文的转发标识;根据所述转发标识生成序列号码;将所述序列号码填入所述原始报文中以生成转发报文。
转发模块508用于根据所述多个转发报文对应的序列号码将其转发到多个队列中;转发模块508还用于根据所述多个转发报文对应的序列号码中提取代转发队列;将其转发到所述队列中。
处理模块510用于基于所述多个队列将所述多个转发报文转发到多个下游设备中以进行处理。
根据本申请的Netflow报文分发处理装置,通过由多个设备中获取Netflow报文;将所述Netflow报文进行解析生成解析数据;根据解析数据生成多个转发报文;根据所述多个转发报文对应的序列号码将其转发到多个队列中;基于所述多个队列将所述多个转发报文转发到多个下游设备中以进行处理的方式,能够通过负载分类设备将N台上游设备的netflow报文,根据其对应的内容分发到不同的检测设备中,提高netflow报文处理速度。
图6是根据一示例性实施例示出的一种电子设备的框图。
下面参照图6来描述根据本申请的这种实施方式的电子设备600。图6显示的电子设备600仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图6所示,电子设备600以通用计算设备的形式表现。电子设备600的组件可以包括但不限于:至少一个处理单元610、至少一个存储单元620、连接不同系统组件(包括存储单元620和处理单元610)的总线630、显示单元640等。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元610执行,使得所述处理单元610执行本说明书中描述的根据本申请各种示例性实施方式的步骤。例如,所述处理单元610可以执行如图2,图4中所示的步骤。
所述存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)6201和/或高速缓存存储单元6202,还可以进一步包括只读存储单元(ROM)6203。
所述存储单元620还可以包括具有一组(至少一个)程序模块6205的程序/实用工具6204,这样的程序模块6205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线630可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备600也可以与一个或多个外部设备600’(例如键盘、指向设备、蓝牙设备等)通信,使得用户能与该电子设备600交互的设备通信,和/或该电子设备600能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口650进行。并且,电子设备600还可以通过网络适配器660与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器660可以通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
总体而言,本公开的Netflow报文分发处理方法及装置整体包括流量接收模块,流量重组模块,FlowSequence调整模块,数据转发模块。流量接收模块负责将收到的不同上游设备的数据解析好之后送给流量重组模块,重组模块会根据每条flow的指定特征(用户定义)进行hash计算,通过hash值计算对应的下游设备,同时根据下有设备的索引获取到对应的FlowSequence数据填入报文并放入到指定的发送队列,最终有转发模块将数据从不同的队列发送给对应的下游设备,需要注意的是,转发设备并不会更改上游设备的源IP地址,属于透明处理。FLowSequence调整模块只负责接收发送的flows数量并更新对应下游设备队列的对应FlowSequence值并提供查询接口。因此本公开通过专用设备根据netflow的各flow指定特征进行hash计算,将netflow报文拆分成多个flows数据重组,将重组后的数据发给对应的流量分析设备,保证同样特征的数据被负载到同样的流量分析设备。并且通过建立FlowSequence队列的方式,调整每个拆分重组数据的FlowSequence值,保证下游分析设备可以根据上游设备的不同进行FlowSequence的统计。因此,本公开可以满足N台上游flow设备通过负载分流设备将netflow数据根据内容分发到M台不同的检测设备或者软件上的目的。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,如图7所示,根据本申请实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行根据本申请实施方式的上述方法。
所述软件产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本申请操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该计算机可读介质实现如下功能:由多个设备中获取Netflow报文;将所述Netflow报文进行解析生成解析数据;根据解析数据生成多个转发报文;根据所述多个转发报文对应的序列号码将其转发到多个队列中;基于所述多个队列将所述多个转发报文转发到多个下游设备中以进行处理。
本领域技术人员可以理解上述各模块可以按照实施例的描述分布于装置中,也可以进行相应变化唯一不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本申请实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本申请实施例的方法。
以上具体地示出和描述了本申请的示例性实施例。应可理解的是,本申请不限于这里描述的详细结构、设置方式或实现方法;相反,本申请意图涵盖包含在所附权利要求的精神和范围内的各种修改和等效设置。

Claims (10)

1.一种Netflow报文分发处理方法,其特征在于,包括:
由多个设备中获取Netflow报文;
将所述Netflow报文进行解析生成解析数据;
根据解析数据生成多个转发报文;
根据所述多个转发报文对应的序列号码将其转发到多个队列中;
基于所述多个队列将所述多个转发报文转发到多个下游设备中以进行处理。
2.如权利要求1所述的方法,其特征在于,还包括:
为多个下游设备中的每个下游设备分配单独的队列。
3.如权利要求1所述的方法,其特征在于,由多个设备中获取Netflow报文,包括:
由多个上游路由器和/或多个上游交换机获取Netflow报文。
4.如权利要求1所述的方法,其特征在于,将所述Netflow报文进行解析生成解析数据,包括:
将所述Netflow报文进行解析提取其中包含的多个原始报文;
通过所述多个原始报文生成所述解析数据。
5.如权利要求1所述的方法,其特征在于,根据解析数据生成多个转发报文,包括:
由所述解析数据中提取多个原始报文;
根据转发策略生成所述多个原始报文中每一个原始报文的转发标识;
根据所述转发标识生成序列号码;
将所述序列号码填入所述原始报文中以生成转发报文。
6.如权利要求5所述的方法,其特征在于,根据转发策略生成所述多个原始报文中每一个原始报文的转发标识,包括:
根据转发策略提取原始报文中指定特征;
根据指定特征的哈希值确定所述转发标识。
7.如权利要求5所述的方法,其特征在于,根据所述转发标识生成序列号码,包括:
根据所述转发标识确定待转发的下游设备;
根据所述下游设备的索引获取所述序列号码。
8.如权利要求7所述的方法,其特征在于,根据所述下游设备的索引获取所述序列号码,包括:
实时查询所述下游设备的当前序列号码;
对所述当前序列号码进行递增处理以生成所述序列号码。
9.如权利要求1所述的方法,其特征在于,根据所述多个转发报文对应的序列号码将其转发到多个队列中,包括:
根据所述多个转发报文对应的序列号码中提取代转发队列;
将其转发到所述队列中。
10.一种Netflow报文分发处理装置,其特征在于,包括:
报文模块,用于由多个设备中获取Netflow报文;
解析模块,用于将所述Netflow报文进行解析生成解析数据;
数据模块,用于根据解析数据生成多个转发报文;
转发模块,用于根据所述多个转发报文对应的序列号码将其转发到多个队列中;
处理模块,用于基于所述多个队列将所述多个转发报文转发到多个下游设备中以进行处理。
CN202210872595.4A 2022-07-23 2022-07-23 Netflow报文分发处理方法及装置 Active CN115250254B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210872595.4A CN115250254B (zh) 2022-07-23 2022-07-23 Netflow报文分发处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210872595.4A CN115250254B (zh) 2022-07-23 2022-07-23 Netflow报文分发处理方法及装置

Publications (2)

Publication Number Publication Date
CN115250254A true CN115250254A (zh) 2022-10-28
CN115250254B CN115250254B (zh) 2024-03-08

Family

ID=83700608

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210872595.4A Active CN115250254B (zh) 2022-07-23 2022-07-23 Netflow报文分发处理方法及装置

Country Status (1)

Country Link
CN (1) CN115250254B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101917472A (zh) * 2010-08-12 2010-12-15 北京星网锐捷网络技术有限公司 一种多链路报文的重组方法、装置及设备
US20150281092A1 (en) * 2014-04-01 2015-10-01 Endace Technology Limited Hash tag load balancing
EP3282643A1 (en) * 2016-08-09 2018-02-14 AirMagnet, Inc. Method and apparatus of estimating conversation in a distributed netflow environment
CN108322403A (zh) * 2018-01-31 2018-07-24 杭州迪普科技股份有限公司 一种Netflow流量分流方法及装置
CN111711577A (zh) * 2020-07-24 2020-09-25 杭州迪普信息技术有限公司 流控设备的报文转发方法及装置
CN112468370A (zh) * 2020-11-30 2021-03-09 北京锐驰信安技术有限公司 一种支持自定义规则的高速网络报文监测分析方法及系统
US11159438B1 (en) * 2021-04-30 2021-10-26 Booz Allen Hamilton Inc. System and method for netflow aggregation of data streams
CN113726678A (zh) * 2021-07-28 2021-11-30 中盈优创资讯科技有限公司 一种基于NetFlow负载均衡器的报文分发方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101917472A (zh) * 2010-08-12 2010-12-15 北京星网锐捷网络技术有限公司 一种多链路报文的重组方法、装置及设备
US20150281092A1 (en) * 2014-04-01 2015-10-01 Endace Technology Limited Hash tag load balancing
EP3282643A1 (en) * 2016-08-09 2018-02-14 AirMagnet, Inc. Method and apparatus of estimating conversation in a distributed netflow environment
CN108322403A (zh) * 2018-01-31 2018-07-24 杭州迪普科技股份有限公司 一种Netflow流量分流方法及装置
CN111711577A (zh) * 2020-07-24 2020-09-25 杭州迪普信息技术有限公司 流控设备的报文转发方法及装置
CN112468370A (zh) * 2020-11-30 2021-03-09 北京锐驰信安技术有限公司 一种支持自定义规则的高速网络报文监测分析方法及系统
US11159438B1 (en) * 2021-04-30 2021-10-26 Booz Allen Hamilton Inc. System and method for netflow aggregation of data streams
CN113726678A (zh) * 2021-07-28 2021-11-30 中盈优创资讯科技有限公司 一种基于NetFlow负载均衡器的报文分发方法

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
CHAITANYA BALANTRAPU ET AL.: "A novel approach to netflow monitoring in data center networks" *
CISCO: "NetFlow Version 9 Flow-Record Format" *
何海涛,罗笑南,郭清顺: "Netflow在边界网流量测量中的应用研究", no. 11 *
周韶泽: "高速网络环境下基于NetFlow的网络监测系统设", pages 1 *
朱学莉等: "《智能建筑网络通信系统》", pages: 206 - 207 *

Also Published As

Publication number Publication date
CN115250254B (zh) 2024-03-08

Similar Documents

Publication Publication Date Title
CN111711577B (zh) 流控设备的报文转发方法及装置
CN110719215B (zh) 虚拟网络的流信息采集方法及装置
CN111818136A (zh) 数据处理方法、装置、电子设备及计算机可读介质
CN112883031B (zh) 工控资产信息获取方法及装置
CN112540948A (zh) 通过事件流处理集群管理器进行路由管理
CN114285781A (zh) Srv6业务流量统计方法、装置、电子设备及介质
CN104052679A (zh) 网络流量的负载均衡方法和装置
CN111046010A (zh) 日志储存方法、装置、系统、电子设备和计算机可读介质
CN112507265B (zh) 基于树结构进行异常侦测的方法、装置及相关产品
CN117176802A (zh) 一种业务请求的全链路监控方法、装置、电子设备及介质
US10812355B2 (en) Record compression for a message system
CN115250254A (zh) Netflow报文分发处理方法及装置
CN111211998A (zh) 可弹性扩容的资源配给方法、装置和电子设备
CN112260903B (zh) 链路监测方法及装置
CN115277504A (zh) 一种网络流量监控方法、装置和系统
CN112994934B (zh) 数据交互方法、装置及系统
CN113179317B (zh) 内容重写设备的测试系统及方法
CN115514618A (zh) 告警事件的处理方法、装置、电子设备和介质
CN113934767A (zh) 一种数据处理的方法及装置、计算机设备和存储介质
Pan et al. Orchestrating probabilistic in-band network telemetry for network monitoring
CN114143079A (zh) 包过滤策略的验证装置及方法
CN114565105A (zh) 处理数据的方法和深度学习模型的训练方法、装置
CN113141407A (zh) 一种页面资源加载方法、装置和电子设备
CN115277506B (zh) 负载均衡设备测试方法及系统
CN112436951A (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