Having as main computer a laptop with internal 100Mb/s ethernet, connected to the NAS through a Zyxel with 100Mb/s lan ports, was already measuring speeds of 8-9MB/s, not bad for theoretical limit of 12.5MB/s for 100Mb/s lan, considering protocol overhead and other inefficiencies.
So the first point is that 4-5MB/s for Gigabit is definitively VERY poor.
I later tried to upgrade the computer to Gigabit; not finding a expresscard Gb adapter, first tried a Belkin USB to ethernet gigabit capable adapter. Saw, frustrated, that speeds in direct cable connect 'upgraded' to only 11-12MB/s, barely below 100Mb/s limits. I know that USB can offer only half the bus speed than gigabit needs (480Mb/s vs. 1000Mb/s); but we can expect that the NAS itself will hit his own bottlenecks much lower than that, and USB should have been able to handle way more than the DNS can feed. It's not reasonable to expect 10x improvement with gigabit, but 20-25% is not worth the investment in adapters and gigabit capable switch (or router).
Another interesting point is that the USB adapter offered jumbo frames, but not other important optimizations, like checksum offload or large send optimization. CPU usage was going through the roof during transfers. Returned it.
Later tried a Netgear PCBUS(PCMCIA 32) Gb adapter. PCBUS bandwidth matches almost exactly gigabit. Most important, the card chipset (Realtek) offered checksum offload and LSO, even if the jumbo frames did go only up to 3k (or 7k with latest Realtek -not Netgear- drivers).
That made the difference: speed jumped up to 25MB/s either with direct cable connection or through a small gigabit D-Link switch. That's 3x improvement, and really makes worth the investment. It's consistent or higher with what I have read here and in reviews can be seen with DNS-323 with gigabit. And CPU usage is not higher than observed with 100mb/s.
At this point I guess that the disks, RAID and DNS CPU and buffer are hitting their limits, and no gigabit can help more. But it's a pretty good performance, for the DNS price point. You don't need to settle for less.
So, the second point, is that the ethernet adapter or port can make a big difference, and that not all labelled gigabit ports will really offer Gb speeds, be it for HW or driver problems.
Finally, even for a HW capable adapter, some tuning can be needed. Had the DNS initially configured with 9k Jumbo frames, and found that setting the PC adapter to 7k frames (the maximum) slowed down the transfers to 10Mb/s like speeds. That should not be that way: both devices should negotiate and settle to the lower common size, ant that's all. But in practice, had to set the DNS to 7k, too, and all was going up to the speeds avobe noted (over 25MB/s). Look also to the typical Windows TCP/IP window optimizations that Google can help to locate. Had all of them in place from before, but suspect that if not they could have limited transfers to below than the DNS can do.
Final morale is that there can be a number of bottlenecks: ethernet adapter HW, drivers, operating system TCP/IP optimizations, disk subsystems (in BOTH the PC and the DNS), network interconnect (direct cable, switch, router). You will slown down to match the lowest one in your setup. And you'll need to raise ALL of them above what the DNS can offer (25-30MB/s) to get the most of it.
In your case, it's likely something is not right in the PC network setup, or internal disk subsystem.