AF INET - Protocol and Address Families

Protocol and Address Families

The socket API is a general interface for Unix networking and allows the use of various network protocols and addressing architectures.

The following lists a sampling of protocol families (preceded by the standard symbolic identifier) defined in a modern Linux or BSD implementation:

PF_LOCAL, PF_UNIX, PF_FILE Local to host (pipes and file-domain) PF_INET IP protocol family PF_AX25 Amateur Radio AX.25 PF_IPX Novell Internet Protocol PF_APPLETALK Appletalk DDP PF_NETROM Amateur radio NetROM PF_BRIDGE Multiprotocol bridge PF_ATMPVC ATM PVCs PF_X25 Reserved for X.25 project PF_INET6 IP version 6 PF_ROSE Amateur Radio X.25 PLP PF_DECnet Reserved for DECnet project PF_NETBEUI Reserved for 802.2LLC project PF_SECURITY Security callback pseudo AF PF_KEY PF_KEY key management API PF_NETLINK, PF_ROUTE routing API PF_PACKET Packet family PF_ASH Ash PF_ECONET Acorn Econet PF_ATMSVC ATM SVCs PF_SNA Linux SNA Project PF_IRDA IrDA sockets PF_PPPOX PPP over X sockets PF_WANPIPE Wanpipe API sockets PF_BLUETOOTH Bluetooth sockets

A socket for communications using any family is created with the socket function (see above), by specifying the desired protocol family (PF_-identifier) as an argument.

The original design concept of the socket interface distinguished between protocol types (families) and the specific address types that each may use. It was envisioned that a protocol family may have several address types. Address types were defined by additional symbolic constants, using the prefix AF_ instead of PF_. The AF_-identifiers are intended for all data structures that specifically deal with the address type and not the protocol family. However, this concept of separation of protocol and address type has not found implementation support and the AF_-constants were simply defined by the corresponding protocol identifier, rendering the distinction between AF_ versus PF_ constants a technical argument of no significant practical consequence. Indeed, much confusion exists in the proper usage of both forms.

However, the current POSIX.1—2008 specification doesn't specify any of PF_-constants, but only AF_-constants

Read more about this topic:  AF INET

Famous quotes containing the words address and/or families:

    There’s nothing that makes you so aware of the improvisation of human existence as a song unfinished. Or an old address book.
    Carson McCullers (1917–1967)

    Families have always been in flux and often in crisis; they have never lived up to nostalgic notions about “the way things used to be.” But that doesn’t mean the malaise and anxiety people feel about modern families are delusions, that everything would be fine if we would only realize that the past was not all it’s cracked up to be. . . . Even if things were not always right in families of the past, it seems clear that some things have newly gone wrong.
    Stephanie Coontz (20th century)