Finding the bottleneck is a fun job, if your USB drive (480 mbps, or 60 MB/s) and laptop are plugged to the gigabit switch, the lowest speed would be 480mbps minus overhead (probably a factor of 2). Other factors that could result in performance hits are: hard drive transfer rate, PIO vs DMA among other things.
I don't know how new or old your laptop is but if its local drive is IDE drive (16 to 33 MB/s) then 16MB/s could be the final transfer speed. Note that PIO, which could be automatically set by Windows, can limit your transfer rate to 16MB/s. The article below shows tips on optimizing hard drive that you might find useful for your configuration:
http://www.adriansrojakpot.com/Other_Articles/Win2K_Tips/IDE_DMA/IDE_DMA.htm
Once you determined the minimum transfer rate between laptop and USB drive, you can then plug the third component to the equation: DNS-321 and see how it affects the transfer rate. In any case, cross-over cable or gigabit switch are not the guilty parties that reduce your transfer rate so just pick the easier one to work with.