Team Foundation Server: Why are my files transferring so slowly?

I'm not sure if anyone "in the field" has run into this (yet), but it's happened to us a couple times internally now, and I figured other folks might be interested in the issue.

We've seen situations where larger files (in the latest case, 100 meg) take an inordinate amount of time to upload (checkin) or get.

After some poking and prodding, the devs tracked the problem to a configuration disparity - the AT's network interface was set to Auto-negotiate link speed and duplex, while the switch to which it was connected was "forced" to 100Mbps, Full-duplex (or maybe I have the server and switch reversed, but either way). Once these two settings were made to match, the problem went away. We've observed it a few times since in various test runs.

I'm not sure WHY this mismatch is a problem (since I'm assuming Auto is still negotiating to 100/Full), but this issue has a very distinct set of symptoms and the cause isn't apparent (unless you just happen to monitor your switch error rates for fun). I used to take a certain amount of pride in my knowledge of networking, but this one throws me every time. Maybe someone out there who admins a switch can enlighten me?

So, if you see file transfers that take way too long - but only for files above a certain size - check your network card settings and compare them to the switch. Hopefully, most of you out there would only have to worry about this setting at most once (per server, anyway).