本申请要求于2016年7月12日申请的第15/208,590号美国专利申请的权益,该美国专利申请的全部内容以引用的方式并入本文中。
本文描述的主题涉及网络测试配置。更具体地,本主题涉及使用虚拟局域网(vlan)扫描进行网络测试配置的方法、系统和计算机可读介质。
发明背景
网络运营商通常会在现场(例如,非测试环境)部署网络节点之前测试网络节点的可靠性和其他特性。通常,测试具有不同流量和不同类型流量的网络节点是很重要的。例如,测试平台(诸如ixia制造的ixnetworktm平台)可以用于网络拓扑测试和流量分析,并且可以生成逼真的、可动态控制的数据平面流量(诸如多个数据包流),以使用一个或多个协议测试各种网络节点。
在测试平台可以测试一个或多个网络节点之前,通常需要进行网络测试配置。例如,测试平台的用户在尝试开始测试时,可能会因为控制平面未正确配置而在预检检查中发现测试失败。在该例中,用户可能花费大量时间来打开与被测装置(dut)的ssh连接以及将测试平台中的网络配置设置与dut中的设置进行比较。然而,手动检查测试dut所涉及的多个测试端口的网络配置设置(例如,因特网协议(ip)地址、子网掩码、网关ip地址和虚拟局域网(vlan)标识符)并不能很好地扩展,并且可能非常耗时,例如,因为一些测试可能涉及大量(例如,数百甚至数千)测试端口。
发明概述
公开了使用虚拟局域网(vlan)扫描进行网络测试配置的方法、系统和计算机可读介质。一种方法发生在网络设备测试装置的第一端口处。该方法包括向被测系统(sut)发送多个地址解析协议(arp)请求,其中该多个arp请求中的每一个包括不同的vlan标识符(id)。该方法还包括从sut接收arp响应,其中该arp响应指示与sut相关联的第一vlanid。该方法还包括在经由第一端口向sut发送测试数据包时使用第一vlanid。
一种使用vlan扫描进行网络测试配置的系统包括至少一个处理器和使用该至少一个处理器实现的网络设备测试装置。该网络设备测试装置被配置用于在该网络设备测试装置的第一端口处执行动作。该动作包括:向sut发送多个arp请求,其中该多个arp请求中的每一个包括不同的vlanid;从sut接收arp响应,其中该arp响应指示与该sut相关联的第一vlanid;以及在经由该第一端口向该sut发送测试数据包时使用该第一vlanid。
本文中描述的主题可以用软件结合硬件和/或固件来实现。例如,本文描述的主题可以由处理器执行的软件来实现。在一些实施方案中,本文描述的主题可使用其上存储有计算机可执行指令的非瞬态计算机可读介质来实现,该计算机可执行指令在由计算机的处理器执行时控制计算机来执行步骤。适合于实施本文描述的主题的各种计算机可读介质包括诸如磁盘存储器装置、芯片存储器装置、可编程逻辑装置、现场可编程门阵列以及专用集成电路之类的非瞬态装置。另外,实现本文描述的主题的计算机可读介质可以位于单个装置或计算平台上,或者可以被分布在多个装置或计算平台中。
如本文所使用,术语“节点”是指包括一个或多个处理器、网络接口和存储器的至少一个物理计算平台。
如本文所使用,术语“功能”和“模块”中的每一个是指与用于实现本文描述的特征的硬件、固件或与硬件和/或固件组合的软件。
附图简述
现在将参考附图来说明本文中描述的主题,其中:
图1是示出根据本文描述的主题的实施方案的使用vlan扫描进行网络测试配置的环境的框图;
图2是示出根据本文描述的主题的实施方案使用地址解析协议(arp)消息进行vlan扫描的图示;
图3是示出示例性地址解析协议(arp)请求的图示;
图4是示出示例性arp响应的图示;并且
图5是示出根据本文描述的主题的实施方案的使用vlan扫描进行网络测试配置的过程的流程图。
发明详述
本文描述的主题涉及使用虚拟局域网(vlan)扫描进行网络测试配置的方法、系统和计算机可读介质。当测试网络节点时,测试平台可能能够通过生成网络流量并监测和/或分析网络节点对网络流量的响应来执行具有各种目标的各种测试。然而,如果未正确配置测试平台和/或测试相关部件(例如,测试端口),则可能出现问题。
根据本文描述的主题的一些方面,用于自动检测和/或供应vlan信息以测试被测系统或装置的技术、方法或机制。例如,网络测试系统可以被配置为通过经由第一端口向被测系统(sut)或其中的节点发送多个arp请求来执行vlan发现。在该例中,每个arp请求可以被配置有不同的vlanid。继续该例,在传输arp请求之后,第一端口可以等待包含与sut或其中的节点相关联的适当vlanid的arp响应。
现在将详细参考本文描述的主题的各种实施方案,其例子在附图中示出。在可能的情况下,在所有附图中使用相同的附图标记来表示相同或类似的部分。
图1是示出根据本文描述的主题的实施方案的使用vlan扫描进行网络测试配置的环境100的图示。参考图1,环境100可以包括网络测试系统118、被测装置(dut)112和网关114。网络测试系统118可以表示用于执行与网络测试配置、vlan扫描和/或网络节点测试相关的各方面的任何合适的一个或多个实体(例如,一个或多个计算平台、网络设备测试装置或服务器群)。在一些实施方案中,网络测试系统118可以被配置为执行与测试网络、被测系统(sut)(诸如dut112)和/或网络测试系统118的部件相关联的一个或多个方面。例如,网络测试系统118可以经由dut112从测试端口向测试端口发送数据包的微突发(microburst)以测试峰值流量负载和/或缓冲能力。例如,微突发可以涉及比dut112可以向第二测试端口发送(例如,切换)数据包更快地从测试端口向dut112发送数据包。在该例中,网络测试系统118可以执行各种微突发相关测试以确定可以由dut112维持而没有数据包丢失的峰值负载和/或确定相关缓冲容量。
在一些实施方案中,网络测试系统118可以是独立工具、测试装置或在处理器上执行的软件。在一些实施方案中,网络测试系统118可以是单个节点,或者可以分布在多个计算平台或节点上。
在一些实施方案中,网络测试系统118可以与用户装置仿真器集成或共同定位,该用户装置仿真器也称为用户设备(ue)仿真器。用户装置仿真器可以包括用于仿真或模拟一个或多个3gpp(例如,lte或lte-advanced)用户装置或其他用户装置的功能,例如,发送通信、接收通信和/或测试各种节点或部件的通信能力。例如,网络测试系统118可以被配置为生成控制平面命令,该控制平面命令触发建立一个或多个隧道以便众多模拟用户装置与分组数据网络(诸如因特网)进行通信。
在一些实施方案中,网络测试系统118可以仿真或模拟一个或多个网络节点。例如,网络测试系统118可以模拟网络交换机或转发装置。在一些实施方案中,模拟网络节点可以与其他模拟实体(例如,模拟用户装置)和/或dut112进行交互。
dut112可以表示用于与网络测试系统118进行交互和/或由网络测试系统118测试和/或分析的任何合适的一个或多个实体(例如,一个或多个计算平台、网络交换机、网络节点或sut)。在一些实施方案中,dut112可以包括网络交换机或其他数据包转发装置。例如,dut112可以是能够经由一个或多个端口(例如,从网络测试系统118)接收流量、处理(例如,交换)流量和/或经由一个或多个端口(例如,向网络测试系统118)发送流量的商用网络交换机。在一些实施方案中,例如,dut112可以包括能够接收并响应与相关vlan相关联的arp请求的网关(例如,网关114)或网关功能。
网络测试系统118可以包括测试模块116。测试模块116可以是用于流量测试、测试分析、相关配置和/或rfc2889、2285和/或2544中描述的其他功能的任何合适的一个或多个实体(例如,专用集成电路(asic)、现场可编程门阵列(fpga)和/或在处理器上执行的软件)。例如,网络测试系统118和/或测试模块116可以使用一个或多个流量发生器(诸如流量发生器102)来发起对dut112的测试。
流量发生器102(也称为端口模块)可以是用于接收数据、传输数据和/或处理数据的任何合适的一个或多个实体(例如,asic、fpga和/或在处理器上执行的软件)。例如,端口模块可以包括由
在一些实施方案中,流量发生器102可以包括至少一个处理器、存储器和/或一个或多个网络接口卡(nic),诸如通信接口110。nic可以经由一个或多个物理或虚拟端口、通信接口或连接从dut112接收数据或向dut112发送数据。在一些实施方案中,通信接口110可以包括使用通用公共无线电接口(cpri)协议或其他协议进行通信的功能。例如,cpri接口和/或链路可以从流量发生器102向网关114提供数据,反之亦然。
网关114可以是用于接收数据、发送数据和/或处理数据的任何合适的一个或多个实体(例如,asic、fpga和/或在处理器上执行的软件)。例如,网关114可以包括能够接收并响应与相关vlan相关联的arp请求的ip网关。在该例中,网关114可以忽略或丢弃不包含其相同vlanid的arp请求,但是可以响应包含其相同vlanid的arp请求。
在一些实施方案中,网络测试系统118、网关114和/或dut112可以经由各种物理拓扑和/或虚拟拓扑通信地耦合。例如,与流量发生器102和网关114相关联的端口可以经由全网状虚拟拓扑、部分网状虚拟拓扑或rfc2285、2544或2889中描述的任何拓扑通信地耦合;其公开内容通过引用整体并入本文。
在一些实施方案中,dut112和网关114可以经由各种物理拓扑和/或虚拟拓扑通信地耦合。例如,dut112和网关114可以经由各种网络拓扑通信地耦合。
网络测试系统118和/或流量发生器102可以包括一个或多个处理器104、网络配置模块(ncm)106和ncm存储装置108。处理器104可以是用于执行存储在存储器(例如,ncm存储装置108和/或其他存储器)中的软件和/或模块(例如,ncm106)的任何合适的一个或多个实体。在一些实施方案中,处理器104可以包括微处理器、中央处理单元(cpu)或任何其他类似的基于硬件的处理单元。在一些实施方案中,ncm106和/或所公开主题的各个方面可以存储在ncm存储装置108或其他存储器中。
ncm存储装置108可以表示用于存储与流量测试相关联的数据的任何合适的实体(例如,非瞬态计算机可读介质、随机存取存储器(ram)、只读存储器(rom)、光学读/写存储器、高速缓冲存储器、磁读/写存储器、闪存、嵌入式存储器或存储器装置)。存储在ncm存储装置108处的数据可以包括一个或多个流量测试、测试配置、测试结果、测试期间生成的流量、测试期间接收的流量、测试统计信息、测试日志和/或关于一个或多个dut(例如,dut112)的信息。
在一些实施方案中,处理器104和/或ncm存储装置108可以用于执行、实现和/或管理测试网络配置和/或vlan扫描的各个方面,诸如ncm106或其部分。
ncm106可以是用于执行与网络测试配置相关联的一个或多个方面和/或用于检测和/或供应dut112的vlan信息的任何合适的一个或多个实体(例如,asic、fpga和/或在处理器104上执行的软件)。例如,ncm106可以经由第一端口向网关114发送多个arp请求(例如,多达4094个arp请求)。在该例中,每个arp请求可以被配置有不同的vlanid。继续该例,在发送arp请求之后,ncm106和/或第一端口可以等待包含与网关114相关联的适当vlanid的arp响应。
在一些实施方案中,网络测试系统118和/或ncm106可以包括用于记录每个测试端口(例如,流量发生器102)的配置信息(例如,检测到的或识别的vlanid)的功能。例如,在流量发生器102通过向网关114发送多个arp请求来执行vlan扫描并从网关114接收包含相关vlanid的arp响应之后,流量发生器102或另一实体(测试模块116)可以存储vlanid信息并且可以在生成经由相应的测试端口发送的测试数据包时使用该信息,使得由流量发生器102发送的测试数据包包含适当的vlanid信息。在该例中,多个流量发生器可能能够经由使用arp进行vlan扫描来识别适当的vlanid信息。
应当明白的是,图1是用于说明目的,并且可以改变、更改、添加或删除上面关于图1描述的各种节点、它们的位置和/或它们的功能(例如,模块)。例如,一些节点和/或功能可以组合成单个实体。在另一个例子中,一些节点和/或功能可以分布在多个节点和/或平台上。
图2是示出根据本文描述的主题的实施方案使用arp消息进行vlan扫描的图示。在一些实施方案中,测试模块116可以对一个或多个流量发生器(例如,流量发生器102)发起网络配置程序。例如,流量发生器102可以执行各种配置程序,例如,执行vlan扫描以识别用于与网关114和/或dut112进行通信的适当vlan。
在一些实施方案中,流量发生器102可以表示特定测试端口。例如,测试模块116可以利用多个测试端口来测试dut112处的不同特征和/或不同类型的流量。
参考图2,在步骤201中,可以从测试模块116向流量发生器102发送预测试配置发起消息。
在步骤202中,流量发生器102和/或其中的ncm106可以向网关114生成并发送(例如,广播)多个vlan特定的arp请求。例如,每个arp请求可以包括不同的vlanid。
在步骤204中,可以从流量发生器102向网关114发送包含vlanid“1”的arp请求消息。
在步骤206中,可以从流量发生器102向网关114发送包含vlanid“2”的arp请求消息。
在一些实施方案中,流量发生器102可以发送多达4094个arp请求,其中第一arp请求包括vlanid“1”并且每个后续arp请求可以将其vlanid递增1直到发送包含vlanid“4094”的最后一个(例如,第4094个)arp请求。
在步骤208中,可以从流量发生器102向网关114发送包含vlanid“4094”的arp请求消息。
在一些实施方案中,网关114可以被配置为响应于与其vlan相关联的arp请求。例如,如果网关114与vlanid“100”相关联,则响应于接收到包括vlanid“100”的arp请求,网关114可以向流量发生器102发送arp响应。在该例中,网关114可以丢弃或者不响应由流量发生器102发送的其他arp请求。
在步骤210中,可以从网关114向流量发生器102发送包含vlanid“100”的arp响应。
在步骤212中,流量发生器102可以处理arp响应并且可以识别其中包含的vlanid。
在步骤214中,可以向测试模块116发送配置信息(诸如与网关114相关联的vlanid)。例如,流量发生器102可以例如在测试模块或ncm存储装置108处本地和/或远程地存储配置信息。在该例中,当生成用于测试dut112的测试数据包时,流量发生器102和/或测试模块116可以使用配置信息。
在一些实施方案中,流量发生器102和/或ncm106可以在不等待响应的情况下生成多个arp请求。在一些实施方案中,如果在发送所有arp请求之前从网关114接收到arp响应,则流量发生器102可以停止发送剩余的arp请求。
在一些实施方案中,测试模块116可以在执行测试之前在多个流量发生器处发起配置程序。例如,测试模块116可以同时向多个流量发生器发送多个预测试配置发起消息。在另一个例子中,测试模块116可以顺序地触发流量发生器配置,例如,测试模块116可以在从流量发生器102接收配置信息之后向第二流量发生器发送预测试配置发起消息。
应明白的是,图2中所描绘的通信和/或动作是用于说明目的,并且可以使用不同于图2中描绘的和/或另外的通信和/或动作来进行数据包监测和/或相关活动。还应明白的是,本文描述的各种通信和/或动作可同时发生或者以不同的顺序或序列发生。
图3是示出示例性arp请求的图示。如图3中所描绘,以太网帧可以包括与vlan扫描和/或网络测试配置相关联的各种部分。例如,以太网帧可以包括802.1q报头部分,其可以包括vlan相关信息,诸如vlanid和协议类型。在该例中,以太网帧还可以包括arp请求部分,该arp请求部分尤其指示硬件类型、协议类型、硬件地址长度、协议地址长度、操作码、发送方媒体访问控制(mac)地址、发送方ip地址、目标mac地址以及目标ip地址。
应当明白的是,arp请求300是出于说明性目的,并且不同的和/或附加的信息可以包含在用于执行网络测试配置和/或vlan扫描的arp请求中。
图4是示出示例性arp响应的图示。如图4中所描绘,以太网帧可以包括与vlan扫描和/或网络测试配置相关联的各种部分。例如,以太网帧可以包括802.1q报头部分,其可以包括vlan相关信息,诸如vlanid和协议类型。在该例中,以太网帧还可以包括arp请求部分,该arp请求部分尤其指示硬件类型、协议类型、硬件地址长度、协议地址长度、操作码、发送方mac地址、发送方ip地址、目标mac地址以及目标ip地址。
应当明白的是,arp请求400是出于说明性目的,并且不同的和/或附加的信息可以包含在用于执行网络测试配置和/或vlan扫描的arp请求中。
图5是示出根据本文描述的主题的实施方案的使用vlan扫描进行网络测试配置的过程500的流程图。在一些实施方案中,过程500或其部分可以由网络测试系统118、ncm106、处理器104、网络设备测试装置、网络设备测试装置的端口(例如,流量发生器102)和/或另一节点或模块来执行或在其中执行。在一些实施方案中,过程500可包括步骤502、504和/或506。
参考过程500,在步骤502中,可以向sut发送多个arp请求。在一些实施方案中,多个arp请求中的每一个可以包括不同的vlanid。例如,流量发生器102和/或ncm106可以向与dut112相关联的网关114发送4094个arp请求。在该例中,每个arp请求可以包含唯一的vlanid,例如,在1至4094之间。在另一个例子中,流量发生器102和/或ncm106可以向dut112发送4094个arp请求。
在步骤504中,可以从sut接收arp响应。在一些实施方案中,arp响应可以指示与sut相关联的第一vlanid。例如,网关114可以发送包含与网关114和/或dut112相关联的vlanid“100”的arp响应。在另一个例子中,dut112可以发送包含与dut112相关联的vlanid“100”的arp响应。
在步骤506中,可以在经由第一端口向sut发送测试数据包时使用第一vlanid。例如,响应于接收到包含vlanid“100”的arp响应,流量发生器102和/或测试模块116可以存储vlanid和/或其他配置信息,并且可以将该信息包括在用于测试dut112的测试数据包中。
在一些实施方案中,多个测试端口可以利用过程500来获得用于与dut112进行通信的适当vlanid。例如,在网络设备测试装置的第二端口处,流量发生器102和/或ncm106可以向dut112发送第二多个arp请求。在该例中,流量发生器102和/或ncm106可以从网关114接收指示与sut相关联的第二vlanid的第二arp响应,并且可以在向sut发送测试数据包时使用第二vlanid。
在一些实施方案中,针对第一测试端口识别的第一vlanid可以与针对第二测试端口识别的第二vlanid相同。在一些实施方案中,针对第一测试端口识别的第一vlanid可以与针对第二测试端口识别的第二vlanid不同。例如,网络测试系统118中的不同测试端口或流量发生器可以使用不同的vlan与dut112进行通信。
在一些实施例中,在向sut发送测试数据包时使用第一vlanid包括将第一vlanid存储在与网络设备测试装置相关联的存储器中。例如,流量发生器102或ncm106可以将vlanid和/或其他配置信息存储在ncm存储装置108中。
在一些实施方案中,多个arp请求可以包括多达4094个arp请求。例如,流量发生器102或ncm106可以生成足够的arp请求以便扫描整个范围的可能的vlanid。
在一些实施例中,可以响应于接收到该多个arp请求之一而发送该arp响应。例如,网关114可以被配置为仅响应于包括其相同vlanid的arp请求。在该例中,网关114可以被配置为忽略或丢弃其他arp请求。
在一些实施方案中,网关可以使用与sut相关联的第一vlanid。例如,网关114和dut112可以与同一vlan相关联。
在一些实施方案中,sut可以包括网络节点、网络、网关、网络交换机或网络路由器。例如,sut可以包括dut112和/或网关114。在该例中,arp响应可以由网关114或sut中的另一个装置(例如,dut112)发送。
在一些实施方案中,网络设备测试装置可以包括流量发生器102、fpga、asic或处理器。例如,网络设备测试装置可以是网络测试系统118,并且可以包括各种硬件和软件部件。
在一些实施方案中,网关可以与sut集成。例如,网关114可以被实现为在dut112中的一个或多个处理器上执行的软件。
在一些实施方案中,网关可以通信地耦合到sut。例如,网关114可以被实施为与dut112分开的节点,但是可以经由网络连接。
应理解,过程500用于说明性目的,并且可以使用不同的和/或附加的动作。还应当理解,这里描述的各种动作可以以不同的顺序或序列发生。
应当注意的是,本文描述的网络测试系统118、ncm106和/或功能可以构成专用计算装置。此外,本文描述的网络测试系统118、ncm106和/或功能可以通过提供识别用于与dut112进行通信的vlan的机制(例如,使用arp的vlan扫描)来改进网络测试配置的技术领域。此外,本文描述的网络测试系统118、ncm106和/或功能可以利用或包括对计算机相关技术和/或计算机功能的一个或多个改进。例如,通过使用vlan扫描来识别正确的vlan设置,测试平台可以更快地测试网络和/或网络节点。
应当理解,在不脱离本文中描述的主题的范围的情况下,可以改变本文中描述的主题的各种细节。此外,前面的描述仅仅是出于说明的目的,而不是出于限制的目的,因为在此描述的主题由下文中阐述的权利要求书限定。