Networking Units: Not getting expected performance from 100Mb Ethernet

Our company has a brand new NAS, and the idea is that we will be able to use it for fast, shared access to our data on our network.

It's a fairly simple 2-disk system, but from what I understand, it should reach speeds of about 40mb/s. We have a 100mb/sec network between our PC's and the NAS.

However, we're only getting NAS speeds of around 8-10mb/sec. What could the bottleneck be?


You are confusing your units.

M = mega
m = milli
B = byte
b = bit

When referring to disk usage, we measure throughput in megabytes per second, or MB/s. Notice the capital M for mega and the capital B for bytes.

When referring to network performance, we measure throughput in megabits per second, or Mb/s. Notice the lowercase b.

A bit is eight times smaller than a byte. You can figure out your 100Mb/s network's maximum theoretical throughput in MB simply by dividing by 8. 100 / 8 = 12.5.

TCP/IP has ~ a 10% overhead, as does Ethernet, so realistically you'll only see about 80% of that at the high end. A little more basic math shows that 12.5 * .8 = 10. You should expect to be able to write at about 10MB/s over your 100Mb/s network. This lines up perfectly with what you are seeing.


tl;dr - Capitalization is important.


You should go for 1000 Mbps (gigabit) Ethernet. The pieces are cheap to buy these days and your speed will be faster. You should be able to reach the 40 MB/s.

Just make sure that your networking cable is all Category 5e. If it isn't at least that good, things will get weird.