owen at delong.com
Sat Nov 20 16:20:21 CST 2010
On Nov 20, 2010, at 9:12 AM, William Herrin wrote:
> On Sat, Nov 20, 2010 at 5:05 AM, Richard Hartmann
> <richih.mailinglist at gmail.com> wrote:
>> On Fri, Nov 19, 2010 at 23:52, William Herrin <bill at herrin.us> wrote:
>>> I thought about that. Have a "one colon rule" that IPv6 addresses in
>>> hexidecimal format have to include at least one colon somewhere. The
>>> regex which picks that token out versus the other possibilities is
>>> easy enough to write and so is the human rule: "Oh, it's got
>>> hexidecimal digits and a colon in it. IPv6 address."
>> this would
>> still make it hard for humans to detect an IPv6 address at a glance,
>> makes it impossible to quickly pick out any sections that are more
>> relevant at the moment
> Which is why you wouldn't conventionally remove the colons even though
> the format would allow it. You might, however, move the colons to
> highlight the delineations relevant to a particular address rather
> than the meaningless two-byte separation.
How do you propose to get the router to regurgitate this?
> For example:
> 260 - IANA to ARIN, a /12
> abcde - ARIN to ISP, a /32
> 123456 - ISP to customer, a /56
> 98 - customer subnet
> ::1 - LAN address
> fd - ULA space
> 1234567890 - ULA global ID
> abcd - user subnet
> ::1 - LAN address
From the data available in BGP today, this is a relatively arbitrary
positioning of the delimiters.
I would propose that for a proposed syntax to be worthy of
consideration it must be possible to reproduce it reliably
in an automated fashion.
> Instead of this meaning-filled separation, we have:
> which doesn't tell us a single helpful thing about how that address is
> organized. The only thing the colons do there is make it easier to
> blindly transcribe, like the dashes in a CD license key.
>> and would hog the colon for all eternity,
>> blocking it for other uses.
>> Also, this would make adding a port even
>> more cumbersome.
> I've written more than a few parsers. I think your concern here is overstated.
>>> Anything you call out will be interpreted as special. The more you
>>> call it out, the greater the expectation that the distinction is
>>> important. That's human nature.
>> Pattern recognition is a central part of our intelligence, so yes,
>> it's human nature. This is not necessarily a bad thing.
> The way you talk about something trains people how that thing works.
> Train them poorly and it's your fault when their mistaken mental model
> results in errors.
>>> I mean, when you think about it, the consequence that :: means "all
>>> middle two-byte components are zero" is kinda weird.
>> It's a commonly accepted, well-defined convention to save humans
>> effort while not sacrificing readability. There are weirder things in
> I have no beef with the the notion of abbreviations. I'm just saying
> this particular formulation is weird, a consequence of a poorly
> thought-out notation format.
>>> And even more efficiently when we don't have to repeatedly explain
>>> that the mental model implied by the notation style is, in fact, not
>>> how the technology actually works.
>> If the person can grasp what a bit vector is, they will understand. If
>> they don't, they will not understand it anyway and I won't waste time
>> trying to explain it in depth. At least as of right now, you are
>> giving those people some middle ground which allows them to have a
>> good working knowledge to use IPv6 reliably without needing this level
>> of involvement.
> It helps if the notation style reminds them that they're dealing with
> a bit vector. IPv6 is better about this than IPv4; at least the colons
> aren't separating portions of the bit pattern expressed in base-10.
> But it could be better. Fixed separations get folks thinking there's a
> higher significance. Movable separations offers a constant reminder
> that it is just a bit vector.
>>> No sweat. When I shoot my mouth off, I expect to be challenged on the
>>> remarks. Part of the fun lies in discovering whether the thesis is
>> For at least a few rounds, I am usually good for that, too.
>> Personally, I think I answered the implicit question above, but it
>> made me re-asses and re-think my personal & professional opinion on
>> quite a few things and that's a Good Thing, from time to time.
> A value I also find when I'm on the receiving end. :)
>> PS: Yes, I am fully aware that my complete email is moot anyway as the
>> IPv6 syntax will not change, ever. I wrote it for fun :)
> Yep. However, there is one thing that could be done at this juncture:
> intentionally don't name the two-byte groupings. And then make that a
> part of the lesson plan: by the way folks, these groupings of four
> characters in the IPv6 address intentionally have no name. That's
> because the IPv6 address is a bit vector. The colons are only there to
> make it easier to read and type; the groupings have no significance.
> Bill Herrin
> William D. Herrin ................ herrin at dirtside.com bill at herrin.us
> 3005 Crane Dr. ...................... Web: <http://bill.herrin.us/>
> Falls Church, VA 22042-3004
More information about the NANOG