rlg@desktalk.com (Richard L. Gralnik) (01/10/91)
Hi everyone, We are trying to make efficient use of a Class B address in a situation where the standard procedure wastes roughly half the available addresses. Any thoughts on our proposed solution(s) or others of your own devising would be greatly appreciated. Here is the scenario: We have a network which resembles a wheel with spokes - central hub of main processors on a common ethernet, with remote offices scattered around the area. The remote offices are to be linked to the central site over serial lines using routers. The standard wisdom/procedure is to assign a subnet number to each remote office, another subnet number to each serial line, and another (or many) to the central site net. We want to use an 8-bit subnet mask for the obvious reasons, but the cost of this is that the serial lines become 2-node subnets, thereby wasting 251 addresses (including 0 and 255) each. Since there are 20 remote sites, and the user wants redundant serial lines because the network is mission-critical, we eat up 60+ subnet numbers right off the bat. This is the pilot for a nation-wide company, so the other subnet numbers are expected to be needed before too long. Also, this operation is growing and will likely need additional remote offices added later. We have thought of 3 solutions - 1. Use more than 8 bits for the subnet mask. We don't like the administrative problems this creates, plus there is a good chance that later additions to the net will have many hosts per subnet, so the additional mask bits will not leave enough host address space. 2. Use different size subnet masks for the serial lines than for the office subnets. We don't think the routers will like this very much. 3. Use our Class B network number for the central net and for the remote office nets with the 8-bit subnet mask, and use subnetted Class C addresses for the serial lines. We think this will work since all the Class B subnets have the same net number and subnet mask, and since RIP only sends (sub)net numbers and next hop addresses, the updates should be accurate. We think this is very clever, and believe it will work. However, we haven't actually tried it yet... Also, we aren't knowledgeable enough about OSPF, IGRP, etc. to know if it will confuse/trash them. There is also the consideration that a network address space is assumed to be physically contiguous, but in this case, the Class B is fragmented, and the Class C is not directly reachable from outside the Class B. On the other hand, since the only nodes using the Class C addresses are the serial interfaces of the routers, maybe none of this matters. What do you think? Thanks in advance for any input. I will summarize for the net if we get some good responses. Richard Gralnik (rlg@desktalk.com)
MAP@LCS.MIT.EDU (Michael A. Patton) (01/11/91)
You were almost clever enough... Date: Wed, 9 Jan 91 18:48:55 PST From: rlg@desktalk.com (Richard L. Gralnik) We have a network which resembles a wheel with spokes Actually your later description sounds like spokes, but no wheel. Given the critical nature you describe later you may want to consider interconnecting the ends of the spokes to actually create a "wheel". There are many cases where single failures can take out multiple lines and at least having the ability to route all around the outside means only one of the spokes into the hub needs to be operational for connectivity to exist everywhere (of course, that one link will get quite loaded). We have thought of 3 solutions - But you missed a fourth that is probably the one you want... 1. Use more than 8 bits for the subnet mask. I agree with your reasons against this one. 2. Use different size subnet masks This is very iffy. Exactly what you can accomplish with variable subnets depends on what vendors equipment you are using. There may be restrictions that prevent use in this application. It may be very hard to get right if you want to allow for competitive sourcing of the equipment you use. 3. Use our Class B network number for the central net and for the remote office nets with the 8-bit subnet mask, and use subnetted Class C addresses for the serial lines. We think this is very clever I agree it seems clever, but it doesn't work... However there is something that does (and is related). This doesn't work because of the contiguous network assumption. You may find some vendors implementation that happens to operate the way you want today, but since the specs imply networks are contiguous, this may not continue to be available. However, most vendors of IP routers will let you run the serial line between two routers as an unnumbered subnet. Even if it's not directly supported, this is easy to simulate (see below). This feature is intended to address problems just such as yours. The main disadvantage is that you cannot address these unnumbered ports directly (say to ping them), but with SNMP you still get the information so this may not be a problem at all. This will eliminate all the waste of addresses for these lines. If your vendor doesn't support this (or for some reason you don't want to rely on that support), there is a simple way to simulate it. All you do is allocate one subnet of your class B address and use it for all the serial lines. That's right, you just made a discontiguous subnet. The only reason a discontiguous subnet is a problem is that you don't know how to route to it but, as described before, you don't need to address the serial line side! I have, in fact, tested this configuration, by accident, and found it to work fine. The way to accidentally get this configuration is with a spine subnet that partitions in such a way that the parts still work, and the two partitions are interconnected through some back door. In your case, you could think of all the serial ports being on one super-subnet that just happens to be broken into partitions of size 2. There are some minor complications if multiples of these "partitions" need to feed into a single router, but a little thought can generally configure a setup for this case. __ /| /| /| \ Michael A. Patton, Network Manager / | / | /_|__/ Laboratory for Computer Science / |/ |/ |atton Massachusetts Institute of Technology Disclaimer: The opinions expressed above are a figment of the phosphor on your screen and do not represent the views of MIT, LCS, or MAP. :-)
barmar@think.com (Barry Margolin) (01/11/91)
In article <9101100248.AA01030@desktalk.desktalk.com> rlg@desktalk.com (Richard L. Gralnik) writes: >The standard wisdom/procedure is to assign a subnet number to each remote >office, another subnet number to each serial line, and another (or many) >to the central site net. We want to use an 8-bit subnet mask for the >obvious reasons, but the cost of this is that the serial lines become 2-node >subnets, thereby wasting 251 addresses (including 0 and 255) each. Since >there are 20 remote sites, and the user wants redundant serial lines because >the network is mission-critical, we eat up 60+ subnet numbers right off the >bat. Some routers (e.g. cisco) support configurations where the ends of a point-to-point link are not assigned unique addresses, so the serial lines don't have to be assigned subnet numbers. As far as all the other hosts are concerned, the two routers connected by the serial line are a single virtual host (the serial link would be a slow virtual bus). The routers themselves need to know the number of at least one subnet connected to the router at the other end of the link. -- Barry Margolin, Thinking Machines Corp. barmar@think.com {uunet,harvard}!think!barmar
simon@sirius.ucs.adelaide.edu.au (Simon Hackett) (01/11/91)
You don't have to waste a subnet number on each sl/ip link. You can configure each end of the link using the primary IP address of each system as the addresses configured into the sl/ip interface at each end of the sl/ip link. i.e. for a link thus: ----(ether)----[HOST A]--(sl/ip)--[HOST B]---(ether 2)--- If HOST A and HOST B have primary IP addresses for each of their respective ethernets, set up the sl/ip interface on HOST A so the ip address of the local side of the sl/ip link is the same as host A's ethernet address, and set the IP address of the remote end of the sl/ip link to the ethernet IP address of HOST B. Vice versa at the other end. What happens under these conditions? Well, it might look illegal, but although it skates on the edge, it works: For routing out of HOST A to HOST B, all the matters is the remote sl/ip interface address - so packets get sent correctly to host B. They have a source IP address of [HOST A's ethernet IP number], but this is perfectly valid for them. Packets on the way back work the same way - since they are tagged as having originated from HOST A's ether address, they get routed to HOST A via the SL/IP link. Hopefully this makes sense. If you imagine you're an IP router and go through the steps involved in routing packets each way, you'll see that it works out right. Simon Hackett Adelaide Uni
oleary@noc.sura.net (dave o'leary) (01/11/91)
In article <9101100248.AA01030@desktalk.desktalk.com> rlg@desktalk.com (Richard L. Gralnik) writes: >Hi everyone, > >We are trying to make efficient use of a Class B address in a situation where >the standard procedure wastes roughly half the available addresses. Any >thoughts on our proposed solution(s) or others of your own devising would be >greatly appreciated. > [Typical scenario where variable length subnets are desirable deleted] > 2. Use different size subnet masks for the serial lines than for > the office subnets. We don't think the routers will like > this very much. > OSPF can deal with variable length subnet masks, now that most of the major router vendors are committed to implementing it, there shouldn't be any problem.... :-) dave
PIRARD%vm1.ulg.ac.be@CUNYVM.CUNY.EDU (Andr'e PIRARD) (01/11/91)
On Wed, 9 Jan 91 18:48:55 PST Richard L. Gralnik said: > 3. Use our Class B network number for the central net and for the > remote office nets with the 8-bit subnet mask, and use > subnetted Class C addresses for the serial lines. We think > this will work since all the Class B subnets have the same > net number and subnet mask, and since RIP only sends > (sub)net numbers and next hop addresses, the updates should > be accurate. A&Q. Configuration when routing by a pair of hosts usually provides the alternative of (1) using a network number dedicated to the serial line or (2) having each side borrow for the line interface a network address from the other side (i. e. one it uses on another interface). I bet you're allowed (2) but avoid it. PCROUTE's doc says that (1) is "PREFERRED", and that, in case (2) is used, one should "turn off RIP on this interface". TCP/IP for VM (version 1.2) seems to propose only (2) for links on SNA. For example I use home addresses 2.1 on one side and 32.1 on the other albeit 32.1 is the home address of another Ethernet interface of the latter. What are exactly the reasons favoring (1) besides saving a network number? What is the RIP concern? RIP broadcast traffic or RIP operability? I guess there's no reason for added traffic, as each host is supposed to send only its routing tables. But where goes a broadcast supposed to be sent to a network and that's received by a single host, etc... Any guru's comment? I think that (2) is safe indeed. I see no reason for keeping a network address contiguous. No more than if you were using multiple C addresses. Andr'e PIRARD SEGI, Univ. de Li`ege B26 - Sart Tilman B-4000 Li`ege 1 (Belgium) pirard@vm1.ulg.ac.be or PIRARD%BLIULG11.BITNET@CUNYVM.CUNY.EDU
medin@NSIPO.NASA.GOV ("Milo S. Medin", NASA ARC NSI Project Office) (01/13/91)
Mike, I disagree that #2 is risky (using variable length subnets). Vendors running OSPF have to implement variable length mask support, and since Proteon, 3com, Wellfleet and ACC also have demonstrated OSPF interoperability recently, with cisco committing to have it by Q2 1991, I fail to see how this restricts your choice of vendors in any significant way! Also note, that of the system is running OSPF, subnets no longer need to be contiguous. This works fine (we have done this here at Ames). Time moves on and progress is made. People can take advantage of the new technology. We don't still eat with stone knives and forks. Let's try and avoid the use of their equivalents in routing technology. Thanks, Milo
tmallory@BBN.COM (01/15/91)
In article <9101100248.AA01030@desktalk.desktalk.com> rlg@desktalk.com (Richard L. Gralnik) writes: >The standard wisdom/procedure is to assign a subnet number to each remote >office, another subnet number to each serial line, and another (or many) >to the central site net. We want to use an 8-bit subnet mask for the >obvious reasons, but the cost of this is that the serial lines become 2-node >subnets, thereby wasting 251 addresses (including 0 and 255) each. Since >there are 20 remote sites, and the user wants redundant serial lines because >the network is mission-critical, we eat up 60+ subnet numbers right off the >bat. Another obvious approach is to use two sizes of subnet masks. Given the minimum usable size of two bits(00 unused, 11=broadcast, 01 and 10 the hosts), you can get 64 trunks worth of subnets out of each subnet with an 8-bit host space. This is fairly efficient, and allows for use of the conventional addressing procedure. Of course, once you have the hierarchical subnetting then you have the option of giving less than 254 host addresses to smaller sites. BBN T/20s give you this option, others probably do as well. Paul Tsuchiya wrote a paper on assigning addresses in a hierarchical manner that allowed for expansion of chunks of the address space without forcing host addresses to change. The basic idea was to assign addresses right-to-left, starting with large masks that could be shrunk to expose more of the host address space. It's single most important requirement was support for variable length subnet masks. I'm pretty sure that it did NOT require non-contiguous subnet masks, just a general left-to-right hierarchy. I can't locate the paper now, but I'm sure someone(Paul?), can supply a pointer to it. Tracy Mallory BBN Communications
tsuchiya@THUMPER.BELLCORE.COM (Paul Tsuchiya) (01/18/91)
A couple of days ago Tracy Mallory mentioned that I had a method of assigning subnet numbers prevents one from having to determine in advance where the subnet/host boundary goes. Well, I do, and it has been submitted to become an internet draft, shortly after which it will be an rfc. Anyway, if people are interested, I have made it available via anonymous ftp on thumper.bellcore.com:subnet. I'd love any improvements you might suggest.
rlg@STYX.DESKTALK.COM (Richard L. Gralnik) (01/23/91)
Hi folks, My thanks to everyone who responded to my request for comments on how to r configure the IP addresses for a network consisting of a lot of subnets connected by routers over serial lines. There were over 20 replies, most agreeing on unnumbered subnets as the way to go, although a few of you did mention variable length subnet masks and OSPF routing updates as a more sophisticated and just as workable approach. I appreciate the live experience a couple of you shared on attempts to implement the Class B offices linked by subnetted Class C serial lines. You justified our suspicions that 'here there are monsters'. I would have replied sooner, but my son was in the hospital unexpectedly for a week with meningitis (he's ok now) so I was a bit back-logged. Thanks again, Richard Gralnik (rlg@desktalk.com)