Visão geral da arquitetura UPnP
A arquitetura UPnP define a conectividade de rede ponto a ponto de eletrodomésticos inteligentes, dispositivos e pontos de controle. Ele foi projetado para trazer conectividade fácil de usar, flexível e baseada em padrões para redes ad-hoc, gerenciadas ou não gerenciadas, quer essas redes estejam em casa, em pequenas empresas ou conectadas diretamente à Internet. A arquitetura UPnP é uma arquitetura de rede distribuída e aberta que usa tecnologias TCP/IP e Web existentes para permitir redes de proximidade perfeitas, além de controle e transferência de dados entre dispositivos em rede.
UPnP é um conjunto de protocolos baseado em IP baseado em versões preliminares de protocolos de serviços da Web, como XML e Simple Object Access Protocol (SOAP). Com UPnP, um dispositivo pode juntar-se dinamicamente a uma rede, obter um endereço IP, transmitir a sua capacidade, e descobrir a presença e capacidades de outros dispositivos na rede.
Um dispositivo UPnP é um contêiner de serviços e dispositivos aninhados. Por exemplo, um videocassete pode consistir em um serviço de transporte de fita, um serviço de sintonizador e um serviço de relógio. Diferentes categorias de dispositivos UPnP estão associados a diferentes conjuntos de serviços e dispositivos incorporados. Por exemplo, os serviços dentro de um videocassete são diferentes daqueles dentro de uma impressora. As informações sobre o conjunto de serviços que um determinado tipo de dispositivo pode fornecer são capturadas em um documento de descrição do dispositivo XML que o dispositivo hospeda. A descrição do dispositivo também lista propriedades como nome do dispositivo e ícones associados ao dispositivo. A Microsoft melhorou o suporte a UPnP para incluir a integração com PnP-X e Function Discovery.
A arquitetura UPnP é mais do que apenas uma simples extensão do modelo periférico plug-and-play. Ele suporta configuração zero, rede invisível e descoberta automática para uma variedade de categorias de dispositivos de uma ampla gama de fornecedores. Isso permite que um dispositivo se junte dinamicamente a uma rede, obtenha um endereço IP e transmita seus recursos mediante solicitação. Em seguida, outros pontos de controle podem usar a API de ponto de controle com tecnologia UPnP para aprender sobre a presença e os recursos de outros dispositivos. Um dispositivo pode sair de uma rede de forma suave e automática quando não está mais em uso.
O que é universal na tecnologia UPnP?
- Independência dos meios de comunicação e dos dispositivos. A tecnologia UPnP pode ser executada em qualquer meio, incluindo linha telefónica, linha elétrica, Ethernet, RF e 1394.
- Independência da plataforma. Os fornecedores usam qualquer sistema operacional e qualquer linguagem de programação para criar produtos baseados em UPnP.
- Tecnologias baseadas na Internet. A tecnologia UPnP é construída sobre IP, TCP, UDP, HTTP e XML, entre outros.
- Controle da interface do usuário. A arquitetura UPnP permite o controle do fornecedor sobre a interface do usuário do dispositivo e a interação usando o navegador.
- Controle programático. A arquitetura UPnP também permite o controle programático de aplicativos convencional.
- Protocolos de base comuns. Os fornecedores concordam com conjuntos de protocolos básicos por dispositivo.
- Extensível. Cada produto baseado em UPnP pode ter serviços de valor agregado sobrepostos à arquitetura básica do dispositivo pelos fabricantes individuais.
A tecnologia UPnP é de âmbito amplo na medida em que visa redes domésticas, redes de proximidade e redes em pequenas empresas e edifícios comerciais. Ele permite a comunicação de dados entre quaisquer dois dispositivos sob o comando de qualquer dispositivo de controle na rede. A tecnologia UPnP é independente de qualquer sistema operativo, linguagem de programação ou meio físico em particular.
A Microsoft fornece duas APIs para trabalhar com dispositivos baseados em UPnP:
- Control Point API - Fornece um conjunto de interfaces COM que permitem que as aplicações encontrem e controlem dispositivos baseados em UPnP.
- Device Host API - Fornece um conjunto de interfaces COM que permitem aos desenvolvedores escrever a funcionalidade principal do dispositivo e registrar o dispositivo com o host do dispositivo. O Host do Dispositivo lida com as partes de descoberta, descrição, controle e eventos da funcionalidade do dispositivo baseado em UPnP.