The IPv6 protocol in the Windows .NET Server 2003 family includes IPv6 support for the following application programming interfaces (APIs):
Windows Sockets (Winsock) is an API-based on the familiar "socket" interface from the University of California at Berkeley. It includes a set of extensions designed to take advantage of the message-driven nature of Microsoft Windows. Version 1.1 of the Windows Sockets specification was released in January 1993, and version 2.2.0 was published in May of 1996.
The Microsoft Windows implementation of sockets, Winsock, is designed to run efficiently on Windows operating systems while maintaining compatibility with the Berkeley Software Distribution (BSD) standard, known as Berkeley Sockets. With Winsock, programmers can create advanced Internet, intranet, and other network-capable applications to transmit application-data across the wire, independent of the network protocol being used.
Winsock for the Windows .NET Server 2003 family has been enhanced to include IPv6 support as specified in RFC 2553, "Basic Socket Interface Extensions for IPv6" (with some exceptions), and portions of RFC 2292, "Advanced Sockets API for IPv6." For the details of Windows Sockets support for IPv6, see Appendix B, "Windows Sockets Changes for IPv6."
Remote Procedure Call (RPC) is an API that is used for creating distributed client/server programs. The RPC run-time stubs and libraries manage most of the details relating to network protocols and communication. RPC functions are used to forward application function calls to a remote system across the network. The RPC components in the Windows .NET Server 2003 family are IPv6-enabled. The RPC components have been modified to use the updated Windows Sockets, which allows RPC to work over both IPv4 and IPv6. To enable RPC over IPv6, you must restart the computer after IPv6 has been installed.
Internet Protocol Helper (IP Helper) is an API that assists in the administration of the network configuration of the local computer. You can use IP Helper to programmatically retrieve information about the network configuration of the local computer, and to modify that configuration. IP Helper also provides notification mechanisms to ensure that an application is notified when certain aspects of the network configuration change on the local computer.
IP Helper in the Windows .NET Server 2003 family has been extended to allow management and configuration of IPv6 and its components. Some of the areas that are IPv6-enabled are the following:
The Win32 Internet Extensions (WinInet) is an API used for creating an Internet client application. An Internet client application is a program that accesses information from a network data source (server) using Internet protocols such as gopher, FTP, or HTTP. An Internet client application might access a server to retrieve data such as weather maps, stock prices, or newspaper headlines. The Internet client can access the server through an external network (the Internet) or an internal network (an intranet).
WinInet in the Windows .NET Server 2003 family has been extended to support IPv6. This allows Microsoft Internet Explorer to use WinInet to access IPv6-enabled Web sites.
The .NET Framework is the programming model of the .NET platform for building, deploying, and running Extensible Markup Language (XML) Web services and applications. It manages much of the plumbing, enabling developers to focus on writing the business logic code for their applications. The .NET Framework provided with the Windows .NET Server 2003 family is IPv6-enabled, allowing .NET Framework applications to operate over either IPv6 or IPv4.