ZMODEM

from Wikipedia, the free encyclopedia

The ZMODEM or Z-Modem is a protocol that enables the secure transfer of files between computer systems. It was developed by Chuck Forsberg in 1986 and was especially popular in the early 1990s in the field of mailbox systems and replaced previous protocols such as XMODEM and YMODEM for file transfer . Today it is primarily used in the area of ​​terminal programs for the transfer of firmware between computer systems and is hardly ever used in the area of internet-based networks for data transmission. Only in FidoNet, which has been slowly dying out since the late 1990s, is ZMODEM still the first choice.

A significant improvement of ZMODEM is that it uses a sliding window method for packet-oriented transmission and can thus compensate for the delay times in the data transmission path (latency times), which can be in the range of a few 100 ms, especially for overseas connections. Each data packet is provided by the sender with an individual number from a certain pool and the recipient confirms the correct receipt of each packet with the packet number as a response. This allows the sender to send several packets one after the other, up to the maximum number from the packet number memory, without having to wait for confirmation of the successful receipt of each individual packet.

Furthermore, ZMODEM has some improvements compared to its predecessor protocols:

  • Protection of the data packets against data transmission errors using CRC32 . The packets recognized as defective must be retransmitted by the sender.
  • If the transmission is interrupted, a resumption can be initiated that continues after the last successfully transmitted packet. Extensive file transfers benefit from this, because not all data have to be transferred again if the connection is lost.
  • Automatic initiation of a ZMODEM transmission by transmitting special control commands within the terminal interface. Both communication sides can trigger the start of an upload or download.
  • Avoid certain control characters in the data stream through appropriate channel coding .
  • Transmission of certain file information such as file name and file date.

Web links