rastructure, built using commercial off-the-shelf (COTS) hardware. For example, VNF-1 may be an edge router and VNF-2 may be a network analyzer used to troubleshoot the traffic flow. Most network functions can be implemented in software that runs on COTS platform such as an x86 server. Since general purpose computers are relatively inefficient in implementing packet- forwarding functions, NFV may become impractical for VNFs that require very high throughput. Network functions that require aggregate rates below 10 Gbps are generally not a problem and can be easily virtualized. VNFs that require aggregate rates above 50 Gbps are not suitable for virtualization at the time of writing this book. However, server technology and packet-processing technology are improving rapidly. We expect the 50 Gbps limit to rise over time. All VNFs except core routers (aka P routers) in large service provider networks can be virtualized. Network Functions Virtualization SDN Controller Models Server Server VNF-1 VNF-2 Logical Port Logical/Port (ordered set of related packets) Source Destination Data Center Fabric Physical Port Physical Port FIGURE 3.4 VNFs that implement a network connection. VNFs can be classified into two general categories: host VNFs and middle box VNFs. Host VNFs are sources and sinks of packet traffic. Host VNFs originate or terminate end-user network connections. Examples of host VNFs are as follows: Domain Name Service (DNS) RADIUS Any HTTP client Middle box VNFs do not terminate end-user network connections as implied by the name. They sit in the middle of a network connection. Packets go in and come out. These VNFs most likely will modify the packet header. Layer-2 switching or layer-3 routing are the two most common functions that are implemented by using middle box VNFs. Examples of middle box VNFs are Customer edge (CE) router Provider edge (PE) router Firewall Secure gateway Proxy Load balancer WAN acceleration Service architecture evolution (SAE) gateway Proxy Cache (content distribution network [CDN]) 3