yuan@uhccux.UUCP (04/30/87)
Thanks to all those who have taken the trouble to reply to my recent inquiry on the subject of SW Kermit. I have received requests for the informations that I've gather, but some of my replies got bounced by the mailer. So I have decided to post the summary. -=-=-=-=-=-=-=-=-=-=-=-=- Valuable Coupon. Clip & Save -=-=-=-=-=-=-=-=-=-=- Date: Mon, 27 Apr 1987 22:46-EDT From: humu!nosc!Ralf.Brown@b.gp.cs.cmu.edu ProComm 2.4.2 implements Sliding Window Kermit if the other Kermit supports it. (ProComm also supports windowed Xmodem) The theory behind sliding windows is that you don't wait for an acknowledgement on every packet before sending the next, but allow multiple packets to be outstanding. ProComm's SWK supports a window size of 31 packets--that means the other end can fire off 31 packets right away at the beginning, and ProComm acknowledges each packet as it arrives. The other end can wait for all 31 acknowledgments (assuming no timeout), and then fire off another 31 packets. This method results in an effective packet size of about 2700 bytes, while only requiring retransmission of 90 bytes* if a packet gets corrupted. *ProComm's SW Kermit limits packet size to 90 bytes. +=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=+ From: <humu!nosc!sdcsvax!seismo!uwvax!prairie!dan> Date: 28 Apr 87 09:56:22 CDT (Tue) Sliding window Kermit, or "Super-Kermit", is available in the Professional YAM communications program from Omen Technology. You can contact them at 503-621-3746 voice, or 503-621-3746 (modem, 300, 1200, 2400 baud). You can get a free demo version, very full-featured, over the modem number. The basic idea behind any sliding windows protocol is that you don't have to ACK every packet as you receive it, and before the sender can send you another. You specify to the sender a range, or "window" of packet numbers that you have buffer space to accept, and the sender keeps sending out packets up the limit of the window size. As packets on the left hand side of the window are acknowledged, the window "slides" to the right, exposing a new range of packet numbers which may now be sent. For a sliding windows protocol to be very useful, the receiver is usually allowed to group multiple ACKS in a single transmission, or to do "implied ACKing", in which if I ACK packet N, it means that I am also ACKing packets N-1, N-2, and so forth. Sliding windows protocols are important when communicating over circuits with long latencies, such as satellite channels. If it takes 2 seconds to get a packet, and two seconds for the ACK to be received at the other end, the turnaround delays become unacceptable. This is particularly awful with Kermit, whose maximum packet size is 94 bytes. Pro-YAM is a fabulous program. It supports many other useful protocols and has very powerful communications and convenience features. Check out the ZMODEM protocol it offers. ZMODEM has all the nice batch features of Kermit, but is even faster than Super-Kermit. The ZMODEM source code is in the public domain, and may be ported to Unix systems (that's what I use here). -- UUCP: {ihnp4,seismo,ucbvax,dcdwest}!sdcsvax!nosc!uhccux!yuan ARPA: uhccux!yuan@nosc.ARPA INTERNET: yuan@UHCC.HAWAII.EDU AT&T: (808) 395-1732 "I'm an Amigoid, she's an Amigoid, they're Amigoids, - Yuan Chang - Wouldn't _y_o_u like to be an Amigoid too?"
yuan@uhccux.UUCP (04/30/87)
Thans to all those who have taken the trouble to reply to my recent inquiry on the subject of SW Kermit. I have received requests for the informations that I've gather, but some of my replies got bounced by the mailer. So I have decided to post the summary. -=-=-=-=-=-=-=-=-=-=-=-=- Valuable Coupon. Clip & Save -=-=-=-=-=-=-=-=-=-=- Date: Mon, 27 Apr 1987 22:46-EDT From: humu!nosc!Ralf.Brown@b.gp.cs.cmu.edu ProComm 2.4.2 implements Sliding Window Kermit if the other Kermit supports it. (ProComm also supports windowed Xmodem) The theory behind sliding windows is that you don't wait for an acknowledgement on every packet before sending the next, but allow multiple packets to be outstanding. ProComm's SWK supports a window size of 31 packets--that means the other end can xfire off 31 packets right away at the beginning, and ProComm acknowledges each packet as it arrives. The other end can wait for all 31 acknowledgments (assuming no timeout), and then fire off another 31 packets. This method results in an ffective packet size of about 2700 bytes, while only requiring retransmission of 90 bytes* if a packet gets corrupted. *ProComm's SW Kermit limits packet size to 90 bytes. +=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=+ From: <humu!nosc!sdcsvax!seismo!uwvax!prairie!dan> Date: 28 Apr 87 09:56:22 CDT (Tue) Sliding window Kermit, or "Super-Kermit", is available in the Professional YAM communications program from Omen Technology. You can contact them at 503-621-3746 voice, or 503-621-3746 (modem, 300, 1200, 2400 baud). You can get a free demo version, very full-featured, over the modem number. The basic idea behind any sliding windows protocol is that you don't have to ACK every packet as you receive it, and before the sender can send xyou another. You specify to the sender a range, or "window" of packet numbers that you have buffer space to accept, and the sender keeps sending out packets up the limit of the window size. As packets on the left hand side of the windoware acknowledged, the window "slides" to the right, exposing a new range of packet numbers which may now be sent. For a sliding windows protocol to be very useful, the receiver is usually allowed to group multiple ACKS in a single transmission, or to do "implied ACKing", in which if I ACK packet N, it means that I am also ACKing packets N-1, N-2, and so forth. Sliding windows protocols are important when communicating over circuits with long latencies, such as satellite channels. If it takes 2 seconds to get a packet, and two seconds for the ACK to be received at the other end, the turnaround delays become unacceptable. This is particularly awful with Kermit, whose maximum packet size is 94 bytes. Pro-YAM is a fabulous program. It supports many other useful and has very powerful communications and convenience features. Check out the ZMODEM protocol it offers. ZMODEM has all the nice batch features of Kermit, but is even faster than Super-Kermit. The ZMODEM source code is in the pblic domain, and may be ported to Unix systems (that's what I use here). -- UUCP: {ihnp4,seismo,ucbvax,dcdwest}!sdcsvax!nosc!uhccux!yuan ARPA: uhccux!yuan@nosc.ARPA INTERNET: yuan@UHCC.HAWAII.EDU AT&T: (808) 395-1732 "I'm an Amigoid, she's an Amigoid, they're Amigoids, - Yuan Chang - Wouldn't _y_o_u like to be an Amigoid too?"
daniels@cae780.UUCP (04/30/87)
In article <454@uhccux.UUCP> yuan@uhccux.UUCP (Yuan Chang) summarizes: >From: humu!nosc!Ralf.Brown@b.gp.cs.cmu.edu >...advantage of Sliding Window is a large effective transmission block, >but a small retransmission required on corruption. >From: <humu!nosc!sdcsvax!seismo!uwvax!prairie!dan> >...to be very useful, the receiver is usually allowed to group multiple ACKS Another advantage of such protocols is that they allow a "reasonable use" of a carrier such as a sequence of "store-and-forward" style machines. When sending a huge file on such a medium without a "Sliding Window", the two strategies that are normally used are: 1) dribble (send,wait for ack,loop). This can be orders of magnitude slower than required for data transmission, tunring a large file transfer into an overnight event. or 2) Balloon: (dump everything into the network and then wait for an ack) This can use up all of the storage on a network very quickly (imagine the receiving end is processing input very slowly). In the extreme version of this technique, the network becomes a storage device. SW allows a sort of "load balancing" by limiting the total amount of data in the network at any one time, but allowing continuous transmission if the recieving end is keeping up with the transmitter (and the number of packets in the window is large enough).