|
|
DataMuseum.dkPresents historical artifacts from the history of: CP/M |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about CP/M Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 64128 (0xfa80)
Types: RcTekst
Names: »VIL1.WP«
└─⟦51ec6abc5⟧ Bits:30005985 Manualer - TELETEX Document Handler
└─⟦this⟧ »VIL1.WP«
╱04002d440c00060000000003014b31400000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
════════════════════════════════════════════════════════════════════════
↓
«index» formatlinie til RC manualer↲
┆14┆┆b3┆↲
┆14┆┆b3┆┆06┆- ┆0b┆ -↲
┆a1┆┆b0┆6.╞ DH PROTOCOL MACHINE↲
↲
╞ ┆84┆The purpose of this chapter is to give a precise definition of the ↓
┆19┆┆89┆┄┄function of the DH, i.e. how it reacts on incoming events from ↓
┆19┆┆89┆┄┄TTXSI and S62CP. A close knowledge of ref. 3 and ref. 4 is nec┄↓
┆19┆┆89┆┄┄cessary for reading this chapter.↲
↲
╞ ┆84┆The description is done by presenting a number of figures con┄↓
┆19┆┆89┆┄┄taining a state diagram. The normal notation used is:↲
↲
╞ ╞ state╞ ╞ state↲
╞ ╞ ╞ or↲
↲
↲
↲
╞ ╞ event╞ event/action↲
↲
↲
↲
╱04002d440c00060000000002014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
╱04002d440c00060000000003014b31400000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
╞ ╞ new╞ ╞ new↲
╞ ╞ state╞ ╞ state↲
↲
╱04002d440c00060000000003014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
╱04002d440c00060000000002014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
↲
╞ ┆84┆It has, however, sometimes been found convenient to use the nota┄↓
┆19┆┆89┆┄┄tion:↲
╱04002d440c00060000000002014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
╱04002d440c00060000000003014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
↲
↲
╞ ╞ state╞ event╞ action╞ new↲
╞ ╞ ╞ ╞ ╞ state↲
↲
╱04002d440c00060000000003014b31400000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
╱04002d440c00060000000002014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
↲
╞ ┆84┆A number of times other kinds of "private" notation will be used, ↓
┆19┆┆89┆┄┄but the meaning should (hopefully) be clear from the context.↲
↲
╞ ┆84┆The events and actions in the diagrams will be listed in the ↓
┆19┆┆89┆┄┄various sections, together with a possible abbreviation and a ↓
┆19┆┆89┆┄┄short explanation. To get a full description of the events and ↓
┆19┆┆89┆┄┄actions which are messages to or from other modules, one must ↓
┆19┆┆89┆┄┄refer to ref. 3 and ref. 4.↲
↲
╞ ┆84┆The protocol machine for sessions and packets will be shown in ↓
┆19┆┆89┆┄┄several diagrams because of the great number of states. Because ↓
┆8c┆┆83┆┆d8┆↓
┆19┆┆89┆┄┄there will be state transitions between the diagrams, the fol┄↓
┆19┆┆89┆┄┄lowing is done:↲
↲
╞ ┆84┆A figure can have one or more entry points, notated like this for ↓
┆19┆┆89┆┄┄fig. x.↲
↲
╱04002d440c00060000000002014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
╱04002d440c00060000000003014b31400000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
┆81┆╞ ╞ xa╞ ╞ xb↲
↲
↲
↲
↲
╞ state╞ state↲
╞ to enter╞ to enter↲
╞ for entry╞ for entry↲
╞ ╞ xa╞ ╞ xb↲
╱04002d440c00060000000003014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
╱04002d440c00060000000002014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
↲
╞ ┆84┆When one of these entry points , f.ex. xa, is used from another ↓
┆19┆┆89┆┄┄figure, it is shown like this:↲
↲
╞ ----> xa↲
↲
╞ ┆84┆To save space on the figures, only the events and actions im┄↓
┆19┆┆89┆┄┄portant for the state transitions are shown.↲
↲
╞ ┆84┆To cover all possibilities a table is added to each figure. The ↓
┆19┆┆89┆┄┄table has the following format:↲
↲
╱04002d440c00060000000002014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
╱04002d440c00060000000003014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
╞ ┆a1┆state ! event ! action ! new state ↲
╞ ! ! !↲
╞ state name ! event name ! action(s) ! new state notation↲
┆a1┆ ! ! !╞ ╞ ↲
↲
╞ -╞ -╞ -╞ -↲
╞ -╞ -╞ -╞ -↲
╞ -╞ - - -↲
╱04002d440c00060000000003014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
╱04002d440c00060000000002014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
╱04002d440c00060000000003014b31400000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
╱04002d440c00060000000003014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
↲
╞ ┆84┆"new state notation" stands for either a state name (if the tran┄↓
┆19┆┆89┆┄┄sition is inside the same figure) or an entry point on another ↓
┆19┆┆89┆┄┄figure.↲
↲
╞ ┆84┆If a state-event pair dos not occur on the figures or in the ↓
┆19┆┆89┆┄┄tables, it means that it is either impossible or a DS protocol ↓
┆19┆┆89┆┄┄error.↲
↲
┆8c┆┆83┆┆cc┆↓
╞ ┆84┆Finally a number of footnotes are given to the figures explaining ↓
┆19┆┆89┆┄┄things too complicated to show in the diagrams.↲
↲
╞ ┆84┆The aim of this description is not to give an implementation des┄↓
┆19┆┆89┆┄┄cription, i.e. data formats and buffer handling are not described.↲
↲
╞ ┆84┆It has, however, been necessary to bypass this principle concer┄↓
┆19┆┆89┆┄┄ning the content of TU, packet and session descriptions. Certain ↓
┆19┆┆89┆┄┄of the fields in these are important for the protocol machine, and ↓
┆19┆┆89┆┄┄certain flags are introduced to avoid that the number of states ↓
┆19┆┆89┆┄┄becomes excessive.↲
↲
╞ ┆84┆Also regarding buffer handling, there is some rules concerning ↓
┆19┆┆89┆┄┄buffer clean up against S62CP and TTXSI (document streams). It ↓
┆19┆┆89┆┄┄should be made certain that these rules can be obeyed.↲
↲
↲
┆a1┆┆b0┆6.1╞ TU Handling↲
↲
╞ ┆84┆This section describes the handling of TU's. The state diagram is ↓
┆19┆┆89┆┄┄showed in fig. 12. and in fig. 13.↲
↲
╞ ┆84┆To administer the TU handling, the DH has a number of ┆a1┆TU de┄┆a1┆crip┄↓
┆19┆┆89┆┄┆84┆tions┆e1┆. They contain a state variable and other fields, including ↓
┆19┆┆89┆┄┄the follwing two:↓
↲
╞ number of sessions : ┆84┆number of alive sessions. A session is ↓
┆19┆┆a3┆┄┄regarded as alive as long as the session ↓
┆19┆┆a3┆┄┄cleans up procedure against S62CP is not ↓
┆19┆┆a3┆┄┄totally performed.↲
↲
╞ number of sink sessions : ┆84┆number of sessions where it is possible ↓
┆19┆┆a3┆┄┄that a sink packet can be received + ↓
┆19┆┆a3┆┄┄number of alive sink packets.↲
↲
════════════════════════════════════════════════════════════════════════
↓
┆a1┆┆b0┆6.1.1╞ TU Events↲
↲
╞ ┆84┆Here is listed the events to the TU protocol machine.↲
↲
╞ DS events:↲
╞ - ┆84┆REQUEST.ACTIVATE, abr REQ.ACT↲
╞ ┆84┆Request for an activation of the TU.↲
↲
╞ - REQUEST.REMOVE, abr REQ.REM↲
╞ ┆84┆A request for a removal of a TU.↲
↲
╞ - REQUEST.DISABLE, abr. REQ.DISA↲
╞ The TU is requested disabled.↲
↲
╞ - REQUEST.ENABLE, abr. REQ.ENA↲
╞ The TU is requested enabled.↲
↲
╞ - REQUEST.REDEFINE, abr. REQ.REDEF↲
╞ ┆84┆A request for redefinition of the TU attributes.↲
↲
╞ - REQUEST.SUSPEND, abr. REQ.SUSP↲
╞ ┆84┆A request for suspension of the TU. This is in fact not a DS, ↓
┆19┆┆8c┆┄┄but a TTXSI event.↲
↲
╞ - REQUEST.RESUME, abr. REQ.RESUME↲
╞ Regrets a suspension of the TU.↲
↲
╞ S62CP events:↲
╞ - answ DEACT TI↲
╞ ┆84┆Answer to a DEACT TI message. The TU is removed at S62CP.↲
↲
╞ - answ SUSP TI↲
╞ ┆84┆Answer to a SUSP TI message. The TU is suspended at S62CP. ↲
↲
╞ Special events:↲
╞ - all sess removed↲
╞ ┆84┆Number of sessions has became zero. This indicates that a DEACT ↓
┆19┆┆8c┆┄┄TI, a REDEF TI or a SUSP TI can be sent to S62CP.↲
┆8c┆┆83┆┆c8┆↓
╞ - ┆84┆no sink sess↲
╞ ┆84┆Indicates that number of sink sessions has became zero. A dis┄↓
┆19┆┆8c┆┄┄abling of the TU can be performed. Note that this event always ↓
┆19┆┆8c┆┄┄occurs before a possible "all sess removed" event.↲
↲
↲
┆a1┆┆b0┆6.1.2╞ TU Actions↲
↲
╞ ┆84┆Here the actions performed are listed:↲
↲
╞ DS actions:↲
╞ - CONFIRMATION.ACTIVATE, abr CONF.ACT↲
╞ ┆84┆Response on a REQ.ACT. Result indicates success or failure.↲
↲
╞ - CONFIRMATION.REMOVE, abr CONF.REM↲
╞ ┆84┆Response on a REQ.REM. Result indicates success or failure.↲
↲
╞ - CONFIRMATION.DISABLE, abr CONF.DISA↲
╞ ┆84┆Indicates, if result=ok, that a disable procedure is carried ↓
┆19┆┆8c┆┄┄through (all sessions terminated). If result=not_proc, the ↓
┆19┆┆8c┆┄┄disabling has been terminated by a new REQ.DISA or a REQ.ENA.↲
↲
╞ - CONFIRMATION.REDEFINE, abr CONF.REDEF↲
╞ Response on a REQ.REDEF. Result tells about success or failure.↲
↲
╞ - CONFIRMATION.SUSPEND, abr CONF.SUSP↲
╞ Inform the TTXSI that the TU is suspended.↲
↲
╞ S62CP actions:↲
╞ - ACTIVATE TI, abr ACT TI↲
╞ ┆84┆Requests S62CP to activate a TI. Hard waiting is performed on ↓
┆19┆┆8c┆┄┄the answer, therefore no "answ ACT TI" event exists.↲
↲
╞ - DEACTIVATE TI, abr DEACT TI↲
╞ ┆84┆Requests S62CP to remove a TU.↲
↲
╞ - REDEFINE TI, abr REDEF TI↲
╞ ┆84┆Requests a redefinition of the TU attributes at S62CP. Hard ↓
┆19┆┆8c┆┄┄waiting is performed on the answer.↲
↲
┆8c┆┆83┆┆e0┆↓
╞ - SUSPEND TI, abr SUSP TI↲
╞ Requests a suspension of the TU at S62CP.↲
↲
╞ - RESUME TI↲
╞ ┆84┆Regrets a suspension. Hard waiting is performed on the answer.↲
↲
╞ Special actions:↲
╞ - TU clean up↲
╞ ┆84┆Performed when a deactivate or a suspend procedure is started ↓
┆19┆┆8c┆┄┄for this TU. The event "TU removed" is generated in all ↓
┆19┆┆8c┆┄┄sessions and all packets for this TU. This will force the ↓
┆19┆┆8c┆┄┄sessions to be ter┄minated as fast as possible.↲
↲
↲
┆b0┆┆a1┆6.1.3╞ TU Protocol Machine↲
↲
╞ This section describes the two figures:↲
↲
╞ fig. 12: TU activation/ removal↲
↲
╞ fig. 13: TU disabling and redefining↲
↲
↲
┆a1┆┆b0┆6.1.3.1 TU activation/ removal.↲
↲
╞ ┆84┆This section describes fig. 12. It shows states concerning ↓
┆19┆┆89┆┄┄activation, removal and suspension.↲
↲
╞ ┆84┆It has the entry points:↲
↲
╞ 12a: REQ.REM received↲
↲
╞ 12b: REQ.SUSP received↲
↲
╞ 12c: return to active state↲
↲
════════════════════════════════════════════════════════════════════════
↓
╞ Fig. 12. TU activation and removal.↲
╱04002d440c00060000000002014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
╱04002d440c00060000000003014b31400000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
↲
↲
╞ ╞ TU idle↲
╞ ╞ REQ.ACT↲
↲
╞ ╞ ACT.TU↲
╞ CONF.ACT result=busy *1)↲
╞ result=busy↲
╞ ╞ ╞ ╞ ╞ result=ok↲
╞ ╞ result=dupl_fct↲
↲
╞ ╞ ╞ ╞ ╞ CONF.ACT↲
╞ CONF.ACT╞ ╞ ╞ result=ok↲
╞ result=dupl_fct↲
↲
↲
answ DEACT TI/CONF.REM↲
╞ result=ok╞ ╞ ↲
╞ ╞ ╞ ╞ answ SUSP TI/CONF.SUSP↲
↲
↲
↲
╞ ╞ ╞ suspending↲
╞ ╞ ╞ *4)↲
↲
↲
↲
REQ.REM↲
╞ removing╞ ╞ /DEACT TI╞ suspended↲
╞ *4)╞ ╞ ╞ ╞ ╞ ↲
╞ ╞ ╞ all sess↲
╞ ╞ ╞ removed/SUSP TI↲
↲
╞ ╞ ╞ ╞ ╞ REQ.RESUME/RESUME TI↲
╞ ╞ *3)↲
╞ wait↲
╞ ╞ ╞ suspend↲
↲
all sess/DEACT TI↲
removed↲
↲
↲
↲
╞ ╞ REQ.SUSP/TU clean up╞ REQ.DISA╞ 13a↲
↲
↲
╞ wait╞ ╞ ╞ active╞ ╞ ↲
╞ remove╞ ╞ ╞ *2)↲
╞ *3)↲
↲
╞ ╞ REQ.REM/TU clean up╞ REQ.REDEF 13b↲
↲
╞ 12a 12b╞ ╞ ╞ 12c↲
════════════════════════════════════════════════════════════════════════
↓
╞ Table 12↲
↲
╞ ┆a1┆state╞ ╞ event╞ action╞ ╞ new state↲
╞ ╞ ! ! !↲
╞ TU idle╞ ! REQ.REM ! CONF.REM ! -↲
╞ ╞ !╞ !╞ result=unknown rec !↲
┆a1┆┆e1┆ ┆a1┆ ! ! !╞ ↲
! ! !↲
╞ active ! all ! - ! -↲
╞ ╞ ! sess !╞ ╞ !↲
╞ ╞ ! removed ! !↲
┆a1┆ ! ! ! ↲
╞ ╞ ! !╞ ╞ !↲
╞ wait remove ! REQ.SUSP! -╞ ! -↲
╞ ┆a1┆╞ ! !╞ ╞ ! ↲
╞ ╞ ! !╞ ╞ !↲
╞ removing╞ ! REQ.SUSP!╞ -╞ ! -↲
╞ ┆a1┆╞ !╞ !╞ ╞ ! ↲
╱04002d440c00060000000003014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
╱04002d440c00060000000002014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
↲
╞ Fig. 12, footnotes.↲
↲
╞ *1)╞ ┆84┆Because hard waiting is performed this action delivers a ↓
┆19┆┆93┆┄┄result upon which the state transition depends.↲
↲
╞ ╞ ┆84┆The result format_err is an indication that the DS has ↓
┆19┆┆93┆┄┄made a protocol error.↲
↲
╞ *2)╞ ┆84┆Sessions can be activated and packets can exist.↲
↲
╞ *3)╞ ┆84┆If there is no session for this TU, an "all sess re┄↓
┆19┆┆93┆┄┄moved" event is simulated. All incoming SESS START IND ↓
┆19┆┆93┆┄┄messages are in this state kept pending in DH.↲
↲
╞ *4)╞ ┆84┆All incoming SESS START IND messages are answered with ↓
┆19┆┆93┆┄┄the result "not_proc".↓
↲
↲
↲
┆8c┆┆83┆┄↓
╱04002d440c00060000000003014b31400000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
╱04002d440c00060000000003014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
┆0e┆↓
┆a1┆┆b0┆6.1.3.2 Disabling and redefining.↲
↲
╞ ┆84┆This section describes fig. 13. It contains states for disabling ↓
┆19┆┆89┆┄┄and redefining of a TU. These states can be regarded as substates ↓
┆19┆┆89┆┄┄of the "active" state. Fig. 13 has two entry points:↲
↲
╞ 13a: A REQ.DISA has been received.↲
↲
╞ 13b: A REQ.REDEF has been received.↲
┆0f┆↓
════════════════════════════════════════════════════════════════════════
↓
╞ Fig. 13. disabling and redefining.↲
╱04002d440c00060000000002014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
╱04002d440c00060000000003014b31400000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
↲
↲
╞ ╞ 13a╞ ╞ ╞ ╞ 13b↲
↲
╞ ╞ *1)╞ ╞ ╞ *1)↲
╞ ╞ ╞ ╞ REQ.DISA↲
↲
╞ ╞ ╞ ╞ wait↲
╞ disabling REQ.REDEF╞ disable╞ wait redef↲
╞ *5)╞ ╞ redef╞ ╞ *3)↲
╞ ╞ ╞ ╞ *5)↲
↲
╞ REQ.ENA CONF.DISA↲
╞ result=not proc╞ ╞ REQ.ENA CONF.DISA↲
╞ ╞ ╞ ╞ ╞ result=not_proc↲
╞ 12c↲
↲
╞ ╞ no sink CONF.DISA↲
╞ ╞ sess result=ok╞ ╞ all sess↲
╞ ╞ ╞ ╞ ╞ removed↲
↲
↲
↲
↲
↲
↲
↲
╞ ╞ disabled↲
╞ ╞ *2)↲
↲
╞ ╞ REQ.ENA╞ ↲
↲
╞ 12c↲
↲
↲
↲
════════════════════════════════════════════════════════════════════════
↓
╞ ┆a1┆Table 13.↲
↲
↲
╞ ┆a1┆ state╞ ! event╞ ! action╞ ╞ ! new state↲
╞ ╞ !╞ ╞ !╞ ╞ !↲
╞ disabling╞ ! REQ.REM╞ ! TU clean up╞ ! 12a↲
╞ & disabled !╞ ╞ !╞ ╞ !↲
╞ & wait redef !╞ ╞ !╞ ╞ !↲
╞ & wait disable !╞ ╞ !╞ ╞ !↲
redef ! ! !↲
┆a1┆┆e1┆& disable redef !╞ ╞ !╞ ╞ !╞ ↲
╞ ┆a1┆ ! ! ! ↲
╞ !╞ ╞ !╞ ╞ !↲
╞ disabling ! REQ.DISA╞ ! CONF.DISA╞ ! -↲
╞ & wait disable !╞ *4)╞ ! result=not_proc╞ !↲
redef ! ! !↲
┆a1┆┆e1┆& disable redef !╞ ╞ !╞ ╞ !╞ ↲
┆a1┆┆e1┆& disabled ! ! ! ↲
┆a1┆ ! ! ! ↲
╞ ╞ !╞ ╞ !╞ ╞ !↲
╞ wait redef ! REQ.REDEF╞ ! CONF.REDEF╞ !↲
╞ & wait disable !╞ ╞ ! result=not_proc╞ !↲
redef ! ! !↲
& disable redef ! ! !↲
╞ ┆a1┆╞ !╞ ╞ !╞ ╞ !╞ ↲
╞ ╞ !╞ ╞ !╞ ╞ !↲
╞ disabling ! REQ.SUSP╞ ! TU clean up╞ ! 12b↲
╞ & disabled !╞ ╞ !╞ ╞ !↲
╞ & wait redef !╞ ╞ !╞ ╞ !↲
╞ & wait disable !╞ ╞ !╞ ╞ !↲
redef ! ! !↲
╞ ┆a1┆┆e1┆& disable redef !╞ ╞ !╞ ╞ !╞ ↲
┆a1┆ ! ! ! ↲
╱04002d440c00060000000003014b31400000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
╱04002d440c00060000000002014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
↲
╞ fig 13, footnotes↲
↲
╞ *1) ┆84┆The text message in REQ.DISA is saved in the TU description.↲
↲
╞ *2) ┆84┆All incoming SESS START IND messages are answered with SESS ↓
┆19┆┆8d┆┄┄START RESP NEG, containing the saved text message. Number of ↓
┆19┆┆8d┆┄┄sink sessions will remain zero in this state.↲
↲
╞ *3) ┆84┆If number of sessions = 0, an all sess removed event is ↓
┆19┆┆8d┆┄┄simulated.↲
╞ ↲
╞ *4) ┆84┆The text message is saved in the TU description, overwriting ↓
┆19┆┆8d┆┄┄the old one.↲
↲
↲
┆8c┆┆83┆┆c8┆↓
┆0e┆↓
┆a1┆┆b0┆6.2╞ Sessions and Packets, Design Considerations↲
↲
╞ ┆84┆When packet communication is in progress the DH will communicate ↓
┆19┆┆89┆┄┄with its surroundings by means of the following entities:↲
↲
╞ 1)╞ ┆84┆Packets. Known by DH and DS, and identified by DS packet ↓
┆19┆┆93┆┄┄no and CU packet no.↲
↲
╞ ╞ ┆84┆They are initiated by REQ.SUBMIT, REQ.REGRET or ↓
┆19┆┆93┆┄┄IND.CREATE and are terminated by CONF.SUBMIT ↓
┆19┆┆93┆┄┄CONF.REGRET, CONF.┄ABORT, IND.DELIVER, or an IND.CANCEL.↲
┆0f┆↓
↲
╞ 2)╞ ┆84┆Document streams. Known by DH and TTXSI (DS) and ident┄↓
┆19┆┆93┆┄┄ified by the u3 buffer attribute.↲
↲
╞ ╞ ┆84┆They are initiated by DH sending a TRANSFER block with ↓
┆19┆┆93┆┄┄Mode = r (read operations) or = w (write operations). ↓
┆19┆┆93┆┄┄Termination begins with a DH stream close from DH and is ↓
┆19┆┆93┆┄┄ended by TTXSI returning it.↲
↲
╞ 3)╞ ┆84┆Sessions. Known by DH and S62CP. Initiated by either a ↓
┆19┆┆93┆┄┄SESSION START IND or a SESSION START REQ. Termination ↓
┆19┆┆93┆┄┄begins with a SESSION CLEARING IND from S62CP and is ↓
┆19┆┆93┆┄┄ended by DH sending a SESSION CLEARING RESP and S62CP ↓
┆19┆┆93┆┄┄answering it.↲
↲
╞ ┆84┆A packet and a session is said to be inside the document level ↓
┆19┆┆89┆┄┄when a DOC START REQ or a DOC CONT REQ has been sent, or a DOC ↓
┆19┆┆89┆┄┄START IND or a DOC CONT IND has been received. They leave the ↓
┆19┆┆89┆┄┄document level when a DOCUMENT END CONF or a DOCUMENT RESYNCH/┄↓
┆19┆┆89┆┄┄DISCARD CONF has been received, or a DOCUMENT END RESP or a DO┄↓
┆19┆┆89┆┄┄CUMENT RESYNCH/DISCARD RESP has been sent.↲
↲
╞ ┆84┆When they are inside the document level session, packets and ↓
┆19┆┆89┆┄┄document streams will of course be closely connected.↲
↲
╞ ┆84┆The problem is how independent they should be otherwise. The fol┄↓
┆19┆┆89┆┄┄lowing problems arises:↲
↲
┆8c┆┆83┆┆d4┆↓
╞ 1)╞ ┆84┆A packet must not be terminated before any document ↓
┆19┆┆93┆┄┄stream used by that packet is fully terminated.↲
↲
╞ ╞ ┆84┆This implies that the packet cannot run independent of ↓
┆19┆┆93┆┄┄the document stream.↲
↲
╞ 2)╞ ┆84┆When a session breaks down while document transmission ↓
┆19┆┆93┆┄┄is in progress there is the following problem concerning ↓
┆19┆┆93┆┄┄buffer clean up:↲
╞ ╞ ┆84┆The STREAM buffers from the document stream can be pend┄↓
┆19┆┆93┆┄┄ing as DATA REQ buffers, and CHECKPOINT buffers as PAGE ↓
┆19┆┆93┆┄┄END REQ buffers. These buffers are not home for certain ↓
┆19┆┆93┆┄┄before the STREAM CLEAR RESP message has been answered ↓
┆19┆┆93┆┄┄by S62CP (see fig. 14).↲
↲
╞ ╞ ┆84┆The closing of the document stream cannot be properly ↓
┆19┆┆93┆┄┄terminated before all these buffers are home. Sessions ↓
┆19┆┆93┆┄┄and document streams are closely connected in this case.↲
════════════════════════════════════════════════════════════════════════
↓
╞ Fig. 14. Session clean up by document transmission.↲
↲
↲
╞ ╞ TTXSI╞ ╞ DH╞ ╞ S62CP↲
↲
╞ ╞ STREAM(1) ↲
╞ ╞ ╞ ╞ DATA REQ(1)↲
↲
╞ ╞ STREAM(2) ↲
╞ ╞ ╞ ╞ DATA REQ(2)↲
↲
↲
╞ ╞ ╞ ╞ ╞ ╞ Session ↲
╞ ╞ ┆a1┆╞ ╞ ╞ ┆e1┆┆a1┆╞ ┆e1┆> break↲
╞ ╞ ╞ ╞ ╞ ╞ down↲
↲
╞ ╞ ╞ ╞ STREAM CLEAR IND↲
↲
↲
↲
↲
╞ ╞ ╞ ╞ STREAM CLEAR RESP↲
↲
↲
↲
↲
╞ ╞ ╞ ╞ answer↲
╞ ╞ ╞ ╞ STREAM CLEAR RESP↲
↲
↲
╞ ╞ ╞ document stream↲
╞ ╞ ╞ can be terminated↲
↲
↲
↲
╞ ╞ The doted lines indicate answers.↓
↲
════════════════════════════════════════════════════════════════════════
↓
╞ 3)╞ ┆84┆When a session breaks down while document receival is in ↓
┆19┆┆93┆┄┄progress the following problem arises:↲
╞ ╞ ┆84┆The DATA IND buffers will be pending at TTXSI as STREAM ↓
┆19┆┆93┆┄┄buffers and the PAGE END IND buffers as CHECKPOINT buf┄↓
┆19┆┆93┆┄┄fers. The session clean up cannot be properly terminated ↓
┆19┆┆93┆┄┄(a STREAM CLEARING RESP sent) before the DH stream close ↓
┆19┆┆93┆┄┄has been answered by TTXSI (see fig. 15.) Document ↓
┆19┆┆93┆┄┄streams and sessions are also in this case closely con┄↓
┆19┆┆93┆┄┄nected.↲
↲
↲
╞ fig. 15. Session clean up by document receival↲
↲
╞ ╞ TTXSI╞ ╞ DH╞ ╞ S62CP↲
↲
↲
╞ ╞ ╞ ╞ DATA IND(1)↲
╞ ╞ STREAM(1)↲
↲
↲
↲
╞ ╞ ╞ ╞ DATA IND(2)↲
╞ ╞ STREAM(2)↲
↲
╞ ╞ ╞ ╞ ╞ ╞ session↲
╞ ╞ ┆a1┆╞ ╞ ╞ ╞ ┆e1┆> break↲
╞ ╞ ╞ ╞ ╞ ╞ down↲
↲
╞ ╞ DH stream close↲
↲
↲
↲
╞ ╞ ╞ STREAM CLEARING RESP↲
╞ ╞ ╞ can be sent↲
↲
════════════════════════════════════════════════════════════════════════
↓
╞ 4)╞ ┆84┆The resource handling is easier when there is at most ↓
┆19┆┆93┆┄┄one data stream per session (the maximum number of docu┄↓
┆19┆┆93┆┄┄ment streams equals the maximum number of sessions). ↓
┆19┆┆93┆┄┄This is accomplished by delaying a session removal until ↓
┆19┆┆93┆┄┄a do┄cument stream, which has used the session, is fully ↓
┆19┆┆93┆┄┄terminated.↲
↲
╞ ┆84┆For these reasons it has been decided not to handle document ↓
┆19┆┆89┆┄┄streams independently from packets and sessions, i.e. they are not ↓
┆19┆┆89┆┄┄given their own protocol machine.↲
↲
╞ ┆84┆However, session and packet are still separate entities, because ↓
┆19┆┆89┆┄┄several packets can use a session. This is especially the case in ↓
┆19┆┆89┆┄┄sink states, where the session cannot be said to belong to any ↓
┆19┆┆89┆┄┄packet when it is outside document level.↲
↲
╞ ┆84┆Therefore the following decisions have been made:↲
↲
╞ a)╞ ┆84┆Packets and sessions are regarded as separate entities, ↓
┆19┆┆93┆┄┄each having their own protocol machine. They are, how┄↓
┆19┆┆93┆┄┄ever, guided by the same protocol machine when the docu┄↓
┆19┆┆93┆┄┄ment level is entered and a document stream is opened. ↓
┆19┆┆93┆┄┄In this case they are said to be ┆a1┆connected.↲
↲
╞ b)╞ ┆84┆They loses the connection with each other, are said to ↓
┆19┆┆93┆┄┄be ┆84┆disconnected┆e1┆, in the following cases:↲
↲
╞ ╞ - ┆84┆The document level has been left and the document ↓
┆19┆┆96┆┄┄stream has been closed.↲
↲
╞ ╞ - ┆84┆The session breaks down (ABORT IND or ABORT REQ). The ↓
┆19┆┆96┆┄┄disconnection is only made when it is certain that ↓
┆19┆┆96┆┄┄all involved buffers are home.↲
↲
╞ ┆84┆This scheme cannot be followed in case of TLX service and packet ↓
┆19┆┆89┆┄┄transmitted with charge request. In these cases packets and sessions ↓
┆19┆┆89┆┄┄are connected almost to the end.↲
↲
┆8c┆┆83┆┆c8┆↓
┆0e┆↓
╞ ┆84┆In section 6.3 the session protocol machine is described. Section ↓
┆19┆┆89┆┄┄6.4 contains the handling of packet source states (SUBMIT,REGRET ↓
┆19┆┆89┆┄┄or ABORT), and section 6.5 packet sink states (DELIVER or CANCEL).↲
┆0f┆↓
↲
↲
┆a1┆┆b0┆6.3╞ Session Handling↲
↲
╞ ┆84┆In this section the session handling is specified. A session is ↓
┆19┆┆89┆┄┄either initiated by DH with a SESSION START REQ (a SUBMIT or a ↓
┆19┆┆89┆┄┄REGRET packet is in need for a session) or initiated by S62CP by a ↓
┆19┆┆89┆┄┄SESSION START IND. A session be┄longs to a specific TU.↲
↲
↲
┆b0┆┆a1┆6.3.1╞ Handling of Session Descriptions↲
↲
╞ ┆84┆A session is described by a ┆a1┆session description┆e1┆. The number of ↓
┆19┆┆89┆┄┄sessions which can be alive at the same time are equal to the ↓
┆19┆┆89┆┄┄number of session descriptions.↲
↲
╞ ┆84┆The session descriptions are devided into two pools:↲
↲
╞ 1)╞ ┆84┆Network pool.↲
╞ ╞ ┆84┆These sessions are used for connections against the ↓
┆19┆┆93┆┄┄network, i.e. sessions which via DTE connections com┄↓
┆19┆┆93┆┄┄municate with another entity in the network.↲
↲
╞ ╞ ┆84┆The number of descriptions in this pool is limited by ↓
┆19┆┆93┆┄┄the "no_of_net_conns" process parameter (see section ↓
┆19┆┆93┆┄┄8.5). This number should be equal to the possible number ↓
┆19┆┆93┆┄┄of DTE connections.↲
↲
╞ 2)╞ int_loop_pool.↲
╞ ╞ ┆84┆These sessions are used for internal loops in the CU. ↓
┆19┆┆93┆┄┄The number of session descriptions in the pool equals↲
╞ ╞ ┆84┆max_sess_nu - no_of_net_conns, where "max_sess_nu" is a ↓
┆19┆┆93┆┄┄process parameter. ↲
════════════════════════════════════════════════════════════════════════
↓
╞ ┆84┆Whether a session belongs to int_loop_pool is decided in the fol┄↓
┆19┆┆89┆┄┄lowing way:↲
↲
╞ - ┆84┆Outgoing calls: part1 and part2 in the addressee_ti parameter ↓
┆19┆┆8c┆┄┄to SESSION START REQ equals the "cu_na" process parameter.↲
↲
╞ - ┆84┆Incoming calls: part1 and part2 of the calling_ti parameter in ↓
┆19┆┆8c┆┄┄SESSION START IND equals cu_na.↲
↲
╞ ┆84┆It should be noted that max_sess_nu should equal the number of ↓
┆19┆┆89┆┄┄sessions possible in S62CP.↲
↲
↲
┆a1┆┆b0┆6.3.2╞ Content of a Session Description↲
↲
╞ ┆84┆The following fields in a session description are important to the ↓
┆19┆┆89┆┄┄protocol machine:↲
↲
╞ caller : ┆84┆A boolean. = true if the session was initiated by ↓
┆19┆┆9a┆┄┄SESSION START REQ.↲
↲
╞ charge_inf_req : ┆84┆If caller = true, the charge_inf_req parameter. ↓
┆19┆┆9a┆┄┄Otherwise false.↲
↲
╞ change req : ┆84┆a boolean. =true if a PLEASE CHANGE CONTROL IND ↓
┆19┆┆9a┆┄┄has been received, and the request can be ↓
┆19┆┆9a┆┄┄granted.↲
↲
╞ service : ┆84┆TTX or TLX. The service used for the packet which ↓
┆19┆┆9a┆┄┄last used the session.↲
↲
reserved : ┆84┆A boolean = true if a memory reservation has been ↓
┆19┆┆9a┆┄┄performed by this session.↲
↲
╞ called_ti : ┆84┆The corresponding parameter from SESSION START ↓
┆19┆┆9a┆┄┄CONF POS or SESSION START IND.↲
↲
╞ calling_ti : ┆84┆As above.↲
↲
┆8c┆┆83┆┆d4┆↓
╞ add_s_ref : ┆84┆As above. These three parameters are used to con┄↓
┆19┆┆9a┆┄┄struct document identifications.↲
↲
↲
┆a1┆┆b0┆6.3.3╞ Session Events↲
↲
╞ ┆84┆In this section is listed the events to the session protocol ↓
┆19┆┆89┆┄┄machine. Only those which can occur when the session is not ↓
┆19┆┆89┆┄┄connected to a packet is mentioned, however. This excludes ↓
┆19┆┆89┆┄┄document level events.↲
↲
╞ Session events from S62CP:↲
↲
╞ - ┆84┆SESSION START IND, abr. SESS START IND ↲
╞ Remote session call.↲
↲
╞ - ┆84┆SESSION START CONF POS, abr. SESS START CONF POS↲
╞ Positive response to a SESS START REQ.↲
↲
╞ - SESSION START CONF NEG, abr. SESSION START CONF NEG↲
╞ Negative response to a SESS START REQ.↲
↲
╞ - SESSION ABORT IND, abr. SESS ABORT IND↲
╞ Abnormal session break down.↲
↲
╞ - SESSION END IND, abr. SESS END IND↲
╞ ┆84┆Normal session termination, requested from the remote party.↲
↲
┆19┆┆8c┆┄┄Will be ignored by the session protocol machine, because it is ↓
┆19┆┆8c┆┄┄only interesting when a packet is connected in TLX service ↓
┆19┆┆8c┆┄┄mode. ╞ ↲
↲
╞ - PLEASE CHANGE CONTROL IND, abr. PL CH CONTR IND↲
╞ ┆84┆Remote request for change in source/sink relationship.↲
↲
╞ - CHANGE CONTROL IND, abr. CH CONTR IND↲
╞ This side becomes source.↲
════════════════════════════════════════════════════════════════════════
↓
╞ - MEMORY RESERVATION IND, abr. MEM RES IND↲
╞ ┆84┆An amount of memory should be reserved in sink mode.↲
↲
╞ - DOCUMENT START INDICATION, abr. DOC START IND↲
╞ A new document is received. A packet should be created.↲
↲
- ┆84┆DOCUMENT CONTINUE INDICATION, abr. DOC CONT IND↲
┆84┆A continuation of an already partly received document.↲
↲
╞ - CHARGE INF IND, abr. CHARGE IND↲
╞ ┆84┆delivers charge information requested when the call is made.↲
↲
╞ - STREAM CLEARING IND, abr. STREAM CLEAR IND↲
╞ ┆84┆Request from S62CP for start of session clean up procedure.↲
↲
╞ - answ STREAM CLEARING RESP, abr. answ STREAM CLEAR RESP╞ ↲
╞ ┆84┆Answer on a STREAM CLEAR RESP, indicating that the session ↓
┆19┆┆8c┆┄┄clean up is terminated.↲
↲
╞ Events from DS:↲
↲
╞ - CONF.RESERVE, abr. CONF.RES↲
╞ ┆84┆Response on an IND.RES. The memory reservation protocol is a ↓
┆19┆┆8c┆┄┄part of the session protocol machine, because reservation is ↓
┆19┆┆8c┆┄┄done for sessions, not for packets.↲
↲
╞ Special events:↲
↲
╞ - sess allocated↲
╞ ┆84┆This event starts the session handling as caller. A packet, the ↓
┆19┆┆8c┆┄┄initiator, has allocated this session.↲
↲
╞ - sess connected.↲
╞ ┆84┆Posiltive response from a packet on a cont arrived action (see ↓
┆19┆┆8c┆┄┄below). The continuation occured in a legal state (for the ↓
┆19┆┆8c┆┄┄packet), and the packet has performed the action connect sess.↲
════════════════════════════════════════════════════════════════════════
↓
╞ - reject call.↲
╞ ┆84┆Negative reaction on a cont arrived. The packet has performed┄ a ↓
┆19┆┆8c┆┄┄"reset call" action, because the continuation occured in an ↓
┆19┆┆8c┆┄┄illegal state.↲
↲
╞ - turn req.↲
╞ ┆84┆Occurs in sink mode, and indicates that a submit/regret packet ↓
┆19┆┆8c┆┄┄can use the session, provided source/sink relationship is ↓
┆19┆┆8c┆┄┄changed.↲
↲
╞ - doc level exit.↲
╞ ┆84┆Indicates that a connected packet has left the document level ↓
┆19┆┆8c┆┄┄in an orderly manner, and that the packet now is disconnected ↓
┆19┆┆8c┆┄┄from the session. A new packet can be transmitted/received by ↓
┆19┆┆8c┆┄┄means of this session. By normal TTX service this possibility ↓
┆19┆┆8c┆┄┄is used as far as possible.↲
↲
╞ - start sess clear.↲
╞ ┆84┆Indicates that session termination has been requested by a con┄↓
┆19┆┆8c┆┄┄nected packet (f.ex. by SESS END REQ), but SESS CLEAR IND has ↓
┆19┆┆8c┆┄┄not yet been received. No buffers from TTXSI/DH will be pending ↓
┆19┆┆8c┆┄┄at S62CP, and no S62CP buffers are pending at DH/TTXSI. Normal ↓
┆19┆┆8c┆┄┄exit from packet submission with charge request, and ↓
┆19┆┆8c┆┄┄submission┄/receival by TLX service.↲
↲
╞ - term sess.↲
╞ ┆84┆A connected packet has terminated the session completely and is ↓
┆19┆┆8c┆┄┄now disconnected from the session. Normal exit by session break ↓
┆19┆┆8c┆┄┄down inside document level (see section 6.2).↲
↲
╞ - TU removed.↲
╞ ┆84┆A TU removal/suspension procedure is started (the TU has ↓
┆19┆┆8c┆┄┄performed a TU clean up action). The session should be removed ↓
┆19┆┆8c┆┄┄as soon as possible (the memory reservation protocol is ↓
┆19┆┆8c┆┄┄terminated).↲
↲
↲
┆8c┆┆83┆┆bc┆↓
┆b0┆┆a1┆6.3.4╞ Session Actions↲
↲
╞ ┆84┆Here the actions performed by the session protocol machine are ↓
┆19┆┆89┆┄┄listed.↲
↲
╞ Actions against S62CP.↲
↲
╞ - SESSION START REQ, abr. SESS START REQ↲
╞ ┆84┆Request for session establishment from this side.↲
↲
╞ - SESSION START RESP POS, abr. SESS START RESP POS↲
╞ Positive response to a SESS START IND↲
↲
╞ - PLEASE CHANGE CONTROL REQ, abr. PL CH CONTR REQ↲
╞ Request for a change in source/sink relationship.↲
↲
╞ - CHANGE CONTROL REQ, abr. CH CONTR REQ↲
╞ The other side becomes source.↲
↲
╞ - SESSION END REQ, abr. SESS END REQ↲
╞ Request for normal session termination.↲
↲
╞ - SESSION ABORT REQ, abr. SESS ABORT REQ↲
╞ Request for an abnormal session termination.↲
↲
╞ - STREAM CLEARING RESP, abr. STREAM CLEAR RESP↲
╞ Last DH message on a session.↲
↲
╞ - MEMORY RESERVATION RESP, abr. MEM RES RESP↲
╞ Response to MEM RES IND.↲
↲
┆0e┆↓
╞ Actions against DH:↲
↲
╞ - IND.RESERVE, abr. IND.RES↲
╞ Request for a reservation of an amount of memory.↲
┆0f┆↓
↲
╞ - IND.RELEASE↲
╞ Releases a reserved memory pool.↲
↲
↲
┆8c┆┆83┆┆e0┆↓
╞ Special actions:↲
↲
╞ - ┆84┆cont arrived↲
╞ ┆84┆Signals to a packet that a DOC CONT IND, referring to this ↓
┆19┆┆8c┆┄┄packet, has arrived.↲
↲
↲
┆a1┆┆b0┆6.3.5╞ Session Protocol Machine↲
↲
╞ ┆84┆This section describes the following 4 figures:↲
↲
╞ Fig. 16 : Session handling, source states.↲
╞ ╞ ┆84┆Handles session initialization as caller and document ↓
┆19┆┆93┆┄┄source states.↲
↲
╞ Fig. 17 :╞ Session handling, reservation.↲
╞ ╞ ┆84┆Handles receival of session calls and memory reserva┄↓
┆19┆┆93┆┄┄tion.↲
↲
╞ Fig. 18 : Session sink handling.↲
╞ ╞ ┆84┆Handles document sink states.↲
↲
╞ Fig. 19 :╞ Session termination.↲
╞ ╞ Handles session clean up.↲
↲
↲
┆8c┆┆82┆┆b8┆↓
┆0e┆↓
┆a1┆┆b0┆6.3.5.1╞ Session Handling, Source States↲
↲
╞ ┆84┆This section describes the protocol machine shown in fig. 16. It ↓
┆19┆┆89┆┄┄handles states in document source mode.↲
↲
╞ Fig. 16 has the following entry points:↲
↲
╞ 16a :╞ return to session idle state.↲
↲
╞ 16b :╞ CH CONTR IND received in sink mode.↲
↲
╞ ┆84┆In the state "wait call resp" a packet called the initiator is ↓
┆19┆┆89┆┄┄waiting for the session call to be connected. Note that it is not ↓
┆19┆┆89┆┄┄necessarily this packet which eventually gets the session.↲
↲
╞ ┆84┆In the state "packet source con┄nected" the session is connected to ↓
┆19┆┆89┆┄┄a submit/abort packet.↲
┆0f┆↓
════════════════════════════════════════════════════════════════════════
↓
┆84┆Fig. 16. Session handling, source states.↲
↲
↲
╱04002d440c00060000000002014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
╱04002d440c00060000000003014b31400000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
↲
16a╞ ╞ ╞ ╞ ╞ SESS START IND 17a↲
╞ ╞ ╞ ╞ ╞ ╞ *12)↲
╞ ╞ ╞ ╞ *1)↲
╞ ╞ ╞ ╞ session↲
╞ ╞ ╞ ╞ idle↲
↲
↲
╞ ╞ ╞ ╞ sess allocated/SESS START REQ↲
╞ ╞ ╞ ╞ *2)↲
↲
↲
╞ ╞ ╞ ╞ wait↲
╞ ╞ ╞ ╞ sess answ↲
╞ answ SESS START REQ↲
╞ result=busy↲
↲
╞ ╞ ╞ ╞ answ SESS START REQ, result=ok↲
↲
↲
╞ ╞ SESS ABORT IND╞ wait ↲
╞ ╞ ╞ ╞ call resp↲
╞ connect initiator↲
╞ transfer event *3)↲
↲
╞ ╞ SESS START CONF NEG↲
↲
╞ ╞ ╞ ╞ SESS START CONF POS↲
↲
term sess╞ ↲
*13)↲
╞ ╞ connected╞ test initiator *4)↲
↲
↲
╞ ╞ ╞ ╞ not connected↲
packet↲
source╞ doc level exit↲
connected╞ ╞ ╞ test busy queue *5) 16b↲
╞ ╞ connected↲
↲
╞ ╞ ╞ ╞ not connected↲
start sess clear╞ ╞ *10↲
*13)↲
╞ ╞ ╞ calling╞ ╞ not calling↲
↲
↲
╞ ╞ ╞ change req CH CONTR REQ↲
╞ ╞ ╞ ╞ *11) *12)↲
↲
╞ ╞ not change req↲
↲
↲
19a╞ SESS END REQ╞ ╞ ╞ 17a↲
↲
════════════════════════════════════════════════════════════════════════
↓
↲
┆0e┆↓
╞ Table 16↲
↲
╞ ┆a1┆state ! event ! action ! new state ↲
packet ! ! !↲
╞ source ! PL CH CONTR! test asso-! -↲
┆a1┆connected ! IND ! ciates *6)!╞ ╞ ↲
wait sess ! ! !↲
answ ! TU removed ! *9) - ! -↲
┆a1┆ ! ! !╞ ╞ ↲
wait call ! ! !↲
resp ! TU removed ! SESS ABORT! 19a↲
┆a1┆ ! ! REQ╞ ! ↲
packet ! ! !↲
source ! TU removed ! - ! -↲
┆a1┆connected ! ! *7) *13) ! ↲
packet ! packet ! !↲
source ! source ! transfer ! -↲
┆a1┆connected ! events *8) ! event ! ↲
┆0f┆↓
╱04002d440c00060000000003014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
╱04002d440c00060000000002014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
╱04002d440c00060000000003014b31400000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
╱04002d440c00060000000003014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
↲
╞ ┆84┆Fig 16, footnotes:↲
↲
╞ *1) ┆84┆Whenever this state is entered, the following should be done:↲
╞ - ┆84┆Number of sessions in the TU descriptor is described with ↓
┆19┆┆8f┆┄┄one. If it becomes zero the event "all sess removed" is ↓
┆19┆┆8f┆┄┄generated in this TU.↲
- ┆84┆If the busy queue is non empty, the first packet in this ↓
┆19┆┆8f┆┄┄queue is removed from it and the event "exit queue" ↓
┆19┆┆8f┆┄┄generated in it.↲
↲
╞ *2) ┆84┆The packet, which generated this event, becomes initiator for ↓
┆19┆┆8d┆┄┄the session. "calling" is set to true.↲
↲
╞ *3) ┆84┆The initiator is connected to the session, and the event, ↓
┆19┆┆8d┆┄┄which caused the transition from "wait call resp" state is ↓
┆19┆┆8d┆┄┄transferred to it.↲
┆84┆The reason this is done is twofold:↲
- ┆84┆The packet should have transferred the event so it can be ↓
┆19┆┆8f┆┄┄encapsulated in the right way.↲
- ┆84┆If the packet is started with charge request the CHARGE IND ↓
┆19┆┆8f┆┄┄should be transferred to it.↲
↲
╞ *4) ┆84┆It is tested if the initiator still can use the sessions. The ↓
┆19┆┆8d┆┄┄pseudo event "not connected" is generated in the following ↓
┆19┆┆8d┆┄┄cases:↲
┆8c┆┆83┆┆d0┆↓
╞ a) ┆84┆There is no indicator anymore. (A REQ ABORT has been re┄↓
┆19┆┆90┆┄┄ceived by the packet).↲
╞ b) ┆84┆There is a packet, A, in the busy queue where "A interrupts ↓
┆19┆┆90┆┄┄initiator" holds.↲
↲
╞ *5) The following is done:↲
┆84┆It is tested that there is a packet, A, in the busy queue ↓
┆19┆┆8d┆┄┄where the following holds (see section 6.4.1 for content of a ↓
┆19┆┆8d┆┄┄packet description):↲
╞ - ┆84┆addressee TI from the packet descriptor should equal called ↓
┆19┆┆8f┆┄┄TI provided called in the session descriptor is true. ↓
┆19┆┆8f┆┄┄Otherwise it should equal calling TI. If check_mnem in the ↓
┆19┆┆8f┆┄┄packet descriptor is false, part4 is not part of the ↓
┆19┆┆8f┆┄┄compare.↲
╞ - ┆84┆service in the packet descriptor should not be TLX, and ↓
┆19┆┆8f┆┄┄charge req should be false. (Otherwise must the packet ↓
┆19┆┆8f┆┄┄initiate a new session by its own).↲
- ┆84┆service in the session descriptor must be TTY.↲
╞ - ┆84┆A and the session should belong to the same TU.↲
╞ - ┆84┆TI in the TU description should equal called TI in the ses┄↓
┆19┆┆8f┆┄┄sion descriptor if calling is false. This ensures that no ↓
┆19┆┆8f┆┄┄invisible switching has occured.↲
┆84┆If such a packet is found, it is removed from the busy queue ↓
┆19┆┆8d┆┄┄and connected to the session. Otherwise no packet will be ↓
┆19┆┆8d┆┄┄connected. (The session should be terminated).↲
↲
╞ *6) ┆84┆If calling is true, then called TI is seacrched in the associ┄↓
┆19┆┆8d┆┄┄ates list (see section 8.1). If found charge req in the ses┄↓
┆19┆┆8d┆┄┄sion descriptor is set to true.↲
↲
╞ *7) ┆84┆This event is ignored here, because "TU removed" also will be ↓
┆19┆┆8d┆┄┄generated in the packet, which will perform "start sess clear" ↓
┆19┆┆8d┆┄┄or "term sess" when the document stream has been removed.↲
↲
╞ *8) ┆84┆The S62CP events mentioned in section 6.4.2.↲
↲
╞ *9) ┆84┆In this state can SESS ABORT REQ not be sent. The event can be ↓
┆19┆┆8d┆┄┄ignored because SESS END REQ will soon be sent anyway. ↓
┆19┆┆8d┆┄┄(All packets inside this TU have been removed).↲
════════════════════════════════════════════════════════════════════════
↓
╞ *10) The "caller" field in the session description is inspected.↲
↲
╞ *11) The "change req" field is inspected.↲
↲
╞ *12) ┆84┆Number of sink sessions in the TU descriptor is creased by ↓
┆19┆┆8e┆┄┄one. turn req is ignored if the state of the TU is one of the ↓
┆19┆┆8e┆┄┄following: disable redef or disabled.↲
┆82┆↲
╞ *13) ┆84┆If calling is false, then number of sink sessions in the TU ↓
┆19┆┆8e┆┄┄descriptor will be decreased with one. If it becomes zero the ↓
┆19┆┆8e┆┄┄event no sink sess is performed in the TU.↲
↲
↲
┆a1┆┆b0┆6.3.5.2 Session Handling, Reservation↲
↲
╞ ┆84┆This section describes fig. 17. session states in sink idle mode. ↓
┆19┆┆89┆┄┄This involves memory reservation if requested from the other side.↲
↲
╞ ┆84┆Entry is done via 17a, when the session is ready to receive a do┄↓
┆19┆┆89┆┄┄cument.↲
↲
↲
════════════════════════════════════════════════════════════════════════
↓
Fig. 17. Session handling, reservation.↲
╱04002d440c00060000000003014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
╱04002d440c00060000000003014b31400000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
↲
┆06┆17a↲
↲
↲
↲
DOC START IND ---> 18a↲
wait↲
doc DOC COUNT IND ---> 18b↲
↲
╞ ╞ ╞ ╞ ╞ SESS END IND ---> 19c↲
╞ ╞ ╞ ╞ *2)↲
↲
╞ ╞ ╞ ╞ ╞ CH CONTR IND ---> 16b↲
MEM RES IND *3)↲
↲
↲
↲
↲
not reserved╞ reserved↲
↲
╞ ╞ ╞ ╞ IND.REL↲
↲
╞ IND.RES↓
↲
↲
╱04002d440c00060000000002014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
╱04002d440c00060000000003014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
↲
↲
╞ ╞ ╞ ╞ ╞ RESP.RES MEM RES REQ↲
╞ ╞ ╞ ╞ ╞ result= mem answ=↲
╞ ╞ ╞ ╞ ╞ busy not reserved↲
↲
┆06┆reserving↲
↲
↲
RESP.RES mem res req↲
╞ result<>busy *1↲
════════════════════════════════════════════════════════════════════════
↓
╱04002d440c00060000000002014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
╱04002d440c00060000000002014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
┆0e┆↓
╞ Table 17↲
↲
↲
↲
╞ ┆a1┆state ╞ ! event ! action ! new state↲
reserving ╞ ! ! !↲
╞ ! SESS ABORT ! - *2) ! 19a↲
┆a1┆ ╞ ! IND ! ! ↲
╞ ! ! !↲
wait doc ╞ ! SESS ABORT ! ! 19b↲
┆a1┆ ╞ ! IND ! ! ↲
╞ ! TU removed ! SESS !↲
reserving ╞ ! ! ABORT REQ ! 19a↲
╞ ! ! *2) !↲
┆a1┆& wait doc ╞ ! ! ! ↲
↲
↲
┆0f┆↓
╱04002d440c00060000000003014b31400000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
╱04002d440c00060000000002014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
╞ *1) ┆84┆The "mem answ" parameter will be either req_reserved (if the ↓
┆19┆┆8d┆┄┄whole amount can be reserved) or mem_reserved (otherwise) ↓
┆19┆┆8d┆┄┄reserved in the sesion descriptor is set to true.↲
↲
╞ *2) ┆84┆Number of sink sessions in the TU descriptor is decreased by ↓
┆19┆┆8d┆┄┄one. If it becomes zero the event no sink sess is generated in ↓
┆19┆┆8d┆┄┄the TU.↲
↲
╞ *3) ┆84┆If calling is tru then number of sink session in the TU des┄↓
┆19┆┆8d┆┄┄criptor is decreased by one, as in fotnote *2). This is not ↓
┆19┆┆8d┆┄┄done, however, if calling is false, because sink packets still ↓
┆19┆┆8d┆┄┄can be received on the session when the source/sink relation┄↓
┆19┆┆8d┆┄┄ship is changed later on.↲
↲
════════════════════════════════════════════════════════════════════════
↓
┆81┆┆a1┆┆b0┆6.3.5.3 Session Sink Handling↲
↲
┆84┆This section describes fig. 18. It handles sink states after ↓
┆19┆┆89┆┄┄receival of a DOC START IND or a DOC CONT IND.↲
↲
╞ ┆84┆In case of DOC CONT IND, there is the problem that if a packet is ↓
┆19┆┆89┆┄┄found with the right document identification (document linkage can ↓
┆19┆┆89┆┄┄be performed by DH), the packet can, however unlikely, still be ↓
┆19┆┆89┆┄┄connected to another session (the clean up in this session is ↓
┆19┆┆89┆┄┄unfinished).↲
↲
╞ ┆84┆To solve this problem the concept of a waiting session is intro┄↓
┆19┆┆89┆┄┄duced. The session performs the cont arrived action, and waits for ↓
┆19┆┆89┆┄┄the response which is either sess connected or reject call.↲
↲
╞ Fig. 18 has the following entry points:↲
↲
╞ 18a: DOC START IND received↲
╞ 18b: DOC CONT IND received.↲
════════════════════════════════════════════════════════════════════════
↓
╞ Fig. 18. Session sink handling↲
╱04002d440c00060000000002014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
╱04002d440c00060000000003014b31400000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
↲
↲
╞ ╞ 18a╞ ╞ ╞ 18b↲
↲
↲
↲
╞ ╞ ╞ ╞ search doc dcr *2)↲
↲
╞ ╞ ╞ ╞ packet not found↲
↲
↲
╞ alloc packet *1)╞ ╞ packet found↲
↲
↲
╞ ╞ packet allocated↲
no packet╞ ╞ ╞ cont arrived *3)↲
description↲
↲
↲
↲
SESS ABORT REQ╞ ╞ ╞ sess↲
╞ ╞ ╞ sess waiting↲
↲
19b╞ ↲
↲
╞ ╞ sess connected bank ╞ reject call *5)↲
╞ ╞ *4) event↲
↲
↲
╞ ╞ ╞ ╞ ╞ SESS ABORT REQ↲
↲
↲
╞ ╞ ╞ ╞ ╞ ╞ ╞ 19b↲
↲
╞ ╞ ╞ packet ↲
╞ ╞ ╞ sink ↲
17a doc level exit connected ↲
╞ ╞ ╞ ╞ ╞ ╞ ╞ 16a↲
↲
↲
↲
↲
╞ start sess clear↲
↲
↲
╞ ╞ ╞ ╞ term sess↲
↲
↲
╞ ╞ ╞ ╞ reserved╞ ╞ not↲
╞ ╞ ╞ ╞ ╞ reserved↲
↲
↲
╞ ╞ ╞ IND.REL↲
↲
╞ ╞ 19c╞ ╞ 16a↲
════════════════════════════════════════════════════════════════════════
↓
┆0e┆↓
╞ Table 18↲
↲
╞ ┆a1┆state ! event ! action ! new state ↲
╞ ! ! !↲
╞ sess waiting ! SESS ABORT ! - ! 19a↲
┆a1┆ ! IND ! !╞ ╞ ↲
! ! SESS ABORT!↲
sess waiting ! TU removed ! REQ ! 19a↲
╞ ╞ !╞ ! remove !↲
┆a1┆ ! ! from queue! ↲
packet sink ! ! PL CH ! ↲
connected ! turn req ! CONTR REQ ! -↲
┆a1┆ ! ! ! ↲
packet sink ! ! !↲
connected ! TU removed ! *6 ! -↲
┆a1┆ ! ! ! ↲
packet sink ! packet sink! !↲
connected ! events *6) ! transfer ! -↲
┆a1┆ ! ! event ! ↲
┆0f┆↓
╱04002d440c00060000000003014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
╱04002d440c00060000000002014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
↲
╞ fig. 18, footnotes.↲
↲
╞ *1) ┆84┆A free packet description (state=packet idle) is searched for. ↓
┆19┆┆8d┆┄┄If the search is successful the DOC START IND/DOC CONT IND ↓
┆19┆┆8d┆┄┄will be transferred to the packet.↲
↲
╞ *2) ┆84┆A packet description, belonging to the current TU, is searched ↓
┆19┆┆8d┆┄┄for. The doc_id field in the document description for this ↓
┆19┆┆8d┆┄┄packet should match the parameter from DOC CONT IND.↲
↲
╞ *3) ┆84┆The vent "cont arrived" is generated in the packet.↲
↲
╞ *4) The packet has connected itself to the session.↲
↲
╞ *5) ┆84┆The packet has rejected the call because the state was illegal ↓
┆19┆┆8d┆┄┄for receival of a continuation of the document.↲
↲
╞ *6) ┆84┆Reserved ind, the session descriptor is set to false (to ↓
┆19┆┆8d┆┄┄prevent sending of a IND.REL). Apart from that the event is ↓
┆19┆┆8d┆┄┄ignored (see fottnote *7 to fig.16).↲
↲
╞ *7) the S62CP events mentioned in section 6.5.2.↲
↲
↲
┆8c┆┆83┆┆c4┆↓
┆0e┆↓
┆a1┆┆b0┆6.3.5.4 Session Termination Handling↲
↲
╞ ┆84┆This section describes session termination showed in fig. 19. ↓
┆19┆┆89┆┄┄Either SESS END REQ, SESS END IND, SESS ABORT REQ, or SESS ABORT ↓
┆19┆┆89┆┄┄IND has been performed before entry into fig. 19.↲
↲
╞ ┆84┆The figure has the following entry points:↲
↲
╞ 19a: A SESS CLEAR IND is awaited.↲
╞ 19b: As 19a, but a IND.RES has not been answered by DS yet.↲
╞ 19c: ┆84┆As 19a, but a possible reservation should first be released.↲
┆0f┆↓
════════════════════════════════════════════════════════════════════════
↓
Fig. 19. Session termination handling↲
╱04002d440c00060000000002014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
╱04002d440c00060000000003014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
↲
↲
↲
╞ 19a╞ ╞ ╞ 19c╞ ╞ ╞ 19b↲
↲
↲
↲
╞ ╞ ╞ not↲
╞ ╞ ╞ reserved╞ ╞ reserved↲
↲
↲
╞ ╞ ╞ ╞ ╞ IND.REL↲
↲
↲
↲
╞ wait↲
╞ clear ind↲
↲
╞ ╞ ╞ ╞ ╞ ╞ error↲
╞ ╞ ╞ ╞ ╞ ╞ reserve↲
↲
↲
↲
╞ SESS CLEAR IND/SESS CLEAR RESP RESP.RES/IND.REL↲
↲
↲
╞ ╞ ╞ ╞ RESP.RES SESS↲
╞ ╞ ╞ result=busy CLEAR↲
╞ ╞ ╞ ╞ ╞ RESP↲
╞ wait↲
╞ clear╞ ╞ ╞ ╞ ╞ SESS CLEAR IND↲
╞ resp↲
↲
╞ ╞ ╞ SESS CLEAR RESP↲
╞ ╞ ╞ IND.RELEASE↲
↲
╞ answ SESS CLEAR RESP╞ ╞ ╞ error↲
╞ ╞ ╞ RESP.RES╞ ╞ clear↲
╞ ╞ ╞ result<>busy╞ reserve↲
↲
╞ 16a↲
↲
════════════════════════════════════════════════════════════════════════
↓
┆0e┆↓
╞ Table 19.↲
↲
╞ ┆a1┆state ! event ! action ! new state ↲
╞ wait clear !SESS START CONF POS ! !↲
╞ ind╞ !&SESS START CONF NEG! !↲
& ┆a1┆┆e1┆error !&SESS ABORT IND ! !╞ ↲
reserve !&SESS END CONF ! - ! -↲
!&CH CONTR IND ! !↲
╞ !&PL CH CONTR IND ! !↲
!&CHARGE IND ! !↲
┆a1┆ ! *1) ! ! ↲
! ! !↲
error ! TU removed ! - ! wait clear ind↲
┆a1┆reserve ! ! ! ↲
error ! ! !↲
clear ! TU removed ! SESS CLEAR! wait clear resp↲
┆a1┆reserve ! ! RESP ! ↲
┆0f┆↓
╱04002d440c00060000000003014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
╱04002d440c00060000000002014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
╱04002d440c00060000000003014b31400000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
╱04002d440c00060000000003014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
↲
╞ fig. 19, footnotes.↲
↲
╞ *1) ┆84┆these messages can pass a SESS ABORT REQ across the interface. ↓
┆19┆┆8d┆┄┄The SESS END CONF is however, a response to a SESS END REQ.↲
↲
↲
┆a1┆┆b0┆6.4╞ Packet Source Handling↲
↲
╞ ┆84┆This section describes the part of the packet protocol machine ↓
┆19┆┆89┆┄┄which handles SUBMIT, REGRET and ABORT. A packet is described by a ↓
┆19┆┆89┆┄┄┆a1┆packet description.↲
↲
╞ ┆84┆As already mentioned, there should exist a socalled busy queue, ↓
┆19┆┆89┆┄┄where packets can be placed when there is no free session ↓
┆19┆┆89┆┄┄descriptions.↲
↲
╞ ┆84┆In section 6.3.1 is stated that there are two pools of session ↓
┆19┆┆89┆┄┄descriptions, int loop pool and net conn pool. From which pool a ↓
┆19┆┆89┆┄┄session description is allocated is for source packets indicated ↓
┆19┆┆89┆┄┄by the addressee TI parameter.↲
↲
╞ ┆84┆For each of these pools there should be a busy queue. When the ↓
┆19┆┆89┆┄┄term "the busy queue" is used in the following, the meaning is the ↓
┆19┆┆89┆┄┄busy queue corresponding to the session pool, from which the ↓
┆19┆┆89┆┄┄packet allocate sessions.↲
↲
┆8c┆┆83┆┆cc┆↓
┆0e┆↓
╞ ┆84┆It should be noted, that the term "queue" is a little misleading. ↓
┆19┆┆89┆┄┄The packets which are in the busy queue, are ordered after the ↓
┆19┆┆89┆┄┄"precedes" function, not in order of arrival.↲
┆0f┆↓
↲
╞ ┆84┆To make the protocol machine more generel (to be prepared for ↓
┆19┆┆89┆┄┄other kind of services), it has been decided to allow for more ↓
┆19┆┆89┆┄┄than one document in a TTX packet.↲
╞ ┆84┆However, this gives a problem concerning handling of a REGRET ↓
┆19┆┆89┆┄┄transaction, which in ref.3 is defined as "discard of already ↓
┆19┆┆89┆┄┄transmitted parts of a packet". Therefore it is decided that a ↓
┆19┆┆89┆┄┄CONF.REGRET only can be processed for the first document in a ↓
┆19┆┆89┆┄┄TTX packet. If this document is fully transmitted, a REQ.REGRET ↓
┆19┆┆89┆┄┄will be answered with the result "pers_err", even if the whole ↓
┆19┆┆89┆┄┄packet is not successfully transmitted.↲
↲
↲
┆a1┆┆b0┆6.4.1╞ Packet Descriptor Content for Source States.↲
↲
╞ ┆84┆The following fields are important for the protocol machine:↲
↲
╞ submit switch : ┆84┆a boolean. =true if a REQ.SUBMIT has been ↓
┆19┆┆99┆┄┄received, and no CONF.SUBMIT sent for this packet.↲
↲
╞ regret switch : ┆84┆a boolean. =true if a REQ.REGRET has been ↓
┆19┆┆99┆┄┄received, and no CONF.REGRET sent.↲
↲
╞ abort switch : ┆84┆a boolean, = true if a REQ.ABORT has been ↓
┆19┆┆99┆┄┄received.↲
↲
╞ service : TTX or TLX.↲
↲
╞ charge req : ┆84┆a boolean. Defines if charge information for the ↓
┆19┆┆99┆┄┄whole packet is requested.↲
↲
╞ check_mnem : ┆84┆a boolean. Defines if part4 of recipient TI ↓
┆19┆┆99┆┄┄should be checked. true if personal=true.↲
════════════════════════════════════════════════════════════════════════
↓
╞ personal╞ : ┆84┆a boolean. Defines that receipient TI should be ↓
┆19┆┆99┆┄┄checked as a whole.↲
╞ ╞ ┆84┆charge_req, check mnem and personal are ↓
┆19┆┆99┆┄┄constructed from the option field in REQ.SUBMIT ↓
┆19┆┆99┆┄┄(or REQ.REGRET).↲
↲
╞ addressee TI : ┆84┆The corresponding parameter from REQ.SUBMIT. The ↓
┆19┆┆99┆┄┄parameters charge_req, check_mnem personal and ↓
┆19┆┆99┆┄┄addressee TI are used when a session should be ↓
┆19┆┆99┆┄┄created to transmit the packet.↲
↲
╞ cur doc dcr : ┆84┆The current document description. For content, see ↓
┆19┆┆99┆┄┄below.↲
┆19┆┆97┆┄┄↲
╞ doc seq no : ┆84┆The sequence number for the current document des┄↓
┆19┆┆99┆┄┄cription inside the packet. The corresponding par┄↓
┆19┆┆99┆┄┄ameter in an IND.WRITE is always set equal to this ↓
┆19┆┆99┆┄┄field.↲
↲
╞ Outstanding ┆82┆:┆81┆ Number of IND.WRITE's which has not been answered↲
╞ writes with a RESP.WRITE from DS yet.↲
↲
╞ outstanding ┆82┆:┆81┆ Number of IND.UPDATE's which has not been answered↲
updates by a RESP.UPDATE yet.↲
┆82┆↲
╞ read seq no : ┆84┆When a IND.READ is pending it contains the se┄↓
┆19┆┆99┆┄┄quence number for the document description being ↓
┆19┆┆99┆┄┄read.↲
↲
╞ no_of_des : ┆84┆Number of document description inside the packet. ↓
┆19┆┆99┆┄┄Defined at packet initalization by sending a num┄↓
┆19┆┆99┆┄┄ber of IND.READ's.↲
↲
╞ error inf : ┆84┆Contains information about which kind of error ↓
┆19┆┆99┆┄┄caused a session break down. It is used to control ↓
┆19┆┆99┆┄┄error recovery. Refer ro chapter 8 for further ↓
┆19┆┆99┆┄┄information.↲
↲
╞ priority : 0 or 1.↲
════════════════════════════════════════════════════════════════════════
↓
╞ sem pages : ┆84┆For a SUBMIT packet it contains the number of ↓
┆19┆┆99┆┄┄pages still not transmitted and acknowledged from ↓
┆19┆┆99┆┄┄the other side. Together with the priority field ↓
┆19┆┆99┆┄┄it is used in the precede function, saee section ↓
┆19┆┆99┆┄┄2.2.4.↲
↲
╞ DH close ┆82┆:┆81┆ = true if a DH stream close has been sent to TTXSI↲
╞ pending for this packet and it has not been returned yet.↲
↲
╞ ╞ ┆84┆A document stream is only fully terminated when DH ↓
┆19┆┆99┆┄┄close pending is false and a DH stream close has ↓
┆19┆┆99┆┄┄been sent earlier.↲
↲
╞ retry timer ┆82┆:┆81┆ The accumulated time the packet has been↲
╞ sum encapsulated.↲
↲
╞ ┆84┆The document description (transferred to and from DS in IND.WRITE ↓
┆19┆┆89┆┄┄and RESP.READ), has the content:↲
↲
╞ document no.: ┆84┆identifies the document file to which the document ↓
┆19┆┆97┆┄┄stream connection should be made.↲
↲
╞ S62 document↲
id : ┆84┆The S.62 identification of the document.↲
↲
╞ checkpoint ↲
no. : ┆84┆The number of the checkpoint last acknowledged from ↓
┆19┆┆97┆┄┄the receiver.↲
↲
╞ finished : ┆84┆= true if DOCUMENT END REQ has been sent and ↓
┆19┆┆97┆┄┄acknowledged.↲
↲
╞ no of pages : Number of pages in the document.↲
↲
════════════════════════════════════════════════════════════════════════
↓
┆b0┆┆a1┆6.4.2╞ Packet Source Events↲
↲
╞ ┆84┆Here the events to the packet source protocol machine is listed:↲
↲
╞ Document level events from S62CP:↲
↲
╞ - CAPABILITIES CONF POS abr. CAP CONF POS↲
╞ ┆84┆Positive response to a CAP REQ.↲
↲
┆0e┆↓
╞ - CAPABILITIES CONF NEG abr CAP CONF NEG.↲
╞ Negative response to a CAP REQ.↲
┆0f┆↓
↲
╞ - DOCUMENT START CONF abr. DOC START CONF↲
╞ ┆84┆ A response to DOC START REQ, delivering the document ref. no.↲
↲
╞ - PAGE END CONF↲
╞ ┆84┆ Positive response to a PAGE END REQ.↲
↲
╞ - DOCUMENT END CONF, abr DOC END CONF↲
╞ ┆84┆Positive response to a DOC END REQ. All buffers with document ↓
┆19┆┆8b┆┄┄level commands for this packet have been returned from S62CP.↲
↲
╞ - EXCEPTION IND↲
╞ ┆84┆Interruption of the document transfer.↲
↲
╞ ┆84┆- DOCUMENT RESYNCH/DISCARD CONF, abr DOC RESYNC-DISC CONF↲
╞ ┆84┆Responsed to a DOC RESYNC REQ or a DOC DISC REQ. All buffers ↓
┆19┆┆8b┆┄┄with document level primitives for this packet have been re┄↓
┆19┆┆8b┆┄┄turned from S62CP.↲
↲
╞ Session level event from S62CP:↲
↲
╞ ┆84┆These events are also session events (see section 6.3.4), but ↓
┆19┆┆8b┆┄┄are transferred to the packet when it is connected.↲
↲
╞ - SESSION ABORT IND abr. SESS ABORT IND↲
╞ ┆84┆An abnormal session break down.↲
════════════════════════════════════════════════════════════════════════
↓
╞ - CHARGE INF IND, abr CHARGE IND↲
╞ ┆84┆Delivers the charge information after a session termination or a ↓
┆19┆┆8b┆┄┄session break down.↲
↲
╞ - STREAM CLEARING IND abr. STREAM CLEAR IND↲
╞ ┆84┆Last message from S62CP in a session.↲
↲
╞ - answ STREAM CLEAR RESP↲
╞ ┆84┆Answer from S62CP on a STREAM CLEAR RESP message. All buffers ↓
┆19┆┆8b┆┄┄pending at S62CP for this packet are home.↲
↲
╞ Events from DS:↲
↲
╞ - REQUEST SUBMIT, abr. REQ.SUBMIT↲
╞ ┆84┆Request for packet transmission. Submit switch is set on (not ↓
┆19┆┆8b┆┄┄shown on the figures or in the tables).↲
↲
╞ - REQUEST.REGRET, abr. REQ.REGRET↲
╞ ┆84┆Request for transmission of a discard for the document Regret ↓
┆19┆┆8b┆┄┄switch is set on..↲
↲
╞ - REQUEST.ABORT, abr. REQ.ABORT↲
╞ ┆84┆The packet transmission should be terminated as fast as ↓
┆19┆┆8b┆┄┄possible. abort switch is set on.↲
↲
╞ - RESPONSE.READ, abr. RESP.READ↲
↲
╞ - RESPONSE.WRITE, abr RESP.WRITE↲
↲
╞ - RESPONSE.UPDATE, abr. RESP.UPD↲
╞ ┆84┆Packet termination is not allowed before all IND.UPD's have been ↓
┆19┆┆8b┆┄┄answered by RESP.UPD.↲
↲
╞ Document stream events:↲
↲
╞ - REPLY OK↲
╞ ┆84┆Response to a TRANSFER (read). Contains the capabilities for the ↓
┆19┆┆8b┆┄┄document.↲
↲
┆8c┆┆83┆┆d4┆↓
╞ - REPLY NOT OK↲
╞ ┆84┆Indication from DS that a protocol error has occurred.↲
↲
╞ - STREAM↲
╞ ┆84┆Contains an amount of document data.↲
↲
╞ - CHECKPOINT↲
╞ ┆84┆A checkpoint in the document stream↲
↲
╞ - STREAM END↲
╞ Indicates end of a document stream.↲
↲
╞ - TTXSI stream close↲
╞ ┆84┆A request from TTXSI for an immediate termination of the ↓
┆19┆┆8b┆┄┄document stream.↲
↲
╞ - answ DH stream close↲
╞ ┆84┆Answer on a DH stream close message. The document stream is ↓
┆19┆┆8b┆┄┄fully terminated from DH's point of view. "DH close pending" in ↓
┆19┆┆8b┆┄┄the packet description is set to false (not shown in the ↓
┆19┆┆8b┆┄┄diagrams).↲
↲
╞ Special events:↲
↲
╞ - packet connected↲
╞ ┆84┆Indicates that the session has connected the packet which is ↓
┆19┆┆89┆┄┄either initiator for the session or resides in the busy queue.↲
↲
╞ - stream protocol err↲
╞ ┆84┆A protocol error has occurred on a document stream (document ↓
┆19┆┆8b┆┄┄stream events in an illegal state, block format error or the ↓
┆19┆┆8b┆┄┄like.↲
↲
╞ - prio break↲
╞ ┆84┆A request from another packet for the current to terminate its ↓
┆19┆┆8b┆┄┄use of the session as fast as possible.↲
════════════════════════════════════════════════════════════════════════
↓
╞ - TU removed↲
╞ ┆84┆Indicates that the TU to which the packet belongs, is being ↓
┆19┆┆8b┆┄┄removed. The packet will be disconnected from the session (if ↓
┆19┆┆8b┆┄┄connected) and will return to idle state as fast as possible. ↓
┆19┆┆8b┆┄┄This can however, first be done after a possible document stream ↓
┆19┆┆8b┆┄┄has been closed.↲
↲
↲
┆a1┆┆b0┆6.4.3╞ Packet Source Actions↲
↲
╞ ┆84┆Document level actions against S62CP:↲
↲
╞ - CAPABILITIES REQ, abr CAP REQ↲
╞ Request for document capabilities.↲
↲
┆0e┆↓
╞ - DOCUMENT START REQ, abr DOC START REQ↲
╞ Start of a document transmission.↲
┆0f┆↓
↲
╞ - DOCUMENT CONTINUE REQ, abr DOC CONT REQ↲
╞ Continuation of a document transmission↲
↲
╞ - DATA REQ↲
╞ An amount of document data.↲
↲
╞ - PAGE END REQ↲
╞ A document data checkpoint.↲
↲
╞ - PAGE END CONF RESP↲
╞ ┆84┆Signifies to S62CP that receival of a PAGE END CONF have been ↓
┆19┆┆8b┆┄┄noted in the document description in DS.↲
↲
╞ - DOCUMENT END REQ, abr DOC END REQ.↲
╞ ┆84┆End of a document transmission.↲
↲
╞ - DOCUMENT DISCARD REQ, abr DOC DISC REQ↲
╞ ┆84┆Cancelling of the already transmitted part of the document at ↓
┆19┆┆8b┆┄┄the receiver.↲
↲
╞ - DOCUMENT RESYNCHRONIZE REQ, abr DOC RESYNC REQ↲
╞ ┆84┆Temporary interruption of a document transmission.↲
════════════════════════════════════════════════════════════════════════
↓
╞ Session level actions against S62CP:↲
↲
╞ - SESSION END REQ, abr SESS END REQ↲
╞ ┆84┆Normal termination of a session. Used by the packet when ↓
┆19┆┆8b┆┄┄service=TLX or charge req=true.↲
↲
╞ - SESSION ABORT REQ, abr SESS ABORT REQ↲
╞ ┆84┆Abnormal termination of a session. Used by the packet when a TU ↓
┆19┆┆8b┆┄┄removed is received, but also to execute a REQ.REGRET when ↓
┆19┆┆8b┆┄┄service=TLX.↲
↲
╞ - STREAM CLEARING RESP, abr STREAM CLEAR RESP↲
╞ Response to a STEAM CLEAR IND from S62CP.↲
↲
╞ Actions against DS:↲
↲
╞ - CONFIRMATION.SUBMIT, abr. CONF.SUBMIT↲
╞ ┆84┆End of packet transmission. submit switch is set off (not shown ↓
┆19┆┆8b┆┄┄in the figures or in the tables).↲
↲
╞ - CONFIRMATION.REGRET, abr. CONF.REGRET↲
╞ ┆84┆Signifies success or failure of a document discard transaction. ↓
┆19┆┆8b┆┄┄regret switch is set off.↲
↲
╞ - CONFIRMATION.ABORT, abr CONF.ABORT↲
╞ ┆84┆A REQ.ABORT has been executed. (Or attempted so). abort switch ↓
┆19┆┆8b┆┄┄is set off.↲
↲
╞ - INDICATION.UPDATE, abr. IND.UPD↲
╞ ┆84┆Updates the packet description at DS. This action is only per┄↓
┆19┆┆8b┆┄┄formed when a change in DS packet state occurs but it also can ↓
┆19┆┆8b┆┄┄contain user info and charge information.↲
↲
╞ - INDICATION.READ, abr IND.READ↲
╞ Reads the current document description from DS.↲
↲
╞ - INDICATION.WRITE, abr IND.WRITE↲
╞ Writes the current document description at DS.↲
↲
┆8c┆┆83┆┆d4┆↓
╞ Document stream actions:↲
↲
╞ - TRANSFER (READ)↲
╞ ┆84┆A transfer block with mode=R. Opens a document stream.↲
↲
╞ - DH stream close↲
╞ ┆84┆Request for close for the document stream. DH close pending is ↓
┆19┆┆8b┆┄┄set on.↲
↲
╞ - DH stream break↲
╞ ┆84┆Stands for a REPLY NOTOK followed by a DH stream close.↲
↲
╞ - answ TTXSI stream close↲
╞ ┆84┆Answer on a TTXSI stream close message. All TTXSI buffers on ↓
┆19┆┆8b┆┄┄this stream have been returned.↲
↲
┆0e┆↓
╞ Special actions:↲
↲
╞ - doc level exit↲
╞ ┆84┆The packet disconnects itself from the session, after the ↓
┆19┆┆8b┆┄┄document level is left. The event with the same name is ↓
┆19┆┆8b┆┄┄generated in the ses┄sion, which can be used by another packet.↲
┆0f┆↓
↲
╞ - start sess clear↲
╞ ┆84┆The packet disconnects itself from the session when a STREAM ↓
┆19┆┆8b┆┄┄CLEAR IND is awaited from S62CP.↲
↲
╞ - term sess↲
╞ ┆84┆The session stream has been completely terminated under packet ↓
┆19┆┆8b┆┄┄control.↲
↲
════════════════════════════════════════════════════════════════════════
↓
┆a1┆┆b0┆6.4.4╞ Packet Source, Protocol Machine↲
↲
╞ ┆84┆In this section the handling of SUBMIT,REGRET and ABORT is shown ↓
┆19┆┆89┆┄┄by fig. 20-28, one subsection for each figure.↲
↲
╞ ┆84┆It should be noted that the term "regret possible" in these fig┄↓
┆19┆┆89┆┄┄ures are used as shorthand for the condition "doc seq no = 1 or ↓
┆19┆┆89┆┄┄service = TLX", i.e. that a REQ.REGRET can be executed, see the ↓
┆19┆┆89┆┄┄remarks in the beginning of section 6.4.↲
↲
↲
┆a1┆┆b0┆6.4.4.1╞ Packet Initialization, Source↲
↲
╞ ┆84┆This section describes the protocol machine showed in fig. 20. It ↓
┆19┆┆89┆┄┄handles preparation for packet connection to a session after re┄↓
┆19┆┆89┆┄┄ceival of a REQ.SUBMIT or a REQ.REGRET. This includes communica┄↓
┆19┆┆89┆┄┄tion of rem pages, which influences the priority algorithm.↲
↲
╞ fig. 20 has the following entry points:↲
↲
╞ 20a: return to packet idle state↲
╞ 20b: ┆84┆session allocation is repeated. A packet returns here after ↓
┆19┆┆8e┆┄┄an encapsulation.↲
↲
════════════════════════════════════════════════════════════════════════
↓
╞ fig. 20. Packet initialization, source↲
╱04002d440c00060000000002014b310000000000000000000000000000000000000000000000000006101a242e38424b555f69737d87ffff04╱
╱04002d440c00060000000003014b31400000000000000000000000000000000000000000000000000a141e28323c464b555f69737d8791ff04╱
↓
↲
╞ 20a╞ packet↲
╞ ╞ idle↲
↲
╞ ╞ ╞ ╞ REQ.REGRET↲
╞ ╞ REQ.SUBMIT↲
↲
╞ ╞ IND.READ (first doc dcr)↲
╞ ╞ ╞ *1)↲
╞ ╞ ╞ ╞ ╞ RESP.READ╞ ╞ *5)↲
╞ ╞ ╞ ╞ ╞ result=failed *3) 24b↲
╞ ╞ ╞ packet↲
╞ ╞ ╞ scan↲
╞ RESP.READ↲
╞ result=ok↲
╞ service=TLX↲
╞ *12) *13)↲
↲
╞ ╞ ╞ ╞ ╞ RESP.READ *13)↲
╞ ╞ ╞ ╞ ╞ service=TTX↲
╞ ╞ ╞ RESP.READ &result=ok↲
╞ ╞ ╞ service=TTX &finished=false *4)↲
╞ ╞ ╞ &result=ok↲
╞ ╞ ╞ &finished=true *4)↲
↲
╞ ╞ IND.READ *2)↲
╞ ╞ (next doc des)↓
╞ ╞ ╞ ╞ ╞ RESP.READ↲
╞ ╞ ╞ ╞ ╞ result=ok *17)↲
╞ ╞ ╞ page↲
╞ ╞ ╞ accum↲
↲
╞ ╞ RESP.READ↲
╞ ╞ result=failed *18)╞ RESP.READ *18)↲
╞ ╞ &abort switch off result=failed 27b↲
╞ ╞ ╞ ╞ ╞ &abort switch on↲
↲
╞ ╞ ╞ ╞ regret switch on↲
╞ ╞ ╞ ╞ & checkpoint=0╞ ╞ 27a↲
╞ ╞ ╞ ╞ regret possible *14)↲
↲
╞ ╞ ╞ regret switch off↲
╞ ╞ ╞ or checkpoint<>0↲
╞ ╞ ╞ or regret↲
╞ ╞ ╞ not possible↲
↲
╞ ╞ ╞ alloc session↲
╞ ╞ ╞ *15)╞ ╞ ╞ ╞ 20b↲
↲
╞ ╞ no sess/enter busy queue*6)╞ sess allocated↲
↲
╞ exit queue╞ packet╞ ╞ ╞ packet↲
╞ *7)╞ ╞ busy╞ not╞ enter╞ initiator↲
╞ ╞ ╞ ╞ connected busy↲
╞ ╞ ╞ ╞ *8)╞ queue *6)↲
↲
╞ ╞ packet connected *10)╞ ╞ packet connected *9)↲
↲
╞ ╞ ╞ ╞ 21a↲
↲
↲
════════════════════════════════════════════════════════════════════════
↓
╱04002d440c00060000000002014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d87ffff04╱
╱04002d440c00060000000002014b310000000000000000000000000000000000000000000000000006101a242e38424b555f69737d87ffff04╱
↓
↲
╞ Table 20↲
↲
↲
┆0e┆↓
╞ ┆a1┆state ! event ! action ! new state ↲
╞ ! ! ! ↲
╞ packet scan! REQ.ABORT ! - ! -↲
╞ & page !╞ !╞ !↲
╞ accum ! ! !↲
packet ! ! !↲
┆a1┆ initiator! ! ! ↲
╞ ╞ !╞ ! !↲
╞ packet idle! REQ.ABORT ! CONF.ABORT ! -↲
╞ ┆a1┆╞ !╞ ! result=ok ! ╞ ↲
╞ ╞ !╞ !╞ !↲
╞ packet scan! REQ.REGRET ! -╞ ! -↲
╞ & page ╞ !╞ ! *16) !↲
┆a1┆ accum !╞ !╞ ! ↲
! ! !↲
packet scan! TU removed ! - ! packet idle↲
╞ & packet╞ !╞ !╞ !↲
┆e1┆┆e1┆ ┆a1┆┆e1┆ initiator! ! ! ↲
& page ! ! !↲
┆a1┆accum ! ! ! ↲
packet busy! REQ.REGRET ! ! ↲
& packet ! report not ! - !↲
initiator! possible or! !↲
┆a1┆ !checkpoint<>! !╞ ↲
packet busy! REQ.REGRET ! exit busy !↲
! regret ! queue !↲
╞ ! possible ! *11) !↲
!& checkpoint! !↲
! =0 ! ! 27b↲
┆a1┆ ! *14) ! ! ↲
packet ! REQ.REGRET ! !↲
initator ! regret ! !↲
! posible ! - ! 27b↲
!& checkpoint! !↲
! =0 ! !↲
╞ ┆a1┆ ! *14) ! ! ↲
! !┆82┆ exit busy┆81┆ ! ↲
packet busy! TU removed !┆82┆ queue *11)┆81┆ ! packet idle↲
┆a1┆ ! ! ! ↲
! ! !↲
packet busy! REQ.ABORT !┆81┆ exit busy┆82┆ ! 27a↲
┆a1┆┆e1┆ ! !┆81┆ queue *11)┆82┆ ! ↲
┆a1┆ ! ! ! ↲
╞ ╞ !╞ !╞ !↲
packet ! answ *9) ! ! ↲
initiator ! START SESS ! term sess ! 27b↲
! REQ ! !↲
┆a1┆ ! result=busy! ! ↲
packet ! SESS START ! !↲
initiator ! CONF NEG ! start sess ! 27b↲
┆a1┆ ! *9) ! clear ! ↲
packet ! *9) ! !↲
initiator ! SESS ABORT ! start sess ! 27b↲
┆a1┆ ! IND ! clear ! ↲
════════════════════════════════════════════════════════════════════════
↓
┆0f┆↓
╱04002d440c00060000000003014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d87ffff04╱
╱04002d440c00060000000002014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d87ffff04╱
↓
╞ fig. 20, footnotes.↲
↲
╞ *1) ┆84┆The read seq no field in the packet descriptor is set to 1. ↓
┆19┆┆8e┆┄┄The doc.seq.no parameter in the IND.READ is, as in all fol┄↓
┆19┆┆8e┆┄┄lowing IND.READ and IND.WRITE, set equal to this field.↲
↲
╞ *2) ┆84┆The read seq no field in the packet description is increased ↓
┆19┆┆8e┆┄┄with 1.↲
↲
╞ *3) ┆84┆The result parameter from the RESP.READ. There are no more ↓
┆19┆┆8e┆┄┄document descriptions in the packet. If read seq no =1, it is ↓
┆19┆┆8e┆┄┄a protocol error.↲
↲
╞ *4) ┆84┆The finished field from the document description delivered in ↓
┆19┆┆8e┆┄┄RESP.READ. The document has been fully transmitted earlier.↲
↲
╞ *5) ┆84┆The whole packet has been transmitted earlier. A break down ↓
┆19┆┆8e┆┄┄of the communication with the DS must have occurred before ↓
┆19┆┆8e┆┄┄the DS received a CONF.SUBMIT with result=OK.↲
↲
╞ *6) ┆84┆Every time a packet enters the busy queue, the following is ↓
┆19┆┆8e┆┄┄done:↲
↲
╞ a) ┆84┆It is tested if there is a session where the following ↓
┆19┆┆91┆┄┄hold:↲
↲
a1) ┆84┆session state = packet source connected.↲
↲
a2) ┆84┆"current packet interrupts connected" holds.↲
↲
╞ ┆84┆If this is the case, the event "prio break" is generated ↓
┆19┆┆91┆┄┄in the connected packet. The packet in question will leave ↓
┆19┆┆91┆┄┄the session in an orderly manner, but as fast as possible.↲
↲
╞ ┆84┆If several such packets are found, the one with the lowest ↓
┆19┆┆91┆┄┄priority is selected.↲
↲
╞ b) ┆84┆If no packet is found to generate prio break in, it is ↓
┆19┆┆91┆┄┄testet if there is a session where:↲
↲
┆8c┆┆83┆┆e0┆↓
╞ b1) ┆84┆session state=packet sink connected↲
↲
╞ b2) ┆84┆the conditions mentioned in footnote *5) to fig 16. ↓
┆19┆┆95┆┄┄(session handling, source states) should be fulfilled.↲
↲
╞ ┆84┆If such a session is found, the event turn_req is gener┄↓
┆19┆┆91┆┄┄ated in it. If source/sink relationship later is changed, ↓
┆19┆┆91┆┄┄the current packet can use the session.↲
↲
╞ ┆84┆Finally is an IND.UPD sent with state = waiting for trans┄↓
┆19┆┆91┆┄┄mission (regret switch off or regret not possible) or re┄↓
┆19┆┆91┆┄┄gret waiting.↲
↲
╞ *7) ┆84┆A session has entered the session idle state.↲
↲
╞ *8) ┆84┆The packet was not connected to the session. (A packet exists ↓
┆19┆┆8e┆┄┄in the busy queue which can interrupt the current).↲
↲
╞ *9) ┆84┆The packet has been connected to the session.↲
↲
*10) ┆84┆An already existing session has connected the packet to ↓
┆19┆┆8e┆┄┄itself.↲
↲
*11) ┆84┆The packet is removed from the busy queue.↲
↲
*12) ┆84┆The checkpoint field in the document description is set to 0, ↓
┆19┆┆8e┆┄┄and is set to false.↲
↲
*13) The packet is connected.↲
↲
*14) ┆84┆checkpoint=0 indicates for TTX packets either that the docu┄↓
┆19┆┆8e┆┄┄ment already is discarded, or no pages has been acknowledged. ↓
┆19┆┆8e┆┄┄In the latter case the document should be regarded as dis┄↓
┆19┆┆8e┆┄┄carded according to S.62, and session allocation is not ↓
┆19┆┆8e┆┄┄necessary.↲
↲
╞ ┆84┆For TLX packets, checkpoint=0 & doc seq no=1 always holds ↓
┆19┆┆8e┆┄┄here.↲
↲
┆8c┆┆83┆┆d4┆↓
*15) This stands for the following action:↲
╞ ┆84┆A free session description is searched for. If such a de┄s┄↓
┆19┆┆8e┆┄┄cription is found, the packet becomes initiator for the ses┄↓
┆19┆┆8e┆┄┄sion (the pseudo event "sess allocated"). The event "sess al┄↓
┆19┆┆8e┆┄┄located" is generated in the session. If no session is allo┄↓
┆19┆┆8e┆┄┄cated, the packet enters the busy queue.↲
↲
*16) ┆84┆Note that regret switch is set on.↲
┆0e┆↓
↲
╞ *17) ┆84┆The no of pages field in the document description read is ↓
┆19┆┆8e┆┄┄added to rem pages. Note that the current dosument descrip┄↓
┆19┆┆8e┆┄┄tion is left unchanged.↲
↲
╞ *18) ┆84┆no of des can now be defined. rem pages is now fully defined ↓
┆19┆┆8e┆┄┄so that the priority algorithm can function correctly.↲
↲
↲
┆a1┆┆b0┆6.4.4.2╞ Capability Handling↲
↲
╞ ┆84┆This section describes opening of the document stream and capa┄↓
┆19┆┆89┆┄┄bility negotiation in packet source mode. Fig. 21 shows this. ↲
╞ Fig. 21 has the entry point:↲
↲
╞ 21a: ┆84┆A document is ready to be transmitted and the document ↓
┆19┆┆8d┆┄┄description has been read from DS. The packet has been ↓
┆19┆┆8d┆┄┄connected to a session.↲
↲
↲
┆0f┆↓
════════════════════════════════════════════════════════════════════════
↓
╞ Fig. 21 Capability handling↲
╱04002d440c00060000000002014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d87ffff04╱
╱04002d440c00060000000003014b31000000000000000000000000000000000000000000000000000a141e28323c464b555f69737d87ffff04╱
↓
↲
↲
╞ ╞ ╞ 21a↲
↲
↲
↲
↲
╞ ╞ ╞ IND.UPDATE *6)↲
↲
↲
↲
↲
↲
╞ ╞ ╞ wait↲
╞ ╞ ╞ reply ok↲
↲
↲
↲
↲
╞ ╞ ╞ REPLY OK/CAP REQ↲
↲
╞ ╞ ╞ ╞ ╞ STREAM↲
↲
↲
╞ ╞ ╞ wait↲
╞ ╞ ╞ cap resp╞ STREAM END *2)↲
↲
╞ ╞ CAP CONF NEG↲
↲
25d╞ ╞ ╞ ╞ ╞ CHECKPOINT↲
*3)↲
↲
↲
↲
╞ ╞ ╞ CAP CONF POS↲
↲
↲
↲
╞ regret switch on╞ regret switch off↲
╞ & regret possible or regret not possible↲
↲
↲
╞ ╞ 25d╞ ╞ ╞ 22a↲
↲
↲
↲
↲
════════════════════════════════════════════════════════════════════════
↓
┆1a┆┆1a┆┆1a┆ssible or regret not possible↲
↲
↲
╞ ╞ 25d╞ ╞ ╞ 22a↲
↲
↲
↲
↲
════════════════════════════════════════════════════════════════════════
↓
↓
┆1a┆
════════════════════════════════════════════════════════════════════════
┆01┆
════════════════════════════════════════════════════════════════════════
┆03┆
════════════════════════════════════════════════════════════════════════
┆05┆
════════════════════════════════════════════════════════════════════════
┆07┆
════════════════════════════════════════════════════════════════════════
╞
════════════════════════════════════════════════════════════════════════
┆0b┆
════════════════════════════════════════════════════════════════════════
←
════════════════════════════════════════════════════════════════════════
┆0f┆