一、简介

RFC 2889为LAN交换设备的基准测试提供了方法学,它将RFC 2544中为网络互联设备基准测试所定义的方法学扩展到了交换设备,提供了交换机转发性能(Forwarding Performance)、拥塞控制(Congestion Control)、延迟(Latency)、地址处理(Address Handling)和错误过滤(Error Filtering)等基准测试的方法说明。除去备忘录状态、介绍、要求以及后面的安全机制、参考文献等辅助性说明外,RFC 2889的核心内容分别为测试设置、帧格式与长度和基准测试3大部分。

基准测试是RFC 2889的最主要内容,它从测试目标、参数设置、测试过程、测量方法和测试报告格式等方面,详细描述了下列10个针对局域网交换设备的基准测试:

· 全网状互连条件下的吞吐量、丢帧率和转发速率(Fully Meshed Throughput, Frame Loss and Forwarding Rates);

· 部分网状互连条件下的一对多/多对一(Partially Meshed One-To-Many/Many-To-One);

· 部分互连的多个设备(Partially Meshed Multiple Devices);

· 部分网状互连条件下的单向通信流量(Partially Meshed Unidirectional Traffic);

· 拥塞控制(Congestion Control);

· 转发压力和最大转发速率(Forward Pressure Maximum Forwarding Rate);

· 地址缓冲容量(Address Caching Capacity);

· 地址学习速率(Address Learning Rate);

· 错误帧过滤(Errored Frame Filtering);

· 广播帧转发和时延(Broadcast Frame Forwarding and Latency)。

接下来将为您演示使用BigTao-V网络测试仪进行广播帧转发测试(吞吐量测试)

广播帧转发概述

广播帧转发测试

· 主要测试交换设备的吞吐量;

· 和RFC2544吞吐量测试类似, 只是报文类型是广播。

吞吐量介绍

· 吞吐量, 吞吐率, throughput;

· 在RFC1242中提出;

· 它评估网络设备性能的首要指标。

吞吐量定义

· 在设备没有丢帧的情况下, 最大的转发速率;

· 通常使用每秒钟通过的最大的数据包数(PPS/FPS)或者bit数来衡量(bit/s, Kbit/s, Mbit/s,Gbit/s…) 。

 

广播帧转发测试吞吐量

广播报文

· 目的MAC为全FF(FF:FF:FF:FF:FF:FF);

· 交换机收到一个广播报文以后, 会从 所有UP的端口(同一VLAN)发送出去。

为什么测试广播吞吐量

· 二层网络中, 存在大量的广播报文;

· 交换机作为二层网络的主力设备, 需要处理大量的广播报文;

· 测量交换机对广播报文的转发吞吐量, 具有非常重要的意义。

测试方法

· 二分法自动查找。

广播帧转发吞吐量帧长选择

帧长选择

· RFC 2889建议7个值;

· 分别为64,128,256,512,1024,1280和1518字节。

为啥选择这7个值

· 最小64Bytes: 以太网的特性(CSMA/CD)决定;

· 128,256,512,1024,1280 都是设备处理最容易出错的值;

· 最大1518Bytes:以太网发展初期, 受当时技术的限制。

广播帧转发(吞吐量) 二分法查找

吞吐量

· 二分法自动查找。

查找思路

· 在测试中以一定速率发送一定数量的帧,并统计DUT转发的帧;

· 如果发送的帧与接收的帧数量相等,那么就将发送速率提高并重新测试;

· 如果接收帧少于发送帧, 则需要降低发送速率重新测试;

· RFC2544使用二分法自动查找吞吐量。

查找算法: 二分法

· 初始速率:第一次测试使用的速率;

· 最小速率:当测试不通过且当前速率等于最小速率时,不再降速测试 ;

· 最大速率:当测试通过且当前速率等于最大速率时,不再增速测试 ;

· 速率精度:当相邻两次速率小于精度, 测试就停止。

广播帧转发吞吐量二分法举例

· 第1次测试仪以50%的速率发送frame

· 如果没有丢包, 第2次以75%的速率发送frame

75=50+(100-50)/2

· 如果有丢包, 第3次以62.5的速率发送frame

62.5=50+(75-50)/2

· 如果没有丢包, 第4次以68.75的速率发送frame

68.75=62.5+(75-62.5)/2

二、测试说明

广播帧转发测试 拓扑

端口数量

· 1个发送端口

· 1个或多个接收端口

· 本例中有3个接收端口

拓扑说明

· DUT的4个端口在同一个VLAN

· 测试仪Port1发送广播报文

· DUT将广播报文复制3份,从3个端口发送出去

· 测试仪Port/2/3/4接收广播报文

DUT配置

以思科C3750交换机为例

· 为了防止干扰, 将4个与测试仪相连的端口配置在一个VLAN里;

· 其它保持默认。

!

interface GigabitEthernet1/0/1

switchport access vlan 20

switchport mode access

!

interface GigabitEthernet1/0/2

switchport access vlan 20

switchport mode access

!

interface GigabitEthernet1/0/3

switchport access vlan 20

switchport mode access

!

interface GigabitEthernet1/0/4

switchport access vlan 20

switchport mode access

!

广播帧转发测试 流程

  1. 添加机框
  2. 占用端口
  3. 选择向导
  4. 选择广播帧转发测试
  5. 配置接口
  6. 配置流量
  7. 配置测试参数
  8. 配置广播帧转发参数
  9. 运行测试
  10. 查看结果
  11. 导出报告

准备工作: 添加机框

准备工作: 预约端口

三、测试配置

选择向导

选择RFC2889向导

选择广播帧转发测试

测试项目

· 选择广播帧转发测试

选择端口

选择端口

· 选择参与测试的端口

配置接口

· 默认无接口

· 选择添加接口

向导配置接口

· 一步一步根据需求填充

向导配置接口: VLAN等

· 根据场景决定是否添加

· 本例中不需要添加

配置MAC地址

· 可选 配置

· 默认即可, 也可以修改

向导接口配置结果

配置结果

· 创建4个Interface, 每个Port各一个

· 对于二层交换机来说, 只关注MAC地址

选择接口

· 刚才配置的接口

· MAC/IP等 可修改

选择流量模型

根据左侧拓扑选择

· 源端口为Port1

· 目的端口为Port2/3/4

配置 测试参数

时间

· 开始发送流量之前等待2秒

· 停止发送流量之后等待10秒

结果保存路径

· 默认路径

· 可以自己指定

时延类型

· 本测试项目不关注

启用学习

· 是否进行二层学习

· 本例发送广播报文, 不需要学习

配置 广播帧转发 参数

广播帧转发 关键参数说明

测试时间

· 默认60秒

测试次数

· 默认1次

· 可以配置多次, 取平均值

默认取7个特殊字节来测试

最小速率:当测试不通过且当前速率等于最小速率时,不再降速测试

最大速率:当测试通过且当前速率等于最大速率时,不再增速测试

初始速率:第一次测试使用的速率

速率精度:当相邻两次速率小于精度, 测试就停止

可丢包百分比:当丢包率小于阈值时, 也记为测试通过

自动生成Smart Script

Smart Scripts

· 根据配置自动生成Smart Scripts

· 从右侧自动弹出

开始测试

点击Start按钮 自动 开始测试

四、测试报告

测试进度查看

· 消息界面里, 实时显示当前测试的字节

· 预估进度

自动弹出Result Analyzer

结果分析

· 专业软件

· 自动弹出

手工打开

· 自动安装

· 打开结果

Result Analyzer结果分析

最理想结果

· 无任何丢包

· 吞吐量所有接收端口的理论值之和

· 本例3个接收端口, 则结果为3000M为理想值

结果查看

· 点击RFC2889 汇总模板

· Forwarding Load(FPS)一列就代表广播转发速率

· 也可以查看后面的Mbps结果, 更直观

结果分析

· 3个接收端口, 所以速率为单个端口3倍

· 3个端口都是使用二分法自动查找的结果

测试报告导出

导出格式

· PDF

· HTML

结果定制

· 默认会保存所有测试内容

· 太过详细

· 可以选择汇总模板, 只保存汇总信息

测试报告内容

打开测试报告

· 查看广播帧转发速率: Forwarding Load(FPS)列

· 配置信息: 包含当前的测试配置信息

以上就是使用BigTao-V网络测试仪进行广播帧转发测试(吞吐量测试)全部流程。

最新文章

  1. echo命令详解
  2. ytu 1050:写一个函数,使给定的一个二维数组(3×3)转置,即行列互换(水题)
  3. iOS中app启动闪退的原因
  4. 苹果应用 Windows 申请 普通证书 和Push 证书 Hbuilder 个推(2)
  5. 【转】移动端viewport的使用
  6. hihocoder #1058 Combination Lock
  7. VS2010 Notes
  8. Maven —— 如何设置HTTP代理
  9. 对象不支持“attachEvent”属性或方法的解决办法
  10. HDU-4742 Pinball Game 3D 三维LIS
  11. POJ 1840 Eps 解题报告(哈希)
  12. python+sqlite3
  13. [转帖]FPGA--Vivado
  14. SQL Server 内存不足引起的并发症
  15. 页面布局之BFC 微微有点坑
  16. 【Android基础】Activity之间进行参数传递的三种方式
  17. cookie读取、写入、删除
  18. Go 处理yaml类型的配置文件
  19. .NET ORM框架 SqlSugar4.0 功能快速预览【开源】
  20. Hibernate框架:CRM练习--保存客户

热门文章

  1. Centos下安装Scala(1)
  2. Windows和Linux(Centos7)下安装Nginx
  3. Collection的使用
  4. HttpServletRequest接口详解
  5. 领域驱动设计-CQRS
  6. golang中的map
  7. Linux深入探索01-stty与键盘信号
  8. zabbix-server3.4安装
  9. 使用Hot Chocolate和.NET 6构建GraphQL应用(3) —— 实现Query基础功能
  10. How to find out which process is listening upon a port