IPv6 Core Protocols Implementation

IPv6 Core Protocols Implementation

5.0 1
by Qing Li, Tatuya Jinmei, Keiichi Shima
     
 

View All Available Formats & Editions

ISBN-10: 0124477518

ISBN-13: 9780124477513

Pub. Date: 10/10/2006

Publisher: Elsevier Science

IPv6 was introduced in 1994 and has been in development at the IETF for over 10 years. It has now reached the deployment stage. KAME, the de-facto open-source reference implementation of the IPv6 standards, played a significant role in the acceptance and the adoption of the IPv6 technology. The adoption of KAME by key companies in a wide spectrum of commercial

Overview

IPv6 was introduced in 1994 and has been in development at the IETF for over 10 years. It has now reached the deployment stage. KAME, the de-facto open-source reference implementation of the IPv6 standards, played a significant role in the acceptance and the adoption of the IPv6 technology. The adoption of KAME by key companies in a wide spectrum of commercial products is a testimonial to the success of the KAME project, which concluded not long ago.

This book is the first and the only one of its kind, which reveals all of the details of the KAME IPv6 protocol stack, explaining exactly what every line of code does and why it was designed that way. Through the dissection of both the code and its design, the authors illustrate how IPv6 and its related protocols have been interpreted and implemented from the specifications. This reference will demystify those ambiguous areas in the standards, which are open to interpretation and problematic in deployment, and presents solutions offered by KAME in dealing with these implementation challenges.

  • Covering a snapshot version of KAME dated April 2003 based on FreeBSD 4.8
  • Extensive line-by-line code listings with meticulous explanation of their rationale and use for the KAME snapshot implementation, which is generally applicable to most recent versions of the KAME IPv6 stack including those in recent releases of BSD variants
  • Numerous diagrams and illustrations help in visualizing the implementation
  • In-depth discussion of the standards provides intrinsic understanding of the specifications

Product Details

ISBN-13:
9780124477513
Publisher:
Elsevier Science
Publication date:
10/10/2006
Series:
Morgan Kaufmann Series in Networking Series
Edition description:
New Edition
Pages:
968
Product dimensions:
7.80(w) x 9.30(h) x 1.70(d)

Table of Contents

Chapter 1: Introduction
Chapter 2: IPv6 Addressing Architecture
Chapter 3: Internet Protocol version 6
Chapter 4: Internet Control Message Protocol for IPv6
Chapter 5: Neighborhood Discovery and Stateless
Address Autoconfiguration
Chapter 6: Transport Layer Implications
Chapter 7: Socket API Extensions

Customer Reviews

Average Review:

Write a Review

and post it to your social network

     

Most Helpful Customer Reviews

See all customer reviews >

IPv6 Core Protocols Implementation 5 out of 5 based on 0 ratings. 1 reviews.
Guest More than 1 year ago
This book is an essential addition to your library if you want to understand IPv6 networking beyond just the surface. Initially the book will serve as a detailed introduction to IPv6, but the biggest value is later when it serves as a trusted reference book in your networking library. As the authors intended, it will serve as an implementation reference for IPv6 like how the Stevens¿ book on TCP/IP from the nineties served as the bible for TCP/IP (and IPv4) implementations. I still go back to that book when I want to understand some aspects of the BSD TCP/IP stack (which is the ancestor to many contemporary TCP/IP stacks.) I expect to use this book as a reference in the same way for many years as we start migrating to IPv6. Who better to write an implementation-oriented book on IPv6 than the developers involved in the KAME project and the lead architect on the IPv6 stack of VxWorks? The KAME developers wrote their code in close sync with the evolution of IPv6 in the IETF and were privy to not just the authoring of IPv6 RFCs but the hundreds of invaluable side discussions that typically happen at the IETF conferences and mailing lists. When reading the book you can make this out easily from the interesting insights the authors provide on various aspects of the IPv6 protocols design as well as reasons for some implementation choices versus others. I also like the several places in the book where the IPv6 design is compared and contrasted with similar aspects of IPv4. This is very useful since most of us that buy this book have been working for a while with IPv4 and understand its design. The book assumes that the reader is reasonably familiar with TCP/IP IPv4 and BSD Sockets programming. If you¿re already familiar with IPv6 then you can jump straight into almost any place in the book. If you are new to IPv6 and want to use this book initially as an introduction I suggest that you read the book in two passes. In the first pass you should read all the chapters, stopping in each chapter before the ¿Code Introduction¿ subsection. This first pass will give you an introduction to the IPv6 protocol, IPv6 addressing, ICMPv6, Neighbor Discovery (ND), Autoconfiguration and the Sockets API for IPv6 ¿ these constitute the core of what you need to know about IPv6. You could stop with this pass and then use the rest of the book as a reference. Or you could keep going and do a second pass of all chapters and go through the code sections. This second pass will now be much easier since you now have a good overall grasp of IPv6. When it comes to the code walk-throughs and explanation of data structures I found that the authors have done a very meticulous job. Every interesting line of code is explained in detail and as I mentioned before there are many useful insights into ¿why¿s of the code¿ rather than dry comments on what it does. The book also comes with 2 CDROMs which contain all the referenced KAME source code and the FreeBSD 4.8 release. However, if you¿re like me and want only the latest/greatest release, I suggest going to the latest release of your choice of a BSD-based OS and browsing those source files instead. As a Mac guy I went with the latest kernel sources for Mac OS X 10.4. The Mac OS X Darwin kernel (a.k.a. XNU, not to be confused with Xinu OS from Comers' TCP/IP books) is a derivative of BSD built on top of a MACH microkernel. You can find the Darwin/XNU sources at Apple's open source website. The IPv6 stack in Darwin/XNU is a port from KAME. I found it relative easy to follow the code explanations in the book with the XNU version of the IPv6 code. As you would expect, the line numbers from the book don¿t match the XNU line numbers, but the filenames are identical and it is relatively easy to find the corresponding code snippets referenced in the book. There were definitely some differences between the two code trees, but I did not run into anything that was substantially different in the sections I read. All in al