Stack-Hacker Itojun Talks About IPv6
Alert reader Sin Yuhara writes: "I've encountered [an interview in which] Jun-ichiro "itojun"
Ogino(KAME Project Core/NetBSD Core/FreeBSD Comitter)
talks about IPv6. The KAME IPv6 [?] stack is very well
known in the BSD world and beyond. I'm sure IPv6 and
related stuff must deploy, and this article may help all
people." It's a really good read -- itojun talks about the IPv6 tools that are already integrated into the various BSD systems, about the need for ever more testing, and about why Japan rocks.
As mentioned in the second page of the interview there is a seperate mobile-ip6 stack being worked on.
Seems the memory usage issues are being addressed for devices where it is an issue.
-Rusty
The Master (Angelo Rossitto) in Mad Max Beyond Thunderdome, "Not shit, energy!"
Microsoft may not be holding up anyting intentionally, but there users are unknowingly holding this up if what you say is correct. There are WAY more people running Windows9x/Millenium than there are people running Win2k. Also, Whistler of course may be an operating system, but it is not a RELEASED operating system market-and-consumer-wise. It is still beta software, and will have to go final and be on store shelves before Joe Windows9x User even knows that it exists, let alone decides to upgrade to it/buy a new computer with it pre installed. Anyhow, that all means MS has released a total of two OS's to consumers since 2000. ONE of them has built in IPv6 support. One DOESN'T. That doesn't add up to all of them. Of course, you actually pointed this out yourself... ... So why are you even bothering to counter FUD with more FUD?
... multicast. An Internet where anyone can stream live multimedia to an unlimited number of users is the Internet that I want to be a part of. The lack of deployment of multicast on this Internet is shameful.
Won't help if the ISP decides to be vindictive and place filters that prevent more than a single address from originating from a subscriber. Don't think it won't happen, and don't think that companies like Cisco won't be more than happy to help them out in doing this. It'll be an artificial limit, but a limit none-the-less.
I used up all my sick days, so I'm calling in dead.
One other thing I forgot: IPv6 was actually mentioned by name in a policy speech given by Japan's prime minister in front of parliament in September 2000.
-- Stanislav Shalunov
Obviously you didn't read the article. He isn't someone breaking into systems, he's someone making the IPv6 stack for various BSD systems. You're referring to 'crackers'. There's a difference. :/
--------------------
Just curious: would it be possible for local ISPs (who probably move a lot faster than AT&T et al) to roll out IPv6 to their local customers, and then tunnel it across the back bone? i.e., upgrade bottom up instead of top down.
Although they're in still in development, microsoft will probally be pushing ipv6 soon, they have a working alpha(?) with a sdk here.
Plus, the guy is really Japanese and isn't a kid. Obviously you're an idiot.
--------------------
No .. sorry to dissaponit you.
;)
Win2k german does NOT have build-in IPv6 support ! Really ! I DID test it
There's an addon on the micro$oft website, which you can install to have IPv6, but IIRC it was still labeled BETA the last time I did ceck it out ! (it was about 4 months ago !)
So please stop spreading FUD!
Can you still subnet? I mean, I dont really have a use for 2^64 addresses :) LIke, you cant really fit more than a hundred (the spec is something like 1024 isnt it?) on an ethernet network. I mean, what's the point of using addresses frivilously, when we have the technologies to easily manage addresses more efficiently?
last time I looked through the packages on FreeBSD, there was a port of apache with ipv6 support. also, in the freebsd mirrors there are two listed as being ipv6. so I think apache supports ip6
Namely, every subscriber, be it a corporation or a household, gets a /48.
/64 "subnet" (which might even be defensible since some broadband equipment is based on bridging) and thus assigns each customer only one address?
That might be how it's supposed to be used, but that has little effect on how ISPs will actually configure their networks. What if an ISP defines all their customers to be part of one
This is probably the biggest myth of IPv6 - it has precisely one feature beyond what IPv4 supports, the 16 bit flow label field in the IPv6 header, that relates to QoS.
Deploying IPv4 QoS is possible today - I work for a company that makes software to enable QoS in routers, amongst other things, and am helping customers do this. The key approaches are DiffServ (easy to deploy, softer QoS), and RSVP (harder to deploy, harder QoS, and I don't know any real networks that have deployed this).
The IPv6 flow label reduces the load on core routers where RSVP has been deployed, by caching the result of an earlier classification decision (i.e. matching packets against IP adddresses, port numbers, etc). However, it's hardly a big step forward for QoS if you are using DiffServ as most networks do.
What's more important for QoS is that IPv6 will (eventually) make NATs much less popular. Trying to classify NATed traffic is a nightmare, of course, and IPv6 should make things easier.
My company also does MPLS stuff - interestingly, this will help IPv6 deployment, because the big fast core routers will NOT need to have their forwarding hardware upgraded to forward IPv6 packets. MPLS labels packets near the edge of the network, and once labelled the packets are forwarded using ONLY the 32 bit MPLS label. Hence the IPv6 headers are only inspected on the edge router for the MPLS network.
The result is that the core routers only need to run IPv6 routing software, not IPv6 forwarding - hence no need to replace those ASICs. The edge routers are typically small enough that they should be able to run IPv6 forwarding in software.
Of course, as someone else already pointed out, there is still a lot of work before the ISPs' routers get fully upgraded with the entire set of add-on protocols - routing, multicast, PPP, RADIUS, IP-over-ATM, and so on.
Many people seem to use NAT for security purposes, because it makes it harder for outsiders to connect to internal machines. Of course, NAT is not meant for this, and has potential holes (e.g. if the NAT software fails it may just forward packets straight through, as has happened on at least some NAT boxes), but that's what a lot of people think.
Until people manage their host and firewall security a lot better, many sites may just stick with NAT because it's what they know, removing a key benefit of using IPv6. So perhaps improved security processes and technology are a prerequisite for IPv6 deployments.
go to www.kame.net there is a list of applications that work with IPv6 there.
First of all, the IPv6 header is actually more regular than the IPv4 header - fewer fields, and only twice the size of IPv6 despite addresses that are four times larger. Also, the routing tables for IPv6 are supposed to be more regular, so the performance impact on software-based routers may not be that much.
The vast majority of IPv6 packets will not have options - yes, they need to be looked at if present, but in that case you just dump the packet into a slow path. Also, MPLS will help here (see below) - the packet should only hit the slow path on lower end routers.
As for core routers that use forwarding ASICs - the answer is to implement MPLS, starting on edge routers that forward IPv6 in software, and attach MPLS labels. The core routers ONLY see the 32 bit MPLS label, so there is no problem about forwarding IPv6 just as efficiently as IPv4, once it is MPLS labelled. The core routers need to run IPv6 routing processes, but that's just on the main CPU.
MPLS is already deployed in ISP and telco IP networks - it is currently used for traffic engineering (balancing traffic loads over the network) and MPLS VPNs, and the same technique will be used to carry ATM, Frame Relay, Ethernet and SONET.
In the longer term, new routers will come on the market with smart enough ASICs and network processors to handle IPv6 with no reduction in forwarding rates, but MPLS will be useful for those ISPs that want its extra features.
Everyone supporting it happen sooner if you supported it. Assuming you're part of "everyone," that is.
"Patriotism is your conviction that this country is superior to all other countries because you were born in it." -- GBS
What, 65536 networks isn't enough for you, you need to subnet as well? :)
One of the reasons to have 2^64 host addresses is so that you can use globally unique EUI64 host addresses (for example, for Ethernet, based on the hardware MAC address) to allow immediate auto-configuration on any network anywhere in the world without any chance of an IP address conflict or having to do manual assignments. (Manual assignments are also supported, though.)
There's more than one kind of efficiency; part of the idea of IPv6 is to make routing simpler to gain speed and avoid abominations like NAT. Anyway, only 15% of the address space has even been defined so far; 85% is still reserved for future uses! I wish people would bother to learn about things before commenting.
http://www.glasswings.com/
stop whining.
IPSec is not enabled in the default install - the point is that only holes that are 'on by default' are counted by the home page statement.
Yeah, that is exactly what I just said.
Moderators, what the hell are you doing? How can he get a +1 on something I just said, which did'nt get anything, and my first post still got nothing, which I think is "informative".
His post is -1 redundant.
Bizare.
War crimes, torture, lies, illegal spying... Would someone give Bush a blowjob, already, so he can be impeached?
He asks why anyone still uses NAT seeming to say that with ipv6 noone will need to use NAT. I personally use NAT so I don't have to pay my isp 40$ extra every month to have all my machines hooked up. Are ISPs going to just start handing out ipv6 address for free, I don't think so. I can't wait until my isp just hands out subnets, not individual addresses.
I've upgraded my linux box to IPv6, but I notice there are some strange results. If I do a "ping ::1" it works fine, however, if I try to ping my IPv6 address, it doesn't work unless I bind the ping to my network device. A few other applications worked that way too. Hopefully IPv6 will be in the latest Redhat without having to recompile the kernel soon.
So, you expecte the density increase to continue without end? If the curve continues, in a few years we'll be storing 15MB in a single atom. (Crumb. I couldn't find the story on quantum storage).
--
Free Software: Like love, it grows best when given away.
Go, Japan!
-- Stanislav Shalunov
- Hubert
I'm not that old, but I remember internet before windows95. Win3.1 didn't have tcp/ip, so I had to load this "trumpet winsock" program (the icon was blue) before I could use netscape to look at web sites (mostly porn. I was 14).
I bet AOL CDs (diskettes?) had a program like that. And I bet the lack of tcp/ip on windows didn't stop them from giving them away like crazy.
Maybe we should have more porn websites running on ipv6.. That should motivate everyone. :-)
--
--
Stay tuned for some shock and awe coming right up after this messages!
Even most -UNSTABLE are safer than NT.
I don't see IPv6 taking off any time. IPv6 problem is not just a deadlock between ISPs and router manufacturers. The big roadblock on the way towards TWGD (i.e. total worldwide global domination, let's see if this one sticks ;-) is that IPv6 doesn't fit well in hardware acceleration. IPv6 has huge and variable headers, which are a pain in the bottom end to process in hardware.
... an option. Even core routers must completely walk the header chain of each packet.
... as an exception, using the CPUs. The performances are merely catastrophic. IPv6 is not really practical with current router architecture. May be an IPv7 will come, one day when IPv4 is really breaking at the seams.
... that just my $0.02 on IPv6 ...
IPv4 is much nicer. Only the first few hundreds bits in the packets really matter. Sure, an IPv4 header can be much bigger with options. It's just that nobody expects those options to be implemented. With IPv6, ignoring options is not
The reason is that the IPv6 effort was started in the early 90s at a time when IP routers where basically a bunch of interfaces and DMA engines around a shared packet buffer with a CPU in the middle chopping and tweaking the headers to route the packets. All the decisions were made by software, and, sometime in low cost routers, the CPU even performed the data transfers with the interfaces, no DMA. The IPv6 was built with this architecture in mind and requires the routers to do a lot of smart gee whiz things on the headers. That clean architectural model is alas obsolete.
Nowadays, routers' CPUs nearly never see a packet. All the routing is completely done in hardware. The CPUs just do housekeeping, maintaining the routing tables, collecting and processing statistics, that kind of stuff. The only packets they ever see are those for network maintenance, SNMP, etc, and routing protocols, OSPF, IGRP, BGP, you name it.
In serious routers, the real stuff happens between the switch fabric and the routing processors. The switch fabric, centralized or distributed, handles the bulk of the data transfers, receiving and sending packets between the interfaces and the packet buffers. Here, the unit is the gigabit per seconds (a few tens or hundreds of Gb/s or even Tb/s). When the switch fabric receives a packet, it stores it in a buffer and at the same time extract a few hundred bits of the header and forwards that to routing processors, a huge pipeline of table lookups and processing, 100% hard-coded in silicon.
After a while, the routing processors spit an answer to the switch fabric to flush or forward the packet with updated data for the variable fields (the TTL for instance, or even the whole header on NAT or multicast), or to create new packets. For instance, ISMP packets on TTL timeout can be completely generated in hardware! The unit there is the 100s of millions of packets per second. Go do that with CPUs... Worst of all, the IPv6 headers are highly variable and that completely screws up pipeline design where it's much better to handle bounded amount of data.
So, on current routers, IPv6 is supported
Oh well
Great; now we can all steal the *BSD IP stack again. :)
Thanks, *BSD, for continuing to be the research arm of the software community...
Will the real Bruce Perens Please Stand Up
Why?
So, what will it take for IPv6 to be the de-facto standard? Will Cisco have to update their software to account for it? Will Microsoft? How will IPv6 integrate in with IPv4? IS FreeBSD's stack popular enough to give IPv6 the push it needs?
smallest functional IP stack I heard of was 20 kilobytes. 7.9 Mbytes of IP stack means someone thinks he's playing on a Win2K box, where that would not be noticeable.
IPv6 is another new technology that will take forever to catch on because of the huge installed base of IPv4.
.PNG's on the web lately? That's because half the time, they still ask for a plug-in.
Seen many INLINE
...and when was that supposed to be the new standard?
I rest my case.
- Slashdot Cynic
An IPv4 stack needn't be that large. There are many IPv4 implementations out there that are suitable for small devices. My own IPv4 stack lwIP is between 10k and 20k (depending on your configuration) and is optimized for using low amounts of RAM. It has hooks for implementing IPv6 as well, and the extra code will probably not be that large.
Moreover, there is no need to implement all of IPv6 in a small device, only the bare bones functionality should suffice.
As a side note, CPUs are getting faster and less power consuming, and memory is getting cheaper so in the near future our cell phones will be nearly as powerful as yesterday's PCs.
Well, of course there is the traditional killer app that can tip the balance real quickly. For example, RIPE (the European IP address agency) received a phone call one day from a cellphone operator that they needed two class A address ranges, and when could they get them?
Of course, those guys were sent back to the drawing board. But if one of the bigger handset manufacturers starts deploying IPV6 (and IPV6 is complete enough to do that right now), the balance of power would shift and a lot of folks would be forced to keep up with the Joneses.
As you say, my concern is with the infrastructure more than with client support. Microsoft has been mentioned a lot in this thread, and I would be greatly surprised if they didn't have something in the wings to at least work around lack of native IPV6 support for existing clients (like 6to4 support).
Bert Driehuis -- All I asked was a friggin' rotatin' chair. Throw me a bone here, people.
I think MS is biding its time to see if there is some way they can benefit from holding back IPv6. Because of the way the IPv4 address space is divided up, we will run out of IP addresses in a world where every person has multiple IP-enabled devices (including cell phones and PDAs). Such a world is just a few years away. MS knows they could prevent a shortage of IP addresses from happening by including IPv6 support in a consumer-level OS, but they are probably waiting to see if there is some way to make more money by letting that happen.
In a few years we may be hearing: "You want your own IP address? You'll have to sign up for MSN, in that case..."
Free Hans!
Well, the 75gxp has a density of 11 gigabits per square inch, while IBM has achieved 150 gigabits per square inch in the lab last summer (thanks to previous poster).
I think the AC might be right: CPRM
Moore's law governs Transistor Density.
If you can explain to me how this relates to Hard Disk Drives, I'll be greatly impressed.
However, if you wish to plot a curve of densities, and create "Pubpib's Law", I'll be all for it.
Will the real Bruce Perens Please Stand Up
They're on both sides of the wall. It's the hackers who make the network in the first place too. It's just someone who is curious and skilled in technical arts. They are the main reason you are probably working on that computer in the first place, and the main reason it is going somewhere. I'm guessing your tie and tight white collar shirt are cutting off circulation to your brain.
--------------------
We already know they're capable of 15.3 Gbits/sq. inch, which means a 100GB drive could be released at that density if IBM used the same number of platters as in the 75gxp.
If I deploy IPv6 on all my home machines, what benifit would there be to me? My ISP doesn't support it, and even if they did, I'm still not sure what benifit there would be until everyone supports it.
I'm a loser baby, so why don't you kill me.
All MS operating systems SINCE 2000 (with the exception of ME) have built-in IPv6 support. Whistler has it, 2000 (all versions) has it.
That is not totally true. Win2k can use IPv6 but install a technology preview of IPv6 that you have to download from the MSDN developer site.
Jun also found and fixed this OpenBSD hole in IPSEC AH IPv4 option handling code...
http://www.openbsd.org/errata.html#ipsec_ah
yesterday.
War crimes, torture, lies, illegal spying... Would someone give Bush a blowjob, already, so he can be impeached?
It has been available to seeded developers for a while: http://developer.apple.com/devnews/devnews052600.h tml#macos
I don't know if it's in the public beta or will be in 1.0
And I quote: "ARIN will not collect subscription fees for those current ARIN IPv4 subscribers who request and qualify for IPv6 address space. ... Those IPv4 subscribers who have already paid fees for IPv6 address space are eligible for a refund of those fees."
What you're saying is opposite from this part of The Case for IPv6:
"IPv6 encodes IP header options in a way that streamlines the forwarding process. Optional IPv6 header information is conveyed in independent "extension headers" located after the IPv6 header and before the transport-layer header in each packet. Most IPv6 extension headers are not examined or processed by intermediate nodes (in contrast with IPv4). This enables a big improvement in the deployability of optional IPv6 features, compared to IPv4 where IP options typically cause a major performance loss for the packet at every intermediate router."
There is an ipv6 TCP/IP stack for windows nt available for download from http://research.microsoft.com/msripv6/.
ISP's *WILL* hand out ipv6 addresses for free, because that's how it's designed. It will be easy for an ISP to get a /64 (that means half the bits will be available for them to assign) which is a size that is larger than the current internet nowadays times itself (due to address wastage).
It is ENTIRELY possible, and will be commonly done, to assign large blocks to each user, so as many devices as they want can be online, AS IT SHOULD BE.
1) T3's are a lot more than that....
2) Your summary is essentially correct, but the root cause of the way ISP's charge is.... that's their business model. They don't care about charging for bandwidth, because the vast majority of their customers have the same usage habits. Someone who actually uses the bandwidth they pay for is a 'bad net citizen' or an 'abuser'.
That is why ISP's will invariably, eventually, shift to a model where you pay for what you use.
I tell you, if @home would come to me when I use lots of bandwidth and say 'look, you use three times the bandwdith of our averagesubscriber... so we want you to pay 3 times as much' I'd probably say 'Okay.. sounds fair'. But they don't, they just cut you off.
Simple fact is that there are a LOT of devices out there that make your little "internet" work every day and no one ever seems to realize how incredibly large this network is.
The fact is the majority of protocols used by routers today have NOT been updated to support IPv6, so even if your little BSD box supports it, the thousands of routers that UUNet/Sprint/ATT/BBN/etc have in place will take a LONG time to be upgraded.
A LOT of protocols make things work, not just TCP and IP.. and if any of you expect ever major internet carrier to completely switch to IPv6 in the next 8 years you are delusional.
Until BGP, OSPF, and IS-IS all FULLY support IPv6 don't expect ANYONE to even begin a migration.
All MS operating systems SINCE 2000 (with the exception of ME) have built-in IPv6 support. Whistler has it, 2000 (all versions) has it.
Its just a matter of what kernel they were working from. 2000's supported it, 98's didnt.
They are already dropping support for 98+98se, I really dont think ME is far behind.
They arent holding ANYTHING up.
GPL'd web-based tradewars themed space game
http://www.ipv6.org/
http://playground.sun.com/pub/ipng/html/ipng-main. html
http://www.ipv6forum.com/
http://www.bieringer.de/linux/IPv6/IPv6-HOWTO/IPv6 -HOWTO.html
Unfortunately, ipv6.org is currently down.
r. ghaffari
(25/M/Baltimore, MD)
You're forgiven. BTW, just testing my new sig' n stuff
So I sez to him, I ain't givin' you no damn three-fity.
It doesn't work that way in the real world. The cops should still come down hard on hackers like this guy 'Itojun'. And what the hell kind of name is that anyway? What's with all these white kids who are 'haxx0r' wannabes calling themselves japanese and other weird names?
For me, the real motive for pushing IPv6 is the adition of QoS directly in the protocol. Why do they need this? Well, they say it is for realtime applications and stuff, but it actually is to give better service to those who pay more, without really increasing the quality of the service (real bandwidth and real (shorter) latency). The current spirit of the Internet (a packet is a packet is a packet) is great because it treats everybody the same way but is no good to make money.
They have telnet up and running on IPv6. That's nice. But what I would like to see is a list of applications that support IPv6.
If I set up an IPv6 network at home, can I set up apache to answer on an IPv6 address? What about mySQL? Postgres? Will Netscape access such addresses?
Duct tape + WD40 => DevOps
It's not totally stupid - one of the problems that does need to be solved by any widespread replacement of the current IPv4 stack is routing table size for the Big Internet, as BGP usage continues to multiply. IPv6 has some support for efficiency and consolidation, but there's still a lot of work to be done.
Bill Stewart
New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
It doesn't work that way -- it has nothing to do with hard drive companies holding out. There are serious technical reasons why this trend can't continue until new, radically different data storage technologies pick up steam.
As data gets more and more tightly packed onto the platters, the energy that holds the magnetic spin on each bit (determining whether it's a 0 or a 1) gets less and less significant, and now it is so close to the ambient thermal energy that bits are randomly flipping and corrupting data.
So they're looking at a lot of different techniques, but instead of my trying to explain them, let me just show you the Scientific American article where this is all coming from.
--------------------------------
Ummm, forgive me, but if IPV6 is anywhere near as large as V4, won't it be a little too large for tiny devices...
:-)
I can just see it - adding IPV6 to my handspring - 100K of onboard apps and 7.9 MB of IP stack...
As bad as WAP is, at least it can be feasibly implemented on small hardware.
Cyano
PS - not to diss IPV6 - thats all good to me, its just not going to solve all our problems
Don't like my sig? I don't either.
It's too bad this article didn't mention that you do not need to wait for your ISP; you can start using IPv6 today with 6to4. Slashdot ran a story about how to configure 6to4 under BSD, and here are the instructions for Linux.
I know someone is going to mention that freenet6 or the 6bone is also easy to use, but they're much less efficient than 6to4.