Jump to content

Open vSwitch: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
→‎Features: Fits better
Robpater (talk | contribs)
→‎Overview: Introduce information on OVS enhancements for NFV
Line 115: Line 115:


The majority of the Open vSwitch source code is written in platform-independent [[C (programming language)|C language]], which provides easy [[porting|portability]] to various environments. The source code is licensed under the Apache License 2.0.<ref name="openvswitch-home" />
The majority of the Open vSwitch source code is written in platform-independent [[C (programming language)|C language]], which provides easy [[porting|portability]] to various environments. The source code is licensed under the Apache License 2.0.<ref name="openvswitch-home" />

The market success of Open vSwitch depends not just on its ease of programmability, but OVS needs to be fast and efficent. The standard version's performance shortcomings, such as high overhead, need to be resolved to significantly improve throughput - and do so by the efficient use of computing resources and without compromising performance predictability.[26] With the advent of Network Functions Virtualization (NFV) there have been a number of initiatives to accelerate OVS performance. Improvements have been reported of 10 to 20 times for both OVS and Accelerated vSwitch (AVS) versions over the standard OVS configuration.[27][28]


== Features ==
== Features ==

Revision as of 01:11, 26 May 2015

Initial releaseJuly 29, 2009; 14 years ago (2009-07-29)[1]
Stable release
2.3.1[2][3] / December 3, 2014; 9 years ago (2014-12-03)
Repository
Written inC
Operating systemLinux, FreeBSD
TypeVirtual switch
LicenseApache License 2.0
Websiteopenvswitch.org

Open vSwitch, sometimes abbreviated to OVS, is a production-quality open-source implementation of a distributed virtual multilayer switch. The main purpose of Open vSwitch is to provide a switching stack for hardware virtualization environments, while supporting multiple protocols and standards used in computer networks.[4]

Project's source code is distributed under the terms of the Apache License 2.0.

Overview

Open vSwitch as a cross-server virtual network switch, transparently distributed across multiple physical servers.[4]

As a software implementation of a virtual multilayer network switch, Open vSwitch is designed to enable effective network automation through programmatic extensions, while supporting standard management interfaces and protocols, including NetFlow, sFlow, SPAN, RSPAN, CLI, LACP and 802.1ag. In addition, Open vSwitch is designed to support transparent distribution across multiple physical servers by enabling creation of cross-server switches in a way that abstracts out the underlying server architecture, similarly to the VMware vNetwork distributed vswitch or Cisco Nexus 1000V.[5][6][7]

Open vSwitch can operate both as a software-based switch running within the virtual machine (VM) hypervisors, and as the control stack for dedicated switching hardware; as a result, it has been ported to multiple virtualization platforms and switching chipsets. Open vSwitch is the default switch in XenServer since its version 6.0,[8] and in the Xen Cloud Platform (via its XAPI management toolstack);[9] it also supports Xen, Linux KVM, Proxmox VE and VirtualBox. Open vSwitch has also been integrated into various cloud computing software platforms and virtualization management systems, including OpenStack, openQRM, OpenNebula and oVirt.[5][6]

Linux kernel's implementation of Open vSwitch was merged into the Linux kernel mainline in kernel version 3.3, which was released on March 18, 2012;[10][11] official Linux packages are available for Debian, Fedora and Ubuntu.[5] As of January 2014, FreeBSD and NetBSD implementations are also available, with the NetBSD's implementation operating completely in userspace.[12][13]

The majority of the Open vSwitch source code is written in platform-independent C language, which provides easy portability to various environments. The source code is licensed under the Apache License 2.0.[5]

The market success of Open vSwitch depends not just on its ease of programmability, but OVS needs to be fast and efficent. The standard version's performance shortcomings, such as high overhead, need to be resolved to significantly improve throughput - and do so by the efficient use of computing resources and without compromising performance predictability.[26] With the advent of Network Functions Virtualization (NFV) there have been a number of initiatives to accelerate OVS performance. Improvements have been reported of 10 to 20 times for both OVS and Accelerated vSwitch (AVS) versions over the standard OVS configuration.[27][28]

Features

As of November 2013, Open vSwitch provides the following features:[14][15]

See also

References

  1. ^ "A complete list of Open vSwitch releases". openvswitch.org. Retrieved April 2, 2014.
  2. ^ Justin Pettit (December 3, 2014). "[ovs-announce] Open vSwitch 2.3.1 Available". openvswitch.org. Retrieved January 22, 2015.
  3. ^ "NEWS file for Open vSwitch 2.3.1". openvswitch.org. December 4, 2014. Retrieved January 22, 2015.
  4. ^ a b M. Tim Jones (October 27, 2010). "Virtual networking in Linux". IBM. Retrieved April 9, 2014.
  5. ^ a b c d "Open vSwitch: An Open Virtual Switch". openvswitch.org. Retrieved November 24, 2013.
  6. ^ a b Thomas Graf (April 24, 2013). "Underneath OpenStack Quantum: Software Defined Networking with Open vSwitch" (PDF). Red Hat. Retrieved April 9, 2014.
  7. ^ Ralf Spenneberg. "Virtual switching with Open vSwitch". admin-magazine.com. Retrieved April 2, 2014.
  8. ^ "XenServer 6.0 Release Notes". Citrix Systems. March 8, 2012. Retrieved January 22, 2015.
  9. ^ "XAPI: Open source software to build private and public clouds". xenproject.org. 2013. Retrieved January 22, 2015.
  10. ^ "Linux kernel 3.3, Section 1.3. Open vSwitch". kernelnewbies.org. March 18, 2012. Retrieved April 2, 2014.
  11. ^ Jonathan Corbet (November 30, 2011). "Routing Open vSwitch into the mainline". LWN.net. Retrieved April 2, 2014.
  12. ^ "FreshPorts – net/openvswitch". freshports.org. December 30, 2013. Retrieved April 2, 2014.
  13. ^ "openvswitch/ovs: ovs/INSTALL.NetBSD at master". github.com. January 11, 2014. Retrieved April 9, 2014.
  14. ^ "Open vSwitch: Features". openvswitch.org. Retrieved November 24, 2013.
  15. ^ Jesse Gross (September 2013). "Programmable Networking with Open vSwitch" (PDF). linuxfoundation.org. LinuxCon. Retrieved November 24, 2013.

External links