Open Virtual Network
Find a file
Alexandra Rukomoinikova 6fa6492a5d tests: Fix the "Service Monitor synchronization" for cross-az.
Fixes: f40a5c3c80 ("ic: Implement cross-AZ service monitor synchronization.")
Signed-off-by: Alexandra Rukomoinikova <arukomoinikova@k2.cloud>
Acked-by: Mark Michelson <mmichels@redhat.com>
Signed-off-by: Ales Musil <amusil@redhat.com>
2026-03-06 08:49:00 +01:00
.ci ci: Run system tests in upgrade scenario. 2026-02-09 12:16:14 +01:00
.github/workflows ci: Allow ovn-kubernetes jobs to run weekly. 2026-02-17 15:11:15 +01:00
br-controller br-controller: Fix probable NULL deferencing when encoding actions. 2026-01-05 08:06:08 +01:00
build-aux northd: controller: Support dumping a visual representation of the I-P graph. 2025-12-03 09:07:17 +01:00
controller pinctrl: Process packets even when the lock is taken. 2026-03-06 08:28:07 +01:00
controller-vtep controller-vtep: Properly free the ovn version at the end. 2026-01-13 14:37:21 +01:00
debian Prepare for post-v26.03.0. 2026-02-19 15:11:23 -05:00
Documentation Docs: Add 2027 release timetable to release document. 2026-02-09 10:26:20 -05:00
ic ic: Fix infinite route learning with same prefix and nexthop. 2026-03-06 08:37:33 +01:00
include controller: ACL correctly handles fragmented traffic. 2026-02-18 08:54:24 +01:00
lib northd: Add LSP health check processing. 2026-02-18 21:16:09 +01:00
m4 controller: Introduce route-exchange-netlink. 2025-02-11 14:02:54 +01:00
northd northd: Separate processing of host connected routes from syncing. 2026-02-26 17:33:29 +01:00
ovs@bdb95cc192 ovs: Update submodule to v3.7.0. 2026-03-02 08:04:24 +01:00
rhel Add initial schema and skeleton for OVN bridge controller. 2025-11-10 10:56:52 -05:00
tests tests: Fix the "Service Monitor synchronization" for cross-az. 2026-03-06 08:49:00 +01:00
tutorial Add initial schema and skeleton for OVN bridge controller. 2025-11-10 10:56:52 -05:00
utilities ovn-ctl: Fix typo causing run_ovnbr_ovsdb to detach. 2026-02-26 07:41:03 +01:00
.cirrus.yml ci: Increase the disk size for CirrusCI VM. 2026-02-07 16:21:57 +01:00
.gitignore treewide: Add missing gitignores for br-controller. 2025-12-15 16:44:58 -05:00
.gitmodules Include OVS as a git submodule. 2021-02-09 13:47:04 -05:00
.mailmap AUTHORS: Update email for stackit senders. 2026-03-04 09:09:17 +01:00
.readthedocs.yaml readthedocs: Add the configuration file. 2023-11-15 15:03:48 +01:00
acinclude.m4 treewide: Remove remaining XenServer references. 2024-04-12 14:59:20 +02:00
AUTHORS.rst AUTHORS: Update email for stackit senders. 2026-03-04 09:09:17 +01:00
automake.mk Add initial schema and skeleton for OVN bridge controller. 2025-11-10 10:56:52 -05:00
boot.sh debian: Check for accurate Debian changelog version at build time too. 2010-07-21 15:38:23 -07:00
configure.ac Prepare for post-v26.03.0. 2026-02-19 15:11:23 -05:00
CONTRIBUTING.rst docs: update various OVS references to OVN 2020-05-08 12:19:24 +05:30
LICENSE Edit Open vSwitch license info so that GitHub recognizes it. 2018-04-16 13:00:56 -07:00
MAINTAINERS.rst Update my email id in MAINTAINERS and AUTHORS files. 2025-10-09 15:15:27 -04:00
Makefile.am ci: Run system tests in upgrade scenario. 2026-02-09 12:16:14 +01:00
manpages.mk manpages.mk: fix dependencies path 2021-11-29 13:26:29 -05:00
NEWS Prepare for post-v26.03.0. 2026-02-19 15:11:23 -05:00
NOTICE datapath-windows: Add Connection Tracking Support 2016-04-14 10:11:46 -07:00
ovn-architecture.7.xml ic: Add Transit router support. 2025-10-23 10:47:56 +02:00
ovn-br.ovsschema Add initial schema and skeleton for OVN bridge controller. 2025-11-10 10:56:52 -05:00
ovn-br.xml ovn-br-controller: Add NEWS entry. 2025-11-10 10:58:29 -05:00
ovn-ic-nb.ovsschema ic: Update schema to add Transit Router. 2025-10-23 10:47:55 +02:00
ovn-ic-nb.xml ic: Update schema to add Transit Router. 2025-10-23 10:47:55 +02:00
ovn-ic-sb.ovsschema ic: Update schema to add Transit Router. 2025-10-23 10:47:55 +02:00
ovn-ic-sb.xml ic: Update schema to add Transit Router. 2025-10-23 10:47:55 +02:00
ovn-nb.ovsschema northd: Sync LSP service monitor status to NB for CMS visibility. 2026-02-18 21:16:09 +01:00
ovn-nb.xml docs: Make EVPN support stable. 2026-02-19 10:42:55 +01:00
ovn-sb.ovsschema ovn-nb, ovn-nbctl: Add Logical Switch Port Health Check support. 2026-02-18 21:16:09 +01:00
ovn-sb.xml ovn-nb, ovn-nbctl: Add Logical Switch Port Health Check support. 2026-02-18 21:16:09 +01:00
README.rst README: Add coverity scan badge. 2025-04-03 12:45:49 +02:00
TODO.rst northd: Add distributed load balancer support. 2026-02-09 10:37:36 +01:00
TODO_SPLIT.rst Update post OVS-OVN split TODO list. 2024-03-28 13:55:44 +01:00
Vagrantfile Remove python six library 2020-06-01 13:03:32 +05:30
Vagrantfile-FreeBSD Remove python six library 2020-06-01 13:03:32 +05:30

.. NOTE(stephenfin): If making changes to this file, ensure that the line
   numbers found in 'Documentation/intro/what-is-ovs' are kept up-to-date.

===
OVN
===

.. image:: https://github.com/ovn-org/ovn/actions/workflows/test.yml/badge.svg
    :target: https://github.com/ovn-org/ovn/actions/workflows/test.yml
.. image:: https://github.com/ovn-org/ovn/actions/workflows/ovn-kubernetes.yml/badge.svg
    :target: https://github.com/ovn-org/ovn/actions/workflows/ovn-kubernetes.yml
.. image:: https://github.com/ovn-org/ovn/actions/workflows/ovn-fake-multinode-tests.yml/badge.svg
    :target: https://github.com/ovn-org/ovn/actions/workflows/ovn-fake-multinode-tests.yml
.. image:: https://api.cirrus-ci.com/github/ovn-org/ovn.svg
    :target: https://cirrus-ci.com/github/ovn-org/ovn
.. image:: https://readthedocs.org/projects/ovn/badge/?version=latest
    :target: https://docs.ovn.org/en/latest/
.. image:: https://scan.coverity.com/projects/30371/badge.svg
    :target: https://scan.coverity.com/projects/open-virtual-network

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 than 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.
- ovn-debug, a tool to simplify debugging of OVN setup.
- Scripts and specs for building RPMs.

What other documentation is available?
--------------------------------------

.. TODO(stephenfin): Update with a link to the hosting site of the docs, once
   we know where that is

To install OVN on a regular Linux or FreeBSD host, please read the
`installation guide <Documentation/intro/install/general.rst>`__. For specifics
around installation on a specific platform, refer to one of the `other
installation guides <Documentation/intro/install/index.rst>`__

For answers to common questions, refer to the `FAQ <Documentation/faq>`__.

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

.. _tutorial: https://github.com/openvswitch/ovs/blob/main/Documentation/tutorials/ovs-advanced.rst

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.

Contact
-------

bugs@openvswitch.org