Date: Tue, 18 Jan 94 13:00:54 EST From: iedh1@agt.gmeds.com ( Daniel J. Hofferth (317) 230-4791 AGT/8896) Subject: High Speed Modem Musings Hi all, I've now spent a month or so with a new V.32bis (14.4KB) modem that gave me a variety of little fits until I finally got everything running just right. I was upgrading from a 2400 baud modem, and I was mentally unpre- pared for the many complications introduced by the much higher speeds. The new modems are NOT always plug-n-play replacements for older models. While quietly researching solutions, I've noticed quite a few postings in different lists/digests (such as this one) from people who are suffering from problems similar to those I have puzzled over. In the hope of help- ing someone else, I am posting the problems I had (that I've now learned are fairly common) and solutions that worked for me. Think these are FAQ's? Maybe so, but I couldn't find answers in any one place. Interesting thing is, these seem like perfectly natural problems waiting for unsuspecting slow modem users who are about to move up. All problems posted below are related to high-speed (HS) communications, and they occurred while using both CTB and non-CTB applications (Apple's Communications Tool Box): 1) Trouble establishing a connection. I had my modem attached to the wall jack via a long (50 feet) ribbon style phone cable... the kind where the wires run parallel to each- other in a semi-clear casing . To make matters worse, it ran in long straight lengths (around an intermediate room), and then into a tangle of power cords for the computer. It was a great antenna, but a lousy HS modem extension. It worked just fine for the 2400 baud modem, mind you. Went to Radio Shack and picked up "twisted pair" phone cable (cheap). Then rerouted it away from the power cords. Bingo - connections made. I understand there is also a "high-twist" wire available for data- grade communications. What I bought worked fine for me... my house uses the standard twist in the walls... I didn't see any sense in going to data grade for just this one length. They also sell line filters to weed out noise - didn't need that either. 2) I could now connect at HS with error correction and flow control, and work the user-interface without apparent trouble, but file transfers kept causing my modem to hang-up abruptly. The Mac's serial port issues the hardware-handshaking (HH) signal on a pin that HH-cables also carry to DTR on the modem. My modem was set to hang-up on loss of DTR (AT &D2), when it should have been told to ignore DTR (AT &D0). No more unexpected hang-ups. For the older modem, this was not an issue - it used Xon/Xoff handshaking. 3) No more hang-ups, but high speed uploads and downloads were full of packet-errors. Effective throughput was only about 700-800 cps. I knew that I had a HH-cable, software that had HH support enabled, and a modem-to-modem connection that was error correcting and flow controlled. But I was still getting sporadic packet errors on file transfers. Clearly HH wasn't working. I got out my multi-meter and tested the cable supplied by the modem manufacturer. It WAS a HH-cable, but not wired as suggested by Apple... I'm no EE, but it seemed worth swapping out to me. At my local computer store I bought another HH-cable (after being assured that I could return it if it didn't work), brought it home and tested it with the meter. This one was almost identical to Apple's version except that pin-7 (GPi) on the Mac side wasn't connected. As I gather from other readings, GPi is a special purpose pin that isn't used by simple home connectors like me. I tried the new cable, and file transfers were MUCH cleaner, but still not perfect. 4) File transfers still suffered from packet errors if I switched to another application, or simply held the mouse button down on a menu. Otherwise, they were going O.K. What now?! Apple claims the priorities for a variety of system related tasks can cause the Mac to miss incoming information. They suggest the following guidelines for improving the CPU's attention to the serial port: - Limit your Mac-to-modem connection to 19.2KB. While the new modems can theoretically achieve throughput of up to 56KB, this is almost NEVER really done. Text file transfers can reach 3500 cps (or so), but most file transfering that we do is on already compressed files. Throughput for these is much closer to the modem-to-modem implied speed of 1440 cps. Thus, 19.2KB is fast enough for general use. 38.4KB may be safe if you Mac is fast enough (mine isn't). - Don't use 24-bit mode, stick to 32-bit addressing. 24-bit addressing mode apparently peppers the CPU with extra interrupts that clouds its ability to watch over the serial port flow control... possibly resulting in missed characters. - Don't use virtual memory. Same reasoning as above. The overhead required to manage the virtual memory impares the systems ability to keep up with the flood of serial port data. I was already at 19.2KB between my Mac and modem (having already learned that 38.4KB greatly increased my problems), but I was still in 24-bit mode with virtual memory on. I've been pretty religious about collecting only 32-bit clean software, and I've got enough real RAM to turn VM off without problems, so following these guidelines was painless for me. And they worked. I now have rock-solid high speed connections on a slow Mac, and file transfers that are robust enough to let me switch between applications without packet errors. By the way, to those of you who wonder about file transfers that abort when you try to launch a big application, or impose some other long pause... To me this doesn't necessarily imply a handshaking error, perhaps the computer you were connected to decided it had waited long enough and simply timed-out? Short pauses should certainly be handled without errors, but the longer you go - the more likely it is that the host gave up. No? I read one interesting comment from a modem manufacturer... They noted that Apple's serial port buffer is painfully small, making the timing on handshaking a critical and touchy issue. They noted that as modem speeds have increased, fortunately so have Mac speeds - thus somewhat compensating. Apparently, we slow Mac owners seem to be in the yellow zone in the war between CPU horsepower and modem data flow. It doesn't take much to tip the battle one way or the other. Sorry for the length of this, but I hope it helps someone else. Dan Hofferth iedh1@agt.gmeds.com