rfc2740.txt

来自「RFC 的详细文档!」· 文本 代码 · 共 1,446 行 · 第 1/5 页

TXT
1,446
字号






Network Working Group                                          R. Coltun
Requests for Comments: 2740                                Siara Systems
Category: Standards Track                                    D. Ferguson
                                                        Juniper Networks
                                                                  J. Moy
                                                       Sycamore Networks
                                                           December 1999


                             OSPF for IPv6

Status of this Memo

   This document specifies an Internet standards track protocol for the
   Internet community, and requests discussion and suggestions for
   improvements.  Please refer to the current edition of the "Internet
   Official Protocol Standards" (STD 1) for the standardization state
   and status of this protocol.  Distribution of this memo is unlimited.

Copyright Notice

   Copyright (C) The Internet Society (1999).  All Rights Reserved.

Abstract

   This document describes the modifications to OSPF to support version
   6 of the Internet Protocol (IPv6).  The fundamental mechanisms of
   OSPF (flooding, DR election, area support, SPF calculations, etc.)
   remain unchanged. However, some changes have been necessary, either
   due to changes in protocol semantics between IPv4 and IPv6, or simply
   to handle the increased address size of IPv6.

   Changes between OSPF for IPv4 and this document include the
   following. Addressing semantics have been removed from OSPF packets
   and the basic LSAs. New LSAs have been created to carry IPv6
   addresses and prefixes. OSPF now runs on a per-link basis, instead of
   on a per-IP-subnet basis. Flooding scope for LSAs has been
   generalized. Authentication has been removed from the OSPF protocol
   itself, instead relying on IPv6's Authentication Header and
   Encapsulating Security Payload.

   Most packets in OSPF for IPv6 are almost as compact as those in OSPF
   for IPv4, even with the larger IPv6 addresses. Most field-XSand
   packet-size limitations present in OSPF for IPv4 have been relaxed.
   In addition, option handling has been made more flexible.






Coltun, et al.              Standards Track                     [Page 1]

RFC 2740                     OSPF for IPv6                 December 1999


   All of OSPF for IPv4's optional capabilities, including on-demand
   circuit support, NSSA areas, and the multicast extensions to OSPF
   (MOSPF) are also supported in OSPF for IPv6.

Table of Contents

   1        Introduction ........................................... 4
   1.1      Terminology ............................................ 4
   2        Differences from OSPF for IPv4 ......................... 4
   2.1      Protocol processing per-link, not per-subnet ........... 5
   2.2      Removal of addressing semantics ........................ 5
   2.3      Addition of Flooding scope ............................. 5
   2.4      Explicit support for multiple instances per link ....... 6
   2.5      Use of link-local addresses ............................ 6
   2.6      Authentication changes ................................. 7
   2.7      Packet format changes .................................. 7
   2.8      LSA format changes ..................................... 8
   2.9      Handling unknown LSA types ............................ 10
   2.10     Stub area support ..................................... 10
   2.11     Identifying neighbors by Router ID .................... 11
   3        Implementation details ................................ 11
   3.1      Protocol data structures .............................. 12
   3.1.1    The Area Data structure ............................... 13
   3.1.2    The Interface Data structure .......................... 13
   3.1.3    The Neighbor Data Structure ........................... 14
   3.2      Protocol Packet Processing ............................ 15
   3.2.1    Sending protocol packets .............................. 15
   3.2.1.1  Sending Hello packets ................................. 16
   3.2.1.2  Sending Database Description Packets .................. 17
   3.2.2    Receiving protocol packets ............................ 17
   3.2.2.1  Receiving Hello Packets ............................... 19
   3.3      The Routing table Structure ........................... 19
   3.3.1    Routing table lookup .................................. 20
   3.4      Link State Advertisements ............................. 20
   3.4.1    The LSA Header ........................................ 21
   3.4.2    The link-state database ............................... 22
   3.4.3    Originating LSAs ...................................... 22
   3.4.3.1  Router-LSAs ........................................... 25
   3.4.3.2  Network-LSAs .......................................... 27
   3.4.3.3  Inter-Area-Prefix-LSAs ................................ 28
   3.4.3.4  Inter-Area-Router-LSAs ................................ 29
   3.4.3.5  AS-external-LSAs ...................................... 29
   3.4.3.6  Link-LSAs ............................................. 31
   3.4.3.7  Intra-Area-Prefix-LSAs ................................ 32
   3.5      Flooding .............................................. 35
   3.5.1    Receiving Link State Update packets ................... 36
   3.5.2    Sending Link State Update packets ..................... 36
   3.5.3    Installing LSAs in the database ....................... 38



Coltun, et al.              Standards Track                     [Page 2]

RFC 2740                     OSPF for IPv6                 December 1999


   3.6      Definition of self-originated LSAs .................... 39
   3.7      Virtual links ......................................... 39
   3.8      Routing table calculation ............................. 39
   3.8.1    Calculating the shortest path tree for an area ........ 40
   3.8.1.1  The next hop calculation .............................. 41
   3.8.2    Calculating the inter-area routes ..................... 42
   3.8.3    Examining transit areas' summary-LSAs ................. 42
   3.8.4    Calculating AS external routes ........................ 42
   3.9      Multiple interfaces to a single link .................. 43
            References ............................................ 44
   A        OSPF data formats ..................................... 46
   A.1      Encapsulation of OSPF packets ......................... 46
   A.2      The Options field ..................................... 47
   A.3      OSPF Packet Formats ................................... 48
   A.3.1    The OSPF packet header ................................ 49
   A.3.2    The Hello packet ...................................... 50
   A.3.3    The Database Description packet ....................... 52
   A.3.4    The Link State Request packet ......................... 54
   A.3.5    The Link State Update packet .......................... 55
   A.3.6    The Link State Acknowledgment packet .................. 56
   A.4      LSA formats ........................................... 57
   A.4.1    IPv6 Prefix Representation ............................ 58
   A.4.1.1  Prefix Options ........................................ 58
   A.4.2    The LSA header ........................................ 59
   A.4.2.1  LS type ............................................... 60
   A.4.3    Router-LSAs ........................................... 61
   A.4.4    Network-LSAs .......................................... 64
   A.4.5    Inter-Area-Prefix-LSAs ................................ 65
   A.4.6    Inter-Area-Router-LSAs ................................ 66
   A.4.7    AS-external-LSAs ...................................... 67
   A.4.8    Link-LSAs ............................................. 69
   A.4.9    Intra-Area-Prefix-LSAs ................................ 71
   B        Architectural Constants ............................... 73
   C        Configurable Constants ................................ 73
   C.1      Global parameters ..................................... 73
   C.2      Area parameters ....................................... 74
   C.3      Router interface parameters ........................... 75
   C.4      Virtual link parameters ............................... 77
   C.5      NBMA network parameters ............................... 77
   C.6      Point-to-MultiPoint network parameters ................ 78
   C.7      Host route parameters ................................. 78
            Security Considerations ............................... 79
            Authors' Addresses .................................... 79
            Full Copyright Statement .............................. 80







Coltun, et al.              Standards Track                     [Page 3]

RFC 2740                     OSPF for IPv6                 December 1999


1.  Introduction

   This document describes the modifications to OSPF to support version
   6 of the Internet Protocol (IPv6).  The fundamental mechanisms of
   OSPF (flooding, DR election, area support, SPF calculations, etc.)
   remain unchanged. However, some changes have been necessary, either
   due to changes in protocol semantics between IPv4 and IPv6, or simply
   to handle the increased address size of IPv6.

   This document is organized as follows. Section 2 describes the
   differences between OSPF for IPv4 and OSPF for IPv6 in detail.
   Section 3 provides implementation details for the changes. Appendix A
   gives the OSPF for IPv6 packet and LSA formats. Appendix B lists the
   OSPF architectural constants. Appendix C describes configuration
   parameters.

1.1.  Terminology

   This document attempts to use terms from both the OSPF for IPv4
   specification ([Ref1]) and the IPv6 protocol specifications
   ([Ref14]). This has produced a mixed result. Most of the terms used
   both by OSPF and IPv6 have roughly the same meaning (e.g.,
   interfaces). However, there are a few conflicts. IPv6 uses "link"
   similarly to IPv4 OSPF's "subnet" or "network". In this case, we have
   chosen to use IPv6's "link" terminology. "Link" replaces OSPF's
   "subnet" and "network" in most places in this document, although
   OSPF's Network-LSA remains unchanged (and possibly unfortunately, a
   new Link-LSA has also been created).

   The names of some of the OSPF LSAs have also changed. See Section 2.8
   for details.

2.  Differences from OSPF for IPv4

   Most of the algorithms from OSPF for IPv4 [Ref1] have preserved in
   OSPF for IPv6. However, some changes have been necessary, either due
   to changes in protocol semantics between IPv4 and IPv6, or simply to
   handle the increased address size of IPv6.

   The following subsections describe the differences between this
   document and [Ref1].










Coltun, et al.              Standards Track                     [Page 4]

RFC 2740                     OSPF for IPv6                 December 1999


2.1.  Protocol processing per-link, not per-subnet

   IPv6 uses the term "link" to indicate "a communication facility or
   medium over which nodes can communicate at the link layer" ([Ref14]).
   "Interfaces" connect to links. Multiple IP subnets can be assigned to
   a single link, and two nodes can talk directly over a single link,
   even if they do not share a common IP subnet (IPv6 prefix).

   For this reason, OSPF for IPv6 runs per-link instead of the IPv4
   behavior of per-IP-subnet. The terms "network" and "subnet" used in
   the IPv4 OSPF specification ([Ref1]) should generally be relaced by
   link. Likewise, an OSPF interface now connects to a link instead of
   an IP subnet, etc.

   This change affects the receiving of OSPF protocol packets, and the
   contents of Hello Packets and Network-LSAs.

2.2.  Removal of addressing semantics

   In OSPF for IPv6, addressing semantics have been removed from the
   OSPF protocol packets and the main LSA types, leaving a network-
   protocol-independent core. In particular:

   o   IPv6 Addresses are not present in OSPF packets, except in
       LSA payloads carried by the Link State Update Packets. See
       Section 2.7 for details.

   o   Router-LSAs and Network-LSAs no longer contain network
       addresses, but simply express topology information. See
       Section 2.8 for details.

   o   OSPF Router IDs, Area IDs and LSA Link State IDs remain at
       the IPv4 size of 32-bits. They can no longer be assigned as
       (IPv6) addresses.

   o   Neighboring routers are now always identified by Router ID,
       where previously they had been identified by IP address on
       broadcast and NBMA "networks".

2.3.  Addition of Flooding scope

   Flooding scope for LSAs has been generalized and is now explicitly
   coded in the LSA's LS type field. There are now three separate
   flooding scopes for LSAs:







Coltun, et al.              Standards Track                     [Page 5]

RFC 2740                     OSPF for IPv6                 December 1999


   o   Link-local scope. LSA is flooded only on the local link, and
       no further. Used for the new Link-LSA (see Section A.4.8).

   o   Area scope. LSA is flooded throughout a single OSPF area

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?