mike@ac.dal.ca (04/09/90)
In article <14836@s.ms.uky.edu>, slogan@ms.uky.edu (Stan Logan) writes: > The kermit and xmodem protocols MAY be near each other in transfer time, I > don't know. But I do know that the c64 implementation of Kermit is the > bottleneck in any case. The packets it transfers are <100 bytes long, while > XMODEM transfers 256 bytes at a time. Sorry, only Punter Protocol transfers 256 bytes... Standard Xmodem does 128 bytes, and Xmodem1-K does 1024 at a time.. and xmodem is very much faster than kermit... and punter is faster still...
acliu@skat.usc.edu (Alex C. Liu) (04/10/90)
In article <1424@ac.dal.ca> mike@ac.dal.ca writes: >Sorry, only Punter Protocol transfers 256 bytes... Standard Xmodem does 128 >bytes, and Xmodem1-K does 1024 at a time.. and xmodem is very much >faster than kermit... and punter is faster still... Actually, Punter and Xmodem have around the same software overhead. Let's see, Xmodem uses a 4 byte header per 128 bytes or 5 bytes in the case of Xmodem CRC. So in average Xmodem blocks are 132 bytes long. punter needs a 7 byte header per 255 bytes. (Note, Punter uses 255 byte blocks, not 256 bytes!) That is 263 bytes per block. For HandShacking, Xmodem sends single byte codes i.e. <ACK> and <NAK>s Punter uses a more Complex protocol that instead of sending a single Byte Code would seend a 3 byte code plus another 2 3 byte codes for control. In other words, it would transfer 9 bytes in between blocks. Now, in order to send 128 bytes, Xmodem will add 5 (or 6 in the case of CRC mode) extra bytes. Punter for every 255 bytes, would send 16 extra bytes. So in average Punter is sending about 8 extra bytes per each 128 bytes. From this, I would say that Punter has a LOT more overhead than Xmodem. But, Punter DO have some advantages over Xmodem, in the sense that Punter is a lot more robust than Xmodem, and it will not increase the file size. ______________________________________________________________________ Alex C. Liu | INTERNET: acliu%skat@usc.edu Voice: (213) 749-2730 | BITNET: acliu%skat@gamera Q-Link: Alejandro | UUCP: ...!usc!acliu
geoffw@xenitec.on.ca (Geoffrey Welsh) (04/10/90)
In article <1424@ac.dal.ca> mike@ac.dal.ca writes: >Sorry, only Punter Protocol transfers 256 bytes... Standard Xmodem does 128 >bytes, and Xmodem1-K does 1024 at a time.. and xmodem is very much >faster than kermit... and punter is faster still... Let me clear up some ideas people have about 'new Punter' (C1) protocol: XMODEM may only have a block size of 128 bytes, but it requires only one ACK per block. C1's block size is 255 bytes (of which seven are used for block numbers, checksums, etc.), but it must double-handshake every block: send receive <block> GOO/BAD ACK S/B <block> So, there are 4 turnarounds for every 248 data bytes sent, and a byte overhead of 2.7%. XMODEM offers 2 turnarounds for every 128 bytes of data sent (4 per 256) and, with 4 or 5 extra bytes per block depending on checksum or CRC mode, a byte overhead of 3% or 3.7%. So, what's this all mean? The lower byte overhead suggests that C1 might be faster where the main time delay is getting the data through, e.g. over a 300 bps modem. However, XMODEM's slight edge in the data squeezed through per turnaround makes them about even at higher speeds (1200/2400) and makes it look good at 9600 or over long distance connects. As has been pointed out, XMODEM-1K will need even fewer turnarounds so it gets much better performance. Your mileage may vary. How good each protocol is doesn't count for squat if the CODE is slow & sloppy. If your fave terminal does Punter much faster than it does XMODEM, I'm willing to bet that it's because the author simply copied Steve Punter's C1 routines (which are reasonable, if not amazing) but used some really poor routines for XMODEM. Geoff UUCP: watmath!xenitec!zswamp!root | 602-66 Mooregate Crescent Internet: root@zswamp.fidonet.org | Kitchener, Ontario FidoNet: SYSOP, 1:221/171 | N2M 5E6 CANADA Data: (519) 742-8939 | (519) 741-9553 My comments do not represent and should not obligate anyone but myself.