ous management: Each virtual network administrator has his own view of the topology and can freely define any routing scheme on top of it. The virtual network topology consists of nodes, links, and the connectivity between them. It can choose to use shortest path routing, multipath routing, or any customized routing mechanism. Inside the virtual network, any form of forwarding methods can be used, for example, Layer 2, Layer 3, MPLS, and Openflow. Isolation: For security and independence concern, the network visu- alization infrastructure should provide isolation to different cus- tomers. On the one hand, each virtual network should have separate routing entries. Failures or misconfiguration on one customer net- work may not affect other virtual networks. Performance: Each customer network can specify the amount of guaranteed bandwidth they want on each link. The underlying network should provide the capability of bandwidth division across multiple networks on each physical link. One way to provide virtual network is at the switch level using SDN architecture. The seminal work in this category is Flowvi- sor [31]. Figure 2.5 shows the general architecture of this type of approaches. Each virtual network runs their own SDN controller, which can be called as user-level controller. The user controller has a northbound interface to accept the customer network's management input. It presents an abstracted topology to the user. Below the user controller, it employs an infrastructure-level controller that translates the user-level Openflow rules to the OF rules on the actual physical switches. To provide isolation, each switch can have multiple Figure 2.5 Switch- User 1's User 2's Other based SDN controller controller SDN App virtualization. Infrastructure SDN Controller Translator Forwarding 2.3 Network Virtualization virtual tables to host the rules for different customer networks. This infrastructure controller essentially translates the virtual layer rules to the physical layer rules. Thus, it provides one level of 