User Tools

Site Tools


protocols:zmodem

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
protocols:zmodem [2018/08/14 21:05] – [16. PERFORMANCE COMPARISON TABLES] rootprotocols:zmodem [2018/08/14 21:10] (current) – [8. PROTOCOL TRANSACTION OVERVIEW] root
Line 564: Line 564:
 environments. environments.
  
-==== 8.  PROTOCOL TRANSACTION OVERVIEW ====+===== 8.  PROTOCOL TRANSACTION OVERVIEW =====
  
 As with the XMODEM recommendation, ZMODEM timing is receiver driven.  The As with the XMODEM recommendation, ZMODEM timing is receiver driven.  The
Line 571: Line 571:
  
  
-=== 8.1  Session Startup ===+==== 8.1  Session Startup ====
  
 To start a ZMODEM file transfer session, the sending program is called To start a ZMODEM file transfer session, the sending program is called
Line 628: Line 628:
 number of the receiving program, or 0. number of the receiving program, or 0.
  
-=== 8.2  File Transmission ===+==== 8.2  File Transmission ====
  
 The sender then sends a ZFILE header with ZMODEM Conversion, Management, The sender then sends a ZFILE header with ZMODEM Conversion, Management,
Line 709: Line 709:
 prevent the sending program from returning with a success status. prevent the sending program from returning with a success status.
  
-=== 8.3  Session Cleanup ===+==== 8.3  Session Cleanup ====
  
 The sender closes the session with a ZFIN header.  The receiver The sender closes the session with a ZFIN header.  The receiver
Line 719: Line 719:
 characters, then exits whether they were received or not. characters, then exits whether they were received or not.
  
-=== 8.4  Session Abort Sequence ===+==== 8.4  Session Abort Sequence ====
  
 If the receiver is receiving data in streaming mode, the Attn If the receiver is receiving data in streaming mode, the Attn
Line 736: Line 736:
 </code> </code>
  
-==== 9.  STREAMING TECHNIQUES / ERROR RECOVERY ====+===== 9.  STREAMING TECHNIQUES / ERROR RECOVERY =====
  
 It is a fact of life that no single method of streaming is applicable It is a fact of life that no single method of streaming is applicable
Line 744: Line 744:
 receiving environment, and transmission channel(s). receiving environment, and transmission channel(s).
  
-=== 9.1  Full Streaming with Sampling ===+==== 9.1  Full Streaming with Sampling ====
  
 If the receiver can overlap serial I/O with disk I/O, and if the If the receiver can overlap serial I/O with disk I/O, and if the
Line 795: Line 795:
 header followed by data subpackets. header followed by data subpackets.
  
-== 9.1.1  Window Management ==+=== 9.1.1  Window Management ===
  
 When sending data through a network, some nodes of the network store When sending data through a network, some nodes of the network store
Line 819: Line 819:
 these programs.((When used with modems or networks that simultaneously assert flow)) these programs.((When used with modems or networks that simultaneously assert flow))
  
-=== 9.2  Full Streaming with Reverse Interrupt ===+==== 9.2  Full Streaming with Reverse Interrupt ====
  
 The above method cannot be used if the reverse data stream cannot be The above method cannot be used if the reverse data stream cannot be
Line 843: Line 843:
 receiver's error header. receiver's error header.
  
-=== 9.3  Full Streaming with Sliding Window ===+==== 9.3  Full Streaming with Sliding Window ====
  
 If none of the above methods is applicable, hope is not yet lost.  If If none of the above methods is applicable, hope is not yet lost.  If
Line 857: Line 857:
 sender's interrupt buffer before sending the ZRPOS header. sender's interrupt buffer before sending the ZRPOS header.
  
-=== 9.4  Full Streaming over Error Free Channels ===+==== 9.4  Full Streaming over Error Free Channels ====
  
 File transfer protocols predicated on the existence of an error free File transfer protocols predicated on the existence of an error free
Line 872: Line 872:
 long files is less than one per cent.((One in 256 for escaping ZDLE, about two (four if 32 bit CRC is used) in 1024 for data subpacket CRC's)) long files is less than one per cent.((One in 256 for escaping ZDLE, about two (four if 32 bit CRC is used) in 1024 for data subpacket CRC's))
  
-=== 9.5  Segmented Streaming ===+==== 9.5  Segmented Streaming ====
  
  
Line 890: Line 890:
  
  
-==== 10.  ATTENTION SEQUENCE ====+===== 10.  ATTENTION SEQUENCE =====
  
 The receiving program sends the Attn sequence whenever it detects an The receiving program sends the Attn sequence whenever it detects an
Line 908: Line 908:
   * \336 (octal) Pause one second   * \336 (octal) Pause one second
  
-==== 11.  FRAME TYPES ====+===== 11.  FRAME TYPES =====
  
 The numeric values for the values shown in boldface are given in The numeric values for the values shown in boldface are given in
Line 914: Line 914:
 set to 0. set to 0.
  
-=== 11.1  ZRQINIT ===+==== 11.1  ZRQINIT ====
  
 Sent by the sending program, to trigger the receiving program to send Sent by the sending program, to trigger the receiving program to send
Line 925: Line 925:
 0 otherwise. 0 otherwise.
  
-=== 11.2  ZRINIT ===+==== 11.2  ZRINIT ====
  
 Sent by the receiving program. ZF0 and ZF1 contain the  bitwise or Sent by the receiving program. ZF0 and ZF1 contain the  bitwise or
Line 944: Line 944:
 if nonstop I/O is allowed. if nonstop I/O is allowed.
  
-=== 11.3  ZSINIT ===+==== 11.3  ZSINIT ====
  
 The Sender sends flags followed by a binary data subpacket terminated The Sender sends flags followed by a binary data subpacket terminated
Line 960: Line 960:
 maximum length 32 bytes including the terminating null. maximum length 32 bytes including the terminating null.
  
-=== 11.4  ZACK ===+==== 11.4  ZACK ====
  
 Acknowledgment to a ZSINIT frame, ZCHALLENGE header, ZCRCQ or ZCRCW Acknowledgment to a ZSINIT frame, ZCHALLENGE header, ZCRCQ or ZCRCW
Line 967: Line 967:
 header. header.
  
-=== 11.5  ZFILE ===+==== 11.5  ZFILE ====
  
 This frame denotes the beginning of a file transmission attempt. This frame denotes the beginning of a file transmission attempt.
Line 977: Line 977:
 receiver overrides any other Conversion Option sent by the sender. receiver overrides any other Conversion Option sent by the sender.
  
-== 11.5.1 ZF0: Conversion Option ==+=== 11.5.1 ZF0: Conversion Option ===
  
 If the receiver does not recognize the Conversion Option, an If the receiver does not recognize the Conversion Option, an
Line 1006: Line 1006:
 transfers recovered. transfers recovered.
  
-== 11.5.2 ZF1: Management Option ==+=== 11.5.2 ZF1: Management Option ===
  
 If the receiver does not recognize the Management Option, the If the receiver does not recognize the Management Option, the
Line 1041: Line 1041:
 is newer. is newer.
  
-== 11.5.3 ZF2: Transport Option ==+=== 11.5.3 ZF2: Transport Option ===
  
 If the receiver does not implement the particular transport If the receiver does not implement the particular transport
Line 1061: Line 1061:
 chapter. chapter.
  
-== 11.5.4 ZF3: Extended Options ==+=== 11.5.4 ZF3: Extended Options ===
  
 The Extended Options are bit encoded. The Extended Options are bit encoded.
Line 1072: Line 1072:
 is lost. ZTSPARS cannot be used with ZCNL. is lost. ZTSPARS cannot be used with ZCNL.
  
-=== 11.6  ZSKIP ===+==== 11.6  ZSKIP ====
  
 Sent by the receiver in response to ZFILE, makes the sender skip to Sent by the receiver in response to ZFILE, makes the sender skip to
 the next file. the next file.
  
-=== 11.7  ZNAK ===+==== 11.7  ZNAK ====
  
 Indicates last header was garbled.  (See also ZRPOS). Indicates last header was garbled.  (See also ZRPOS).
  
-=== 11.8  ZABORT ===+==== 11.8  ZABORT ====
  
 Sent by receiver to terminate batch file transfers when requested by Sent by receiver to terminate batch file transfers when requested by
 the user.  Sender responds with a ZFIN sequence.((Or ZCOMPL in case of server mode.)) the user.  Sender responds with a ZFIN sequence.((Or ZCOMPL in case of server mode.))
  
-=== 11.9  ZFIN ===+==== 11.9  ZFIN ====
  
 Sent by sending program to terminate a ZMODEM session. Receiver Sent by sending program to terminate a ZMODEM session. Receiver
 responds with its own ZFIN. responds with its own ZFIN.
  
-=== 11.10  ZRPOS ===+==== 11.10  ZRPOS ====
  
 Sent by receiver to force file transfer to resume at file offset Sent by receiver to force file transfer to resume at file offset
 given in ZP0...ZP3. given in ZP0...ZP3.
  
-=== 11.11  ZDATA ===+==== 11.11  ZDATA ====
  
 ZP0...ZP3 contain file offset. One or more data subpackets follow. ZP0...ZP3 contain file offset. One or more data subpackets follow.
  
-=== 11.12  ZEOF ===+==== 11.12  ZEOF ====
  
 Sender reports End of File.  ZP0...ZP3 contain the ending file Sender reports End of File.  ZP0...ZP3 contain the ending file
 offset. offset.
  
-=== 11.13  ZFERR ===+==== 11.13  ZFERR ====
  
 Error in reading or writing file, protocol equivalent to ZABORT. Error in reading or writing file, protocol equivalent to ZABORT.
  
-=== 11.14  ZCRC ===+==== 11.14  ZCRC ====
  
 Request (receiver) and response (sender) for file polynomial. Request (receiver) and response (sender) for file polynomial.
 ZP0...ZP3 contain file polynomial. ZP0...ZP3 contain file polynomial.
  
-=== 11.15  ZCHALLENGE ===+==== 11.15  ZCHALLENGE ====
  
 Request sender to echo a random number in ZP0...ZP3 in a ZACK frame. Request sender to echo a random number in ZP0...ZP3 in a ZACK frame.
Line 1121: Line 1121:
 spurious data or a Trojan Horse message. spurious data or a Trojan Horse message.
  
-=== 11.16  ZCOMPL ===+==== 11.16  ZCOMPL ====
  
 Request now completed. Request now completed.
  
-=== 11.17  ZCAN ===+==== 11.17  ZCAN ====
  
 This is a pseudo frame type returned by gethdr() in response to a This is a pseudo frame type returned by gethdr() in response to a
 Session Abort sequence. Session Abort sequence.
  
-=== 11.18  ZFREECNT ===+==== 11.18  ZFREECNT ====
  
 Sending program requests a ZACK frame with ZP0...ZP3 containing the Sending program requests a ZACK frame with ZP0...ZP3 containing the
Line 1136: Line 1136:
 represents an indefinite amount of free space. represents an indefinite amount of free space.
  
-=== 11.19  ZCOMMAND ===+==== 11.19  ZCOMMAND ====
  
  
Line 1173: Line 1173:
 ZCOMPL header. ZCOMPL header.
  
-==== 12.  SESSION TRANSACTION EXAMPLES ====+===== 12.  SESSION TRANSACTION EXAMPLES =====
  
-=== 12.1  A simple file transfer ===+==== 12.1  A simple file transfer ====
  
 A simple transaction, one file, no errors, no CHALLENGE, overlapped A simple transaction, one file, no errors, no CHALLENGE, overlapped
Line 1196: Line 1196:
 </code> </code>
  
-=== 12.2  Challenge and Command Download ===+==== 12.2  Challenge and Command Download ====
  
 <code> <code>
Line 1214: Line 1214:
 </code> </code>
  
-==== 13.  ZFILE FRAME FILE INFORMATION ====+===== 13.  ZFILE FRAME FILE INFORMATION =====
  
 ZMODEM sends the same file information with the ZFILE frame data ZMODEM sends the same file information with the ZFILE frame data
Line 1316: Line 1316:
 not exceed 1024 bytes; a typical length is less than 64 bytes. not exceed 1024 bytes; a typical length is less than 64 bytes.
  
-==== 14.  PERFORMANCE RESULTS ====+===== 14.  PERFORMANCE RESULTS =====
  
-=== 14.1  Compatibility ===+==== 14.1  Compatibility ====
  
 Extensive testing has demonstrated ZMODEM to be compatible with Extensive testing has demonstrated ZMODEM to be compatible with
Line 1327: Line 1327:
 directions to operate at optimal speeds. directions to operate at optimal speeds.
  
-=== 14.2  Throughput ===+==== 14.2  Throughput ====
  
 Between two single task PC-XT computers sending a program image on Between two single task PC-XT computers sending a program image on
Line 1344: Line 1344:
 second are possible. second are possible.
  
-=== 14.3  Error Recovery ===+==== 14.3  Error Recovery ====
  
 Some tests of ZMODEM protocol error recovery performance have been Some tests of ZMODEM protocol error recovery performance have been
Line 1385: Line 1385:
 require a timeout error to restore the flow of data. require a timeout error to restore the flow of data.
  
-==== 15.  PACKET SWITCHED NETWORK CONSIDERATIONS ====+===== 15.  PACKET SWITCHED NETWORK CONSIDERATIONS =====
  
 Flow control is necessary for printing messages and directories, and Flow control is necessary for printing messages and directories, and
protocols/zmodem.1534273549.txt.gz · Last modified: 2018/08/14 21:05 by root

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki