Netprog: IPv61 IPv6 Refs: Chapter 10, Appendix A.

Slides:



Advertisements
Similar presentations
IPv6 The New Internet Protocol Integrated Network Services Almerindo Graziano.
Advertisements

IPv6 Keith Wichman. History Based on IPv4 Based on IPv4 Development initiated in 1994 Development initiated in 1994.
1 IPv6 5A7CE IP Next Generation (IPv6) what?what? why?why? when?when?
1 Features of IPv6 Larger Address Extended Address Hierarchy Flexible Header Format Improved Options Provision For Protocol Extension Support for Auto-configuration.
1 May, 2007: American Registry for Internet Numbers (ARIN) “advises the Internet community that migration to IPv6 numbering resources is necessary for.
The Future of TCP/IP Always evolving: –New computer and communication technologies More powerful PCs, portables, PDAs ATM, packet-radio, fiber optic, satellite,
Computer Networks20-1 Chapter 20. Network Layer: Internet Protocol 20.1 Internetworking 20.2 IPv IPv6.
1 IPv6. 2 Problem: 32-bit address space will be completely allocated by Solution: Design a new IP with a larger address space, called the IP version.
IPv6. Major goals 1.support billions of hosts, even with inefficient address space allocation. 2.reduce the size of the routing tables. 3.simplify the.
CE363 Data Communications & Networking Chapter 7 Network Layer: Internet Protocol.
IPv6 Victor T. Norman.
OverView Over View Introduction to IPv6Introduction to IPv6 IPv4 and IPv6 ComparisonIPv4 and IPv6 Comparison Current issues in IPv4Current issues in IPv4.
Socket Programming with IPv6. Why IPv6? Addressing and routing scalability Address space exhaustion Host autoconfiguration QoS of flow using flowlabel.
COS 461 Fall 1997 Routing COS 461 Fall 1997 Typical Structure.
20.1 Chapter 20 Network Layer: Internet Protocol Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
IPv4 - The Internet Protocol Version 4
Chapter 22 IPv6 (Based on material from Markus Hidell, KTH)
IPv4 and IPv6 Interoperability Chap 12. IPv6 Objectives  Expanded Addressing Capabilities  Header Format Simplification  Improved Support for Extensions.
1 Internet Protocol Version 6 (IPv6) What the caterpillar calls the end of the world, nature calls a butterfly. - Anonymous.
IP Version 6 Next generation IP Prof. P Venkataram ECE Dept. IISc.
2: Comparing IPv4 and IPv6 Rick Graziani Cabrillo College
1 Chapter 3 TCP and IP. Chapter 3 TCP and IP 2 Introduction Transmission Control Protocol (TCP) Transmission Control Protocol (TCP) User Datagram Protocol.
IP Version 6 (IPv6) Dr. Adil Yousif. Why IPv6?  Deficiency of IPv4  Address space exhaustion  New types of service  Integration  Multicast  Quality.
The Network Layer Chapter 5. The IP Protocol The IPv4 (Internet Protocol) header.
Transition Mechanisms for Ipv6 Hosts and Routers RFC2893 By Michael Pfeiffer.
Wolfgang EffelsbergUniversity of Mannheim1 IP Version 6 The Next-Generation IP Protocol Wolfgang Effelsberg University of Mannheim September 2001.
TDC561 Network Programming Camelia Zlatea, PhD Week 9: IPv6 IPv6 Client-Server Programming.
CS 6401 IPv6 Outline Background Structure Deployment.
1 IPv6 Refs: Chapter 10, Appendix A. 2 IPv6 availability Generally not part of O.S. Available in beta for many operating systems. 6-Bone is experimental.
1Group 07 IPv6 2 1.ET/06/ ET/06/ ET/06/ EE/06/ EE/06/ EE/06/6473 Group 07 IPv6.
1 Netprog 2002 TCP/IP TCP/IP Transmission Control Protocol / Internet Protocol Based on Notes by D. Hollinger.
© 2009 Pearson Education Inc., Upper Saddle River, NJ. All rights reserved. © The McGraw-Hill Companies, Inc. IP version 6 Asst. Prof. Chaiporn Jaikaeo,
CSE4213 Computer Networks II
Fall 2005Computer Networks20-1 Chapter 20. Network Layer Protocols: ARP, IPv4, ICMPv4, IPv6, and ICMPv ARP 20.2 IP 20.3 ICMP 20.4 IPv6.
Lecture 3 Overview. Protocol An agreed upon convention for communication both endpoints need to understand the protocol. Protocols must be formally defined.
CS 6401 IPv6 Outline Background Structure Deployment.
Internetworking Internet: A network among networks, or a network of networks Allows accommodation of multiple network technologies Universal Service Routers.
The New Internet Protocol
1 Network Layer Lecture 16 Imran Ahmed University of Management & Technology.
CSC 600 Internetworking with TCP/IP Unit 7: IPv6 (ch. 33) Dr. Cheer-Sun Yang Spring 2001.
Network Layer4-1 IP: Internet Protocol r Datagram format r IPv4 addressing r DHCP: Dynamic Host Configuration Protocol r NAT: Network Address Translation.
IPv4 to IPv6 Group A2 - Roland Hollis - EJ Chambers - Rachit Gupta.
Chapter 20 Network Layer: Internet Protocol
4: Network Layer4b-1 IPv6 r Initial motivation: 32-bit address space completely allocated by r Additional motivation: m header format helps speed.
Introduction to IPv6 ECE4110. Problems with IPv4 32-bit addresses give about 4,000,000 addresses IPv4 Addresses WILL run out at some point – Some predicted.
Chapter 27 IPv6 Protocol.
1 Review – The Internet’s Protocol Architecture. Protocols, Internetworking & the Internet 2 Introduction Internet standards Internet standards Layered.
Copyright 1999, S.D. Personick. All Rights Reserved. Telecommunications Networking II Lecture 35 Emerging Protocols Tanenbaum: pp
CSE5803 Advanced Internet Protocols and Applications (13) Introduction Existing IP (v4) was developed in late 1970’s, when computer memory was about.
Lect1..ppt - 01/06/05 CDA 6505 Network Architecture and Client/Server Computing Lecture 3 TCP and IP by Zornitza Genova Prodanoff.
Chapter 3 TCP and IP 1 Chapter 3 TCP and IP. Chapter 3 TCP and IP 2 Introduction Transmission Control Protocol (TCP) User Datagram Protocol (UDP) Internet.
Department of Computer Science Southern Illinois University Edwardsville Spring, 2010 Dr. Hiroshi Fujinoki CS 547/490 Network.
Network Layer Protocols COMP 3270 Computer Networks Computing Science Thompson Rivers University.
IP Fragmentation. Network layer transport segment from sending to receiving host on sending side encapsulates segments into datagrams on rcving side,
20.1 Chapter 20 Network Layer: Internet Protocol Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
IPv6 Internet Protocol, Version 6 Yen-Cheng Chen NCNU
Chapter 22 Next Generation IP
Internet Protocol Version 6 Specifications
Chapter 3 TCP and IP Chapter 3 TCP and IP.
Next Generation: Internet Protocol, Version 6 (IPv6) RFC 2460
The New Internet Protocol
LESSON 3.3_A Networking Fundamentals Understand IPv6 Part 1.
The New Internet Protocol
Guide to TCP/IP Fourth Edition
CSCI {4,6}900: Ubiquitous Computing
Chapter 20. Network Layer: IP
Refs: Chapter 10, Appendix A
IPv6, MPLS.
Internet Protocol version 6 (IPv6)
Chapter 4: outline 4.1 Overview of Network layer data plane
Presentation transcript:

Netprog: IPv61 IPv6 Refs: Chapter 10, Appendix A

Netprog: IPv62 IPv6 availability Generally available with (new) versions of most operating systems. –BSD, Linux 2.2 Solaris 8 An option with Windows 2000/NT Most routers can support IPV6

Netprog: IPv63 IPv6 Design Issues Overcome IPv4 scaling problem –lack of address space. Flexible transition mechanism. New routing capabilities. Quality of service. Security. Ability to add features in the future.

Netprog: IPv64 IPv6 Headers Simpler header - faster processing by routers. –No optional fields - fixed size (40 bytes) –No fragmentation fields. –No checksum Support for multiple headers –more flexible than simple “protocol” field.

Netprog: IPv65 IPv4 Header VERSHL Fragment Offset Fragment LengthService Datagram IDFLAG TTLProtocolHeader Checksum Source Address Destination Address Options (if any) Data 1 byte 4 for IPv4

Netprog: IPv66 IPv6 Header VERSPRIO Hop Limit Flow Label Payload LengthNext Header 1 byte 6 for IPv6 Source Address (128 bits - 16 bytes) Dest. Address (128 bits - 16 bytes)

Netprog: IPv67 IPv6 Header Fields VERS: 6 (IP version number) Priority: will be used in congestion control Flow Label: experimental - sender can label a sequence of packets as being in the same flow. Payload Length: number of bytes in everything following the 40 byte header, or 0 for a Jumbogram.

Netprog: IPv68 IPv6 Header Fields Next Header is similar to the IPv4 “protocol” field - indicates what type of header follows the IPv6 header. Hop Limit is similar to the IPv4 TTL field (but now it really means hops, not time).

Netprog: IPv69 Extension Headers Routing Header - source routing Fragmentation Header - supports fragmentation of IPv6 datagrams. Authentication Header Encapsulating Security Payload Header

Netprog: IPv610 IPv6 Addresses 128 bits - written as eight 16-bit hex numbers. 5f1b:df00:ce3e:e200:0020:0800:2078:e3e3 High order bits determine the type of address. The book shows the breakdown of address types.

Netprog: IPv611 IPv6 Aggregate Global Unicast Address 001TLA IDNLA IDSLA IDInterface ID TLA: top-level aggregation NLA: next-level SLA: site-level Interface ID is (typically) based on hardware MAC address

Netprog: IPv612 IPv4-Mapped IPv6 Address IPv4-Mapped addresses allow a host that support both IPv4 and IPv6 to communicate with a host that supports only IPv4. The IPv6 address is based completely on the IPv4 address.

Netprog: IPv613 IPv4-Mapped IPv6 Address 80 bits of 0s followed by 16 bits of ones, followed by a 32 bit IPv4 Address: IPv4 AddressFFFF 80 bits32 bits16 bits

Netprog: IPv614 Works with DNS An IPv6 application asks DNS for the address of a host, but the host only has an IPv4 address. DNS creates the IPv4-Mapped IPv6 address automatically. Kernel understands this is a special address and really uses IPv4 communication.

Netprog: IPv615 IPv4-Compatible IPv6 Address An IPv4 compatible address allows a host supporting IPv6 to talk IPv6 even if the local router(s) don’t talk IPv6. IPv4 compatible addresses tell endpoint software to create a tunnel by encapsulating the IPv6 packet in an IPv4 packet.

Netprog: IPv616 IPv4-Compatible IPv6 Address IPv4 Address bits32 bits16 bits 80 bits of 0s followed by 16 bits of 0s, followed by a 32 bit IPv4 Address:

Netprog: IPv617 Tunneling (done automatically by kernel when IPv4-Compatible IPv6 addresses used) IPv6 Host IPv6 Host IPv4 Routers IPv6 Datagram IPv4 Datagram

Netprog: IPv618 IPv6 Sockets programming New address family: AF_INET6 New address data type: in6_addr New address structure: sockaddr_in6

Netprog: IPv619 in6_addr struct in6_addr { uint8_t s6_addr[16]; };

Netprog: IPv620 sockaddr_in6 struct sockaddr_in6 { uint8_tsin6_len; sa_family_tsin6_family; in_port_tsin6_port; uint32_tsin6_flowinfo; struct in6_addrsin6_addr; };

Netprog: IPv621 Dual Server In the future it will be important to create servers that handle both IPv4 and IPv6. The work is handled by the O.S. (which contains protocol stacks for both v4 and v6): –automatic creation of IPv6 address from an IPv4 client (IPv4-mapped IPv6 address).

Netprog: IPv622 IPv4 client IPv4 client TCP IPv4 Datalink IPv6 client IPv6 client TCP IPv6 Datalink IPv6 server IPv6 server TCP Datalink IPv4 IPv6 IPv4-mapped IPv6 address

Netprog: IPv623 IPv6 Clients If an IPv6 client specifies an IPv4 address for the server, the kernel detects and talks IPv4 to the server. DNS support for IPv6 addresses can make everything work. –getaddrinfo() returns an IPv4 mapped IPv6 address for hosts that only support IPv4.

Netprog: IPv624 IPv6 - IPv4 Programming The kernel does the work, we can assume we are talking IPv6 to everyone! In case we really want to know, there are some macros that determine the type of an IPv6 address. –We can find out if we are talking to an IPv4 client or server by checking whether the address is an IPv4 mapped address.