MÉTODOS PARA DIFUNDIR E PROCESSAR UM PACOTE DE ADVERTÊNCIA E SINAL DE DADOS DE COMPUTADOR INCORPORADO EM UM PACOTE DE
ADVERTÊNCIA
Campo da Invenção: [001J A presente invenção relaciona-se genericamente ao campo da comunicação e, mais particularmente, relaciona-se a redes sem fio de dispositivos Histórico da Invenção: [002] Com o advento da norma de comunicação sem fio 802.11 da IEEE, nasceu um novo mercado na comunicação sem fio. A norma de comunicação 802.11 descreve um protocolo para permitir que dispositivos sem fio se comuniquem com uma estação base sem fio. A estação base sem fio (também conhecida como Ponto de Acesso ou AP) fornece uma rede para os dispositivos sem fio conectados de modo sem fio à estação base sem fio. Além disso, a estação base sem fio pode ainda ser conectada a uma Rede de Área Local (LAN), uma Rede de Área Ampla (WAN), uma Rede de Telefonia Comutada Pública {PSTN), uma linha dedicada, ou assemelhadas. Tal conexão fornece ainda acesso de rede aos dispositivos sem fio conectados de modo sem fio à estação base sem fio. 0 acesso a redes sem fio para os usuários de dispositivos sem fio é benéfico, pois ele fornece aos usuários capacidades de comunicação adicionais quando do deslocamento ao redor de um prédio ou de um escritório, ou em viagem e de outra forma na estrada. No entanto, o acesso â rede sem fio não vem sem suas restrições.
[003] A estação base sem fio difunde regularmente pacotes de advertência (a cada 100 ms, por exemplo) a todas as estações clientes (isto é, dispositivos sem fio) conectadas de modo sem fio à estação base sem fio. 0 pacote de advertência contém uma variedade de informação para processamento por cada um dos dispositivos sem fio conectados de modo sem fio à estação base sem fio. Um aspecto da informação que está presente no pacote de advertência é a indicação de tráfego. A indicação de tráfego é informação que indica se há ou não dados em buffer para qualquer um dos dispositivos sem fio conectados de modo sem fio à estação base sem fio. No entanto, a informação de indicação de tráfego está localizada quase ao final de um pacote de advertência convencional.
[004] A estação cliente (ou o dispositivo sem fio) precisa processar todo o pacote de advertência para determinar se há dados em buffer para aquele dispositivo sem fio. Isto é desgastante em termos de recursos de processamento, pois o dispositivo sem fio é forçado a processar uma profusão de informação que não é útil se não houver dados em buffer para o dispositivo sem fio. Isto é exponenciado pelo fato de que o pacote de advertência é difundido a cada 100 ms mais ou menos. Ainda, durante o processamento do pacote de advertência, o dispositivo sem fio precisa estar no modo de operação normal, e assim consome energia a uma velocidade de operação normal. Isto é desgastante em termos de recursos de bateria em dispositivos portáteis, pois o dispositivo sem fio é forçado a gastar recursos de bateria para processar informação que não é útil para o dispositivo sem fio. Mais uma vez, isto é exponenciado pelo fato de que o pacote de advertência é difundido a cada 100 ms mais ou menos.
[005] Portanto, existe uma necessidade de superar os problemas com a tecnologia anterior como foi discutido acima.
Sinopse da Invenção: [006] Sucintamente, de acordo com um aspecto da presente invenção, é fornecido um método para difundir um pacote de advertência para uma ou mais estações clientes, cora o pacote de advertência incluindo um preâmbulo, um cabeçalho e uma parte de dados. De acordo com o método, é determinado se há quaisquer dados em buffer para qualquer uma das estações do cliente. Se houver dados em buffer, um sinalizador indicador de tráfego localizado antes da parte de dados do pacote de advertência é fixado para um primeiro valor lógico. Se não há quaisquer dados em buffer, o sinalizador indicador de tráfego é fixado em um segundo valor lógico. 0 pacote de advertência é difundido para as estações clientes.
[007] De acordo com outro aspecto da presente invenção, é fornecido um método para processar um pacote de advertência, com o pacote de advertência incluindo um preâmbulo, um cabeçalho e uma parte de dados. De acordo com o método, o pacote de advertência é recebido, e uma primeira parte do pacote de advertência é processada de modo a determinar o valor do sinalizador indicador de tráfego localizado antes da parte de dados do pacote de advertência. Se o sinalizador indicador de tráfego tem um primeiro valor lógico·, o· modo de dormir é entrado. Se o sinalizador indicador de tráfego tem um segundo valor lógico, a totalidade ou substancialmente toda a parte restante do pacote de advertência é processada.
[008] De acordo com ainda outro aspecto da presente invenção, é fornecido um sinal de dados de computador incorporado em um pacote de advertência com o pacote de advertência incluindo um preâmbulo, um cabeçalho e uma parte de dados. 0 sinal de dados do computador inclui um primeiro segmento de código gue inclui um sinalizador indicador de tráfego que está localizado antes da parte de dados do pacote de advertência, e um segundo segmento de código que inclui uma pluralidade dos sinalizadores indicadores de tráfego específicos do cliente estando localizados dentro da parte de dados do pacote de advertência. O sinalizador indicador de tráfego é fixado para um primeiro valor lógico para indicar que há dados em buffer para uma ou mais estações clientes, ou é fixado em um segundo valor lógico para indicar que não há quaisquer dados em buffer. Cada um dos sinalizadores indicadores de tráfego específicos do cliente indica se há ou não quaisquer dados em buffer para um correspondente das estações clientes.
Descrição Sucinta dos Desenhos: [00 9] A Figura 1 é um diagrama de blocos que ilustra uma rede sem fio convencional.
[010] A Figura 2 é um diagrama de blocos de um dispositivo sem fio convencional para utilização em um sistema de comunicação sem fio.
[011] A Figura 3 é um diagrama de blocos de uma estação base sem fio convencional para utilização em um sistema de comunicação sem fio.
[012] A Figura 4 é um diagrama de um pacote de advertência de acordo com uma versão da presente invenção.
[013] A Figura 5 é um diagrama mais detalhado de uma parte do pacote de advertência da Figura 4.
[014] A Figura 6 é um diagrama de fluxo operacional que mostra o processo de geração do pacote de advertência de acordo com uma versão da presente invenção.
[015] A Figura 7 é um diagrama de fluxo operacional que mostra o processamento de pacote de acordo com uma versão da presente invenção.
[016] A Figura 8 é um diagrama de blocos de um sistema de processamento de informação útil para a implementação da presente invenção.
Descrição Detalhada: [017] A presente invenção, de acordo com uma versão preferida, supera problemas com a tecnologia anterior ao eliminar a necessidade de as estações clientes processarem a totalidade ou substancialmente todo o pacote de advertência quando não há dados em buffer.
[018] A Figura 1 é um diagrama de blocos que ilustra uma rede sem fio convencional. A rede sem fio exemplar da Figura 1 inclui uma estação base sem fio 102, e dispositivos sem fio 106 a 108. A estação base sem fio 102 é um ponto de acesso de rede ativada por rádio para os dispositivos sem fio 106 a 108. Em uma versão, a estação base sem fio 102 é um roteador com um ponto de acesso sem fio integrado que cumpre com a norma de comunicação sem fio 802.11 (b) da IEEE. A estação base sem fio, 102 suporta um grande número de dispositivos sem fio 106 a 108, de outra forme conhecidos como estações clientes.
[019] Cada dispositivo sem fio 106 a 108 é um computador de mesa, computador laptop, computador de mão, computador palmtop, telefone móvel, rádio móvel apertar- para-falar, dispositivo de mensagem de texto, dispositivo de radiochamada bilateral, dispositivo de radiochamada unilateral, ou qualquer dispositivo ativado para comunicação sem fio. Cada dispositivo escrito 106 a 108 é equipado com um transmissor e um receptor para comunicar com a estação base sem fio 102 de acordo com a norma de comunicação sem fio apropriada. Em uma versão da presente invenção, cada dispositivo sem fio 106 a 108 é equipado com um conjunto de chip de acesso sem fio dentro da norma 802.11(b) da IEEE para comunicar com a estação base sem fio 102.
[020] A estação base sem fio 102 também pode incluir uma conexão de rede (não mostrada). A conexão de rede é uma conexão para qualquer uma ou qualquer combinação de uma Rede de Área Local (LAN), uma Rede de Área Ampla (WAN), uma Rede de Telefonia Comutada Pública (PSTN), uma linha dedicada, ou assemelhadas. Essa conexão fornece ainda acesso de rede aos dispositivos sem fio 106 a 108.
[021] A Figura 2 é um diagrama de blocos de um dispositivo sem fio convencional 106 para utilização em um sistema de comunicação sem fio. 0 dispositivo sem fio 106 inclui um receptor 206 e um transmissor 208 para transmitir e para receber informação através de rádio ou de outros sinais sem fio (isto é, canal 210) de e para a estação base sem fio 102. Em uma versão da presente invenção, o receptor 206 e o transmissor 208 operam pelo canal 210 de acordo com a norma de comunicação sem fio 802.11(b) da IEEE. Toda a informação enviada e recebida através do receptor 206 e do transmissor 208 é processada por um sub-processador de comunicação 204.
[022] O dispositivo sem fio 106 inclui um processador principal 212 que trata de todos os processos associados às funções de recepção e de transmissão do dispositivo sem fio 106. O processador principal 212 também poderá efetuar outras funções do dispositivo sem fio 106. A Figura 2 também inclui armazenamento 214 para armazenar informação e memória principal 216, como um elemento de memória volátil como um módulo DRAM ou uma memória não volátil como o módulo Flash EEPROM ou os dois. A memória principal 216 é utilizada para armazenar dados e instruções necessários para efetuar as funções do dispositivo sem fio 106. O barramento de comunicação 202 fornece um conduto para a comunicação entre o sub-processador de comunicação 204, o processador principal 212, o armazenamento 214, e a memória principal 216. Em outras versões, o dispositivo sem fio não possui seu próprio processador. Em tais versões, as funções do dispositivo sem fio como o processamento de pacotes são tratados por um processador no sistema hospedeiro ao qual o dispositivo sem fio está conectado.
[023] A Figura 3 é um diagrama de blocos de uma estação base sem fio convencional 102 para utilização em um sistema de comunicação sem fio. A estação base sem fio 102 inclui um receptor 306 e um transmissor 308 para transmitir e receber informação através do rádio ou de outros sinais sem fio (isto é, o canal 310) de e para os dispositivos sem fio 106 a 108. Em uma versão da presente invenção, o receptor 306 e o transmissor 308 operam pelo canal 310 de acordo com a norma de comunicação sem fio 802.11(b) da IEEE. Toda a informação enviada e recebida através do receptor 306 e do transmissor 308 é processada por um sub-processador de comunicação 304.
[024] A estação base sem fio 102 inclui um processador principal 312 que trata de todos os processos associados às funções de recepção e de transmissão da estação base sem fio 102. O processador principal 312 também poderá efetuar outras funções da estação base sem fio 102. A Figura 3 também inclui o armazenamento 314 para armazenar informação e a memória principal 316, como um elemento de memória volátil como um módulo DRAM ou uma memória não volátil como o módulo Flash EEPROM ou os dois. A memória principal 316 é utilizada para armazenar dados e instruções necessários para efetuar as funções da estação base sem fio 102. O barramento de comunicação 302 fornece um conduto para a comunicação entre o sub-processador de comunicação 304, o processador principal 312, o armazenamento 314, e a memória principal 316.
[025] Como foi explicado acima, a estação base sem fio 102 também pode incluir uma conexão de rede 318 a uma interface de comunicação 322 como uma porta Ethernet. A conexão 318 e a interface de comunicação 322 fornecem acesso à rede 320 como um ou mais de uma LAN, uma WAN, uma PSTN, uma linha dedicada, ou assemelhadas.
[026] A Figura 4 é um diagrama de um pacote de advertência 400 de acordo com uma versão da presente invenção. O pacote de advertência 400 é um pacote que é difundido regularmente (a cada 100 ms, por exemplo) pela estação base sem fio 102 para todas as estações clientes (isto é, o dispositivo sem fio 106 a 108) conectados de modo sem fio à estação base sem fio 102. O pacote de advertência 400 contém uma variedade de informação para processamento por cada um dos dispositivos sem fio conectados de modo sem fio à estação base sem fio 102. A presente invenção enfoca um aspecto da informação que está presente no pacote de advertência 400: a indicação de tráfego. A indicação de tráfego é informação que indica se há ou não dados em buffer para um dispositivo sem fio conectado de modo sem fio à estação base sem fio 102.
[027] Na versão ilustrada, o pacote de advertência 400 está em consonância com a norma de comunicação sem fio 802.11(b) da IEEE. Em outras versões, o pacote de advertência está em consonância com a norma 802.11 (g) da IEEE, ou com qualquer outra norma que inclua um pacote de advertência ou assemelhado. O pacote de advertência 400 da Figura 4 inclui três componentes principais: um preâmbulo 4 02, um cabeçalho que é referido como o cabeçalho de procedimento de convergência de camada física (PLCP) 404 e uma parte de dados que é referida como a unidade de dados de protocolo da controladora de acesso da mídia (MPDU) 406. As versões exemplares descritas abaixo utilizam a norma 802.11 (b) e, assim, a descrição utiliza "cabeçalho PLCP" para referir-se ao cabeçalho e "MPDU" para referir-se à parte de dados. Entretanto, deve-se compreender que isto é meramente feito por facilidade de compreensão. A presente invenção não é limitada à norma 802.11 (b), mas é geralmente aplicável a qualquer norma de comunicação ou protocolo que utiliza um pacote de advertência ou assemelhado.) [028] O pacote de advertência ilustrado 400 mostra da esquerda para a direita a sequência de dados que é difundida pela estação base sem fio 102. Isto é, os dados mais à esquerda do pacote de advertência 400 é enviado antes dos dados mais à direita. Observe que o pacote de advertência padrão e seus componentes são descritos em maior detalhe nas seções 7.2.3, 7.2.3.1, e 7.3 da Norma 802.11 publicada ANSI/IEEE, Edição de 1999, e seus suplementos Norma 802.11(b) da ANSI/IEEE (1999) e Rascunho da Norma 802.11(g) da ANSI/IEEE, Rascunho 8.2 (abril de 2003), todos os quais são aqui incorporados por referência em sua inteireza.
[029] O preâmbulo 402 possui dois campos: um campo de sincronização (SYNC) e um campo delimitador de quadro inicial (SFD). O preâmbulo 402 poderá ser um preâmbulo longo ou alternativamente um preâmbulo curto. No caso de um preâmbulo longo, o campo da sincronização 412 é de 128 bits enquanto o campo SFD 422 é de 16 bits. No caso de um preâmbulo curto, o campo de sincronização 412 é de 56 bits enquanto o campo SFD 422 é de 16 bits. O preâmbulo 402 do pacote de advertência 400 é transmitido à velocidade de 1 Mbps sob a norma 802.11 (b).
[030] O cabeçalho PLCP 404 tem quatro campos: o campo do sinal 414, o campo de serviço 416, o campo de comprimento 418, e o campo de verificação de redundância cíclica (CRC) 420. O campo de sinal 414 e o campo de serviço 416 são de 8 bits cada, enquanto o campo de comprimento 418 e o campo CRC 420 são de 16 bits cada um. O campo de serviço 416 é descrito em maior detalhe abaixo com referência à Figura 5. Sob a norma 802.11(b), o cabeçalho PLCP 404 do pacote de advertência 400 é transmitido a uma velocidade de 1 Mbps se o preâmbulo 402 foi um preâmbulo longo. O cabeçalho PLCP 404 do pacote de advertência 400 é transmitido na velocidade de 2 Mbps se o preâmbulo 402 era um preâmbulo curto.
[031] 0 MPDU 40 6 tem 8 campos: um campo de controle de quadro 436 de 16 bits, um campo de duração 446 de 16 bits, um campo de endereço de destino 456 de 48 bits, um campo de endereço da fonte 466 de 48 bits, um campo de identificação de consulta de serviço básico (BSSID) 476 de 48 bits, um campo de controle de seqüência 486 de 16 bits, um campo de corpo de quadro 4 96 de comprimento variável e um campo de seqüência de verificação de quadro (PCS) 497 de 32 bits.
[032] O campo de corpo de quadro 496 tem vários sub-campos. Como é descrito na norma e seus suplementos, esses sub-campos incluem um campo de carimbo de tempo 450 de 64 bits, um campo de intervalo de advertência 451 de 16 bits e um campo de capacidade 452 de 16 bits. O campo de corpo de quadro 496 ainda inclui um campo identificador do conjunto de serviço (SSID) 453 de comprimento de 16 bits mais 8 bits adicionais para cada caractere no SSID (o número de caracteres no SSID é de zero a 32) . O campo de corpo de quadro 496 também inclui um campo de velocidades suplementares 454 de comprimento de 16 bits mais 8 bits adicionais para cada velocidade suportada até um máximo de oito (por exemplo, há quatro velocidades suportadas para a norma 802.11 (b) ) . O campo de corpo de quadro 496 ainda inclui um campo de parâmetro 455 de comprimento de 24 a 88 bits.
[033] Adicionalmente, o campo de corpo de quadro 496 inclui um campo de mapa de indicação de tráfego (TIM) 457 de comprimento de 40+8x bits, em que x satisfaz a desigualdade l^x^251 sob a norma 802.11(b). Mais especificamente, o campo TIM 457 é de 40 bits mais um bit adicional para cada estação cliente que está conectada de modo sem fio à estação base sem fio 102, com o requisito de que o número de bits adicionais seja um múltiplo de oito. Se o número de estações clientes conectadas de modo sem fio não é um múltiplo de 8, então de um a sete bits adicionais (sem significado) são simplesmente apensados conforme necessário ao final do campo TIM 457 de modo que o número total de bits adicionais no campo TIM 457 é divisível por oito. 0 campo TIM 457 inclui informação sobre se há ou não dados em buffer para cada uma das estações clientes (isto é, os dispositivos sem fio 106 a 108) que são conectados de modo sem fio à estação base sem fio 102. Especificamente, para cada dispositivo sem fio que está conectado de modo sem fio à estação base sem fio 102, há um valor de um bit correspondente no campo TIM 457 que especifica se há ou não dados em buffer para aquele dispositivo sem fio. A MPDU 406 do pacote de advertência 400 é transmitida a uma velocidade de 1, 2, 5,5 ou 11 Mbps sob a norma 802.11 (b) .
[034] Convencionalmente, a estação cliente (ou o dispositivo sem fio) 106 precisa processar todo o pacote de advertência 400 para determinar se há dados no buffer para aquele dispositivo sem fio 106. Isto é desgastante dos recursos de processamento, pois o dispositivo sem fio 106 é forçado a processar uma profusão de informação que não é útil se não houver dados em buffer para aquele dispositivo sem fio 106. Isto é exponenciado pelo fato de que o pacote de advertência é difundido muito freqüentemente (a cada 100 ms sob a norma 802.11 (b)) . Ainda, durante o processamento de um pacote de advertência, o dispositivo sem fio 10 6 precisa estar no modo de operação normal, e portando consumindo recursos de energia a uma taxa de operação normal. Isto é desgastante dos recursos de batería com dispositivos portáteis, pois o dispositivo sem fio 106 é forçado a despender recursos da batería para processar informação que não é útil. Novamente, isto é exponenciado pelo fato de que o pacote de advertência é difundido muito freqüentemente.
[035] Especificamente, em um exemplo, o pacote de advertência é difundido por uma estação base sem fio 102 a um dispositivo sem fio 106 a 11 Mbps (utilizando um preâmbulo curto 402) de modo a ter uma duração maior que 137 με (microssegundos) . Observe que a MPDU 406 varia no comprimento (ver a descrição acima) e, assim, o comprimento, ou a duração, do pacote de advertência 400 irá variar. Da duração total, 72 μβ é a duração do preâmbulo 402, 24 με é a duração do cabeçalho PLCP 404 e maior que 41 με é a duração da MPDU 406. O TIM 457, que varia no comprimento e assim na duração, consiste de 48 a 2048 bits e tem a duração de 4,4 a 186,2 με, quando o pacote de advertência é enviado a 11 Mbps. Portanto, convencionalmente, o dispositivo sem fio 106 é obrigado a processar por mais de 137 με para processar a informação de tráfego no TIM 457, que está localizado quase ao final do pacote de advertência (o processamento do FCS é obrigado para validar a recepção correta do TIM). Como resultado, o dispositivo sem fio 106 é obrigado a consumir energia na taxa de operação normal por esta duração para cada pacote de advertência recebido. Isto é exponenciado pelo fato de que o pacote de advertência é difundido muito freqüentemente (por exemplo, a cada 100 ms mais ou menos).
[036] Em versões da presente invenção, pelo menos alguma informação de indicação de tráfego é enviada antes no pacote de advertência de modo a reduzir essas ineficiências. Em uma versão ilustrativa da presente invenção, o indicador de sinalizador de tráfego é colocado em um bit reservado do campo de serviço 416 do cabeçalho PLCP 404 do pacote de advertência 400. O campo de serviço 416 do pacote de advertência 400 desta versão é descrito em maior detalhe abaixo com referência à Figura 5. O sinalizador indicador de tráfego é um único bit que indica se há ou não dados em buffer para qualquer um dos dispositivos sem fio 106 a 108 que estão conectados de modo sem fio à estação base sem fio 102. Quando o sinalizador indicador de tráfego é fixado a um primeiro valor lógico (um, por exemplo) , isto indica que há dados em buffer para pelo menos um dos dispositivos sem fio 106 a 108 que estão conectados de modo sem fio à estação base sem fio 102. A informação sobre exatamente qual dos dispositivos sem fio 106 a 108 é ainda encontrada nos sinalizadores indicadores específicos do cliente no campo TIM 457. Quando o sinalizador indicador de tráfego é fixado em um segundo valor lógico (zero, por exemplo), isto indica que atualmente não há dados em buffer para qualquer um dos dispositivos sem fio 106 a 108 que estão conectados de modo sem fio à estação base sem fio 102. Um processo exemplar de fixar o sinalizador indicador de tráfego é descrito em maior detalhe abaixo com referência à Figura 6.
[037] A colocação do sinalizador indicador de tráfego no campo de serviço 416 do cabeçalho PLCP 404 nesta versão elimina a necessidade de o dispositivo sem fio 106 processar todo o pacote de advertência 400 para averiguar se há ou não dados em buffer em muitos casos. Especificamente, a colocação do sinalizador indicador de tráfego no campo de serviço 416 do cabeçalho PLCP 404 permite que cada dispositivo sem fio 106 processe apenas 1) o preâmbulo 402, 2) o cabeçalho PLCP 404 e, opcionalmente, 3) o campo de controle de quadro 436 da MPDU 40 6, para averiguar que não há dados em buffer. Isto elimina a necessidade de o dispositivo sem fio 106 processar a totalidade ou substancialmente toda a MPDU 406 do pacote de advertência quando não há dados em buffer. Isto permite ao dispositivo sem fio 106 entrar no modo de dormir mais cedo, que resulta em uma economia de energia de bateria e de recursos de processamento. Um processo exemplar pelo qual o sinalizador indicador de tráfego é processado por um dispositivo sem fio 106 é descrito em maior detalhe abaixo com referência à Figura 7.
[038] Este recurso da presente invenção reduz a duração da parte pertinente do pacote de advertência 400 quando não há dados em buffer. Isto ocorre porque o dispositivo sem fio 106 é obrigado a processar apenas 1) o preâmbulo 402 de duração de 72 με, 2) o cabeçalho PLCP 404 de duração de 24 με e 3) o campo de controle de quadro 436 da MPDU 40 6 de duração de 1,45 μβ (supondo um preâmbulo curto 402 e uma velocidade de transmissão da MPDU de 11 Mbps). Assim, a duração total da parte pertinente do pacote de advertência 400 é de 97,45 μ3, que é consideravelmente mais curto do que a duração de um pacote de advertência 400 completa (>137 μ3 e até aproximadamente 348 μ3) . Isto reduz a quantidade de tempo que o dispositivo sem fio 106 é obrigado a estar no modo de operação normal para processar o pacote de advertência 400 (por pelo menos 39,55 με) sempre que não houver quaisquer dados em buffer. Como resultado, o dispositivo sem fio 106 pode entrar no modo de dormir mais cedo e economizar energia. Esta economia é rapidamente exponenciada porque pacotes de advertência são enviados muito freqüentemente.
[039] Isto também reduz a quantidade dos recursos de processamento que o dispositivo sem fio 106 gasta durante o processamento do pacote de advertência 400, pois uma parte menor do pacote de advertência 400 é processada em tais casos. Isto permite uma alocação melhor e mais eficiente dos recursos de processamento.
[040] Observe que como o sinalizador indicador de tráfego está no campo de serviço do cabeçalho PLCP, não é necessário processar além deste campo de serviço para determinar se há ou não dados em buffer. Entretanto, o comprimento e os campos CRC do cabeçalho PLCP e do campo de controle de quadro da MPDU são também preferivelmente processados para assegurar a recepção correta e que este é um pacote de advertência.
[041] A Figura 5 é um diagrama mais detalhado de uma parte do pacote de advertência da Figura 4. Especificamente, a Figura 5 mostra o campo de serviço 416 do cabeçalho PLCP 404 do pacote de advertência 400. O campo de serviço 416 inclui 8 bits, denominados bO a b7. Na norma 802.11 (b), o bit 506, ou b2, é designado como o bit de relógios travados, bit 508, ou b3, é designado como o bit de seleção de modulação, o bit 516, ou b7, é designado como o bit de extensão do comprimento, e os bits 502, 504, 510, 512 e 514 (ou bits bO, bl, b4, b5 e b6) são bits reservados. Observe que o campo de serviço convencional e seus componentes são descritos em maior detalhe na seção 15.2.3.4 da Norma 802.11 ANSI/IEEE publicada e seus suplementos.
[042] Em uma versão da presente invenção, o sinalizador indicador de tráfego é colocado em um bit reservado do campo de serviço 416 do cabeçalho PLCP 404 do pacote de advertência 400. O sinalizador indicador de tráfego nesta versão exemplar é um único bit que indica se há ou não dados em buffer para qualquer um dos dispositivos sem fio 106 a 108 que estão conectados de modo sem fio à estação base sem fio 102. Quando o sinalizador indicador de tráfego está fixado em um primeiro valor lógico, isto indica que há dados em buffer para um ou mais dos dispositivos sem fio 10 6 a 108 que estão conectados de modo sem fio à estação base sem fio 102. A informação sobre exatamente qual dos dispositivos sem fio 106 a 108 é encontrado no campo TIM 457. Quando o sinalizador indicador de tráfego é fixado em um segundo valor lógico, isto indica que não há dados em buffer para qualquer um dos dispositivos sem fio 106 a 108 que estão conectados de modo sem fio à estação base sem fio 102. O processo de fixar o sinalizador indicador de tráfego em uma versão exemplar é descrito em maior detalhe abaixo com referência à Figura 6.
[043] Em versões preferidas da presente invenção, o sinalizador indicador de tráfego é colocado no bit reservado 502, no bit reservado 504 ou no bit reservado 510 (bO, bl ou b4) do campo de serviço 416 do cabeçalho PLCP 404 do pacote de advertência 400. Isto é porque a seção 19.3.2.1 do Rascunho 8.2 da Norma 802.11(g) da ANSI/IEEE publicada designa usos para os bits reservados 512 e 514 (ou b5 e b6). No entanto, em outras versões, o sinalizador indicador de tráfego (isto é, bit ou bits) é colocado em qualquer lugar antes do campo TIM do pacote de advertência, e preferivelmente é colocado no preâmbulo ou no campo de cabeçalho do pacote de advertência.
[044] A Figura 6 é um diagrama de fluxo operacional que mostra o processo de geração do pacote de advertência de acordo com uma versão da presente invenção. O diagrama de fluxo operacional da Figura 6 mostra o processo geral de como o pacote de advertência 400 é gerado por uma estação base sem fio 102 e difundido para os dispositivos sem fio 10 6 a 108 que estão conectados de modo sem fio à estação base sem fio 102. O diagrama de fluxo operacional da Figura 6 começa com a etapa 602 e flui diretamente para a etapa 604.
[045] Na etapa 604, a estação base sem fio 102 determina se há dados em buffer para transmissão a qualquer um dos dispositivos sem fio 106 a 108 que estão conectados de modo sem fio à estação base sem fio 102. Se o resultado desta determinação é positivo, então o controle flui para a etapa 606. Se o resultado desta determinação é negativo, então o controle flui para a etapa 608.
[046] Na etapa 606, a estação base sem fio 102 fixa o sinalizador indicador de tráfego designado, como o bit reservado 502, 504 ou 510 (ou bO, bl ou b4) do campo de serviço 416 do cabeçalho PLCP 404 do pacote de advertência 400 sob a norma 802.11(b), em um primeiro valor lógico, como o um. Na etapa alternativa 608, a estação base sem fio 102 fixa o sinalizador indicador de tráfego designado em um segundo valor lógico, como o zero. Na etapa 610, a estação base sem fio 102 processa as partes restantes do pacote de advertência 400. Na etapa 612, o pacote de advertência 400 é difundido pela estação base sem fio 102 através do transmissor 308 pelo canal de rádio apropriado 310 (ou outro canal sem fio).
[047] Na etapa 614, decorre um período de tempo correspondente ao intervalo entre pacotes de advertência 400 (como 100 ms) . Então o controle flui de volta à etapa 604, em que o processo de gerar um pacote de advertência subseqüente 400 tem início.
[048] A Figura 7 é um diagrama de fluxo operacional que mostra o processamento de pacote de acordo com uma versão da presente invenção. O diagrama de fluxo operacional da Figura 7 mostra o processo geral de como o pacote de advertência 400 é processado por um dispositivo sem fio 106 que está conectado de modo sem fio à estação base sem fio 102. O diagrama de fluxo operacional da Figura 7 inicia com a etapa 702 e flui diretamente para a etapa 704.
[049] Na etapa 704, o dispositivo sem fio 106 determina se o início de um pacote de informação foi recebido da estação base sem fio 102 (isto é, pelo receptor 206 através do canal de dados 210). Se o resultado desta determinação é positivo, então o controle flui para a etapa 706. Se o resultado desta determinação é negativo, então o controle flui de volta para a etapa 704.
[050] Na etapa 706, o dispositivo sem fio 106 processa o preâmbulo 402 e o cabeçalho PLCP 404 do pacote recebido. Na etapa 708, o dispositivo sem fio 106 determina o valor do sinalizador indicador de tráfego, como o bit reservado 502, 504, ou 510 do campo de serviço 416 do cabeçalho PLCP do pacote recebido. Se o resultado desta determinação é um primeiro valor lógico (um, por exemplo) , então o controle flui para a etapa 710. Se o resultado desta determinação é um segundo valor lógico (zero, por exemplo), então o controle flui para a etapa 712. Como foi explicado acima, quando o sinalizador indicador de tráfego é fixado em um primeiro valor lógico, isto indica que há dados em buffer para um ou mais dos dispositivos sem fio 106 a 108 que estão conectados de modo sem fio à estação base sem fio 102. Quando o sinalizador indicador de tráfego é fixado no segundo valor lógico, isto indica que não há dados em buffer para qualquer um dos dispositivos sem fio 106 a 108 que estão conectados de modo sem fio à estação base sem fio 102.
[051] Na etapa 710, o dispositivo sem fio 106 processa o restante do pacote recebido. Neste caso, a informação sobre qual dos dispositivos sem fio 106 a 108 tem dados no buffer pode ser encontrada no campo TIM 457, posteriormente no pacote recebido.
[052] Na etapa 712, o dispositivo sem fio 106 processa o campo de controle de quadro 436 da MPDU 406 do pacote recebido. O campo de controle de quadro 436 inclui informação associada ao tipo de pacote recebido. Na etapa 714, o dispositivo sem fio 106 determina da informação no campo de controle de quadro 436 se o pacote recebido é um pacote de advertência 400. Se o resultado desta determinação é positivo, então o controle flui para a etapa 716. Se o resultado desta determinação é negativo, então o controle flui para a etapa 710.
[053] Na etapa 716, o dispositivo sem fio 106 entra no modo de dormir em que a energia é economizada. Na etapa 718, decorre um período de tempo correspondente ao intervalo entre pacotes de advertência 400 (como 100 ms) . Então o controle flui de volta para a etapa 704, quando inicia o processamento de pacotes de advertência 400 subseqüentes.
[054] A presente invenção pode ser realizada em hardware (como pela utilização de circuitos lógicos, registradores, e máquinas de estado), software, ou uma combinação de hardware e de software (por exemplo, em um dispositivo sem fio ou em uma estação base). Um sistema de acordo com uma versão preferida da presente invenção pode ser realizado de maneira centralizada em um sistema de processamento de informação, ou de maneira distribuída quando diferentes elementos são espalhados através de vários sistemas interconectados. Qualquer tipo de sistema de processamento de informação - ou outro aparelho adaptado para realizar os métodos aqui descritos - é adequado. Uma combinação típica de hardware e de software podería ser um sistema de computador de finalidade geral com um programa de computador que, quando for carregado e executado, controle o sistema de computador tal que ele realiza os métodos aqui descritos.
[055] Uma versão da presente invenção também pode ser embutida em um produto de programa de computador que inclui todos os recursos que permitem a implementação dos métodos aqui descritos, e que, quando carregado em um sistema, é capaz de realizar esses métodos. Meio de programa de computador ou um programa de computador conforme utilizado na presente invenção indica qualquer expressão, em qualquer linguagem, código ou notação, de um conjunto de instruções com a finalidade de fazer com que o sistema tendo uma capacidade de processamento de informação efetue uma função particular quer diretamente ou após um ou os dois do seguinte a) conversão para outra linguagem, código ou notação; e b) reprodução em uma forma material diferente.
[056] O sistema poderá, inter alia, incluir um ou mais sistemas de processamento de informação e/ou computadores e pelo menos um meio lido por máquina ou lido por computador, permitindo que o sistema leia dados, instruções, mensagens ou pacotes de mensagem e outra informação do meio lido por máquina ou lido por computador. O meio lido por máquina ou lido por computador poderá incluir memória não volátil, como ROM, memória Flash, memória de unidade de disco, CD-ROM, e outro armazenamento permanente. Adicionalmente, o meio lido por máquina ou lido por computador, por exemplo, poderá incluir armazenamento volátil como RAM, buffers, memória cachê, e circuitos de rede. Ademais, o meio lido por máquina ou lido por computador poderá incluir informação em um meio em estado transitório como um enlace de rede e/ou uma interface de rede, incluindo uma rede de fiação ou uma rede sem fio, que permitem que o sistema de computador leia essa informação lida por computador.
[057] A Figura 8 é um diagrama de blocos de um sistema de computador útil para implementar uma versão da presente invenção. O sistema de computador da Figura 8 inclui múltiplos processadores, como os processadores 804. Os processadores 804 estão conectados a uma infra-estrutura de comunicação 802 (por exemplo, um barramento de comunicação, barra cruzada, ou rede). Varias versões de software são descritas em termos deste sistema de computador exemplar. Após ler esta descrição, tornar-se-á aparente a uma pessoa de habilidade ordinária nas tecnologias relevantes como implementar a invenção utilizando outros sistemas de computador e/ou arquiteturas de computador.
[058] O sistema de computador pode incluir uma interface de tela 808 que encaminha gráficos, texto, e outros dados da infra-estrutura de comunicação 802 (ou de um buffer de quadro, não mostrado) para exibição na unidade de tela 810. O sistema de computador também inclui uma memória principal 806, preferivelmente de memória de acesso aleatório (RAM), e também poderá incluir uma memória secundária 812. A memória secundária 812 poderá, por exemplo, incluir uma unidade de disco rigido 814 e/ou uma unidade de armazenamento removível 816, representando uma unidade de disco flexível, uma unidade de fita magnética, uma unidade de disco óptico, etc. A unidade de armazenamento removível 816 lê de e/ou grava em uma unidade de armazenamento removível 818 de uma maneira bem conhecida daqueles dotados de habilidade ordinária na tecnologia. A unidade de armazenamento removível 818 representa um disco flexível, uma fita magnética, um disco óptico, etc., que é lido de e gravado em pela unidade de armazenamento removível 816. Como será apreciado, a unidade de armazenamento removível 818 inclui um meio de armazenamento utilizado por computador tendo nele armazenado software de computador e/ou dados.
[059] Em algumas versões, a memória secundária 812 inclui outros meios similares para permitir que programas de computador ou outras instruções sejam carregados dentro do sistema de computador. Esses meios poderão, por exemplo, incluir uma unidade de armazenamento removível 822 e uma interface 820. Exemplos destas poderão incluir um cartucho de programa e interface de cartucho (como aquela encontrada nos dispositivos de video game), um chip de memória removível (como a EPROM, ou a PROM) e soquete associada, e outras unidades de armazenamento removível 822 e interfaces 820 que permitem que o software e os dados sejam transferidos da unidade de armazenamento removível 822 para o sistema de computador.
[060] O sistema de computador também poderá incluir uma interface de comunicação 824. A interface de comunicação 824 permite que software e dados sejam transferidos entre o sistema de computador e dispositivos externos. Exemplos de interface de comunicação 824 poderão incluir um modem, uma interface de rede (como uma placa Ethernet), uma porta de comunicação, um sulco e placa PCMCIA, etc. A interface de comunicação 824 preferivelmente inclui uma ou mais interfaces de comunicação sem fio, e também pode incluir uma ou mais interfaces de comunicação fiada. Software e dados transferidos através da interface de comunicação 824 são na forma de sinais que poderão, por exemplo, ser eletrônicos, eletromagnéticos, ópticos, ou outros sinais capazes de serem recebidos pela interface de comunicação 824. Esses sinais são fornecidos à interface de comunicação 824 através de uma via de comunicação (isto é, um canal) 826. Este canal 826 porta sinais e poderá ser implementado utilizando fiação ou cabo, fibra óptica, uma linha telefônica, um enlace de telefonia celular, um enlace RF, e/ou outros canais de comunicação.
[061] Neste documento, os termos "meio de programa de computador", "meio utilizado por computador", "meio lido por máquina" e "meio lido por computador" são utilizados para referir geralmente a midia como a memória principal 806 e a memória secundária 812, a unidade de armazenamento removível 816, um disco rígido instalado em unidade de disco rígido 814, e sinais. Esses produtos de programa de computador são meios para fornecer software ao sistema de computador. O meio lido por computador permite ao sistema de computador ler dados, instruções, mensagens ou pacotes de mensagens, e outra informação lida por computador do meio lido por computador. Por exemplo, o meio lido por computador poderá incluir memória não volátil, como a memória flexível, ROM, memória Flash, memória de unidade de disco, CD-ROM, e outros armazenamentos permanentes. Por exemplo, é útil para transportar informação, como dados e instruções de computador, entre sistemas de computador. Ademais, o meio lido por computador poderá incluir informação lida por computador em um meio em estado transitório como um enlace de rede e/ou uma interface de rede, incluindo uma rede de fiação ou uma rede sem fio, que permitem ao computador ler essa informação lida por computador.
[062] Programas de computador (também denominados lógica de controle de computador) são armazenados na memória principal 806 e/ou na memória secundária 812. Programas de computador também poderão ser recebidos através da interface de comunicação 824. Esses programas de computador, quando executados, permitem ao sistema de computador efetuar os recursos da presente invenção conforme aqui discutido. Em particular, os programas de computador, quando executados, permitem ao processador 804 efetuar os recursos do sistema de computador. Assim, esses programas de computador representam controladoras do sistema de computador.
[063] Embora versões especificas da invenção foram reveladas, aqueles dotados de habilidade ordinária na tecnologia compreenderão que mudanças podem ser feitas nas versões especificas sem desviar do espirito e escopo da invenção. O escopo da invenção não é para ser limitado, portanto, às versões especificas. Ademais, pretende-se que as reivindicações apensas abranjam qualquer uma e todas essas aplicações, modificações, e versões dentro do escopo da presente invenção.
REIVINDICAÇÕES