Merge tag 'upstream/1.2.3'
[quagga-debian.git] / doc / draft-zebra-00.txt
diff --git a/doc/draft-zebra-00.txt b/doc/draft-zebra-00.txt
new file mode 100644 (file)
index 0000000..d7fbe8c
--- /dev/null
@@ -0,0 +1,240 @@
+
+
+
+
+
+
+Network Working Group                                        K. Ishiguro
+Request for Comments: DRAFT                     Digital Magic Labs, Inc.
+                                                              March 1998
+
+
+                          Zebra Protocol Draft
+
+
+Status of this Memo
+
+   This draft is very eary beta version.
+
+Introduction
+
+   The zebra protocol is a communication protocol between kernel routing
+   table manager and routing protocol daemon. It is built over TCP/IP
+   protocol suite.
+
+Request message formats
+
+   zebra is TCP-based protocol.
+
+   Below is request packet format.
+
+
+     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) |
+     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+
+
+   Length is total packet length.
+
+   Here is summary of command list.
+
+
+     1 - ZEBRA_IPV4_ROUTE_ADD
+     2 - ZEBRA_IPV4_ROUTE_DELETE
+     3 - ZEBRA_IPV6_ROUTE_ADD
+     4 - ZEBRA_IPV6_ROUTE_DELETE
+     5 - ZEBRA_GET_ONE_INTERFACE
+     6 - ZEBRA_GET_ALL_INTERFACE
+     7 - ZEBRA_GET_HOSTINFO
+
+
+
+
+
+
+
+Ishiguro                                                FORMFEED[Page 1]
+
+
+
+
+
+RFC DRAFT                                                     March 1998
+
+
+IPv4 reply message formats
+
+
+     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
+     +-+-+-+-+-+-+-+-+
+     |    Type (1)   |
+     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+     |                            Gateway (4)                        |
+     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+
+
+   Type field specify route's origin type.
+
+
+     1 - ZEBRA_ROUTE_RESERVE
+     2 - ZEBRA_ROUTE_CONNECT
+     3 - ZEBRA_ROUTE_STATIC
+     4 - ZEBRA_ROUTE_RIP
+     5 - ZEBRA_ROUTE_RIPNG
+     6 - ZEBRA_ROUTE_BGP
+     7 - ZEBRA_ROUTE_RADIX
+
+
+   After above message there can be variale length IPv4 prefix data.
+   Each IPv4 prefix is encoded as a two tuple of the form <masklength,
+   prefix>
+
+
+     +----------------------+
+     |Subnet mask (1 octet) |
+     +----------------------+
+     |IPv4 prefix (variable)|
+     +----------------------+
+
+
+IPv6 reply message formats
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Ishiguro                                                FORMFEED[Page 2]
+
+
+
+
+
+RFC DRAFT                                                     March 1998
+
+
+     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
+     +-+-+-+-+-+-+-+-+
+     |    Type (1)   |
+     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+     |                                                               |
+     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+     |                           Gateway (16)                        |
+     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+     |                                                               |
+     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+     |                                                               |
+     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+
+
+   Type field specify route's origin type.
+
+
+     1 - ZEBRA_ROUTE_RESERVE
+     2 - ZEBRA_ROUTE_CONNECT
+     3 - ZEBRA_ROUTE_STATIC
+     4 - ZEBRA_ROUTE_RIP
+     5 - ZEBRA_ROUTE_RIPNG
+     6 - ZEBRA_ROUTE_BGP
+     7 - ZEBRA_ROUTE_RADIX
+
+
+
+     +----------------------+
+     |  ifindex   (4 octet) |
+     +----------------------+
+     |  prefixlen  (1 octet)|
+     +----------------------+
+     |IPv6 prefix (variable)|
+     +----------------------+
+
+
+   I am not sure but it seems some operation systems IPv6 implementation
+   may need interface index when add and delete linklocal routes.
+
+   I have added ifindex field to specify IPv6 routes interface index. If
+   this index is value zero, it will ignored.
+
+Interface information message format.
+
+
+
+
+
+
+
+Ishiguro                                                FORMFEED[Page 3]
+
+
+
+
+
+RFC DRAFT                                                     March 1998
+
+
+     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
+     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+     |                      Interface name (20)                      |
+     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+     |   Index (1)   |
+     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+     |                       Inteface flag (4)                       |
+     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+     |                      Inteface metric (4)                      |
+     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+     |                        Inteface MTU (4)                       |
+     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+     |                    Inteface Address count (4)                 |
+     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+
+
+   Address message format.
+
+Host inforamtion message format.
+
+
+     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
+     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+     |IPv4 forwarding|IPv6 forwarding|
+     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+
+
+   Host information contain IPv4/IPv6 forwarding information.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Ishiguro                                                FORMFEED[Page 4]
+
+