Windows Server 2008 R2 BranchCache Overview

One of the features which has been included in versions of Windows Server 2008 R2 and Windows 7 is BranchCache.

BranchCache offers the ability to cache specific remote content so that those individuals accessing it remotely can access them easier and with better performance. It does this by offering the ability to cache specific traffic types at the remote location and allowing these caches to be used locally in order to obtain performance increases. It is also important to note that the BranchCache feature/role is only a read cache and thus does not affect the updating of cached files.

BranchCache has a couple of different working modes which are used for different types of traffic and different types of running clients and servers.

For those looking to cache file share data which will be accessed via the Server Message Block (SMB) protocol the BranchCache for network files role service is used. When this feature is used, file shares can be configured to utilize BranchCache to increase share performance.

For those looking to cache Hypertext Transfer Protocol (HTTP), Hypertext Transfer Protocol Secure (HTTPS) and Background Intelligent Transfer Service (BITS) traffic then the BranchCache feature is installed. Regardless of the traffic type this part of the BranchCache configuration is referred to as the Content servicer or server.

On the remote side (or Branch side) there are also a couple of options which are available enabling flexibility when deploying depending on the type and number of computers which are utilized at the site. The first of these deployment options is the Distributed Cache Mode and the second is the Hosted Cache Mode.

When utilizing the Distributed Cache no server is available or running at the remote site which can be used by BranchCache. In this case the Windows 7 clients which are available cache the information on their local hard drives and utilize these caches between each other. When a server is available at the remote site then it can be utilized as a cache point, when this is occurs the Hosted Cache Mode is utilized. When utilizing this mode all the cached information remains on the server and all clients utilize it to improve performance.

Like all technologies, each of these features requires a specific Operating System (OS) version in order to be deployed. These requirements are laid out below.

BranchCache client OS requirements:

  • Windows 7 Enterprise
  • Windows 7 Ultimate

BranchCache content server OS requirements:

All versions of Windows Server 2008 R2 except:

  • Windows Server 2008 R2 Enterprise Core Install with Hyper-V
  • Windows Server 2008 R2 Datacenter Core Install with Hyper-V

BranchCache hosted cache server OS requirements:

  • Windows Server 2008 R2 Enterprise
  • Windows Server 2008 R2 Enterprise with Hyper-V
  • Windows Server 2008 R2 Enterprise Core Install
  • Windows Server 2008 R2 Enterprise Core Install with Hyper-V
  • Windows Server 2008 R2 for Itanium-Based Systems
  • Windows Server 2008 R2 Datacenter
  • Windows Server 2008 R2 Datacenter with Hyper-V
  • Windows Server 2008 R2 Datacenter Core Install with Hyper-V

There are also some other requirements which must be met depending on the BranchCache operating mode. When using Distributed cache mode, a server is not required and the deployment of certificates is not required. When using Hosted cache mode you must enroll a server certificate to the Hosted cache server(s).

The use of either one of BranchCache’s available modes will increase the performance of the above types of traffic. While it is possible to deploy BranchCache using the Distributed cache mode even when a local server is available, it should be noted that Hosted cache mode has additional advantages over the Distributed cache mode, these include:

Increased cache availability:


  • As a server remains online all the time the cache will also remain online all the time thus increasing the availability of the cached information. When utilizing the Distributed cache mode the client which initially requests the data from the content server holds the cached data. If this client goes offline at any time the cache must be reestablished on another client.
  • Centralized caching when multiple remote subnets are used:

    • When using Distributed cache mode each of the caching clients only work within their own subnet and clients on different subnets must separately cache data regardless of whether it has been already cached on the other subnet. When utilizing Hosted cache mode with a server this data can be centrally held on this server and used by clients over multiple subnets.

    The BranchCache feature can be a useful tool when WAN’s separate main and branch offices and should be considered a useful addition to the available features available. Take the time to test the feature in a test bed and measure the potential performance increases.


    This site uses Akismet to reduce spam. Learn how your comment data is processed.