Presentation is loading. Please wait.

Presentation is loading. Please wait.

Next Generation: IPv6 and ICMPv6

Similar presentations


Presentation on theme: "Next Generation: IPv6 and ICMPv6"— Presentation transcript:

1 Next Generation: IPv6 and ICMPv6
Also called , IPng – “IP next generation” Next Generation: IPv6 and ICMPv6 Recall IPv4 provides host-to-host or hop-to-hop communication Recall UDP/TCP provide end-to-end or process-to-process communication Dr. Clincy

2 Why IPv6 ? 3 major reasons Recall that (1) subnetting, (2) classless addressing, (3) DHCP (dynamic address allocation) and (4) NAT all contributed to better utilization of the 32-bit address space - despite these solutions, address depletion is still an issue There are numerous applications on the rise that require streaming real-time audio and video – and real-time transmission requires minimum delay and reservation-of-resources strategies – and IPv4 isn’t designed for these strategies Over the last few years, there has been a much greater demand for security and for the Internet to accommodate encryption and authentication of data for some applications – and IPv4 doesn’t provide encryption or authentication Dr. Clincy

3 Why IPv6 ? IPv6 was proposed in overcoming IPv4’s deficiencies
IPv6 has these advantages over IPv4: 1. larger address space – 128 bits 2. better header format – options can be inserted or not 3. new options – additional functionalities 4. allowance for extension – protocol can be extended for newer technologies 5. support for resource allocation – enables the Tx to request special handling 6. support for more security – provides encryption and authentication Related protocols were either modified or dropped for IPv6 - ICMP was modified (ICMPv6) - ARP and IGMP in version 4 were combined in ICMPv6 - RARP was dropped - RIP and OSPF were slightly modified Dr. Clincy

4 IPv6 Address Abbreviated address
Uses hexadecimal colon notation, a 296 address increase over IPv4 Abbreviated address Leading zeros can be omitted If consecutive sections consist of zeros only, the zeros can be removed altogether and replaced with double semicolon Only allowed once per address – if there were two runs of zero sections, only one can be abbreviated Dr. Clincy

5 IPv6 Address 3 Categories of IPv6 Addresses
Like IPv4, IPv6 can use CIDR notation 3 Categories of IPv6 Addresses Unicast Address – packet sent to a specific computer Anycast Address – group of computers with addresses that have the same prefix (ie. all belong to the same physical network) Multicast Address – packet sent to a group of computers with different address prefixes Dr. Clincy

6 IPv6 Address Address structure Type prefixes for IPv6 addresses
Means 1/8 of the entire address spaces uses type prefix 010 The address space has many purposes The address space is divided into 2 parts The first part, called “type prefix”, is variable length, defines the purpose by using unique codes Type prefixes for IPv6 addresses Dr. Clincy

7 IPv6 Address Provider-based address structure
Type prefix 010 or provider-based address is generally used by a host as a unicast address Provider-based address structure Variable-length field identifies the provider for Internet access (ie ISP) – recommends this field be 16 bits The provider (ISP) assigns a 24-bit subscriber id to the organization Identifies one of many subnets under the subscriber’s control – recommends using 32-bits Identifies the node connected to the subnet – recommends 48-bits (the same as the 48-bit physical Ethernet address) Defines the address as a provider-based address Indicates one of the three agencies that has registered the address. INTERNIC – North America RIPNIC – Europe APNIC – Asia & Pacific Dr. Clincy

8 IPv6 Address Address hierarchy
Can think of the provider-based address as a hierarchical identity with several prefixes Address hierarchy Dr. Clincy

9 IPv6 Address Unspecified address Loopback address
When the non-prefix part of the address is also zeros – this is called an Unspecified Address – this address is used when the host doesn’t know its own address and sends an inquiry and uses the Unspecified Address to represent itself – the address can not be used as a destination address Loopback address Recall the purpose of the loopback address – an address used by a host to test itself without going into the network. Dr. Clincy

10 IPv6 Address Compatible address
During transition from IPv4 to IPv6, hosts can use their IPv4 addresses embedded in IPv6 addresses. Two formats have been designed for this – (1) compatible and (2) mapped Compatible address 96 bits of zeros followed by 32 bits of IPv4 address Compatible Address is used when a IPv6 Tx wants to send a message to an IPv6 Rx, but needs to pass through a region using IPv4 – the Tx must them use the compatible address while passing through the Ipv4 region Binary D E Hexidecimal Dr. Clincy Decimal

11 IPv6 Address Mapped address
During transition from IPv4 to IPv6, hosts can use their IPv4 addresses embedded in IPv6 addresses. Two formats have been designed for this – (1) compatible and (2) mapped Mapped address 80 bits of zeros followed by 16 bits of ones followed by 32 bits of IPv4 address Mapped Address is used when a IPv6 Tx wants to send a message to an IPv4 Rx. The packet will mostly travel through an IPv6 region with a final destination of IPv4. NOTE: when calculating the CHECKSUM, either the embedded address or total address can be used because the extra 0s or 1s (in multiples of 16) DO NOT have an effect on the checksum calculation. Dr. Clincy

12 IPv6 Address Link local address Site local address
Addresses that use the reserved prefix ( ) are local addresses Link local address Used if the LAN uses the Internet protocols but is not connected to the Internet for security reasons – these addresses do not have a global effect Site local address Used if a site with several networks uses the Internet protocols but is not connected to the Internet for security reasons – these addresses do not have a global effect Dr. Clincy

13 IPv6 Address Multicast address
Addresses used to define a group of hosts instead of just one. Multicast address Defines the group address as either permanent or transient Permanent Address – defined by the Internet authorities and can be accessed at all time Transient Address – is temporary Defines the scope of the group address Dr. Clincy

14 Next Generation: IPv6 and ICMPv6
.. Continuing … Dr. Clincy

15 IPv6 Packet Dr. Clincy

16 Format of an IPv6 datagram
Defines the priority of the packet with respect to traffic congestion (discuss later) 24-bit field that provide special handling for a particular flow of data (discuss later) Defines the version (IPv6 = 6) 8-bit field defining the header that follows the base header (discuss later) 8-bit field serves as the Time-To-Live (TTL) 2-byte field defines the length of the data excluding the base header Source address Usually identifies the destination address – if Source Routing is used, identifies the address of the next router Dr. Clincy

17 Format of an IPv6 datagram
Next Header The next header is either one of the optional extension headers used by IPv6 or the header of an encapsulated packet such as UDP or TCP. Each extension header also contains the next header field. For version 4, this field was called the protocol. Next header codes Dr. Clincy

18 Format of an IPv6 datagram
Priority Defines the priority of each packet with respect to other packets from the same source. IPv6 divides traffic into two categories: congestion-control and non-congestion-control Priorities for congestion-controlled traffic Process does not define a priority If a source adapts itself to traffic slowdown when there is congestion, the traffic is called congestion-control traffic – example, TCP sliding window protocol Defines data delivered in the background User is not waiting for the data (ie. ) Protocol that transfer data while the user is waiting to receive the data (ie FTP, HTTP) User interaction is needed (ie. TELNET) Dr. Clincy Protocols that control traffic (ie. OSPF, RIP, SNMP)

19 Format of an IPv6 datagram
Priority Defines the priority of each packet with respect to other packets from the same source. IPv6 divides traffic into two categories: congestion-control and non-congestion-control Priorities for non congestion-controlled traffic Refers to traffic that expects minimum delay – dropping packets is not desired – retransmission is impossible. Examples would be realtime audio and video Dr. Clincy

20 IPv6 Packet Flow Label Recall how a routing-algorithm table lookup is performed for a packet using a router. Sequence of packets sent from a Tx to Rx needing “special handling” is called a flow Combo of the Tx address and a flow label uniquely identifies a flow of packets The flow label is assigned to the packet by the Tx – randomly generated number From a router perspective, a flow is a sequence of packets sharing the characteristics (using same resources, same security, , etc) If the packet has a flow number, the router consults it flow label table for the next hop This speeds up the process – much faster than going through the routing algorithm approach Flow label approach is good for apps needing to reserve bandwidth and buffer space beforehand in minimizing delays (ie. realtime audio and video) Dr. Clincy

21 Comparison between IPv4 and IPv6 packet header
Dr. Clincy

22 IPv6 Packet Extension header format
The base header is 40 bytes – in providing the IPv6 datagram more functionality, up to 6 extension headers can be added There are 6 different extension header types Dr. Clincy

23 Hop-by-hop option header format
Option used when the Tx needs to pass info to every router visited by the datagram (ie mgmt, debugging or control functions) The various options for the Hop-by-Hop option are (1) Pad1, (2) PadN and (3) Jumbo payload. The general format is Dr. Clincy

24 Pad1 1 byte long and used for alignment or padding – some options need to start at specific bit. Pad1 doesn’t contain the option length field nor the data field – simply consists of the code field with all bits set to zeros. The Pad1 option can be inserted anywhere. Action is 00 (skip over this option) Change bit is 0 (does not change in transit) Type is (Pad1) Dr. Clincy

25 PadN Similar to Pad1 however, PadN is used when 2 or bytes are needed for alignment or padding. Length contains the number of padding bytes Data contains the zero padding bytes Action is 00 (skip over this option) Change bit is 0 (does not change in transit) Type is (PadN) Dr. Clincy

26 Jumbo payload Maximum size of an IP payload is 65,535 bytes – but suppose a longer payload is needed – use the Jumbo Payload to define the longer payload Action is 11 , change bit is 0, type is  Code = Contains the size-in-bytes of this field (static 4 bytes) Contains the size of the payload – can be a max size of because it can be a max of 32 bits (4x8) Dr. Clincy

27 Source Routing Recall the concepts of strict source routing and loose source routing for IPv4 – IPv6 combines the two. Indicates the # hops needed to reach destination Defines Source routing Defines Strict (must follow exactly) or Loose (in addition to the routers in the header, can visit other routers) For this option, the destination address is the next hop (versus the Rx) and it is not constant Dr. Clincy

28 Fragmentation Recall the concept of fragmentation for IPv4 – IPv6 fragmentation is similar however, ONLY the Tx can fragment – the TX uses Path MTU Discovery technique in finding the smallest MTU across the path – then it fragment based on this If the Tx does not use the Path MTU Discovery technique, it fragments to 576 bytes or smaller – the minimum size MTU Dr. Clincy

29 Authentication Authentication extension header (1) validates the Tx and (2) ensures the integrity of the data – making sure the Tx is genuine and making sure the data sent wasn’t altered. Identifies which authentication algorithm is used Contains the data generated from the algorithm The way the authentication data is generated by the TX is by passing the key first, then the IP datagram with the changing and authentication fields removed, and them passing the key again Using the secret key, the RX performs the same operation and if there is a match, fine, if there is no match, the datagram is discarded. Dr. Clincy

30 Encrypted Security Payload
ESP extension header provides confidentiality and guards against eavesdropping. 32-bit word that defines the type of encryption/decryption used Encrypted data with any extra parameters needed by the algorithm Encryption can be implemented in 2 ways: transport mode or tunnel mode For the transport mode, a TCP segment or UDP datagram is first encrypted and then encapsulated in the IPv6 packet – typically used to encrypt from host to host For the tunnel mode, entire datagram with base header and extension header is encrypted and then encapsulated into a NEW datagram – most used by security gateways Dr. Clincy

31 Destination option Option used when the Tx needs to pass info to the Rx only Dr. Clincy

32 Comparison between IPv4 options and IPv6 extension headers
Dr. Clincy

33 Next Generation: IPv6 and ICMPv6 final …
Dr. Clincy

34 Comparison of network layers in version 4 and version 6
Recall that ICMP is used for: Error reporting Host and management queries Related protocols were either modified or dropped for IPv6 - ICMP was modified (ICMPv6) - ARP and IGMP in version 4 were combined in ICMPv6 - RARP was dropped - RIP and OSPF were slightly modified Dr. Clincy

35 Categories of ICMPv6 messages
- Still divided into 2 categories Report problems that a router or a host (destination) may encounter when it processes an IP packet. Help a host or network manager get specific info from a router or another host. New New Dr. Clincy

36 General format of ICMP messages
First 4 bytes are common to all Type – type of message Code – reason for the particular message type Checksum For error messages, this carries info for finding the original packet that had the error For query messages, this carries extra info based on the type of the query Dr. Clincy

37 Comparison of error-reporting messages in ICMPv4 and ICMPv6
Dr. Clincy

38 Destination-unreachable message format
Same as in version 4 Used when a router cannot route a datagram or a host cannot deliver a datagram So the datagram is dropped and the host or router sends this message Dr. Clincy

39 Packet-too-big message format
New in version 6 Router receives a datagram larger than the MTU So the datagram is dropped and the host or router sends this message to the source Dr. Clincy

40 Time-exceeded message format
Same as in version 4 When the hop limit is violated So the datagram is dropped and the host or router sends this message to the source The only difference is that the type is 3 Dr. Clincy

41 Parameter-problem message format
Same as in version 4 When a router or host discovers ambiguous or missing value in any field Datagram is dropped and this error message is sent The only differences are that the type is 4 and the size of the offset was increased to 4 bytes Dr. Clincy

42 Redirection message format
Same as in version 4 When a host sends a datagram to the wrong router The datagram IS NOT dropped – but rather “redirected” to the correct router The only differences are: It accommodates the larger IPv6 addresses Has an option to let the host know the physical address of the target router Dr. Clincy

43 Comparison of query messages in ICMPv4 and ICMPv6
Dr. Clincy

44 Echo request and reply messages
Same as in version 4 Used to identify network problems The only difference is that the type was changed to 128 or 129 Dr. Clincy

45 Router-solicitation and advertisement message formats
Same as in version 4 Used by host to determine if routers are alive and functioning The only differences are: (1) it can announce its physical address, (2) router can announce the MTU size, and (3) allows the router to define valid lifetime Dr. Clincy

46 Neighbor-solicitation and advertisement message formats
New in version 6 Performs IPv4’s ARP function Used to find the physical address of the Rx (given the network address of the Rx) The only option announces the sender physical address for convenience of the Rx Dr. Clincy

47 Four situations of group-membership operation
Group-membership message formats New in version 6 Performs IPv4’s IGMP function Four situations of group-membership operation Dr. Clincy

48 TRANSITION FROM IPv4 TO IPv6
Three strategies have been devised by the IETF to provide for a smooth transition from IPv4 to IPv6. 1. Dual Stack 2. Tunneling 3. Header Translation Dr. Clincy

49 Dual stack All host have both IPv4 and IPv6 protocols running
The host would query the DNS in determining the type of address (ie IPv4 or IPv6) Depending on the type of address, the host would invoke the corresponding IP version Dr. Clincy

50 Tunneling Automatic Tunneling Configured tunneling
Given an IPv6 Tx wants to send a packet to an IPv6 but needs to traverse across an IPv4 network – the IPv6 packet can be encapsulated into the IPv4 packet in traversing across the IPv4 network and “unpackaged” after reaching across the IPv4 Automatic Tunneling If the Rx is IPv6, automatic tunneling is perform and the “compatible IPv6” address is used (recall this) Configured tunneling If the Rx doesn’t support a compatible IPv6 address, the initial IPv4 router uses it address as the source address And the final IPv4 router address is used as the destination address The final IPv4 router performs the decap and send the packet on the IPv6 Rx Dr. Clincy

51 Header translation Header Translation will be used when the majority of the Internet is IPv6 with some systems still using IPv4. When the final destination is IPv4, tunneling will not work because the Rx only understands IPv4 Therefore, the IPv6 header must be translated to an IPv4 header Header translation uses the “mapped address” (recall) to translate IPv6 address to a IPv4 address Some of the rules used in the translation are: Dr. Clincy


Download ppt "Next Generation: IPv6 and ICMPv6"

Similar presentations


Ads by Google