NFV Elements

So How Do You Test a Virtual Router?

Virtualization changes everything in telecom -- even the way technology is tested.

So when Brocade Communications Systems Inc. (Nasdaq: BRCD) wanted to get the performance of its Vyatta virtual router independently tested, that set up some new challenges.

The company turned to Roy Chua, a former director of product marketing at test systems specialist Spirent Communications plc , who is now a partner at SDN Central. Chua and his team quickly identified some particular considerations that would be needed for a virtual element.

Instead of a straightforward test of a router, which involves plugging in cables, running test traffic and assessing performance, Chua's crew had a number of variables to get straight before they even tried testing Brocade's Vyatta virtual router.

"It doesn't come with a hardware platform, so you have to figure out which server to use and what are the characteristics of that server: how many CPUs; how much memory; what kind of architecture on the bus; what is the I/O; and what NICs [network interface cards] do you put in there?" Chua says.

Once the hardware component is settled, there is still the hypervisor and operating system to be chosen and configured.

To Brocade's credit, Chua says, the company didn't just specify using the fastest server around and tuning everything else for total speed. The company wanted credible results, even though it already had a performance endorsement from one of its customer's labs: Telefónica SA (NYSE: TEF) announced its results in August. (See Telefónica Proves Brocade Router Performs for NFV.)

"Instead, we worked with Spirent, which had the beginnings of a cloud test platform and had partnered with cloud service providers," Chua says. "We decided to take a server that is popular in cloud circles -- in other words, let the market decide what is appropriate from a server perspective."

For more NFV-related coverage and insights, check out our dedicated NFV content channel here on Light Reading.

Ultimately the tests were conducted using a KVM hypervisor -- the default choice in an OpenStack configuration -- running with Linux in what Chua describes as a "PCI pass-through" that connected the NICs directly into a virtual machine.

The test results exceeded even Telefonica's lab results. The Vyatta 5600 vRouter was able to achieve 80Gbit/s bi-directional traffic, 70 million packets per second with 64-byte frames, and maintained its performance with up to 2 million flows.

"We were surprised at what we saw with the platform," Chua admitted. "We didn't expect to see that many packets per second with packets that small. I'm not saying it's feature-compatible with more expensive routers, but it is good enough, pretty decent for many of the use cases within a service provider data center."

There is no guarantee of this level of performance on all use cases, but the tests showed that the virtual router handled L3 forwarding, route scalability and a virtual firewall. Full details of the test are available in this free-to-download report.

NFV performance testing remains complicated, however, and Chua warns that the shared environment of virtualization, where many apps are hosted on a server, will require its own testing, in the appropriate timeframe. This test, though, is a good indication of where the industry can get started on NFV.

— Carol Wilson, Editor-at-Large, Light Reading

dwx 12/5/2014 | 12:48:57 PM
Re: Where to learn more Well the VM layer is built these days where all the CPU stuff is basically pass-through and the high performance packet forwarding requires the NIC hardware to be accessible in the same way.   The Intel DPDK makes use of SR-IOV but there isn't a SR-IOV abstraction layer built into the hypervisors right now. It requires the hypervisor to dynamically create the virtual functions on the device to get the most benefit which is more complicated than creating a basic software switch.  ESX and KVM really only support it through a pass-through mode today where you tie an entire NIC to a single VM.  It is what you see with the Juniper, ALU, and Vyatta virtual routers.   

There are companies like Metronome who make their FlowNIC card which interacts with regular OVS to add hardware acceleration.  It's basically just a NPU on a PCI card.  Some might call that cheating because you aren't just using off-the-shelf components then, you are putting dedicated packet processing in your server.  I think in the end it comes down to cost and what makes the most sense for your application.  

A Xilinx FPGA solution would be similar. 

brooks7 12/5/2014 | 11:02:29 AM
Re: Where to learn more dwx,

Even without sharing the NICs and all the hardware are abstracted.  That is rather the point of a VM.  Yes, you lose efficiency.  I have stated here before that I don't think we will have the maximum performance applications being done on standard hardware with VMs.


catalyst 12/5/2014 | 1:45:55 AM
FPGA based NICs makes a lot of difference to this system Try using server with Xilinx FPGA based NIC cards. Programmability aspect of this will not only enhances all your numbers, also provide future proofing for the platform. Needless to say, In the world of competion  every element in the equation maters (Juniper and ALU already announced 160G throughput vRouters). 

dwx 12/4/2014 | 4:05:03 PM
Re: Where to learn more I don't think you are going to see a sharing of those resources without a hardware layer to do it.  The packet processing speed is dependent on direct access to the NIC hardware.  

The HW layer to do the virtualization is going to be on the NIC where the NIC itself presents virtual NICs to the OS.   It has different names but there are NICs which do this today.  QLogic can partition their 10GbE port into four virtual NICs.  Cisco has a "virtual NIC" PCI card for UCS which presents up to 256 NICs to the underlying OS, it's one of the tenants of the UCS architecture.  

Now Intel who developed the DPDK for their 10GE NIC hardware, doesn't seem to have this today.  



brooks7 12/3/2014 | 7:04:03 PM
Re: Where to learn more So question....the point of a VM is to share the underlying hardware as well as abstract it.  Are we heading to abstraction only first?



cnwedit 12/3/2014 | 4:28:47 PM
Re: Where to learn more Thanks for that addition. 
ANON1235145999186 12/3/2014 | 4:25:52 PM
Where to learn more Great Article Carol!

If you are interested, You can download the performance report about the on SDNCentral at:  https://www.sdncentral.com/download-brocade-vyatta-5600-vrouter-performance-report/
Sign In