BRPI0609638A2 - mudança de área de serviço entre redes e resolução com serviços de rede para dispositivos - Google Patents

mudança de área de serviço entre redes e resolução com serviços de rede para dispositivos Download PDF

Info

Publication number
BRPI0609638A2
BRPI0609638A2 BRPI0609638-7A BRPI0609638A BRPI0609638A2 BR PI0609638 A2 BRPI0609638 A2 BR PI0609638A2 BR PI0609638 A BRPI0609638 A BR PI0609638A BR PI0609638 A2 BRPI0609638 A2 BR PI0609638A2
Authority
BR
Brazil
Prior art keywords
address
network
component
service
port
Prior art date
Application number
BRPI0609638-7A
Other languages
English (en)
Inventor
William R Williams
Shannon J Chan
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of BRPI0609638A2 publication Critical patent/BRPI0609638A2/pt
Publication of BRPI0609638B1 publication Critical patent/BRPI0609638B1/pt

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/029Firewall traversal, e.g. tunnelling or, creating pinholes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W48/00Access restriction; Network selection; Access point selection
    • H04W48/16Discovering, processing access restriction or access information

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)
  • Treatments For Attaching Organic Compounds To Fibrous Goods (AREA)
  • Computer And Data Communications (AREA)

Abstract

MUDANçA DE áREA DE SERVIçO ENTRE REDES E RESOLUçãO COM SERVIçOS DE REDE PAPA DISPOSITIVOS. São apresentados sistemas e métodos que facilitam determinações e comunicações de endereço de rede automatizadas entre pontos de rede em mudança de área de serviço. Em um aspecto, é apresentado um sistema de comunicações de rede. O sistema inclui métodos para atualizar um provedor de resolução com um endereço de transporte atual do nó ("host") e para determinar um endereço de serviço e informação de porta dos nós em mudança de área de serviço. Outros processos incluem abrir e mapear portas por meio de Tradutores de Endereço de Rede e Firewalls e abrir/mapear portas junto com Tradutores de Endereço de Rede em cascata.

Description

"MUDANÇA DE ÁREA DE SERVIÇO ENTRE REDES E RESOLUÇÃO COM SERVIÇOS DE REDE PARA DISPOSITIVOS"
ANTECEDENTES DA INVENÇÃO
O tradutor de endereços de rede (NAT) é um dispo-sitivo capaz de traduzir endereços do Protocolo Internet(IP) e números de porta TCP/UDP de pacotes de dados à medidaque os pacotes são encaminhados. Por exemplo, uma rede depequena empresa com múltiplos computadores que se conectam àInternet pode empregar um NAT para tais conexões. Esse tipode empreendimento normalmente precisaria obter um endereçoIP público para cada computador na rede por meio de um pro-vedor de serviços da Internet (ISP) - Com o NAT, entretanto,a pequena empresa pode usar endereçamento e fazer com que oNAT mapeie seus endereços particulares para um ou vários en-dereços IP públicos. O NAT é uma solução comum para a se-guinte combinação de exigências: potencializar o uso de umaúnica conexão, no lugar de conectar múltiplos computadores àInternet; usar endereçamento privado; e oferecer acesso aosrecursos da Internet sem precisar implementar um servidorproxy. Além disso, esses tradutores oferecem um tipo de pro-teção de firewall por meio da ocultação dos endereços IP in-ternos, e possibilitam às empresas utilizar mais endereçosIP internos, uma vez que não existe possibilidade de confli-to com os endereços fora do dominio particular das empresas.
Um dos principais obstáculos na tecnologia NAT é ofato de haver muitos protocolos diferentes para uso na tra-dução do tráfego da rede. Por exemplo, muitos sistemas do-mésticos ou do consumidor utilizam as tecnologias Cone NAT,Full Cone ou Cone Restrito, pelas quais alguns roteadorespodem se comportar como um Cone NAT para tráfego UDP e secomportar como um NAT simétrico para tráfego TCP. Em situa-ções empresariais, é mais provável empregar o NAT simétrico,junto com firewalls de hardware ou software. Atualmente, demodo a comunicar-se no meio de diversos tipos de protocolos,são necessárias intensas configurações manuais para configu-rar corretamente o NAT para comunicar-se por meio de um dosprotocolos mencionados acima. Entretanto, muitas situaçõesde rede podem exigir a utilização de mais de um protocolopara que possam ocorrer comunicações entre aplicativos remo-tos.
Ocorrem outros problemas quando os nós ("hosts")se movem de uma rede para outra, sendo que os nós podem re-correr à rede local para atribuir seu endereço de rede. Esseendereço pode ser um endereço roteável completo na Internet,ou então um endereço não roteável que está por trás de umsistema de Tradução de Endereços de Rede (NAT) . Esses nóstêm o que é geralmente conhecido como endereços IP Dinâmicosou um endereço IP convertido. Os dispositivos com um endere-ço IP convertido geralmente não têm a capacidade de aceitarnovas conexões TCP para serviços, a menos que possuam algummétodo de registrar uma porta a ser remapeada pelo sistemaNAT para o serviço especifico do nó. Geralmente, não é pos-sível que outro nó na Internet descubra esse endereço atri-buído ou porta mapeada para esse serviço usando meios nor-mais de descoberta de endereço, tal como um Sistema ou Ser-viço de Nomes de Dominio (DNS). Embora existam alguns servi-ços para resolver problemas de IP Dinâmico (DNS Dinâmico),eles geralmente não funcionam com servidores DNS de cache etambém, na maioria das vezes, não conseguem resolver númerosde porta dinâmicos.
SUMÁRIO DA INVENÇÃO
A seguir, será apresentado um sumário simplificadoa fim de oferecer um entendimento básico de alguns aspectosdescritos neste documento. Este sumário não é uma visão ge-ral abrangente, muitos menos pretende identificar elementosprincipais/fundamentais ou delinear o âmbito dos vários as-pectos descritos neste documento. Sua única finalidade é ade apresentar alguns conceitos da invenção numa forma sim-plificada para servir de prelúdio à descrição mais detalhadaapresentada mais adiante.
São apresentados sistemas e métodos para determi-nar e configurar automaticamente os recursos de comunicaçãoentre dispositivos de rede móvel ou em mudança de área deserviço ("mudança de área de serviço"). 0 problema de preci-sar configurar manualmente, e registrar-se antecipadamenteem um sistema servidor maior, presente nos sistemas conven-cionais , é atenuado pela criação de um serviço de resoluçãoque os nós podem empresar para descobrir um endereço de Pro-tocolo Internet (IP) e número de porta de um serviço de mu-dança de área de serviço associado, j unto com informaçõesadicionais do serviço. Por exemplo, após um dispositivo oucomponente ter obtido um endereço IP e mapeado uma porta porum sistema Tradutor de Endereços de Rede (NAT), o dispositi-vo pode entrar em contato com o respectivo serviço de reso-lução, e, dessa forma, registrar seu par IP/Porta correspon-dente de maneira automática. 0 serviço de resolução, ou ou-tro serviço de resolução, também pode ser empregado para lo-calizar automática ou dinamicamente outros componentes derede de interesse. 0 serviço de resolução pode existir em umendereço IP estático e também em um número de porta bem co-nhecido, se desejado, mas também pode incluir componentesdinâmicos usando um DYN-DNA (Serviço de Nomes de Dominio Di-nâmico) , por exemplo, mediante uma identidade de porta bemconhecida ou predeterminada. Podem ser empregados outros mé-todos de resolução para resolver os próprios serviços de re-solução (por exemplo, pode-se usar PNRP para encontrar oserviço de resolução).
O serviço de resolução pode ser resolvido usandoum DNS padrão ou DNS Dinâmico e, opcionalmente, pode resol-ver usando o Protocolo de Resolução de Rede Ponto-a-Ponto.Os nós interessados em contatar serviços nos nós em mudançade área de serviço geralmente entrariam em contato com umprovedor ou serviço de resolução para determinar o últimoendereço IP e porta conhecidos para os dispositivos em mu-dança de área de serviço. Em seguida, esses nós móveis podementrar diretamente em contato com o serviço nesse parIP/Porta. Um dos benefícios dessa solução em relação às ou-tras soluções possíveis é que geralmente não é necessário umservidor central ou modificações na infra-estrutura da In-ternet. Um exemplo especifico de um problema solucionado in-clui quando dois ou mais laptops estão movendo-se pelo mundocom um Nó de Serviço de Rede em um laptop e um cliente deServiço de Rede no outro. Esses laptops são convidados emmudança de área de serviço em redes "públicas", tal como umHotel e um ponto de acesso, em um exemplo especifico. Assim,um laptop tem informações de preço de matéria-prima, enquan-to o outro emprega a matéria-prima para gerar dinamicamenteuma guia de preço de venda para o pessoal de vendas. Como sepode apreciar, é possivel dar suporte a diversas aplicações,tais como futuros de antigüidades ou de vinho, por exemplo.Outros aspectos do sistema incluem sistemas e métodos depassagem por NAT, de modo que os componentes NAT em cascatapossam ser passados pelo NAT, em um exemplo, para dar supor-te a várias determinações e configurações de endereço auto-matizadas.
Para a realização dos fins citados e relacionados,certos aspectos ilustrativos são descritos neste documentoem correlação com a descrição seguinte e os desenhos anexos.Esses aspectos indicam várias formas que podem ser pratica-das , todas as quais devem ser abrangidas por este documento.Outras vantagens e aspectos novos irão transparecer na des-crição detalhada seguinte, ao ser considerada em combinaçãocom os desenhos.
BREVE DESCRIÇÃO DOS DESENHOS
A Fig. 1 é um diagrama de blocos esquemático queilustra um sistema de mudança de área de serviço e resoluçãode rede.
A Fig. 2 é um diagrama de fluxo de dados que ilus-tra um processo do provedor de resolução.
A Fig. 3 é um diagrama de fluxo de dados que ilus-tra um processo de resolução NAT.
As Figs. 4 a 7 ilustram exemplos de sistemas paradeterminações de resolução de endereço automatizadas
A Fig. 8 é um sistema de descoberta ilustrativopara sistemas e serviços clientes.
A Fig. 9 é um diagrama de blocos esquematico ilus-trando um ambiente operacional adequado.
A Fig. 10 é um diagrama de blocos esquemático deum ambiente de computação ilustrativo.
DESCRIÇÃO DETALHADA
São apresentados sistemas e métodos que facilitamdeterminações e comunicações de endereço de rede automatiza-das entre pontos de rede em mudança de área de serviço. Emum aspecto, é apresentado um sistema de comunicações de re-de. 0 sistema inclui métodos para atualizar um provedor deresolução com um endereço atual do nó e para determinar umendereço e informação de porta do serviço dos nós em mudançade área de serviço. Outros processos incluem abrir portaspor meio dos Tradutores de Endereço de Rede e abrir portasjunto com Tradutores de Endereço de Rede em cascata.
Conforme usados neste pedido, os termos "componen-te", "tradutor", "sistema", "objeto" e similares pretendemse referir a uma entidade relacionada a computador, seja emhardware, em uma combinação de hardware e software, em soft-ware ou software em execução. Por exemplo, um componente po-de ser, sem a isto se limitar, um processo em execução numprocessador, um processador, um objeto, um executável, umencadeamento de execução, um programa e/ou um computador. Atítulo ilustrativo, tanto um aplicativo em execução num ser-vidor quanto o servidor podem ser um componente. Um ou maiscomponentes podem residir dentro de um processo e/ou encade-amento de execução, ao passo que um componente pode estarlocalizado em um computador e/ou distribuído entre dois oumais computadores. Além disso, esses componentes podem exe-cutar vários meios legíveis por computador que armazenam vá-rias estruturas de dados. Os componentes podem se comunicarpor processos locais e/ou remotos, tal como de acordo com umsinal tendo um ou mais pacotes de dados (por exemplo, dadosde um componente interagindo com outro componente em um sis-tema local, sistema distribuído e/ou por uma rede, tal comoa Internet, com outros sistemas via o sinal).
Referindo-se inicialmente à Fig. 1, é ilustrado umsistema de resolução e mudança de área de serviço automati-zado 100. 0 sistema 100 inclui uma rede 110 (por exemplo,Internet), em que um ou mais dispositivos em mudança de áreade serviço 12 0 podem estabelecer comunicações pela rede. Osistema 100 inclui um provedor de resolução 130 para deter-minar o endereço de rede para os dispositivos 120 e um com-ponente de descoberta 140 para facilitar as determinações deendereço automatizadas. Um componente de evento 150 pode serusado para atualizar o provedor de resolução 130 ou o compo-nente de descoberta 140 com as alterações de roteamento dosdispositivos 12 0 à medida que se movem de um local para ou-tro . Um componente de passagem 160 pode ser proporcionadopara isolar os dispositivos 12 0 ou rotear endereços da rede110 para os dispositivos ou, alternativamente, oferecer su-porte a firewall. 0 componente de passagem 160 pode incluirum ou mais tradutores de endereço de rede (NAT) que operamde acordo com uma multiplicidade de protocolos NAT. Taisprotocolos possibilitam comunicações entre um ou mais apli-cativos do usuário final.
Em um aspecto, o sistema 100 proporciona um siste-ma em que a localização dos dispositivos associados 120 podeser resolvida geralmente sem precisar de servidores centra-lizados ou modificações na infra-estrutura da Internet. Oprovedor de resolução 130 pode armazenar um nome amigável dedispositivo, GUID, par IP/Porta Público, Par IP/Porta Parti-cular, tempo de expiração do túnel NAT e porta para rotea-mento para um dispositivo, por exemplo. Os provedores de re-solução de dispositivo podem rodar em uma porta bem conheci-da em um IP estático ou dinâmico que pode ser obtido via umapesquisa DNS, por exemplo. Os dispositivos 120 podem regis-trar sua localização atual com um ou mais provedores de re-solução de dispositivo, caso seja desejado. O provedor deresolução 130, geralmente, pode ser acessado usando um nomeamigável de um Serviço de Nomes de Domínio (DNS). O provedorde resolução 130 responde a solicitações de endereços detransporte de nomes amigáveis de dispositivo ou GUID. Alémdisso, o provedor de resolução 130 pode ter listas de con-trole de acesso (ACLs) para consultas e pode autenticar atu-alizações de localização via soquete seguro, por exemplo,SSL/TLS usando certificados de cliente e servidor, segredocompartilhado ou outro tipo de mecanismo de segurança.
O sistema 100 permite determinar e configurar au-tomaticamente os recursos de comunicação entre os dispositi-vos de rede móvel ou em mudança de área de serviço 120. Oproblema de precisar configurar manualmente, e registrar-seantecipadamente em um sistema servidor maior, presente nossistemas convencionais, é atenuado pela criação de um servi-ço de resolução que os nós podem empresar para descobrir umendereço de Protocolo Internet (IP) e número de porta de umserviço de mudança de área de serviço associado, junto cominformações adicionais do serviço. Por exemplo, após um dis-positivo 120 ou componente ter obtido um endereço IP e mape-ado uma porta por um componente Tradutor de Endereços de Re-de (NAT) 160, o dispositivo pode entrar em contato com orespectivo serviço de resolução 130, e, dessa forma, regis-trar seu par IP/Porta correspondente de maneira automática.
De forma similar, ele pode contatar o mesmo serviço de reso-lução 130, ou diferente, para localizar automática ou dina-micamente outros componentes de rede de interesse. O serviçode resolução pode existir em um endereço IP estático e tam-bém em um número de porta bem conhecido, se desejado, mastambém pode incluir componentes dinâmicos usando um DYN-DNA(Serviço de Nomes de Domínio Dinâmico), por exemplo, median-te uma identidade de porta bem conhecida ou predeterminada.Ele também poderia ser localizado usando o PNRP (Protocolode Resolução de Nomes Ponto-a-Ponto) para porta de acessoDNS PNRP diretamente ou outro nome para o serviço de resolu-ção de endereço.
O serviço ou provedor de resolução 130 pode resol-ver endereços usando seu banco de dados interno de endereçosde transporte. Os nós interessados em contatar serviços nosnós em mudança de área de serviço geralmente entrariam emcontato com o provedor ou serviço de resolução 130 para de-terminar o último endereço IP e porta conhecidos para osdispositivos em mudança de área de serviço 120. Em seguida,esses nós móveis podem entrar diretamente em contato com oserviço nesse par IP/Porta. Um dos benefícios dessa soluçãoem relação às outras soluções possíveis é que geralmente nãoé necessário um servidor central ou modificações na infra-estrutura da Internet. Um exemplo especifico de um problemasolucionado pelo sistema 100 inclui quando dois ou mais lap-tops estão movendo-se em diferentes localizações com um Ser-viço de Rede em um laptop e um Serviço de Rede no outro. Co-mo se pode apreciar, é possivel dar suporte a vários aplica-tivos de comunicações. Outros aspectos incluem sistemas emétodos de passagem por NAT, de modo que os componentes NATem cascata 160 possam ser passados pelo NAT, em um exemplo,para dar suporte às determinações de endereço e mapeamentosde porta automatizados para o dispositivo 120.
As Figs. 2 e 3 ilustram processos de resolução deendereço automatizados para dispositivos em mudança de áreade serviço. Embora, para fins de simplicidade de explicação,as metodologias sejam ilustradas e descritas como uma sérieou conj unto de etapas, deve-se entender e apreciar que a me-todologia em questão não se limita à ordem das etapas, umavez que algumas etapas podem ocorrer em ordens diferentes ousimultaneamente com outras etapas ilustradas e descritasneste documento. Por exemplo, os versados na técnica irãocontemplar e apreciar que uma metodologia poderia ser alter-nativamente representada como uma série de estados ou even-tos inter-relacionados, tal como em um diagrama de estados.Além do mais, nem todas as etapas ilustradas são obrigató-rias para implementar uma metodologia conforme descrito nes-te documento.
Referindo-se agora à Fig. 2, é ilustrado um pro-cesso do provedor de resolução 200 exemplificativo. Nesseaspecto/em 210, é ilustrado um método para atualizar umprovedor de resolução com um endereço de transporte atual donó. Isso inclui enviar uma mensagem para atualizar um prove-dor de resolução em 220 e enviar parâmetros ao provedor deresolução em 230. Por exemplo, um serviço de nó em mudançade área de serviço envia uma mensagem SOAP usando, por exem-plo, uma mensagem "WS-Eventing" para o provedor de resoluçãocom uma alteração do evento de localização. Em 230, esse e-vento inclui o nome amigável dos serviços, GUID, Par IP Pú-blico Roteável/Porta, Par IP Particular/Porta, tempo de con-cessão de endereço IP e tempo de concessão de túnel NAT, porexemplo.
Em 240, é apresentado um método para determinar umEndereço de Serviço e porta IP do nó em mudança de área deserviço. Isso inclui resolver o endereço de um nó por MWS-discovery" direcionado em 250 e responder com uma correspon-dência de endereço de transporte à solicitação de descobertaem 2 60. Neste exemplo, para resolver o Endereço de Serviço eporta de um nó, um nó cliente usa um identificador globalexclusivo e realiza a resolução usando descoberta direciona-da para o provedor de resolução. Em 260, o provedor de reso-lução responde com uma mensagem "resolve-match" contendo oendereço e a informação de porta para o endereço de serviçodo nó.
A Fig. 3 ilustra um processo exemplificativo 300para passagem pelos Tradutores de Endereço de Rede. É apre-sentado um método 300 para atualizar um provedor de resolu-ção com um endereço atual do nó e para abrir tradutores deendereço de rede (NAT) em cascata. O processo 300 incluidescobrir automaticamente parâmetros NAT ou de firewall em310 e solicitar um endereço de rede em 320. Com base nisso,seleciona-se um endereço para um dispositivo em mudança deárea de serviço dentre um grupo de dispositivos em 330. Em340, um provedor de resolução responde a um dispositivo comum endereço externo para comunicações, ao passo que em 350,uma multiplicidade de NATs em cascata é aberta automatica-mente. Para ilustrar o processo 300, podemos aplicar os se-guintes exemplos.
Um nó que se encontra oculto por trás de um NAT ouFirewall deverá primeiro descobrir que está protegido da In-ternet e não pode receber conexões iniciadas externamente. Onó que deseja obter acesso externo deverá usar, por exemplo,"WS-Discovery" para pesquisar por um NAT ou firewall habili-tado para WSD Em seguida, o nó irá solicitar um par de ende-reco IP externo e porta de um NAT/firewall habilitado paraWSD. O nó pode apresentar credenciais de segurança aoNAT/Firewall para demonstrar que está autorizado a receberconexões iniciadas externamente. O NAT/Firewall pode sele-cionar um endereço de Protocolo Internet (IP) a partir deseu grupo de IPs de dispositivo e uma porta do grupo paraesse endereço IP, e depois mapear a porta e o IP para o parIP interno/porta do nó. Em seguida, o NAT/firewall pode res-ponder ao dispositivo nó com o endereço IP mapeado externa-mente e número de porta, junto com o tempo de concessão, porexemplo. Em 350, é apresentado um processo para abrir NATsem cascata. Por exemplo, quando um nó está localizado portrás de dois ou mais NATs que estão em cascata, é responsa-bilidade do NAT inferior efetuar, por exemplo, uma "WS-Discovery" para NATs/FW a montante e solicitar o mapeamentoda porta e do endereço IP para o nó para uma de suas portasexternas. Por sua vez, o NAT/FW a montante pode mapear umpar IP/porta roteável e retornar esse valor para o NAT infe-rior Podem ser empregados credenciais para o dispositivo nóou NAT inferior para autorizar cada NAT a abrir portas.
A Fig. 4 ilustra um sistema exemplificativo 400para resolução de endereço. Neste exemplo, é apresentado umcliente de câmera digital 410 para um Serviço de Armazena-mento WS em uma Rede Interna. A câmera 410 armazena imagensdiretamente em um computador pessoal 420 de acordo com a se-guinte seqüência: Um Serviço de Armazenamento (WSSS) solici-ta um par IP externo/Porta usando, por exemplo, a wsdl doDispositivo de Porta de acesso da Internet (IGD) baseado emServiços de Rede. Em seguida, um WSSS envia a atualização deregistro para seu serviço de resolução, que pode estar noIGD. O IGD armazena o par IP/porta externa e IP/porta inter-na para WSSS e um serviço de Descoberta IGD monitora solici-tações de resolução para WSSS. A câmera 410 se conecta aoServiço de Descoberta no endereço externo do IGD e o IGD de-tecta a mensagem de resolução originada do dispositivo mape-ado localmente. O IGD resolve para o par de IP interno eporta do serviço de armazenamento, e a câmera 410 se conectadiretamente ao serviço de armazenamento do Laptop 420. A câ-mera 410 (ou qualquer dispositivo de rede) também pode repe-tir isso para serviço de impressora 4 30 ou substancialmentequalquer outro serviço.
Dando continuação com a Fig. 5, é ilustrado umsistema de resolução de localização de rede externa 500.Neste exemplo, o sistema exemplificativo 500 pode operar co-mo se segue: Uma câmera 510 (ou outro dispositivo em mudançade área de serviço) se conecta ao serviço de Descoberta noendereço externo de um IGD e atualiza sua informação de en-dereço de transporte. O serviço de armazenamento 520 se movepara uma nova rede e atualiza as informações de endereço detransporte na IGD. A câmera 510 se comunica com o serviço dearmazenamento 52 0 de modo a enviar uma solicitação de reso-lução para o IGD. O IGD resolve para o par de IP público eporta do serviço de armazenamento por meio da Internet, porexemplo. Em seguida, a câmera 510 se conecta diretamente aoserviço de armazenamento do Laptop por meio de seu endereçopúblico e NAT reverso. O serviço de armazenamento pode pre-cisar resolver a câmera, e pode fazer isto enviando uma men-sagem de resolução para o IGD.
Dando continuação com a Fig. 6, é ilustrado umsistema de resolução de localização de rede externa 600 al-ternativo. Neste exemplo, o sistema exemplificativo 600 ope-ra como se segue: A câmera 610 (ou outro dispositivo) se co-necta ao serviço de Descoberta no endereço externo de umIGD. O IGD resolve para o par de IP público e porta do ser-viço de armazenamento. A câmera 610 se conecta diretamenteao serviço de armazenamento do Laptop 620 pelo endereço pú-blico e NAT reverso. A câmera 620 repete a consulta para oServiço de rede das impressoras 630 (ou outro dispositivo) ese conecta à impressora ou outro dispositivo pelo endereçopúblico do IGD e pelo NAT reverso.
Referindo-se à Fig. 7, é ilustrado um exemplo desistema de passagem pelo tradutor de endereço de rede 7 00.Neste exemplo, o sistema fornece um endereço IP roteável eporta da Internet para um dispositivo WSD e fornece um túnelTCP nesse par de IP roteável/porta para o dispositivo WSDque pode estar por detrás de um ou vários NATs. Por exemplo,isso pode incluir um IGD2 (710) e IGDl (720) como cliente eservidores WSD, onde um IGD0 (730) é um servidor WSD e proxyde descoberta. Um laptop 740 solicita um par IP externo eporta do IGD local (IGD 2) 710. O IGD2 mapeia uma . porta esolicita o mapeamento de par de porta externa a partir doIGDl a montante (720). O IGDl mapeia uma porta e solicita omapeamento de par de portas externas a partir do IGD0 a Mon-tante (730). O IGD0 mapeia a porta e responde a IGDl (720)com o endereço IP externo e par de portas e tempo de conces-são. 0 IGDl transmite o IP externo/porta para IGD2 (710),que transmite o par de IP/porta para o laptop 740 (ou outrodispositivo de computação). O laptop 740 pode agora usar opar de IP externo/porta para registrar sua localização comum provedor de resolução.
A Fig. 8 é um sistema de descoberta ilustrativo800 para sistemas e serviços clientes. 0 sistema 800 incluium ou mais clientes 810 que tentam se comunicar com um oumais serviços-alvo 820 por meio de um protocolo de descober-ta 830. Conforme ilustrado, uma ou mais interrogações 840podem ser direcionadas entre os clientes 810 e serviços 830a fim de estabelecer conexões, sendo que as respectivas men-sagens podem ser direcionadas a partir dos serviços em res-posta às interrogações.
Em geral, um protocolo de descoberta por difusãoseletiva pode ser proporcionado para localizar os serviços820. O modo primário de descoberta é um cliente 810 procu-rando por um ou mais serviços-alvo 820. Para encontrar umserviço-alvo 820 pelo tipo do serviço-alvo, um escopo em queo serviço-alvo reside, ou ambos, um cliente envia a mensagemde interrogação 8 40 para um grupo de difusão seletiva; Osserviços-alvo que correspondem à interrogação enviam umaresposta diretamente para o cliente 810. Para localizar oendereço de transporte de um serviço-alvo pelo nome, o cli-ente 810 envia uma mensagem de solicitação de resolução parao mesmo grupo de difusão seletiva, e, novamente, o serviço-alvo 820 que corresponde envia uma resposta diretamente aocliente. Para minimizar a necessidade de interrogação, quan-do um serviço-alvo se associa à rede, ele envia uma mensagemde comunicado para o mesmo grupo de difusão seletiva. Ao mo-nitorar esse grupo de difusão seletiva, os clientes 810 po-dem detectar serviços-alvo recém-disponiveis sem interroga-ção repetida.
Para dimensionar um número maior de pontos finais,o comportamento de supressão de difusão seletiva pode serproporcionado se um proxy de descoberta estiver disponívelna rede. Especificamente, quando um proxy de descoberta de-tecta uma interrogação ou solicitação de resolução enviadapor difusão seletiva, o proxy de descoberta envia um comuni-cado para si mesmo. Ao monitorar esses comunicados, os cli-entes detectam proxies de descoberta e alternam para o usode um protocolo especifico ao proxy descoberto. Entretanto,se um proxy de descoberta não responder, os clientes alter-nam para usar o protocolo descrito neste documento.
Para suportar redes com serviços de gerenciamentode rede explicito como DHCP, DNS, controladores de dominio,diretórios e assim por diante, os clientes e/ou serviços-alvo podem ser configurados para se comportarem de forma di-ferente à definida neste documento. Por exemplo, outra espe-cificação pode definir um registro DHCP bem conhecido con-tendo o endereço de um proxy de descoberta, e conforme essaespecificação, pode solicitar os pontos finais a enviaremmensagens para esse proxy de descoberta em vez de para umgrupo de difusão seletiva. Embora os meios específicos detal configuração possam ser proporcionados em uma variedadede processos diferentes, espera-se que qualquer tal configu-ração permita aos clientes e/ou serviços-alvo migrarem sua-vemente entre redes a d hoc e gerenciadas cuidadosamente.Também podem ser usados vários proxies de descoberta. Porexemplo, um telefone celular pode atualizar seu endereço detransporte em um proxy de descoberta de trabalho e um proxyde descoberta residencial. Os clientes resolvendo a locali-zação nesse telefone celular podem usar qualquer um dos pro-xies para resolvê-la.
0 que se segue ilustra um exemplo XML para um e-xemplo de mensagem de interrogação:
(1) <s:Envelope(2) xmtas: a="http: //schemas. xmlsoap. org/ws/2004/08/addressing"(3) xmlns: d="http: //schemas. xmlsoap. org/ws/2004/10/discovery"(4) xmlns:i="http://printer.example.org/2 003/imaging"(5) xmtas:s = "http://www.w3.org/2 003/05/soap-envelope . " >(6) <s:Header>(7) <a:Action>(8) http://schemas.xmlsoap.org/ws/2 004/10/discovery/Probe(9) </a:Action>(10) <a:MessageID>(11) uuid:0a6dc791-2be6-4991-9af1-454 7 78al917a(12) </a:MessageID>(13) <a: To>urn: schemas-xmlsoap-org: ws: 2004 :10: discovery</a: To>(14) <s:Header>(15) <s:Body>(16) <d:Probe>(17) <d:Types>i:PrintBasic</d:Types>(18) <d:Scopes(19) MatchBy="http: //schemas.xmlsoap. org/ws/2004/10/discovery/ldap">(20) ldap:///ou=engineering,o=examplecom,c=us(21) </d:Scopes>(22) </d:Probe>(23) </s:Body>(24) </s:Envelope>
As linhas (07-09) no exemplo acima indicam que amensagem é um Probe (interrogação), e a Linha (13) indicaque ela está sendo enviada para um endereço j á conhecido[RFC 2141] . Uma vez que não há nenhum bloco de cabeçalho"ReplyTo" SOAP explicito [WS-Addressing] , qualquer respostaa esta Interrogação será enviada como um pacote UDP para oendereço IP e porta de origem do cabeçalho de transporte deInterrogação. As linhas (17-21) especificam duas restriçõesna Interrogação: A linha (17) restringe respostas a Servi-ços-Alvo que implementam um Tipo de impressão básico; As li-nhas (18-21) restringem respostas a Serviços-Alvo no Escopopara um departamento de engenharia, por exemplo. Geralmente,somente os Serviços-Alvo que satisfazem a ambas essas res-trições irão responder. Embora ambas as restrições estejamincluídas neste exemplo, uma Interrogação não necessariamen-te as inclui.
0 exemplo XML a seguir ilustra um "Probe Match"ilustrativo em resposta à mensagem de interrogação descritano exemplo anterior.
(01) <s:Envelope(02) xmlns:a="http: //schemas .xmlsoap.org/ws/2004/08/addressing"(03) xmlns : d="http: //schemas.xmlsoap.org/ws/2004/10/discovery"(04) xmlns:i-1 http://printer.example.org/2003/imaging"(05) xmlns:s="http://www.w3.org/2003/05/soap-envelope" >(06) <s:Header>(7) <a:Action>(8) http://schemas.xmlsoap.org/ws/2004/10/discovery/ProbeMatches(9) </a:Action>(10) <a:MessageID>(11) uuid:e32e68 63-ea5e-4ee4-997e-69539dlff2cc(12) </a:MessageID>(13) <a:RelatesTo>(14) uuid:0a6dc7 91-2be6-4 991-9af1-454 7 78al917a(15) </a:RelatesTo>(16) <a:To>(17) http: //schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous(18) </a:To>(19) </s:Header>(20) <s:Body>(21) <d:ProbeMatches>(22) <d:ProbeMatch>(23) <a:EndpointReference>(24) <a:Address>(25) uuid:98190dc2-08 90-4ef8-ac9a-594 0995e6119(26) </a:Address>(27) </a:EndpointReference>(28) <d:Types>i:PrintBasic i:PrintAdvanced</d:Types>(29) <d:Scopes>(30) ldap:///ou=engineering,o=examplecom,c=us(31) Idap:///ou=floor2,ou=b42,ou=anytown,o=examplecom,c=us(32) </d:Scopes>(33) <d:XAddrs>http://prn-example/PRN42/b42-1668-a</d:XAddrs>(34) <d:MetadataVersion>7 5 965</d:MetadataVersion>(35) </d:ProbeMatch>(36) <d:ProbeMatches>(37) </s:Body>(38) </s:Envelope>
As linhas (07-09) na mensagem de resposta de in-terrogação acima indicam que essa mensagem é um "Probe Mat-ch", e as Linhas (13-15) indicam que é uma resposta à mensa-gem de Interrogação anterior a esse exemplo de resposta. Umavez que a Interrogação não continha um bloco de cabeçalhoSOAP ReplyTo explicito, as Linhas (16-18) indicam que a res-posta foi enviada ao endereço IP e porta de origem do cabe-ça lho de transporte da Interrogação. As Linhas (22-35) des-crevem um Serviço-Alvo único. As linhas (23-27) contêm umidentificador único estável para O Serviço-Alvo que é cons-tante nas interfaces de rede, endereços de transporte eIPv4 /v6. Nesse caso, o valor é um URL de esquema UUBD, maspode ser um URI de transporte (como o na Linha 33) caso sa-tisfaça às exigências de estabilidade e singularidade. A Li-nha (28) lista os Tipos (vide, por exemplo, [WSDL 1.1]) im-plementados pelo Serviço-Alvo, neste exemplo, um tipo de im-pressão básico que correspondeu à Interrogação bem como umtipo de impressão avançado.
As linhas (29-32) listam dois Escopos administra-tivos, um que correspondeu à Interrogação, bem como outroque é especifico a uma localização física em particular. Alinha (33) indica os endereços de transporte em que o Servi-ço-Alvo pode ser alcançado; neste caso, um endereço único detransporte HTTP. A Linha (34) contém a versão dos metadadospara o Serviço-Alvo; esta versão é incrementada se houveruma alteração nos metadados para o Serviço-Alvo (incluindoas Linhas 28-33) .
De modo a apresentar um contexto para os váriosaspectos da matéria revelada, as Figs. 9 e 10, bem como adiscussão seguinte, visam a apresentar uma breve descriçãogeral de um ambiente de computação adequado, no qual é pos-sível implementar os vários aspectos da matéria revelada.Embora a invenção tenha sido descrita acima no contexto ge-ral de instruções executáveis por computador de um programade computador que é executado em um computador local e/ou emum computador remoto, os versados na técnica reconhecerãoque a invenção também pode ser implementada em combinaçãocom outros módulos de programa. Geralmente, os módulos deprograma incluem rotinas, programas, componentes, estruturasde dados, etc. , que efetuam tarefas especificas e/ou imple-mentam tipos de dados abstratos específicos. Além disso, osversados na técnica irão apreciar que os métodos podem serpraticados com outras configurações de sistema de computa-dor, incluindo sistemas de computador de único processadorou multiprocessadores, microdispositivos de computação, com-putadores de grande porte, bem como computadores pessoais,dispositivos de computação portáteis (por exemplo, assisten-te digital pessoal (PDA), telefone, relógio, etc.), compo-nentes eletrônicos industriais baseados em microprocessadorou programáveis pelo consumidor, entre outros. Os aspectosilustrados também podem ser praticados em ambientes de com-putação distribuída, nos quais as tarefas são efetuadas pordispositivos de processamento remoto são ligados por meio deuma rede de comunicações. Entretanto, alguns, ou mesmo todosos aspectos, podem ser praticados em computadores autônomos.Em um ambiente de computação distribuída, os módulos de pro-grama podem estar localizados em dispositivos de armazena-mento em memória local e/ou remota.
Com referência à Fig. 9, um ambiente ilustrativo910 para implementar vários aspectos inclui um computador912. 0 computador 912 inclui uma unidade de processamento914, uma memória do sistema 916 e um barramento do sistema918. O barramento do sistema 918 acopla componentes do sis-tema, incluindo, sem a isto se limitar, a memória do sistema916 à unidade de processamento 914. A unidade de processa-mento 914 pode ser qualquer uma dentre vários processadoresdisponíveis. Microprocessadores duplos e outras arquiteturascom múltiplos processadores também podem ser empregados comoa unidade de processamento 914.
O barramento do sistema 918 pode ser qualquer umdentre vários tipos de estrutura de barramento®, incluindo obarramento de memória ou controlador de memória, um barra-mento periférico ou barramento externo e/ou um barramentolocal usando uma qualquer dentre uma variedade de arquitetu-ras de barramento disponíveis, incluindo, mas sem a isto selimitar, barramento de 11 bits, Arquitetura Padrão Industri-al (ISA), Arquitetura de Microcanal (MSA), ISA Estendida(EISA), Interface IDE, Barramento local VESA (VLB), Interco-nexão de Componentes Periféricos (PCI), Barramento SerialUniversal (USB), Porta Gráfica Acelerada (AGP), barramentoda Associação Internacional de Placas de Memória para Compu-tador Pessoal (PCMCIA), CardBUS, Bluetooth, Firewire 1394 eInterface para Pequenos Sistemas de Computador (SCSI).
A memória do sistema 916 inclui a memória volátil920 e a memória não-volátil 922. O sistema básico de entra-da/saída (BIOS), contendo as rotinas básicas para transferirinformações entre os elementos dentro do computador 912, talcomo durante a inicialização, é armazenamento na memórianão-volátil 922. A titulo de ilustração, em vez de limita-ção, a memória não volátil 922 pode incluir a memória somen-te para leitura (ROM), a ROM programável (PROM), a ROM ele-tricamente programável (EPROM), a ROM eletricamente apagável(EEPROM) ou memória flash. A memória volátil 920 inclui amemória de acesso aleatório (RAM), que age como uma memóriacache externa. A titulo de ilustração, em vez de limitação,a RAM se encontra disponível em diversas formas, como RAMsincrona (SRAM), RAM dinâmica (DRAM), DRAM sincrona (SDRAM),SDRAM de dupla taxa de dados (DDR SDRAM), SDRAM avançada(ESDRAM), DRAM Synchlink (SLDRAM) e RAM direta Rambus(RDRAM).
O computador 912 também inclui meios de armazena-mento de computador removiveis/não removíveis e voláteis/nãovoláteis. A Fig. 9 ilustra, por exemplo, um armazenamento emdisco 924. O armazenamento em disco 924 inclui, sem a istose limitar, dispositivos como uma unidade de disco magnéti-co, unidade de disco flexível, unidade de fita, unidade Jaz,unidade Zip, unidade LS-100, cartão de memória flash ou car-tão memory stick. Além disso, o armazenamento em disco 924pode incluir meios de armazenamento separadamente ou em com-binação com outros meios de armazenamento, incluindo, massem se limitar a uma unidade de disco óptico, tal como umdispositivo de disco compacto ROM (CD-ROM), unidade de CDgravável (Unidade de CD-R), unidade de CD regravável (Unida-de de CD-RW) ou uma unidade de disco versátil digital ROM(DVD-ROM). Para facilitar a conexão dos dispositivos de ar-mazenamento em disco 92 4 ao barramento do sistema 918, usa-se geralmente uma interface removível ou não removível, talcomo a interface 926.
Deve-se apreciar que a Fig. 9 representa um soft-ware que age como um elemento intermediário entre os usuá-rios e os recursos básicos do computador descritos no ambi-ente operacional adequado 910. Tal software inclui um siste-ma operacional 928. O sistema operacional 928, que pode serarmazenamento no armazenamento em disco 924, serve para con-trolar e alocar recursos do sistema de computador 912. Osaplicativos do sistema 930 tiram proveito do gerenciamentodos recursos do sistema operacional 928 por meio dos módulosde programa 932 e dos dados de programa 934 armazenados tan-to na memória do sistema 916 como no armazenamento em disco924. Deve-se apreciar que a matéria revelada neste documentopode ser implementada com vários sistemas operacionais oucombinações de sistemas operacionais.
Um usuário entra com comandos ou informações nocomputador 912 por meio do (s) dispositivo(s) de entrada 936.Os dispositivos de entrada 936 incluem, sem a isto se limi-tar, um dispositivo de apontamento tal como um mouse, track-bali, caneta, teclado sensível ao toque, teclado, microfone,joystick, controle de jogo, antena de satélite, scanner,placa sintonizadora de TV, câmera digital, câmera de videodigital, webcam, e outros do gênero. Esses e outros disposi-tivos de entrada se conectam à unidade de processamento 914por meio do barramento do sistema 918 pela(s) porta (s) deinterface 938. A(s) porta (s) de interface 938 incluem, porexemplo, uma porta serial, uma porta paralela, uma porta dejogo e um barramento serial universal (USB). 0(s) dispositi-vo(s) de saida 940 usam alguns dos mesmos tipos de portasque o(s) dispositivo(s) de entrada 936. Assim, por exemplo,uma porta USB pode ser usada para entrada de informações nocomputador 912 e para transmitir informações do computador912 para um dispositivo de saida 940. O adaptador de saida942 é proporcionado para ilustrar que existem alguns dispo-sitivos de saida 940 como monitores, alto-falantes e impres-soras, dentre outros dispositivos de saida 940, que necessi-tam de adaptadores especiais. Os adaptadores de saida 942incluem, a titulo de ilustração e não de limitação, placasde video e de som que propiciam um meio de conexão entre odispositivo de saida 940 e o barramento do sistema 918. De-ve-se notar que outros dispositivos e/ou sistemas de dispo-sitivos oferecerem tanto recursos de entrada como de saida,tal como o(s) computador(es) remoto(s) 944.
O computador 912 pode operar em um ambiente em re-de usando conexões lógicas com um ou mais computadores remo-tos, tais como o(s) computador(es) remoto(s) 944. 0(s) com-putador (es) remoto(s) 944 pode(m) ser um computador pessoal,um servidor, um roteador, um PC de rede, uma estação de tra-balho, um dispositivo baseado em microprocessador, um dispo-sitivo não hierarquizado ou outro nó comum da rede, entreoutros, e tipicamente incluem grande parte ou todos os ele-mentos descritos em relação ao computador 912. Para fins deconcisão, apenas um dispositivo de armazenamento em memória946 é ilustrado com o(s) computador(es) remoto(s) 944. 0(s)computador(es) remoto(s) 94 4 é (são) logicamente conectado(s)ao computador 912 por meio de uma interface de rede 94 8 eentão fisicamente conectados via a conexão de comunicação950. A interface de rede 948 abrange redes de comunicação,tais como redes locais (LAN) e redes de longa distância(WAN). As tecnologias LAN incluem Interface de Dados Distri-buídos por Fibra Óptica (FDDI), Interface de Dados Distribu-ídos por Cobre (CDDI), Ethernet/IEEE 802.3, Rede em A-nel/IEEE 802.5, entre outros. As tecnologias WAN incluem,sem a isto se restringir, ligações ponto-a-ponto, redes decomutação de circuito como Redes Digitais de Serviços Inte-grados (ISDN) e variações destas, redes de comutação de pa-cotes e Linhas Digitais do Assinante (DSL), 802.11G,802.11A/B, 802.1 IN, Zigbee, Ultra Wideband, Bluetooth,IRDA, e IP/USB.
A(s) conexão(ões) de comunicação 950 se referem aohardware/software empregado para conectar a interface de re-de 948 ao barramento 918. Embora a conexão de comunicação950 seja ilustrada para clareza ilustrativa dentro do compu-tador 912, ela também pode ser externa ao computador 912. Ohardware/software necessário para conexão com a interface derede 948 inclui, para fins meramente exemplificativos, tec-nologias internas e externas como modems, inclusive modemsde grade telefônica regular, modems a cabo e modems DSL, a-daptadores ISDN e placas Ethernet.
A Fig. 10 é um diagrama de blocos esquemático deum ambiente de computação ilustrativo 1000. O sistema 1000inclui um ou mais cliente (s) 1010. 0(s) cliente (s) 1010 po-dem ser hardware e/ou software (por exemplo, encadeamentos,processos, dispositivos de computação). O sistema 1000 tam-bém inclui um ou mais servidor (s) 1030. 0(s) servidor (es)1030 também podem ser hardware e/ou software (por exemplo,encadeamentos, processos, dispositivos de computação). Osservidores 1030 podem armazenar encadeamentos para efetuartransformações, por exemplo. Uma possivel comunicação entreum cliente 1010 e um servidor 1030 pode ser na forma de umpacote de dados adaptado para ser transmitido entre dois oumais processos de computador. O sistema 1000 inclui uma es-trutura de comunicação 1050 que pode ser empregada para fa-cilitar as comunicações entre o(s) cliente(s) 1010 e o(s)servidor(es) 1030. 0(s) cliente(s) 1010 são operavelmenteconectados a um ou mais armazenamentos de dados de cliente1060 que podem ser empregados para armazenar informações lo-cais para o(s) cliente(s) 1010. De forma similar, o(s) ser-vidor (s) 1030 são operavelmente conectados a um ou mais ar-mazenamentos de dados de servidor 1040 que podem ser empre-gados para armazenar informações locais para o(s) servi-dor(s) 1030.
O que foi descrito acima inclui vários aspectosexemplificativos. Naturalmente, não é possível descrever to-das as combinações possíveis dos componentes ou metodologiaspara fins de descrição desses aspectos, mas os versados natécnica serão capazes de reconhecer diversas outras combina-ções e alterações possíveis. Logo, os aspectos descritosneste documento pretendem abranger todas tais alterações,modificações e variações situadas dentro da essência e doâmbito das reivindicações anexas. Além do mais, na medida emque o termo "inclui" é usado tanto na descrição detalhadacomo nas reivindicações, tal termo pretende ser inclusivo deforma similar ao termo "compreendendo", uma vez que "compre-endendo" é interpretado, quando empregado, como uma palavrade transição em uma reivindicação.

Claims (20)

1. Sistema de comunicações de rede, CARACTERIZADOpor compreender:um provedor de resolução para determinar automati-camente endereços de rede para um ou mais dispositivos derede em mudança de área de serviço; eum componente de descoberta para facilitar a de-terminação dos endereços de rede para o um ou mais disposi-tivos de rede em mudança de área de serviço.
2. Sistema, de acordo com a reivindicação 1,CARACTERIZADO por adicionalmente compreender pelo menos umcomponente Tradutor de Endereço de Rede.
3. Sistema, de acordo com a reivindicação 2,CARACTERIZADO por adicionalmente compreender um componentede consulta que é associado a um cliente, que é empregadopara determinar e selecionar um ou mais tipos de NAT.
4. Sistema, de acordo com a reivindicação 1,CARACTERIZADO por adicionalmente compreender um componentede evento para atualizar o provedor de resolução com infor-mações de endereço de mudança de área de serviço.
5. Sistema, de acordo com a reivindicação 1,CARACTERIZADO por adicionalmente compreender pelo menos umcomponente de descoberta de protocolo para determinar cone-xões entre os dispositivos de rede em mudança de área deserviço.
6. Sistema, de acordo com a reivindicação 1,CARACTERIZADO por adicionalmente compreender um componentepara atualizar o provedor de resolução com um endereço atualdo nó.
7. Sistema, de acordo com a reivindicação 1,CARACTERIZADO por adicionalmente compreender uma função paratransmitir um pacote de inicialização a partir de um primei-ro componente cliente para um segundo componente cliente.
8. Sistema, de acordo com a reivindicação 1,CARACTERIZADO por adicionalmente compreender um componentepara transmitir uma mensagem de protocolo de Acesso Simplesa Objeto.
9. Sistema, de acordo com a reivindicação 1,CARACTERIZADO por adicionalmente compreender um componentepara armazenar um nome amigável de serviço, um GUID, um parendereço público roteável e porta, um tempo de concessão deendereço e um tempo de concessão de túnel.
10. Sistema, de acordo com a reivindicação 1,CARACTERIZADO por adicionalmente compreender um componentepara determinar um endereço de serviço e porta do nó em mu-dança de área de serviço.
11. Sistema, de acordo com a reivindicação 10,CARACTERIZADO por adicionalmente compreender um componentecliente para interrogar um endereço e serviço e porta de umcomponente de descoberta•
12. Sistema, de acordo com a reivindicação 11,CARACTERIZADO por adicionalmente compreender um provedor deresolução que responde ao componente cliente com uma infor-mação de endereço e porta correspondente à interrogação.
13. Sistema, de acordo com a reivindicação 1,CARACTERIZADO por adicionalmente compreender um componentepara abrir portas por trás de um tradutor de endereços derede (NAT).
14. Sistema, de acordo com a reivindicação 13,CARACTERIZADO por adicionalmente compreender um componentede descoberta para determinar informação de endereços exter-nos e porta a partir do NAT.
15. Sistema, de acordo com a reivindicação 14,CARACTERIZADO por adicionalmente compreender um componentepara processar credenciais de segurança de acordo com o com-ponente de descoberta.
16. Sistema, de acordo com a reivindicação 1,CARACTERIZADO por adicionalmente compreender um meio legivelpor computador contendo instruções legíveis por computadornele armazenadas para executar o provedor de resolução ou ocomponente de descoberta.
17. Método de descoberta de rede, CARACTERIZADOpor compreender:enviar uma mensagem de interrogação para pelo me-nos um serviço-alvo a partir de pelo menos um componentecliente em mudança de área de serviço,receber uma mensagem de resposta de interrogaçãodo serviço-alvo; edeterminar automaticamente endereços de rede parao componente cliente em mudança de área de serviço com base,em parte, na mensagem de resposta de interrogação.
18. Método, de acordo com a reivindicação 17,CARACTERIZADO por adicionalmente compreender um componentepara gerar um endereço e porta externa no Protocolo Internet(IP) .
19. Método, de acordo com a reivindicação 18,CARACTERIZADO por adicionalmente compreender:mapear o endereço IP e a porta;abrir dois ou mais tradutores de endereço de rede(NATS) em cascata; erotear a informação de endereço e porta entre osNATS.
20. Sistema de descoberta de rede, CARACTERIZADOpor compreender:meios para comunicar-se entre pelo menos dois com-ponentes de rede;meios para enviar uma mensagem de interrogação en-tre os componentes de rede;meios para gerar uma mensagem de resposta de in-terrogação a partir de pelo menos um dos componentes de re-de; emeios para determinar endereços de rede para oscomponentes de rede com base nas comunicações entre os com-ponentes de rede.
BRPI0609638-7A 2005-04-25 2006-04-24 Sistema de comunicações de rede e método e sistema de descoberta de rede BRPI0609638B1 (pt)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US67461905P 2005-04-25 2005-04-25
US60/674.619 2005-04-25
US60/674,619 2005-04-25
US11/291,062 2005-11-30
US11/291.062 2005-11-30
US11/291,062 US8117340B2 (en) 2005-04-25 2005-11-30 Trans-network roaming and resolution with web services for devices
PCT/US2006/015722 WO2006116449A2 (en) 2005-04-25 2006-04-24 Trans-network roaming and resolution with web services for devices

Publications (2)

Publication Number Publication Date
BRPI0609638A2 true BRPI0609638A2 (pt) 2010-04-20
BRPI0609638B1 BRPI0609638B1 (pt) 2018-06-05

Family

ID=37188396

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI0609638-7A BRPI0609638B1 (pt) 2005-04-25 2006-04-24 Sistema de comunicações de rede e método e sistema de descoberta de rede

Country Status (13)

Country Link
US (1) US8117340B2 (pt)
JP (1) JP5036704B2 (pt)
KR (1) KR101247027B1 (pt)
CN (1) CN101501665B (pt)
AU (1) AU2006241233B2 (pt)
BR (1) BRPI0609638B1 (pt)
CA (1) CA2601893C (pt)
EG (1) EG26499A (pt)
MX (1) MX2007011867A (pt)
NO (1) NO338965B1 (pt)
RU (1) RU2417418C2 (pt)
TW (1) TWI413389B (pt)
WO (1) WO2006116449A2 (pt)

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8266677B2 (en) * 2000-12-20 2012-09-11 Intellisync Corporation UDP communication with a programmer interface over wireless networks
US8117340B2 (en) 2005-04-25 2012-02-14 Microsoft Corporation Trans-network roaming and resolution with web services for devices
US20070112962A1 (en) * 2005-11-14 2007-05-17 Steve Lewontin Network connection establishment using out of band connection request
US8626925B2 (en) * 2005-12-16 2014-01-07 Panasonic Corporation Systems and methods for providing a selective multicast proxy on a computer network
US20070153812A1 (en) * 2005-12-29 2007-07-05 John Kemp Dynamic discovery of a network service on a mobile device
US20080225869A1 (en) * 2007-03-15 2008-09-18 Microsoft Corporation Enabling sharing of devices on a network
US8107469B2 (en) 2007-03-15 2012-01-31 Microsoft Corporation Enabling routing of data on a network based on a portion of data accessed from a non-network enabled device
US20080244723A1 (en) * 2007-03-27 2008-10-02 Microsoft Corporation Firewall Restriction Using Manifest
US8279869B1 (en) * 2007-03-30 2012-10-02 Symantec Operating Corporation Reliable communication channel over existing TCP connection
FR2916114B1 (fr) * 2007-05-11 2009-06-12 Sagem Comm Procede d'etablissement d'une communication point a point entre un terminal appelant et un terminal appele d'un reseau sans fils de communication par paquets de type ad-hoc
US8200968B2 (en) * 2007-12-20 2012-06-12 The Directv Group, Inc. Method and apparatus for communicating between a requestor and a user receiving device using a user device locating module
US9143493B2 (en) * 2007-12-20 2015-09-22 The Directv Group, Inc. Method and apparatus for communicating between a user device and a gateway device to form a system to allow a partner service to be provided to the user device
US8789149B2 (en) * 2007-12-20 2014-07-22 The Directv Group, Inc. Method and apparatus for communicating between a user device and a user device locating module to allow a partner service to be provided to a user device
JP5264161B2 (ja) * 2007-12-21 2013-08-14 キヤノン株式会社 情報処理装置、デバイス、情報処理装置の制御方法、及びコンピュータプログラム
WO2009093308A1 (ja) * 2008-01-22 2009-07-30 Ntt Pc Communications, Inc. 接続制御方法、接続制御サーバ装置、接続制御クライアント装置、及びプログラム
US8635341B2 (en) 2008-02-14 2014-01-21 Microsoft Corporation Termination criteria in service discovery request
US8631134B2 (en) * 2008-07-30 2014-01-14 Visa U.S.A. Inc. Network architecture for secure data communications
US8938211B2 (en) 2008-12-22 2015-01-20 Qualcomm Incorporated Providing and utilizing maps in location determination based on RSSI and RTT data
US20100157848A1 (en) * 2008-12-22 2010-06-24 Qualcomm Incorporated Method and apparatus for providing and utilizing local maps and annotations in location determination
US8938355B2 (en) 2009-03-13 2015-01-20 Qualcomm Incorporated Human assisted techniques for providing local maps and location-specific annotated data
KR101496649B1 (ko) * 2009-08-21 2015-03-02 삼성전자주식회사 복합 네트워크 망을 통한 외부 디바이스의 기능 공유 방법 및 그 장치
JP5528124B2 (ja) * 2010-01-06 2014-06-25 キヤノン株式会社 デバイス検索装置、デバイス検索方法並びにプログラム
US8438288B2 (en) 2010-02-17 2013-05-07 Microsoft Corporation Device-pairing by reading an address provided in device-readable form
US9142965B2 (en) 2011-07-28 2015-09-22 Tigo Energy, Inc. Systems and methods to combine strings of solar panels
US8792883B2 (en) * 2011-10-18 2014-07-29 Alcatel Lucent Integration of roaming and non-roaming message processing
US9158559B2 (en) 2012-01-27 2015-10-13 Microsoft Technology Licensing, Llc Roaming of note-taking application features
US8745654B1 (en) 2012-02-09 2014-06-03 The Directv Group, Inc. Method and system for managing digital rights for content
US9080882B2 (en) 2012-03-02 2015-07-14 Qualcomm Incorporated Visual OCR for positioning
US8924546B1 (en) 2012-03-21 2014-12-30 Trend Micro Incorporated Roaming bandwidth guidance for mobile computing devices
US20130311386A1 (en) 2012-05-18 2013-11-21 Mehdi Tehranchi System and method for creating and managing encapsulated workflow packages
US9479489B2 (en) * 2013-03-05 2016-10-25 Comcast Cable Communications, Llc Systems and methods for providing services
US9088541B2 (en) 2013-05-31 2015-07-21 Catbird Networks, Inc. Systems and methods for dynamic network security control and configuration
US11196636B2 (en) 2013-06-14 2021-12-07 Catbird Networks, Inc. Systems and methods for network data flow aggregation
US9912549B2 (en) 2013-06-14 2018-03-06 Catbird Networks, Inc. Systems and methods for network analysis and reporting
EP3025457A1 (en) * 2013-07-26 2016-06-01 Hewlett Packard Enterprise Development LP Network configuration using service identifier
US20150067144A1 (en) * 2013-09-03 2015-03-05 Stephen Kent Scovill Method and System for Detecting Network Printers without Prior Knowledge of Network Topology
US9794218B2 (en) 2014-04-29 2017-10-17 Trustiosity, Llc Persistent network addressing system and method
TWI514833B (zh) * 2014-05-06 2015-12-21 D Link Corp We can dynamically adjust the method of setting information in gateway device
RU2679179C1 (ru) * 2014-09-05 2019-02-06 Кэтбёрд Нэтворкс, Инк. Системы и способы для создания и модификации списков управления доступом
US9467726B1 (en) 2015-09-30 2016-10-11 The Directv Group, Inc. Systems and methods for provisioning multi-dimensional rule based entitlement offers
CN109379277B (zh) * 2018-12-10 2021-04-09 贝尔合控(深圳)科技有限责任公司 一种基于路由寻址的分布式im通信方法及其装置
CN109462606A (zh) * 2018-12-19 2019-03-12 安徽典典科技发展有限责任公司 点对点远程访问方法
CN111385260B (zh) * 2018-12-28 2022-01-25 广州市百果园信息技术有限公司 一种端口探测方法、系统、服务器和存储介质
CN111431956B (zh) * 2019-01-10 2022-07-05 阿里巴巴集团控股有限公司 跨网络的服务访问方法、设备、系统及存储介质
DE102022115026A1 (de) 2021-06-22 2022-12-22 Drägerwerk AG & Co. KGaA Verfahren und Rechner zum Einrichten einer Datenübermittlung
CN115150809B (zh) * 2022-06-29 2025-01-03 中国电信股份有限公司 异网漫游处理方法、装置及存储介质

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5745699A (en) * 1993-09-24 1998-04-28 Apple Computer, Inc. Dynamic address assignment in an arbitrarily connected network
US6201962B1 (en) * 1997-05-14 2001-03-13 Telxon Corporation Seamless roaming among multiple networks including seamless transitioning between multiple devices
JP3954689B2 (ja) * 1997-06-12 2007-08-08 インターナショナル・ビジネス・マシーンズ・コーポレーション メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体
US6243581B1 (en) * 1998-12-11 2001-06-05 Nortel Networks Limited Method and system for seamless roaming between wireless communication networks with a mobile terminal
RU2169437C1 (ru) * 1998-12-29 2001-06-20 Свисском Мобиле Аг Способ предоставления пользователям телекоммуникационной сети доступа к объектам
US6466571B1 (en) 1999-01-19 2002-10-15 3Com Corporation Radius-based mobile internet protocol (IP) address-to-mobile identification number mapping for wireless communication
TW428404B (en) * 1999-03-08 2001-04-01 Jiang Yan Yuan Method for solving moving calculation problems by enhanced NAT gateways
WO2000054475A1 (en) 1999-03-09 2000-09-14 Telefonaktiebolaget Lm Ericsson (Publ) Multicast handover for mobile internet protocol
DE60024237T2 (de) 1999-03-17 2006-06-29 3Com Corp., Rolling Meadows Verfahren und system zur netzwerkadressübersetzung mit sicherheitseigenschaften
WO2001031472A1 (en) 1999-10-22 2001-05-03 Telcordia Technologies, Inc. Method and system for host mobility management protocol
AU773884B2 (en) * 1999-11-03 2004-06-10 Cisco Technology, Inc. Distributed network communication system which enables multiple network providers to use a common distributed network infrastructure
US20010034831A1 (en) * 2000-04-19 2001-10-25 Brustoloni Jose C. Method and apparatus for providing internet access to client computers over a lan
US7000015B2 (en) * 2000-04-24 2006-02-14 Microsoft Corporation System and methods for providing physical location information and a location method used in discovering the physical location information to an application on a computing device
US6907017B2 (en) * 2000-05-22 2005-06-14 The Regents Of The University Of California Mobility management in wireless internet protocol networks
WO2002009458A2 (en) * 2000-07-24 2002-01-31 Bluesocket, Inc. Method and system for enabling seamless roaming in a wireless network
US6633761B1 (en) * 2000-08-11 2003-10-14 Reefedge, Inc. Enabling seamless user mobility in a short-range wireless networking environment
US6691227B1 (en) * 2000-09-08 2004-02-10 Reefedge, Inc. Location-independent packet routing and secure access in a short-range wireless networking environment
GB2367980B (en) 2000-10-09 2004-03-17 Ericsson Telefon Ab L M Mobile hosts
US20020138622A1 (en) 2001-03-21 2002-09-26 Motorola, Inc. Apparatus and method of using long lived addresses in a private network for push messaging to mobile devices
US20040019664A1 (en) 2002-02-15 2004-01-29 Franck Le Method and system for discovering a network element in a network such as an agent in an IP network
KR100934138B1 (ko) 2002-05-06 2009-12-29 퀄컴 인코포레이티드 무선 통신 장치의 ip 어드레스를 등록하기 위한 시스템및 방법
JP2004029939A (ja) * 2002-06-21 2004-01-29 Hitachi Ltd 通信プロキシ装置、および、通信プロキシ装置を用いたサービス提供方法
US7133669B2 (en) 2002-08-02 2006-11-07 Pctel, Inc. Systems and methods for seamless roaming between wireless networks
US7702357B2 (en) * 2002-11-26 2010-04-20 Sony Corporation Wireless intelligent switch engine
KR100501323B1 (ko) * 2002-12-16 2005-07-18 삼성전자주식회사 무선랜 단말기에 대한 이동성 지원 방법 및 장치
US7453850B2 (en) * 2002-12-20 2008-11-18 Alcatel Lucent Apparatus, and associated method, for facilitating bi-directional routing of data in a packet radio communication system
GB2400269B (en) 2003-03-29 2005-12-21 King S College London Method,network node, messages and computer program for use in mobility support in a packet-switched data communication network
US7949785B2 (en) * 2003-03-31 2011-05-24 Inpro Network Facility, Llc Secure virtual community network system
US7822416B2 (en) * 2003-05-12 2010-10-26 Alcatel-Lucent Usa Inc. Methods and systems for allowing global roaming between devices supported by different protocols
US7016328B2 (en) * 2003-06-24 2006-03-21 Tropos Networks, Inc. Method for allowing a client to access a wireless system
US7649866B2 (en) * 2003-06-24 2010-01-19 Tropos Networks, Inc. Method of subnet roaming within a network
US7167705B2 (en) * 2003-06-27 2007-01-23 Oracle International Corporation Roaming across different access mechanisms and network technologies
JP4300965B2 (ja) * 2003-10-09 2009-07-22 沖電気工業株式会社 サービスシステムおよびサービス提供方法
US20050108417A1 (en) * 2003-11-19 2005-05-19 Serge Haumont System and method for reducing subscriber database loads
US20070223420A1 (en) * 2004-02-06 2007-09-27 Matsushita Electric Industrial Co., Ltd. Communication Handover Method, Communication Message Processing Method and Program for Executing These Methods by use of a Computer
DE112005002142B8 (de) * 2004-09-07 2018-03-01 ARRIS Enterprises LLC (n. d. Ges. d. Staates Delaware) System und Verfahren zum Assoziieren verschiedener Arten von Knoten mit Zugangspunktknoten in einem drahtlosen Netzwerk zum Routen von Daten in dem drahtlosen Netzwerk
US8117340B2 (en) 2005-04-25 2012-02-14 Microsoft Corporation Trans-network roaming and resolution with web services for devices

Also Published As

Publication number Publication date
AU2006241233B2 (en) 2011-06-09
KR101247027B1 (ko) 2013-03-25
BRPI0609638B1 (pt) 2018-06-05
CN101501665A (zh) 2009-08-05
KR20080010391A (ko) 2008-01-30
CN102176727A (zh) 2011-09-07
MX2007011867A (es) 2007-10-04
TW200701713A (en) 2007-01-01
NO338965B1 (no) 2016-11-07
WO2006116449A3 (en) 2009-04-16
RU2417418C2 (ru) 2011-04-27
CA2601893A1 (en) 2006-11-02
CN101501665B (zh) 2013-06-05
US20060242322A1 (en) 2006-10-26
JP2008539672A (ja) 2008-11-13
JP5036704B2 (ja) 2012-09-26
CA2601893C (en) 2013-12-31
RU2007139515A (ru) 2009-04-27
US8117340B2 (en) 2012-02-14
NO20074612L (no) 2007-11-20
EG26499A (en) 2013-12-24
AU2006241233A1 (en) 2006-11-02
WO2006116449A2 (en) 2006-11-02
TWI413389B (zh) 2013-10-21

Similar Documents

Publication Publication Date Title
BRPI0609638A2 (pt) mudança de área de serviço entre redes e resolução com serviços de rede para dispositivos
EP2291979B1 (en) Remote access between upnp devices
JP2008539672A5 (pt)
JP5480265B2 (ja) セキュアなリソース名前解決
EP2239890B1 (en) Remote access method in a network comprising a nat device
US20060242227A1 (en) Apparatus and Method for Community Relay Node Discovery
US9497063B2 (en) Maintaining IP tables
JP2007531166A (ja) ピアツーピアネットワークにおいてファイアウォールを介してwebブラウジングを提供するための方法及びシステム
JP2011530867A (ja) キャッシュを使用したセキュアなリソース名前解決
Hsu et al. A first look at NAT64 deployment in-the-wild
CN102176727B (zh) 使用针对设备的web服务进行的跨网络漫游及解析
Pöhlsen et al. Robust web service discovery in large networks
Shelby et al. Rfc 9176: Constrained restful environments (core) resource directory
Louati et al. UPnP extension for wide-area service discovery using the INS/Twine Framework
Johnsen et al. Interoperable service discovery: Experiments at combined endeavor 2009
Herrero Resource Identification and Management
Haase et al. STUNT Enhanced Java RMI
Bormann et al. CoRE Z. Shelby Internet-Draft ARM Intended status: Standards Track M. Koster Expires: January 3, 2019 SmartThings
Kralicek DNS, DHCP, IPv4, and IPv6
Kaiser Efficient privacy-preserving configurationless service discovery supporting multi-link networks
KÄSSI IPV6 HOME NETWORK-CONNECTING HOME NETWORK NAME SERVICE TO THE INTERNET DNS
Vugt Basic Network Services: xinetd, NTP, DNS, DHCP, and LDAP
Clinton Topic 109: Networking Fundamentals

Legal Events

Date Code Title Description
B25A Requested transfer of rights approved

Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC (US)

B07A Technical examination (opinion): publication of technical examination (opinion) [chapter 7.1 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted
B21F Lapse acc. art. 78, item iv - on non-payment of the annual fees in time

Free format text: REFERENTE A 14A ANUIDADE.

B24J Lapse because of non-payment of annual fees (definitively: art 78 iv lpi, resolution 113/2013 art. 12)

Free format text: REFERENTE AO DESPACHO 21.6 PUBLICADO NA RPI 2563 DE 2020-02-18