diff options
author | Thomas Voss <mail@thomasvoss.com> | 2024-11-27 20:54:24 +0100 |
---|---|---|
committer | Thomas Voss <mail@thomasvoss.com> | 2024-11-27 20:54:24 +0100 |
commit | 4bfd864f10b68b71482b35c818559068ef8d5797 (patch) | |
tree | e3989f47a7994642eb325063d46e8f08ffa681dc /doc/rfc/rfc932.txt | |
parent | ea76e11061bda059ae9f9ad130a9895cc85607db (diff) |
doc: Add RFC documents
Diffstat (limited to 'doc/rfc/rfc932.txt')
-rw-r--r-- | doc/rfc/rfc932.txt | 226 |
1 files changed, 226 insertions, 0 deletions
diff --git a/doc/rfc/rfc932.txt b/doc/rfc/rfc932.txt new file mode 100644 index 0000000..0632cd1 --- /dev/null +++ b/doc/rfc/rfc932.txt @@ -0,0 +1,226 @@ +Network Working Group David D. Clark +Request for Comments: 932 MIT, LCS + January 1985 + + A SUBNETWORK ADDRESSING SCHEME + + +STATUS OF THIS MEMO + + This RFC suggests a proposed protocol for the ARPA-Internet + community, and requests discussion and suggestions for improvements. + Distribution of this memo is unlimited. + +INTRODUCTION + + Several recent RFCs have discussed the need for a "subnet" structure + within the internet addressing scheme, and have proposed strategies + for "subnetwork" addressing and routing. In particular, Jeff Mogul + in his RFC-917, "Internet Subnets", describes an addressing scheme in + which a variable number of the leading bits of the host portion of + the address are used to identify the subnet. The drawback to this + scheme is that it is necessary to modify the host implementation in + order to implement it. While the modification is a simple one, it is + necessary to retrofit it into all implementations, including those + which are already in the field. (See RFC-917 by Mogul for various + alternative approaches to this problem, such as using Address + Resolution Protocol.) + + This RFC proposes an alternative addressing scheme for subnets which, + in most cases, requires no modification to host software whatsoever. + The drawbacks of this scheme are that the total number of subnets in + any one network are limited, and that modification is required to all + gateways. + +THE PROPOSAL + + In this scheme, the individual subnets of a network are numbered + using Class C addresses. Since it is necessary with this scheme that + a Class C address used to number a subnet be distinguishable from a + Class C address used to number an isolated network, we will reserve + for subnetworks the upper half of the Class C address space, in other + words all those Class C addresses for which the high order bit is on. + When a network is to be organized as a series of subnetworks, a block + of these reserved Class C addresses will be assigned to that network, + specifically a block of 256 addresses having the two first bytes + identical. Thus, the various subnetworks of a network are + distinguished by the third byte of the Internet address. (This + addressing scheme implies the limitation that there can only be 256 + subnetworks in a net. If more networks are required, two blocks will + have to be allocated, and the total viewed as two separate networks.) + + + +Clark [Page 1] + + + +RFC 932 January 1985 +A Subnetwork Addressing Scheme + + + The gateways and hosts attached to this subnetted network use these + addresses as ordinary Class C addresses. Thus, no modification to + any host software is required for hosts attached to a subnetwork. + + For gateways not directly attached to the subnetted network, it is an + unacceptable burden to separately store the routing information to + each of the subnets. The goal of any subnet addressing scheme is to + provide a strategy by which distant gateways can store routing + information for the network as a whole. In this scheme, since the + first two bytes of the address is the same for every subnet in the + network, those first two bytes can be stored and manipulated as if + they are a single Class B address by a distant gateway. These + addresses, which can be used either as a Class B or Class C address + as appropriate, have been informally called Class "B 1/2" addresses. + + In more detail, a gateway would treat Class C addresses as follows + under the scheme. First, test to see whether the high order bit of + the address is on. If not, the address is an ordinary Class C + address and should be treated as such. + + If the bit is on, this Class C address identifies a subnet of a + network. Test to see if this gateway is attached to that network. + If so, treat the address as an ordinary Class C address. + + If the gateway is not attached to the network containing that + subnetwork, discard the third byte of the Class C address and treat + the resulting two bytes as a Class B address. Note that there can be + no conflict between this two-byte pattern and an ordinary Class B + address, because the first bits of this address are not those of a + valid Class B address, but rather those of a Class C address. + +OPTIMIZATIONS + + If a network grows to more than 256 subnetworks, it will be necessary + to design two distinct blocks of special Class C addresses, and to + view this aggregate as two separate networks. However, the gateways + of these two networks can, by proper design, run a joint routing + algorithm which maintains optimal routes between the two halves, even + if they are connected together by a number of gateways. + + Indeed, in general it is possible for gateways that are not directly + attached to a subnetworked network to be specially programmed to + remember the individual Class C addresses, if doing so provides + greatly improved network efficiency in some particular case. + + It was stated earlier that no modification to the host software is + necessary to implement this scheme. There is one case in which a + + +Clark [Page 2] + + + +RFC 932 January 1985 +A Subnetwork Addressing Scheme + + + minor modification may prove helpful. Consider the case of a distant + host, not immediately attached to this subnetworked network. That + host, even though at a distance, will nonetheless maintain separate + routing entries for each of the distinct subnetwork addresses about + which it has any knowledge. For most hosts, storing this information + for each subnet represents no problem, because most implementations + do not try to remember routing information about every network + address in the Internet, but only those addresses that are of current + interest. If, however, for some reason the host has a table which + attempts to remember routing information about every Internet address + it has ever seen, than that host should be programmed to understand + the gateway's algorithm for collapsing the addresses of distant + subnets from three bytes to two. However, it is not a recommended + implementation strategy for the host to maintain this degree of + routing information, so under normal circumstances, the host need not + be concerned with the C to B conversion. + +DRAWBACK + + The major drawback of this scheme is that any implementation storing + large tables of addresses must be changed to know the "B 1/2" + conversion rule. Most importantly, all gateways must be programmed to + know this rule. Thus, adoption of this scheme will require a + scheduled mandatory change by every gateway implementation. The + difficulty of organizing this is unknown. + +OTHER VARIATIONS + + It is possible to imagine other variations on the patterns of + collapsing addresses. For example, 256 Class B addresses could be + gathered together and collapsed into one Class A address. However, + since the first three bits of the resulting Class A address would be + constrained, this would permit only 32 such subnetted networks to + exist. A more interesting alternative would be to permit the + collapse of Class C addresses into a single Class A address. It is + not entirely obvious the best way of organizing the sub-fields of + this address, but this combination would permit a few very large nets + of subnets to be assembled within the Internet. + + The most interesting variation of "B 1/2" addresses is to increase + the number of bits used to identify the subnet by taking bits from + the resulting Class B address. For example, if 10 bits were used to + identify the subnet (providing 1024 subnets per network), then the + gateway, when forming the equivalent address, would not only drop the + third byte but also mask the last two bits of the B address. Since + the first three bits of the address are constrained, this would leave + 13 bits for the network number, or 8192 possible subnetworked + + +Clark [Page 3] + + + +RFC 932 January 1985 +A Subnetwork Addressing Scheme + + + networks. This number is not as large as would be desirable, so it + is clear that selecting the size of the subnet field is an important + compromise. + + Danny Cohen has suggested that this scheme should be fully + generalized so that the boundaries between the network, subnetwork, + and host field be arbitrarily movable. The problem in such a + generalization is to determine how the gateway is to maintain the + table or algorithm which permits the collapsing of the address to + occur. This RFC proposes that, in the short run, only one single + form of "B 1/2" addresses be implemented as an Internet subnet + standard. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Clark [Page 4] + |