基于RFC2544的交换机以太网测试的实现∗

2019-10-08 07:13朱全彪吴红青
计算机与数字工程 2019年9期
关键词:包率交换机以太网

朱全彪 吴红青

(1.武汉邮电科学研究院 武汉 430074)(2.烽火通信科技股份有限公司 武汉 430073)

1 引言

伴随着互联网时代[1]到来,网络通信技术[2]正快速地发展,规模不断的扩大,用于连接网络的互联设备在当今网络中扮演着越来越重要的角色[3]。网络互联设备特别是交换机作为网络的核心,其性能将对网络稳定性及网络的可靠性起关键作用。因此,网络设备良好的性能是网络正常运行的有力保障,正确评测网络互联设备是设备使用前的关键一步。RFC2544协议[4]作为网络设备的国际评测标准,它提供了一系列切实有用的测试过程和步骤,使得用户和服务运营商可以在相同标准下,对测试的实施和结果有个正确统一的认识。

目前都是利用现有的测试仪器[5~6]对网络设备进行测量,但网络设备缺少自我测量的功能。本文以三层交换机[7~8]作为载体,在其已有的硬件基础上,基于RFC2544协议开发软件评测系统,并验证系统的可行性。

2 RFC2544协议简介

RFC2544协议是由国际互联网工程任务组[9](Internet Engineering Task Force,IETF)制定的,作为评测网络互联设备性能的国际标准,其测试的性能指标得到了主流运营商和各大网络设备制造厂商的认可,已成为一个国际标准。RFC2544协议提出采用七种标准帧作为测试帧,标准帧长由大到小依次为1518字节、1280字节、1024字节、512字节、128字节、64字节、32字节,并在一定的时间内,按照一定的数目对确定的帧长进行测试,其主要测试项[10~12]有:

1)丢包率(Frame Loss Rate)是指测试交换机在不同负载条件下不能转发的数据包占总发送数据包个数的比例,反映被测交换机对负载的承受能力。不同负载指发送数据帧的速率,速率的范围一般是从吞吐量增大到线速(理论上网络中最大的传输数率),步长不超过线速的10%。

2)时延(Latency)是指被测交换机吞吐量速率范围内从发出帧到接收该帧的时间间隔,反映被测交换机处理收到的数据帧的能力。

3)吞吐量(Throughput)是指被测试交换机在丢包率为零的情况下数据帧转发的最大速率,是一个重要的评测指标,直接反映被测交换机的质量好坏。通常可以根据二分查找法原理求得被测交换机的吞吐量。

另外RFC2544协议介绍了两种基本的测试模式,以交换机为研究对象,分别介绍如下。

单机模式工作流程[13]:如图1所示,在A交换机输入配置测试命令,利用命令行启动测试,测试数据帧由交换机A产生并经发包端口发出,然后经过交换机B的转发,流回交换机B的收报端口,最后,交换机A按照协议规定的方法进行处理运算,通过命令查看测试状态和结果。

图1 单机模式

双机模式工作流程[14]:如图2所示,该模式下存在四种测试模式,分别为环回、上行、下行以及上行-下行测试模式,四种测试模式都是在由三台交换机构成的拓扑结构下进行测试。环回测试是交换机A作为客户端进行数据的发送和接收,交换机B作为中间设备,交换机C作为服务器完成数据流的环回工作。上行测试是由交换机A发送数据帧,由交换机C接收传送回来数据帧。下行测试正好相反,由交换机C发送,由交换机A来接收。上行-下行测试是上行测试和下行测试的结合。

图2 双机模式

RFC2544协议认为单机模式和双机模式都是适合的,但各有优缺点[15]。单机模式测试环境的搭建简单方便,容易控制测试精度,但很难制造足够的测试压力。而双机模式由于是三台设备同时工作,虽然容易产生测试压力,但由于进程处于三台设备中,将不可避免地造成时间同步与进程同步等问题。因为本文探讨的是交换机的以太网测试,单机结构部署灵活,且能达到测试目的,所以本文的实现选择比较经典的单机测试。

3 测试环境的搭建

3.1 硬件开发平台

本文使用的交换机为三层交换机,硬件是由以太网收发模块、FPGA模块和CPU管理模块组成,如图3所示。以太网收发模块采用博通公司生产的BCM5482芯片,该芯片具备10M/100M/1000M自协商功能,是一个双口千兆PHY芯片,每个BCM5482芯片可管理2个电口,实现以太网得数据通信,并通过SGMII接口与CPU管理模块通信。CPU管理模块选用博通芯片BCM56268,该芯片提供多个接口,包括内联到交换业务的MDIO接口、内联到ARM处理器的UART接口和连接到FPGA的同步接口等,本模块把以太网测试帧发送给BCM5482芯片,实现数据的发送,同样解析接收到的数据,将从收发模块BCM5482芯片接收到数据发送给FPGA处理。FPGA模块选用ALTERA EP4CE6E22C8N,该模块提升对数据的处理能力。

图3 硬件系统结构

3.2 系统软件开发架构

本系统软件采用C语言开发,编写好源代码在Linux主机上编译,编译好的可执行文件通过FTP工具上传给交换机并运行。整个的开发架构采用功能模块化设计,包括实时信息查询模块、参数配置模块、状态机FSM模块、API模块以及以太网帧处理模块,这样的设计降低了各模块间的耦合,便于后期维护。整个的软件系统架构如图4所示。具体到RFC2544系统软件,有如下这些重要文件。Cmd_rfc2544.c为命令行函数文件,实现参数配置、信息查询等功能。rfc2544.c、rfc2544.h为以太网帧处理函数文件,实现以太网帧处理的功能。rfc2544_sm.c、rfc2544_sm.h文件实现状态机FSM模块的功能。rfc2544_api.c为set、get函数文件,实现API模块的功能。

图4 软件系统结构

4 RFC2544的算法设计

4.1 丢包率

假设Test_rate(kbps)为发送测试包的速率,Trt_pkt为发送的测试包数量,Rcv_pkt为接收的测试包数量,N为测试次数,T为测试时间。

步骤:以Test_rate(kbps)的速率(本实验中取100M),在T时间内发送Trt_pkt个数据包到被测交换机,经过环回,接收到的数据包数量为Rcv_pkt个,记录本次测试的丢包率

如此测试N次,得到N个结果值,求得其平均值作为结果。

4.2 时延

假设Test_rate(kbps)发送测试包的速率,T1为发送时间,T2为接收时间,lRcv_pkt为上次收报数,Rcv_pkt为本次收报数,LtyDly为某次测试中的时延,AvgDly为平均时延,lAvgDly为上次的平均时延,N测试次数,T为测试时间。

步骤:第一轮测试中,以 Test_rate(kbps)速率(本实验中取10M),在T时间内发送一定的数据包到对端的交换机设备,记录发送时间T1,经过一段时间,记录到达的时间T2,在没有数据包丢失的情况下,计算本次的时延LtyDly=T2-T1。在接下的测试过程中,都会计算每次的平均时延,平均时延AvgDly的计算公式为

如此测试N次,得到N个结果值,求得其平均值作为结果。

4.3 吞吐量

假设Test_rate(kbps)为发送的测试包速率,Rcv_pkt为接收的测试包数量,Trt_pkt为发送的测试包数量,R为测试精度(本实验中取1M),N为测试次数,T为测试时间。

步骤:以Test_rate(kbps)的速率(本实验中取1000M),在T时间内发送Trt_pkt个数据包到被测交换机,经过环回,接收到的数据包数量为Rcv_pkt个,比较Trt_pkt和Rcv_pkt的大小。如果Trt_pkt=Rcv_pkt,表示数据包没有丢失,则增大交换机发送数据包的速率。如果Trt_pkt>Rcv_pkt,表示有数据包丢失,则减小交换机发送数据包的速率,然后判断两次发包速率的差值是否小于测试精度R。如果测试结果满足要求,差值小于测试精度R,则取本次发送数据包的速率作为该次测试的吞吐量值,否则进入下一轮测试直到满足精度要求。如此测试N次,得到N个结果值,求得平均值作为最终的吞吐量值。

5 测试结果分析

本文是在三层交换机的Linux平台下,设计了一种基于RFC2544标准的以太网性能测试方案,通过命令行实时获取以太网吞吐量、时延和丢包率的测试结果,并在XY坐标系中描点形成直观的折线,便于分析。

如图5所示,测试帧长度越长,丢包率反而越小。这是因为在带宽相同的情况下,帧长越长,单位时间内,被测交换机设备处理的数据包个数越少,丢包越少,即丢包率下降。

图5 丢包率测试结果

如图6所示,时延测试结果指的是平均时延,测试帧长度越长,时延越大。这是因为数据帧长越大,被测交换机设备处理时间增加,所耗费的时间越长,时延就越大。

图6 时延测试结果

如图7所示,数据帧长越小,对吞吐率的影响越大,反之,帧长越长,对吞吐率的影响越小,而且可以很明显地看到,数据帧长增加到一定的时候,吞吐率几乎没有变化了。这是因为同一带宽下,数据帧长度增大时,在相同时间内,进入被测交换机进行处理的数据包数量就会减少,而处理单个数据包的时间没有改变,所以转发速率变快,从而增加了吞吐量。

图7 吞吐率测试结果

6 结语

从以上对测试结果的分析可得,在三层交换机中设计的软件测试系统,符合RFC2544协议标准,从而验证了该软件测试系统的可行性。

猜你喜欢
包率交换机以太网
IP网络传输下的4K超高清视频质量监测分析
支持向量机的船舶网络丢包率预测数学模型
面向未来网络的白盒交换机体系综述
一种基于喷泉码的异构网络发包算法*
基于改进BBR的数据报拥塞控制协议①
局域网交换机管理IP的规划与配置方案的探讨
基于地铁交换机电源设计思考
浅谈交换机CAN基本配置
三大因素驱动创新提速以太网快步迈入“灵活”时代
三大因素驱动创新提速 以太网快步迈入“灵活”时代