Lecture - 12

advertisement
Overview
Last Lecture
» Internet Protocols (3)
» Source: chapter 15
This Lecture
» Internet Protocols (4)
» Source: chapter 15
Next Lecture
» TCP/UDP (1)
» Source: chapter 17
TELE202 Lecture 12 Internet Protocols (4)
1
Lecturer Dr Z. Huang
IPv6
IPv6 - replacement for IP v4
» During development it was called IPng, which
stands for IP Next Generation
Problems of IP (IPv4)
» Address depletion: 2**32=4.3billion
addresses and most organizations apply for
class B network even if they don’t have many
hosts in the network now
» Routing table explosion: currently about 50K
entries in core routers
» Can not meet the requirement of multimedia
applications: no constant bit rate guarantee
» Don’t support host mobility
» Not secure enough
IPv6 is developed to overcome the
above problems and co-exists with
IPv4
IPv6 RFC
» 1752 - Recommendations for the IP Next
Generation Protocol
» 2460 - Overall specification
» 2373 - addressing structure
TELE202 Lecture 12 Internet Protocols (4)
2
Lecturer Dr Z. Huang
IPv6
Major goals of IPv6
» Support billions of hosts, even with inefficient
address allocation
» Reduce the size of the routing tables
» Simplify the protocol, to allow routers to
process packets faster
» Provide better security (authentication and
privacy) than current IP
» Pay more attention to type of service,
particularly for real-time data flow
» Make it possible for a host to roam without
changing its address
» Allow the protocol to evolve in the future
» Permit the old and new protocols to coexist
for years
IPv6 meets the goals fairly well
» IPv6 addresses are 16 bytes long, instead of 4
bytes in IPv4, providing an effectively
unlimited supply of Internet addresses
» IPv6 header contains only 7 fields (versus 13
in IPv4), allowing faster process of packets
» IPv6 has better support for options by using
extension headers
» IPv6 improves security (authentication and
privacy)
» IPv6 pays more attention to type of service
and supports resource allocation
TELE202 Lecture 12 Internet Protocols (4)
3
Lecturer Dr Z. Huang
IPv6 packet header
IPv6 packet header
» Version field(4bits): value 4 for current IP,
value 6 for IPv6
» Traffic class: classes or priorities of packet.
Used in congestion control. Values above 7 is
for real-time or multimedia applications. Low
priority packets will have longer delay when
congestion happens
TELE202 Lecture 12 Internet Protocols (4)
4
Lecturer Dr Z. Huang
IPv6 packet header
IPv6 packet fields
» Flow label field(24bits): Used by hosts
requesting special handling . Allows a source
and destination to set up a pseudoconnection
with particular properties and requirements.
In effect, it attempts to combine the flexibility
of a datagram and virtual circuit
» Payload length field(16bits): tells how many
bytes follow the 40-byte header (max. 64k
bytes long), including all extension headers
and user data
» Next header field(8bits): tells which of the six
extension headers, if any, follows the IPv6
header. If this header is the last IP header, it
tells which transport protocol handler
(TCP/UDP) to pass the packet to
» Hop limit field(8bits): is the same as the timeto-live field in IPv4 and decrements on each
hop. When it hits zero, the packet is dropped.
» The Source/Destination address field contains
16 bytes=128 bits
IP addresses
» 128 bits long
» Assigned to interface. A single interface may
have multiple addresses
» Representation: X:X:X:X:X:X:X:X
– Eight 16-bit piece of hexadecimal values
– e.g.FEDC:BA98:7654:3210:FEDC:BA98
:7654:3210
TELE202 Lecture 12 Internet Protocols (4)
5
Lecturer Dr Z. Huang
IPv6 addresses
Three types of address
» Unicast
– Delivered to a single interface
» Anycast
– Set of interfaces (typically different
nodes)
– Delivered to any one interface
– the “nearest”
» Multicast
– Set of interfaces
– Delivered to all interfaces identified
Discussion of IPv6 address space
» There are 2**128=3*10**38 in total
» If the entire earth, land and water, were
covered with computers, IPv6 would allow
7*10**23 IP addresses per square meter
» In practice, the address space will not be used
efficiently. In the most pessimistic scenario,
there will still be well over 1000 IP addresses
per square meter of the earth’s surface
» In any likely scenario, there will be trillions of
them per square meter
» Only 28% of the address space has been
allocated so far. The other 72% is available
for future purposes not yet thought of
TELE202 Lecture 12 Internet Protocols (4)
6
Lecturer Dr Z. Huang
IPv6 packet structure
Packet structure
TELE202 Lecture 12 Internet Protocols (4)
7
Lecturer Dr Z. Huang
Extension headers
IPv6 implements several extension
headers to allow more options
» Hop-by-hop header: provides information
that each router must examine
» Fragmentation header: provides information
in the event that packet fragments must be
reassembled (intermediate routers can not
fragment which is different from IPv4)
» Routing header: provides additional routing
information
» Destination options header: provides
information for the destination
» Authentication header: for IP authentication
» Security header: indicates the packet’s
payload has been encrypted
Hop-by-hop header fields
» Next header: 8 bits, identifies the type of
header immediately following this header
» Header extension length: 8 bits, length of this
header in 64-bit units, not including the first
64 bits
» Options: a variable-length field consisting of
one or more option definitions
» Each option definition has three subfields
– Option type, 8 bits, identifies the option
– Length, 8 bits, length of the Option Data
– Option data: specification of the option
TELE202 Lecture 12 Internet Protocols (4)
8
Lecturer Dr Z. Huang
Extension headers
Hop-by-hop header fields
» Two options have been specified so far
– Jumbo payload: used to send a packet
longer than 216 = 65,535 octets. In this
case, the Payload Length of the IPv6
header is set to zero, and the Option
Data field is 32 bits long and gives the
length of the packet in octets, excluding
the IPv6 header
– Router alert:Tells the router that the
contents of this packet is of interest to
the router. It is used to provides support
for protocols such as RSPV (chapter 16)
to reserve resources
Fragmentation in IPv6
» Fragmentation only allowed at source
» No fragmentation at intermediate routers
» Node must perform path discovery to find
smallest MTU of intermediate networks
» Source fragments packets to match MTU
» Otherwise the source must limit all packets to
1280 octets, which is the minimum MTU that
must be supported by every network
TELE202 Lecture 12 Internet Protocols (4)
9
Lecturer Dr Z. Huang
Extension headers
Fragmentation header fields
» Next Header: 8 bits, identifies the type of
header immediately following this header
» Reserved: 8 bits, for future use
» Fragmentation offset: 13 bits, indicates where
in the original packet the payload of this
fragment belongs. It is measured in 64-bit
units
» Reserved: 2 bits, reserved for future use
» More flag: 1 bit, 1=more fragments, 0=last
fragment
» Identification: 32 bits, intended to uniquely
identify the original packet
Routing Header
» Contains a list of one or more intermediate
nodes to be visited
» Next Header
» Header extension length: in 64-bit units
» Routing type: identifies a particular Routing
header variant.
» Segments left: number of route segments
remaining
– i.e. number of nodes still to be visited
Destination Options header
» The header carries info to be examined by the
destination
» Same format as Hop-by-Hop options header
TELE202 Lecture 12 Internet Protocols (4)
10
Lecturer Dr Z. Huang
Extension headers
Figures of extension headers
TELE202 Lecture 12 Internet Protocols (4)
11
Lecturer Dr Z. Huang
Autoconfiguration
“Plug and play” feature for IP
address allocation
» Stateless mode: no server is required. The
newly joined host sends a router solicitation
request and the router responds with its
network address. The host uses the network
address and its link address to form its IP
address
» Server mode: The newly joined host sends a
DHCP request to the server which returns the
IP address allocated to the host.
TELE202 Lecture 12 Internet Protocols (4)
12
Lecturer Dr Z. Huang
Other supports
Multimedia support
» Applications can reserve resources in advance
via Flow Label
» All packets belonging to the same flow must
be sent with the same source/destination
address, traffic class, and flow label
Security
» Authentication: MD5 based
» Encryption: payload is encrypted
– Cipher Block Chaining mode of the Data
Encryption Standard (DES-CBC)
TELE202 Lecture 12 Internet Protocols (4)
13
Lecturer Dr Z. Huang
Transition strategies
Dual stack
» Dual stack hosts run both IPv4 and IPv6
» DNS can tell TCP which stack to use
TELE202 Lecture 12 Internet Protocols (4)
14
Lecturer Dr Z. Huang
Transition strategies
Tunneling
» IPv6 packet over IPv4 infrastructure
» Encapsulate an IPv6 packet in an IPv4 packet
» Rely on IPv4-compatible IPv6 addresses
TELE202 Lecture 12 Internet Protocols (4)
15
Lecturer Dr Z. Huang
Transition strategies
Header translation
» A full IPv6 system needs to support a few
IPv4-only systems
» Rely on IPv4-mapped IPv6 addresses
TELE202 Lecture 12 Internet Protocols (4)
16
Lecturer Dr Z. Huang
Summary
Problems in IPv4
Goals of IPv6
IPv6 packet format
IPv6 addresses
IPv6 extension headers
IPv6 auto-configuration
Transition strategies from IPv4 to
IPv6
TELE202 Lecture 12 Internet Protocols (4)
17
Lecturer Dr Z. Huang
Download