kirkcudbright: (kittinz)
[personal profile] kirkcudbright
I was hoping to get the url for the video before posting this, but that's probably not going to be available until Monday, oh well.

If anyone has been wondering what I've been up to lately (in addition to the Arisia Pocket Program and related works), I released a new software product on Monday. By "I", I mean I was the nominal tech lead and definite release engineer. By "new", I mean 1.0. By "software product", I mean this. By "Monday", I mean during Arisia; I did the release engineering Sunday night before going to parties, and I sent the announcement email from the bar Monday afternoon. (The press release was supposed to go out at the same time, might have gone out yesterday, might not have gone out yet, I don't know.)

Thursday (only somewhat coordinated with the release), at the invitation of Google, I gave a tech talk at their Cambridge office, which was googlecast to at least 4 other offices, and which will eventually be available on video.google. (I hadn't been there before, and was deeply amused to find them directly upstairs of Ambit Press, the people who have printed the Arisia souvenir book and pocket program for the past 5? years.) Anyway, only 4 people in the audience in Cambridge, but maybe a dozen in Oregon, 20ish in Mountain View, a few others elsewhere.

Many thanks to [livejournal.com profile] lyonesse for being my test audience, and helping me tweak the talk. Still, I hadn't given the talk all the way through, uninterrupted, so I didn't know how long it was going to take. Since I don't do a lot of presentations, I tend to rush through them, losing the audience along the way, and we end up staring blankly at each other. This time, I went a little over my hour, and the questions showed that they clearly understood the implications of what I was saying. So it might have been a little dumbed down, but I didn't know what kind of background to expect. I spent a while selling the problem, before selling the solution.

To save yourself waiting for the video, and to save yourself an hour of watching me babble, the gist of the argument is this:

1) We're running out of IPv4 addresses.
1a) No really, we're serious this time.
1b) Geoff Huston estimates X-day at September 7, 2011 (out from Sep 5 when I gave the talk - we just gained a couple days grace time to do nothing about it).
1c) This is just the beginning of the end; IANA allocates free /8 blocks to the Regional Internet Registries, which in turn allocate sub-blocks to Local Internet Registries, etc.
1d) But eventually everything reaches zero, and it affects the end user.

2) IPv6 has always been the solution.
2a) But is as widely deployed as flying cars and gallium arsenide computers.
2b) Because there's been nothing driving the market towards IPv6, or away from IPv4.
2c) Except the larger address space.
2d) Which we haven't needed.
2e) Until now. (Or September '11.)

3) Even after September '11, the internet can't grind to a halt.
3a) In fact, the customer base is still growing.
3b) My 80 year old parents are on the internet. My phone is on the internet. My TV isn't on the internet, but yours probably is.
3c) Even assuming the universal deployment of IPv6, IPv4 will still be needed.

4) If ISPs can't provision every customer with an IPv4 address, they may have to institute address sharing.
4a) One approach is Dual-stack lite.
4b) This uses two mature and well-understood technologies: tunneling and NAT.
4c) Imagine your home gateway is provisioned with IPv6 only.
4d) Further imagine that your NAT is moved out of your home gateway, into the carrier core, and aggregated with every NAT in your neighborhood.
4e) So you and your neighbors are sharing a single IPv4 address.
4f) Everything gets a bit more complicated, but it still works as well as NAT ever did.

5) We have an implementation of this scheme.
5a) Initial development funded by Comcast.
5b) Who are not committing to actually deploy this scheme, much less our implementation.
5c) But they're serious enough about it to want at least proof of concept.
5d) It runs on commodity hardware (linux netbook and linux home gateway).
5e) With acceptable performance, even running single-threaded, in user mode.


Tried to post this last night, but "LiveJournal.com is currently undergoing scheduled maintenance. We'll be back as soon as we can!" for well over an hour, until I gave up and went to bed.

Date: 2010-01-23 03:09 pm (UTC)
From: [identity profile] chocorua.livejournal.com
If either of the ISPs I contract with had even so much as sent me an email "Go to this URL to see how you can convert to IPv6" I would have converted both my home and my company two or more years ago. That kind of NAT aggregation is going to have problems with 65536 ports, which I've already seen doing net monitoring; violates RFC 793 all over the place on TTL & port re-use. Which is probably why we've recently discovered that browsers run JavaScript which is missing the final ';'...

Date: 2010-01-23 03:36 pm (UTC)
From: [identity profile] lyonesse.livejournal.com
glad it went well! i was talking to elf my elf about it, i look forward to him being able to see the video.

Date: 2010-01-23 06:10 pm (UTC)
ext_106590: (waffle off)
From: [identity profile] frobzwiththingz.livejournal.com
Disclaimer; I have not read the referenced RFC thoroughly, but have only skimmed it, and thus what i say next has a fair probability of being crap.

I'm not at all sure i see the real usefulness of this. Presumably, for ISPs to support this, they must have a functioning IPV6 network at their core. Surely we don't expect them to implement this using a purely local, non-globally routable part of the V6 address space, or do we? The V6 address my homecablemodem/DSLrouter/whatever receives *will* be globally routable, right?

If so, I see two classes of legacy IPV4-only devices; those that run servers, and those that don't.

The ones that run servers, seem to still be hosed, because presumably they are now sharing their V4 address, and without some sort of service discovery protocol, there is no way to deal with N instances of the same V4 address all running their webservers on the same port 80. Even if we have such a discovery protocol, these legacy servers and clients by definition don't have it.

The no-servers hosts now *also* seem to be hosed, as, well, they can still connect to V4 hosts on the other side of the tunnel, but since these destination addresses now have multiple personality disorder, what good does it do?

It seems that we may as well be *done* with it and just have a drop-dead date for V4, just as we had one for analog television. [Not that this won't suck massively]

What am I missing?



Date: 2010-01-23 06:15 pm (UTC)
ext_106590: (Default)
From: [identity profile] frobzwiththingz.livejournal.com
Unsaid, but implied above, is that i keep any somehow needed servers on my net that only run V4 reachable by publishing a V6 address/port pair for them, and having my local V6-to-V4 nat box deal with the translation. This seem like the best i can really hope for.

Date: 2010-01-23 06:22 pm (UTC)
ext_106590: (waffle off)
From: [identity profile] frobzwiththingz.livejournal.com
Also unsaid was the assumption that the ISP would actually route a /(128-N) for some small N worth of V6 space to my home endpoint. I mean, how *else* do we assure that we'll be running out of V6 space 20 years from now :-?

Date: 2010-01-23 06:19 pm (UTC)
ext_106590: (waffle off)
From: [identity profile] frobzwiththingz.livejournal.com
An answer of the form "Here are my slides, RTFS" or "here's a youtube link for the techtalk, WTFTT" is just fine :-)

Date: 2010-01-28 02:49 am (UTC)
From: [identity profile] kirkcudbright.livejournal.com
The slides mostly say what I said above, but I'll see about posting them somewhere. The video link is forthcoming (real soon now).

Couple of things I may not have mentioned above. One is that Comcast at least envisions doing IPv6 prefix delegation to the home, so that you'll get a /60 (I think), so you could run a multi-layered globally routable v6 network in your home. Of course, this doesn't require DS-lite to happen. And we'll see if they actually follow through on it.

The other thing is that this (or any other) address sharing scheme assumes a user base that is primarily client-only. There would be mechanisms to request port assignments (both statically, as in current NAT configurations, and dynamically, by extensions of UPnP and NAT-PMP), so you could still request port 80, but you wouldn't be guaranteed to get it. You might end up paying extra for a full IPv4 address, rather than a fractional address.

Date: 2010-01-24 04:09 am (UTC)
From: [identity profile] mrw42.livejournal.com
Congratulations! It looks like an excellent talk, and I'm glad it went well!

Date: 2010-01-24 05:32 am (UTC)
From: [identity profile] weegoddess.livejournal.com
I did read this post a few times but I admit that my mind is kinda distracted. Not that the problem isn't important; I expect that we're all going to be thinking about this really hard in time.

Go you for doing all that. I had no idea. You were clearly good at focusing elsewhere when appropriate.

Profile

kirkcudbright: (Default)
Paul Selkirk

August 2019

S M T W T F S
    1 23
45678910
11121314151617
18192021222324
25262728293031

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Mar. 15th, 2026 01:03 am
Powered by Dreamwidth Studios