Technical Standard: Networking Services (XNS), Issue 5.2 Draft 2.0
Copyright © 1999 The Open Group
Technical Standard
Networking Services (XNS) Issue 5.2
Document Number: C808
ISBN: 1-85912-241-8
Frontmatter
Preface
The Open Group
Open Group Publications
Versions and Issues of Specifications
Corrigenda
Ordering Information
This Document
Structure
Typographical Conventions
Change History
Trade Marks
Acknowledgements
Referenced Documents
Footnotes
Common Information
Terminology
can
implementation-dependent
legacy
may
must
shall
should
undefined
unspecified
will
Use and Implementation of Interfaces
C Language Definition
The Compilation Environment
The Name Space
Relationship to the XSH Specification
Error Numbers
Thread Safety
Thread Cancellation Points
Relationship to Emerging Formal Standards
Footnotes
Sockets Interfaces
Sockets Overview
accept
bind
close
connect
fcntl
fgetpos
fsetpos
ftell
getpeername
getsockname
getsockopt
if_freenameindex
if_indextoname
if_nameindex
if_nametoindex
listen
lseek
poll
read
recv
recvfrom
recvmsg
select
send
sendmsg
sendto
setsockopt
shutdown
socket
socketpair
write
Sockets Headers
<fcntl.h>
<net/if.h>
<sys/socket.h>
<sys/stat.h>
<sys/uio.h>
IP Address Resolution Interfaces
endhostent
endnetent
endprotoent
endservent
gai_strerror
getaddrinfo
gethostname
getnameinfo
h_errno
htonl
inet_addr
inet_pton
IP Address Resolution Headers
<arpa/inet.h>
<netdb.h>
<netinet/tcp.h>
<unistd.h>
Use of Sockets for Local UNIX Connections
Headers
<sys/un.h>
Use of Sockets over Internet Protocols based on IPv4
Headers
<netinet/in.h>
Use of Sockets over Internet Protocols based on IPv6
Addressing
Compatibility with IPv4
Interface Identification
Options
Headers
<netinet/in.h> for IPv6
General Introduction to the XTI
Explanatory Notes for XTI
Transport Endpoints
Transport Providers
Association of a UNIX Process to an Endpoint
Use of the Same Protocol Address
Modes of Service
Error Handling
Synchronous and Asynchronous Execution Modes
Events and t_look()
Effect of Signals
Event Management
Footnotes
XTI Overview
Overview of Connection-oriented Mode
Initialisation/De-initialisation Phase
Overview of Connection Establishment
Overview of Data Transfer
Receiving Data
Sending Data
Overview of Connection Release
Overview of Connectionless Mode
Initialisation/De-initialisation Phase
Overview of Data Transfer
Receiving Data
Sending Data
XTI Features
Mandatory mechanisms:
Utility functions:
Optional mechanisms:
XTI Functions versus Protocols
States and Events in XTI
Transport Interfaces States
Outgoing Events
Incoming Events
Transport User Actions
State Tables
Events and TLOOK Error Indication
Footnotes
The Use of Options in XTI
Generalities
The Format of Options
The Elements of Negotiation
Multiple Options and Options Levels
Illegal Options
Initiating an Option Negotiation
Responding to a Negotiation Proposal
Retrieving Information about Options
Privileged and Read-only Options
Option Management of a Transport Endpoint
Supplements
The Option Value T_UNSPEC
The info Argument
Summary
Portability Aspects
Footnotes
XTI Library Functions and Parameters
How to Prepare XTI Applications
Key for Parameter Arrays
Return of TLOOK Error
Use of "struct netbuf"
t_accept
t_alloc
t_bind
t_close
t_connect
t_error
t_errno
t_free
t_getinfo
t_getprotaddr
t_getstate
t_listen
t_look
t_open
t_optmgmt
t_rcv
t_rcvconnect
t_rcvdis
t_rcvrel
t_rcvreldata
t_rcvudata
t_rcvuderr
t_rcvv
t_rcvvudata
t_snd
t_snddis
t_sndrel
t_sndreldata
t_sndudata
t_sndv
t_sndvudata
t_strerror
t_sync
t_sysconf
t_unbind
The <xti.h> Header
Footnotes
<xti.h>
Use of XTI with Internet Protocols
Introduction
Protocol Features
Options
TCP-level Options
Absolute Requirements
Further Remarks
T_UDP-level Options
Absolute Requirements
Further Remarks
T_IP-level Options
Absolute Requirements
Further Remarks
Functions
The <xti_inet.h> Header File
Footnotes
<xti_inet.h>
Use of XTI with ISO Transport Protocols
General
Options
Connection-mode Service
Options for Quality of Service and Expedited Data
Absolute Requirements
Further Remarks
Management Options
Absolute Requirements
Further Remarks
Connectionless-mode Service
Options for Quality of Service
Absolute Requirements
Further Remarks
Management Options
Absolute Requirements
Further Remarks
Functions
The <xti_osi.h> Header File
Footnotes
<xti_osi.h>
Guidelines for Use of XTI
Transport Service Interface Sequence of Functions
Example in Connection-oriented Mode
Example in Connectionless Mode
Writing Protocol-independent Software
Event Management
Short-term Solution
XTI Events
The Poll Function
Example of Use of Poll
The Select Function
Example of Use of Select
Use of XTI to Access NetBIOS
Introduction
Objectives
Scope
Issues
NetBIOS Names and Addresses
NetBIOS Connection Release
Options
XTI Functions
Compatibility.
Footnotes
XTI and TLI
Restrictions Concerning the Use of XTI
Relationship between XTI and TLI
Example XTI Header Files
Example <xti.h> Header
Example <xti_osi.h> Header File
Example <xti_inet.h> Header File
Minimum OSI Functionality
General
Rationale for using XTI-mOSI
Migrant Applications
OSI Functionality
mOSI API versus XAP
Upper Layers Functionality Exposed via mOSI
Naming and Addressing Information used by mOSI
XTI Options Specific to mOSI
Options
ACSE/Presentation Connection-mode Service
Further Remarks
Negotiation of Abstract and Transfer Syntax
Management Options
ACSE/Presentation Connectionless-mode Service
Management Options
Transport Service Options
Functions
Implementors' Notes
Upper Layers FUs, Versions and Protocol Mechanisms
Mandatory and Optional Parameters
Mapping XTI Functions to ACSE/Presentation Services
Connection-mode Services
Association Establishment (successful, unsuccessful)
Data Transfer
Association Release (orderly, abortive)
Connectionless-mode Services
Option Data Types and Structures
SPECIFIC ISO ACSE/PRESENTATION OPTIONS
Naming and Addressing Datatype
ACSE/Presentation Option Levels and Names
Object Identifier Representation within Options
Application Context Name Option
Presentation Context Definition and Result List Option
Default Abstract Syntax for mOSI
Default Transfer Syntax for mOSI
Default Application Context for mOSI
Reason Codes for Disconnections
<xti_mosi.h> Header File
SNA Transport Provider
Introduction
SNA Transport Protocol Information
General
SNA Addresses
Options
Connection-Mode Service Options
Options for Service Quality and Expedited Data
Functions
Mapping XTI to SNA Transport Provider
General Guidelines
Flows Illustrating Full Duplex Mapping
Annotations
Annotations
Annotations
Annotations
Annotations
Full Duplex Mapping
Parameter Mappings
Half Duplex Mapping
Return Code to Event Mapping
Compatibility.
Footnotes
IPX/SPX Transport Provider
General
Namespace
IPX
SPX
Options
IPX-level Options
SPX-level Options
Functions
ATM Transport Protocol Information for XTI
General
ATM Addresses
ATM Network Address
ATM Protocol Address
t_atm_sap Structure
Options
Signalling-level Options
Absolute Requirements
Further Remarks
Existing Functions
Implementation Notes
New Functions
Footnotes
t_addleaf
t_removeleaf
t_rcvleafchange
ATM Transport Protocol Information for Sockets
General
Existing Functions
Point-to-Multipoint Connections
Adding a Leaf
Removing a Leaf
Receiving Indication of a Change in Leaf Status
Implementation Notes
ATM Transport Headers
Proposed Additions to <xti.h>
Proposed Additions to <sys/socket.h>
<xti_atm.h>
<netatm/atm.h>
<_atm_common.h>
Glossary
abortive release
asynchronous mode
CL
CO
connection establishment
connection-mode
connectionless-mode
connection release
datagram
data transfer
DNS
EM
expedited data
ETSDU
expedited transport service data unit
FQDN
host byte order
initiator
ISO
legacy
network byte order
network host database
network net database
network protocol database
network service database
orderly release
OSI
responder
socket
SVID
synchronous mode
TC
TCP
TLI
transport address
transport connection
transport endpoint
transport provider identifier
transport service access point
transport service data unit
transport service provider
transport service user
TSAP
TSDU
UDP
user application
XTI
XEM
INDEX