IPv6 Transition Implementation Draft


Implementation Stages

Stage 1:

Stage 2:


Stage 3:


Stage 4:


Stage 5:



IPv6 Native Code Changes

I've amalgamated and summarized the results of running Microsoft's IPv6 scan on our source. For details, see the scan results that I've included in the ZIP file, and the sample Windows/Linux code.

Microsoft's recommendations are:

All of the recommendations above use ANSI C API, and thus should work on both Linux and Windows without platform-specific #ifdefs. The sample code I've included follows these guidelines for both Linux and Windows, however, the code uses platform-specific references in a few places that would need to be #ifdef-ed/replaced.

Division of Tasks (Java)

Generally, Intel will transition the Java Execution Framework code (org.eclipse.tptp.platform.execution), and IBM will transition the Java Hyades code (org.eclipse.hyades.execution) as well as the TPTP GUI code.

Division of Tasks (C/C++)

Generally, for other projects not listed below, Intel will transition the native TPTP AC code, and IBM will transition the native Hyades AC code (including Client Compatibility Layer).

Of the files listed by the IPv6 scan, Intel would make changes to the following projects (and all supporting projects):

transportSupport: socketTL: TPTPLogUtils: client: (And the various include files for the above that are in \include\tptp)


Of the files listed by the IPv6 scan, IBM would make changes to the following projects (and all supporting projects):

TPTPClientCompTL: RASocket Across Multiple Projects:
(And the various include files for the above that are in \include\tptp)

Reference URLs


Here are some excellent IPv6 resources for Java, C, Linux and Windows.

IPv6 Guide for Windows Socket Applications
(http://msdn2.microsoft.com/en-us/library/ms738649.aspx)

IPv6 for Microsoft Windows: Frequently Asked Questions
(http://www.microsoft.com/technet/network/ipv6/ipv6faq.mspx)

Sample Windows C code for an IPv4/IPv6 agnostic client/server
(http://msdn2.microsoft.com/en-us/library/ms737535(VS.85).aspx)


Linux IPv6 HOWTO
(http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/html_single/Linux+IPv6-HOWTO.html#AEN384)


Porting applications to IPv6 HowTo
(http://jungla.dit.upm.es/~ecastro/IPv6-web/ipv6.html)

Java Networking IPv6 Guide
(http://java.sun.com/j2se/1.5.0/docs/guide/net/ipv6_guide/index.html)