| Manpage of EXTRAFORMAT Description: Manual PageKeywords: 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
EXTRAFORMAT
Section: OpenSS7 X.25 Networking Data Structures (5) Updated: 2008-10-31 Index
Return to Main Contents
NAME
extraformat
- Non-OSI Quality of Service parameter format structure
INTERFACE
Network Layer Interface (NLI),
STREAMS.
SYNOPSIS
#include <netx25/x25_proto.h>
#define MAX_NUI_LEN 64
#define MAX_RPOA_LEN 8
#define MAX_CUG_LEN 2
#define MAX_FAC_LEN 32
#define MAX_TARIFFS 4
#define MAX_CD_LEN MAX_TARRIFS * 4
#define MAX_SC_LEN MAX_TARRIFS * 8
#define MAX_MU_LEN 16
struct extraformat {
unsigned char fastselreq;
unsigned char restrictresponse;
unsigned char reversecharges;
unsigned char pwoptions;
#define NEGOT_PKT 0x01 /* packet size negotiable */
#define NEGOT_WIN 0x02 /* window size negotiable */
#define ASSERT_HWM 0x04 /* concatentation limit assert */
unsigned char locpacket;
unsigned char rempacket;
#define DEF_X25_PKT 7 /* the standard default packet size */
unsigned char locwsize;
unsigned char remwsize;
#define DEF_X25_WIN 2 /* the standard default window size */
int nsdulimit;
unsigned char nui_len;
unsigned char nui_field[MAX_NUI_LEN];
unsigned char rpoa_len;
unsigned char rpoa_field[MAX_RPOA_LEN];
unsigned char cug_type;
unsigned char cug_field[MAX_CUG_LEN];
unsigned char reqcharging;
unsigned char chg_cd_len;
unsigned char chg_cd_field[MAX_CD_LEN];
unsigned char chg_sc_len;
unsigned char chg_sc_field[MAX_SC_LEN];
unsigned char chg_mu_len;
unsigned char chg_mu_field[MAX_MU_LEN];
unsigned char called_add_mod;
unsigned char call_redirect;
struct lsapformat called;
unsigned char call_deflect;
unsigned char x_fac_len;
unsigned char cq_fac_len;
unsigned char cd_fac_len;
unsigned char fac_field[MAX_FAC_LEN];
};
MEMBERS
The fields in this structure are:
- fastselreq
- Applies only to non-OSI applications, for example X.29. A non-zero value means
the X.25 facility fast select is to be requested or indicated. Note: For CONS,
the use of fast select need not be requested.
- restrictresponse
- Sets response to be a Clear Request. If the response to a Connect Request or
Indication is to be a Disconnect Indication, the filed
restrictresponse
is non-zero.
- reversecharges
- A non-zero value means that reverse charging is requested or indicated for this
connection. Note: The configuration mode bit,
SUB_REVCHARGE,
has an impact on whether reverse charging is indicated, since it is possible to
select a per-subnetwork-status for receipt of reverse charging.
- pwoptions
- The
pwoptions
field is used to indicate per (virtual) circuit options. The field is a bit
map interpreted as shown below:
-
| Bit | Value | Symbol | Meaning
|
|
| bit 0 | 0 | - |
Packet size negotiation not permitted
|
| 1 | NEGOT_PKT |
Packet size negotiation permitted
|
| bit 1 | 0 | - |
Window size negotiation not permitted
|
| 1 | NEGOT_WIN |
Window size negotiation permitted
|
| bit 2 | 0 | - |
No concatentation limit asserted
|
| 1 | ASSERT_HWM |
Assert concatentation limit
|
|
This field is used for two reasons:
- 1.
- The X.25 software always indicates the values of the window and packet sizes
operating on the virtual circuit. The field
pwoptions
for an incoming call indicates whether these values are negotiable.
- 2.
- In Connect Requests and Connect Resposnes, the NLI user can set
nsdulimit,
the limit value for packet concatentation by the X.25 level, to a value
different from the limit in the subnetwork configuration database. It is not
a negotiable option, so whatever the user requests is used.
- locpacket, rempacket
- If the fields
locpacket and rempacket
are non-zero,
locpacket
contains indicated or negotiated encoded packet sizes for the direction
local-to-remote and
rempacket
contains the indicated or negotiated encoded packet sizes for the direction
remote-to-local.
The actual packet size is 2 to the power of the value specified.
The standard default packet size,
DEF_X25_PKT,
is
7,
(i.e.,
128
octets).
- locwsize, remwsize
- If the fields
locwsize and remwsize
are non-zero, they contain indicated or negotiated window sizes for the
directions local-to-remote and remote-to-local. The standard default window
size,
DEF_X25_WIN
is
2.
- nsdulimit
- Specifies the packet concatenation limit.
If the field
nsdulimit
is non-zero and the appropriate bit is set in the
pwoptions
field described above, the
nsdulimit
specified is ued as the concatentation limit.
- nui_len
- The length of any Network User Identification used in Call Requests and
Responses.
- nui_field
- Network User Identification used in Call Requests and Responses. This is not
available on yellow book X.25 (1980) networks.
- nui_len, nui_field
- The network user identification (NUI) is used in connect requests and
responses. It is not available on yellow book X.25 (1980) networks. If the
field
nui_len
is non-zero, the network user identification is supplied in the
nui_field
and is of length
nui_len
octets.
- rpoa_len
- The length of any RPOA DNIC information used in Call Requests. Valid values
for
rpoa_len
are
0, 4, 8, 12 and 16.
- rpoa_field
- Any Recognized Private Operating Agency (RPOA) DNIC information. This is used
in Call Requests only. It is stored as two BCD digits per byte, right
justified.
-
On yellow book X.25 (1980) networks, this is restricted to one RPOA and 4 BCD
digits. Basic format encoding is used.
On red book X.25 (1984) and blue book X.25 (1988) networks, there can be one
or more RPOA. Extended format encoding is used if there is more than one RPOA.
The maximum number of RPOA is 4.
- rpoa_len, rpoa_field
- Recognized primitive operating agency (RPOA), used in connect requests only.
If the field
rpoa_len
is non-zero, the RPOA DNIC information is supplied in
rpoa_field
and is of length
rpoa_len
semi-octets.
-
For a yellow book X.25 (1980) network, this is restricted to one RPOA of
length 4 semi-octets. The basic format encoding is used for the RPOA
selected.
For a red or blue book X.25 (1984 or 1988) network, one or more RPOAs can be
selected. The extended format encoding is used only if the number of RPOAs
selected is greater than 1. The maximum number of RPOAs selected is
restricted to 4. Valid values for rpoa_len are 0, 4, 8, 12 and 16.
- cug_type
- Closed user group type. Possible values are:
-
- CUG
- Closed user group.
- BCUG
- Bilateral CUG.
- 0
- No CUG used.
- cug_field
- Any applicable CUG information, stored as two BCD digits per byte, right
justified.
-
- Note:
- Incoming Close User Group facilities are assumed to have been validated by the
network. No further checking is performed.
- cug_type, cug_field
- This field is used in Connect Requests and Indications only. If the field
cug_type
is non-zero, the CUG information is supplied right-justified in
cug_field.
Values for
cut_type
are as follows:
-
- CUG
- Close user group, up to four semi-octets.
- BGUG
- Bilateral CUG (two members only), four semi-octets.
- Note:
- Incomfing CUG facilities are assumed to have been validated by the network. No
further checking is performed.
- reqcharging
- Requests call charging in a Call Request or Connect Accept.
- chg_cd_len
- Gives the length of the
chg_cd_field.
- chg_cd_field
- Specifies dureation of the call if call charging is in use. Used in a
Disconnect Indication or Confirmation.
- chg_sc_len
- Give the length of the
chg_sc_field.
- chg_sc_field
- Specifies segment count if call charging is in use. Used in a Disconnect
Indication or Confirmation.
- chg_mu_len
- Gives the length of the
chg_mu_field.
- chg_mu_field
- Specifies the monetary unit if call charging is in use. Used in a Disconnect
Indication or Confirmation.
- reqcharging, chg_cd_len, chg_cd_field, chg_sc_len, chg_sc_field, chg_mu_len, chg_mu_field
- If the field
reqcharging
is non-zero in a Connect Request or Indication, Call Charging is requeseted.
In a Disconnect Indication or Confirmation, the following fields give the
charging information:
chg_cd_len and chg_cd_field
give the length and value of the call duration;
chg_sc_len and chg_sc_field
give the length and value of the segment count;
chg_mu_len and chg_mu_field
give the length and value of the monetary unit.
A zero length field means no charging informaion is supplied for the relevant
charging category.
- called_add_mod
- A one-byte field holding the reason for any address modification as defined in
X.25 Recommendation[1],
encoded as follows:
-
- x0000001
- Called DTE busy. Call redirected.
- x0000111
- Call distribution within hung group.
- x0001001
- Called DTE out of order. Call redirected.
- x0001111
- Called DTE has requested systematic redirection.
- 11000000
- Called DTE deflected call.
- 11000001
- Called DTE busy. Gateway redirected call.
- 11001001
- Called DTE out of order. Gateway redirected call.
- 11001111
- Called DTE has requested systematic redirection. Gateway redirected call.
Where
x
indicates that this bit is
0
if the address modification occured in a public
data network and
1
if it occured ina private network.
- call_redirect
- A one-byte field holding the reason for a call redirection as defined in the
X.25 Recommendation[1],
encoded as follows:
-
- 00000001
- Called DTE busy. Call redirected.
- 00000111
- Call distribution within hunt group.
- 00001001
- Called DTE out of order. Call redirected.
- 00001111
- Called DTE has requested systematic redirection.
- 11000000
- Called DTE deflected call.
- 11000001
- Called DTE busy. Gateway redirected call.
- 11001001
- Called DTE out of order. Gateway redirected call.
- 11001111
- Called DTE has requested systematic redirection. Gateway redirected call.
- called
- Supplies the originally-called DTE address.
- call_deflect
- A one-byte field holding the reason for call deflection as defined in X.25
Recommendation[1],
encoded as follows:
-
- 11000000
- Called DTE deflected call.
- 11000001
- Called DTE busy. Gateway redirected call.
- 11001001
- Called DTE out of order. Gateway redirected call.
- 11001111
- Called DTE has requested systematic redirection. Gateway redirected call.
- deflected
- In a Clear Request, contains the DTE address, and if required, the NSAP that a
call is to be deflected to.
- x_fac_len
- Indicates the length of a
fac_field
relating to X.25 facilities.
- cq_fac_len
- Indicates the length of a
fac_field
relating to non-X.25 facilities for the calling network.
- cd_fac_len
- Indicates the length of a
fac_field
relating to non-X.25 facilities for the called network.
- fac_field
- This field is used in Call Requests and Connect Accepts only. It allows for
the passing of explicit facility encoded strings for X.25 facilities, and
non-X25 facilities for calling and called networks.
-
- Note:
- The contents of this field are not validated or acted upon by the code. The
X.25 facilities are inserted at the end of any other X.25 facilities which are
passed in the Call Request/Accept (for example, packet/window sizes). If any
non-X.25 facilities are supplied the appropriate marker is inserted before the
supplied facilities. Take care not to duplicate any facilities.
- x_fac_len, cq_fac_len, cd_fac_len, fac_field
- These fields are used in Connect Requests and Indications only. Provision is
made for the passing of explicity facility encoded strings for X.25 facilities,
and non-X.25 facilities for calling and called networks. The fields
x_fac_len, cq_fac_len and cd_fac_len
denote the lengths of the facilities in the field
fac_field
relating to X.25 facilities, non-X.25 facilities for the calling network, and
non-X.25 facilities for the called network. If the length field is zero, this
denotes that no facilities are supplied for the corresponding facility
category. Note: The contents of this field, if supplied, are not validated or
acted upon by the code. The X.25 facilities are inserted at the end of any
other X.25 facilities that are passed in the Connect Request/Indication (for
example, packet/window sizes). If any non-X.25 facilities are supplied, the
appropriate marker is inserted before the supplied facilities.
DESCRIPTION
For those NLI applications that require them, the non-OSI facilities supported
are as follows:
- *
- non-OSI extended addressing;
- *
- X.25 fast select request/indication with no restriction on response;
- *
- X.25 fast select reqeust/indication with restriction on response;
- *
- X.25 reverse charging;
- *
- X.25 packet size negotiation;
- *
- X.25 window size negotiation;
- *
- X.25 network user identification;
- *
- X.25 recognized private operating agency selection;
- *
- X.25 closed user groups;
- *
- X.25 call deflection;
- *
- X.25 programmable facilities.
NOTICES
The Network Layer Interface (NLI) is a proprietary interface without a formal
standard. Either the Network Provider Interface (NPI)[2],
npi(7),
or the XTI-X25 interface[3],
xti_x25(3),
should be used in its stead.
FILES
The
extraformat
structure is defined in the
<netx25/x25_proto.h>
file.
SEE ALSO
qosformat(3),
NLI(7),
STREAMS(4).
COMPATIBILITY
The
extraformat
structure is compatible with NLI, and implementations based on NLI such as
Solaris Solstice® X.25 9.2[4],
IRIX SX.25[5],
HP-UX X.25/9000,
PT X.25[6],
with the following considerations:
- ---
- Solaris Solstice® X.25 9.2[4],
IRIX SX.25[5],
PT X.25[6],
are consistent in their documentation of the
extraformat
structure.
- ---
- NLI is an inherently low level and non-portable interface and should not be
used by portable programs. Portable programs should use the NPI or XX25
interfaces in its stead.
- ---
- Binary compatibility is not attempted: only a rough source compatibility. Any
binary compatibility exhibited is a bug and is scheduled to be removed in the
next release.
See
NLI(7),
STREAMS(4),
for additional compatiblity considerations.
CONFORMANCE
The NLI is not a formal standard. The
OpenSS7tm
implementation of NLI conforms to documentation for Version 3 of the NLI.
HISTORY
The NLI is an interface originally developed by Spider Systems, Ltd. (now a
division of Emmerson Power). The NLI interface found its way into may
mainstream UNIX implementations and UNIX-like RTOS sporting STREAMS such as
Windriver's VxWorks. The NLI was never standardized and remains an inherently
non-portable interface.
VERSIONS
This manual page was written for the
OpenSS7tm
implementation of X.25.
REFERENCES
- [1]
- ITU-T Recommendation X.25,
Interface between Data Terminal Equipment (DTE) and Data Circuit-terminating Equipment (DCE) for terminals operating in the packet mode and connected to the public data networks by dedicated circuit, October 1996, (Geneva), ITU, ITU-T Telecommunication Standardization Sector of ITU.
(Previously "CCITT Recommendation")
<http://www.itu.int/rec/T-REC-X.25/>
- [2]
- 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>
- [3]
- C411 (XX25),
X/Open CAE Specification:
X.25 Programming Interface using XTI (XX25), November 1995, (Berkshire, UK), X/Open, Open Group Publication.
[ISBN: 1-85912-136-5]
<http://www.opengroup.org/onlinepubs/>
- [4]
- Solstice® X.25,
Solstice® X.25 9.2 Programming Guide, October 1999, (Palo Alto, California), Sun Microsystems, Inc., Sun.
[Part No: 806-1235-10]
<http://docs-pdf.sun.com/>
- [5]
- IRIX® SX.25,
SX.25 NLI Programming's Guide, 1994, (Mountainview, California), Silicon Graphics, Inc., SGI Technical Publications.
[Doc. No: 007-2268-002]
<http://techpubs.sgi.com/>
- [6]
- PT X.25,
X.25 Protocol User's Manual, 2007, (Rochester, New York), Performance Technologies Inc., PT.
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 X.25 Networking: Package strx25 version 0.9.2.1 released 2008-10-31.
Copyright©1997-2008OpenSS7 Corp.
All Rights Reserved.
(See roff source for permission notice.)
Index
- NAME
- INTERFACE
- SYNOPSIS
- MEMBERS
- DESCRIPTION
- NOTICES
- FILES
- SEE ALSO
- COMPATIBILITY
- CONFORMANCE
- HISTORY
- VERSIONS
- REFERENCES
- TRADEMARKS
- IDENTIFICATION
This document was created by
man2html,
using the manual pages.
Time: 20:20:39 GMT, May 20, 2013
|