(57)【要約】【課題】反復してパケットを送信する情報処理装置と、そのパケットを受信するサーバ装置とを備えるシステムにおいて、サーバ装置の処理負担を軽減する。【解決手段】パケット処理装置３は、パケットを受信する受信部３１と、受信されたパケットが、情報処理装置１からサーバ装置４に反復して送信される反復パケットであるかどうか判断するパケット判断部３２と、パケット判断部３２によって反復パケットであると判断されたパケットを送信するかどうか判断する送信判断部３３と、パケット判断部３２によって反復パケットでないと判断されたパケット、及び送信判断部３３によって送信すると判断されたパケットを送信し、パケット判断部３２によって反復パケットであると判断されたパケットであって、送信判断部３３によって送信しないと判断されたパケットを送信しない送信部３４と、を備える。【選択図】図１
2006324737.tif 000002
【特許請求の範囲】
【請求項１】
パケットを受信する受信部と、
前記受信部が受信したパケットが、情報処理装置からサーバ装置に反復して送信されるパケットである反復パケットであるかどうか判断するパケット判断部と、
前記パケット判断部によって反復パケットであると判断されたパケットを送信するかどうか判断する送信判断部と、
前記パケット判断部によって反復パケットでないと判断されたパケット、及び前記送信判断部によって送信すると判断されたパケットを送信し、前記送信判断部によって送信しないと判断されたパケットを送信しない送信部と、を備えたパケット処理装置。
【請求項２】
前記送信判断部は、前記反復パケットのうち、所定の割合の反復パケットを送信しないと判断する、請求項１記載のパケット処理装置。
【請求項３】
前記送信判断部は、前記反復パケットのうち、所定の条件を充たす反復パケットを前記サーバ装置に送信しないと判断する、請求項１記載のパケット処理装置。
【請求項４】
前記反復パケットは、当該反復パケットのヘッダに設定された送信元のアドレスに関する情報である第１のアドレス情報と、前記情報処理装置によって前記反復パケットのペイロードに設定されたアドレスに関する情報である第２のアドレス情報とを含み、
前記送信判断部は、前記反復パケットに含まれる第１のアドレス情報と第２のアドレス情報とが一致する場合に、当該反復パケットを前記サーバ装置に送信しないと判断する、請求項３記載のパケット処理装置。
【請求項５】
前記反復パケットに含まれる第１のアドレス情報は、当該反復パケットの経由したアドレス変換機能を有する送信処理装置によって設定されたものである、請求項４記載のパケット処理装置。
【請求項６】
前記パケット処理装置は、前記情報処理装置の通信に関する処理を行う通信処理装置と、前記サーバ装置との間の通信回線におけるいずれかの中継ノードに存在する、請求項１から５のいずれか記載のパケット処理装置。
【請求項７】
前記パケット処理装置は、前記サーバ装置に接続されている、請求項６記載のパケット処理装置。
【請求項８】
請求項１から６のいずれか記載のパケット処理装置と、
通信回線において通信されるパケットから、前記サーバ装置に送信されるパケットのみを抽出するスイッチ装置と、を備えた通信システムであって、
前記パケット処理装置の前記受信部は、前記スイッチ装置によって抽出されたパケットを受信する、通信システム。
【請求項９】
パケットを受信する受信ステップと、
前記受信ステップで受信したパケットが、情報処理装置からサーバ装置に反復して送信されるパケットである反復パケットであるかどうか判断するパケット判断ステップと、
前記パケット判断ステップで反復パケットであると判断されたパケットを送信するかどうか判断する送信判断ステップと、
前記パケット判断ステップで反復パケットでないと判断されたパケット、及び前記送信判断ステップで送信すると判断されたパケットを送信し、前記送信判断ステップで送信しないと判断されたパケットを送信しない送信ステップと、を備えたパケット処理方法。
【請求項１０】
コンピュータに、
パケットを受信する受信ステップと、
前記受信ステップで受信したパケットが、情報処理装置からサーバ装置に反復して送信されるパケットである反復パケットであるかどうか判断するパケット判断ステップと、
前記パケット判断ステップで反復パケットであると判断されたパケットを送信するかどうか判断する送信判断ステップと、
前記パケット判断ステップで反復パケットでないと判断されたパケット、及び前記送信判断ステップで送信すると判断されたパケットを送信し、前記送信判断ステップで送信しないと判断されたパケットを送信しない送信ステップと、を実行するためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケットに関する処理を行うパケット処理装置等に関する。
【背景技術】
【０００２】
情報処理装置、通信処理装置、及びサーバ装置を含む通信システムにおいて、例えば、家庭用のＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）や家電機器などの情報処理装置から通信処理装置を介して、所定のパケットをサーバ装置に反復して送信することが行われている（例えば、特許文献１参照）。ここで、通信処理装置は、例えば、ＮＡＴ（Ｎｅｔｗｏｒｋ  Ａｄｄｒｅｓｓ  Ｔｒａｎｓｌａｔｉｏｎ）機能を有するルータなどである。情報処理装置がパケットを反復してサーバ装置に送信するひとつの目的は、通信処理装置のポートの維持のためであり、他の目的は、サーバ装置における所定の処理のためである。
【０００３】
まず、通信処理装置のポートの維持について説明する。ルータ等のＮＡＴ機能を有する通信処理装置では、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）側からＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）側へパケットを送信するときにＬＡＮ側のプライベートＩＰアドレスとポート番号を、ＷＡＮ側のグローバルＩＰアドレスとポート番号に変換する。また、ＷＡＮ側からの反復パケットを受信した場合には、所定の受信フィルタルールによるフィルタ処理を行うと共に、アドレス変換の逆変換を行うことによって、情報処理装置にパケットを渡す。ここで、ＮＡＴのＬＡＮ側からパケットが送信されたポートに対してＷＡＮ側からのパケットの受信可能性を判断する受信フィルタルールには、そのポートからパケットを送信したアドレスからのみしかパケットを受信しないＡｄｄｒｅｓｓ  Ｓｅｎｓｉｔｉｖｅフィルタと、そのポートからパケットを送信したポートからのみしかパケットを受信しないＰｏｒｔ  Ｓｅｎｓｉｔｉｖｅフィルタと、フィルタが存在しないＮｏフィルタがある。通信処理装置では、そのようなアドレス変換を行う時間が設定されている。具体的には、ＷＡＮ側とＬＡＮ側との間において、あるアドレス変換が最後になされてから所定の期間経過した後には、ＷＡＮ側から受け取ったパケットに対するそのアドレス変換は行われなくなる（ＬＡＮ側から受け取ったパケットに対しては、新たなアドレス変換がなされることになる）。すなわち、そのＷＡＮ側からのパケットは情報処理装置で受信されないことになり、携帯電話等の外部の装置から情報処理装置にサーバ装置を経由してアクセスできないことになる。その所定の期間のことをポート維持時間と呼ぶことにする。したがって、携帯電話等の外部の装置から情報処理装置にサーバ装置を経由してアクセスすることができるように、通信処理装置のポートを維持する（すなわち、ＷＡＮ側からのパケットが通信処理装置を経由して情報処理装置に送信されるようにしておく）ために反復してパケットが送信される。
【０００４】
次に、反復して送信されるパケットに対して、サーバにおいてなされる所定の処理について説明する。サーバにおける所定の処理とは、例えば、通信処理装置のＷＡＮ側のＩＰアドレスが変化したかどうかを知るためなどの処理である。通信処理装置のＷＡＮ側のＩＰアドレスは、接続プロバイダ等の設定により、所定の期間ごとに変更されることもある。そのような場合に、サーバ装置がそのアドレスの変化を知らなかった場合には、サーバ装置が通信処理装置を介して情報処理装置に情報を送信できないこととなり、その結果、携帯電話等の外部の装置から情報処理装置にサーバ装置を経由してアクセスできないことになる。したがって、サーバ装置が通信処理装置のアドレスの変化を知るなどの処理ができるように、反復してパケットが送信される。
【特許文献１】国際公開第２００４／０３０２９２号パンフレット（第１頁、第１図等）
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、反復して頻繁に送信されるパケットをサーバ装置が受け付ける場合には、それだけサーバ装置の処理負担が増大するという問題がある。特に、情報処理装置が接続されているＮＡＴ機能を有する通信処理装置のポート維持時間が短い場合には、その問題が顕著となる。さらに、通常、ひとつのサーバ装置には、複数の情報処理装置から反復してパケットが送信されるため、サーバ装置での処理負担は、それだけ増大することになる。
【０００６】
本発明は、上記問題点を解決するためになされたものであり、反復してパケットを送信する情報処理装置と、そのパケットを受信するサーバ装置とを備えるシステムにおいて、サーバ装置の処理負担を軽減することを目的とするものである。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、本発明によるパケット処理装置は、パケットを受信する受信部と、前記受信部が受信したパケットが、情報処理装置からサーバ装置に反復して送信されるパケットである反復パケットであるかどうか判断するパケット判断部と、前記パケット判断部によって反復パケットであると判断されたパケットを送信するかどうか判断する送信判断部と、前記パケット判断部によって反復パケットでないと判断されたパケット、及び前記送信判断部によって送信すると判断されたパケットを送信し、前記送信判断部によって送信しないと判断されたパケットを送信しない送信部と、を備えたものである。
このような構成により、情報処理装置から送信される反復パケットのうち、一部の反復パケットをサーバ装置に到達しないようにすることができ、サーバ装置の処理負担を軽減することができる。
【０００８】
また、本発明によるパケット処理装置では、前記送信判断部が、前記反復パケットのうち、所定の割合の反復パケットを送信しないと判断してもよい。
このような構成により、所定の割合の反復パケットがサーバ装置に到達しないことになり、サーバ装置に到達する反復パケットの割合を確実に減少させることができ、サーバ装置の処理負担を確実に減らすことができる。一方、所定の割合の反復パケット以外の反復パケットは、サーバ装置に送信されるため、サーバ装置において、その反復パケットによる処理等を行うことも可能である。
【０００９】
また、本発明によるパケット処理装置では、前記送信判断部は、前記反復パケットのうち、所定の条件を充たす反復パケットを前記サーバ装置に送信しないと判断してもよい。
このような構成により、所定の条件を充たす反復パケットを、サーバ装置に到達しないようにすることができる。なお、その所定の条件を適切に設定することにより、サーバ装置が受信すべき反復パケットは、サーバ装置に送信されるようにして、サーバ装置が受信しなくてもよい反復パケットは、サーバ装置に送信されないようにすることもできうる。
【００１０】
また、本発明によるパケット処理装置では、前記反復パケットが、当該反復パケットのヘッダに設定された送信元のアドレスに関する情報である第１のアドレス情報と、前記情報処理装置によって前記反復パケットのペイロードに設定されたアドレスに関する情報である第２のアドレス情報とを含み、前記送信判断部が、前記反復パケットに含まれる第１のアドレス情報と第２のアドレス情報とが一致する場合に、当該反復パケットを前記サーバ装置に送信しないと判断してもよい。また、前記反復パケットに含まれる第１のアドレス情報は、当該反復パケットの経由したアドレス変換機能を有する送信処理装置によって設定されたものであってもよい。
このような構成により、例えば、情報処理装置が保持している通信処理装置のアドレス
が変更されていた場合に、反復パケットをサーバ装置に送信し、そうでない場合に、反復パケットをサーバ装置に送信しないようにすることができうる。
【００１１】
本発明による通信システムは、前記パケット処理装置と、通信回線において通信されるパケットから、前記サーバ装置に送信されるパケットのみを抽出するスイッチ装置と、を備えた通信システムであって、前記パケット処理装置の前記受信部は、前記スイッチ装置によって抽出されたパケットを受信する、ものである。
このような構成により、パケット処理装置においてすべてのパケットの処理を行う場合に比べて、パケット処理装置における処理負担を軽減することができる。
【発明の効果】
【００１２】
本発明によるパケット処理装置等によれば、情報処理装置から反復して送信される反復パケットのうち、いくらかの反復パケットをサーバ装置に到達しないようにすることができ、サーバ装置における処理負担を軽減させることができる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明によるパケット処理装置等について、実施の形態を用いて説明する。なお、以下の実施の形態において、同じ符号を付した構成要素及びステップは同一または相当するものであり、再度の説明を省略することがある。
【００１４】
（実施の形態１）
本発明の実施の形態１による通信システムについて、図面を参照しながら説明する。
図１は、本実施の形態による通信システムの構成を示す図である。図１において、本実施の形態による通信システムは、情報処理装置１と、通信処理装置２と、パケット処理装置３と、サーバ装置４とを備える。なお、通信処理装置２と、パケット処理装置３と、サーバ装置４とは、有線または無線の通信回線１００，２００で接続されている。この通信回線１００，２００は、例えば、インターネットやイントラネット、公衆電話回線網である。パケット処理装置３は、通信処理装置２と、サーバ装置４との間の通信回線１００，２００におけるいずれかの中継ノードに存在する。
【００１５】
情報処理装置１は、例えば、コンピュータ、電子レンジ、電話機、プリンタ、ファクシミリ装置、冷蔵庫、洗濯機、空調装置、テレビ、映像録画装置、セットトップボックス等である。情報処理装置１は、反復パケットを反復して送信する。ここで、反復パケットとは、情報処理装置１が反復して送信するパケットである。「反復して送信する」とは、繰り返して何度も送信することであり、その送信の周期は一定（例えば、５分ごとなど）であってもよく、不定（例えば、４分から２０分の間で変化するなど）であってもよい。なお、反復パケットを送信する周期は、通常、通信処理装置２のポート維持時間よりも短く設定されている。この反復パケットのペイロードには、何らかの情報が含まれていてもよく、何も情報が含まれていなくてもよい。反復パケットは、例えば、ＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）やＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）のパケットである。
【００１６】
通信処理装置２は、情報処理装置１と、サーバ装置４等の間の通信に関する処理を行う。通信処理装置２は、アドレス変換を行うＮＡＴ機能を有する装置であってもよく、パケットフィルタリングのファイアウォール（Ｆｉｒｅｗａｌｌ）の機能を有する装置であってもよく、あるいは、その両者を有する装置であってもよい。ここで、パケットフィルタリングとは、例えば、受信フィルタルールに基づいた受信パケットの選択を行うものである。受信フィルタルールには、例えば、前述のように、Ａｄｄｒｅｓｓ  Ｓｅｎｓｉｔｉｖｅフィルタ、Ｐｏｒｔ  Ｓｅｎｓｉｔｉｖｅフィルタ、Ｎｏフィルタがある。通信処理装置２がファイアウォールのみの機能を有する装置である場合にも、通信処理装置２にお
いて、上記説明と同様にポート維持時間が設定されているものとする。
【００１７】
パケット処理装置３は、受信部３１と、パケット判断部３２と、送信判断部３３と、送信部３４とを備える。なお、本実施の形態では、パケット処理装置３が、通信回線１００側から通信回線２００側に送信されるパケットの処理を行う場合についてのみ説明するが、パケット処理装置３は、通信回線２００側から送信されたパケットを通信回線１００側に送信する処理を行ってもよい。
【００１８】
受信部３１は、通信回線１００側から送信されたパケットを受信する。そのパケットは、例えば、情報処理装置１から通信処理装置２を介して送信されたパケットである。なお、受信部３１は、受信を行うための受信デバイス（例えば、モデムやネットワークカードなど）を含んでもよく、あるいは含まなくてもよい（この場合には、受信部３１と通信回線１００との間に図示しない受信デバイスが存在することとなる）。また、受信部３１は、ハードウェアによって実現されてもよく、あるいは受信デバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
【００１９】
パケット判断部３２は、受信部３１が受信したパケットが、情報処理装置１からサーバ装置４に反復して送信されるパケットである反復パケットであるかどうか判断する。例えば、反復パケットに、そのパケットが反復パケットである旨を示す情報が含まれている場合には、パケット判断部３２は、その情報を用いて、パケットが反復パケットであるかどうかを判断してもよい。また、例えば、反復パケットの送信元のアドレスに関する情報や、送信先のアドレスに関する情報が決まっている場合には、パケット判断部３２は、パケットのヘッダに含まれるアドレス等に基づいて、パケットが反復パケットであるかどうかを判断してもよい。ここで、アドレスに関する情報とは、例えば、ＩＰアドレスであってもよく、ポート番号であってもよく、その両者であってもよい。具体的には、反復パケットの送信先のポート番号が決められている場合には、パケット判断部３２は、パケットの送信先のポート番号が、反復パケットの送信先のポート番号であるかどうかを判断し、その判断結果に基づいて、パケットが反復パケットであるかどうかを判断してもよい。また、例えば、反復パケットの形式が決まっている場合には、パケット判断部３２は、パケットの形式に基づいて、パケットが反復パケットであるかどうかを判断してもよい。パケットの形式とは、例えば、パケットのサイズやパケットのプロトコル（例えば、ＵＤＰやＴＣＰ）などである。なお、パケット判断部３２は、それらを組み合わせて判断してもよい。例えば、反復パケットのプロトコルと、送信先のポート番号と、サイズが決められている場合に、パケット判断部３２は、それらすべての条件を充たすパケットを反復パケットであると判断してもよい。また、パケット判断部３２による判断の方法はこれらに限定されないことはいうまでもない。また、パケット判断部３２は、パケットが反復パケットであると判断してもよく、パケットが反復パケットでないと判断してもよく、あるいは、その両方を判断してもよい。パケット判断部３２による判断の結果によって、受信部３１で受信されたパケットが反復パケットであるかどうかがわかるのであれば、パケット判断部３２による判断の結果は、どのようなものであってもよい。
【００２０】
送信判断部３３は、パケット判断部３２によって反復パケットであると判断されたパケットを送信するかどうか判断する。具体的には、以下のようにして判断してもよい。なお、判断の方法が以下の説明に限定されないことはいうまでもない。また、送信判断部３３は、反復パケットをサーバ装置４に送信すると判断してもよく、反復パケットをサーバ装置４に送信しないと判断してもよく、あるいは、その両方を判断してもよい。送信判断部３３による判断の結果によって、反復パケットを送信するのか、送信しないのかがわかるのであれば、送信判断部３３による判断の結果は、どのようなものであってもよい。
【００２１】
（１）送信判断部３３は、例えば、反復パケットのうち、所定の割合の反復パケットを
送信しないと判断してもよい。具体的には、送信判断部３３、あるいは、パケット処理装置３に含まれる他の構成要素が、反復パケットの送信元のアドレスに関する情報と、送信先のアドレスに関する情報と、その反復パケットの受信回数とをカウントしておき、その受信回数が所定の値である場合、例えば、その受信回数の１桁目の値が「１」である場合には、反復パケットを送信すると判断し、そうでない場合には、反復パケットを送信しないと判断してもよい。
【００２２】
（２）また、図示しない乱数発生器が０〜９のいずれかの値を反復パケットが受信されるごとに発生し、その乱数発生器の発生した値が所定の値である場合、例えば、その乱数発生器の発生した値が「１」である場合には、送信判断部３３は、反復パケットを送信すると判断し、そうでない場合には、反復パケットを送信しないと判断してもよい。
【００２３】
（３）送信判断部３３は、反復パケットのうち、所定の条件を充たす反復パケットを送信しないと判断してもよい。具体的には、情報処理装置１において、一部の反復パケットに送信不要である旨のフラグが設定されており、送信判断部３３は、反復パケットに含まれるそのフラグに基づいて送信するかどうかを判断してもよい。例えば、その送信不要である旨のフラグに「１」が設定されている場合には、送信判断部３３は送信しないと判断し、そのフラグに「０」が設定されている場合には、送信すると判断してもよい。また、情報処理装置１において、反復パケットの送信回数に応じたカウント値が反復パケットに設定されており、送信判断部３３は、反復パケットに含まれるそのカウント値が所定の値である場合、例えば、そのカウント値の１桁目の値が「１」である場合に、反復パケットを送信すると判断してもよい。また、通信処理装置２がアドレス変換機能（ＮＡＴ機能）を有する場合には、反復パケットの送信元のアドレスやポート番号は、通信処理装置２の通信回線１００側のアドレスやポート番号となる。また、情報処理装置１は、通信処理装置２の通信回線１００側のアドレスに関する情報を反復パケットのペイロードに設定して送信するものとする。そのような場合に、受信部３１で受信された反復パケットは、その反復パケットの経由したアドレス変換機能を有する通信処理装置２で設定されたアドレスに関する情報である第１のアドレス情報と、情報処理装置１によって設定されたアドレスに関する情報である第２のアドレス情報とを含むことになる。具体的には、第１のアドレス情報は反復パケットのヘッダに設定されており、第２のアドレス情報は反復パケットのペイロードに設定されている。なお、アドレス情報が、例えば、ＩＰアドレスであってもよく、ポート番号であってもよく、その両者であってもよい点については、前述の通りである。送信判断部３３は、その反復パケットに含まれる第１のアドレス情報と、第２のアドレス情報とが一致しない場合に、その反復パケットをサーバ装置４に送信すると判断し、一致する場合に、送信しないと判断してもよい。第１のアドレス情報と第２のアドレス情報とが一致しない場合には、情報処理装置１が保持している通信処理装置２の通信回線１００側のアドレスに関する情報が、実際のアドレスに関する情報と異なっていることになる。したがって、その反復パケットをサーバ装置４に送信することによって、サーバ装置４は、そのことを検知し、情報処理装置１が保持している通信処理装置２の通信回線１００側のアドレスに関する情報を変更するための処理を情報処理装置１に対して行うことができるようになりうる。
【００２４】
送信部３４は、パケット判断部３２によって反復パケットでないと判断されたパケットを送信する。また、送信部３４は、パケット判断部３２によって反復パケットであると判断されたパケットであって、送信判断部３３によって送信すると判断されたパケットを送信する。また、送信部３４は、パケット判断部３２によって反復パケットであると判断されたパケットであって、送信判断部３３によって送信しないと判断されたパケットを送信しない。なお、送信部３４がパケットを送信する場合には、受信部３１が受信したパケットについてヘッダの書き換え等を行わないで、そのまま送信する。また、送信部３４は、結果として、前記のようにパケットの送信を行えばよい。したがって、例えば、受信部３
１で受信されたパケットのうち、送信判断部３３が送信しないと判断したパケットが送信部３４に渡されないことによって、結果的に送信されなくてもよい。また、送信部３４は、送信を行うための送信デバイス（例えば、モデムやネットワークカードなど）を含んでもよく、あるいは含まなくてもよい（この場合には、送信部３４と通信回線２００との間に図示しない送信デバイスが存在することとなる）。また、送信部３４は、ハードウェアによって実現されてもよく、あるいは送信デバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
【００２５】
サーバ装置４は、情報処理装置１等から送信されたパケットを受信する。サーバ装置４は、情報処理装置１から送信された反復パケットを受信すると、それに対して所定の処理を行ってもよい。所定の処理とは、例えば、次のような処理である。サーバ装置４は、あらかじめ登録されているアドレスに関する情報と、受信した反復パケットの送信元のアドレスに関する情報とが一致するかどうか判断する。そして、一致しない場合には、反復パケットの送信元のアドレスに関する情報に基づいて、サーバ装置４が保持しているアドレスに関する情報を変更してもよく、情報処理装置１に対して、サーバ装置４におけるアドレスに関する情報を変更する処理を実行する旨の指示を送信してもよく、あるいは、反復パケットの送信元のアドレスに関する情報をペイロードに含むパケットを情報処理装置１に送信してもよい。このように、サーバ装置４において行われる処理は、どのようなものであってもよい。
【００２６】
次に、本実施の形態によるパケット処理装置３の動作について、図２のフローチャートを用いて説明する。
（ステップＳ１０１）受信部３１は、パケットを受信したかどうか判断する。そして、パケットを受信した場合には、ステップＳ１０２に進み、そうでない場合には、パケットを受信するまで、ステップＳ１０１の処理を繰り返す。
【００２７】
（ステップＳ１０２）パケット判断部３２は、受信部３１が受信したパケットが反復パケットであるかどうか判断する。そして、反復パケットである場合には、ステップＳ１０３に進み、そうでない場合には、ステップＳ１０４に進む。
（ステップＳ１０３）送信判断部３３は、反復パケットを送信するかどうか判断する。そして、送信する場合には、ステップＳ１０４に進み、そうでない場合には、ステップＳ１０１に戻る。
【００２８】
（ステップＳ１０４）送信部３４は、反復パケットでないパケット、あるいは、送信判断部３３が送信すると判断した反復パケットを送信する。そして、ステップＳ１０１に戻る。
なお、図２のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
【００２９】
次に、本実施の形態によるパケット処理装置３の動作について、具体例を用いて説明する。この具体例において、パケット処理装置３は、いわゆるルータであるとする。また、各装置のアドレスは、以下の通りであるとする。
情報処理装置１：１９２．１６８．０．１１
通信処理装置２（情報処理装置１側）：１９２．１６８．０．１
通信処理装置２（通信回線１００側）：１５５．３２．１０．１０
パケット処理装置３（通信回線１００側）：２０２．１３２．１０．６
パケット処理装置３（通信回線２００側）：２０２．１９８．１０５．１０
サーバ装置４：２０２．２２４．１３５．１０
【００３０】
［具体例１］
この具体例では、パケット判断部３２は、反復パケットに含まれるパケットの種類を識別する情報であるパケット種類識別情報に基づいて、反復パケットであるかどうかを判断するものとする。また、送信判断部３３は、反復パケットの送信元のアドレス、ポート番号、及び送信先のアドレスと、その反復パケットの受信回数の１桁目とを対応付ける情報である受信回数情報を有しており、その受信回数の１桁目が「１」である場合に、反復パケットを送信すると判断し、そうでない場合に、反復パケットを送信しないと判断するものとする。
【００３１】
情報処理装置１から図３で示される構造を有する反復パケットが送信されたとする。ここで、反復パケットに含まれるパケット種類識別情報には、パケットの種類が反復パケットである旨が含まれているものとする。その反復パケットは、通信処理装置２でアドレス変換され、パケット処理装置３の受信部３１で受信される（ステップＳ１０１）。パケット判断部３２は、反復パケットのペイロードに含まれるパケット種類識別情報を参照し、そのパケット種類識別情報がパケットの種類が反復パケットである旨を示すため、反復パケットであると判断する（ステップＳ１０２）。
【００３２】
送信判断部３３が有する受信回数情報が図４で示されるものであったとする。送信判断部３３は、反復パケットのヘッダから送信元のアドレス、ポート番号、送信先のアドレス、ポート番号を取得し、それらに対応する受信回数「１０」を１だけインクリメントして「１１」にする。また、そのインクリメントした後の受信回数が「１１」であるため、送信判断部３３は、反復パケットを送信すると判断し、その旨を送信部３４に渡す（ステップＳ１０３）。
【００３３】
送信部３４は、受信部３１が受信した反復パケットを送信する（ステップＳ１０４）。その結果、そのパケットは、サーバ装置４で受信されることになる。その後のサーバ装置４での処理が任意である点は、前述の通りである。
一方、受信部３１が受信した反復パケットに対応する受信回数が「１２」であったとする。すると、送信判断部３３は、反復パケットを送信しないと判断し、その旨を送信部３４に渡す（ステップＳ１０３）。その結果、受信部３１で受信された反復パケットは、送信されないことになる。
【００３４】
また、受信部３１が反復パケットでないパケットを受信した場合には（ステップＳ１０１）、パケット判断部３２により、反復パケットでないと判断され（ステップＳ１０２）、送信部３４から送信されることになる（ステップＳ１０４）。
【００３５】
［具体例２］
この具体例でも、パケット判断部３２は、反復パケットに含まれるパケットの種類を識別する情報であるパケット種類識別情報に基づいて、反復パケットであるかどうかを判断するものとする。なお、この具体例では、通信処理装置２はアドレス変換機能を有するものとする。また、情報処理装置１は、反復パケットのペイロードに、情報処理装置１が保持している通信処理装置２の通信回線１００側のアドレス、ポート番号を設定して送信するものとする。また、送信判断部３３は、反復パケットのペイロードに情報処理装置１によって設定されたアドレス、ポート番号と、反復パケットのヘッダに通信処理装置２によって設定された送信元のアドレス、ポート番号とを比較し、両者が一致する場合には、反復パケットを送信しないと判断し、両者が一致しない場合には、反復パケットを送信すると判断する。
【００３６】
情報処理装置１が保持している通信処理装置２の通信回線１００側のアドレス「１５５．３２．１０．１０」、ポート番号「１２３４５」と、実際の通信処理装置２の通信回線１００側のアドレス、ポート番号が一致していたとする。すると、情報処理装置１から送
信され、通信処理装置２でアドレス変換された反復パケットは、図５で示されるようになる。図５において、ＳＡ（Ｓｏｕｒｃｅ  Ａｄｄｒｅｓｓ）は送信元アドレスであり、ＳＰ（Ｓｏｕｒｃｅ  Ｐｏｒｔ）は送信元ポート番号であり、ＤＡ（Ｄｅｓｔｉｎａｔｉｏｎ  Ａｄｄｒｅｓｓ）は送信先アドレスであり、ＤＰ（Ｄｅｓｔｉｎａｔｉｏｎ  Ｐｏｒｔ）は送信先ポート番号である。その反復パケットは、パケット処理装置３の受信部３１で受信される（ステップＳ１０１）。パケット判断部３２は、反復パケットに含まれるパケット種類識別情報に基づいて、その受信されたパケットが反復パケットであると判断する（ステップＳ１０２）。
【００３７】
送信判断部３３は、その反復パケットのヘッダから通信処理装置２によって設定された送信元アドレス「１５５．３２．１０．１０」と、送信元ポート番号「１２３４５」とを読み出す。また、送信判断部３３は、その反復パケットのペイロードから、情報処理装置１によって設定された送信元アドレス「１５５．３２．１０．１０」と、送信元ポート番号「１２３４５」とを読み出す。そして、両者を比較した結果、両者が一致するため、送信判断部３３は反復パケットを送信しないと判断する（ステップＳ１０３）。その結果、反復パケットはサーバ装置４に送信されず、パケット処理装置３で廃棄されることになる。
【００３８】
一方、通信処理装置２の通信回線１００側のアドレスを提供している接続プロバイダ等が通信処理装置２の通信回線１００側のアドレスを「１５５．３２．１０．２０」に変更したとする。情報処理装置１において保持されている通信処理装置２の通信回線１００側のアドレスがまだ更新されていないときに反復パケットが送信されると、受信部３１が受信した反復パケットは、図６で示されるようになる。パケット判断部３２は、そのパケットを反復パケットであると判断する（ステップＳ１０２）。送信判断部３３は、上記説明と同様に、反復パケットのヘッダから通信処理装置２によって設定された送信元アドレス「１５５．３２．１０．２０」と、送信元ポート番号「１１１１１」とを読み出す。また、送信判断部３３は、その反復パケットのペイロードから、情報処理装置１によって設定された送信元アドレス「１５５．３２．１０．１０」と、送信元ポート番号「１２３４５」とを読み出す。この場合には、両者が一致しないため、送信判断部３３は反復パケットを送信すると判断し、その旨を送信部３４に渡す（ステップＳ１０３）。すると、送信部３４は、受信部３１で受信された反復パケットを送信する（ステップＳ１０４）。その反復パケットは、通信回線２００を介してサーバ装置４で受信される。その受信後の処理は問わない。例えば、サーバ装置４は、情報処理装置１に対して、通信処理装置２の通信回線１００側の変更後のアドレス、ポート番号を通知すると共に、その変更後のアドレスによるアドレス登録の処理を実行する旨の指示を通知する。その結果、情報処理装置１は、サーバ装置４に対して、変更後のアドレス、ポート番号を登録する処理を行うと共に、情報処理装置１で保持している通信処理装置２の通信回線１００側のアドレス、ポート番号を新たなものに変更する処理を行ってもよい。
【００３９】
なお、この具体例では、通信処理装置２がアドレス変換機能を有する場合について説明したが、通信処理装置２はアドレス変換機能を有しなくてもよい。例えば、パケット処理装置３の送信判断部３３は、反復パケットのヘッダに設定された送信元のアドレスに関する情報である第１のアドレス情報と、反復パケットのペイロードに設定された第２のアドレス情報とが一致しない場合に、反復パケットをサーバ装置４に送信すると判断し、一致する場合に、反復パケットをサーバ装置４に送信しないと判断してもよい。ここで、その反復パケットのヘッダに設定された第１のアドレス情報は、例えば、情報処理装置１の通信デバイス等によって設定されたものであってもよく、反復パケットのペイロードに設定された第２のアドレス情報は、例えば、情報処理装置１のアプリケーション等によって設定されたものであってもよい。このようにすることで、例えば、情報処理装置１のＵｓｅｒ空間に存在するアプリケーション等は、情報処理装置１のＫｅｒｎｅｌ空間に存在する
アドレスやポート番号等を直接参照することなく、接続プロバイダ等によって設定された情報処理装置１のアドレス等が変更されたかどうかを判断することができうる。
【００４０】
以上のように、本実施の形態によるパケット処理装置３では、受信したパケットが反復パケットである場合には、その反復パケットのすべてをサーバ装置４に送信するのではなく、一部の反復パケットを送信しないことにより、サーバ装置４が受信する反復パケットの個数を少なくすることができる。その結果、サーバ装置４における処理負担を軽減することができる。特に、サーバ装置４において、例えば、反復パケットの送信元のアドレスと、サーバ装置４に登録されているアドレスとが一致するかどうか比較するなどの負担の大きい処理を行っている場合には、その処理負担の軽減の効果は顕著となる。
【００４１】
また、上記具体例１のように、例えば、１０個の反復パケットのうち１個の反復パケットがサーバ装置４に到達するといったように、所定の割合の反復パケットがサーバ装置４に到達するようにすることで、サーバ装置４は、例えば、通信処理装置２の通信回線１００側のアドレスやポート番号の変更されたことを、情報処理装置１に対して通知することもできうる。
【００４２】
また、上記具体例２のように、アドレス等を比較して反復パケットの送信の可否を判断することによって、サーバ装置４における処理が必要である反復パケットをサーバ装置４に送信すると共に、サーバ装置４における処理負担を軽減することができる。
【００４３】
一方、情報処理装置１から送信された反復パケットは、通信処理装置２を通過しているため、情報処理装置１が通信処理装置２のポート維持時間よりも短い間隔で反復パケットを送信することにより、情報処理装置１は、サーバ装置４から送信されたパケットを、通信処理装置２を介していつでも受信できることになる。
【００４４】
（実施の形態２）
本発明による実施の形態２による通信システムは、スイッチ装置と、パケット処理装置とを備え、スイッチ装置によって、サーバ装置に送信されると判断されたパケットのみについて、パケット処理装置において送信の可否の判断を行うものである。
【００４５】
図７は、本実施の形態による通信システムの構成を示す図である。本実施の形態による通信システムは、スイッチ装置５を新たに備えた以外、実施の形態１と同様であり、その説明を省略する。
スイッチ装置５は、通信回線１００において通信されるパケットから、サーバ装置４に送信されるパケットのみを抽出する。そして、そのスイッチ装置５によって抽出されたパケットは、パケット処理装置３に渡され、パケット処理装置３の受信部３１で受信される。
【００４６】
スイッチ装置５は、例えば、いわゆるレイヤー３スイッチであり、サーバ装置４のアドレスが設定されている。そして、通信されるパケットのＩＰヘッダのアドレスを参照し、そのＩＰヘッダの送信先アドレスが、スイッチ装置５に設定されているサーバ装置４のアドレスと一致した場合に、そのパケットをパケット処理装置３に渡し、一致しない場合には、そのパケットをそのまま通信させる。スイッチ装置５は、例えば、インターネット等の通信回線における、いわゆるルータとルータの間などに設置される。
【００４７】
なお、スイッチ装置５からパケット処理装置３に渡されたパケットについては、実施の形態１と同様の処理が行われ、反復パケットであり、送信しないと判断されたパケットは送信されず、それ以外のパケットは、パケット処理装置３から通信回線２００に送信されることになる。パケット処理装置３の動作は、実施の形態１と同様であり、その説明を省
略する。
【００４８】
以上のように、本実施の形態による通信システムでは、スイッチ装置５を用いて、サーバ装置４に送信されるパケットのみを抽出し、そのパケットについて、パケット処理装置３による処理を行うようにしたことで、パケット処理装置３による処理負担を軽減することができる。一般に、パケット処理装置３における処理負担よりも、スイッチ装置５の処理負担の方が少なく、全体としての処理負担を軽減することができうる。
【００４９】
なお、上記各実施の形態において、パケット処理装置３は、その装置自体がアドレスを有する、いわゆるルータであってもよく、あるいは、その装置自体がアドレスを有さない、いわゆるブリッジ機器であってもよい。
また、上記各実施の形態において、パケット処理装置３は、通信処理装置２とサーバ装置４との間の通信回線におけるいずれかの中継ノードに存在するのであれば、その存在する位置は問わない。例えば、パケット処理装置３が情報処理装置１に近い中継ノードに存在する場合には、反復パケットの送信数を削減することによって、通信回線全体としてのトラフィックの削減を行うことができうる。そのような場合には、例えば、地域ごとのように、複数のパケット処理装置３を通信回線上に配置してもよい。一方、パケット処理装置３は、サーバ装置４に近い中継ノードに存在してもよく、サーバ装置４に接続されていてもよい。パケット処理装置３がサーバ装置４に接続されているとは、サーバ装置４に送信されるすべてのパケットが、パケット処理装置３を経由することを意味する。したがって、パケット処理装置３がサーバ装置４に接続されている場合には、パケット処理装置３を経由しないでサーバ装置４に送信されるパケットがないことになり、効果的にサーバ装置４の処理負担を軽減することができる。
【００５０】
また、上記各実施の形態において、情報処理装置１が通信処理装置２の通信回線１００側のアドレス等を有している場合に、情報処理装置１がそのアドレス等を取得する方法は問わない。例えば、情報処理装置１は、所定のサーバ装置から送信されたそのアドレス等を受信してもよく、あるいは、ＵＰｎＰ等の機能を用いて、通信処理装置２からそのアドレス等を取得してもよい。
また、上記各実施の形態において、情報処理装置１は、２以上の通信処理装置を介して通信を行ってもよい。
【００５１】
また、上記各実施の形態における通信プロトコルは、例えば、ＩＰｖ４（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ  ｖｅｒｓｉｏｎ  ４）であってもよく、あるいは、ＩＰｖ６（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ  ｖｅｒｓｉｏｎ  ６）であってもよい。
【００５２】
また、上記各実施の形態において、各処理または各機能は、単一の装置または単一のシステムによって集中処理されることによって実現されてもよく、あるいは、複数の装置または複数のシステムによって分散処理されることによって実現されてもよい。
【００５３】
また、上記各実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをＣＰＵ等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。なお、上記各実施の形態におけるパケット処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータに、パケットを受信する受信ステップと、前記受信ステップで受信したパケットが、情報処理装置からサーバ装置に反復して送信されるパケットである反復パケットであるかどうか判断するパケット判断ステップと、前記パケット判断ステップで反復パケットであると判断されたパケットを送信するかどうか判断する送信判断
ステップと、前記パケット判断ステップで反復パケットでないと判断されたパケット、及び前記送信判断ステップで送信すると判断されたパケットを送信し、前記送信判断ステップで送信しないと判断されたパケットを送信しない送信ステップと、を実行させるためのものである。
【００５４】
なお、上記プログラムにおいて、情報を送信する送信ステップや、情報を受信する受信ステップなどでは、ハードウェアでしか行われない処理、例えば、送信ステップにおけるモデムやインターフェースカードなどで行われる処理は少なくとも含まれない。
【００５５】
また、このプログラムは、サーバなどからダウンロードされることによって実行されてもよく、所定の記録媒体（例えば、ＣＤ−ＲＯＭなどの光ディスクや磁気ディスク、半導体メモリなど）に記録されたプログラムが読み出されることによって実行されてもよい。
【００５６】
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
また、本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【産業上の利用可能性】
【００５７】
以上より、本発明によるパケット処理装置等は、情報処理装置からサーバ装置に反復して送信される反復パケットの数量を削減することによって、サーバ装置の処理負担を軽減することができ、反復してパケットを送信する情報処理装置と、そのパケットを受信するサーバ装置とを備えるシステム等において有用である。
【図面の簡単な説明】
【００５８】
【図１】本発明の実施の形態１による通信システムの構成を示す図
【図２】同実施の形態によるパケット処理装置の動作を示すフローチャート
【図３】同実施の形態における反復パケットの構成の一例を示す図
【図４】同実施の形態における受信回数情報の一例を示す図
【図５】同実施の形態における反復パケットの構成の一例を示す図
【図６】同実施の形態における反復パケットの構成の一例を示す図
【図７】本発明の実施の形態２による通信システムの構成を示す図
【符号の説明】
【００５９】
１  情報処理装置
２  通信処理装置
３  パケット処理装置
４  サーバ装置
５  スイッチ装置
３１  受信部
３２  パケット判断部
３３  送信判断部
３４  送信部
【図１】
2006324737.tif 000003
【図２】
2006324737.tif 000004
【図３】
2006324737.tif 000005
【図４】
2006324737.tif 000006
【図５】
2006324737.tif 000007
【図６】
2006324737.tif 000008
【図７】
2006324737.tif 000009