Posted By: Steven Kerr Lindsay | Dec 8th, 2007 @ 12:00 AM
Lately I've been receiving a few emails asking me about issues with speeds when copying to and from Windows Home Server. Some of these issues can be network, some can be other things such as your Windows Home Server hardware setup. Especially if you build your home server yourself. This article discusses how you can ensure your Windows Home Server is setup optimally so you can ensure the fastest possible copying speeds.

When you install WHS, it partitions the install hard disk into a 20 Gigabyte primary OS partition and then puts the remaining space as drive D which becomes a 'Primary data partition'.

This 'Primary data partition' is where all of the actual network shares are located, so when you go to \\server\videos your really going to the D drive partition on the primary disk.

When you copy a file across to the videos share for instance, the file is copied onto the D drive partition on your primary home server drive. On the WHS there is a service called the 'Windows Home Server Drive Extender' which is monitoring the videos folder (and all other network shares) which is actually physically located on the D drive 'Primary data partition' of the WHS primary hard disk.

The 'Windows Home Server Drive Extender' looks at the configuration for the share and works out based on this configuration which actual WHS storage drive it will move the file just copied to the share too. The service looks at several thing, such as where other files for the same share are, how much space is free, and if you are using folder duplication.

Once the drive extender service chooses a final destination and moves the media to that destination (If your using duplication it also copies it to another drive for duplication), it creates what is known as a 'tombstone' file in place of the file it just moved to the destination.

The 'tombstone' file is a very small file which points to where the actual file is. This frees up the original space used on the D: drive again and the file is now located on one of the WHS storage drives.

Now this is great as you never need to worry about disk space and you simply see one huge share which can contain the combined space of all of your WHS storage drives.

The problem and the reason copies can be so slow is that if the primary hard disk is slower than the actual WHS storage drives or the drive of the PC which is copying data to it then you're going to get bottlenecked by it.

Here is an example; lets say we have the following setup:

  1. A 1 Gigabit network connection between the source PC and the WHS machine through a 1 Gigabit switch.
  2. The WHS has a 80 Gigabyte primary hard disk which is an ATA100 IDE 7200rpm drive with 2MB cache. It has a write seek time of 10.9ms average/read seek time of 8.9ms and Transfer rates of 420Mbits/s (max) buffer to disk and a buffer to host transfer speed 100.0MB/s.
  3. The WHS has 3 x 500 Gigabyte SATA2 drives which you very sensibly connected to a separate SATA2 PCI card with 3 independent SATA2 channels. The drives are 10,000rpm, with 5.2ms average write seek speed/4.6ms read seek time, and a buffer to host transfer rate of 1.5Gbits/s with a sustained buffer to disk transfer rate of 84 MB/s. In addition these drives also have a 16MB cache.
  4. A Windows Vista PC on the network which has a 250 Gigabyte 7200rpm SATA drive which has a read seek time of 8.9ms/write seek time 10.9ms, and a buffer to disk transfer speed of 748Mbits/s (max) and a buffer to host speed of 300MB/s.

The first thing worth mentioning is that the 1 Gigabit network should be able to copy in theory at about 100-200Mbits/s between the Vista PC and the Windows Home Server.

So lets say we want to copy a 60 Gigabyte file from the Vista PC to the WHS videos share. The file is being read from the Vista PC SATA disk a lot faster than it can write to the WHS ATA100 primary drive.
 
This is due to a large number of factors; 

    The faster read speeds of the SATA drive on the Vista machine, compared to the write speeds of the destination home server ATA100 primary hard disk.

    The SATA drive being nearly twice as fast at moving the data from the disk to the drive buffer compared to the ATA100 primary drive in the WHS.

    The SATA drive being 3 times faster moving the data from the drive buffer to the host (network), than the ATA100 primary drive in the WHS can move the data from the host (network) to the drive buffer.

    In addition the buffer on the ATA100 drive in the WHS is 8 times smaller than that of the SATA drive on the Vista PC which it will take longer to get the data on disk due it not being able to buffer as much before it has to write it to the disk.


So as you can imagine already our copy is now slowed down significantly. There is no chance at this point we're going to be copying at 300MBits/s. So what can we actually expect?

With just the points we mentioned above the speed has already dropped down to about 60MBit/s.

So ok, we can expect 60MBit/s per second? thats not too bad right?

Well I'm sure if you have the above setup your not even seeing that.... So why, what else is wrong?
Well at this point, we only discussed the data getting onto the ATA100 D: drive. As mentioned before, the Windows Home Server Drive Extender service will then move it to an actual storage drive on your Windows Home Server.
You may now be starting to see the issue. Your destination drives are going to be copied to from only the WHS D: drive, nothing else will be writing to these at all.

That means due to the slower ATA100 D: 80 Gigabyte drive speed, along with the tiny 2MB cache, and the 420Mbits/s buffer to disk transfer rate is going to slow down the copy to your super fast drives 10,000rpm SATA2 drives.
Your ATA100 hard disk in this setup is your weakest link. Its slowing down both the copy across the network initially and the copy on the WHS to the storage drive after that. In addition add drive fragmentation of the storage drive/drives and your really getting into trouble.

But.... you could have even more issues, for instance, if you have Media Sharing turned on in WHS for streaming media to your 360's or Windows Media Player 11 etc, then every time you copy a new file to the WHS it is indexed immediately, which can cause some more additional slowdown. 

In addition if you have duplication turned on for that particular folder it will be slower again due to having to move the file to two destination WHS storage drives.
So how much would all of the above actually effect your final copy speed?
Well I've seen in the worst case scenario of above, with the drive bottle neck, disk fragmentation on your storage drives, Media Sharing and Folder duplication turned on. The speeds can drop to as bad as between 1Mbits/s to 7Mbits/s which as you can imagine may disappoint you heavily especially if your on a 1 Gigabit network!

In the worst case scenario I'm talking about I saw copy speeds that slow it would take between 30-60 minutes to copy a 500MB file!

Now we didn't even discuss the scenario that other people may be copying to or from the WHS at the same time!

Finally I wanted to mention another issue, in the setups we talked about, the primary WHS hard disk was a 80 Gigabyte and the storage drives are 500 Gigabyte. This is bad, you want to have a primary hard disk of at least the same size as your largest storage drive if possible. This will ensure that you don't run out of space if you're copying large amounts of files or a single very large file to your home server. Remember they will end up copying to your 'Primary data partition' first!, and if it does not have the space to store the file, it really doesn't matter that you have enough space on your other drives. You need to consider this even more if you think it's likely you will be copying to the server from multiple machines at once.

So what can you do to prevent these situations?

Well... these would be my top 10 tips to ensure you don't get into this situation with Windows Home Server.
  1. Ensure your primary hard disk on your WHS is at least the speed of the fastest disk on your network.
  2. Ensure your primary hard disk on your WHS is at least the size of the largest hard disk in your WHS storage.
  3. Use a disk de-fragmentation tool on your Storage drives (You need de-fragmentation tools specific to Home Server, such as Raxco Perfect Disk for Home Server or Diskeeper 2008 Home Server - Links below).
  4. Unless you need duplication on a folder, turn it off. Duplication in intended for files you really want to ensure you don't loose. i.e. Photos, Personal documents etc.
  5. Unless you need and use the Media Streaming feature of WHS leave it turned off.
  6. Get a 1 Gigabit switch for your network and a 1 Gigabit network card for your WHS, attach your WHS and machines which talk to the WHS to the switch. At the very least your WHS will benefit from being connected to a 1 Gigabit switch even if your other PC's are not using 1 Gigabit network cards. This is due to your WHS being capable of sending more data to more PC's at once when using 1 Gigabit even if the other PC's themselves are only using 100megabit network cards.
  7. Get 1 Gigabit network cards for your PC's which talk to the WHS if you can. As above at the very least get your WHS a 1 Gigabit network card. This tip is obviously contingent on you having a 1 Gigabit switch. Also ensure the cards are actually configured 1 Gigabit, otherwise it would defeat the purpose.
  8. Don't expect to get the full 1 Gigabit speeds on your Home Server or any machine on your network. 1 Gigabit networks do not run 1 Gigabit in homes, they typically run at the fastest at around 300Mbits/s, and typically around 100-200Mbits/s. This is just how 1 Gigabit works in home environments. I included an article below which you can read which will explain some of the issues with speed on 1 Gigabit home networks.
  9. If you are using custom plug-ins on your Windows Home Server be aware of what they are doing, you don't want to slow down the WHS as this could end up slowing down everything on the WHS including file copies.
  10. Fully understand how Windows Home Server Drive Extender works by reading Microsoft's white paper (linked below).

So what speed can you expect if you use these tips and are setup optimally?

Well lets assume we have SATA 7200rpm drives on all machines including the primary disk on WHS. 1 Gigabit Ethernet running CAT6 all round our network on all machines. No WHS Folder Duplication or Media Sharing on our WHS destination share and all our WHS storage drives de-fragmented nicely.


In testing I found that I would get up to around 150Mbits/s which is really fast. The 60 Gigabyte file we talked about took around an hour. A 5 Gigabyte file took around 5 minutes and a 500MB file would wiz across in just 30 seconds!

Useful links:

    Microsoft Home Server Drive Extender White Paper (PDF)

    1 Gigabit Ethernet Need to Know article by Toms Networking

    Raxco Perfect Disk for Home Server

    Diskeeper 2008 for Windows Home Server

Rating:
0
0

Steve that was an awesome explanation of all the bottlenecks that can exists.  It really helped me paint the picture.

 

Mike

Nice job.  One correction though>

"The first thing worth mentioning is that the 1 Gigabit network should be able to copy in theory at about 100-200Mbits/s between the Vista PC and the Windows Home Server. "

Should be 100 - 200 Mbytes /sec i believe.

Nup thats the whole problem, I actually do mean Mbits/s

Gigabit ethernet is capable of 1,048.6 Mbps by definition (Mbits/s) however the you cannot expect that due the reasons I mention in the article.

125 MBps - (Mbytes/s) is actually 1Gigabit maximum speed. So you could never even if you could run MAX speed expect 200MBps (Mbytes/s).

 

Hmm... Something is not right here.

I get an average transfer speed of 250Mbits/s with my current server. It is an old 800Mhz P3 with a RAID 5 controller (4 160GB IDE drives giving about 480GB storage), Gigabit ethernet, and running Windows Server 2003 (OS runs on a separate pair of mirrored 40GB drives). This server has run great for 5 years now, but I just need more storage and was looking forward to the WHS simplified user management.

I was excited about setting up a WHS with drive extender and a few big (i.e. 750GB) SATA drives, that is, until I read your article. I was planning to setup a WHS on an unused 2.4Ghz P4 server, adding a 4 port SATA controller (no onboard SATA) to support the storage drives.

From your article, it sounds that I will actually get WORSE performace with WHS than I have with my current, 5 year old server. This is disappointing, as up to now, I had read that Drive Extender did not result in performance penalties when compared to hardware RAID.

What's up?

 

Very fair question.

My article covers the worst case setup scenario, and how you can design around preventing it. If your seeing 250Mbit/s right now, that's the speed you will see on your network with a home server, a home server cannot change that. Frankly you should also be very very happy with your network speed also as your definately getting the better end of home Gigabit speed right now.

Now as for the performance of Home Server. You won't see less performance as you put it than your current solution, however you could if you did not get the right initial setup with the Data drive for instance. Designed right your copy performance will be the same as it is now. The big difference is you will benefit from some amazing features which only Home Server can offer you, some of these are...

     Full System differential backups of all systems on your network. (Differenatial in the sense you will not need a seperate backup image everytime your system is backed up, you will have a master backup with differential changes each time your system changes)

     The ability to restore an entire system backup onto the same drive or even a new drive with no loss of data. (This btw is a life saver, since I've been using WHS i've already saved 3 dead machines using this - One last night!)

     The ability from any machine with the WHS client on to 'mount' a backup of any drive from any machine which is joined to your WHS from ANY time (backup). This is awesome, I can mount my C: drive from my MCE machine of 12/5/2007 on my laptop and access the files that existed on my desktop at this time for instance.

     The ability to mirror (duplicate) shares across drives on my WHS. This allows me to pick and choose what I want mirrored across my drives, for instance my photos I want mirrored. My Recorded TV I really don't need mirrored Smiley

These are just some advantages to your current setup, a lot more exist.

The speed of your network and your WHS is only as good as your weakest link, this article points our what and where the weakest link could be. If you ensure you don't have a weak link like that, you will experience the same performance you have now, but will gain the massive benefits supplied by WHS as well.

Enjoy.

Will Windows Home Server ever become a "Home Exchange Server" so that I can manage my home email accounts on multiple computers and also access from the web?

Steve,

I too am an English bloke, however I have not yet left the country. I was wondering if there was any way you could shed some light onto the ways in which you can use a media center if you're in a less... well American locale? Sky, Virgin Media etc... if you guys could get a deal with either of these that'd be amazing, but until then MS needs to step up to the bat for them and make something incredible, a lot of people want media ceters but can't get them working fully here.

P.S. Where in England are you from? Seems Northern but I can't place it.

I can answer this by referring to a quote from Charlie Kindel who heads up the Home Server team.

“Ever, like Never, is a very long time. Right now, our customer research clearly indicates that consumers are very happy with the hosted email solutions they currently have. Given this, and the work we’d have to do to make managing an email server brain-dead simple, we believe our resources can be better spent on solving other problems in multi-PC households. Therefore we have no plans at this point for integrating an on premise email system, Exchange or otherwise, in Windows Home Server.”

I think Charlies response points out something very important, multi-PC households and the cross collaboration between services available to them is a really important goal of Home Server. I know I'd rather see more features around this cross collaboration (for instance between Home Server and Media Center) than be able to manage my own email server.

I would encourage you to take a look at a service I use called 'Windows Live Custom Domains' located at http://domains.live.com/

This service allows you to link your own domain name's MX record with 'Windows Live Hotmail', for instance you can browse to http://mywhs.myhomeserverdomain.com to access your home server and browse to http://webmail.myhomeserverdomain.com to access your email.

In addition you can configure up to 500 email addresses which will go to different logins for your domain. Now isn't this easier than managing it yourself Smiley

Hey Northern Geek, your right I am a northerner too. Originally I was born in Middlesbrough, brought up near by in Redcar and then lived in Loftus (North Yorkshire) for a while, and finally I moved to Watford down south until I eventually moved to the US. This is the reason the accent is a little hard to pin down Smiley

On the UK side of things for Media Center, I know people are doing this now with no issues, including digital television dual channel receivers.

Do you have a specific setup you've been having an issue with?, if so let me know the specific issues and setup and I'll try and help out Smiley