]> git.puffer.fish Git - matthieu/frr.git/commitdiff
doc: move ZAPI docs to developer/
authorQuentin Young <qlyoung@cumulusnetworks.com>
Wed, 14 Mar 2018 19:05:23 +0000 (15:05 -0400)
committerQuentin Young <qlyoung@cumulusnetworks.com>
Tue, 20 Mar 2018 19:20:33 +0000 (15:20 -0400)
Documentation on ZAPI protocol details doesn't belong in the user docs.

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
doc/developer/zebra.rst [new file with mode: 0644]
doc/user/index.rst
doc/user/protocol.rst [deleted file]

diff --git a/doc/developer/zebra.rst b/doc/developer/zebra.rst
new file mode 100644 (file)
index 0000000..3d64b67
--- /dev/null
@@ -0,0 +1,124 @@
+.. _zebra:
+
+*****
+Zebra
+*****
+
+.. _zebra-protocol:
+
+Overview of the Zebra Protocol
+==============================
+
+Zebra Protocol is used by protocol daemons to communicate with the zebra
+daemon.
+
+Each protocol daemon may request and send information to and from the zebra
+daemon such as interface states, routing state, nexthop-validation, and so on.
+Protocol daemons may also install routes with zebra. The zebra daemon manages
+which route is installed into the forwarding table with the kernel.
+
+Zebra Protocol is a streaming protocol, with a common header. Two versions of
+the header are in use. Version 0 is implicitely versioned. Version 1 has an
+explicit version field. Version 0 can be distinguished from all other versions
+by examining the 3rd byte of the header, which contains a marker value for all
+versions bar version 0. The marker byte corresponds to the command field in
+version 0, and the marker value is a reserved command in version 0.
+
+We do not anticipate there will be further versions of the header for the
+foreseeable future, as the command field in version 1 is wide enough to allow
+for future extensions to done compatibly through seperate commands.
+
+Version 0 is used by all versions of GNU Zebra as of this writing, and versions
+of Quagga up to and including Quagga 0.98. Version 2 was created for 0.99.21 of
+Quagga. Version 3 designates VRF compatibility and was released in 1.0.
+Version 4 will be used as of FRR 2.0 to indicate that we are a different
+Routing Suite now and to hopefully prevent accidental Quagga <-> FRR issues.
+
+Zebra Protocol Definition
+=========================
+
+Zebra Protocol Header (version 0)
+----------------------------------
+
+::
+
+   0                   1                   2                   3
+   0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+   +-------------------------------+---------------+
+   |           Length (2)          |   Command (1) |
+   +-------------------------------+---------------+
+
+
+Zebra Protocol Common Header (version 1)
+----------------------------------------
+
+::
+
+   0                   1                   2                   3
+   0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+   +-------------------------------+---------------+-------------+
+   |           Length (2)          |   Marker (1)  | Version (1) |
+   +-------------------------------+---------------+-------------+
+   |          Command (2)          |
+   +-------------------------------+
+
+
+Zebra Protocol Header Field Definitions
+---------------------------------------
+
+Length
+   Total packet length including this header. The minimum length is 3 bytes for
+   version 0 messages and 6 bytes for version 1 messages.
+
+Marker
+   Static marker with a value of 255 always. This is to allow version 0 Zserv
+   headers (which do not include version explicitly) to be distinguished from
+   versioned headers. Not present in version 0 messages.
+
+Version
+   Version number of the Zserv message. Clients should not continue processing
+   messages past the version field for versions they do not recognise. Not
+   present in version 0 messages.
+
+Command
+   The Zebra Protocol command.
+
+
+Zebra Protocol Commands
+-----------------------
+
++-----------------------------------+-------+
+| Command                           | Value |
++===================================+=======+
+| ZEBRA_INTERFACE_ADD               | 1     |
++-----------------------------------+-------+
+| ZEBRA_INTERFACE_DELETE            | 2     |
++-----------------------------------+-------+
+| ZEBRA_INTERFACE_ADDRESS_ADD       | 3     |
++-----------------------------------+-------+
+| ZEBRA_INTERFACE_ADDRESS_DELETE    | 4     |
++-----------------------------------+-------+
+| ZEBRA_INTERFACE_UP                | 5     |
++-----------------------------------+-------+
+| ZEBRA_INTERFACE_DOWN              | 6     |
++-----------------------------------+-------+
+| ZEBRA_IPV4_ROUTE_ADD              | 7     |
++-----------------------------------+-------+
+| ZEBRA_IPV4_ROUTE_DELETE           | 8     |
++-----------------------------------+-------+
+| ZEBRA_IPV6_ROUTE_ADD              | 9     |
++-----------------------------------+-------+
+| ZEBRA_IPV6_ROUTE_DELETE           | 10    |
++-----------------------------------+-------+
+| ZEBRA_REDISTRIBUTE_ADD            | 11    |
++-----------------------------------+-------+
+| ZEBRA_REDISTRIBUTE_DELETE         | 12    |
++-----------------------------------+-------+
+| ZEBRA_REDISTRIBUTE_DEFAULT_ADD    | 13    |
++-----------------------------------+-------+
+| ZEBRA_REDISTRIBUTE_DEFAULT_DELETE | 14    |
++-----------------------------------+-------+
+| ZEBRA_IPV4_NEXTHOP_LOOKUP         | 15    |
++-----------------------------------+-------+
+| ZEBRA_IPV6_NEXTHOP_LOOKUP         | 16    |
++-----------------------------------+-------+
index 54ee8b12f8849bf1db6f43d08b9bf8d8538ea5a3..e505042994a6f8d76bffe4ecd6076d46199d2fa2 100644 (file)
@@ -14,7 +14,6 @@ Welcome to FRR's documentation!
    kernel
    snmp
    zebra
-   protocol
    bgp
    babeld
    eigrpd
diff --git a/doc/user/protocol.rst b/doc/user/protocol.rst
deleted file mode 100644 (file)
index b474c12..0000000
+++ /dev/null
@@ -1,122 +0,0 @@
-.. _zebra-protocol:
-
-**************
-Zebra Protocol
-**************
-
-Overview of the Zebra Protocol
-==============================
-
-Zebra Protocol is used by protocol daemons to communicate with the zebra
-daemon.
-
-Each protocol daemon may request and send information to and from the zebra
-daemon such as interface states, routing state, nexthop-validation, and so on.
-Protocol daemons may also install routes with zebra. The zebra daemon manages
-which route is installed into the forwarding table with the kernel.
-
-Zebra Protocol is a streaming protocol, with a common header. Two versions of
-the header are in use. Version 0 is implicitely versioned. Version 1 has an
-explicit version field. Version 0 can be distinguished from all other versions
-by examining the 3rd byte of the header, which contains a marker value for all
-versions bar version 0. The marker byte corresponds to the command field in
-version 0, and the marker value is a reserved command in version 0.
-
-We do not anticipate there will be further versions of the header for the
-foreseeable future, as the command field in version 1 is wide enough to allow
-for future extensions to done compatibly through seperate commands.
-
-Version 0 is used by all versions of GNU Zebra as of this writing, and versions
-of Quagga up to and including Quagga 0.98. Version 2 was created for 0.99.21 of
-Quagga. Version 3 designates VRF compatibility and was released in 1.0.
-Version 4 will be used as of FRR 2.0 to indicate that we are a different
-Routing Suite now and to hopefully prevent accidental Quagga <-> FRR issues.
-
-Zebra Protocol Definition
-=========================
-
-Zebra Protocol Header (version 0)
-----------------------------------
-
-::
-
-   0                   1                   2                   3
-   0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
-   +-------------------------------+---------------+
-   |           Length (2)          |   Command (1) |
-   +-------------------------------+---------------+
-
-
-Zebra Protocol Common Header (version 1)
-----------------------------------------
-
-::
-
-   0                   1                   2                   3
-   0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
-   +-------------------------------+---------------+-------------+
-   |           Length (2)          |   Marker (1)  | Version (1) |
-   +-------------------------------+---------------+-------------+
-   |          Command (2)          |
-   +-------------------------------+
-
-
-Zebra Protocol Header Field Definitions
----------------------------------------
-
-Length
-   Total packet length including this header. The minimum length is 3 bytes for
-   version 0 messages and 6 bytes for version 1 messages.
-
-Marker
-   Static marker with a value of 255 always. This is to allow version 0 Zserv
-   headers (which do not include version explicitly) to be distinguished from
-   versioned headers. Not present in version 0 messages.
-
-Version
-   Version number of the Zserv message. Clients should not continue processing
-   messages past the version field for versions they do not recognise. Not
-   present in version 0 messages.
-
-Command
-   The Zebra Protocol command.
-
-
-Zebra Protocol Commands
------------------------
-
-+-----------------------------------+-------+
-| Command                           | Value |
-+===================================+=======+
-| ZEBRA_INTERFACE_ADD               | 1     |
-+-----------------------------------+-------+
-| ZEBRA_INTERFACE_DELETE            | 2     |
-+-----------------------------------+-------+
-| ZEBRA_INTERFACE_ADDRESS_ADD       | 3     |
-+-----------------------------------+-------+
-| ZEBRA_INTERFACE_ADDRESS_DELETE    | 4     |
-+-----------------------------------+-------+
-| ZEBRA_INTERFACE_UP                | 5     |
-+-----------------------------------+-------+
-| ZEBRA_INTERFACE_DOWN              | 6     |
-+-----------------------------------+-------+
-| ZEBRA_IPV4_ROUTE_ADD              | 7     |
-+-----------------------------------+-------+
-| ZEBRA_IPV4_ROUTE_DELETE           | 8     |
-+-----------------------------------+-------+
-| ZEBRA_IPV6_ROUTE_ADD              | 9     |
-+-----------------------------------+-------+
-| ZEBRA_IPV6_ROUTE_DELETE           | 10    |
-+-----------------------------------+-------+
-| ZEBRA_REDISTRIBUTE_ADD            | 11    |
-+-----------------------------------+-------+
-| ZEBRA_REDISTRIBUTE_DELETE         | 12    |
-+-----------------------------------+-------+
-| ZEBRA_REDISTRIBUTE_DEFAULT_ADD    | 13    |
-+-----------------------------------+-------+
-| ZEBRA_REDISTRIBUTE_DEFAULT_DELETE | 14    |
-+-----------------------------------+-------+
-| ZEBRA_IPV4_NEXTHOP_LOOKUP         | 15    |
-+-----------------------------------+-------+
-| ZEBRA_IPV6_NEXTHOP_LOOKUP         | 16    |
-+-----------------------------------+-------+