Browse Prior Art Database

Basic Socket Interface Extensions for IPv6 (RFC2553)

IP.com Disclosure Number: IPCOM000003139D
Original Publication Date: 1999-Mar-01
Included in the Prior Art Database: 2000-Sep-13
Document File: 33 page(s) / 83K

Publishing Venue

Internet Society Requests For Comment (RFCs)

Related People

R. Gilligan: AUTHOR [+4]

Abstract

The de facto standard application program interface (API) for TCP/IP applications is the "sockets" interface. Although this API was developed for Unix in the early 1980s it has also been implemented on a wide variety of non-Unix systems. TCP/IP applications written using the sockets API have in the past enjoyed a high degree of portability and we would like the same portability with IPv6 applications. But changes are required to the sockets API to support IPv6 and this memo describes these changes. These include a new socket address structure to carry IPv6 addresses, new address conversion functions, and some new socket options. These extensions are designed to provide access to the basic IPv6 features required by TCP and UDP applications, including multicasting, while introducing a minimum of change into the system and providing complete compatibility for existing IPv4 applications. Additional extensions for advanced IPv6 features (raw sockets and access to the IPv6 extension headers) are defined in another document [4].

This text was extracted from a ASCII document.
This is the abbreviated version, containing approximately 3% of the total text.

Network Working Group R. Gilligan

Request for Comments: 2553 FreeGate

Obsoletes: 2133 S. Thomson

Category: Informational Bellcore

J. Bound

Compaq

W. Stevens

Consultant

March 1999

Basic Socket Interface Extensions for IPv6

Status of this Memo

This memo provides information for the Internet community. It does

not specify an Internet standard of any kind. Distribution of this

memo is unlimited.

Copyright Notice

Copyright (C) The Internet Society (1999). All Rights Reserved.

Abstract

The de facto standard application program interface (API) for TCP/IP

applications is the "sockets" interface. Although this API was

developed for Unix in the early 1980s it has also been implemented on

a wide variety of non-Unix systems. TCP/IP applications written

using the sockets API have in the past enjoyed a high degree of

portability and we would like the same portability with IPv6

applications. But changes are required to the sockets API to support

IPv6 and this memo describes these changes. These include a new

socket address structure to carry IPv6 addresses, new address

conversion functions, and some new socket options. These extensions

are designed to provide access to the basic IPv6 features required by

TCP and UDP applications, including multicasting, while introducing a

minimum of change into the system and providing complete

compatibility for existing IPv4 applications. Additional extensions

for advanced IPv6 features (raw sockets and access to the IPv6

extension headers) are defined in another document [4].

Table of Contents

1. Introduction.................................................3

2. Design Considerations........................................3

2.1 What Needs to be Changed....................................4

2.2 Data Types..................................................5

2.3 Headers.....................................................5

2.4 Structures..................................................5

3. Socket Interface.............................................6

3.1 IPv6 Address Family and Protocol Family.....................6

3.2 IPv6 Address Structure...........................