162306a36Sopenharmony_ci.. SPDX-License-Identifier: GPL-2.0 262306a36Sopenharmony_ci 362306a36Sopenharmony_ci========================================== 462306a36Sopenharmony_ciEQL Driver: Serial IP Load Balancing HOWTO 562306a36Sopenharmony_ci========================================== 662306a36Sopenharmony_ci 762306a36Sopenharmony_ci Simon "Guru Aleph-Null" Janes, simon@ncm.com 862306a36Sopenharmony_ci 962306a36Sopenharmony_ci v1.1, February 27, 1995 1062306a36Sopenharmony_ci 1162306a36Sopenharmony_ci This is the manual for the EQL device driver. EQL is a software device 1262306a36Sopenharmony_ci that lets you load-balance IP serial links (SLIP or uncompressed PPP) 1362306a36Sopenharmony_ci to increase your bandwidth. It will not reduce your latency (i.e. ping 1462306a36Sopenharmony_ci times) except in the case where you already have lots of traffic on 1562306a36Sopenharmony_ci your link, in which it will help them out. This driver has been tested 1662306a36Sopenharmony_ci with the 1.1.75 kernel, and is known to have patched cleanly with 1762306a36Sopenharmony_ci 1.1.86. Some testing with 1.1.92 has been done with the v1.1 patch 1862306a36Sopenharmony_ci which was only created to patch cleanly in the very latest kernel 1962306a36Sopenharmony_ci source trees. (Yes, it worked fine.) 2062306a36Sopenharmony_ci 2162306a36Sopenharmony_ci1. Introduction 2262306a36Sopenharmony_ci=============== 2362306a36Sopenharmony_ci 2462306a36Sopenharmony_ci Which is worse? A huge fee for a 56K leased line or two phone lines? 2562306a36Sopenharmony_ci It's probably the former. If you find yourself craving more bandwidth, 2662306a36Sopenharmony_ci and have a ISP that is flexible, it is now possible to bind modems 2762306a36Sopenharmony_ci together to work as one point-to-point link to increase your 2862306a36Sopenharmony_ci bandwidth. All without having to have a special black box on either 2962306a36Sopenharmony_ci side. 3062306a36Sopenharmony_ci 3162306a36Sopenharmony_ci 3262306a36Sopenharmony_ci The eql driver has only been tested with the Livingston PortMaster-2e 3362306a36Sopenharmony_ci terminal server. I do not know if other terminal servers support load- 3462306a36Sopenharmony_ci balancing, but I do know that the PortMaster does it, and does it 3562306a36Sopenharmony_ci almost as well as the eql driver seems to do it (-- Unfortunately, in 3662306a36Sopenharmony_ci my testing so far, the Livingston PortMaster 2e's load-balancing is a 3762306a36Sopenharmony_ci good 1 to 2 KB/s slower than the test machine working with a 28.8 Kbps 3862306a36Sopenharmony_ci and 14.4 Kbps connection. However, I am not sure that it really is 3962306a36Sopenharmony_ci the PortMaster, or if it's Linux's TCP drivers. I'm told that Linux's 4062306a36Sopenharmony_ci TCP implementation is pretty fast though.--) 4162306a36Sopenharmony_ci 4262306a36Sopenharmony_ci 4362306a36Sopenharmony_ci I suggest to ISPs out there that it would probably be fair to charge 4462306a36Sopenharmony_ci a load-balancing client 75% of the cost of the second line and 50% of 4562306a36Sopenharmony_ci the cost of the third line etc... 4662306a36Sopenharmony_ci 4762306a36Sopenharmony_ci 4862306a36Sopenharmony_ci Hey, we can all dream you know... 4962306a36Sopenharmony_ci 5062306a36Sopenharmony_ci 5162306a36Sopenharmony_ci2. Kernel Configuration 5262306a36Sopenharmony_ci======================= 5362306a36Sopenharmony_ci 5462306a36Sopenharmony_ci Here I describe the general steps of getting a kernel up and working 5562306a36Sopenharmony_ci with the eql driver. From patching, building, to installing. 5662306a36Sopenharmony_ci 5762306a36Sopenharmony_ci 5862306a36Sopenharmony_ci2.1. Patching The Kernel 5962306a36Sopenharmony_ci------------------------ 6062306a36Sopenharmony_ci 6162306a36Sopenharmony_ci If you do not have or cannot get a copy of the kernel with the eql 6262306a36Sopenharmony_ci driver folded into it, get your copy of the driver from 6362306a36Sopenharmony_ci ftp://slaughter.ncm.com/pub/Linux/LOAD_BALANCING/eql-1.1.tar.gz. 6462306a36Sopenharmony_ci Unpack this archive someplace obvious like /usr/local/src/. It will 6562306a36Sopenharmony_ci create the following files:: 6662306a36Sopenharmony_ci 6762306a36Sopenharmony_ci -rw-r--r-- guru/ncm 198 Jan 19 18:53 1995 eql-1.1/NO-WARRANTY 6862306a36Sopenharmony_ci -rw-r--r-- guru/ncm 30620 Feb 27 21:40 1995 eql-1.1/eql-1.1.patch 6962306a36Sopenharmony_ci -rwxr-xr-x guru/ncm 16111 Jan 12 22:29 1995 eql-1.1/eql_enslave 7062306a36Sopenharmony_ci -rw-r--r-- guru/ncm 2195 Jan 10 21:48 1995 eql-1.1/eql_enslave.c 7162306a36Sopenharmony_ci 7262306a36Sopenharmony_ci Unpack a recent kernel (something after 1.1.92) someplace convenient 7362306a36Sopenharmony_ci like say /usr/src/linux-1.1.92.eql. Use symbolic links to point 7462306a36Sopenharmony_ci /usr/src/linux to this development directory. 7562306a36Sopenharmony_ci 7662306a36Sopenharmony_ci 7762306a36Sopenharmony_ci Apply the patch by running the commands:: 7862306a36Sopenharmony_ci 7962306a36Sopenharmony_ci cd /usr/src 8062306a36Sopenharmony_ci patch </usr/local/src/eql-1.1/eql-1.1.patch 8162306a36Sopenharmony_ci 8262306a36Sopenharmony_ci 8362306a36Sopenharmony_ci2.2. Building The Kernel 8462306a36Sopenharmony_ci------------------------ 8562306a36Sopenharmony_ci 8662306a36Sopenharmony_ci After patching the kernel, run make config and configure the kernel 8762306a36Sopenharmony_ci for your hardware. 8862306a36Sopenharmony_ci 8962306a36Sopenharmony_ci 9062306a36Sopenharmony_ci After configuration, make and install according to your habit. 9162306a36Sopenharmony_ci 9262306a36Sopenharmony_ci 9362306a36Sopenharmony_ci3. Network Configuration 9462306a36Sopenharmony_ci======================== 9562306a36Sopenharmony_ci 9662306a36Sopenharmony_ci So far, I have only used the eql device with the DSLIP SLIP connection 9762306a36Sopenharmony_ci manager by Matt Dillon (-- "The man who sold his soul to code so much 9862306a36Sopenharmony_ci so quickly."--) . How you configure it for other "connection" 9962306a36Sopenharmony_ci managers is up to you. Most other connection managers that I've seen 10062306a36Sopenharmony_ci don't do a very good job when it comes to handling more than one 10162306a36Sopenharmony_ci connection. 10262306a36Sopenharmony_ci 10362306a36Sopenharmony_ci 10462306a36Sopenharmony_ci3.1. /etc/rc.d/rc.inet1 10562306a36Sopenharmony_ci----------------------- 10662306a36Sopenharmony_ci 10762306a36Sopenharmony_ci In rc.inet1, ifconfig the eql device to the IP address you usually use 10862306a36Sopenharmony_ci for your machine, and the MTU you prefer for your SLIP lines. One 10962306a36Sopenharmony_ci could argue that MTU should be roughly half the usual size for two 11062306a36Sopenharmony_ci modems, one-third for three, one-fourth for four, etc... But going 11162306a36Sopenharmony_ci too far below 296 is probably overkill. Here is an example ifconfig 11262306a36Sopenharmony_ci command that sets up the eql device:: 11362306a36Sopenharmony_ci 11462306a36Sopenharmony_ci ifconfig eql 198.67.33.239 mtu 1006 11562306a36Sopenharmony_ci 11662306a36Sopenharmony_ci Once the eql device is up and running, add a static default route to 11762306a36Sopenharmony_ci it in the routing table using the cool new route syntax that makes 11862306a36Sopenharmony_ci life so much easier:: 11962306a36Sopenharmony_ci 12062306a36Sopenharmony_ci route add default eql 12162306a36Sopenharmony_ci 12262306a36Sopenharmony_ci 12362306a36Sopenharmony_ci3.2. Enslaving Devices By Hand 12462306a36Sopenharmony_ci------------------------------ 12562306a36Sopenharmony_ci 12662306a36Sopenharmony_ci Enslaving devices by hand requires two utility programs: eql_enslave 12762306a36Sopenharmony_ci and eql_emancipate (-- eql_emancipate hasn't been written because when 12862306a36Sopenharmony_ci an enslaved device "dies", it is automatically taken out of the queue. 12962306a36Sopenharmony_ci I haven't found a good reason to write it yet... other than for 13062306a36Sopenharmony_ci completeness, but that isn't a good motivator is it?--) 13162306a36Sopenharmony_ci 13262306a36Sopenharmony_ci 13362306a36Sopenharmony_ci The syntax for enslaving a device is "eql_enslave <master-name> 13462306a36Sopenharmony_ci <slave-name> <estimated-bps>". Here are some example enslavings:: 13562306a36Sopenharmony_ci 13662306a36Sopenharmony_ci eql_enslave eql sl0 28800 13762306a36Sopenharmony_ci eql_enslave eql ppp0 14400 13862306a36Sopenharmony_ci eql_enslave eql sl1 57600 13962306a36Sopenharmony_ci 14062306a36Sopenharmony_ci When you want to free a device from its life of slavery, you can 14162306a36Sopenharmony_ci either down the device with ifconfig (eql will automatically bury the 14262306a36Sopenharmony_ci dead slave and remove it from its queue) or use eql_emancipate to free 14362306a36Sopenharmony_ci it. (-- Or just ifconfig it down, and the eql driver will take it out 14462306a36Sopenharmony_ci for you.--):: 14562306a36Sopenharmony_ci 14662306a36Sopenharmony_ci eql_emancipate eql sl0 14762306a36Sopenharmony_ci eql_emancipate eql ppp0 14862306a36Sopenharmony_ci eql_emancipate eql sl1 14962306a36Sopenharmony_ci 15062306a36Sopenharmony_ci 15162306a36Sopenharmony_ci3.3. DSLIP Configuration for the eql Device 15262306a36Sopenharmony_ci------------------------------------------- 15362306a36Sopenharmony_ci 15462306a36Sopenharmony_ci The general idea is to bring up and keep up as many SLIP connections 15562306a36Sopenharmony_ci as you need, automatically. 15662306a36Sopenharmony_ci 15762306a36Sopenharmony_ci 15862306a36Sopenharmony_ci3.3.1. /etc/slip/runslip.conf 15962306a36Sopenharmony_ci^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 16062306a36Sopenharmony_ci 16162306a36Sopenharmony_ci Here is an example runslip.conf:: 16262306a36Sopenharmony_ci 16362306a36Sopenharmony_ci name sl-line-1 16462306a36Sopenharmony_ci enabled 16562306a36Sopenharmony_ci baud 38400 16662306a36Sopenharmony_ci mtu 576 16762306a36Sopenharmony_ci ducmd -e /etc/slip/dialout/cua2-288.xp -t 9 16862306a36Sopenharmony_ci command eql_enslave eql $interface 28800 16962306a36Sopenharmony_ci address 198.67.33.239 17062306a36Sopenharmony_ci line /dev/cua2 17162306a36Sopenharmony_ci 17262306a36Sopenharmony_ci name sl-line-2 17362306a36Sopenharmony_ci enabled 17462306a36Sopenharmony_ci baud 38400 17562306a36Sopenharmony_ci mtu 576 17662306a36Sopenharmony_ci ducmd -e /etc/slip/dialout/cua3-288.xp -t 9 17762306a36Sopenharmony_ci command eql_enslave eql $interface 28800 17862306a36Sopenharmony_ci address 198.67.33.239 17962306a36Sopenharmony_ci line /dev/cua3 18062306a36Sopenharmony_ci 18162306a36Sopenharmony_ci 18262306a36Sopenharmony_ci3.4. Using PPP and the eql Device 18362306a36Sopenharmony_ci--------------------------------- 18462306a36Sopenharmony_ci 18562306a36Sopenharmony_ci I have not yet done any load-balancing testing for PPP devices, mainly 18662306a36Sopenharmony_ci because I don't have a PPP-connection manager like SLIP has with 18762306a36Sopenharmony_ci DSLIP. I did find a good tip from LinuxNET:Billy for PPP performance: 18862306a36Sopenharmony_ci make sure you have asyncmap set to something so that control 18962306a36Sopenharmony_ci characters are not escaped. 19062306a36Sopenharmony_ci 19162306a36Sopenharmony_ci 19262306a36Sopenharmony_ci I tried to fix up a PPP script/system for redialing lost PPP 19362306a36Sopenharmony_ci connections for use with the eql driver the weekend of Feb 25-26 '95 19462306a36Sopenharmony_ci (Hereafter known as the 8-hour PPP Hate Festival). Perhaps later this 19562306a36Sopenharmony_ci year. 19662306a36Sopenharmony_ci 19762306a36Sopenharmony_ci 19862306a36Sopenharmony_ci4. About the Slave Scheduler Algorithm 19962306a36Sopenharmony_ci====================================== 20062306a36Sopenharmony_ci 20162306a36Sopenharmony_ci The slave scheduler probably could be replaced with a dozen other 20262306a36Sopenharmony_ci things and push traffic much faster. The formula in the current set 20362306a36Sopenharmony_ci up of the driver was tuned to handle slaves with wildly different 20462306a36Sopenharmony_ci bits-per-second "priorities". 20562306a36Sopenharmony_ci 20662306a36Sopenharmony_ci 20762306a36Sopenharmony_ci All testing I have done was with two 28.8 V.FC modems, one connecting 20862306a36Sopenharmony_ci at 28800 bps or slower, and the other connecting at 14400 bps all the 20962306a36Sopenharmony_ci time. 21062306a36Sopenharmony_ci 21162306a36Sopenharmony_ci 21262306a36Sopenharmony_ci One version of the scheduler was able to push 5.3 K/s through the 21362306a36Sopenharmony_ci 28800 and 14400 connections, but when the priorities on the links were 21462306a36Sopenharmony_ci very wide apart (57600 vs. 14400) the "faster" modem received all 21562306a36Sopenharmony_ci traffic and the "slower" modem starved. 21662306a36Sopenharmony_ci 21762306a36Sopenharmony_ci 21862306a36Sopenharmony_ci5. Testers' Reports 21962306a36Sopenharmony_ci=================== 22062306a36Sopenharmony_ci 22162306a36Sopenharmony_ci Some people have experimented with the eql device with newer 22262306a36Sopenharmony_ci kernels (than 1.1.75). I have since updated the driver to patch 22362306a36Sopenharmony_ci cleanly in newer kernels because of the removal of the old "slave- 22462306a36Sopenharmony_ci balancing" driver config option. 22562306a36Sopenharmony_ci 22662306a36Sopenharmony_ci 22762306a36Sopenharmony_ci - icee from LinuxNET patched 1.1.86 without any rejects and was able 22862306a36Sopenharmony_ci to boot the kernel and enslave a couple of ISDN PPP links. 22962306a36Sopenharmony_ci 23062306a36Sopenharmony_ci5.1. Randolph Bentson's Test Report 23162306a36Sopenharmony_ci----------------------------------- 23262306a36Sopenharmony_ci 23362306a36Sopenharmony_ci :: 23462306a36Sopenharmony_ci 23562306a36Sopenharmony_ci From bentson@grieg.seaslug.org Wed Feb 8 19:08:09 1995 23662306a36Sopenharmony_ci Date: Tue, 7 Feb 95 22:57 PST 23762306a36Sopenharmony_ci From: Randolph Bentson <bentson@grieg.seaslug.org> 23862306a36Sopenharmony_ci To: guru@ncm.com 23962306a36Sopenharmony_ci Subject: EQL driver tests 24062306a36Sopenharmony_ci 24162306a36Sopenharmony_ci 24262306a36Sopenharmony_ci I have been checking out your eql driver. (Nice work, that!) 24362306a36Sopenharmony_ci Although you may already done this performance testing, here 24462306a36Sopenharmony_ci are some data I've discovered. 24562306a36Sopenharmony_ci 24662306a36Sopenharmony_ci Randolph Bentson 24762306a36Sopenharmony_ci bentson@grieg.seaslug.org 24862306a36Sopenharmony_ci 24962306a36Sopenharmony_ci------------------------------------------------------------------ 25062306a36Sopenharmony_ci 25162306a36Sopenharmony_ci 25262306a36Sopenharmony_ci A pseudo-device driver, EQL, written by Simon Janes, can be used 25362306a36Sopenharmony_ci to bundle multiple SLIP connections into what appears to be a 25462306a36Sopenharmony_ci single connection. This allows one to improve dial-up network 25562306a36Sopenharmony_ci connectivity gradually, without having to buy expensive DSU/CSU 25662306a36Sopenharmony_ci hardware and services. 25762306a36Sopenharmony_ci 25862306a36Sopenharmony_ci I have done some testing of this software, with two goals in 25962306a36Sopenharmony_ci mind: first, to ensure it actually works as described and 26062306a36Sopenharmony_ci second, as a method of exercising my device driver. 26162306a36Sopenharmony_ci 26262306a36Sopenharmony_ci The following performance measurements were derived from a set 26362306a36Sopenharmony_ci of SLIP connections run between two Linux systems (1.1.84) using 26462306a36Sopenharmony_ci a 486DX2/66 with a Cyclom-8Ys and a 486SLC/40 with a Cyclom-16Y. 26562306a36Sopenharmony_ci (Ports 0,1,2,3 were used. A later configuration will distribute 26662306a36Sopenharmony_ci port selection across the different Cirrus chips on the boards.) 26762306a36Sopenharmony_ci Once a link was established, I timed a binary ftp transfer of 26862306a36Sopenharmony_ci 289284 bytes of data. If there were no overhead (packet headers, 26962306a36Sopenharmony_ci inter-character and inter-packet delays, etc.) the transfers 27062306a36Sopenharmony_ci would take the following times:: 27162306a36Sopenharmony_ci 27262306a36Sopenharmony_ci bits/sec seconds 27362306a36Sopenharmony_ci 345600 8.3 27462306a36Sopenharmony_ci 234600 12.3 27562306a36Sopenharmony_ci 172800 16.7 27662306a36Sopenharmony_ci 153600 18.8 27762306a36Sopenharmony_ci 76800 37.6 27862306a36Sopenharmony_ci 57600 50.2 27962306a36Sopenharmony_ci 38400 75.3 28062306a36Sopenharmony_ci 28800 100.4 28162306a36Sopenharmony_ci 19200 150.6 28262306a36Sopenharmony_ci 9600 301.3 28362306a36Sopenharmony_ci 28462306a36Sopenharmony_ci A single line running at the lower speeds and with large packets 28562306a36Sopenharmony_ci comes to within 2% of this. Performance is limited for the higher 28662306a36Sopenharmony_ci speeds (as predicted by the Cirrus databook) to an aggregate of 28762306a36Sopenharmony_ci about 160 kbits/sec. The next round of testing will distribute 28862306a36Sopenharmony_ci the load across two or more Cirrus chips. 28962306a36Sopenharmony_ci 29062306a36Sopenharmony_ci The good news is that one gets nearly the full advantage of the 29162306a36Sopenharmony_ci second, third, and fourth line's bandwidth. (The bad news is 29262306a36Sopenharmony_ci that the connection establishment seemed fragile for the higher 29362306a36Sopenharmony_ci speeds. Once established, the connection seemed robust enough.) 29462306a36Sopenharmony_ci 29562306a36Sopenharmony_ci ====== ======== === ======== ======= ======= === 29662306a36Sopenharmony_ci #lines speed mtu seconds theory actual %of 29762306a36Sopenharmony_ci kbit/sec duration speed speed max 29862306a36Sopenharmony_ci ====== ======== === ======== ======= ======= === 29962306a36Sopenharmony_ci 3 115200 900 _ 345600 30062306a36Sopenharmony_ci 3 115200 400 18.1 345600 159825 46 30162306a36Sopenharmony_ci 2 115200 900 _ 230400 30262306a36Sopenharmony_ci 2 115200 600 18.1 230400 159825 69 30362306a36Sopenharmony_ci 2 115200 400 19.3 230400 149888 65 30462306a36Sopenharmony_ci 4 57600 900 _ 234600 30562306a36Sopenharmony_ci 4 57600 600 _ 234600 30662306a36Sopenharmony_ci 4 57600 400 _ 234600 30762306a36Sopenharmony_ci 3 57600 600 20.9 172800 138413 80 30862306a36Sopenharmony_ci 3 57600 900 21.2 172800 136455 78 30962306a36Sopenharmony_ci 3 115200 600 21.7 345600 133311 38 31062306a36Sopenharmony_ci 3 57600 400 22.5 172800 128571 74 31162306a36Sopenharmony_ci 4 38400 900 25.2 153600 114795 74 31262306a36Sopenharmony_ci 4 38400 600 26.4 153600 109577 71 31362306a36Sopenharmony_ci 4 38400 400 27.3 153600 105965 68 31462306a36Sopenharmony_ci 2 57600 900 29.1 115200 99410.3 86 31562306a36Sopenharmony_ci 1 115200 900 30.7 115200 94229.3 81 31662306a36Sopenharmony_ci 2 57600 600 30.2 115200 95789.4 83 31762306a36Sopenharmony_ci 3 38400 900 30.3 115200 95473.3 82 31862306a36Sopenharmony_ci 3 38400 600 31.2 115200 92719.2 80 31962306a36Sopenharmony_ci 1 115200 600 31.3 115200 92423 80 32062306a36Sopenharmony_ci 2 57600 400 32.3 115200 89561.6 77 32162306a36Sopenharmony_ci 1 115200 400 32.8 115200 88196.3 76 32262306a36Sopenharmony_ci 3 38400 400 33.5 115200 86353.4 74 32362306a36Sopenharmony_ci 2 38400 900 43.7 76800 66197.7 86 32462306a36Sopenharmony_ci 2 38400 600 44 76800 65746.4 85 32562306a36Sopenharmony_ci 2 38400 400 47.2 76800 61289 79 32662306a36Sopenharmony_ci 4 19200 900 50.8 76800 56945.7 74 32762306a36Sopenharmony_ci 4 19200 400 53.2 76800 54376.7 70 32862306a36Sopenharmony_ci 4 19200 600 53.7 76800 53870.4 70 32962306a36Sopenharmony_ci 1 57600 900 54.6 57600 52982.4 91 33062306a36Sopenharmony_ci 1 57600 600 56.2 57600 51474 89 33162306a36Sopenharmony_ci 3 19200 900 60.5 57600 47815.5 83 33262306a36Sopenharmony_ci 1 57600 400 60.2 57600 48053.8 83 33362306a36Sopenharmony_ci 3 19200 600 62 57600 46658.7 81 33462306a36Sopenharmony_ci 3 19200 400 64.7 57600 44711.6 77 33562306a36Sopenharmony_ci 1 38400 900 79.4 38400 36433.8 94 33662306a36Sopenharmony_ci 1 38400 600 82.4 38400 35107.3 91 33762306a36Sopenharmony_ci 2 19200 900 84.4 38400 34275.4 89 33862306a36Sopenharmony_ci 1 38400 400 86.8 38400 33327.6 86 33962306a36Sopenharmony_ci 2 19200 600 87.6 38400 33023.3 85 34062306a36Sopenharmony_ci 2 19200 400 91.2 38400 31719.7 82 34162306a36Sopenharmony_ci 4 9600 900 94.7 38400 30547.4 79 34262306a36Sopenharmony_ci 4 9600 400 106 38400 27290.9 71 34362306a36Sopenharmony_ci 4 9600 600 110 38400 26298.5 68 34462306a36Sopenharmony_ci 3 9600 900 118 28800 24515.6 85 34562306a36Sopenharmony_ci 3 9600 600 120 28800 24107 83 34662306a36Sopenharmony_ci 3 9600 400 131 28800 22082.7 76 34762306a36Sopenharmony_ci 1 19200 900 155 19200 18663.5 97 34862306a36Sopenharmony_ci 1 19200 600 161 19200 17968 93 34962306a36Sopenharmony_ci 1 19200 400 170 19200 17016.7 88 35062306a36Sopenharmony_ci 2 9600 600 176 19200 16436.6 85 35162306a36Sopenharmony_ci 2 9600 900 180 19200 16071.3 83 35262306a36Sopenharmony_ci 2 9600 400 181 19200 15982.5 83 35362306a36Sopenharmony_ci 1 9600 900 305 9600 9484.72 98 35462306a36Sopenharmony_ci 1 9600 600 314 9600 9212.87 95 35562306a36Sopenharmony_ci 1 9600 400 332 9600 8713.37 90 35662306a36Sopenharmony_ci ====== ======== === ======== ======= ======= === 35762306a36Sopenharmony_ci 35862306a36Sopenharmony_ci5.2. Anthony Healy's Report 35962306a36Sopenharmony_ci--------------------------- 36062306a36Sopenharmony_ci 36162306a36Sopenharmony_ci :: 36262306a36Sopenharmony_ci 36362306a36Sopenharmony_ci Date: Mon, 13 Feb 1995 16:17:29 +1100 (EST) 36462306a36Sopenharmony_ci From: Antony Healey <ahealey@st.nepean.uws.edu.au> 36562306a36Sopenharmony_ci To: Simon Janes <guru@ncm.com> 36662306a36Sopenharmony_ci Subject: Re: Load Balancing 36762306a36Sopenharmony_ci 36862306a36Sopenharmony_ci Hi Simon, 36962306a36Sopenharmony_ci I've installed your patch and it works great. I have trialed 37062306a36Sopenharmony_ci it over twin SL/IP lines, just over null modems, but I was 37162306a36Sopenharmony_ci able to data at over 48Kb/s [ISDN link -Simon]. I managed a 37262306a36Sopenharmony_ci transfer of up to 7.5 Kbyte/s on one go, but averaged around 37362306a36Sopenharmony_ci 6.4 Kbyte/s, which I think is pretty cool. :) 374