Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!mimsy!chris From: chris@mimsy.UUCP (Chris Torek) Newsgroups: comp.emacs Subject: Re: What's wrong with flow control? Message-ID: <4629@mimsy.UUCP> Date: Mon, 1-Dec-86 10:59:38 EST Article-I.D.: mimsy.4629 Posted: Mon Dec 1 10:59:38 1986 Date-Received: Mon, 1-Dec-86 21:33:15 EST References: <3910001@nucsrl.UUCP> <388@viper.UUCP> <2518@phri.UUCP> Organization: U of Maryland, Dept. of Computer Science, Coll. Pk., MD 20742 Lines: 50 In article <2518@phri.UUCP> roy@phri.UUCP (Roy Smith) writes: >... [positive flow control] adds extra overhead, and makes the >protocol more complicated to boot. I agree with the first half of the argument, but not with the second half. Negative flow control is at least as hard to get right as positive in the presence of data link errors. (Most people ignore the link errors, wreaking havoc when it is least expected.) >It can reasonably be argued that with 9600 baud lines it doesn't much >matter if you burn a few extra characters per line of output. Most terminals cannot even stuff characters into their displays at 9600 baud (purely a personal observation), so since they are spending much of their time controlling flow, at that rate it would not matter how the control is implemented. At lower baud rates, however, negative flow control starts to look better, for it is rarely used, and when it is used, there is more time to respond. >... Let's say you tell me that it's OK to send 15 characters now. >Does that mean 15 graphic (i.e. printable) characters, or can it >include a "run confidence test" escape sequence which could take 5 >minutes to complete? Certainly. >That may be an extreme example, but consider than even a simple NL/CR >with smooth-scroll turned on may take a good fraction of a second. Modern terminals tend to have a FIFO chip in between the serial port and the code to interpret incoming characters. The size of the FIFO varies between 32 and 128 characters. (Other terminals, being computers, use interrupts and real RAM to store characters, and have 1K or more of FIFO, which is much better.) The terminal can look at the FIFO and see that there is room for 15 characters. That space is there to stay; indeed, it will increase as the terminal does more work. Both negative and positive flow controls have their uses. For direct, slow connections, negative is probably the better choice. For indirect (networked) or fast connections---4800 baud is `fast' to most terminals, though there is no real reason not to use, e.g., 38400 baud, except that most *computers* cannot use that bandwidth--- for these, positive flow control is really the only reliable alternative. But no matter which is used, flow control should always be transparent. Even ASCII provides a Data Link Escape! Alas, it is a bit late to begin using it. -- In-Real-Life: Chris Torek, Univ of MD Comp Sci Dept (+1 301 454 7690) UUCP: seismo!mimsy!chris ARPA/CSNet: chris@mimsy.umd.edu