top - download
⟦e19319773⟧ Wang Wps File
Length: 26750 (0x687e)
Types: Wang Wps File
Notes: FIX/1160/PSP/0091 III
Names: »3165A «
Derivation
└─⟦ea7460488⟧ Bits:30006136 8" Wang WCS floppy, CR 0270A
└─ ⟦this⟧ »3165A «
WangText
…00……00……00……00……00…-…0a……00……00…-…0b…-…01…-…06…,…0a…,…0f…,…01…,…02……1c……00……86…1 …02… …02… …02…
3165A/bna…02…FIX/1160/PSP/0091
…02…REV/850301…02……02…#
INTER SCC HANDSHAKING PROCESSES PSP
…02…Issue 1…02…FK 7809
A3. C̲o̲n̲t̲r̲o̲l̲ ̲M̲e̲s̲s̲a̲g̲e̲ ̲f̲r̲o̲m̲ ̲M̲D̲Q̲-̲Q̲u̲e̲u̲e̲
The CPMM&ED processing of a Control ̲Message received
from FIKS is independent of CPM Operational Mode.
Control Messages received from FIKS may be:
o Inbound Sync Messages
o SIP…0f…C…0e… Keep Alive-Messages
o Control Messages designated for the NSC.
The latter is enqueued in the CM queue for delivery
to the NSC and no further processing is required.
I) If an inbound sync message is encountered a call
is made to COMM&C (ref. 3.3.3.3.2.2.2).
II) A SIP…0f…C…0e… Keep Alive Message always contains a SWD…0f…C…0e…
Status Report (ref. 3.3.2.3.2.2.2) which is retrieved
and forwarded to the CIP Watch DOG (CWD) in an
AMOS message.
The SIP…0f…C…0e… KAM may in addition contain several ACK's
for messages received by SPM…0f…C…0e…. These ACK's are
retrieved, and one after another issued to the
procedure "Narrative Message ACK Processing" (NMACKP)
(ref. 3.3.3.3.2.2.5).
A4. N̲a̲r̲r̲a̲t̲i̲v̲e̲/̲P̲s̲e̲u̲d̲o̲ ̲M̲e̲s̲s̲a̲g̲e̲ ̲f̲r̲o̲m̲ ̲N̲M̲-̲Q̲u̲e̲u̲e̲
Messages in NM-Queue or inbound NICS-TARE messages,
pending for transmission to FIKS are converted
. Before that can be granted, some accounting must
be made for these messages as performed by the
procedure "Narrative Message Accounting" (NMACT,
ref. 3.3.3.3.2.2.3).
Pseudo Messages are substitutes for messages queued
for intercept by the MSS and serve only to maintain
message continuity on the proper logical channel.
A5. C̲o̲n̲t̲r̲o̲l̲ ̲M̲e̲s̲s̲a̲g̲e̲ ̲f̲r̲o̲m̲ ̲N̲C̲ ̲Q̲u̲e̲u̲e̲
Messages encountered in NC may be:
o Control Messages from NSC to FIKS
o NICS-TARE transmission ACK's from the MSS
o Command Response/Reports from the MSS
o Commands to the MSS.
i) C̲o̲n̲t̲r̲o̲l̲ ̲M̲e̲s̲s̲a̲g̲e̲s̲ ̲N̲S̲C̲ ̲t̲o̲ ̲F̲I̲K̲S̲
These Control Messages are discarded, if CIP
̲Operational Mode is non-active, to prevent
the stand-by SCC from performing any control
of the FIKS network. This is not the case if
the control message is for the NSS at the local
SCC; these messages are delivered. Network
supervision is provided (A3).
NSC issued Control Messages are enqueued in
TQ for transmission to FIKS.
ii) N̲I̲C̲S̲-̲T̲A̲R̲E̲ ̲T̲r̲a̲n̲s̲m̲i̲s̲i̲o̲n̲ ̲A̲C̲K̲'̲s̲
ACK's for messages transmitted to NICS TARE
shall be forwarded to the SPM…0f…C…0e…, which is performed
by the procedure "NMACKP" (ref. 3.3.3.3.2.2.5).
iii)C̲o̲m̲m̲a̲n̲d̲ ̲R̲e̲s̲p̲o̲n̲s̲e̲s̲/̲R̲e̲p̲o̲r̲t̲s̲ ̲f̲r̲o̲m̲ ̲t̲h̲e̲ ̲M̲S̲S̲
Responses to commands issued by the "CPMM&C"
or reports on the NICS-TARE link status are
all handled by "CPMM&C".
iv) C̲o̲m̲m̲a̲n̲d̲s̲ ̲t̲o̲ ̲t̲h̲e̲ ̲M̲S̲S̲
Commands concerning the NTS from the SCC supervisor
are forwarded via the "CPMM&C".
B. P̲r̲o̲g̲r̲a̲m̲ ̲ ̲C̲P̲M̲M̲&̲E̲D̲
REPEAT
"WAIT EVENT" (EVENT)
CASE OF EVENT (1,2)
1. 'EVENT = AMOS MESSAGE
CALL "CPMM&C"
2. 'EVENT = SIGNAL'
REPEAT UNTIL MDQ ̲Empty
"RETRIEVE" (MSG, MDQ)
IF (MSG.TYPE = NARRATIVE)
THEN
"INNMSG" (MSG, CH #)
CASE OF TYPE.CH # (1,2,3)
1. 'Inbound MSG'
IF (CIP Operational Mode =
Active)
THEN
QUEUE:= CQ (CH #)
CALL "INMP" (MSG, QUEUE)
ELSE
"RELEASE" (MSG)
END IF
2. 'Outbound MSG'
CALL "INTERCEPT" (MSG, CH
#)
CALL "NMACKP" (MSG ID, CH #)
3. 'Unknown CH #'
"REPORT ERROR"
END CASE
END CASE
ELSE (MSG.TYPE =CONTROL)
CASE OF MSG.TYPE (1,2,3)
1. 'Inbound Sync. Message'
CALL "CPMM&C"
2. SIP…0f…C…0e… Keep Alive Message
IF (CIP Operational Mode = SYNC)
THEN
CALL "CPMM&C"
END IF
IF (CIP Operational Mode= Output Active)
THEN
FOR (All ACK's contained in KAM)
DO
CALL "NMACKP" (MSG.ID, CH #)
END DO
END IF
"SEND" AMOS Message (SWD…0f…C…0e… Status-Report)
3. 'Designated for NSC'
"ENQUEUE" (MSG, CM)
END IF
END REPEAT
IF (CIP Operational Mode = Output Active)
THEN
REPEAT UNTIL NM Queue Empty
"DEQUEUE" (MSG, PMSG, CH #, NM)
IF (MSG. TYPE =NARRATIVE)
THEN
CALL "INNMSG"
END IF
CALL "NMACCNT" (MSG, PMSG, CH
#)
END REPEAT
END IF
REPEAT UNTIL NC Queue Empty
"DEQUEUE" (MSG, PMSG, NC)
CASE OF MSG/PMSG TYPE (1,2,3,4,5)
1. 'NSC Control MSG to FIKS'
IF (CIP Operational Mode = Active)
OR
(Control MSG to SCC NSS)
THEN
"ENQUEUE" (MSG, TQ)
ELSE
"RELEASE" (MSG)
END IF
2. 'NICS-TARE ACK'
CALL "NMACKP" (PMSG)
3. 'Response/Report from MSS'
CALL "CPMM&C" (MSG)
4. 'COMMANDS TO MSS'
CALL "CPMM&C" (MSG)
5. 'Else Unknown'
REPORT ERROR (Unknown)
END CASE
END REPEAT
3. 'Event = Timer Interrupt'
Call "CPMTIM"
4. 'Unknown Event'
REPORT ERROR (Unknown Event)
END CASE
END REPEAT
3.3.3.3.2.2.1.1
S̲u̲b̲r̲o̲u̲t̲i̲n̲e̲ ̲I̲N̲N̲M̲S̲G̲ ̲ ̲(̲M̲S̲G̲,̲ ̲C̲H̲ ̲#̲)̲
Ref. 3.3.3.3.1.2.1.1
3.3.3.3.2.2.2
P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲C̲P̲M̲ ̲M̲o̲n̲i̲t̲o̲r̲i̲n̲g̲ ̲&̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲ ̲(̲C̲P̲M̲M̲&̲C̲)̲
A. N̲a̲r̲r̲a̲t̲i̲v̲e̲:̲
Procedure CPMM&C performs the following functions:
o Controls the operation of the CIP Protocol
Machine (CPM) as commanded by CIP Watch Dog
(CWD)
o Channel Synchronization upon opening of the
logical channels to SPM (collocated N/M)
o Monitors the NICS-TARE channel
o Controls the NICS-TARE channels as commanded
by the SCC Supervisor
o Generates and transmits an hourly statistics
on the narrative conversion.
CPMM&C is invoked by "CPMM&ED" when:
1) AMOS messages from CWD are encountered
2) A Sync Message is to be transmitted
3) A Sync sequencenumber is received
4) A Sync Message is encountered
5) A MSS Command Response or NTS Channel Report
is received
6) A Statistics Report is to be transmitted.
The output events generated by CPMM&C during processing
of these events are:
o Sync Message enqueued in TQ
o MSS command enqueued in MC
o Hourly Statistics Report to both SCC's, enqueued
in TQ.
A1. C̲W̲D̲ ̲C̲o̲m̲m̲a̲n̲d̲ ̲M̲e̲s̲s̲a̲g̲e̲
The type of command received from CWD:
o CWD CPM Operational Mode Change Commands
i) C̲P̲M̲-̲O̲p̲e̲r̲a̲t̲i̲o̲n̲a̲l̲-̲M̲o̲d̲e̲ ̲C̲h̲a̲n̲g̲e̲ ̲C̲o̲m̲m̲a̲n̲d̲
A CIP Operational Mode Change has taken place,
and CWD commands CPM to update operational
mode of the Message Service System accordingly.
The only state changes of interest here are
Stand-by to Active and Active to Stand-by .
a) S̲t̲a̲n̲d̲-̲b̲y̲ ̲t̲o̲ ̲A̲c̲t̲i̲v̲e̲
Before the Message Service System can be opened
the following actions must be performed in proper
sequence:
o Reset all Ack.Sequencenumbers.
o Enqueueing of a Sync Message on the outbound
service channel, identified by a 'Sync Seq
No', maintained by CPMM&C.
o Reset SIP…0f…C…0e… Mailbox.
o CPM Operational Mode changed from Stand-by
to Hunt Mode (ref. 3.3.3.3.2.2.1-A1) and Sync
Mode.
o Mode.
The Message Service System will remain closed and
CPM remains in Hunt Mode, until an appropriate
Sync Message is recognized on the inbound service
channel (ref. A2).
b) A̲c̲t̲i̲v̲e̲ ̲t̲o̲ ̲S̲t̲a̲n̲d̲-̲b̲y̲
A "Stop Message Service" command is issued to the
MSS and enqueued in the MC queue. CPM Operational
Mode is changed to stand-by and causes the CPM
to stop service of the outbound and inbound narrative
message channels.
A2. S̲y̲n̲c̲-̲M̲e̲s̲s̲a̲g̲e̲ ̲R̲e̲c̲e̲i̲v̲e̲d̲
Inbound Sync Messages encountered by the "CPMM&ED"
are delivered to CPMM&C.
i) I̲n̲b̲o̲u̲n̲d̲ ̲S̲y̲n̲c̲-̲M̲e̲s̲s̲a̲g̲e̲
The 'Sync Seq No' enclosed in the Sync Message
is returned to the SPM in a Keep Alive Message,
by mailing in the SIP…0f…C…0e… Mailbox for CWD to transit.
When this occurs CPM exits "Hunt Mode" and
sets Input Active.
A3. S̲y̲n̲c̲.̲S̲e̲q̲u̲e̲n̲c̲e̲ ̲N̲u̲m̲b̲e̲r̲ ̲R̲e̲c̲e̲i̲v̲e̲d̲
While in "Sync Mode" a received Keep Alive Message
is checked for the correct sync.seq.no., and when
this is found, CPM exits "Sync Mode" and sets "Output
Active".
The sync timer is stopped when this has occured,
and all channels are checked for messages pending
transmission to FIKS.
Only messages from NICS-TARE or Intercept Queue
are retransmitted, any others are released.
A control message is sent to all MEDE supervisors
announcing this SCC to be active.
Finally the Message Service System is opened by
an "Open Message Service" command enqueued in the
MC-queue for the MSS.
A4. M̲S̲S̲ ̲R̲e̲s̲p̲o̲n̲s̲e̲s̲/̲N̲T̲S̲ ̲C̲h̲a̲n̲n̲e̲l̲ ̲R̲e̲p̲o̲r̲t̲s̲
These responses and reports are forwarded to the
CWD in the SIP…0f…C…0e… Mailbox, and no further processing
is performed.
A5. S̲t̲a̲t̲i̲s̲t̲i̲c̲s̲ ̲R̲e̲p̲o̲r̲t̲ ̲t̲o̲ ̲b̲e̲ ̲s̲e̲n̲t̲
When the "CPMTIM" has encountered a full hour,
it signals this to "CPMM&C", so that a Statistics
Report can be compiled and transmitted.
The DTG's delivered by SPM in a Keep Alive Message
are retrieved every time they arrive and stored
in the Statistics Record. The CPM itself provides
the oldest DTG from the NM-queue.
If the CPM Operational Mode is Standby, the DTG's
will not be included in the Report.
The Report is sent to both SCC's, and then the
time is checked. If the time is 00:00, the statistics
record is to be reset before next transmission.
B. P̲r̲o̲g̲r̲a̲m̲ ̲ ̲C̲P̲M̲M̲&̲C̲
BEGIN
CASE OF EVENT (1,2,3,4,5)
'CPM Operational Mode-Change Command'
1. IF (Stand-by to Active)
THEN
'Clear all Ack.Seq.no's'
'Clear SIP…0f…C…0e… Mailbox'
"RETRIEVE" (Sync Seq No)
CPM Operational Mode:= HUNT + SYNC
"CREATE" (Sync Message (Sync Seq No))
"ENQUEUE" (Sync MSG TQ)
'Start Sync.timer'
CALL CPMTIM (PSYNTIM)
ELSE (ACTIVE TO Stand-by)
"ENQUEUE" (CMD-STOP, MC)
IF (CIP Operational Mode = Sync. Mode)
THEN
'Stop SYNTIM'
CALL CPMTIM (SSYNTIM)
END IF
CPM Operational Mode:= STAND-BY
END IF
2.'Sync.Seq.No.received' (In Keep Alive Msg)
IF (Sync. Seq. No. HUNT = Sync. Seg. No. MSG)
THEN
CPM Operational Mode:= Output Active
'Exit Sync Mode'
'Stop Sync. timer'
CALL CPMTIM (SSYNTIM)
FOR (channel = FM N/T AND Channel = FM IQ)
DO
'Retransmit Messages'
CALL "INNMSG"
"ENQUEUE" (MSG., TQ)
END DO
"CREATE" (SCC-STATE-MSG.)
"ENQUEUE" (MSG., TQ) (To all MEDE-Supervisors)
"ENQUEUE" (CMD-OPEN, MC)
3. 'Inbound Sync Message'
"RETRIEVE" (Sync-Seq ̲No, MSG)
IF (CPM Operational Mode = ACTIVE)
THEN
'Exit Hunt Mode'
CPM Operational Mode:= Input Active
'Mail Sync.Seq.No.' (In SIP…0f…C…0e… Mailbox)
END IF
"RELEASE" (SYNC MSG)
4.a) 'NICS-TARE Report'
'Mail N/T - Status Report' (In SIP…0f…C…0e… Mailbox)
b) 'NICS-TARE Response'
'Check Response against last command'
'Mail N/T - Status Report' (In SIP…0f…C…0e… Mailbox
c) 'NICS-TARE Command'
'Save Command to check with Response'
'Send Command'
"Enqueue" (PMTCB, Command, MC-Q)
5. 'Send Statistics'
IF (CPM Operational Mode = Standby)
THEN
'Clear Oldest DTG's in Statistics Record'
ELSE
'Compile Oldest DTG from NM-Q'
END IF
IF (Statistic Record Reset)
THEN
MSG-TYPE:= Statistics Reset
ELSE
MSG-TYPE:= Normal Statistics
END IF
"GENERATE STATISTICS REPORT"
"ENQUEUE" (START-REPORT; TQ, Both SCC's)
'Check Time'
IF (Time = 00:00)
THEN
'Reset Statistics Record after Transmission'
END IF
END CASE
END
3.3.3.3.2.2.3
P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲N̲a̲r̲r̲a̲t̲i̲v̲e̲-̲M̲e̲s̲s̲a̲g̲e̲-̲A̲c̲c̲o̲u̲n̲t̲i̲n̲g̲ ̲ ̲(̲N̲M̲A̲C̲C̲N̲T̲)̲
A. N̲a̲r̲r̲a̲t̲i̲v̲e̲:̲
Procedure "NMACCNT" is called by "CPMM&ED" whenever
a narrative or pseudo message is retrieved from
the NM queue; it performs the accounting for all
messages transmitted to FIKS.
The purpose of "NMACCNT" is to make preparations
for a future acknowledgement of messages received
from NICS-TARE and a "performance" acknowledgement
for message services provided to FIKS.
The message accounting performed by NMACCNT consists
in maintaining an "ACK Cross-Reference Table" (XACKTAB),
with one entry for each outbound channel. The actual
release of acknowledgements as performed by procedure
"NMACKP" (ref. 3.3.3.3.2.2.5) with reference to
the XACKTAB.
Four types of narrative messages and two types
of pseudo messages are recognized by logical CH
# by NMACCNT and are as follows:
Narrative Messages: a) SMF/ACP Converted MSG's
b) ACP/SMF Converted MSG's
c) Messages from NICS-TARE
d) SCC Intercepted Messages
Pseudo Messages: e) SMF/ACP converted MSG's
f) ACP/SMF Converted MSG's
a,b,e and f are correlated to messages once received
from FIKS, while c and d are considered as SCC
source messages.
A1. C̲o̲n̲v̲e̲r̲t̲e̲d̲ ̲M̲e̲s̲s̲a̲g̲e̲ ̲A̲c̲c̲o̲u̲n̲t̲i̲n̲g̲
No accounting has so far been made for messages
received from FIKS for conversion. This must be
done before the converted message has returned,
to be able to identify and acknowledge the messages
originally received.
The original message is identified by the MSG ID1
kept in the message reference (MTCB). The converted
message has been assigned a new MSG ID2, which
is retrieved from the message.
MSG ID1 and MSG ID2 are stored in the XACKTAB entry
designated by CH #, and an "Entry Busy" flag is
raised (Figure 4.3.3.2.2.3-1).
--------------------------------------------------
FLAG NEW MSG ̲ID OLD MSG ̲ID
--------------------------------------------------
Figure 3.3.3.3.2.2.3-1…01…XACKTAB-Entry Layout
Procedure "NMACKP" will then provide the release
of the ACK (MSG ID1) for the original message
upon receipt of the ACK (MSG ID2) for the converted
message (ref. 3.3.3.3.2.2.5).
A2. S̲C̲C̲-̲S̲o̲u̲r̲c̲e̲ ̲M̲e̲s̲s̲a̲g̲e̲ ̲A̲c̲c̲o̲u̲n̲t̲i̲n̲g̲
The processing performed by NMACCNT in this case
is similar to case A1. "NMACKP" will ensure that
the ACK's are issued to the MSS rather than to
FIKS.
A3. P̲s̲e̲u̲d̲o̲ ̲M̲e̲s̲s̲a̲g̲e̲ ̲A̲c̲c̲o̲u̲n̲t̲i̲n̲g̲
Pseudo Messages are substitutes for messages received
from FIKS for conversion, but queued for intercept
by the MSS and serve to maintain continuity on
the channel.
In this case only the "OLD MSG ID" is updated in
the proper XACKTAB entry, and the entry flagged
"BUSY". If no message was awaiting acknowledgement
(entry non busy) then a "Pseudo SPM-ACK" is issued
to "NMACKP", which will provide the acknowledgement
of the intercepted message and the release of this
message from SPM.
Otherwise SPM ACK will provide the ACK of the message
awaiting acknowledegement as well as the intercepted
message.
B. P̲r̲o̲g̲r̲a̲m̲ ̲ ̲N̲M̲A̲C̲C̲N̲T̲:̲
BEGIN
CASE OF EVENT (1, 2, 3)
1. 'Narrative Message'
"RETRIEVE" (MSG ̲ID1, MSG ̲ID2)
XACKTAB (OLD, CH #):= MSG ̲ID1
XACKTAB (NEW, CH #):= MSG ̲ID2
XACKTAB (FLAG; CH #):= BUSY
INC. Statistics Record (CH #, PREC)
2. 'Pseudo Message'
"RETRIEVE" (MSG ̲ID1)
INC. Statistics Record (CH #, PREC)
XACKTAB (OLD, CH #):= MSG ̲ID1
IF (XACKTAB(FLAG; CH #) = IDLE)
THEN
XACKTAB(FLAG, CH #) = BUSY
'Pseudo ACK Generation'
MSG ̲ID = XACKTAB(NEW, CH #)
CALL "NMACKP" (CH #, MSG ID)
END IF
3. 'Narrative Messages for N/T'
"RETRIEVE" (MSG- ID1)
XACKTAB (FLAG, CH #):= BUSY
XACKTAB (OLD, CH #):= MSG ̲ID1
END CASE
END
3.3.3.3.2.2.4
P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲O̲u̲t̲b̲o̲u̲n̲d̲ ̲S̲t̲u̲c̲k̲ ̲M̲e̲s̲s̲a̲g̲e̲ ̲P̲r̲o̲c̲e̲s̲s̲i̲n̲g̲ ̲ ̲(̲O̲S̲T̲M̲P̲)̲
A. N̲a̲r̲r̲a̲t̲i̲v̲e̲:̲
Procedure "INTERCEPT" is called by "CPMM&ED" when
an Outbound Stuck Message is encountered, i.e.
a message return by NSS to the MDQ because of trunkerror.
The Stuck Message will be enqueued in the Intercept
Queue (IQ), but must still be accounted for to
preserve message continuity.
This is done from "CPMM&ED" by call of procedure
"NMACKP".
B. P̲r̲o̲g̲r̲a̲m̲ ̲O̲S̲T̲M̲P̲:̲
BEGIN
"RETRIEVE" (MSG, MSG ̲ID2)
"ENQUEUE" (MSG, IQ)
END
3.3.3.3.2.2.5
P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲N̲a̲r̲r̲a̲t̲i̲v̲e̲ ̲M̲e̲s̲s̲a̲g̲e̲ ̲A̲C̲K̲ ̲P̲r̲o̲c̲e̲s̲s̲i̲n̲g̲ ̲ ̲(̲N̲M̲A̲C̲K̲P̲)̲
A. N̲a̲r̲r̲a̲t̲i̲v̲e̲:̲
Procedure "NMACKP" is invoked when:
1) SPM acknowledgements are encountered by CPMM&ED"
in the SIP…0f…C…0e… Keep Alive ̲Message
2) "CPMM&ED" receives an acknowledgement from the
MSS in the NC queue
3) "CPMM&ED" simulates an acknowledgement for a message
queued for intercept
4) "NMACCNT" encounters a pseudo message.
Acknowledgements for SCC source messages (i.e. incoming
NICS-TARE messages and intercepted messages) are issued
to the MSS in the MC queue.
Acknowledgements for inbound messages from FIKS (non-intercepted)
are converted from CPM to SPM acknowledgements, with
ref. to the XACKTAB (ref. 3.3.3.3.2.2.3) and mailed
in the SIP…0f…C…0e… Mailbox. Unexpected ACK's are ignored by
NMACKP.
B. P̲r̲o̲g̲r̲a̲m̲ ̲N̲M̲A̲C̲K̲P̲ ̲ ̲(̲M̲S̲G̲ ̲I̲D̲,̲ ̲C̲H̲ ̲#̲)̲
BEGIN
XID:= XACKT (NEW, CH #)
IF (XID = MSG ID, i.e. ACK Expected)
THEN
"CREATE ̲ACK" (MSG ID = XID, CH #)
IF (CH # = SCC Source Message)
THEN
"ENQUEUE" (ACK (MSG ID), MC)
ELSE
"RESERVE" CRITICAL REGION (SIP…0f…C…0e… MAILBOX)
MAIL ACK (MSG ID, CH #)
"RELEASE" CRITICAL REGION (SIP…0f…C…0e… MAILBOX)
END IF
ELSE
IGNORE ACK
END IF
END
3.3.3.3.2.2.6
P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲I̲n̲b̲o̲u̲n̲d̲ ̲N̲a̲r̲r̲a̲t̲i̲v̲e̲ ̲M̲e̲s̲s̲a̲g̲e̲ ̲P̲r̲o̲c̲e̲s̲s̲i̲n̲g̲ ̲ ̲(̲I̲N̲M̲P̲)̲
A. N̲a̲r̲r̲a̲t̲i̲v̲e̲:̲
Procedure "INMP" is invoked when "CPMM&ED" dequeues
an inbound narrative message from MDQ and CPM Operational
Mode has input active.
The message is enqueued to the MSS according to
channel No.
If the message is to be transmitted to NICS-TARE
a call is made to "NMACCNT" for accounting purposes.
B. P̲r̲o̲g̲r̲a̲m̲ ̲I̲N̲M̲P̲
BEGIN
IF (CH # = N/T Channel)
THEN
CALL NMACCNT (MSG, CH #)
END IF
"ENQUEUE" (MSG, CH #, CQ)
END
3.3.3.3.2.2.7
P̲r̲o̲c̲e̲d̲u̲r̲e̲ ̲C̲P̲M̲ ̲T̲i̲m̲e̲r̲ ̲P̲r̲o̲c̲e̲s̲s̲ ̲ ̲(̲C̲P̲M̲T̲I̲M̲)̲
A. N̲a̲r̲r̲a̲t̲i̲v̲e̲:̲
The CPM Timer constitutes two separate timers,
identified as:
1) Sync.Message Timer (SYNTIM)
2) Statistics Timer
CPMTIM is invoked by CPMED when a Timer Interrupt
is encountered, and used to drive the above mentioned
timers.
A1. S̲Y̲N̲T̲I̲M̲ ̲T̲i̲m̲e̲r̲
The purpose of SYNTIM is to detect when a sync
message has failed to appear within a predefined
time interval (SYNTIM preset value is TIMSSYN)
which will result in an update of Sync.seq.no.
and a new transmission of a sync message. This
in turn results in a restart of SYNTIM.
A2. S̲t̲a̲t̲i̲s̲t̲i̲c̲s̲ ̲T̲i̲m̲e̲r̲
The Statistics Timer runs continously to trigger
the transmission of a Statistics Report.
It is maintained by sending an Amos Message to
the Timer Process.
Every full hour an Amos Answer is returned to run
the timer.
B. P̲r̲o̲g̲r̲a̲m̲ ̲ ̲C̲P̲M̲T̲I̲M̲:̲
BEGIN
CASE OF EVENT/COMMAND (1,2,3,4,5)
1. 'EVENT = Timer Interrupt'
'Run Timers'
SYNTIM:= SYNTIM-1
IF (SYNTIM= 0 'SYNTIM expired')
THEN
CALL "CPMM&C" (Send sync msg)
END IF
2. 'EVENT= Run STATISTICS Timer'
CALL "CPMM&C" (Send Statistics Report)
3. 'COMMAND= Start/Restart STATIM'
Send Amos Message (TIMER Process, 1 Hour)
4. 'COMMAND= Preset SYNTIM'
SYNTIM:= TIMSSYN
5. 'COMMAND= Stop SYNTIM'
SYNTIM:= 0
END CASE
END
3.3.4 K̲e̲e̲p̲ ̲A̲l̲i̲v̲e̲ ̲M̲e̲s̲s̲a̲g̲e̲s̲ ̲(̲K̲A̲M̲)̲
3.3.4.1 I̲n̲t̲r̲o̲d̲u̲c̲t̲i̲o̲n̲
Keep Alive Messages are the common communications vehicle
for exchange of control and status information between
the CIP located Protocol Machine and the Watch Dog
Submodules and the SIP located Protocol Machine and
the Watch Dog Modules.
Three different types of Keep Alive Messages are used:
1) SIP/SIP Keep Alive Messages
2) SIP/CIP Keep Alive Messages
3) CIP/SIP Keep Alive Messages
For each type of Keep Alive Messages transmitted between
SIP or CIP to SIP or CIP, there also exists a mailbox,
where output data to remote submodules are stored.
Two mailboxes are recognized at SIP:
o SIP…0f…R…0e… Mailbox for transfers to SIP…0f…R…0e…
o CIP…0f…C…0e… Mailbox for transfers to CIP…0f…C…0e….
At CIP only one Mailbox is used:
o SIP…0f…C…0e… Mailbox for transfers to SIP…0f…C…0e….
The release of Keep Alive Messages are controlled by
the SCC Watch Dog; it takes place with a regular frequency.
The release of a Keep Alive Message, however, may be
accelerated when an emergency situation requires immediately
exchange of commands, or on request from the local
Protocol Machine if SIP…0f…R…0e… Mailbox overflow is detected,
or if an ACK has to be transmitted.
The receipt and distribution of control & data enclosed
in the Keep Alive Message is performed by the local
Protocol Machine.
SIP/CIP Status Reports are retrieved and forwarded
to the local Watch Dog while acknowledgement & Anti
̲Messages are designated for the local Protocol Machine
itself.
At CIP…0f…C…0e… the SCC…0f…R…0e… and NICS-TARE Link Status are forwarded
to the local supervisors, while at SIP…0f…C…0e… the status
is mailed in the mailbox towards the supervisor to
whom it is intended.
3.3.4.2 S̲I̲P̲ ̲t̲o̲ ̲S̲I̲P̲ ̲K̲e̲e̲p̲-̲A̲l̲i̲v̲e̲-̲M̲e̲s̲s̲a̲g̲e̲
SIP to SIP Keep Alive Messages contain:
o SWD State Report
o Remote SCC Status (SCC…0f…R…0e…)
o Remote N/T Link Status N/T…0f…R…0e…
o Sync.Sequence Number (SSN). Not used.
o CHO, CH1 and CH2 Anti Messages
The layout is depicted in Figure 3.3.4.2-1.
SWD State Message
SCC…0f…R…0e…
N/T…0f…R…0e…
Not Used (SSN)
CH0 Anti Message
CH1 Anti Message
CH2 Anti Message
Figure 3.3.4.2-1…01…SIP/SIP KAM Layout
An Anti Message is composed of Msg Id and Seq No. Seq
No. is a cyclic Anti Message identifier, incremented
by transmitting Protocol Machine each time a new Anti-Message
is mailed.
Seq No. is used by the receiving Protocol Machine to
validate whether the Keep Alive Message holds a new
Anti Message.
3.3.4.3 S̲I̲P̲ ̲t̲o̲ ̲C̲I̲P̲ ̲K̲e̲e̲p̲-̲A̲l̲i̲v̲e̲-̲M̲e̲s̲s̲a̲g̲e̲
SIP to CIP Keep Alive Messages contain:
o SWD State Message
o SCC…0f…R…0e… Status
o N/T…0f…R…0e… Status
o Sync Seq No.
o CH3, CH4, CH5 and CH6 ACK's.
The layout is depicted in Figure 3.3.4.3-1.
SWD State Message
SCC…0f…R…0e…
N/T…0f…R…0e…
Sync Seq No.
CH3 ACK
CH4 ACK
CH5 ACK
CH6 ACK
Figure 3.3.4.3-1…01…SIP/CIP KAM Layout
The Sync Seq No. is provided only in channel start
and restart situations.
An ACK has a format identical to Anti Messages (please,
refer to 3.3.4.2).
3.3.4.4 C̲I̲P̲ ̲t̲o̲ ̲S̲I̲P̲ ̲K̲e̲e̲p̲-̲A̲l̲i̲v̲e̲-̲M̲e̲s̲s̲a̲g̲e̲
CIP to SIP Keep Alive Messages contain:
o CWD State Message
o SCC…0f…C…0e… Status
o N/T…0f…C…0e… Status
o Sync Seq No.
o CH0, CH1 and CH2 ACK's
The layout is depicted in Figure 3.3.4.4-1.
CWD State Message
SCC…0f…C…0e…
N/T…0f…C…0e…
Sync Seq No.
CH0 ACK
CH1 ACK
CH2 ACK
Figure 3.3.4.4-1…01…CIP/SIP KAM Layout
The Sync Seq No. is used for resynchronization of the
CIP output channel at (re)start situations.
The format of ACK's are identical to Anti Messages
(Please, refer to 3.3.4.2).
3.4 D̲A̲T̲A̲ ̲O̲R̲G̲A̲N̲I̲Z̲A̲T̲I̲O̲N̲
Please refer to source-listings
CWDBASE
SWDBASE
CPMBASE
SPMBASE
These listings contain the data structures and explanations
of use.
3.5 S̲T̲O̲R̲A̲G̲E̲ ̲A̲L̲L̲O̲C̲A̲T̲I̲O̲N̲
No special provisions apply.
3.6 P̲E̲R̲F̲O̲R̲M̲A̲N̲C̲E̲ ̲C̲H̲A̲R̲A̲C̲T̲E̲R̲I̲S̲T̲I̲C̲S̲
The ISH subsystems run by use of Keep Alive Messages,
which run with a frequency of 1 message pr 20 sec.'s,
with idle load. The subsystems also support a dynamic
transmission of Keep Alive Messages, whenever needed.
3.7 L̲I̲M̲I̲T̲A̲T̲I̲O̲N̲S̲
N̲o̲n̲e̲
3.8 E̲R̲R̲O̲R̲ ̲C̲O̲D̲E̲S̲/̲E̲R̲R̲O̲R̲ ̲L̲O̲C̲A̲T̲I̲O̲N̲S̲
3.8.1 E̲r̲r̲o̲r̲ ̲C̲o̲d̲e̲s̲
Besides the general Error Codes returned by call of
monitors, the modules generate the following internal
Error Codes:
3.8.1.1 S̲P̲M̲:̲
Decimal Value: Error:
106 Checkpoint Error
105 Invalid Msg. type (SPMED)
104 Unknown Event (SPMED)
103 Unknown Answer (SPMED)
102 Unknown Msg. type (SPMED)
101 Unexpected Amos Msg. (SPMED)
100 Invalid Command (SPMED)
40 Invalid Opcode (SPMMC)
21 Invalid Destination (XMITMSG)
20 Invalid Msg. type (XMITMSG)
14 Buffer Mislinkage (CPMAP)
13 Buffer Mislinkage (OAMP)
12 Buffer Mislinkage (ONMP)
11 Buffer Mislinkage (FREE-BUFF)
10 Buffer Mislinkage(BUFF-MGR)
3.8.1.2 C̲P̲M̲:̲
Decimal Value: Error:
106 Checkpoint Error
105 Invalid Msg. type (CPMED)
104 Unknown Event (CPMED)
103 Unknown Answer (CPMED)
102 Unknown Msg. Event (CPMED)
101 Unexpected Amos Msg. (CPMED)
100 Invalid Command (CPMED)
40 Invalid Opcode (CPMMC)
30 Invalid Channel No. (NMACKP)
20 Invalid Channel No. (NMACCNT)
3.8.1.3 S̲W̲D̲:̲
Decimal Value: Error:
103 Unknown Event (SWDED)
102 Unknown Answer (SWDED)
101 Invalid Command (SWDED)
100 Answer Timeout (SWDED)
21 Invalid Destination (XMITMSG)
20 Invalid Msg. type (XMITMSG)
10 Answer Timeout (SCSP)
3.8.1.4 C̲W̲D̲:̲
Decimal Value: Error:
103 Unknown Event (CWDED)
102 Unknown Answer (CWDED)
101 Invalid Command (CWDED)
100 Answer Timeout (CWDED)
21 Invalid Destination (XMITMSG)
20 Invalid Msg. type (XMITMSG)
11 Invalid Supv. Command (SSSCP)
10 Answer Timeout (SSSCP)
3.8.2 E̲r̲r̲o̲r̲ ̲L̲o̲c̲a̲t̲i̲o̲n̲s̲
The Error Locations displayed will be equal to the
relative program location, which will be subject to
change, whenever modifications are implemented in the
modules.
3.9 L̲I̲S̲T̲I̲N̲G̲ ̲R̲E̲F̲E̲R̲E̲N̲C̲E̲S̲
Ref. to document SCCLDD and S/W library FIXLIB.
4 Q̲U̲A̲L̲I̲T̲Y̲ ̲A̲S̲S̲U̲R̲A̲N̲C̲E̲
Ref. 5, Test S090.
5 P̲R̲E̲P̲A̲R̲A̲T̲I̲O̲N̲S̲ ̲F̲O̲R̲ ̲D̲E̲L̲I̲V̲E̲R̲Y̲
Ref. SCCLDD.