I’ve got a networking troubleshooting problem for readers to help me solve. Network transfer performance when copying from my Quicksilver PowerMac G4 to my Quad is really slow, 1MB/second. Both machines have Gigabit Ethernet, so transfer rates should be at least 10MB/second.
What’s strange is that network performance from the Quad to the G4 runs at Gigabit speed. If I connect the two computers together, transfers between both computers run at Gigabit speed. I have an AirLink Gigabit switch, but I don’t think that’s the problem because I get Gigabit speed going from Quad to G4 and from my ReadyNAS to both the G4 and G5.
Here’s a quick table to explain my speed problem:
Anyone have any clues as to why this might be happening? Performance is slow from G4 to G5 regardless of the file transfer protocol AFP, SMB, FTP, etc.
4 thoughts on “Networking Troubleshooting”
It’s strange that it fast from G5 to G4 and slow the otherway. You may want to take a look at the duplex and speed
settings on the switch and make sure it matches on the G4 end. I’ve seen duplex mismatch like this and it will work
but will be very slow. I know they have auto settings/auto detect- but set the speed and duplex.
I agree–it’s always better to explicitly set link speeds and duplex on switches rather than rely on auto. FreeBSD stacks especially with the intel fxp just get murdured on autoselect. But, if you have fast transfer in one direction, it doesn’t suggest the switch is “at fault”. Although as you point out, it’s fast directly (crossover), but through the switch it’s slow. Its surprising how a little bit of latency screws things up.
Use sysctl -a | grep tcp to take a look at your tcp settings.
You’ll probably get what you need just by changing the send space from 32K to 64K and setting the local slow start to 64K.
net.inet.tcp.sendspace: 32768 ->65535
net.inet.tcp.local_slowstart_flightsize: 4 ->65000
Additionally, you can increase your receive space on all your systems so delayed acks don’t get in the way
net.inet.tcp.recvspace: 32768 -> 65535
I’m assuming all your boxes are on the same subnet, but to improve sending performance to devices outside your subnet (i.e. from your web server to clients) increase the slow start from 1 packet to 3 packets.
net.inet.tcp.slowstart_flightsize: 1 ->3
Manually setting the Ethernet speeds on both the Quad and Quicksilver solved the problem for a little bit, but it’s back to slow speeds from G4 to G5. I set both for 1000baseT and Full Duplex.
Will see how configuring sysctl does.
Try it at a slower rate – 100meg or 10 meg.