On Nov 20, 2010, at 9:12 AM, William Herrin wrote: > On Sat, Nov 20, 2010 at 5:05 AM, Richard Hartmann > <richih.mailingl...@gmail.com> wrote: >> On Fri, Nov 19, 2010 at 23:52, William Herrin <b...@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:abcde:123456:98::1 > > 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:1234567890:abcd::1 > > 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. Owen > Instead of this meaning-filled separation, we have: > > 260a:bcde:1234:5698::1 > > 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 >> technology. > > 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 >>> defensible. >> >> 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. > > Regards, > Bill Herrin > > > > > -- > William D. Herrin ................ her...@dirtside.com b...@herrin.us > 3005 Crane Dr. ...................... Web: <http://bill.herrin.us/> > Falls Church, VA 22042-3004