Peer-to-Peer and IPv6Christian HuitemaArchitect, Windows NetworkingMicrosoft Corporation
The Internet: a great tool to promote mainframes? Hubert Curien, French Minister of Research, 1993: Having a TCP-IP research network is great. Instead of funding a computer center in each university, we will only need a single large one in Paris. This is not exactly the Internet we had in mind back then…
download 4 export 1 announce 2 search 3 Enter NAPSTER, and peer-to-peer file sharing • Export the files in an appropriate folder • Announce the file in the central server • Search for interesting target • Retrieve the file in a peer-to-peer manner Folder Client Client NAPSTER
Peer-to-peer is the basic design of the Internet Recommended reading: End-to-End Arguments in System Design. Jerome H. Saltzer, David P. Reed, and David D. Clark. But this seems to have been lost in the web…
End-to-end vs. Optimization • Short term problem • Connect many computers, • IP address are expensive • Short term optimization • Use a NAT box, • Hide many computers behind one address • Works well for web clients… Today’s optimizations are tomorrow’s roadblocks !
Making NAPSTER work: global addresses Server Alice Bob Carroll
Making NAPSTER work with some firewalls and NAT. Server Alice Bob Carroll
In a world of NAT, NAPSTER cannot work! Server Alice Bob Carroll
Short term: hack the NAT… • Most NATs support some configuration procedure: “DMZ”, “service host” • We can automate this through UPnP • Discover the NAT • Reserve “port=xxxx” to “host=x.y.z.t” • Consequence for applications: • Use “parameterized” port • Read “port on this system” from a configuration file • Use “global address” in exchanges with peers.
In the medium term, we cannot program all NATs Internet ? PC API NAT NAT home ISP By 2002, we will see ISP using layers of NAT. In fact, they do that in China now… We need IPv6 before that!
Address Shortage is Real! Extrapolating the number of DNS registered addresses shows total exhaustion in 2009. But in practice, the “H-ratio” of log10(addresses)/bits reaches 0.26 in 2002.
2002: the end of P2P? As addresses get scarce, ISP can’t get enough allocation, more and more NATs get deployed, and peer-to-peer applications start to break!
We need IPv6, to change the Internet • Addresses are the key • Scarcity: the user is a “client” • Plethora: the user is a “peer” • IPv6 provide enough addressing • 64+64 format: 1.8E+19 networks, units • assuming IPv4 efficiency: 1E+16 networks, 1 million networks per human • 2 networks per sqft of Earth (20 per m2) • This enables peer-to-peer!
We can deploy IPv6 ! • Applications update? • Use IPv6 for the new applications • Stack upgrade? • Available in W2K, Whistler (developers) • ISP waiting for Cisco? • “6to4” allows automatic deployment over v4 • Supported by ICS (Whistler) • Natural evolution of NAT. PC-1 ICS Single v4 IP PC-2 PC-3 Advertise v6 prefix PC-4
2000 2001 2002 When can we get IPv6? Tech. Preview (W2K) Developers (Whistler) Deployment Now!
More Information on IPv6 • Microsoft IPv6 white paper • http://www.microsoft.com/technet/network/ipvers6.asp • http://www.microsoft.com/windows2000/library/howitworks/communications/networkbasics/IPv6.asp • Microsoft IPv6 Tech Preview News • http://www.microsoft.com/PressPass/press/2000/Mar00/IPv6PR.asp • Microsoft IPv6 Tech Preview Kit • http://msdn.microsoft.com/downloads/sdks/platform/tpipv6.asp