Presentation is loading. Please wait.

Presentation is loading. Please wait.

TCP/IP Protocol Suite 1 Chapter 27 Upon completion you will be able to: Next Generation: IPv6 and ICMPv6 Understand the shortcomings of IPv4 Know the IPv6.

Similar presentations


Presentation on theme: "TCP/IP Protocol Suite 1 Chapter 27 Upon completion you will be able to: Next Generation: IPv6 and ICMPv6 Understand the shortcomings of IPv4 Know the IPv6."— Presentation transcript:

1 TCP/IP Protocol Suite 1 Chapter 27 Upon completion you will be able to: Next Generation: IPv6 and ICMPv6 Understand the shortcomings of IPv4 Know the IPv6 address format, address types, and abbreviations Be familiar with the IPv6 header format Know the extension header types Know the differences between ICMPv4 and ICMPv6 Know the strategies for transitioning from IPv4 to IPv6 Objectives

2 TCP/IP Protocol Suite 2 27.1 IPv6 IPv6 has these advantages over IPv4: 1. larger address space 2. better header format (options separated from base header, makes router faster since options don’t need to be checked) 3. new options (as we will see) 4. allowance for extension (protocol can be extended if necessary) 5. support for resource allocation (new field flow label can be used to designate real time traffic) 6. support for more security (encryption and authentication options provide confidentiality)

3 TCP/IP Protocol Suite 3 Figure 27.1 IPv6 address How many addresses is 2 128 ? 3.4 x 10 38 How big is that? You can give out 1 million addresses every picosecond (10 -12 seconds) … 1.078x10 12

4 TCP/IP Protocol Suite 4 Figure 27.2 Abbreviated address

5 TCP/IP Protocol Suite 5 Figure 27.3 Abbreviated address with consecutive zeros Note: can only use this more abbreviated form once per address. Just align the unabbreviated forms and then insert zeros.

6 TCP/IP Protocol Suite 6 Figure 27.4 CIDR address

7 TCP/IP Protocol Suite 7 Figure 27.5 Address structure Three types of address: unicast, anycast, and multicast. We already know the unicast and multicast addresses. Anycast defines a group of computers with addresses that have the same prefix address. Just need to deliver to one of those in that address range. (This could be used to send an HTTP GET to the nearest of a number of mirror sites that contain the document.) The first part of an IPv6 address is the Type Prefix. This defines the purpose of the IP address.

8 TCP/IP Protocol Suite 8 Table 27.1 Type prefixes for IPv6 addresses Fraction of all addresses

9 TCP/IP Protocol Suite 9 INTERNET PROTOCOL VERSION 6 ADDRESS SPACE [last updated 05 October 2005] IPv6 Prefix Allocation Reference Note 0000::/8 Reserved by IETF [RFC3513] [1] [5] 0100::/8 Reserved by IETF [RFC3513] 0200::/7 Reserved by IETF [RFC4048] [2] 0400::/6 Reserved by IETF [RFC3513] 0800::/5 Reserved by IETF [RFC3513] 1000::/4 Reserved by IETF [RFC3513] 2000::/3 Global Unicast [RFC3513] [3] 4000::/3 Reserved by IETF [RFC3513] 6000::/3 Reserved by IETF [RFC3513] 8000::/3 Reserved by IETF [RFC3513] A000::/3 Reserved by IETF [RFC3513] C000::/3 Reserved by IETF [RFC3513] E000::/4 Reserved by IETF [RFC3513] F000::/5 Reserved by IETF [RFC3513] F800::/6 Reserved by IETF [RFC3513] FC00::/7 Unique Local Unicast [RFC4193] FE00::/9 Reserved by IETF [RFC3513] FE80::/10 Link Local Unicast [RFC3513] FEC0::/10 Reserved by IETF [RFC3879] [4] FF00::/8 Multicast [RFC3513]

10 TCP/IP Protocol Suite 10 Notes: [0] The IPv6 address management function was formally delegated to IANA in December 1995 [RFC1881]. [1] The "unspecified address", the "loopback address", and the IPv6 Addresses with Embedded IPv4 Addresses are assigned out of the 0000::/8 address block. [2] 0200::/7 was previously defined as an OSI NSAP-mapped prefix set [RFC1888]. This definition has been deprecated as of December 2004 [RFC4048]. [3] The IPv6 Unicast space encompasses the entire IPv6 address range with the exception of FF00::/8. [RFC3513] IANA unicast address assignments are currently limited to the IPv6 unicast address range of 2000::/3. IANA assignments from this block are registered in the IANA registry: iana-ipv6-unicast-address-assignments. [4] FEC0::/10 was previously defined as a Site-Local scoped address prefix. This definition has been deprecated as of September 2004 [RFC3879]. [5] 0000::/96 was previously defined as the "IPv4-compatible IPv6 address" prefix. This definition has been deprecated by [RFC-ietf-ipv6-addr-arch-v4-04.txt].

11 TCP/IP Protocol Suite 11 Figure 27.6 Provider-based unicast addresses A provider-based unicast address is generally used by a normal host as a unicast address. (Also known as aggregatable global unicast addresses.) Provider identifier - who provides the Internet access, such as an ISP (variable length field but 16 bits recommended). Subscriber identifier - when an org subscribes to the Internet through a provider, it is assigned a subscriber ID (24 bits recommended). Subnet identifier - identifies a subnet for the subscriber (32 bits recom.). Node identifier - 48 bits recommended, same as NIC address Defines the agency that has registered the address. INTERNIC for North America; RIPNIC for Europe; APNIC for Asian and Pacific countries.

12 TCP/IP Protocol Suite 12 Figure 27.7 Address hierarchy This is just one big hierarchy!

13 TCP/IP Protocol Suite 13 Figure 27.8 Unspecified address All addresses that start with 8 0s are reserved and have special meanings. Here are a few of them: Unspecified address When a host does not know its own address. So it uses 128 0s. Loopback address This address can be used for loopback testing - from application layer to network layer and then back to application layer.

14 TCP/IP Protocol Suite 14 Figure 27.10 Compatible address If you want to simply convert an IPv4 address to an IPv6 address, you can imbed the 32-bit address into the 128 bit address space as below. But this form is not used much anymore, so use …

15 TCP/IP Protocol Suite 15 Figure 27.11 Mapped address You can also do it this way (as a mapped address).

16 TCP/IP Protocol Suite 16 Figure 27.12 Link local address and site local address These address are used if a LAN uses the Internet protocols but is not connected to the Internet for security reasons. Nobody outside an isolated network can send a message to the computers attached to a network using these addresses. These addresses are used if a site with several networks uses the Internet protocols but is not connected to the Internet (also for security reasons).

17 TCP/IP Protocol Suite 17 Figure 27.14 Multicast address Permanent addresses are defined by the Internet authority and can be accessed at all times. Transient addresses are temporary, such as used in a teleconference.

18 TCP/IP Protocol Suite 18 Table 27.5 Comparison between IPv4 and IPv6 packet header

19 TCP/IP Protocol Suite 19 Figure 27.15 IPv6 Packet Format

20 TCP/IP Protocol Suite 20 Figure 27.16 Format of an IPv6 datagram Version - four bits, has the value 6 PRI - Priority field defines the priority of the packet with respect to traffic congestion (also called Traffic Class) Flow label - 24-bit field to provide special handling for a particular data flow (more on this later) Next header - defines the header that follows the base header. Each extension header also contains this field (more on this later)

21 TCP/IP Protocol Suite 21 Table 27.3 Priorities for congestion-controlled traffic If a source can adapt itself to traffic slowdown when there is congestion, the traffic is referred to as congestion-controlled traffic.

22 TCP/IP Protocol Suite 22 Table 27.4 Priorities for noncongestion-controlled traffic These priorities are assigned to those types of traffic that do not adapt well to congestion control techniques. For example, real-time traffic would be assigned these values. Lower priorities for data with more redundancy, such as high- fidelity audio or video. Higher priorities for data with less redundancy, such as low-fidelity audio or video.

23 TCP/IP Protocol Suite 23 Flow Label A flow of packets is a sequence of packets sent from a source to a destination and requires special handling by routers. The combination of source address and flow label value uniquely identifies a flow of packets. Kind of like creating a virtual circuit - router looks in table for flow label to see if it needs to be treated specially. Faster than consulting a routing table, so these packets should move faster. For example, real-time data should benefit from this (will need other protocols such as Real-Time Protocol or Resource Reservation Protocol). Sounds like MPLS, but MPLS is designed for MPLS-based edge routers, whereas flow label is end to end.

24 TCP/IP Protocol Suite 24 Flow Label The flow label is assigned to a packet by the source host. It is a random 24-bit value. A source must not reuse a flow label for a new flow while the existing low is still alive. If a host does not support the flow label, it sets this field to zero. If a router does not support the flow label, it ignores it. All packets belonging to the same flow label have the same source, destination, priority, and options.

25 TCP/IP Protocol Suite 25 Figure 27.17 Extension header format

26 TCP/IP Protocol Suite 26 Table 27.2 Next header codes Note how NextHeader cleverly replaces both the IP options and the Protocol field of IPv4. If there are no extension headers, then next header value tells you what the higher layer protocol is (2,6,17).

27 TCP/IP Protocol Suite 27 Figure 27.18 Extension header types Six different types of extension headers: Let’s take a brief look at each of these.

28 TCP/IP Protocol Suite 28 Figure 27.19 Hop-by-hop extension header option Used when a source needs to pass information (such as management, debugging, or control functions) to all routers visited by the datagram.

29 TCP/IP Protocol Suite 29 Figure 27.20 The format of options in a hop-by-hop option header Note: Only 3 types defined thus far. Pad1 and PadN are used for alignment (some options need to start on 32-bit word boundaries). Jumbo payload informs routers that the payload in this packet is greater than max of 65,535 bytes.

30 TCP/IP Protocol Suite 30 Figure 27.24 Source routing extension header Combines the concepts of the strict source router and the loose source route options of IPv4. Type field defines loose or strict routing.

31 TCP/IP Protocol Suite 31 Figure 27.25 Source routing example

32 TCP/IP Protocol Suite 32 Figure 27.26 Fragmentation Similar concept to IPv4, except where IPv4 the source OR a router can fragment, in IPv6 ONLY the source can fragment.

33 TCP/IP Protocol Suite 33 Figure 27.27 Authentication Can be used to validate the message sender and ensure the integrity of the data. The Security parameter index field defines the algorithm used for authentication. The Authentication data field contains the actual data generated by the algorithm. Many different algorithms can be used for authentication.

34 TCP/IP Protocol Suite 34 Figure 27.29 Encrypted security payload Can be used to encrypt the payload. Security parameter index field defines the type of encryption/ decryption used. Encryption can be implemented in two ways: transport mode and tunnel mode.

35 TCP/IP Protocol Suite 35 Figure 27.30 Transport mode encryption In the transport mode the datagram is first encrypted then encapsulated in an IPv6 packet. Used to encrypt data from host to host. Note that the Base and other headers is not encrypted.

36 TCP/IP Protocol Suite 36 Figure 27.31 Tunnel-mode encryption In the tunnel-mode, the entire IP datagram with its base header and extension headers is encrypted and then encapsulated in a new IP packet using the ESP extension header. Used mostly by security gateways to encrypt data.

37 TCP/IP Protocol Suite 37 Table 27.6 Summary: Comparison between IPv4 options and IPv6 extension headers

38 TCP/IP Protocol Suite 38 27.2 ICMPv6 ICMPv6, while similar in strategy to ICMPv4, has changes that makes it more suitable for IPv6. ICMPv6 has absorbed some protocols that were independent in version 4. The topics discussed in this section include: Error Reporting Query

39 TCP/IP Protocol Suite 39 Figure 27.32 Comparison of network layers in version 4 and version 6 Note how ICMPv6 incorporates IGMP, ICMP, ARP, and RARP!

40 TCP/IP Protocol Suite 40 Figure 27.33 Categories of ICMPv6 messages Same as version 4

41 TCP/IP Protocol Suite 41 Figure 27.34 General format of ICMP messages Type field tells which kind of ICMP message; Code field defines further the kind of the type

42 TCP/IP Protocol Suite 42 Figure 27.35 Error-reporting messages

43 TCP/IP Protocol Suite 43 Table 27.7 Comparison of error-reporting messages in ICMPv4 and ICMPv6

44 TCP/IP Protocol Suite 44 Figures 27.36 to 27.39 Destination unreachable Packet too big Time exceeded Parameter problems Code 0: no path 1: comm. prohibited 2: strict source routing impossible 3: dest unreachable 4: port not available 0: hop limit zero 1: fragments did not arrive 0:error in header 1: error in ext head 2: error in option

45 TCP/IP Protocol Suite 45 Figure 27.40 Redirection message format new field

46 TCP/IP Protocol Suite 46 Figure 27.41 Query messages

47 TCP/IP Protocol Suite 47 Table 27.8 Comparison of query messages in ICMPv4 and ICMPv6 Timestamp request and reply not needed here since TCP does it (and it is rarely used anyway). Address mask request and reply not needed since IPv6 address format allows for 2^32 - 1 different subnets.

48 TCP/IP Protocol Suite 48 Figure 27.42 Echo request and reply messages Recall this is designed for diagnostic purposes. Network managers use this pair to identify network problems. With these they can determine whether two systems can communicate with each other.

49 TCP/IP Protocol Suite 49 Figure 27.43 Router-solicitation and advertisement message formats Recall: router solicitation is used to ask other routers who is out there; router advertisement is returned from a router saying “Here I am”.

50 TCP/IP Protocol Suite 50 Figure 27.44 Neighbor-solicitation and advertisement message formats This pair essentially replaces ARP in IPv6.

51 TCP/IP Protocol Suite 51 Figure 27.46 Group-membership message formats These messages replace IGMP in IPv4 (we did not cover IGMP).

52 TCP/IP Protocol Suite 52 Figure 27.47 Four situations of group-membership operation

53 TCP/IP Protocol Suite 53 27.3 TRANSITION FROM IPv4 TO IPv6 Three strategies have been devised by the IETF to provide for a smooth transition from IPv4 to IPv6. The topics discussed in this section include: Dual Stack Tunneling Header Translation

54 TCP/IP Protocol Suite 54 Figure 27.48 Three transition strategies

55 TCP/IP Protocol Suite 55 Figure 27.48 Three transition strategies A station should run IPv4 and IPv6 simultaneously until all of the Internet uses IPv6. To determine which version to send, the source host queries the DNS. If the DNS returns an IPv4 address, the source host sends an IPv4. If DNS returns an IPv6 address…

56 TCP/IP Protocol Suite 56 Figure 27.49 1: Dual stack

57 TCP/IP Protocol Suite 57 Figure 27.50 2a: Automatic tunneling When an IPv6 address has to pass thru an IPv4 region before reaching an IPv6 destination. Simply layer an IPv4 packet over the IPv6 packet. IPv4 Protocol field set to 41 to denote this layering. Receiving host is running a dual IPv6/IPv4 stack.

58 TCP/IP Protocol Suite 58 Figure 27.51 2b: Configured tunneling Receiving host cannot handle an IPv6-compatible address (one that has been converted from IPv6 to IPv4), so the last IPv4 router removes the IPv4 header.

59 TCP/IP Protocol Suite 59 Figure 27.52 3: Header translation This is what happens when the receiver only understands IPv4. IPv6 header has to be completely converted to IPv4. See next slide for details on this conversion.

60 TCP/IP Protocol Suite 60 Table 27.9 Header translation

61 TCP/IP Protocol Suite 61 Who is using IPv6? Microsoft Windows XP SP2 (disabled by default) Vista Server 2008 (in beta) Cisco Nokia U.S. government (June 2008) NATO and …

62 McGraw-Hill©The McGraw-Hill Companies, Inc., 2000 IPV6 at DePaul Bin Zhang Greg Brewster

63 TCP/IP Protocol Suite 63 Why IPv6? The recent exponential growth of the Internet and the impending exhaustion of the IPv4 address space. The growth of the Internet and the ability of Internet backbone routers to maintain large routing tables. The need for simpler configuration. The need for better support for multiple data delivery service levels (i.e., high-priority, low- delay, real-time) – also called Quality of Service (QoS).

64 TCP/IP Protocol Suite 64 IPv6 Features New header format Large address space Efficient and hierarchical addressing and routing infrastructure Stateless and stateful address configuration Built-in security Better support for QoS

65 TCP/IP Protocol Suite 65 Differences - IPv4 and IPv6 IPv4IPv6 Source and destination addresses are 32 bitsSource and destination addresses are 128 bits No identification of packet flow for QoSQoS handling by routers is indicated using Flow Label field in the IPv6 header Fragmentation is done by both routers and the sending host. Fragmentation is not done by routers, only by the sending host. Header includes a checksum.Header does not include a checksum. Must be configured either manually or through DHCP Does not require manual configuration or DHCP.

66 TCP/IP Protocol Suite 66 IPv6 Flow Label for QoS Flow Label field in IPv6 header indicates whether a packet belongs to a sequence of packets requiring special handling by IPv6 routers – such as: Route table synchronization packets needed to clear up routing problems – requiring highest priority Streaming audio or video packets – requiring low delay variability Voice over IP packets – requiring priority over other data packets In IPv4, this packet flow classification has been done based on the 5-tuple of. However, some of these fields may be unavailable due to fragmentation or encryption. In IPv6, a packet is classified to a certain flow by the triplet. This guarantees that special handling requirements can be met regardless of fragmentation or encryption.

67 TCP/IP Protocol Suite 67 IPv6 Addressing IPv6 Address Syntax 128-bit address is divided along 16-bit boundaries, and each 16-bit block is converted to a 4-digit hexadecimal number and separated by colons. Example: 0010000111011010 0000000011010011 0000000000000000 0010111100111011 0000001010101010 0000000011111111 1111111000101000 1001110001011010 21DA:00D3:0000:2F3B:02AA:00FF:FE28:9C5A Zero Compression Can substitute ‘::’ for any single string of zeros in address For example, FE80:0:0:0:2AA:FF:FE9A:4CA2 becomes FE80::2AA:FF:FE9A:4CA2

68 TCP/IP Protocol Suite 68 IPv6 at DePaul IPv6 services are now activated on all CTI routers and DePaul backbone routers. DePaul has been assigned its own unique IPv6 Global Routing Index to identify us on the global Internet. IPv6 services can be easily activated on any CTI workstation or server.

69 TCP/IP Protocol Suite 69 IPv6 at DePaul DePaul has been assigned the global IPv6 address group 2001:468:1202::0/48 (analogous to our 140.192.0.0/16 network prefix in IPv4), which provides the university with about 1.2 septillion addresses (2^80).

70 TCP/IP Protocol Suite 70 Unicast IPv6 Address Equivalent to public IPv4 address. Same 3-way split as IPv4: Network ID (called Global Routing Prefix in IPv6) is allocated through ICAAN / IANA to assure global uniqueness. Subnet IDs assigned to local subnets by network administrators. Host ID (called Interface ID in IPv6) identifies device interface.

71 TCP/IP Protocol Suite 71 WinXP Example Ipconfig output $ ipconfig /all Ethernet adapter Local Area Connection 5: Connection-specific DNS Suffix. : cstcis.cti.depaul.edu Description........... : Broadcom NetXtreme Gigabit Ethernet Physical Address......... : 00-10-18-0B-2A-DB IP Address............ : 140.192.35.133 Subnet Mask........... : 255.255.255.128 IP Address............ : 2001:468:1202:207:210:18ff:fe0b:2adb IP Address............ : fe80::210:18ff:fe0b:2adb Default Gateway......... : 140.192.35.248 fe80::210:f6ff:fedc:381c DHCP Server........... : 140.192.36.236 DNS Servers........... : 140.192.36.3 140.192.36.4 fec0:0:0:ffff::1 Lease Obtained.......... : Monday, August 29, 2005 3:52:10 PM Lease Expires.......... : Monday, September 05, 2005 3:52:10 PM

72 TCP/IP Protocol Suite 72 IPv6 Address Example 2001:468:1202:207:210:18ff:fe0b:2adb DePaul Global Routing Prefix = 2001:468:1202 Subnet 207 is a CTI subnet within DePaul Interface ID is 210:18ff:fe0b:2adb Global Routing PrefixSubnetInterface ID

73 TCP/IP Protocol Suite 73 IPv6 Interface ID 64-bit Interface ID is derived from the 48- bit Physical address (also called MAC address or Ethernet address). From our example: Physical address = 00-10-18-0B-2A-DB Interface ID = 02-10-18-FF-FE-0B-2A-DB

74 TCP/IP Protocol Suite 74 The Algorithm MAC Address  IPv6 Interface ID

75 TCP/IP Protocol Suite 75 IPv6 Link-Local Address Used to communicate with neighboring nodes on the same subnet. IPv4 has same idea (substitute 0-bits into Network/Subnet fields), but seldom used. Starts with FE80. From our ipconfig example: fe80::210:18ff:fe0b:2adb

76 TCP/IP Protocol Suite 76 IPv6 Site-Local Address Equivalent to IPv4 private address spaces (10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0/16) Starts with FEC0. From our ipconfig example, IPv6-capable DNS server address is: fec0:0:0:ffff::1

77 TCP/IP Protocol Suite 77 References http://www.ipv6.org/ http://www.ipv6forum.com/ http://www.bieringer.de/linux/IPv6/IPv6- HOWTO/IPv6-HOWTO.html http://www.bieringer.de/linux/IPv6/IPv6- HOWTO/IPv6-HOWTO.html http://www.microsoft.com/technet/prodte chnol/winxppro/plan/faqipv6.mspx http://www.microsoft.com/technet/prodte chnol/winxppro/plan/faqipv6.mspx


Download ppt "TCP/IP Protocol Suite 1 Chapter 27 Upon completion you will be able to: Next Generation: IPv6 and ICMPv6 Understand the shortcomings of IPv4 Know the IPv6."

Similar presentations


Ads by Google