Jul 28, 2025·8 min

Caching updates for branches: BranchCache and Delivery Optimization

Caching branch updates: how BranchCache, Delivery Optimization and WAN optimization reduce traffic, and which metrics to measure.

Caching updates for branches: BranchCache and Delivery Optimization

The scene is usually the same: in a branch dozens or hundreds of PCs almost simultaneously pull the same content from the central office or the internet. Each PC downloads the update separately, and the link fills with duplicate flows. As a result, all services suffer—from mail and telephony to CRM and remote desktops.

This is most noticeable on patch days and during mass deployments. Updates come on schedule (for example, on Tuesday) or are pushed by an admin to a device group. Clients start downloads at about the same time, while the branch link is typically sized for daily traffic, not for delivering gigabytes concurrently.

The heaviest traffic usually comes from Windows and driver updates, Microsoft 365 (Office) and other large packages, antivirus/EDR definitions, OS images and application bundles, internal distributions, and large media files (training videos, webinar recordings).

Caching updates for branches works best where there are many repeats: once a file is downloaded, other devices get it locally (or from neighboring PCs). This is noticeable in offices with dozens of identical workstations, especially if updates and software are standardized.

Where the effect is barely visible: when there are few devices, the content is unique per machine (different builds, language packs, individual downloads), or the bottleneck is not the WAN at all. Frequent causes are weak Wi‑Fi, an overloaded proxy, or slow local disks. In such cases caching can help in spots but won’t solve the whole problem.

Options: BranchCache, Delivery Optimization and WAN optimization

Built-in Windows mechanisms are often enough for caching updates in branches. A separate WAN optimization layer is needed when links are unstable, traffic limits are strict, or there are many heavy corporate applications.

BranchCache is suitable if a branch has many Windows devices and you want the first downloader to share the file with others. It works either in distributed mode (cache on client PCs) or via a Hosted Cache where the cache is stored centrally in the branch.

Delivery Optimization (DO) focuses on Windows updates and some Microsoft content. It builds a peer delivery model: devices on the same network exchange blocks so the internet link is used less. It’s important to define boundaries up front—who can peer with whom and what background transfer limits are acceptable.

WAN optimization includes separate products and network approaches: compression, deduplication, protocol acceleration, QoS. It’s useful not only for updates but also for file shares, VDI, ERP and backups.

Typical choices:

  • Only BranchCache/DO — if updates and standard content are the main load.
  • WAN optimization — if traffic is diverse and many non-Microsoft systems are involved.
  • Combination — if the branch can host a cache server and you need to squeeze maximum capacity from a constrained link.

There are limits. Encryption and VPNs often hide data so it becomes harder to optimize. Dynamic content and personalized files cache poorly. So first identify what eats the link: updates, files, video calls or applications.

If you build branch infrastructure turnkey, a systems integrator like GSE.kz usually helps align caching with security policies and the real network layout so results are predictable.

What to collect before rolling out: inputs and constraints

For caching to actually reduce link load you need to understand the starting conditions. Otherwise it’s easy to enable BranchCache or Delivery Optimization and get weak results: content takes a different path, cache is stored in the wrong place, or update windows are too short.

Start with a map of branches: how many sites, how many active PCs at each, how often are they online. Record link type and speed (MPLS/VPN/internet), real throughput during business hours, and redundancy (second ISP, 4G, failover). A branch with “50 Mbps on paper” may actually live on 10–15 Mbps in the evening when updates run.

Next, identify content sources. Where do Windows Updates, Microsoft 365, drivers, images and large apps come from now: directly from the internet, via central office, via WSUS/ConfigMgr, local repositories, or file shares. That determines where cache will appear and whether it will participate in delivery.

Document maintenance windows and timing requirements. For example: security updates must install within 48 hours, reboots allowed only at night, no updates on Fridays. These rules often matter more than the technology choice. If the window is 2 hours, you need a predictable delivery scenario, not “however it happens.”

Security and segmentation are a separate block. Answer practical questions: is P2P allowed inside the branch, is VLAN isolation used, what about guest Wi‑Fi, firewall rules, can you host a cache server in the branch? Sometimes policy forbids horizontal data exchange and DO in peer mode will not be acceptable.

Finally, common scenarios. VDI and thin clients often don’t hold local caches. Laptops travel and update via home internet, then return and may re-download the same packages. Example: a branch has 30 laptops and half show up only on Mondays—those create the peak. With these inputs you can choose a design: local caching node, P2P within the branch, or a combination with WAN optimization.

BranchCache: step-by-step setup without extra theory

BranchCache helps when the same content (for example, Windows updates or large installers) is downloaded by many PCs in a branch over a narrow link. The first client pulls data from HQ or the internet and others get it locally.

Step 1: choose mode and cache location

Decide how the branch will share the cache:

  • Distributed Cache: cache lives on workstations and is shared between them. Suitable for small offices without a server.
  • Hosted Cache: cache is stored on a dedicated server in the branch. Suitable for 30+ PCs, frequent updates and when you need control.

If you choose Hosted Cache, size the disk and set a quota in advance. A practical rule: allocate space equal to 1–2 of the largest update waves (for example, a cumulative update + Office). Better to allocate a smaller, stable size than to fill the system disk.

Step 2: enable policies and basic network requirements

Group Policy controls everything: enable BranchCache on clients, set the mode (distributed or hosted), and for hosted specify the cache server address.

Two network conditions are critical: clients must see each other (for distributed) or see the server (for hosted). And internal security rules must allow BranchCache services.

Step 3: pilot and verify the cache actually works

Pick one pilot branch and one content type (e.g., OS updates). Simple test: the first PC downloads, the second should fetch noticeably less data from the WAN.

Verify by facts:

  • repeated installation of the same update on another PC is faster;
  • logs/statistics show cache hits;
  • WAN traffic to the branch drops on repeat downloads.

Step 4: roll out and rollback plan

Roll out 2–3 branches at a time and keep a clear rollback: separate GPO for BranchCache you can quickly disable, and a pre-agreed window for changes. That way caching yields measurable results, not just “felt improvements.”

Delivery Optimization: how to enable and avoid overloading the network

Delivery Optimization helps cache updates without a separate server: one PC downloads the content and others take it from neighbors on the local network. DO works best for Windows updates and Microsoft Store content. It can also help with large corporate packages if the source supports DO.

Start by selecting the mode. In a branch with a normal LAN, peer traffic within the LAN is usually enough; for fragmented subnets it’s better to use group-based modes. If branches go out to the internet via NAT, peering between offices often won’t work as expected. It’s more practical to rely on exchange within each branch.

To avoid network congestion on update day, set limits: background download speed caps (for work hours and nights), scheduled active download windows, cache size and retention, and special rules for slow links. For laptops split scenarios are useful: on the road they download from cloud, in the office they use the LAN.

Verify by checking that clients actually exchange content blocks: Windows shows DO status in update settings, there are events in the log, and the PowerShell command Get-DeliveryOptimizationStatus reports details. If peering works you’ll see part of the data obtained “from other PCs.” Monitor user impact: if file opening slows or video calls stutter, reduce background limits and move downloads to night windows.

WAN optimization: where it helps and where it doesn’t

HQ and branch architecture
We will design central infrastructure and channels so branches receive content faster.
Discuss architecture

WAN optimization pays off where large, repetitive data flows traverse the link: updates, standard files, distributions, backups. For caching updates in branches, often proper cache and delivery setup is enough, and WAN optimization is an add-on for heavy flows.

Effects are seen most on HTTPS downloads when the solution can handle encrypted traffic (otherwise gains are limited), on SMB traffic between branch and central file servers, backups and replication, mass installations and updates, VDI access and large corporate portals (if the problem is volume).

WAN optimization rarely fixes VoIP and video conferencing. Those need low latency and low loss; extra processing can worsen quality.

Before buying a dedicated platform squeeze basic measures first—they often yield quick wins:

  • QoS: priority for voice and critical apps.
  • Scheduling: move backups and large syncs to night.
  • Limit background transfers during business hours (including updates).
  • Split traffic across internet and MPLS/reserve VPN channels if available.
  • Identify "who eats the link": top apps and top hosts reporting.

A separate WAN box is needed when branches constantly hit the link cap and simple measures don’t help: many offices, expensive links, regular peaks (patch day), heavy SMB operations.

Ask vendors: what exactly is optimized over HTTPS and how encryption is handled; how the solution works with MPLS, SD‑WAN and VPN; whether there’s protection from double-compression; how effect is measured (traffic saved, transfer time, latency); what happens on device failure (bypass mode and recovery).

Typical risks: double-compression (no benefit, added latency), conflicts with encryption (blind optimization), and added delay on interactive services. If branches run video meetings alongside backups, configure QoS and scheduling first, then add optimization for backups and files while leaving voice traffic untouched.

What numbers to measure: metrics that show the effect

To know whether caching updates for branches works you need before-and-after numbers collected the same way. Agree in advance what comparison period you’ll use (for example, two normal weeks and one week with update windows) and which branches to include.

Minimum metric set

These indicators are easy to present to the business and give a clear picture:

  • WAN traffic: GB per day, peak Mbps and the 95th percentile during business hours and update windows.
  • Cache hit ratio by branch: share of content served from local cache vs pulled over the link.
  • Delivery time to user: minutes from download start to completed update/installation, by branch.
  • Network stability: latency and packet loss during normal times and during mass downloads.
  • Operational stats: percent of successful updates, number of re-downloads, number of Service Desk incidents.

Good practice: add a control group. For example, leave two similar branches unchanged and enable BranchCache or DO in two others, then compare the same metrics.

Example: if a branch with 40 PCs used to hit 80–100 Mbps on patch day and critical apps suffered, after enabling cache you should see a drop in the 95th percentile and shorter delivery times—not just “fewer GB.” If WAN traffic falls but re-downloads and incidents rise, the result is questionable.

How to build a test and prove the result

24/7 branch support
We support branch infrastructure and help resolve incidents quickly 24/7.
Enable support

Start by collecting a baseline. At minimum gather 1–2 weeks of data on the current setup: how much traffic goes to the internet, how long updates take, and what happens to the link during peak windows.

A pilot is best done in two offices: one with a narrow link and high RTT, another with a faster link. This shows where the solution helps most and where gains are modest.

Test plan

Compare identical events, otherwise the numbers will be disputed:

  • Record baseline metrics before changes (1–2 weeks).
  • Enable BranchCache or Delivery Optimization only in pilot branches.
  • Run 2–3 controlled events: patch day, installation of a large package, download of training video or images.
  • Repeat the same events with the same packages and time windows.
  • Collect metrics and compare to baseline.

Example: in a branch of 20 PCs you install the same cumulative Windows update overnight. Before the pilot all 20 machines fetch the package externally; after the pilot the majority pulls it from the local cache.

How to present results for IT and for business

Split the report into technical points and business-friendly conclusions:

  • Link savings: GB to the internet before and after.
  • Update time: median and 95th percentile.
  • Peak link usage during the update window.
  • Cache hit rate and number of clients served locally.
  • Reduced downtime: fewer complaints, fewer disrupted calls and operations.

This format makes it easier to decide on scaling to other branches.

Common mistakes and pitfalls in caching

The most common issue is enabling caching and forgetting it. The first week looks fine, then the cache grows, displaces important data or stops being useful because nobody monitors quotas and cleanup.

What often eats the expected benefit:

  • No disk limits for cache and no cleanup plan. The cache fills local disks (or is cleared manually), users complain about slowness.
  • BranchCache and Delivery Optimization enabled without a clear design. If it’s unclear who serves content (server, peers, or host), you can get duplicate downloads and complex diagnostics.
  • Trying to cache content that doesn’t cache well: frequently changing content, per-device unique files, or sources that don’t support the needed mode.
  • Ignoring the network: VLANs, strict ACLs, NAT between segments break peering and neighbor discovery. Settings may be enabled, but no exchange happens.
  • Uncoordinated update windows. Mass downloads during business hours slow CRM, mail and files even if total traffic is lower.

Example: in a 40‑PC branch they enabled DO but left devices in separate VLANs with inter‑VLAN traffic blocked. Each VLAN downloaded from outside, local exchange was negligible. Before launch verify peering is possible and agree on update schedules.

Quick checklist before going to production

Before enabling caching across all sites, define what you want to improve and how you will measure it. Otherwise you may only “improve” perception or shift load to another time.

Check:

  • Goals set in numbers: for example, reduce the peak update-day link load by 40% and shorten update delivery time by 20 minutes per branch.
  • Clear list of content and sources (HQ, local servers, cloud) and which branches get content first.
  • Limits and rules: how much disk for cache, allowed time windows, speed limits, and services to exclude (telephony, VTC, medical systems, POS terminals).
  • Monitoring ready before enabling: WAN traffic, latency and loss, cache hit rate, percent of successful installs, average download and install time.
  • Rollback plan: who and how disables caching, which policies revert, and how to quickly verify the branch is back on the old scheme.

A practical test before scaling: choose 1–2 typical branches and run a scheduled “update day.” If metrics show WAN traffic drop and hit rate rise without user complaints, expand the pilot.

Example scenario: branch network and patch day

Segmentation without surprises
We will check VLANs, ACLs, NAT and proxies so DO peer discovery doesn't break.
Check the network

A company with a central office and 8 branches. Each branch has 30–80 PCs and links to HQ of 20–50 Mbps. Staff use 1C/CRM and make calls in Teams or via SIP.

Monthly a wave arrives: Windows patches and Office updates. Before caching all clients pull identical packages from the internet or HQ. The link is saturated, latency rises and users complain about slow 1C/CRM and poor audio.

Solution in this example:

  • Enable Delivery Optimization so branch clients share updates locally rather than pulling everything over the WAN.
  • Use BranchCache for corporate packages: MSIs, images, content from file shares or internal web services.
  • Configure QoS on routers or SD‑WAN to prioritize voice so updates don’t drown calls.

Typical observed changes after 1–2 cycles: peak WAN load during patch day falls 2–4x, locally served traffic rises to 60–90% (per DO/BranchCache stats), and update installation times become smoother (fewer queues and re-downloads).

To keep the effect after a quarter, enforce standards: consistent policies across branches, a QoS template, and regular per‑office reporting. A short report with 4–5 lines is enough: WAN peak (Mbps), WAN download volume (GB), cache hit rate, average install time, number of connectivity incidents on patch day.

This scenario is often implemented and supported by systems integrators. For example, GSE.kz can help align update policies, networking and support so metrics remain stable.

Next steps: rollout plan and support

If the goal is simple—less traffic and faster patching—start with a small pilot and measurements. Without a baseline it’s easy to improve only impressions and not actual link load. Caching updates for branches almost always helps if you agree in advance what success looks like.

What to do tomorrow

Pick 1–2 branches that most often suffer during updates and do a short preparation:

  • Capture baseline metrics for 1–2 update cycles: WAN peak, total GB, and update download/install times.
  • Check constraints: proxies, DPI, strict ACLs, nonstandard ports, night windows.
  • Define pilot device group and content types (Windows Update, Microsoft 365, large installers).
  • Choose cache model (client cache or dedicated node) and approximate cache size.
  • Agree rules: update schedule, incident owners, rollback procedure.

After the pilot scaling is easier if you prepare a template: a single policy for BranchCache/Delivery Optimization, a standard cache size per number of PCs, and a clear update regimen (windows, priorities, exceptions for critical services).

When to bring in an integrator

An integrator is worth it when the network is complex (many routers and security zones), SD‑WAN is used, multiple ISPs per branch exist, or critical services are on the link (healthcare, POS, contact center). There you need a test plan, QoS control and correct exception handling.

If you need not only policy setup but also hardware selection for caches and branch roles, involve GSE.kz. They offer standard PCs and all‑in‑ones for typical workplaces, servers for local tasks, systems integration and 24/7 technical support.

To make a meeting productive, prepare:

  • network diagrams and link speeds per branch;
  • current update delivery method and schedule;
  • security constraints (proxy, filters, segmentation);
  • target metrics: how many GB to remove from WAN and acceptable update times;
  • list of pilot branches and device counts per site.

FAQ

Why does the branch "kill" the link on patch days?

If many PCs in a branch download the same package at roughly the same time (Windows patches, Office, drivers, images), the WAN gets clogged by duplicate downloads. Caching makes the file download once and then be served over the local network, so the WAN is used much less.

What caches best in branches?

You get the fastest results from Windows Updates, Microsoft 365 components, standard driver packs, OS images and identical corporate installers that are deployed to many identical workstations. The more repetitions of the same content, the more benefit caching brings.

When does caching give almost no benefit?

When there are few devices, or every device downloads unique content (different languages, builds, or individual packages), the gain will be small. Another common reason is that the bottleneck isn’t the WAN but the local network: weak Wi‑Fi, an overloaded proxy, slow disks, or restrictions on cross-segment traffic.

How does BranchCache differ from Delivery Optimization?

BranchCache fits when you have corporate content from internal sources (file shares, web services, repositories) and want the branch to avoid pulling the same data over the WAN repeatedly. Delivery Optimization focuses mainly on delivering Windows updates and some Microsoft content by exchanging blocks between PCs inside the network.

How to choose BranchCache mode: distributed or hosted?

Start with Distributed Cache if the branch has no server and is small: the cache lives on workstations. Hosted Cache makes sense when there are many PCs and you need a predictable result: a dedicated server in the branch is easier to control for cache size, availability and diagnostics.

How to enable Delivery Optimization without "killing" the local network?

Set clear boundaries: peer-only within the branch, background speed limits for work hours and separate rules for nighttime, plus a cache size limit. Verify on a test group that data is actually coming “from other PCs” and not from the internet, and monitor that calls and critical apps aren’t affected.

Do VPN and encryption interfere with caching and WAN optimization?

VPN and encryption often make traffic opaque to optimization, so expectations should be validated in a pilot. For peer delivery inside a branch, the key is that devices can see each other and that segmentation, ACLs and firewalls don’t block the necessary traffic.

Which metrics actually show the solution is working?

At minimum, measure the WAN peak and traffic volume in the update window, the cache hit rate, and the delivery time until an update is ready on the PC. If WAN traffic drops after enabling caching, while installation time and incident count do not worsen, you’re on the right track.

How to run a pilot so the numbers are believable?

Collect a baseline for 1–2 weeks and choose 1–2 pilot branches. Then enable one technology on the test group, repeat the same event (for example, the same cumulative update in the same night window) and compare results with a control branch where nothing changed.

What are the most frequent mistakes when deploying BranchCache/DO?

Common problems come from missing cache limits, unchecked segmentation, and accidental update schedules. The practical approach is separate policies, a clear rollback plan, and regular checks that the cache is actually used rather than just filling disks and complicating support.

Caching updates for branches: BranchCache and Delivery Optimization | GSE