I have a router (ASUS WL-500G Premium running a modded Tomato) that has a 100mbps ethernet interface + wifi interface. I added a D-Link 8-port gigabit switch (DGS-1008G) because I want faster transfer speeds between my ethernet-connected PCs.
Disconnecting all devices but one from the router, that one device gets a maximum sustained download speed of ~5.5MB/s. If I place the gigabit switch between the router and the device, that device now achieves no more than ~4.9MB/s.
I understand that introducing a switch will increase the latency, but I'm surprised to find it affecting my throughput negatively as well. If I connect more than one device to the switch, between each other they have the expected gigabit transfer speeds. This speed reduction happens regardless of whether jumbo packets (9KB) are enabled or not on that device. A CAT 6A cable is between the gigabit switch and the device, a CAT 5E cable is between the switch and the router. The router itself is the gateway for the network (cable internet connection).
How and why am I seeing this drop in speed?
Did some latency testing. Odd results.. Since it's a local network, the default ping utility is of no use (< 1ms each time in both cases). Obviously that means any additional latency is negligible and cannot possible be the reason for a 5mbps drop in throughput. However, using a high-resolution ping utility, I find the latency between the device and the router to be consistently lower when going through the gigabit switch than without it (~0.55ms compared to ~0.8ms on average). Obvious conclusion is that latency is not the issue, though I could of course be wrong.