Modem no longer faster in Windows than in Puppy!

What works, and doesn't, for you. Be specific, and please include Puppy version.
Post Reply
Message
Author
User avatar
Marv
Posts: 1264
Joined: Wed 04 May 2005, 13:47
Location: SW Wisconsin

Modem no longer faster in Windows than in Puppy!

#1 Post by Marv »

I'm using USR5610B and LT modems under pup 1.07. With a bit of init string fiddling I get reasonably consistent reported connection speeds of 45 to 48k (WVdial gives it when it connects), about what I get on an XP machine running on the same phone line and identical hardware and modems. I don't have an isa slot in the pup but remember seeing similar behavior with a supra express in an isa slot on an older pup and a W98 machine.

Here's the puzzle. On the XP machine and on another near identical W98 machine, my actual download speeds average roughly 40k using pcpitstop for a test. On the pup, they average 25k. I've controlled for all variables I can, looked at the port setups with setserial, used the spd_vhi flag in setserial, yada, yada, yada.

Any thoughts? Could anyone else pop a modem back and forth or use a couple of LTmodems and check the bandwidth from pcpitstop? What am I missing..other than broadband!

Slowboat..
Pups currently in kennel :D Older LxPupSc and X-slacko-4.4 for my users; LxPupSc, LxPupSc64 and upupEF for me. All good pups indeed, and all running savefiles for look'n'feel only. Browsers, etc. solely from SFS.

User avatar
Flash
Official Dog Handler
Posts: 13071
Joined: Wed 04 May 2005, 16:04
Location: Arizona USA

#2 Post by Flash »

I'm going to take a WAG that WVdial reports the speed your modem negotiated with the modem it connected to at your ISP when you dialed the connection. PCpitstop probably measures the overall speed of the connection between the server at the PCpitstop website and your computer. Another WAG is that whatever PCpitstop does is optimized for Windows.

Try this: measure the time it takes to download a file in Windows, and the time it takes to download the same file in Puppy. Pick a file large enough to take a minute or two to download, so that even a small difference in actual download speed will be measurable.

User avatar
Marv
Posts: 1264
Joined: Wed 04 May 2005, 13:47
Location: SW Wisconsin

#3 Post by Marv »

Yes I'm sure that what wvdial reports is the negotiated speed and that what pcpitstop measures is 'average real download speed'. It just downloads a pretty big graphic and times it.

I'll try the bigfile test tomorrow. I'm starting to think it has to do with how linux handles the IRQ priority or the hardware handshaking on the buffers but haven't found IRQtune, Stty, or crtscts yet to check.

Thanks
Pups currently in kennel :D Older LxPupSc and X-slacko-4.4 for my users; LxPupSc, LxPupSc64 and upupEF for me. All good pups indeed, and all running savefiles for look'n'feel only. Browsers, etc. solely from SFS.

User avatar
Marv
Posts: 1264
Joined: Wed 04 May 2005, 13:47
Location: SW Wisconsin

Times

#4 Post by Marv »

Equal machines same modem, same phone line.

XP machine: 1Mb download in 214 seconds
Pup machine: 1 Mb download in 300 seconds

Disabled software compression on the XP machine. No change. I have roughly a 3% variability measurement to measurement. Much less than the difference between the two systems.
Pups currently in kennel :D Older LxPupSc and X-slacko-4.4 for my users; LxPupSc, LxPupSc64 and upupEF for me. All good pups indeed, and all running savefiles for look'n'feel only. Browsers, etc. solely from SFS.

User avatar
Flash
Official Dog Handler
Posts: 13071
Joined: Wed 04 May 2005, 16:04
Location: Arizona USA

#5 Post by Flash »

Perhaps having access to both ends of the communication link would make it easier to find the cause. I believe you can connect the modems from your two computers directly to each other and establish a connection just as if they were each talking to an ISP modem. Somewhere on the internet I've read a detailed description of how to do it, but I can't find it again. :(

Or, since you have Windows on the computers, find out what AT commands Windows loads into the modems and load the same commands when you use the modems in Linux. Is there a Windows program that allows you to query the AT registers of the modems?

Sage
Posts: 5536
Joined: Tue 04 Oct 2005, 08:34
Location: GB

#6 Post by Sage »

The generalised ATI set of characteristics is available in Control Panel/Modems/Diagnostics/Info in W98, but any of the ATI set can be called from a terminal (not CLI!) by number, i.e. ATI0.....n. Not sure which ones you need in this case.

User avatar
Marv
Posts: 1264
Joined: Wed 04 May 2005, 13:47
Location: SW Wisconsin

#7 Post by Marv »

I've fiddled quite a bit with the init strings. I'll see if I can extract the exact string XP uses. The reason I don't think it is the init string is that I can walk the negotiated connect speed of the usr modem up and down with the init string (on both machines) from straight v34 up to 48k and the actual throughput doesn't budge on the pup but roughly tracks the connect speed on the dwindles box. I think I have a Damn Small Linux disk here somewhere and I'll throw that into the mix sometime.

A luddite in wonderland.
Pups currently in kennel :D Older LxPupSc and X-slacko-4.4 for my users; LxPupSc, LxPupSc64 and upupEF for me. All good pups indeed, and all running savefiles for look'n'feel only. Browsers, etc. solely from SFS.

User avatar
Marv
Posts: 1264
Joined: Wed 04 May 2005, 13:47
Location: SW Wisconsin

Solved

#8 Post by Marv »

The key was merely the default PPP MRU and MTU of 1500 in Puppy. Windows starts from a MRU of 576 and works up or down til the maximum value without fragmenting packets is determined. In Pup, any value between the minimum of 296 and 500, just below the flip buffer size works well for me. On my ISP the default of 1500 gave severe fragmenting and pretty high packet loss.

Download speeds are now up to an identical 40 to 42 k on Pup and XP using the same modem and line.

I ran IRQTune and used hdparm to enable and disable IRQ masking on the hard disk with no measurable download speed differences though hdparm easily doubled the hard disk throughput.

To change the MRU and MTU values, edit the /etc/ppp/options file to add the lines:

MRU 296
MTU 296
Pups currently in kennel :D Older LxPupSc and X-slacko-4.4 for my users; LxPupSc, LxPupSc64 and upupEF for me. All good pups indeed, and all running savefiles for look'n'feel only. Browsers, etc. solely from SFS.

User avatar
Flash
Official Dog Handler
Posts: 13071
Joined: Wed 04 May 2005, 16:04
Location: Arizona USA

#9 Post by Flash »

Could you please tell us what MRU and MTU are? Thanks. :)

And a particular thanks for the note on using hdparm.

User avatar
Marv
Posts: 1264
Joined: Wed 04 May 2005, 13:47
Location: SW Wisconsin

MRU, MTU

#10 Post by Marv »

MRU stands for maximum receive unit and MTU for maximum transmit unit. They determine the maximum size for packets received or sent, in this case through the modem.
Essentially they determine the size of the packets your data is bundled into for transmission or reception. There is some overhead involved so bigger is better except that along the transmission path there are myriad buffers and limitations and larger packets need to be rebroken up to get through and the loss rate goes up.... It's a messy world.

Packets on standard ethernet are usually fine at 1500 bytes but the dialup world is noisier, older, and less tolerant so the smaller compromise works better.

Older kernels also had a small buffer for the serial port only called a flip buffer and there again, smaller packets were more efficient. That may or may not be history.
Pups currently in kennel :D Older LxPupSc and X-slacko-4.4 for my users; LxPupSc, LxPupSc64 and upupEF for me. All good pups indeed, and all running savefiles for look'n'feel only. Browsers, etc. solely from SFS.

Post Reply