I’ve done a bunch of articles about how to save your bandwidth when you are trying to replicate backups and virtual machines to your disaster recovery site, however I don’t think I have ever talked about anything that accelerates active data, in this case shared files.
Here is the official description off of the MS TechNet article at http://technet.microsoft.com/library/hh831696 :
“BranchCache is a wide area network (WAN) bandwidth optimization technology that is included in some editions of the Windows Server® “8” Beta and Windows® 8 Consumer Preview operating systems, as well as in some editions of Windows Server® 2008 R2 and Windows® 7. To optimize WAN bandwidth when users access content on remote servers, BranchCache copies content from your main office or hosted cloud content servers and caches the content at branch office locations, allowing client computers at branch offices to access the content locally rather than over the WAN.”
This is a HUGE innovation from Microsoft, I believe that it will not only help traditional enterprises and their branch offices, but also SMB’s that are looking to move their servers to the cloud, but do not want to deal with very slow file downloads if they are not able to get big pipes.
So how does it work?
There are two types of BranchCache, one is designed for an office with no “server” at all… meaning that there are only PC’s at that branch location. The other is designed in a way where there is a designated server that does all of the cacheing. Below are two images of how they look, first is Server based BranchCache:
In either situation here is an overview of what happens:
1.) A client transfers a document for the first time into a given branch office (defined by a subnet)
2.) The second computer that wants the same file will ask local PC’s or a BranchCache server if they have a local copy of the file
3a.) If they do have a copy of the file they will transfer it locally across the LAN to the computer that requested it.
3b.) If it is not local already the server at the main site will send the file to the requesting PC.
4.) If a client makes changes to the file they are send back to the main file server.
Now you are probably thinking the same thing I first thought…why not just use DFSR?
BranchCache versus Distributed File System Replication
I found a good article on ServerFault.com that had the following list of pro’s and con’s:
- No version conflicts
- Fast access for subsequent access
- Slow access for first time access
- Slow write access
- Quick read/write access to data at all times
- A limited amount of additional data security
- Backlogs can occur very easily
- Version conflicts can be an issue with backlogs
- Replication can take too long – not suited to real-time access to files between offices.
My Next Steps
I have not actually set this up in the lab yet, but that is the next step in the process for me. I plan to utilize some virtual Windows 2008 R2 servers with some Windows 7 Desktops (make not they must be Enterprise or Ultimate) and make a virtual router or to so that I can make it believe they are on different offices (which again are designated by different subnets). I will report back after testing and let you know what my findings are and exactly how to set it up.