1) check out tcp send/receive buffer sizing with sysctl 2) build pkgsrc/graphics/xplot, and use tcpdump2xplot to examine tcp's behavior. This is not that easy, but it's the best way to really understand what's going on. 3) Try multiple tcp connections in parallel. If you get a lot better speed, then that's a hint that you have loss/buffer size issues, rather than an interface bottleneck. 4) use netstat -i, and netstat -p, before and after a big transfer (save them to files, and diff).
Attachment:
pgp38L7Lscom_.pgp
Description: PGP signature