C-Kermit 7.0 Case Study #07

[ Previous ] [ Next ] [ Index ] [ C-Kermit Home ] [ Kermit Home ]

Article: 10925 of comp.protocols.kermit.misc
From: fdc@watsun.cc.columbia.edu (Frank da Cruz)
Newsgroups: comp.protocols.kermit.misc
Subject: Case Study #7: Internet Kermit Service
Date: 14 Jan 2000 22:15:48 GMT
Organization: Columbia University

The new Internet Kermit Service combines the convenience and speed of FTP with the features of Kermit. But let's make one thing clear right now -- it isn't FTP, it's Kermit.

Since the very beginning, Kermit has been a do-it-yourself affair. It lets you make a connection from one computer to another, and then, if you start a second Kermit program on the second computer, it also lets you transfer files. So it's like FTP except you have to "install" (or start) the FTP server on the far end yourself -- it's not just waiting there for you.

Aside from the possibly tricky mechanics, the other drawback of the traditional arrangement is the requirement that you have a user ID on the second computer (at least on platforms that require login). FTP, on the other hand, allows anonymous access; you can get files from any FTP server as user "anonymous", and in some cases also upload files, depending on site policies.

Now C-Kermit 7.0 (UNIX version only) lets you do this too. In one of its many guises (1), C-Kermit 7.0 can be installed as an Internet Kermit Service, similar to your FTP, Telnet, Web, and other servers, and it works the same way. It has its own TCP socket, 1649. When a connection comes in on this socket, the Internet Services Daemon (inetd) starts a copy of C-Kermit in "IKSD mode" -- i.e. as an Internet Kermit Service Daemon (IKSD) -- just for you.

An IKSD client can be any telnet client that also includes Kermit protocol, but the ones that work best are C-Kermit, Kermit 95, and MS-DOS Kermit. Once you make the connection to IKSD you have to log in, either as a real user or anonymously (unless authentication occurs automatically), just as you would to an FTP server.

Once logged in, if have an IKSD-aware client, or at least a client that offers Kermit protocol client-end commands such as GET, REMOTE xxx, FINISH, and BYE, you can conduct all further business from your client, just as you would with an FTP client (but with Kermit commands, not FTP commands).

But unlike FTP, IKSD also lets you interact directly with the server in your terminal window, where you will find the familiar Kermit prompt and all its features -- command and filename completion, ?-menus, macros, and all the rest.

If your client is C-Kermit 7.0, Kermit 95 1.1.17, or MS-DOS Kermit 3.16 Beta, you should find that file transfers with IKSD are about as fast as with FTP because it's a reliable socket-to-socket connection where streaming can be done, which these new Kermit versions support. With other clients, performance will be as good as the client's Kermit protocol implementation.

Now look at what IKSD offers you that FTP doesn't:

  1. A selection of secure authentication methods (1) (2).
  2. Character-set translation (3).
  3. Filename collision options such as UPDATE.
  4. Flexible file selection mechanisms.
  5. Preservation of file timestamps and permissions (3).
  6. Automatic per-file text/binary mode switching (3).
  7. Recursive directory-tree transfer (3).
  8. Recovery of interrupted binary-mode transfers (2).
  9. Automation of any task you could do by hand, no matter how complicated.

The newsgroups are plastered every day with "How do I automate FTP?" queries. IKSD is a good answer. And the automation can be driven from either client side or the server side.

IKSD has some other advantages over FTP too:

  1. You don't necessarily need an Internet connection to access it. For example, you could place a (non-PPP) modem call to a terminal server, "telnet" from the terminal server to IKSD, and then have an IKSD session with your dialup program.

  2. Since IKSD uses one socket -- unlike FTP, which uses two -- you might be able to transfer files through firewalls with IKSD that could not be transferred with FTP.
We've had IKSD running on the Kermit Project server for the past several months; you are invited to try it out. The instructions are here:


You can also install IKSD at your own site; for directions, read the IKSD Administration Guide, in which you'll see that all sorts of security, configuration, logging, and monitoring options are available, including a real-time SYSDPY-like display of active sessions with the ability to zoom in on selected sessions.

IKSD protocols and services are described in a pair of Internet Drafts, which will be promoted to RFCs shortly:


The 1649 socket is official; the service name is "kermit":


Hopefully it will find its way into /etc/services and equivalent files on all platforms in the coming months, so you can refer to the service by name rather than number.


  1. More about this in a future posting.
  2. A handful of FTP clients and servers can do this too.
  3. If your client supports this feature too.

- Frank

[ Top ] [ Previous ] [ Next ] [ Index ] [ C-Kermit Home ] [ Kermit Home ]

C-Kermit 7.0 / Columbia University / kermit@kermitproject.org / 14 Jan 2000