CN113438183B - 一种网络框架的出向流控方法、装置、设备及存储介质 - Google Patents

一种网络框架的出向流控方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN113438183B
CN113438183B CN202110726833.6A CN202110726833A CN113438183B CN 113438183 B CN113438183 B CN 113438183B CN 202110726833 A CN202110726833 A CN 202110726833A CN 113438183 B CN113438183 B CN 113438183B
Authority
CN
China
Prior art keywords
data
flow control
target data
network
token bucket
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
CN202110726833.6A
Other languages
English (en)
Other versions
CN113438183A (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.)
Softcom Power Information Technology Group Co ltd
Original Assignee
Softcom Power Information Technology Group 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 Softcom Power Information Technology Group Co ltd filed Critical Softcom Power Information Technology Group Co ltd
Priority to CN202110726833.6A priority Critical patent/CN113438183B/zh
Publication of CN113438183A publication Critical patent/CN113438183A/zh
Application granted granted Critical
Publication of CN113438183B publication Critical patent/CN113438183B/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/215Flow control; Congestion control using token-bucket
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control

Landscapes

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

Abstract

本发明实施例公开了一种网络框架的出向流控方法,包括:获取流经设定分类模块的出向数据;确定出向数据中与设定的数据流规则匹配的目标数据,控制目标数据进入流控节点;根据设定令牌桶算法对进入流控节点的目标数据进行处理。本发明实施例提供的网络框架的出向流控方法,通过在网络框架的数据流出方向设置流控节点,并利用令牌桶算法,实现了网络框架数据流出方向的流量控制,从而可以控制当前网络用户下载速度,解决了传统网络框架上只能做出上行的服务质量控制策略,只能限制用户的上传速度而不能控制用户下载速度的问题。

Description

一种网络框架的出向流控方法、装置、设备及存储介质
技术领域
本发明涉及网络技术领域,尤其涉及一种网络框架的出向流控方法、装置、设备及存储介质。
背景技术
向量包处理(Vector packet Processing,VPP)是一套可扩展的开源框架平台软件,其能提供网络交换及路由功能。VPP具有高性能、模块化、灵活性及可扩展性,并具有丰富的网络功能。VPP运行在Linux的用户态,与数据平面开发套件(Data Plane DevelopmentKit,DPDK)技术结合,其能支持当前主流的网卡设备。
现有的VPP流控解决方案是入向流控方式,该流控方法能控制VPP的网络用户的上行带宽,当我们需要控制某个网络用户的下行带宽时,我们需要找到该网络用户的下载源,对该下载源的入向进行流速控制,当用户有多个下载源的时候,控制该用户的下载将变得非常困难,因此需要对VPP的流控管理进行优化。
发明内容
本发明实施例提供了一种网络框架的出向流控方法、装置、设备及存储介质,可以实现网络框架的出向流控,解决传统网络框架上只能做出上行的服务质量控制策略,只能限制用户的上传速度而不能控制用户下载速度的问题。
第一方面,本发明实施例提供了一种网络框架的出向流控方法,包括:
获取流经设定分类模块的出向数据;
确定所述出向数据中与设定的数据流规则匹配的目标数据,控制所述目标数据进入流控节点;
根据设定令牌桶算法对进入所述流控节点的所述目标数据进行处理。
进一步地,所述流控节点位于所述网络框架的数据流出方向。
进一步地,确定所述出向数据中与设定的数据流规则匹配的目标数据,控制所述目标数据进入流控节点,包括:
获取所述出向数据中的第一网络信息与所述数据流规则中的第二网络信息;
如果所述第一网络信息与所述第二网络信息一致,则将所述第一网络信息对应的出向数据确定为目标数据,控制所述目标数据进入所述流控节点。
进一步地,所述网络信息包括IP地址与网络协议。
进一步地,根据设定令牌桶算法对进入所述流控节点的所述目标数据进行处理,包括:
确定令牌桶中的当前令牌数以及当前进入所述流控节点的所述目标数据负载的字节数;
将所述字节数与所述当前令牌数进行比较,若所述字节数小于所述当前令牌数,则转发所述目标数据给用户。
进一步地,确定令牌桶中的当前令牌数,包括:
按照设定速率在所述令牌桶中加入令牌,直到令牌桶中的令牌数等于设定可存放的最大令牌数;
当数据到达所述流控节点时,确定当前时刻令牌桶中的令牌数并作为所述当前令牌数。
进一步地,将所述字节数与所述当前令牌数进行比较,若所述字节数小于所述当前令牌数,则转发所述目标数据给用户之后,还包括:
在所述令牌桶中删除与所述字节数对应数量的令牌。
第二方面,本发明实施例还提供了一种网络框架的出向流控装置,包括:
出向数据获取模块,用于获取流经设定分类模块的出向数据;
目标数据确定模块,用于确定所述出向数据中与设定的数据流规则匹配的目标数据,控制所述目标数据进入流控节点;
目标数据处理模块,用于根据设定令牌桶算法对进入所述流控节点的所述目标数据进行处理。
可选的,目标数据确定模块还用于:
获取所述出向数据中的第一网络信息与所述数据流规则中的第二网络信息;
如果所述第一网络信息与所述第二网络信息一致,则将所述第一网络信息对应的出向数据确定为目标数据,控制所述目标数据进入所述流控节点。
可选的,目标数据处理模块还用于:
确定令牌桶中的当前令牌数以及当前进入所述流控节点的所述目标数据负载的字节数;
将所述字节数与所述当前令牌数进行比较,若所述字节数小于所述当前令牌数,则转发所述目标数据给用户。
可选的,目标数据处理模块还用于:
按照设定速率在所述令牌桶中加入令牌,直到令牌桶中的令牌数等于设定可存放的最大令牌数;
当数据到达所述流控节点时,确定当前时刻令牌桶中的令牌数并作为所述当前令牌数。
可选的,装置还包括令牌删除模块,用于在所述令牌桶中删除与所述字节数对应数量的令牌。
第三方面,本发明实施例还提供了一种网络框架的出向流控设备,该设备包括:
包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本发明实施例任一所述的网络框架的出向流控方法。
第四方面,本发明实施例还提供了一种网络框架的出向流控存储介质,其上存储有计算机程序,该程序被处理装置执行时实现如本发明实施例任一所述的网络框架的出向流控方法。
本发明实施例首先获取流经设定分类模块的出向数据,然后确定出向数据中与设定的数据流规则匹配的目标数据,控制目标数据进入流控节点,最后根据设定令牌桶算法对进入流控节点的目标数据进行处理。本发明实施例提供的网络框架的出向流控方法,通过在网络框架的数据流出方向设置流控节点,并利用令牌桶算法,实现了网络框架数据流出方向的流量控制,从而可以控制当前网络用户下载速度,解决了传统网络框架上只能做出上行的服务质量控制策略,只能限制用户的上传速度而不能控制用户下载速度的问题。
附图说明
图1是本发明实施例一中的一种网络框架的出向流控方法流程图;
图2是本发明实施例二中的一种网络框架的出向流控装置结构示意图;
图3是本发明实施例三中的一种计算机设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的一种网络框架的出向流控方法流程图,本实施例可适用于对网络框架的数据流出方向进行流量控制的情况,该方法可以由网络框架的出向流控装置来执行,该装置可由硬件和/或软件组成,并一般可集成在具有网络框架的出向流控功能的设备中,该设备可以是服务器或服务器集群等电子设备。如图1所示,具体包括如下步骤:
步骤110、获取流经设定分类模块的出向数据。
其中,分类模块可以是网络框架中用于对流经的数据进行匹配过滤的模块,可选的,网络框架可以是向量包处理(Vector packet Processing,VPP)平台,分类模块可以是VPP上的classify模块。
可选的,对于VPP平台来说,出向数据可以先流经classify模块,经过该模块的匹配判断后再进行下一节点进行处理。流经classify模块的数据可以是数据包的形式,该模块可以将符合要求的数据包转发给下一节点。
步骤120、确定出向数据中与设定的数据流规则匹配的目标数据,控制目标数据进入流控节点。
其中,数据流规则可以是根据用户需求设定的具体的数据包匹配规则,目标数据可以是符合该数据流规则的数据,流控节点可以是在VPP框架下添加的数据处理插件模块,用于控制出向数据。进一步地,流控节点位于网络框架的数据流出方向。
在本实施例中,确定出向数据中与设定的数据流规则匹配的目标数据,控制目标数据进入流控节点的方式可以是:获取出向数据中的第一网络信息与数据流规则中的第二网络信息;如果第一网络信息与第二网络信息一致,则将第一网络信息对应的出向数据确定为目标数据,控制目标数据进入流控节点。
其中,网络信息包括IP地址与网络协议。
可选的,classify模块可以根据设定的数据流规则对流经的数据包进行相应的匹配判断,使符合要求的数据包进入下一步的出向流控节点(QOS_OUTPUT_NODE)。具体的数据流规则的设定方式可以是:根据用户需求确定具体的IP地址及具体的网络协议,并指定对应的mask模板,将mask模板绑定到指定的网络接口上,并标明为出向以区别传统的入向流控规则。
进一步地,数据流经classify模块时,classify模块可以获取数据中的IP地址与网络协议,然后与数据流规则中设定的IP地址与网络协议进行匹配,如果数据的IP地址与网络协议与数据流规则中设定的IP地址与网络协议一致,则可以将数据可以作为目标数据进入流控节点(QOS_OUTPUT_NODE)。
步骤130、根据设定令牌桶算法对进入流控节点的目标数据进行处理。
其中,令牌桶算法是网络流量整形(Traffic Shaping)和速率限制(RateLimiting)中最常使用的一种算法。典型情况下,令牌桶算法用来控制发送到网络上的数据的数目,并允许突发数据的发送。通过添加流速控制策略,指定控制流速及对应的令牌数,依据令牌桶算法可以将流速的限制转换成桶的令牌及定时流入桶内的令牌数。
令牌桶算法的基本过程如下:
假如用户配置的平均发送速率为r,则每隔1/r秒一个令牌被加入到桶中;
假设桶最多可以存发b个令牌。如果令牌到达时令牌桶已经满了,那么这个令牌会被丢弃;
当一个n个字节的数据包到达时,就从令牌桶中删除n个令牌,并且数据包被发送到网络;
如果令牌桶中少于n个令牌,那么不会删除令牌,并且认为这个数据包在流量限制之外;
算法允许最长b个字节的突发,但从长期运行结果看,数据包的速率被限制成常量r。对于在流量限制外的数据包可以以不同的方式处理:
它们可以被丢弃;
它们可以排放在队列中以便当令牌桶中累积了足够多的令牌时再传输;
它们可以继续发送,但需要做特殊标记,网络过载的时候将这些特殊标记的包丢弃。
在本实施例中,根据设定令牌桶算法对进入流控节点的目标数据进行处理的方式可以是:确定令牌桶中的当前令牌数以及当前进入流控节点的目标数据负载的字节数;将字节数与当前令牌数进行比较,若字节数小于当前令牌数,则转发目标数据给用户。
可选的,当目标数据进入流控节点时,可以依照令牌桶的算法计算当前令牌数,并由流控节点计算数据包负载的字节数,当数据包的字节数小于令牌桶中的令牌数时转发该数据包,如果字节数大于令牌桶中的令牌数,根据相关规则处理该数据包:丢弃、排队等待令牌积累或者继续发送,但做上特殊标记。具体的处理规则可以根据用户需求由用户设定。
进一步地,确定令牌桶中的当前令牌数的方式可以是:按照设定速率在令牌桶中加入令牌,直到令牌桶中的令牌数等于设定可存放的最大令牌数;当数据到达流控节点时,确定当前时刻令牌桶中的令牌数并作为当前令牌数。
可选的,根据令牌桶算法,假如用户配置的平均发送速率为r,则每隔1/r秒一个令牌被加入桶中,假设桶最多可以存放b个令牌,如果令牌到达时令牌桶令牌满了,那么这个令牌会被丢弃。当数据到达流控节点时,可以根据令牌桶算法统计此时令牌桶中的令牌数,作为当前令牌数。
在本实施例中,将字节数与所述当前令牌数进行比较,若字节数小于当前令牌数,则转发目标数据给用户之后,还可以:在令牌桶中删除与字节数对应数量的令牌。
可选的,QOS_OUTPUT_NODE节点计算数据包负载的字节数,假设数据包的字节数为n,当一个n个字节的数据包到达时,若当前令牌数大于n,则从令牌桶中删除n个令牌,并且数据包被发送给用户。
本发明实施例首先获取流经设定分类模块的出向数据,然后确定出向数据中与设定的数据流规则匹配的目标数据,控制目标数据进入流控节点,最后根据设定令牌桶算法对进入流控节点的目标数据进行处理。本发明实施例提供的网络框架的出向流控方法,通过在网络框架的数据流出方向设置流控节点,并利用令牌桶算法,实现了网络框架数据流出方向的流量控制,从而可以控制当前网络用户下载速度,解决了传统网络框架上只能做出上行的服务质量控制策略,只能限制用户的上传速度而不能控制用户下载速度的问题。
实施例二
图2为本发明实施例二提供的一种网络框架的出向流控装置结构示意图。如图2所示,该装置包括:出向数据获取模块210,目标数据确定模块220,目标数据处理模块230。
出向数据获取模块210,用于获取流经设定分类模块的出向数据。
目标数据确定模块220,用于确定出向数据中与设定的数据流规则匹配的目标数据,控制目标数据进入流控节点。
可选的,目标数据确定模块220还用于:获取出向数据中的第一网络信息与数据流规则中的第二网络信息;如果第一网络信息与第二网络信息一致,则将第一网络信息对应的出向数据确定为目标数据,控制目标数据进入流控节点。
目标数据处理模块230,用于根据设定令牌桶算法对进入流控节点的目标数据进行处理。
可选的,目标数据处理模块230还用于:确定令牌桶中的当前令牌数以及当前进入流控节点的目标数据负载的字节数;将字节数与当前令牌数进行比较,若字节数小于当前令牌数,则转发目标数据给用户。
可选的,目标数据处理模块230还用于:按照设定速率在令牌桶中加入令牌,直到令牌桶中的令牌数等于设定可存放的最大令牌数;当数据到达流控节点时,确定当前时刻令牌桶中的令牌数并作为当前令牌数。
可选的,装置还包括令牌删除模块,用于在令牌桶中删除与字节数对应数量的令牌。
上述装置可执行本公开前述所有实施例所提供的方法,具备执行上述方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本公开前述所有实施例所提供的方法。
实施例三
图3为本发明实施例三提供的一种计算机设备的结构示意图。图3示出了适于用来实现本发明实施方式的计算机设备312的框图。图3显示的计算机设备312仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。设备312是典型的网络框架的出向流控计算设备。
如图3所示,计算机设备312以通用计算设备的形式表现。计算机设备312的组件可以包括但不限于:一个或者多个处理器316,存储装置328,连接不同系统组件(包括存储装置328和处理器316)的总线318。
总线318表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry StandardArchitecture,ISA)总线,微通道体系结构(Micro Channel Architecture,MCA)总线,增强型ISA总线、视频电子标准协会(Video Electronics Standards Association,VESA)局域总线以及外围组件互连(Peripheral Component Interconnect,PCI)总线。
计算机设备312典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备312访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
存储装置328可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(Random Access Memory,RAM)330和/或高速缓存存储器332。计算机设备312可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统334可以用于读写不可移动的、非易失性磁介质(图3未显示,通常称为“硬盘驱动器”)。尽管图3中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如只读光盘(Compact Disc-Read Only Memory,CD-ROM)、数字视盘(Digital Video Disc-Read Only Memory,DVD-ROM)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线318相连。存储装置328可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块326的程序336,可以存储在例如存储装置328中,这样的程序模块326包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块326通常执行本发明所描述的实施例中的功能和/或方法。
计算机设备312也可以与一个或多个外部设备314(例如键盘、指向设备、摄像头、显示器324等)通信,还可与一个或者多个使得用户能与该计算机设备312交互的设备通信,和/或与使得该计算机设备312能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口322进行。并且,计算机设备312还可以通过网络适配器320与一个或者多个网络(例如局域网(Local AreaNetwork,LAN),广域网Wide Area Network,WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器320通过总线318与计算机设备312的其它模块通信。应当明白,尽管图中未示出,可以结合计算机设备312使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、磁盘阵列(Redundant Arrays of IndependentDisks,RAID)系统、磁带驱动器以及数据备份存储系统等。
处理器316通过运行存储在存储装置328中的程序,从而执行各种功能应用以及数据处理,例如实现本发明上述实施例所提供的网络框架的出向流控方法。
实施例四
本发明实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该程序被处理装置执行时实现如本发明实施例中的网络框架的出向流控方法。本发明上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
在一些实施方式中,客户端、服务器可以利用诸如HTTP(HyperText TransferProtocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”),广域网(“WAN”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:获取流经设定分类模块的出向数据;确定出向数据中与设定的数据流规则匹配的目标数据,控制目标数据进入流控节点;根据设定令牌桶算法对进入流控节点的目标数据进行处理。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言,诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络连接到用户计算机,包括局域网(LAN)或广域网(WAN),或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (8)

1.一种用于VPP向量包处理网络框架的出向流控方法,其特征在于,包括:
获取流经设定classify分类模块的出向数据;
获取所述出向数据中的第一网络信息与数据流规则中的第二网络信息,如果所述第一网络信息与所述第二网络信息一致,则将所述第一网络信息对应的出向数据确定为目标数据,控制所述目标数据进入QOS_OUTPUT_NODE流控节点,所述QOS_OUTPUT_NODE流控节点位于所述网络框架的数据流出方向;
根据设定令牌桶算法对进入所述QOS_OUTPUT_NODE流控节点的所述目标数据进行处理。
2.根据权利要求1所述的方法,其特征在于,所述网络信息包括IP地址与网络协议。
3.根据权利要求1所述的方法,其特征在于,根据设定令牌桶算法对进入所述QOS_OUTPUT_NODE流控节点的所述目标数据进行处理,包括:
确定令牌桶中的当前令牌数以及当前进入所述QOS_OUTPUT_NODE流控节点的所述目标数据负载的字节数;
将所述字节数与所述当前令牌数进行比较,若所述字节数小于所述当前令牌数,则转发所述目标数据给用户。
4.根据权利要求3所述的方法,其特征在于,确定令牌桶中的当前令牌数,包括:
按照设定速率在所述令牌桶中加入令牌,直到令牌桶中的令牌数等于设定可存放的最大令牌数;
当数据到达所述QOS_OUTPUT_NODE流控节点时,确定当前时刻令牌桶中的令牌数并作为所述当前令牌数。
5.根据权利要求3所述的方法,其特征在于,将所述字节数与所述当前令牌数进行比较,若所述字节数小于所述当前令牌数,则转发所述目标数据给用户之后,还包括:
在所述令牌桶中删除与所述字节数对应数量的令牌。
6.一种用于VPP向量包处理网络框架的出向流控装置,其特征在于,包括:
出向数据获取模块,用于获取流经设定classify分类模块的出向数据;
目标数据确定模块,用于确定所述出向数据中与设定的数据流规则匹配的目标数据,控制所述目标数据进入QOS_OUTPUT_NODE流控节点;所述目标数据确定模块还用于:获取所述出向数据中的第一网络信息与所述数据流规则中的第二网络信息,如果所述第一网络信息与所述第二网络信息一致,则将所述第一网络信息对应的出向数据确定为目标数据,控制所述目标数据进入所述QOS_OUTPUT_NODE流控节点,所述QOS_OUTPUT_NODE流控节点位于所述网络框架的数据流出方向;
目标数据处理模块,用于根据设定令牌桶算法对进入所述QOS_OUTPUT_NODE流控节点的所述目标数据进行处理。
7.一种计算机设备,其特征在于,所述设备包括:包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如权利要求1-5任一所述的用于VPP向量包处理网络框架的出向流控方法。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理装置执行时实现如权利要求1-5中任一所述的用于VPP向量包处理网络框架的出向流控方法。
CN202110726833.6A 2021-06-29 2021-06-29 一种网络框架的出向流控方法、装置、设备及存储介质 Active CN113438183B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110726833.6A CN113438183B (zh) 2021-06-29 2021-06-29 一种网络框架的出向流控方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110726833.6A CN113438183B (zh) 2021-06-29 2021-06-29 一种网络框架的出向流控方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN113438183A CN113438183A (zh) 2021-09-24
CN113438183B true CN113438183B (zh) 2022-12-02

Family

ID=77757804

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110726833.6A Active CN113438183B (zh) 2021-06-29 2021-06-29 一种网络框架的出向流控方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN113438183B (zh)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100459589C (zh) * 2006-12-04 2009-02-04 杭州华三通信技术有限公司 流量监管方法及流量监管设备
CN103152277A (zh) * 2011-12-07 2013-06-12 北京网康科技有限公司 一种提高网络流量控制性能的方法及其设备
US20180241669A1 (en) * 2017-02-22 2018-08-23 Cisco Technology, Inc. System and method to facilitate an information-centric networking socket and fast in-network authentication
US10909067B2 (en) * 2018-08-07 2021-02-02 Futurewei Technologies, Inc. Multi-node zero-copy mechanism for packet data processing
CN112600684B (zh) * 2019-09-17 2023-05-05 华为云计算技术有限公司 云业务的带宽管理及配置方法及相关装置
CN111371697A (zh) * 2020-03-16 2020-07-03 神州数码融信软件有限公司 面向系统间访问的精确流量控制方法及装置
CN112491789B (zh) * 2020-10-20 2022-12-27 苏州浪潮智能科技有限公司 一种基于OpenStack框架的虚拟防火墙构建方法及存储介质

Also Published As

Publication number Publication date
CN113438183A (zh) 2021-09-24

Similar Documents

Publication Publication Date Title
CN110662085B (zh) 消息发送方法、装置、可读介质及电子设备
US7263103B2 (en) Receive queue descriptor pool
CN110022264B (zh) 控制网络拥塞的方法、接入设备和计算机可读存储介质
US9014005B2 (en) Low-latency lossless switch fabric for use in a data center
CN104734964A (zh) 报文处理方法、节点及系统
US11502967B2 (en) Methods and apparatuses for packet scheduling for software-defined networking in edge computing environment
US10178033B2 (en) System and method for efficient traffic shaping and quota enforcement in a cluster environment
US10880220B1 (en) Credit mechanisms for packet policing
WO2019161758A1 (en) Service function chaining congestion tracking
CN113364804B (zh) 一种流量数据的处理方法和装置
US20220263681A1 (en) Methods and systems for transmitting and receiving data packets through a bonded connection
US10021031B1 (en) Pipelined packet policer
CN113438183B (zh) 一种网络框架的出向流控方法、装置、设备及存储介质
US9232028B2 (en) Parallelizing packet classification and processing engines
US10348634B2 (en) Technologies for tracking out-of-order network packets
US11153216B2 (en) Streaming network
US10915479B1 (en) Hardware acceleration for uploading/downloading databases
CN115604191A (zh) 业务流量控制方法、装置、电子设备及可读存储介质
CN111030842A (zh) 调整加速策略的方法、系统、设备及存储介质
US10805223B1 (en) Systems and methods for handling data congestion for shared buffer switches with dynamic thresholding
US10776185B2 (en) Messaging software management for network devices supporting hardware tag matching
CN112822125B (zh) 一种业务流的传输方法、装置、设备及存储介质
US20170324670A1 (en) Management node, terminal, communication system, communication method, and program storage medium
CN118095351A (zh) 层归一化计算的协同处理装置及方法
CN114448728A (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