mirror of
https://github.com/MicrosoftDocs/windows-itpro-docs.git
synced 2025-05-12 05:17:22 +00:00
5.7 KiB
5.7 KiB
title, manager, description, keywords, ms.prod, ms.mktglfcycl, audience, author, ms.localizationpriority, ms.author, ms.collection, ms.topic
title | manager | description | keywords | ms.prod | ms.mktglfcycl | audience | author | ms.localizationpriority | ms.author | ms.collection | ms.topic |
---|---|---|---|---|---|---|---|---|---|---|---|
Delivery Optimization client-service communication explained | dougeby | Details of how Delivery Optimization communicates with the server when content is requested to download. | updates, downloads, network, bandwidth | w10 | deploy | itpro | carmenf | medium | carmenf | M365-modern-desktop | article |
Delivery Optimization client-service communication explained
Applies to
- Windows 10
- Windows 11
Download request workflow
This workflow allows Delivery Optimization to securely and efficiently deliver requested content to the calling device. Delivery Optimization uses content metadata to determine all available locations to pull content from, as well as content verification.
- When a download starts, the Delivery Optimization client attempts to get its content metadata. This content metadata is a hash file containing the SHA-256 block-level hashes of each piece in the file (typically one piece = 1 MB).
- The authenticity of the content metadata file itself is verified prior to any content being downloaded using a hash that is obtained via an SSL channel from the Delivery Optimization service. The same channel is used to ensure the content is curated and authorized to leverage peer-to-peer.
- When Delivery Optimization pulls a certain piece of the hash from another peer, it verifies the hash against the known hash in the content metadata file.
- If a peer provides an invalid piece, that piece is discarded. When a peer sends multiple bad pieces, it's banned and will no longer be used as a source by the Delivery Optimization client performing the download.
- If Delivery Optimization is unable to obtain the content metadata file, or if the verification of the hash file itself fails, the download will fall back to “simple mode” (pulling content only from an HTTP source) and peer-to-peer won't be allowed.
- Once downloading is complete, Delivery Optimization uses all retrieved pieces of the content to put the file together. At that point, the Delivery Optimization caller (for example, Windows Update) checks the entire file to verify the signature prior to installing it.
Delivery Optimization service endpoint and data information
Endpoint hostname | Port | Name | Description | Data sent from the computer to the endpoint |
---|---|---|---|---|
geover-prod.do.dsp.mp.microsoft.com geo-prod.do.dsp.mp.microsoft.com geo.prod.do.dsp.mp.microsoft.com geover.prod.do.dsp.mp.microsoft.com |
443 | Geo | Service used to identify the location of the device in order to direct it to the nearest data center. | Profile: The device type (for example, PC or Xbox) doClientVersion: The version of the DoSvc client groupID: Group the device belongs to (set with DownloadMode = '2' (Group download mode) + groupID group policy / MDM policies) |
kv*.prod.do.dsp.mp.microsoft.com | 443 | KeyValue | Bootstrap service provides endpoints for all other services as well as device configs. | countryCode: The country the client is connected from doClientVersion: The version of the DoSvc client Profile: The device type (for example, PC or Xbox) eId: Client grouping Id CacheHost: Cache host id |
cp*.prod.do.dsp.mp.microsoft.com |
443 | Content Policy | Provides content specific policies as well as content metadata URLs. | Profile: The device type (for example, PC or Xbox) ContentId: The content identifier doClientVersion: The version of the DoSvc client countryCode: The country the client is connected from altCatalogId: If ContentId isn't available, use the download URL instead eId: Client grouping Id CacheHost: Cache host id |
disc*.prod.do.dsp.mp.microsoft.com | 443 | Discovery | Directs clients to a particular instance of the peer matching service (Array), ensuing that clients are collocated by factors, such as content, groupId and external IP. | Profile: The device type (for example, PC or Xbox) ContentId: The content identifier doClientVersion: The version of the DoSvc client partitionId: Client partitioning hint altCatalogId: If ContentId isn't available, use the download URL instead eId: Client grouping Id |
array*.prod.do.dsp.mp.microsoft.com | 443 | Arrays | Provides the client with list of peers that have the same content and belong to the same peer group. | Profile: The device type (for example, PC or Xbox) ContentId: The content identifier doClientVersion: The version of the DoSvc client altCatalogId: If ContentId isn't available, use the download URL instead PeerId: Identity of the device running DO client ReportedIp: The internal / private IP Address IsBackground: Is the download interactive or background Uploaded: Total bytes uploaded to peers Downloaded: Total bytes downloaded from peers DownloadedCdn: Total bytes downloaded from CDN Left: Bytes left to download Peers Wanted: Total number of peers wanted Group Id: Group the device belongs to (set via DownloadMode 2 + Group ID GP / MDM policies) Scope: The Download mode UploadedBPS: The upload speed in bytes per second DownloadBPS: The download speed in Bytes per second eId: Client grouping Id |
dl.delivery.mp.microsoft.com emdl.ws.microsoft.com |
80 | Delivery Optimization metadata file hosting | CDN hostnames for Delivery Optimization content metadata files | Metadata download can come from different hostnames, but it's required for peer to peer. |