How about BranchCache?
The business case here for BranchCache is our users in our
remote offices are getting timeouts attempting to access
files from our headquarters.
So in this case, your headquarters has your file shares,
and you've got branch offices, and in this case,
those branch offices maybe have lower bandwidth or
unreliable connectivity to HQ,
so can we cache that file share data in the remote office to give
our users lower latency and predictable access?
Now, honestly,
this BranchCache case isn't as relevant now in 2022 as it was 10 years ago
because chances are pretty good you have high‑speed connectivity in your
remote offices, so take that for what it's worth. At any rate, let's take
a look at the BranchCache architecture because you will be asked about
this on your AZ‑800 exam.
All right, so taking this topology diagram from left to right, first,
when we install the BranchCache feature on our Windows servers,
these servers are called content servers, and there's three
sharing contexts, or caching contexts, for BranchCache. There's
the file server. In my experience,
that's the most popular one, where you have file shares that you
want available to your branch office users.
There's web server where you can cache web content. And then there is
the BITS, the Background Intelligent Transfer Service,
content server type, and that's what you would use or that's
what you would deploy if you're using, say, Windows Server Update Services,
WSUS, and you need to patch machines and branch offices
and you want to cache the WSUS data.
So those are our three contexts for BranchCache. By the way,
besides installing the appropriate role services on your content servers,
we can fix up the rest of the environment using Group Policy.
I'm going to demo all this, by the way.
I'm just going through the theory first, and then we'll do the demo.
You need to know that there are two deployment models for BranchCache.
One, my favorite, is the hosted cache server.
This is where you have a Windows Server machine in the branch office
and you've installed BranchCache on it and configured via Group Policy
this machine to be a hosted cache server.
Then, when you mark file shares in your content servers for caching,
that instructs your hosted cache server to cache those particular
shares, and then your workstation clients and other machines in that
site have easy access to that data.
Now when you're using BranchCache in a file server way,
BranchCache servers need a way to mark or gauge whether a file is current.
In other words,
is the cached file current compared to what's on the content server?
This is done by a process called hash generation.
The content server and your hosted cache server will compute
cryptographic hashes on each shared file as a way to compare
whether the cached version is current or not.
And again, you can do all that configuration with a Group Policy
Object, or GPO. The other BranchCache deployment method is distributed
cache, and this is useful when you have a distributed workforce where
they're not attached to a single server that can serve as a hosted
cache. With distributed cache, as the workstation clients access those
shares, the local data in the share is cached on the client workstation
itself.
So Microsoft offers these options just for different business.
Especially with the pandemic, we have more mobile workforce than we
ever have before, so that's not to say that BranchCache is new
because it's been in the product for many,
many years, but there you have it. Now, as promised, let me do a demo showing you DFS and BranchCache.