160 likes | 279 Views
CSCI 4550/8556 Computer Networks. Comer, Chapter 22: The Future IP (IPv6). Introduction – The Future of IP. The current version of IP – version 4 – is decades old. IPv4 has shown a remarkable ability to adapt to and use new network technologies.
E N D
CSCI 4550/8556Computer Networks Comer, Chapter 22: The Future IP (IPv6)
Introduction – The Future of IP • The current version of IP – version 4 – is decades old. • IPv4 has shown a remarkable ability to adapt to and use new network technologies. • The Internet Engineering Task Force (IETF) proposed an entirely new version of IP to address some specific problems.
The Success of IP • IP has accommodated dramatic changes since its original design. • The basic principles are still appropriate today. • Many new types of hardware have been accommodated. • IP has shown it is able to scale (in most cases) to meet the explosive growth of IP-based networks. • Scaling • Size - from a few tens to a few tens of millions of computers • Speed - from 56Kbps to 1Gbps • Increased frame size in hardware
The Motivation for Change • Address Space Growth • The 32 bit address space allows for over a million networks. • But most are Class C and thus too small for many organizations. • 214 Class B network addresses are already almost exhausted (and exhaustion was first predicted to occur a couple of years ago). • Type of service • Different applications have different requirements for delivery reliability and speed (e.g. video and data). • Current IP has type of service specification that is frequently not implemented (meaning it is ignored even if set appropriately). • Multicast requirements
Names and Version Numbers • The preliminary versions of the new IP were called IP - Next Generation (IPng). • Several different proposals were all called Ipng. • One of these was selected and uses the next available version number (6). • Version 5 was experimental (called “ST”). • The result is IP version 6 (IPv6).
New Features • Address size - IPv6 addresses are 128 bits long. • Header format - entirely different. • Extension headers - Additional information is stored in optional extension headers, followed by the data. • Support for audio and video - flow labels and quality of service allow audio and video applications to establish appropriate connections. • Extensible - new features can be added more easily.
IPv6 Base Header Format • Contains less information than the IPv4 header. • NEXT HEADER points to the first extension header. • FLOW LABEL is used to associate datagrams belonging to a flow or communication between two applications. • Traffic class • Specific path • Routers use FLOW LABEL to forward datagrams along a prearranged path.
IPv6 NEXT HEADER • An IPv6 datagram with a base header and data. • A datagram with a base header, a route header, and data.
Parsing IPv6 Headers • The base header is of fixed size - 40 octets. • The NEXT HEADER field in the base header defines the type of header that follows. • It appears at the end of the fixed-size base header. • Some extension headers are variable sized. • The NEXT HEADER field in an extension header defines its type. • The HEADER LEN field gives the size of an extension header.
Fragmentation • Fragmentation information is kept in a separate extension header. • Each fragment has a base header and (an inserted) fragmentation header. • The entire datagram, including the original header may be fragmented. (a) The original, with three fragmentable parts identified. (b,c,d) The datagram, as fragmented.
Fragmentation and Path MTU • The IPv6 source (not the intermediate routers) are responsible for fragmentation. • Routers simply drop datagrams larger than the network MTU. • The source must fragment each datagram to the size required to reach its destination. • The source must determine the path MTU . • This is the smallest MTU of any network between the source and the destination. • The source then fragments the datagram to fit within that MTU. • To find the path MTU, the source uses path MTU discovery • The source sends a probe message of various sizes until the destination is reached. • The path MTU determination algorithm must be dynamic, as the path may change during the transmission of datagrams.
The Purpose of Multiple Headers • IPv6 uses separate extension headers for: • Efficiency – the header is only as large as necessary. • Flexibility - new headers can be added for new features. • Placing functionality in new headers allows incremental development - processing for new features can be added to test environments; other routers will skip those headers.
IPv6 Addressing • IPv6 uses 128-bit addresses. • As before, each address includes a network prefix and a host suffix. • There are no address classes – the prefix/suffix boundary can fall anywhere. • Special types of addresses: • unicast – a single destination computer. • multicast - multiple destinations, possibly not all at the same site. • anycast – a collection of computers with the same prefix; the datagram is delivered to the one computer in the group that is closest to the sender. • IPv4 broadcast flavors are subsets of multicast • Cluster addressing allows for replication of services (e.g. web servers).
IPv6 Address Notation • 128-bit addresses are unwieldy in dotted decimal format; they require 16 numbers:105.220.136.100.255.255.255.255.0.0.18.128.140.10.255.255 • Groups of 16-bit numbers in hex separated by colons - colon hexadecimal (or colon hex):69DC:8864:FFFF:FFFF:0:1280:8C0A:FFFF • Zero-compression – a series of zeroes in the middle of an IPv6 address is indicated by two colons:FF0C:0:0:0:0:0:0:B1 becomes FF0C::B1 • An IPv6 address with 96 leading zeros is interpreted to hold an IPv4 address.
Summary • The IPv4 basic abstractions have been very successful. • IPv6 carries forward many of those abstractions, but all the details are changed. • 128-bit addresses are used instead of 32-bit addresses. • Base and extension headers instead of “monolithic” headers. • The source performs fragmentation, not the routers. • New types of addresses are provided. • A different way of writing the larger addresses is used.