..
      Copyright (c) 2016, Stephen Finucane <stephen@that.guru>

      Licensed under the Apache License, Version 2.0 (the "License"); you may
      not use this file except in compliance with the License. You may obtain
      a copy of the License at

          http://www.apache.org/licenses/LICENSE-2.0

      Unless required by applicable law or agreed to in writing, software
      distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
      WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
      License for the specific language governing permissions and limitations
      under the License.

      Convention for heading levels in Open vSwitch documentation:

      =======  Heading 0 (reserved for the title in a document)
      -------  Heading 1
      ~~~~~~~  Heading 2
      +++++++  Heading 3
      '''''''  Heading 4

      Avoid deeper levels because they do not render well.

==========================
Open vSwitch Documentation
==========================

How the Documentation is Organised
----------------------------------

The Open vSwitch documentation is organised into multiple sections:

- :doc:`Installation guides </intro/install/index>` guide you through
  installing Open vSwitch (OVS) and Open Virtual Network (OVN) on a variety of
  different platforms
- :doc:`Tutorials </tutorials/index>` take you through a series of steps to
  configure OVS and OVN in sandboxed environments
- :doc:`Topic guides </topics/index>` provide a high level overview of OVS and
  OVN internals and operation
- :doc:`How-to guides </howto/index>` are recipes or use-cases for OVS and OVN.
  They are more advanced than the tutorials.
- :doc:`Frequently Asked Questions </faq/index>` provide general insight into
  a variety of topics related to configuration and operation of OVS and OVN.

First Steps
-----------

Getting started with Open vSwitch (OVS) or Open Virtual Network (OVN) for Open
vSwitch? Start here.

- **Overview:** :doc:`intro/what-is-ovs` |
  :doc:`intro/why-ovs`

- **Install:** :doc:`intro/install/general` |
  :doc:`intro/install/userspace` |
  :doc:`intro/install/netbsd` |
  :doc:`intro/install/windows` |
  :doc:`intro/install/xenserver` |
  :doc:`intro/install/dpdk`

- **Tutorials:** :doc:`tutorials/ovs-advanced` |

Deeper Dive
-----------

- **Architecture** :doc:`topics/design` |
  :doc:`topics/openflow` |
  :doc:`topics/integration` |
  :doc:`topics/porting`

- **DPDK** :doc:`howto/dpdk` |
  :doc:`topics/dpdk/vhost-user`

- **Windows** :doc:`topics/windows`

- **Integrations:** :doc:`topics/language-bindings`

- **Reference Guides:** :doc:`ref/index`

- **Testing** :doc:`topics/testing`

- **Packaging:** :doc:`intro/install/debian` |
  :doc:`intro/install/rhel` |
  :doc:`intro/install/fedora`

The Open vSwitch Project
------------------------

Learn more about the Open vSwitch project and about how you can contribute:

- **Community:** :doc:`internals/release-process` |
  :doc:`internals/authors` |
  :doc:`internals/mailing-lists` |
  :doc:`internals/patchwork` |
  :doc:`internals/bugs` |
  :doc:`internals/security`

- **Contributing:** :doc:`internals/contributing/submitting-patches` |
  :doc:`internals/contributing/coding-style` |
  :doc:`internals/contributing/coding-style-windows`

- **Maintaining:** :doc:`internals/maintainers` |
  :doc:`internals/committer-responsibilities` |
  :doc:`internals/committer-grant-revocation`

- **Documentation:** :doc:`internals/contributing/documentation-style` |
  :doc:`Building Open vSwitch Documentation <intro/install/documentation>`

Getting Help
-------------

- Seeing an issue of potential bug? Report problems to bugs@openvswitch.org

- Looking for specific information? Try the :ref:`genindex`, :ref:`modindex` or
  the :doc:`detailed table of contents <contents>`.
