CN108075949B - 一种vpws环境实现rfc2544的方法及设备 - Google Patents
一种vpws环境实现rfc2544的方法及设备 Download PDFInfo
- Publication number
- CN108075949B CN108075949B CN201711324839.0A CN201711324839A CN108075949B CN 108075949 B CN108075949 B CN 108075949B CN 201711324839 A CN201711324839 A CN 201711324839A CN 108075949 B CN108075949 B CN 108075949B
- Authority
- CN
- China
- Prior art keywords
- vpws
- test
- fpga
- rfc2544
- processing module
- 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
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
-
- 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
-
- 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/0823—Errors, e.g. transmission errors
- H04L43/0829—Packet loss
-
- 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/0852—Delays
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种VPWS环境实现RFC2544的方法及设备,包括多核CPU作为控制面的核心,运行多种控制面协议,生成转发面处理数据包时需要的VPWS和RFC2544各种表项,多核CPU还用于生成RFC2544主动端测试的数据包;转发面由交换芯片和FPGA实现,交换芯片和FPGA互相配合处理VPWS环境下的RFC2544测试数据包;对于RFC2544主动端发包,多核CPU生成测试数据包写入FPGA,FPGA发送测试流量到交换芯片,交换芯片把测试流量发送出去;对于RFC2544被动端,交换芯片收包处理后,把测试流量发送给FPGA,FPGA处理后再次把测试流量发送给交换芯片,交换芯片把测试流量发送出去;对于RFC2544主动端收包,交换芯片收包处理后,把测试流量发送给FPGA,FPGA对测试流量做RFC2544测试参数的最后计算;可以实现设备端口的线速转发,保证设备端口的转发性能。
Description
技术领域
本发明涉及计算机网络数据通信技术领域,具体涉及一种VPWS环境实现RFC2544的方法及设备。
背景技术
VPWS(Virtual Private Wire Service),指建设在MPLS网络的基础设施之上,在两个路由器的一对端口之间提供高速的二层透传,可将本端PE设备的原始的以太网报文透明传送到远端PE设备,是一种二层的VPN协议。
RFC2544协议是RFC组织提出的用于评测网络互联设备(防火墙、IDS、Switch等)的国际标准。主要是对RFC1242中定义的性能评测参数的具体测试方法、结果的提交形式作了较详细的规定。RFC2544中规定了许多测试不同网络设备的参数,主要包括吞吐率(Throughput)、丢包率(Lost Rate)、时延(Latency)和背靠背(Back-to-Back)4个最为重要的参数。吞吐率反映被测试设备所能够处理(不丢失数据包)的最大的数据流量;丢包率反映被测设备承受特定负载的能力;时延反映被测设备处理数据包的速度;背靠背反映被测设备处理突发数据的能力(数据缓存能力)。
PTN(分组传送网,Packet Transport Network)设备最基础最常用的业务就是VPWS, PTN设备入网认证必须经过VPWS组网下RFC2544性能测试。目前业界主流的交换芯片例如broadcom或Marvel,都不具备生成RFC2544测试数据流的能力,如果用CPU软转发来生成测试数据流,虽然代码灵活,但是转发能力太差,端口无法线速,而且CPU测出的数据流的时延误差较大。
因此有必要提供一种VPWS环境实现RFC2544的方法及设备,并且要能保证转发性能,端口实现线速转发。
发明内容
本发明提出的一种VPWS环境实现RFC2544的方法及设备,通过多核CPU作为控制面核心给转发面写VPWS和RFC2544相关各种转发表项,交换芯片和FPGA作为转发面互相配合处理RFC2544的测试VPWS流量,可以实现设备端口的线速转发,保证了设备端口的转发性能。
为实现上述目的,本发明采用了以下技术方案:
一种VPWS环境实现RFC2544的方法,包括多核CPU作为控制面的核心,运行多种控制面协议,生成转发面处理数据包时需要的VPWS和RFC2544各种表项,多核CPU还用于生成RFC2544主动端测试的数据包;转发面由交换芯片和FPGA实现,交换芯片和FPGA互相配合处理VPWS环境下的RFC2544测试数据包;对于RFC2544主动端发包,多核CPU生成测试数据包写入FPGA,FPGA发送测试流量到交换芯片,交换芯片把测试流量发送出去;对于RFC2544被动端,交换芯片收包处理后,把测试流量发送给FPGA,FPGA处理后再次把测试流量发送给交换芯片,交换芯片把测试流量发送出去;对于RFC2544主动端收包,交换芯片收包处理后,把测试流量发送给FPGA,FPGA对测试流量做RFC2544测试参数的最后计算;具体包括以下步骤:
对于RFC2544主动端发包:
步骤1,多核CPU做第一处理,根据用户配置测试信息例如VPWS实例对应的UNI接口,获取到对应的VPWS实例的NNI口以及PW标签、TE标签、下一跳P设备的MAC地址,并根据用户配置的测试数据包目的MAC地址、源MAC地址等,生成需要在VPWS环境下测试的数据包,并把包写入FPGA;
步骤2,FPGA做第二处理,根据配置的VPWS实例、数据包长、发包速率、突发长度、测试时长、测试数据流类型、数据流测试使能等,在每个包中***VPWS实例号、流ID、序列号和时间戳等,把测试流量发送给交换芯片;
步骤3,交换芯片做第三处理,直接把测试流量从设备NNI口透传出去。
对于RFC2544被动端:
步骤4,设备从NNI接口接收测试数据流量,交换芯片做第四处理,剥离测试流量外层的目的MAC地址、源MAC地址、TE标签、PW标签,在载荷中打上代表VPWS实例的VLANID,把测试流量发送给FPGA;
步骤5,FPGA做第五处理,从交换芯片收到测试流量后,剥掉包中的VLANID并用VLANID查找VLAN表,在载荷外面依次封装上PW标签、TE标签、源MAC地址和目的MAC地址,并把测试流量发送给交换芯片;多核CPU根据VPWS的环境,会先生成代表VPWS实例的VLAN表写入FPGA,内容为从被动端设备NNI口出去时需要封装的PW标签、TE标签、源MAC地址和目的MAC地址;
步骤6,交换芯片做第六处理,直接把测试流量从设备NNI口透传出去。
对于RFC2544主动端收包:
步骤7,设备从NNI接口接收测试数据流量,交换芯片做第七处理,剥离测试流量外层的目的MAC地址、源MAC地址、TE标签、PW标签,把测试流量发送给FPGA;
步骤8,FPGA做第八处理,从交换芯片收到测试流量后,根据测试流量中的VPWS实例号、流ID、序列号和时间戳,计算出RFC2544每个VPWS实例每条流的吞吐量、延迟、帧丢失率和背靠背等测试参数。
一种VPWS环境实现RFC2544的设备,所述设备包括:
业务协议模块,用于运行路由协议、LDP协议、ARP协议等,要实现远端PE设备与本地PE设备之间的路由打通,在两个PE设备的NNI接口上运行LDP协议,互相分配PW标签给对方。每个PE设备还需要与直连的P设备之间学习到对方MAC地址。业务协议模块对这些协议数据处理后,将处理后的业务转发信息发消息给转发表管理模块;
转发表管理模块,用于接收所述业务转发信息,将这些业务转发信息整合转换为交换芯片处理模块和FPGA处理模块需要的格式,写入到交换芯片处理模块和FPGA处理模块;并根据用户配置的测试信息,生成需要在VPWS环境下测试的数据包,并把包写入FPGA处理模块;
交换芯片处理模块,用于对PE设备的NNI入口的测试数据包处理后,把数据包发送给FPGA处理模块,以及从FPGA处理模块收到测试数据包后,从PE设备的NNI口发送出去。交换芯片处理模块处理数据包需要查找的各种业务转发表由转发表管理模块写入;
FPGA处理模块,用于根据配置信息,主动发送测试数据流量给交换芯片处理模块,以及接收交换芯片处理模块发送过来的数据包并对数据包做进一步处理,然后再发送给交换芯片处理模块,以及从交换芯片处理模块收到测试流量后计算出RFC2544各种测试参数。FPGA处理模块处理数据包需要查找的各种业务转发表由转发表管理模块写入;
如前所述,对于RFC2544主动端发包:
步骤1中,多核CPU的转发表管理模块做第一处理,根据用户配置测试信息例如VPWS实例对应的PE设备的UNI接口,获取到对应的VPWS实例的NNI口以及PW标签、TE标签、下一跳P设备的MAC地址,并根据用户配置的测试数据包目的MAC地址,源MAC地址等,生成需要在VPWS环境下测试的数据包,并把包写入FPGA处理模块。当VPWS环境搭建完成后,转发表管理模块会生成VPWS相关的表项,例如在多核CPU中生成的UNI入端口属性表中打上VPWS属性标志和代表VPWS实例的VPNID,以VPNID为键值生成VPWS转发表,VPWS转发表内容包括NNI口以及PW标签、TE标签、下一跳P设备的IP地址。转发表管理模块还会生成以NNI口和下一跳P设备的IP地址为键值的ARP表,内容为下一跳P设备的MAC地址。根据这些事先已经生成的表项,当用户配置测试信息绑定VPWS实例对应的UNI接口时,转发表管理模块就能获取到对应的VPWS实例的NNI口以及PW标签、TE标签、下一跳P设备的MAC地址等,生成需要在VPWS环境下测试的数据包,并把包写入FPGA处理模块。
步骤2中,FPGA处理模块做第二处理,根据配置的VPWS实例、数据包长、发包速率、突发长度、测试时长、测试数据流类型、数据流测试使能等,在每个包中***VPWS实例号、流ID、序列号和时间戳等,把测试流量发送给交换芯片处理模块。
步骤3中,交换芯片处理模块做第三处理,直接把测试流量从PE设备NNI口透传出去。
对于RFC2544被动端:
步骤4中,PE设备从NNI接口接收测试数据流量,交换芯片处理模块做第四处理,剥离测试流量外层的目的MAC地址、源MAC地址、TE标签、PW标签,在载荷中打上代表VPWS实例的VLANID,把测试流量发送给FPGA处理模块。转发表管理模块需要写MPLS标签转发表到交换芯片处理模块,使得数据流量能够剥离TE标签和PW标签。本发明支持多VPWS实例,转发表管理模块需要建立入PW与出PW的对应关系,通过在数据流量中***VLANID来实现。
步骤5中,FPGA处理模块做第五处理,从交换芯片处理模块收到测试流量后,剥掉包中的VLANID并用VLANID查找VLAN表,在载荷外面依次封装上出PW标签、TE标签、源MAC地址和目的MAC地址,并把测试流量发送给交换芯片处理模块。转发表管理模块根据VPWS实例,建立入PW与出PW的对应关系,会生成代表VPWS实例的VLAN表写入FPGA处理模块,内容为从被动端设备NNI口出去时需要封装的PW标签、TE标签、源MAC地址和目的MAC地址;
步骤6中,交换芯片处理模块做第六处理,直接把测试流量从PE设备NNI口透传出去。
对于RFC2544主动端收包:
步骤7中,PE设备从NNI接口接收测试数据流量,交换芯片处理模块做第七处理,剥离测试流量外层的目的MAC地址、源MAC地址、TE标签、PW标签,把测试流量发送给FPGA处理模块。转发表管理模块需要写MPLS标签转发表到交换芯片处理模块,使得数据流量能够剥离TE标签和PW标签。
步骤8中,FPGA处理模块做第八处理,从交换芯片处理模块收到测试流量后,根据测试流量中的VPWS实例号、流ID、序列号和时间戳,计算出RFC2544每个VPWS实例每条流的吞吐量、延迟、帧丢失率和背靠背等测试参数。
本发明的有益效果是:本发明方案中,多核CPU作为控制面的核心,生成转发面需要的各种表项。转发面由交换芯片和FPGA实现,交换芯片和FPGA转发依据的表项都由多核CPU写入。对于RFC2544主动端发包,多核CPU做第一处理,根据配置把包写入FPGA;FPGA做第二处理,根据配置的发包包长、发包速率和发包时长等,把测试流量发送给交换芯片,并在每个包中***VPWS实例号、流ID、序列号和时间戳;交换芯片做第三处理,把测试流量透传出设备NNI口。对于RFC2544被动端,交换芯片做第四处理,剥离测试流量外层的目的MAC地址、源MAC地址、TE标签、PW标签,在载荷中打上代表VPWS实例的VLANID,把测试流量发送给FPGA;多核CPU把VLAN表写入FPGA,内容为PW标签、TE标签、源MAC地址和目的MAC地址;FPGA做第五处理,从交换芯片收到测试流量后,剥掉包中的VLANID并用VLANID查找VLAN表,在载荷外面依次封装上PW标签、TE标签、源MAC地址和目的MAC地址,并把测试流量发送给交换芯片;交换芯片做第六处理,把测试流量透传出设备NNI口。对于RFC2544主动端收包,交换芯片做第七处理,剥离测试流量外层的目的MAC地址、源MAC地址、TE标签、PW标签,把载荷发送给FPGA;FPGA做第八处理,根据测试流量中的VPWS实例号、流ID、序列号和时间戳,计算出RFC2544每个VPWS实例每条流的吞吐量、延迟、帧丢失率和背靠背等测试参数。本发明通过多核CPU作为控制面核心给转发面写VPWS和RFC2544相关各种转发表项,交换芯片和FPGA作为转发面互相配合处理RFC2544的测试VPWS流量,可以实现设备端口的线速转发,保证了设备端口的转发性能。
附图说明
图1为本发明的VPWS环境实现RFC2544的方法步骤流程图;
图2为本发明的硬件连接结构图;
图3为本发明的设备的结构框图;
图4为本发明的转发表管理模块第一处理流程图;
图5为本发明的FPGA处理模块第二处理流程图;
图6为本发明的交换芯片处理模块第四处理流程图;
图7为本发明的FPGA处理模块第五处理流程图;
图8为本发明的交换芯片处理模块第七处理流程图;
图9为本发明的FPGA处理模块第八处理流程图。
具体实施方式
下面结合附图对本发明做进一步说明:
如图1所示,本实施例所述的VPWS环境实现RFC2544的方法,包括对于RFC2544主动端发包:
步骤S101、多核CPU做第一处理,根据配置把包写入FPGA;
步骤S102、FPGA做第二处理,根据配置的发包包长、发包速率和发包时长等,把测试流量发送给交换芯片,并在每个包中***VPWS实例号、流ID、序列号和时间戳;
步骤S103、交换芯片做第三处理,把测试流量透传出设备NNI口。
对于RFC2544被动端处理:
步骤S104、交换芯片做第四处理,剥离测试流量外层的目的MAC地址、源MAC地址、TE标签、PW标签,在载荷中打上代表VPWS实例的VLANID,把测试流量发送给FPGA;
步骤S105、FPGA做第五处理,从交换芯片收到测试流量后,剥掉包中的VLANID并用VLANID查找VLAN表,在载荷外面依次封装上PW标签、TE标签、源MAC地址和目的MAC地址,并把测试流量发送给交换芯片;
步骤S106、交换芯片做第六处理,把测试流量透传出设备NNI口。
对于RFC2544主动端收包:
步骤S107、交换芯片做第七处理,剥离测试流量外层的目的MAC地址、源MAC地址、TE标签、PW标签,把载荷发送给FPGA;
步骤S108、FPGA做第八处理,根据测试流量中的VPWS实例号、流ID、序列号和时间戳,计算出RFC2544每个VPWS实例每条流的吞吐量、延迟、帧丢失率和背靠背等测试参数。
如图2所示,多核CPU作为控制面的核心,承载着整个控制面软件***的运行,并生成转发面需要的各种表项,转发面由交换芯片和FPGA配合实现,交换芯片和FPGA转发依据的表项都由多核CPU写入。
依据本发明实施例的另一个方面,提供了一种VPWS环境实现RFC2544的设备,如图3所示,其中,图中细箭头表示转发表信息,粗箭头表示转发流量,所述设备包括:
业务协议模块,用于运行路由协议、LDP协议、ARP协议等,要实现远端PE设备与本地PE设备之间的路由打通,在两个PE设备的NNI接口上运行LDP协议,互相分配PW标签给对方。每个PE设备还需要与直连下一跳的P设备之间学习到对方MAC地址。业务协议模块对这些协议数据处理后,将处理后的业务转发信息发消息给转发表管理模块;
转发表管理模块,用于接收所述业务转发信息,将这些业务转发信息整合转换为交换芯片处理模块和FPGA处理模块需要的格式,写入到交换芯片处理模块和FPGA处理模块;并根据用户配置的测试信息,生成需要在VPWS环境下测试的数据包,并把包写入FPGA处理模块;
交换芯片处理模块,用于对PE设备的NNI入口的测试数据包处理后,把数据包发送给FPGA处理模块,以及从FPGA处理模块收到测试数据包后,从PE设备的NNI口发送出去。交换芯片处理模块处理数据包需要查找的各种业务转发表由转发表管理模块写入;
FPGA处理模块,用于根据配置信息,主动发送测试数据流量给交换芯片处理模块,以及接收交换芯片处理模块发送过来的数据包并对数据包做进一步处理,然后再发送给交换芯片处理模块,以及从交换芯片处理模块收到测试流量后计算出RFC2544各种测试参数。FPGA处理模块处理数据包需要查找的各种业务转发表由转发表管理模块写入;
为进一步了解本发明实施例提供的测试数据包在设备中转发的步骤流程,下面将详细说明。
在步骤S101中,多核CPU的转发表管理模块做第一处理,根据用户配置测试信息例如VPWS实例对应的PE设备的UNI接口,获取到对应的VPWS实例的NNI口以及PW标签、TE标签、下一跳P设备的MAC地址,并根据用户配置的测试数据包目的MAC地址,源MAC地址等,生成需要在VPWS环境下测试的数据包,并把包写入FPGA处理模块。当VPWS环境搭建完成后,转发表管理模块会生成VPWS相关的表项,例如在多核CPU中生成的UNI入端口属性表中打上VPWS属性标志和代表VPWS实例的VPNID,以VPNID为键值生成VPWS转发表,VPWS转发表内容包括NNI口以及PW标签、TE标签、下一跳P设备的IP地址。转发表管理模块还会生成以NNI口和下一跳P设备的IP地址为键值的ARP表,内容为下一跳P设备的MAC地址。根据这些事先已经生成的表项,当用户配置测试信息绑定VPWS实例对应的UNI接口时,转发表管理模块就能获取到对应的VPWS实例的NNI口以及PW标签、TE标签、下一跳P设备的MAC地址等,生成需要在VPWS环境下测试的数据包,并把包写入FPGA处理模块。转发表管理模块做第一处理流程如图4所示:
步骤S401、用户配置测试信息绑定VPWS实例的UNI接口;
步骤S402、转发表管理模块读取UNI接口入端口属性表获取VPWS绑定标志和VPNID;
步骤S403、转发表管理模块以VPNID为键值,读取VPWS转发表,获取出NNI口、下一跳P设备的IP地址、PW标签和TE标签;
步骤S404、转发表管理模块以NNI口和下一跳P设备的IP地址为键值,读取ARP表,获取下一跳P设备的MAC地址;
步骤S405、结合以上信息,转发表管理模块再根据用户配置的测试数据包载荷的目的MAC地址和源MAC地址,生成VPWS环境下的测试包;
步骤S406、把包写入FPGA处理模块。
在步骤S102中,FPGA处理模块做第二处理,根据配置的VPWS实例、数据包长、发包速率、突发长度、测试时长、测试数据流类型、数据流测试使能等,在每个包中***VPWS实例号、流ID、序列号和时间戳等,把测试流量发送给交换芯片处理模块。FPGA处理模块做第二处理流程如图5所示:
步骤S501、根据配置的VPWS实例、数据包长、发包速率、突发长度、测试时长、测试数据流类型、数据流测试使能等,在每个包中***VPWS实例号、流ID、序列号和时间戳;
步骤S502、把测试流量发送给交换芯片处理模块;
在步骤S103中,交换芯片处理模块做第三处理,直接把测试流量从PE设备NNI口透传出去,出口由FPGA处理模块在数据包前面打上交换芯片处理模块识别的出口格式。
在步骤S104中,PE设备从NNI接口接收测试数据流量,交换芯片处理模块做第四处理,剥离测试流量外层的目的MAC地址、源MAC地址、TE标签、PW标签,在载荷中打上代表VPWS实例的VLANID,把测试流量发送给FPGA处理模块。转发表管理模块需要写MPLS标签转发表到交换芯片处理模块,使得数据流量能够剥离TE标签和PW标签。本发明支持多VPWS实例,转发表管理模块需要建立入PW与出PW的对应关系,通过在数据流量中***VLANID来实现。交换芯片处理模块做第四处理流程如图6所示:
步骤S601、PE设备从NNI接口接收测试数据流量;
步骤S602、剥离测试流量外层的目的MAC地址、源MAC地址、TE标签、PW标签,在载荷中打上代表VPWS实例的VLANID;
步骤S603、把测试流量发送给FPGA处理模块;
在步骤S105中,FPGA处理模块做第五处理,从交换芯片处理模块收到测试流量后,剥掉包中的VLANID并用VLANID查找VLAN表,在载荷外面依次封装上出PW标签、TE标签、源MAC地址和目的MAC地址,并把测试流量发送给交换芯片处理模块。转发表管理模块根据VPWS实例,建立入PW与出PW的对应关系,会生成代表VPWS实例的VLAN表写入FPGA处理模块,内容为从被动端设备NNI口出去时需要封装的PW标签、TE标签、源MAC地址和目的MAC地址。FPGA处理模块做第五处理流程如图7所示:
步骤S701、从交换芯片处理模块收到测试流量;
步骤S702、剥掉包中的VLANID并用VLANID查找VLAN表,获取外层目的MAC地址、源MAC地址、TE标签和PW标签;
步骤S703、在测试载荷外面依次封装上出PW标签、TE标签、源MAC地址和目的MAC地址,把测试流量发送给交换芯片处理模块;
在步骤S106中,交换芯片处理模块做第六处理,直接把测试流量从PE设备NNI口透传出去,出口由FPGA处理模块在数据包前面打上交换芯片处理模块识别的出口格式。
在步骤S107中,PE设备从NNI接口接收测试数据流量,交换芯片处理模块做第七处理,剥离测试流量外层的目的MAC地址、源MAC地址、TE标签、PW标签,把测试流量发送给FPGA处理模块。转发表管理模块需要写MPLS标签转发表到交换芯片处理模块,使得数据流量能够剥离TE标签和PW标签。交换芯片处理模块做第七处理流程如图8所示:
步骤S801、PE设备从NNI接口接收测试数据流量;
步骤S802、剥离测试流量外层的目的MAC地址、源MAC地址、TE标签、PW标签;
步骤S803、把测试流量发送给FPGA处理模块。
在步骤S108中,FPGA处理模块做第八处理,从交换芯片处理模块收到测试流量后,根据测试流量中的VPWS实例号、流ID、序列号和时间戳,计算出RFC2544每个VPWS实例每条流的吞吐量、延迟、帧丢失率和背靠背等测试参数。FPGA处理模块做第八处理流程如图9所示:
步骤S901、从交换芯片处理模块收到测试流量;
步骤S902、根据测试流量中的VPWS实例号、流ID、序列号和时间戳,计算出RFC2544每个VPWS实例每条流的吞吐量、延迟、帧丢失率和背靠背等测试参数。
以上所述的实施例仅仅是对本发明的优选实施方式进行描述,并非对本发明的范围进行限定,在不脱离本发明设计精神的前提下,本领域普通技术人员对本发明的技术方案作出的各种变形和改进,均应落入本发明的保护范围内。
Claims (6)
1.一种VPWS环境实现RFC2544的方法,其特征在于:具体包括以下步骤:
对于RFC2544主动端发包:
步骤1,多核CPU做第一处理,根据用户配置测试信息VPWS实例对应的UNI接口,获取到对应的VPWS实例的NNI口以及PW标签、TE标签、下一跳P设备的MAC地址,并根据用户配置的测试数据包目的MAC地址、源MAC地址,生成需要在VPWS环境下测试的数据包,并把包写入FPGA;
步骤2,FPGA做第二处理,根据配置的VPWS实例、数据包长、发包速率、突发长度、测试时长、测试数据流类型、数据流测试使能,在每个包中***VPWS实例号、流ID、序列号和时间戳,把测试流量发送给交换芯片;
步骤3,交换芯片做第三处理,直接把测试流量从设备NNI口透传出去;
对于RFC2544被动端:
步骤4,设备从NNI接口接收测试数据流量,交换芯片做第四处理,剥离测试流量外层的目的MAC地址、源MAC地址、TE标签、PW标签,在载荷中打上代表VPWS实例的VLANID,把测试流量发送给FPGA;
步骤5,FPGA做第五处理,从交换芯片收到测试流量后,剥掉包中的VLANID并用VLANID查找VLAN表,在载荷外面依次封装上PW标签、TE标签、源MAC地址和目的MAC地址,并把测试流量发送给交换芯片;多核CPU根据VPWS的环境,会先生成代表VPWS实例的VLAN表写入FPGA,内容为从被动端设备NNI口出去时需要封装的PW标签、TE标签、源MAC地址和目的MAC地址;
步骤6,交换芯片做第六处理,直接把测试流量从设备NNI口透传出去;
对于RFC2544主动端收包:
步骤7,设备从NNI接口接收测试数据流量,交换芯片做第七处理,剥离测试流量外层的目的MAC地址、源MAC地址、TE标签、PW标签,把测试流量发送给FPGA;
步骤8,FPGA做第八处理,从交换芯片收到测试流量后,根据测试流量中的VPWS实例号、流ID、序列号和时间戳,计算出RFC2544每个VPWS实例每条流的测试参数。
2.根据权利要求1所述的VPWS环境实现RFC2544的方法,其特征在于:所述步骤1还包括当VPWS环境搭建完成后,转发表管理模块会生成VPWS相关的表项,在多核CPU中生成的UNI入端口属性表中打上VPWS属性标志和代表VPWS实例的VPNID,以VPNID为键值生成VPWS转发表,VPWS转发表内容包括NNI口以及PW标签、TE标签、下一跳P设备的IP地址;转发表管理模块还会生成以NNI口和下一跳P设备的IP地址为键值的ARP表,内容为下一跳P设备的MAC地址,根据这些事先已经生成的表项,当用户配置测试信息绑定VPWS实例对应的UNI接口时,转发表管理模块就能获取到对应的VPWS实例的NNI口以及PW标签、TE标签、下一跳P设备的MAC地址,生成需要在VPWS环境下测试的数据包,并把包写入FPGA处理模块。
3.根据权利要求2所述的VPWS环境实现RFC2544的方法,其特征在于:所述步骤4还包括转发表管理模块需要写MPLS标签转发表到交换芯片处理模块,使得数据流量能够剥离TE标签和PW标签。
4.根据权利要求3所述的VPWS环境实现RFC2544的方法,其特征在于:所述步骤7还包括转发表管理模块需要写MPLS标签转发表到交换芯片处理模块,使得数据流量能够剥离TE标签和PW标签。
5.根据权利要求1-4任意一项所述的VPWS环境实现RFC2544的方法,其特征在于:所述步骤8中测试参数为吞吐量、延迟量、帧丢失率和背靠背值。
6.一种VPWS环境实现RFC2544的设备,其特征在于:包括业务协议模块、转发表管理模块、交换芯片处理模块及FPGA处理模块;
业务协议模块,用于运行路由协议、LDP协议、ARP协议,要实现远端PE设备与本地PE设备之间的路由打通,在两个PE设备的NNI接口上运行LDP协议,互相分配PW标签给对方,每个PE设备还需要与直连的P设备之间学习到对方MAC地址,业务协议模块对这些协议数据处理后,将处理后的业务转发信息发消息给转发表管理模块;
转发表管理模块,用于接收所述业务转发信息,将这些业务转发信息整合转换为交换芯片处理模块和FPGA处理模块需要的格式,写入到交换芯片处理模块和FPGA处理模块;并根据用户配置的测试信息,生成需要在VPWS环境下测试的数据包,并把包写入FPGA处理模块;
交换芯片处理模块,用于对PE设备的NNI入口的测试数据包处理后,把数据包发送给FPGA处理模块,以及从FPGA处理模块收到测试数据包后,从PE设备的NNI口发送出去,交换芯片处理模块处理数据包需要查找的各种业务转发表由转发表管理模块写入;
FPGA处理模块,用于根据配置信息,主动发送测试数据流量给交换芯片处理模块,以及接收交换芯片处理模块发送过来的数据包并对数据包做进一步处理,然后再发送给交换芯片处理模块,以及从交换芯片处理模块收到测试流量后计算出RFC2544各种测试参数,FPGA处理模块处理数据包需要查找的各种业务转发表由转发表管理模块写入。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711324839.0A CN108075949B (zh) | 2017-12-13 | 2017-12-13 | 一种vpws环境实现rfc2544的方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711324839.0A CN108075949B (zh) | 2017-12-13 | 2017-12-13 | 一种vpws环境实现rfc2544的方法及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108075949A CN108075949A (zh) | 2018-05-25 |
CN108075949B true CN108075949B (zh) | 2021-03-23 |
Family
ID=62158338
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711324839.0A Active CN108075949B (zh) | 2017-12-13 | 2017-12-13 | 一种vpws环境实现rfc2544的方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108075949B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111490907B (zh) * | 2019-01-25 | 2021-10-15 | 华为技术有限公司 | 一种确定vxlan网络性能参数的方法及装置 |
CN111683307B (zh) * | 2020-05-22 | 2022-05-20 | 烽火通信科技股份有限公司 | 一种olt多级交换下业务接入的方法及*** |
CN113765862B (zh) * | 2020-06-05 | 2024-02-09 | 腾讯科技(成都)有限公司 | 游戏协议测试的方法、装置、设备及计算机可读存储介质 |
US20230289303A1 (en) * | 2020-09-18 | 2023-09-14 | Intel Corporation | Improving remote traffic performance on cluster-aware processors |
CN113037859B (zh) * | 2021-03-24 | 2022-04-22 | 新华三技术有限公司 | 一种会话信息管理方法、装置、交换设备及介质 |
CN115955396A (zh) * | 2022-12-07 | 2023-04-11 | 篆芯半导体(南京)有限公司 | 以太交换网络流量产生方法、***、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102143080A (zh) * | 2011-03-29 | 2011-08-03 | 福建星网锐捷网络有限公司 | 多协议标签交换网络中的标签分配方法、***及装置 |
CN103179036A (zh) * | 2011-12-21 | 2013-06-26 | 上海博达数据通信有限公司 | 基于FPGA实现MPLS-TP OAM的Linktrace的方法 |
CN103490969A (zh) * | 2013-09-17 | 2014-01-01 | 烽火通信科技股份有限公司 | 实现vpws冗余保护快速收敛的***及方法 |
CN203708279U (zh) * | 2013-12-31 | 2014-07-09 | 唯栎电子科技(上海)有限公司 | 轨道交通专用管理型工业以太网交换机 |
CN105591839A (zh) * | 2015-12-23 | 2016-05-18 | 浪潮集团有限公司 | 一种测试网络交换芯片的装置、方法及*** |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8144715B2 (en) * | 2007-08-10 | 2012-03-27 | Rockstar Bideo LP | Method and apparatus for interworking VPLS and ethernet networks |
US20090198483A1 (en) * | 2008-02-06 | 2009-08-06 | Sezen Uysal | Apparatus and method for network emulation by using hardware accelerated network interface cards |
-
2017
- 2017-12-13 CN CN201711324839.0A patent/CN108075949B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102143080A (zh) * | 2011-03-29 | 2011-08-03 | 福建星网锐捷网络有限公司 | 多协议标签交换网络中的标签分配方法、***及装置 |
CN103179036A (zh) * | 2011-12-21 | 2013-06-26 | 上海博达数据通信有限公司 | 基于FPGA实现MPLS-TP OAM的Linktrace的方法 |
CN103490969A (zh) * | 2013-09-17 | 2014-01-01 | 烽火通信科技股份有限公司 | 实现vpws冗余保护快速收敛的***及方法 |
CN203708279U (zh) * | 2013-12-31 | 2014-07-09 | 唯栎电子科技(上海)有限公司 | 轨道交通专用管理型工业以太网交换机 |
CN105591839A (zh) * | 2015-12-23 | 2016-05-18 | 浪潮集团有限公司 | 一种测试网络交换芯片的装置、方法及*** |
Non-Patent Citations (2)
Title |
---|
Emulation of GMPLS-controlled Ethernet Label Switching;Wouter Tavernier*, Dimitri Papadimitriou†, Didier Colle*;《2009 5th International Conference on Testbeds and Research Infrastructures for the Development of Networks & Communities and Workshops》;20090526;全文 * |
基于RFC2544的千兆以太网性能测试的实现;金燕,陈佳彬,陈尔言,王卫静;《浙江工业大学学报》;20161231;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN108075949A (zh) | 2018-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108075949B (zh) | 一种vpws环境实现rfc2544的方法及设备 | |
US8396954B2 (en) | Routing and service performance management in an application acceleration environment | |
US7852789B2 (en) | Methods, systems, and/or devices for providing network access | |
JP5864618B2 (ja) | コネクションレスmplsネットワークの転送レベルでのmpls経路のルーピング | |
US9654303B2 (en) | Method and apparatus for emulating network devices | |
US8320374B2 (en) | Method and apparatus for improved multicast routing | |
CN108040135B (zh) | 一种vpws报文穿越三层ip网络的方法及装置 | |
WO2013145167A1 (ja) | Lan多重化装置 | |
US20040151180A1 (en) | Enhanced H-VPLS service architecture using control word | |
CN101110745A (zh) | 衔接二层网络和三层网络的方法、装置和*** | |
WO2009012688A1 (fr) | Procédé, système et appareil de réacheminement de message dans un réseau privé virtuel à trois couches | |
WO2009021371A1 (fr) | Procédé et dispositif permettant de réaliser une émulation pseudo-filaire de bout en bout | |
JP2009212875A (ja) | 通信装置及びそれに用いる運用管理方法 | |
CN110381071B (zh) | 一种报文传输方法、装置及发送方设备 | |
JP7026788B2 (ja) | ターゲット伝送ルートを取得するための方法、関連デバイス、およびシステム | |
CN112583718B (zh) | 一种SRoU场景下SRv6报文传递方法、***、设备及介质 | |
CN112637237B (zh) | 基于SRoU的业务加密方法、***、设备及存储介质 | |
CN109587060A (zh) | 一种vpws报文穿越三层ip网络的方法及设备 | |
CN111478821B (zh) | 一种网络性能测试方法和*** | |
CN110677314B (zh) | 网络接口测试方法、***、电子设备及存储介质 | |
JP5713865B2 (ja) | Vpn終端装置、通信システム、パケット転送方法、及びプログラム | |
CN102611631A (zh) | 一种伪线场景下协议报文保护方法、装置及*** | |
CN101252526B (zh) | 流量控制方法以及vpws网络*** | |
TW201215045A (en) | Pseudo-wire providing an in-band control channel using an offset | |
CN109561012B (zh) | 一种sdh网络与分组网络的通讯方法 |
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 |