Easiest to do it in the BIOS.
There isn't much to work with in the Lenovo ThinkPad T510 BIOS.
Is the indicated speed changing from time to time? Maybe the NIC is detecting its connection differently each time
It doesn't seem to be that simple. Using the "official" e1000e 0.2.3, NETSTAT -N always shows "speed 1000000000 bits/sec" (even when connected to a 100 mbs switch, which probably means it is meaningless). There is a green LED on the T510, that indicates that it is connected, but it doesn't indicate the speed. It looks the same if I plug it into a 100 mbs hub. However, if I plug it into my Gb switch, I can tell what speed it connects at by the LEDs on the switch. I haven't seen it show anything but 1000 mbs, except when the machine is powered off (which is normal). Right now, if I copy from the "server" (download), it is running at about 7000 KB/s. Copying to the "server" runs at about 15,000 KB/s. I see the same hardware do 60,000 KB/s, in both directions, when running windows (measured at the "server", using IPMON). The "server" is running Multimac for NVIDIA, and it keeps up with windows, in both directions. A few days ago, after I got the TAP driver out of the picture, I was seeing 45,000 KB/s in both directions, using the "official" driver, or e1000e-3.4.77, from Paul. I haven't been able to duplicate that, since then.
Using /MAXCPU=1 or /VW on the PSD line doesn't change anything.
Now, I tried RXCHAIN = "YES" in PROTOCOL.INI, download is still about 7000 KB/s but upload is bouncing from 15,000 KB/s to 43,000 KB/s.
Okay, so I got a new CAT6 cable. If anything it is slightly slower in both directions.
If I try from the "server" end, I am seeing both directions bouncing between 7,000 KB/s and 15,000 KB/s.
FWIW, the Realtek driver, in my main machine, is showing similar numbers, and IPMON, at both ends, is showing the same numbers, so I have no reason to think that it is wrong.
Enough, for now...