One document matched: draft-ietf-ngtrans-ipv4survey-00.txt
Network Working Group Philip J. Nesser II
draft-ietf-ngtrans-ipv4survey-00.txt Nesser & Nesser Consulting
Internet Draft April 2000
Expires
Octover 2000
Survey of IPv4 Addresses in Currently Deployed IETF 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 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 leasy dually support IPv4 and IPv6. To this end, all
Standards (Full, Draft, Proposed and Experimental) will be survey and any
dependencies will be documented.
1.0 Introduction
1.1 Summary of Results
1.2 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 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 "if."
2.0 Methodology
To perform this study each class of IETF standards are investigated in
order of maturity: Full, Draft, Proposed, and 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.
3.0 Full Standards
3.01 INTERNET OFFICIAL PROTOCOL STANDARDS. RFC 2600
Although this is classified as a standard, it does not describe a
protocol. It is a list of assigned protocol numbers and therefore has no
IPv6 transition issues.
3.02 Assigned Numbers. RFC1700
Although this is classified as a standard, it does not describe a
protocol. It is a list of assigned protocol numbers and therefore has no
IPv6 transition issues.
3.03 Host Requirements. RFC1122, RFC1123
3.03.1 RFC 1122
RFC 1122 defines requirements for Internet hosts. In Section 1.1.3
(Internet Protocol Suite), the section on layer 3 (Internet Layer)
mandates hosts implement IP, but does not specify a version requirement.
Section 3 is devoted to a discussion of IP, ICMP, and IGMP and is riddled
with specific IPv4 requirements. Any IPv6 only host would be
non-compliant with RFC 1122. Some of the most obvious problems are shown
below.
In section "3.2.1.1 Version Number" it says: 'A datagram whose version
number is not 4 MUST be silently discarded.'
In section "3.2.1.3 Addressing" is clearly out of date even with the
current addressing of IPv4 addresses.
A new version of RFC 1122 should be written. It should either be IPv6
focused (as the current RFC 1122 is IPv4 focused) and be labeled as such
(i.e. "IPv6 Host Requirements") or should be written generically with
appropriate external links. The later would be difficult since the
document is meant to be self-contained, so the former is a more likely
solution.
3.03.2 RFC 1123
Section 2.1 "Host Names and Numbers" makes references to applications
making explicit references to "dotted decimal" notation and the form
"#.#.#.#"
Section 5.2.17 "Domain Literals:" says "A mailer MUST be able to accept
and parse an Internet domain literal whose content ("dtext"; see RFC-822)
is a dotted decimal host address."
There are also many references to IP addresses scattered throughout the
document that make no reference to the format or version of the addresses.
Most of this document (as well as RFC 1122) is a series of references and
consolidation of data from numerous RFCs. The few references to IPv4
addresses might not warrant a rewrite. However the technology of the
Internet has changed substantially in the last 11 years. With a
requirement of rewriting RFC 1122 it makes sense to update this document
for other revisions, not IPv6 related.
RFC 2181 is considered to be an "Update" to RFC1123 but is only related to
DNS issues and does not fix the problems pointed out here.
3.04 Gateway Requirements. RFC1009
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.05 Internet Protocol. RFC0791, RFC0950, RFC0919, RFC0922, RFC792,
RFC1112
RFC 791 defines IPv4 and will be replaced by the IPv6 specifications.
RFC 950 specifies IPv4 subnetting and will be replaced by the IPv6
specifications.
RFC 919 is not online and is unavailable for review.
RFC 922 specifies how broadcasts should be treated in the presence of
subnets. The techniques of this document will be replaced by the IPv6
specifications.
RFC 792 defines ICMP. The specification of ICMPv6 will serve as an
update.
RFC 1112 defines IP multicast. A similar updated version for IPv6
multicasting must be written.
3.06 User Datagram Protocol. RFC0768
Although UDP is a transport protocol there is one reference to the UDP/IP
interface that states; "The UDP module must be able to determine the
source and destination internet addresses and the protocol field from the
internet header." This does not force a rewrite of the protocol but will
clearly cause changes in implementations.
3.07 Transmission Control Protocol. RFC0793
Section 3.1 which specifies the header format for TCP. The TCP header is
free from IPv4 references but there is an inconsistency in the computation
of checksums. The text says: "The checksum also covers a 96 bit pseudo
header conceptually prefixed to the TCP header. This pseudo header
contains the Source Address, the Destination Address, the Protocol, and
TCP length." The first and second 32-bit words are clearly meant to
specify 32-bit IPv4 addresses. While no modification of the TCP protocol
is necessitated by this problem, an alternate needs to be specified as an
update document, or as part of another IPv6 document.
3.08 Telnet Protocol. RFC0854, RFC0855
3.08.1 RFC 854
There are no IPv4 dependencies in RFC 854.
3.08.2 RFC 855
There are no IPv4 dependencies in RFC 855.
3.09 File Transfer Protocol. RFC0959
Section 4.1.2 "TRANSFER PARAMETER COMMANDS" the port command has the
following format: "PORT h1,h2,h3,h4,p1,p2" where h1 is the high order 8
bits of the internet host address. This needs to be reworked to
transition to IPv6 addressing.
In sections 4.2.1 & 4.2.2 on reply codes, the code "227 Entering Passive
Mode (h1,h2,h3,h4,p1,p2)" also needs to be reworked for IPv6 addressing.
Section 5.3.2 "FTP COMMAND ARGUMENTS" contains:
<host-number> ::= <number>,<number>,<number>,<number>
<port-number> ::= <number>,<number>
<number> ::= any decimal integer 1 through 255
This is clearly an IPv4 address reference.
3.10 SMTP Service Extensions. RFC821, RFC1869
3.11 Standard for the format of ARPA Internet text messages. RFC0822
3.12 Network Time Protocol. RFC1119
3.13 Domain Name System. RFC1034, RFC1035
3.14 Mail Routing and the Domain System. RFC0974
3.15 Simple Network Management Protocol. RFC1157
3.16 Structure of Management Information. RFC1155
3.17 Management Information Base. RFC1213
3.18 Exterior Gateway Protocol. RFC0904
3.19 NetBIOS Service Protocols. RFC1001, RFC1002
3.20 Echo Protocol. RFC0862
3.21 Discard Protocol. RFC0863
3.22 Character Generator Protocol. RFC0864
3.23 Quote of the Day Protocol. RFC0865
3.24 Active Users Protocol. RFC0866
3.25 Daytime Protocol. RFC0867
3.26 Time Server Protocol. RFC0868
3.27 Binary Transmission Telnet Option. RFC0856
3.28 Echo Telnet Option. RFC0857
3.29 Suppress Go Ahead Telnet Option. RFC0858
3.30 Status Telnet Option. RFC0859
3.31 Timing Mark Telnet Option. RFC0860
3.32 Extended Options List Telnet Option. RFC0861
3.33 Trivial File Transfer Protocol. RFC1350
3.34 Routing Information Protocol. RFC1058
3.35 ISO Transport Service on top of the TCP (Version: 3). RFC1006
3.36 Transmission of IP and ARP over FDDI Networks. RFC1390
3.37 An Ethernet Address Resolution Protocol. RFC0826
3.38 A Reverse Address Resolution Protocol. RFC0903
3.39 Interface Message Processor: Specifications for the
Interconnection of a Host and an IMP
3.40 Host Access Protocol specification. RFC1221
3.41 Standard for the transmission of IP datagrams over Ethernet
networks. RFC0894
3.42 Standard for the transmission of IP datagrams over experimental
Ethernetnetworks. RFC0895
3.43 Standard for the transmission of IP datagrams over IEEE 802
networks. RFC1042
3.44 DCN Local-Network Protocols. RFC0891
3.45 Internet Protocol on Network System's HYPERchannel: Protocol
Specification. RFC1044
3.46 Transmitting IP traffic over ARCNET networks. RFC1201
3.47 Nonstandard for transmission of IP datagrams over serial lines:
SLIP. RFC1055
3.48 Standard for the transmission of IP datagrams over NetBIOS
networks. RFC1088
3.49 Standard for the transmission of 802.2 packets over IPX networks,
RFC1132
3.50 Definitions of Managed Objects for the Ethernet-like Interface
Types. RFC1643
3.51 The Point-to-Point Protocol (PPP). RFC1661, RFC1662
3.52 The Transmission of IP Datagrams over the SMDS Service. RFC1209
3.53 Post Office Protocol - Version 3. RFC1939
3.54 OSPF Version 2. RFC2328
3.55 Multiprotocol Interconnect over Frame Relay. RFC2427
3.56 RIP Version 2. RFC2453
3.57 RIP Version 2 Protocol Applicability Statement. RFC1722
3.58 Structure of Management Information Version 2 (SMIv2. RFC2578,
RFC2579
Appendix A: Cross-reference of RFC Numbers and Location in Document
RFC Number Section Number
------------------------------------------------------------------------
114 Section 3.09
141 Section 3.09
172 Section 3.09
238 Section 3.09
265 Section 3.09
281 Section 3.09
294 Section 3.09
354 Section 3.09
385 Section 3.09
412 Section 3.09
414 Section 3.09
430 Section 3.09
438 Section 3.09
448 Section 3.09
454 Section 3.09
458 Section 3.09
463 Section 3.09
468 Section 3.09
475 Section 3.09
478 Section 3.09
479 Section 3.09
480 Section 3.09
506 Section 3.09
520 Section 3.09
532 Section 3.09
542 Section 3.09
571 Section 3.09
593 Section 3.09
607 Section 3.09
614 Section 3.09
624 Section 3.09
630 Section 3.09
640 Section 3.09
686 Section 3.09
691 Section 3.09
697 Section 3.09
737 Section 3.09
743 Section 3.09
751 Section 3.09
765 Section 3.09
768 Section 3.06
776 Section 3.09
791 Section 3.05
792 Section 3.05
793 Section 3.07
854 Section 3.08.1
855 Section 3.08.2
919 Section 3.05
922 Section 3.05
949 Section 3.09
950 Section 3.05
959 Section 3.09
1009 Section 3.04
1083 Section 3.01
1100 Section 3.01
1112 Section 3.05
1122 Section 3.03.1
1123 Section 3.03.2
1130 Section 3.01
1140 Section 3.01
1200 Section 3.01
1250 Section 3.01
1280 Section 3.01
1360 Section 3.01
1410 Section 3.01
1500 Section 3.01
1540 Section 3.01
1600 Section 3.01
1610 Section 3.01
1700 Section 3.02
1720 Section 3.01
1780 Section 3.01
1800 Section 3.01
1880 Section 3.01
1920 Section 3.01
2000 Section 3.01
2200 Section 3.01
2300 Section 3.01
2400 Section 3.01
2500 Section 3.01
2600 Section 3.01
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
phil@nesser.com
(425)481-4303 (voice)
(425)482-9721 (fax)
This draft expires in October 2000.
| PAFTECH AB 2003-2026 | 2026-04-23 16:11:00 |