P. Francis (NTT) February 1994 OSPF for SIPP Status of this Memo This document is an Internet Draft. Internet Drafts are working documents of the Internet Engineering Task Force (IETF), its Areas, and its Working Groups. Note that other groups may also distribute working documents as Internet Drafts). Internet Drafts are draft documents valid for a maximum of six months. Internet Drafts may be updated, replaced, or obsoleted by other documents at any time. It is not appropriate to use Internet Drafts as reference material or to cite them other than as a "working draft" or "work in progress." Please check the I-D abstract listing contained in each Internet Draft directory to learn the current status of this or any other Internet Draft. 1. INTRODUCTION This specification defines OSPF V2 [1] for use with SIPP [3], called OSPF-SIPP. The only changes required to the OSPF *specification* (for convenience, we assume "V2" in the remainder of this document) to allow it to work with SIPP is an increase in the address size, wherever it appears, from 32 to 64 bits. That is, the IP address is replaced everywhere with the SIPP address. There are two other important changes required to OSPF for OSPF-SIPP, but these changes are specified in the Routing and Addressing specif- ication [2], not in changes to the OSPF specification per se. One such change is in the implementation of the SIPP protocol--to allow SIPP routers to know when to advance the route sequence. The other change is in the configuration and operation of OSPF--to insure that routers initiate and halt (masked) routing advertisements properly. This specification assumes familiarity with the routing and address- ing specification [2]. A significant non-change to OSPF is that the "per-link" numbering of IP, as reflected in OSPF, is maintained. This non-change is SIPP WG, Expires Sept. 1, 1994 [Page 1] OSPF-SIPP February 1994 significant because SIPP allows for "subnet" level prefixes to span multiple physical subnetworks. When OSPF-SIPP is used, an address prefix cannot span multiple physical subnetworks. This specification describes only those changes required to OSPF for SIPP. Thus, it is a companion document to [1], and does not stand on its own. Note that the author is aware of another effort to expand the scope of OSPF, namely from Rob Coltun. Rob's work, among numerous other things, will allow for multiple address families, including SIPP, using a type/length/value (TLV) paradigm. The specification herein chooses the simpler approach for now, in the interests of quick for- ward progress with SIPP. If the other effort finds quick acceptance and deployment, then this specification may at that time be super- seded. 2. Changes to OSPF This section specifies the changes required to OSPF for OSPF-SIPP. Each subsection heading in this section refers to the OSPF section to which it applies using the nomenclature "OSPF/x.y.z", where x, y, and z are OSPF section numbers. 2.1. OSPF/12.3: Representation of TOS SIPP does not have different TOS's in the sense that IP has. That is, SIPP does not have TOS values that effect routing of a packet. (SIPP has a field analogous to IP's TOS field, but this only effects how packets are queued, not how they are routed.) Thus, only the TOS 0 metric is used with OSPF-SIPP. 2.2. OSPF/A. OSPF data formats This only change to this section is that OSPF-SIPP runs directly over SIPP, not IP. Note that SIPP itself may be tunneled over IP, but this does not alter the fact that OSPF-SIPP is running over SIPP. 2.3. OSPF/A.1 Encapsulation of OSPF packets The discussion of IP fragmentation (second paragraph) holds for OSPF-SIPP, with the added note that all SIPP nodes support MTU Discovery. Thus, the desire to limit packets to 576 bytes may be SIPP WG, Expires Sept. 1, 1994 [Page 2] OSPF-SIPP February 1994 less strong with OSPF-SIPP. The multicast address assignments for AllSPFRouters and AllDRouters are: AllSPFRouters: 7F02:0:0:4 AllDRouters: 7F02:0:0:5 These multicast addresses have scope of intra-link. Note: SIPP needs a registry of well-known multicast addresses. OSPF-SIPP is SIPP protocol number . SIPP packets do not contain a precedence field analogous to IP's (that is, the precedence for packets from different nodes is not directly compared). Instead, SIPP has a drop priority field that is used to prioritize dropping among packets from the same node. All OSPF-SIPP packets from a given router must be sent with the same drop priority. 2.4. OSPF/A.3.1 The OSPF packet header The common header of SIPP-OSPF is 32 bytes in length. Its format is as follows: 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Version # | Type | Packet length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Checksum | Autype | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+-+- Router ID -+-+-+ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+-+- Area ID -+-+-+ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Authentication | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Authentication | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Note that the Router ID and Area ID fields have been increased to 64 SIPP WG, Expires Sept. 1, 1994 [Page 3] OSPF-SIPP February 1994 bits, in order to allow SIPP addresses to be used for these two fields. Note also that the 32-bit word containing Checksum and Autype have been moved forward in the header to allow for 64-byte alignment of the Router ID and Area ID. 2.5. OSPF/A.3.2 The Hello packet The format of the OSPF-SIPP Hello packet is: 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ Common Part (32 bytes) ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+-+- Network Mask -+-+-+ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | HelloInt | Options | Rtr Pri | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | DeadInt | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+-+- Designated Router -+-+-+ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+-+- Backup Designated Router -+-+-+ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+-+- Neighbor -+-+-+ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ... | SIPP WG, Expires Sept. 1, 1994 [Page 4] OSPF-SIPP February 1994 2.6. OSPF/A.3.4 The Link State Request packet The format of the OSPF-SIPP The Link State Request packet is: 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ Common Part (32 bytes) ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+- LS type -+-+ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+- Link State ID -+-+ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+- Advertising Router -+-+ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ... | Note that the LS type has been lengthened to 64 bits only to put the Link State ID and Advertising Router fields on 64-bit boundaries. SIPP WG, Expires Sept. 1, 1994 [Page 5] OSPF-SIPP February 1994 2.7. OSPF/A.4.1 The Link State Advertisement header The format of the Link State Advertisement packet is: 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | LS age | Options | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | LS type | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+- Link State ID -+-| | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+- Advertising Router -+-| | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | LS sequence number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | LS checksum | length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ The Options and LS type fields have been lengthened only for the pur- pose of putting the Link State ID and Advertising Router fields on 64-bit boundaries. SIPP WG, Expires Sept. 1, 1994 [Page 6] OSPF-SIPP February 1994 2.8. OSPF/A.4.2 Router links advertisements The format of the OSPF-SIPP Router links advertisements header is: 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ Common Part (32 bytes) ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | 0 |E|B| 0 | 0 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | # links | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+- Link ID -+-+ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+- Link Data -+-+ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | # TOS | TOS 0 metric | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | TOS | 0 | metric | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ... | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | TOS | 0 | metric | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Optional Padding | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+- Link ID -+-+ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+- Link Data -+-+ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ... | Note that the #links field has been lengthened to 32 bits only to align the Link ID and Link Data fields at 64 bit boundaries. The Optional Padding field of 32 bits must be included if the number of TOSs (#TOS field) is even, and must not be included if the number of TOSs is odd. This aligns the subsequent Link ID and Link Data fields SIPP WG, Expires Sept. 1, 1994 [Page 7] OSPF-SIPP February 1994 at 64-bit boundaries. The Optional Padding field must be transmitted as 0 and ignored upon receipt. Also, note that the field descriptions includes a description for the "#metrics" field. This is a typo, and should read "#TOS". 2.9. OSPF/A.4.3 Network links advertisements The format of the Network links advertisements packet is: 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ Common Part (32 bytes) ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+- Network Mask -+-+ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+- Attached Router -+-+ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ... | 2.10. OSPF/A.4.4 Summary link advertisements The format of the Summary link advertisements packet is: 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ Common Part (32 bytes) ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+- Network Mask -+-+ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | TOS | metric | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ... | SIPP WG, Expires Sept. 1, 1994 [Page 8] OSPF-SIPP February 1994 2.11. OSPF/A.4.5 AS external link advertisements The format of the AS external link advertisements packet is: 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ Common Part (32 bytes) ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+- Network Mask -+-+ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |E| TOS | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | metric | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+- Forwarding address -+-+ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+- External Route Tag -+-+ | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ... | Note that the TOS and metric fields have been lengthened to provide 64-bit alignment. References [1] J. Moy, "OSPF Version 2", RFC 1247 [2] S. Deering, P. Francis, R. Govindan, "SIPP Routing and Addressing", Internet Draft. [3] S. Deering, "SIPP Specification", Internet Draft. SIPP WG, Expires Sept. 1, 1994 [Page 9] OSPF-SIPP February 1994 Author's Address Paul Francis, francis@cactus.ntt.jp SIPP WG, Expires Sept. 1, 1994 [Page 10]