Relatório Descritivo da Patente de Invenção: MÉTODO PARA COMPARTILHAR E PARA DESLOCAR UM ENDEREÇO DE PROTOCOLO INTERNET (IP), BEM COMO, DISPOSITIVO EM REDE.
HISTÓRICO DA INVENÇÃO I. Campo da Invenção A presente invenção está relacionada a serviços de dados sem fio. Mais particularmente, a presente invenção está relacionada a um método e um sistema novos e aperfeiçoados para deslocar pontos finais (endpoints) de protocolo de Internet (IP) entre dispositivos ligados a uma rede. II. Descrição da Técnica Correlacionada "Internetworking", isto é, a conexão de redes de área locais individuais, se tornou rapidamente muito popular. A infraestrutura e protocolos associados comumente designados como "Internet" se tornaram bem conhecidos e amplamente usados. No coração da Internet existe o Protocolo da Internet (IP) que dá suporte ao direcionamento de "datagramas" ou mensagens de dados entre as LANs, como é bem conhecido pelos técnicos na área, estando descrito no Request For Comment (RFC) 791 intitulado "INTERNET PROTOCOL DARPA INTERNET PROGRAM PROTOCOL SPECIFICATION", de setembro de 1981. 0 IP é um protocolo orientado para datagramas que provê vários serviços, incluindo o endereçamento. 0 protocolo IP reúne dados em um pacote IP para transmissão e anexa informações de endereçamento ao cabeçalho ou "header" do pacote. Os cabeçalhos IP contêm endereços de 32 bits que identificam os hospedeiros (hosts) que enviam e recebem. Tais endereços são usados por roteadores (routers) intermediários para selecionar uma trajetória através da rede para o pacote em direção a seu endereço final. Um conceito básico do endereçamento IP é de que os prefixos iniciais do endereço IP podem ser usados para decisões de direcionamento generalizadas. Como exemplo, os 16 primeiros bits de um endereço poderíam identificar a QUALCOMM INCORPORATED, os 20 primeiros bits identificam a matriz da QUALCOMM, os 26 primeiros bits identificam uma Ethernet específica em tal escritório e a totalidade dos 32 bits identifica um host específico em tal Ethernet. Como mais um exemplo, todos os endereços na rede IP da QUALCOMM poderíam ter a forma (em "notação dotted-quad"): 129.46.xxx.xxx, em que "xxx" se refere a qualquer número inteiro permissível entre zero e 255.
Como fica evidente por tal característica de direcionamento a base de prefixos do IP, os endereços IP contêm informações geográficas implícitas a cerca da localização de um host específico na Internet. Em outras palavras, sempre que qualquer roteador na Internet recebe um pacote possuindo um endereço de destino IP que se inicia com "129.46", o roteador repassa tal pacote em uma direção específica para a rede QUALCOMM INCORPORATED em San Diego, Califórnia, EUA. Dessa forma, o protocolo IP permite que datagramas que se originam em qualquer nó da Internet no mundo posam ser roteados para qualquer outro nó da Internet no mundo, contanto que a pessoa ou parte originadora conheça o endereço IP da pessoa ou parte de destino.
Na medida que a computação móvel e o acesso móvel à Internet cresceram em popularidade, surgiu uma demanda pelo provimento de suporte móvel a dados para terminais móveis, tais como computadores do tipo "laptop" ou "palmtop" utilizando o protocolo IP. No entanto, como foi acima mencionado, o esquema de endereçamento IP usado para o direcionamento na Internet contém informações geográficas implícitas. Em outras palavras, caso um usuário deseje utilizar um endereço IP fixo para identificar seu terminal móvel, os pacotes IP destinados a tal terminal móvel não serão roteados para tal terminal móvel quando ele está afastado de sua rede de origem, "doméstica" ou "home" (isto é, a rede que inclui seu endereço IP fixo) na ausência de alguma técnica para "repassar" pacotes IP para o terminal móvel.
Como exemplo, vamos supor que um usuário decida retirar seu terminal móvel de sua rede IP "home" na QUALCOMM INCORPORATED em San Diego e leva-lo consigo em um viagem para Paio Alto, Califórnia, e lá se conectar à rede IP da Universidade de Stanford, mas ainda manter seu endereço IP fixo da QUALCOMM. Qualquer datagrama IP destinado ao terminal móvel será ainda roteado à rede IP da QUALCOMM devido às informações de localização geográfica implícitas no endereço IP fixo do terminal móvel. Tais pacotes IP não serão entregues ao terminal móvel enquanto ele estiver afastado de sua rede "doméstica" a menos que ali exista algum mecanismo para repassar pacotes IP da rede IP da QUALCOMM para o terminal móvel em seu corrente ponto de ligação à Internet na rede IP da Universidade de Stanford em Paio Alto.
Para atender a tal demanda, o RFC 2 002, intitulado "IP Mobility Support", de outubro de 1996, especifica ampliações do protocolo que permitem direcionamento transparente de datagramas IP para nós móveis na Internet. Pelo uso das técnicas descritas no RFC 2002, cada nó móvel pode ser sempre identificado por seu endereço IP "doméstico", independentemente de seu ponto atual de ligação à Internet. Enquanto estiver afastado de sua rede IP doméstica, um terminal móvel pode se tornar associado a um endereço "aos cuidados de", desse modo propiciando as informações de repasse necessárias para direcionar datagramas IP para seu corrente ponto de ligação à Internet. O RFC 2002 consegue isto ao possibilitar o registro do endereço "aos cuidados de" em um "agente doméstico". Tal agente doméstico repassa os datagramas IP destinados ao terminal móvel pelo uso de uma técnica denominada "IP tunneling". O IP tunneling implica em que o agente doméstico irá anexar um novo header IP que contém o endereço "aos cuidados de" a qualquer pacote IP chegando com um endereço de destino correspondente ao endereço IP doméstico do terminal móvel. Após chegar no endereço aos cuidados de, um "agente externo" no endereço aos cuidados de retira o header do IP tunneling e repassa o pacote IP ao terminal móvel em seu corrente ponto de ligação à Internet.
Dessa forma, as técnicas do RFC 2002 propiciam serviços de dados para usuários que desejem mudar o ponto de ligação de seus terminais móveis à Internet sem ter que mudar o endereço IP do terminal móvel. Tal capacidade apresenta várias vantagens. Em primeiro lugar, ela permite que nós de origem em outro local da Internet enviem serviços periódicos de "repasse" ("push") para o terminal móvel independentemente de onde ele se encontra. Tais serviços poderíam incluir cotações de ações ou e-mail. Isto elimina a necessidade para o usuário da unidade móvel de "discar" ou de outra forma entrar em contato com sua rede doméstica de modo a recuperar informações. Além disso, ela permite que o terminal móvel se desloque tantas vezes quanto desejado, sem que quaisquer partes que dêem origem a mensagens tenham que se manter informadas sobre onde está correntemente localizado o terminal móvel.
Para aumentar a liberdade de movimento do terminal móvel, vários usuários móveis irão tipicamente utilizar dispositivos de comunicação sem fio, tais como telefones celulares ou portáteis, para se contatar à Internet. Em outras palavras, muitos usuários móveis irão utilizar dispositivos de comunicação sem fio, comumente designados como "estações móveis", ou dispositivos MT2, como o ponto de acesso à rede de estações fixas. Tal como é aqui utilizado, o termo "estação móvel" ou "dispositivo MT2" se refere a qualquer estação de assinante na rede pública de rádio sem fio que se destina a ser usada em movimento ou durante paradas em pontos não especificados. As estações móveis e os dispositivos MT2 incluem unidades portáteis (por exemplo, telefones pessoais portáteis) e unidades instaladas em veículos, bem como telefones do tipo sem fio de circuito local (WLL - Wireless Local Loop). A Figura 1 ilustra um diagrama de blocos de nível superior de um sistema de comunicação de dados sem fio no qual um terminal móvel (dispositivo TE2) 102 se comunica com uma função interfuncional (IWF - Inter Working Function) 108 através de um sistema de comunicação sem fio que inclui o dispositivo de comunicação sem fio (dispositivo MT2) 104 e a estação base / centro de comutação móvel (BS/MSC) 106. Na Figura 1, a IWF 108 serve como o ponto de acesso à Internet. A IWF 108 está acoplada, e amiúde co-localizada, com a BS/MSC 106, que pode ser uma estação base sem fio convencional, tal como é do conhecimento dos técnicos na área. O dispositivo TE2 102 está acoplado ao dispositivo MT2 104, que, por sua vez está em comunicação sem fio com a BS/MSC 106 e com a IWF 108.
Existem muitos protocolos que permitem a comunicação de dados entre o dispositivo TE2 102 e a IWF 108. Como exemplo, a norma provisória da Telecommunications Industry Association (TIA) / Electronic Industries Association (EIA) IS-707.5, intitulada "Data Service Options for Wideband Spread Spectrum Systems Packet Data Services", publicada em fevereiro de 1998, define as exigências para o suporte da capacidade de transmissão de dados em pacote através de sistemas de espectro espalhado e banda larga IS-95 da TIA/EIA, dos quais a BS/MSC 106 e IWF 108 podem constituir uma parte. A IS-707.5 especifica um serviço portador de dados em pacote que pode ser usado para a comunicação entre o dispositivo TE2 102 e a IWF 108 através da BS/MSC 106. Ela provê procedimentos que podem se aplicar a múltiplos serviços de dados em pacote, incluindo o serviço IP Móvel do RFC 2002, bem como o Cellular Digital Packet Data (CDPD) que está descrito em CDPD - 1995, intitulado Cellular Digital Packet Data System Specification, Version 1.1" publicado em 29 de janeiro de 1995 pelo CDPD Forum, Inc. 0 CDPD é um serviço celular de dados (analógico) AMPS, que inclui parte de seu próprio suporte para mobilidade. 0 CDPD difere do IP Móvel em vários aspectos significativos. Mais notavelmente, um modem CDPD possui um endereço IP designado que pertence à rede CDPD. Assim, apesar de um modem CDPD poder navegar (roam) dentro da rede CDPD, ele não pode utilizar seu endereço IP fora da rede CDPD da mesma forma que um terminal suportado por IP Móvel pode utilizar seu endereço IP "doméstico" fora de sua rede "doméstica". A IS-707.5 provê também as exigências para protocolos de comunicação através dos links entre o dispositivo TE2 102 e o dispositivo MT2 104 (a interface Rm), entre o dispositivo MT2 104 e a BS/MSC 106 (a interface Um) e entre a BS/MSC 106 e a IWF 108 (a interface L) .
Fazendo agora referência à Figura 2, é ali mostrado um diagrama das pilhas de protocolo em cada entidade do modelo de repasse (relay) IS-707.5. a Figura 2 corresponde, grosso modo à Figura 1.4.2.1-1 da IS-707.5. Na extremidade esquerda da figura está uma pilha de protocolo, apresentada em formato vertical convencional, mostrando as camadas de protocolo empregadas no dispositivo TE2 102 (por exemplo, o terminal móvel, computador laptop ou palmtop). A pilha do protocolo TE2 está ilustrada como estando logicamente conectada à pilha de protocolo do dispositivo MT2 104 através da interface Rm. O dispositivo MT2 104 está ilustrado como estando logicamente conectado à pilha de protocolo da BS/MSC 106 através da interface Um. A pilha de protocolo da BS/MSC 106 está, por sua vez, ilustrada como estando logicamente conectada à pilha de protocolo da IWF 108 através da interface L.
Um exemplo da operação da Figura 2 é como se segue. Uma entidade de protocolo de camada superior 202, tal como um programa de aplicação ou aplicativo rodando corre no dispositivo TE2 102 tem necessidade de enviar pacotes IP através da Internet. Um exemplo de aplicação pode ser um navegador da rede tal como o Netscape Navigator, ou o Microsoft Internet Explorer, ou similares. O navegador de rede requisita um localizador de recurso universal (URL - Universal Resource Locator), tal como http://www.qualcomm.com. Um protocolo de sistema de nome de domínio (DNS), também nos protocolos de camada superior 202, traduz o nome de host textual "www.qualcomm.com" para um endereço IP numérico de 32 bits. 0 protocolo de transferência de hipertexto (HTTP), também um protocolo de camada superior 2 02, monta uma mensagem GET para o URL requisitado e também especifica que o protocolo de controle de transmissão (TCP) será usado para enviar a mensagem e que a porta TCP 80 é usada para as operações HTTP. 0 protocolo TCP, também um protocolo de camada superior 202, abre uma conexão para o endereço IP especificado pelo DNS, porta 80, e transmite a mensagem HTTP GET. 0 protocolo TCP especifica que o protocolo IP será usado para o transporte da mensagem. 0 protocolo IP, um protocolo da camada da rede 204, transmite os pacotes TCP para o endereço IP especificado. O protocolo ponto a ponto (PPP) , um protocolo de camada de link 206, codifica os pacotes IP/TCP/HTTP e os transmite através da interface Rm, utilizando o protocolo de camada de repasse 208 EIA-232 para a porta compatível com a EIA-232 no dispositivo MT2. O protocolo PPP está descrito em detalhes no RFC 1661, intitulado "The Point to Point Protocol (PPP)". 0 protocolo EIA-232 210 no dispositivo MT2 104, passa o pacote PPP transmitido para uma combinação do protocolo de link de rádio (RLP) 212 e o protocolo IS-95 214 para transmissão para a BS/MSC 106 através da interface Um. 0 protocolo RLP 212 está definido na IS-707.2 e o protocolo IS-95 está definido na IS-95 acima mencionada. Uma pilha complementar de protocolo de camada de repasse na BS/MSC 106, incluindo uma combinação do protocolo RLP 216 e do protocolo IS-95 218 recebe os pacotes PPP através da interface Um e os passa ao protocolo de camada de repasse MT2 220 para a interface L para o protocolo de camada de repasse IWF 228. O protocolo de camada de repasse MT2 220 e o protocolo de camada de repasse IWF 228 estão descritos na TIA/EIA IS-658 intitulada "Data Services Interworking Function Interface Standard for Wideband Spread Spectrum Digital Cellular System". O protocolo PPP 226 na camada de link 227 da IWF decodifica os pacotes PPP provenientes do dispositivo TE2 102 e serve para terminar a conexão PPP entre o dispositivo TE2 102 e a IWF 108. Os pacotes decodificados são passados do protocolo PPP 226 para o protocolo IP nos protocolos de camada de rede 224 da IWF 108 para exame e direcionamento posterior para o endereço IP especificado pelo dispositivo TE2 102 no cabeçalho do pacote IP (aqui, o endereço IP para www.qualcomm.com). Caso existam quaisquer tarefas do protocolo de camada superior a serem efetuadas na IWF 108, tal como o TCP, elas são efetuadas pelos protocolos de camadas superiores 222.
Presumindo que o destino final dos pacotes IP gerados pelo dispositivo TF2 102 não seja a IWF 108, os pacotes são repassados através dos protocolos de camada de rede 224, camada de link 227 e protocolos de camada de repasse 228 da IWF 108 para o próximo roteador (não é mostrado) na Internet. Dessa forma, os pacotes IP provenientes do dispositivo TE2 102 são comunicados através do dispositivo MT2 104, da BS/MSC 106 e da IWF 108 para seu destino final desejado na Internet, desse modo provendo serviços de dados em pacote sem fio para o dispositivo TE2 102 de acordo com o modelo de repasse da norma IS-707.5.
Como ilustrado na Figura 2, a norma IS-707.5 provê as exigências para os protocolos de comunicação através dos links entre um dispositivo TE2 102 e uma IWF 108, incluindo as exigências para as interfaces Rm, Um e L. Tais exigências e procedimentos podem ser aplicados para dar suporte aos serviços IP móveis descritos no RFC 2002. No entanto, a IS-707.5 não provê procedimentos para estabelecer serviços IP móveis no primeiro caso. Em outras palavras, a IS-707.5 provê uma diretriz de trabalho para dar suporte aos serviços IP móveis, porém não provê procedimentos para negociar os serviços IP móveis, ou registrar o dispositivo TE2 102 em um agente doméstico e um agente externo para os serviços IP móveis. Tais procedimentos são encontrados no próprio RFC 2002.
Além disso, ambos os modelos de rede e repasse da IS-707.5 implicam na designação de um único endereço IP para o dispositivo TE2 102. Não é feita qualquer previsão separada para a designação de um segundo endereço IP para o uso exclusivo do dispositivo MT2 104. De fato, não é atualmente possível se obter mais de um endereço IP por sessão PPP. O custo adicional dos recursos na IWF 108 para dar suporte a múltiplas sessões PPP por unidade móvel o torna pouco atraente para os provedores de serviços.
Tal distinção é importante quando se considera que, tipicamente, alguma entidade de camada de aplicação deve portanto existir no dispositivo TE2 102 para dar suporte ao IP Móvel. Infelizmente, o software de sistema operacional mais popular para a computação pessoal, o Microsoft Windows, não possui suporte para o IP Móvel e não está previsto, atualmente, que ele inclua tal suporte. Como consequência, os dispositivos TE2 que operam com o Microsoft Windows (ou um dentre muitos outros sistemas operacionais) não são capazes de usar seu endereço IP "doméstico" quando eles não estão conectados à sua rede IP "doméstica". Isto impede o usuário móvel de aproveitar os benefícios de serviços IP móveis, tais como serviços "push" e entrega direta de e-mails quando afastados de sua rede IP "doméstica". 0 que se necessita é um método e um sistema para efetuar o registro IP Móvel de um dispositivo TE2, com o dispositivo MT2 atuando como um "proxy" para o dispositivo TE2 de modo a estabelecer o suporte IP Móvel para o dispositivo TE2. De um modo mais geral, o que se necessita é um método e um sistema para capacitar dois dispositivos em rede (por exemplo ο MT2 e ο TE2) a compartilharem um único endereço IP.
RESUMO DA INVENÇÃO A presente invenção consiste de um sistema e um método novos e aperfeiçoados para deslocar endpoints IP, tal como pode ser efetuado como parte do registro de nó proxy móvel. 0 método inclui sinalizar, a partir de um dispositivo de terminal, uma demanda por serviços móveis de dados e iniciar, em um dispositivo de comunicação sem fio, o registro de nó móvel do dispositivo terminal em resposta à etapa de sinalização. 0 dispositivo terminal transmite dados em pacotes e o dispositivo de comunicação sem fio acoplado ao dispositivo terminal monitora os dados em pacotes quanto a um endereço de protocolo de Internet (IP) contido em uma requisição de endereço IP. 0 dispositivo de comunicação sem fio inicia o registro de nó móvel usando o endereço IP caso a requisição de endereço IP seja para um endereço IP estático. 0 dispositivo de comunicação sem fio impede o dispositivo terminal de enviar ou receber dados em pacotes ao iniciar o registro de nó móvel e permite que o dispositivo terminal envie e receba dados em pacotes após completar o registro do nó móvel. Como resultado, o registro de nó móvel ocorre de forma transparente para o dispositivo terminal, evitando a necessidade do dispositivo terminal possuir seu próprio suporte IP Móvel.
Em outro aspecto da presente invenção, um dispositivo em rede (que pode ser o dispositivo de comunicação sem fio) compartilha um endereço IP com um dispositivo em rede separado (que pode ser o dispositivo terminal). 0 compartilhamento ocorre quando o dispositivo em rede examina um número de porta de um pacote IP recebido. 0 dispositivo em rede direciona o pacote IP para uma aplicação no dispositivo em rede caso o número de porta do pacote IP recebido corresponda à aplicação operando no dispositivo em rede. Por outro lado, o dispositivo em rede direciona o pacote IP para um dispositivo em rede separado caso o número de porta do pacote IP recebido não corresponda à aplicação operando no dispositivo em rede.
Além disso, o dispositivo em rede dá origem a pacotes IP incluindo, como um endereço de origem, um endereço IP designado para o dispositivo em rede separado após determinar se a aplicação no dispositivo em rede tem necessidade de dar origem a pacotes IP.
Alternativamente, o endereço IP pode ser "deslocado" para entre o dispositivo em rede e um dispositivo em rede separado. 0 dispositivo em rede desloca o endereço IP do dispositivo em rede separado para ele próprio pelo bloqueio de pacotes IP transmitidos com origem no dispositivo em rede separado e dando origem a pacotes IP que incluem como um endereço de origem um endereço IP designado para o dispositivo em rede separado caso o dispositivo em rede determine que uma aplicação no primeiro dispositivo em rede tem necessidade de dar origem a pacotes IP. 0 dispositivo em rede pode também desprezar pacotes IP recebidos endereçados ao dispositivo em rede separado enquanto ele está utilizando o endereço IP do dispositivo em rede separado.
BREVE DESCRIÇÃO DOS DESENHOS
As características, objetivos e vantagens da presente invenção ficarão mais claros através da descrição detalhada apresentada a seguir, quando tomada em conjunto com os desenhos, nos quais referências numéricas similares identificam itens correspondentes e nos quais: A Figura 1 ilustra um diagrama de blocos de alto nivel de um sistema de comunicação de dados sem fio no qual um dispositivo terminal se conecta à Internet através de um dispositivo de comunicação sem fio; A Figura 2 é um diagrama das pilhas de protocolo em cada entidade do modelo de repasse IS-707.5; A Figura 3 é um diagrama de estado de alto nivel da operação do dispositivo MT2 da presente invenção; A Figura 4 é um diagrama das pilhas de protocolo de cada entidade de uma modalidade da presente invenção; A Figura 5 ilustra um diagrama de estado expandido do estado de modo IP Móvel 310 da Figura 3; A Figura 6 é um diagrama das pilhas de protocolo de cada entidade de uma modalidade alternativa da presente invenção; A Figura 7 ilustra um diagrama de estado expandido de uma modalidade alternativa do modo IP Móvel 310 da Figura 3. A Figura 8 é um fluxograma que ilustra um método para efetuar o deslocamento de endereço IP; A Figura 9A é um fluxograma que ilustra um método alternativo para efetuar o deslocamento de endereço IP em conexão com o recebimento de pacotes IP; e A Figura 9B é um fluxograma que ilustra um método alternativo para efetuar o deslocamento de endereço IP em conexão com o envio de pacotes IP.
DESCRIÇÃO DETALHADA DAS MODALIDADES PREFERIDAS A presente invenção se destina a dar suporte à mobilidade transparente para usuários de dispositivos MT2 habilitados para serviços de dados sob três diferentes modelos de utilização. 0 primeiro modelo de utilização é um em que o IP Móvel não tem suporte, porém serviços de dados utilizando um endereço IP dinamicamente designado são ainda suportados. Em tal primeiro modelo de utilização, ao dispositivo TE2 é dinamicamente designado um endereço IP pelo provedor de serviço de Internet (ISP) AO QUAL 0 dispositivo TE2 está correntemente ligado. Tal primeiro modelo de utilização não utiliza o suporte IP Móvel e não usa seu endereço IP "doméstico". Como resultado, o dispositivo TE2 recebe apenas os dados que ele requisita explicitamente enquanto conectado ao ISP, em lugar de ter dados a ele repassados a partir de sua rede IP doméstica. 0 segundo modelo de utilização é um em que o suporte para o IP Móvel é provido no dispositivo MT2, como um proxy em nome do dispositivo TE2. Este segundo modelo se aplica a usuários móveis que desejem ter suporte ao IP Móvel, mas que não possuem um dispositivo TE2 que dá suporte ao IP Móvel. Como exemplo, usuários de dispositivos TE2 tais como laptops que operam com o sistema operacional Microsoft Windows se enquadram neste segundo modelo de utilização. Em tal segundo modelo de utilização, o dispositivo TE2 pode utilizar seu endereço IP "doméstico" (isto é, o endereço IP "permanente" designado por sua rede doméstica), estejam eles ligados a sua rede IP doméstica, ou estejam navegando em uma rede sem fio habilitada ao IP Móvel. Este segundo modelo de utilização também provê suporte de mobilidade para dispositivos que integram o dispositivo TE2 e o dispositivo ME2, tais como os chamados "smartphones (telefones inteligentes)". 0 terceiro modelo de utilização é um em que o suporte ao IP Móvel é provido no dispositivo TE2. Tal terceiro modelo de utilização é aplicável a usuários dos dispositivos TE2 que possuem suporte ao IP Móvel e portanto não necessitam de serviços proxy a partir de um dispositivo MT2. As várias modalidades da presente invenção se destinam a satisfazer às necessidades de um ou mais desses três modelos de utilização.
Ficará claro para os técnicos na área que a presente invenção, tal como descrita a seguir, pode ser implementada em várias modalidades diferentes de software, firmware e hardware, em cada uma das entidades ilustradas nas figuras (dispositivo TE2 102, dispositivo MT2 104, BS/MSC 106 e IWF 108) . Os reais código de software ou hardware de controle usados para implementar a presente invenção não constituem limitação da presente invenção. Dessa forma, a operação e comportamento da presente invenção será descrito sem referência especifica ao código de software real, devendo ficar claro que os técnicos na área serão capazes de projetar software e hardware de controle para implementar as várias modalidades da presente invenção com base na presente descrição.
Fazendo agora referência à Figura 3, é ali ilustrado um diagrama de estado de alto nivel da operação do dispositivo MT2 da presente invenção. Na Figura 3, o dispositivo MT2 começa no estado fechado 308. No estado fechado 308 o dispositivo MT2 não está correntemente em uma chamada, mas está aguardando para dar origem a uma chamada. As chamadas terminadas na unidade móvel (isto é, aquelas em que o dispositivo MT2 é a parte chamada) não são consideradas neste estado, uma vez que elas presumem que ao dispositivo MT2 ou já foi designado um endereço IP, ou ele já se registrou para o IP Móvel. Caso o dispositivo MT2 já tenha se registrado para o IP Móvel, ele não está em tal estado fechado 308, mas sim no estado de modo IP Móvel 310 mais completamente descrito a seguir.
Quando uma chamada de dados em pacote é iniciada a partir do dispositivo TE2, o dispositivo MT2 passa do estado fechado 308 para o estado de "mobilidade habilitada?" 304. No estado de mobilidade habilitada? 304, o dispositivo MT2 confere o valor do item de dados de mobilidade 302 para determinar se o suporte à mobilidade (para IP Móvel) está habilitado. Em uma modalidade, o item de dados de mobilidade 302 pode apresentar um dentre três valores, que podem ser opcionalmente configurados pelo usuário móvel conforme desejado através, por exemplo, de uma interface de usuário no dispositivo TE2 ou no dispositivo MT2. Outras modalidades podem utilizar mais ou menos valores de modo a permitir que o usuário móvel tenha mais ou menos escolhas de configuração. Outras modalidades não permitem a configuração pelo usuário do item de dados de mobilidade 302. Em mais outras modalidades, o item de dados de mobilidade 302 não existe, a decisão sendo rigidamente codificada no software de controle. O primeiro valor do item de dados de mobilidade é "desabilitado". Quando o item de dados de mobilidade 302 está "desabilitado", o dispositivo MT2 não dá suporte à negociação e registro do IP Móvel. Como resultado, todas as chamadas de dados em pacote originadas quando o item de dados de mobilidade 302 possui o valor "desabilitado" utilizam o modo IP simples 306, descrito em maiores detalhes a seguir. O segundo valor é "caso disponível". Quando o valor do item de dados de mobilidade 302 for "caso disponível", o dispositivo MT2 irá prover a negociação e registro de IP Móvel a menos que a infra-estrutura (BS/MSC 106 e IWF 108) não dê suporte ao IP Móvel ou a menos que o registro de nó móvel tentado pelo dispositivo MT2 falhe. Caso a infra-estrutura não dê suporte ao IP Móvel, a chamada de dados em pacote se torna uma simples chamada no modo IP 306. Em outras palavras, se o valor "caso disponível" para o item de mobilidade de dados 302 permite ao usuário do dispositivo TE2 e do dispositivo MT2 obter as vantagens do IP Móvel quando ele é suportado pela infra-estrutura e é negociado com sucesso, mas, caso contrário, ainda permite uma chamada de dados em pacote sem suporte ao IP Móvel. Em uma modalidade na qual ao usuário móvel não é permitido mudar o valor do item de dados de mobilidade 302, é usado este segundo valor. Alternativamente, o item de dados de mobilidade 302 pode sempre ser ajustado para "caso disponível", ou ser inteiramente omitido eliminando a transição entre o estado mobilidade habilitada? 304 e o estado de modo IP simples 306. O terceiro valor é "exclusivamente". Quando o item de dados de mobilidade 302 for "exclusivamente", o dispositivo MT2 irá prover a negociação e registro IP Móvel a menos que a infra-estrutura (BS/MSC 106 e IWF 108) não suporte o IP Móvel, ou a menos que o registro de nó móvel tentado pelo dispositivo MT2 falhe. No entanto, em contraste ao valor "caso disponível" acima, se a infra-estrutura não suportar o IP Móvel ou a tentativa do registro de nó móvel falhe, o dispositivo MT2 não completa uma chamada IP simples, mas sim força a tentativa de origem de chamada de pacote a falhar completamente. Em outras palavras, o valor "exclusivamente" para o item de dados de mobilidade 302 impede que qualquer chamada de dados em pacote que não uma chamada suportada por IP Móvel se origine a partir do dispositivo MT2.
Caso o item de dados de mobilidade 302 seja "desabilitado", ou caso o valor do item de dados de mobilidade 302 seja "caso disponível" porém o IP Móvel não seja suportado pela infra-estrutura, o dispositivo MT2 entrará no modo IP simples 306 em um tentativa de originar chamada de dados em pacote. Em uma modalidade, o modo IP simples 306 emprega o modelo de repasse IS-707.5 convencional tal como ilustrado e descrito com referência à Figura 2.
Caso o valor do item de dados de mobilidade 302 seja ou "caso disponível" ou "exclusivamente", o dispositivo MT2 passa do estado mobilidade habilitada? 304 para o modo IP móvel 310. É neste modo IP móvel 310 que o dispositivo MT2 entra em registro de nó móvel para serviços IP Móvel como um proxy em nome do dispositivo TE2 tal como será adicionalmente descrito a seguir.
Fazendo agora referência à Figura 4, é ali apresentado um diagrama das pilhas de protocolo de cada entidade de uma modalidade da presente invenção. Uma diferença significativa entre o diagrama da Figura 4 e aquele da Figura 2 é que na Figura 4 existem camadas de protocolo adicionais no dispositivo MT2 104 para dar suporte ao registro de nó móvel da presente invenção. Tais camadas adicionais de protocolo incluem o protocolo PPP 415, o protocolo IP 413, o protocolo UDP 411 e o protocolo IP Móvel 409. Na medida que as camadas de protocolo da Figura 4 operem da mesma forma que aquelas descritas na Figura 2, elas não serão comentadas. Em lugar disto, a descrição que se segue irá se centrar sobre as diferenças entre a Figura 4 e a Figura 2.
Um exemplo da operação da Figura 4 é como se segue. Uma entidade de protocolo de camada superior 402, tal como um programa de aplicação operando no dispositivo TE2 102 tem necessidade de enviar pacotes IP através da Internet, similar àquela da entidade de protocolo de camada superior 202 da Figura 2. A aplicação gera uma mensagem utilizando, por exemplo, os protocolos TCP ou UDP, e o pacote TCP ou UDP é encapsulado pelo protocolo IP 404 usando o endereço IP de destino. O protocolo ponto a ponto (PPP) 406 enquadra os pacotes IP e os transmite através da interface Rm usando o protocolo da camada de repasse 408 EIA-232 para a porta EIA-232 compatível no dispositivo MT2 que opera o protocolo EIA-232 410.
No entanto, como é do conhecimento dos técnicos na área, para estabelecer as comunicações através de um link ponto a ponto, cada extremidade do link PPP (no caso, o protocolo PPPTE2 406 e o protocolo IWF PPP 426) deve inicialmente enviar pacotes de protocolo de controle de link (LCP) para estabelecer, configurar e testar a conexão do link de dados. Após o link ter sido estabelecido pelo LCP, o protocolo PPP 406 envia pacotes de protocolo de controle de rede (NCP) para configurar os protocolos de camada de rede (no caso, o protocolo TE2 IP 404 e o protocolo IWF IP 425) . Após cada um dos protocolos de camada de rede ter sido configurado, diagramas provenientes de cada protocolo de camada de rede podem ser enviados através do link entre eles.
Em uma modalidade, o NCP para IP é o protocolo de controle IP (IPCP). O IPCP está descrito em detalhes no RFC 1332, intitulado "The PPP Internet Protocol Control Protocol (IPCP)", publicado em maio de 1992. O IPCP é responsável por configurar, habilitar e desabilitar tanto o protocolo TE2 IP 404 como o protocolo IWF IP 425 que operam em ambas as extremidades do link ponto a ponto. Como é do conhecimento dos técnicos na área, o ICPC utiliza requisições de configuração, que são mensagens que podem incluir uma opção de configuração para endereço IP. Tal porção de opção de configuração da mensagem de requisição de configuração propicia um meio para negociar o endereço IP a ser usado por quem envia a requisição de configuração (no caso, o dispositivo TE2 102). Ela permite que quem envia a requisição de configuração diga qual endereço IP é desejado por especificar um endereço IP, ou para requisitar que o par (no caso, a IWF 108) propicie um endereço IP dinâmico para quem envia. Caso quem envia a requisição de configuração ajuste o campo de endereço IP na opção de configuração de endereço IP para zeros, o par pode prover um endereço IP dinâmico pelo envio de uma configuração NAK (confirmação negativa - Negative Acknowledgment) para a opção e retornando com um endereço IP válido. Caso, por outro lado, quem envia a requisição de configuração ajuste o campo de endereço IP na opção de configuração de endereço IP para um endereço IP especificado, o par pode indicar que o endereço IP especificado é aceitável pelo envio de uma configuração ACK para a opção. A presente invenção aproveita as comunicações IPCP entre o dispositivo TE2 102 e a IWF 108 para determinar se e quando atuar como um proxy para o dispositivo TE2 durante o registro de nó móvel. A Figura 5 ilustra um diagrama de estado expandido do estado de modo IP Móvel 310 da Figura 3. Quando o estado de mobilidade habilitada? 304 (Figura 3) determina que o item de dados de mobilidade 302 não está desabilitado, ele passa para o sub-estado de monitoramento PPP 502. Deve ser notado que é possível passar de qualquer sub-estado da Figura 5 para o sub-estado de fechamento 516 caso a chamada seja finalizada. No entanto, para maior simplicidade a transição de chamada finalizada é ilustrada somente a partir do sub-estado aberto 508 para o sub-estado de fechamento 516.
No sub-estado de monitoramento PPP 502, o dispositivo MT2 104 insere um "spigot (sensor)" de rede 417 na pilha de protocolo do dispositivo MT2 entre o protocolo RLP 412 e pares do protocolo EIA-232 410. Em outras palavras, os pacotes PPP que passam entre o protocolo EIA-232 410 e o protocolo RLP 412 são monitorados e examinados pelo dispositivo MT2 104. Isto permite ao dispositivo MT2 104 monitorar os pacotes PPP a medida que elas passam entre o dispositivo TE2 102 e a IWF 108. O primeiro pacote LCP é gravado (cached) pelo dispositivo MT2 104 para uso após um repasse entre IWF, como será descrito a seguir com relação ao estado de início de resincronização PPP 504. O dispositivo MT2 104 continua a monitorar os pacotes PPP que são trocados entre o dispositivo TE2 102 e a IWF 108 até que um pacote IPCP proveniente do dispositivo TE2 102 seja detectado pelo dispositivo MT2 104. Tal pacote IPCP é a seguir examinado pelo dispositivo MT2 104 para determinar se um endereço IP estático ou dinâmico está sendo requisitado pela opção de configuração de endereço IP da requisição de configuração. Caso o campo de endereço IP contenha um endereço IP que seja todo de zeros, o dispositivo TE2 está requisitando um endereço dinâmico. Neste caso, não existe qualquer requisição para suporte IP Móvel pelo dispositivo TE2 102 e o dispositivo MT2 104 passa para o modo IP simples 306 (Figura 3).
Caso, por outro lado, o campo de endereço IP na requisição de configuração enviada pelo dispositivo TE2 102 contém um endereço IP estático (isto é, diferente de zero), o dispositivo MT2 104 a seguir passa ao estado de monitoramento IPCP 506. No estado de monitoramento IPCP 506, o dispositivo MT2 104 monitora os pacotes IPCP sendo trocados entre o dispositivo TE2 102 e a IWF 108. Especificamente, o dispositivo MT2 104 examina os pacotes IPCP para determinar se a requisição de endereço IP estático feita pelo dispositivo TE2 102 foi aceita pela IWF 108 com uma configuração ACK.
Caso a requisição de endereço IP estático feita pelo dispositivo TE2 102 seja negada pela IWF 108, o dispositivo MT2 104 passa para o estado modo de mobilidade? 514, onde ele checa o valor do item de dados de mobilidade 302. Caso o valor do item de dados de mobilidade 302 seja "caso disponível", o dispositivo MT2 104 passa ao estado de modo IP simples 306 (Figura 3) pois é presumido que o usuário estará satisfeito com uma simples chamada IP (isto é, um endereço IP dinamicamente designado) caso o suporte ao IP Móvel não esteja disponível. No entanto, se o valor do item de dados de mobilidade 302 for "exclusivo", o dispositivo MT2 104 passa ao estado de fechamento 516 pois presume-se que o usuário não estará satisfeito com uma chamada IP simples.
Caso a requisição de endereço IP estático feita pelo dispositivo TE2 102 seja aceita pela IWF 108, o dispositivo MT2 104 passa ao estado de registro móvel 512 ao completar a negociação IPCP. No estado de registro móvel 512, o dispositivo MT2 104 inicia o protocolo PPP 415, o protocolo IP 413, o protocolo UDP 411 e o protocolo IP Móvel 409. O dispositivo MT2 104 a seguir controla o fluxo do dispositivo TE2 102. Tal como é aqui utilizado, o termo "controle de fluxo" se refere à etapa de impedir que o dispositivo TE2 102 envie ou receba dados através de sua interface de camada de repasse. Na modalidade da Figura 4, este é o link entre o protocolo EIA-232 408 do dispositivo TE2 e o protocolo EIA-232 410 do dispositivo MT2. Pode ser usado o controle de fluxo por software ou hardware. Como exemplo, em uma modalidade, o dispositivo MT2 104 comuta uma das voltagens de pino entre o dispositivo MT2 104 e o dispositivo TE2 102.
Pelo controle de fluxo no dispositivo TE2 102, o dispositivo MT2 104 e especificamente o protocolo IP 413 podem agora se tornar o "endpoint" ou ponto terminal IP para o propósito de registro do nó móvel. Isto permite ao dispositivo MT2 104 efetuar o registro do nó móvel em nome do dispositivo TE2 102, de forma transparente para o dispositivo TE2 102. Conceitualmente, isto "desloca" o endpoint IP do dispositivo TE2 102, onde, de outra forma, ele estaria, para o dispositivo MT2 104. O dispositivo MT2 104 lê os itens de dados de Registro de Nó Móvel (MNR) 510. Em uma modalidade, tais itens de dados ficam armazenados em um circuito de memória não volátil apropriado (não é mostrado). Tais itens de dados MNR 510 são os itens de dados necessários para efetuar o registro do nó móvel. Tais itens de dados MNR 510 podem incluir o índice de parâmetro de segurança, a chave de autenticação MD5, tal como descrito no RFC 2002, e o endereço IP do agente doméstico. O dispositivo MT2 104 a seguir efetua o registro do nó móvel tal como descrito no RFC 2002 usando o endereço IP estático requisitado pelo dispositivo TE2 102 e os itens de dados MNR 510. Os detalhes do registro de nó móvel estão descritos no RFC 2002 e portanto não serão descritos em detalhes aqui. Resumidamente, o protocolo IP Móvel 409 envia uma mensagem de solicitação de agente externo para o protocolo IP Móvel 421 na IWF 108. Tal mensagem de solicitação de agente externo é passada para o protocolo UDP 411. O protocolo UDP 411 atua como um serviço de datagrama, tal como é conhecido pelos técnicos na área, e passa a mensagem de solicitação de agente externo ao protocolo IP 413 onde ela é empacotada com o header IP ou do endereço de irradiação ou o endereço múltiplo "todos os roteadores" ("all routers") de acordo com o RFC 2002. O protocolo IP 413 a seguir passa o pacote IP para o protocolo PPP 415, que o empacota em um pacote PPP e o repassa para o protocolo RLP 412 e protocolo IS-95 414 para transmissão através da interface Um. Um protocolo RLP complementar 416 e o protocolo IS-95 418 na BS/MSC 106 passa os dados para o protocolo de camada de repasse 420 para transmissão através da interface L para o protocolo de camada de repasse 428. O protocolo PPP 426 a seguir desempacota os pacotes PPP recebidos e os passa para o protocolo IP 425. O protocolo IP 425 remove o cabeçalho IP e direciona os pacotes para o protocolo UDP 423 que, por sua vez, passa a mensagem de solicitação de agente externo desempacotada para o protocolo IP Móvel 421. Caso o protocolo IP Móvel 421 esteja presente na IWF 108, existe uma entidade de agente externo residente na IWF 108 e ela responde com uma mensagem de propaganda do agente que segue a trajetória inversa de volta ao protocolo IP Móvel 409 no dispositivo MT2 104. O protocolo IP Móvel 409 a seguir envia uma mensagem de registro de nó móvel para o agente externo na IWF 108. Caso a mensagem de registro de nó móvel seja aceitável para o agente externo, ele irá passar a mensagem de registro de nó móvel para uma entidade de agente doméstico na rede IP doméstica do dispositivo TE2 (isto é, aquele incluindo o endereço IP estático requisitado pelo dispositivo TE2 102).
Caso a mensagem de registro de nó móvel seja aceitável para o agente doméstico, o agente doméstico cria uma ligação de mobilidade para o dispositivo TE2 102 usando o endereço "aos cuidados de" ("care of") do agente externo. Uma ligação de mobilidade, tal como descrito no RFC 2002, é um direcionamento que toma quaisquer pacotes IP destinados ao dispositivo TE2 102 que cheguem na rede doméstica do dispositivo TE2 e os repassa para o agente externo utilizando o túnel IP (IP tunneling).
Ao receber a notificação proveniente do agente doméstico de que a ligação de mobilidade foi criada, o agente externo a seguir cria uma associação entre o endereço IP interno no pacote do túnel (isto é, o endereço IP estático requisitado pelo dispositivo TE2 102) e o "número de telefone" do dispositivo MT2 104. Aqui, a expressão "número de telefone" é usada em seu sentido mais amplo para representar o número de identificação do dispositivo MT2 104. Como é aqui utilizado, ele se refere ao número de identificação de unidade móvel (MIN) do dispositivo MT2 104, seu número de série eletrônico (ESN), ou outro identificador exclusivo que o dispositivo MT2 104 tenha registrado com a BS/MSC 106, como é do conhecimento dos técnicos na área. A IWF 108 mantém tal tradução IP para MIN ou IP para ESN.
Para efetuar tal registro de nó móvel, a presente invenção redireciona pacotes IP do protocolo RLP 412 para o protocolo PPP MT2 415 para assegurar a entrega dos dados necessários para o software de registro de nó móvel operando no nivel de protocolo IP Móvel 409 da pilha de protocolo do dispositivo MT2. Deve ser notado que o protocolo PPP MT2 415 não é uma implementação PPP completa tal como descrito no RFC 1661. Na modalidade da Figura 4, o protocolo MT2 PPP 415 não efetua qualquer negociação para o estabelecimento de protocolo ou link, ele apenas enquadra, desenquadra e efetua qualquer escape de caractere necessário de pacotes IP que são enviados e recebidos pelo dispositivo MT2 104 durante o estado de registro móvel 512 pois o PPP já foi negociado entre o dispositivo TE2 102 e a IWF 108 tal como foi acima descrito.
Caso o registro de nó móvel acima descrito e efetuado durante o estado de registro de nó móvel 512 falhe por qualquer razão, em uma modalidade o dispositivo MT2 104 deixa o protocolo IP Móvel 409, o protocolo UDP 411, o protocolo IP 413 e o protocolo PPP 415 e passa para o estado de fechamento 516. As possíveis razões para a falha podem incluir a rejeição pelo agente externo ou o agente doméstico da mensagem de registro de nó móvel. Em outras modalidades, o dispositivo MT2 104 pode tentar resincronizar o PPP com um endereço IP dinâmico, em lugar do endereço IP estático requisitado pelo dispositivo TE2.
Caso contrário, quando do registro de nó móvel com sucesso no estado de registro móvel 512, o dispositivo MT2 deixa o protocolo IP Móvel 409, o protocolo UDP 411, o protocolo IP 413 e o protocolo PPP 415 e a seguir passa para o estado aberto 508. No estado aberto 508, o dispositivo MT2 104 atua de acordo com o modelo de repasse IS-7 07.5 tal como mostrado na Figura 2. Uma vez em tal estado aberto 508, os dados que chegam no protocolo RLP 4112 do dispositivo MT2 104 são meramente enviados através da interface EIA-232 entre o dispositivo TE2 102 e o dispositivo MT2 104. O dispositivo MT2 permanece no estado aberto 508 até que ocorra uma dentre três situações: a chamada é finalizada, o dispositivo MT2 104 é repassado para uma IWF diferente, ou o tempo de vida ou validade do registro móvel foi excedido. A chamada pode ser finalizada de diversas formas. Como exemplo, o usuário pode pressionar uma tecla "END" (não é mostrado) ou similar no dispositivo MT2 104, desse modo finalizando intencionalmente a chamada de dados. Outro exemplo é o de que o dispositivo TE2 102 ou a IWF 108 terminem unilateralmente a sessão PPP entre eles. Em mais um exemplo, a chamada de dados pode ser terminada simplesmente porque o link de rádio entre dispositivo MT2 104 e a BS/MSC 106 se torna tão degradado que a chamada é abandonada. Caso a chamada seja finalizada em uma dessas formas, o dispositivo MT2 104 passa ao estado de fechamento 516.
No estado de fechamento 516, o dispositivo MT2 104 efetua funções de "arrumação" necessárias para fechar a pilha de protocolo IP Móvel (protocolo IP Móvel 409, protocolo UDP 411, protocolo IP 413 e protocolo PPP 415) se ela ainda estiver em posição. Adicionalmente, o dispositivo MT2 104 remove o "sensor" de rede 417 caso ele ainda esteja em posição. Finalmente, qualquer mensagem apropriada de notificação ao usuário pode ser apresentada (por exemplo, em uma interface de usuário, que não é mostrada) ou de outra forma mostrada ao usuário para indicar que o processo de registro IP Móvel não foi bem sucedido. Opcionalmente, podem também ser apresentadas uma descrição mais detalhada de qual falha ocorreu e uma causa (caso conhecida) . Após efetuar quaisquer notificações e completar a "limpeza e arrumação da casa", o dispositivo MT2 104 a seguir passa para o estado fechado 308 (Figura 3).
Alternativamente, enquanto no estado aberto 508, o dispositivo MT2 104 pode ser repassado a uma outra BS/MSC 106. Tipicamente, isto irá ocorrer a medida que o dispositivo MT2 104 se movimenta de uma localização geográfica para outra que está fora da área de serviço da BS/MSC 106 original. Caso as duas BS/MSC não sejam servidas pela mesma IWF 108, ocorre um repasse entre IWFs. O dispositivo MT2 104 pode detectar isto ou pelo exame da ID da zona de pacote IS-95, ou por notar uma mudança na identificação do sistema (SID) ou identificação de rede (NID) da BS/MSC 106 servidora. Em qualquer dos casos, o dispositivo MT2 104 irá passar para o estado inicial de resincronização PPP 504.
No estado inicial de resincronização PPP 504, o dispositivo MT2 104 inicia uma resincronização PPP com a IWF 108 enviando o primeiro pacote LCP que foi armazenado (cached) no inicio das negociações PPP tal como foi acima descrito. Isto invoca uma troca de pacotes LCP em reação a partir da IWF 108. Ao detectar tal troca de pacotes LCP, o dispositivo MT2 104 passa de volta ao estado de monitoramento PPP 502 tal como foi acima descrito.
Caso, por outro lado, durante o estado aberto 508, o tempo de vida do registro móvel tal como definido na RFC 2002 seja superado, o dispositivo MT2 104 passa diretamente de volta ao estado de registro móvel 512 para renegociar o registro de nó móvel tal como foi acima descrito.
Dessa forma, na modalidade da Figura 4, as camadas adicionais de protocolo no dispositivo MT2 104 (protocolo PPP 415, protocolo IP 413, protocolo UDP 411 e protocolo IP Móvel 409) são invocadas apenas para efetuar o registro de nó móvel no estado de registro móvel 512, sendo fechadas após deixar o estado de registro móvel 512. Todo o tráfego IP durante o tempo em que tais camadas adicionais de protocolo estão abertas se inicia e termina no dispositivo MT2 104. Conceitualmente, isto "desloca" o ponto final ou "endpoint" do dispositivo TE2 102 durante o registro de nó móvel e a seguir de volta para o dispositivo TE2 102 ao completar o registro de nó móvel. Dessa forma, o dispositivo MT2 104 serve como um proxy para o dispositivo TE2 102 durante o registro de nó móvel eliminando a necessidade do dispositivo TE2 102 possuir suporte próprio para mobilidade IP. A Figura 6 mostra um diagrama das pilhas de protocolo de cada entidade de uma modalidade alternativa da presente invenção. Uma diferença significativa entre a Figura 6 e a Figura 4 é que na modalidade da Figura 6 existe uma relação entre pares entre o dispositivo MT2 104 e o dispositivo TE2 102 no nivel PPP. Note-se que o protocolo PPPr 605 do dispositivo MT2 104 serve como a terminação para o protocolo PPPr 606 do dispositivo TE2 102. Note-se também que o protocolo PPPU 626 da IWF 108 serve como a terminação para o protocolo PPPU 615 do dispositivo MT2 104. Em contraste à modalidade da Figura 4, tais links PPPr e PPPU sobrevivem no dispositivo MT2 104 após o registro de nó móvel. A operação da Figura 6 será explanada com referência também ao diagrama de estado da Figura 7. A Figura 7 é uma diagrama de estado de uma modalidade alternativa do modo IP Móvel 310 da Figura 3. O dispositivo MT2 104 inicia no estado de monitoramento PPPr 702. No estado de monitoramento PPPr 702 o dispositivo MT2 104 inicia o protocolo PPPr 605 e negocia o link PPPr entre o dispositivo MT2 104 e o dispositivo TE2 102. O dispositivo MT2 104 também armazena o primeiro pacote LCP recebido a partir do dispositivo TE2 102 para uso posterior em uma resincronização PPP, caso necessário. O dispositivo MT2 104 continua a monitorar o link pppr procurando a requisição de configuração IPCP do dispositivo TE2 102. Ao detectar a requisição de configuração IPCP do dispositivo TE2 102, o dispositivo MT2 104 examina o campo de endereço IP. Caso o endereço IP requisitado seja dinâmico, isto é, todo de zeros, o dispositivo MT2 104 a seguir passa ao estado de iniciar resincronização do PPP 704.
No estado de iniciar resincronização do PPP 704, o dispositivo MT2 104 fecha o protocolo PPPr 605 e repassa o pacote LCP original (armazenado anteriormente no estado de monitoramento PPPr 702) para a IWF 108, desse modo iniciando um link PPP diretamente entre o dispositivo TE2 102 e a IWF 108. Isto é feito para evitar o overhead de operar o protocolo PPPr 605 e o protocolo PPPU 615 no dispositivo MT2 104 para uma chamada IP simples. Uma vez que foi requisitado um endereço dinâmico, as camadas PPP adicionais no dispositivo MT2 104 são desnecessárias e se aplica o modelo de repasse IS-707.5 normal da Figura 2.
No entanto, caso a requisição de configuração IPCP do dispositivo TE2 102 contenha um endereço IP estático, o dispositivo MT2 104 passa ao estado de negociar PPPU 70 6 após o link PPPr ter sido completamente negociado no estado de monitoramento PPPr 7 02. Uma vez no estado de negociar PPPU 706, o dispositivo MT2 104 inicia as camadas adicionais na pilha de protocolo MT2 incluindo o protocolo IP Móvel 609, o protocolo UDP 611, o protocolo IP 613 e o protocolo PPPU 615. O dispositivo MT2 104 também controla o fluxo do dispositivo TE2 102. Novamente, o termo controle de fluxo se refere a impedir o dispositivo TE2 102 de enviar ou receber quaisquer dados através da interface Rm. O dispositivo MT2 104 a seguir negocia o link PPPU entre o protocolo PPPU 615 e o protocolo PPPU 626. Na negociação do link PPPU, o dispositivo MT2 104 utiliza os mesmos parâmetros que foram requisitados pelo dispositivo TE2 102 durante a negociação do link PPPr. Especificamente, o endereço IP estático requisitado pelo dispositivo TE2 102 a partir do dispositivo MT2 104 é usado pelo dispositivo MT2 104 na negociação do link PPPU com a IWF 108.
Durante a negociação do link PPPU, o dispositivo MT2 104 monitora os pacotes IPCP retornados pela IWF 108. Caso a requisição de configuração IPCP contendo o endereço IP estático seja rejeitada pela IWF 108, o dispositivo MT2 104 passa ao estado de modo de mobilidade? 708.
No estado de modo de mobilidade? 708, o item de dados de mobilidade 302 é checado. Caso o valor do item de dados de mobilidade 302 seja "caso disponível", o dispositivo MT2 104 passa ao estado de iniciar resincronização de PPP 704 em preparação para uma tentativa de chamada IP simples no modo IP simples 306. Caso o valor do item de dados de mobilidade 302 seja "exclusivamente IP Móvel", o dispositivo MT2 104 passa ao estado de fechamento 710. O estado de fechamento 710 é de operação similar ao estado de fechamento 516 da Figura 5.
Caso a requisição de configuração IPCP contendo o endereço IP estático seja aceita pela IWF 108, o dispositivo MT2 104 passa ao estado de registro móvel 712. A condição do sistema quando da entrada no estado de registro móvel 712 é que do ponto de vista do dispositivo TE2 102, o endereço IP do dispositivo MT2 104 aparenta ser aquele da IWF 108. Ademais, do ponto de vista da IWF 108, o endereço IP do dispositivo MT2 104 aparenta ser aquele do dispositivo TE2 102. Em outras palavras, o dispositivo MT2 104 está mantendo dois endereços IP como entre o protocolo PPPr 605 e o protocolo PPPU 615. Como consequência, o dispositivo MT2 104 repassa pacotes PPP entre o protocolo PPPr 605 e o protocolo PPPU 615 sem considerar os endereços IP. O estado de registro móvel 712 é bem similar ao estado de registro móvel 512 da Figura 5, com algumas exceções significativas. Em primeiro lugar, no estado de registro móvel 712 pacotes de registro móvel são passados do protocolo PPPU 615 para o protocolo IP 613 em lugar do protocolo PPPr 605. Isto difere da operação das Figuras 4 e 5 pelo fato de que o direcionamento dos pacotes de registro móvel ocorrem em uma camada mais elevada na pilha de protocolo MT2. Em segundo lugar, não é necessário qualquer sensor de rede na modalidade da Figura 6 pois o protocolo PPPU 615 serve para terminar o link PPP entre o dispositivo MT2 104 e a IWF 108. Como resultado, todos os pacotes PPP trocados durante a negociação com a IWF 108 são originados e terminados no próprio dispositivo MT2 104, em lugar do dispositivo MT2 104 necessitar "bisbilhotar" a negociação PPP entre o dispositivo TE2 102 e a IWF 108, como ocorre em relação à modalidade das Figuras 4 e 5.
Caso o registro de nó móvel seja bem sucedido no estado de registro móvel 712, o dispositivo MT2 104 passa ao estado aberto 714. O estado aberto 714 é muito similar ao estado aberto 508 da Figura 5. Uma diferença significativa entre a modalidade da Figura 7 e da Figura 5 é a de que na Figura 7 o protocolo PPPr 605 e o protocolo PPPU 615 permanecem em posição durante o estado aberto 714. Com resultado, os pacotes IP que chegam no dispositivo MT2 104 através da interface Um são roteados pelo protocolo RLP 612 para o protocolo PPPU 615 e em tempo para o protocolo PPPr 605 e a seguir o protocolo EIA-232 610, em lugar de diretamente para o protocolo EIA-232 610. De forma similar, todos os pacotes IP recebidos pelo dispositivo MT2 104 através da interface Rm são roteados pelo protocolo EIA-232 610 para o protocolo 605 e em tempo para o protocolo PPPU 615 e protocolo RLP 612, em lugar de diretamente para o protocolo RLP 612.
Caso ocorra um repasse entre IWFs durante o estado aberto 714, o dispositivo MT2 104 passa para o estado de iniciar resincronização PPP 709. O estado de iniciar resincronização PPP 709 opera de forma similar àquela do estado de iniciar resincronização PPP 504. No entanto, deve ser notado que no estado de iniciar resincronização PPP 709 somente o link PPPU é renegociado em lugar do link PPPr. Como resultado, o link PPPr permanece imutável tornado o repasse entre IWFs transparente para o dispositivo TE2 102 e portanto não sendo necessários pacotes LCP armazenados.
Caso a chamada seja finalizada durante o estado aberto 714 (ou, na realidade, qualquer outro estado da Figura 7), o dispositivo MT2 104 passa ao estado de fechamento 710. O estado de fechamento 710 é muito similar ao estado de fechamento 516 da Figura 5. No entanto, no estado de fechamento 710 não existe qualquer sensor de rede que deva ser removido. Adicionalmente, dependendo do "timing" da finalização da chamada, podem permanecer alguns casos PPP que estão no meio de negociações. Em qualquer caso, o dispositivo MT2 104 fecha o protocolo IP Móvel 609, o protocolo UDP 611, o protocolo IP 613, o protocolo PPPr 605 e o protocolo PPPU 615, caso eles estejam ainda operando. Como na modalidade da Figura 5, a razão da falha da chamada pode opcionalmente ser apresentada.
Dessa forma, na modalidade da Figura 6, as camadas adicionais de protocolo no dispositivo MT2 104 (protocolo IP Móvel 609, protocolo UDP 611 e protocolo IP 613) são ativadas apenas para efetuar o registro de nó móvel no estado de registro móvel 712 e são fechadas após deixar o estado de registro móvel 712. No entanto, o protocolo PPPr 605 e o protocolo PPPU 615 permanecem intatos durante o estado aberto 714. Dessa maneira, o dispositivo MT2 104 serve como um proxy para o dispositivo TE2 102 durante o registro de nó móvel, eliminando a necessidade do dispositivo TE2 102 ter suporte próprio à mobilidade IP. A descrição acima propicia um exemplo do uso de deslocamento do endereço IP para prover serviços de proxy em nome de um dispositivo terminal anexado. Existem aplicações adicionais para o método de deslocamento de endereço IP da presente invenção além do registro IP Móvel. O método de deslocamento de endereço IP da presente invenção pode ser usado para qualquer serviço proxy, ou para quaisquer dois dispositivos de rede que devem compartilhar um único endereço IP. Como exemplo, ele pode ser usado entre um dispositivo MT2 104 e um dispositivo TE2 102 quando o dispositivo TE2 102 estiver em uma chamada de serviços de dados ativos (por exemplo, o usuário do dispositivo TE2 102 está chamando de um ponto remoto para checar seus e-mails) e o dispositivo MT2 104 possui uma aplicação operando que necessita enviar ou receber pacotes IP (por exemplo, uma aplicação de navegador na rede).
Um aspecto singular da presente invenção é o de que ela propicia uma técnica para serviços proxy em um sistema em que somente um único endereço IP está disponível para uso tanto pelo dispositivo MT2 104 como pelo dispositivo TE2 102. Como exemplo, os modelos de rede e repasse da IS-707.5 implicam na designação de um único endereço IP para o dispositivo TE2 102. Não é feita previsão separada para a designação de um segundo endereço IP para uso exclusivo do dispositivo MT2 104. De fato, não é atualmente possível obter mais de um endereço IP por sessão PPP. O custo adicional dos recursos na IWF 108 para dar suporte a múltiplos PPP por sessão móvel o torna pouco atraente para os provedores de serviços. O fato de que somente um endereço IP é designado para o dispositivo TE2 102 implica também em que quaisquer outras aplicações operando no dispositivo MT2 104 que necessitem um endereço IP, seja ou não para serviços proxy, deve de algum modo "compartilhar" o endereço IP designado para o dispositivo TE2 102. Um método para efetuar tal deslocamento do endereço IP foi acima descrito e é apresentado de forma gráfica no fluxograma da Figura 8. O método da Figura 8 pode ser efetuado pelos sistemas acima descritos com referência às Figuras 4 e 6. O processo da Figura 8 começa na decisão 802 em que é determinado se qualquer aplicação operando no dispositivo MT2 104 deve dar origem a pacotes IP. Como exemplo, a aplicação IP Móvel 409 da Figura 4 ou 609 da Figura 6 tem necessidade de dar origem a pacotes IP para efetuar suas funções como um proxy para registro de nó IP Móvel. Outro exemplo de uma aplicação operando no dispositivo MT2 104 que pode necessitar dar origem a pacotes IP seria um navegador de rede. Existem muitas outras aplicações que utilizam serviços de pacotes IP que podem estar operando no dispositivo MT2 104, particularmente se o dispositivo MT2 104 for uma combinação de computador e telefone ("smartphone"). O dispositivo MT2 104 então bloqueia a emissão de pacotes IP a partir do dispositivo TE2 102 no bloco 804 . Isto pode ser conseguido tal como foi acima descrito pelo dispositivo MT2 104 "controlando o fluxo" do dispositivo TE2 102 (isto é, impedindo que o dispositivo TE2 102 envie ou receba dados através de sua interface de camada de repasse) . Como exemplo, na modalidade da Figura 4, o link entre o protocolo EIA-232 408 do dispositivo TE2 102 e o protocolo EIA-232 410 do dispositivo MT2 104 tem seu fluxo controlado pelo dispositivo MT2 104. Pode ser usado controle de fluxo por software ou hardware. Como exemplo, em uma modalidade, o dispositivo MT2 104 comuta uma das voltagens de pio entre o dispositivo MT2 104 e o dispositivo TE2 102.
Pelo controle de fluxo do dispositivo TE2 102, o dispositivo MT2 104 e, especificamente, o protocolo IP 413, pode agora se tornar o ponto terminal (endpoint) IP para o propósito de enviar ou receber pacotes IP adicionais. Conceitualmente, isto "desloca" o endpoint IP do dispositivo TE2 102, onde caso contrário ele estaria, para o dispositivo MT2 104. Dessa forma, no bloco 806, o dispositivo MT2 104 a seguir envia e recebe pacotes IP utilizando o endereço IP originalmente designado para o dispositivo TE2 102.
Nesta primeira modalidade do método de deslocamento de endereço IP da presente invenção, quaisquer pacotes IP destinados ao dispositivo TE2 102 são descartados pelo dispositivo MT2 104 no bloco 808 . Isto pode ocorrer simplesmente por ser o pacote IP ignorado por qualquer aplicação operando no dispositivo MT2 104.
Uma segunda modalidade do método de deslocamento de endereço IP da presente invenção está ilustrada nas Figuras 9A e 9B. Nesta segunda modalidade, o endereço IP é conceitualmente "deslocado" entre o dispositivo MT2 104 e o dispositivo TE2 102 em uma base de pacote a pacote, em lugar de controlar o fluxo do dispositivo TE2 102. O método das Figuras 9A e 9B pode ser efetuado pelos sistemas acima descritos com referência às Figuras 4 e 6.
No bloco 902, o dispositivo MT2 104 examina o número de porta dos pacotes IP que chegam, como foi acima mencionado, o número de porta é designado por um protocolo de camada de transporte tal como o TCP ou UDP. Dessa forma, apesar de dois pacotes IP poderem ter o mesmo endereço IP de destino, eles podem possuir números de porta diferentes. Como é também do conhecimento dos técnicos na área, diferentes aplicações operando no mesmo dispositivo, ou em dispositivos diferentes, podem usar diferentes números de porta. O exame do número de porta do pacote IP que chega no bloco 902 pode envolver desenquadrar os pacotes PPP para examinar os pacotes IP diretamente. Como exemplo, no modelo de rede apresentado na Figura 6, o protocolo PPPU 615 iria desenquadrar o pacote PPP que chega proveniente da IWF 108. O dispositivo MT2 104 iria a seguir examinar o número de porta no pacote IP. Alternativamente, pode envolver meramente a indexação do pacote IP por um número de bits predefinido. O comprimento dos cabeçalhos PPP, cabeçalhos IP e a localização do número de porta dentro do pacote IP está bem definido de acordo com as diversas normas.
Na decisão 904, o dispositivo MT2 104 determina se o pacote IP inclui um número de porta sendo usado por uma aplicação operando no dispositivo MT2 104. Como exemplo, caso o dispositivo MT2 104 estivesse operando uma aplicação de navegador de Internet, tal aplicação de navegador estaria utilizando um número de porta especifico, talvez a porta 200. Caso o número de porta no pacote IP fosse também a porta 200, o pacote IP inclui um número de porta sendo usado pelo exemplo de aplicação operando no dispositivo MT2 104. No entanto, caso o número de porta em tal pacote IP seja diferente de 200, o pacote IP não irá incluir um número de porta sendo usado pelo exemplo de aplicação operando no dispositivo MT2 104.
Caso o número da porta do pacote IP seja um que esteja sendo usado por uma aplicação no dispositivo MT2 104, o fluxo prossegue para o bloco 906 em que o dispositivo MT2 104 direciona o pacote IP para a aplicação MT2. No entanto, caso o número de porta do pacote IP seja um que não esteja sendo usado por uma aplicação no dispositivo MT2 104, o fluxo prossegue para o bloco 908 onde o dispositivo MT2 104 direciona o pacote IP para o dispositivo TE2 102. Isto pode envolver o reenquadramento do pacote PPP e seu envio através do link Rm para o dispositivo TE2 102. Na modalidade do modelo de rede descrita na Figura 6, isto seria efetuado pelo protocolo PPPr 605. Dessa forma, o dispositivo MT2 104 intercepta e processa todos os pacotes IP destinados para aplicações operando no dispositivo MT2 104, concomitantemente passando todos os outros pacotes IP para o dispositivo TE2 102. Portanto, nenhum dos pacotes IP é descartado pelo dispositivo MT2 104 e o dispositivo TE2 102 não tem seu fluxo controlado.
Caso a aplicação no dispositivo MT2 104 deva dar origem a pacotes IP tal como determinado na decisão 910 da Figura 9B, a aplicação no dispositivo MT2 104 dá origem a pacotes IP usando o endereço IP designado para o dispositivo TE2 102 no bloco 912. Em qualquer dos casos, o fluxo retorna ao bloco 910 onde o dispositivo MT2 104 continua a determinar se existe uma necessidade de dar origem a pacotes IP. Dessa forma, o dispositivo MT2 104 "compartilha" o endereço IP designado para o dispositivo TE2 102 em base de pacote a pacote. A descrição acima das formas de realização preferidas é provida para permitir que qualquer técnico na área efetive ou faça uso da presente invenção. As diferentes modificações dessas formas de realização ficarão imediatamente aparentes aos técnicos na área. Dessa forma, a presente invenção não deve ser limitada às formas de realização aqui apresentadas, mas sim ater-se ao principio inventivo aqui descrito.