(57)【特許請求の範囲】
【請求項１】
第１のネットワーク、無線ネットワーク、及び少なくとも１つの無線通信装置を含む通信システムの不要なパケットのフィルタリングのための方法であって：
パケットフィルタにおいて：
無線通信装置から自動的に生成されたブロック要求を受信するステップであって、前記自動的に生成されたブロック要求はブロック基準を含み、前記ブロック基準は：
前記パケットフィルタによって以前にアンブロックされたポートを利用している以前にインストールされたアプリケーションが実行されていないこと；及び
前記以前にアンブロックされたポート；
を表している、ステップと；
前記第１のネットワークから第１のパケットを受信するステップであって、前記第１のパケットは前記無線通信装置に向けられた、ステップと；
前記第１のパケットがブロックリストに含まれるブロック基準を表しているか否かを判断するステップと；
前記第１のパケットが、前記ブロックリストに含まれるブロック基準を表すとの判断に応答して、前記第１のパケットが前記無線ネットワークにより配信されることができる前に前記第１のパケットを破棄するステップと；
前記無線通信装置から、自動的に生成されたアンブロック要求を受信するステップであって、前記アンブロック要求は、
前記パケットフィルタによって以前にブロックされたポートを新たなアプリケーションが利用していること、及び、
前記以前にブロックされたポート
を示す、ステップと；
前記アンブロック要求に応答して、前記以前にブロックされたポートへ向けられた後続のパケットを転送するステップと；
を有する方法。
【請求項２】
前記ブロックリストに含まれる前記ブロック基準は、宛先伝送制御プロトコル（ＴＣＰ）ポート番号、宛て先ユーザ・データグラム・プロトコル（ＵＤＰ）ポート番号、発信元ＴＣＰポート番号、発信元ＵＤＰポート番号、発信元インターネットプロトコル（ＩＰ）アドレス、及びＩＰアドレスの範囲のうちの少なくとも１つを含む、
請求項１記載の方法。
【請求項３】
前記無線通信装置が、
少なくとも１つのパケットを受信するステップと；
前記少なくとも１つのパケットが、前記以前にインストールされたアプリケーションによって利用されたポートに向けられたものであるか否かを自動的に判断するステップであって、前記以前にインストールされたアプリケーションが現在前記無線通信装置において実行されている、ステップと；
前記少なくとも１つのパケットが、前記以前にインストールされたアプリケーションによって利用されたポートに向けられていないとの判断に応答して、人間の介在なしにブロック要求を自動的に生成するステップと；
を実行することにより前記ブロック要求を生成する、請求項１記載の方法。
【請求項４】
前記少なくとも１つのパケットが、前記以前にインストールされたアプリケーションによって利用されたポートに向けられたものであるか否かを判断するステップは、
ポート割当のためのプロトコルスタックをチェックするステップ、
を含む、請求項３記載の方法。
【請求項５】
前記ブロック要求を生成する前に、
前記以前にインストールされたアプリケーションによって利用されている前記ポートに向けられた所定の量のパケットを受信するステップ、
を更に有する、請求項３記載の方法。
【請求項６】
前記ブロックリストは、人間の介在なしに前記少なくとも１つの無線通信装置によってプログラマブルである、
請求項１記載の方法。
【請求項７】
通信システムにおける不必要なパケットをフィルタリングするためのプログラマブルパケットフィルタであって、前記通信システムは、第１のネットワーク、無線ネットワーク、及び少なくとも1つの無線通信装置を有し、当該プログラマブルパケットフィルタは、少なくとも１つの通信インタフェースを有し、前記通信インタフェースは、
無線通信装置から自動的に生成されたブロック要求を受信し、前記自動的に生成されたブロック要求はブロック基準を含み、前記ブロック基準は：
当該プログラマブルパケットフィルタによって以前にアンブロックされたポートを利用している以前にインストールされたアプリケーションが実行されていないこと；及び
前記以前にアンブロックされたポート；
を表しており；
前記第１のネットワークを介して配信された第１のパケットを受信し、前記第１のパケットは、前記無線通信装置に向けられたものであり、かつ、
当該プログラマブルパケットフィルタは、
前記少なくとも１つの通信インタフェースに通信し得るように結合されたフィルタモジュールを含み、前記フィルタモジュールは、
前記第１のパケットがブロックリストに含まれる前記ブロック基準を表しているか否かを判断し、かつ、
前記第１のパケットが前記ブロックリストに含まれる前記ブロック基準を表していることの判断に応答して、前記第１のパケットが前記無線ネットワークにより配信されることができる前に前記第１のパケットを破棄し、
前記無線通信装置から、自動的に生成されたアンブロック要求を受信し、前記アンブロック要求は、
当該プログラマブルパケットフィルタによって以前にブロックされたポートを新たなアプリケーションが利用していること、及び
前記以前のブロックされたポート、
を示し；
前記アンブロック要求に応答して、前記以前にブロックされたポートへ向けられた後続のパケットを転送する；
プログラマブルパケットフィルタ。
【請求項８】
当該プログラマブルパケットフィルタは、前記第１のネットワークと前記無線ネットワークとの間で電気的に結合されている、
請求項７記載のプログラマブルパケットフィルタ。
【請求項９】
前記ブロックリストに含まれる前記ブロック基準は、宛先伝送制御プロトコル（ＴＣＰ）ポート番号、宛て先ユーザ・データグラム・プロトコル（ＵＤＰ）ポート番号、発信元ＴＣＰポート番号、発信元ＵＤＰポート番号、発信元インターネットプロトコル（ＩＰ）アドレス、及びＩＰアドレスの範囲のうちの少なくとも１つを含む、
請求項８記載のプログラマブルパケットフィルタ。
【請求項１０】
前記ブロックリストは、少なくとも１つの無線通信装置からの命令の受信に基づいて、プログラマブルである、
請求項７記載のプログラマブルパケットフィルタ。
【請求項１１】
通信システムにおいて利用するための無線通信装置であって、前記通信システムは、第１のネットワーク、パケットフィルタ、及び無線ネットワークを含み、当該無線通信装置は、
複数の論理ポートと；
１つの前記論理ポートを介して少なくとも１つのパケットを受信するトランシーバであって、前記少なくとも１つのパケットは、前記第１のネットワークから送信されたものである、トランシーバと；
前記トランシーバに電気的に結合されたフィルタモジュールであって、前記フィルタモジュールは：
前記少なくとも１つのパケットが、以前にインストールされたアプリケーションによって利用された論理ポートに向けられたものであるか否かを判断し；
前記以前にインストールされたアプリケーションが、現在前記無線通信装置で実行されているか否かを判断し；
前記少なくとも１つのパケットが、以前にインストールされたアプリケーションによって利用された論理ポートに向けられていないとの前記判断に応答して、
ブロック要求を生成し、前記ブロック要求は、ブロックされるべきポートを示し、
前記パケットフィルタが前記示されたポートをブロックするよう、前記パケットフィルタに前記ブロック要求が転送されるようにし；
前記無線通信装置で前記以前にインストールされたアプリケーションが現在実行されていないことに応答して、自動的に生成されたブロック要求を前記パケットフィルタに送信し、前記自動的に生成されたブロック要求は、前記以前にインストールされたアプリケーションが使用していた前記論理ポートを表し；かつ、
以前にブロックされたポートを利用する新たなアプリケーションに応答して、自動的に生成されたアンブロック要求を、前記パケットフィルタに送信し、前記アンブロック要求は、前記以前にブロックされたポートを示す；
フィルタモジュールと；
を有する、
無線通信装置。
【請求項１２】
前記トランシーバは、更に、前記パケットフィルタに前記ブロック要求を送ることによって、人間の介在なしに前記パケットフィルタをプログラムする、
請求項１１記載の無線通信装置。
【請求項１３】
以前にインストールされたアプリケーションに対するポート割当を含むプロトコルスタック；
を更に有し、
前記フィルタモジュールは、ポート割当に対する前記プロトコルスタックをチェックすることによって、前記少なくとも１つのパケットが前記以前にインストールされたアプリケーションによって利用されたポートに向けられているか否かを判断する、  
請求項１１記載の無線通信装置。
【請求項１４】
前記フィルタモジュールは、パケットをモニタし、かつ、前記無線通信装置で実行されているアプリケーションの知識に基づいて、不要なパケットが受信されたことに応答して、自動的にブロック要求を生成する、請求項１１記載の無線通信装置。
【請求項１５】
前記無線通信装置にデフォルト・フィルタのリストを送信するステップ、を更に有する請求項１記載の方法。
【請求項１６】
前記無線通信装置から、削除する前記デフォルト・フィルタのサブセットを受信する、請求項１５記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信システムに関する。より詳細には、本発明は、ターゲットの装置によって、プログラム可能な無線通信システムの不要な（unsolicited）パケットのフィルタリングための方法、システム、及び装置に関する。
【背景技術】
【０００２】
ネットワーク・セキュリティを強化することは、いかなるネットワーク・プロバイダに対しても重要な考慮すべき課題である。悪意のあるソフトウェア（Malicious  software）（例えばウイルス、トロイの木馬、ウォーム、その他）は、最もロバストなシステムにさえ障害を与えることができる。加えて、不要な要求、例えば、電子メールを大量に送信するようなもの又はポップアップは、無駄に必要なバンド幅を消費し、ネットワークのリソースに負荷を与える。
【０００３】
歴史的に、世界的な無線ネットワーク（例えばＵＭＴＳ（Universal  Mobile  Telecommunications  System）、ＣＤＭＡ（符号分割多重接続）、ＷｉＭａｘ（Worldwide  Interoperability  for  Microwave  Access）、ＬＴＥ（Long  Term  Evolution）などは、この種の不要なターケットに対して問題はなかった。しかしながら、無線、及び／又はモバイル機器ユーザの数が絶えず増大するため、現在、これらの装置さえターゲットとされている。バンド幅がかなり制限されている場合、この問題は無線ネットワークに対し更にやっかいなものとなる。加えて、サービスプロバイダは、モバイルサービスに対して利用毎、又はデータ毎に課金を行う。これによって、ユーザは、受信した要求しない不要なデータに対して実際に支払いを行わなければならない。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
現在、無線ネットワークを介してインターネットに接続している装置は、通常、ネットワークアドレス変換（NAT）を介して、不要なパケットから保護されている。通常、NATサーバーは、インターネットと無線ネットワークの間の（例えば、ゲートウェイ汎用パケット無線システム（ＧＰＲＳ）サポート・ノード（ＧＧＳＮ）、パケット・データ・ゲートウェイ（ＰＤＧ）、等の）ゲートウェイに置かれる。しかしながら、あるネットワーク・オペレータは、NATを使用せず、公共インターネット・プロトコル（ＩＰ）にアドレスを割り当てる。この環境では、無線装置は、多くのソースから不要なＩＰパケットでしばしば連続的に「攻撃される」。この種のソースは、例えば、予めダイナミックＩＰアドレスによって割り当てられた他の装置に割り当てられたＩＰアドレスにピア・ツー・ピア（Ｐ２Ｐ）（１）を含み得るＩＰパケットを送るクライアント、及び（２）ウイルス又はそれらを感染させようとするための悪意のあるパケットを他のホストにランダムに送信する他の悪意のあるプログラムにより感染されたインターネット上のホストである。
【０００５】
よく整備された無線装置では、ＩＰプロトコルスタック又はファイアウォールは、この種の不要なデータパケットを検出し、破棄する。しかしながら、これらのパケットは、無線ネットワークにおいて、多くの深刻な問題を発生させる。すべての装置が常に接続される第四世代（４Ｇ）ネットワークにおいて、各装置がＩＰアドレスを有し、ほぼ１０００〜２０００の装置が常に同一のセルに接続している。これらの装置の全てが常に不要なパケットを受信する場合、エアーインタフェース上のチャネル確立、及びバンド幅オーバーヘッドのための信号が増大する。これに比較してデジタル加入者回線（ＤＳＬ）のリンクは単一の家庭だけ接続されている。
【０００６】
加えて、不要なパケットは、無線装置のバッテリ寿命に、更に負の影響を及ぼす。無線装置は、メッセージを受信するために電源オンでなければならないため、これらの不要なパケットの存在によって、無線装置が電力を節約するためにそれらの無線をパワーダウンすることができる期間を、著しく短くしてしまう。不要なパケットの周期的な受信は、パケットの受信のための電源を必要とするばかりでなく、パケットの受信後もある程度の時間の間、無線接続確立、及びチャネル維持が必要となる。その結果、無線装置の動作時間は、周期的で不要なＩＰパケットの受信によって、著しく減らされてしまう。
【０００７】
インターネット・プロトコルバージョン６（ＩＰｖ６）、パケット交換網のための次世代のネットワーク間のネットワーク層プロトコル、及びインターネットの導入によって、NATゲートウェイは、現在においては、接続が無線装置による確立されていない限り、それはすべての着信パケットをブロック（遮断）するが、これはもはや必要とされないため、課題はさらに悪化し得る。
【０００８】
１つの従来の方法は、ネットワーク側でディープパケットインスペクション（ＤＰＩ）を使用する。しかしながら、無線装置からの不要なパケットをフィルタリングする能力は限られている。なぜなら、ネットワーク上のＤＰＩネットワークは、実際にどのアプリケーションが装置上で動作しているかを知ることができないからである。
【０００９】
従って、必要とされることは、無線通信システムのターゲットの無線通信装置に対する不要なパケットのフィルタリングのための方法、システム、及び装置である。
【課題を解決するための手段】
【００１０】
本発明は、不必要、及び／又は不要な通信ネットワーク上のデータパケットをフィルタリングする方法、装置、及びシステムを有利に提供する。
【００１１】
通常、プログラム可能なパケットフィルタは、不要なデータパケットを検出して、それらが無線ネットワークにより配布される前に、無線通信装置によって破棄する。
【００１２】
本発明の一態様に従って、方法は、通信システムの不要なパケットのフィルタリングのために提供される。通信システムは、第１のネットワーク、無線ネットワーク、及び少なくとも１つの無線通信装置を有する。ブロックされたリストにエントリを加えるための特定の無線装置からの命令が受信される。エントリは、ブロック基準（ブロックする基準：blocking  criteria）を含む。特定の無線通信装置に向けられた第１のパケットは、第１のネットワークから受信される。第１のパケットがブロックされたリストに含まれるブロック基準を満たす場合、第１のパケットが無線ネットワークにより配信される前に、第１のパケットは破棄される。
【００１３】
本発明の他の観点によれば、プログラマブルパケットフィルタは、通信システムの不要なパケットをフィルタリングする。通信システムは、第１のネットワーク、無線ネットワーク、及び複数の無線通信装置を有する。プログラマブルパケットフィルタは、少なくとも１つの通信インタフェース、及びフィルタモジュールを含む。通信インタフェースは、エントリをブロックされたリストに加えるために特定の無線装置から命令を受信するよう動作可能である。エントリは、ブロック基準を含む。通信インタフェースは、第１のネットワークにより配信される第１のパケットを受信するよう動作可能である。第１のパケットは、特定の無線通信装置に向けられている。フィルタモジュールは、少なくとも１つの通信インタフェースに電気的に結合される。フィルタモジュールは、第１のパケットがブロックリスト（blocked  list）に含まれたブロック基準を示しているかどうか判断するよう動作可能である。そして、第１のパケットがブロックリストに含まれるブロック基準を示す場合、第１のパケットが無線ネットワークにより配信され得る前に、第１のパケットを破棄する。
【００１４】
本発明の更に別の態様に従って、無線通信装置が通信システムで使用するために提供される。通信システムは、第１のネットワーク、パケットフィルタ、及び無線ネットワークを有する。無線通信装置は、複数の論理ポート、トランシーバ、及びフィルタモジュールを有する。トランシーバは、論理ポートの１つを介して少なくとも１つのパケットを受信するよう動作可能である。少なくとも１つのパケットは、第１のネットワークから生じる。フィルタモジュールは、トランシーバに電気的に結合される。フィルタモジュールは、少なくとも１つのパケットが、以前にインストールされ、現在無線通信装置で動作しているアプリケーションにより利用されている論理ポートに向けられているか否かを判断するよう動作可能である。少なくとも１つのパケットが、以前にインストールされたアプリケーションにより利用されている論理ポートに向けられていない場合、ブロック要求を生成する。
【００１５】
添付の図と共に以下に述べる詳細な説明を参照することにより、更に本発明、及び実施例の効果、及び構成を更に完全に理解することができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の原則に従って構成されるプログラマブル・パケットフィルタリングを有する例示的な無線通信システムのブロック図である。
【図２】本発明の原則に従って構成される例示的なプログラマブルパケットフィルタのブロック図である。
【図３】本発明の原則に従って構成される例示的な無線通信装置のブロック図である。
【図４】本発明の原則に従った無線通信装置により実行される例示的な不要なパケット検出プロセスのフローチャートである。
【図５】本発明の原則に従ったプログラマブルパケットフィルタにより実行される例示的なパケットフィルタリング・プロセスのフローチャートである。
【図６】本発明の原則に従った無線通信装置により実行される例示的なパケット・アンブロックッキング・プロセスのフローチャートである。
【発明を実施するための形態】
【００１７】
詳細に本発明に従って、例示的実施形態を述べる前に、実施例は、主に、不要なパケットをフィルタリングするためのシステムと方法をインプリメントすることに関連した、装置の要素と、方法ステップとの組合せによって実現されることに留意すべきである。したがって、システム、及び方法の構成要素は図面の従来のシンボルによって、必要に応じて表現される。そして、本願明細書において、説明する価値のある本発明の実施例に関連するそれらの具体的な詳細だけを示す。当業者にとって直ちに明らかである内容の詳細な記載によって本発明の開示を不明瞭にしないようにしている。
【００１８】
本明細書において、例えば「第1の」、及び「第２の」、「上」、及び「下」等は、要素間の物理的あるいは論理的関係又は順序を必要とせず、ある対象又は要素を他の対象又は要素と区別するために用いられる。加えて、添付の請求の範囲、及び本願明細書において用いられているように、「Ｚｉｇｂｅｅ」という用語は米国電気電子技術者協会（ＩＥＥＥ）標準802.15.4に記載の高レベル無線通信プロトコルのセットに関する。更に、「Ｗｉ−Ｆｉ」は、ＩＥＥＥ８０２．１１により定義される通信標準に関連する。用語ＷｉＭａｘは、ＩＥＥＥ８０２．１６において定められる通信プロトコルを意味する。「Bluetooth」とは、ブルートゥースＳＩＧにより開発される無線個人地域網（ＰＡＮ：personal  area  network）コミュニケーションのための産業的仕様を意味する。「イーサネット」とは、ＩＥＥＥ８０２．３において標準化された通信プロトコルを意味する。
【実施例】
【００１９】
本発明の一実施例は、無線通信システムの不要なパケットのフィルタリングのための方法、装置、及びシステムを都合よく提供する。実施例において、ソース（例えばピア・ツー・ピア（Ｐ２Ｐ）ホスト、ウイルス、など）から、着信する不必要、及び不要なインターネットプロトコル（ＩＰ）パケットを検出するために、無線装置は、マシンのプロトコルスタック（例えば伝送制御プロトコル／インターネットプロトコル（ＴＣＰ／ＩＰ）スタック）に、プラグインを使用する。プラグインは、プロトコル・ポート（例えば、伝送制御プロトコル（ＴＣＰ）、及びユーザ・データグラム・プロトコルＵＤＰ）を検知している。
【００２０】
（ＵＤＰ）ポートは、無線通信装置・アプリケーションに用いられる。そして、このポートは全く使われない。ＴＣＰ、及びＵＤＰポートは、プラグインに帰属しない。その代わりに、これらのポートは、動作しているシステムの一部としてＴＣＰ／ＩＰプロトコルスタックにより管理される。このように、アプリケーションは、書き直す必要はない。そして、プラグインはトランスペアレントであるため、動作しているシステムは修正する必要はない。すなわち、これはプロトコルスタックの一部である。異なるオペレーティングシステムのプラグ・イン・インフラストラクチャは、それがＩＰ、及びプロトコルスタックのＴＣＰ／ＵＤＰ一部に送り届けられる前に、例えば、ネットワーク・トレーサがすべての着信トラフィックを走査することを許す。また、オープン・コネクションに対して、そのポートに確立した接続に帰属しないパケットが到着したか否かを、プラグインは検出することができる。
【００２１】
無線装置上のプラグインが不要なパケットを検出した場合、無線装置をターゲットとしているそのようなパケットをブロックするネットワーク・ベースのパケットフィルタ装置に、要求を送信する。ブロックする規則は、宛先ＴＣＰ又はＵＤＰポート、発信元のＴＣＰ又はＵＤＰポート、発信元のＩＰアドレス、ＩＰアドレス範囲、及び可能なその他の基準に基づいてもよい。
【００２２】
図１には、本発明の原則に従って構成された通信システム１０の実施例が示されている。この中で、同様の構成は同様の参照符号が付されている。
【００２３】
通信システム１０は、無線ネットワーク１６による広域ネットワーク（ＷＡＮ）１４（例えばインターネット）に接続している少なくとも１つの無線通信装置１２を含む。無線通信装置１２には、移動電話、多機能電話、無線パーソナル携帯情報機器（ＰＤＡ）、ラップトップコンピュータ、ノート・パソコン、無線接続を持つデスクトップ・コンピュータ、携帯端末ゲームシステムなどが含まれる。プログラマブルパケットフィルタ１８は、ＷＡＮ１４と無線ネットワーク１６の間に接続され、例えば、悪意のあるホストコンピュータ２０から送られる不必要な、及び／又は不要なパケットをフィルタリングし、これらのパケットが無線ネットワーク１６に達する前に配信されるのを防止する。不要なパケットを決定（determine）するための基準は、無線通信装置１２によって、例えば、パケットフィルタ１８でプログラムされ、確立されている。加えて、デフォルト・フィルタ規則が、システムの一部としてパケットフィルタ１８に存在してもよい。
【００２４】
ワイド・エリア・ネットワーク１４は、インターネット、イントラネット又は他の通信ネットワークを含み得る。図１に通信ネットワークとしてＷＡＮが示されているが、本発明の原則は、個人地域ネットワーク（ＰＡＮ）、ローカルエリアネットワーク（ＬＡＮ）、キャンパス地域ネットワーク（ＣＡＮ）、メトロポリタンエリアネットワーク（ＭＡＮ）などの他の形式の通信ネットワークにも適用できる。更に、ＷＡＮ１４は、有線、無線、又はこれらの組合せであってもよい。
【００２５】
無線ネットワーク１６は、Ｗｉ−Ｆｉ、ＷｉＭａｘ、Ｚｉｇｂｅｅ、ブルートゥース、直交周波数分割多重（ＯＦＤＭ）、符号分割多重接続（ＣＤＭＡ）、広帯域のＣＤＭＡ（Ｗ―ＣＤＭＡ）、時分割多元接続（ＴＤＭＡ）、グローバルシステムマルチプルアクセス（ＧＳＭ）、ＥＤＧＥ（Enhanced  Data  Rates  for  GSM  Evolution）、ＬＴＥ（Long-Term  Evolution）、ＥＶＤＯ（Evolution-Data  Optimized）、ＵＭＢ（Ultra  Mobile  Broadband）などのような通信プロトコルに従って動作できる。
【００２６】
図２を参照する。例示的なプログラマブルパケットフィルタ１８は、コントローラ２２（例えば、プロセッサ又はマイクロプロセッサ）、１つ以上の通信インタフェース２４（１つが示されている）、及びメモリ２６を含んでもよい（不揮発性メモリ、揮発性メモリ又はそれらの組み合わせを含むことができる）。コントローラ２２はメモリ２６への／からのデータ転送、そして、他の装置に対する記憶データの送受信、アプリケーションの一般の動作、及びパケットフィルタ１８の他の機能を制御する。
【００２７】
メモリ２６は、データメモリ２８、及びプログラムメモリ３０を含むことができる。データメモリ２８は、ブロックリスト３２、及び／又は許容リスト３４を含むことができる。ブロックリスト３２は、パケットフィルタ１８によってサービスされる無線通信装置１２の各々ための、宛先ＴＣＰ又はＵＤＰポート、発信元ＩＰアドレス、及び／又は、不要なパケットをブロックするためのパケットを特定する更なる基準を含む。同様に、他の実施例において、許容リストは、パケットフィルタ１８によってサービスされる無線通信装置１２の各々のための、宛先ＴＣＰ又はＵＤＰポート、発信元ＩＰアドレス、及び／又は、必要なパケットを許容するためのパケットを特定する更なる基準を含む。プログラムメモリ３０は、ＷＡＮ１４から受信した不必要な、及び／又は不要なパケットを、ブロックリスト３２に基づいて無線ネットワーク１６に到達する前にフィルタリングし、及び／又は、許容リスト３４に基づいて、許容されたパケットを無線ネットワーク１６に通過させる、フィルタモジュール３６を有する。フィルタモジュール３６の動作の詳細については後述する。
【００２８】
ネットワーク装置で一般に見られる他の特徴は、プログラマブルパケットフィルタ１８に含ませることができる点に留意する必要がある。なお、本発明を理解するのに関連するそれらの要素だけが図２に示されている。
【００２９】
図３をここで参照する。例示的な無線通信装置１２は、コントローラ３８（例えば、プロセッサ又はマイクロプロセッサ）、トランシーバ４０、及び、メモリ４２（不揮発性メモリ、揮発性メモリ又はそれらの組み合わせ）を含むことができる。コントローラ３８は、無線通信、メモリ４２に対するデータの記憶、及び、アプリケーションの動作、及び無線通信装置１２の一般の機能を制御する。
【００３０】
トランシーバ４０は、１つ以上のアンテナ４４に電気的に結合することができる。トランシーバ４０は、周知の方法で無線周波数信号を送受信する。トランシーバ４０は、公知の１つ以上の通信プロトコル、Ｗｉ−Ｆｉ、ＷｉＭａｘ、Ｚｉｇｂｅｅ、ブルートゥース、ＣＤＭＡ、ＴＤＭＡ、ＧＳＭ、ＥＤＧＥ、ＬＴＥ、ＥＶＤＯ、ＵＭＢ、ＩＰｖ６、などを用いて動作できる。
【００３１】
メモリ４２は、ブロックリスト４６、及び／又は許容リスト４８を含むことができる。パケットフィルタ１８のブロックリスト３２と同様に、ブロックリスト４６は、発信元ＩＰアドレス、宛先ＴＣＰ又はＵＤＰポート、及び／又は、無線通信装置１２の不要なパケットをブロックするためのパケットを特定する更なる基準を含む。同様に、許容リスト４８は、発信元ＩＰアドレス、宛先ＴＣＰ又はＵＤＰポート、及び／又は、無線通信装置１２のための望ましいパケットを特定する更なる基準を含む。更に、メモリ４２は、プロトコルスタック５０、及びフィルタプラグイン５２を含んでもよい。これは、ＷＡＮ１４から受信される不必要な、及び／又は、不要なプローブパケットを特定し、特定された基準に合致する更なるパケットをブロックするようプログラマブルパケットフィルタ１８に指示する。フィルタプラグイン５２の動作の詳細は後述する。
【００３２】
図４をここで参照する。不必要な、及び／又は、不要なパケットを確認し、かつパケットフィルタ１８をプログラムするために、無線通信装置１２により実行される例示的なステップを示すフローチャートが示されている。無線通信装置１２は、ＴＣＰ／ＩＰネットワーク・スタック、及び無線ネットワーク１６へのコネクションを初期化し、フィルタプラグイン５２を開始することによって、方法をスタートアップし開始する（ステップＳ１０２）。本明細書において、フィルタリングのプロセスは、プラグインの形式でインプリメントされているが、このプロセスは、スタンドアロンのモジュールとしてインプリメントすることもできる。あるいは、ネットワークプロトコルスタック、又は一般のオペレーティングシステムの一部としてインプリメントすることもできる点に留意する必要がある。
【００３３】
無線通信装置１２が無線ネットワーク１６に接続するときに、フィルタプラグイン５２はネットワーク・ベースのパケットフィルタ１８への信号接続を確立する（ステップＳ１０４）。この時点で、無線通信装置１２は、パケットフィルタ１８から、最後の通信セッションの間に無線通信装置１２によって、所定の位置に置かれたすべてのフィルタのリストを受信できる（ステップＳ１０６）。あるいは、パケットフィルタ１８のブロック・フィルタ・リスト３２は、（フィルタプラグイン５２又はフィルタモジュール３６によって）リセットされてもよい。そして、すべての既存のエントリが削除されてもよい。加えて、無線ネットワーク１６は、デフォルト・フィルタのリストを作成することができ、無線装置１２に知らせることができる。これによって、無線装置１２は、必要に応じてこれらのフィルタを削除できる。
【００３４】
フィルタプラグイン５２は、着信パケットをモニタする（ステップＳ１０８）。上述のように、実行しているアプリケーションの知識に基づいて、フィルタプラグイン５２は、プロトコルスタック５０と協働して、不必要なパケットを検出し（ステップＳ１１０）、そして、パケットフィルタ１８に、そのパケットをブロックするよう要求する（ステップＳ１１２）。例えば、特定のホストからの特定のポートに対する単一のパケットだけが到着するときに、フィルタプラグイン５２はブロック要求を送信できる。あるいは、それは、幾つかの同様の着信パケットを待って、その後のパケットをブロックするよう要求してもよい。パケットがブロックリスト４６の基準に適合しないか、又は許容リスト４８の基準に適合する場合、パケットは求められているパケットとみなされて、関連するアプリケーションにより処理される（ステップＳ１１４）。あるいは、システムは、ブロックリスト４６だけがあるとしてセットアップされてもよい。したがって、ブロックリスト４６に無い全てのパケットは、自動的に許可される。
【００３５】
理想的には、ブロックリスト４６は、現在無線通信装置１２で動いているアプリケーションと関連したブロックする・ポートのためのエントリだけを含むべきである。すなわち、ブロックリスト４６は、無線通信装置１２の現在の状態をなるべくリアルタイムに近い形で反映するために、更新される。したがって、プログラムが以前にインストールされたが、動作していない場合、パケットフィルタ１８は、パケットを排除するよう命令される。しかしながら、そのプログラムが動作している場合には、ブロックする命令は送られない。
【００３６】
パケットは、ソースＩＰアドレス、及びソース／宛先ＴＣＰ又はＵＤＰポートの組合せに基づいてブロックすることができる。パケットフィルタ１８は、完全なＩＰアドレス範囲をフィルタリングすることもできる。換言すれば、１つのＩＰアドレスをブロックするだけではなく、フィルタ入力は、特定範囲のすべてのＩＰアドレス、例えば、10.0.0.0と10.0.0.255の間をブロックすることができる。範囲ブロックは、いわゆる「ネットワーク・マスク」、又はいかなる種類の範囲、例えば10.0.0.23−10.0.0.27（これは、ネットワーク・マスクによって記述することができない）を用いてインプリメントすることもできる。
【００３７】
図５をここで参照する。図５は、無線ネットワーク１６における配信の前に、不必要な、及び／又は、不要なパケットをフィルタリングするための、プログラマブルパケットフィルタ１８によって実行される例示的ステップを示すフローチャートを示している。パケットフィルタ１８は、無線通信装置１２のＩＰアドレスに向けられたプローブパケット（例えば、ウイルスから送られるＰ２Ｐ又はパケット）を受信する（ステップＳ１１６）。フィルタモジュール３６が、そのパケットはブロックされると認識した場合、例えば、ブロックリスト３２の基準に適合した場合、パケットフィルタは、単にそのパケットを破棄する（ステップＳ１２０）。そして、プロセスは終了する。しかしながら、フィルタモジュール３６が、パケットをブロックすることを認識しない場合、ブロックの基準は満たされず、ブロックリスト３２により作成されたパケットの対応するパラメータに適合せず、パケットフィルタ１８は、プローブパケットを、無線ネットワーク１６を介して無線通信装置１２に転送する（ステップＳ１２２）。無線通信装置１２のプロトコルスタック５０が、宛先ＴＣＰ／ＵＤＰポートがアプリケーションに接続されていないと認識した場合、無線通信装置１２は、ネットワークベースパケットフィルタ１８に、ブロック要求を送信する。このブロック要求は、１つのパケットを受信後、直ちに送られてもよい。あるいは、所定の数のパケットを受信した後まで遅延させてこれを送ってもよい。パケットフィルタ１８が、無線通信装置１１２からブロック要求を受信した場合（ステップＳ１２４）、フィルタモジュール３６は、特定された基準を、特定の無線通信装置１２のためにブロックリスト３２に加える（ステップＳ１２６）。したがって、その後の、同一のホストから同一のＴＣＰ／ＵＤＰポートへのＩＰパケットは、パケットフィルタ１８によりブロックされる。これは、無線通信装置１２のエアーインタフェースの信号を送る負荷、及びバッテリ使用を減らす。エアーインタフェース上の利用可能帯域幅は、増加し、無線通信装置１２の動作時間である、すなわちバッテリ寿命が延びることとなる。
【００３８】
図６をここで参照する。図６は、ブロックリスト４６を更新するために無線通信装置１２により実行される例示的なステップを示すフローチャートである。無線通信を利用する新たなアプリケーションが、無線通信装置１２において開始され（ステップＳ１２８）、プロトコルスタック５０によって、第１のプラグイン５２に通知される。この通知は、アプリケーションにトランスペアレントである。アプリケーションが利用したいＴＣＰ又はＵＤＰポートのためのフィルタがある場合（ステップＳ１３０）、フィルタプラグイン５２は、アンブロック要求（unblock  request）をパケットフィルタ１８に送る（ステップＳ１３２）。このアップデートプロセスは、アプリケーションにトランスペアレントであるため、そのアプリケーションは、その後、動作を継続する（ステップＳ１３４）。このネットワークベースパケットフィルタ１８は、新たな規則を承認し、パケットをフィルタリングする。
【００３９】
本発明は、ハードウエア、ソフトウェア、又はこれらの組合せで実現される。本明細書に記載された本方法を実行するために適合しているあらゆる形態のコンピュータシステム、又は装置も、本明細書に記載された機能を実行するために適している。
【００４０】
特定のハードウエア及びソフトウェアの組合せとしては、１つ以上の処理要素及びコンピュータプログラムを含む専用コンピュータシステムであり得る。このコンピュータプログラムは、記憶媒体に記憶され、ロードされ実行されると、コンピュータシステムを制御し、本明細書に記載された方法を実行する。本発明は、コンピュータプログラム製品に組み込むことができる。これは、本明細書に記載された方法をインプリメントすることができる機能を含む。記憶媒体は、いかなる揮発性又は不揮発性記憶装置をも指す。
【００４１】
本明細書におけるコンピュータプログラム又はアプリケーションとは、いかなる言語による、命令の集合の、コード又は表記による、いかなる表現をも意味する。そして、これによって、情報処理能力を有するシステムに、特定の機能を実行させる。この機能は、直接的又は（ａ）他の言語、コード、又は表記、（ｂ）異なる具体的な形態の生成の後に実行される。
【００４２】
加えて、（本明細書にこれと異なる表記があれば別であるが）添付の図面は、縮尺通りに描かれていない。本発明は、本発明の精神又は基本的性質から逸脱しない特定の他の形態で実施することができる。したがって、上述の明細書ではなく、添付の以下の請求項によって、本発明の技術的範囲は定められる。
【図１】
0005624136.tif 000002
【図２】
0005624136.tif 000003
【図３】
0005624136.tif 000004
【図４】
0005624136.tif 000005
【図５】
0005624136.tif 000006
【図６】
0005624136.tif 000007