Como funciona a Otimização da Entrega

A Otimização da Entrega é uma solução gerida na cloud que coordena as transferências de várias origens: a origem HTTP (CDN) original, a Cache Ligada da Microsoft e os dispositivos ponto a ponto (P2P). Este artigo explica como estas origens funcionam em conjunto, incluindo a deteção de elementos da rede, a troca de conteúdos, a segurança e a comunicação do serviço de cliente.

Visão geral

A Otimização da Entrega utiliza um modelo de transferência de várias origens coordenado pela cloud. O cliente de Otimização da Entrega pode transferir conteúdo em paralelo a partir da Origem HTTP (CDN) original, servidores de Cache Ligada da Microsoft e elementos elegíveis. Todas as peças recebidas de um elemento da rede são verificadas criptograficamente antes de serem utilizadas.

Ponto a ponto está ativado por predefinição no cliente Windows através do modo de transferência LAN (Modo de Transferência 1). Neste modo, a atividade do elemento da rede está restrita apenas à rede local e os dispositivos não tentam transferir ou carregar para elementos da Internet. Nem todos os tipos de conteúdo suportam ponto a ponto. Para obter uma lista completa, veja Tipos de conteúdo de transferência suportados pela Otimização da Entrega.

Princípios-chave:

  • Coordenado pela cloud: o serviço cloud de Otimização da Entrega corresponde aos elementos da rede. Os dispositivos não se detetam diretamente, exceto através da deteção do elemento da rede local no Windows 11.
  • Não fidedigno do elemento da rede: o conteúdo recebido de elementos da rede nunca é fidedigno até que cada peça seja verificada com hash em relação a metadados conhecidos-bons.
  • Contingência da CDN sempre disponível: ponto a ponto é uma camada de otimização. A origem HTTP (CDN) está sempre disponível como contingência.
  • O P2P utiliza um protocolo personalizado: as transferências ponto a ponto utilizam um protocolo binário de Otimização da Entrega através de TCP (porta 7680), não SMB, caminhos UNC ou partilhas de ficheiros.

Como ajudamos a manter os seus dados seguros

A Otimização da Entrega não pode ser utilizada para transferir ou enviar conteúdos pessoais. A Otimização da Entrega não acede a ficheiros ou pastas pessoais e não altera quaisquer ficheiros no dispositivo.

A Otimização da Entrega transfere as mesmas atualizações e aplicações que obteria através de Windows Update, aplicações da Microsoft Store e outras atualizações da Microsoft com as mesmas medidas de segurança. Para se certificar de que está a receber atualizações autênticas, a Otimização da Entrega obtém informações de forma segura da Microsoft para marcar a autenticidade de cada parte de uma atualização ou aplicação que transfere a partir de outros PCs. A autenticidade das transferências é verificada novamente antes de a instalar.

Deteção de elementos da rede

Quando uma transferência começa, o cliente de Otimização da Entrega contacta o serviço cloud Otimização da Entrega para encontrar outros dispositivos com o mesmo conteúdo.

Como os dispositivos se registam no serviço cloud Otimização da Entrega

O cliente regista-se no serviço cloud De Otimização da Entrega e comunica as seguintes informações:

  • Identificadores de conteúdo, como o URL do conteúdo
  • Um GUID gerado aleatoriamente que identifica exclusivamente o dispositivo
  • O endereço IP privado/interno do dispositivo e a máscara de sub-rede
  • Cadeia de ID do Grupo, se o modo de transferência do Grupo estiver configurado e um ID de Grupo estiver definido
  • Uma máscara de bits de perfil para atributos de dispositivo adicionais, como plataforma (PC/Servidor), SKU (Desktop/Enterprise) e se o dispositivo é uma VM
  • Transferir atributos como prioridade, bytes transferidos e carregados e velocidades de transferência

O cliente regista-se periodicamente no serviço enquanto o conteúdo permanece ativo na cache de Otimização da Entrega.

Como os pares são correspondidos

O serviço cloud de Otimização da Entrega corresponde aos pares com base em:

  1. ContentID: apenas os dispositivos que transferem ou colocam em cache o mesmo conteúdo são candidatos.
  2. GroupID: os elementos da rede têm de pertencer ao mesmo grupo (determinado pelas definições de política de grupo e Modo de Transferência).
  3. IP externo e geolocalização: utilizados para agrupar dispositivos próximos.

O serviço Deteção direciona o cliente para uma instância de serviço de Matriz próxima. O serviço Matriz é o componente principal de correspondência entre pares: mantém um registo do qual os dispositivos têm o conteúdo e devolve uma lista de elementos correspondentes.

Como os grupos de pares são formados

A forma como o grupo de elementos da rede é determinado depende do Modo de Transferência configurado:

Modo de Download Valor Âmbito do grupo do elemento da rede
Apenas HTTP 0 Sem ponto a ponto. O serviço cloud de Otimização da Entrega ainda é utilizado para metadados.
LAN (predefinição) 1 Dispositivos que partilham o mesmo endereço IP público (atrás do mesmo NAT).
Grupo 2 Dispositivos que partilham o mesmo GroupID. Pode abranger limites NAT com o Teredo.
Internet 3 Todos os pares, incluindo os pares da Internet. Utiliza o Teredo para o nat traversal.
Simples 99 Sem contacto ponto a ponto e sem contacto do serviço cloud de Otimização da Entrega. Para ambientes com disponibilidade de ar.

Para obter detalhes sobre como o ID de grupo é determinado e o comportamento de contingência, veja DOGroupID e DOGroupIDSource.

Para obter mais informações sobre como configurar grupos de pares, veja Considerações sobre a configuração da Otimização da Entrega.

Deteção de elementos locais (Windows 11)

No Windows 11, a Otimização da Entrega também suporta DNS-SD (mDNS) para deteção de elementos locais através da pilha de rede local em vez do serviço cloud Otimização da Entrega. A deteção do elemento da rede local funciona mesmo quando uma ligação VPN está ativa. Para ativar esta funcionalidade, configure a política Selecionar um método para restringir a seleção do elemento da rede à Deteção do Elemento de Rede Local (2).

Troca de conteúdos

Metadados de conteúdo (Ficheiro Hash de Peças)

Antes de começar qualquer transferência ponto a ponto, o cliente obtém um ficheiro de metadados de conteúdo conhecido como Ficheiro Hash de Peças (PHF). O PHF contém hashes SHA-256 para cada parte do conteúdo.

  • Tamanho da peça: normalmente 1 MB por peça
  • Algoritmo hash: SHA-256
  • O PHF é entregue a partir de *.dl.delivery.mp.microsoft.com ou *.windowsupdate.com
  • A autenticidade do próprio PHF é verificada através de um hash obtido através de um canal SSL a partir do serviço De Otimização da Entrega

Se o PHF não puder ser obtido ou falhar a verificação, a transferência reverterá para o Modo simples: apenas HTTP sem ponto a ponto. Este comportamento é uma salvaguarda de segurança: sem metadados verificados, os conteúdos dos elementos da rede não podem ser considerados fidedignos.

Transferência paralela a partir de várias origens

Assim que o PHF estiver disponível, a deteção do elemento da rede e a transferência de conteúdos podem ocorrer em paralelo. O cliente de Otimização da Entrega transfere partes de várias origens em simultâneo:

  1. Elementos: através do protocolo ponto a ponto da Otimização da Entrega através da porta TCP 7680
  2. Cache Ligada da Microsoft: se configurada através do DOCacheHost, doCacheHostSource ou da Opção DHCP 235
  3. Origem HTTP (CDN): pontos finais de entrega de conteúdos da Microsoft (sempre disponíveis como contingência)

Cada peça de 1 MB pode ser proveniente de uma origem diferente. O cliente reúne o ficheiro completo a partir de todas as origens.

As políticas relacionadas com atrasos podem controlar quanto tempo a Otimização da Entrega aguarda antes de favorecer as transferências da origem HTTP. Para obter mais informações, veja Melhorar a eficiência P2P.

A Otimização da Entrega limita automaticamente a atividade ponto a ponto para evitar a saturação da rede. Para obter detalhes sobre como a largura de banda é medida e as políticas disponíveis para controlá-la, veja Opções de limitação de largura de banda.

Verificação de conteúdo

Todas as peças recebidas de um elemento da rede são verificadas relativamente ao hash SHA-256 no PHF antes de serem aceites:

Cenário Comportamento
Peça válida Armazenado na cache local e disponível para carregamento para outros elementos da rede
Peça inválida Eliminado imediatamente
Várias peças inválidas do mesmo elemento da rede O elemento da rede é banido nas próximas horas

Esta ação cria uma cadeia de verificação de duas camadas:

  1. Autenticidade PHF: verificada através do canal SSL a partir do serviço De Otimização da Entrega
  2. Integridade da peça: cada peça hash verificada em relação ao PHF (SHA-256)

Transferir fluxo de trabalho do pedido

Este fluxo de trabalho resume como a Otimização da Entrega fornece conteúdo pedido de forma segura e eficiente, combinando os passos de deteção, troca de conteúdos e verificação do elemento da rede:

  1. Quando uma transferência é iniciada, o cliente de Otimização da Entrega tenta obter os respetivos metadados de conteúdo. Estes metadados de conteúdo são um ficheiro hash que contém os hashes ao nível do bloco SHA-256 de cada peça no ficheiro (normalmente uma peça = 1 MB).
  2. A autenticidade do próprio ficheiro de metadados de conteúdo é verificada antes de qualquer conteúdo ser transferido através de um hash obtido através de um canal SSL a partir do serviço Otimização da Entrega. O mesmo canal é utilizado para garantir que os conteúdos são organizados e autorizados a utilizar ponto a ponto.
  3. Quando a Otimização da Entrega solicita uma determinada parte do hash de outro elemento da rede, verifica o hash relativamente ao hash conhecido no ficheiro de metadados de conteúdo.
  4. Se um elemento da rede fornecer uma peça inválida, essa peça é eliminada. Quando um elemento da rede envia várias peças incorretas, esta é proibida e deixará de ser utilizada como origem pelo cliente de Otimização da Entrega que executa a transferência.
  5. Se a Otimização da Entrega não conseguir obter o ficheiro de metadados de conteúdo ou se a verificação do próprio ficheiro hash falhar, a transferência reverterá para o modo simples. O modo simples apenas irá solicitar conteúdo da origem HTTP e não será permitido ponto a ponto.
  6. Assim que a transferência estiver concluída, a Otimização da Entrega utiliza todas as partes obtidas do conteúdo para montar o ficheiro pedido.

Requisitos de rede para ponto a ponto

Portas necessárias

Port Protocolo Finalidade
443 TCP (HTTPS) Comunicação do serviço cloud de Otimização da Entrega (deteção, correspondência de pares, geo, configuração)
80 TCP (HTTP) Metadados de conteúdo e entrega de payload da CDN
7680 TCP Partilha de conteúdo ponto a ponto entre clientes de Otimização da Entrega

Importante

Bloquear a porta 7680 desativa toda a partilha ponto a ponto. As transferências continuam a funcionar através da contingência da CDN.

Considerações sobre o proxy

Para obter o suporte e as limitações atuais do proxy, veja Utilizar um proxy com a Otimização da Entrega.

NAT traversal

  • Modo LAN (1): os pares têm de partilhar o mesmo IP público (atrás do mesmo NAT). Não é necessário atravessar.
  • Modo de grupo (2) e modo de Internet (3): os elementos da rede podem estar atrás de DIFERENTES NATs. A Otimização da Entrega utiliza o Teredo para o NAT Traversal. Veja a documentação do Teredo para obter detalhes de configuração da firewall.

Cache local

O conteúdo transferido pela Otimização da Entrega é armazenado numa cache local e pode ser partilhado com outros elementos da rede. A tabela seguinte mostra os valores predefinidos. Cada uma destas predefinições pode ser substituída pela política. Para obter detalhes sobre todas as definições relacionadas com a cache, veja Referência da Otimização da Entrega.

Configuração Valor padrão
Localização da cache %SYSTEMDRIVE%\Windows\ServiceProfiles\NetworkService\AppData\Local\Microsoft\Windows\DeliveryOptimization\Cache
Expiração da cache 259.200 segundos (3 dias)
Tamanho máximo da cache 20% da capacidade do disco
Espaço mínimo livre em disco 5%
Tamanho mínimo do disco 32 GB
RAM mínima 4 GB

O conteúdo em cache é partilhado com elementos da rede quando o ficheiro está acima do limiar DOMinFileSizeToCache (predefinição de 50 MB), não expirou e o dispositivo tem discos, RAM e recursos de bateria suficientes.

Informações de dados e ponto final de serviço de Otimização da Entrega

Nome do anfitrião do ponto final Port Nome Descrição Dados enviados do computador para o ponto final
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 Geográfico Serviço utilizado para identificar a localização do dispositivo para direcioná-lo para o datacenter mais próximo. Perfil: o tipo de dispositivo (por exemplo, PC ou Xbox)
doClientVersion: a versão do cliente DoSvc
groupID: agrupar o dispositivo a que pertence (definido com DownloadMode = "2" (modo de transferência do grupo) + política de grupo ID de grupo/políticas mdm)
kv*.prod.do.dsp.mp.microsoft.com 443 KeyValue O serviço Bootstrap fornece pontos finais para todos os outros serviços e configurações do dispositivo. countryCode: o país ou região a partir do qual o cliente está ligado
doClientVersion: a versão do cliente DoSvc
Perfil: o tipo de dispositivo (por exemplo, PC ou Xbox)
eId: ID de agrupamento de clientes
CacheHost: ID do anfitrião da cache
cp*.prod.do.dsp.mp.microsoft.com
443 Política de Conteúdo Fornece políticas específicas de conteúdo e URLs de metadados de conteúdo. Perfil: o tipo de dispositivo (por exemplo, PC ou Xbox)
ContentId: o identificador de conteúdo
doClientVersion: a versão do cliente DoSvc
countryCode: o país a partir do qual o cliente está ligado
altCatalogID: se ContentID não estiver disponível, utilize o URL de transferência
eID: ID de agrupamento de clientes
CacheHost: ID do anfitrião da cache
disc*.prod.do.dsp.mp.microsoft.com 443 Descoberta Direciona os clientes para uma instância específica do serviço de correspondência de pares (Matriz), que se segue, que os clientes são agrupados por fatores, tais como conteúdo, groupID e IP externo. Perfil: o tipo de dispositivo (por exemplo, PC ou Xbox)
ContentID: o identificador de conteúdo
doClientVersion: a versão do cliente DoSvc
partitionID: sugestão de criação de partições de cliente
altCatalogID: se ContentID não estiver disponível, utilize o URL de transferência
eID: ID de agrupamento de clientes
matriz*.prod.do.dsp.mp.microsoft.com 443 Matrizes Fornece ao cliente uma lista de elementos que têm o mesmo conteúdo e pertencem ao mesmo grupo de pares. Perfil: o tipo de dispositivo (por exemplo, PC ou Xbox)
ContentID: o identificador de conteúdo
doClientVersion: a versão do cliente DoSvc
altCatalogID: se ContentID não estiver disponível, utilize o URL de transferência
PeerID: identidade do dispositivo que executa o cliente DO
ReportedIp: o Endereço IP interno/privado
IsBackground: A transferência é interativa ou em segundo plano
Carregado: total de bytes carregados para elementos da rede
Transferido: Total de bytes transferidos a partir de elementos da rede
DownloadedCdn: Total de bytes transferidos da CDN
Esquerda: Bytes restantes para transferir
Pares Procurados: Número total de pares procurados
ID do Grupo: agrupar o dispositivo a que pertence (definido através de DownloadMode 2 + ID de Grupo GP/políticas mdm)
Âmbito: o modo de Transferência
UploadedBPS: a velocidade de carregamento em bytes por segundo
DownloadBPS: a velocidade de transferência em Bytes por segundo
eID: ID de agrupamento de clientes
dl.delivery.mp.microsoft.com
*.windowsupdate.com
80 Alojamento de ficheiros de metadados de Otimização da Entrega Nomes de anfitrião da CDN para ficheiros de metadados de conteúdo da Otimização da Entrega A transferência de metadados pode ser proveniente de nomes de anfitrião diferentes, mas é necessário que o elemento da rede seja peering.