rfc88.txt

来自「RFC 的详细文档!」· 文本 代码 · 共 508 行 · 第 1/2 页

TXT
508
字号

      It is anticipated that even this crude check on IMP-Host
      transmission will be useful both during the initial checkout of
      hardware and software and also later if the interface becomes
      marginal.  However, either site can omit the check pattern if it
      sets a bit in the Block Control Byte (BCBYTE); see Section F.

   2. Each block contains a sequence number.  Again this is intended for
      initial checkout and to signal catastrophic hardware or software
      problems.  If the receiver detects an incorrect check pattern or
      block sequence number, he aborts the channel by closing the
      corresponding network connection; the remote site should then
      issue an RFC to re-establish the network connection.  The sequence
      number of the first block after an RFC is 0.  The  numbers are
      never reset while the connection is open.












Braden, et. al.                                                 [Page 5]

RFC 88              NETRJS - A THIRD LEVEL PROTOCOL      13 January 1971


E.  Block Format

      BLOCK <---- BLOCKHEAD + (RECORD = r) + ENDOFBLOCK

                  Here r > 0
                         =
   BLOCKHEAD <--  BCBYTE + [e=0=>CHECK] + DEVBYTE

                  The Blockhead field consists of a Block Control Byte,
                  a 32-bit check field CHECK, and a Device Byte.

   BCBYTE <----   '1'BIT + e:ERRORCONTROL + b:BLKSEQ

                  Here BLKSEQ contains a 5-bit modulo 32 block sequence
                  number b.  ERRORCONTROL is a 2 bit field with the
                  following meanings:

                  e=0 :  Normal block.  Contains a (presumably valid)
                         check field CHECK.

                  e=1 :  Block contains no check field CHECK.

                  e=2 :  Abort channel, initiated by transmitter.
                         Channels is not closed, transmission restarts
                         on job-related boundary.

   DEVBYTE <----  '1'BIT + n:DEVNO + t:DEVTYPE

                  This byte identifies a particular remote device, i.e.,
                  it identifies a stream.  DEVTYPE specifies the type of
                  device, as follows:

                  t=1:  Output to remote operator console.
                    2:  Input from remote operator console.
                    3:  Input from card reader.
                    4:  Output to printer.
                    5:  Output to card punch.
                  6,7:  Unused.

                  DEVNO is a 3-bit integer which identifies the
                  particular device type of type t at this remote site.

   CHECK <---     '10101111'BYTE + 01010000'BYTE + '11111010'BYTE +
                                                   '00000101'BYTE
   ENDOFBLOCK<----'0'BYTE






Braden, et. al.                                                 [Page 6]

RFC 88              NETRJS - A THIRD LEVEL PROTOCOL      13 January 1971


Record Format

      RECORD <------ DATA RECORD | JOBNAMERECORD

   The first record sent on a printer or punch output channel will be a
   JOBNAMERECORD, identifying the OS/360 jobname of the job which
   produced the following output.

   DATARECORD <---   '10'BIT2 + DEVCNTRL + (STRING=p) + ENDOFRECORD

   JOBNAMERECORD <-- '11000000'BYTE + '11001000'BYTE + JOBNAME +
                     ENDOFRECORD

   JOBNAME <----     (TEXTBYTE = 8)

                     This is the 8-character OS/360 jobname for the
                     following job.

   DEVCNTRL <-----    d:BIT2 + k:BIT4

                     DEVCNTRL specifies carriage control for a printer,
                     so if the device is not a printer then DEVCNTRL
                     should be '000000'.  For a printer:

                     d=0     : Space k lines after printing; 0 < k < 3
                                                               =   =
                               is allowed

                     d=2     : Immediately space k lines.

                     d=1, k=1: Skip to top of new page after printing.

                     d=3, k=1: Immediately skip to top of new page.

   STRING <---         ('100' + i:DUPCOUNT)| This is a string of i
                     consecutive blanks.

                     ('101' + i:DUPCOUNT + TEXTBYTE)|

                     This is a string of i consecutive duplicates of
                     TEXTBYTE.

                     ('11' + j:LENGTH + (TEXTBYTE=j)| This is an
                     uncompressed string of j characters.

   ENDOFRECORD <----   '0'BYTE





Braden, et. al.                                                 [Page 7]

RFC 88              NETRJS - A THIRD LEVEL PROTOCOL      13 January 1971


G.  Field Definitions

   Name*           Meaning                 Length (bits)
   _____           _______                 _____________

   BIT             1-bit field                  1

   BIT2            2-bit field                  2

   BIT4            4-bit field                  4

   BLKSEQ          Block sequence number        5

   BYTE            8-bit field aligned on 8-bit 8
                   boundary

   CHECK           Block check number          32

   DEVNO           Device number of a given     3
                   type

   DEVTYPE         Device type                  4

   DUPCOUNT        Number of replications of    5
                   duplicated character in
                   compressed text.

   ERRORCONTROL    Block transmission error     2
                   control.

   LENGTH          Length in bytes of the       6
                   following string of text.

   TEXTBYTE        An 8-bit byte of text        8

   *Note:  All non-terminal fields whose names end in
           "...BYTE" represent bytes in both length and
           alignment.













Braden, et. al.                                                 [Page 8]

RFC 88              NETRJS - A THIRD LEVEL PROTOCOL      13 January 1971


   H.  NOTES AND REFERENCES

   1. Martin, V.A. and Springer, T.W., "Implementation of A Remote Job
      Service", Technical Report TR2, Campus Computing Network, UCLA,
      Los Angeles, (undated).

   2. The RJS operator commands and messages are described in detail in
      Reference 1.

   3. We use the phrase "starting a session" rather than "logging on"
      because RJS has its own log on procedure, which is, we suppose, a
      fourth-level protocol.

   4. Note that NETRJS uses closing of connections as end-of-file
      signals.



           REMOTE SITE             CENTRAL SITE (CCN)
      +---------------------+    +--------------------+
      |                 a   |    |                    |
      | Console Input  o----------->o f               |
      |                 b   |    |                    |
      | Console Output o<-----------o g               |
      |                 c   |    |                    |
      | Card Reader    o------------o h               |
      |                 d   |    |                    |
      | Printer        o<-----------o i               |
      |                 e   |    |                    |
      | Card Punch     o<-----------o j               |
      |                     |    |                    |
      +---------------------+    +--------------------+

                           FIGURE 1
                ARPA Network Connections (Channels)
              For a Standard Remote Site Under NETRJS

      R.T. Braden/rb.
      S.M. Wolfe


           [This RFC was put into machine readable form for entry]
            [into the online RFC archives by Lorrie Shiota, 10/01]








Braden, et. al.                                                 [Page 9]


⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?