CN113904950B - 基于流的网络监测方法、装置、计算机设备及存储介质 - Google Patents

基于流的网络监测方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN113904950B
CN113904950B CN202111472699.8A CN202111472699A CN113904950B CN 113904950 B CN113904950 B CN 113904950B CN 202111472699 A CN202111472699 A CN 202111472699A CN 113904950 B CN113904950 B CN 113904950B
Authority
CN
China
Prior art keywords
session
active
flow
message
stream
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
Application number
CN202111472699.8A
Other languages
English (en)
Other versions
CN113904950A (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.)
Guangdong Eflycloud Computing Co Ltd
Original Assignee
Guangdong Eflycloud Computing 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 Guangdong Eflycloud Computing Co Ltd filed Critical Guangdong Eflycloud Computing Co Ltd
Priority to CN202111472699.8A priority Critical patent/CN113904950B/zh
Publication of CN113904950A publication Critical patent/CN113904950A/zh
Application granted granted Critical
Publication of CN113904950B publication Critical patent/CN113904950B/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/02Capturing of monitoring data
    • H04L43/026Capturing of monitoring data using flow identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/12Network monitoring probes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • Signal Processing (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computational Linguistics (AREA)
  • Computing Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请属于通信技术领域,并涉及基于流的网络监测方法、装置、计算机设备及存储介质,该网络监测方法包括步骤:对经过任意设备的任意流建立会话,通过以IP头部扩展HASH来标记任意流经过NAT/VPN设备转换后的五元组关系,来标识同一条流;以任意流转发时的dmac,来标识任意流转发时经过任意设备的先后顺序;统计和更新当前活动的会话,每间隔一定阈值时间,交换统计记录会话和上传会话,并遍历活动会话;将任意流的会话信息存储在数据库中。本申请还涉及区块链技术,用户的网络流隐私信息/结果数据可存储于区块链中。本申请可以监测经过多个设备中所有流的信息,可查询流的整个生命周期,直观地观察流的转发情况。

Description

基于流的网络监测方法、装置、计算机设备及存储介质
技术领域
本申请涉及通信技术领域,尤其涉及一种基于流的网络监测方法,装置、计算机设备及存储介质。
背景技术
互联网的普及,云计算的浪潮,让我们越来越离不开网络环境。随着移动互联网的快速发展,各种应用和服务层出不穷,应用开发商和服务提供商等需要快速实施他们的项目或产品,在传统的IDC数据中心中一般需要布置他们自己或者租用服务器设备并且还需要自己组建复杂的网络,这其间必定需要大量的时间并且非常容易出错,也不容易扩展和实现灾备。
在经典网络中,用户在云上其实是非常缺乏网络管理能力的,用户有一台经典网络的虚拟服务器,用户也只有了和公网通信的能力,最多加上安全组可以做一些安全控制的能力,但如网段规划、子网划分、路由管理、使用NAT管理公网出入等网络管理能力都几乎没有或很弱。流量在从源发出最终到达目标设备的过程通常会经过若干台设备,而流量可能会在中途任意地方发生问题,导致丢包,假如网络是一直不通,倒是可以使用mtr和traceroute等工具进行调试,但若流量只是间歇性不定期地丢弃,这种情况通常难以调试。
目前与此相关的持术有tcpdump和traceroute等,但是此类技术有比较明显的缺点,tcpdump只能在单台设备上面执行,以观察这台设备上的报文接收和发出的情况,但对于报文在整个多节点的网络系统中的接收和发出情况则没有直观和报文相关联的信息,而traceroute则主要是探测报文可能经过的网络节点,但不能探测出报文在经过不同网络节点时可能发生的变化的情况。
目前的网络调试技术,一般只能应对中断的情况,或者实时监测,但实时的通常也无法做到全路径的基于流的监测,在做到实时的基于流的监测后,还要考虑对千千万万条流的实时监测和全记录。
发明内容
本申请的目的在于提出一种基于流的网络监测方法、装置、计算机设备及存储介质,以解决现有技术中无法跟踪多个设备中多个流的转发情况的问题。
云计算中的网络系统一般有多台不同角色的网络设备共同工作,提供不同组合的网络功能,通常报文从这个网络系统的某个入口进入,再从某个出口发出,完成特定的网络功能,比如NAT地址转换接入公网功能等,由于网络系统中的不同角色间是协同工作的,但对于用户来说此网络系统犹如一个黑盒子,在发生网络问题时不方便调试找出问题原因所在,所以提供一种多节点网络系统调试方法很有必要。为了解决上述技术问题,本申请提供一种基于流的网络监测,采用了如下所述的技术方案,包括下述步骤:
对经过任意设备的任意流建立会话,通过以IP头部扩展HASH来标记所述任意流经过NAT或VPN转换后的五元组关系,来标识同一条流,所述IP头部扩展HASH指的是报文五元组可标识一个唯一的TCP/UDP,通过提取报文的五元组即能标识一个会话流量,把经过NAT或VPN设备的报文中将被更改的原报文五元组HASH值保存在修改后新报文的IP扩展头部中;
以所述任意流转发时的dmac,来标识所述任意流转发时经过所述任意设备的先后顺序;
统计和更新当前活动的会话,每间隔一定阈值时间,交换统计记录会话和上传会话,并遍历所述活动会话,active_session1用于统计记录会话,active_session2用于上传会话;
将所述任意流的会话信息存储在数据库中。
进一步的,所述对经过任意设备的任意流建立会话,通过以IP头部扩展HASH来标记所述任意流经过NAT或VPN设备转换后的五元组关系,来标识同一条流,所述IP头部扩展HASH指的是报文五元组可标识一个唯一的TCP/UDP,通过提取报文的五元组即能标识一个会话流量,把经过NAT或VPN设备的报文中将被更改的原报文五元组HASH值保存在修改后新报文的IP扩展头部中的步骤具体包括:
提取报文的五元组标识一个会话流量;
把经过NAT或VPN设备的报文中,被更改的原报文五元组HASH值保存在修改后新报文的IP扩展头部中。
进一步的,所述统计和更新当前活动的会话,每间隔一定阈值时间,交换统计记录会话和上传会话,并遍历所述活动会话的步骤之后还包括:
进行二次统计,完整地标识一个会话流量的所有信息。
进一步的,所述统计和更新当前活动的会话,每间隔一定阈值时间,交换统计记录会话和上传会话,并遍历所述活动会话,active_session1用于统计记录会话,active_session2用于上传会话的步骤具体包括:
建立第一会话指针列表和第二会话指针列表,所述第一会话指针列表用于保存活动会话,所述第二会话指针列表用于统计活动会话;
统计和更新所述第一会话指针列表和第二会话指针列表;
每间隔一定阈值时间,交换所述第一会话指针列表和所述第二会话指针列表,并遍历所述活动会话。
进一步的,所述将所述任意流的信息存储在数据库中的步骤具体包括:
建立数据库;
将每台设备统计得到的信息上传到数据库。
进一步的,所述数据库设有历史数据库,在所述将所述任意流的信息存储在数据库中的步骤之后还包括:
将关闭后的流信息存储在历史数据库中。
进一步的,将所述历史数据库中的流信息存储至区块链中。
为了解决上述技术问题,本申请还提供一种基于流的网络监测装置,采用了如下所述的技术方案,包括:
标识模块,用于对经过任意设备的任意流建立会话,通过以IP头部扩展HASH来标记所述任意流经过NAT或VPN转换后的五元组关系,来标识同一条流;
跟踪模块,用于以所述任意流转发时的dmac,来标识所述任意流转发时经过所述任意设备的先后顺序;
统计模块,用于统计和更新当前活动的会话,每间隔一定阈值时间,交换统计记录会话和上传会话,并遍历所述活动会话;
存储模块,用于将所述任意流的会话信息存储在数据库中。
为了解决上述技术问题,本申请还提供一种计算机设备,采用了如下所述的技术方案:
包括存储器和处理器,所述存储器中存储有计算机可读指令,所述处理器执行所述计算机可读指令时实现上述的基于流的网络监测方法的步骤。
为了解决上述技术问题,本申请还提供一种计算机可读存储介质,采用了如下所述的技术方案:
所述计算机可读存储介质上存储有计算机可读指令,所述计算机可读指令被处理器执行时实现上述的基于流的网络监测方法的步骤。
与现有技术相比,本申请主要有以下有益效果:通过在一个系统中的所有设备中给所有经过的流都建立会话,并以扩展hash的方法标记流经过修改之后的关系,以报文转发时的dmac作为先后顺序关系,把设备中处理的所有流的信息都记录到数据库,提供在查询时能够完整查到流的整个生命周期,可以很直观地观察流的转发情况,在问题发生的时候可以快速地判断发生问题的情况,由于还有历史数据库,还能够有效应对偶尔应用发生丢包的情况。
附图说明
为了更清楚地说明本申请中的方案,下面将对本申请描述中所需要使用的附图作一个简单介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请的基于流的网络监测方法所应用的示例性系统架构图;
图2 根据本申请的基于流的网络监测方法的一个实施例的流程图;
图3根据本申请的基于流的网络监测方法的另一个实施例的流程图;
图4是会话模块对每个会话进行统计的流程图;
图5是对会话信息进行上传的模块的流程图;
图6对数据进行二次统计和数据库记录的流程图;
图7对数据库进行一个会话流量完整查询的流程图;
图8是本申请的基于流的网络监测装置的一个实施例的结构示意图;
图9是本申请的计算机设备结构示意图。
具体实施方式
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请;本申请的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本申请的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
为了使本技术领域的人员更好地理解本申请方案,下面将结合附图,对本申请中的技术方案进行清楚、完整地描述。
如图1所示,系统架构100可以包括第一终端设备101、第二终端设备102、第三终端设备103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用第一终端设备101、第二终端设备102、第三终端设备103通过网络104与服务器105交互,以接收或发送消息等。第一终端设备101、第二终端设备102、第三终端设备103上可以安装有各种通讯客户端应用,例如网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
第一终端设备101、第二终端设备102、第三终端设备103均可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、MP3播放器( Moving Picture E基于流的网络监测perts Group Audio Layer III,动态影像专家压缩标准音频层面3 )、MP4( Moving Picture E基于流的网络监测perts Group AudioLayer IV,动态影像专家压缩标准音频层面4 )播放器、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对第一终端设备101、第二终端设备102、第三终端设备103上显示的页面提供支持的后台服务器。
需要说明的是,本申请所提供的基于流的网络监测方法一般由服务器/终端设备执行,相应地,基于流的网络监测装置一般设置于服务器/终端设备中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
继续参考图2,示出了根据本申请的基于流的网络监测的方法的一个实施例的流程图。所述的基于流的网络监测方法,包括以下步骤:
步骤S201,对经过任意设备的任意流建立会话,通过以IP头部扩展HASH来标记所述任意流经过NAT或VPN设备转换后的五元组关系,来标识同一条流。
使用报文五元组可标识一个唯一的TCP/UDP,所以通过提取报文的五元组即能标识一个会话流量。把经过NAT或VPN等设备的报文中将被更改的原报文五元组HASH值保存在修改后新报文的IP扩展头部中,能够保留报文五元组转换前后的对应关系,这样无论报文转发了多少个地方,经过多少次转换,都能找到对应关系。
在本实施例中,基于流的网络监测方法运行于其上的电子设备(例如图1所示的服务器/终端设备)可以通过有线连接方式或者无线连接方式接收基于流的网络监测请求。需要指出的是,上述无线连接方式可以包括但不限于3G/4G/5G连接、WiFi连接、蓝牙连接、WiMA基于流的网络监测连接、Zigbee连接、UWB( ultra wideband )连接、以及其他现在已知或将来开发的无线连接方式。
步骤S202,以所述任意流转发时的dmac,来标识所述任意流转发时经过所述任意设备的先后顺序。
网络上每两个相连的路由器都是通过二层互联方式的,路由器把报文转发给下一个路由器时,会修改报文dmac为下一个路由器mac,所以通过报文发出的dmac,即能确认报文的转发顺序。
步骤S203,统计和更新当前活动的会话,每间隔一定阈值时间,交换统计记录会话和上传会话,并遍历所述活动会话。在本实施例中,建立第一会话指针列表和第二会话指针列表,所述第一会话指针列表用于保存活动会话,所述第二会话指针列表用于统计活动会话。数据的转发属于数据面的操作,要求性能极高,对时延极度敏感。而对数据的统计和遍历属于控制面的操作,对性能要求较低。把数据的转发和统计区分开,所以以两个会话指针列表来指向会话,一个用于保存活动会话,一个用于统计,来避免数据统计对会话数据转发的干预。阈值时间可以设置为1s、2s,可以根据实际对时延要求的敏感度来自定义设置。统计和更新所述第一会话指针列表和第二会话指针列表,每间隔一定阈值时间,交换统计记录会话和上传会话,并遍历所述活动会话的步骤之后还包括:进行二次统计,完整地标识一个会话流量的所有信息。需要说明的是,第一会话指针指向的是由若干个活动会话指针组成的指针列表中的第一个元素所在内存位置的值,第二会话指针指向的是由若干个待上传会话指针组成的指针列表中的第一个元素所在内存位置的值;即第一会话指针和第二会话指针指向的是两个指针列表中的第一个值,这两个指针列表的功能是不相同的,但第一会话指针和第二会话指针的功能是确定的,第一会话指针指向的是活动的,第二会话指针指向的是待上传的,当这两个会话指针的值交换时,意味这两个会话指针列表的功能交换了。例如:假设当前有会话ses1,ses2,ses3(每个会话信息只有1份),然后有活动会话指针列表ap,分别这样指向ap1-->ses1,ap2-->ses2,ap3-->ses3,这时第一指针指向f1-->ap1,第二指针f2-->0,当需要交换时,f2=f1即f2-->ap1,然后f1-->0,之后再次生成指向会话的指针,会生成bp1-->ses1,bp2-->ses2,bp2-->ses3,然后使f1-->bp1;即指向真实会话的指针是不断生成的,然后第一指针是指向这些指针列表的第一个元素。
步骤S204,将所述任意流的会话信息存储在数据库中。
建立数据库;将每台设备统计得到的信息上传到数据库。常用数据库有mysql、oracle、sqlserver、sqlite等。mysql性能较好,适用于所有平台,是当前最流行的关系型数据库之一。sqlserver数据库具有扩展性和可维护性,且安全性较高,是比较全面的数据库。在本实施例中,采用sqlserver数据库来存储任意流的信息。
本申请通过在一个系统中的所有设备中给所有经过的流都建立会话,并以扩展hash的方法标记流经过修改之后的关系,以报文转发时的dmac作为先后顺序关系,把设备中处理的所有流的信息都记录到数据库,提供在查询时能够完整查到流的整个生命周期,可以很直观地观察流的转发情况,在问题发生的时候可以快速地判断发生问题的情况,由于还有历史数据库,还能够有效应对偶尔应用发生丢包的情况。
在一些可选的实现方式中,在步骤S204,将所述任意流的信息存储在数据库中之后,上述电子设备可以执行以下步骤:
将所述数据库设置历史数据库,将关闭后的流信息存储在历史数据库中。
本申请通过设置历史数据库,将关闭后的流信息存储在历史数据库中,为流的活动状态的跟踪提供了信息源,可以跟进任意流在任意设备中的流转情况。
在本实施例的一些可选的实现方式中,在步骤S204,将所述任意流的信息存储在数据库中之后,上述电子设备还可以执行以下步骤:
将所述历史数据库中的流信息存储至区块链中。
需要强调的是,为进一步保证上述流信息的私密和安全性,上述历史数据库中的流信息还可以存储于一区块链的节点中。
本申请所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
图3根据本申请的基于流的网络监测方法的另一个实施例的流程图。如图3所示,执行本申请的基于流的网络监测方法的整个系统,包含有若干台设备N(N≥2)。本实施例以7台设备为例,设备a,e,f,g为路由设备,设备b为nat设备,设备c,d为vpn设备。
active_session1用于统计记录会话,active_session2用于上传会话。每一个会话信息中的成员cur_active,用于标记本会话是否已被active_session1记录。本方法在运行之初,设置active_session1和active_session2都为空。假设当前创建了两个会话aa和bb,则aa和bb中的cur_active都会指向active_session1,然后active_session1中创建指针p1和p2,p1指向aa,p2指向bb。
间隔一定时间如1分钟后,active_session1和active_session2交换,交换后active_session1变为空,active_session2中有成员p1、p2分别指向aa和bb,然后active_session2上传会话aa和bb的信息。
此时会话aa和会话bb还没有关闭,依然处于正常通信的状态。因为active_session1和active_session2已交换,所以会话aa和会话bb中的cur_active已不等于active_session1,所以把会话aa和会话bb重新指向active_session1,并且在active_session1中生成p1,p2分别指向会话aa和会话bb;
此时会话cc和dd创建,并且成员cur_active指向active_session1,active_session1创建成员p3,p4分别指向会话cc和dd。
间隔一定时间如1分钟后,active_session1和active_session2交换,交换后active_session1变为空,active_session2中有成员p1、p2、p3、p4分别指向会话aa、bb、cc和dd,然后active_session2上传会话aa、bb、cc和dd的信息。
1、设备a,e,f,g:以设备a为例:
(1)收到报文,提到报文的五元组,查找或建立ses1。
(2)ses1->flow累加报文大小,提取IP头扩展hash1(0)。
(3)ses1->cur_active的值,如果不等于active_session1,则在active_session1创建指针指向ses1,并使ses1->cur_active=active_session1。
(4)发出报文,提取dmac,记录至next_group。
(5)路由设备不需要修改五元组,则hash2为0。
2、设备b:
(1)执行设备a步骤(1)~(4)。
(2)NAT设备需要修改五元组,使用旧五元组计算hash2(123)。
3、设备c,d:
(1)执行设备a步骤(1)~(4)。
(2)VPN设备需要封装新的IP头部,使用旧五元组计算hash2(234)。
4、每台设备的统计模块每隔一定时间阈值如一秒交换active_session1和active_session2,并遍历active_session2,把所有活动的active_session2上传到记录模块的数据库。
5、记录模块数据库根据多台设备上传过来的信息,以设备信息和会话信息为索引建立记录,以设备a收到的ses1为例,ses1经设备a发出后,先后经过了设备b,c,d,e,f,g,实际的会话信息完整如图3所示,会话关闭后信息将会由实时数据库迁移到历史数据库。
6、当需要查询流ses1的总体转发情况时,以提供的五元组作为参数,查询记录模块中的实时数据库和历史数据库,得出所有ses,如当前根据五元组查出ses1的设备a,b的ses1,由于ses1上面的hash2值不为0,则以123再次查询数据库得出设备c,d的ses2,同理再根据hash(234)再次查询得到设备e,f,g的ses3,ses4,最后根据每个查询出来的会话的next_group指向,得出如图3所示的流的总体转发情况。
本申请的基于流的网络监测方法涉及到多个设备,每台设备均设有会话模块、统计模块、转发模块、记录模块和查询模块。
其中,会话模块涉及的事务包括:
a)创建全局会话存储哈希桶global_session。
b)当设备收到一个报文时,提取五元组sip,dip,sport,dport,pro。
c)假如ip头部有扩展部分,则提取hash1值,否则hash1=0。
d)使用五元组查找global_session,如查找不到,则在global_session中建立会话,并得到会话指针session。
e)session的成员有sip, dip, sport, dport, pro, flow, hash1, hash2,state, next_group(下一跳数组)和指向当前活动会话链表的指针cur_active。
f)当cur_active!=active_session1时,从active_session1中添加一个成员,指向session,并使session的成员变量cur_active = active_session1。
g)session的flow成员累加当前报文的大小。
其中,统计模块涉及的事务包括:
a)创建活动会话链表active_session1和active_session2。
b)每隔一定的时间例如一秒钟启动对全部活动会话的遍历和上报。
c)把active_session1和active_session2交换。
d)遍历active_session2。
e)把active_session2中每一个指向的session的信息上报到记录模块。
f)清空active_session2。
其中,转发模块涉及的事务包括:
a)当设备收到一个报文时,假如设备是一个常规的路由设备,则查找路由表进行下一跳转发即可;假如设备是一个NAT设备或者VPN设备,以旧的五元组计算hash2,计算方法hash2=sip^dip^((sport<<16)|sport)+pro。
b)当设备发出一个报文时,提取报文的目标MAC地址dmac,判断dmac是否在session-> next_group中,如果存在则session-> next_group[dmac] += flow;否则session->next_group[dmac]=flow。
其中,记录模块涉及的事务是:
a)创建实时流量数据库和历史流量数据库。
b)收到会话信息时,提取上传设备的IP和MAC和会话成员变量sip,dip,sport,dport,pro,flow,hash1,hash2,state,next_group。
c)以IP+MAC+五元组+hash1+hash2为关键字查找实时数据库,是否存在,如不存在则创建一条填入IP,MAC和会话全部成员变量值。
d)如存在则更新记录上面的flow值和next_group值。
e)假如会话state的状态为关闭,则把这条记录移动到历史数据库。
其中,查询模块涉及的事务是:
a)查询一条流的数据,首先查询实时数据库,如没有再查询历史数据库,查询方式如下:提供参数五元组sip,dip,sport,dport,pro;再根据五元组查询数据库,得到所有记录1;根据查询出的记录1,查看所有记录上的hash2是否不为0,是则使用这些hash值为参数再查询数据库上hash1的值与之相等的记录2,重复该步骤,直到查询得到的记录上的hash2值全部为0;结合所有记录即为本次流的所有数据;根据全部记录上面的next_group来确定流量的先后顺序,如:
1.记录设备a上的next_group中包含了记录设备b的MAC,则流的顺序为记录设备a->记录设备b
2.记录设备a上的next_group中包含了记录设备b和记录设备c的MAC,则流的顺序为记录设备a->记录设备b/记录设备c,即流量经过设备a,一部分流量转发给了设备b,另一部分流量转发给了设备c。
查询所有记录,并确定了先后顺序后,就可以确定这条流在所有设备上的处理情况,比如:
1.这条流在经过设备a时总共处理了100M,并转发给了设备b,但设备b总共只转发出去80M,证明在设备b发生了20M流量的丢包;
2.这条流在经过设备a时总共处理了100M,并转发给设备b 30M,转发给设备C70M,设备b完整地转发了30M,但设备C只转发了60M,则表明在设备C发生了丢包10M。
图4是会话模块对每个会话进行统计的流程图。如图4所示,设备中会话模块对每个会话进行统计的流程包括步骤:
S301、收到报文。
目前一般高性能的网络报文处理设备都会使用dpdk等项目,直接从网卡提取完整报文,绕过Linux等内核协议栈的处理。
S302、提取报文中的五元组。
互联网上传输的一般都为IP协议报文,IP报文具有源IP地址、目的IP地址,而这些IP报文中,又以TCP/UDP协议报文居多,TCP/UDP协议中具备源端口和目的端口,这种IP报文中的源IP地址、目的IP地址、IP协议(TCP/UDP)、源端口、目的端口,简称报文的五元组。
S303、查询会话是否存在,如果否执行步骤S304,否则执行步骤S305。
对IP报文进行建模,一般使用报文的五元组来唯一地标识一个会话,会话可以简单地理解为两个应用之间的数据通信,比如客户端浏览器访问baidu,那么浏览器会和baidu的服务器之间建立一个TCP会话,而这个TCP会话就会具备一个唯一的五元组标识。
S304、建立会话。
假如会话不存在,则创建会话,用以标识流并且保存流的一些具体数据。
S305、提取扩展hash1。
扩展hash1指代表由旧五元组计算得出的hash值,将会保存在IP报文的扩展头部中,IP报文头部具有固定的格式,其中头部的长度是可变的,一般为20个字节,假如需要传输额外的信息,可以通过扩展IP头部的方式保存。
S306、累加flow。
本地会话表中为每个记录的会话添加一个flow元素,用来统计这个会话总共传输了多少流量。
S307、判断cur_active是否指向active_session1,如果否,则执行步骤S308,否则执行步骤S309。
active_session1用以统计记录会话,active_session2用以上传会话,所以有数据传输的会话,需要把它的指针cur_active指向active_session1,以便active_session1和active_session2交换时,能够上传本会话。
S308、acitve_session1 创建成员指向session,cur_active = active_session1。
S309、判断是否需要NAT,如果是,则执行步骤S311,否则执行步骤S310。
S310、判断是否需要VPN,如果是,则执行步骤S311,否则执行步骤S312。
S311、计算hash2。
NAT和VPN设备需要对收到的报文进行改造,改造通常是改变报文的IP地址或者端口号,这样通过报文五元组计算得到的hash值就会发生改变,所以需要把修改前的报文五元组计算得到的旧hash值保存在IP扩展头部中,以便下一个收到的设备获取这一信息。
S312、准备转发。
S313、提取dmac,记录至next_group。
S314、发出报文。
图5是对会话信息进行上传的模块的流程图。如图5所示,设备中对会话信息进行上传的模块的流程包括步骤:
S401、交换active_session1和active_session2;
S402、遍历active_session2;
S403、把每个session发至记录模块数据库;
S404、清空active_session2。
active_session1用来保存当前全部活动的会话,active_session2代表需要上传的会话信息,本方案中,每隔一定时间,需要把所有的活动的会话信息上传至数据库,为了避免上传数据时对报文处理产生的影响,所以把指向活动会话和上传活动会话分开两个指针,当需要上传的时候,直接交换两个指针,来获得较好的性能。
图6对数据进行二次统计和数据库记录的流程图。系统对数据进行二次统计和数据库记录的流程包括步骤:
S501、收到设备上传的会话信息;
S502、以设备IP和会话五元组和hash1,hash2查询实时数据库;
S503、判断是否找到记录,如果是,则执行步骤S505,否则执行步骤S504;
S504、创建新记录;
S505、更新flow和next_group;
S506、判断会话是否关闭,如果是,则执行步骤S507;
S507、把记录迁移至历史数据库。
数据库分为实时库和历史库,实时库中记录全部设备上传过来的每个会话的信息,因为五元组能够唯一地标识一个会话信息,所以设备上传过来的会话信息使用五元组计算得到的hash值就可以查询到相应的数据库记录并且更新数据,如果没有查找到则创建一条新的记录,如果会话的标识是为关闭的,则把此会话信息移到历史数据库中。
图7是对数据库进行一个会话流量完整查询的流程图。如图7所示,对数据库进行一个会话流量完整查询的流程,包括步骤:
S601、提供五元组作为参数。
S602、以五元组查询所有会话,得到记录集。
因为五元组能够唯一标识一个会话,所以提供五元组可以查询一次会话的流量,比如本地浏览器某一次打开baidu网页的行为中,产生的会话连接为sip1+dip1+tcp_protocol+port1+port2,则以这5个元素查询可以得到这个访问连接所产生的会话信息。
S603、判断记录集是否有hash2不为0的记录,如果是,则执行步骤S604,否则执行步骤S606。
因为报文经过NAT或VPN等设备后其五元组将被修改,所以会把修改前的五元组hash值保存在ip扩展头部中,在本地会话信息中,这个旧hash值记为hash2。
S604、以hash2为参数a查询数据库的hash1=a的记录。
当某个设备接收到一个报文,查看其IP扩展头部存在有hash值时,证明这个报文在上一设备中被修改了五元组,那么提取这个hash值,记为hash1,则此设备本地会话信息中的hash1值应与上一设备本地会话信息中的hash2是相等的,所以在数据库中查询的时候,可以以此进行查询。
S605、得到新记录集。
S606、整理所有记录集,按照next_group整理先后顺序。
设备在发出报文的时候,会把dmac记录在next_group中,根据每台设备自身的mac地址,结合next_group,可以得出报文的转发顺序。
S607、得出流的总体转发情况。
本申请可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机可读指令来指令相关的硬件来完成,该计算机可读指令可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
进一步参考图8,作为对上述图2或者图3所示方法的实现,本申请提供了一种基于流的网络监测装置的一个实施例,该装置实施例与图2或者图3所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图8所示,本实施例所述的基于流的网络监测装置400包括:标识模块401、跟踪模块402、统计模块403以及存储模块404。其中:
标识模块401,用于对经过任意设备的任意流建立会话,通过以IP头部扩展HASH来标记所述任意流经过NAT或VPN设备转换后的五元组关系,来标识同一条流;
跟踪模块402,用于以所述任意流转发时的dmac,来标识所述任意流转发时经过所述任意设备的先后顺序;
统计模块403,用于统计和更新当前活动的会话,每间隔一定阈值时间,交换统计记录会话和上传会话,并遍历所述活动会话;
存储模块404,用于将所述任意流的信息存储在数据库中。
采用本实施例,通过在一个系统中的所有设备中给所有经过的流都建立会话,并以扩展hash的方法标记流经过修改之后的关系,以报文转发时的dmac作为先后顺序关系,把设备中处理的所有流的信息都记录到数据库,提供在查询时能够完整查到流的整个生命周期,可以很直观地观察流的转发情况,在问题发生的时候可以快速地判断发生问题的情况,由于还有历史数据库,还能够有效应对偶尔应用发生丢包的情况。
为解决上述技术问题,本申请还提供计算机设备。具体请参阅图9,图9为本实施例计算机设备结构示意图。
所述计算机设备6包括通过系统总线相互通信连接存储器61、处理器62、网络接口63。需要指出的是,图中仅示出了具有存储器61、处理器62和网络接口63的计算机设备6,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字处理器 (Digital Signal Processor,DSP)、嵌入式设备等。
所述计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。
所述存储器61至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或D基于流的网络监测存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器61可以是所述计算机设备6的内部存储单元,例如该计算机设备6的硬盘或内存。在另一些实施例中,所述存储器61也可以是所述计算机设备6的外部存储设备,例如该计算机设备6上配备的插接式硬盘,智能存储卡(Smart Media Card, SMC),安全数字(SecureDigital, SD)卡,闪存卡(Flash Card)等。当然,所述存储器61还可以既包括所述计算机设备6的内部存储单元也包括其外部存储设备。本实施例中,所述存储器61通常用于存储安装于所述计算机设备6的操作系统和各类应用软件,例如基于流的网络监测方法的计算机可读指令等。此外,所述存储器61还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器62在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器62通常用于控制所述计算机设备6的总体操作。本实施例中,所述处理器62用于运行所述存储器61中存储的计算机可读指令或者处理数据,例如运行所述基于流的网络监测方法的计算机可读指令。
所述网络接口63可包括无线网络接口或有线网络接口,该网络接口63通常用于在所述计算机设备6与其他电子设备之间建立通信连接。
采用本实施例,通过在一个系统中的所有设备中给所有经过的流都建立会话,并以扩展hash的方法标记流经过修改之后的关系,以报文转发时的dmac作为先后顺序关系,把设备中处理的所有流的信息都记录到数据库,提供在查询时能够完整查到流的整个生命周期,可以很直观地观察流的转发情况,在问题发生的时候可以快速地判断发生问题的情况,由于还有历史数据库,还能够有效应对偶尔应用发生丢包的情况。
本申请还提供了另一种实施方式,即提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,所述计算机可读指令可被至少一个处理器执行,以使所述至少一个处理器执行如上述的基于流的网络监测方法的步骤。
采用本实施例,通过在一个系统中的所有设备中给所有经过的流都建立会话,并以扩展hash的方法标记流经过修改之后的关系,以报文转发时的dmac作为先后顺序关系,把设备中处理的所有流的信息都记录到数据库,提供在查询时能够完整查到流的整个生命周期,可以很直观地观察流的转发情况,在问题发生的时候可以快速地判断发生问题的情况,由于还有历史数据库,还能够有效应对偶尔应用发生丢包的情况。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。
显然,以上所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例,附图中给出了本申请的较佳实施例,但并不限制本申请的专利范围。本申请可以以许多不同的形式来实现,相反地,提供这些实施例的目的是使对本申请的公开内容的理解更加透彻全面。尽管参照前述实施例对本申请进行了详细的说明,对于本领域的技术人员来而言,其依然可以对前述各具体实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等效替换。凡是利用本申请说明书及附图内容所做的等效结构,直接或间接运用在其他相关的技术领域,均同理在本申请专利保护范围之内。

Claims (10)

1.一种基于流的网络监测方法,其特征在于,包括下述步骤:
对经过任意设备的任意流建立会话,通过以IP头部扩展HASH来标记所述任意流经过NAT或VPN设备转换后的五元组关系,来标识同一条流,所述IP头部扩展HASH指的是报文五元组可标识一个唯一的TCP/UDP,通过提取报文的五元组即能标识一个会话流量,把经过NAT或VPN设备的报文中将被更改的原报文五元组HASH值保存在修改后新报文的IP扩展头部中;
以所述任意流转发时的dmac,来标识所述任意流转发时经过所述任意设备的先后顺序;
统计和更新当前活动的会话,每间隔一定阈值时间,交换统计记录会话和上传会话,并遍历所述活动会话,active_session1用于统计记录会话,active_session2用于上传会话;
将所述任意流的会话信息存储在数据库中。
2.根据权利要求1所述的基于流的网络监测方法,其特征在于,所述对经过任意设备的任意流建立会话,通过以IP头部扩展HASH来标记所述任意流经过NAT或VPN转换后的五元组关系,来标识同一条流,所述IP头部扩展HASH指的是报文五元组可标识一个唯一的TCP/UDP,通过提取报文的五元组即能标识一个会话流量,把经过NAT或VPN设备的报文中将被更改的原报文五元组HASH值保存在修改后新报文的IP扩展头部中的步骤具体包括:
提取报文的五元组标识一个会话流量;
把经过NAT或VPN设备的报文中,被更改的原报文五元组HASH值保存在修改后新报文的IP扩展头部中。
3.根据权利要求1所述的基于流的网络监测方法,其特征在于,所述统计和更新当前活动的会话,每间隔一定阈值时间,交换统计记录会话和上传会话,并遍历所述活动会话,active_session1用于统计记录会话,active_session2用于上传会话的步骤之后还包括:
进行二次统计,完整地标识一个会话流量的所有信息。
4.根据权利要求1所述的基于流的网络监测方法,其特征在于,所述统计和更新当前活动的会话,每间隔一定阈值时间,交换统计记录会话和上传会话,并遍历所述活动会话,active_session1用于统计记录会话,active_session2用于上传会话的步骤具体包括:
建立第一会话指针列表和第二会话指针列表,所述第一会话指针列表用于保存活动会话,所述第二会话指针列表用于统计活动会话;
统计和更新所述第一会话指针列表和第二会话指针列表;
每间隔一定阈值时间,交换所述第一会话指针列表和所述第二会话指针列表,并遍历所述活动会话。
5.根据权利要求1所述的基于流的网络监测方法,其特征在于,所述将所述任意流的信息存储在数据库中的步骤具体包括:
建立数据库;
将每台设备统计得到的信息上传到数据库。
6.根据权利要求1至5任意一项所述的基于流的网络监测方法,其特征在于,所述数据库设有历史数据库,在所述将所述任意流的信息存储在数据库中的步骤之后还包括:
将关闭后的流信息存储在历史数据库中。
7.根据权利要求6所述的基于流的网络监测方法,其特征在于,将所述历史数据库中的流信息存储至区块链中。
8.一种基于流的网络监测装置,其特征在于,包括:
标识模块,用于对经过任意设备的任意流建立会话,通过以IP头部扩展HASH来标记所述任意流经过NAT或VPN转换后的五元组关系,来标识同一条流,所述IP头部扩展HASH指的是报文五元组可标识一个唯一的TCP/UDP,通过提取报文的五元组即能标识一个会话流量,把经过NAT或VPN设备的报文中将被更改的原报文五元组HASH值保存在修改后新报文的IP扩展头部中;
跟踪模块,用于以所述任意流转发时的dmac,来标识所述任意流转发时经过所述任意设备的先后顺序;
统计模块,用于统计和更新当前活动的会话,每间隔一定阈值时间,交换统计记录会话和上传会话,并遍历所述活动会话,active_session1用于统计记录会话,active_session2用于上传会话;
存储模块,用于将所述任意流的会话信息存储在数据库中。
9.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述处理器执行所述计算机可读指令时实现如权利要求1至7中任一项所述的基于流的网络监测方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机可读指令,所述计算机可读指令被处理器执行时实现如权利要求1至7中任一项所述的基于流的网络监测方法的步骤。
CN202111472699.8A 2021-12-06 2021-12-06 基于流的网络监测方法、装置、计算机设备及存储介质 Active CN113904950B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111472699.8A CN113904950B (zh) 2021-12-06 2021-12-06 基于流的网络监测方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111472699.8A CN113904950B (zh) 2021-12-06 2021-12-06 基于流的网络监测方法、装置、计算机设备及存储介质

Publications (2)

Publication Number Publication Date
CN113904950A CN113904950A (zh) 2022-01-07
CN113904950B true CN113904950B (zh) 2022-02-22

Family

ID=79195335

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111472699.8A Active CN113904950B (zh) 2021-12-06 2021-12-06 基于流的网络监测方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN113904950B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114531304B (zh) * 2022-04-24 2022-07-05 北京安华金和科技有限公司 一种基于数据包的会话处理方法和系统
CN116866214B (zh) * 2023-06-21 2024-04-23 武汉博易讯信息科技有限公司 一种基于统计级会话的地域网络质量分析系统

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001001272A2 (en) * 1999-06-30 2001-01-04 Apptitude, Inc. Method and apparatus for monitoring traffic in a network
CN101431440A (zh) * 2008-11-28 2009-05-13 杭州华三通信技术有限公司 一种流量监控方法和设备
CN102271079A (zh) * 2010-06-04 2011-12-07 华为技术有限公司 报文转发的方法、节点和系统
CN102882810A (zh) * 2012-10-26 2013-01-16 杭州迪普科技有限公司 一种报文快速转发方法及装置
CN104521196A (zh) * 2012-06-06 2015-04-15 瞻博网络公司 针对虚拟网络分组流的物理路径确定
CN105959254A (zh) * 2015-12-02 2016-09-21 杭州迪普科技有限公司 处理报文的方法和装置
CN106790556A (zh) * 2016-12-26 2017-05-31 深圳市风云实业有限公司 一种基于分布式系统的nat会话管理方法
CN109361609A (zh) * 2018-12-14 2019-02-19 东软集团股份有限公司 防火墙设备的报文转发方法、装置、设备及存储介质
CN109639593A (zh) * 2018-12-24 2019-04-16 南京中孚信息技术有限公司 一种深度报文分析系统的升级方法及装置
CN111049910A (zh) * 2019-12-16 2020-04-21 瑞斯康达科技发展股份有限公司 一种处理报文的方法、装置、设备及介质
WO2020233192A1 (zh) * 2019-05-17 2020-11-26 华为技术有限公司 一种为业务流提供业务服务的方法和装置
CN112333169A (zh) * 2020-10-28 2021-02-05 锐捷网络股份有限公司 一种报文处理方法、装置、电子设备及计算机可读介质
CN112995034A (zh) * 2019-12-02 2021-06-18 华为技术有限公司 业务路径确定方法和设备
CN112994961A (zh) * 2019-12-02 2021-06-18 华为技术有限公司 传输质量检测方法及装置、系统、存储介质
US11088948B1 (en) * 2020-09-25 2021-08-10 Amazon Technologies, Inc. Correlating network flows in a routing service for full-proxy network appliances
CN113285892A (zh) * 2020-02-20 2021-08-20 华为技术有限公司 报文处理系统、方法、机器可读存储介质以及程序产品

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9026784B2 (en) * 2012-01-26 2015-05-05 Mcafee, Inc. System and method for innovative management of transport layer security session tickets in a network environment
CN107979619B (zh) * 2016-10-21 2021-06-25 中兴通讯股份有限公司 一种twamp会话协商方法、客户端及服务端
CN112615854B (zh) * 2020-12-17 2022-07-12 北京天融信网络安全技术有限公司 终端准入控制方法、装置、准入服务器及存储介质
CN112804223B (zh) * 2021-01-06 2024-04-16 腾讯科技(深圳)有限公司 一种报文处理方法和装置

Patent Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001001272A2 (en) * 1999-06-30 2001-01-04 Apptitude, Inc. Method and apparatus for monitoring traffic in a network
CN101431440A (zh) * 2008-11-28 2009-05-13 杭州华三通信技术有限公司 一种流量监控方法和设备
CN102271079A (zh) * 2010-06-04 2011-12-07 华为技术有限公司 报文转发的方法、节点和系统
CN104521196A (zh) * 2012-06-06 2015-04-15 瞻博网络公司 针对虚拟网络分组流的物理路径确定
CN102882810A (zh) * 2012-10-26 2013-01-16 杭州迪普科技有限公司 一种报文快速转发方法及装置
CN105959254A (zh) * 2015-12-02 2016-09-21 杭州迪普科技有限公司 处理报文的方法和装置
CN106790556A (zh) * 2016-12-26 2017-05-31 深圳市风云实业有限公司 一种基于分布式系统的nat会话管理方法
CN109361609A (zh) * 2018-12-14 2019-02-19 东软集团股份有限公司 防火墙设备的报文转发方法、装置、设备及存储介质
CN109639593A (zh) * 2018-12-24 2019-04-16 南京中孚信息技术有限公司 一种深度报文分析系统的升级方法及装置
WO2020233192A1 (zh) * 2019-05-17 2020-11-26 华为技术有限公司 一种为业务流提供业务服务的方法和装置
CN112995034A (zh) * 2019-12-02 2021-06-18 华为技术有限公司 业务路径确定方法和设备
CN112994961A (zh) * 2019-12-02 2021-06-18 华为技术有限公司 传输质量检测方法及装置、系统、存储介质
CN111049910A (zh) * 2019-12-16 2020-04-21 瑞斯康达科技发展股份有限公司 一种处理报文的方法、装置、设备及介质
CN113285892A (zh) * 2020-02-20 2021-08-20 华为技术有限公司 报文处理系统、方法、机器可读存储介质以及程序产品
US11088948B1 (en) * 2020-09-25 2021-08-10 Amazon Technologies, Inc. Correlating network flows in a routing service for full-proxy network appliances
CN112333169A (zh) * 2020-10-28 2021-02-05 锐捷网络股份有限公司 一种报文处理方法、装置、电子设备及计算机可读介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Flow Monitoring Explained: From Packet Capture to Data Analysis With NetFlow and IPFIX;Rick Hofstede等;《IEEE Communications Surveys & Tutorials》;20140512;第16卷(第4期);全文 *
基于网络处理器的NAT-PT转换网关的性能研究;陈沫等;《系统仿真学报》;20070620(第06期);全文 *
网络流量监控系统关键模块的设计与实现;王宁;《中国优秀博硕士学位论文全文数据库(硕士)信息科技辑》;20150715;全文 *

Also Published As

Publication number Publication date
CN113904950A (zh) 2022-01-07

Similar Documents

Publication Publication Date Title
CN113904950B (zh) 基于流的网络监测方法、装置、计算机设备及存储介质
CN109376532A (zh) 基于elk日志采集分析的电力网络安全监测方法及系统
CN104253770A (zh) 实现分布式虚拟交换机系统的方法及设备
CN104904161A (zh) 预建流量管理系统组件虚拟机的弹性卸载
CN105359470A (zh) 流表管理方法以及相关设备和通信系统
CN107347062A (zh) 一种日志数据处理的方法、电子设备和可读存储介质
US20200220782A1 (en) Network topology snapshots
CN107959715A (zh) 基于无线通讯的远程终端信息识别软件系统及识别方法
CN105099916B (zh) 开放流路由交换设备及其对数据报文的处理方法
US20230042747A1 (en) Message Processing Method and Device, Storage Medium, and Electronic Device
CN105379206A (zh) 网络中的报文处理方法、转发设备和报文处理系统
CN105359472A (zh) 一种用于OpenFlow网络的数据处理方法和装置
Yang et al. Application of information transmission control strategy based on incremental community division in IoT platform
CN107707557A (zh) 匿名访问方法、装置、网络设备及可读存储介质
CN112463422A (zh) 物联网故障运维方法、装置、计算机设备及存储介质
CN106155264A (zh) 管理存储子系统的电力消耗的计算机方法与计算机系统
CN110932972B (zh) 一种数据传输方法、装置及电子设备
Yu et al. Deploying robust security in internet of things
CN106850268A (zh) 一种线性保护倒换的实现装置及方法
CN116232777B (zh) SDN-IIOT中基于统计度量的DDoS攻击检测与防御方法及相关设备
CN104219160B (zh) 生成输入参数的方法及设备
CN110708209B (zh) 虚拟机流量采集方法、装置、电子设备及存储介质
KR20220029142A (ko) Sdn 컨트롤러 서버 및 이의 sdn 기반 네트워크 트래픽 사용량 분석 방법
CN115150207B (zh) 工业网络设备识别方法、装置、终端设备及存储介质
Jain et al. Trend-based networking driven by big data telemetry for SDN and traditional networks

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
EE01 Entry into force of recordation of patent licensing contract
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20220107

Assignee: Foshan Ouxin Network Technology Co.,Ltd.

Assignor: GUANGDONG EFLYCLOUD COMPUTING Co.,Ltd.

Contract record no.: X2023980041489

Denomination of invention: Stream based network monitoring methods, devices, computer equipment, and storage media

Granted publication date: 20220222

License type: Common License

Record date: 20230911