ViNe is a project developed at the University of Florida that implements routing and other communication mechanisms needed to deploy, operate, and manage user-level software-defined IP overlay networks. ViNe is particularly appealing for cloud computing because it allows the establishment of wide-area virtual networks supporting symmetric communication among public and private network resources (even when they are behind firewalls), does not require changes to either the physical network or the Operating System of machines, and has low virtualization overheads.
The goal of this project is to develop an architecture that allows virtual networks (VNs) to be deployed across multiple administrative domains offering full connectivity among hosts independently of connectivity limitations in the physical infrastructure. The architecture should also enable full management of VNs offering a set of services that process requests from administrators, users, and software (middleware). The proposed architecture, called ViNe, is divided into two sub-systems: connectivity and routing infrastructure and management infrastructure. Conceptually, ViNe is closely related to Software-Defined Networking architecture, where the data plane (ViNe routing) is decoupled from the control plane (logically centralized management system).
The key concept that enables the connectivity and routing infrastructure is the virtualization of routers. ViNe offers full performance within LANs, and when crossing LAN boundaries, keep low virtualization overhead. Multiple VNs are supported by defining and maintaining routing tables in virtual routers (VRs). Limitations imposed by physical networks are handled by VRs in the routing process: VRs without limitations relay messages for connectivity limited VRs. The ViNe routing infrastructure is fully operational, and VRs showed full firewall traversal capability with low performance penalty.
ViNe Management controls ViNe routing infrastructure and exposes APIs that enable self-management capabilities in VNs, such as adapting virtual paths to use the best physical path available by on-line monitoring the Internet performance or allowing merges and splits of deployed VNs.
ViNe software requires:
- Linux Operating System, with kernel support for TUN/TAP devices
- Bash Unix Shell
- wget tool
- Java runtime environment (Oracle Java version 1.6 or after)
For more information about ViNe and/or technical inquiries, please contact us via email