home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #31 / NN_1992_31.iso / spool / comp / archives / msdos / d / 110 < prev    next >
Encoding:
Internet Message Format  |  1992-12-22  |  16.6 KB

  1. Xref: sparky comp.archives.msdos.d:110 comp.binaries.ibm.pc.archives:5213 comp.dcom.modems:18410
  2. Newsgroups: comp.archives.msdos.d,comp.binaries.ibm.pc.archives,comp.dcom.modems
  3. Path: sparky!uunet!walter!porthos!navaho.cc.bellcore.com!dml7
  4. From: dml7@navaho.cc.bellcore.com (lee,danny)
  5. Subject: *** WHAT'S THE BEST COMM PROTOCOL {LONG SUMMARY} ***
  6. Organization: Bellcore, Livingston, NJ
  7. Date: Tue, 22 Dec 92 20:38:02 GMT
  8. Message-ID: <1992Dec22.203802.13335@porthos.cc.bellcore.com>
  9. Sender: netnews@porthos.cc.bellcore.com (USENET System Software)
  10. Lines: 353
  11.  
  12. _________________ABSTRACT_________________
  13.  
  14. Subject: *** WHAT'S THE BEST COMM PROTOCOL ***
  15.  
  16. here's a summary of the replies/forwards i've received.  thanks to
  17. all for your help.  seems like the _OLD_ versions of kermit are very
  18. slow.  the newest version is 3.12.  this version is comparable to
  19. zmodem, though zmodem is still faster i gather.  kermit however is
  20. more readily available and accessible in various operating systems,
  21. whereas with zmodem, one would have to port the appropriate sz and
  22. rz code over.  zmodem has the ability to continue a file transfer
  23. at a point where it was broken off previously.  don't know whether
  24. the newest version of kermit has this ability.  zmodem also uses
  25. a crc-32 bit error checking, which is more reliable than what
  26. kermit uses (checksums).  i do not know whether kermit's new version
  27. uses something different.  refer below for more info.  note that
  28. comments/questions by me will be preceded by a ">>>>>>>".  have a safe
  29. and merry one!  should there be more interest on this discussion, please
  30. continue it on the newsgroup.  not all responses were included, since
  31. many were redundant, and some responses may be cut short.  thanks once
  32. again.
  33.  
  34. dan
  35.  
  36. _________________QUESTION_________________
  37.  
  38. i'm having trouble deciding which communications protocol package to
  39. use on my pc.  i was using kermit and still using it.  however,
  40. someone mentioned to me that zmodem was much better and faster.
  41. one can assume that speed and reliability are the main factors
  42. to consider.  which one (kermit or zmodem, or any other ones)
  43. would permit one to download/upload most efficiently and most
  44. quickly?  obviously, modem speed plays a role as well.  please
  45. e-mail me below or post.  i will summarize should there be enough
  46. interest.  thanks in advance.
  47.  
  48. _________________ANSWERS_________________
  49.  
  50. I find that ms-kermit 3.11 or 3.12 transfers data at over 80% of 2400
  51. baud (my modem speed)--I doubt if significant improvement is possible.
  52. No experience at 9600.  386sx with MS-DOS 5, local phone connection of
  53. average quality (a few percent retries).  Transferring data from a 
  54. MicroVax II with c-kermit 5A.  Block size about 940 bytes, 2 sliding
  55. windows.
  56.  
  57. _______
  58.  
  59. most comm programs now should automatically support zmodem as well as
  60. ymodem and xmodem, internally.  that is they have it as part of the
  61. program.  if you don't have it you could get dsz1209.zip which does the
  62.  
  63. >>>>>>> i've checked oakland, a mirror site for simtel.  seems like
  64.         dsz1109.zip and gsz1109.zip are the newest versions.  correct me
  65.         if i'm mistaken.
  66.  
  67. above mentioned.  you call it from within the comm program.
  68. zmodem is the fastest, much more so than kermit.  but if you really want a
  69. good comm protocol, i suggest hslink or bimodem.  with this you can
  70.  
  71. >>>>>>> any confirmation on this?  hslink and bimodem being faster
  72.         than zmodem.  these types of programs would prove most useful
  73.         for file transfers between 2 dos machines, since i would
  74.         imagine not too many other operating systems would support them.
  75.  
  76. download and upload at the same time!  the speed is about the same as
  77. zmodem.  but with zmodem could can only do upload OR download, but not
  78. both at the same time.  hslink is very easy to install.  i have problems
  79. with bimodem.
  80.  
  81. the best solution is to put out $250 and get a 14.4k modem.  then
  82. everything will be fast enough that you really don't care if it's kermit
  83. or zmodem...
  84.  
  85. _______
  86.  
  87.     Sorry I didn't explain the difference very well.  The new version of
  88. kermit that someone was referring to was most likely long block kermit.
  89. It is fast in that the packets it sends are larger so it does not have 
  90. to send and then wait for a response 60 times a minute, only 10 for example.
  91. Zmodem uses Cyclic Redundancy Checking modulo 32 (CRC-32) which is nothing
  92. more than an error control protocol.  It it able to send a great deal of
  93. data very quickly and check for errors and recover from errors at the same
  94. time.  Kermit on the other hand is VERY slow as it was one of, if not THE,
  95. first protocol.  It is great for moving data between generally incompatible
  96. machines like a UNIX box and a DOS machine or a UNIX box and an IBM mainframe.
  97. Kermit is implemented on most everything where zmodem is quite new and is
  98. not yet supported everywhere.  There are tons of protocols out there like
  99. Y-modem, y-modem-1k, kermit, compuserve B+, x-modem, z-modem and countless
  100. others.  Again, as I said, I love zmodem and only use that.  I just ported
  101. the code onto our NeXT machines and Sun Sparc stations so I can download/upload
  102. to my DOS machine at home.  It's nice when something goes wrong during a 
  103. download and you can pick up from that exact point instead of having to
  104. start the complete download over again.  Hope this helps.  
  105.  
  106. _______
  107.  
  108. Slowest <--------------------> Fastest
  109. kermit    xmodem    ymodem    zmodem
  110.  
  111. For the MS-DOS world, Procomm+ has good terminal emulation
  112. and file transfer protocols.
  113.  
  114. >>>>>>> i use procomm + for windows.  would anyone know what versions
  115.         of kermit and x/y/z/modem it is using?  it wouldn't be too hard to
  116.         configure it to use newer versions that i download, would it?
  117.         does anyone have a favorite communications package they use?
  118.         i heard telix is pretty good, but haven't tried it myself.
  119.         
  120. FIle transfer speed is affected by modem configuration, too,
  121. unless one is using a non-MNP or V.42bis modem.
  122.  
  123. _______
  124.  
  125. A sliding window speeds up transmission in the presence of retries.  Up to
  126. 4 may be used on very noisy lines.  The more windows, the smaller the block
  127. size, which also makes sense on noisy lines.  If retries are very infrequent,
  128. do not use any (set windows 1, not 0).  I don't understand the exact details.
  129.  
  130. _______
  131.  
  132. I prefer KERMIT.  Most people who complain about KERMIT being slow, 
  133. have not used the newer versions.  ZMODEM is faster than old kermit
  134. because it has 2048 buffers and sliding windows.  The latest and
  135. greatest Kermit also can handle big buffers and sliding windows.  I think
  136. ZMODEM is slightly more effiencent (a byte or two less overhead) but that
  137. is overshadowed by KERMIT's popularity and versitility.
  138.  
  139. Most comercial packages that support "kermit" do not support these features
  140. while versions from columbia do. 
  141.  
  142. I use KERMIT (with BB and sliding windows) to/from the VAX at work and
  143. routinly get over 900cps sending compressed data over a 9600bps circuit.
  144. I use ZMODEM when talking to BBSs becuase they don't have any advanced
  145. Kermit and they are used to ZMODEM and get the same results.
  146.  
  147. In your summary you may want to differentiate the older versions of kermit
  148. from the newer ones.  If people don't know the difference they probably
  149. mean the older one.
  150.  
  151. _______
  152.  
  153. For file transfer I use zmodem, it is faster and more reliable.
  154.  
  155. Kermit
  156.  Has the advantage of working on old equipment that can't handle a
  157.  streaming protocol.  The university had some old equipment that would
  158.  noticably slow down if 4 or so people tried to use zmodem.
  159.  
  160.  Disadvantage error detection is a checksum.  Will not get a correct
  161.  file on a real noisy phone line.
  162.  
  163.  Effective transfer rate is about half the bit rate on the line.  2400
  164.  bps modem will transfer at about 1200 bps (120 char/sec).
  165.  
  166. zmodem
  167.  Uses a crc for error detection.  It will detect more errors, but I
  168.  don't think it runs at all on a real noisy line.
  169.  
  170.  Has data compression that can be used.  At 2400 bps transfer rate is 
  171.  about 200 char/sec; on same file with compression I get 440
  172.  char/sec.  With zmodem transfer rates vary with the file being
  173.  transfered, and how mush compression varies widely.
  174.  
  175. _______
  176.  
  177. The answer is rather unambiguously zmodem.  If one speaks of the
  178. different telecommunications packages, there are many of them in
  179. use, and the opinnions can be quite divided.  But as for file
  180. transfers zmodem seems to dominate in actual usage.  I am not being
  181. partisan, but rather observing the current practice.
  182.  
  183. If one goes down to details, all transfer protocols have their
  184. proponents, and if you can lay your hands on kermit with long
  185. packages, it is fair, too.  But it has one drawback which I don't
  186. like at all.  That is that it does not preserve the file's date
  187. stamp in the transfer.
  188.  
  189. _______
  190.  
  191. In my limited experience, Zmodem beats Kermit easily.  The implementations
  192. of Kermit that I've used (VAX/VMS and IBM/CMS) are both far too slow
  193. (barely faster than XMODEM), running in the 7 to 9K per minute range w/ my
  194. 2400 bps modem (very approximate times; I haven't used it in a while...). 
  195. Zmodem (using DSZ or GSZ from Omen Technologies on the PC end and SZ [also
  196. Omen] on our VAX - both available from SIMTEL20, etc.) generally gives
  197. slightly over 13K per minute, along with better error correction, crashed
  198. transfer recovery (if a large file xfer crashes in midstream, you can pick
  199. up where it left off instead of restarting from the first byte), and a very
  200. nice graphical (sort of) interface if you use GSZ instead of DSZ.
  201.  
  202. Possible disadvantages: finding Zmodem for whatever system you're
  203. transferring FROM (I presume there's a UNIX implementation?) if it's not
  204. another PC, and, of course, paying the fee.  DSZ and GSZ are shareware;
  205. MS-Kermit is free (as, presumably, is the Kermit that's built into whatever
  206. other comm program you might be using now).  The VAX/VMS version of SZ,
  207. incidentally, refuses to communicate with non-Omen Zmodem programs. 
  208. Between 2 PCs, though, I presume you could use a FREE Zmodem
  209. implementation, one or two of which are also at SIMTEL.
  210.  
  211. _______
  212.  
  213. I'll probably go check out the kermit newsgroup after I post this, but 
  214. I think it might be relevant here too.
  215.  
  216. Has anyone heard of/used a new addition called SuperBlock Kermit?  I believe
  217. it was originally developed for use with the unix clone Coherent, and has
  218. since been ported to the NeXT platform as well.
  219.  
  220. Now, I'm not sure on the details, but supposedly it's a streaming protocol
  221. like zmodem.  Zmodem (and I may be wrong here, so feel free to correct me),
  222. when it determines that it's received a bad block (via CRC checks?), it 
  223. signals the sender to restart at block such-and-such, and start over from 
  224. there.  Evidently the new kermit, instead of resending everything from 
  225. that block on, justs asks for that specific block.  So, if you do have
  226. and err, it tries to just fix that one block rather than starting over.
  227. As a result, it's supposed to get better transfer rate than zmodem.  Of 
  228. course, I still don't know anything about crash recovery (that is, 
  229. picking up from where you left off after an aborted transfer, zmodem
  230. may still be better for that).
  231.  
  232. Does anyone know if this is true, and if so, where I can get binaries for
  233. DOS and source for unix?
  234.  
  235. Like I said, this may be better asked in the kermit group, but it might
  236. be of interest to people here as well.
  237.  
  238. _______
  239.  
  240. Let's get very specific about what you need to do to make Kermit run at near
  241. Zmodem speeds. Here are the settings I use:
  242.  
  243. set send packet 2000
  244. set rec packet 2000
  245. set window 2
  246.  
  247.  ..no claim that this is optimimum for your (or any situation) but it does
  248. speed up kermit something fierce for me; especially at higher serial speeds. 
  249.  
  250.  Zmodem is essentially Xmodem with bigger packets and sliding
  251. windows (plus a few nice extra enhancements) which is about what these commands
  252. do to any reasonably recent and complete Kermit. Kermits usually are set
  253. up to use the ancient settings by default for backwards compatability,
  254. which makes it look a lot worse than it is if you don't take the time
  255. to experiment a bit. 
  256.  
  257. _______
  258.  
  259.     Older versions of Kermit were very slow in file transfers.
  260. The newer versions (>3.1) are much better.  In my tests, it runs
  261. at least 90% of the zmodem speed.  However, for text files, the
  262. zmodem compress option (-B) gives zmodem a clear advantage.
  263.     However, zmodem is much more vulnerable to line noise.
  264. Our lines are often noisy; zmodem gets what it thinks is an
  265. abort signal and drops the line.  Kermit's quit-and-go-home
  266. signal is longer, or something, as it almost never gets fooled
  267. by line noise.
  268.     I often collect several files and then start the download
  269. (~0400) just before I go to bed.  This is rarely successful with
  270. zmodem, while kermit almost always succeeds.
  271.     On the other hand, zmodem has a restart capability that
  272. will complete a partial file.
  273.     So, for short, esp ascii files, use zmodem.  For long
  274. unattended transfers, use Kermit.
  275.  
  276. _______
  277.  
  278. While xmodem and zmodem might provide some percentage gains (sometimes
  279. small, somtimes rather large[in the range of 30% or so]) in file transfer
  280. rate, it is all meaningless if they just won't work for you.
  281.  
  282. Kermit always uses a standard set of ASCII characters for transmitting
  283. the data (even in binary format?) that is immune to the problems that
  284. arise using the other transfer formats when the data being transferred
  285. is a XON, XOFF or any of a number of other control characters used in
  286. text flow/format control.  This makes kermit the format of choice for
  287. users who have there system connected to a data network via a terminal
  288. server or 4-line rs-232 connection that does not have hardware flow
  289. control, thus requiring XON/XOFF flow control.
  290.  
  291. I have looked at the man page and help output for xmodem, and do not
  292. see any way of altering it to avoid the XON/XOFF problem.  If it's
  293. there, I'm sure we'll hear about it.
  294.  
  295. It's kind of like the archiver controversy;
  296.   each may have some aspect that is better than the others,
  297.   and you have to use the appropriate one for the target of your operation,
  298.   so you need to keep them all around to use when the need arises.
  299.  
  300. >>>>>>> very good point.
  301.  
  302. >I have looked at the man page and help output for xmodem, and do not
  303. >see any way of altering it to avoid the XON/XOFF problem.  If it's
  304. >there, I'm sure we'll hear about it.
  305.  
  306. I am using ZMODEM through a network controller which uses ascii 30 to
  307. do an escape to command-mode.  Therefore I use the sz/rz -e option,
  308. which basically avoids using codes less than 32 -- this also avoids the
  309. XON/XOFF problem (I believe). 
  310.  
  311. As it converts these characters to two character sequences, the transfer
  312. get longer -- but works without a hitch.
  313.  
  314. Please note that this ONLY applies to rz/sz programs which implements
  315. this particular feature of ZMODEM.  I believe ZMODEM to be the most
  316. simple protocol to implement; kermit may be smarter but still _very_
  317. difficult to get right when having routines in your own programs.
  318.  
  319. _______
  320.  
  321.  If you get a copy of Kermit which is less than a few years old
  322.  and which does both long packets and sliding windows, then the
  323.  file transfer efficiency matches that of Zmodem within a
  324.  percentage point or so (by actual tests done by others and
  325.  myself).
  326.  
  327.     If you get one which is fairly recent and which also supports
  328.  the SET FILE TYPE LABELED option, then it will preserve all file
  329.  attributes during transfers.  This is dependant upon what the
  330.  operating system supports and having a recent version of Kermit.
  331.  
  332.     I find Kermit is better for text transfers between dissimilar
  333.  operating systems, as it converts file types.  It's also better
  334.  for multiple transfer operations as you can put one of the
  335.  Kermits into server mode.
  336.  
  337.     If you are working to a system which does not have Kermit
  338.  which supports long packes, then Zmodem will have better file
  339.  transfer efficiency.
  340.  
  341. _______
  342.  
  343. >Let's get very specific about what you need to do to make Kermit run at near
  344. >Zmodem speeds. Here are the settings I use: 
  345. >set send packet 2000
  346. >set rec packet 2000
  347. >set window 2
  348.  
  349. >up to use the ancient settings by default for backwards compatability,
  350. >which makes it look a lot worse than it is if you don't take the time
  351. >to experiment a bit. 
  352.  
  353. Time which I took long ago, before switching to Zmodem.  Our local VAX has
  354. an older Kermit (VMS Kermit-32 version 3.3.126), which only supports packet
  355. lengths up to 1000 and doesn't do sliding windows (as far as I could find,
  356. anyway).  It was far easier to grab the VMS Zmodem from SIMTEL20 and start
  357. using that than it would have been to convince our system administrators to
  358. upgrade Kermit.  And given Zmodem's crash recovery, strong error checking /
  359. correction (it's never given me an unrecoverable error due to anything but
  360. one machine or the other going down...), and nifty  graphical display
  361. (courtesy GSZ), I doubt that I'd go back even if they did upgrade.
  362.  
  363. However, the bottom line seems to be that the BEST protocol for any
  364. situation depends more on the situation than it does on the protocol....
  365.