Introduction to IPv6


Published on

  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Established in 1988, Huawei Technologies is an innovative and customer-oriented global ICT (Information and Communication Technology) company that provides high quality products, solutions, and services. (Huawei is fully owned by its staff. In other words, employees are the owners of this company. That’s why employees work so hard and get so committed to their work.) By September 2005, Huawei has over 35,000 employees, 90% of them with a bachelor's degree or higher and over 48% people (about 16,800) devoted to R&D. Each year, Huawei invests no less than 10% of its revenue on R&D. This ensures that Huawei is a leading player in technology and to meet our customers’ demands very quickly. Huawei’s full product portfolio covers wireless network products (UMTS/HSDPA, CDMA2000, GSM/GPRS/EDGE and WiMAX), network products (NGN, xDSL, optical transmission, data communications), application and software products (IN, mobile data, OSS/BSS, CDN/SAN), and terminals. We are becoming a leading global supplier with products deployed in more than 90 countries, including the US, the UK, France, Portugal, Russia, Brazil, Singapore and Thailand, and serving 22 of the world’s top 50 operators Our last year’s contract sales reached 5.58 billion USD. In the first half of 2005, our contract sales reached over US$4.1 billion, an increase of 85% over last year, over 62% of which (US$2.47 billion) is from international markets.
  • This slide shows Huawei’s HR (Human Resources) layout. Among our 35,000 staff members, 90% of employees hold bachelor's degree or higher. In R&D, we have a pre-research department to keep abreast with the latest technologies. Each year, 10% of our total R&D investment is put into pre-research. As for marketing, sales and customer service, we invest 38% of our staff in this area, as we understand that customer satisfaction is, and should be, the only benchmark to evaluate our work performance.
  • In order to support our global operations, we have established our global sales and after-sales centers in the global market, including eight regional headquarters and over 70 branch offices outside China: they are located in North America, South America, CIS (the Commonwealth of Independent States), Western Europe, Eastern Europe, North Africa & Middle East, Southern Africa and Asia Pacific. To ensure customer-satisfied maintenance services, we have built a 3-Level Technical Support Service System, ranging from the Headquarters, Regional Headquarters and each single country or region. According to the Gallup survey, Huawei has been holding the No.1 position in terms of service quality and customer satisfaction for many years in the Chinese market. In the international market, we put high priority on improving our customer service. We have invested a lot in after-sales service to ensure high-level service in order to build a long-term partnership with our customers. According to the most recent survey done by Heavy Reading, a London-based research organization under the LightReading group, Huawei has won 16.7% customer recognition in customer service and support in early 2005 compared with the less than 1% in their last survey in autumn of 2003, ranking No.4 among all the worldwide vendors.
  • Huawei has established a complete set of documented processes for all business procedures . Huawei QMS is seamless ly integrated with main business pro cedures such as Integrated Product Development, IPD, Integrated Supply Chain, ISC, Customer Service, and so on. Customer requirements from CRM (Customer Relationship Management) process is collected by OR process and is analyzed by MM process. MM drive s the IPD process to develop new product. Customer contracts from CRM process is inputted in to the ISC (Integrated Supply Chain) process which man ages sourcing, manufactur ing and logistic s. The CS (Customer Service) process manage s installation, commissioning, spare part s and customer training.
  • Huawei’s major development strategy includes four points. 1. Serving our customers is the only reason why Huawei exists; Customer demand is the fundamental driving force of our development. 2. High quality, excellent service, low operating costs, and giving top priority to meeting customer requirements to enhance their competitiveness and profitability. 3. Continuously performing management transformation to realize efficient process-based organization operation for ensuring quality end-to-end delivery. 4. Developing with our peers in the industry as both competitors and partners to jointly create a favorable environment and share the benefits of the value chain.
  • These slides were prepared in January, 2001.
  • Overview of Internet Protocol version 6 Current status of IPv6 specifications, implementations, and transition tools Not Cisco specific! Background Header formats Packet size issues Addressing & routing Security Quality of service Mobility ICMPv6 & neighbor discovery Effects on higher layers IPv4-IPv6 coexistence & transition Current status
  • IPv4 and ST were both specified in the late 1970’s. ST was a complementary protocol to IP, providing a connection-oriented internetwork service that was used to support early experiments in Internet audio/video teleconferencing. SIP[P], CATNIP, Pip, and TUBA were the four candidates considered in the early 1990’s by the IETF for the new IP. SIPP was the “winner”, after it was changed from having 64-bit addresses to 128-bit addresses. SIP = Simple Internet Protocol SIPP = Simple Internet Protocol Plus CATNIP = Common Address Technology for Next-Generation IP Pip = Paul’s IP? TUBA = TCP and UDP with Bigger Addresses (aka CLNP, the OSI Connectionless Network Layer Protocol)
  • The IETF first recognized the problem of eventual IPv4 address exhaustion around 1990, and predicted we had about ten years to go, based on extrapolation of growth to that point (before the Web!). Indeed, it is only in the past year that the “IP address crunch” has become widely acknowledged. Note: We don’t expect there to be a day when the last IPv4 address is handed out; rather, they will just continue to become harder and harder to obtain, i.e., effectively running out, if not technically.
  • “ IPng” stands for IP Next Generation, and was the working name for the new IP in the early phase of its development.
  • IPsec = the IP-layer security protocols, ESP (Encapsulating Security Payload) and AH (Authentication Header), which are defined for both IPv4 and IPv6. These protocols allow receivers to detect and discard packets that have been modified in transit, e.g., by bad guys or by transmission errors. Unfortunately, NATs work by modifying packets in transit…
  • Note that Quality of Service is not one of the benefits of IPv6 over IPv4, despite what you may have heard. Both versions of IP have exactly the same QoS features defined. The only difference is the presence of the Flow Label field in IPv6, which allows more efficient packet classification by routers, but this is really a minor implementation optimization, rather than a significant new QoS feature.
  • Overview of Internet Protocol version 6 Current status of IPv6 specifications, implementations, and transition tools Not Cisco specific! Background Header formats Packet size issues Addressing & routing Security Quality of service Mobility ICMPv6 & neighbor discovery Effects on higher layers IPv4-IPv6 coexistence & transition Current status
  • This is the general form of Global Unicast Addresses; some more specific forms are shown on the next two slides. TLAs are intended to be assigned to large, “tier-1” IP Service Providers (and perhaps, some day, to multi-ISP exchanges, such an an exchange serving a geographical region) One or more NLA fields are be used by TLAs to number their attached down-stream providers and/or end-subscriber sites. The SLA* field is used by end-subscriber sites to number their internal subnets. Very large sites might create a hierarchy of subnets within the SLA* field. The Interface ID field is used to number individual nodes (interfaces, actually) attached to a specific subnet. IPv6’s address auto-configuration technique depends on having the Interface ID field be 64-bits wide. The currently-proposed address allocation policy assigns a 16-bit SLA* field to every subscriber site (or, in other words, each subscriber is assigned a /48 prefix), but this policy is subject to change some day, so you should not assume a fixed boundary between the NLA* and SLA* fields.
  • Current LANs like Ethernet use 48-bit MAC addresses defined by the IEEE 802 standards. The IEEE has introduced a new, 64-bit address space called EUI-64, for new kinds of LANs. There is a standard mapping from a 48-bit MAC into a 64-bit EUI-64.
  • Overview of Internet Protocol version 6 Current status of IPv6 specifications, implementations, and transition tools Not Cisco specific! Background Header formats Packet size issues Addressing & routing Security Quality of service Mobility ICMPv6 & neighbor discovery Effects on higher layers IPv4-IPv6 coexistence & transition Current status
  • Same two basic approaches are defined for both IPv4 and IPv6.
  • Most of the RIP issues should be fixed in 12.2(2)T.
  • Since BGP now supports multiple address families, we felt that it would make more sense to move the BGP commands up to the top level. I.e show ip bgp is now show bgp ipv4. The old CLI will still be supported. Currently only the IPv6 address family has moved to the new CLI.
  • Overview of Internet Protocol version 6 Current status of IPv6 specifications, implementations, and transition tools Not Cisco specific! Background Header formats Packet size issues Addressing & routing Security Quality of service Mobility ICMPv6 & neighbor discovery Effects on higher layers IPv4-IPv6 coexistence & transition Current status
  • Toolbox of mechanisms which can be combined.
  • draft-ietf-ngtrans-6to4-07.txt Uses addresses out of the 6to4 address block, 2002::/16. A site’s prefix /48 is created by appending one of it’s global IPv4 addresses to this prefix. I.e 2002:
  • RFC2893 (obsoletes RFC1933) Just like point to point links. IPv6 packets are encapsulated in IPv4, protocol type 41.
  • RFC2893 (RFC1933)
  • Fragmentation: An IPv6 tunnel endpoint should only fragment when the IPv4 MTU is less than 1300 bytes. As long as the IPv4 MTU is larger, Path MTU discovery should take care to tell the IPv6 end-node about the MTU. The current implementation sets IPv6 MTU to IPv4 MTU - 20. If the path has a smaller MTU, IPv4 will have to fragment.
  • There is nothing wrong with having the same interface ID on multiple interfaces on the same router. That is for example the typical case for IPv6 over IPv4 tunnels. Note that we will possibly change the way we generate the interface ID on point to point links, to just be the first MAC address in the box, in EUI-64 format.
  • Overview of Internet Protocol version 6 Current status of IPv6 specifications, implementations, and transition tools Not Cisco specific! Background Header formats Packet size issues Addressing & routing Security Quality of service Mobility ICMPv6 & neighbor discovery Effects on higher layers IPv4-IPv6 coexistence & transition Current status
  • Add text
  • Add text
  • Add text
  • Introduction to IPv6

    1. 1. A senthilkumars A journey of 1000 miles starts with a single step!! Introduction To IPng
    2. 2. Let us know about Huawei
    3. 3. Huawei Technologies <ul><li>An innovative and customer-oriented ICT company established in 1988 and fully owned by its staff. </li></ul><ul><li>Over 64,000 staff members (over 48% engaged in R&D); more than 10% annual revenue invested in R&D. </li></ul><ul><li>Full product portfolio including wireless products, network products, application and software products and terminals. </li></ul><ul><li>A leading global supplier with products deployed in over 100 countries, including the US, the UK, France, Portugal, Russia, Brazil, Singapore and Thailand, and serving 28 of the world’s top 50 operators. </li></ul><ul><li>Contract sales amounted to US$8.2 billion in 2005. over 58% of which (US$4.8 billion) was from international markets. </li></ul>
    4. 4. Continuous Growth <ul><li>Serving 28 of the world’s top 50 operators </li></ul><ul><li>Strategic partner with BT, Vodafone, Telefonica, etc. </li></ul>Contract Sales ( USD1 billion ) 0 1 2 3 4 5 6 2002 2003 2004 2005 2.67 3.83 5.58 8.2 7 8 9
    5. 5. <ul><li>Total staff: Over 64,000 employees </li></ul>Human Resources Supply Chain: 8% Administration: 6% R&D:48% Marketing, Sales and Customer Service : 38% 48% 38% 6% 8%
    6. 6. Global Presence <ul><li>8 regional headquarters, 85 branch offices outside China </li></ul><ul><li>3-level customer service system (HQ, regional, local) </li></ul>Thailand Saudi Arabia India Nepal Pakistan Russia Kazakhstan Kyrgyzstan South Korea Malaysia Vietnam Philippines Ukraine Egypt Germany Singapore Indonesia Australia Kenya South Africa Zimbabwe Algeria Morocco UK Argentina Chile Peru Colombia Mexico USA Nigeria Huawei Technologies (Headquarters) Tunisia France Canada Bangladesh UAE Portugal Italy Brazil Netherlands Poland Sweden Shenzhen Spain Bulgaria Uzbekistan Ecuador Venezuela Turkey Turkmenistan Greece Romania Sri Lanka Cambodia
    7. 7. Global R&D <ul><li>Global R&D </li></ul><ul><ul><li>Stockholm, Sweden - Base Station architecture and system design, Radio technology and RAN algorithms </li></ul></ul><ul><ul><li>Dallas, USA - ASIC technology and CDMA algorithms </li></ul></ul><ul><ul><li>Bangalore, India - Software technology/platform </li></ul></ul><ul><ul><li>Moscow, Russia - Algorithms and RF </li></ul></ul><ul><ul><li>Shenzhen, China - CN, service platforms </li></ul></ul><ul><ul><li>Shanghai, China - RAN, terminals, ASIC chipsets </li></ul></ul><ul><ul><li>Beijing, China - Packet CN, GW, Terminals </li></ul></ul><ul><ul><li>Nanjing, China - BOSS, 3G services </li></ul></ul><ul><li>CMM5 and IPD (Integrated Product Development) have been widely implemented into product development. </li></ul><ul><li>Four R&D divisions (Central software division and institutes in Bangalore, Shanghai and Nanjing) have been awarded CMM level 5 certification. </li></ul>Adopts asynchronous development, unifies product commercialization and speeds up response to market.
    8. 8. R&D Based on a Shared Platform Constructing a “speed, quality and cost” advantage, through modular structure, standardization and sharing technology (CBB methodology). Uniform operation and maintenance platform IP+Optical platform Common software and hardware platform Fixed access platform Wireless access platform Service control platform Intelligent network platform Terminal service platform Uniform engineering and material development platform
    9. 9. Persistent investment in standards and patents to be at the forefront of future technology. Standards and Patents <ul><li>Standards </li></ul><ul><ul><li>Participated in 70 international standardization organizations including ITU, 3GPP. </li></ul></ul><ul><li>Patents </li></ul>Domestic Patents       9600 pcs Authorized Patents      1844 pcs PCT International and Overseas Patents 1574 pcs <ul><ul><li>5% of international UMTS essential patents (69 patents), No.5 of global telecom companies </li></ul></ul><ul><ul><li>   ( Till 31 Dec. 2005 ) </li></ul></ul>
    10. 10. Huawei E2E Delivery Process Overview Ad/trade show m g t - Info mgt Relationship mgt - Relationship mgt - Buz partner mgt Sales execution Solution design <ul><li>- Resource allocation </li></ul><ul><li>Customer sat mgt </li></ul><ul><li>Market req </li></ul><ul><li>- Market forecast </li></ul><ul><li>- Offering info </li></ul>Sales mgt <ul><li>- win </li></ul><ul><li>leadership team </li></ul><ul><li>drive sales exection </li></ul>Opportunity point mgt Cus T Ome r Cus T Ome r Req mgt pro logistics mfg Supply chain plan CRM Partner and supplier mgmt FIN / HR / IT MM IPD ISC OR Research, standard, patent Technology roadmaps Brand mgt CS issues Contract signature Concept Plan Develop Qualify Launch Life Cycle req NPI Engineering implement TS Spare parts mgt training Narrow e2e delivery Broad e2e delivery Within C2C framework, e2e delivery focuses on customer commitment to committed delivery Understand Market Perform Segmentation Portfolio Analysis Dev Bus Plans Align & Optimize Manage & Assess Perf
    11. 11. Industry Position <ul><li>3G </li></ul><ul><ul><li>World-leading wireless network supplier, 18 commercial UMTS networks </li></ul></ul><ul><li>NGN </li></ul><ul><ul><li>No.1 in global VoIP market (Dittberner) </li></ul></ul><ul><li>Intelligent Network </li></ul><ul><ul><li>No. 1 in global market (21.6% of users) ( Ovum ) </li></ul></ul><ul><li>Optical Network </li></ul><ul><ul><li>No.1 in global LH+MR DWDM market (Ovum-RHK) </li></ul></ul><ul><li>Access Network </li></ul><ul><ul><li>No.1 in global IP DSLAM market (Infonetics) </li></ul></ul><ul><ul><li>No.1 in global MSAN market in 1H05 (Infonetics) </li></ul></ul><ul><li>Data Communication </li></ul><ul><ul><li>No.3 in worldwide service provider routers (Gartner) </li></ul></ul>
    12. 12. VISION To enrich life through communication MISSION To focus on our customers’ challenges and needs by providing excellent communications network solutions and services in order to consistently create maximum value for customers. Vision and Mission
    13. 13. Development Strategy <ul><li>Serving our customers is the only reason Huawei exists; Customer demand is the fundamental driving force of our development. </li></ul><ul><li>High quality, excellent service, low operating costs, and giving top priority to meeting customer requirements to enhance their competitiveness and profitability. </li></ul><ul><li>Continuously performing management transformation to realize efficient process-based organization operation for ensuring high quality end-to-end delivery. </li></ul><ul><li>Developing with our peers in the industry as both competitors and partners to jointly create a favorable environment and share the benefits of the value chain. </li></ul>
    14. 14. Fulfilling our social responsibility as a responsible corporate citizen Social Responsibility <ul><li>A dedicated member of the United Nations Global Compact </li></ul><ul><li>December 2004 Tsunami: Donated 2.42 million USD worth of telecom equipment and an additional 2.42 million USD in cash from the company and its employees </li></ul><ul><li>August 1998 Flood (China): Donated US$3.7 million worth of equipment, and US$1.85 million in cash schools. </li></ul><ul><li>Education Fund: Donated US$3.09 million to set up a fund to help needy students complete an undergraduate education. </li></ul>
    15. 15. Enriching Life Through Communication Huawei Technologies Co., Ltd. Add: Huawei Base, Bantian, Longgang District, Shenzhen Tel: +86-755-28780808 Zip Code: 518129
    16. 16. Some questions… <ul><li>What is the current version of IP? </li></ul><ul><li>What is the size of IPv4 address? </li></ul><ul><li>What is the size of IPv4 header? </li></ul><ul><li>What is a router? </li></ul><ul><li>What is version of current IPng? </li></ul>
    17. 17. <ul><li>Embrace Multi-Play Age </li></ul><ul><li>Multi-Play Evolution Solution </li></ul>Content
    18. 18. Introduction to IPv6
    19. 19. Outline <ul><li>Protocol Background </li></ul><ul><li>Technology Highlights </li></ul><ul><li>Enhanced Capabilities </li></ul><ul><li>Transition Issues </li></ul><ul><li>Next Steps </li></ul>
    20. 20. Background
    21. 21. Why a New IP? <ul><li>1991 – ALE WG studied projections about address consumption rate showed exhaustion by 2008. </li></ul><ul><li>Bake-off in mid-1994 selected approach of a new protocol over multiple layers of encapsulation. </li></ul>
    22. 22. What Ever Happened to IPv5? <ul><li>0 IP March 1977 version (deprecated) </li></ul><ul><li>1 IP January 1978 version (deprecated) </li></ul><ul><li>2 IP February 1978 version A (deprecated) </li></ul><ul><li>3 IP February 1978 version B (deprecated) </li></ul><ul><li>4 IPv4 September 1981 version (current widespread) </li></ul><ul><li>5 ST Stream Transport (not a new IP, little use) </li></ul><ul><li>6 IPv6 December 1998 version (formerly SIP, SIPP) </li></ul><ul><li>7 CATNIP IPng evaluation (formerly TP/IX; deprecated) </li></ul><ul><li>8 Pip IPng evaluation (deprecated) </li></ul><ul><li>9 TUBA IPng evaluation (deprecated) </li></ul><ul><li>10-15 unassigned </li></ul>
    23. 23. What about technologies & efforts to slow the consumption rate? <ul><li>Dial-access / PPP / DHCP </li></ul><ul><ul><li>Provides temporary allocation aligned with actual endpoint use. </li></ul></ul><ul><li>Strict allocation policies </li></ul><ul><ul><li>Reduced allocation rates by policy of ‘current-need’ vs. previous policy based on ‘projected-maximum-size’. </li></ul></ul><ul><li>CIDR </li></ul><ul><ul><li>Aligns routing table size with needs-based address allocation policy. Additional enforced aggregation actually lowered routing table growth rate to linear for a few years. </li></ul></ul><ul><li>NAT </li></ul><ul><ul><li>Hides many nodes behind limited set of public addresses. </li></ul></ul>
    24. 24. What did intense conservation efforts of the last 5 years buy us? <ul><li>Actual allocation history </li></ul><ul><ul><li>1981 – IPv4 protocol published </li></ul></ul><ul><ul><li>1985 ~ 1/16 total space </li></ul></ul><ul><ul><li>1990 ~ 1/8 total space </li></ul></ul><ul><ul><li>1995 ~ 1/4 total space </li></ul></ul><ul><ul><li>2000 ~ 1/2 total space </li></ul></ul><ul><li>The lifetime-extending efforts & technologies delivered the ability to absorb the dramatic growth in consumer demand during the late 90’s. </li></ul><ul><li>In short they bought – TIME – </li></ul>
    25. 25. Would increased use of NATs be adequate? <ul><ul><ul><li>NO! </li></ul></ul></ul><ul><li>NAT enforces a ‘client-server’ application model where the server has topological constraints. </li></ul><ul><ul><li>They won’t work for peer-to-peer or devices that are “called” by others (e.g., IP phones) </li></ul></ul><ul><ul><li>They inhibit deployment of new applications and services, because all NATs in the path have to be upgraded BEFORE the application can be deployed. </li></ul></ul><ul><li>NAT compromises the performance, robustness, and security of the Internet. </li></ul><ul><li>NAT increases complexity and reduces manageability of the local network. </li></ul><ul><li>Public address consumption is still rising even with current NAT deployments. </li></ul>
    26. 26. What were the goals of a new IP design? <ul><li>Expectation of a resurgence of “always-on” technologies </li></ul><ul><ul><li>xDSL, cable, Ethernet-to-the-home, Cell-phones, etc. </li></ul></ul><ul><li>Expectation of new users with multiple devices. </li></ul><ul><ul><li>China, India, etc. as new growth </li></ul></ul><ul><ul><li>Consumer appliances as network devices </li></ul></ul><ul><ul><ul><ul><li>(10 15 endpoints) </li></ul></ul></ul></ul><ul><li>Expectation of millions of new networks. </li></ul><ul><ul><li>Expanded competition and structured delegation. </li></ul></ul><ul><ul><ul><ul><li>(10 12 sites) </li></ul></ul></ul></ul>
    27. 27. Return to an End-to-End Architecture New Technologies/Applications for Home Users ‘ Always-on’—Cable, DSL, Ethernet@home, Wireless,… Global Addressing Realm Always-on Devices Need an Address When You Call Them
    28. 28. Why is a larger address space needed? <ul><li>Overall Internet is still growing its user base </li></ul><ul><ul><li>~320 million users in 2000 : ~550 million users by 2005 </li></ul></ul><ul><li>Users expanding their connected device count </li></ul><ul><ul><li>405 million mobile phones in 2000, over 1 billion by 2005 </li></ul></ul><ul><ul><li>UMTS Release 5 is Internet Mobility, ~ 300M new Internet connected </li></ul></ul><ul><ul><li>~1 Billion cars in 2010 </li></ul></ul><ul><ul><li>15% likely to use GPS and locality based Yellow Page services </li></ul></ul><ul><ul><li>Billions of new Internet appliances for Home users </li></ul></ul><ul><ul><li>Always-On ; Consumer simplicity required </li></ul></ul><ul><li>Emerging population/geopolitical & economic drivers </li></ul><ul><ul><li>MIT, Xerox, & Apple each have more address space than all of China </li></ul></ul><ul><ul><li>Moving to an e-Economy requires Global Internet accessibility </li></ul></ul>
    29. 29. Why Was 128 Bits Chosen as the IPv6 Address Size? <ul><li>Proposals for fixed-length, 64-bit addresses </li></ul><ul><ul><li>Accommodates 10 12 sites, 10 15 nodes, at .0001 allocation efficiency (3 orders of mag. more than IPng requirement) </li></ul></ul><ul><ul><li>Minimizes growth of per-packet header overhead </li></ul></ul><ul><ul><li>Efficient for software processing on current CPU hardware </li></ul></ul><ul><li>Proposals for variable-length, up to 160 bits </li></ul><ul><ul><li>Compatible with deployed OSI NSAP addressing plans </li></ul></ul><ul><ul><li>Accommodates auto-configuration using IEEE 802 addresses </li></ul></ul><ul><ul><li>Sufficient structure for projected number of service providers </li></ul></ul><ul><li>Settled on fixed-length, 128-bit addresses </li></ul><ul><ul><li>(340,282,366,920,938,463,463,374,607,431,768,211,456 in all!) </li></ul></ul>
    30. 30. Benefits of 128 bit Addresses <ul><li>Room for many levels of structured hierarchy and routing aggregation </li></ul><ul><li>Easy address auto-configuration </li></ul><ul><li>Easier address management and delegation than IPv4 </li></ul><ul><li>Ability to deploy end-to-end IPsec (NATs removed as unnecessary) </li></ul>
    31. 31. Incidental Benefits of New Deployment <ul><li>Chance to eliminate some complexity in IP header </li></ul><ul><ul><li>improve per-hop processing </li></ul></ul><ul><li>Chance to upgrade functionality </li></ul><ul><ul><li>multicast, QoS, mobility </li></ul></ul><ul><li>Chance to include new features </li></ul><ul><ul><li>binding updates </li></ul></ul>
    32. 32. Summary of Main IPv6 Benefits <ul><li>Expanded addressing capabilities </li></ul><ul><li>Structured hierarchy to manage routing table growth </li></ul><ul><li>Serverless autoconfiguration and reconfiguration </li></ul><ul><li>Streamlined header format and flow identification </li></ul><ul><li>Improved support for options / extensions </li></ul>
    33. 33. IPv6 Advanced Features <ul><li>Source address selection </li></ul><ul><li>Mobility - More efficient and robust mechanisms </li></ul><ul><li>Security - Built-in, strong IP-layer encryption and authentication </li></ul><ul><li>Quality of Service </li></ul><ul><li>Privacy Extensions for Stateless Address Autoconfiguration ( RFC 3041) </li></ul>
    34. 34. IPv6 Markets <ul><li>Home Networking </li></ul><ul><ul><li>Set-top box/Cable/xDSL/Ether@Home </li></ul></ul><ul><ul><li>Residential Voice over IP gateway </li></ul></ul><ul><li>Gaming (10B$ market) </li></ul><ul><ul><li>Sony, Sega, Nintendo, Microsoft </li></ul></ul><ul><li>Mobile devices </li></ul><ul><li>Consumer PC </li></ul><ul><li>Consumer Devices </li></ul><ul><ul><li>Sony (Mar/01 - … energetically introducing IPv6 technology into hardware products …) </li></ul></ul><ul><li>Enterprise PC </li></ul><ul><li>Service Providers </li></ul><ul><ul><li>Regional ISP, Carriers, Mobile ISP, and Greenfield ISP’s </li></ul></ul>
    35. 35. IPv6 Markets <ul><li>Academic NRN: </li></ul><ul><ul><li>Internet-II (Abilene, vBNS+), Canarie*3, Renater-II, Surfnet, DFN, CERNET,… 6REN/6TAP </li></ul></ul><ul><li>Geographies & Politics: </li></ul><ul><ul><li>Prime Minister of Japan called for IPv6 (taxes reduction) </li></ul></ul><ul><ul><li>EEC summit PR advertised IPv6 as the way to go for Europe </li></ul></ul><ul><ul><li>China Vice minister of MII deploying IPv6 with the intent to take a leadership position and create a market force </li></ul></ul><ul><li>Wireless (PDA, Mobile, Car,...): </li></ul><ul><ul><li>Multiple phases before deployment </li></ul></ul><ul><ul><li>RFP -> Integration -> trial -> commercial </li></ul></ul><ul><ul><li>Requires ‘client devices’, eg. IPv6 handset ? </li></ul></ul>
    36. 36. Outline <ul><li>Protocol Background </li></ul><ul><li>Technology Highlights </li></ul><ul><li>Enhanced Capabilities </li></ul><ul><li>Transition Issues </li></ul><ul><li>Next Steps </li></ul>
    37. 37. A new Header
    38. 38. The IPv6 Header 40 Octets, 8 fields 0 31 Version Class Flow Label Payload Length Next Header Hop Limit 128 bit Source Address 128 bit Destination Address 4 12 24 16
    39. 39. The IPv4 Header 20 octets + options : 13 fields, including 3 flag bits 0 31 Ver IHL Total Length Identifier Flags Fragment Offset 32 bit Source Address 32 bit Destination Address 4 8 24 16 Service Type Options and Padding Time to Live Header Checksum Protocol shaded fields are absent from IPv6 header
    40. 40. Summary of Header Changes between IPv4 & IPv6 <ul><li>Streamlined </li></ul><ul><ul><li>Fragmentation fields moved out of base header </li></ul></ul><ul><ul><li>IP options moved out of base header </li></ul></ul><ul><ul><li>Header Checksum eliminated </li></ul></ul><ul><ul><li>Header Length field eliminated </li></ul></ul><ul><ul><li>Length field excludes IPv6 header </li></ul></ul><ul><ul><li>Alignment changed from 32 to 64 bits </li></ul></ul><ul><li>Revised </li></ul><ul><ul><li>Time to Live ’ Hop Limit </li></ul></ul><ul><ul><li>Protocol ’ Next Header </li></ul></ul><ul><ul><li>Precedence & TOS ’ Traffic Class </li></ul></ul><ul><ul><li>Addresses increased 32 bits ’ 128 bits </li></ul></ul><ul><li>Extended </li></ul><ul><ul><li>Flow Label field added </li></ul></ul>
    41. 41. Extension Headers next header = TCP TCP header + data IPv6 header next header = Routing TCP header + data Routing header next header = TCP IPv6 header next header = Routing fragment of TCP header + data Routing header next header = Fragment Fragment header next header = TCP IPv6 header
    42. 42. Extension Headers (cont.) <ul><li>Generally processed only by node identified in IPv6 Destination Address field => much lower overhead than IPv4 options processing </li></ul><ul><ul><li>exception: Hop-by-Hop Options header </li></ul></ul><ul><li>Eliminated IPv4’s 40-byte limit on options </li></ul><ul><ul><li>in IPv6, limit is total packet size, or Path MTU in some cases </li></ul></ul><ul><li>Currently defined extension headers: </li></ul><ul><ul><li>Hop-by-Hop Options, Routing, Fragment, Authentication, Encryption, Destination Options </li></ul></ul>
    43. 43. Fragment Header <ul><li>though discouraged, can use IPv6 Fragment header to support upper layers that do not (yet) do path MTU discovery </li></ul><ul><li>IPv6 frag. & reasm. is an end-to-end function; routers do not fragment packets en-route if too big—they send ICMP “packet too big” instead </li></ul>Next Header Original Packet Identifier Reserved Fragment Offset 0 0 M
    44. 44. Routing Header
    45. 45. Routing <ul><li>Same “longest-prefix match” routing as IPv4 CIDR </li></ul><ul><li>Straightforward changes to existing IPv4 routing protocols to handle bigger addresses </li></ul><ul><ul><li>unicast: OSPF, RIP-II, IS-IS, BGP4+, … </li></ul></ul><ul><ul><li>multicast: MOSPF, PIM, … </li></ul></ul><ul><li>Use of Routing header with anycast addresses allows routing packets through particular regions </li></ul><ul><ul><li>e.g., for provider selection, policy, performance, etc. </li></ul></ul>
    46. 46. Routing Header
    47. 47. Example of Using the Routing Header S A B D
    48. 48. Addressing
    49. 49. Some Terminology <ul><li>node a protocol module that implements IPv6 </li></ul><ul><li>router a node that forwards IPv6 packets not explicitly addressed to itself </li></ul><ul><li>host any node that is not a router </li></ul><ul><li>link a communication facility or medium over which nodes can communicate at the link layer, i.e., the layer immediately below IPv6 </li></ul><ul><li>neighbors nodes attached to the same link </li></ul><ul><li>interface a node’s attachment to a link </li></ul><ul><li>address an IPv6-layer identifier for an interface or a set of interfaces </li></ul>
    50. 50. Text Representation of Addresses <ul><li>“ Preferred” form: 1080:0:FF:0:8:800:200C:417A </li></ul><ul><li>Compressed form: FF01:0:0:0:0:0:0:43 </li></ul><ul><li>becomes FF01::43 </li></ul><ul><li>IPv4-compatible: 0:0:0:0:0:0: </li></ul><ul><li>or :: </li></ul>
    51. 51. IPv6 - Addressing Model <ul><li>Addresses are assigned to interfaces </li></ul><ul><ul><li>No change from IPv4 Model </li></ul></ul><ul><li>Interface ‘expected’ to have multiple addresses </li></ul><ul><li>Addresses have scope </li></ul><ul><ul><li>Link Local </li></ul></ul><ul><ul><li>Site Local </li></ul></ul><ul><ul><li>Global </li></ul></ul><ul><li>Addresses have lifetime </li></ul><ul><ul><li>Valid and Preferred lifetime </li></ul></ul>Link-Local Site-Local Global
    52. 52. Types of IPv6 Addresses <ul><li>Unicast </li></ul><ul><ul><li>Address of a single interface </li></ul></ul><ul><ul><li>Delivery to single interface </li></ul></ul><ul><li>Multicast </li></ul><ul><ul><li>Address of a set of interfaces </li></ul></ul><ul><ul><li>Delivery to all interfaces in the set </li></ul></ul><ul><li>Anycast </li></ul><ul><ul><li>Address of a set of interfaces </li></ul></ul><ul><ul><li>Delivery to a single interface in the set </li></ul></ul><ul><li>No more broadcast addresses </li></ul>
    53. 53. Interface Address set <ul><li>Loopback </li></ul><ul><ul><li>(only assigned to a single virtual interface per node) </li></ul></ul><ul><li>Link local </li></ul><ul><li>Site local </li></ul><ul><li>Auto-configured 6to4 </li></ul><ul><ul><li>(if IPv4 public is address available) </li></ul></ul><ul><li>Auto-configured IPv4 compatible </li></ul><ul><ul><li>(operationally discouraged) </li></ul></ul><ul><li>Solicited node Multicast </li></ul><ul><li>All node multicast </li></ul><ul><li>Global anonymous </li></ul><ul><li>Global published </li></ul>
    54. 54. Source Address Selection Rules <ul><li>Rule 1: Prefer same address </li></ul><ul><li>Rule 2: Prefer appropriate scope </li></ul><ul><ul><li>Smallest matching scope </li></ul></ul><ul><li>Rule 3: Avoid deprecated addresses </li></ul><ul><li>Rule 4: Prefer home addresses </li></ul><ul><li>Rule 5: Prefer outgoing interface </li></ul><ul><li>Rule 6: Prefer matching label from policy table </li></ul><ul><ul><li>Native IPv6 source > native IPv6 destination </li></ul></ul><ul><ul><li>6to4 source > 6to4 destination </li></ul></ul><ul><ul><li>IPv4-compatible source > IPv4-compatible destination </li></ul></ul><ul><ul><li>IPv4-mapped source> IPv4-mapped destination </li></ul></ul><ul><li>Rule 7: Prefer temporary addresses </li></ul><ul><li>Rule 8: Use longest matching prefix </li></ul><ul><ul><li>Local policy may override </li></ul></ul>
    55. 55. Destination Address Selection Rules <ul><li>Rule 1: Avoid unusable destinations </li></ul><ul><li>Rule 2: Prefer matching scope </li></ul><ul><li>Rule 3: Avoid dst with matching deprecated src address </li></ul><ul><li>Rule 4: Prefer home addresses </li></ul><ul><li>Rule 5: Prefer matching label from policy table </li></ul><ul><ul><li>Native IPv6 source > native IPv6 destination </li></ul></ul><ul><ul><li>6to4 source > 6to4 destination </li></ul></ul><ul><ul><li>IPv4-compatible source > IPv4-compatible destination </li></ul></ul><ul><ul><li>IPv4-mapped source> IPv4-mapped destination </li></ul></ul><ul><li>Rule 6: Prefer higher precedence </li></ul><ul><li>Rule 7: Prefer smaller scope </li></ul><ul><li>Rule 8: Use longest matching prefix </li></ul><ul><li>Rule 9: Order returned by DNS </li></ul><ul><ul><li>Local policy may override </li></ul></ul>
    56. 56. Address Type Prefixes <ul><li>Address type Binary prefix </li></ul><ul><li>IPv4-compatible 0000...0 (96 zero bits) </li></ul><ul><li>global unicast 001 </li></ul><ul><li>link-local unicast 1111 1110 10 </li></ul><ul><li>site-local unicast 1111 1110 11 </li></ul><ul><li>multicast 1111 1111 </li></ul><ul><li>all other prefixes reserved (approx. 7/8ths of total) </li></ul><ul><li>anycast addresses allocated from unicast prefixes </li></ul>
    57. 57. Global Unicast Addresses <ul><li>TLA = Top-Level Aggregator NLA* = Next-Level Aggregator(s) SLA* = Site-Level Aggregator(s) </li></ul><ul><li>all subfields variable-length, non-self-encoding (like CIDR) </li></ul><ul><li>TLAs may be assigned to providers or exchanges </li></ul>site topology (16 bits) interface identifier (64 bits) public topology (45 bits) interface ID SLA* NLA* TLA 001
    58. 58. <ul><li>Link-local addresses for use during auto-configuration and when no routers are present: </li></ul><ul><li>Site-local addresses for independence from changes of TLA / NLA*: </li></ul>Link-Local & Site-Local Unicast Addresses 1111111010 0 interface ID 1111111011 0 interface ID SLA*
    59. 59. Interface IDs <ul><li>Lowest-order 64-bit field of unicast address may be assigned in several different ways: </li></ul><ul><ul><li>auto-configured from a 64-bit EUI-64, or expanded from a 48-bit MAC address (e.g., Ethernet address) </li></ul></ul><ul><ul><li>auto-generated pseudo-random number (to address privacy concerns) </li></ul></ul><ul><ul><li>assigned via DHCP </li></ul></ul><ul><ul><li>manually configured </li></ul></ul><ul><ul><li>possibly other methods in the future </li></ul></ul>
    60. 60. Some Special-Purpose Unicast Addresses <ul><li>The unspecified address, used as a placeholder when no address is available: 0:0:0:0:0:0:0:0 </li></ul><ul><li>The loopback address, for sending packets to self: 0:0:0:0:0:0:0:1 </li></ul>
    61. 61. Multicast Address Format <ul><li>flag field </li></ul><ul><ul><li>low-order bit indicates permanent/transient group </li></ul></ul><ul><ul><li>(three other flags reserved) </li></ul></ul><ul><li>scope field: </li></ul><ul><ul><li>1 - node local 8 - organization-local </li></ul></ul><ul><ul><li>2 - link-local B - community-local </li></ul></ul><ul><ul><li>5 - site-local E - global </li></ul></ul><ul><ul><li>(all other values reserved) </li></ul></ul><ul><li>map IPv6 multicast addresses directly into low order 32 bits of the IEEE 802 MAC </li></ul>FP  (8bits) Flags (4bits) Scope (4bits) Group ID (32bits) 11111111 000T Lcl/Sit/Gbl Locally administered RESERVED (80bits) MUST be 0
    62. 62. Multicast Address Format Unicast-Prefix based <ul><li>P = 1 indicates a multicast address that is assigned based on the network prefix </li></ul><ul><li>plen indicates the actual length of the network prefix </li></ul><ul><li>Source-specific multicast addresses is accomplished by setting </li></ul><ul><ul><li>P = 1 </li></ul></ul><ul><ul><li>plen = 0 </li></ul></ul><ul><ul><li>network prefix = 0 </li></ul></ul><ul><ul><ul><ul><li>draft-ietf-ipngwg-uni-based-mcast-01.txt </li></ul></ul></ul></ul>FP  (8bits) Flags (4bits) Scope (4bits) Group ID (32bits) 11111111 00PT Lcl/Sit/Gbl Auto configured reserved (8bits) MUST be 0 plen (8bits) Locally administered Network Prefix (64bits) Unicast prefix
    63. 63. Outline <ul><li>Protocol Background </li></ul><ul><li>Technology Highlights </li></ul><ul><li>Enhanced Capabilities </li></ul><ul><li>Transition Issues </li></ul><ul><li>Next Steps </li></ul>
    64. 64. Security
    65. 65. IPv6 Security <ul><li>All implementations required to support authentication and encryption headers (“IPsec”) </li></ul><ul><li>Authentication separate from encryption for use in situations where encryption is prohibited or prohibitively expensive </li></ul><ul><li>Key distribution protocols are under development (independent of IP v4/v6) </li></ul><ul><li>Support for manual key configuration required </li></ul>
    66. 66. Authentication Header <ul><li>Destination Address + SPI identifies security association state (key, lifetime, algorithm, etc.) </li></ul><ul><li>Provides authentication and data integrity for all fields of IPv6 packet that do not change en-route </li></ul><ul><li>Default algorithm is Keyed MD5 </li></ul>Next Header Hdr Ext Len Security Parameters Index (SPI) Reserved Sequence Number Authentication Data
    67. 67. Encapsulating Security Payload (ESP) Payload Next Header Security Parameters Index (SPI) Sequence Number Authentication Data Padding Length Padding
    68. 68. Quality of Service
    69. 69. IP Quality of Service Approaches <ul><li>Two basic approaches developed by IETF: </li></ul><ul><li>“ Integrated Service” (int-serv) </li></ul><ul><ul><li>fine-grain (per-flow), quantitative promises (e.g., x bits per second), uses RSVP signaling </li></ul></ul><ul><li>“ Differentiated Service” (diff-serv) </li></ul><ul><ul><li>coarse-grain (per-class), qualitative promises (e.g., higher priority), no explicit signaling </li></ul></ul>
    70. 70. IPv6 Support for Int-Serv <ul><li>20-bit Flow Label field to identify specific flows needing special QoS </li></ul><ul><ul><li>each source chooses its own Flow Label values; routers use Source Addr + Flow Label to identify distinct flows </li></ul></ul><ul><ul><li>Flow Label value of 0 used when no special QoS requested (the common case today) </li></ul></ul><ul><ul><li>this part of IPv6 is not standardized yet, and may well change semantics in the future </li></ul></ul>
    71. 71. IPv6 Support for Diff-Serv <ul><li>8-bit Traffic Class field to identify specific classes of packets needing special QoS </li></ul><ul><ul><li>same as new definition of IPv4 Type-of-Service byte </li></ul></ul><ul><ul><li>may be initialized by source or by router enroute; may be rewritten by routers enroute </li></ul></ul><ul><ul><li>traffic Class value of 0 used when no special QoS requested (the common case today) </li></ul></ul>
    72. 72. Compromise <ul><li>Signaled diff-serv (RFC 2998) </li></ul><ul><ul><li>uses RSVP for signaling with course-grained qualitative aggregate markings </li></ul></ul><ul><ul><li>allows for policy control without requiring per-router state overhead </li></ul></ul>
    73. 73. Mobility
    74. 74. IPv6 Mobility <ul><li>Mobile hosts have one or more home address </li></ul><ul><ul><li>relatively stable; associated with host name in DNS </li></ul></ul><ul><li>A Host will acquire a foreign address when it discovers it is in a foreign subnet (i.e., not its home subnet) </li></ul><ul><ul><li>uses auto-configuration to get the address </li></ul></ul><ul><ul><li>registers the foreign address with a home agent, i.e, a router on its home subnet </li></ul></ul><ul><li>Packets sent to the mobile’s home address(es) are intercepted by home agent and forwarded to the foreign address, using encapsulation </li></ul><ul><li>Mobile IPv6 hosts will send binding-updates to correspondent to remove home agent from flow </li></ul>
    75. 75. Mobile IP (v4 version) home agent home location of mobile host foreign agent mobile host correspondent host
    76. 76. Mobile IP (v4 version) home agent home location of mobile host foreign agent mobile host correspondent host
    77. 77. Mobile IP (v4 version) home agent home location of mobile host foreign agent mobile host correspondent host
    78. 78. Mobile IP (v4 version) home agent home location of mobile host foreign agent mobile host correspondent host
    79. 79. Mobile IP (v6 version) home agent home location of mobile host mobile host correspondent host
    80. 80. Mobile IP (v6 version) home agent home location of mobile host mobile host correspondent host
    81. 81. Mobile IP (v6 version) home agent home location of mobile host mobile host correspondent host
    82. 82. Mobile IP (v6 version) home agent home location of mobile host mobile host correspondent host
    83. 83. Mobile IP (v6 version) home agent home location of mobile host mobile host correspondent host
    84. 84. IPv6 Routing
    85. 85. RIPng <ul><li>RIPv2, supports split-horizon with poisoned reverse </li></ul><ul><li>RFC2080 </li></ul>
    86. 86. BGP4+ Overview <ul><li>Added IPv6 address-family </li></ul><ul><li>Added IPv6 transport </li></ul><ul><li>Runs within the same process - only one AS supported </li></ul><ul><li>All generic BGP functionality works as for IPv4 </li></ul><ul><li>Added functionality to route-maps and prefix-lists </li></ul>
    87. 87. IPv6 routing <ul><li>OSPF & ISIS updated for IPv6 </li></ul>
    88. 88. Outline <ul><li>Protocol Background </li></ul><ul><li>Technology Highlights </li></ul><ul><li>Enhanced Capabilities </li></ul><ul><li>Transition Issues </li></ul><ul><li>Next Steps </li></ul>
    89. 89. Porting Issues
    90. 90. Effects on higher layers <ul><li>Changes TCP/UDP checksum “pseudo-header” </li></ul><ul><li>Affects anything that reads/writes/stores/passes IP addresses (just about every higher protocol) </li></ul><ul><li>Packet lifetime no longer limited by IP layer (it never was, anyway!) </li></ul><ul><li>Bigger IP header must be taken into account when computing max payload sizes </li></ul><ul><li>New DNS record type: AAAA and (new) A6 </li></ul><ul><li>… </li></ul>
    91. 91. Sockets API Changes <ul><li>Name to Address Translation Functions </li></ul><ul><li>Address Conversion Functions </li></ul><ul><li>Address Data Structures </li></ul><ul><li>Wildcard Addresses </li></ul><ul><li>Constant Additions </li></ul><ul><li>Core Sockets Functions </li></ul><ul><li>Socket Options </li></ul><ul><li>New Macros </li></ul>
    92. 92. Core Sockets Functions <ul><li>Core APIs </li></ul><ul><ul><ul><li>Use IPv6 Family and Address Structures </li></ul></ul></ul><ul><ul><ul><li>socket() Uses PF_INET6 </li></ul></ul></ul><ul><li>Functions that pass addresses </li></ul><ul><ul><ul><li>bind() </li></ul></ul></ul><ul><ul><ul><li>connect() </li></ul></ul></ul><ul><ul><ul><li>sendmsg() </li></ul></ul></ul><ul><ul><ul><li>sendto() </li></ul></ul></ul><ul><li>Functions that return addresses </li></ul><ul><ul><ul><li>accept() </li></ul></ul></ul><ul><ul><ul><li>recvfrom() </li></ul></ul></ul><ul><ul><ul><li>recvmsg() </li></ul></ul></ul><ul><ul><ul><li>getpeername() </li></ul></ul></ul><ul><ul><ul><li>getsockname() </li></ul></ul></ul>
    93. 93. Name to Address Translation <ul><li>getaddrinfo() </li></ul><ul><ul><li>Pass in nodename and/or servicename string </li></ul></ul><ul><ul><ul><li>Can Be Address and/or Port </li></ul></ul></ul><ul><ul><li>Optional Hints for Family, Type and Protocol </li></ul></ul><ul><ul><ul><ul><li>Flags – AI_PASSIVE, AI_CANNONNAME, AI_NUMERICHOST, AI_NUMERICSERV, AI_V4MAPPED, AI_ALL, AI_ADDRCONFIG </li></ul></ul></ul></ul><ul><ul><li>Pointer to Linked List of addrinfo structures Returned </li></ul></ul><ul><ul><ul><ul><li>Multiple Addresses to Choose From </li></ul></ul></ul></ul><ul><li>freeaddrinfo() </li></ul><ul><li>struct addrinfo { </li></ul><ul><li>int ai_flags; </li></ul><ul><li>int ai_family; </li></ul><ul><li>int ai_socktype; </li></ul><ul><ul><li>int ai_protocol; </li></ul></ul><ul><li>size_t ai_addrlen; </li></ul><ul><ul><li>char *ai_canonname; </li></ul></ul><ul><li>struct sockaddr *ai_addr; </li></ul><ul><ul><li>struct addrinfo *ai_next; </li></ul></ul><ul><ul><li>}; </li></ul></ul>int getaddrinfo( IN const char FAR * nodename, IN const char FAR * servname, IN const struct addrinfo FAR * hints, OUT struct addrinfo FAR * FAR * res );
    94. 94. Address to Name Translation <ul><li>getnameinfo() </li></ul><ul><ul><li>Pass in address (v4 or v6) and port </li></ul></ul><ul><ul><ul><li>Size Indicated by salen </li></ul></ul></ul><ul><ul><ul><li>Also Size for Name and Service buffers (NI_MAXHOST, NI_MAXSERV) </li></ul></ul></ul><ul><ul><li>Flags </li></ul></ul><ul><ul><ul><li>NI_NOFQDN </li></ul></ul></ul><ul><ul><ul><li>NI_NUMERICHOST </li></ul></ul></ul><ul><ul><ul><li>NI_NAMEREQD </li></ul></ul></ul><ul><ul><ul><li>NI_NUMERICSERV </li></ul></ul></ul><ul><ul><ul><li>NI_DGRAM </li></ul></ul></ul>int getnameinfo( IN const struct sockaddr FAR * sa, IN socklen_t salen, OUT char FAR * host, IN size_t hostlen, OUT char FAR * serv, IN size_t servlen, IN int flags );
    95. 95. Porting Environments <ul><li>Node Types </li></ul><ul><ul><ul><li>IPv4-only </li></ul></ul></ul><ul><ul><ul><li>IPv6-only </li></ul></ul></ul><ul><ul><ul><li>IPv6/IPv4 </li></ul></ul></ul><ul><li>Application Types </li></ul><ul><ul><ul><li>IPv6-unaware </li></ul></ul></ul><ul><ul><ul><li>IPv6-capable </li></ul></ul></ul><ul><ul><ul><li>IPv6-required </li></ul></ul></ul><ul><li>IPv4 Mapped Addresses </li></ul>
    96. 96. Porting Issues <ul><li>Running on ANY System </li></ul><ul><ul><ul><li>Including IPv4-only </li></ul></ul></ul><ul><li>Address Size Issues </li></ul><ul><li>New IPv6 APIs for IPv4/IPv6 </li></ul><ul><li>Ordering of API Calls </li></ul><ul><li>User Interface Issues </li></ul><ul><li>Higher Layer Protocol Changes </li></ul>
    97. 97. Specific things to look for <ul><li>Storing IP address in 4 bytes of an array. </li></ul><ul><li>Use of explicit dotted decimal format in UI. </li></ul><ul><li>Obsolete / New: </li></ul><ul><ul><li>AF_INET replaced by AF_INET6 </li></ul></ul><ul><ul><li>SOCKADDR_IN replaced by SOCKADDR_STORAGE </li></ul></ul><ul><ul><li>IPPROTO_IP replaced by IPPROTO_IPV6 </li></ul></ul><ul><ul><li>IP_MULTICAST_LOOP replaced by SIO_MULTIPOINT_LOOPBACK </li></ul></ul><ul><ul><li>gethostbyname replaced by getaddrinfo </li></ul></ul><ul><ul><li>gethostbyaddr replaced by getnameinfo </li></ul></ul>
    98. 98. IPv6 literal addresses in URL’s <ul><li>From RFC 2732 </li></ul><ul><li>Literal IPv6 Address Format in URL's Syntax To use a literal IPv6 address in a URL, the literal address should be enclosed in &quot;[&quot; and &quot;]&quot; characters. For example the following literal IPv6 addresses: FEDC:BA98:7654:3210:FEDC:BA98:7654:3210 </li></ul><ul><li>3ffe:2a00:100:7031::1 </li></ul><ul><li>:: </li></ul><ul><li>2010:836B:4179::836B:4179 </li></ul><ul><li>would be represented as in the following example URLs: http://[FEDC:BA98:7654:3210:FEDC:BA98:7654:3210]:80/index.html </li></ul><ul><li>http://[3ffe:2a00:100:7031::1] </li></ul><ul><li>http://[::]/ipng </li></ul><ul><li>http://[2010:836B:4179::836B:4179] </li></ul>
    99. 99. Other Issues <ul><li>Renumbering & Mobility routinely result in changing IP Addresses – </li></ul><ul><ul><li>Use Names and Resolve, Don’t Cache </li></ul></ul><ul><li>Multihomed Servers </li></ul><ul><ul><li>More Common with IPv6 </li></ul></ul><ul><ul><li>Try All Addresses Returned </li></ul></ul><ul><li>Using New IPv6 Functionality </li></ul>
    100. 100. Porting Steps -Summary <ul><li>Use IPv4/IPv6 Protocol/Address Family </li></ul><ul><li>Fix Address Structures </li></ul><ul><ul><ul><li>in6_addr </li></ul></ul></ul><ul><ul><ul><li>sockaddr_in6 </li></ul></ul></ul><ul><ul><ul><li>sockaddr_storage to allocate storage </li></ul></ul></ul><ul><li>Fix Wildcard Address Use </li></ul><ul><ul><ul><li>in6addr_any, IN6ADDR_ANY_INIT </li></ul></ul></ul><ul><ul><ul><li>in6addr_loopback, IN6ADDR_LOOPBACK_INIT </li></ul></ul></ul><ul><li>Use IPv6 Socket Options </li></ul><ul><ul><ul><li>IPPROTO_IPV6, Options as Needed </li></ul></ul></ul><ul><li>Use getaddrinfo() </li></ul><ul><ul><ul><li>For Address Resolution </li></ul></ul></ul>
    101. 101. IPv4 - IPv6 Co-Existence / Transition
    102. 102. IPv6 Timeline (A pragmatic projection) Q1 Q2 Q3 Q4 2007 Q1 Q2 Q3 Q4 2004 Q1 Q2 Q3 Q4 2003 Q1 Q2 Q3 Q4 2000 Q1 Q2 Q3 Q4 2001 Q1 Q2 Q3 Q4 2002 Q1 Q2 Q3 Q4 2005 Q1 Q2 Q3 Q4 2006 <ul><li>Consumer adoption <= Duration 5+ years </li></ul><ul><li>Application porting <= Duration 3+ years </li></ul><ul><li>Early adopter </li></ul>=> => <ul><li>Enterprise adoption </li></ul><= Duration 3+ years => => adoption <= Duration 3+ years <ul><ul><li>ISP </li></ul></ul>
    103. 103. Deployments <ul><li>IPv6 deployments will occur piecewise from the edge. </li></ul><ul><ul><li>Core infrastructure only moving when significant customer usage demands it. </li></ul></ul><ul><ul><li>Platforms and products that are updated first need to address the lack of ubiquity. Whenever possible, devices and applications should be capable of both IPv4 & IPv6, to minimize the delays and potential failures inherent in translation points. </li></ul></ul>
    104. 104. Impediments to IPv6 deployment <ul><li>Applications </li></ul><ul><li>Applications </li></ul><ul><li>Applications </li></ul><ul><ul><li>Move to the new APIs NOW </li></ul></ul>
    105. 105. Transition / Co-Existence Techniques <ul><li>A wide range of techniques have been identified and implemented, basically falling into three categories: </li></ul><ul><ul><li>(1) dual-stack techniques, to allow IPv4 and IPv6 to co-exist in the same devices and networks </li></ul></ul><ul><ul><li>(2) tunneling techniques, to avoid order dependencies when upgrading hosts, routers, or regions </li></ul></ul><ul><ul><li>(3) translation techniques, to allow IPv6-only devices to communicate with IPv4-only devices </li></ul></ul><ul><li>Expect all of these to be used, in combination </li></ul>
    106. 106. Dual-Stack Approach <ul><li>When adding IPv6 to a system, do not delete IPv4 </li></ul><ul><ul><li>this multi-protocol approach is familiar and well-understood (e.g., for AppleTalk, IPX, etc.) </li></ul></ul><ul><ul><li>note: in most cases, IPv6 will be bundled with new OS releases, not an extra-cost add-on </li></ul></ul><ul><li>Applications (or libraries) choose IP version to use </li></ul><ul><ul><li>when initiating, based on DNS response: </li></ul></ul><ul><ul><ul><li>Prefer scope match first, when equal IPv6 over IPv4 </li></ul></ul></ul><ul><ul><li>when responding, based on version of initiating packet </li></ul></ul><ul><li>This allows indefinite co-existence of IPv4 and IPv6, and gradual app-by-app upgrades to IPv6 usage </li></ul>
    107. 107. Tunnels to Get Through IPv6-Ignorant Routers <ul><li>Encapsulate IPv6 packets inside IPv4 packets (or MPLS frames) </li></ul><ul><li>Many methods exist for establishing tunnels: </li></ul><ul><ul><li>manual configuration </li></ul></ul><ul><ul><li>“ tunnel brokers” (using web-based service to create a tunnel) </li></ul></ul><ul><ul><li>automatic (depricated, using IPv4 as low 32bits of IPv6) </li></ul></ul><ul><ul><li>“ 6-over-4” (intra-domain, using IPv4 multicast as virtual LAN) </li></ul></ul><ul><ul><li>“ 6-to-4” (inter-domain, using IPv4 addr as IPv6 site prefix) </li></ul></ul><ul><li>Can view this as: </li></ul><ul><ul><li>IPv6 using IPv4 as a virtual NBMA link-layer, or </li></ul></ul><ul><ul><li>an IPv6 VPN (virtual public network), over the IPv4 Internet </li></ul></ul>
    108. 108. Translation <ul><li>May prefer to use IPv6-IPv4 protocol translation for: </li></ul><ul><ul><li>new kinds of Internet devices (e.g., cell phones, cars, appliances) </li></ul></ul><ul><ul><li>benefits of shedding IPv4 stack (e.g., serverless autoconfig) </li></ul></ul><ul><li>This is a simple extension to NAT techniques, to translate header format as well as addresses </li></ul><ul><ul><li>IPv6 nodes behind a translator get full IPv6 functionality when talking to other IPv6 nodes located anywhere </li></ul></ul><ul><ul><li>they get the normal (i.e., degraded) NAT functionality when talking to IPv4 devices </li></ul></ul><ul><ul><li>drawback : minimal gain over IPv4/IPv4 NAT approach </li></ul></ul>
    109. 109. Tunnels <ul><li>6to4 </li></ul><ul><li>Configured </li></ul><ul><li>Automatic </li></ul>
    110. 110. 6to4 tunnels IPv4 IPv6 IPv6 6to4 prefix is 2002::/16 + IPv4 address. 2002:a.b.c.d::/48 IPv6 Internet 6to4 relay 2002:B00:1::1 Announces 2002::/16 to the IPv6 Internet 2002:8243:1::/48 2002:947A:1::/48 FP  (3bits) TLA  (13bits) IPv4 Address  (32bits) SLA ID  (16bits) Interface ID (64bits) 001 0x0002 ISP assigned Locally administered Auto configured
    111. 111. 6to4 tunnels II NB: there is a draft describing how to use IPv4 anycast to reach the relay router. (This is already supported, by our implementation...) Has to use 6to4 addresses, not native. Works without adjacent native IPv6 routers Requires relay router to reach native IPv6 Internet Only site border router needs to know about 6to4 All issues that NMBA networks have. Minimal configuration Cons Pros
    112. 112. Configured tunnels -------------------------------------- |IPv4 header|IPv6 header IPv6 payload| -------------------------------------- IPv4 protocol type = 41 IPv4 IPv6 IPv6 3ffe:c00:1::/48 3ffe:c00:2::/48
    113. 113. Configured tunnels II No keepalive mechanism, interface is always up Real addresses Inefficient traffic patterns Multicast Has to be configured and managed As point to point links Cons Pros
    114. 114. Automatic tunnels IPv4 IPv6 IPv6 Connects dual stacked nodes Quite obsolete IPv6 Internet :: :: IPv4 Address  (32bits) ISP assigned Defined 0
    115. 115. Automatic tunnels II Has to use IPv4 compatible addresses Useful for some other mechanisms, like BGP tunnels Difficult to reach the native IPv6 Internet, without injecting IPv4 routing information in the IPv6 routing table Obsolete Cons Pros
    116. 116. Tunneling issues <ul><li>IPv4 fragmentation needs to be reconstructed at tunnel endpoint. </li></ul><ul><li>No translation of Path MTU messages between IPv4 & IPv6. </li></ul><ul><li>Translating IPv4 ICMP messages and pass back to IPv6 originator. </li></ul><ul><li>May result in an inefficient topology. </li></ul>
    117. 117. Tunneling issues II <ul><li>Tunnel interface is always up. Use routing protocol to determine link failures. </li></ul><ul><li>Be careful with using the same IPv4 source address for several tunneling mechanisms. Demultiplexing incoming packets is difficult. </li></ul>
    118. 118. Deployment scenarios <ul><li>Many ways to deliver IPv6 services to End Users </li></ul><ul><ul><li>Most important is End to End IPv6 traffic forwarding </li></ul></ul><ul><li>Service Providers and Enterprises may have different deployment needs </li></ul><ul><li>IPv6 over IPv4 tunnels </li></ul><ul><li>Dedicated Data Link layers for native IPv6 </li></ul><ul><ul><li>no impact on IPv4 traffic & revenues </li></ul></ul><ul><li>Dual stack Networks </li></ul><ul><ul><li>IPv6 over MPLS or IPv4-IPv6 Dual Stack Routers </li></ul></ul>
    119. 119. Media - Interface Identifier <ul><li>IEEE interfaces - EUI-64 </li></ul><ul><ul><li>MAC-address: 0050.a218.0c38 </li></ul></ul><ul><ul><li>Interface ID: 250:A2FF:FE18:C38 </li></ul></ul><ul><li>P2P links (HDLC, PPP) </li></ul><ul><ul><li>Interface ID: 50:A218:C00:D </li></ul></ul><ul><ul><li>48 bits from the first MAC address in the box + 16 bit interface index. U/L bit off </li></ul></ul><ul><li>IPv4 tunnels </li></ul><ul><ul><li>Interface ID: ::a.b.c.d </li></ul></ul>
    120. 120. Outline <ul><li>Protocol Background </li></ul><ul><li>Technology Highlights </li></ul><ul><li>Enhanced Capabilities </li></ul><ul><li>Transition Issues </li></ul><ul><li>Next Steps </li></ul>
    121. 121. Current Status
    122. 122. Standards <ul><li>core IPv6 specifications are IETF Draft Standards => well-tested & stable </li></ul><ul><ul><li>IPv6 base spec, ICMPv6, Neighbor Discovery, PMTU Discovery, IPv6-over-Ethernet, IPv6-over-PPP,... </li></ul></ul><ul><li>other important specs are further behind on the standards track, but in good shape </li></ul><ul><ul><li>mobile IPv6, header compression, A6 DNS support,... </li></ul></ul><ul><ul><li>for up-to-date status: </li></ul></ul><ul><li>UMTS R5 cellular wireless standards mandate IPv6 </li></ul>
    123. 123. Implementations <ul><li>Most IP stack vendors have an implementation at some stage of completeness </li></ul><ul><ul><li>some are shipping supported product today, e.g., 3Com, *BSD(KAME), Cisco, Epilogue, Ericsson/Telebit, IBM, Hitachi, NEC, Nortel, Sun, Trumpet </li></ul></ul><ul><ul><li>others have beta releases now, supported products soon, e.g., Compaq, HP, Linux community, Microsoft </li></ul></ul><ul><ul><li>others rumored to be implementing, but status unkown (to me), e.g., Apple, Bull, Juniper, Mentat, Novell, SGI </li></ul></ul><ul><ul><li>(see for most recent status reports) </li></ul></ul><ul><li>Good attendance at frequent testing events </li></ul>
    124. 124. IPv6 Addresses Bootstrap phase <ul><li>Where to get address space? </li></ul><ul><ul><li>Real IPv6 address space now allocated by APNIC, ARIN and RIPE NCC </li></ul></ul><ul><ul><li>APNIC 2001:0200::/23 </li></ul></ul><ul><ul><li>ARIN 2001:0400::/23 </li></ul></ul><ul><ul><li>RIPE NCC 2001:0600::/23 </li></ul></ul><ul><ul><li>6Bone 3FFE::/16 </li></ul></ul><ul><li>Have a look at for further information </li></ul>
    125. 125. IPv6 Address Space Current Allocations <ul><li>APNIC ( </li></ul><ul><li>CONNECT-AU-19990916 2001:210::/35 </li></ul><ul><li>WIDE-JP-19990813 2001:200::/35 </li></ul><ul><li>NUS-SG-19990827 2001:208::/35 </li></ul><ul><li>KIX-KR-19991006 2001:220::/35 </li></ul><ul><li>ETRI-KRNIC-KR-19991124 2001:230::/35 </li></ul><ul><li>NTT-JP-19990922 2001:218::/35 </li></ul><ul><li>HINET-TW-20000208 2001:238::/35 </li></ul><ul><li>IIJ-JPNIC-JP-20000308 2001:240::/35 </li></ul><ul><li>CERNET-CN-20000426 2001:250::/35 </li></ul><ul><li>INFOWEB-JPNIC-JP-2000502 2001:258::/35 </li></ul><ul><li>JENS-JP-19991027 2001:228::/35 </li></ul><ul><li>BIGLOBE-JPNIC-JP-20000719 2001:260::/35 </li></ul><ul><li>6DION-JPNIC-JP-20000829 2001:268::/35 </li></ul><ul><li>DACOM-BORANET-20000908 2001:270::/35 </li></ul><ul><li>ODN-JPNIC-JP-20000915 2001:278::/35 </li></ul><ul><li>KOLNET-KRNIC-KR-20000927 2001:280::/35 </li></ul><ul><li>HANANET-KRNIC-KR-20001030 2001:290::/35 </li></ul><ul><li>TANET-TWNIC-TW-20001006 2001:288::/35 </li></ul><ul><li>SONYTELECOM-JPNIC-JP-20001207 2001:298::/35 </li></ul><ul><li>TTNET-JPNIC-JP-20001208 2001:2A0::/35 </li></ul><ul><li>CCCN-JPNIC-JP-20001228 2001:02A8::/35 </li></ul><ul><li>IMNET-JPNIC-JP-20000314 2001:0248::/35 </li></ul><ul><li>KORNET-KRNIC-KR-20010102 2001:02B0::/35 </li></ul><ul><li>ARIN ( </li></ul><ul><li>ESNET-V6 2001:0400::/35 </li></ul><ul><li>ARIN-001 2001:0400::/23 </li></ul><ul><li>VBNS-IPV6 2001:0408::/35 </li></ul><ul><li>CANET3-IPV6 2001:0410::/35 </li></ul><ul><li>VRIO-IPV6-0 2001:0418::/35 </li></ul><ul><li>CISCO-IPV6-1 2001:0420::/35 </li></ul><ul><li>QWEST-IPV6-1 2001:0428::/35 </li></ul><ul><li>DEFENSENET 2001:0430::/35 </li></ul><ul><li>ABOVENET-IPV6 2001:0438::/35 </li></ul><ul><li>SPRINT-V6 2001:0440::/35 </li></ul><ul><li>UNAM-IPV6 2001:0448::/35 </li></ul><ul><li>GBLX-V6 2001:0450::/35 </li></ul>January 5th, 2001
    126. 126. IPv6 Address Space Current Allocations <ul><li>RIPE ( </li></ul><ul><li>UK-BT-19990903 2001:0618::/35 </li></ul><ul><li>CH-SWITCH-19990903 2001:0620::/35 </li></ul><ul><li>AT-ACONET-19990920 2001:0628::/35 </li></ul><ul><li>UK-JANET-19991019 2001:0630::/35 </li></ul><ul><li>DE-DFN-19991102 2001:0638::/35 </li></ul><ul><li>NL-SURFNET-19990819 2001:0610::/35 </li></ul><ul><li>RU-FREENET-19991115 2001:0640::/35 </li></ul><ul><li>GR-GRNET-19991208 2001:0648::/35 </li></ul><ul><li>EU-UUNET-19990810 2001:0600::/35 </li></ul><ul><li>DE-TRMD-20000317 2001:0658::/35 </li></ul><ul><li>FR-RENATER-20000321 2001:0660::/35 </li></ul><ul><li>EU-EUNET-20000403 2001:0670::/35 </li></ul><ul><li>DE-IPF-20000426 2001:0678::/35 </li></ul><ul><li>DE-NACAMAR-20000403 2001:0668::/35 </li></ul><ul><li>DE-XLINK-20000510 2001:0680::/35 </li></ul><ul><li>DE-ECRC-19991223 2001:0650::/35 </li></ul><ul><li>FR-TELECOM-20000623 2001:0688::/35 </li></ul><ul><li>PT-RCCN-20000623 2001:0690::/35 </li></ul><ul><li>SE-SWIPNET-20000828 2001:0698::/35 </li></ul><ul><li>PL-ICM-20000905 2001:06A0::/35 </li></ul><ul><li>DE-SPACE-19990812 2001:0608::/35 </li></ul><ul><li>BE-BELNET-20001101 2001:06A8::/35 </li></ul><ul><li>SE-SUNET-20001218 2001:06B0::/35 </li></ul><ul><li>IT-CSELT-20001221 2001:06B8::/35 </li></ul><ul><li>SE-TELIANET-20010102 2001:06C0::/35 </li></ul>
    127. 127. Deployment <ul><li>experimental infrastructure: the 6bone </li></ul><ul><ul><li>for testing and debugging IPv6 protocols and operations (see </li></ul></ul><ul><li>production infrastructure in support of education and research: the 6ren </li></ul><ul><ul><li>CAIRN, Canarie, CERNET, Chunahwa Telecom, Dante, ESnet, Internet 2, IPFNET, NTT, Renater, Singren, Sprint, SURFnet, vBNS, WIDE (see, </li></ul></ul><ul><li>commercial infrastructure </li></ul><ul><ul><li>a few ISPs (IIJ, NTT, SURFnet, Trumpet,…) have announced commercial IPv6 service or service trials </li></ul></ul>
    128. 128. Deployment (cont.) <ul><li>IPv6 address allocation </li></ul><ul><ul><li>6bone procedure for test address space </li></ul></ul><ul><ul><li>regional IP address registries (APNIC, ARIN, RIPE-NCC) for production address space </li></ul></ul><ul><li>deployment advocacy (a.k.a. marketing) </li></ul><ul><ul><li>IPv6 Forum: </li></ul></ul>
    129. 129. Much Still To Do <ul><li>though IPv6 today has all the functional capability of IPv4, </li></ul><ul><li>implementations are not as advanced (e.g., with respect to performance, multicast support, compactness, instrumentation, etc.) </li></ul><ul><li>deployment has only just begun </li></ul><ul><li>much work to be done moving application, middleware, and management software to IPv6 </li></ul><ul><li>much training work to be done (application developers, network administrators, sales staff,…) </li></ul><ul><li>many of the advanced features of IPv6 still need specification, implementation, and deployment work </li></ul>
    130. 130. Recent IPv6 “Hot Topics” in the IETF <ul><li>multihoming / address selection </li></ul><ul><li>address allocation </li></ul><ul><li>DNS discovery </li></ul><ul><li>3GPP usage of IPv6 </li></ul><ul><li>anycast addressing </li></ul><ul><li>scoped address architecture </li></ul><ul><li>flow-label semantics </li></ul><ul><li>API issues </li></ul><ul><ul><li>(flow label, traffic class, PMTU discovery, scoping,…) </li></ul></ul><ul><li>enhanced router-to-host info </li></ul><ul><li>site renumbering procedures </li></ul><ul><li>temp. addresses for privacy </li></ul><ul><li>inter-domain multicast routing </li></ul><ul><li>address propagation and AAA issues of different access scenarios </li></ul><ul><ul><li>(always-on, dial-up, mobile,…) </li></ul></ul><ul><li>and, of course, transition / co-existence / interoperability with IPv4 </li></ul>Note: this indicates vitality, not incompleteness, of IPv6!
    131. 131. Next Steps
    132. 132. For More Information <ul><li> </li></ul><ul><li>http://www </li></ul><ul><li> </li></ul><ul><li> </li></ul>
    133. 133. For More Information <ul><li> </li></ul><ul><li> </li></ul><ul><li> </li></ul><ul><li> </li></ul><ul><li> </li></ul>
    134. 134. For More Information <ul><li>BGP4+ References </li></ul><ul><ul><li>RFC2858 Multiprotocol extension to BGP RFC2545 BGP MP for IPv6 RFC2842 Capability negotiation </li></ul></ul><ul><li>RIPng RFC2080 </li></ul>
    135. 135. Other Sources of Information <ul><li>Books </li></ul><ul><ul><li>IPv6, The New Internet Protocol by Christian Huitema (Prentice Hall) </li></ul></ul><ul><ul><li>Internetworking IPv6 with Cisco Routers by Silvano Gai (McGraw-Hill) </li></ul></ul><ul><ul><li>and many more... (14 hits at </li></ul></ul>
    136. 136. Questions…
    137. 137. s.senthilkumar Technical project lead, IPOS-IPv6 Huawei Technologies India PVT LTD Level 3,4,5 and 7, Leela Galleria The Leela Palace, No 23, Airport Road, Bangalore – 560-008 E-Mail: