Network Working Group                               Philip J. Nesser II
draft-ietf-v6ops-ipv4survey-routing-00.txt   Nesser & Nesser Consulting
Internet Draft                                            February 2003
                                                    Expires August 2003

           Survey of IPv4 Addresses in Currently Deployed
                      IETF Routing Area Standards

This document is an Internet-Draft and is in full conformance with
all provisions of Section 10 of RFC2026.

Status of this Memo

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 and may be updated, replaced, or obsoleted by other documents at
any time.  It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."

The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt

The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.


Abstract

This document seeks to document all usage of IPv4 addresses in currently
deployed IETF Routing Area documented standards.  In order to
successfully transition from an all IPv4 Internet to an all IPv6 Internet,
many interim steps will be taken. One of these steps is the evolution of
current protocols that have IPv4 dependencies.  It is hoped that these
protocols (and their implementations) will be redesigned to be network
address independent, but failing that will at least dually support IPv4
and IPv6.  To this end, all Standards (Full, Draft, and Proposed) as well
as Experimental RFCs will be surveyed and any dependencies will be documented.



1.0 Introduction

This work began as a megolithic document draft-ietf-ngtrans-
ipv4survey-XX.txt.  In an effort to rework the information into a more
manageable form, it has been broken into 8 documents conforming to the
current IETF areas (Application, General, Internet, Manangement & Operations,
Routing, Security, Sub-IP and Transport).


1.1 Short Historical Perspective

There are many challenges that face the Internet Engineering community.
The foremost of these challenges has been the scaling issue.  How to grow
a network that was envisioned to handle thousands of hosts to one that
will handle tens of millions of networks with billions of hosts.  Over the
years this scaling problem has been overcome with changes to the network
layer and to routing protocols.  (Ignoring the tremendous advances in
computational hardware)

The first "modern" transition to the network layer occurred in during the
early 1980's from the Network Control Protocol (NCP) to IPv4.  This
culminated in the famous "flag day" of January 1, 1983.  This version of
IP was documented in RFC 760.  This was a version of IP with 8 bit network
and 24 bit host addresses.  A year later IP was updated in RFC 791 to
include the famous A, B, C, D, & E class system.

Networks were growing in such a way that it was clear that a need for
breaking networks into smaller pieces was needed.  In October of 1984 RFC
917 was published formalizing the practice of subnetting.

By the late 1980's it was clear that the current exterior routing protocol
used by the Internet (EGP) was not sufficient to scale with the growth of
the Internet.  The first version of BGP was documented in 1989 in RFC
1105.

The next scaling issues to became apparent in the early 1990's was the
exhaustion of the Class B address space.  The growth and commercialization
of the Internet had organizations requesting IP addresses in alarming
numbers.  In May of 1992 over 45% of the Class B space was allocated.  In
early 1993 RFC 1466 was published directing assignment of blocks of Class
C's be given out instead of Class B's.  This solved the problem of address
space exhaustion but had significant impact of the routing infrastructure.

The number of entries in the "core" routing tables began to grow
exponentially as a result of RFC 1466.  This led to the implementation of
BGP4 and CIDR prefix addressing.  This may have solved the problem for the
present but there are still potential scaling issues.

Current Internet growth would have long overwhelmed the current address
space if industry didn't supply a solution in Network Address Translators
(NATs).  To do this the Internet has sacrificed the underlying
"End-to-End" principle.

In the early 1990's the IETF was aware of these potential problems and
began a long design process to create a successor to IPv4 that would
address these issues.  The outcome of that process was IPv6.

The purpose of this document is not to discuss the merits or problems of
IPv6.  That is a debate that is still ongoing and will eventually be
decided on how well the IETF defines transition mechanisms and how
industry accepts the solution.  The question is not "should," but "when."


1.2 A Brief Aside

Throughout this document there are discussions on how protocols might be
updated to support IPv6 addresses.  Although current thinking is that IPv6
should suffice as the dominant network layer protocol for the lifetime of
the author, it is not unreasonable to contemplate further upgrade to IP.
Work done by the IRTF Interplanetary Internet Working Group shows one idea
of far reaching thinking.  It may be a reasonable idea (or may not) to
consider designing protocols in such a way that they can be either IP
version aware or independent.  This idea must be balanced against issues
of simplicity and performance.  Therefore it is recommended that protocol
designer keep this issue in mind in future designs.

Just as a reminder, remember the words of Jon Postel:

        "Be conservative in what you send; be liberal in what
         you accept from others."



2.0 Methodology

To perform this study each class of IETF standards are investigated in
order of maturity:  Full, Draft, and Proposed, as well as Experimental.
Informational RFC are not addressed.  RFCs that have been obsoleted by
either newer versions or as they have transitioned through the standards
process are not covered.

Please note that a side effect of this choice of methodology is that
some protocols that are defined by a series of RFC's that are of different
levels of standards maturity are covered in different spots in the
document.  Likewise other natural groupings (i.e. MIBs, SMTP extensions,
IP over FOO, PPP, DNS, etc.) could easily be imagined.


2.1 Scope

The procedure used in this investigation is an exhaustive reading of the
applicable RFC's.  This task involves reading approximately 25000 pages
of protocol specifications.  To compound this, it was more than a process
of simple reading.  It was necessary to attempt to understand the purpose
and functionality of each protocol in order to make a proper determination
of IPv4 reliability.  The author has made ever effort to make this effort
and the resulting document as complete as possible, but it is likely that
some subtle (or perhaps not so subtle) dependence was missed.  The author
encourage those familiar (designers, implementers or anyone who has an
intimate knowledge) with any protocol to review the appropriate sections
and make comments.


2.2 Document Organization

The rest of the document sections are described below.

Sections 3, 4, 5, and 6 each describe the raw analysis of Full, Draft,
and Proposed Standards, and Experimental RFCs.  Each RFC is discussed in
its turn starting with RFC 1 and ending with RFC 3247.  The comments for
each RFC is "raw" in nature.  That is, each RFC is discussed in a vacuum
and problems or issues discussed do not "look ahead" to see if the
problems have already been fixed.

Section 7 is an analysis of the data presented in Sections 3, 4, 5, and
6.  It is here that all of the results are considered as a whole and the
problems that have been resolved in later RFCs are correlated.



3.0 Full Standards

Full Internet Standards (most commonly simply referred to as "Standards")
are fully mature protocol specification that are widely implemented and
used throughout the Internet.


3.1 RFC 1009 Gateway Requirements

It is pointless to attempt to try and quantify the IPv4 references in this
document.  The document specifies operations of IPv4 routers/gateways.
Hence, it makes numerous references that are IPv4 specific.

Like RFC 1122, it is necessary to rewrite this document and create a "IPv6
Gateway Requirements" standard.


3.2 RFC 904 Exterior Gateway Protocol

This RFC has been depreciated to Historic status and is not considered.


3.3 RFC 1058 Routing Information Protocol

This RFC has been reclassified as historic and replace by STD 56.
See Section 3.56 for its further discussion.


3.4 Interface Message Processor: Specifications for the
     Interconnection of a Host and an IMP

This standard has be reclassified as Historic and is not considered in this
discussion.


3.5 RFC 2328 OSPF Version 2

This RFC defines a protocol for IPv4 routing.  It is highly assumptive
about address formats being IPv4 in nature.  A new versions of OSPF must
be created to support IPv6.


3.6 RFC 2453 RIP Version 2

RIPv2 is only intended for IPv4 networks.  IPv6 routing functionality
is contain in RIPng documented in RFC 2080.


3.7 RFC 1722 RIP Version 2 Protocol Applicability Statement

RIPv2 is only intended for IPv4 networks.  IPv6 routing functionality
is contain in RIPng documented in RFC 2081.



4.0 Draft Standards

Draft Standards represent the penultimate standard level in the IETF.
A protocol can only achieve draft standard when there are multiple,
independent, interoperable implementations.  Draft Standards are usually
quite mature and widely used.


4.1 RFC 1771 A Border Gateway Protocol 4 (BGP-4) (BGP-4)

This RFC defines a protocol used for exchange of IPv4 routing information
and does not support IPv6.  A new EGP must be defined for the exchange of
IPv6 routing information.


4.2 RFC 1772 Application of the Border Gateway Protocol in the
     Internet (BGP-4-APP)

This RFC is a discussion of the use of BGP4 on the Internet.  Since BGP4
is limited to IPv4 addresses, it is expected that a similar document will
be created to be paired with the definition of the next generation BGP.



5.0 Proposed Standards

Proposed Standards are introductory level documents.  There are no
requirements for even a single implementation.  In many cases Proposed
are never implemented or advanced in the IETF standards process.  They
therefore are often just proposed ideas that are presented to the Internet
community.  Sometimes flaws are exposed or they are one of many competing
solutions to problems.  In these later cases, no discussion is presented
as it would not serve the purpose of this discussion.


5.01 RFC 1195 Use of OSI IS-IS for routing in TCP/IP and dual
      environments (IS-IS)

This documents specifies a protocol for the exchange of IPv4 routing
information.  It is incompatible with IPv6.  There are is substantial
work being done on a newer version of IS-IS that should include IPv6
routing.


5.02 RFC 1370 Applicability Statement for OSPF

This document discusses a version of OSPF that is limited to IPv4.  It is
expected that a similar document be assigned for when a version of OSPF
that supports IPv6 is established.


5.03 RFC 1397 Default Route Advertisement In BGP2 and BGP3 Version
      of The Border Gateway Protocol

BGP2 and BGP3 are both depreciated and therefore are not discussed in
this document.


5.04 RFC 1403 BGP OSPF Interaction (BGP-OSPF)

This document discusses the interaction between two routing protocols
and how they exchange IPv4 information.  A similar document should be
produced when versions of OSPF and BGP that support IPv6.


5.05 RFC 1478 An Architecture for Inter-Domain Policy Routing
      (IDPR-ARCH)

The architecture described in this documents has no IPv4 dependencies.


5.06 RFC 1479 Inter-Domain Policy Routing Protocol Specification:
      Version 1 (IDPR)

There are no IPv4 dependencies in this protocol.


5.07 RFC 1517 Applicability Statement for the Implementation of
      Classless Inter-Domain Routing (CIDR) (CIDR)

This document deals exclusively with IPv4 addressing issue.


5.08 RFC 1518 An Architecture for IP Address Allocation with
      CIDR (CIDR-ARCH)

This document deals exclusively with IPv4 addressing issue.


5.09 RFC 1519 Classless Inter-Domain Routing (CIDR): an Address
      Assignment and Aggregation Strategy (CIDR-STRA)

This document deals exclusively with IPv4 addressing issue.


5.10 RFC 1582 Extensions to RIP to Support Demand Circuits (RIP-DC)

This protocol is an extension to a protocol for exchanging IPv4
routing information.

In Section 3. IP Routing Information Protocol Version 1 shows:

     Followed by up to 25 routing entries (each 20 octets)

     0                   1                   2                   3 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
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     | address family identifier (2) |      must be zero (2)         |
     +-------------------------------+-------------------------------+
     |                         IP address (4)                        |
     +---------------------------------------------------------------+
     |                        must be zero (4)                       |
     +---------------------------------------------------------------+
     |                        must be zero (4)                       |
     +---------------------------------------------------------------+
     |                          metric (4)                           |
     +---------------------------------------------------------------+
                                     .
                                     .

     The format of an IP RIP datagram in octets, with each tick mark
     representing one bit.    All fields are in network order.

     The four octets: sequence number (2), fragment number (1) and
     number of fragments (1) are not present in the original RIP
     specification.  They are only present if command takes the
     values 7 or 8.


          Figure 2.   IP Routing Information Protocol packet format

The section referencing RIPv2 refers back to the above text.


5.11 RFC 1584 Multicast Extensions to OSPF (OSPF-Multi)

This document defines the use of IPv4 multicast to an IPv4 routing
protocol.  A similar mechanism must be defined for IPv6.


5.12 RFC 1587 The OSPF NSSA Option (OSPF-NSSA)

This document defines an extension to an IPv4 routing protocol and
it is assumed that any updated version of OSPF to support IPv6 will
contain an appropriate update for this option.


5.13 RFC 1745 BGP4/IDRP for IP---OSPF Interaction (BGP4/IDRP)

This document discusses the interaction between two routing protocols
and how they exchange IPv4 information.  A similar document should be
produced when versions of OSPF and BGP that support IPv6.


5.14 RFC 1793 Extending OSPF to Support Demand Circuits (OSPF-DC)

There are no IPv4 dependencies in this protocol other than the fact
that it is an new functionality for a routing protocol that only
supports IPv4 networks.  It is assumed that a future update to OSPF
to support IPv6 will also support this functionality.


5.15 RFC 1997 BGP Communities Attribute (BGP-COMM)

Although the protocol enhancements have no IPv4 dependencies, it is
an update to an IPv4 only routing protocol.  It is expected that a
newer version of BGP that is IPv6 aware will also implement this
enhancement.


5.16 RFC 2080 RIPng for IPv6 (RIPNG-IPV6)

This RFC documents a protocol for exchanging IPv6 routing information
and is not discussed in this document.


5.17 RFC 2091 Triggered Extensions to RIP to Support Demand
      Circuits (RIP-TRIG)

This RFC defines an enhancement for an IPv4 routing protocol and
while it has no IPv4 dependencies it is inherintely limited to IPv4.
It is expected that a similar mechanism will be implemented in RIPng.


5.18 RFC 2332 NBMA Next Hop Resolution Protocol (NHRP) (NHRP)

This document is very generic in its design and seems to be able
to support numerous layer 3 addressing schemes and should include
both IPv4 and IPv6.


5.19 RFC 2333 NHRP Protocol Applicability Statement

This document is very generic in its design and seems to be able
to support numerous layer 3 addressing schemes and should include
both IPv4 and IPv6.


5.20 RFC 2335 A Distributed NHRP Service Using SCSP (NHRP-SCSP)

There are no IPv4 dependencies in this protocol.


5.21 RFC 2338 Virtual Router Redundancy Protocol (VRRP)

This protocol is IPv4 specific.  See the following:

5.1  VRRP Packet Format

   This section defines the format of the VRRP packet and the relevant
   fields in the IP header.

       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  | Virtual Rtr ID|   Priority    | Count IP Addrs|
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |   Auth Type   |   Adver Int   |          Checksum             |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                         IP Address (1)                        |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                            .                                  |
      |                            .                                  |
      |                            .                                  |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                         IP Address (n)                        |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                     Authentication Data (1)                   |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                     Authentication Data (2)                   |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

5.2  IP Field Descriptions

5.2.1  Source Address

   The primary IP address of the interface the packet is being sent
   from.

5.2.2  Destination Address

   The IP multicast address as assigned by the IANA for VRRP is:

       224.0.0.18

   This is a link local scope multicast address.  Routers MUST NOT
   forward a datagram with this destination address regardless of its
   TTL.

There are numerous other references to 32-bit IP addresses.  There
does not seem to be any reason that a new version of this protocol
could be straightforwardly be developed for IPv6.


5.22 RFC 2370 The OSPF Opaque LSA Option (OSPF-LSA)

There are no IPv4 dependencies in this protocol other than the fact
that it is an new functionality for a routing protocol that only
supports IPv4 networks.  It is assumed that a future update to OSPF
to support IPv6 will also support this functionality.


5.23 RFC 2439 BGP Route Flap Damping

Although the protocol enhancements have no IPv4 dependencies, it is
an update to an IPv4 only routing protocol.  It is expected that a
newer version of BGP that is IPv6 aware will also implement this
enhancement.


5.24 RFC 2545 Use of BGP-4 Multiprotocol Extensions for IPv6
      Inter-Domain Routing

This RFC documents IPv6 routing methods and is not discussed
in this document.


5.25 RFC 2622 Routing Policy Specification Language (RPSL)
      (RPSL)

The only objects in the version of RPSL that deal with IP addresses
are defined as:

   <ipv4-address> An IPv4 address is represented as a sequence of four
      integers in the range from 0 to 255 separated by the character dot
      ".".  For example, 128.9.128.5 represents a valid IPv4 address.
      In the rest of this document, we may refer to IPv4 addresses as IP
      addresses.

   <address-prefix> An address prefix is represented as an IPv4 address
      followed by the character slash "/" followed by an integer in the
      range from 0 to 32.  The following are valid address prefixes:
      128.9.128.5/32, 128.9.0.0/16, 0.0.0.0/0; and the following address
      prefixes are invalid:  0/0, 128.9/16 since 0 or 128.9 are not
      strings containing four integers.

There seems to be an awareness of IPv6 because of the terminology but
it is not specifically defined.  Therefore additional objects for IPv6
addresses and masks need to be defined.


5.26 RFC 2735 NHRP Support for Virtual Private Networks

This protocol implies only IPv4 operations, but does not seem to
present any reason that it would not function for IPv6.


5.27 RFC 2740 OSPF for IPv6

This document defines an IPv6 specific protocol and is not discussed
in this document.


5.28 RFC 2769 Routing Policy System Replication (RPSL)

There are no IPv4 dependencies in this protocol.


5.29 RFC 2784 Generic Routing Encapsulation (GRE) (GRE)

This protocol is only defined for IPv4.  The document states:

  o IPv6 as Delivery and/or Payload Protocol

     This specification describes the intersection of GRE currently
     deployed by multiple vendors. IPv6 as delivery and/or payload
     protocol is not included

Therefore, a new version must be defined for IPv6.


5.30 RFC 2796 BGP Route Reflection - An Alternative to Full Mesh
      (IBGP)

Although the protocol enhancements have no IPv4 dependencies, it is
an update to an IPv4 only routing protocol.  It is expected that a
newer version of BGP that is IPv6 aware will also implement this
enhancement.

Conceptually there should be no issues with the protocol operating
in and IPv6 aware BGP.


5.31 RFC 2842 Capabilities Advertisement with BGP-4

Although the protocol enhancements have no IPv4 dependencies, it is
an update to an IPv4 only routing protocol.  It is expected that a
newer version of BGP that is IPv6 aware will also implement this
enhancement.

Conceptually there should be no issues with the protocol operating
in and IPv6 aware BGP.


5.32 RFC 2858 Multiprotocol Extensions for BGP-4 (MEXT-BGP4)

In the Abstract

   Currently BGP-4 [BGP-4] is capable of carrying routing information
   only for IPv4 [IPv4]. This document defines extensions to BGP-4 to
   enable it to carry routing information for multiple Network Layer
   protocols (e.g., IPv6, IPX, etc...). The extensions are backward
   compatible - a router that supports the extensions can interoperate
   with a router that doesn't support the extensions.

The document is therefore no examined further in this document.


5.33 RFC 2890 Key and Sequence Number Extensions to GRE

There are no IPv4 dependencies in this protocol.


5.34 RFC 2894 Router Renumbering for IPv6

This document defines an IPv6 only document and is not concerned
in this document.


5.35 RFC 2918 Route Refresh Capability for BGP-4

There are no IPv4 dependencies in this protocol.


5.36 RFC 3065 Autonomous System Confederations for BGP (BGP-ASC)

There are no IPv4 dependencies in this protocol.


5.37 RFC 3107 Carrying Label Information in BGP-4 (SDP)

There are no IPv4 dependencies in this protocol.


5.38 RFC 3122 Extensions to IPv6 Neighbor Discovery for Inverse
      Discovery Specification

This is an IPv6 related document and is not discussed in this
document.


5.39 RFC 3140 Per Hop Behavior Identification Codes

There are no IPv4 dependencies in this protocol.



6.0 Experimental RFCs

Experimental RFCs typically define protocols that do not have widescale
implementation or usage on the Internet.  They are often propriety in
nature or used in limited arenas.  They are documented to the Internet
community in order to allow potential interoperability or some other
potential useful scenario.  In a few cases they are presented as
alternatives to the mainstream solution to an acknowledged problem.


6.01 RFC 1075 Distance Vector Multicast Routing Protocol (IP-DVMRP)

This document defines a protocol for IPv4 multicast routing.  A
similar mechanism must be defined for IPv6 multicast routing (or the
functionality must be included in other "standard" IPv6 routing
protocols.)


6.02 RFC 1383 An Experiment in DNS Based IP Routing (DNS-IP)

This proposal is IPv4 limited:

   This record is designed for easy general purpose extensions in the
   DNS, and its content is a text string. The RX record will contain
   three fields:

          -    A record identifier composed of the two characters "RX".
               This is used to disambiguate from other experimental uses
               of the "TXT" record.

          -    A cost indicator, encoded on up to 3 numerical digits.
               The corresponding positive integer value should be less
               that 256, in order to preserve future evolutions.

          -    An IP address, encoded as a text string following the
               "dot" notation.

   The three strings will be separated by a single comma. An example of
   record would thus be:

 ___________________________________________________________________
 |         domain          |   type |   record |   value           |
 |            -            |        |          |                   |
 |*.27.32.192.in-addr.arpa |   IP   |    TXT   |   RX, 10, 10.0.0.7|
 |_________________________|________|__________|___________________|

   which means that for all hosts whose IP address starts by the three
   octets "192.32.27" the IP host "10.0.0.7" can be used as a gateway,
   and that the preference value is 10.


6.03 RFC 1476 RAP: Internet Route Access Protocol (RAP)

This document defines an IPv7 routing protocol and has been abandoned
by the IETF as a feasible design.  It is not considered in this
document.


6.04 RFC 1765 OSPF Database Overflow (OSPF-OVFL)

There are no IPv4 dependencies in this protocol other than the fact
that it is an new functionality for a routing protocol that only
supports IPv4 networks.  It is assumed that a future update to OSPF
to support IPv6 will also support this functionality.


6.05 RFC 1863 A BGP/IDRP Route Server alternative to a full mesh
      routing (BGP-IDRP)

This protocol is both IPv4 and IPv6 aware and needs no changes.


6.06 RFC 1966 BGP Route Reflection An alternative to full mesh
      IBGP (BGP-RR)

Although the protocol enhancements have no IPv4 dependencies, it is
an update to an IPv4 only routing protocol.  It is expected that a
newer version of BGP that is IPv6 aware will also implement this
enhancement.

Conceptually there should be no issues with the protocol operating
in and IPv6 aware BGP.


6.07 RFC 2189 Core Based Trees (CBT version 2) Multicast Routing

This document specifies a protocol that depends on IPv4 multicast.
It is expected that it could easily be updated to support IPv6
multicasting.

7.3.  JOIN_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
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                    CBT Control Packet Header                  |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                          group address                        |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                          target router                        |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                        originating router                     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |  option type  |  option len   |        option value           |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                     Figure 3. JOIN_REQUEST Packet Format


      JOIN_REQUEST Field Definitions

   o    group address: multicast group address of the group being joined.
        For a "wildcard" join (see [5]), this field contains the value of
        INADDR_ANY.

   o    target router: target (core) router for the group.

   o    originating router: router that originated this JOIN_REQUEST.

There are many other packet formats defined in the document that
show this limitation as well.


6.08 RFC 2201 Core Based Trees (CBT) Multicast Routing Architecture

See previous section for the IPv4 limitation in this protocol.


6.09 RFC 2520 NHRP with Mobile NHCs (NHRP-MNHCS)

This protocol is both IPv4 and IPv6 aware and needs no changes.


6.10 RFC 2676 QoS Routing Mechanisms and OSPF Extensions

There are IPv4 dependencies in this protocol.  IT requires the
use of the IPv4 TOS header field.  It is assumed that a future
update to OSPF to support IPv6 will also support this
functionality.



7.0  Summary of Results

In the initial survey of RFCs 26 positives were identified out of a
total of 58, broken down as follows:

        Standards                                 3 of  7 or 42.86%
        Draft Standards                           1 of  2 or 50.00%
        Proposed Standards                       18 of 39 or 46.15%
        Experimental RFCs                         4 of 10 or 40.00%

Of those identified many require no action because they document
outdated and unused protocols, while others are document protocols
that are actively being updated by the appropriate working groups.
Additionally there are many instances of standards that SHOULD be
updated but do not cause any operational impact if they are not
updated.  The remaining instances are documented below.

The author has attempted to organize the results in a format that allows
easy reference to other protocol designers.  The following recommendations
uses the documented terms "MUST", "MUST NOT", "REQUIRED", "SHALL",
"SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL"
described in RFC 2119.  They should only be interpreted in the context
of RFC 2119 when they appear in all caps.  That is, the word "should" in
the previous SHOULD NOT be interpreted as in RFC 2119.

The assignment of these terms has been based entirely on the authors
perceived needs for updates and should not be taken as an official
statement.


7.1  Standards


7.1.1 STD 4  Router Requirements (RFC 1812)

RFC 1812 SHOULD be updated to include IPv6 Routing Requirements (once
they are finalized)


7.1.2 STD 54 OSPF (RFC 2328)

This problem has been fixed by RFC 2740, OSPF for IPv6.


7.1.3 STD 56 RIPv2 (RFC 2453)

This problem has been fixed by RFC 2080, RIPng for IPv6.



7.2 Draft Standards


7.2.1 Border Gateway Protocol 4 (RFC 1771)

This problem has been fixed in RFC2283, Multiprotocol Extensions
for BGP-4.



7.3  Proposed Standards


7.3.01 IS-IS (RFC 1195)

This problem is being addressed by the IS-IS WG and a ID is
currently available (draft-ietf-isis-ipv6-02.txt)


7.3.02 Applicability Statement for OSPFv2 (RFC 1370)

This problem has been resolved in RFC 2740, OSPF for IPv6.


7.3.03  Applicability of CIDR (RFC 1517)

The contents of this specification has been treated in various
IPv6 addressing architecture RFCS. See RFC 2373 & 2374.


7.3.04  CIDR Architecture (RFC 1518)

The contents of this specification has been treated in various
IPv6 addressing architecture RFCS. See RFC 2373 & 2374.


7.3.05  RIP Extensions for Demand Circuits (RFC 1582)

This problem has been addressed in RFC 2080, RIPng for IPv6.


7.3.06  OSPF Multicast Extensions (RFC 1584)

This functionality has been covered in RFC 2740, OSPF for IPv6.


7.3.07  OSPF NSSA Option (RFC 1587)

This functionality has been covered in RFC 2740, OSPF for IPv6.


7.3.08  BGP4/IDRP OSPF Interaction (RFC 1745)

The problems are addressed in the combination of RFC2283,
Multiprotocol Extensions for BGP-4 and RFC 2740, OSPF for IPv6.


7.3.09  OSPF For Demand Circuits (RFC 1793)

This functionality has been covered in RFC 2740, OSPF for IPv6.


7.3.10  IPv4 Router Requirements (RFC 1812)

See Section 7.1.2.


7.3.11  RIP Triggered Extensions for Demand Circuits (RFC 2091)

This functionality is provided in RFC 2080, RIPng for IPv6.


7.3.12  VRRP (RFC 2338)

The problems identified are being addressed by the VRRP WG and
there is an ID (draft-ietf-vrrp-ipv6-spec-02.txt).


7.3.13  OSPF Opaque LSA Option (RFC 2370)

This problem has been fixed by RFC 2740, OSPF for IPv6.


7.3.14  BGP Route Flap Dampening (RFC 2439)

These issues are addressed via using BGP4 plus RFC 2283,
Multiprotocol Extensions for BGP-4.


7.3.15  RPSL (RFC 2622)

Additional objects MUST be defined for IPv6 addresses and prefixes.


7.3.16  GRE (RFC 2784)

The problems have not been addressed and a new protocol SHOULD be
defined.


7.3.17  BGP Route Reflector (RFC 2796)

These issues are addressed via using BGP4 plus RFC 2283,
Multiprotocol Extensions for BGP-4.


7.3.18  Capabilities Advertisement in BGP4 (RFC 2842)

These issues are addressed via using BGP4 plus RFC 2283,
Multiprotocol Extensions for BGP-4.



7.4  Experimental RFCs


7.4.1  Distance Vector Multicast Routing Protocol (RFC 1075)

This protocol is a routing protocol for IPv4 multicast routing.  It
is no longer in use and SHOULD NOT be redefined.


7.4.2  An Experiment in DNS Based IP Routing (RFC 1383)

This protocol relies on IPv4 DNS RR and a new protocol standard
SHOULD NOT be produced.


7.4.3  QoS Routing Mechanisms and OSPF Extensions (RFC 2676)

An update to this document can be simply define the use of the IPv6
Traffic Class field since it is defined to be exactly the same as the
IPv4 TOS field.


7.4.4  Core Based Trees (CBT version 2) Multicast Routing
        (RFC 2189)

This protocol relies on IPv4 IGMP Multicast and a new protocol
standard MAY be produced.




8.0 Acknowledgements

The author would like to acknowledge the support of the Internet Society
in the research and production of this document.   Additionally the
author would like to thanks his partner in all ways, Wendy M. Nesser.


9.0 Authors Address

Please contact the author with any questions, comments or suggestions
at:

Philip J. Nesser II
Principal
Nesser & Nesser Consulting
13501 100th Ave NE, #5202
Kirkland, WA 98034

Email:  phil@nesser.com
Phone:  +1 425 481 4303
Fax:    +1 425 48