. Buffer manager-significantly reduces the time the os spends allocating and deallocating buffers; fixed-size buffers are preallocated and stored in memory pools. Queue manager-implements safe lockless queues (instead of using spinlocks), allowing different software components to process packets while avoiding unnecessary wait times. Flow classification-incorporates Intel Streaming SIMD Extensions (Intel® SSE) to pro- duce a hash based on tuple information, improving throughput by enabling packets to be placed quickly into processing flows. Building the Network of the Future In addition to DPDK, Intel has also launched other technologies such as Quick Assist and Hyperscan that can be used to achieve higher x.86 performance for implementing functions such as firewall, IPS/IDS, malware/virus protection, etc. [8]. HyperSca is a software pattern matching library that can match large groups of regular expres- sions against blocks or streams of data and therefore is very useful for functions like firewall, IDS, and DPI. QuickAssist on the other hand focuses on improving the processing capability for applications that heavily use encryption and compression features. This technology provides Symmetric cryptography functions including cipher and authentication operations Public key functions including RSA, Diffie-Hellman, and elliptic curve cryptography Compression and decompression functions While DPDK and Hyperscan were initially introduced by Intel, these efforts now are maintained as Open Source projects and any VF provider can leverage these software libraries to get better performance for their code on an x.86 platform (as well as on other platforms such as ARM or PowerPC). The idea of using general purpose hardware instead of proprietary hardware, creates significant opportunities as well as challenges for equipment vendors. While the vendors have the opportunity to significantly reduce the development cost and can do a quick transition to a virtualized product by mainly focusing on the software, they will be restr