Why is network copy so slow?

  • Thread starter Thread starter David Sworder
  • Start date Start date
D

David Sworder

Consider the following situation:

I'm copying one 12gig file from ComputerA to ComputerB over a 1gbps
network connection. The copy is executed through Windows Explorer. The
transfer is taking place at approximately 4MB/sec which seems insanely slow
to me.

On both the sending and receiving side, the machines have harddisks that
can read sequential data at around 40MB/sec (I'm not sure what the 'write'
rate is). With 1gbps network connectivity, I figured that the bottleneck
would be the disk drives which would imply a copy rate of around 40MB/sec...
but instead, I'm only getting around 4MB/sec.

The target machine is running Win2003. As you know, the Win2003 task
manager has a "Networking" tab where the user can see his network
utilization. My network utilization on this machine is only 4% !! So it
seems that the bottleneck is occurring at the NIC (?)... but why? Both
machines have 1gbps NICs and they're plugged into a gigabit switch. ... or
perhaps the bottleneck isn't the NIC at all? Perhaps the network utilization
is only 4% because the harddisks on either side are reading/writing so
slowly that only 4% is called for?


David
 
Consider the following situation:
I'm copying one 12gig file from ComputerA to ComputerB over a 1gbps
network connection. The copy is executed through Windows Explorer. The
transfer is taking place at approximately 4MB/sec which seems insanely slow
to me.

On both the sending and receiving side, the machines have harddisks that
can read sequential data at around 40MB/sec (I'm not sure what the 'write'
rate is). With 1gbps network connectivity, I figured that the bottleneck
would be the disk drives which would imply a copy rate of around 40MB/sec...
but instead, I'm only getting around 4MB/sec.

The target machine is running Win2003. As you know, the Win2003 task
manager has a "Networking" tab where the user can see his network
utilization. My network utilization on this machine is only 4% !! So it
seems that the bottleneck is occurring at the NIC (?)... but why? Both
machines have 1gbps NICs and they're plugged into a gigabit switch. ... or
perhaps the bottleneck isn't the NIC at all? Perhaps the network utilization
is only 4% because the harddisks on either side are reading/writing so
slowly that only 4% is called for?

That is interesting... Some possibilities:
* Is the source/destination harddrive overly fragmented?
* Is either machine short of RAM?
* Do you have any firewall sotware, or anything else that interacts with
network connectivity?
* Do you have an antivirus program which is trying to scan the file while
you transfer it?

(Just some guesses... it might be something else entirely!)

Thanks.

PS. I didn't know you could *get* a NIC that runs at 1gbps... man, that's
dam fast!!!
 
* Is either machine short of RAM?

The source machine is short of RAM... It's using a swap file.
PS. I didn't know you could *get* a NIC that runs at 1gbps... man, that's
dam fast!!!

Yeah, the Dell servers have been coming with built-in in 1gbps NICs for some
time now. They're pretty cool -- especially for database servers that need
to push a lot of data out...
 
You may get a performance boost out of increasing your TCP
window settings. Typically, TCP Window size = bandwidth x
delay. Delay being seconds (you'll be using decimals) and
bandwidth n KB if you want the Window size in KB.

Look up windows 2000 IP tcp settings in technet to find an
artical on all the registry settings you can manipulate
for this. I recommend turning on RFC1323 options and
increasing your max TCP window size.
 
BTW, increasing the tcp window size increases the amount
of ram used per socket. Also, these settings need to be
enabled on the receiving stations so that it can advertise
them as part of the TCP negotiation.
 
thanks! i'll investigate.

You may get a performance boost out of increasing your TCP
window settings. Typically, TCP Window size = bandwidth x
delay. Delay being seconds (you'll be using decimals) and
bandwidth n KB if you want the Window size in KB.

Look up windows 2000 IP tcp settings in technet to find an
artical on all the registry settings you can manipulate
for this. I recommend turning on RFC1323 options and
increasing your max TCP window size.
 
It was the lack of RAM that was causing the problem. It didn't occur to me
that before data can be copied to a drive it must first be copied into RAM.
Since all physical RAM was exhausted, these bytes were being copied
(presumably) into the harddrive-based swap file before being copied again to
their final destination. This made things slow. If I ensure that there is
plenty of physical RAM available before initiating the copy, everything runs
at full speed!

David
 
Back
Top