Description: Manual Page
Keywords: ss7 ss7/ip ss7 over ip ss7 mtp ss7 sccp ss7 tcap sigtran mtp sccp tcap openss7 acb56 linux telephony pstn linux telephony linux nebs linux compactpci
NPI-SCCP
Section: Network Provider Interface (NPI) (7)
Updated: 2008-10-31
Index
Return to Main Contents
NAME
NPI-SCCP
- Network Provider Interface - Corrigendum for SCCP Conformance
SYNOPSIS
#include <sys/npi.h>
#include <sys/npi_ss7.h>
#include <sys/npi_mtp.h>
#include <sys/npi_sccp.h>
-
int fd = open(device, flags);
DESCRIPTION
NPI-SCCP
provides a Stream supporting the Network Provider Interface[1],
npi(7),
to the Signalling Connection Control Part[2],
sccp(4).
This
STREAMS(9)
interface provides the
sccp(4)
protocol service interface using the
N-primitives of the
npi(7).
This interface is intended solely for use by user programs or protocol modules
requiring a rich
npi(7)
interface.
ADDRESS FORMATS
The
NPI-SCCP
address is formatted as a socket address for compatibility with the
sockets(3)
library for
tpi(7).
The address is formatted as follows:
typedef struct sccp_addr {
np_ulong ni; /* network indicator */
np_ulong ri; /* routing indicator */
np_ulong pc; /* point code (-1 not present) */
np_ulong ssn; /* subsystem number (0 not present) */
np_ulong gtt; /* type of global title */
np_ulong tt; /* translation type */
np_ulong es; /* encoding scheme */
np_ulong nplan; /* numbering plan */
np_ulong nai; /* nature of address indicator */
np_ulong alen; /* address length */
np_uchar addr[0]; /* address digits */
/* followed by address bytes */
} sccp_addr_t;
#define SCCP_RI_DPC_SSN 0 /* route on DPC/SSN */
#define SCCP_RI_GT 1 /* route on GT */
#define SCCP_GTTTYPE_NONE 0 /* no GT */
#define SCCP_GTTTYPE_NAI 1 /* NAI only */
#define SCCP_GTTTYPE_TT 2 /* TT only */
#define SCCP_GTTTYPE_NP 3 /* TT, ES, NPLAN */
#define SCCP_GTTTYPE_NP_NAI 4 /* TT, ES, NPLAN and NAI */
The
NPI-SCCP
address contains the following fields:
- ni
- Conveys the Network Indicator. The Network Indicator is an implementation specific indication of
the numbering space in which the
pc
is relevant. Network Indicators are assigned by the system administrator.
- ri
- Conveys the Routing Indicator. The Routing Indicator determines which elements of the SCCP address
will be used for routing and can be one of the following values:
-
- SCCP_RI_DPC_SSN
- Route on DPC/SSN.
- SCCP_RI_GT
- Route on Global Title.
- pc
- Conveys the SCCP Signalling Point Code. The format of the Signalling Point Code is network
dependent. Signalling Point Codes are least significant bit aligned in a 32-bit long word.
- ssn
- Conveys the SCCP Subsystem Number. The subsystem number is network specific.
- gtt
- Conveys the Global Title type. The global title type can also take on one of the following values:
-
- SCCP_GTTTYPE_NONE
- No global title translation.
- SCCP_GTTTYPE_NAI
- Translate on Nature of Address Indicator only.
- SCCP_GTTTYPE_TT
- Translate on Translation Type only.
- SCCP_GTTTYPE_NP
- Translate on Translation Type, Encoding Scheme and Numbering Plan.
- SCCP_GTTTYPE_NP_NAI
- Translate on Translation Type, Encoding Scheme, Numbering Plan and Nature of Address Indicator.
- tt
- Conveys the Translation type. Translation type assignments are network specific.
- es
- Conveys the Encoding Scheme. The encoding scheme can also take on one of the following values:
-
- SCCP_ES_UNKNOWN
- SCCP_ES_BCD_ODD
- SCCP_ES_BCD_EVEN
- SCCP_ES_NATIONAL
- nplan
- Conveys the Numbering Plan. The numbering plan can also take on one of the following values:
-
- SCCP_NPLAN_UNKNOWN
- SCCP_NPLAN_ISDN
- SCCP_NPLAN_GENERIC
- SCCP_NPLAN_DATA
- SCCP_NPLAN_TELEX
- SCCP_NPLAN_MARITIME
- SCCP_NPLAN_LAND_MOBILE
- SCCP_NPLAN_ISDN_MOBILE
- SCCP_NPLAN_PRIVATE
- nai
- Conveys the Nature of Address Indicator.
- alen
- Conveys the Address Length (length of the
addr
array).
- addr
- Conveys the Address.
LOCAL MANAGEMENT PRIMITIVES
N_INFO_REQ
As described in
N_INFO_REQ(7).
N_INFO_ACK
As described in
N_INFO_ACK(7).
N_BIND_REQ
As described in
N_BIND_REQ(7).
N_BIND_ACK
As described in
N_BIND_ACK(7).
N_UNBIND_REQ
As described in
N_UNBIND_REQ(7).
N_OK_ACK
As described in
N_OK_ACK(7).
N_ERROR_ACK
As described in
N_ERROR_ACK(7).
N_OPTMGMT_REQ
As described in
N_OPTMGMT_REQ(7).
PROTOCOL SERVICE PRIMITIVES
N_UNITDATA_REQ
As described in
N_UNITDATA_REQ(7).
N_UNITDATA_IND
As described in
U_UNITDATA_IND(7).
N_UDERROR_IND
As described in
N_UDERROR_IND(7).
N_CONN_REQ
As described in
N_CONN_REQ(7).
N_CONN_CON
As described in
N_CONN_CON(7).
N_CONN_IND
As described in
N_CONN_IND(7).
N_CONN_RES
As described in
N_CONN_RES(7).
N_DATA_REQ
As described in
N_DATA_REQ(7).
N_DATA_IND
As described in
N_DATA_IND(7).
N_EXDATA_REQ
As described in
N_EXDATA_REQ(7).
N_DISCON_REQ
As described in
N_DISCON_REQ(7).
N_DISCON_IND
As described in
N_DISCON_IND(7).
N_DATACK_REQ
As described in
N_DATACK_REQ(7).
N_DATACK_IND
As described in
N_DATACK_IND(7).
N_RESET_REQ
As described in
N_RESET_REQ(7).
N_RESET_RES
As described in
N_RESET_RES(7).
N_RESET_IND
As described in
N_RESET_IND(7).
N_RESET_CON
As described in
N_RESET_CON(7).
EXTENSION SERVICE PRIMITIVES
N_NOTICE_IND
As described in
N_NOTICE_IND(7).
N_INFORM_REQ
As described in
N_INFORM_REQ(7).
N_INFORM_IND
As described in
N_INFORM_IND(7).
N_COORD_REQ
As described in
N_COORD_REQ(7).
N_COORD_RES
As described in
N_COORD_RES(7).
N_COORD_IND
As described in
N_COORD_IND(7).
N_COORD_CON
As described in
N_COORD_CON(7).
N_STATE_REQ
As described in
N_STATE_REQ(7).
N_STATE_IND
As described in
N_STATE_IND(7).
N_PCSTATE_IND
As described in
N_PCPSTATE_IND(7).
N_TRAFFIC_IND
As described in
N_TRAFFIC_IND(7).
IOCTLS
SCCP-NPI
supoprts the NPI input-output controls described for
npi(7).
Also, it supports the SCCP management input-output controls described in
sccp(7).
ERROR HANDLING
Protocol errors are handled using the
N_UDERROR_IND(7), N_REST_IND(7) and N_DISCON_IND(7)
primitives described above.
Non-fatal errors are handled using the
N_ERROR_ACK(7)
primitive as described in
npi(7).
Fatal errors are handled using the
STREAMS
M_ERROR(9)
or
M_HANGUP(9)
primitives which result in the failure of all subsequent operations on the Stream.
ERRORS
The following protocol errors can be returned in the
ERROR_type
field of the
N_UDERROR_IND(7)
primitive, or in the
RESET_reason
field of the
N_RESET_IND(7)
primitive, or the
DISCON_reason
field of the
N_DISCON_IND(7)
primitives.
- SCCP_RELC_END_USER_ORIGINATED
- SCCP_RELC_END_USER_BUSY
- SCCP_RELC_END_USER_FAILURE
- SCCP_RELC_SCCP_USER_ORIGINATED
- SCCP_RELC_REMOTE_PROCEDURE_ERROR
- SCCP_RELC_INCONSISTENT_CONNECTION_DATA
- SCCP_RELC_ACCESS_FAILURE
- SCCP_RELC_ACCESS_CONGESTION
- SCCP_RELC_SUBSYSTEM_FAILURE
- SCCP_RELC_SUBSYSTEM_CONGESTION
- SCCP_RELC_MTP_FAILURE
- SCCP_RELC_NETWORK_CONGESTION
- SCCP_RELC_EXPIRATION_OF_RESET_TIMER
- SCCP_RELC_EXPIRATION_OF_RECEIVE_INACTIVITY_TIMER
- SCCP_RELC_RESERVED
- SCCP_RELC_UNQUALIFIED
- SCCP_RELC_SCCP_FAILURE
- SCCP_RETC_NO_ADDRESS_TYPE_TRANSLATION
- SCCP_RETC_NO_ADDRESS_TRANSLATION
- SCCP_RETC_SUBSYSTEM_CONGESTION
- SCCP_RETC_SUBSYSTEM_FAILURE
- SCCP_RETC_UNEQUIPPED_USER
- SCCP_RETC_MTP_FAILURE
- SCCP_RETC_NETWORK_CONGESTION
- SCCP_RETC_UNQUALIFIED
- SCCP_RETC_MESSAGE_TRANSPORT_ERROR
- SCCP_RETC_LOCAL_PROCESSING_ERROR
- SCCP_RETC_NO_REASSEMBLY_AT_DESTINATION
- SCCP_RETC_SCCP_FAILURE
- SCCP_RETC_SCCP_HOP_COUNTER_VIOLATION
- SCCP_RETC_SEGMENTATION_NOT_SUPPORTED
- SCCP_RETC_SEGMENTATION_FAILURE
- SCCP_RETC_MESSAGE_CHANGE_FAILURE
- SCCP_RETC_INVALID_INS_ROUTING_REQUEST
- SCCP_RETC_INVALID_INSI_ROUTING_REQUEST
- SCCP_RETC_UNAUTHORIZED_MESSAGE
- SCCP_RETC_MESSAGE_INCOMPATIBILITY
- SCCP_RETC_CANNOT_PERFORM_ISNI_CONSTRAINED_ROUTING
- SCCP_RETC_REDUNDANT_ISNI_CONSTRAINED_ROUTING_INFO
- SCCP_RETC_UNABLE_TO_PERFORM_ISNI_IDENTIFICATION
- SCCP_RESC_END_USER_ORIGINATED
- SCCP_RESC_SCCP_USER_ORIGINATED
- SCCP_RESC_MESSAGE_OUT_OF_ORDER_INCORRECT_PS
- SCCP_RESC_MESSAGE_OUT_OF_ORDER_INCORRECT_PR
- SCCP_RESC_REMOTE_PROC_ERROR_MESSAGE_OUT_OF_WINDOW
- SCCP_RESC_REMOTE_PROC_ERROR_INCORRECT_PS_AFTER_INIT
- SCCP_RESC_REMOTE_PROC_ERROR_GENERAL
- SCCP_RESC_REMOTE_END_USER_OPERATIONAL
- SCCP_RESC_NETWORK_OPERATIONAL
- SCCP_RESC_ACCESS_OPERATIONAL
- SCCP_RESC_NETWORK_CONGESTION
- SCCP_RESC_NOT_OBTAINABLE
- SCCP_RESC_UNQUALIFIED
- SCCP_ERRC_LRN_MISMATCH_UNASSIGNED_DEST_LRN
- SCCP_ERRC_LRN_MISMATCH_INCONSISTENT_SOURCE_LRN
- SCCP_ERRC_POINT_CODE_MISMATCH
- SCCP_ERRC_SERVICE_CLASS_MISMATCH
- SCCP_ERRC_UNQUALIFIED
- SCCP_REFC_END_USER_ORIGINATED
- SCCP_REFC_END_USER_CONGESTION
- SCCP_REFC_END_USER_FAILURE
- SCCP_REFC_SCCP_USER_ORIGINATED
- SCCP_REFC_DESTINATION_ADDRESS_UNKNOWN
- SCCP_REFC_DESTINATION_INACCESSIBLE
- SCCP_REFC_NETWORK_RESOURCE_QOS_NOT_AVAIL_PERM
- SCCP_REFC_NETWORK_RESOURCE_QOS_NOT_AVAIL_TRANS
- SCCP_REFC_ACCESS_FAILURE
- SCCP_REFC_ACCESS_CONGESTION
- SCCP_REFC_SUBSYSTEM_FAILURE
- SCCP_REFC_SUBSYSTEM_CONGESTION
- SCCP_REFC_EXPIRATION_OF_NC_ESTAB_TIMER
- SCCP_REFC_INCOMPATIBLE_USER_DATA
- SCCP_REFC_RESERVED
- SCCP_REFC_UNQUALIFIED
- SCCP_REFC_SCCP_HOP_COUNTER_VIOLATION
- SCCP_REFC_SCCP_FAILURE
- SCCP_REFC_NO_ADDRESS_TYPE_TRANSLATION
- SCCP_REFC_UNEQUIPPED_USER
Any of the non-fatal errors described in
npi(7)
may also be returned in an
N_ERROR_ACK(7)
primitive by
SCCP-NPI.
Any of the fatal errors described in
npi(7)
may also be returned as a
errno
value in reponse to a read or write operation on the Stream.
BUGS
SCCP-NPI
has no known bugs.
SEE ALSO
sccp(7),
npi(7),
streamio(2),
putmsg(2s),
putpmsg(2),
getmsg(2s),
getpmsg(2),
read(2s),
write(2s).
COMPATIBILITY
This interface is specific to the OpenSS7 Project.
CONFORMANCE
This interface conforms to NPI Revision 2[1].
HISTORY
The Network Provider Interface[1]
first appeared in SVR4[3].
REFERENCES
- [1]
- NPI,
Open Group CAE Specification:
Network Provider Interface (NPI) Specification, Revision 2.0.0, Draft 2, August 17, 1992, (Parsippany, New Jersey), UNIXInternational,Inc., UNIX International Press.
<http://www.openss7.org/docs/npi.pdf>
- [2]
- ITU-T Recommendation Q.711,
Functional Description of Signalling Connection Control Part, March 1993, (Geneva), ITU, ITU-T Telecommunication Standardization Sector of ITU.
(Previously "CCITT Recommendation")
<http://www.itu.int/rec/T-REC-Q.711/>
- [3]
- SVR 4,
UNIX® System V Release 4 Programmer's Manual, 1990, (Englewood Cliffs, New Jersey), AT&T UNIX System Laboratories, Inc., Prentice Hall.
TRADEMARKS
- OpenSS7tm
- is a trademark of OpenSS7 Corporation.
- Linux®
- is a registered trademark of Linus Torvalds.
- UNIX®
- is a registered trademark of The Open Group.
- Solaris®
- is a registered trademark of Sun Microsystems.
Other trademarks are the property of their respective owners.
IDENTIFICATION
-
OpenSS7 SS7 Stack: Package strss7 version 0.9a.8 released 2008-10-31.
Copyright©1997-2008OpenSS7 Corp.
All Rights Reserved.
(See roff source for permission notice.)
Index
- NAME
- SYNOPSIS
- DESCRIPTION
- ADDRESS FORMATS
- LOCAL MANAGEMENT PRIMITIVES
- N_INFO_REQ
- N_INFO_ACK
- N_BIND_REQ
- N_BIND_ACK
- N_UNBIND_REQ
- N_OK_ACK
- N_ERROR_ACK
- N_OPTMGMT_REQ
- PROTOCOL SERVICE PRIMITIVES
- N_UNITDATA_REQ
- N_UNITDATA_IND
- N_UDERROR_IND
- N_CONN_REQ
- N_CONN_CON
- N_CONN_IND
- N_CONN_RES
- N_DATA_REQ
- N_DATA_IND
- N_EXDATA_REQ
- N_DISCON_REQ
- N_DISCON_IND
- N_DATACK_REQ
- N_DATACK_IND
- N_RESET_REQ
- N_RESET_RES
- N_RESET_IND
- N_RESET_CON
- EXTENSION SERVICE PRIMITIVES
- N_NOTICE_IND
- N_INFORM_REQ
- N_INFORM_IND
- N_COORD_REQ
- N_COORD_RES
- N_COORD_IND
- N_COORD_CON
- N_STATE_REQ
- N_STATE_IND
- N_PCSTATE_IND
- N_TRAFFIC_IND
- IOCTLS
- ERROR HANDLING
- ERRORS
- BUGS
- SEE ALSO
- COMPATIBILITY
- CONFORMANCE
- HISTORY
- REFERENCES
- TRADEMARKS
- IDENTIFICATION
This document was created by
man2html,
using the manual pages.
Time: 00:38:22 GMT, May 24, 2013