DataMuseum.dk

Presents historical artifacts from the history of:

RegneCentralen RC850

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about RegneCentralen RC850

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦0b9d2cb5a⟧ RcTekst

    Length: 23168 (0x5a80)
    Types: RcTekst
    Names: »VIL4.WP«

Derivation

└─⟦51ec6abc5⟧ Bits:30005985 Manualer - TELETEX Document Handler
    └─⟦this⟧ »VIL4.WP« 

RcTekst


╱04002d440c00060000000003014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱

════════════════════════════════════════════════════════════════════════
↓
┆14┆┆b3┆┆06┆- ┆0b┆ -↲
↲
┆b0┆┆a1┆7. UPDATE INFORMATION↲
↲
╞	┆84┆This section describes the information delivered in an IND.UPDATE ↓
┆19┆┆89┆┄┄block to DS, see ref. 3. Three kind of update units exists, packet ↓
┆19┆┆89┆┄┄state, charge information and user information.↲
↲
↲
┆a1┆┆b0┆7.1 Packet State↲
↲
╞	format:↲
↲
╞	┆a1┆                                             ↲
╞	┆a1┆! unit type = 1 ! length = 1 ! packet state !↲
╞	  1 byte          1 byte       1 byte↲
↲
╞	┆84┆The meaning of the packet states are:↲
↲
╞	(1) ┆84┆waiting for transmission.↲
╞	    ┆84┆Initial state for a submit/abort packet. The packet remains in ↓
┆19┆┆8d┆┄┄this state until the first attempt is made to transmit the ↓
┆19┆┆8d┆┄┄packet.↲
↲
╞	(2) being transmitted.↲
╞	    ┆84┆Normally this means that a normal document transmission is in ↓
┆19┆┆8d┆┄┄progress using a session. But the packet is also in this state ↓
┆19┆┆8d┆┄┄when a communication break down has occurred and the clean up ↓
┆19┆┆8d┆┄┄after the error is unfinished. First when it has been decided ↓
┆19┆┆8d┆┄┄what to do with the packet the state is changed.↲
↲
╞	(3) transmission temporarily suspended.↲
╞	    ┆84┆The packet is either encapsulated or in the busy queue.↲
↲
╞	(4) transmission completed.↲
╞	    ┆84┆This is a pseudo state, because the DH will indicate the ↓
┆19┆┆8d┆┄┄transfer to it implicit by sending a CONF.SUBMIT or a ↓
┆19┆┆8d┆┄┄CONF.REGRET.↲
↲
┆8c┆┆83┆┆c8┆↓
┆0e┆↓
╞	(5) ┆84┆transmission abandoned.↲
╞	    As above. The CONF.SUBMIT (CONF.ABORT) contained a result<>ok↲
┆0f┆↓
↲
╞	(6) ready for reception.↲
╞	    ┆84┆Initial state for a CREATE packet. The state will very fast be ↓
┆19┆┆8d┆┄┄changed to being received by DH.↲
↲
╞	(7) being received.↲
╞	    ┆84┆A normal document receival is in progress using a session. But ↓
┆19┆┆8d┆┄┄the packet is also in this state when a communication break ↓
┆19┆┆8d┆┄┄down has occurred, and it has not been decided yet what to do ↓
┆19┆┆8d┆┄┄with the packet.↲
↲
╞	(8) reception temporary suspended.↲
╞	    ┆84┆The packet is waiting for the caller to resume the transfer. A ↓
┆19┆┆8d┆┄┄timer will be running.↲
↲
╞	(9) reception complete↲
╞	    ┆84┆An IND.DELIVER with result=ok was send by DH.↲
↲
╞	(10)reception abandoned.↲
╞	    ┆84┆The transfer to this state will be indicated implicit by ↓
┆19┆┆8d┆┄┄sending a IND.DELIVER with result<>ok.↲
↲
↲
┆a1┆┆b0┆7.2 Charge Information↲
↲
╞	Format:↲
↲
╞	┆a1┆                                                          ↲
╞	┆a1┆! unit type = 2 ! length = 9 ! charge type = 1 ! charge !↲
╞	  1 byte           1 byte       1 byte            8 bytes↲
↲
╞	Charge consists of 8 digits, defining the charge.↲
↲
╞	┆84┆This update unit will only occur if charge has been requested in ↓
┆19┆┆89┆┄┄REQ.SUBMIT or REQ.REGRET. It is sent to DS when a CHARGE INF IND is ↓
┆19┆┆89┆┄┄received from S62CP i.e. just before the state transition "being ↓
┆19┆┆89┆┄┄transmitted -> transmission temporary suspended" or "being ↓
┆19┆┆89┆┄┄transmitted -> transmission abandoned" occurs.↲
↲
↲
┆8c┆┆83┆┆f8┆↓
┆b0┆┆a1┆7.3 User Information↲
↲
╞	Format:↲
↲
╞	┆a1┆                                                                  ↲
╞	┆a1┆! unit type = 3 ! info lg = ? ! user unit 1 ! - - - ! user unit n!↲
╞	  1 byte          1 byte       <        info lg bytes            >↲
↲
╞	The format of a user unit is:↲
↲
╞	┆a1┆                                                     ↲
╞	┆a1┆! info type ! unit lg !            value            !↲
╞	  1 byte      1 byte   <    unit lg bytes           >↲
↲
╞	┆84┆It should be noted that user information can be empty, i.e. info ↓
┆19┆┆89┆┄┄lg can be zero, see below.↲
↲
╞	┆84┆A user unit informs about the reason for a break down in a ↓
┆19┆┆89┆┄┄document transfer. All possible values of info type will not be ↓
┆19┆┆89┆┄┄described here because they originate at lower level modules, and ↓
┆19┆┆89┆┄┄will be described in the specification manual for these modules.↲
↲
╞	┆84┆However, the last user unit (if any) will allways originate from ↓
┆19┆┆89┆┄┄DH. There will be one ore possibly two units. The last case will ↓
┆19┆┆89┆┄┄be described below (description of info type = 11).↲
↲
╞	┆84┆An empty user information is delivered when the packet enters the ↓
┆19┆┆89┆┄┄"being transmitted" or "being received" state, and it should be ↓
┆19┆┆89┆┄┄initiated to this value by DS. If user information is non empty in ↓
┆19┆┆89┆┄┄one of the mentioned states, it means that a communication break ↓
┆19┆┆89┆┄┄down has occurred but the error clean up is not finished yet.↲
↲
╞	┆84┆The following two values of info type indicates DH units:↲
↲
╞	┆a1┆info type = 5, S62CP breakdown.↲
↲
╞	┆84┆These units indicate that the initiative for the interruption ↓
┆19┆┆89┆┄┄dont come from DH, i.e. its either a session break down, or an ↓
┆19┆┆89┆┄┄interruption requested from the remote terminal. In these cases it ↓
┆8c┆┆83┆┆d4┆↓
┆19┆┆89┆┄┄will always be a S62CP primitive which has caused the breakdown, ↓
┆19┆┆89┆┄┄and the user must refer to ref. 4.↲
↲
╞	The general format for these units are:↲
↲
╞	┆a1┆                                                              ↲
╞	┆a1┆! info type = 5 ! unit lg = 1 or 2 ! error kind ! error info !↲
╞	  1 byte          1 byte             1 byte       0 or 1 byte↲
↲
╞	┆84┆error kind identifies the S62CP primitive received. The following ↓
┆19┆┆89┆┄┄values can occur:↲
↲
╞	(1) error kind = 1, unit lg = 2↲
↲
╞	    ┆84┆A SESS START CONF NEG has been received. (The packet was ↓
┆19┆┆8d┆┄┄initiator for this session, see section 6.3).↲
╞	    ┆84┆error info contains the rej reason parameter. Note that no ↓
┆19┆┆8d┆┄┄user info is generated when rej reason = busy. In this case a ↓
┆19┆┆8d┆┄┄short encapsulation will be made without informing the DS.↲
↲
╞	(2) error kind = 2, unit lg = 2↲
↲
╞	    ┆84┆A SESS ABORT IND was received on a session to which this ↓
┆19┆┆8d┆┄┄packet was connected.↲
╞	    ┆84┆error info contains the ab reason parameter. The value lpe ↓
┆19┆┆8d┆┄┄will not occur, because this value indicates that the user has ↓
┆19┆┆8d┆┄┄made a protocol error.↲
↲
╞	(3) error kind = 3, unit lg = 2↲
↲
╞	    ┆84┆An EXCEPTION IND has been received. "error info" contains the ↓
┆19┆┆8d┆┄┄except reason parameter. The DH will have sent a RESYNCHRONIZE ↓
┆19┆┆8d┆┄┄REQ on behalf on the packet.↲
↲
╞	(4) error kind = 4, unit lg = 2↲
↲
╞	    ┆84┆A DOCUMENT DISCARD IND has been received. "error info" ↓
┆19┆┆8d┆┄┄contains the discard_reason parameter.↲
↲
┆8c┆┆83┆┆d4┆↓
╞	(5) error kind = 5, unit lg = 2↲
↲
╞	    ┆84┆A DOCUMENT RESYNCHRONIZE IND  has been received. "error info" ↓
┆19┆┆8d┆┄┄contains the resynch reason parameter.↲
↲
╞	(6) error kind = 6, unit lg = 1↲
╞	↲
╞	    ┆84┆A CAP CONF NEG has been received, i.e. the receiving terminal ↓
┆19┆┆8d┆┄┄has not the required capabilities.↲
↲
╞	(7) error kind = 1, unit lg = 2↲
↲
╞	    ┆84┆A DOCUMENT CONTINUE IND has been received, which defines a ↓
┆19┆┆8d┆┄┄forward jump in checkpoint numbers. "error info" contains the ↓
┆19┆┆8d┆┄┄size of this jump (255 if >= 255).↲
╞	    ┆84┆The other side has made a protocol error, and a DOCUMENT ↓
┆19┆┆8d┆┄┄CONTINUE RESP NEG has been sent.↲
↲
╞	┆a1┆info type = 11, Document stream troubles↲
↲
╞	┆84┆These units indicate that the cause for the interruption is a ↓
┆19┆┆89┆┄┄break down of the document stream.↲
↲
╞	The general format for these units are:↲
↲
╞	┆a1┆                                                              ↲
╞	┆a1┆! info type = 11 ! unit lg = 1 or 2 ! error kind ! error info !↲
╞	  1 byte          1 byte             1 byte       0 or 1 byte↲
↲
╞	error kind identifies the kind of trouble.↲
↲
╞	(1) error kind = 1, unit lg = 2↲
↲
╞	    ┆84┆A REPLY NOT OK has been received. error info contains the code ↓
┆19┆┆8d┆┄┄field.↲
↲
╞	(2) error kind = 2, unit lg = 1↲
╞	↲
╞	    ┆84┆A premature TTXSI stream close has been received on the ↓
┆19┆┆8d┆┄┄document stream.↲
↲
┆8c┆┆83┆┆ec┆↓
╞	(3) error kind = 3, unit lg = 2↲
↲
╞	    ┆84┆Document stream protocol error↲
             ┆84┆error info identifies the kind of error in the following way:↲
↲
╞	    1: ┆84┆Other than REPLY OK as answer on TRANSFER from DH. (REPLY ↓
┆19┆┆90┆┄┄NOT ok is, of course, always possible, except after STREAM ↓
┆19┆┆90┆┄┄END).↲
↲
╞	    2: ┆84┆no data between CHECKPOINT blocks, or no data between a ↓
┆19┆┆90┆┄┄CHECKPOINT and a STREAM END, in a read operation.↲
↲
╞	    3: ┆84┆premature STREAM END received in a write operation.↲
↲
╞	    4: CHECKPOINT as answer on a STREAM END in a write operation.↲
↲
╞	    5: STREAM block received in a write operation.↲
↲
╞	       ┆84┆Note that any blocks received after a STREAM END will, ↓
┆19┆┆90┆┄┄though erroneous be ignored. Normal document level ↓
┆19┆┆90┆┄┄termination will already have been initiated by DH.↲
↲
╞	(4) error kind = 4, unit lg = 2↲
↲
╞	    ┆84┆This indicates a format error in a received document stream ↓
┆19┆┆8d┆┄┄block. info contains the header byte.↲
↲
╞	┆84┆The action taken by DH when info type = 11 will be ↲
↲
╞	- for source packets:↲
╞	  ┆84┆A DOCUMENT RESYNCHRONIZE REQ is sent if the sessions are inside ↓
┆19┆┆8b┆┄┄the document level. If the other side responds with SESSION ↓
┆19┆┆8b┆┄┄ABORT IND, user information will contain two user units, the one ↓
┆19┆┆8b┆┄┄with info type = 11, and the other with info type = 5 (and error ↓
┆19┆┆8b┆┄┄kind = 2). The one with info type=11 occurs last.↲
↲
┆8c┆┆83┆┆b0┆↓
┆0e┆↓
╞	- for sink packets:↲
╞	  ┆84┆A EXCEPTION REQ is sent. The other side responds with a DOCUMENT ↓
┆19┆┆8b┆┄┄RESYNCHRONIZE IND, a DOCUMENT DISCARD IND, or a SESSION ABORT ↓
┆19┆┆8b┆┄┄IND. Also in this case there will be two user units, the one ↓
┆19┆┆8b┆┄┄with info type = 11, and the other with info type = 5 (and error ↓
┆19┆┆8b┆┄┄kind = 2, 4 or 5). The one with info type=11 occurs last.↲
↲
╞	  ┆84┆However the above mentioned only holds for TTX packets. In TLX ↓
┆19┆┆8b┆┄┄mode, a SESS ABORT REQ is sent from this side.↲
┆0f┆↓

════════════════════════════════════════════════════════════════════════
↓
┆a1┆┆b0┆8. CONFIGURATION PARAMETERS↲
↲
╞	┆84┆In this section various configuration parameters are explained. ↓
┆19┆┆89┆┄┄They are of two kinds↲
↲
╞	- Compilation parameters.↲
╞	  ┆84┆They are declared in an environment, and a change requires ↓
┆19┆┆8b┆┄┄recompilation of DH.↲
↲
╞	- ┆84┆Process parameters.↲
╞	  ┆84┆They are transferred to the DH when its created, and should be ↓
┆19┆┆8b┆┄┄known to the father process.↲
↲
╞	┆84┆A third kind is possible, namely parameters updated via LCP ↓
┆19┆┆89┆┄┄control messages. Such parameters dont exists in the present ↓
┆19┆┆89┆┄┄version.↲
↲
↲
┆b0┆┆a1┆8.1 The Associates List↲
↲
╞	┆84┆When a session exists, and this side is source, the other side can ↓
┆19┆┆89┆┄┄request a change in the source/sink relationship, called a change ↓
┆19┆┆89┆┄┄in control. This is only interesting when this side is caller, ↓
┆19┆┆89┆┄┄otherwise the control should be changed in all cases.↲
↲
╞	┆84┆Such a request should not automatically be granted, however, ↓
┆19┆┆89┆┄┄because the caller is charged for the session. Therefore is the ↓
┆19┆┆89┆┄┄┆a1┆associates list┆e1┆ introduced.↲
↲
╞	It is declared like this↲
↲
╞	associates_list: array (1..?) of ti_mask;↲
↲
╞	┆84┆ti_mask is a type which contains a terminal identifier. Part 4 is ↓
┆19┆┆89┆┄┄optional, though (and is meaningless).↲
↲
╞	┆84┆When a PLEASE CHANGE CONTROL IND is received, a sequential search ↓
┆19┆┆89┆┄┄is made in associates list for the addressee TI parameter. When ↓
┆19┆┆89┆┄┄"A" denotes an entry in associates list, a match occurs when:↲
↲
┆8c┆┆83┆┆e0┆↓
╞	- ┆84┆part 1, part 2 and part 3 is alike in A and addressee TI.↲
╞	- ┆84┆part 1 and part 2 is alike in A and addressee TI, and part 3 is ↓
┆19┆┆8b┆┄┄missing in A.↲
↲
╞	┆84┆Associates list is scanned until a match occurs in which case the ↓
┆19┆┆89┆┄┄search is successfull, or until the whole table is scanned. If the ↓
┆19┆┆89┆┄┄search is successfull, the request can be granted, otherwise its ↓
┆19┆┆89┆┄┄ignored.↲
↲
╞	Associates list is a process parameter.↲
↲
↲
┆b0┆┆a1┆8.2 Telex Conversion Address↲
↲
╞	┆84┆This parameter is used when the CU communicates with the ↓
┆19┆┆89┆┄┄Teletex/Telex conversion unit. It is declared like this:↲
↲
╞	tlx_conv_adr: ti_mask↲
↲
╞	┆84┆This address is used for outgoing sessions when service id for the ↓
┆19┆┆89┆┄┄initiating packet is TLX. For incomming calls, the following check ↓
┆19┆┆89┆┄┄is made: If part 1 and part 2 in "calling TI" equals part 1 and ↓
┆19┆┆89┆┄┄part 2 in tlx_conv_adr, the packet received in the session will ↓
┆19┆┆89┆┄┄get service id = TLX.↲
↲
↲
┆b0┆┆a1┆8.3 Transmission Error Recovery↲
↲
╞	┆84┆As explained in section 6.4.4 the following two values should be ↓
┆19┆┆89┆┄┄decided when a document transmission break down occurs:↲
↲
╞	retry_count:↲
╞	┆84┆How many times the same error should be allowed to occur in ↓
┆19┆┆89┆┄┄sequence before the DH gives up. Zero means immidiate giveup.↲
↲
╞	retry_timer:↲
╞	┆84┆The duration of the encapsulation made when this error occurs, ↓
┆19┆┆89┆┄┄measured in minutes. Has as a matter of fact only meaning when ↓
┆19┆┆89┆┄┄retry_count is non zero. If it is zero, it indicates an immediate ↓
┆19┆┆89┆┄┄retry.↲
↲
┆8c┆┆83┆┆ec┆↓
╞	┆84┆It is the "user inf" field in the packet description which ↓
┆19┆┆89┆┄┄contains information about which kind of error it is. Please refer ↓
┆19┆┆89┆┄┄to section 7.3. As explained there, the last "user unit" in this ↓
┆19┆┆89┆┄┄field originates from DH, and it is this unit which controls the ↓
┆19┆┆89┆┄┄error recovery.↲
↲
╞	A DH user unit has the structure:↲
↲
╞	dh_user_unit = record↲
╞	╞	       info_type: byte;↲
╞	╞	       unit_lg: byte;↲
╞	╞	       error_kind: byte;↲
╞	╞	       error_info: byte↲
╞	╞	     end;↲
↲
╞	┆84┆unit_lg is equal to 1 or 2. In the last case error_info will↓
┆19┆┆89┆┄┄contain additional information.↲
↲
╞	┆84┆It should be noted that user inf can contain some pseudo user unit ↓
┆19┆┆89┆┄┄formats, which is not described in section 7.3, and therefore not ↓
┆19┆┆89┆┄┄are delivered to DH:↲
↲
╞	┆84┆info_type = 5, unit_lg = 2, error_kind = 1, error_info = busy↲
╞	┆84┆A SESSION START CONF NEG received with rej reason = busy, or a ↓
┆19┆┆89┆┄┄SESSION START REQ has been answered by S62CP with result = busy. ↓
┆19┆┆89┆┄┄This is not regarded as an error because the packet probably will ↓
┆19┆┆89┆┄┄soon enter the busy queue.↲
↲
╞	info_type = 5, unit_lg = 1, error_kind = 101↲
╞	┆84┆A priority break has occurred for a SUBMIT packet.↲
↲
╞	┆84┆The table which controls the transmission error recovery, submit ↓
┆19┆┆89┆┄┄error table, is then declared like this:↲
┆8c┆┆83┆┆8c┆↓
┆0e┆↓
↲
╞	submit_error_table: array (1..?) of ↲
         record↲
╞	  error_unit: dh_user_unit;↲
╞	  retry_count: byte;↲
╞	  retry_timer: byte;↲
╞	end;↲
┆0f┆↓
↲
╞	┆84┆When "act_user_unit" denotes the first user unit in user inf, and ↓
┆19┆┆89┆┄┄"search entry" an entry in submit_error_table, a match occurs if ↓
┆19┆┆89┆┄┄one of the following conditions holds:↲
↲
╞	(1) act_user_unit = search_entry. error_unit↲
↲
╞	(2) act_user_unit. info_type = search_entry. error_unit. info_type↲
╞	    and↲

╱04002d440c00060000000003015131000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱

╱04002d440c00060000000003014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
╞	    act_user_unit. error_kind = search_entry. error_unit. error_kind↓

╱04002d440c00060000000003014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱

╱04002d440c00060000000003015131000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
╞	    and↲
╞	    search_entry. error_unit. error_info = 255↲
↲
╞	    ┆84┆This kind of entry contains default parameters for all this ↓
┆19┆┆8d┆┄┄values of info_type and error kind.↲
↲
╞	(3) act_user_unit. info_type = search_entry. error_unit. info_type↲
             and↲
╞	    ┆84┆search_entry. error_unit. error_kind=255↲
↲
╞	    ┆84┆This kind of entry contains default parameters for this value ↓
┆19┆┆8d┆┄┄of info_type.↲
↲
╞	(4) search_entry. error_unit. info_type = 255↲
╞	    ┆84┆This is a default entry which should be placed last in the ↓
┆19┆┆8d┆┄┄table.↲
↲
╞	┆84┆When an error has occurred submit_error_table is searched from the ↓
┆19┆┆89┆┄┄beginning until a match occurs. The found entry contains the ↓
┆19┆┆89┆┄┄values of retry_count and retry_timer which should be used.↲
↲
┆8c┆┆83┆┆c8┆↓
┆0e┆↓
╞	┆84┆example: The following is a possible part of submit_error_table:↲
↲
╞	!                             !↲
╞	!                             !↲
╞	┆a1┆!                             !↲
╞	!info_type    : 5             !↲
╞	!unit_lg      : 2             !↲
╞	!error_kind   : 2             !↲
╞	!error_info   : rem_term_err  !↲
╞	!retry_count  : 1             !↲
╞	┆a1┆!retry_timer  : 10            !↲
╞	!info_type    : 5             !↲
╞	!unit_lg      : 2             !↲
╞	!error_kind   : 2             !↲
╞	!error_info   : prot_timeout  !↲
╞	!retry_count  : 3             !↲
╞	┆a1┆!retry_timer  : 3             !↲
╞	!info_type    : 5             !↲
╞	!unit_lg      : 2             !↲
╞	!error_kind   : 2             !↲
╞	!error_info   : proc_err      !↲
╞	!retry_count  : 0             !↲
╞	┆a1┆!retry_timer  : 0             !↲
╞	!info_type    : 5             !↲
╞	!unit_lg      : 2             !↲
╞	!error_kind   : 2             !↲
╞	!error_info   : 255           !↲
╞	!retry_count  : 10            !↲
╞	┆a1┆!retry_timer  : 1             !↲
╞	!                             !↲
╞	!                             !↲
╞	!                             !↲
┆0f┆↓
┆f0┆┆f0┆↲
╞	This part of the table has the following meaning:↲
↲
╞	┆84┆When a SESSION ABORT IND has been received, retry_count and ↓
┆19┆┆89┆┄┄retry_timer will get the following values, depending on the ↓
┆19┆┆89┆┄┄ab_reason parameter (contained in error info):↲
↲
┆8c┆┆83┆┆d4┆↓
╞	rem_term_err:↲
╞	retry_count = 1, retry_timer = 10.↲
↲
╞	prot_timeout:↲
╞	retry_count = 3, retry timer = 3.↲
↲
╞	proc_err:↲
╞	retry_count = 0 (giveup)↲
↲
╞	┆84┆other values (unspec_reason, nc_cleared, pers_err):↲
╞	retry_count = 10, retry_timer = 1.↲
↲
╞	┆84┆The content of submit error table will not be given here because ↓
┆19┆┆89┆┄┄it is the subject of further study. (For certain kind of errors, ↓
┆19┆┆89┆┄┄some practical experience). The following considerations can be ↓
┆19┆┆89┆┄┄made, however:↲
↲
╞	(1) info type = 5, error kind = 1.↲
╞	    SESS START CONF NEG received↲
↲
╞	    ┆84┆rej_reason = net_not_acc, rec_unkw, ill_fac, redirected, ↓
┆19┆┆8d┆┄┄na_mism, ta_mism or mnem_mism should be a giveup.↲
↲
╞	    ┆84┆rej_reason = address enc. Here is the retry_timer value dummy, ↓
┆19┆┆8d┆┄┄because the encapsulation duration is given in the wait_time ↓
┆19┆┆8d┆┄┄parameter.↲
↲
╞	    ┆84┆rej_reason = busy. Here, too, is the retry_timer value dummy. ↓
┆19┆┆8d┆┄┄The busy_retry_timer is used instead (see below).↲
↲
╞	    ┆84┆The fixing of retry_count and retry_timer for other values of ↓
┆19┆┆8d┆┄┄rej_reason is for further study.↲
↲
╞	(2) info type = 5 error_kind = 2↲
╞	    ┆84┆SESS ABORT IND received.↲
↲
╞	    ┆84┆ab_reason = proc_err should (probably) be a giveup.↲
╞	    ┆84┆Fixing of the error recovery parameters for other values of ↓
┆19┆┆8d┆┄┄ab_reason is for further study.↲
↲
┆8c┆┆83┆┆e0┆↓
╞	(3) info_type = 5, error_kind = 3↲
╞	    EXCEPTION IND received.↲
↲
╞	    except reason = proc_err should be a giveup.↲
↲
╞	    other values of except reason: for further study.↲
↲
╞	(4) info_type = 5, error kind = 6.↲
╞	    ┆84┆A CAP CONF NEG has been received. giveup.↲
↲
↲
╞	(5) unit_type = 5, error_kind = 101↲
╞	    ┆84┆A priority break. retry_count should be something great, and ↓
┆19┆┆8d┆┄┄retry_time should be zero.↲
↲
╞	(6) info_type = 11.↲
╞	    ┆84┆Probably a giveup. Something is wrong with the IMC network or ↓
┆19┆┆8d┆┄┄the DS.↲
↲
╞	┆84┆The submit_error table is a compilation parameter.↲
↲
╞	┆84┆Two other configuration parameters are used to control trans┄↓
┆19┆┆89┆┄┄mission error recovery:↲
↲
╞	┆a1┆┆84┆busy retry timer┆e1┆: gives the encapsulation duration if busy is ↓
┆19┆┆89┆┄┄indicated from S62CP i.e. unit_type = 5, error kind = 1, ↓
┆19┆┆89┆┄┄error_info = busy. The duration is given in milliseconds.↲
↲
╞	┆a1┆┆84┆max retry timer┆e1┆: If the total amount of minutes this packet has ↓
┆19┆┆89┆┄┄been encapsulated expires the value, no further encapsulation will ↓
┆19┆┆89┆┄┄be made, but a giveup will be performed.↲
↲
╞	┆84┆Both these parameters are compilation parameters.↲
↲
↲
┆a1┆┆b0┆8.4 Receival Error Recovery↲
↲
╞	┆84┆As explained in section 6.5.4, it should be decided whether to ↓
┆19┆┆89┆┄┄give up or not when a document receival breaks down.↲
↲
┆8c┆┆83┆┆e0┆↓
╞	┆84┆Here too, it is the user inf field which controls the error ↓
┆19┆┆89┆┄┄recovery. See section 8.3 for the format of a "dh_user_unit". The ↓
┆19┆┆89┆┄┄possible content of user_unit is explained in section 7.3.↲
↲
╞	┆84┆The table which controls the receival error recovery, ↓
┆19┆┆89┆┄┄receival_error_table, is declared like this:↲
↲
╞	receival_error_table: array (1..?) of ↲
         record↲
╞	  error_unit: dh_user_unit;↲
╞	  giveup: boolean;↲
╞	end;↲
↲
╞	┆84┆The search in receival error table is done in the same way as for ↓
┆19┆┆89┆┄┄submit_error_table (see section 8.3), and it delivers the boolean ↓
┆19┆┆89┆┄┄giveup.↲
↲
╞	┆84┆The content of receival error table is not finally fixed at ↓
┆19┆┆89┆┄┄present, but the following can be stated (see section 7.3):↲
↲
╞	(1) info_type = 5, error_kind = 2↲
╞	    ┆84┆SESS ABORT IND received, giveup should be false, except maybe ↓
┆19┆┆8d┆┄┄for ab_reason = proc_err.↲
↲
╞	(2) info_type = 5, error_kind = 4↲
╞	    ┆84┆DOCUMENT DISCARD IND received. Should not occur in the table, ↓
┆19┆┆8d┆┄┄because packet termination will be performed (after an ERASE)↲
↲
╞	(3) info=type = 5, error_kind = 5↲
╞	    ┆84┆DOCUMENT RESYNCHRONIZE IND has been received, giveup = false ↓
┆19┆┆8d┆┄┄except maybe for resynch_reason = proc_err.↲
↲
╞	(4) info_type = 5, error_kind = 7↲
╞	    ┆84┆DOCUMENT CONTINUE IND has been received with illegal ↓
┆19┆┆8d┆┄┄checkpoint number. giveup = true.↲
↲
┆8c┆┆83┆┆b0┆↓
┆0e┆↓
╞	(5) info_type = 11↲
╞	    ┆84┆Document stream troubles. giveup = true except in the ↓
┆19┆┆8d┆┄┄following case:↲
╞	    ┆84┆error_kind = 1, error_info = 3 (no resources). The reason = 1 ↓
┆19┆┆8d┆┄┄(temporarily unable ---) has been given as parameter to a DOC ↓
┆19┆┆8d┆┄┄RESYNCHRONIZE REQ. giveup should be false.↲
┆0f┆↓
↲
╞	┆84┆receival error table is a compilation parameter.↲
↲
╞	┆84┆The amount of minutes to wait for a continuation (when giveup = ↓
┆19┆┆89┆┄┄false) is contained in another compilation parameter, ┆a1┆packet_wait ↓
┆19┆┆89┆┄┆84┆time.↲
↲
┆8c┆┆81┆┆9c┆↓
┆0e┆↓
↲
┆b0┆┆a1┆8.5 Other Configuration Parameters↲
↲
╞	(a) no_of_tu.↲
╞	    ┆84┆Number of TU descriptions in DH. Should be equal to the ↓
┆19┆┆8d┆┄┄corresponding parameters for TTXSI. This is a process ↓
┆19┆┆8d┆┄┄parameter.↲
↲
╞	(b) cu_ta.↲
╞	    ┆84┆A TI mask, which decides whether a session is used for ↓
┆19┆┆8d┆┄┄internal loop or not.↲
↲
╞	(c) no_of_packets.↲
╞	    ┆84┆Number of packet descriptions in DH. Has no correspondence ↓
┆19┆┆8d┆┄┄with other configuration parameters in the CU but should be as ↓
┆19┆┆8d┆┄┄great as the core allows. A process parameter.↲
↲
╞	(d) class 0 pages↲
╞	    ┆84┆Max number of pages in a class 0 submit packet. A process ↓
┆19┆┆8d┆┄┄parameter.↲
↲
╞	(e) no_of_net_conns↲
╞	    ┆84┆Number of possible connections (sessions) to the network. =1 ↓
┆19┆┆8d┆┄┄for a x21 network. A process parameter.↲
↲
╞	(f) max_sess_nu↲
╞	    ┆84┆Max number of sessions possible in DH. A process parameter.↲
╞	    ┆84┆Should be equal to the max number of sessions for S62CP.↲
┆0f┆↓

════════════════════════════════════════════════════════════════════════
↓
↲
┆a1┆A╞	References↲
↲
╞	(1)╞	┆84┆Control Procedures for Teletex and Group 4 Facsimile ↓
┆19┆┆93┆┄┄services↲
╞	╞	CCITT Recommendation S.62↲
╞	╞	(Revised version 4; August 1983)↲
↲
╞	(2) ╞	RCSL No. 43-GL12082↲
╞	╞	┆84┆Teletex Control Unit.↲
╞	╞	Functional Specification↲
↲
╞	(3)╞	RCSL No. 999 09868↲
╞	╞	Teletex Control Unit↲
╞	╞	Interface description↲
╞	╞	Reference Manual↲
↲
╞	(4)╞	RCSL No. 43-GL12247↲
╞	╞	Teletex Control Unit.↲
╞	╞	┆84┆S62CP - S.62 Communication program↲
╞	╞	Reference Manual↲
↲
╞	(5)╞	RCSL No. 43-GL12252↲
╞	╞	Teletex control unit↲
╞	╞	NCP Data structures↲
╞	╞	Reference Manual↲

════════════════════════════════════════════════════════════════════════
↓
↲
┆a1┆B.╞	TTXDH Program head.↲
↲
╞	The program head for DH is declared like this:↲
↲
╞	associates_list_type(max_associates: octet) =↲
╞	array(1..max_associates) of ti_mask;↲
↲
╞	program ttxdh(↲
╞	inspect↲
╞	dh_main:╞	╞	tab_pointer;↲
╞	inspect↲
╞	ttxsi_main,↲
╞	s62cp_main:╞	mbx_pointer;↲
╞	inspect↲
╞	hard_wait:╞	tab_pointer;↲
╞	inspect↲
╞	associates_list: ╞	associates_list_type;↲
╞	tlx_conv_adr,↲
╞	cu_ta:╞	╞	ti_mask;↲
╞	no_of_tu,↲
╞	no_of_packets,↲
╞	max_sess_nu↲
╞	class_0_pages,↲
╞	no_of_net_conns:╞	integer)↲
↲
↲
╞	The meaning of the parameters is↲
↲
╞	dh_main         : Entry semaphore for DH.↲
╞	ttxsi_main      : Points on the entry mailbox for ttxsi.↲
╞	s62cp_main      : Points on the entry mailbox for s62cp.↲
╞	hard_wait╞	      : ┆84┆Used by DH as return mailbox for messages to ↓
┆19┆┆9b┆┄┄s62cp, which will be answered right away, and ↓
┆19┆┆9b┆┄┄where the answer is only a free buffer resource. ↓
┆19┆┆9b┆┄┄Hard wait is made global to make it possible to ↓
┆19┆┆9b┆┄┄snoop it.↲
╞	┆84┆associates_list, tlx_conv_adr, cu_ta, no_of_tu, no_of_packets, ↓
┆19┆┆89┆┄┄max_sess_no, class_0_pages, no_of_net_conns is configuration ↓
┆19┆┆89┆┄┄parameters, see chapter 8.↲
↲

════════════════════════════════════════════════════════════════════════
↓
↲
↲
┆1a┆┆1a┆rue.↲
↲
┆8c┆┆83┆┆b0┆↓
┆0e┆↓
╞	(5) info_type = 11↲
╞	    ┆84┆Document stream troubles. giveup = true except in the ↓
┆19┆┆8d┆┄

Full view