CN110838948B - 测试mac地址学习速率的方法、测试系统 - Google Patents
测试mac地址学习速率的方法、测试系统 Download PDFInfo
- Publication number
- CN110838948B CN110838948B CN201810932325.1A CN201810932325A CN110838948B CN 110838948 B CN110838948 B CN 110838948B CN 201810932325 A CN201810932325 A CN 201810932325A CN 110838948 B CN110838948 B CN 110838948B
- Authority
- CN
- China
- Prior art keywords
- port
- flooding
- mac address
- rate
- verification
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
- H04L43/0894—Packet rate
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/618—Details of network addresses
- H04L2101/622—Layer-2 addresses, e.g. medium access control [MAC] addresses
Landscapes
- Engineering & Computer Science (AREA)
- Environmental & Geological Engineering (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种测试MAC地址学习速率的方法、测试系统,控制终端先在待测试设备的验证端口上绑定静态MAC地址,然后控制测试仪以预设发送速率向待测试设备发送学习流量样本和验证流量样本,检查测试仪的第三端口不再有洪泛流量时,等待预设时间后若第三端口累计收到的洪泛个数没有增加,则将累计接收到的洪泛个数确定为第一洪泛样本数,然后基于第一洪泛样本数、流量个数以及预设验证速率计算得到MAC地址学习速率。由于上述过程不存在时间变量,因此,可以消除时间变量带来的测试误差,同时该方法适用于待测试设备在通过软件方式或者硬件方式进行MAC地址学习时测试学习速率,具备通用性。
Description
技术领域
本发明涉及数据处理领域,具体而言,涉及一种测试MAC地址学习速率的方法、测试系统。
背景技术
网络设备在二层数据转发的环境中,需要先对MAC地址进行学习,找到与该MAC地址对应的转发端口。当网络设备在获取到某个帧时,若该帧的目的地址为网络设备学习过的MAC地址,网络设备可以根据学习结果将该帧单播到与目的地址对应的端口;若该帧的目的地址不是网络设备学习过的MAC地址,网络设备则会将该帧广播到除接受到该帧的端口外的其他全部端口,产生洪泛,当环境中存在大量洪泛时,会占用网络设备的带宽。
因此,让网络设备提前进行MAC地址学习很有必要。相应的,我们也需要对网络设备的MAC地址学习速率进行测试,以了解网络设备的学习性能。
目前,通常基于公式V=M/T来测试网络设备MAC地址学习速率,其中,M是指测试MAC地址容量,T是指学习到该MAC地址所消耗的时间,V是MAC地址学习速率,然而,基于该公式的测试方法,都比较依赖于时间T,而时间T又容易带来误差,使得最后得到MAC地址学习速率误差较大,不够准确。
发明内容
有鉴于此,本发明实施例的目的在于提供一种测试MAC地址学习速率的方法、测试系统,以提高测试得到的MAC地址平均学习速率的准确性。
第一方面,本发明实施例提供了一种测试MAC地址学习速率的方法,应用于测试系统,所述测试系统包括:用于与待测试设备连接的控制终端以及测试仪,所述待测试设备至少包括被配置到一个虚拟局域网的学习端口、验证端口以及侦测端口,所述测试仪至少包括与所述学习端口连接的第一端口、与所述验证端口连接的第二端口以及与所述侦测端口连接的第三端口,所述方法包括:所述控制终端在所述验证端口上绑定静态MAC地址,所述静态MAC地址与学习流量样本中的每个流量的目的MAC地址相同;所述控制终端控制所述第一端口以预设发送速率发送所述学习流量样本到所述学习端口,控制所述第二端口以预设验证速率发送验证流量样本到所述验证端口,所述学习流量样本与所述验证流量样本的流量个数相同,且所述学习流量样本中的每个流量的源MAC地址与目的MAC地址互换后均能在所述验证流量样本内找到;所述控制终端检查所述第三端口内不再有洪泛流量后,等待预设时间,确认第三端口累计收到的洪泛个数没有增加,所述控制终端将所述第三端口本次累计接收到的洪泛个数确定为第一洪泛样本数;所述控制终端基于所述第一洪泛样本数、所述流量个数以及所述预设验证速率计算得到MAC地址学习速率。
结合第一方面的一种实施方式,所述控制终端基于所述第一洪泛样本数、所述流量个数以及所述预设验证速率计算得到MAC地址学习速率,包括:基于公式V=V2×M/(M+N)计算得到MAC地址学习速率,其中,V为所述MAC地址学习速率,V2为所述预设验证速率,M为所述流量个数,N为所述第一洪泛样本数。
结合第一方面的一种实施方式,在所述控制终端基于所述第一洪泛样本数、所述流量个数以及所述预设验证速率计算得到MAC地址学习速率之后,所述方法还包括:所述控制终端将所述待测试设备上的学习记录以及所述第三端口累计接收到的包数清空;所述控制终端控制所述第一端口以所述MAC地址学习速率重新发送所述学习流量样本到所述学习端口,同时,控制所述第二端口以所述MAC地址学习速率重新发送所述验证流量样本到所述验证端口;所述控制终端在检查到所述第三端口内不再有洪泛流量后,等待预设时间,确认第三端口累计收到的洪泛个数没有增加,则将所述第三端口本次累计接收到的洪泛个数确定为第二洪泛样本数;在判断所述第二洪泛样本数为所述流量个数时,所述控制终端基于所述第二洪泛样本数、所述流量个数以及所述预设验证速率计算得到MAC地址学习速率范围值。
结合第一方面的一种实施方式,所述控制终端基于所述第二洪泛样本数、所述流量个数以及所述预设验证速率计算得到MAC地址学习速率范围值,包括:基于公式V2×M/(N+V)<=V<=V2×M/N,计算得到所述MAC地址学习速率范围值,其中,V为所述MAC地址学习速率范围值,V2为所述预设验证速率,M为所述流量个数,N为所述第二洪泛样本数。
结合第一方面的一种实施方式,在所述控制终端基于所述第一洪泛样本数、所述流量个数以及所述预设验证速率计算得到MAC地址学习速率之前,所述方法还包括:所述控制终端确定所述待测试设备学习到的MAC地址个数是否达到所述流量个数;在为是时,执行步骤:所述控制终端基于所述第一洪泛样本数、所述流量个数以及所述预设验证速率计算得到MAC地址学习速率。
结合第一方面的一种实施方式,所述控制终端控制所述第一端口以预设发送速率发送所述学习流量样本到所述学习端口,控制所述第二端口以预设验证速率发送验证流量样本到所述验证端口,包括:所述控制终端控制所述第一端口以预设发送速率发送所述学习流量样本到所述学习端口,同时控制所述第二端口以预设验证速率发送验证流量样本到所述验证端口。
第二方面,本发明实施例提供了一种测试系统,包括:用于与待测试设备连接的控制终端以及测试仪,所述待测试设备至少包括被配置到一个虚拟局域网的学习端口、验证端口以及侦测端口,所述测试仪至少包括与所述学习端口连接的第一端口、与所述验证端口连接的第二端口以及与所述侦测端口连接的第三端口;所述控制终端,用于在所述验证端口上绑定静态MAC地址,所述静态MAC地址与学习流量样本中的每个流量的目的MAC地址相同;所述控制终端,用于控制所述第一端口以预设发送速率发送所述学习流量样本到所述学习端口,控制所述第二端口以预设验证速率发送验证流量样本到所述验证端口,所述学习流量样本与所述验证流量样本的流量个数相同,且所述学习流量样本中的每个流量的源MAC地址与目的MAC地址互换后均能在所述验证流量样本内找到;还用于检查在所述第三端口内是否不再有洪泛流量;还用于在检查到所述第三端口内不再有洪泛流量后,等待预设时间,确认第三端口累计收到的洪泛个数没有增加,则将所述第三端口本次累计接收到的洪泛个数确定为第一洪泛样本数;还用于基于所述第一洪泛样本数、所述流量个数以及所述预设验证速率计算得到MAC地址学习速率。
第三方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行第一方面任一实施方式所述的测试MAC地址学习速率的方法。
与现有技术相比,本发明各实施例提出的测试MAC地址学习速率的方法、测试系统,控制终端先在所述待测试设备的验证端口上绑定静态MAC地址,然后控制测试仪的第一端口以预设发送速率发送所述学习流量样本到所述学习端口,控制测试仪的第二端口以预设验证速率发送验证流量样本到所述验证端口,所述学习流量样本与所述验证流量样本的流量个数相同,且所述学习流量样本中的每个流量的源MAC地址与目的MAC地址互换后均能在所述验证流量样本内找到;在检查到测试仪的第三端口内不再有洪泛流量后,等待预设时间,确认第三端口累计收到的洪泛个数没有增加,则将所述第三端口本次累计接收到的洪泛个数确定为第一洪泛样本数,然后基于所述第一洪泛样本数、所述流量个数以及所述预设验证速率计算得到MAC地址学习速率。由于上述过程并不存在时间变量,因此,可以消除时间变量带来的测试误差,同时,该方法适用于待测试设备在通过软件方式进行MAC地址学习时测试学习速率,也适用于待测试设备通过硬件方式进行MAC地址学习时测试学习速率,具备通用性,可以减少测试次数。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明实施例提供的一种测试系统的示意图;
图2为本发明实施例提供的一种测试MAC地址学习速率的方法的流程图;
图3为本发明第一实施例提供的另一种测试MAC地址学习速率的方法的流程图。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
首先,对本发明所涉及到的术语进行简要介绍:
MAC地址:设备在网络中唯一地标识和区别自己的标记,长度为48bits,其中前面24bits由设备厂商向IEEE申请的厂商地址,后面24bits由设备厂商自行定义。
MAC地址软件学习:常用于分布式设备不同板卡或是芯片同步MAC地址的方法。
FDB:Forwarding DataBase(转发数据表),交换机为了实现与网络设备之间能够正常通信,必须知道报文从自己的哪个端口出去,可以到达指定网络设备。网络设备都是通过MAC地址进行标识和区别,因而在交换机中维护一张MAC地址与端口编号的对应表,用于在交换机中实现二层转发。其中,这张用于二层转发的对应表称为FDB表。
在现有技术中,通常基于公式V=M/T来测试网络设备MAC地址学习速率,其中,M是指测试MAC地址容量,T是指学习到该MAC地址所消耗的时间,V是MAC地址学习速率,然而,基于该公式的测试方法,都比较依赖于时间T,而时间T又容易带来误差,使得最后得到MAC地址学习速率误差较大,不够准确。
基于上述问题,在经过实践并仔细研究后,申请人得出了本发明实施例的技术方案,以在测试网络设备的MAC地址学习速率时,降低时间T带来的误差,提供测试的准确性。
下面将对本发明实施例中的方案进行介绍:
请参看图1,本发明实施例提供的一种测试系统100,包括:控制终端110以及测试仪120。
其中,控制终端110可以是能够实现控制的TC或者终端,例如电脑等设备。控制终端110可以通过不同的管理端口分别连接测试仪120以及待测试设备130,实现对测试仪120以及待测试设备130的管理和操作。
测试仪120可以是任何厂商提供的可以用于收发流量,并可以统计洪泛个数的设备。
待测试设备130可以是交换机等具备MAC地址学习功能的设备,可以在学习MAC地址后,形成一个FDB表进行保存,以便收到流量后依据FDB表进行转发。所述待测试设备130至少包括学习端口(A端口)、验证端口(B端口)以及侦测端口(C端口)。A端口用于学习MAC地址,B端口用于验证学习的MAC地址,C端口用于记录地址学习洪泛个数。
其中,A端口、B端口以及C端口被控制终端110预先配置到一个虚拟局域网内。
所述测试仪120至少包括与A端口连接的第一端口TC1、与B端口连接的第二端口TC2以及与C端口连接的第三端口TC3。
控制终端110控制TC1以预设发送速率发送学习流量样本到A端口,控制TC2以同样的预设发送速率发送验证流量样本到B端口。
在本发明实施例中,可以将TC1向A端口发送学习流量样本的速率成为学习速率V1,将TC2向B端口发送验证流量样本的速率称为验证学习速率V2。
其中,学习流量样本中的流量个数等于验证流量样本中的流量个数,例如为M,所述预设的预设发送速率可以由控制终端通过预先的配置参数获取到。因此,可以通过在最初配置参数时,将参数配置为M=V1=V2,即使得TC1与TC2以相同的速率(预设发送速率)发送流量。
请参照图2,图2是本发明实施例提供的一种测试MAC地址学习速率的方法的流程图,可以运行于测试系统100上。下面将对图2所示的流程进行详细阐述,所述方法包括:
步骤S110:所述控制终端在所述验证端口上绑定静态MAC地址,所述静态MAC地址与学习流量样本中的每个流量的目的MAC地址相同。
为了使得后续测试仪通过TC1发送到A端口中的学习流量样本中的流量能够到达B端口,从而被待测试设备学习到学习流量样本中各个流量的源MAC地址的同时,又尽量不产生洪泛,控制终端可以在测试仪发送学习流量样本之前,在B端口上绑定静态MAC地址,其中,若学习流量样本中的每个流量的目的MAC地址相同,那么在B端口上所绑定的静态MAC地址就只有一个,若学习流量样本中的每个流量的目的MAC地址不相同,那么在B端口上所绑定的静态MAC地址就有多个。
步骤S120:所述控制终端控制所述第一端口以预设发送速率发送所述学习流量样本到所述学习端口,控制所述第二端口以预设验证速率发送验证流量样本到所述验证端口。
可选的,控制终端可以控制TC1与TC2同时发送流量。
值得指出的是,所述学习流量样本与所述验证流量样本中的流量个数相同,均为M个,且所述学习流量样本中的每个流量的源MAC地址与目的MAC地址互换后均能在所述验证流量样本内找到。即验证流量样本对应的流量模型,需要采用待测试设备可以完全学习到MAC地址作为目的地址,以排除hash算法干扰。
可选的,本方案提供一种一般性通用的流量模型:针对学习流量样本中的流量,地址采用源MAC为0.0.2的起始地址,步长为1,变化M次,目的MAC固定为0.0.1。针对验证流量样本中的流量,地址采用源MAC固定为0.0.1,目的MAC为0.0.2,步长为1,变化M次。相应的,此时,在B端口所绑定的静态MAC地址只有一个,为0.0.1。
因此,在理想状态下,当A端口接收到某个学习流量时,会将该学习流量的源MAC地址进行学习,并保存在FDB表内,并将该学习流量转发到B端口;当B端口接收到另一个验证流量时,会去FDB表进行查询,查看是否有与该验证流量的目的MAC地址对应的端口,若有,则将该验证流量转发到该端口(在本实施中,只有A可能与该验证流量的目的MAC地址对应),若没有,则洪泛到A端口与C端口。C端口接收到的洪泛个数被测试仪的TC3获取到,因此,可以通过查看TC3中的洪泛个数来获取C端口接收到的洪泛个数。
步骤S130:所述控制终端在检查到所述第三端口内不再有洪泛流量后,等待预设时间,确认第三端口累计收到的洪泛个数没有增加,则将所述第三端口本次累计接收到的洪泛个数确定为第一洪泛样本数。
控制终端在获取到TC3中的洪泛个数时,可以检查洪泛个数是否还在增加,当洪泛个数不再增加时说明TC3不再有洪泛流量,等待预设时间后,确认TC3累计收到的洪泛个数没有增加,说明待测试设备的学习过程已经趋于稳定,此时,将TC3在本次测试过程中接收到的洪泛个数确定为第一洪泛样本数N。
可选的,在本实施例中,所述预设时间可以是两个测试周期,其中,测试周期可以根据样本中的流量个数除以预设发送速率得到。
步骤S140:所述控制终端基于所述第一洪泛样本数、所述流量个数以及所述预设验证速率计算得到MAC地址学习速率。
可选的,可以基于公式V=V2×M/(M+N)计算得到MAC地址学习速率,其中,V为所述MAC地址学习速率,V2为所述预设验证速率,M为所述流量个数,N为所述第一洪泛样本数。
推到上述公式的原始公式有如下三个:
MAC地址学习速率=MAC测试样本中的流量个数/测试过程中消耗时间(V1=M/T);
MAC地址洪泛速率=MAC地址第一洪泛样本个数/测试过程中消耗时间(V3=N/T);
MAC验证流量速率=MAC学习速率+MAC地址洪泛速率(V2=V1+V3);
通过计算可以得出最后的公式:V=V2×M/(M+N)。
由于在上述公式中,并不存在时间变量T,因此,可以消除时间T带来的测试误差。所以通过理论上分析,当TC3在预设时间内没有收到任何流量的时候,就能够从测试仪的TC3端口得到N,而V2,M都是我们在测试前输入控制终端的固定测试参数,理论上一次测试就能够得出结果,测试结果非常具有时效性。
对于硬件学习来说,该性能值一般都是达到规格数值上V和M相等,但是,从实际的测试结果来看,有概率得出V等于真实性能值的一半,因为验证流量样本先于学习流量样本发送到了待测试设备,导致验证流量样本全部洪范到了TC3,导致N=M。因此,为了减少测试误差,请参看图3,在步骤S150之后,所述方法还可以包括:
步骤S150:所述控制终端将所述待测试设备上的学习记录以及所述第三端口累计接收到的包数清空。
步骤S160:所述控制终端控制所述第一端口以所述MAC地址学习速率重新发送所述学习流量样本到所述学习端口,控制所述第二端口以所述MAC地址学习速率重新发送所述验证流量样本到所述验证端口。
可选的,控制终端可以控制TC1与TC2同时发送流量。
步骤S170:所述控制终端在检查到所述第三端口内不再有洪泛流量后,等待预设时间,确认第三端口累计收到的洪泛个数没有增加,则将所述第三端口本次累计接收到的洪泛个数确定为第二洪泛样本数。
步骤S180:在判断所述第二洪泛样本数为所述流量个数时,所述控制终端基于所述第二洪泛样本数、所述流量个数以及所述预设验证速率计算得到MAC地址学习速率范围值。
可选的,可以基于公式V2×M/(N+V)<=V<=V2×M/N,计算得到所述MAC地址学习速率范围值,其中,V为所述MAC地址学习速率范围值,V2为所述预设验证速率,M为所述流量个数,N为所述第二洪泛样本数。
公式V2×M/(N+V)<=V<=V2×M/N的推导过程如下:
对于公式V=V2×M/(M+N),公式中需要得到的变化参数为N,那么如果存在误差,则问题就在N得到的测试结果与理论结果存在误差。
把理论测试得到的第一洪泛样本数记为N,实际测试结果得到的第一洪泛个数记为N1,那么实际上得到一个公式:N=N1-误差△。理论上分析并通过多次试验得出结论,得到公式:误差△=MAC学习流量样本个数M-误差△1,原因是,FDB转发命中,必须是芯片上已经学到的地址,在某些MAC地址软件学习的方案中,流量到待测试设备后,并不是直接写在芯片上,则极限情况下,于本方案实施例的测试模型中,可能存在第一轮学习地址结束后,在理论测试1S的时间内,一个地址都没有学习,造成第一轮MAC学习流量样本个数M个流量,完全洪泛到端口C上,造成测试数值比理想数值偏大。而误差△1则是一个范围值,第1S内可能设备已经学习了一些地址,但是由于验证流量样本先到待测试设备进行处理,也会导致完全洪泛,所以可以得到公式:误差△1=0~V×1S。
综上所述,我们得到一个新的测试公式:V2×M/(N+V)<=V<=V2×M/N。
当然,在判断所述第二洪泛样本数为0时,以步骤S140得到的MAC地址学习速率为准。
可选的,在步骤S140之前,控制终端还可以判断所述待测试设备学习到的MAC地址个数是否达到所述流量个数,在为是时,才执行步骤S140,以减小误差,否则,说明误差较大,此时需要清除待测试设备的学习记录以及TC3上的洪泛个数,重新执行步骤S110。
可选的,控制终端可以通过向待测试设备发送控制命令,来查看待测试设备上学习到的MAC地址个数。其中,对应不同的厂商提供的控制终端,该控制命令可能也不同。
通过上述方法,理论上最多通过两个测试周期就可以得到结果,减少了测试次数,也节约了人力成本和设备消耗。
本发明实施例提供一种测试MAC地址学习速率的方法,控制终端先在所述待测试设备的验证端口上绑定静态MAC地址,然后控制测试仪的第一端口以预设发送速率发送所述学习流量样本到所述学习端口,控制测试仪的第二端口以预设验证速率发送验证流量样本到所述验证端口,所述学习流量样本与所述验证流量样本的流量个数相同,且所述学习流量样本中的每个流量的源MAC地址与目的MAC地址互换后均能在所述验证流量样本内找到;在检查到测试仪的第三端口内不再有洪泛流量后,等待预设时间,确认第三端口累计收到的洪泛个数没有增加,则将所述第三端口本次累计接收到的洪泛个数确定为第一洪泛样本数,然后基于所述第一洪泛样本数、所述流量个数以及所述预设验证速率计算得到MAC地址学习速率。由于上述过程并不存在时间变量,因此,可以消除时间变量带来的测试误差,同时,该方法适用于待测试设备在通过软件方式进行MAC地址学习时测试学习速率,也适用于待测试设备通过硬件方式进行MAC地址学习时测试学习速率,具备通用性。
此外,本发明实施例还提供了一种测试系统,其结构可以是如图1中所示的测试系统100,包括:用于与待测试设备130连接的控制终端110以及测试仪120,所述待测试设备130至少包括被配置到一个虚拟局域网的学习端口、验证端口以及侦测端口,所述测试仪120至少包括与所述学习端口连接的第一端口、与所述验证端口连接的第二端口以及与所述侦测端口连接的第三端口。
所述控制终端110,用于在所述验证端口上绑定静态MAC地址,所述静态MAC地址与学习流量样本中的每个流量的目的MAC地址相同;
还用于控制所述第一端口以预设发送速率发送所述学习流量样本到所述学习端口,控制所述第二端口以预设验证速率发送验证流量样本到所述验证端口,所述学习流量样本与所述验证流量样本的流量个数相同,且所述学习流量样本中的每个流量的源MAC地址与目的MAC地址互换后均能在所述验证流量样本内找到;
还用于检查在所述第三端口内不再有洪泛流量后,等待预设时间,再次确认第三端口累计收到的洪泛个数没有增加;
还用于在检查到所述第三端口内不再有洪泛流量后,将所述第三端口本次累计接收到的洪泛个数确定为第一洪泛样本数;
还用于基于所述第一洪泛样本数、所述流量个数以及所述预设验证速率计算得到MAC地址学习速率。
可选的,所述控制终端110,还用于将所述待测试设备130上的学习记录以及所述第三端口累计接收到的包数清空;
还用于控制所述第一端口以所述MAC地址学习速率重新发送所述学习流量样本到所述学习端口,同时,控制所述第二端口以所述MAC地址学习速率重新发送所述验证流量样本到所述验证端口;
还用于在检查到所述第三端口内不再有洪泛流量后,等待预设时间,确认第三端口累计收到的洪泛个数没有增加,则将所述第三端口本次累计接收到的洪泛个数确定为第二洪泛样本数;
还用于在判断所述第二洪泛样本数为所述流量个数时,基于所述第二洪泛样本数、所述流量个数以及所述验证速率计算得到MAC地址学习速率范围值。
可选的,所述控制终端110在基于所述第一洪泛样本数、所述流量个数以及所述验证速率计算得到所述MAC地址学习速率之前,还用于确定所述待测试设备学习到的MAC地址个数达到所述流量个数。
本实施例对控制终端100的各组件实现各自功能的过程,请参见上述图1至图3所示实施例中描述的内容,此处不再赘述。
此外,对应于第一实施例中的测试MAC地址学习速率的方法,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器读取并运行时,使得处理器执行本发明实施例中任一实施方式所述的测试MAC地址学习速率的方法。
综上所述,本发明实施例提出的测试MAC地址学习速率的方法、测试系统,控制终端先在所述待测试设备的验证端口上绑定静态MAC地址,然后控制测试仪的第一端口以预设发送速率发送所述学习流量样本到所述学习端口,控制测试仪的第二端口以预设验证速率发送验证流量样本到所述验证端口,所述学习流量样本与所述验证流量样本的流量个数相同,且所述学习流量样本中的每个流量的源MAC地址与目的MAC地址互换后均能在所述验证流量样本内找到;在检查到测试仪的第三端口内不再有洪泛流量时,等待预设时间,确认第三端口累计收到的洪泛个数没有增加,则将所述第三端口本次累计接收到的洪泛个数确定为第一洪泛样本数,然后基于所述第一洪泛样本数、所述流量个数以及所述预设验证速率计算得到MAC地址学习速率。由于上述过程并不存在时间变量,因此,可以消除时间变量带来的测试误差,同时,该方法适用于待测试设备在通过软件方式进行MAC地址学习时测试学习速率,也适用于待测试设备通过硬件方式进行MAC地址学习时测试学习速率,具备通用性。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的测试系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (8)
1.一种测试MAC地址学习速率的方法,其特征在于,应用于测试系统,所述测试系统包括:用于与待测试设备连接的控制终端以及测试仪,所述待测试设备至少包括被配置到一个虚拟局域网的学习端口、验证端口以及侦测端口,所述测试仪至少包括与所述学习端口连接的第一端口、与所述验证端口连接的第二端口以及与所述侦测端口连接的第三端口,所述方法包括:
所述控制终端在所述验证端口上绑定静态MAC地址,所述静态MAC地址与学习流量样本中的每个流量的目的MAC地址相同;
所述控制终端控制所述第一端口以预设发送速率发送所述学习流量样本到所述学习端口,控制所述第二端口以预设验证速率发送验证流量样本到所述验证端口,所述学习流量样本与所述验证流量样本的流量个数相同,且所述学习流量样本中的每个流量的源MAC地址与目的MAC地址互换后均能在所述验证流量样本内找到;
所述控制终端检查到所述第三端口内不再有洪泛流量后,等待预设时间,确认第三端口累计收到的洪泛个数没有增加,所述控制终端将所述第三端口本次累计接收到的洪泛个数确定为第一洪泛样本数;
所述控制终端基于所述第一洪泛样本数、所述流量个数以及所述预设验证速率计算得到MAC地址学习速率;
其中,所述控制终端基于所述第一洪泛样本数、所述流量个数以及所述预设验证速率计算得到MAC地址学习速率,包括:基于公式V=V2×M/(M+N)计算得到MAC地址学习速率,其中,V为所述MAC地址学习速率,V2为所述预设验证速率,M为所述流量个数,N为所述第一洪泛样本数。
2.根据权利要求1所述的方法,其特征在于,在所述控制终端基于所述第一洪泛样本数、所述流量个数以及所述预设验证速率计算得到MAC地址学习速率之后,所述方法还包括:
所述控制终端将所述待测试设备上的学习记录以及所述第三端口累计接收到的包数清空;
所述控制终端控制所述第一端口以所述MAC地址学习速率重新发送所述学习流量样本到所述学习端口,控制所述第二端口以所述MAC地址学习速率重新发送所述验证流量样本到所述验证端口;
所述控制终端在检查到所述第三端口内不再有洪泛流量后,等待预设时间,确认第三端口累计收到的洪泛个数没有增加,则将所述第三端口本次累计接收到的洪泛个数确定为第二洪泛样本数;
在判断所述第二洪泛样本数为所述流量个数时,所述控制终端基于所述第二洪泛样本数、所述流量个数以及所述预设验证速率计算得到MAC地址学习速率范围值;
其中,所述控制终端基于所述第二洪泛样本数、所述流量个数以及所述预设验证速率计算得到MAC地址学习速率范围值,包括:基于公式V2×M/(N+V)<=V<=V2×M/N,计算得到所述MAC地址学习速率范围值,其中,V为所述MAC地址学习速率范围值,V2为所述预设验证速率,M为所述流量个数,N为所述第二洪泛样本数。
3.根据权利要求1-2任一项所述的方法,其特征在于,在所述控制终端基于所述第一洪泛样本数、所述流量个数以及所述预设验证速率计算得到MAC地址学习速率之前,所述方法还包括:
所述控制终端确定所述待测试设备学习到的MAC地址个数是否达到所述流量个数;
在为是时,执行步骤:所述控制终端基于所述第一洪泛样本数、所述流量个数以及所述预设验证速率计算得到MAC地址学习速率。
4.根据权利要求1-2任一项所述的方法,其特征在于,所述控制终端控制所述第一端口以预设发送速率发送所述学习流量样本到所述学习端口,控制所述第二端口以预设验证速率发送验证流量样本到所述验证端口,包括:
所述控制终端控制所述第一端口以预设发送速率发送所述学习流量样本到所述学习端口,同时控制所述第二端口以预设验证速率发送验证流量样本到所述验证端口。
5.一种测试系统,其特征在于,包括:用于与待测试设备连接的控制终端以及测试仪,所述待测试设备至少包括被配置到一个虚拟局域网的学习端口、验证端口以及侦测端口,所述测试仪至少包括与所述学习端口连接的第一端口、与所述验证端口连接的第二端口以及与所述侦测端口连接的第三端口;
所述控制终端,用于在所述验证端口上绑定静态MAC地址,所述静态MAC地址与学习流量样本中的每个流量的目的MAC地址相同;
还用于控制所述第一端口以预设发送速率发送所述学习流量样本到所述学习端口,控制所述第二端口以预设验证速率发送验证流量样本到所述验证端口,所述学习流量样本与所述验证流量样本的流量个数相同,且所述学习流量样本中的每个流量的源MAC地址与目的MAC地址互换后均能在所述验证流量样本内找到;
还用于检查所述第三端口内是否不再有洪泛流量;
还用于在检查到所述第三端口内不再有洪泛流量后,等待预设时间,确认第三端口累计收到的洪泛个数没有增加,则将所述第三端口本次累计接收到的洪泛个数确定为第一洪泛样本数;
还用于基于所述第一洪泛样本数、所述流量个数以及所述预设验证速率计算得到MAC地址学习速率;
其中,所述控制终端还具体用于基于公式V=V2×M/(M+N)计算得到MAC地址学习速率,其中,V为所述MAC地址学习速率,V2为所述预设验证速率,M为所述流量个数,N为所述第一洪泛样本数。
6.根据权利要求5所述的测试系统,其特征在于,
所述控制终端,还用于将所述待测试设备上的学习记录以及所述第三端口累计接收到的包数清空;
还用于控制所述第一端口以所述MAC地址学习速率重新发送所述学习流量样本到所述学习端口,同时,控制所述第二端口以所述MAC地址学习速率重新发送所述验证流量样本到所述验证端口;
还用于在检查到所述第三端口内不再有洪泛流量后,等待预设时间,确认第三端口累计收到的洪泛个数没有增加,则将所述第三端口本次累计接收到的洪泛个数确定为第二洪泛样本数;
还用于在判断所述第二洪泛样本数为所述流量个数时,基于所述第二洪泛样本数、所述流量个数以及所述验证速率计算得到MAC地址学习速率范围值;
其中,所述控制终端还具体用于基于公式V2×M/(N+V)<=V<=V2×M/N,计算得到所述MAC地址学习速率范围值,其中,V为所述MAC地址学习速率范围值,V2为所述预设验证速率,M为所述流量个数,N为所述第二洪泛样本数。
7.根据权利要求5或6所述的测试系统,其特征在于,所述控制终端在基于所述第一洪泛样本数、所述流量个数以及所述验证速率计算得到所述MAC地址学习速率之前,还用于确定所述待测试设备学习到的MAC地址个数达到所述流量个数。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行如权利要求1-4中任意一项所述的测试MAC地址学习速率的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810932325.1A CN110838948B (zh) | 2018-08-15 | 2018-08-15 | 测试mac地址学习速率的方法、测试系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810932325.1A CN110838948B (zh) | 2018-08-15 | 2018-08-15 | 测试mac地址学习速率的方法、测试系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110838948A CN110838948A (zh) | 2020-02-25 |
CN110838948B true CN110838948B (zh) | 2022-02-22 |
Family
ID=69573260
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810932325.1A Active CN110838948B (zh) | 2018-08-15 | 2018-08-15 | 测试mac地址学习速率的方法、测试系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110838948B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7286528B1 (en) * | 2001-12-12 | 2007-10-23 | Marvell International Ltd. | Multiple address databases in a switch without the need for extra memory |
CN101605061A (zh) * | 2008-06-10 | 2009-12-16 | 上海贝尔阿尔卡特股份有限公司 | 一种接入网络中防止拒绝服务攻击的方法及其装置 |
CN102123106A (zh) * | 2011-04-21 | 2011-07-13 | 杭州华三通信技术有限公司 | 一种虚拟专用局域网服务网络中mac地址学习方法和装置 |
CN102201950A (zh) * | 2011-06-07 | 2011-09-28 | 北京交通大学 | 一种一体化标识网络核心网路由性能的测试方法 |
CN103107924A (zh) * | 2013-03-06 | 2013-05-15 | 深圳市新格林耐特通信技术有限公司 | 利用低速率端口测试高速率端口的网络设备性能测试方法 |
CN103155485A (zh) * | 2010-09-29 | 2013-06-12 | 瑞典爱立信有限公司 | 基于快速洪泛的快速收敛以从网络故障恢复 |
CN103312565A (zh) * | 2013-06-28 | 2013-09-18 | 南京邮电大学 | 一种基于自主学习的对等网络流量识别方法 |
CN103647680A (zh) * | 2013-11-26 | 2014-03-19 | 上海斐讯数据通信技术有限公司 | 一种测试交换机产品mac地址表大小的方法 |
CN103888369A (zh) * | 2014-04-10 | 2014-06-25 | 何顺民 | 以太网通信方法、系统和sdn交换机 |
CN105991783A (zh) * | 2015-02-06 | 2016-10-05 | 中兴通讯股份有限公司 | 一种媒体接入控制地址学习方法、设备和系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6999455B2 (en) * | 2000-07-25 | 2006-02-14 | Broadcom Corporation | Hardware assist for address learning |
EP2422493B1 (en) * | 2009-04-23 | 2013-09-04 | FutureWei Technologies, Inc. | Media access control bridging in a mesh network |
JP5971072B2 (ja) * | 2012-10-12 | 2016-08-17 | 富士通株式会社 | フレーム転送装置及びフレーム転送方法 |
-
2018
- 2018-08-15 CN CN201810932325.1A patent/CN110838948B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7286528B1 (en) * | 2001-12-12 | 2007-10-23 | Marvell International Ltd. | Multiple address databases in a switch without the need for extra memory |
CN101605061A (zh) * | 2008-06-10 | 2009-12-16 | 上海贝尔阿尔卡特股份有限公司 | 一种接入网络中防止拒绝服务攻击的方法及其装置 |
CN103155485A (zh) * | 2010-09-29 | 2013-06-12 | 瑞典爱立信有限公司 | 基于快速洪泛的快速收敛以从网络故障恢复 |
CN102123106A (zh) * | 2011-04-21 | 2011-07-13 | 杭州华三通信技术有限公司 | 一种虚拟专用局域网服务网络中mac地址学习方法和装置 |
CN102201950A (zh) * | 2011-06-07 | 2011-09-28 | 北京交通大学 | 一种一体化标识网络核心网路由性能的测试方法 |
CN103107924A (zh) * | 2013-03-06 | 2013-05-15 | 深圳市新格林耐特通信技术有限公司 | 利用低速率端口测试高速率端口的网络设备性能测试方法 |
CN103312565A (zh) * | 2013-06-28 | 2013-09-18 | 南京邮电大学 | 一种基于自主学习的对等网络流量识别方法 |
CN103647680A (zh) * | 2013-11-26 | 2014-03-19 | 上海斐讯数据通信技术有限公司 | 一种测试交换机产品mac地址表大小的方法 |
CN103888369A (zh) * | 2014-04-10 | 2014-06-25 | 何顺民 | 以太网通信方法、系统和sdn交换机 |
CN105991783A (zh) * | 2015-02-06 | 2016-10-05 | 中兴通讯股份有限公司 | 一种媒体接入控制地址学习方法、设备和系统 |
Non-Patent Citations (4)
Title |
---|
"Efficient transport of packets with multicast mechanism in GPON";Shuai Zhang,;《6th International Conference on Digital Content, Multimedia Technology and its Applications》;20100909;第145-149页 * |
"以太网交换机几个重要性能指标的测试方法";何晓明,;《通信技术》;20031130(第11期);第97-99页 * |
"以太网交换设备测试";赵建志,;《通信测试与维护》;20050531(第5期);第67-70页 * |
"智能变电站网络系统性能测试技术研究";李圆智,;《中国优秀硕士学位论文全文数据库 (工程科技Ⅱ辑)》;20170315;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110838948A (zh) | 2020-02-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108075934B (zh) | 一种网络质量监控方法、装置及系统 | |
CN109302498B (zh) | 一种网络资源访问方法及装置 | |
CN107547304A (zh) | 网卡测试方法、装置及机器可读存储介质 | |
CN107517119B (zh) | Vpc环境下的虚拟网络检测方法以及装置 | |
CN101815033A (zh) | 负载均衡的方法、设备及系统 | |
US10833952B2 (en) | Introducing latency and delay for test or debug purposes in a SAN environment | |
CN113472607B (zh) | 应用程序网络环境检测方法、装置、设备及存储介质 | |
US20170124231A1 (en) | Introducing Latency and Delay in a SAN Environment | |
US9749213B2 (en) | Methods, systems, and computer readable media for microburst testing | |
CN106201794A (zh) | 一种服务器的检测方法和装置 | |
CN105743731A (zh) | 用于存储系统中的故障检测的方法和装置 | |
US20160088499A1 (en) | Systems and methods to create message traffic | |
CN104836743A (zh) | 一种拥塞控制方法及装置 | |
CN114039880A (zh) | 一种无连接服务的性能测试方法、装置及系统 | |
CN110838948B (zh) | 测试mac地址学习速率的方法、测试系统 | |
US8391162B2 (en) | Apparatus and method for testing SMNP cards | |
CN105656996A (zh) | 数据节点存活的检测方法及装置 | |
KR20190051585A (ko) | 서버 및 이를 이용한 네트워크 시스템 | |
CN110636637B (zh) | 一种Linux设备的网络连接方法和装置 | |
CN108111431B (zh) | 业务数据发送方法、装置、计算设备及计算机可读存储介质 | |
CN106100925B (zh) | 一种基于延时的链路故障诊断方法 | |
CN106559439B (zh) | 一种业务处理方法及设备 | |
CN111367838B (zh) | 用于检测数据存储系统的方法、设备和数据存储系统 | |
CN105577427A (zh) | 家用电器与移动终端之间通信连接的检测方法、装置 | |
CN105515896B (zh) | 一种移动终端网络阻塞的判断方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |