www.delorie.com/gnu/docs/glibc/libc_313.html   search  
 
Buy the book!


The GNU C Library

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

16.6 The Internet Namespace

This section describes the details of the protocols and socket naming conventions used in the Internet namespace.

Originally the Internet namespace used only IP version 4 (IPv4). With the growing number of hosts on the Internet, a new protocol with a larger address space was necessary: IP version 6 (IPv6). IPv6 introduces 128-bit addresses (IPv4 has 32-bit addresses) and other features, and will eventually replace IPv4.

To create a socket in the IPv4 Internet namespace, use the symbolic name PF_INET of this namespace as the namespace argument to socket or socketpair. For IPv6 addresses you need the macro PF_INET6. These macros are defined in `sys/socket.h'.

Macro: int PF_INET
This designates the IPv4 Internet namespace and associated family of protocols.

Macro: int PF_INET6
This designates the IPv6 Internet namespace and associated family of protocols.

A socket address for the Internet namespace includes the following components:

You must ensure that the address and port number are represented in a canonical format called network byte order. See section 16.6.5 Byte Order Conversion, for information about this.

16.6.1 Internet Socket Address Formats  How socket addresses are specified in the Internet namespace.
16.6.2 Host Addresses  All about host addresses of Internet host.
16.6.6 Protocols Database  Referring to protocols by name.
16.6.3 Internet Ports  Internet port numbers.
16.6.4 The Services Database  Ports may have symbolic names.
16.6.5 Byte Order Conversion  Different hosts may use different byte ordering conventions; you need to canonicalize host address and port number.
16.6.7 Internet Socket Example  Putting it all together.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

  webmaster     delorie software   privacy  
  Copyright 2003   by The Free Software Foundation     Updated Jun 2003