CN109188969A - 一种基于fpga的高精度发包引擎的发包方法 - Google Patents
一种基于fpga的高精度发包引擎的发包方法 Download PDFInfo
- Publication number
- CN109188969A CN109188969A CN201811027755.5A CN201811027755A CN109188969A CN 109188969 A CN109188969 A CN 109188969A CN 201811027755 A CN201811027755 A CN 201811027755A CN 109188969 A CN109188969 A CN 109188969A
- Authority
- CN
- China
- Prior art keywords
- test packet
- contract
- project
- test
- rate
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于FPGA的高精度发包引擎的发包方法,首先配置待发送测试报文的帧长FRAMESIZE、已知接口PORTRATE线性速率、测试报文速率TESTRATE、正常报文帧间隙GAP和前导码PREAMBLE;再调节所述测试报文的帧间隙X,实现所述测试报文的速率调节;然后采用二分法测量得到在没有所述测试报文丢失的情况下,所述待测设备能接受的最大速率。该方法能够满足低端设备部署于接入网时无SLA可用情况,并解决高端SWITCH芯片集成AFI引擎中测量精度不够的问题。
Description
技术领域
本发明涉及高精度发包引擎技术领域,尤其涉及一种基于FPGA的高精度发包引擎的发包方法。
背景技术
在网络服务激活并向用户发布交付前,运营商迫切希望了解当前网络的性能状态,验证配置是否正确、性能是否满足服务等级规约SLA(Service Level Agreement),以便为商业规划和业务推广提供必要的基础数据支持。因此,高可靠性和高精确度的性能测试方法对于运营商评判网络性能的优劣,显得尤为重要。在整个性能测量中高精度、线速发包引擎尤为重要。而在高性能的以太网设备中,通过FPGA(现场可编程门阵列)技术开发硬件系统可以同时兼具数据处理高速性和软件设计灵活性,并且FPGA技术优势在于对数字逻辑的高速处理,而网络数据流是典型的逻辑数字序列,因此FPGA在高性能以太网设备中被广泛应用。
现有技术一般采用SWITCH集成发包引擎,在现有少量高端SWITCH中内部已经集成AFI发包引擎,通过配置SWITCH芯片表项完成发包帧格式及相关SLA配置,直接发送到前面板端口。但上述方案中,只有少量高端SWITCH芯片集成有AFI发包引擎,但是网络环境中,低端产品大量存在而且普遍被部署在接入网中,这就导致在接入网中无SLA等级测试,造成网络隐患;同时高端SWITCH芯片集成的AFI发包引擎,精度不够,这在接入网这种低带宽应用场景中是不足的,不能够有效的验证SLA。
发明内容
本发明的目的是提供一种基于FPGA的高精度发包引擎的发包方法,该方法能够满足低端设备部署于接入网时无SLA可用情况,并解决高端SWITCH芯片集成AFI引擎中测量精度不够的问题。
本发明的目的是通过以下技术方案实现的:
一种基于FPGA的高精度发包引擎的发包方法,所述方法包括:
步骤1、配置待测设备发送的测试报文的帧长FRAMESIZE、已知接口PORTRATE线性速率、测试报文速率TESTRATE、正常报文帧间隙GAP和前导码PREAMBLE;
步骤2、基于步骤1的配置调节所述测试报文的帧间隙X,实现所述测试报文的速率调节;
步骤3、然后采用二分法测量得到在没有所述测试报文丢失的情况下,所述待测设备能接受的最大速率。
由上述本发明提供的技术方案可以看出,上述方法能够满足低端设备部署于接入网时无SLA可用情况,并解决高端SWITCH芯片集成AFI引擎中测量精度不够的问题。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
图1为本发明实施例提供的基于FPGA的高精度发包引擎的发包方法流程示意图;
图2为本发明实施例所述正常网络设备的基本组成结构图。
具体实施方式
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
下面将结合附图对本发明实施例作进一步地详细描述,如图1所示为本发明实施例提供的基于FPGA的高精度发包引擎的发包方法流程示意图,所述方法包括:
步骤1、配置待测设备发送的测试报文的帧长FRAMESIZE、已知接口PORTRATE线性速率、测试报文速率TESTRATE、正常报文帧间隙GAP(12字节)和前导码PREAMBLE(8字节);
如图2所示为本发明实施例所述正常网络设备的基本组成结构图,图2中:
SWITCH为交换芯片,以太网设备中主控CPU通过PCIE控制通道给FPGA下刷帧格式及相关SLA配置,FPGA线速发送测试报文通过SWITCH转发到eth0等前面板口完成整个测试报文的产生。
整个过程中发送测试报文格式通过命令行(CLI)高度可配置,从ETH报文源目的MAC、以太类型、VLAN TAG、TPID到IP报文源目的IP地址以及源目的端口号;实现从二层到四层报文的全链路、全场景验证。
步骤2、基于步骤1的配置调节所述测试报文的帧间隙X,实现所述测试报文的速率调节;
在该步骤中,所述测试报文的速率调节公式为:
其中,FRAMESIZE:待发送测试报文的帧长;
PORTRATE:接口线性速率;
TESTRATE:测试报文速率;
PREAMBLE:帧前导码;
GAP:正常报文帧间隙。
举例来说,假设PORTRATE=1000Mbps,FRAMESIZE=64Byte,要发送速率
TESTRATE=1000Mbps,则X=12Byte;
但是由于可调节帧间隔X在报文发送时始终为整数,因此反推发包精度,得到当PORTRATE=1000Mbps,FRAMESIZE=64Byte时,X由12变为13,测试报文速率由1000Mbps变为988.23Mbps,精度只有11.73Mbps显然不满足要求;
假设要测试报文的速率TESTRATE为999Mbps,得到帧间隙X为12.084,要达到999Mbps精度,因为
求出M为2.688,取整的M=2,则每32个包中ipg为12的为32-M=30个,ipg为13的报文为M=2个,从而达到所要求的测试报文精度。
步骤3、然后采用二分法测量得到在没有所述测试报文丢失的情况下,所述待测设备能接受的最大速率。
在该步骤中,该过程用于RFC2544吞吐量的测量,具体过程为:
首先以预设的发送速率发送一定数量的测试报文,并计算待测设备传输的测试报文,如果发送的测试报文与接收的测试报文数量相等,那么就将发送速率提高并重新测试;
如果接收测试报文少于发送测试报文,则降低发送速率重新测试;
如果接收测试报文依然少于发送测试报文,则继续降低发送速率,直到求出不丢包情况下的最大吞吐量。
举例来说,可以最高速率(1000Mbps)发送一定数量的测试报文,并计算待测设备传输的测试报文,如果发送的测试报文与接收的测试报文数量相等,那么吞吐量就是1000Mbps;
如果接收测试报文少于发送测试报文,则降低发送速率为500Mbps((1000+0)/2);
如果发送的测试报文与接收的测试报文数量相等,则提高发送速率为750Mbps((1000+500)/2);
如果接收测试报文少于发送测试报文,则降低发送速率为250Mbps((500+0)/2),以此类推,直到求出不丢包情况下的最大吞吐量。
具体实现中,该测试中设置最高测试速率1000Mbps,最低测试速率0Mbps,其中测试速率设置方法在步骤二中详述。
综上所述,本发明实施例所提供的方法能够满足低端设备部署于接入网时无SLA可用情况,并解决高端SWITCH芯片集成AFI引擎中测量精度不够的问题。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
Claims (3)
1.一种基于FPGA的高精度发包引擎的发包方法,其特征在于,所述方法包括:
步骤1、配置待测设备发送的测试报文的帧长FRAMESIZE、已知接口PORTRATE线性速率、测试报文速率TESTRATE、正常报文帧间隙GAP和前导码PREAMBLE;
步骤2、基于步骤1的配置调节所述测试报文的帧间隙X,实现所述测试报文的速率调节;
步骤3、然后采用二分法测量得到在没有所述测试报文丢失的情况下,所述待测设备能接受的最大速率。
2.根据权利要求1所述基于FPGA的高精度发包引擎的发包方法,其特征在于,所述测试报文的速率调节公式为:
其中,FRAMESIZE:待发送测试报文的帧长;
PORTRATE:接口线性速率;
TESTRATE:测试报文速率;
PREAMBLE:帧前导码;
GAP:正常报文帧间隙。
3.根据权利要求1所述基于FPGA的高精度发包引擎的发包方法,其特征在于,所述步骤3的过程为:
首先以预设的发送速率发送一定数量的测试报文,并计算待测设备传输的测试报文,如果发送的测试报文与接收的测试报文数量相等,那么就将发送速率提高并重新测试;
如果接收测试报文少于发送测试报文,则降低发送速率重新测试;
如果接收测试报文依然少于发送测试报文,则继续降低发送速率,直到求出不丢包情况下的最大吞吐量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811027755.5A CN109188969A (zh) | 2018-09-04 | 2018-09-04 | 一种基于fpga的高精度发包引擎的发包方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811027755.5A CN109188969A (zh) | 2018-09-04 | 2018-09-04 | 一种基于fpga的高精度发包引擎的发包方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109188969A true CN109188969A (zh) | 2019-01-11 |
Family
ID=64914384
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811027755.5A Pending CN109188969A (zh) | 2018-09-04 | 2018-09-04 | 一种基于fpga的高精度发包引擎的发包方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109188969A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080002685A1 (en) * | 2006-06-30 | 2008-01-03 | Samsung Electronics Co., Ltd | Packet switch equipment and bandwidth control method using the same |
CN102904772A (zh) * | 2012-09-26 | 2013-01-30 | 中兴通讯股份有限公司 | 一种网络设备实现吞吐量测试的方法及装置 |
CN103428716A (zh) * | 2012-05-17 | 2013-12-04 | 中兴通讯股份有限公司 | 动态调整ptp报文速率的方法及装置 |
CN103973582A (zh) * | 2014-05-28 | 2014-08-06 | 重庆重邮汇测通信技术有限公司 | 测试数据流发送流量控制方法及系统 |
CN107360056A (zh) * | 2017-06-30 | 2017-11-17 | 中国航空无线电电子研究所 | 基于rfc2544的afdx性能测试方法 |
-
2018
- 2018-09-04 CN CN201811027755.5A patent/CN109188969A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080002685A1 (en) * | 2006-06-30 | 2008-01-03 | Samsung Electronics Co., Ltd | Packet switch equipment and bandwidth control method using the same |
CN103428716A (zh) * | 2012-05-17 | 2013-12-04 | 中兴通讯股份有限公司 | 动态调整ptp报文速率的方法及装置 |
CN102904772A (zh) * | 2012-09-26 | 2013-01-30 | 中兴通讯股份有限公司 | 一种网络设备实现吞吐量测试的方法及装置 |
CN103973582A (zh) * | 2014-05-28 | 2014-08-06 | 重庆重邮汇测通信技术有限公司 | 测试数据流发送流量控制方法及系统 |
CN107360056A (zh) * | 2017-06-30 | 2017-11-17 | 中国航空无线电电子研究所 | 基于rfc2544的afdx性能测试方法 |
Non-Patent Citations (1)
Title |
---|
祝宗奎 罗正华: "以太网帧间隙在工程测量中的应用", 《成都大学学报(自然科学版)》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11296807B2 (en) | Techniques to operate a time division multiplexing(TDM) media access control (MAC) | |
CN111934802A (zh) | 用于多通道端口的高精度时间戳记 | |
US8964739B1 (en) | Self-healing data transmission system and method to achieve deterministic and lower latency | |
US11296924B2 (en) | Communication method, communications device, and storage medium | |
US20150036510A1 (en) | Method and device for measuring ethernet performance | |
US20150078376A1 (en) | Packet sharing data transmission system and relay to lower latency | |
CA3178575A1 (en) | Method, device, and system for determining required bandwidth for data stream transmission | |
CN105634840A (zh) | 一种丢包的测量方法及装置 | |
US20140036672A1 (en) | Calculating credit for controlling data frame transmission | |
CN108521343A (zh) | 一种oam报文的处理方法及装置 | |
WO2015038949A1 (en) | High payload data packet transmission system and relay to lower latency | |
JP5719438B2 (ja) | Cpriリンクのエラー・コード・モニター方法、システム及び装置 | |
CN111193635A (zh) | 测量递送等待时间的方法、系统和计算机可读介质 | |
CN110290020B (zh) | 一种以太网测试仪表高精度流量百分比产生方法和装置 | |
US9118566B1 (en) | Methods and apparatus of time stamping for multi-lane protocols | |
CN109188969A (zh) | 一种基于fpga的高精度发包引擎的发包方法 | |
CN107181697B (zh) | 一种链路负载均衡方法及装置 | |
CN103441818B (zh) | 一种数据传输错误的检测方法及装置 | |
CN103973582A (zh) | 测试数据流发送流量控制方法及系统 | |
Plakalovic et al. | High-speed FPGA-based Ethernet traffic generator | |
CN109819471B (zh) | 结合定向天线的WiFi可用带宽估计方法 | |
Yi et al. | Design and fpga implementation of ten gigabit ethernet mac controller | |
CN107835109B (zh) | 一种测试软件定义的分组传送网网络的方法及系统 | |
Boncagni et al. | Switched ethernet in synchronized distributed control systems using RTnet | |
EP1758306A1 (en) | The method and the device for transmitting the control signal of the resilient packet ring media access control |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190111 |