P. Francis (NTT) January 1994 Simple Internet Protocol Plus (SIPP): Unicast Hierarchical Address Assignment Status of this Memo This document is an Internet Draft. Internet Drafts are working documents of the Internet Engineering Task Force (IETF), its Areas, and its Working Groups. Note that other groups may also distribute working documents as Internet Drafts). Internet Drafts are draft documents valid for a maximum of six months. Internet Drafts may be updated, replaced, or obsoleted by other documents at any time. It is not appropriate to use Internet Drafts as reference material or to cite them other than as a "working draft" or "work in progress." Please check the I-D abstract listing contained in each Internet Draft directory to learn the current status of this or any other Internet Draft. 1. INTRODUCTION SIPP has defined three types of addresses, global hierarchical uni- cast, multicast, and local-use unicast [5]. This specification describes an assignment scheme for SIPP global hierarchical unicast addresses. This assignment scheme has the following characteristics: 1. it accommodates existing IP addresses, 2. it is an extension of the CIDR address assignment scheme, 3. it leaves address space open for several avenues of future growth. The SIPP Protocol specification [6] and the SIPP Routing and Address- ing specification [5] describe the operation of SIPP. This document assumes an understanding of [6] and [5]. SIPP WG, Expires August 1, 1994 [Page 1] SIPP Address Assignment January 1994 2. ASSIGNMENT SCHEME The assignment scheme for SIPP unicast addresses is provider-based, as follows: |1| n bits | m bits | p bits | 63-n-m-p| +-+-------------------+---------------------+-----------+---------+ |C| provider ID | subscriber ID | subnet ID | node ID | +-+-------------------+---------------------+-----------+---------+ | | | corresponds to current IP address | 2.1. C-bit The left-most bit is the IPv4 compatibility flag [3], known as the C-bit. Both SIPP and IPv4 hosts can be assigned SIPP addresses in the SIPP unicast address space. Even though IPv4 hosts may be listed in the DNS with 64-bit SIPP addresses, they only "know" the low-order 32-bit part of their address. The C-bit is used by SIPP nodes to differentiate SIPP systems from IPv4 systems. SIPP systems are always assigned addresses with the C-bit set to 0. IPv4 systems are always given addresses with the C-bit set to 1. 2.2. Provider Assignments Initially, the provider ID will be 31 bits in length. The provider mask is 32 bits in length (covering the provider ID and the C-bit). Provider IDs initially have the following format: | 8 bits | 24 bits | +--------+-----------------------+ |C0000000| provider ID, assigned | | | "from the left" [2] | +--------+-----------------------+ The leftmost 7 bits of the provider ID (not including the C-bit) are assigned as 0. The subsequent 24 bits are assigned values according to the technique of assigning IP subnet numbers outlined in RFC 1219 [2]. That is, the "1" bits of the values are filled in from left- to-right rather than from right-to-left. This style of assignment reserves 0's on the right side of the provider ID, thus allowing the mask of a given provider to shrink in the future, if it is found that the provider needs more bits, for instance to identify its sub- scribers. SIPP WG, Expires August 1, 1994 [Page 2] SIPP Address Assignment January 1994 For example, initial provider ID assignment would proceed as follows: first provider: C0000000 10000000 00000000 00000000 second provider: C0000000 01000000 00000000 00000000 third provider: C0000000 11000000 00000000 00000000 fourth provider: C0000000 00100000 00000000 00000000 fifth provider: C0000000 10100000 00000000 00000000 .... tenth provider: C0000000 01010000 00000000 00000000 This initial assignment of the provider ID space (zeros to both the left and right of the assigned bits) allows for several avenues of growth. For instance, if internet growth results in a small number of very large providers, then the masks of the providers can be shrunk, thus giving each provider more space, which could be used to add another level of hierarchy within the provider. If providers grew so large that they required even more space, they could be allocated codes in the most significant byte of the provider ID space. The reserved space in the most significant byte could also be used for different kinds of number assignments, such as geographical or organizational, if that becomes desirable in the future. (Strictly speaking it wouldn't be necessary for such different number assign- ments to have their own contiguous number spaces. For instance, the geographical codes could come from a portion of the provider space. However, having separate contiguous number spaces for different types of addresses simplifies address administration within each space.) If internet growth results in a large number of small providers, then it might be necessary for the zero bits in the most significant byte to be used as an additional layer of hierarchy above the provider level. In any event, future assignments of the first byte for the purpose of unicast hierarchical addresses cannot include the values x1111111 or 0110xxxx, where 'x' implies either 0 or 1 in that bit position. The reason is because x1111111 is already assigned as multicast, and 0110xxxx is assigned as local-use [5]. 2.3. Assignment of Lower 32 Bits The lower 32-bits of the SIPP address is initially nothing more than the current IP address. After the IP address space expires (is no longer globally unique), then the lower 32 bits of the SIPP address will no longer by itself be globally unique, and will be assigned by the addressing authority identified by the higher 32 bits of the SIPP SIPP WG, Expires August 1, 1994 [Page 3] SIPP Address Assignment January 1994 address (rather than being assigned by the current IP top-level address assignment authority). IP addresses currently exist under two formats, class-based (pre- CIDR) and class-less (CIDR) [1]. Pre-CIDR assignments have the fol- lowing format: | m bits | p bits | 32-m-p | +--------------+---------+--------+ | network | subnet | host | +--------------+---------+--------+ The IP network number corresponds to the SIPP subscriber ID. The SIPP subnet ID and node ID correspond to the IP subnet and host numbers respectively. The network number is globally unique among network numbers. Thus, providers have no control over the assignment of subscriber IDs derived from pre-CIDR IP addresses. CIDR assignments have the following format: | n bits | m bits | p bits |32-n-m-p| +-------------+--------------+---------+--------+ | provider ID |subscriber ID | subnet | host | +-------------+--------------+---------+--------+ Under CIDR, providers have control of subscriber assignments. After IP addresses are no longer unique, providers will also have control over the top n bits of the "IP address" (the lower 32 bits). These bits can be used either to assign directly to more subscribers, or to create a level of hierarchy above the subscriber level, resulting in: |1| 31 bits | n bits | m bits | p bits |32-n-m-p| +-+-------------+----------------+--------------+---------+--------+ |C| provider ID |sub-provider ID |subscriber ID |subnet ID|node ID | +-+-------------+----------------+--------------+---------+--------+ As mentioned above, it will also be possible for the sub-provider ID to grow into the provider ID space, by shrinking the provider mask for the provider. In general, as the internet grows, the structure of the SIPP global address may evolve to accommodate the growth. In the extreme case, the SIPP global address can expand to greater than 64 bits. Note that the use of provider-based addresses results in multiple address prefixes for subscriber domains that are attached to multiple providers [4]. While this has the advantage of giving nodes a pro- vider selection feature, it has the disadvantage of added complexity in nodes, DNS, and address administration. SIPP WG, Expires August 1, 1994 [Page 4] SIPP Address Assignment January 1994 References [1] V. Fuller, T. Li, K. Varadhan, J. Yu, "Supernetting: an Address Assignment and Aggregation Strategy", RFC 1338. [2] P. Tsuchiya, "On the Assignment of Subnet Numbers", RFC 1219. [3] R. Gilligan et al, "SIPP Transition Mechanisms", Internet Draft. [4] P. Francis, "On the Assignment of Provider Rooted Addresses", Internet Draft, work in progress. [5] S. Deering, et. al., "SIPP Routing and Addressing", Internet Draft. [6] S. Deering, "Simple Internet Protocol Plus (SIPP) Specifica- tion", Internet Draft, work in progress. Author's Address francis@cactus.ntt.jp SIPP WG, Expires August 1, 1994 [Page 5]