draft-zebra-00.ms
上传用户:xiaozhuqw
上传日期:2009-11-15
资源大小:1338k
文件大小:5k
源码类别:

网络

开发平台:

Unix_Linux

  1. .pl 10.0i
  2. .po 0
  3. .ll 7.2i
  4. .lt 7.2i
  5. .nr LL 7.2i
  6. .nr LT 7.2i
  7. .ds LF Ishiguro
  8. .ds RF FORMFEED[Page %]
  9. .ds CF
  10. .ds LH RFC DRAFT
  11. .ds RH March 1998
  12. .ds CH
  13. .hy 0
  14. .ad l
  15. Network Working Group                                        K. Ishiguro
  16. Request for Comments: DRAFT                     Digital Magic Labs, Inc.
  17.                                                               March 1998
  18. .sp 2
  19. .ce
  20. Zebra Protocol Draft
  21. .sp 2
  22. .fi
  23. .ne 4
  24. Status of this Memo
  25. .sp
  26. .in 3
  27. This draft is very eary beta version.
  28. .sp
  29. .in 0
  30. .ne 4
  31. Introduction
  32. .sp
  33. .in 3
  34. The zebra protocol is a communication protocol between kernel
  35. routing table manager and routing protocol daemon. It is built over
  36. TCP/IP protocol suite.
  37. .sp
  38. .in 0
  39. .ne 4
  40. Request message formats
  41. .sp
  42. .in 3
  43. zebra is TCP-based protocol.
  44. .sp
  45. Below is request packet format.
  46. .sp
  47. .in 0
  48. .DS
  49. 0                   1                   2                   3
  50. 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
  51. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  52. |           Length (2)          |   Command (1) |
  53. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  54. .DE
  55. .sp
  56. .in 3
  57. Length is total packet length.
  58. .sp
  59. Here is summary of command list.
  60. .sp
  61. .in 0
  62. .DS
  63. 1 - ZEBRA_IPV4_ROUTE_ADD
  64. 2 - ZEBRA_IPV4_ROUTE_DELETE
  65. 3 - ZEBRA_IPV6_ROUTE_ADD
  66. 4 - ZEBRA_IPV6_ROUTE_DELETE
  67. 5 - ZEBRA_GET_ONE_INTERFACE
  68. 6 - ZEBRA_GET_ALL_INTERFACE
  69. 7 - ZEBRA_GET_HOSTINFO
  70. .DE
  71. .sp
  72. .in 0
  73. .ne 4
  74. IPv4 reply message formats
  75. .sp
  76. .in 0
  77. .DS
  78. 0                   1                   2                   3
  79. 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
  80. +-+-+-+-+-+-+-+-+
  81. |    Type (1)   |
  82. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  83. |                            Gateway (4)                        |
  84. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  85. .DE
  86. .sp
  87. .in 3
  88. Type field specify route's origin type.
  89. .sp
  90. .in 0
  91. .DS
  92. 1 - ZEBRA_ROUTE_RESERVE
  93. 2 - ZEBRA_ROUTE_CONNECT
  94. 3 - ZEBRA_ROUTE_STATIC
  95. 4 - ZEBRA_ROUTE_RIP
  96. 5 - ZEBRA_ROUTE_RIPNG
  97. 6 - ZEBRA_ROUTE_BGP
  98. 7 - ZEBRA_ROUTE_RADIX
  99. .DE
  100. .sp
  101. .in 3
  102. After above message there can be variale length IPv4 prefix data.
  103. Each IPv4 prefix is encoded as a two tuple of the form <masklength,
  104. prefix>
  105. .sp
  106. .in 0
  107. .DS
  108. +----------------------+
  109. |Subnet mask (1 octet) |
  110. +----------------------+
  111. |IPv4 prefix (variable)|
  112. +----------------------+
  113. .DE
  114. .sp
  115. .in 0
  116. .ne 4
  117. IPv6 reply message formats
  118. .sp
  119. .in 0
  120. .DS
  121. 0                   1                   2                   3
  122. 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
  123. +-+-+-+-+-+-+-+-+
  124. |    Type (1)   |
  125. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  126. |                                                               |
  127. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  128. |                           Gateway (16)                        |
  129. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  130. |                                                               |
  131. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  132. |                                                               |
  133. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  134. .DE
  135. .sp
  136. .in 3
  137. Type field specify route's origin type.
  138. .sp
  139. .in 0
  140. .DS
  141. 1 - ZEBRA_ROUTE_RESERVE
  142. 2 - ZEBRA_ROUTE_CONNECT
  143. 3 - ZEBRA_ROUTE_STATIC
  144. 4 - ZEBRA_ROUTE_RIP
  145. 5 - ZEBRA_ROUTE_RIPNG
  146. 6 - ZEBRA_ROUTE_BGP
  147. 7 - ZEBRA_ROUTE_RADIX
  148. .DE
  149. .sp
  150. .in 0
  151. .DS
  152. +----------------------+
  153. |  ifindex   (4 octet) |
  154. +----------------------+
  155. |  prefixlen  (1 octet)|
  156. +----------------------+
  157. |IPv6 prefix (variable)|
  158. +----------------------+
  159. .DE
  160. .sp
  161. .in 3
  162. I am not sure but it seems some operation systems IPv6
  163. implementation may need interface index when add and delete
  164. linklocal routes.
  165. .sp
  166. I have added ifindex field to specify IPv6 routes interface
  167. index. If this index is value zero, it will ignored.
  168. .sp
  169. .in 0
  170. .ne 4
  171. Interface information message format.
  172. .sp
  173. .in 0
  174. .DS
  175. 0                   1                   2                   3
  176. 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
  177. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  178. |                      Interface name (20)                      |
  179. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  180. |   Index (1)   |
  181. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  182. |                       Inteface flag (4)                       |
  183. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  184. |                      Inteface metric (4)                      |
  185. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  186. |                        Inteface MTU (4)                       |
  187. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  188. |                    Inteface Address count (4)                 |
  189. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  190. .DE
  191. .sp
  192. .in 3
  193. Address message format.
  194. .sp
  195. .in 0
  196. .ne 4
  197. Host inforamtion message format.
  198. .sp
  199. .in 0
  200. .DS
  201. 0                   1                   2                   3
  202. 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
  203. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  204. |IPv4 forwarding|IPv6 forwarding|
  205. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  206. .DE
  207. .sp
  208. .in 3
  209. Host information contain IPv4/IPv6 forwarding information.