Compartilhar via


Usando endereços lógicos e físicos

O WS-Discovery define o endereçamento lógico usando URIs com base no urn:uuid: formato . A finalidade desse esquema de endereçamento é diferenciar a identidade do dispositivo do endereço IP atual. Esse esquema essencialmente fornece a funcionalidade de nomes DNS sem a necessidade de um servidor de nomes. O Perfil de Dispositivos para Serviços Web (DPWS) recomenda que os dispositivos usem esse esquema de endereçamento.

O DPWS também recomenda que os serviços usem endereços físicos (também chamados de transporte). Isso permite que clientes que não dão suporte nativo a mecanismos de endereçamento WS-Discovery se comuniquem com serviços DPWS. Além disso, cada serviço pode definir seus endereços, o que permite o endereçamento no nível do transporte para implementações de dispositivo que gerenciam a expedição de serviço em uma camada inferior. Por fim, o uso de endereços físicos maximiza a interoperabilidade.

A desvantagem do endereçamento físico é que ele adiciona complexidade às implementações do dispositivo, pois o ENDEREÇO IP ou endereço de transporte atual deve ser rastreado e os metadados do dispositivo devem ser modificados adequadamente. Por esse motivo, o DPWS não requer serviços para usar endereços de transporte.

Se os endereços lógicos forem usados, haverá alguns cenários em que o comportamento da implementação é indefinido. A especificação WS-Discovery não descreve o que significa que um serviço resida em um endereço lógico. R1001 da especificação de WS-Discovery recomenda o uso de WS-Discovery em serviços hospedados devido à conversa de rede associada.

Não é recomendável que os serviços residam em endereços lógicos, pois isso reduz a interoperabilidade. Se uma implementação precisar residir em um endereço lógico, o serviço deverá usar o mesmo endereço lógico que o dispositivo. Se isso adicionar muita complexidade ao modelo de expedição no dispositivo, a solução recomendada será usar parâmetros de referência para diferenciar os serviços. O WSDAPI enviará mensagens corretamente aos serviços se eles usarem o mesmo endereço de ponto de extremidade que o dispositivo.