idnits 2.17.1 draft-ietf-v6ops-ipv4survey-trans-01.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** Looks like you're using RFC 2026 boilerplate. This must be updated to follow RFC 3978/3979, as updated by RFC 4748. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- == No 'Intended status' indicated for this document; assuming Proposed Standard == The page length should not exceed 58 lines per page, but there was 1 longer page, the longest (page 1) being 1744 lines Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** The document seems to lack an IANA Considerations section. (See Section 2.2 of https://www.ietf.org/id-info/checklist for how to handle the case when there are no actions for IANA.) ** There is 1 instance of too long lines in the document, the longest one being 3 characters in excess of 72. ** There are 4 instances of lines with control characters in the document. == There are 2 instances of lines with non-RFC6890-compliant IPv4 addresses in the document. If these are example addresses, they should be changed. == There are 10 instances of lines with multicast IPv4 addresses in the document. If these are generic example addresses, they should be changed to use the 233.252.0.x range defined in RFC 5771 ** The document seems to lack a both a reference to RFC 2119 and the recommended RFC 2119 boilerplate, even if it appears to use RFC 2119 keywords. RFC 2119 keyword, line 627: '...ddresses in URLs SHOULD be avoided whe...' RFC 2119 keyword, line 699: '... the form that SHOULD be given unles...' RFC 2119 keyword, line 701: '... address MUST NOT be used in any con...' RFC 2119 keyword, line 743: '...st IP address is RECOMMENDED. In othe...' RFC 2119 keyword, line 747: '... applications MUST be able to cope ...' (4 more instances...) Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the RFC 3978 Section 5.4 Copyright Line does not match the current year == The "Author's Address" (or "Authors' Addresses") section title is misspelled. == Line 967 has weird spacing: '...re, but all o...' == Line 1103 has weird spacing: '...ess for recei...' == Line 1135 has weird spacing: '... using the ...' == Line 1136 has weird spacing: '...). The time-...' == Line 1137 has weird spacing: '...to-live field...' -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (December 2003) is 7439 days in the past. Is this intentional? -- Found something which looks like a code comment -- if you have code sections in the document, please surround them with '' and '' lines. Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Missing Reference: '19' is mentioned on line 628, but not defined == Outdated reference: A later version (-06) exists of draft-ietf-v6ops-ipv4survey-intro-01 ** Downref: Normative reference to an Informational draft: draft-ietf-v6ops-ipv4survey-intro (ref. '1') Summary: 6 errors (**), 0 flaws (~~), 13 warnings (==), 3 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 1 Network Working Group Philip J. Nesser II 2 draft-ietf-v6ops-ipv4survey-trans-01.txt Nesser & Nesser Consulting 3 Internet Draft Andreas Bergstrom 4 Ostfold University College 5 June 2003 6 Expires December 2003 8 Survey of IPv4 Addresses in Currently Deployed 9 IETF Transport Area Standards 11 This document is an Internet-Draft and is in full conformance with 12 all provisions of Section 10 of RFC2026. 14 Status of this Memo 16 Internet-Drafts are working documents of the Internet Engineering 17 Task Force (IETF), its areas, and its working groups. Note that other 18 groups may also distribute working documents as Internet-Drafts. 20 Internet-Drafts are draft documents valid for a maximum of six 21 months and may be updated, replaced, or obsoleted by other documents at 22 any time. It is inappropriate to use Internet-Drafts as reference 23 material or to cite them other than as "work in progress." 25 The list of current Internet-Drafts can be accessed at 26 http://www.ietf.org/ietf/1id-abstracts.txt 28 The list of Internet-Draft Shadow Directories can be accessed at 29 http://www.ietf.org/shadow.html. 31 Abstract 33 This document seeks to document all usage of IPv4 addresses in currently 34 deployed IETF Transport Area documented standards. In order to 35 successfully transition from an all IPv4 Internet to an all IPv6 36 Internet, many interim steps will be taken. One of these steps is the 37 evolution of current protocols that have IPv4 dependencies. It is hoped 38 that these protocols (and their implementations) will be redesigned to 39 be network address independent, but failing that will at least dually 40 support IPv4 and IPv6. To this end, all Standards (Full, Draft, and 41 Proposed) as well as Experimental RFCs will be surveyed and any 42 dependencies will be documented. 44 Table of Contents 46 1. Introduction 47 2. Document Organisation 48 3. Full Standards 49 4. Draft Standards 50 5. Proposed Standards 51 6. Experimental RFCs 52 7. Summary of Results 53 7.1 Standards 54 7.2 Draft Standards 55 7.3 Proposed Standards 56 7.4 Experimental RFCs 57 8. Security Consideration 58 9. Acknowledgements 59 10. References 60 11. Authors Address 61 12. Intellectual Property Statement 62 13. Full Copyright Statement 64 1.0 Introduction 66 This document is part of a document set aiming to document all usage of 67 IPv4 addresses in IETF stanadards. In an effort to have the information 68 in a manageable form, it has been broken into 7 documents conforming 69 to the current IETF areas (Application, Internet, Manangement & 70 Operations, Routing, Security, Sub-IP and Transport). 72 For a full introduction, please see the intro[1] draft. 74 2.0 Document Organization 76 The rest of the document sections are described below. 78 Sections 3, 4, 5, and 6 each describe the raw analysis of Full, Draft, 79 and Proposed Standards, and Experimental RFCs. Each RFC is discussed in 80 its turn starting with RFC 1 and ending with RFC 3247. The comments for 81 each RFC is "raw" in nature. That is, each RFC is discussed in a 82 vacuum and problems or issues discussed do not "look ahead" to see if 83 the problems have already been fixed. 85 Section 7 is an analysis of the data presented in Sections 3, 4, 5, and 86 6. It is here that all of the results are considered as a whole and the 87 problems that have been resolved in later RFCs are correlated. 89 3.0 Full Standards 91 Full Internet Standards (most commonly simply referred to as " 92 Standards") are fully mature protocol specification that are widely 93 implemented and used throughout the Internet. 95 3.1 RFC 768 User Datagram Protocol 97 Although UDP is a transport protocol there is one reference to the 98 UDP/IP interface that states; "The UDP module must be able to 99 determine the source and destination internet addresses and the 100 protocol field from the internet header." This does not force a 101 rewrite of the protocol but will clearly cause changes in 102 implementations. 104 3.2 RFC 793 Transmission Control Protocol 106 Section 3.1 which specifies the header format for TCP. The TCP header 107 is free from IPv4 references but there is an inconsistency in the 108 computation of checksums. The text says: "The checksum also covers a 109 96 bit pseudo header conceptually prefixed to the TCP header. This 110 pseudo header contains the Source Address, the Destination Address, 111 the Protocol, and TCP length." The first and second 32-bit words are 112 clearly meant to specify 32-bit IPv4 addresses. While no modification 113 of the TCP protocol is necessitated by this problem, an alternate needs 114 to be specified as an update document, or as part of another IPv6 115 document. 117 3.3 NetBIOS Service Protocols. RFC1001, RFC1002 119 3.3.1 RFC 1001 PROTOCOL STANDARD FOR A NetBIOS SERVICE ON A TCP/UDP 120 TRANSPORT: 121 CONCEPTS AND METHODS 123 Section 15.4.1. RELEASE BY B NODES defines: 125 A NAME RELEASE DEMAND contains the following information: 127 - NetBIOS name 128 - The scope of the NetBIOS name 129 - Name type: unique or group 130 - IP address of the releasing node 131 - Transaction ID 133 Section 15.4.2. RELEASE BY P NODES defines: 135 A NAME RELEASE REQUEST contains the following information: 137 - NetBIOS name 138 - The scope of the NetBIOS name 139 - Name type: unique or group 140 - IP address of the releasing node 141 - Transaction ID 143 A NAME RELEASE RESPONSE contains the following information: 145 - NetBIOS name 146 - The scope of the NetBIOS name 147 - Name type: unique or group 148 - IP address of the releasing node 149 - Transaction ID 150 - Result: 151 - Yes: name was released 152 - No: name was not released, a reason code is provided 154 Section 16. NetBIOS SESSION SERVICE states: 156 The NetBIOS session service begins after one or more IP addresses 157 have been found for the target name. These addresses may have been 158 acquired using the NetBIOS name query transactions or by other means, 159 such as a local name table or cache. 161 Section 16.1. OVERVIEW OF NetBIOS SESSION SERVICE 163 Session service has three phases: 165 Session establishment - it is during this phase that the IP 166 address and TCP port of the called name is determined, and a 167 TCP connection is established with the remote party. 169 16.1.1. SESSION ESTABLISHMENT PHASE OVERVIEW 171 An end-node begins establishment of a session to another node by 172 somehow acquiring (perhaps using the name query transactions or a 173 local cache) the IP address of the node or nodes purported to own the 174 destination name. 176 Once the TCP connection is open, the calling node sends session 177 service request packet. This packet contains the following 178 information: 180 - Calling IP address (see note) 181 - Calling NetBIOS name 182 - Called IP address (see note) 183 - Called NetBIOS name 185 NOTE: The IP addresses are obtained from the TCP service 186 interface. 188 If a compatible LISTEN exists, and there are adequate resources, then 189 the session server may transform the existing TCP connection into the 190 NetBIOS data session. Alternatively, the session server may 191 redirect, or "retarget" the caller to another TCP port (and IP 192 address). 194 If the caller is redirected, the caller begins the session 195 establishment anew, but using the new IP address and TCP port given 196 in the retarget response. Again a TCP connection is created, and 197 again the calling and called node exchange credentials. The called 198 party may accept the call, reject the call, or make a further 199 redirection. 201 17.1. OVERVIEW OF NetBIOS DATAGRAM SERVICE 203 Every NetBIOS datagram has a named destination and source. To 204 transmit a NetBIOS datagram, the datagram service must perform a name 205 query operation to learn the IP address and the attributes of the 206 destination NetBIOS name. (This information may be cached to avoid 207 the overhead of name query on subsequent NetBIOS datagrams.) 209 17.1.1. UNICAST, MULTICAST, AND BROADCAST 211 NetBIOS datagrams may be unicast, multicast, or broadcast. A NetBIOS 212 datagram addressed to a unique NetBIOS name is unicast. A NetBIOS 213 datagram addressed to a group NetBIOS name, whether there are zero, 214 one, or more actual members, is multicast. A NetBIOS datagram sent 215 using the NetBIOS "Send Broadcast Datagram" primitive is broadcast. 217 17.1.2. FRAGMENTATION OF NetBIOS DATAGRAMS 219 When the header and data of a NetBIOS datagram exceeds the maximum 220 amount of data allowed in a UDP packet, the NetBIOS datagram must be 221 fragmented before transmission and reassembled upon receipt. 223 A NetBIOS Datagram is composed of the following protocol elements: 225 - IP header of 20 bytes (minimum) 226 - UDP header of 8 bytes 227 - NetBIOS Datagram Header of 14 bytes 228 - The NetBIOS Datagram data. 230 18. NODE CONFIGURATION PARAMETERS 232 - B NODES: 233 - Node's permanent unique name 234 - Whether IGMP is in use 235 - Broadcast IP address to use 236 - Whether NetBIOS session keep-alives are needed 237 - Usable UDP data field length (to control fragmentation) 238 - P NODES: 239 - Node's permanent unique name 240 - IP address of NBNS 241 - IP address of NBDD 242 - Whether NetBIOS session keep-alives are needed 243 - Usable UDP data field length (to control fragmentation) 244 - M NODES: 245 - Node's permanent unique name 246 - Whether IGMP is in use 247 - Broadcast IP address to use 248 - IP address of NBNS 249 - IP address of NBDD 250 - Whether NetBIOS session keep-alives are needed 251 - Usable UDP data field length (to control fragmentation) 253 All of the proceeding sections make implicit use of IPv4 addresses and 254 a new specification should be defined for use of IPv6 underlying 255 addresses. 257 3.3.2 RFC 1002 PROTOCOL STANDARD FOR A NetBIOS SERVICE ON A TCP/UDP 258 TRANSPORT: 259 DETAILED SPECIFICATIONS 261 Section 4.2.1.3. RESOURCE RECORD defines 263 RESOURCE RECORD RR_TYPE field definitions: 265 Symbol Value Description: 267 A 0x0001 IP address Resource Record (See REDIRECT NAME 268 QUERY RESPONSE) 270 Sections 4.2.2. NAME REGISTRATION REQUEST, 4.2.3. NAME OVERWRITE 271 REQUEST & DEMAND, 4.2.4. NAME REFRESH REQUEST, 4.2.5. POSITIVE NAME 272 REGISTRATION RESPONSE, 4.2.6. NEGATIVE NAME REGISTRATION RESPONSE, 273 4.2.7. END-NODE CHALLENGE REGISTRATION RESPONSE, 4.2.9. NAME RELEASE 274 REQUEST & DEMAND, 4.2.10. POSITIVE NAME RELEASE RESPONSE, 275 4.2.11. NEGATIVE NAME RELEASE RESPONSE and Sections 4.2.13. POSITIVE 276 NAME QUERY RESPONSEall contain 32 bit fields labeled "NB_ADDRESS" 277 clearly defined for IPv4 addresses 279 Sections 4.2.15. REDIRECT NAME QUERY RESPONSE contains a field 280 "NSD_IP_ADDR" 281 which also is designed for a IPv4 address. 283 Section 4.3.5. SESSION RETARGET RESPONSE PACKET 285 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3 286 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 287 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 288 | TYPE | FLAGS | LENGTH | 289 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 290 | RETARGET_IP_ADDRESS | 291 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 292 | PORT | 293 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 295 Section 4.4.1. NetBIOS DATAGRAM HEADER 297 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3 298 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 299 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 300 | MSG_TYPE | FLAGS | DGM_ID | 301 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 302 | SOURCE_IP | 303 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 304 | SOURCE_PORT | DGM_LENGTH | 305 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 306 | PACKET_OFFSET | 307 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 309 4.4.2. DIRECT_UNIQUE, DIRECT_GROUP, & BROADCAST DATAGRAM 311 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3 312 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 313 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 314 | MSG_TYPE | FLAGS | DGM_ID | 315 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 316 | SOURCE_IP | 317 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 318 | SOURCE_PORT | DGM_LENGTH | 319 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 320 | PACKET_OFFSET | | 321 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | 322 | | 323 / SOURCE_NAME / 324 / / 325 | | 326 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 327 | | 328 / DESTINATION_NAME / 329 / / 330 | | 331 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 332 | | 333 / USER_DATA / 334 / / 335 | | 336 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 338 Section 4.4.3. DATAGRAM ERROR PACKET 340 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3 341 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 342 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 343 | MSG_TYPE | FLAGS | DGM_ID | 344 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 345 | SOURCE_IP | 346 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 347 | SOURCE_PORT | ERROR_CODE | 348 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 350 4.4.4. DATAGRAM QUERY REQUEST 352 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3 353 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 354 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 355 | MSG_TYPE | FLAGS | DGM_ID | 356 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 357 | SOURCE_IP | 358 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 359 | SOURCE_PORT | | 360 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + 361 | | 362 / DESTINATION_NAME / 363 / / 364 | | 365 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 367 4.4.5. DATAGRAM POSITIVE AND NEGATIVE QUERY RESPONSE 369 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3 370 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 371 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 372 | MSG_TYPE | FLAGS | DGM_ID | 373 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 374 | SOURCE_IP | 375 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 376 | SOURCE_PORT | | 377 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + 378 | | 379 / DESTINATION_NAME / 380 / / 381 | | 382 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 384 5.3. NetBIOS DATAGRAM SERVICE PROTOCOLS 386 The following are GLOBAL variables and should be NetBIOS user 387 configurable: 389 - BROADCAST_ADDRESS: the IP address B-nodes use to send datagrams 390 with group name destinations and broadcast datagrams. The 391 default is the IP broadcast address for a single IP network. 393 There is also a large amount of pseudo code for most of the protocols 394 functionality that make no specific reference to IPv4 addresses. 395 However they assume the use of the above defined packets. The pseudo 396 code may be valid for IPv6 as long as the packet formats are updated. 398 3.4 RFC 1006 ISO Transport Service on top of the TCP (Version: 3) 400 Section 5. The Protocol defines a mapping specification 402 Mapping parameters is also straight-forward: 404 network service TCP 405 ------- --- 406 CONNECTION RELEASE 408 Called address server's IP address 409 (4 octets) 411 Calling address client's IP address 412 (4 octets) 414 4.0 Draft Standards 416 Draft Standards represent the penultimate standard level in the IETF. 417 A protocol can only achieve draft standard when there are multiple, 418 independent, interoperable implementations. Draft Standards are usually 419 quite mature and widely used. 421 5.0 Proposed Standards 423 Proposed Standards are introductory level documents. There are no 424 requirements for even a single implementation. In many cases Proposed 425 are never implemented or advanced in the IETF standards process. They 426 therefore are often just proposed ideas that are presented to the 427 Internet community. Sometimes flaws are exposed or they are one of 428 many competing solutions to problems. In these later cases, no 429 discussion is presented as it would not serve the purpose of this 430 discussion. 432 5.01 RFC 1144 Compressing TCP/IP headers for low-speed serial 433 links (IP-CMPRS) 435 This RFC is specifically oriented towards TCP/IPv4 packet headers 436 and will not work in it's current form. Significant work has already 437 been done on similar algorithms for TCP/IPv6 headers. 439 5.02 RFC 1323 TCP Extensions for High Performance (TCP-EXT) 441 There are no IPv4 dependencies in this protocol. 443 5.03 RFC 1553 Compressing IPX Headers Over WAN Media (CIPX) (CIPX) 445 There are no IPv4 dependencies in this protocol. 447 5.04 RFC 1692 Transport Multiplexing Protocol (TMux) (TMUX) 449 Section 6. Implementation Notes is states: 451 Because the TMux mini-header does not contain a TOS field, only 452 segments with the same IP TOS field should be contained in a single 453 TMux message. As most systems do not use the TOS feature, this is 454 not a major restriction. Where the TOS field is used, it may be 455 desirable to hold several messages under construction for a host, one 456 for each TOS value. 458 Segments containing IP options should not be multiplexed. 460 This is clearly IPv4 specific, but a simple restatement in IPv6 461 terms will allow complete functionality. 463 5.05 RFC 1831 RPC: Remote Procedure Call Protocol Specification 464 Version 2 RPC 466 There are no IPv4 dependencies in this protocol. 468 5.06 RFC 1833 Binding Protocols for ONC RPC Version 2 470 In Section 2.1 RPCBIND Protocol Specification (in RPC Language) 471 there is the following code fragment: 473 * Protocol family (r_nc_protofmly): 474 * This identifies the family to which the protocol belongs. The 475 * following values are defined: 476 * NC_NOPROTOFMLY "-" 477 * NC_LOOPBACK "loopback" 478 * NC_INET "inet" 479 * NC_IMPLINK "implink" 480 * NC_PUP "pup" 481 * NC_CHAOS "chaos" 482 * NC_NS "ns" 483 * NC_NBS "nbs" 484 * NC_ECMA "ecma" 485 * NC_DATAKIT "datakit" 486 * NC_CCITT "ccitt" 487 * NC_SNA "sna" 488 * NC_DECNET "decnet" 489 * NC_DLI "dli" 490 * NC_LAT "lat" 491 * NC_HYLINK "hylink" 492 * NC_APPLETALK "appletalk" 493 * NC_NIT "nit" 494 * NC_IEEE802 "ieee802" 495 * NC_OSI "osi" 496 * NC_X25 "x25" 497 * NC_OSINET "osinet" 498 * NC_GOSIP "gosip" 500 It is clear that the value for NC_INET is intended for the IP protocol 501 and is seems clear that it is IPv4 dependent. 503 5.07 RFC 1889 RTP: A Transport Protocol for Real-Time Applications 504 (RTP) 506 In general this protocol makes many references to running on UDP over 507 IP unicast, as well as multicast addresses. There seems to be no 508 reason that it will run effectively over IPv6 unicast and multicast. 510 The only possible point is in Section A.7 Computing the RTCP 511 Transmission Interval which contains the following code fragment: 513 /* 514 * Very first call at application start-up uses half the min 515 * delay for quicker notification while still allowing some time 516 * before reporting for randomization and to learn about other 517 * sources so the report interval will converge to the correct 518 * interval more quickly. The average RTCP size is initialized 519 * to 128 octets which is conservative (it assumes everyone else 520 * is generating SRs instead of RRs: 20 IP + 8 UDP + 52 SR + 48 521 * SDES CNAME). 522 */ 523 if (initial) { 524 rtcp_min_time /= 2; 525 *avg_rtcp_size = 128; 526 } 528 which assumes an IPv4 header length of 20 bytes. It seems a simple 529 update to this code to check for IP version and pick a value 530 appropriate for the IP version. 532 5.08 RFC 1890 RTP Profile for Audio and Video Conferences with 533 Minimal Control (RTP-AV) 535 There are no IPv4 dependencies in this protocol. 537 5.09 RFC 1962 The PPP Compression Control Protocol (CCP) (PPP-CCP) 539 There are no IPv4 dependencies in this protocol. 541 5.10 RFC 2018 TCP Selective Acknowledgement Options (TCP-ACK) 543 There are no IPv4 dependencies in this protocol. 545 5.11 RFC 2029 RTP Payload Format of Sun's CellB Video Encoding 546 (RTP-CELLB) 548 There are no IPv4 dependencies in this protocol. 550 5.12 RFC 2032 RTP Payload Format for H.261 Video Streams 551 (RTP-H.261) 553 There are no IPv4 dependencies in this protocol. 555 5.13 RFC 2126 ISO Transport Service on top of TCP (ITOT) (ITOT) 557 This protocol is IPv6 aware and has no issues. 559 5.14 RFC 2190 RTP Payload Format for H.263 Video Streams 561 There are no IPv4 dependencies in this protocol. 563 5.15 RFC 2198 RTP Payload for Redundant Audio Data (RTP-RAD) 565 There are no IPv4 dependencies in this protocol. 567 5.16 RFC 2205 Resource ReSerVation Protocol (RSVP) -- 568 Version 1 Functional Specification (RSVP) 570 In Section 1. Introduction the statement is made: 572 RSVP operates on top of IPv4 or IPv6, occupying the place of a 573 transport protocol in the protocol stack. 575 Appendix A defines all of the header formats for RSVP and there are 576 multiple formats for both IPv4 and IPv6. 578 There are no IPv4 dependencies in this protocol. 580 5.17 RFC 2207 RSVP Extensions for IPSEC Data Flows (RSVP-IPSEC) 582 The defined IPsec extensions are valid for both IPv4 & IPv6. 583 There are no IPv4 dependencies in this protocol. 585 5.18 RFC 2210 The Use of RSVP with IETF Integrated Services 586 (RSVP-IS) 588 There are no IPv4 dependencies in this protocol. 590 5.19 RFC 2211 Specification of the Controlled-Load Network 591 Element Service 593 There are no IPv4 dependencies in this protocol. 595 5.20 RFC 2212 Specification of Guaranteed Quality of Service 596 (GQOS) 598 There are no IPv4 dependencies in this protocol. 600 5.21 RFC 2215 General Characterization Parameters for 601 Integrated Service Network Elements 603 There are no IPv4 dependencies in this protocol. 605 5.22 RFC 2250 RTP Payload Format for MPEG1/MPEG2 Video 606 (RTP-MPEG) 608 There are no IPv4 dependencies in this protocol. 610 5.23 RFC 2326 Real Time Streaming Protocol (RTSP) (RTSP) 612 Section 3.2 RTSP URL defines: 614 The "rtsp" and "rtspu" schemes are used to refer to network resources 615 via the RTSP protocol. This section defines the scheme-specific 616 syntax and semantics for RTSP URLs. 618 rtsp_URL = ( "rtsp:" | "rtspu:" ) 619 "//" host [ ":" port ] [ abs_path ] 620 host = 623 port = *DIGIT 625 Although later in that section the following text is added: 627 The use of IP addresses in URLs SHOULD be avoided whenever possible 628 (see RFC 1924 [19]). 630 Some later examples show: 632 Example: 634 C->S: DESCRIBE rtsp://server.example.com/fizzle/foo RTSP/1.0 635 CSeq: 312 636 Accept: application/sdp, application/rtsl, application/mheg 638 S->C: RTSP/1.0 200 OK 639 CSeq: 312 640 Date: 23 Jan 1997 15:35:06 GMT 641 Content-Type: application/sdp 642 Content-Length: 376 644 v=0 645 o=mhandley 2890844526 2890842807 IN IP4 126.16.64.4 646 s=SDP Seminar 647 i=A Seminar on the session description protocol 648 u=http://www.cs.ucl.ac.uk/staff/M.Handley/sdp.03.ps 649 e=mjh@isi.edu (Mark Handley) 650 c=IN IP4 224.2.17.12/127 651 t=2873397496 2873404696 652 a=recvonly 653 m=audio 3456 RTP/AVP 0 654 m=video 2232 RTP/AVP 31 655 m=whiteboard 32416 UDP WB 656 a=orient:portrait 658 which implies the use of the "IP4" tag and it should be possible to 659 use an "IP6" tag. There are also numerous other similar examples 660 using the "IP4" tag. 662 There seems to be nothing that requires IPv4, and a small set of 663 updates can be created to document IPv6 functionality. 665 5.24 RFC 2327 SDP: Session Description Protocol (SDP) 667 Like the previous document, a sample SDP description is given as: 669 An example SDP description is: 671 v=0 672 o=mhandley 2890844526 2890842807 IN IP4 126.16.64.4 673 s=SDP Seminar 674 i=A Seminar on the session description protocol 675 u=http://www.cs.ucl.ac.uk/staff/M.Handley/sdp.03.ps 676 e=mjh@isi.edu (Mark Handley) 677 c=IN IP4 224.2.17.12/127 678 t=2873397496 2873404696 679 a=recvonly 680 m=audio 49170 RTP/AVP 0 681 m=video 51372 RTP/AVP 31 682 m=application 32416 udp wb 683 a=orient:portrait 685 Later an explicit discussion of the network addressing scheme is 686 given: 688 is a text string giving the type of network. 689 Initially "IN" is defined to have the meaning "Internet".
is a text string giving the type of the address that follows. 691 Initially "IP4" and "IP6" are defined.
is the globally 692 unique address of the machine from which the session was created. 693 For an address type of IP4, this is either the fully-qualified domain 694 name of the machine, or the dotted-decimal representation of the IP 695 version 4 address of the machine. For an address type of IP6, this 696 is either the fully-qualified domain name of the machine, or the 697 compressed textual representation of the IP version 6 address of the 698 machine. For both IP4 and IP6, the fully-qualified domain name is 699 the form that SHOULD be given unless this is unavailable, in which 700 case the globally unique address may be substituted. A local IP 701 address MUST NOT be used in any context where the SDP description 702 might leave the scope in which the address is meaningful. 704 Although later in the definitions of connection types the following 705 text is found: 707 Connection Data 709 c=
711 The "c=" field contains connection data. 713 A session announcement must contain one "c=" field in each media 714 description (see below) or a "c=" field at the session-level. It may 715 contain a session-level "c=" field and one additional "c=" field per 716 media description, in which case the per-media values override the 717 session-level settings for the relevant media. 719 The first sub-field is the network type, which is a text string 720 giving the type of network. Initially "IN" is defined to have the 721 meaning "Internet". 723 The second sub-field is the address type. This allows SDP to be used 724 for sessions that are not IP based. Currently only IP4 is defined. 726 The third sub-field is the connection address. Optional extra 727 subfields may be added after the connection address depending on the 728 value of the
field. 730 For IP4 addresses, the connection address is defined as follows: 732 o Typically the connection address will be a class-D IP multicast 734 group address. If the session is not multicast, then the 735 connection address contains the fully-qualified domain name or the 736 unicast IP address of the expected data source or data relay or 737 data sink as determined by additional attribute fields. It is not 738 expected that fully-qualified domain names or unicast addresses 739 will be given in a session description that is communicated by a 740 multicast announcement, though this is not prohibited. If a 741 unicast data stream is to pass through a network address 742 translator, the use of a fully-qualified domain name rather than an 743 unicast IP address is RECOMMENDED. In other cases, the use of an 744 IP address to specify a particular interface on a multi-homed host 745 might be required. Thus this specification leaves the decision as 746 to which to use up to the individual application, but all 747 applications MUST be able to cope with receiving both formats. 749 o Conferences using an IP multicast connection address must also have 750 a time to live (TTL) value present in addition to the multicast 751 address. The TTL and the address together define the scope with 752 which multicast packets sent in this conference will be sent. TTL 753 values must be in the range 0-255. 755 The TTL for the session is appended to the address using a slash as 756 a separator. An example is: 758 c=IN IP4 224.2.1.1/127 760 Hierarchical or layered encoding schemes are data streams where the 761 encoding from a single media source is split into a number of 762 layers. The receiver can choose the desired quality (and hence 763 bandwidth) by only subscribing to a subset of these layers. Such 764 layered encodings are normally transmitted in multiple multicast 765 groups to allow multicast pruning. This technique keeps unwanted 766 traffic from sites only requiring certain levels of the hierarchy. 767 For applications requiring multiple multicast groups, we allow the 768 following notation to be used for the connection address: 770 // 772 If the number of addresses is not given it is assumed to be one. 773 Multicast addresses so assigned are contiguously allocated above 774 the base address, so that, for example: 776 c=IN IP4 224.2.1.1/127/3 778 would state that addresses 224.2.1.1, 224.2.1.2 and 224.2.1.3 are 779 to be used at a ttl of 127. This is semantically identical to 780 including multiple "c=" lines in a media description: 782 c=IN IP4 224.2.1.1/127 783 c=IN IP4 224.2.1.2/127 784 c=IN IP4 224.2.1.3/127 786 Multiple addresses or "c=" lines can only be specified on a per- 787 media basis, and not for a session-level "c=" field. 789 It is illegal for the slash notation described above to be used for 790 IP unicast addresses. 792 This is probably because the definitions for IPv6 multicast was not 793 standardized at the time of this documents production. A similar 794 mechanism for IPv6 multicast could defined in a straightforward manner. 796 5.25 RFC 2380 RSVP over ATM Implementation Requirements 798 This protocol is both IPv4 and IPv6 aware. 800 5.26 RFC 2381 Interoperation of Controlled-Load Service and 801 Guaranteed Service with ATM 803 There does not seem any inherent IPv4 limitations in this protocol, 804 but it assumes work of other standards that have IPv4 limitations. 806 5.27 RFC 2393 IP Payload Compression Protocol (IPComp) (IPCOMP) 808 This protocol is both IPv4 and IPv6 aware. 810 5.28 RFC 2429 RTP Payload Format for the 1998 Version of ITU-T 811 Rec. H.263 Video (H.263+) 813 There are no IPv4 dependencies in this protocol. 815 5.29 RFC 2431 RTP Payload Format for BT.656 Video Encoding 817 There are no IPv4 dependencies in this protocol. 819 5.30 RFC 2435 RTP Payload Format for JPEG-compressed Video 821 There are no IPv4 dependencies in this protocol. 823 5.31 RFC 2474 Definition of the Differentiated Services Field 824 (DS Field) in the IPv4 and IPv6 Headers 826 This protocol is both IPv4 and IPv6 aware. 828 5.32 RFC 2508 Compressing IP/UDP/RTP Headers for Low-Speed 829 Serial Links 831 This protocol is both IPv4 and IPv6 aware. 833 5.33 RFC 2509 IP Header Compression over PPP (IPCOM-PPP) 835 This protocol is both IPv4 and IPv6 aware. 837 5.34 RFC 2543 SIP: Session Initiation Protocol (SIP) 839 In Section 2 SIP Uniform Resource Locators the following specification 840 is made: 842 SIP-URL = "sip:" [ userinfo "@" ] hostport 843 url-parameters [ headers ] 845 hostport = host [ ":" port ] 846 host = hostname | IPv4address 847 hostname = *( domainlabel "." ) toplabel [ "." ] 849 IPv4address = 1*digit "." 1*digit "." 1*digit "." 1*digit 851 Later it states: 853 The issue of IPv6 literal addresses in URLs is being looked at 854 elsewhere in the IETF. SIP implementers are advised to keep up to 855 date on that activity. 857 Further: 859 URL parameters: SIP URLs can define specific parameters of the 860 request. URL parameters are added after the host component and 861 are separated by semi-colons. The transport parameter determines 862 the transport mechanism (UDP or TCP). UDP is to be assumed 863 when no explicit transport parameter is included. The maddr 864 parameter provides the server address to be contacted for this 865 user, overriding the address supplied in the host field. This 866 address is typically a multicast address, but could also be the 867 address of a backup server. The ttl parameter determines the 868 time-to-live value of the UDP multicast packet and MUST only be 869 used if maddr is a multicast address and the transport protocol 870 is UDP. The user parameter was described above. For example, to 871 specify to call j.doe@big.com using multicast to 239.255.255.1 872 with a ttl of 15, the following URL would be used: 874 sip:j.doe@big.com;maddr=239.255.255.1;ttl=15 876 and then: 878 sip:alice@10.1.2.3 880 and in Section 4.2.6 REGISTER 882 A client uses the REGISTER method to register the address listed in 883 the To header field with a SIP server. 885 A user agent MAY register with a local server on startup by sending a 886 REGISTER request to the well-known "all SIP servers" multicast 887 address "sip.mcast.net" (224.0.1.75). 889 There are many examples of transactions which use IPv4 only addresses. 890 This protocol clearly needs to be updated for IPv6. 892 5.35 RFC 2581 TCP Congestion Control (TCP-CC) 894 There are no IPv4 dependencies in this protocol. 896 5.36 RFC 2597 Assured Forwarding PHB Group 898 This protocol is both IPv4 and IPv6 aware. 900 5.37 RFC 2598 An Expedited Forwarding PHB 902 This protocol is both IPv4 and IPv6 aware. 904 5.38 RFC 2658 RTP Payload Format for PureVoice(tm) Audio 906 There are no IPv4 dependencies in this protocol. 908 5.39 RFC 2678 IPPM Metrics for Measuring Connectivity (IPPM-MET) 910 This protocol only supports IPv4. An updated protocol for IPv6 will 911 need to be defined. 913 5.40 RFC 2679 A One-way Delay Metric for IPPM 915 This protocol only supports IPv4. An updated protocol for IPv6 will 916 need to be defined. 918 5.41 RFC 2680 A One-way Packet Loss Metric for IPPM 920 This protocol only supports IPv4. An updated protocol for IPv6 will 921 need to be defined. 923 5.42 RFC 2681 A Round-trip Delay Metric for IPPM 925 This protocol only supports IPv4. An updated protocol for IPv6 will 926 need to be defined. 928 5.43 RFC 2730 Multicast Address Dynamic Client Allocation Protocol 929 (MADCAP) (MADCAP) 931 This protocol is both IPv4 and IPv6 aware and needs no changes. 933 5.44 RFC 2733 An RTP Payload Format for Generic Forward Error 934 Correction 936 This protocol is dependent on SDP which has IPv4 dependencies. Once 937 that limitation is fixed, then this protocol should support IPv6. 939 5.45 RFC 2745 RSVP Diagnostic Messages 941 This protocol is both IPv4 and IPv6 aware and needs no changes. 943 5.46 RFC 2746 RSVP Operation Over IP Tunnels 945 This protocol is both IPv4 and IPv6 aware and needs no changes. 947 5.47 RFC 2750 RSVP Extensions for Policy Control 949 There are no IPv4 dependencies in this protocol. 951 5.48 RFC 2751 Signaled Preemption Priority Policy Element 952 (RSVP) 954 There are no IPv4 dependencies in this protocol. 956 5.49 RFC 2752 Identity Representation for RSVP 958 There are no IPv4 dependencies in this protocol. 960 5.50 RFC 2793 RTP Payload for Text Conversation 962 There are no IPv4 dependencies in this protocol. 964 5.51 RFC 2814 SBM (Subnet Bandwidth Manager): A Protocol for 965 RSVP-based Admission Control over IEEE 802-style networks 967 This protocol claims to be both IPv4 and IPv6 aware, but all of 968 the examples are given with IPv4 addresses. That, by itself is 969 not a telling point but the following statement is made: 971 a) LocalDSBMAddrInfo -- current DSBM's IP address (initially, 972 0.0.0.0) and priority. All IP addresses are assumed to be in 973 network byte order. In addition, current DSBM's L2 address is 974 also stored as part of this state information. 976 which could just be sloppy wording. Perhaps a short document 977 clarifying the text is appropriate. 979 5.52 RFC 2815 Integrated Service Mappings on IEEE 802 Networks 981 There are no IPv4 dependencies in this protocol. 983 5.53 RFC 2833 RTP Payload for DTMF Digits, Telephony Tones 984 and Telephony Signals 986 There are no IPv4 dependencies in this protocol. 988 5.54 RFC 2848 The PINT Service Protocol: Extensions to SIP and SDP 989 for IP Access to Telephone Call Services 991 This protocol is dependent on SDP & SIP which has IPv4 dependencies. 992 Once these limitations are fixed, then this protocol should support 993 IPv6. 995 5.55 RFC 2862 RTP Payload Format for Real-Time Pointers 997 There are no IPv4 dependencies in this protocol. 999 5.56 RFC 2872 Application and Sub Application Identity Policy Element 1000 for Use with RSVP 1002 There are no IPv4 dependencies in this protocol. 1004 5.57 RFC 2873 TCP Processing of the IPv4 Precedence Field 1006 This protocol documents a technique using IPv4 headers. A similar 1007 technique, if needed, will need to be defined for IPv6. 1009 5.58 RFC 2883 An Extension to the Selective Acknowledgement (SACK) 1010 Option for TCP (SACK) 1012 There are no IPv4 dependencies in this protocol. 1014 5.59 RFC 2907 MADCAP Multicast Scope Nesting State Option 1016 This protocol is both IPv4 and IPv6 aware and needs no changes. 1018 5.60 RFC 2960 Stream Control Transmission Protocol 1020 This protocol is both IPv4 and IPv6 aware and needs no changes. 1022 5.61 RFC 2961 RSVP Refresh Overhead Reduction Extensions 1024 This protocol is both IPv4 and IPv6 aware and needs no changes. 1026 5.62 RFC 2976 The SIP INFO Method 1028 There are no IPv4 dependencies in this protocol. 1030 5.63 RFC 2988 Computing TCP's Retransmission Timer 1032 There are no IPv4 dependencies in this protocol. 1034 5.64 RFC 2996 Format of the RSVP DCLASS Object 1036 There are no IPv4 dependencies in this protocol. 1038 5.65 RFC 2997 Specification of the Null Service Type 1040 There are no IPv4 dependencies in this protocol. 1042 5.66 RFC 3003 The audio/mpeg Media Type 1044 There are no IPv4 dependencies in this protocol. 1046 5.67 RFC 3006 Integrated Services in the Presence of 1047 Compressible Flows 1049 This document defines a protocol that discusses compressible 1050 flows, but only in an IPv4 context. When IPv6 compressible flows 1051 are defined, a similar technique should also be defined. 1053 5.68 RFC 3010 NFS version 4 Protocol (NFSv4) 1055 This protocol is both IPv4 and IPv6 aware and needs no changes. 1057 5.69 RFC 3015 Megaco Protocol Version 1.0 (MEGACO) 1059 This protocol is both IPv4 and IPv6 aware and needs no changes. 1061 5.70 RFC 3016 RTP Payload Format for MPEG-4 Audio/Visual 1062 Streams 1064 There are no IPv4 dependencies in this protocol. 1066 5.71 RFC 3033 The Assignment of the Information Field and Protocol 1067 Identifier in the Q.2941 Generic Identifier and Q.2957 1068 User-to-user Signaling for the Internet Protocol 1070 This protocol is both IPv4 and IPv6 aware and needs no changes. 1072 5.72 RFC 3042 Enhancing TCP's Loss Recovery Using Limited Transmit 1074 There are no IPv4 dependencies in this protocol. 1076 5.73 RFC 3047 RTP Payload Format for ITU-T Recommendation G.722.1 1078 There are no IPv4 dependencies in this protocol. 1080 5.74 RFC 3057 ISDN Q.921-User Adaptation Layer 1082 There are no IPv4 dependencies in this protocol. 1084 5.75 RFC 3095 Robust Header Compression (ROHC): Framework and four 1085 profiles 1087 This protocol is both IPv4 and IPv6 aware and needs no changes. 1089 5.76 RFC 3108 Conventions for the use of the Session Description 1090 Protocol (SDP) for ATM Bearer Connections 1092 This protocol is currently limited to IPv4 as amplified below: 1094 The range and format of the and 1095 subparameters is per [1]. The is a decimal number 1096 between 1024 and 65535. It is an odd number. If an even number in 1097 this range is specified, the next odd number is used. The 1098 is expressed in the usual dotted decimal IP address 1099 representation, from 0.0.0.0 to 255.255.255.255. 1101 and 1103 IP address for receipt Dotted decimal, 7-15 chars 1104 of RTCP packets 1106 5.77 RFC 3119 A More Loss-Tolerant RTP Payload Format for MP3 Audio 1108 There are no IPv4 dependencies in this protocol. 1110 5.78 RFC 3124 The Congestion Manager 1112 This document is IPv4 limited since it uses the IPv4 TOS header 1113 field. 1115 5.79 RFC 3140 Per Hop Behavior Identification Codes 1117 There are no IPv4 dependencies in this protocol. 1119 6.0 Experimental RFCs 1121 Experimental RFCs typically define protocols that do not have widescale 1122 implementation or usage on the Internet. They are often propriety in 1123 nature or used in limited arenas. They are documented to the Internet 1124 community in order to allow potential interoperability or some other 1125 potential useful scenario. In a few cases they are presented as 1126 alternatives to the mainstream solution to an acknowledged problem. 1128 6.01 RFC 908 Reliable Data Protocol (RDP) 1130 This document is IPv4 limited as stated in the following section: 1132 4.1 IP Header Format 1134 When used in the internet environment, RDP segments are sent 1135 using the version 4 IP header as described in RFC791, "Internet 1136 Protocol." The RDP protocol number is ??? (decimal). The time- 1137 to-live field should be set to a reasonable value for the 1138 network. 1140 All other fields should be set as specified in RFC-791. 1142 A new protocol specification would be needed to support IPv6. 1144 6.02 RFC 938 Internet Reliable Transaction Protocol functional and 1145 interface specification (IRTP) 1147 This protocol specification states: 1149 4.1 State Variables 1151 Each IRTP is associated with a single internet address. The 1152 synchronization mechanism of the IRTP depends on the requirement 1153 that each IRTP module knows the internet addresses of all modules 1154 with which it will communicate. For each remote internet address, 1155 an IRTP module must maintain the following information (called the 1156 connection table): 1158 rem_addr (32 bit remote internet address) 1160 A new specification that is IPv6 aware would need to be created. 1162 6.03 RFC 998 NETBLT: A bulk data transfer protocol (NETBLT) 1164 This RFC states: 1166 The active end specifies a passive client through a client-specific 1167 "well-known" 16 bit port number on which the passive end listens. 1168 The active end identifies itself through a 32 bit Internet address 1169 and a unique 16 bit port number. 1171 Clearly, this is IPv4 dependent, but could easily be modified to support 1172 IPv6 addressing. 1174 6.04 RFC 1045 VMTP: Versatile Message Transaction Protocol (VMTP) 1176 This protocol has many IPv4 dependencies in its implementation 1177 appendices. For operations over IPv6 a similar implementation 1178 procedure must be defined. The IPv4 specific information is 1179 show below. 1181 IV.1. Domain 1 1183 For initial use of VMTP, we define the domain with Domain identifier 1 1184 as follows: 1186 +-----------+----------------+------------------------+ 1187 | TypeFlags | Discriminator | Internet Address | 1188 +-----------+----------------+------------------------+ 1189 4 bits 28 bits 32 bits 1191 The Internet address is the Internet address of the host on which this 1192 entity-id is originally allocated. The Discriminator is an arbitrary 1193 value that is unique relative to this Internet host address. In 1194 addition, the host must guarantee that this identifier does not get 1195 reused for a long period of time after it becomes invalid. ("Invalid" 1196 means that no VMTP module considers in bound to an entity.) One 1197 technique is to use the lower order bits of a 1 second clock. The clock 1198 need not represent real-time but must never be set back after a crash. 1199 In a simple implementation, using the low order bits of a clock as the 1200 time stamp, the generation of unique identifiers is overall limited to 1201 no more than 1 per second on average. The type flags were described in 1202 Section 3.1. 1204 An entity may migrate between hosts. Thus, an implementation can 1205 heuristically use the embedded Internet address to locate an entity but 1206 should be prepared to maintain a cache of redirects for migrated 1207 entities, plus accept Notify operations indicating that migration has 1208 occurred. 1210 Entity group identifiers in Domain 1 are structured in one of two forms, 1211 depending on whether they are well-known or dynamically allocated 1212 identifiers. A well-known entity identifier is structured as: 1214 +-----------+----------------+------------------------+ 1215 | TypeFlags | Discriminator |Internet Host Group Addr| 1216 +-----------+----------------+------------------------+ 1217 4 bits 28 bits 32 bits 1219 with the second high-order bit (GRP) set to 1. This form of entity 1220 identifier is mapped to the Internet host group address specified in the 1221 low-order 32 bits. The Discriminator distinguishes group identifiers 1222 using the same Internet host group. Well-known entity group identifiers 1223 should be allocated to correspond to the basic services provided by 1224 hosts that are members of the group, not specifically because that 1225 service is provided by VMTP. For example, the well-known entity group 1226 identifier for the domain name service should contain as its embedded 1227 Internet host group address the host group for Domain Name servers. 1229 A dynamically allocated entity identifier is structured as: 1231 +-----------+----------------+------------------------+ 1232 | TypeFlags | Discriminator | Internet Host Addr | 1233 +-----------+----------------+------------------------+ 1234 4 bits 28 bits 32 bits 1236 with the second high-order bit (GRP) set to 1. The Internet address in 1237 the low-order 32 bits is a Internet address assigned to the host that 1238 dynamically allocates this entity group identifier. A dynamically 1239 allocated entity group identifier is mapped to Internet host group 1240 address 232.X.X.X where X.X.X are the low-order 24 bits of the 1241 Discriminator subfield of the entity group identifier. 1243 We use the following notation for Domain 1 entity identifiers <10> and 1244 propose it use as a standard convention. 1246 -- 1248 where are [X]{BE,LE,RG,UG}[A] 1250 X = reserved 1251 BE = big-endian entity 1252 LE = little-endian entity 1253 RG = restricted group 1254 UG = unrestricted group 1255 A = alias 1257 and is a decimal integer and is in 1258 standard dotted decimal IP address notation. 1260 V.1. Authentication Domain 1 1262 A principal identifier is structured as follows. 1264 +---------------------------+------------------------+ 1265 | Internet Address | Local User Identifier | 1266 +---------------------------+------------------------+ 1267 32 bits 32 bits 1269 VI. IP Implementation 1271 VMTP is designed to be implemented on the DoD IP Internet Datagram 1272 Protocol (although it may also be implemented as a local network 1273 protocol directly in "raw" network packets.) 1275 The well-known entity identifiers specified to date are: 1277 VMTP_MANAGER_GROUP RG-1-224.0.1.0 1278 Managers for VMTP operations. 1280 VMTP_DEFAULT_BECLIENT BE-1-224.0.1.0 1281 Client entity identifier to use when a (big-endian) host 1282 has not determined or been allocated any client entity 1283 identifiers. 1285 VMTP_DEFAULT_LECLIENT LE-1-224.0.1.0 1286 Client entity identifier to use when a (little-endian) 1287 host has not determined or been allocated any client 1288 entity identifiers. 1290 Note that 224.0.1.0 is the host group address assigned to VMTP and to 1291 which all VMTP hosts belong. 1293 6.05 RFC 1146 TCP alternate checksum options (TCP-ACO) 1295 There are no IPv4 dependencies in this protocol. 1297 6.06 RFC 1151 Version 2 of the Reliable Data Protocol (RDP) (RDP) 1299 There are no IPv4 dependencies in this protocol. 1301 6.07 RFC 1644 T/TCP -- TCP Extensions for Transactions Functional 1302 Specification (T/TCP) 1304 There are no IPv4 dependencies in this protocol. 1306 6.08 RFC 1693 An Extension to TCP : Partial Order Service (TCP-POS) 1308 There are no IPv4 dependencies in this protocol. 1310 6.09 RFC 1791 TCP And UDP Over IPX Networks With Fixed Path MTU 1312 There are no IPv4 dependencies in this protocol. 1314 6.10 RFC 2343 RTP Payload Format for Bundled MPEG (RTP-MPEG) 1316 There are no IPv4 dependencies in this protocol. 1318 6.11 RFC 2414 Increasing TCP's Initial Window (TCP-WIN) 1320 There are no IPv4 dependencies in this protocol. 1322 6.12 RFC 2582 The NewReno Modification to TCP's Fast Recovery 1323 Algorithm 1325 There are no IPv4 dependencies in this protocol. 1327 6.13 RFC 2762 Sampling of the Group Membership in RTP 1329 This protocol is IPv4 limited. It is also reliant on the 1330 underlying assumptions of RTP which is also IPv4 specific. 1332 6.14 RFC 2859 A Time Sliding Window Three Colour Marker (TSWTCM) 1333 (TSWTCM) 1335 This protocol is both IPv4 and IPv6 aware and needs no changes. 1337 6.15 RFC 2861 TCP Congestion Window Validation 1339 This protocol is both IPv4 and IPv6 aware and needs no changes. 1341 6.16 RFC 2909 The Multicast Address-Set Claim (MASC) Protocol 1342 (MASC) 1344 This protocol is both IPv4 and IPv6 aware and needs no changes. 1346 7.0 Summary of Results 1348 In the initial survey of RFCs 24 positives were identified out of a 1349 total of 100, broken down as follows: 1351 Standards 4 of 5 or 80.00% 1352 Draft Standards 0 of 0 or 0.00% 1353 Proposed Standards 15 of 79 or 18.99% 1354 Experimental RFCs 5 of 16 or 31.25% 1356 Of those identified many require no action because they document 1357 outdated and unused protocols, while others are document protocols 1358 that are actively being updated by the appropriate working groups. 1359 Additionally there are many instances of standards that SHOULD be 1360 updated but do not cause any operational impact if they are not 1361 updated. The remaining instances are documented below. 1363 7.1 Standards 1365 7.1.1 STD 7 Transmission Control Protocol (RFC 793) 1367 Section 3.1 defines the technique for computing the TCP checksum that 1368 uses the 32 bit source and destination IPv4 addresses. This problem is 1369 addressed in RFC 2460 Section 8.1. 1371 7.1.2 STD 19 Netbios over TCP/UDP (RFCs 1001 & 1002) 1373 These two RFCs have many inherent IPv4 assumptions and a new set of 1374 protocols must be defined. 1376 7.1.3 STD 35 ISO Transport over TCP (RFC 1006) 1378 This problem has been fixed in RFC 2126, ISO Transport Service on 1379 top of TCP. 1381 7.2 Draft Standards 1383 There are no draft standards within the scope of this document. 1385 7.3 Proposed Standards 1387 7.3.01 TCP/IP Header Compression over Slow Serial Links (RFC 1144) 1389 This problem has been resolved in RFC2508, Compressing IP/UDP/RTP 1390 Headers for Low-Speed Serial Links. See also RFC 2507 & RFC 2509. 1392 7.3.02 ONC RPC v2 (RFC 1833) 1394 The problems can be resolved with a definition of the NC_INET6 1395 protocol family. 1397 7.3.03 RTP (RFC 1889) 1399 A modification of the algorithm defined in A.7 to support both 1400 IPv4 and IPv6 addresses should be defined. 1402 7.3.04 RTSP (RFC 2326) 1404 Problem has been acknowledged by the RTSP developer group and will 1405 be addressed in the move from Proposed to Draft Standard. This 1406 problem is also addressed in RFC 2732, IPv6 Literal Addresses in 1407 URL's. 1409 7.3.05 SDP (RFC 2327) 1411 One problem is addressed in RFC 2732, IPv6 Literal Addresses in 1412 URL's. The other problem can be addressed with a minor textual 1413 clarification. This must be done if the document is to transition 1414 from Proposed to Draft. 1416 7.3.06 SIP (RFC 2543) 1418 One problem is addressed in RFC 2732, IPv6 Literal Addresses in 1419 URL's. The other problem is being addressed by the SIP WG and 1420 many IDs exist correcting the remaining problems. 1422 7.3.07 IPPM Metrics (RFC 2678) 1424 The IPPM WG is working to resolve these issues. 1426 7.3.08 IPPM One Way Delay Metric for IPPM (RFC 2679) 1428 The IPPM WG is working to resolve these issues. An ID is available 1429 (draft-ietf-ippm-owdp-03.txt). 1431 7.3.09 IPPM One Way Packet Loss Metric for IPPM (RFC 2680) 1433 The IPPM WG is working to resolve these issues. 1435 7.3.10 Round Trip Delay Metric for IPPM (RFC 2681) 1437 The IPPM WG is working to resolve these issues. 1439 7.3.11 The PINT Service Protocol: Extensions to SIP and SDP for IP 1440 Access to Telephone Call Services(RFC 2848) 1442 This protocol is dependent on SDP & SIP which has IPv4 dependencies. 1443 Once these limitations are fixed, then this protocol should support 1444 IPv6. 1446 7.3.12 TCP Processing of the IPv4 Precedence Field (RFC 2873) 1448 The problems are not being addressed and may be addressed in a new 1449 protocol. 1451 7.3.13 Integrated Services in the Presence of Compressible Flows 1452 (RFC 3006) 1454 This document defines a protocol that discusses compressible 1455 flows, but only in an IPv4 context. When IPv6 compressible flows 1456 are defined, a similar technique should also be defined. 1458 7.3.14 SDP For ATM Bearer Connections (RFC 3108) 1460 The problems are not being addressed and SHOULD be addressed in 1461 a new protocol. 1463 7.3.15 The Congestion Manager (RFC 3124) 1465 An update to this document can be simply define the use of the IPv6 1466 Traffic Class field since it is defined to be exactly the same as the 1467 IPv4 TOS field. 1469 7.4 Experimental RFCs 1471 7.4.1 Reliable Data Protocol (RFC 908) 1473 This protocol relies on IPv4 and a new protocol standard may be 1474 produced. 1476 7.4.2 Internet Reliable Transaction Protocol functional and 1477 interface specification (RFC 938) 1479 This protocol relies on IPv4 and a new protocol standard may be 1480 produced. 1482 7.4.3 NETBLT: A bulk data transfer protocol (RFC 998) 1484 This protocol relies on IPv4 and a new protocol standard may be 1485 produced. 1487 7.4.4 VMTP: Versatile Message Transaction Protocol (RFC 1045) 1489 This protocol relies on IPv4 and a new protocol standard may be 1490 produced. 1492 7.4.5 OSPF over ATM and Proxy-PAR (RFC 2844) 1494 This protocol relies on IPv4 and a new protocol standard may be 1495 produced. 1497 8.0 Security Consideration 1499 This memo examines the IPv6-readiness of specifications; this does not 1500 have security considerations in itself. 1502 9.0 Acknowledgements 1504 The authors would like to acknowledge the support of the Internet 1505 Society in the research and production of this document. 1506 Additionally the author, Philip J. Nesser II, would like to thanks 1507 his partner in all ways, Wendy M. Nesser. 1509 The editor, Andreas Bergstrom, would like to thank Pekka Savola 1510 for guidance and collection of comments for the editing of this 1511 document. 1513 10.0 References 1515 10.1 Normative 1517 [1] Philip J. Nesser II, Andreas Bergstrom. "Introduction to the Survey of 1518 IPv4 Addresses in Currently Deployed IETF Standards", 1519 draft-ietf-v6ops-ipv4survey-intro-01.txt IETF work in progress, 1520 June 2003 1522 11.0 Authors Address 1524 Please contact the author with any questions, comments or suggestions 1525 at: 1527 Philip J. Nesser II 1528 Principal 1529 Nesser & Nesser Consulting 1530 13501 100th Ave NE, #5202 1531 Kirkland, WA 98034 1533 Email: phil@nesser.com 1534 Phone: +1 425 481 4303 1535 Fax: +1 425 48 1537 Andreas Bergstrom 1538 Ostfold University College 1539 Email: andreas.bergstrom@hiof.no 1540 Address: Rute 503 Buer 1541 N-1766 Halden 1542 Norway 1544 12.0 Intellectual Property Statement 1546 The IETF takes no position regarding the validity or scope of any 1547 intellectual property or other rights that might be claimed to 1548 pertain to the implementation or use of the technology described in 1549 this document or the extent to which any license under such rights 1550 might or might not be available; neither does it represent that it 1551 has made any effort to identify any such rights. Information on the 1552 IETF's procedures with respect to rights in standards-track and 1553 standards-related documentation can be found in BCP-11. Copies of 1554 claims of rights made available for publication and any assurances of 1555 licenses to be made available, or the result of an attempt made to 1556 obtain a general license or permission for the use of such 1557 proprietary rights by implementors or users of this specification can 1558 be obtained from the IETF Secretariat. 1559 The IETF invites any interested party to bring to its attention any 1560 copyrights, patents or patent applications, or other proprietary 1561 rights which may cover technology that may be required to practice 1562 this standard. Please address the information to the IETF Executive 1563 Director. 1565 13.0 Full Copyright Statement 1567 Copyright (C) The Internet Society (2000). All Rights Reserved. 1569 This document and translations of it may be copied and furnished to 1570 others, and derivative works that comment on or otherwise explain it 1571 or assist in its implementation may be prepared, copied, published 1572 and distributed, in whole or in part, without restriction of any 1573 kind, provided that the above copyright notice and this paragraph are 1574 included on all such copies and derivative works. However, this docu- 1575 ment itself may not be modified in any way, such as by removing the 1576 copyright notice or references to the Internet Society or other 1577 Internet organizations, except as needed for the purpose of develop- 1578 ing Internet standards in which case the procedures for copyrights 1579 defined in the Internet Standards process must be followed, or as 1580 required to translate it into languages other than English. The lim- 1581 ited permissions granted above are perpetual and will not be revoked 1582 by the Internet Society or its successors or assigns. This document 1583 and the information contained herein is provided on an "AS IS" basis 1584 and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DIS- 1585 CLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED 1586 TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT 1587 INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR 1588 FITNESS FOR A PARTICULAR PURPOSE.