nanog mailing list archives

Re: Stupid Question maybe?


From: Joel Halpern <jmh () joelhalpern com>
Date: Tue, 18 Dec 2018 17:30:15 -0500

History of non-contiguous network masks, as I observed it.

The rules did not prohibit discontiguous network masks. But no one was sure how to make them work. In particular, how to allocate subnets from discontiguous networks in a sensible fashion.

In the early 90s, during the efforts to solve the swamp and classful exhaustion problems, Paul Francis (then Tsuchia) and I each worked out table structures that would allow for discontiguous masks with well-defined "prefixes" / "parents". Both approaches were based on extensions of Knuth's Patricia trees. (It took some interesting analysis and extensions.)

When we were done, other folks looked at the work (I don't know if the Internet Drafts are still in repositories, but they shoudl be.) And concluded that while this would work, no network operations staff would ever be able to do it correctly. So as a community we decided not to go down that path.

Yours,
Joel

On 12/18/18 5:12 PM, David Edelman wrote:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

I seem to remember that before the advent of VLSM and CIDR there was no requirement for the 1 bits in the netmask to be 
contiguous with no intervening 0 bits and there was always someone who tested it out on a production network just to 
prove a point (usually only once)

Dave

- -----Original Message-----
From: NANOG <nanog-bounces () nanog org> On Behalf Of Naslund, Steve
Sent: Tuesday, December 18, 2018 3:37 PM
To: nanog () nanog org
Subject: RE: Stupid Question maybe?

It is a matter of machine readability vs human readability.  Remember the IP was around when routers did not have a lot of 
horsepower.  The dotted decimal notation was a compromise between pure binary (which the equipment used) and human 
readability.  VLSM seems obvious now but in the beginning organizing various length routes into very expensive memory and 
low horsepower processors meant that it was much easier to break routes down along byte boundaries.  This meant you only had 
four different lengths of route to deal with.  It was intended to eliminate multiple passes sorting the tables.  I am not 
quite sure what you mean about interspersing zeros, that would be meaningless.  Remember that it is a mask.  The address 
bits which are masked as 1s are significant to routing.  The bits that are masked with 0s are the host portion and 
don't matter to the network routing table.

Steven Naslund
Chicago IL


/24 is certainly cleaner than 255.255.255.0.

I seem to remember it was Phil Karn who in the early 80's suggested that expressing subnet masks as the number of bits 
from the top end of the address word was efficient, since subnet masks were always a series of ones followd >by zeros with 
no interspersing, which was incorporated (or independently invented) about a decade later as CIDR a.b.c.d/n notation in RFC1519.
        - Brian
-----BEGIN PGP SIGNATURE-----

iF0EARECAB0WIQQP+UHquEepll566aqXCCyZOY1FIQUCXBlw1AAKCRCXCCyZOY1F
IYkTAJ98Gh+IGhDcyIB92H9JyWtbCVDhugCfZXq60pnHCqttKfw2fpUCBagTxYo=
=RimM
-----END PGP SIGNATURE-----




Current thread: