Partilhar via


Introdução à solução de problemas do WSDAPI

Este guia de solução de problemas contém um conjunto de procedimentos de diagnóstico que podem ser usados para ajudar a identificar a causa dos problemas do aplicativo. Uma vez identificada com sucesso a causa do problema, as soluções sugeridas no procedimento de diagnóstico podem ser aplicadas para resolver o problema.

Há duas maneiras de determinar o procedimento de diagnóstico a ser usado. Uma maneira é ir para a página de solução de problemas do tipo de cliente para exibir uma lista passo a passo de procedimentos de diagnóstico a serem usados para solucionar problemas do cliente. A outra maneira é ir para a referência rápida de solução de problemas abaixo para exibir tabelas de resumo que mostram problemas comuns com aplicativos WSDAPI e os procedimentos a serem usados para diagnosticar os problemas.

Solução de problemas por tipo de cliente

Os tópicos a seguir mostram os procedimentos de diagnóstico relevantes por tipo de cliente. Esses tópicos também mostram os padrões de mensagem associados ao tipo de cliente.

Referência rápida de solução de problemas

As tabelas a seguir mostram alguns problemas que podem impedir que clientes WSDAPI e hosts se vejam na rede e troquem metadados do dispositivo. As tabelas também mostram os procedimentos de diagnóstico a serem executados e os critérios a serem usados para avaliar se o aplicativo sofre de um problema específico.

Problemas de ambiente de rede

Problema Procedimento de diagnóstico Identificação de problemas
O firewall bloqueia o tráfego de Descoberta de Rede. Inspecionando as configurações do adaptador e do firewall Habilitar a exceção de descoberta de rede no firewall resolve o problema.
As exceções de firewall específicas para o aplicativo estão bloqueando mensagens. Inspecionando as configurações do adaptador e do firewall Desativar o firewall resolve o problema. WF.msc mostra regras de firewall específicas do aplicativo.
O dispositivo não responde a solicitações UDP enviando uma mensagem ProbeMatches ou ResolveMatches em tempo hábil (menos de 4 segundos). Inspecionando as configurações do adaptador e do firewall Desativar o firewall resolve o problema, e um host genérico que responde em menos de 4 segundos funciona com êxito.
O contexto de segurança do aplicativo está incorreto (ou seja, o cliente e o host não têm permissões adequadas na rede). Usando um host e um cliente genéricos para UDP WS-Discovery ou Usando um host e um cliente genéricos para troca de metadados HTTP O endereço do dispositivo não é mostrado na saída do WSD Debug Client. Executar o aplicativo como administrador resolve o problema.
Uma política IPSec está a bloquear mensagens. Usando um host e um cliente genéricos para WS-Discovery UDP ou Usando um host e um cliente genéricos para troca de metadados HTTP O endereço do dispositivo não é mostrado na saída do WSD Debug Client. O problema não se resolve desativando o firewall. O problema não pode ser reproduzido em uma máquina não sujeita a nenhuma diretiva IPSec.

Problemas na descoberta de tráfego

Problema Procedimento de diagnóstico Identificação de problemas
Mensagens Olá, Probeou Resolve não são transmitidas na rede porque o aplicativo não enumera corretamente as interfaces de rede multicast. Usando o WSD Debug Client para verificar o tráfego de multicast As mensagens Olá, Sonda ou Resolver não aparecem na saída do WSD Debug Client. Os pacotes não aparecem na rede. Os pacotes não são gerados para a interface de loopback ou para outras interfaces.
As mensagens de não são enviadas por multicast UDP para a porta 3702 (para aplicações que não utilizam descoberta dirigida). Inspecionando capturas de tráfego de rede para UDP WS-Discovery A inspeção da mensagem mostra que ela foi enviada para a porta errada.
A mensagem Probe não contém um elemento Types ou o elemento Types está vazio. Inspeção de rastreamentos de rede de dados para UDP WS-Discovery ou Inspeção de rastreamentos de rede de dados para aplicações utilizando descoberta dirigida A inspeção da mensagem mostra que o elemento Types não está presente ou vazio.
O elemento Tipos de uma mensagem de Probe não contém os tipos aos quais um host responderá. Inspeção de traços de rede para UDP WS-Discovery ou Inspeção de traços de rede para aplicações usando a descoberta direcionada A inspeção da mensagem mostra que o elemento Types contém um valor malformado ou incorreto.
Uma mensagem ProbeMatches não foi enviada em modo unicast para a porta UDP a partir da qual o Probe foi enviado. Inspecionando rastreamentos de rede para UDP WS-Discovery ou Inspecionando rastreamentos de rede para aplicações que utilizam descoberta direcionada A inspeção da saída mostra que nenhuma mensagem ProbeMatches) foi enviada ou que a mensagem foi enviada para uma porta errada. Nota: Para aplicativos que usam descoberta direcionada, o ProbeMatches deve ser enviado por HTTP ou HTTPS em resposta à mensagem Probe.
A mensagem ProbeMatches não contém um elemento RelatesTo ou o elemento RelatesTo está vazio. Inspecionando rastreamentos de rede para UDP WS-Discovery ou Inspecionando rastreamentos de rede para aplicativos usando a descoberta direcionada A inspeção da mensagem mostra que o elemento RelatesTo não está presente ou vazio.
O valor do elemento RelatesTo em uma mensagem de ProbeMatches não corresponde ao valor do elemento MessageId da mensagem correspondente Probe. Inspecionando rastreamentos de rede para UDP WS-Discovery ou Inspecionando rastreamentos de rede para aplicações que usam descoberta direcionada A inspeção da mensagem mostra que o elemento RelatesTo contém um valor malformado ou incorreto.
O elemento XAddrs incluído em uma mensagem ProbeMatches não está em conformidade com o XAddr Validation Rules. Inspecionando rastreamentos de rede para UDP WS-Discovery ou Inspecionando rastreamentos de rede para aplicativos usando a descoberta direcionada A inspeção da mensagem mostra que os XAddrs são inválidos.
Resolve mensagens não são enviadas por multicast UDP para a porta 3702 (para aplicações que não usam descoberta direcionada). Inspecção de traços de rede para UDP WS-Discovery ou Inspecção de traços de rede para aplicações usando descoberta direcionada A inspeção da saída mostra que a mensagem Resolve foi enviada para a porta errada.
Uma mensagem ResolveMatches não foi enviada em unicast para a porta UDP de onde uma mensagem Resolve foi enviada. Analisando rastreamentos de rede para UDP WS-Discovery ou Analisando rastreamentos de rede para aplicações utilizando a descoberta direcionada A inspeção da saída mostra que nenhuma mensagem ResolveMatches foi enviada ou que a mensagem foi enviada para a porta errada.

Problemas de intercâmbio de metadados

Problema Procedimento de diagnóstico Identificação de problemas
O endereço de transporte anunciado pelo anfitrião está errado. Usar um host e um cliente genéricos para troca de metadados HTTP A inspeção dos XAddrs na saída do WSD Debug Client mostra que o endereço de transporte está errado ou malformado.
Não foi possível estabelecer uma ligação TCP para a troca de metadados. Inspecionando rastreamentos de rede para troca de metadados HTTP A saída do analisador de pacotes não mostra a seguinte troca de pacotes:
  • Um pacote TCP SYN enviado do cliente
  • UM PACOTE TCP SYN/ACK enviado do host
  • Um pacote TCP ACK enviado do cliente
O cliente não enviou uma solicitação HTTP GET válida. Inspecionando rastreamentos de rede para troca de metadados HTTP Não há nenhuma solicitação HTTP GET na saída do analisador de pacotes ou a solicitação está malformada.
O cliente não enviou uma mensagem WS-Transfer Get válida. Inspeção de traces de rede para troca de metadados HTTP Não há nenhuma mensagem WS-Transfer Get na saída do analisador de pacotes ou a mensagem está corrompida.
O host não está escutando no caminho da URL especificado na solicitação HTTP GET. Inspecionando rastreamentos de rede para troca de metadados HTTP Não há resposta HTTP na saída do analisador de pacotes.
A mensagem WS-Transfer Obter não contém um elemento Para ou o elemento Para está vazio. Inspecionando traços de rede para troca de metadados HTTP A inspeção da mensagem mostra que o elemento Para não está presente ou vazio.
O valor do elemento To de uma mensagem WS-Transfer Get não corresponde a um dos endereços de ponto de extremidade do host. Inspecionando registos de rede para a troca de metadados do HTTP A inspeção da mensagem mostra que o valor do elemento To não corresponde a um dos endereços de ponto de extremidade anunciados na ProbeMatches do host ou mensagem ResolveMatches.
O host não enviou um cabeçalho de resposta HTTP válido. Inspecionando rastreamentos de rede para troca de metadados HTTP Não há nenhuma resposta HTTP na saída do analisador de pacotes ou a solicitação está malformada.
O cabeçalho de resposta HTTP enviado pelo host indica que a solicitação não pode ser concluída. Analisando traços de redes para intercâmbio de metadados HTTP O cabeçalho de resposta tem um código de status diferente de HTTP/1.1 200.
O host não enviou uma mensagem GetResponse válida. Inspecionando rastros de rede para troca de metadados HTTP Não há nenhuma mensagem GetResponse na saída do analisador de pacotes ou a mensagem está malformada.
A mensagem GetResponse não contém um elemento RelatesTo, ou o elemento RelatesTo está vazio. Inspeção de registos de rede para a troca de metadados HTTP A inspeção da mensagem mostra que o elemento RelatesTo não está presente ou vazio.
O valor do elemento RelatesTo em uma mensagem GetResponse não coincide com o valor do elemento MessageId da mensagem Get correspondente. Inspecionando traces de rede para troca de metadados HTTP A inspeção da mensagem mostra que o elemento RelatesTo contém um valor malformado ou incorreto.

Guia de solução de problemas do WSDAPI