IPv6 - wgiss

Download Report

Transcript IPv6 - wgiss

IPv6: The Next Generation
Internet Protocol
CEOS WGISS 18: Beijing, China
September 2004
Dave Hartzell
Computer Sciences Corp, NASA Ames
[email protected]
Agenda
•
•
•
•
•
•
What?
Why?
How?
When?
Where?
Your role as a developer and user
What Is IPv6?
• Internet Protocol version 6 (IPv6) is the
next generation Internet Protocol.
• It is designed to supplement IPv4 and fix
problems with IPv4 and allow for future
growth.
– IPv4 is the IP protocol currently in use on the
Internet today.
Why IPv6?
• IPv6 primarily fixes the major problem we
have with IPv4: Depletion of address
space.
• IPv4 has a 32-bit address space. Each host
on the Internet needs a legitimate, routable
IPv4 address to communicate.
Current IPv4 Addressing
• But why is there a problem with IPv4
addressing?
232 = 4,294,967,296 addresses, right?
Wrong
• Unfortunately, IPv4 has many
inefficiencies, and the 4 billion+ addresses
were ineffectively allocated 30 years ago.
• “Class-full” Routing (per network/org):
– Class A: 16 million 5.x.x.x 255.0.0.0
– Class B: 65,536 hosts 150.150.x.x 255.255.0.0
– Class C: 256 hosts 215.10.10.x 255.255.255.0
“Classes”
• Class A
– 1.0.0.0 to 126.0.0.0 = only 126 class A’s
– Taken by large companies (IBM, AT&T) and
universities (MIT) that didn’t need that much space.
• Class B
– 128.0.x.x to 191.255.x.x
– Given to Government agencies and universities and
Internet Service Providers (ISPs)
• Class C
– 192.1.1.x to 223.255.255.x
– Given to small business, universities and small ISPs
The “Other” Classes
• Class D:
– 224.0.0.0 to 239.255.255.255
– IPv4 Multicast
– Probably wasted space
• Class E:
– 240.0.0.0 to 247.255.255.255
– ??? More wasted space
• 248.0.0.0 to 255.255.255.255 ?
– I don’t know. “Future use”
The Point Is…
• Class-full routing may have seem like a good way
to manage early IPv4 address space, but it could
not keep up with demand.
– So, in the mean-time, “Class-less” routing was adopted,
which dropped the Classes (A,B,C) from the hierarchy.
• Classless allowed organizations like MIT, IBM, etc., to give
back space, while hanging on to most of the original used
space.
Again, Why Do We Need v6?
• Given the allocation trends seen a few years
ago, and with large, international networks
being built, we were in danger of IPv4
address space exhaustion.
Current Internet Routing Table*
* Source: Geoff Houston
Historical and Future IPv4
Growth*
* Source: Geoff Houston
How Does v6 Work?
• IPv6 “addresses” this problem (pun
intended) by increasing the address space
from 32 bits to 128 bits.
• So…
2128 = 3.4 x 1038 addresses, right?
Well, not Quite, but Close
• IPv6 is set up to work with the last 64 bits
of the address as the “host” address.
– This usually maps to the hardware address, or
in the case of Ethernet, the MAC address.
v4 vs. v6
Version
IH
L
Type of
Service
Identification
Time to
Live
Total Length
Flags
Protocol
Destination Address
IPv4
Traffic Class
Payload Length
Flow Label
Next
Header
Hop
Limit
Header Checksum
Source Address
Options
Fragment
Offset
Versio
n
32
bits
Padding
Source Address
128 bits
Destination Address
IPv6
Aggregatable Global Unicast
Addresses
Provider
3
45 bits
Global Routing Prefix
Site
Host
16 bits
SLA
64 bits
Interface ID
001
• Aggregatable Global Unicast addresses are:
–Addresses for generic use of IPv6
–Structured as a hierarchy to keep the aggregation
• See RFC 3513
• From Cisco
Other IPv6 Ranges
• Like IPv4, IPv6 has reserved ranges for
applications like Multicast, Anycast, and
Reserved.
– But, there is still plenty of IPv6 space available.
IPv6 and Legacy Protocols
• The IPv6 standard does not modify any of
the payload protocols like TCP or UDP.
• IPv6 can also translate or tunnel IPv4
– or vice versa: IPv4 can tunnel IPv6
6to4 and ISATAP Addresses
• 6to4 (RFC 3056) – WAN tunneling
/16
2002
/48
Public IPv4
address
/64
SLA
Interface ID
• ISATAP (Draft) – Campus tunneling
/23
2001
Registry
ISP prefix
Site prefix
0410
/32
/48
/64
00 00 5E FE
IPv4 Host address
32 bits
32 bits
So When?
• Given all the development in the early to
mid-’90s, the “demand” for IPv6 has stalled
just a bit.
• It is still needed, especially when we start
inter-networking devices like mobile
phones, autos, PDAs, etc.
• The demand is there NOW, and so is the
technology.
OK, So When?
• Despite the demand, we’re not in that much
danger of running out of IPv4 addresses.
• But, Asian and PacRim networks are having
trouble getting space and are leading the edge of
IPv6 deployment.
• Best estimate is 2020 for current unallocated
space, given recent and historical trends (G.
Houston)
– 2040 when you release the “reserved” spaces.
• My opinion: be cautious of these numbers.
Demands can change, given new applications
and networks.
Where?
• Most modern operating systems (OSes)
have modern, stable IPv6 stacks
–
–
–
–
–
Windows 2000, XP
Mac OS X
Solaris 8, 9
Linux
Open, Free and Net BSDs
IPv4/IPv6 Routers
• Router vendors now support “dual-stack”
routers, which can do IPv4 and IPv6 on the
same interface
– Cisco
– Juniper
– Everyone else who doesn’t have it, better do it
NOW.
Networks
• Most commercial ISPs (in the U.S.) do not
offer IPv6.
– They might offer “tunneled” IPv6.
• Most research and some government
networks support IPv6 “natively”:
– NASA’s NREN Research Network
• Not the NASA production Network
– Internet2 (Abilene), vBNS+, CANARIE, DANTE
(GEANT), APAN?
Your Role As a User
• Most people are currently running OSes
capable of IPv6.
• Most routers are IPv6 capable.
• But, ISPs and carriers might not be capable.
– They need to be pressured into supporting IPv6.
• Your role as an end-user is limited.
Your Role As a Developer
• As a developer, make sure that when
writing networked applications, your team
plans ahead for IPv6.
– Usually, all libraries support IPv6 and IPv4
address methods.
• Don’t get caught in a situation like the Y2K
problem with IPv6!!! Make sure
applications can handle IPv4 and IPv6.
Issues
•
•
•
•
Security
Performance (of stacks and applications)
Adoption
Transparency and migration
Thanks.
David Hartzell
[email protected]