Files
windows-itpro-docs/windows/deployment/update/waas-delivery-optimization.md
2017-11-13 13:24:05 -08:00

24 KiB
Raw Blame History

title, description, ms.prod, ms.mktglfcycl, ms.sitesec, author, ms.localizationpriority, ms.author, ms.date
title description ms.prod ms.mktglfcycl ms.sitesec author ms.localizationpriority ms.author ms.date
Configure Delivery Optimization for Windows 10 updates (Windows 10) Delivery Optimization is a new peer-to-peer distribution method in Windows 10 w10 deploy library JaimeO high jaimeo 11/13/2017

Configure Delivery Optimization for Windows 10 updates

Applies to

  • Windows 10

Looking for consumer information? See Windows Update: FAQ

Windows updates, upgrades, and applications can be very large files. Downloading and distributing updates can consume quite a bit of network resources on the devices receiving them. You can use Delivery Optimization to reduce bandwidth consumption by sharing the work of downloading these elements among multiple devices in your deployment. Delivery Optimization can accomplish this because it is a self-organizing distributed cache that allows clients to download those elements from alternate sources (such as other peers on the network) in addition to the traditional Internet-based Windows Update servers. You can use Delivery Optimization in conjunction with stand-alone Windows Update, Windows Server Update Services (WSUS), Windows Update for Business, or the "Express packages" feature of System Center Configuration Manager. This functionality is similar to BranchCache in other systems, such as System Center Configuration Manager.

Delivery Optimization is a cloud-managed solution. Access to the Delivery Optimization cloud services is a requirement. This means that in order to use the peer-to-peer functionality of Delivery Optimization, devices must have access to the internet.

For more details, see Download mode.

Note

WSUS can also use BranchCache for content sharing and caching. If Delivery Optimization is enabled on devices that use BranchCache, Delivery Optimization will be used instead.

By default in Windows 10 Enterprise and Education editions, Delivery Optimization allows peer-to-peer sharing on the organization's own network only, but you can configure it differently in Group Policy and mobile device management (MDM) solutions such as Microsoft Intune.

Delivery Optimization options

You can use Group Policy or an MDM solution like Intune to configure Delivery Optimization.

You will find the Delivery Optimization settings in Group Policy under Configuration\Policies\Administrative Templates\Windows Components\Delivery Optimization. In MDM, the same settings are under .Vendor/MSFT/Policy/Config/DeliveryOptimization/.

Several Delivery Optimization features are configurable:

Group Policy setting MDM setting Supported from version
Download mode DODownloadMode 1511
Group ID DOGroupID 1511
Minimum RAM (inclusive) allowed to use Peer Caching DOMinRAMAllowedToPeer 1703
Minimum disk size allowed to use Peer Caching DOMinDiskSizeAllowedToPeer 1703
Max Cache Age DOMaxCacheAge 1511
Max Cache Size DOMaxCacheSize 1511
Absolute Max Cache Size DOAbsoluteMaxCacheSize 1607
Modify Cache Drive DOModifyCacheDrive 1607
Minimum Peer Caching Content File Size DOMinFileSizeToCache 1703
Maximum Download Bandwidth DOMaxDownloadBandwidth 1607
Percentage of Maximum Download Bandwidth DOPercentageMaxDownloadBandwidth 1607
Max Upload Bandwidth DOMaxUploadBandwidth 1607
Monthly Upload Data Cap DOMonthlyUploadDataCap 1607
Minimum Background QoS DOMinBackgroundQoS 1607
Enable Peer Caching while the device connects via VPN DOAllowVPNPeerCaching 1703
Allow uploads while the device is on battery while under set Battery level DOMinBatteryPercentageAllowedToUpload 1703

When configuring Delivery Optimization on Windows 10 devices, the first and most important thing to configure is the Download mode, which dictates how Delivery Optimization downloads Windows updates.

While every other feature setting is optional, they offer enhanced control of the Delivery Optimization behavior.

Group ID, combined with Group Download mode, enables administrators to create custom device groups that will share content between devices in the group.

Delivery Optimization uses locally cached updates. In cases where devices have ample local storage and you would like to cache more content, or if you have limited storage and would like to cache less, use the following settings to adjust the Delivery Optimization cache to suit your scenario:

Note

It is possible to configure preferred cache devices. For more information, see Set “preferred” cache devices for Delivery Optimization.

All cached files have to be above a set minimum size. This size is automatically set by the Delivery Optimization cloud services, but when local storage is sufficient and the network isn't strained or congested, administrators might choose to change it to obtain increased performance. You can set the minimum size of files to cache by adjusting Minimum Peer Caching Content File Size.

Additional options available that control the impact Delivery Optimization has on your network include the following:

Administrators can further customize scenarios where Delivery Optimization will be used with the following settings:

How Microsoft uses Delivery Optimization

At Microsoft, to help ensure that ongoing deployments werent affecting our network and taking away bandwidth for other services, Microsoft IT used a couple of different bandwidth management strategies. Delivery Optimization, peer-to-peer caching enabled through Group Policy, was piloted and then deployed to all managed devices using Group Policy. Based on recommendations from the Delivery Optimization team, we used the "group" configuration to limit sharing of content to only the devices that are members of the same Active Directory domain. The content is cached for 24 hours. More than 76 percent of content came from peer devices versus the Internet.

For more details, check out the Adopting Windows as a Service at Microsoft technical case study.

Provided below is a detailed description of every configurable feature setting. Use these details when configuring any of the above settings.

Download mode

Download mode dictates which download sources clients are allowed to use when downloading Windows updates in addition to Windows Update servers. The following table shows the available download mode options and what they do.

Download mode option Functionality when set
HTTP Only (0) This setting disables peer-to-peer caching but still allows Delivery Optimization to download content from Windows Update servers or WSUS servers. This mode uses additional metadata provided by the Delivery Optimization cloud services for a peerless reliable and efficient download experience.
LAN (1 Default) This default operating mode for Delivery Optimization enables peer sharing on the same network. Delivery Optimization finds other clients that connect to the Internet using the same public IP as the target client. It returns a list of private IPs to connect to on that network. These clients then attempt to connect to each other by using the private subnet IP.
Group (2) When group mode is set, the group is automatically selected based on the devices Active Directory Domain Services (AD DS) site (Windows 10, version 1607) or the domain the device is authenticated to (Windows 10, version 1511). In group mode, peering occurs across internal subnets, between devices that belong to the same group, including devices in remote offices. You can use the GroupID option to create your own custom group independently of domains and AD DS sites. Group download mode is the recommended option for most organizations looking to achieve the best bandwidth optimization with Delivery Optimization.
Internet (3) Enable Internet peer sources for Delivery Optimization.
Simple (99) Simple mode disables the use of Delivery Optimization cloud services completely (for offline environments). Delivery Optimization switches to this mode automatically when the Delivery Optimization cloud services are unavailable, unreachable or when the content file size is less than 10 MB. In this mode, Delivery Optimization provides a reliable download experience, with no peer-to-peer caching.
Bypass (100) Bypass Delivery Optimization and use BITS, instead. For example, select this mode so that clients can use BranchCache.

Note

Group mode is a best-effort optimization and should not be relied on for an authentication of identity of devices participating in the group.

Group ID

By default, peer sharing on clients using the group download mode is limited to the same domain in Windows 10, version 1511, and the same domain and AD DS site in Windows 10, version 1607. By using the Group ID setting, you can optionally create a custom group that contains devices that should participate in Delivery Optimization but do not fall within those domain or AD DS site boundaries, including devices in another domain. Using Group ID, you can further restrict the default group (for example, you could create a sub-group representing an office building), or extend the group beyond the domain, allowing devices in multiple domains in your organization to be peers. This setting requires the custom group to be specified as a GUID on each device that participates in the custom group.

Note

To generate a GUID using Powershell, use [guid]::NewGuid()

This configuration is optional and not required for most implementations of Delivery Optimization.

### Minimum RAM (inclusive) allowed to use Peer Caching

This setting specifies the minimum RAM size in GB required to use Peer Caching. For example if the minimum set is 1 GB, then devices with 1 GB or higher available RAM will be allowed to use Peer caching. The recommended values are 1 to 4 GB, and the default value is 4 GB.

Minimum disk size allowed to use Peer Caching

This setting specifies the required minimum disk size (capacity in GB) for the device to use Peer Caching. The recommended values are 64 to 256 GB, and the default value is 32 GB.

Note

If the Modify Cache Drive policy is set, the disk size check will apply to the new working directory specified by this policy.

Max Cache Age

In environments configured for Delivery Optimization, you might want to set an expiration on cached updates and Windows application installation files. If so, this setting defines the maximum number of seconds each file can be held in the Delivery Optimization cache on each Windows 10 client device. The default Max Cache Age value is 259,200 seconds (3 days). Alternatively, organizations might choose to set this value to “0” which means “unlimited” to avoid peers re-downloading content. When “Unlimited” value is set, Delivery Optimization will hold the files in the cache longer and will clean up the cache as needed (for example when the cache size exceeded the maximum space allowed).

Max Cache Size

This setting limits the maximum amount of space the Delivery Optimization cache can use as a percentage of the available drive space, from 1 to 100. For example, if you set this value to 10 on a Windows 10 client device that has 100 GB of available drive space, then Delivery Optimization will use up to 10 GB of that space. Delivery Optimization will constantly assess the available drive space and automatically clear the cache to keep the maximum cache size under the set percentage. The default value for this setting is 20.

Absolute Max Cache Size

This setting specifies the maximum number of gigabytes the Delivery Optimization cache can use. This is different from the Max Cache Size setting, which is a percentage of available disk space. Also, if you configure this policy, it will override the Max Cache Size setting. The default value for this setting is 10 GB.

Minimum Peer Caching Content File Size

This setting specifies the minimum content file size in MB enabled to use Peer Caching. The recommended values are from 1 to 100000 MB.

Maximum Download Bandwidth

This setting specifies the maximum download bandwidth that can be used across all concurrent Delivery Optimization downloads in kilobytes per second (KB/s). A default value of 0 means that Delivery Optimization will dynamically adjust and optimize the maximum bandwidth used.

Percentage of Maximum Download Bandwidth

This setting specifies the maximum download bandwidth that Delivery Optimization can use across all concurrent download activities as a percentage of available download bandwidth. The default value 0 means that Delivery Optimization dynamically adjusts to use the available bandwidth for downloads.

Max Upload Bandwidth

This setting allows you to limit the amount of upload bandwidth individual clients can use for Delivery Optimization. Consider this setting when clients are providing content to requesting peers on the network. This option is set in kilobytes per second (KB/s). The default setting is 0, or “unlimited” which means Delivery Optimization dynamically optimizes for minimal usage of upload bandwidth; however it does not cap the upload bandwidth rate at a set rate.

Minimum Background QoS

This value specifies the minimum download speed guarantee that a client attempts to achieve and will fulfill by downloading more kilobytes from Windows Update servers or WSUS. Simply put, the lower this value is, the more content will be sourced using peers on the network rather than Windows Update. The higher this value, the more content is received from Windows Update servers or WSUS, versus peers on the local network.

Modify Cache Drive

This setting allows for an alternate Delivery Optimization cache location on the clients. By default, the cache is stored on the operating system drive through the %SYSTEMDRIVE% environment variable. You can set the value to an environment variable (e.g., %SYSTEMDRIVE%), a drive letter (e.g., D:), or a folder path (e.g., D:\DOCache).

Monthly Upload Data Cap

This setting specifies the total amount of data in gigabytes that a Delivery Optimization client can upload to Internet peers per month. A value of 0 means that an unlimited amount of data can be uploaded. The default value for this setting is 20 GB.

Enable Peer Caching while the device connects via VPN

This setting determines whether a device will be allowed to participate in Peer Caching while connected to VPN. Specify "true" to allow the device to participate in Peer Caching while connected via VPN to the domain network. This means the device can download from or upload to other domain network devices, either on VPN or on the corporate domain network.

Allow uploads while the device is on battery while under set Battery level

This setting specifies battery levels at which a device will be allowed to upload data. Specify any value between 1 and 100 (in percentage) to allow the device to upload data to LAN and Group peers while on DC power (Battery). Uploads will automatically pause when the battery level drops below the set minimum battery level. The recommended value to set if you allow uploads on battery is 40 (for 40%). The device can download from peers while on battery regardless of this policy.

Important

By default, devices will not upload while on battery. To enable uploads while on battery, you need to enable this policy and set the battery value under which uploads pause.

## Set “preferred” cache devices for Delivery Optimization

In some cases, IT pros may have an interest in identifying specific devices that will be “preferred” as sources to other devices—for example, devices that have hard-wired connections, large drives that you can use as caches, or a high-end hardware profile. These preferred devices will act as a “master” for the update content related to that devicess configuration (Delivery Optimization only caches content relative to the client downloading the content).

To specify which devices are preferred, you can set the Max Cache Age configuration with a value of Unlimited (0). As a result, these devices will be used more often as sources for other devices downloading the same files.

On devices that are not preferred, you can choose to set the following policy to prioritize data coming from local peers instead of the Internet:

  • Set DOMinBackgroundQoS with a low value, for example 64 which is the equivalent of 64 KB/s.

Windows PowerShell cmdlets for analyzing usage

Starting in Windows 10, version 1703, you can use two new PowerShell cmdlets to check the performance of Delivery Optimization:

Get-DeliveryOptimizationStatus returns a real-time snapshot of all current Delivery Optimization jobs.

Key Value
File ID A GUID that identifies the file being processed
Priority Priority of the download; values are foreground or background
FileSize Size of the file
TotalBytesDownloaded The number of bytes from any source downloaded so far
PercentPeerCaching The percentage of bytes received that have come from peers
BytesFromPeers Total bytes from peer devices participating in Delivery Optimization (sum of bytes from LAN, Group, and Internet Peers) 
BytesfromHTTP Total number of bytes received over HTTP
DownloadDuration Total download time in seconds
Status Current state of the operation. Possible values are: Downloading (download in progress); Complete (download completed, but is not uploading yet); Caching (download completed successfully and is seeding); Paused (download/upload paused by caller)

Using the -Verbose option returns additional information:

Key Value
HTTPUrl The URL where the download originates
BytesFromLANPeers Total bytes from peer devices on the same LAN
BytesFromGroupPeers Total bytes from peer devices in the same Group
BytesFrom IntPeers Total bytes from internet peers
HTTPConnectionCount Number of active connections over HTTP
LANConnectionCount Number of active connections over LAN
GroupConnectionCount Number of active connections to other devices in the Group
IntConnectionCount Number of active connections to internet peers
DownloadMode Indicates the download mode (see the "Download Mode" section for details)
 
  • Get-DeliveryOptimizationPerfSnap returns a list of key performance data:

  • Number of files downloaded 

  • Number of files uploaded 

  • Total bytes downloaded 

  • Total bytes uploaded 

  • Average transfer size (download); that is, the number bytes downloaded divided by the number of files 

  • Average transfer size (upload); the number of bytes uploaded divided by the number of files

  • Peer efficiency; same as PercentPeerCaching

Using the -Verbose option returns additional information:

  • Bytes from peers (per type) 
  • Bytes from CDN  (the number of bytes received over HTTP)
  • Average number of peer connections per download 

Frequently asked questions

Does Delivery Optimization work with WSUS?: Yes. Devices will obtain the update payloads from the WSUS server, but must also have an internet connection as they communicate with the Download Optimization cloud service for coordination.

Which ports does Delivery Optimization use?: For peer-to-peer traffic, it uses 7680 or 3544 (Teredo). For client-service communication, it uses port 80/443.

What are the requirements if I use a proxy?: You must allow Byte Range requests. See Proxy requirements for Windows Update for details.

What hostnames should I allow through my firewall to support Delivery Optimization?: For the Delivery Optimization service itself: *.do.dsp.mp.microsoft.com.

To allow the download payloads:

  • *.download.windowsupdate.com
  • *.windowsupdate.com
  • *.dl.delivery.mp.microsoft.com
  • *.emdl.ws.microsoft.com

Learn more

Windows 10, Delivery Optimization, and WSUS