home *** CD-ROM | disk | FTP | other *** search
/ Columbia Kermit / kermit.zip / e / v14.5 < prev    next >
Internet Message Format  |  2020-01-01  |  34KB

  1. From cmg  Mon Sep 16 16:32:45 1991
  2. Return-Path: <cmg>
  3. Received: by watsun.cc.columbia.edu (5.59/FCB)
  4.     id AA20318; Mon, 16 Sep 91 16:32:45 EDT
  5. Date: Mon, 16 Sep 91 16:32:44 EDT
  6. From: Christine M Gianone <cmg@watsun.cc.columbia.edu>
  7. To: Info-Kermit
  8. Subject: Info-Kermit Digest V14 #5
  9. Reply-To: Info-Kermit@watsun.cc.columbia.edu
  10. Queries-To: Info-Kermit-Request@WATSUN.CC.COLUMBIA.EDU
  11. Errors-To: Info-Kermit-Request@watsun.cc.columbia.edu
  12. Message-Id: <CMM.0.90.0.685053164.cmg@watsun.cc.columbia.edu>
  13.  
  14. Info-Kermit Digest         Mon, 16 Sep 1991        Volume 14 : Number 5
  15.  
  16. Today's Topics:
  17.  
  18.                MS-DOS Kermit 3.11 is Released!
  19.          New Second Edition of "Using MS-DOS Kermit"
  20.         Kermit, TCP/IP, Packet Drivers, and the Future
  21.            Adding TCP/IP Features to MS-DOS Kermit
  22.  
  23. Digest submissions may be sent to Info-Kermit@WATSUN.CC.COLUMBIA.EDU or
  24. KERMIT@CUVMA.BITNET.  Requests for addition to or deletion from the
  25. Info-Kermit subscriber list should be sent to LISTSERV@CUVMA.BITNET or
  26. LISTSERV@CUVMA.CC.COLUMBIA.EDU.  These messages must be of the form:
  27.  
  28.   SUBSCRIBE I-KERMIT <your-personal-name>    (To start a subscription)
  29.   UNSUBSCRIBE I-KERMIT                       (To cancel a subscription)
  30.   REGISTER I-KERMIT <your-personal-name>     (To correct your name)
  31.  
  32. Kermit files may be obtained over networks and by mail order.  On the
  33. Internetwork, use FTP to log in to host WATSUN.CC.COLUMBIA.EDU, a SUN-4/280
  34. running UNIX (SUNOS 4.1), IP host number 128.59.39.2.  Login as user anonymous
  35. (note, lower case), any password, and GET or MGET (MULTIPLE GET) the desired
  36. files.  The Kermit files are in directories kermit/a, kermit/b, kermit/c,
  37. kermit/d, and kermit/e.  Test versions are in kermit/test.  All files in these
  38. directories should be transferred in text (ASCII) mode.  Binaries are in
  39. kermit/bin (use ftp in binary mode).  You can also get Kermit files over the
  40. BITNET/EARN network; to get started send a message with text HELP to KERMSRV,
  41. the Kermit file server, at host CUVMA.  For detailed instructions, read the
  42. file kermit/a/aanetw.hlp (AANETW.HLP on KERMSRV).  To order by mail, request a
  43. complete list of Kermit versions and an order form from Kermit Distribution,
  44. Columbia University Center for Computing Activities, 612 West 115th Street,
  45. New York, NY 10025 USA.
  46.  
  47. ----------------------------------------------------------------------
  48.  
  49. Date: Mon, 16 Sep 1991 14:00:00 EDT
  50. >From: Christine M Gianone <cmg@watsun.cc.columbia.edu>
  51. Subject: MS-DOS Kermit 3.11 is Released!
  52. Keywords: MS-DOS Kermit 3.11, TCP/IP, MCGA, Dialing Directory, Windows 3.0
  53.  
  54. This is to announce the final release of MS-DOS Kermit 3.11 from Professor
  55. Joe R. Doupnik of Utah State University, and a new Second Edition of the
  56. documentation, "Using MS-DOS Kermit" (see message below).
  57.  
  58. The major new feature of version 3.11 is its built-in support for
  59. TCP/IP networking, adapted from parts of the Waterloo TCP package from Erick
  60. Engelke of Waterloo University in Ontario.
  61.  
  62. Also included are script language improvements that allow for a much
  63. improved DIAL command that can use a plain text file as a dialing directory,
  64. and VT220 emulation to fill the gap between VT102 and VT320.  And finally, a
  65. last-minute, down-to-the-wire improvement: support for high-resolution
  66. Tektronix graphics on the PS/2 Model 25 and 30 MCGA video adapter.  Give the
  67. command SET TERMINAL GRAPHICS VGA to use it (otherwise Kermit thinks the
  68. MCGA is a CGA, and uses low-resolution graphics).
  69.  
  70. TCP/IP NETWORKING
  71.  
  72. Why add TCP/IP to Kermit?  Many people use both network and serial
  73. connections, and until now had to switch between a Telnet program (which
  74. doesn't support serial connections) and Kermit (which didn't support Telnet
  75. connections).  For file transfer, the TCP/IP FTP protocol, while fast, does
  76. not support many of Kermit's advanced features.  Kermit offers you features
  77. not found in Telnet and FTP: a script programming language, flexible key
  78. mapping, macros, international character set translation, and VT320
  79. and Tektronix 401x terminal emulation.  Perhaps most important of all, now
  80. you have a single application program and a common user interface for both
  81. serial and network communication.
  82.  
  83. Kermit's TCP/IP and TELNET implementation takes up only about 30K of
  84. additional program space.  It runs only over Ethernet-style packet drivers
  85. (see Joe's article below) available from your network board vendor, or via
  86. anonymous FTP from Clarkson University, host sun.soe.clarkson.edu
  87. [128.153.12.3], cd pub/ka9q, use "type binary", get the appropriate zip, arc,
  88. zoo, etc, files, use PKUNZIP, PKXARC, or ZOO on your PC to unpack them, read
  89. the files READ.ME, MANIFEST.DOC, and INSTALL.DOC, and take it from there.
  90. Copies are also available on watsun.cc.columbia.edu in kermit/packet-drivers
  91. (source and documentation) and kermit/packet-drivers-bin (PC binaries).
  92.  
  93. Kermit supports downloading of its network parameters from BOOTP and RARP
  94. servers, making it possible for all users of a corporate or campus network to
  95. have the same initialization file -- a big plus for network managers.  Keep
  96. your network information in a central database, rather than spread around on
  97. scattered PC hard disks and diskettes!
  98.  
  99. Kermit's TELNET implementation automatically negotiates TELNET protocol
  100. parameters such as local echoing, so connecting to a linemode TELNET server
  101. (such as found on an IBM mainframe) works automatically.  However, Kermit
  102. does not include built-in 3270 terminal emulation, so it is not (yet) a
  103. replacement for tn3270.  But, it can be used with reverse telnet terminal
  104. servers connected to IBM 7171 or other 3270 protocol converters.
  105.  
  106. Contrary to expectations, Kermit *can* make TCP/IP connections from within a
  107. Microsoft Windows 3.0 Enhanced Mode window.  Kermit does not support multiple
  108. simultaneous TCP/IP sessions, and the fact that you can run it under Windows
  109. is not, unfortunately, an escape clause to this rule.  The packet driver only
  110. allows one one application per protocol; this also means, for example, you
  111. can't use Kermit and (say) NCSA telnet at the same time for TCP/IP
  112. connections.  However, you can still have multiple copies of Kermit running,
  113. as long as each one is using a different communication method, or a different
  114. serial port.
  115.  
  116. Read the new help and beware files for more information about TCP/IP.
  117.  
  118. DIALING DIRECTORY AND MODEM SUPPORT
  119.  
  120. Kermit's new dialing directory is an ordinary plain-text file that Kermit's
  121. DIAL macro searches using Kermit's new OPEN, READ, and CLOSE commands.  To
  122. take advantage of this new feature, make sure you get a copy of the new
  123. sample initialization file, MSKERMIT.INI, as well as the Hayes modem dialing
  124. script program, MSIHAY.SCR (which you must rename to HAYES.SCR).  A sample
  125. dialing directory is available as MSIDIA.TXT (which you must rename to
  126. DIALUPS.TXT).
  127.  
  128. Kermit can also manage other types of modems besides Hayes.  Two steps are
  129. necessary: (1) change the definition of the "_modem" variable in
  130. MSKERMIT.INI, and (2) write a dialing script program for your modem, to
  131. substitute for HAYES.SCR.  An example is provided for the IBM/Siemens/Rolm
  132. CBX data phone (ROLMphone) in the file MSIROLM.SCR (which you should rename
  133. to ROLM.SCR).  Readers are encouraged to develop scripts for other kinds of
  134. modems and dialing methods, following the conventions used in HAYES.SCR and
  135. ROLM.SCR, and send them in to us for distribution.  
  136.  
  137. NEW FILES:
  138.  
  139. Internet anonymous ftp    EARN/BITNET
  140. watsun.cc.columbia.edu    KERMSRV@CUVMA   Description
  141.  
  142.   GENERAL FILES
  143.  
  144.  kermit/a/mskerm.hlp       MSKERM HLP      Help file (plain text)
  145.  kermit/a/mskerm.bwr       MSKERM BWR      "Beware File" (bugs & limitations)
  146.  kermit/a/mskermit.ini     MSKERMIT INI    Sample initialization file
  147.  kermit/a/mskermit.pch     MSKERMIT PCH    Sample patch file
  148.  kermit/a/msidia.txt       MSIDIA TXT      Sample dialing directory file
  149.  kermit/a/msihay.scr       MSIHAY SCR      Hayes modem dialing script
  150.  kermit/a/msirolm.scr      MSIROLM SCR     ROLMphone dialing script
  151.  
  152.   EXECUTABLES
  153.  
  154.  kermit/bin/msvibm.exe     (none)          Executable Kermit program for IBM PC
  155.  kermit/bin/msvibm.pif     (none)          Microsoft Windows 3.0 PIF file
  156.  kermit/a/msvibm.boo       MSVIBM BOO      BOO-encoded .EXE file for IBM PC
  157.  kermit/bin/msvgen.exe     (none)          Generic MS-DOS exectable
  158.  kermit/a/msvgen.boo       MSVGEN BOO      BOO-encoded .EXE for generic DOS
  159.  
  160.   SOURCE FILES
  161.  
  162.  kermit/a/ms*.asm, ms*.h   MS* ASM, MS* H   Microsoft assembler source files
  163.  kermit/a/msn*.*           MSN* *           C-language network source files
  164.  kermit/a/msv*.lnk         MSV* LNK         Linker command files
  165.  kermit/a/msv*.mak         MSV* MAK         Makefiles for "make"
  166.  
  167. All MS-DOS 3.11 IBM PC Kermit files have been removed from the test
  168. directories, kermit/test/ms*.* on watsun and T:MS* * on KERMSRV.
  169.  
  170. The ".boo" files for each version are .EXE files encoded in a printable
  171. ASCII format, suitable for BITNET, e-mail, and other nontransparent modes of
  172. transmission.  You can decode the boo-files back into .EXE files using any
  173. of the MSBPCT.* programs available in kermit/a/msbpct.* or MSBPCT * from
  174. KERMSRV.  See msbaaa.hlp for details.
  175.  
  176. For a detailed description of the MS-DOS Kermit file naming conventions, see
  177. the file msaaaa.hlp (MSAAAA HLP).  The MS-DOS Kermit implementations for
  178. non-IBM compatibles (except the generic DOS version) have not yet been
  179. upgraded to 3.11 level -- volunteers?
  180.  
  181. Once again, thanks to Joe for his skill, generosity, patience, dedication,
  182. perserverence, and endurance (we're running out of adjectives for Joe!) in
  183. putting this new MS-DOS Kermit version together and sharing it with us.  And
  184. thanks to the beta testers who sent in such prompt and detailed reports of
  185. problems so Joe could fix most of them so quickly!
  186.  
  187. ------------------------------
  188.  
  189. Date: Mon, 16 Sep 1991 13:00:00 EDT
  190. >From: Frank da Cruz <fdc@watsun.cc.columbia.edu>
  191. Subject: New Second Edition of "Using MS-DOS Kermit"
  192. Keywords: MS-DOS Kermit 3.11, Using MS-DOS Kermit
  193.  
  194. MS-DOS Kermit 3.11 is accompanied by a brand-new revised and expanded Second
  195. edition of Christine Gianone's book, "Using MS-DOS Kermit", Digital Press,
  196. Bedford, MA, USA (1991), order number EY-H893E-DP, Digital Press ISBN
  197. 1-55558-082-3, Prentice Hall ISBN 0-13-952276-X.  The book includes a
  198. 5.25-inch 360KB MS-DOS Kermit 3.11 diskette.  The US single-copy price is
  199. $34.95, up $5.00 from the first edition (not bad for 100 extra pages and 6
  200. months work).  To order, call (USA, toll free) 1-800-343-8321.  It is also
  201. available from Kermit Distribution at Columbia University and in software
  202. stores and computer bookstores (where you'll recognize it easily by its new
  203. purple cover).
  204.  
  205. A German language edition, "MS-DOS Kermit -- das universelle
  206. Kommunikationsprogramm, Einfuehrung und Referenz", is published by Verlag
  207. Heinz Heise GmbH & Co KG, Hannover, Germany, ISBN 3-88229-006-4, translated
  208. by Gisbert W. Selke (proprietor of the Old Curiosity Shop from Info-Kermit
  209. V14 #4), 5.25-inch 360KB diskette included, with many of the text files
  210. translated into German, price 69 DM.
  211.  
  212. The new edition describes all the new features of version 3.11, including
  213. everything that was added in versions 3.01, 3.02, and 3.10.  It has a new
  214. chapter on local area networks (including TCP/IP); a new appendix with a
  215. complete technical description of Kermit's terminal emulator with tables of
  216. all the escape sequences recognized and sent by Kermit in both text and
  217. graphics mode; expanded descriptions of many of Kermit's features, including
  218. printer control and the script programming language, including the new
  219. dialing directory features; an improved index.  There are also new
  220. instructions for running Kermit under Windows and DesqView, for using LK250
  221. keyboards, and there are many new tables, including one for Cyrillic
  222. character sets.  The new book remains an excellent introduction (Einfuehrung)
  223. for the novice, and it is now an even more complete reference (Referenz) for
  224. the expert.
  225.  
  226. The first edition of "Using MS-DOS Kermit" was received with unanimous
  227. approval by the critics.  Some samples from the book reviews:
  228.  
  229. "...one of the finest user guides, commercial, shareware, or otherwise, that
  230. this reviewer has had the pleasure of reading."
  231.   - Tom Nichol, Link-Up, July/August 1990 (p.8)
  232.  
  233. "An excellent introduction to computer communications, [Using MS-DOS Kermit]
  234. explains in simple but intelligent language how to set up and get going."
  235. "Must-read for PC buffs..."
  236.   - Anne M. Russell, Working Woman, September 1990 (p.94)
  237.  
  238. "While the book is aimed at nontechnical readers, I highly recommend it to
  239. all technical personnel in the computing field, particularly those who
  240. abhore software manuals."
  241.   - William Oblitey, ACM Computing Reviews, V32 #6, June 1991, pp.283-284
  242.  
  243. Both the English and German versions of the Second Edition should be
  244. available in late September or early October.  Every copy sold helps support
  245. the Kermit development and distribution effort, so don't be shy!
  246.  
  247. ------------------------------
  248.  
  249. Date: Mon, 9 Sep 1991 20:38 MDT
  250. >From: Joe Doupnik <JRD@cc.usu.edu>
  251. Subject: Kermit, TCP/IP, Packet Drivers, and the Future
  252.  
  253. Release 3.11 of MS-DOS Kermit for IBM-PCs and compatibles opens a new
  254. communications channel for Kermit: many hundreds of thousands of machines
  255. around the world attached to the cooperative Internet network.  The lingua
  256. franca of that channel is the TCP/IP protocol suite, including the Telnet
  257. interactive protocol.  This is networking with a capital "N".
  258.  
  259. We have received many requests for Kermit to "talk over the Ethernet" to
  260. other machines.  The impression held by those unfamiliar with the mysterious
  261. art of communications is that one simply puts individual bytes on the
  262. Ethernet much as we do with ordinary RS232-C wires.  Alas, the opposite is
  263. true so it might be worthwhile reading the few paragraphs on this technical
  264. matter.  Even if you know the Packet Driver story from my Novell activities
  265. skim it for a repeat performance now underway with PD + NDIS + ODI.  After
  266. that I'll mention some items about how Kermit handles Telnet.
  267.  
  268. Ethernet, Token Ring, and similar network transport systems are party lines
  269. carrying traffic for many machines and using many different protocols.  To
  270. keep the traffic flowing to the right places without ambiguity, the data --
  271. our information -- is wrapped in administrative red tape with From: and To:
  272. addresses and much more.  These ensembles are called packets or frames, and
  273. their rules of construction and manipulation are aptly named protocols, not
  274. unlike the Kermit protocol itself.
  275.  
  276. IP is one protocol, TCP is a higher-level protocol that uses IP as a shipping
  277. agent.  Novell has the SPX and (shipping agent) IPX protocols, and so on.
  278. Fortunately each of these can share the communications wire, time-sharing the
  279. party line, with the others because they obey the same rules for primitive
  280. addressing in the outermost wrapping of the packet or frame.  That's about
  281. all they have in common: they drive on the same side of the road and they
  282. recognize traffic lights.
  283.  
  284. The Internet is a massive voluntary interconnection of machines around the
  285. world.  So not only do we have local addressing to do, but we have to be able
  286. to send and receive packets through gateways to distant lands.  Interestingly,
  287. with TCP/IP we, as people, typically use the names of the machines, but on 
  288. the wire only a numerical identification is employed.  So behind the scenes
  289. name server machines have to quietly tell our program the number of the host
  290. whenever we use the name.  We say NETLAB.USU.EDU but on the wire this machine
  291. is known as 129.123.1.11, a 32-bit quantity.  As you might imagine, each
  292. protocol has its own distinct rules about names and numbers, as if the other
  293. protocols did not exist.  More alchemy.
  294.  
  295. What we see so far is that sending data bytes over Ethernet involves a lot of
  296. busy work preparing packets in just the right format, with the address of
  297. both sender and receiver and other vital administrative detail.  The wire can
  298. carry a large variety of these packets.  This means each machine hears all
  299. the packets, the network adapter board filters out all but those addressed to
  300. the itself (and the broadcasts), and the machine must have code to pick out
  301. the packets it wants and to wrap/unwrap (encode/decode) the interior shipping
  302. instructions particular to the protocol it understands.  Serial RS232-C links
  303. avoid all of this because there is only one machine at each end.
  304.  
  305. This brings us to a very local problem to be solved.  Our PC might wish to
  306. use several protocols simultaneously.  For example, a NetWare (or StarGROUP
  307. or PATHWORKS) file server is used to provide file service and we also want to
  308. use TCP/IP Telnet to log onto a remote machine in Logan, Utah (Logan is
  309. always "remote", no matter how close to it one may be).  That means both IPX
  310. and IP need to share the Ethernet (or Token Ring, etc) communications board,
  311. or we will need a board per protocol.  Thus the problem is: what hardware or
  312. software will we need to use two or more protocols simultaneously?
  313.  
  314. Until a couple of years ago the solution to the problem was to purchase a
  315. network adapter board for each protocol in each client machine.  Software of
  316. one protocol attached to a board and knew how to converse with it (that's a
  317. ticklish job known as being a device driver).  Pretty soon there were lots of
  318. different boards, and one needed to buy software tailored for each one.  In
  319. many cases, with only one board we had to reconfigure and reboot one's PC in 
  320. order to switch among different networking applications.
  321.  
  322. FTP Software Inc. of Wakefield, MA, USA, a vendor of PC-based TCP/IP
  323. programs, soon went bananas trying to write drivers for each new Ethernet
  324. board on the market.     They wisely decided that what was needed was a small
  325. piece of code, called a Packet Driver, which did all the board-specific
  326. functions yet provided a standardized interface (a virtual board) to the
  327. application software.  They wrote the Packet Driver (PD) Specification, made
  328. it public, and suggested that board makers write their own Packet Drivers so
  329. that FTP Inc and other software houses could get on with their primary task
  330. of creating useful communications programs (see John Romkey's recent article
  331. in BYTE magazine).
  332.  
  333. More came of this than they may have realized.  Two aspects make Packet
  334. Drivers very popular.  One is that the programs are tiny, only about 2.5KB,
  335. and "relatively easy" to write.  Thus software vendors can provide a PD
  336. interface as yet one more choice of board and save many tens of thousands of
  337. dollars of development effort per product per year, per vendor.  That was
  338. FTP's intention too: save internal resouces.  We benefit by lower software
  339. production costs.
  340.  
  341. The second benefit is greater from the perspective of users (vs vendors). 
  342. That is, the PD specification permits several protocols to call upon it, the
  343. owner of a single board, and each receives only the packets it wants.  The
  344. requesting program thinks it owns a whole board.  So a user can run several
  345. non-competing protocol stacks (networking software systems) at the same time,
  346. each asking for different kinds of packets, yet using only one physical
  347. network adapter.  For example, Kermit can send a file from a Novell file
  348. server to a TCP/IP host, using a single Ethernet board.  Now we are getting
  349. somewhere!
  350.  
  351. The demand for Packet Drivers became large quickly.  Individuals around the
  352. world started writing them because board vendors were too slow.  Russel
  353. Nelson, then at Clarkson University, established a clearing house for
  354. user-written Packet Drivers and made them available at no charge.  Oh boy,
  355. free and available now, available even across the network via anonymous FTP.
  356. A personal observation is that the general public, or at least a broadly
  357. based non-commercial group, is needed to make a standard take root and
  358. prosper; individual companies have their own territory and traditions to
  359. contend with.
  360.  
  361. In the interests of completeness I need to mention two roughly similar
  362. systems that arose after Packet Drivers.  The first is NDIS, Network Driver
  363. Interface Specification, by 3Com and Microsoft.  NDIS performs the same
  364. functions as a Packet Driver, and a few more.  NDIS programs are entirely
  365. commercial endeavors at present and all are much much larger than Packet
  366. Drivers.  The most recent addition to the business is Novell's Open Datalink
  367. Interface, ODI, also commercial presently and sized between PDs and NDIS.
  368. ODI includes more features that the other two.  NDIS is used by Lan Manager
  369. systems (DEC PATHWORKS, AT&T StarGROUP, 3Com 3+Open, and others); ODI is used
  370. only by Novell NetWare at this time.  It appears that all three will live
  371. side by side for some time to come.  But what about this side by side stuff;
  372. didn't we just solve that for the network adapter case?
  373.  
  374. Now a new question arises: Can I run TCP/IP with a Packet Driver interface for
  375. the program (say Kermit) together with AT&T StarGROUP together with NetWare?
  376. Golly, will demands ever end?  The answer is: it can be done, easily!  FTP
  377. Software, again, wrote a small program called DIS_PKT, and I expanded on their
  378. effort with a program of the same name.  DIS_PKT sits on top of NDIS and
  379. provides a Packet Driver interface for programs that want to communicate this
  380. way, and it allows NDIS-style programs to use NDIS simultaneously.  Dan
  381. Lanciani of Harvard has a preliminary program called ODIPKT that lets Novell's
  382. ODI material sit on top of a Packet Driver, and Don Provan of Novell has
  383. another named PDEther.  These little programs are given the trade name of
  384. "shims", and for many of us they are worth their weight in gold (saved from
  385. buying more LAN adapters, which if you recall, is where we came in).
  386.  
  387. Well, that was an educational diversion.  Back to TCP/IP in MS-DOS Kermit.
  388. TCP/IP is a mature protocol with many many features.  Telnet is a protocol
  389. sitting on top of TCP/IP which provides an error-checked terminal-like
  390. communications pathway to a host.  The software to implement Telnet, and TCP,
  391. and IP is complicated and normally fairly large.  Erick Engelke at the
  392. University of Waterloo, Ontario, Canada, wrote a TCP/IP kernel which was
  393. small enough to be considered for inclusion within Kermit itself, rather than
  394. relying on programs such as NET14 and TNGLASS coupling to exterior TCP/IP
  395. programs.  Much work later we accomplished the goal of embedding Telnet plus
  396. TCP plus IP plus a good Packet Driver interface within Kermit, for an overall
  397. cost of roughly 30KB increase of program size.  That's a bargain, folks.
  398.  
  399. Kermit includes procedures to talk with name servers to do that translation
  400. of host names to numbers.  It has procedures for Kermit to learn its own
  401. Internet address from servers of such things, via the BOOTP and RARP
  402. protocols.  BOOTP can also supply name server addresses, a gateway address,
  403. and so on.  Name resolution, etc, is all automatic from the user's
  404. perspective, and based on the nuts and bolts discussion above it had better
  405. be automatic!  The performance of built-in Telnet is much greater than the
  406. alternative of coupling to an exterior TCP/IP program via BIOS Interrupt 14H,
  407. and of course it is far faster than a serial RS232-C connection.
  408.  
  409. All connections require a communications program pay attention to the wire
  410. very frequently.  LAN connections on Ethernet or Token Ring require even
  411. closer than normal attention because packets arrive at incredible rates and
  412. will jam up in the LAN adapter unless the communications program lends a
  413. hand.  So Kermit has a small invisible background procedure to run the Telnet
  414. code while Kermit itself sits at the command prompt or is sleeping while you
  415. are shelled to DOS.  This reduces the clutter of fresh packets when Kermit is
  416. not actively seeking them directly and it keeps the host happy.  By the way,
  417. for the benefit of network managers, Kermit does not send only one data byte
  418. in an individual IP network packet.  It gathers as many bytes as will fit
  419. before a timer expires and exports few network packets.  A network monitor
  420. shows Kermit file transfer activity to look much like FTP file transfers.  I
  421. tried to make Kermit be nice to networks, and to their managers.
  422.  
  423. Another issue concerns running Kermit's Telnet path while in Windows 3.  The
  424. technical problem is the Packet Driver calls on Kermit when each new packet
  425. arrives, but Windows may move Kermit about in memory and thus the call goes
  426. to the wrong spot (Uh-Oh time).  There is a simple solution.  Using the PIF
  427. editor for a KERMIT.PIF file find the box labeled "Lock Application Memory"
  428. in the Advanced Options section.  Check it.  That says don't move Kermit in
  429. memory.  The nice consequence is Kermit is able to run in a window of
  430. Enhanced Mode, and it will continue to run even when reduced to an icon.
  431.  
  432. Having Kermit use Telnet for local or long distance communication across
  433. existing networks raises some interesting points.  The usual file transfer
  434. program for TCP/IP work is FTP, File Transfer Protocol.  Those who use it
  435. will tell you it is quick but not exactly smart nor user-friendly.  The
  436. Kermit file transfer protocol is slower because it is designed for the worst
  437. case situation of going from point A to B by many methods.  So FTP is faster
  438. than Kermit-to-Kermit file transfers on a fast link.
  439.  
  440. But: Kermit can use many kinds of links whereas FTP can't, Kermit can
  441. transfer the file time-and-date stamp, it can skip individual files or stop
  442. the entire group of files when you wish during a big transfer, it can do
  443. character-set to character-set transfers for international language
  444. documents, it can rename files to avoid destroying originals, and so on.  The
  445. process of moving information, not just raw bytes, is more advanced in Kermit
  446. than in FTP.  In addition, Kermit is driven by user feedback and we respond
  447. quickly.  FTP is not about to change much in the near future; what you have
  448. now is what you will have several years from now.  Kermit's advanced features
  449. are negotiated between any two Kermits so they always work even if one
  450. program is five years older than the other, and runs on a vastly different
  451. machine than the local PC.
  452.  
  453. It has been stated many times that there is a Kermit implementation for
  454. almost every kind of computer in this world; the size of the Columbia
  455. University Kermit archive supports it.  These programs are written by
  456. individuals, volunteers, on a not-for-profit basis (costs usually are born by
  457. them too).  New features appear at the rate which we, the volunteers, can
  458. create them; the Kermit Project at Columbia exercises overall control so
  459. matters remain coherent across Kermit software programs.
  460.  
  461. The popularity of Kermits, their responsiveness to the "marketplace" (i.e.,
  462. the users), and their ability to work together between almost any pair of
  463. machines makes Kermit an good vehicle for advancing the state of the art of
  464. information exchange across communications channels.  Kermit is not wedded to
  465. one communications method or protocol; it uses serial ports and MS-DOS Kermit
  466. uses most of the commercially available networking channels.
  467.  
  468. However, adding new features costs: in time, money, and energy of talented
  469. and experienced writers.  Each major addition, say adding 3270 emulation or
  470. advanced Tektronix graphics support to MS-DOS Kermit, becomes a significant
  471. project lasting months to years.  We are accomplishing with few people (who
  472. by the way have regular full time jobs and careers other than Kermit) what
  473. commercial software houses do with larger full-time paid staffs.  Thus major
  474. advances need the support of the entire community, particularly from
  475. commercial and government enterprises that benefit so heavily by not having
  476. to pay hundreds of dollars per program per copy per year for connectivity.
  477. Some companies have been very helpful by providing boards, software, or
  478. complete operating environments.  Those contributions are much appreciated
  479. and needed.  A firmer long-term basis is required so we can plan and
  480. implement the strategically meaningful advances.
  481.  
  482. Kermit software has saved the corporate, government, and academic sectors
  483. countless millions of dollars in its first ten years of existence.  As the
  484. sophistication and demands of computer users grow, so too does the complexity
  485. of the programming task.  If Kermit is to continue fill your needs and save
  486. you money over the next ten years, let's hope some of the well-endowed
  487. corporations and agencies that have done so well by our efforts will think
  488. about supporting them in the future.
  489.  
  490. Additional features that many of you are requesting -- more ASCII terminal
  491. emulations, multiple host sessions, 3270 emulation, ReGIS graphics, Tektronix
  492. 41xx and 42xx graphics, full integration with Windows 3.0, a fancy
  493. menu-driven user interface with internationalized locales, etc -- each of
  494. these is a massive project requiring additional dedicated programming staff
  495. if these features are to be available in a timely fashion.  I ask for your
  496. understanding when I say that these can't be provided in one or two releases.
  497. The existance of strong requests is our reward that we are doing a good job
  498. as you see it.
  499.  
  500. ------------------------------
  501.  
  502. Date: Mon, 09 Sep 1991 18:18:46 EDT
  503. >From: Erick Engelke <erick@development.watstar.uwaterloo.ca>
  504. Subject: Adding TCP/IP Features to MS-DOS Kermit
  505.  
  506. Connectivity has come to mean much more than the RS-232 wires and modems
  507. that webbed our offices in recent years.  Today's networks are connected
  508. using a plethora of incompatible networking hardware, systems software and
  509. hardware platforms.  But under the TCP/IP family of Internet protocols, all
  510. these barriers melt away.  The newest version of MS-DOS Kermit is capable of
  511. dealing with these intelligent, high-performance networks just as easily
  512. as it has worked over other communication media for years.
  513.  
  514. The Waterloo TCP (WATTCP) code was developed at the University of Waterloo to
  515. simplify creation or adaptation of TCP/IP-based utilities.  It uses a simple
  516. and well defined application programmer's interface (API) based on a loose
  517. adaptation of BSD networking functions.  The TCP portions actually execute
  518. off the application program's stack.  This unusual practice simplifies
  519. development and testing by allowing the application and the network functions
  520. to all coexist in the same task.
  521.  
  522. One of the first applications written to demonstrate the capabilities of
  523. WATTCP was a little program called TCPPORT which let Kermit or most other
  524. communications programs be used as a TELNET client.  Although it seemed to be
  525. merely an academic achievement and totalled less than 100 lines of 'C' code,
  526. I started getting a growing quantity of mail from the masses who needed the
  527. capabilities of MS-DOS Kermit in a TELNET package.  The most common reasons
  528. cited were Kermit's international character support, its unmatched emulation
  529. capabilities, and Kermit file transfers to machines not supporting FTP.
  530.  
  531. Within days I received a brief message from Frank da Cruz (C-Kermit author)
  532. who had found the program and tried it with relative success.  To anyone
  533. foolish enough to actually implement a TELNET client, there are hundreds of
  534. documents (RFCs) which are required reading and nearly one hundred of them are
  535. pertinent specifically to TELNET.  After much reading you must start the
  536. eternal process of testing your version with everyone else's implementation.
  537. One of the known problems TCPPORT had was the ability to crash some VMS
  538. systems running poor but common TCP/IP implementations.  Frank's experience
  539. from C-Kermit quickly resolved these and other problems.
  540.  
  541. By this time, Joe (author of MS-DOS Kermit) and Christine Gianone (Important
  542. Kermit Person) had entered into our mail conversations and we started
  543. discussing how we might incorporate the functionality of TCPPORT right into
  544. MS-DOS Kermit.  MS-DOS Kermit had always packed an enormous number of
  545. features into a pretty small package, but we felt we could add TELNET
  546. capabilities without increasing the executable by more than thirty kilobytes.
  547. This was a small cost for the enormous benefits.  It also a hard promise to
  548. keep - we had overlooked some hidden data areas.
  549.  
  550. As soon as he had time, Joe dove right into the project and scrutized every
  551. line of my code.  Since I had only started the WATTCP project about seven
  552. months earlier, there were a number of areas which had not been fully tested
  553. or which were incomplete.  During the Kermit-ization process, I mostly gave
  554. advice and concentrated on the TCP core section while Joe did an amazing
  555. amount of work in adapting and occasionally rewriting my efforts to fit his
  556. needs.  He also acted coordinator, so we did not have to remember what
  557. everyone else was doing.
  558.  
  559. Some of the features of my original code were of little use to MS-DOS Kermit,
  560. so it became sort of a WATTCP-Lite, actually consuming less than twenty-five
  561. kilobytes of the final Kermit executable.  Despite the occasional
  562. simplification, we kept the API identical to the documented WATTCP API,
  563. allowing us to keep our efforts coordinated for future revisions.
  564.  
  565. The process of perfecting the TELNET features was greatly simplified by the
  566. Internet itself.  Whenver we were told of problems TELNETting to a particular
  567. computer, we could KERMIT/TELNET there ourselves and solve the problems
  568. without additional help.  In fact, we used Kermit to transfer updates to each
  569. other.  This also allowed us to tune the long-distance capabilities which are
  570. essential to a TELNET program.
  571.  
  572. The final product has the benefit of Frank, Christine, obviously Joe, and the
  573. many volunteers whose efforts were too numerous to list.  This distributed
  574. group of people has once again brought MS-DOS Kermit to the leading edge by
  575. adding to its description: an excellent TELNET program.
  576.  
  577. Erick Engelke
  578. WATTCP Architect
  579. Faculty of Engineering
  580. University of Waterloo
  581. Waterloo, Canada
  582.  
  583. ------------------------------
  584.  
  585. End of Info-Kermit Digest
  586. *************************
  587.