Kermit (protocol)

It provides a consistent approach to file transfer, terminal emulation, script programming, and character set conversion across many different computer hardware and operating system platforms.

The Kermit protocol supports text and binary file transfers on both full-duplex and half-duplex 8-bit and 7-bit serial connections in a system- and medium-independent fashion, and is implemented on hundreds of different computer and operating system platforms.

On full-duplex connections, a sliding window protocol is used with selective retransmission which provides excellent performance and error recovery characteristics.

When properly implemented, as in the Columbia University Kermit Software collection, its authors claim performance is equal to or better than other protocols such as ZMODEM, YMODEM, and XMODEM, especially on poor connections.

The CP/M file-copy program PIP can usually access a computer's serial (RS-232) port, and if configured to use a very low baud rate (because it has no built-in error correction) can be used to transfer a small, simple version of Kermit from one machine to another over a null modem cable, or failing that, a very simple version of the Kermit protocol can be hand coded in binary in less than 2K using DDT, the CP/M Dynamic Debugging Tool.

Kermit was developed at the university so students could move files between them and floppy disks at various microcomputers around campus,[9][10][11] such as IBM or DEC DECSYSTEM-20 mainframes and Intertec Superbrains running CP/M.

Although it is copyrighted and not in the public domain, we only ask that you not attempt to sell it for profit, and that you use it only for peaceful and humane purposes.By 1988 Kermit was available on more than 300 computers and operating systems.

[15] The protocol became a de facto data communications standard[16] for transferring files between dissimilar computer systems, and by the early 1990s it could convert multilingual character encodings.

Kermit software has been used in many countries, for tasks ranging from simple student assignments to solving compatibility problems aboard the International Space Station.