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