一、简介

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网络测试仪进行MAC地址学习速率测试。

 

二、MAC地址学习速率概述

定义

· 交换机能够学习MAC地址的最大速率

为什么需要测试

· 交换设备根据MAC地址转发frame

· 如果在MAC表中没有找到相应的MAC表项, 就会进行flooding

· MAC地址学习速率越大, 单位时间能正常转发的frame就越多

主要考察

· 交换机的CPU处理能力

测试方法

· 二分法 自动查找最大速率

地址学习 原理

学习原理

· 交换机收到报文, 记录报文的源MAC

· 在交换机上建立 源MAC和收到报文端口的对应表(MAC Table)

· 收到报文, 根据报文目的MAC查找MAC Table, 从特定端口转发

· MAC Table里找不到表项, 就会Flooding

地址学习 举例

· PC1向PC2发送报文

· 交换机从端口G1/0/1收到PC1发送的报文, 根据报文的目的MAC(PC2 MAC)查找 MAC地址表

· 如果找到PC2 MAC对应表项, 则只从G1/0/2转发出去

· 如果找不到PC2 MAC对应表项, 则从所有UP的端口上(G1/0/2, G/10/3), 将报文Flooding出去

· PC3也能收到PC1发送给PC2的报文

三、测试拓扑

至少三个端口

· 测试端口

· 学习端口

· 镜像端口

测试原理

原理

· 利用交换设备对未知单播进行Flooding的特性

概述

· 交换设备收到Frame, 根据目的MAC查找MAC table中

· 如果找到MAC-接口 映射表项, 则只从这个接口发送出去

· 如果找不到MAC-接口 映射表项, 会从所有UP的接口发送(Flooding)出去

测试过程: MAC地址学习

· 测试仪 学习端口(Port2)发送学习报文

· 测试仪端口Port2模拟10000个主机, 向测试仪端口Port1模拟的一个主机 以5000个/秒的速率 发送10000个Frames

· 这些Frame的源MAC是变化的, 目的MAC是测试端口模拟的1个主机

· DUT的学习端口收到Frame以后, 尽最大速率建立MAC-端口(学习端口)的映射关系

测试过程: 发送测试报文

· 测试仪 测试端口(Port1)发送测试报文

· 测试仪端口Port1模拟1个主机, 向测试仪端口Port2模拟的10000个主机发送Frames

· 这10000个Frames的源MAC是Port1模拟的1个主机, 目的MAC是Port2模拟的10000个主机

· 交换机 收到Frame以后, 根据目的MAC查找 MAC-端口的映射关系

测试过程: 镜像端口观测

测试仪 镜像端口(Port3)未收到流量

· 本次测试成功

· 交换机可以处理5000个/秒的学习速率, 能够建立全部的表项

· 下轮测试 交换机需要加大发送速率

测试仪 镜像端口(Port3)收到流量

· 本次测试失败

· 网络中有报文被Flooding, 5000个/秒的速率超过交换机的处理能力, MAC有部分没有建立 映射表项

· 下轮测试 交换机需要减少发送速率

地址学习速率 测试流程

添加机框→预约端口→选择向导→选择地址学习速率→配置接口→配置流量→配置测试参数→配置地址学习速率参数→运行测试→查看结果→导出报告

准备工作: 添加机框

准备工作: 预约端口

Switch配置

以思科C3750为例

· 将3个与测试仪相连的端口配置在一个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

!

四、测试配置

选择向导

选择RFC2889向导

选择地址学习速率测试

测试项目

· 选择 地址学习速率测试

选择端口

选择端口

· 选择参与测试的端口

配置接口

配置接口

· 默认无接口

· 选择添加接口

向导配置接口

向导配置接口

· 一步一步根据需求填充

 

向导配置接口: VLAN等

VLAN

· 根据场景决定是否添加

· 本例中不需要添加

配置MAC地址

MAC地址

· 可选 配置

· 默认即可, 也可以修改

向导接口配置结果

配置结果

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

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

选择接口

· 刚才配置的接口

· MAC/IP等 可修改

选择流量模型

根据左侧拓扑选择

· 测试端口(源)

· 学习端口(目的)

· 镜像端口(监测)

添加流量

· 源-目的

选择测试参数

时间

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

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

结果保存路径

· 默认路径

· 可以自己指定

时延

· 结果中 显示时延

· 类型根据Switch转发类型选择

· 本项测试不关注

配置 地址学习速率 参数

 

 

关键参数: 二分法

二分相关

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

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

· 初始值: 第一次测试时的发送速率

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

老化时间

· 必须比交换机的老化时间略大

· 交换机一般默认为300秒, 可修改

· 通常需要修改, 不然测试时间非常长

 

 

关键参数: 其它

测试次数

· 默认1次

· 可测试多次, 取平均值

 

地址容量

· 不能大于 设备的实际 MAC地址容量

· 如不知道, 可设置小一点

 

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

 

自动生成Smart Script

· 根据配置自动生成Smart Scripts

· 从右侧自动弹出

开始测试

点击Start按钮 自动 开始测试

五、测试报告

测试进度查看

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

· 预测花费时间

自动弹出Result Analyzer

结果分析

· 专业软件

· 自动弹出

手工打开

· 自动安装

· 打开结果

Result Analyzer结果分析

结果分析

· 点击 汇总测试

· Learning Rate一列就代表 MAC地址学习速率

测试报告导出

导出格式

· PDF

· HTML

结果定制

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

· 太过详细

· 可以选择汇总模板

· 只保存汇总信息

测试报告内容

打开测试报告

· 查看MAC地址学习速率(learning Rate列)

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

RFC2889MAC地址学习速率——网络测试仪实操的更多相关文章

  1. 配置IPv6地址跳变——网络测试仪实操

    第一部分:什么是IPv6地址跳变? IPv6地址跳变是指IPv6地址进行一系列有规则的变化,Renix支持对IPv6地址进行递增.递减.列表和随机变化. 如当用户想要仿真大量的源IPv6地址变化的数据 ...

  2. RFC2889广播时延测试——网络测试仪实操

    一.简介 RFC 2889为LAN交换设备的基准测试提供了方法学,它将RFC 2544中为网络互联设备基准测试所定义的方法学扩展到了交换设备,提供了交换机转发性能(Forwarding Perform ...

  3. RFC2889错误帧过滤测试----网络测试仪实操

    一.简介 RFC 2889为LAN交换设备的基准测试提供了方法学,它将RFC 2544中为网络互联设备基准测试所定义的方法学扩展到了交换设备,提供了交换机转发性能(Forwarding Perform ...

  4. RFC2899广播吞吐量测试——网络测试仪实操

    一.简介 RFC 2889为LAN交换设备的基准测试提供了方法学,它将RFC 2544中为网络互联设备基准测试所定义的方法学扩展到了交换设备,提供了交换机转发性能(Forwarding Perform ...

  5. RFC2899广播帧转发测试——网络测试仪实操

    一.简介 RFC 2889为LAN交换设备的基准测试提供了方法学,它将RFC 2544中为网络互联设备基准测试所定义的方法学扩展到了交换设备,提供了交换机转发性能(Forwarding Perform ...

  6. RIP协议测试——信而泰网络测试仪实操

    一.简介: RIP(Routing Information Protocol,路由信息协议)是一种内部网关协议(IGP),是一种动态路由选择协议,用于自治系统(AS)内的路由信息的传递.RIP协议基于 ...

  7. ISISv4协议测试——网络测试仪实操

    文章关键词 ISIS协议:路由协议:协议测试: 一.文章简介: isis是一种与ospf很相似的网络协议(属于动态路由协议),它被应用在巨大规模网络,如运营商以及银行等.同样的它也是基于链路状态算法, ...

  8. 基于IPv6的RIPng路由协议测试——信而泰网络测试仪实操

    关键词 IPv6; RIPng; 协议测试; 内部网关协议; 外部网关协议 前言:在国际性网络中,如因特网,拥有很多应用于整个网络的路由选择协议.形成网络的每一个自治系统(AS),都有属于自己的路由选 ...

  9. IPv6 OSPFv3路由协议测试——信而泰网络测试仪实操

    关键词 IPv6; OSPFv3; OSPFv2. 前言:在网络部署中,动态路由协议是重要的组成部分.良好的路由协议,是保证网络可靠.稳定运行的基础.为了适应IPv6协议栈的变化,OSPFv3协议在保 ...

随机推荐

  1. zip压缩,解压

    //引用 System.IO.Compression.FileSystem.dll var basePath = AppDomain.CurrentDomain.BaseDirectory; Syst ...

  2. 【解决了一个小问题】golang中引用一个路径较长的库,导致goland中出现"module contains a go.mod file, so major version must be compatible: should be v0 or v1, not v2"

    在项目中的go.mod文件中有这样一句: require ( github.com/xxx-devops/xx1/sdk/go v2.2.3 ) 项目的编译没有问题,但是goland中出现如下提示: ...

  3. linux + opencv + cuvid中使用cv::cuda::GpuMat类的一些坑

    1.我最终成功实现了opencv中利用cuvid实现GPU视频解码:核心代码是: 1 cv::cuda::GpuMat d_frame; 2 cv::Ptr<cv::cudacodec::Vid ...

  4. Mysql 死锁分析

    1. 结论 死锁检查机制 当事务A需要获取一个行锁时(例如更新一行数据),假如需要获取行1的锁 检查其他事务有没有已获取了行1的锁. 如果有,例如事务B已获取了行1的锁. 继续检查事务B在等待的锁,如 ...

  5. vue学习10-计算属性

    计算属性 1 <!DOCTYPE html> 2 <html lang='en'> 3 <head> 4 <meta charset='UTF-8'> ...

  6. 计算机网络再次整理————tcp例子前奏[三]

    前言 简单编写一下tcp例子. 正文 我们常说IOS有7层,实际上也只有4层,或者这样说简单的说是4层. 首先是数据链路层,首先这一层解决了什么问题呢?为什么要有这一层呢? 首先要抛开有操作系统的意识 ...

  7. 求Fibonacci数列通项公式

    0. Intro \[f_n=\begin{cases} 0 & (n=0) \\ 1 & (n=1) \\ f_{n-1}+f_{n-2} & (n>1) \end{c ...

  8. 分布式事务框架-Litx补偿事务框架源码解析

    前言 之前某段时间在研究分布式事务过程中,对实现原理比较好奇,于是去Gitee上找了几个人气比较高的框架进行学习,其中印象深刻的有Litx,因为Litx源码不多,且都是基于Spring和Dubbo底层 ...

  9. Collection和Map集合

    前言 集合的长度是可变的.集合存储的都是对象.而且对象的类型可以不一致. Collection集合和Map集合是所有集合的父接口. Collection接口定义 体系结构的根接口,代表一组对象,有两个 ...

  10. Disruptor-高性能队列

    简介 Disruptor是英国外汇交易公司LMAX开发的一个高性能队列,研发的初衷是解决内存队列的延迟问题.与Kafka.RabbitMQ用于服务间的消息队列不同,disruptor一般用于线程间消息 ...