When this series was initially proposed, my thoughts immediately moved to “what have we not heard about” or at least not too much about? There are so many positive aspects of Windows Server that we dwell on, I wanted to pick something we don’t hear enough about: Distributed File System and BranchCache
Although these are not completely related topics, they are both technologies designed to support end user access to file resources in a distributed organization; an organization with more than one physical office. A few years back, we used to cite that an organization with more than 50 employees had greater than a 52% probability of more than one physical office. How are we supporting access to network resources for those employees that are working out of the “remote offices?”
What is a Distributed File System?
According to the TechNet documentation on Windows Server 2012 R2 Distributed File System (DFS) found at https://technet.microsoft.com/en-us/library/jj127250.aspx, DFS is broken into two different components: DFS Namespace and DFS Replication.
The DFS Namespace “Enables you to group shared folders that are located on different servers into one or more logically structured namespaces.” While the DFS Replication “Enables you to efficiently replicate folders across multiple servers and sites.”
If DFS Replication is being used, an initial, seeded copy of the data can be done. From that point on, any changes made to the replica or the main office will result in a sync’ing of only the changed blocks using an optimized Remote Differential Compression transfer.
This powerful pair of services allows a network administrator to set up a virtualized file system (DFS) that appears the same regardless of the data location or end user location. One advantage is that documents can be kept on a local server, to improve access performance, while having changes replicated to the other instances of the same file found on other geographically distant servers. Another benefit is the path they use to access one of the resources (UNC) is the same regardless of where the physical resources are actually hosted. this makes access to network resources easier to share. And lastly, there is some native fault tolerance; if a local resource is unavailable because of an unforeseen issue, the DFS reference will fail over to the next best hosting location.
What is a BranchCache?
According to the TechNet documentation found at https://technet.microsoft.com/en-us/library/hh831696.aspx, “BranchCache is a wide area network (WAN) bandwidth optimization technology”. Accessed files are cached locally to improve bandwidth optimization and performance. There are two modes of BranchCache: distributed cache mode and hosted cache mode.
In distributed cache mode, the local cache is kept on a workstation running Windows 7 or sooner. While hosted cache mode the local cache is kept on a server running Windows Server 2008 R2 or sooner. Obviously the distributed cache mode is more economical because it uses a workstation. This makes distributed cache mode a desirable solution for very small branches where a server ROI would be difficult to justify. However, the cache in distributed cache mode will disappear if the caching workstation is turned off or removed from the local network.
Once configured, typical operation of BrachCache is initiated by a client computer attempting to access a data file found at the main office, this is the “request” operation. A scan is performed of the local cache server to “locate” the document. If found, that cached copy is used. If not found, the document is “retrieved” from the main office and stored in the local “cache”.
DFS vs. BranchCache
So, what is the difference between DFS and BranchCache if I’m looking at BranchCache hosted cache mode?
In DFS, you define specific locations for the data sources and where the replicas are kept. In addition, you can specify exactly how much data will be pre-cached. When the user attempts to access locally cached data, the information is already there. If view this as being a more structured solution.
In BranchCache hosted cache mode, the data cached is often just cached on demand the first time a particular data file is accessed. I view this as being a more organic solution.
Remember, even if you are starting the shift to the Cloud, that doesn’t negate the need for on-premises technologies. Parts of DFS and Branch Cache are ideally suited for a hybrid deployment model supporting a highly mobile user community. There is additional information provided in each of the previous TechNet articles about things to watch out for when integrating with Azure.
Hopefully these thoughts have inspired you to think of other ways you can leverage Windows Server in your customer solutions.
Please check out our whole series on Windows Server 2012 R2 at https://aka.ms/ts2windowsserver2012r2