If you’re using Microsoft System Center Configuration Manager to manage your desktop environment, you are probably considering the options available for delivering software distribution, patch management and OS deployment without implementing Distribution Points in every location. Configuration Manager has come a long way in providing solutions for remote users. Microsoft has also introduced a number of options for peer-to-peer content distribution for systems management.
1E was the first company to invent a peer-to-peer content distribution solution (Nomad) for Configuration Manager (or Systems Management Server as it was then). We are often asked about the options available ‘out-of-the-box’ from Microsoft for peer-to-peer content distribution and whether there is still a requirement for Nomad. The table below summarizes the three Microsoft peer-to-peer solutions available and compares them to 1E Nomad.
* Not officially supported but can be tweaked using 3rd party tools
This article explains each of the options in more detail so you can make an informed decision when choosing a peer-to-peer content distribution solution for Configuration Manager.
BranchCache is a feature of the Windows operating system, introduced in Server 2008 R2 Enterprise and Windows 7 Enterprise. (In fact, BranchCache can also be used with Windows Professional, but is limited to BITS transfers only – for more details read, Operating systems for BranchCache client computer functionality).
BranchCache can be used for peer-to-peer sharing of content from an HTTP or SMB source on the BranchCache server. BranchCache can operate in one of two modes:
In 2009, Microsoft added support for BranchCache (Distributed Mode only) for peer-to-peer content distribution in Configuration Manager 2007 SP2. If your Distribution Point servers and your clients have the BranchCache feature installed and configured correctly, simply enabling the option in the Configuration Manager Deployment (for Packages, see Figure 1) or Deployment Type (for Applications, see Figure 2) will make it all happen. In fact, these BranchCache options are enabled by default on all new Package Deployments to Software Update Deployments and Application Deployment Types as of Configuration Manager 2012.
Fig 1. Enabling BranchCache for a Package Deployment
Fig 2. Enabling BranchCache for an Application Deployment Type
Fig 3. Enabling BranchCache for a Software Update deployment
BranchCache is great because it allows peer-to-peer sharing of any content that is hosted on a server that has BranchCache enabled. Documents from (on-premise) SharePoint sites or corporate file servers can be shared among BranchCache peers with no additional configuration required on the client, as long as the hosting server has the feature installed and configured correctly.
When it comes to content distribution in Configuration Manager, there are some things you need to think about when using BranchCache:
Windows PE Peer Cache is a new feature introduced in the Configuration Manager Current Branch 1511 release. It is designed to get around the shortcoming of BranchCache not being (officially) supported in Windows PE.
You can designate any existing Configuration Manager clients as a Windows PE Peer Cache source through Client Settings. You’ll probably want to build a specific Device Collection (excluding laptops and ‘VIP’ systems perhaps) and create custom Client Settings to enable Windows PE Peer Cache on that Collection of devices.
Fig 4. Windows PE Peer Cache Client Settings
The next step is to set the SMSTSPeerDownload variable to TRUE in your OSD Task Sequence. This will enable a client running the Task Sequence to get Package content from a Windows PE Peer Cache on the local subnet. Note that only Package content (including OS images, boot images, driver packages and bog-standard software packages) can be obtained using the Window PE Peer Cache feature. It’s not limited to the Windows PE stage of the Task Sequence – a Windows PE Peer Cache source could be used for Package content in the Task Sequence when the full OS is running. However, you’re not going to get any Application or Software Update content this way – for that you’ll need to implement another peer-to-peer solution.
If the client running the Task Sequence is unable to find the content it needs on a Windows PE Peer Cache on the local subnet, it will download the content from the DP. Normally when a Task Sequence executes, content is temporarily downloaded into the _SMSTaskSequence folder and deleted when the Task Sequence completes. This isn’t very helpful if you want the rebuilt client to share the content it’s just spent ages downloading with its peers later on.
Setting the SMSTSPreserveContent variable to TRUE in your Task Sequence will ensure that when a client downloads content during the OSD Task Sequence, it will be preserved in the Configuration Manager client cache when the Task Sequence completes. If the rebuilt client also has the Windows PE Peer Cache client settings applied through policy, it becomes a Windows PE Peer Cache source with all the Task Sequence content available in its cache (as long as you’ve allocated enough space in the Configuration Manager Cache settings).
It is also possible to pre-stage Task Sequence content to Windows PE Peer Cache clients by including the Download Package Content step in the Task Sequence. You don’t want the Task Sequence to actually execute and rebuild the source machines, so best to create a pre-stage Task Sequence that includes all the reference packages you need in your ‘real’ deployment Task Sequence, but define the logic so the Task Sequence exits after the Download Package Content step without actually installing any of the images, drivers or packages.
Fig 5. Enabling Windows Update Download Optimization
Recently we’ve had a lot of people asking about the new Windows Update Delivery Optimization (WUDO) feature, introduced in Windows 10. You can enable this on clients through Settings > Update & Security > Windows Update > Advanced options > Choose how updates are delivered, or of course through Group Policy.
Windows Update Delivery Optimization enables clients to obtain Microsoft updates from peers rather than downloading directly from Microsoft Windows Update. However, this is only going to benefit you if your clients are getting updates using Windows Update or Windows Update for Business. If you’re using Windows Server Update Service (WSUS) or Configuration Manager for managing updates, WUDO is already out of the equation.
Hopefully this article has given you a good idea of the options for peer-to-peer content distribution that Microsoft offers out of the box, what they are good for and where they may be lacking. You may find that these meet your requirements. You should also consider the following benefits you get with 1E Nomad: