In the current world of IT, organizations look for lower operating expenses are investigating technology solutions that can directly lower costs and improve productivity and value add to the business. This blog post will help you to design SCCM Bandwidth optimization tips and tricks.
I will cover the SCCM and Delivery Optimization (DO) design options in the upcoming blog posts.
Abstract – SCCM Bandwidth Optimization
One area in which these organizations are seeking solutions is in the IT infrastructure supporting remote or and branch offices and bandwidth optimization (SCCM Bandwidth Optimization).
With Microsoft Branch cache and Peer cache in conjunction with SCCM for peer cache a solution capability enabled and can expect to see significant performance improvements in content sharing and bandwidth optimization.
Branch cache and Peer cache that reduces WAN bandwidth usage and improves application responsiveness when workstations in a remote location access content from the head office or data centre by downloading and caching content on the local network as it is requested, making it immediately available to other clients that subsequently request the same content.
Introduction to Branch Cache
Branch Cache is a feature of Microsoft Windows 7 which can be utilized for businesses that operate from multiple office locations. Branch Cache provides a file caching service for professional network administrators which works by enabling Windows servers to automatically retrieve and distribute the local copies of files which are being accessed remotely by Windows 7 clients. More tips and tricks about SCCM Bandwidth Optimization is given in the following sections.
Branch Cache can help increase network responsiveness of centralized applications, when they are accessed from remote offices, and users in those offices can experience as if they are working on their local area network. Branch Cache also helps in reducing WAN utilization. When you enable Branch Cache, a copy of data accessed from intranet Web and file servers is cached locally in the branch office. When another client on the same network requests that file, the client downloads it from the local cache without downloading the same content from the WAN link.
Your system must meet the following requirements to use Branch Cache:
- Client computers must use Windows 7, with the Branch Cache feature enabled on it.
- Web servers and File servers must use Windows Server 2008 R2, with the Branch Cache feature enabled on it
What is Branch Cache
Branch Cache is a Windows Operating System component, predominantly used for bandwidth optimization (SCCM Bandwidth Optimization) which works independently of SCCM but integrates with it.
- Was introduced with Windows Server 2008 R2 and Windows 7
- Branch Cache clients can act as peer distribution points for other Branch Cache clients on the same subnet
- Branch cache can be enabled on the client machine via AD Group Policies.
How Branch Cache Works
Branch Cache works in one of two modes: Distributed or Hosted Mode. Distributed allows clients to request cached content from one another, while Hosted Mode centralizes the cache on a Branch Cache server. How branch cache helps to achieve SCCM Bandwidth Optimization.
Distributed Mode should be used when there are fewer than 50 clients on the branch office network
- A Branch Cache Content Server (BCS) breaks content into blocks with unique hashes for each block.
- A Branch Cache client requests content from the BCS. The BCS responds with a list of blocks and hashes.
- The client queries local peers for any of the blocks.
- If the blocks are found on the local sub-net, they are retrieved from peers.
- If any block is not available from a peer, it is retrieved from the BCS. Once retrieved, it is made available to peers.
Branch Cache Operation Modes
- Distributed cache mode: content cache at a branch office is distributed among client computers.
- Hosted cache mode: content cache at a branch office is hosted on one or more server computers called hosted cache servers.
Note: Distributed cache mode is designed for small branch offices that do not contain a local server for use as a hosted cache server. Distributed cache mode allows your organization to benefit from Branch Cache without the requirement of additional hardware in branch offices
Branch Cache Network Ports
- Http (port 80) for content retrieval using Branch Cache retrieval protocol
- WS-Discovery (port 3702 UDP) for content discovery in distributed cache mode
- HTTPS (port 443) for content upload in hosted cache mode using hosted cache protocol
Note: Web Services Dynamic Discovery (WS-Discovery) is a technical specification that defines a multicast discovery protocol to locate services on a local network. It operates over TCP and UDP port 3702 and uses IP multicast address 22.214.171.124
Branch Cache with SCCM
- Distribution points also supports a feature of Windows Server 2008 R2, Windows Server 2012 and Windows 7, and Windows 8.1 and Windows 10 for Branch Cache
- When enabled a copy of content retrieved from a server is cached in the branch office
- Branch Cache feature caches HTTP, HTTPS, BITS or SMB based content
- The only thing you need to do to configure is that your deployments are enabled for downloading and running the applications locally
- SCCM only supports Distributed cache mode for Branch Cache
Note: To implement Branch Cache in SCCM simply enable the Windows Branch Cache feature via the Console for each Distribution Point. To enable Branch Cache on the client machines follow Client Settings with couple of check boxes in the “Client Cache’”section.
Branch Cache Design
The following illustration depicts a dual mode installation, with one branch office configured for distributed cache mode and one branch office configured for hosted cache mode. Learn how you can design branch cache to achieve SCCM Bandwidth Optimization?
Introduction to Peer Cache
Peer Cache is a built-in SCCM solution that enables clients to share content with other clients directly from their local cache.
Peer Cache uses Boundary Groups to determine which peers are ‘local’ and will only attempt to find a peer Content Source if it is in a Boundary Group configured with a Slow Connection to the Distribution Point. Learn how to use peer cache to achieve SCCM Bandwidth Optimization in your enterprise environment.
Beginning with System Center SCCM 1610, you can use Peer Cache to help manage deployment of content to clients in remote locations
Your system must meet the following requirements to use Peer Cache:
- Peer Cache is supported on any Windows OS that is supported as SCCM client.
- Non-Windows operating systems are not supported for Peer Cache.
- Clients can only transfer content from Peer Cache clients that are in their current boundary group.
- Because the current boundary of a Peer Cache content source is determined by that client’s last hardware inventory submission, a client that roams to a network location and is in a different boundary group might still be considered a member of its former boundary group for the purposes of Peer Cache. This can result in a client being offered a Peer Cache content source that is not in its immediate network location. We recommend excluding clients that are prone to this configuration from participating as a Peer Cache source.
What is Peer Cache
Like Branch Cache Peer Cache is also a bandwidth optimization (SCCM Bandwidth Optimization) solution which is native from SCCM. introduced Beginning with SCCM version 1610.
- Was introduced Beginning with SCCM 1610
- Peer Cache client can act as mini distribution Point.
- Peer Cache can be enabled on the client machine via SCCM Client Settings.
Note: Peer Cache does not replace the use of other solutions like Branch Cache but instead works side-by-side to give you more options to extend traditional content deployment solutions like distribution points
How Peer Cache Works with SCCM
Peer Cache works in similar manner of SCCM distribution Point. It can be treated as kind if Mini Distribution Point.
- Peer Cache enables Peer-to-Peer (P2P) transfers of content between clients within the same Boundary Group
- Peer Cache clients report their cache contents to the SCCM site.
- Other Peer systems can request that content.
- The content is located just like any other content lookup, except that SCCM returns a list of Peer Cache Systems along with any Distribution Points that have the content.
- Once enabled, your Peer Cache Source clients will spin up a Web Service locally which is used to act as a content server to other peers – This is known as the ‘SuperPeer’ service
- Clients that are looking for content perform a content lookup as usual, and the Management Point will return a list of content locations
- Any SuperPeers that have the requested content will be returned along with the regular Distribution Points
- The client will then pick a local peer (if available) and from there it performs a regular BITS download of the content
How to Design Peer Cache Design
Peer Cache uses Boundary Groups to determine which peers are ‘local’ and will only attempt to find a peer Content Source if it is in a Boundary Group configured with a Slow Connection to the DP. Design peer cache to achieve SCCM Bandwidth Optimization for your organization’s network environment.
Branch Cache and Peer Cache Comparison Chart
|Peer Cache||Branch Cache|
|Available from SCCM 1610|
|OS feature Was introduced with|
Windows Server 2008 R2 and
|Peer Cache requires clients within|
same boundary group and with peer
|Branch Cache share contents with|
clients within the same sub-net
|Peer cache only works with SCCM|
|Branch cache works with any contentthat is accessed via HTTP or SMB|
|Peer cache clients can share content|
with each other even if they are not
in the same sub-net
|Branch cache clients can share|
content with each other only if they are in the same sub-net
|Peer cache works at SCCM package|
level. The unit of download is an
An SCCM peer cache client can only
start sharing content if it has completely downloaded the entire package.
You can also tell which client has which content
|Branch cache works at a block/segment level.|
The unit of download is blocks, whichis typically just a portion of a file.
Blocks are identified by their hashes
and not by their association to file.
This allows a client to share content
even if it only has portions of it.
This also makes it is difficult to know which client has which content
|Peer cache only has one copy of the|
content, all in the CCMCache
|Branch cache uses its own cache|
which is separate from the actual
content. There are essentially two
copies of the content on the client
|Peer cache discovers content by |
asking the SCCM MP for the location
WinPE clients also performs a
broadcast on the sub-net, in addition
to the MP look-up
|Branch cache discovers content by|
broadcasting the hash of a block,
and the clients that have the block
will respond. This is the reason why
clients need to be on the same sub-netfor this method to work
|Peer cache is very specific to SCCM||Not Specific to SCCM|
|Peer Cache is only restricted by |
Boundary Group which means that
it’s good for multi-VLAN sites where
the content transfers can cross
|Branch Cache is sub-net based|
|Peer cache works from WINPE level||BC does not work from WINPE level|
Note:Peer Cache works from WINPE level is important especially performing the tasks like OSD where significant content is downloaded during the WINPE phase itself.
Key Change:From SCCM 1806 on wards there is significant change in peer cache functionality that it works at the sub-package level. That means it is capable enough to share the content before the actual whole package is downloaded
Peer Cache is a great new addition to the SCCM. Branch Cache is the perfect method to backup Peer Cache. You can implement it and not to worry too much. To ensure maximum P2P enable Branch Cache on all SCCM deployments. Peer Cache need to be handled with care – but implemented correctly, has certain advantages by being tightly integrated with SCCM.
They work well together and enable the efficient way for bandwidth optimization (SCCM Bandwidth Optimization) in SCCM.
Below graphical diagram represents the Client download source:
- https://blogs.technet.microsoft.com/charlesa_us/2015/06/15/configmgr-2012-and-utilizing-Branch Cache-in-your-environment-basics/
- https://2pintsoftware.com/configmgr-peer-cache-Branch Cache/
- http://www.mcmcse.com/microsoft/guides/70-680/Branch Cache.shtml
- https://docs.microsoft.com/en-us/windows-server/networking/Branch Cache/plan/choosing-a-Branch Cache-design
- SCCM Intune Architecture Decision Making Tips and Sample Diagram