NETWORK AND SYSTEM FOR NETWORK VIRTUALIZATION
Currently available network virtualization solutions are either specifically tailored for wired networks composed of nodes with very large processing power and storage space. The present invention relates to a novel virtualization framework specifically tailored to wireless networks. Such framework provides Wireless Internet Service Providers (WISP) with an effective virtualization solution, allowing production traffic to share part of the available network resources with a variable number of network slices where novel solutions, such as new routing protocols, services or network operation tools, can be experimentally tested in a severely controlled yet realistic environment.
Latest Associazione Create-Net Patents:
The invention relates to the field of network virtualization
BACKGROUND OF THE INVENTIONNetwork Virtualization is currently regarded as one of the most promising approaches to enable innovation in today's networks. Generally speaking, Network Virtualization can be seen as a fundamental tool for several applications:
-
- evaluating new, not necessarily backward compliant Internet architectures in large-scale realistic environments, thereby helping to overcome the current Internet ossification;
- changing the functional role and business model of Internet Service Providers by decoupling the provisioning of physical infrastructure from the provisioning of communication/computing resources. In such a way it allows the introduction of new players such as: Infrastructure Providers, Virtual Network Providers and Service Providers, eventually improving the competition in this sector;
- enabling the smooth and controlled introduction of novel services in an operational network by providing means to isolate them from already deployed applications, thereby promoting innovation in telecommunication networks;
- moving logical instances of nodes and services across an infrastructure in order to optimize network performance and minimize operational expenditures. As an example, moving services close to the users may lead to a decrease in the power consumption of a physical network, therefore contributing to a limitation of the network's carbon footprint.
Network Virtualization includes methods and techniques to effectively share a common physical network infrastructure, by splitting it into several logical network instances (generally referred to as “slices”) composed virtual nodes (“slivers”) and of virtual links [1,2]
Interactions between the logical network instances can be controlled by appropriate software or hardware components. Compared to the concept of “logical routers” developed today by vendors, in network virtualization virtual nodes in a slice are fully programmable to allow the instantiation of a network instance where novel architectures or services (potentially departing from legacy IP-based architectures) can be tested in a controlled environment before putting them in production.
Currently proposed network virtualization solutions are typically tailored for wired networks composed of nodes with very large processing power and storage space (PlanetLab [3], VINI [4], G-Lab [5], etc). On the other hand, very few studies have been performed on resource-constrained environments in general, and multi-hop wireless networks in particular. Further, they have mainly focused on how different wireless medium virtualization techniques affect the overall network slices performance in term of isolation and stability [6, 7]. Such solutions are not suitable for use by a Wireless Internet Service Provider (WISP) that wants to allow production traffic to share part of the available network resources with a variable number of slices where innovative solutions can be tested in a severely controlled yet realistic environment. In such a scenario, production traffic must be assigned on one privileged slice where network resources like channel bandwidth and node processing are guaranteed to the detriment of other slices running experimental tests. The present invention provides a solution for these needs.
Network virtualization in wireless networks needs to address two additional major issues:
(i) how to isolate wireless resources belonging to network slices coexisting at the same time to ensure minimal interference among them, and
(ii) how to control wireless resource utilization to ensure that a slice does not infringe the resources of another slice.
These problems are solved by the method of claim 1 and by the system of claim 12.
Several techniques have been proposed to guarantee the isolation of wireless resources among concurrent slices[14]:
-
- SDM (Space Division Multiplexing), where physical wireless nodes are partitioned in space, forming separate sub-networks, thereby minimizing the interference among different slices.
- FDM (Frequency Division Multiplexing), where different slices are partitioned in the frequency domain by leveraging on the availability of multiple wireless interfaces on each network node.
- CDM (Code Division Multiplexing), similar to FDM, but assigning different codes to each slice.
- TDM (Time Division Multiplexing), whereby slices are partitioned in the time domain by assigning them a specific timeslot for their communication needs.
While studies regarding the feasibility of each of these approaches (or combinations thereof), with their pros and cons have been already provided in literature [6, 7], they fail to address the problem of an effective isolation between concurrent slices on a multi-hop wireless network through a finer control of wireless and node resources usage in the network: the present invention provides techniques and architectures to achieve this.
In particular, the present invention achieves a level of flexibility which none of the aforementioned techniques, used in a stand-alone fashion, can provide. Further, the present invention targets the provisioning of methods for ensuring that a privileged slice (typically the one carrying the production traffic) can have guaranteed resources while the ones devoted to experimental activities may share the remaining (possibly time-varying) network resources.
Hereafter, certain embodiments of the invention related to a novel virtualization framework specifically tailored to multi-hop wireless networks are introduced. Such networks are usually built using commodity components and are characterized by rather limited computing capabilities, in comparison to the traditional carrier-class networking equipment exploited in projects such as FEDERICA [8], AKARI [9] or GEM [10].
Most of the network virtualization architectures devised so far [8, 9, 10] aim at providing multiple isolated environments where experiments can be run in parallel over real-world networks. The present invention, on the other hand, provides wireless networks operators with a comprehensive virtualization solution where production traffic (i.e. the traffic generated by the end-users), shares part of the available network resources with a variable number of experimental slices where novel solutions, e.g. routing protocols, are being tested.
In this simplified scenario, the production slice A is assigned 80% of the resources in the network, while the two experimental slices equally share the remaining 20% of resources. The present architecture foresees a scenario where 5 to 10 slices share the overall network resources. Such limitation is mandated by the computing and storage constraints that characterized currently used wireless multi-hop networking devices, but may be enlarged in the future.
Traffic shaping is performed at each node in order to limit the amount of network resources used by each sliver. In this simplified setup the resources that each sliver can exploit are upper bounded by a fixed threshold derived from the relative performance goal given during the planning phase. As a result, slice A “sees” an 800 Kb/s bidirectional link between node 1 and node 2, while the available bandwidth between node 2 and node 3 is 1600 Kb/s. In this setup some bandwidth is voluntary left unused. However scenarios where a sliver can have full access to all the available bandwidth are also supported.
Hereafter the present invention node's architecture (see
Due to the latter limitation, one embodiment of the present invention uses a new wireless network virtualization stack in user-space, using a software router such as the Click modular router [13]. Albeit characterized by a higher overhead in comparison to pure kernel-level implementation, solutions based on a software router such as the Click modular router have the advantage of being highly customizable allowing to circumvent the flexibility limitations of typical container based solutions [14].
The software router is used both within each sliver (guest software router) and at the host operating system level (host software router). More specifically, the software router instance running within a sliver provides the guest environment with a set of virtual interfaces (ath0, ath1, . . . , athN) implemented as Linux TAP devices. A TAP device operates at layer 2 of the traditional ISO/OSI networking stack and simulates an Ethernet device.
User-space process, running within a sliver, can exploit the virtual interfaces to implement their routing strategy. Communication over the virtual interfaces can be done using two different frame formats:
-
- 802.3 headers (Ethernet). Used to expose a standard Ethernet interface.
- 802.11 headers.Used to expose a raw wireless interface. In this case the user-space applications must properly encapsulate their traffic using the radiotap header format. The radiotap header format is a mechanism to supply additional information about 802.11 frames, from the driver to user-space applications, and from a user-space application to the driver for transmission.
In either situation, outgoing traffic is encapsulated by the guest software router process and sent to the host software router process through the virtual interface eth0 provided by the virtual container. In case the user-space application is already using the radiotap header, no additional encapsulation is performed by the guest click process and the frame is delivered unchanged to the host operating system. The host software router process receives the incoming frame and dispatches it to the suitable device according to a set of policies maintained by the Link Broker and the Bandwidth Partitioner.
The Link Broker is a software module that can expose different connectivity graphs to the various slivers without requiring that the nodes must be physically separated (i.e., out of radio range). Connectivity graphs are defined on a per-slice basis allowing us to define a different topology for each slice. This is particularly useful to test novel routing strategies on a subset of the nodes. Moreover, if wireless routers are equipped with multiple radio interfaces, it is possible to create multiple slices (whose cardinality equals the number of radio interfaces) operating on orthogonal frequency bands, implementing therefore an FDM wireless network virtualisation solution. Hybrid solutions where only a subset of the slivers operates on orthogonal frequencies are also supported. Albeit network connectivity graphs are defined at deployment time, they can change during the network operations in order to create connectivity scenarios that simulate different operating conditions (i.e. link failures/outages).
Link Capacity Estimation.Due to the use of a shared medium, estimating the capacity of a wireless link is not trivial. Interference coming from external sources, changes in the propagation characteristics or interference from the same signal travelling along different paths make the link's total capacity fluctuate over time. Even if we limit our attention on communications realized using the IEEE 802.11 facility of standards, an ideal estimator of the link capacity from an Access Point toward a generic Stations should take into account both the data frame SNR (measured at the receiving station) and the ACK frame SNR (measured at the access point).
Such a level of precision is difficult to achieve without introducing additional signaling and/or modifying the standard IEEE 802.11 MAC operations.
In one embodiment the present invention uses an indirect way of assessing a link's total capacity based on the transmission rate adaptation-related functionalities already available in current IEEE 802.11 devices. In particular the algorithm collects statistics of all the packets that have been transmitted.
Soft Performance IsolationSoft-performance isolation between slivers is provided through a scheduler (such as Hierarchical Token Bucket (HTB) supported by the Linux kernels 2.6.x [15]) which can implement precise traffic shaping policies. HTB organizes traffic classes in a tree structure; each class is assigned an average rate (rate) and a maximum rate (ceil). Three class types exist: root, inner and leaf. A root class corresponds to a physical link; its bandwidth is the one currently available for transmission. Leaf classes, placed at the bottom of the hierarchy, correspond to a given type of traffic (e.g., TCP-controlled or VoIP etc.). Two internal token buckets are maintained for each class. Classes which have not exceeded their rate can unconditionally transmit; classes which have exceeded their allowed rate but not their upper limit (ceil) can transmit only borrowing unused bandwidth, if available, from other classes. In order to borrow bandwidth, a request is propagated upwards in the tree. A request that would exceed the ceil limit is terminated. A request that would satisfy the allowed rate is accepted. A request that would not satisfy the allowed rate constraint but the ceil one is propagated upwards until the procedure is completed.
Due to the stochastic nature of the wireless links capacity, an HTB scheduler alone is not able to deliver performance fairness among competing traffic flows in wireless networks. In order to address this problem in the present invention a bandwidth partitioner is introduced.
This Bandwidth Partitioner component exploits local channel statistics, gathered through the Wireless Network Interface Card (WNIC) driver, to estimate the currently available link bandwidth and to partition the bandwidth among the different slivers on the basis of a set of pre-defined policies. Such information is then passed to the Resources Broker which combines them with a set of user-defined policies in order to generate a configuration template for the scheduler, i.e. the HTB scheduler. The Resource Broker can be implemented in the form of a software or hardware running within each wireless router and periodically updates the scheduler configuration in order to reflect the actual channel capacity. The scheduler configuration is also updated if either a new slice is deployed over the network or if the policies have changed.
Hereafter the details of the various implementation of the bandwidth partitioning and rate adaptation of the present invention.
In order to demonstrate the effectiveness of this invention in preserving production traffic in challenging conditions, the following experimental scenario has been set up: two wireless nodes, each one running three slivers, shares the same wireless link. Changes in link quality are emulated by progressively moving the two nodes apart in order to simulate deteriorating channel quality conditions. A continuous UDP flow is generated among the two nodes; its rate is such that the wireless link is always saturated.
Two privileged slices (#1 and #2) are defined. Both slices have an higher transmission priority than the third slices and a minimum guaranteed outbound bandwidth set to 5 and 3 Mb/s respectively. The third slice has no guaranteed bandwidth (this simulates a WISP having slice #1 for production traffic and the remaining slices #2 and #3 for, respectively, testing a novel video-streaming service and for network management and monitoring). The results plotted in
- 1. N. M. K. Chowdhury and R. Boutaba, “Network Virtualization: State of the Art and Research Challenges,” IEEE Communications Magazine, July 2009.
- 2. “Technical Document on Overview Wireless, Mobile and Sensor Networks,” The GEM Project Office, Tech. Rep. GDD-06-14, 2006.
- 3. Planet Lab project, http://www.planet-lab.org.
- 4. VINI project, http://www.vini-veritas.net.
- 5. German-Lab project, http://www.german-lab.de/.
- 6. G. Smith, A. Chaturvedi, A. Mishra, and S. Banerjee, “Wireless Virtualization on Commodity 802.11 Hardware,” in Proc. of ACM WinTECH, Montreal, Quebec, Canada, 2007.
- 7. R. Mahindra, G. Bhanage, G. Hadjichristo, I. Seskar, D. Raychaudhuri, and Y. Zhang, “Space Versus Time Separation for wireless virtualization On an Indoor Grid,” in Proc. of EURO NGI, Krakow, Poland, 2008.
- 8. FEDERICA project, http://www.fp7-federica.eu.
- 9. AKARI project, http://akari-project.nict.go.jp.
- 10. GENT project, http://www.geni.net.
- 11. Linux Wireless, http://linuxwireless.org/.
- 12. OpenVZ, http://openvz.org/.
- 13. E. Kohler, R. Morris, B. Chen, J. Jannotti, and M. F. Kaashoek, “The Click modular router,” ACM Transaction on Computer System, vol. 18, no. 3, pp. 263-297, August 2000.
- 14. A. Nakao, R. Ozaki, and Y. Nishida, “Corelab: An emerging network testbed employing hosted virtual machine monitor,” in Proc. of ACM ROADS, Madrid, Spain, 2008.
- 15. HTB Scheduler for Linux, http://luxik.cdi.cz/-devik/qos/htb/
Claims
1-15. (canceled)
16. A method for providing a wireless network virtualization comprising:
- using a bandwidth partitioner for distributing available bandwidth among virtual nodes;
- using a software router for providing each virtual node with a set of virtual interfaces, implemented as TAP devices; and wherein
- the host software router process by receiving an incoming frame dispatches it to the suitable device according to a set of policies maintained by a Link Broker and the bandwidth partitioner, so that the Link Broker module adaptively provides complete radio isolation among network slices co-existing on the same physical infrastructure and data frames are dispatched to the suitable virtual node.
17. The method of claim 16 wherein data frames are dispatched also from said virtual node to the suitable interface on the physical infrastructure.
18. The method of claim 17, wherein the network is a multi-hop network.
19. The method of claim 18 wherein the bandwidth partitioner acquires wireless channel statistics from wireless NIC and updates the bandwidth assigned to each class of the Link Broker.
20. The method of claim 19 wherein the packet transmission is assigned to a link scheduler class linked to a virtual node depending on the bandwidth assigned by said bandwidth partitioner.
21. The method of claim 20 wherein a further software router selects the transmission rate, the modulation scheme, the transmission power and the usage of RTS/CTS procedure to deliver the data-frame.
22. The method of claim 21 wherein said Link Broker module further defines different connectivity graphs for different network slices on the basis of pre-required policies.
23. The method of claim 22 wherein the nodes of said connectivity graphs for different network slices are not physically separated.
24. The method of claim 23 wherein the distribution of available bandwidth among virtual nodes is realized according to the actual wireless channel conditions and a set of user-defined policies.
25. The method of claim 24 wherein said tap protocol drives the underlying physical adapter in case a standard IEEE 802.11 device, working in either Station or Master mode, is exposed to one or more of the guests operating system.
26. A computer readable medium storing thereon computer readable instructions for executing the method of claim 16.
27. A system for providing a wireless network virtualization according to the method of claim 16 comprising:
- a bandwidth partitioner for distributing available bandwidth among virtual nodes;
- a software router for providing each virtual node with a set of virtual interfaces, implemented as TAP devices; and
- a Link Broker for adaptively providing complete radio isolation among network slices co-existing on the same physical infrastructure.
28. The system of claim 27 wherein:
- the bandwidth partitioner acquires wireless channel statistics from wireless NIC and updates the bandwidth assigned to each class of the Link Broker;
- the packet transmission is assigned to a link scheduler class linked to a virtual node depending on the bandwidth assigned by said bandwidth partitioner;
- a router selects the transmission rate, the modulation scheme, the transmission power and the usage of RTS/CTS procedure to deliver the data-frame.
29. The system of claim 28 wherein said Link Broker further defines different connectivity graphs for different network slices on the basis of pre-required policies.
30. The system of claim 29 wherein the distribution of available bandwidth among virtual nodes is realized according to the actual wireless channel conditions and a set of user-defined policies and wherein said tap protocol drives the underlying physical adapter in case a standard IEEE 802.11 device, working in either Station or Master mode, is exposed to one or more of the guests operating system.
Type: Application
Filed: May 13, 2011
Publication Date: Oct 17, 2013
Applicant: Associazione Create-Net (Povo, TN)
Inventors: Roberto Riggio (Trento), Daniele Miorandi (Povo), Roberto Doriguzzi (Vattaro), Elio Salvadori (Martignano)
Application Number: 13/697,902
International Classification: H04W 72/04 (20060101);