CN112039720B - 1~100%流量精确可控流量发生装置及流量生成方法 - Google Patents
1~100%流量精确可控流量发生装置及流量生成方法 Download PDFInfo
- Publication number
- CN112039720B CN112039720B CN202010756655.7A CN202010756655A CN112039720B CN 112039720 B CN112039720 B CN 112039720B CN 202010756655 A CN202010756655 A CN 202010756655A CN 112039720 B CN112039720 B CN 112039720B
- Authority
- CN
- China
- Prior art keywords
- flow
- data
- generator
- packet
- software
- 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
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
-
- 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
- H04L47/20—Traffic policing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9063—Intermediate storage in different physical parts of a node or terminal
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明属于数据流量控制技术领域,特别涉及一种1~100%流量精确可控流量发生装置及流量生成方法,该装置包括六个流量发生器,每个流量发生器的流量可软件定义为1%、2%、5%、10%、20%、50%和100%的流量中任一值;六个缓冲器,每一个流量发生器后面都对应设置一个缓冲器,用于缓存前级流量发生器生成的数据流量;一个调度器,用于对六个流量发生器生成的数据流量进行轮询调度,将六条数据流的流量组合汇聚输出总流量。本发明能够实现对数据流量的精确控制,数据流量可精确控制为1~100%内任意流量。
Description
技术领域
本发明属于数据流量控制技术领域,特别涉及一种1~100%流量精确可控流量发生装置及流量生成方法。
背景技术
流量发生器是一种可以产生指定协议类型、指定长度、指定速率的数据流量的工具,主要功能是通过数据包的构造,生成数据流,产生真实的流量激励,达到测试数据流量处理设备的目的。流量发生器在交换机、路由器、协议处理器等产品的开发和测试过程中,有着举足轻重的作用。
目前国内外用于实验室测试的流量发生器大多都是软件实现,由于CPU执行指令是串行执行,存在任务调度和中断等不确定性,软件发包难以达到全线速要求,特别对短帧的处理严重受限。即使采用实时系统,其发送速度也将受制于CPU的最高频率。
基于硬件的流量发生器则不具备上述缺点。目前国内外在此方面都有研究。比如美国Absolute Analysis公司为高速串行协议开发和测试人员提供的完整协议分析工具和协议测试工具中的流量发生器,就是基于硬件架构实现。
发明内容
针对现有流量发生器可以实现包间隔的精确控制,但是无法实现数据流量的精确控制的问题,本发明提出了一种1~100%流量精确可控流量发生装置及流量生成方法,能够实现对数据流量的精确控制,数据流量可精确控制为1~100%内任意流量。
为解决上述技术问题,本发明采用以下的技术方案:
本发明提供了一种1~100%流量精确可控流量发生装置,包括:
六个流量发生器,每个流量发生器的流量可软件定义为1%、2%、5%、10%、20%、50%和100%的流量中任一值;
六个缓冲器,每一个流量发生器后面都对应设置一个缓冲器,用于缓存前级流量发生器生成的数据流量;
一个调度器,用于对六个流量发生器生成的数据流量进行轮询调度,将六条数据流的流量组合汇聚输出总流量。
进一步地,所述流量发生器采用基于FPGA的软件定义流量发生器。
进一步地,所述基于FPGA的软件定义流量发生器通过配置接口对包长、包间隔、包数量的软件定义,对生成数据包的协议类型以及包中关键字段的软件定义。
进一步地,假设包间隔为I,包长为L,数据流量为满流量的P%,三者之间满足如下关系:
L/(L+I)=P/100 (1)
由公式(1)推出:
I=(100/P-1)*L (2)
由公式(2)知,产生P%的流量时,包间隔I与包长L之间要满足公式(2)的关系;
由公式(2)发现:
当P=1时:I=99L;当P=2时:I=49L;当P=5时:I=19L;当P=10时:I=9L;当P=20时:I=4L;当P=50时:I=L;当P=100时:I=0;
故当P=1、2、5、10、20、50、100时,I与L为整数倍关系,而且这些整数倍关系在硬件逻辑中容易实现;
所以,只需要六条数据流,每条数据流的流量配置成1%、2%、5%、10%、20%、50%和100%流量中的任一流量,通过将六条数据流的流量组合汇聚,构成1~100%之间的任意流量。
进一步地,所述缓冲器在后级调度器没有反压的情况下,该缓冲器不应该出现反压阻塞前级流量发生器的情况。
进一步地,所述调度器实现多流数据的无缝衔接,处理后级反压并向前级缓冲器传递,在前后级之间作为桥梁枢纽。
本发明还提供了一种基于上述的1~100%流量精确可控流量发生装置的流量生成方法,包含以下步骤:
控制六个流量发生器生成数据流,每个流量发生器的数据流量可软件定义为1%、2%、5%、10%、20%、50%和100%的流量中任一值;
每一个流量发生器后面都对应设置一个缓冲器缓存前级流量发生器生成的数据流量;
调度器对六个流量发生器生成的数据流量进行轮询调度,将六条数据流的流量组合汇聚输出总流量。
与现有技术相比,本发明具有以下优点:
现有流量发生器可以实现包间隔的精确控制,但是无法实现数据流量的精确控制,本发明通过控制六条数据流的流量,每条数据流的流量都可以配置成1%、2%、5%、10%、20%、50%和100%的流量中任一值,每条数据流均可独立控制,都可个性化软件定义,然后将六条数据流的流量进行组合汇聚,进而实现对总流量的精确控制,总流量可精确控制为1~100%内任意流量,流量控制灵活、精确。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例的1~100%流量精确可控流量发生装置的工作原理图;
图2是本发明实施例的1~100%流量精确可控流量发生装置的流量生成方法的流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
首先定义数据流量的概念:数据流量是指流量发生器单位时间内输出的数据量,单位为比特/秒(bits/s)。假如某流量发生器的最大数据流量为100Gbits/s(数据包之间无间隔,即背靠背输出),由于测试需要,要求产生10%的数据流量,则输出的数据流量应为10Gbits/s。
如图1所示,本实施例提出了一种1~100%流量精确可控流量发生装置,包括六个流量发生器、六个缓冲器和一个调度器。
我们假设包间隔为I(Interval),包长为L(Length),数据流量为满流量的P%(Percent,取值范围为1~100),则三者之间满足如下关系:
L/(L+I)=P/100 (1)
由公式(1)可推出:
I=(100/P-1)*L (2)
由公式(2)可知,产生P%的流量时,包间隔I与包长L之间要满足公式(2)的关系。
通过观察公式(2),我们不难发现,当P在1~100之间取值时,大多数情况下I与L之间并不是精确的整数倍关系,比如,当P=3时,I=(100/3-1)*L,I约等于32*L;当P=26时,I=(100/26-1)*L,I约等于3*L;当P=28时,I=(100/28-1)*L,I约等于3*L;以上约等于考虑到了包间隔I只能取整数,这样会导致产生的流量大多数情况下不精确等于设定值P%,会有不小的误差;而且公式(2)中既包含除法又包含乘法,导致公式(2)很难在硬件逻辑中实现。
经过上述分析,用硬件逻辑直接实现公式(2)很难,且达不到精确控制流量的目的;再次仔细观察公式(2),我们还发现:
当P=1时:I=99L;当P=2时:I=49L;当P=5时:I=19L;当P=10时:I=9L;当P=20时:I=4L;当P=50时:I=L;当P=100时:I=0;
故当P=1、2、5、10、20、50、100时,I与L之间为精确的整数倍关系,而且这些整数倍关系很容易在硬件逻辑中实现;比如P=1时,I=99L=(64+32+2+1)L,其中64L、32L、2L都可以通过左移L很方便的实现。
1、2、5、10、20、50、100这几个数字如同日常使用的人民币面值一样,可以用这几个数字构成1~100之间的任意值。所以,只需要六条数据流,每条数据流的流量配置成1%、2%、5%、10%、20%、50%和100%这几个流量中的任一流量,通过将这六条数据流的流量组合汇聚,可以精确实现1~100%之间的任意流量;比如,如果要实现88%的数据流量,可以配置六条数据流的流量分别为1%、2%、5%、10%、20%、50%的流量,然后组合汇聚输出,最终得到数据流的流量就是精确的88%的流量。如果要实现100%的数据流量时,只需要开启一条数据流,并配置其流量为100%的流量即可。
在图1中,Pkt_gen_*为基于FPGA的软件定义流量发生器,该流量发生器通过配置接口既可以实现对包长、包间隔、包数量的软件定义,还可以实现对生成数据包的协议类型以及包中关键字段(用户比较关心的字段)的软件定义,每个流量发生器的流量可软件定义为1%、2%、5%、10%、20%、50%和100%的流量中任一值。流量发生器的起停也可通过软件进行控制。
每一个软件定义流量发生器后面都有一个相应的缓冲器Buffer,在调度器调度输出其它数据流的流量时,该Buffer用于缓存前级流量发生器生成的数据流量。在后级调度器没有反压的情况下,Buffer不应该出现反压阻塞前级流量发生器的情况。
调度器rr用于对六个流量发生器生成的数据流量进行轮询调度,将六条数据流的流量组合汇聚输出总流量,该调度器可实现多流数据的无缝衔接,处理后级反压并向前级缓冲器传递,在前后级之间起到桥梁枢纽作用。
如图2所示,本实施例还提出了一种1~100%流量精确可控流量发生装置的流量生成方法,包含以下步骤:
步骤S201,控制六个流量发生器生成数据流,每个流量发生器的数据流量可软件定义为1%、2%、5%、10%、20%、50%和100%的流量中任一值;
步骤S202,每一个流量发生器后面都对应设置一个缓冲器缓存前级流量发生器生成的数据流量;
步骤S203,调度器对六个流量发生器生成的数据流量进行轮询调度,将六条数据流的流量组合汇聚输出总流量,进而实现对总流量的精确控制,总流量可精确控制为1~100%内任意流量。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (6)
1.一种1~100%流量精确可控流量发生装置,其特征在于,包括:
六个流量发生器,每个流量发生器的流量可软件定义为1%、2%、5%、10%、20%、50%和100%的流量中任一值,流量发生器的起停也可通过软件进行控制;
六个缓冲器,每一个流量发生器后面都对应设置一个缓冲器,用于缓存前级流量发生器生成的数据流量;
一个调度器,用于对六个流量发生器生成的数据流量进行轮询调度,将六条数据流的流量组合汇聚输出总流量;
假设包间隔为I,包长为L,数据流量为满流量的P%,三者之间满足如下关系:
L/(L+I)=P/100 (1)
由公式(1)推出:
I=(100/P-1)*L (2)
由公式(2)知,产生P%的流量时,包间隔I与包长L之间要满足公式(2)的关系;
由公式(2)发现:
当P=1时:I=99L;当P=2时:I=49L;当P=5时:I=19L;当P=10时:I=9L;当P=20时:I=4L;当P=50时:I=L;当P=100时:I=0;
故当P=1、2、5、10、20、50、100时,I与L为整数倍关系,而且这些整数倍关系在硬件逻辑中容易实现;
所以,只需要六条数据流,每条数据流的流量配置成1%、2%、5%、10%、20%、50%和100%流量中的任一流量,通过将六条数据流的流量组合汇聚,构成1~100%之间的任意流量。
2.根据权利要求1所述的1~100%流量精确可控流量发生装置,其特征在于,所述流量发生器采用基于FPGA的软件定义流量发生器。
3.根据权利要求2所述的1~100%流量精确可控流量发生装置,其特征在于,所述基于FPGA的软件定义流量发生器通过配置接口对包长、包间隔和包数量进行软件定义,对生成数据包的协议类型以及包中关键字段进行软件定义。
4.根据权利要求1所述的1~100%流量精确可控流量发生装置,其特征在于,所述缓冲器在后级调度器没有反压的情况下,该缓冲器不应该出现反压阻塞前级流量发生器的情况。
5.根据权利要求1所述的1~100%流量精确可控流量发生装置,其特征在于,所述调度器实现多流数据的无缝衔接,处理后级反压并向前级缓冲器传递,在前后级之间作为桥梁枢纽。
6.一种基于权利要求1至5任一项所述的1~100%流量精确可控流量发生装置的流量生成方法,其特征在于,包含以下步骤:
步骤1,控制六个流量发生器生成数据流,每个流量发生器的数据流量可软件定义为1%、2%、5%、10%、20%、50%和100%的流量中任一值,流量发生器的起停也可通过软件进行控制;
假设包间隔为I,包长为L,数据流量为满流量的P%,三者之间满足如下关系:
L/(L+I)=P/100 (1)
由公式(1)推出:
I=(100/P-1)*L (2)
由公式(2)知,产生P%的流量时,包间隔I与包长L之间要满足公式(2)的关系;
由公式(2)发现:
当P=1时:I=99L;当P=2时:I=49L;当P=5时:I=19L;当P=10时:I=9L;当P=20时:I=4L;当P=50时:I=L;当P=100时:I=0;
故当P=1、2、5、10、20、50、100时,I与L为整数倍关系,而且这些整数倍关系在硬件逻辑中容易实现;
所以,只需要六条数据流,每条数据流的流量配置成1%、2%、5%、10%、20%、50%和100%流量中的任一流量,通过将六条数据流的流量组合汇聚,构成1~100%之间的任意流量;
步骤2,每一个流量发生器后面都对应设置一个缓冲器缓存前级流量发生器生成的数据流量;
步骤3,调度器对六个流量发生器生成的数据流量进行轮询调度,将六条数据流的流量组合汇聚输出总流量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010756655.7A CN112039720B (zh) | 2020-07-31 | 2020-07-31 | 1~100%流量精确可控流量发生装置及流量生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010756655.7A CN112039720B (zh) | 2020-07-31 | 2020-07-31 | 1~100%流量精确可控流量发生装置及流量生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112039720A CN112039720A (zh) | 2020-12-04 |
CN112039720B true CN112039720B (zh) | 2022-03-25 |
Family
ID=73583724
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010756655.7A Active CN112039720B (zh) | 2020-07-31 | 2020-07-31 | 1~100%流量精确可控流量发生装置及流量生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112039720B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106789660A (zh) * | 2017-03-31 | 2017-05-31 | 中国科学技术大学苏州研究院 | 软件定义网络中QoS可感知的流量管理方法 |
CN108183917A (zh) * | 2018-01-16 | 2018-06-19 | 中国人民解放军国防科技大学 | 基于软件定义网络的DDoS攻击跨层协同检测方法 |
CN108900360A (zh) * | 2018-08-10 | 2018-11-27 | 哈尔滨工业大学(威海) | 一种基于多节点流量回放的网络背景生成系统及方法 |
CN110336756A (zh) * | 2019-07-05 | 2019-10-15 | 西安电子科技大学 | 具有端口汇聚功能的Crossbar流量反压控制方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB9909436D0 (en) * | 1999-04-23 | 1999-06-23 | Pact | Routing device |
US7729347B2 (en) * | 2006-05-31 | 2010-06-01 | Zvi Rosberg | Method and apparatus for fair flow control and congestion avoidance supporting multiple QoS class requirements |
CN106507492B (zh) * | 2016-11-08 | 2019-07-26 | 重庆邮电大学 | 基于优先级分配的工业无线网络确定性传输调度方法 |
CN106452923B (zh) * | 2016-11-30 | 2019-07-19 | 重庆邮电大学 | 一种面向内容中心网络的流量模拟产生系统及方法 |
US10873532B2 (en) * | 2018-07-31 | 2020-12-22 | Barefoot Networks, Inc. | Flow control visibility |
-
2020
- 2020-07-31 CN CN202010756655.7A patent/CN112039720B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106789660A (zh) * | 2017-03-31 | 2017-05-31 | 中国科学技术大学苏州研究院 | 软件定义网络中QoS可感知的流量管理方法 |
CN108183917A (zh) * | 2018-01-16 | 2018-06-19 | 中国人民解放军国防科技大学 | 基于软件定义网络的DDoS攻击跨层协同检测方法 |
CN108900360A (zh) * | 2018-08-10 | 2018-11-27 | 哈尔滨工业大学(威海) | 一种基于多节点流量回放的网络背景生成系统及方法 |
CN110336756A (zh) * | 2019-07-05 | 2019-10-15 | 西安电子科技大学 | 具有端口汇聚功能的Crossbar流量反压控制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112039720A (zh) | 2020-12-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Liu et al. | Fluid Simulation of Large Scale Networks: Issues and Tradeoffs. | |
Jelenkovic et al. | Asymptotic results for multiplexing subexponential on-off processes | |
CN108880946B (zh) | 一种广域监测系统主站与pmu数据通信时延的估算方法 | |
Schulzrinne et al. | Loss correlation for queues with bursty input streams | |
Bhargava et al. | Queueing analysis of continuous bit-stream transport in packet networks | |
CN105009540A (zh) | 一种加扰方法及加扰装置 | |
Morozov | The tightness in the ergodic analysis of regenerative queueing processes | |
Cidon et al. | Analysis of a correlated queue in a communication system | |
Brockett et al. | Stochastic analysis for fluid queueing systems | |
CN112039720B (zh) | 1~100%流量精确可控流量发生装置及流量生成方法 | |
Bruneel | Packet delay and queue length for statistical multiplexers with low-speed access lines | |
Cheng et al. | A finite buffer two class queue with different scheduling and push-out schemes | |
Burman et al. | Asymptotic analysis of a queueing model with bursty traffic | |
Peshkova et al. | On comparison of multiserver systems with multicomponent mixture distributions | |
Ramasamy et al. | Discrete-time Geo/G/2 queue under a serial and parallel queue disciplines | |
CN110247854A (zh) | 一种多等级业务调度方法和调度系统以及调度控制器 | |
Jung et al. | Analysis of a finite-buffer polling system with exhaustive service based on virtual buffering | |
Liu et al. | Recursive formula for the moments of queue length in the M/M/1 queue | |
Bruneel | Some remarks on discrete-time buffers with correlated arrivals | |
Yu et al. | A model reduction method for traffic described by MMPP with unknown rate limit | |
Kamoun | Performance evaluation of a queuing system with correlated packet-trains and server interruption | |
Chang et al. | The effect of prioritization on the behavior of a concentrator under an accept, otherwise reject strategy | |
CN218336049U (zh) | 一种基于量子保密通信的网络架构 | |
Wang et al. | Design and implementation of traffic scheduling algorithm for time-sensitive network | |
Wang et al. | A leftover service curve approach to analyze demultiplexing in queueing 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 |