The XTP ports are used within the Abilis CPX in order to implement the proprietary protocol "X.25 session tunnelling protocol", that allows the transport of X.25 sessions over TCP/IP connections.
The transport of the X.25 sessions on TCP connections is carried out by the driver of XTP port, through which a one-to-one correspondence is established between sessions of the Connection Oriented Router and TCP sessions, that means that a TCP session transports only one X.25 session.
The relation between the X.25 sessions and TCP connections are realized without the definition of predefined correspondences between the NUA X.25 and the IP addresses: the TCP connections are only established whenever the Connection Oriented Router receives a connection request.
The IP address of TCP connection is supplied by the Connection Oriented Router to XTP port during the phase of connection establishment, according to the appropriated information in the routing SVC.
The main good point of this strategy resides in the flexibility and the dinamicity of routings: in fact the information present in SVC routing are run-time modifiable and they do not need to restart the system.
Consequently the system is potentially able to reach any number of wished IP destinations: as an example with a single port of type XTP it is possible to manage up to 255 bidirectional switched sessions, addressing them towards as many different IP destinations.
The advantages of the proprietary protocol used by Abilis CPX are:
information about control of flow are estimated by the protocol X.25 (RR, RNR), they are not forwarded along the IP path;
the activities of buffering and management of the transmission window, provided by the TCP/IP protocol, are not influenced, neither penalized by the X.25 protocol ones.
A disadvantage could be the strategy for opening the chosen TCP/IP connection, because the time needed for detecting an eventual failure could even be longer than the standard one allowed by the X.25 protocol (usually 30 seconds). It turns into difficulty for offering a service of alternative routing from the Connection Oriented Router. The same considerations may be carried out for unexpected TCP/IP disconnections. However such mishaps can be over taken through a right setting of the proper time-outs.
In the Abilis CPX version, which this manual refers to, the PVC connections are not currently supported, but the protocol can be extended, without limits, in further implementations.
Here are some examples of SVC routings used to transport X.25 sessions over TCP/IP connections.
EXAMPLE N.1
PR:3 POI:301 CGI:* CDI:888 UDI:* NEXT:N POO:907 CGO:* CDO:* UDO:* COMP:NO FFO:* IPDEST:192.168.000.253
This routing allows to route calls coming from the X25 301 port (field POI:), with the features defined by the parameters CGI:, CDI: and UDI:, to the XTP 907 port (field POO:) opening a TCP/IP connection, whose IP destination is 192.168.000.253 (field IPDEST:).
EXAMPLE N.2
PR:1 POI:910 CGI:* CDI:* UDI:* NEXT:N POO:302 CGO: 56565656 CDO: 123456768 UDO:* COMP:NO FFO:* IPSRC:*
This routing allows all the calls, coming from the port XTP 910 (field POI:) and having ANY IP address source (field IPDEST:), to be routed to the X25 302 port (field POO: ) opening a X.25 connection with the call information configured in the fields CGO:, CDO:, UDO: and FFO:.
EXAMPLE N.3
PR:5 POI:910 CGI:* CDI:'XtpCdi' UDI:'XtpUdf' NEXT:N POO:911 CGO:* CDO:* UDO:* COMP:NO FFO:* IPSRC:'IpList' IPDEST:192.168.000.253
This routing allows all the calls, coming from the port XTP 910 (field POI:) and having ANY calling address (field CGI:), called address belonging to the "XtpCdi" list of NUA X.25 (field CDI:), user data belonging to the "XtpUdf" list of X.25 user data (field UDI:), IP source address in the "IpList" list of IP addresses (field IPSRC:), are forwarded to the XTP 911 port and a new connection, whose IP destination is 192.168.000.253 (field IPDEST:), is opened.
The port which implements the transport of X.25 sessions over TCP/IP connections is labelled within the Abilis CPX by the acronym "XTP" and it is provided with the following parameters.
The following example shows how to display parameters of XTP ports. Shown value are the default ones.
[18:38:04] ABILIS_CPX: D P PO:910 PO:910 ------------------------------------------------------------------------ XTP lowpo:901 TYPE:USER MCAU:NO locport:2050 remport:2050 bsvc:10 KEEPALIVE:30 IPSRC:* IPSRCLIST:#
To activate changes made on the parameters displayed by low case characters, it is needed to restart the system; on the contrary for activating changes made on high case parameters it is enough to execute the initialisation command INIT PO:.
LOWPO: | Identifier of the Abilis CPX lower level port |
NONE | 1 - 999, NONE |
It sets the Abilis CPX lower level port. It can only be a TCP port.
Value "NONE" isolates the XTP port.
TYPE: | Port type |
USER | USER |
This parameter is used for setting how the port has to behave if data compression is active.
The port connected to the X.25 network is defined NETWORK port; the one connected to the user equipment USER port.
The NETWORK port sends compressed data and expands the received ones; the USER port compresses the received data and sends the expanded ones.
The XTP port can be only USER.
MCAU: | Cause code modification in CLEAR packets sent |
NO | YES, NO |
If MCAU is set to NO, Abilis CPX transports, without any changes, the cause and diagnostic code of the CLEAR packets; it also uses the F0 cause code and the suitable diagnostic one for all the CLEAR packets internally generated.
If MCAU is set to YES, Abilis CPX forces the cause code of the CLEAR packet sent to the value 00 (DTE originated), either for the external CLEAR and the internal ones.
The changes made on this parameter are immediately activated, without the need of initialisation commands.
LOCPORT: | Identifier of the IP local port used |
2050 | 2050 |
It sets the local IP port used by the XTP port. The IP number assigned by default to the XTP process is 2050.
This parameter has got only informative value and cannot be modified.
REMPORT: | Identifier of the IP remote port used |
2050 | 2050 |
It sets the remote IP port used by the XTP port. The IP number assigned by default to the XTP process is 2050.
This parameter has got only informative value and cannot be modified.
BSVC: | Number of BSVC sessions |
10 | 0 - 255 |
It sets the number of BSVC sessions managed by the XTP port. As above-mentioned, each XTP port can manage up to 255 BSVC sessions, addressing them towards as many different IP destinations.
KEEPALIVE: | Activation and setting of the "Keep-Alive time-out" |
30 | NO, 15 - 65535 (seconds) |
It activates and set the value of the "Keep-Alive time-out".
The "Keep-Alive" procedure, by sending the homonymous packets, keeps on the TCP connection even if data are not exchanged. The parameter set the idle time interval (seconds) which precedes the activation of such procedure.
If the parameter is set to NO, the procedure is not active.
If its value belongs to the interval [15-65535], the procedure will be activated only when the correspondent time-out will run-over.
IPSRC: | IP address of the enabled source |
* | see table, * |
The parameter configures the IP address of enabled source.
The allowed values are shown in the following table:
HEX: | 00000000 | 01000000 - 7EFFFFFF | 80000000 - DFFFFFFF |
---|---|---|---|
DDN: | 0.0.0.0 | 1.0.0.0 - 126.255.255.255 | 128.0.0.0 - 223.255.255.255 |
IP addresses of class D and E are not currently supported.
The character '*' means "any IP source address".
IPSRCLIST: | List of the IP addresses of enabled sources |
# | ListName, # |
The parameter configures an IP address list of enabled TELNET Client systems.
The List name must match a previously configured list in the Item list table. the allowed type lists are: IP addresses (IP), "Rule" lists (RU), "Master Rule" lists (MR).
The value '#' stands for "no list".
How to check state and statistics of the XTP ports through the command D S.
[18:38:04] ABILIS_CPX: D S PO:907 . PO:907 ------------------------------------------------------------------------ XTP CH X25-State TCP-State LocAdd-LocPort RemAdd-RemPort ------------------------------------------------------------------------ 0 READY LISTENING 1 CONN TO CONNECTED 192.168.000.070-35481 192.168.000.253-2050 2 READY LISTENING -----------|---INPUT---|--OUTPUT---|-----------|---INPUT---|--OUTPUT---| SEG |2322 |38137 |CHAR |4108 |2287657 | PCK |2322 |20430 |CALL |55 |0 | RESET |0 |0 | ------------------------------------------------------------------------
The XTP ports have extended statistics and they can be displayed through the execution of the command D SE.
[18:38:04] ABILIS_CPX: D SE PO:907 . PO:907 --- Cleared 004:03:42:20 ago, at 21/05/1999 11:38:23 ------------------- XTP CH X25-State TCP-State LocAdd-LocPort RemAdd-RemPort ------------------------------------------------------------------------ 0 READY LISTENING -----------|---INPUT---|--OUTPUT---|-----------|---INPUT---|--OUTPUT---| SEG |297 |4888 |CHAR |433 |294438 | PCK |297 |2607 |CALL |6 |0 | RESET |0 |0 | ------------------------------------------------------------------------ 1 READY LISTENING -----------|---INPUT---|--OUTPUT---|-----------|---INPUT---|--OUTPUT---| SEG |73 |1134 |CHAR |165 |67417 | PCK |73 |617 |CALL |6 |0 | RESET |0 |0 | ------------------------------------------------------------------------ 2 READY LISTENING -----------|---INPUT---|--OUTPUT---|-----------|---INPUT---|--OUTPUT---| SEG |237 |3898 |CHAR |354 |234901 | PCK |237 |2078 |CALL |6 |0 | RESET |0 |0 | ------------------------------------------------------------------------
The information "Cleared DDD:HH:MM:SS ago, at DD/MM/YYYY HH:MM:SS", referred by the extended statistics, shows the time interval elapsed from the last reset of statistics (by the format "days:hours:minutes:seconds") and date/time of its execution (by the format "day:month:year" and "hours:minutes:seconds").
CH: | Channel identifier |
0 - BSVC: |
It shows the number of the channel on the XTP port. The maximum number of channels is given, at the system start, by the value of the parameter BSVC:.
X25-State: | Connection state |
READY, LISTENING, CALLING, CALLED, CONN TO, CONN FROM, CLEARING, CLEARED, RESETTING, RESET, ERR |
It shows the current state of the connection, towards the Connection Oriented Router.
Driver | States | Meaning | Values shown in: | ||
---|---|---|---|---|---|
System Log | Debug Log | Display LCD | |||
XTP (X25 Session) | READY | The session is closed | |||
LISTENING | Session is ready to receive/send the connection request | ||||
CALLING | Connection is getting established, the session sent a connection request and it is waiting for acknowledgement | ||||
CALLED | Connection is getting established, the session received, but not yet acknowledged, a connection request | ||||
CONN TO | Connection is active, the session received a connection request and sent its acknowledgement | ||||
CONN FROM | Connection is active, the session sent a connection request and received its acknowledgement | ||||
CLEARING | Connection is going to be closed, the session sent a disconnection request and it is waiting for acknowledgement | ||||
CLEARED | Connection is going to be closed, the session received, but not yet acknowledged, a disconnection request | ||||
RESETTING | Connection is managing a Reset. The session sent a Reset request and it is waiting for acknowledgement | ||||
RESET | Connection is managing a Reset. The session received, but not yet acknowledged, a Reset request | ||||
ERR | Software error, contact the Abilis assistance |
TCP-State: | Connection state towards the TCP port |
DOWN, READY, LISTENING, CALLED, CALLING, CONNECTED, CLEARING, CLEARED, RESETTING, RESET, ERR |
It shows the current state of the connection, towards the TCP port.
Driver | States | Meaning | Values shown in: | ||
---|---|---|---|---|---|
System Log | Debug Log | Display LCD | |||
XTP (TCP connection) | DOWN | The parameter "LOWPO:" is set to NONE or the driver is not able to connect to the TCP lower level port | |||
READY | Connection is closed | ||||
LISTENING | Connection is active and it is waiting to receive/send connection requests | ||||
CALLED | Connection is going to be established | ||||
CALLING | |||||
CONNECTED | Connection is active | ||||
CLEARING | Connection is going to be closed | ||||
CLEARED | |||||
RESETTING | Connection is managing a Reset request | ||||
RESET | |||||
ERR | Software error, contact the Abilis assistance |
LocAdd: | IP local address used by the connection |
0 - 255.255.255.255 |
It shows the IP local address used by the connection, whose state has not to be READY-LISTENING.
LocPort: | IP local port used by the connection |
0 - 65.535 |
It shows the IP local port used by the connection, whose state has not to be READY-LISTENING.
RemAdd: | IP remote address used by the connection |
0 - 255.255.255.255 |
It shows the IP remote address used by the connection, whose state has not to be READY-LISTENING.
RemPort: | IP remote port used by the connection |
0 - 65.535 |
It shows the IP remote port used by the connection, whose state has not to be READY-LISTENING.
SEG: | Overall number of segments received/sent in all the sessions |
0 - 4.294.967.295 |
The counter SEG (INPUT) is incremented every time a packet is received, while the counter SEG (OUTPUT) every time a packet is sent.
CHAR: | Overall number of characters received/sent in all the sessions |
0 - 4.294.967.295 |
The counter CHAR (INPUT) is incremented every time a packet is received, while the counter CHAR (OUTPUT) every time a packet is sent.
PCK: | Overall number of packets received/sent in all the sessions |
0 - 4.294.967.295 |
The counter PCK (INPUT) is incremented every time a packet is received, while the counter PCK (OUTPUT) every time a packet is sent
CALL: | Overall number of calls sent/received in all the sessions |
0 - 4.294.967.295 |
The counter CALL (INPUT) is incremented every time a connection request is received, while the counter CALL (OUTPUT) every time a connection request is sent
RESET: | Overall number of resets sent/received in all the sessions |
0 - 4.294.967.295 |
The counter RESET (INPUT) is incremented every time a Reset is received, while the counter RESET (OUTPUT) every time a Reset is sent