9

RENIX_RFC2889_MAC地址容量——网络测试仪实操(上)

 2 years ago
source link: https://blog.51cto.com/teletest1/5360797
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

一、地址容量概述

1 RFC2889简介

CQOS Inc的R. Mandeville, J. Perser提交

在2000年8月成为正式标准

将RFC2544的基准测试方法拓展到交换设备

专门评测局域网交换设备性能

局域网交换设备: 交换机, 网桥…

定义了一整套测试方法, 对交换设备/系统进行评测

为不同厂家的设备提供了统一的评测标准和报告格式

2 RFC 2285 vs 2889

●RFC 2285

Benchmarking Terminology for LAN Switching Devices

定义性能评测的内容: MAC地址容量, MAC地址学习速率, 拥塞控制…

●RFC 2889

Benchmarking Methodology for LAN Switching Devices

对RFC2285中的性能评测内容 规定了具体测试方法和详细的结果格式

3 RFC2889测试内容

●测试内容

MAC地址容量

MAC地址学习速率

广播吞吐量

错误帧检测

RENIX_RFC2889_MAC地址容量——网络测试仪实操(上)_mac地址

​编辑

4 MAC地址容量

交换机能够学习的最大MAC地址数量

●为什么需要测试

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

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

MAC地址容量越大, 能够正常转发的frame就越多

●主要考察

交换机的缓存(内存)能力

●测试方法

二分法自动查找 最大容量

5 地址学习 原理

●学习原理

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

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

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

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

●根据网络的分层模型: MAC地址在Layer2唯一标识一台设备, MAC地址通常是固定的, 所以平常没太注意, 关注的都是IP地址

●交换机收到任何报文, 都会检查报文的源MAC是否在 MAC table中, 如果没有就会添加表项, 已经有了的话, 就不添加

Flooding: PC1发送的 报文, 交换机会复制多份, 从所有UP的端口上发送出去(同一VLAN), PC2/PC3都会收到

RENIX_RFC2889_MAC地址容量——网络测试仪实操(上)_二分法_03

​编辑

RENIX_RFC2889_MAC地址容量——网络测试仪实操(上)_缓存_05

​编辑

6 地址学习 举例

●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的报文

●前提: 这个端口都在同一个VLAN里

二、测试说明

1 测试拓扑

●至少三个端口

RENIX_RFC2889_MAC地址容量——网络测试仪实操(上)_mac地址_07

​编辑

2 测试原理

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

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

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

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

●PC1 向PC2 发送Frame, 交换机收到以后, 会查找MAC地址表

◆如果地址表中, 有PC2对应的表项, 交换机只会从特定的端口发送出去, 例如本例, 只会从G1/0/2把frame发送出去

◆如果地址表中, 没有有PC2对应的表项, 交换机就会进行Flooding, 从所有UP的端口发送出去, 例如本例, 只会从G1/0/2, G1/0/3 把frame发送出去

RENIX_RFC2889_MAC地址容量——网络测试仪实操(上)_缓存_09

​编辑

3 测试过程: MAC地址学习

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

测试仪端口Port2模拟100个主机, 向测试仪端口Port1模拟的一个主机发送Frame

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

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

RENIX_RFC2889_MAC地址容量——网络测试仪实操(上)_缓存_11

​编辑

●对应layer2交换机来说, 不同的主机的概念是 MAC地址不一样

不同的主机发送报文时, 源MAC地址是不一样的

Switch#show mac address-table dynamic

Mac Address Table

-------------------------------------------

Vlan Mac Address Type Ports

---- ----------- -------- -----

1 0000.0011.1111 DYNAMIC Gi1/0/2

1 0000.0011.1112 DYNAMIC Gi1/0/2

1 0000.0011.1113 DYNAMIC Gi1/0/2

1 0000.0011.1114 DYNAMIC Gi1/0/2

1 0000.0011.1115 DYNAMIC Gi1/0/2

1 0000.0011.1116 DYNAMIC Gi1/0/2

1 0000.0011.1117 DYNAMIC Gi1/0/2

1 0000.0011.1118 DYNAMIC Gi1/0/2

1 0000.0011.1119 DYNAMIC Gi1/0/2

1 0000.0011.111a DYNAMIC Gi1/0/2

1 0000.0011.111b DYNAMIC Gi1/0/2

1 0000.0011.111c DYNAMIC Gi1/0/2

1 0000.0011.111d DYNAMIC Gi1/0/2

1 0000.0011.111e DYNAMIC Gi1/0/2

1 0000.0011.111f DYNAMIC Gi1/0/2

1 0000.0011.1120 DYNAMIC Gi1/0/2

1 0000.0011.1121 DYNAMIC Gi1/0/2

1 0000.0011.1122 DYNAMIC Gi1/0/2

1 0000.0011.1123 DYNAMIC Gi1/0/2

……….........................................................................................

1 0000.0011.1171 DYNAMIC Gi1/0/2

1 0000.0011.1172 DYNAMIC Gi1/0/2

1 0000.0011.1173 DYNAMIC Gi1/0/2

1 0000.0011.1174 DYNAMIC Gi1/0/2
RENIX_RFC2889_MAC地址容量——网络测试仪实操(上)_缓存_14

​编辑

4 测试过程: 发送测试报文

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

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

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

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

RENIX_RFC2889_MAC地址容量——网络测试仪实操(上)_二分法_16

​编辑

RENIX_RFC2889_MAC地址容量——网络测试仪实操(上)_缓存_18

​编辑

5 测试过程: 镜像端口观测

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

本次测试成功

100个MAC地址都正确学习

下轮测试需要加大MAC地址数量

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

本次测试失败

网络中有报文被Flooding, 100个MAC有部分没有建立 映射表项

下轮测试需要减少MAC地址数量

RENIX_RFC2889_MAC地址容量——网络测试仪实操(上)_二分法_20

​编辑

6 二分法原理

●参数设置

初始缓存:开始测试时的地址数目

最大缓存:终止测试时的最大缓存

最小缓存:终止测试时的最小缓存

●二分法举例

第1次发送1000个frames

如果测试成功, 第2次发送3000个frames

           3000=1000+(5000-1000)/2

如果测试失败, 第3次发送2000个frames

           2000=1000+(3000-1000)/2

如果测试成功, 第4次发送2500个frames

           2500=1000+(3000-1000)/2

如果测试失败, 第5次发送2250个frames

       2250=2000+(2500-2000)/2

RENIX_RFC2889_MAC地址容量——网络测试仪实操(上)_二分法_22

​编辑

7 MAC地址容量 测试流程

(1)添加机框

(2)预约端口

(3)选择向导

(4)选择MAC地址容量

(5)配置接口

(6)配置流量

(7)配置测试参数

(8)配置MAC地址容量参数

(9)运行测试

(10)查看结果

(11)导出报告

8 准备工作: 添加机框

RENIX_RFC2889_MAC地址容量——网络测试仪实操(上)_缓存_24

​编辑

9 准备工作: 预约端口

RENIX_RFC2889_MAC地址容量——网络测试仪实操(上)_缓存_26

​编辑

10 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


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK