[comp.protocols.appletalk] Routers that can support > 2 Localtalk connections?

pascal@altitude.UUCP (Pascal Gosselin) (03/15/90)

tom@wcc.oz (Tom Evans) writes:

>In article <1990Mar10.160033.16149@altitude.UUCP>, pascal@altitude.UUCP (Pascal Gosselin) writes:

>(Summary of how a class of kids on 18 Macs can kill a network by all
>launching stuff at once)
> 
>>      I have proposed (and will be testing Tuesday) installing Liaison 2.0
>> on the SE/30 and thus DOUBLE the throughput of the network (The SE/30's
>> horsepower is such that the routing necessary on one of the Atalk Zones
>> to access the server will entail a negligeable delay, I've tested this   
>> before with Liaison on Ethernet servers doubling as Localtalk<->Ethertalk
>> routers.

>Nope. Your test should show little improvement, and if it does then
>not for the reason you expect. LocalTalk in a Mac is CPU-INTENSIVE.
>The CPU has to manually send a byte out the LocalTalk port once every
>34uS or so. While it is doing this it CAN'T DO ANYTHING ELSE,
>especially not send data out another LocalTalk port. Thus the total
>throughput from a Mac running two LocalTalk ports is the same as from
>the same Mac running one Localtalk port.

    I have run the test, and the throughput IS improved.  I DO AGREE that
killing the network with 18 launches is torture, but this is no reason for
having 0% efficiency on the network.  I have contacted the person reponsible
for the MacJanet server software at Watcom, he's going to look into the problem.
You see, this problem (absolute total network hangup with MacJanet server) seems
to happen with a VERY specific hardware/software combination.  We have other
schools running it (and they run it hard at the University of Waterloo) (the
MacJanet software) and they have not reported similar problems.

    Basically, I found that having one Mac Plus on both zones lauching
Mac Draw II 1.1 at the same time dropped the load time from 55secs to 40secs.
The speed is obviously not doubled, as floppy accesses on the Mac Pluses
account for quite a bit of the required load time.  As for implying that an
SE/30 cannot handle two localtalk ports at 230.4kbps, I do not have the
technical knowledge to challenge you on this claim.  However, it seems ODD
that a lowly Mac Plus is capable of handling 230.4kps while the SE/30, with
5 times the processing horsepower, could not handle twice as many interrupts???
Does this imply that an SE/30 is using 99% of it's CPU ressources, like a
Mac Plus might seemingly does, to handle a single Localtalk port????

    I also think that splitting the network in two (as I have tried) might
help ease the latency problem that has everyone retrying for what they
think are packets that never got there??? (i.e. 9 macs instead of 18 per
network should help, right?)

    Liaison 2.0 also has a setting for the amount of CPU that it dedicates
for the bridging functions, enabling this feature seems to give the best
performance when a dedicated server is used as a bridge (since menu/mouse
responsiveness is not a factor).  As for the reduced CPU time given to the
application (i.e. AppleShare), it's no big deal as only a few milliseconds
of hard disk transfer time translates into quite a few seconds of Localtalk
transfer.

    I have NEVER seen an AppleShare file server die from excessive network
traffic.  I will be glad to post a few "unofficial" benchmarks once the
bugs are ironed out on the server (BTW, Liaison is NOT killing the server,
I merely installed it to see if it would help out). 

    It is unfortunate that Localtalk is so slow and that the speedup solutions
seem as expensive as local hard disks.
   
-- 
+--------------------------------------------------------------------+
| Pascal Gosselin          |   philmtl!altitude!pascal@uunet.uu.net  |
| Computer Connection Inc. |     (514) 674-1514     CIS: 72757,1570  |
+--------------------------------------------------------------------+

tom@wcc.oz (Tom Evans) (03/20/90)

Followups to email (except info on Liaison), I'm embarrased at the
length this answer has grown to.

pascal@altitude.UUCP (Pascal Gosselin) writes:
>tom@wcc.oz (Tom Evans) writes:
>>In article <..etc..>, pascal@altitude.UUCP (Pascal Gosselin) writes:
>>(Summary of how a class of kids on 18 Macs can kill a network by all
>>launching stuff at once)
>> 
>>>      I have proposed (and will be testing Tuesday) installing Liaison 2.0
>>> on the SE/30 and thus DOUBLE the throughput of the network 
>>> ...
>>
>>Nope. Your test should show little improvement, and if it does then
>>not for the reason you expect. LocalTalk in a Mac is CPU-INTENSIVE.
>>The CPU has to manually send a byte out the LocalTalk port once every
>>34uS or so. While it is doing this it CAN'T DO ANYTHING ELSE,
>>especially not send data out another LocalTalk port...
>
>    I have run the test, and the throughput IS improved.
>...
>    Basically, I found that having one Mac Plus on both zones lauching
>Mac Draw II 1.1 at the same time dropped the load time from 55secs to 40secs.

I am a little surprised at this drop. Two Macs launching an app. aren't
a 100% load on a LocalTalk channel, but about two should do it. If you can,
please extend your testing to include the following:

	1. Time for one Mac to launch,
	2. Time for two on one network and two on two networks,
	3. Time for four on one network and four on two networks.

Do the tests at least 4 times to allow for the cache in MacJanet
to stabilise. How repeatable/variable are the numbers? How long is a
launch off a local floppy/hard disk (for comparison)?

Try loading Disinfectant instead - this might spend less time loading
from the floppy drive (it does here) and make the timings better.

The improvement might be due to LocalTalk's backoff/defer/collision logic.
Two Macs on one network get collisions and defers, while two on two only
get collisions and no defers. This changes the backoff times.

>The speed is obviously not doubled, as floppy accesses on the Mac Pluses
>account for quite a bit of the required load time.  As for implying that an
>SE/30 cannot handle two localtalk ports at 230.4kbps, I do not have the
>technical knowledge to challenge you on this claim.  However, it seems ODD
>that a lowly Mac Plus is capable of handling 230.4kps while the SE/30, with
>5 times the processing horsepower, could not handle twice as many interrupts???

Please read my previous answer again. While the CPU is handling one
LocalTalk channel it CAN'T DO ANYTHING ELSE. Interrupts are disabled - it
won't recognise any interrupts until AFTER it has finished sending/receiving
 the packet. It COULD handle "twice as many interrupts" (or 5 times) IF 
THEY WERE TURNED ON, but they're not.

>Does this imply that an SE/30 is using 99% of it's CPU ressources, like a
>Mac Plus might seemingly does, to handle a single Localtalk port????

Yes. It's just waiting for the next byte 5 times as fast as a Plus does.

There's a possible "out" though. Does Liaison have a single Driver for
both LocalTalk ports or does it have one for each? (here's a chance
for someone at InfoSphere to answer). If it has two then they must be
independent and not able to interrupt each other. If it has just one,
then it's possible they've written some extremely clever code that is
able to run both ports at the same time.

You could try your tests with the Apple Internet Router (which has two
separate drivers). A comparison between this and Liaison might interest a
lot of people.

>    I also think that splitting the network in two (as I have tried) might
>help ease the latency problem that has everyone retrying for what they
>think are packets that never got there??? (i.e. 9 macs instead of 18 per
>network should help, right?)

If you get more total throughput with two networks then yes. If you don't
then no.

>...it's no big deal as only a few milliseconds of hard disk transfer time
>translates into quite a few seconds of Localtalk transfer.

SCSI is about 10 (not 1000) times faster on an SE (300 kbytes/sec) and
this doesn't include the disk seek time. Hopefully you're running from
the cache most of the time.

>   It is unfortunate that Localtalk is so slow...
   
Faster networks need extra (expensive) hardware (i.e. Ethernet). Apple
did a great job to build the network into the computer with existing
hardware - far less people would be networked if you had to buy a board.

			    ---------
Tom Evans  tom@wcc.oz.au        |
Webster Computer Corp P/L       | "The concept of my
1270 Ferntree Gully Rd          |  existence is an
Scoresby, Melbourne 3179        |  approximation"
Victoria, Australia             |
61-3-764-1100  FAX ...764-1179  |      D. Conway

2109 O'Toole Avenue, Suite J
SAN JOSE CA 95131 - 1303 CALIFORNIA
1-408-954-8054  FAX 1-408-954-1832