BattleMesh v6: Days -3, -2

Lazily awoke at 08:00, EDT. I was brushing my teeth when I somehow started thinking about women in engineering and why there are no swimsuit calendars. Then I thought about Radia Perlman in a swimsuit calendar. Somewhere in the world, John Day just choked on his morning coffee.


A Visual Approach to Mutual Redistribution Loops

When a system becomes sufficiently complex, so as to confound our efforts to predict its behavior, we begin speaking of probabilistic, rather than deterministic, outcomes. The convergence of mutually redistributed routing domains is often discussed probabilistically, forcing engineers to rely on lab results, rules-of-thumb, and intuition for guidance during design. And while misconfiguration no doubt lies at the bottom of nearly all pathological behaviors that emerge, I would wager these more often stem from a failure of imagination than cavalier planning.


Subnetting (read "Logarithmic") Arithmetic

All networking types daily make use of arithmetical operations optimized to deal with a fixed number of digits in base-2. These operations are most often performed mentally, with little thought given to the underlying rules the optimized manipulations obey. This is not to say the mechanics of the operations are not considered--indeed, it is only by acute awareness of the binary structure that one may come to grok subnetting at all--but rather the leap from binary arithmetic to subnetting arithmetic is often only tacitly understood. However, in tutoring others on this topic, I've come to develop what I gather is a very clear picture of how we optimize our day-to-day calculations. And, most importantly, my insights are universal in that many others have independently arrived at the same conclusions I have. Therefore, I believe my attempts at developing rigorous notions of these optimizations can be of some value.


Adventures in Internet Pollution

One of my coworkers noticed a large and sudden increase in unallocated bogons on the Internet. This normally indicates a new set of IP allocations have been advertised in BGP before the regional registries have had time to update, and, indeed, such was the case here. However, something was different--immensely different: among the blocks being advertised was, LACNIC's last IPv4 block.

Taken from http://bgp.he.net/AS237


Hypergraphs and Layer-3 Topology

In 2009, I posted some code to document a network's topology from a layer-3 perspective. Since that time, the quick-and-dirty BASH scripts have slowly been replaced, and a database and web interface have been added, making for a surprisingly robust tool that I may, one day, package and release for public consumption and scrutiny. But, while being able to draw layer-3 topologies is very nice, it is the addition of a centralized database, filled with topology data, that is the catalyst for continued exploration.

In January of this year, I worked out a simple algorithm to tackle the following problem:

Given an undirected graph G = (VE), find all simple paths having terminal vertices vs and vt for all vs ∈ V.

Some time has elapsed, but I was finally able to put code to my paperbound scrawl. Fortunately, this problem is easily solved (though my own approach is almost certain to be far from optimal), but before proceeding to the subject of implementation, allow me to first state the problem more plainly and explain its significance.


Cylinder Fun

One of the many oddball questions festering in the back of my skull for the last year had to do with finding the volume of a cylinder. The most common methods in calculus for determining the volume of such a solid make use of discs or shells; I've never found these very satisfying. The reason for this is I prefer to think about solids of revolution as being composed of infinitely many wedge-shaped slices of infinitesimal volume. This is far more intuitive to me than discs and shells, and the idea works for many other solids.


NCSA HPC Data Center Workshop

I was fortunate enough to attend the first day of the NCSA's biennial workshop: Building the Data Center of the Future. It was a great event and absolutely worth every penny; it was completely free! My notes from the event are presented below.


Radia tears it up

The networking monster, Radia Perlman, has been busy doing something I've only ever dreamed of doing: unborking layer-2 and layer-3 in every way imaginable. Her 2008 Google TechTalk is mind-blowing. Numbering interfaces is supposed to be automatic? Layer-2 gets put back in its neighbor-to-neighbor-only box? Layer-3 does its job and actually handles forwarding across not only WANs, but LANs as well? *HEAD 'ASPLODE*

The IETF working group for the project is called TRILL (Transparent Interconnection of Lots of Links). And if it survives its upcoming July review, we may have to completely redefine everything we know about technologies like Ethernet, IP, OSPF, and MPLS. Talk about a paradigm shift--as if migrating our brains to IPv6 weren't enough!

You can have a look at the IETF TRILL working group charter here.

Errata metrics

I was flipping through one of my bookshelf faves, Gary A. Donahue's Network Warrior, when I came across a blatant miscommunication regarding NSSA External LSAs in OSPF. I always try to make a sincere effort to conduct peer review, so I surfed over to the O'Reilly site and pulled up the book's errata.

As no one had yet drawn attention to the error, I submitted my correction and proceeded to look over the existing errata. Admittedly, I was surprised to find such a long list, particularly one containing so many technical errors. Still, writing a book is in no way easy, and when trying to cover a lot of material, errors will creep in. That's why errata exist. But this errata business piqued my interest. What kind of errata do legendary guys like Doyle, Odom, Tanenbaum and the like have floating about?

It turns out that, as one might expect, the great networking tomes of the world have very short errata indeed. In terms of the number of errors, Odom's CCIE Routing and Switching Official Exam Certification Guide came in first, followed by Tanenbaum's Computer Networks. As you may have guessed, Doyle's Routing TCP/IP wins here, with only 16 errors listed for both volumes, all editions. In terms of technical errors, though, I found none. All three books contained only errors in the language or syntax.

In the end, substantial technical review no doubt contributes greatly to shorter errata, and two of the books whose errata I evaluated were Cisco Press, who likely have an army of 20+ year CCIEs to conduct technical review. What's more, the latter three books consisted of a college textbook and two CCIE prep guides. Clearly, the stakes are higher in this context than would be the case with a much more casually written, conversational book like Network Warrior. Still, it is interesting to compare a set of top-notch books this way and see how they compare using quantifiable data.


New, Stable GNS3 DMG

GNS3 0.7 is now available as a DMG, python-related stuff included! It was actually announced on March 6, so I'm late, as ever, but still--DMG!

You can grab it here.