This month, my fellow IT Pro Technical Evangelists and I are authoring a new articles series on 20 Key Scenarios with Windows Azure Infrastructure Services. You can catch the full series at http://aka.ms/CloudTop20. In today's article in this series, we'll discuss accelerating content on cloud-based web and file servers using Windows Server 2012 BranchCache. Once implemented, this solution can dramatically improve the user experience when accessing content servers in the cloud across high-latency, low-bandwidth Internet connections.
Traditional file sharing protocols, such as Server Message Block ( SMB ) in Windows Server 2012, are primarily designed for low-latency, high-bandwidth scenarios commonly found in Local Area Networks ( LANs ). When attempting to move file server workloads to the cloud, many IT Pros find that the unpredictable latency and limited bandwidth related to most Internet connections can make it challenging to deliver file services from the cloud in a reliable manner.
In this Step-by-Step article, I’ll walk through a configuration that leverages the BranchCache feature available in Windows Server 2012 and Windows 8 Enterprise. Once implemented, BranchCache can solve cloud networking challenges by implementing a Wide Area File Services ( WAFS ) solution that caches frequently accessed data locally, either in a Distributed Cache across local clients or on a local Hosted Cache Server.
Lab Scenario: BranchCache Accelerating Content Access from the Cloud
In this configuration, BranchCache has been tested to deliver up to a 2,000:1 reduction in network traffic by avoiding retransmission of common data blocks over unpredictable Internet and Wide Area Network ( WAN ) connections.
Although originally intended for accelerating content access between main corporate data centers and branch office locations, BranchCache works equally well for accelerating content access from the cloud. When accelerating content over high-latency network connections, BranchCache operates in the following manner …
For a more detailed description of BranchCache, see BranchCache Overview in the Microsoft TechNet Library.
In the process above, you may notice that the local Hosted Cache Server is accessed “out-of-band" to the original SMB file content request made to the remote server, rather than being “in-band” to the original request issued in Step 1. BranchCache operates in this manner so that the local Hosted Cache Server does not represent a possible “point-of-failure” in accessing this content. If the local Hosted Cache Server is offline, BranchCache-enabled clients will continue to access the requested content directly from the remote content server via SMB, albeit without any acceleration applied to the request.
If desired, multiple Hosted Cache Servers can be configured at larger sites to provide continuous BranchCache acceleration even if a single Hosted Cache Server is unexpectedly offline. In addition, Hosted Cache and Distributed Cache modes can be combined so that BranchCache performs a “fallback” to BranchCache-enabled Distributed Cache clients in the event that an active Hosted Cache Server cannot be located.
BranchCache can be configured in two “modes” of operation: Distributed Cache and Hosted Cache Server. These modes can be used independently, or both modes can be used together for increased flexibility.
Distributed Cache mode is a great solution for small, single subnet remote office locations, whereas Hosted Cache Servers are the better option for larger, multi-subnet offices.
As a best practice, you may choose to enable BranchCache clients for both Hosted Cache Server and Disributed Cache modes together – clients will try to locate and leverage Hosted Cache Servers first, but will fallback to using Distributed Caching if no Hosted Cache Servers can be contacted.
To get started with implementing this lab scenario, you’ll need a Windows Azure subscription with the Virtual Machines preview feature enabled.
Good news! You can get a Windows Azure subscription for FREE by leveraging our FREE 90-Day Trial Subscription program. This program is a great way to evaluate Windows Azure and it provides up to 750 compute hours and 35GB of replicated cloud storage per month for 90-Days for FREE!
NOTE: When activating your FREE 90-Day Subscription for Windows Azure, you will be prompted for credit card information. This information is used only to validate your identity and your credit card will not be charged, unless you explicitly convert your FREE Trial account to a paid subscription at a later point in time.
Once you’ve activated your Windows Azure subscription, you can follow the steps below to build your BranchCache solution to accelerate cloud content access:
Completed! You have successfully configured BranchCache to accelerate Cloud content access.
After completing this Do-It-Yourself article, continue learning about Windows Server 2012 and the Windows Azure Cloud Platform with these additional resources:
Do you have unique use case scenarios or business requirements for cloud solutions? Feel free to share your comments, experiences and questions below!
See you in the clouds!
Be sure to check out these additional resources:
Keith Mayer is a Principal Technical Architect at Microsoft, focused on helping ISV partners leverage the Azure cloud platform. Keith has over 20 years of experience as a technical leader of complex IT projects, in diverse roles, such as Network Engineer, IT Manager, Technical Instructor and Consultant. He has consulted and trained thousands of customers and partners worldwide on design of enterprise technology solutions.
Keith is currently certified on several Microsoft technologies, including Azure, Private Cloud, System Center, Hyper-V, Windows, Windows Server, SharePoint, SQL Server and Exchange. He also holds other industry certifications from VMware, IBM, Cisco, Citrix, HP, CheckPoint, CompTIA and Interwoven.
You can contact Keith online at http://aka.ms/AskKeith.