前言
RFC2544是IETF制定的网络设备性能测试国际标准,专门用于评估交换机路由器等通信设备的吞吐量、丢包率、时延和背靠背四项核心指标。Spirent TestCenter是思博伦提供的网络测试平台,内置RFC2544标准测试套件,可以实现自动化测试RFC2544,并生成标准化报告,包含延迟分布、丢包率曲线等可视化数据.本文介绍使用TestCenter测试路由器产品PPPOE的RFC2544时延的详细步骤,欢迎大家关注、收藏和转发!
时延概念
时延定义
时延(Delay/Latency)指数据从网络一端传输到另一端所需的总时间,是衡量网络性能的核心指标之一。
时延概念可以参考文章《【网络基础】时延简介--一文说清楚LILO、LIFO和FIFO三种时延的区别》

时延分类
根据网络设备对时延的影响,RFC标准中定义了三种时延:转发时延(LILO,后进后出)、存储转发时延(LIFO,后进先出)和直通时延(FIFO,先进先出)
转发时延:数据帧的最后一个bit到达网络设备,到数据帧最后一个bit离开网络设备的时间间隔,简称为LILO(Last In Last Out);
存储转发时延 :数据帧的最后一个bit到达网络设备,到数据帧第一个bit离开网络设备的时间间隔,简称为LIFO(Last In First Out);
直通转发时延:数据帧的第一个bit到达网络设备,到数据帧第一个bit离开网络设备的时间间隔,简称为FIFO(First In First Out)。
RFC2544时延测试
具体测试方法如下:
时延类型:按需求选择时延类型,默认测试转发时延(LILO);交换机大部分默认是存储转发模式,如果测试直通时延务必先修改为直通模式;
负载范围:RFC要求测试负载等于吞吐量(无丢包最大转发速率)的时延;同时测试一系列负载下的时延,如100%, 90%, 80%等, ,全面评估网络产品的在不同负载下的时延;
步长调整:根据吞吐量以及要测试负载设置开始速率和结束速率,以及步长值;
帧长覆盖:需测试64、128、256、512、768、1024、1280、1518等典型字节,以评估转发小字节、大字节不同场景的丢包率;
测试时长:RFC建议每轮测试持续60秒;
测试轮次:RFC要求至少测试20次,然后计算平均值作为最终报告结果。为了快速演示,可设为1次;
测试拓扑
TestCenter的Port7接口连接到路由器的LAN口,Port7接口连到路由器的WAN口
在Port6建立PPPOE服务器,路由器向PPPOE服务器进行PPPOE拨号建立PPPOE会话
在Port7建立LAN Device模拟LAN侧的终端,与Port6上的PPPOE服务器之间互相发数据流

搭建PPPOE测试环境
参考往期文章《【手把手教】Testcenter测试PPPOE性能》搭建PPPOE测试环境
创建RFC2544测试任务
TestCenter支持通过向导创建RFC2544丢包率测试任务
1、依次点击【Tools】--【Wizards】,打开创建向导

2、TestCenter支持很多测试项,点击【Benchmarking】--【RFC 2544】,打开RFC 2544系列测试

3、RFC2544 包含吞吐性能测试、时延测试等等,勾选【Frame Loss Test】,选择吞吐性能测试

4、在【Select Port】页面,默认勾选之前使用的两个接口port6和port7,保持不变,进入下一步

5、在【Configure Endpoints】页面,默认配置了前面三个device,保持不变,进入下一步

6、在【Configure Traffic】页面,勾选【Use existing stream blocks...】,勾选创建的上行流up-2

7、在【Configure Test Options】页面,勾选【Learn every iteration】,每次测试前都学一次mac,避免因为mac老化导致测试发流不通;【Display load unit in result】选择Mbps,结果单位选择成Mbps,方便查看结果
Latency type
LILO:转发时延
LIFO:存储转发时延
FIFO:直通转发时延
根据网络设备类型和测试需求选择时延类型,默认测试转发时延。

8、在【Latency Parameters】页面
Number of trials:测试次数,按RFC2544时延测试要求,至少需要测试20次然后计算平均值作为结果,下图设成只测一次是为了缩短演示时间。
Custom:自定义要测试的字节,PPPOE可以填写74、128等典型字节(注意:测试字节与WAN类型等相关,可以参考往期文章)
Load Unit:发流负载的单位,支持按接口速率百分比和Mbps等,推荐选择Mbps;
Step:按步进方式测试;Start 1000,End 800,Step 100,表示从1000Mbps(Mbps是因为Load Unit设置成Mbps)开始测到800Mbps,步进值是100Mbps,即测试1000Mbps、900Mbps、800Mbps;
Latency Distrbution(10ns):时延区间,设置16个值作为区间边际点,点击...按钮可以修改边际值;例如前四个值设成2,4,8,16,分别代表0~20ns,20ns~40ns,40ns~8ns,80ns~160ns四个时延区间,时延测试的帧会统计到各个区间内,这样就可以详细统计时延的分布情况。需要注意的是,部分板卡不支持此功能。
设置完成后,点击【finish】完成双向行流RFC2544时延测试的任务创建;

9、在右边弹出窗口【Command sequencer】,显示当前已经创建的任务;如果没自动弹窗,可以点击【Sequencer】,点击三角符号开始测试

查看报告
在跑完第一轮测试后,会自动弹窗测试结果查看程序,可以查看过程数据和汇总数据
过程数据查询
在此页面可以看到每轮跑流测试的记录,关注最小时延、最大时延和平均时延

汇总结果查询
在此页面可以查看TestCenter的RFC2544丢包率的正式报告,可以查看每个字节的丢包率,并可以导出pdf格式的报告
如下图,选择【Test Summary】可以查看每个字节的丢包率结果

从测试结果可以发现两个点规律
1)大字节的平均时延高于小字节;因为LILO时延包括发送时延,大字节发送时延肯定比小字节的大
2)负载越高,平均时延一般更高;因为LILO时延包括排队时延,负载越高,数据存储在发送缓存区的时间越长,排队时延越大
原创不易,你的支持是我最大的动力,欢迎大家点赞,收藏,关注!
TestCenter RFC2544时延测试详解
1468

被折叠的 条评论
为什么被折叠?



