Skip to content
/ ovn Public
forked from ovn-org/ovn

Open Virtual Network

License

Notifications You must be signed in to change notification settings

kubeovn/ovn

This branch is 4 commits ahead of, 2526 commits behind ovn-org/ovn:main.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

402049e · Mar 9, 2021
May 8, 2020
Aug 7, 2020
May 7, 2020
Apr 23, 2020
Aug 11, 2020
Mar 9, 2021
May 27, 2020
Aug 6, 2020
Aug 11, 2020
Nov 25, 2019
Aug 19, 2020
May 11, 2020
Aug 19, 2020
Jan 30, 2020
Aug 8, 2020
Dec 27, 2018
Jan 30, 2020
Nov 17, 2016
May 21, 2019
Jun 18, 2020
May 8, 2020
Apr 16, 2018
Sep 24, 2019
May 8, 2020
Aug 11, 2020
Apr 14, 2016
May 8, 2020
Jun 30, 2020
Sep 23, 2019
Jun 1, 2020
Jun 1, 2020
Feb 17, 2020
Feb 13, 2020
Jul 21, 2010
May 28, 2020
Sep 26, 2019
Jul 29, 2020
Jan 30, 2020
Jan 30, 2020
Feb 14, 2020
Feb 14, 2020
Jul 29, 2020
Aug 7, 2020
Aug 11, 2020
Aug 11, 2020

Repository files navigation

OVN

What is OVN?

OVN (Open Virtual Network) is a series of daemons that translates virtual network configuration into OpenFlow, and installs them into Open vSwitch. It is licensed under the open source Apache 2 license.

OVN provides a higher-layer abstraction then Open vSwitch, working with logical routers and logical switches, rather than flows. OVN is intended to be used by cloud management software (CMS). For details about the architecture of OVN, see the ovn-architecture manpage. Some high-level features offered by OVN include:

  • Distributed virtual routers
  • Distributed logical switches
  • Access Control Lists
  • DHCP
  • DNS server

Like Open vSwitch, OVN is written in platform-independent C. OVN runs entirely in userspace and therefore requires no kernel modules to be installed.

Until recently, OVN code lived within the Open vSwitch codebase. OVN has recently been split into its own repo. There is much to do to complete this split entirely. See the TODO_SPLIT.rst file for a list of known tasks that need to be completed.

What's here?

The main components of this distribution are:

  • ovn-northd, a centralized daemon that translates northbound configuration from a CMS into logical flows for the southbound database.
  • ovn-controller, a daemon that runs on every hypervisor in the cluster. It translates the logical flows in the southbound database into OpenFlow for Open vSwitch. It also handles certain traffic, such as DHCP and DNS.
  • ovn-nbctl, a tool for interfacing with the northbound database.
  • ovn-sbctl, a tool for interfacing with the southbound database.
  • ovn-trace, a debugging utility that allows for tracing of packets through the logical network.
  • Scripts and specs for building RPMs.

What other documentation is available?

To install Open vSwitch on a regular Linux or FreeBSD host, please read the installation guide. For specifics around installation on a specific platform, refer to one of the other installation guides

For answers to common questions, refer to the FAQ.

To learn about some advanced features of the Open vSwitch software switch, read the tutorial.

Each OVN program is accompanied by a manpage. Many of the manpages are customized to your configuration as part of the build process, so we recommend building OVN before reading the manpages.

License

The following is a summary of the licensing of files in this distribution. As mentioned, OVN is licensed under the open source Apache 2 license. Some files may be marked specifically with a different license, in which case that license applies to the file in question.

File build-aux/cccl is licensed under the GNU General Public License, version 2.

Files under the xenserver directory are licensed on a file-by-file basis. Refer to each file for details.

Contact

bugs@openvswitch.org

Releases

No releases published

Packages

No packages published

Languages

  • C 86.4%
  • Shell 5.3%
  • M4 3.6%
  • Python 2.2%
  • Makefile 1.8%
  • Roff 0.6%
  • Other 0.1%