(57)【特許請求の範囲】
【請求項１】
通信装置であって、
他の通信装置と接続されるインタフェース部と、
前記インタフェース部と前記他の通信装置との間におけるトラフィック情報を収集する収集部と、
前記インタフェース部においてパケットを受信した場合に、該受信したパケットがインターネット制御メッセージプロトコルに準拠するパケットのタイプフィールドにトラフィック情報の取得を要求することを示す情報が設定された要求パケットであるか否かを判定し、要求パケットであると判定した場合には、前記インターネット制御メッセージプロトコルに準拠するパケットのタイプフィールドに前記要求パケットへの応答であることを示す情報を設定するとともに、所定のデータフィールドに当該インタフェース部のトラフィック情報を設定した応答パケットを生成する生成部と、
前記要求パケットには、当該要求パケットの流通経路における収集区間に対応した通信装置の通過可能回数が設定されており、
前記要求パケットを受信した場合に前記通過可能回数を１減算し、当該要求パケットの宛先が当該通信装置であるか否かを判定し、前記要求パケットの宛先が当該通信装置でない場合に、当該要求パケットに設定されている前記通過可能回数に基づいて、当該要求パケットを他の通信装置に転送することが許可されているか否かを判定する判定部と、
前記判定部によって前記要求パケットの宛先が当該通信装置であると判定された場合及び前記要求パケットを他の通信装置に転送することが許可されていないと判定された場合に、前記生成部によって生成された応答パケットを前記要求パケットの送信元に送信する送信部と
を備えたことを特徴とする通信装置。
【請求項２】
前記収集部は、
前記トラフィック情報として、前記インタフェース部と前記他の通信装置との間における帯域に関するインタフェース帯域情報、前記インタフェース部によって受信されたパケットの数を示す受信パケット数、前記インタフェース部によって受信されたパケットのトラフィック量を示す受信パケット帯域、前記インタフェース部によって送信されたパケットの数を示す送信パケット数、前記インタフェース部によって送信されたパケットのトラフィック量を示す送信パケット帯域、前記インタフェース部によって送受信されたパケットのうち廃棄されたパケットの数を示す廃棄パケット数の少なくとも一つ以上を収集し、
前記送信部は、
前記収集部によって収集されたインタフェース帯域情報、受信パケット数、受信パケット帯域、送信パケット数、送信パケット帯域、廃棄パケット数の少なくとも一つ以上を前記要求パケットの送信元に送信する
ことを特徴とする請求項１に記載の通信装置。
【請求項３】
所定時間当たりに前記インタフェース部において受信される前記要求パケットの受信数が所定の閾値を超えた場合に、前記所定時間内において後に受信された要求パケットを廃棄する廃棄部
をさらに備えたことを特徴とする請求項１または２に記載の通信装置。
【請求項４】
通信装置が実行する通信方法であって、
他の通信装置に接続されるインタフェース部と、当該他の通信装置との間におけるトラフィック情報を収集する収集工程と、
前記インタフェース部においてパケットを受信した場合に、該受信したパケットがインターネット制御メッセージプロトコルに準拠するパケットのタイプフィールドにトラフィック情報の取得を要求することを示す情報が設定された要求パケットであるか否かを判定し、要求パケットであると判定した場合には、前記インターネット制御メッセージプロトコルに準拠するパケットのタイプフィールドに前記要求パケットへの応答であることを示す情報を設定するとともに、所定のデータフィールドに当該インタフェース部のトラフィック情報を設定した応答パケットを生成する生成工程と、
前記要求パケットには、当該要求パケットの流通経路における収集区間に対応した通信装置の通過可能回数が設定されており、
前記要求パケットを受信した場合に前記通過可能回数を１減算し、当該要求パケットの宛先が当該通信装置であるか否かを判定し、前記要求パケットの宛先が当該通信装置でない場合に、当該要求パケットに設定されている前記通過可能回数に基づいて、当該要求パケットを他の通信装置に転送することが許可されているか否かを判定する判定工程と、
前記判定工程によって前記要求パケットの宛先が当該通信装置であると判定された場合及び前記要求パケットを他の通信装置に転送することが許可されていないと判定された場合に、前記生成工程によって生成された応答パケットを前記要求パケットの送信元に送信する送信工程と
を含んだことを特徴とする通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、通信装置及び通信方法に関する。
【背景技術】
【０００２】
従来、ＩＰ（Internet  Protocol）ネットワークにおいては、ＩＰパケットの到達確認や、データグラム処理におけるエラー通知などのために、インターネット制御メッセージプロトコル（ＩＣＭＰ：Internet  Control  Message  Protocol）が用いられている。ＩＣＭＰが用いられるツール（ソフトウェア）としては、pingやtracerouteなどが知られている。
【０００３】
このようなＩＣＭＰを用いた技術として、例えば、エコー要求パケットを送信してからエコー応答パケットを受信するまでのラウンドトリップ時間を測定し、測定結果である遅延時間を用いて帯域制御を行う技術が提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００２−２４７０６７号公報
【非特許文献】
【０００５】
【非特許文献１】M.Rose  et  al,  "Management  Information  Base  for  Network  Management  of  TCP/IP-based  internets: MIB-II",  Network  Working  Group,  RFC1158,  May  1990,  ［online］,［平成２４年２月１４日検索］、インターネット＜http://tools.ietf.org/html/rfc1158＞
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記のエコー要求パケットを利用した従来技術では、遅延時間を測定しているだけであって、ＩＰパケットが流通する通流経路における実際の空き帯域等の詳細な情報までは取得することが困難である。
【０００７】
この点、ＭＩＢ（Management  Information  Base）情報を用いることにより、ルータ等の通信装置におけるトラフィック情報を取得できるとも考えられる。しかし、ＭＩＢ情報は、中継装置におけるインタフェース毎に用意される情報であるので、ＭＩＢ情報を用いて流通経路におけるトラフィック情報を把握するためには、通信装置間におけるインタフェースの接続関係に関する情報を別途収集することを要する。さらに、ＭＩＢを取得するためには、ＳＮＭＰ（Simple  Network  Management  Protocol）を用いてコミュニティと呼ばれる認証を要する。このようなことから、ＭＩＢ情報を用いる手法は、情報収集に手間がかかる。
【０００８】
本願の開示する技術は、上記に鑑みてなされたものであって、ＩＰパケットの流通経路におけるトラフィック情報を容易に収集することを可能にする通信装置及び通信方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
実施形態に係る通信装置は、他の通信装置と接続されるインタフェース部と、前記インタフェース部と前記他の通信装置との間におけるトラフィック情報を収集する収集部と、トラフィック情報の取得を要求する要求パケットが前記インタフェース部において受信された場合に、前記収集部によって収集された当該インタフェース部に対応するトラフィック情報を前記要求パケットの送信元に送信する送信部とを備えることを特徴とする。
【発明の効果】
【００１０】
実施形態に係る通信装置及び通信方法は、ＩＰパケットの流通経路におけるトラフィック情報を容易に収集することを可能にするという効果を奏する。
【図面の簡単な説明】
【００１１】
【図１】図１は、第１の実施形態に係るネットワークシステムの構成例を示す図である。
【図２】図２は、第１の実施形態におけるＩＣＭＰパケットのフォーマット例を示す図である。
【図３】図３は、第１の実施形態に係るルータの構成例を示す図である。
【図４】図４は、第１の実施形態に係る通信装置によるＩＣＭＰパケットの送受信処理手順を示すフローチャートである。
【図５】図５は、送信制御プログラムを実行するコンピュータを示す図である。
【発明を実施するための形態】
【００１２】
以下に、本願に係る通信装置及び通信方法の実施形態を図面に基づいて詳細に説明する。なお、この実施形態により本願に係る通信装置及び通信方法が限定されるものではない。
【００１３】
（第１の実施形態）
［第１の実施形態に係るネットワークシステムの構成］
まず、図１を用いて、第１の実施形態に係るネットワークシステムについて説明する。図１は、第１の実施形態に係るネットワークシステム１の構成例を示す図である。図１に例示するように、第１の実施形態に係るネットワークシステム１には、ユーザ端末２と、Ｗｅｂサーバ３と、ルータ１００１〜１００４とが含まれる。
【００１４】
なお、図１では、ネットワークシステム１に、１台のユーザ端末２と、１台のＷｅｂサーバ３と、４台のルータ１００１〜１００４とが含まれる例を示したが、ネットワークシステム１に含まれる各装置の台数は図１に示した例に限られない。例えば、ネットワークシステム１には、複数台のユーザ端末が含まれてもよいし、複数台のＷｅｂサーバが含まれてもよいし、３台以下のルータが含まれてもよいし、５台以上のルータが含まれてもよい。
【００１５】
ユーザ端末２は、ルータ１００１〜１００４やＷｅｂサーバ３と通信を行う通信装置であり、例えば、ＰＣ（Personal  Computer）やＰＤＡ（Personal  Digital  Assistant）等である。図１に示した例では、ユーザ端末２は、ルータ１００２と通信可能に接続される。なお、ユーザ端末２と接続されるルータはルータ１００２に限られない。例えば、ユーザ端末２は、ルータ１００２以外のルータ１００１やルータ１００３やルータ１００４などと接続されてもよい。かかるユーザ端末２は、送信部２ａ及び受信部２ｂを有する。送信部２ａ及び受信部２ｂについては後述する。
【００１６】
Ｗｅｂサーバ３は、各種Ｗｅｂサービスを提供する通信装置である。例えば、Ｗｅｂサーバ３は、ルータ１００１〜１００４のいずれかを経由して、ユーザ端末２からＨＴＴＰ（HyperText  Transfer  Protocol）リクエストを受信した場合に、ＨＴＭＬ（HyperText  Markup  Language）ファイル等をユーザ端末２に返信する。図１に示した例では、Ｗｅｂサーバ３は、ルータ１００３と通信可能に接続される。なお、Ｗｅｂサーバ３と接続されるルータはルータ１００３に限られない。例えば、Ｗｅｂサーバ３は、ルータ１００３以外のルータ１００１やルータ１００２やルータ１００４などと接続されてもよい。
【００１７】
また、図１に示した例では、ネットワークシステム１にＷｅｂサーバ３が含まれる例を示したが、ネットワークシステム１には、Ｗｅｂサービス以外のサービスを提供するサーバ装置が含まれてもよい。例えば、ネットワークシステム１には、電子メールの送受信処理を中継するメールサーバや、ファイルを管理するファイルサーバや、その他のアプリケーションサーバが含まれてもよい。
【００１８】
ルータ１００１〜１００４は、ＩＰパケットを中継する通信装置（すなわち、ＩＰパケットを転送するパケット転送装置）である。図１に示した例では、ルータ１００１は、他の通信装置（ルータ１００２又は１００３等）との間でＩＰパケットを送受信するＩＦ（interface）部１１及び１２を有する。また、ルータ１００２はＩＦ部２１〜２３を有し、ルータ１００３はＩＦ部３１〜３３を有し、ルータ１００４はＩＦ部４１及び４２を有する。なお、ルータ１００１〜１００４が有するＩＦ部の数は、図１に示した例に限られない。例えば、ルータ１００１は、３個以上のＩＦ部を有してもよいし、ルータ１００２は、２個のＩＦ部又は４個以上のＩＦ部を有してもよい。
【００１９】
各ＩＦ部は、図１に図示するように接続される。一例を挙げて説明すると、ルータ１００１のＩＦ部１１とルータ１００２のＩＦ部２１とが接続され、ルータ１００１のＩＦ部１２とルータ１００３のＩＦ部３１とが接続される。また、ルータ１００２のＩＦ部２３とユーザ端末２とが接続され、ルータ１００３のＩＦ部３３とＷｅｂサーバ３とが接続される。
【００２０】
ここで、図１に示した例において、各ＩＦ部には、図示したＩＰアドレスが割り当てられているものとする。一例を挙げて説明すると、ＩＦ部１１にはＩＰアドレス「１０．１．１．１」が割り当てられ、ＩＦ部１２にはＩＰアドレス「１０．２．１．２」が割り当てられる。また、図１に示した例において、ユーザ端末２のＩＰアドレスは「１０．０．０．１」であり、Ｗｅｂサーバ３のＩＰアドレスは「１０．２．３．１」であるものとする。
【００２１】
このような構成の下、第１の実施形態に係るネットワークシステム１では、ＩＣＭＰに準拠するＩＰパケットであるＩＣＭＰパケットが流通する。具体的には、第１の実施形態に係るネットワークシステム１では、トラフィック情報の取得を要求する要求パケットに該当するＩＣＭＰパケット（後述するBandwidth  Requestパケット）や、かかる要求パケットに対する応答パケットに該当するＩＣＭＰパケット（後述するBandwidth  Replyパケット、又は、Time  Exceededパケット）が流通する。後に詳述するが、このようなBandwidth  Requestパケットは、ユーザ端末２の送信部２ａからルータ１００１〜１００４やＷｅｂサーバ３に送信される。また、Bandwidth  ReplyパケットやTime  Exceededパケットは、ルータ１００１〜１００４やＷｅｂサーバ３から送信され、ユーザ端末２の受信部２ｂによって受信される。これにより、ユーザ端末２は、ＩＰパケットの流通経路におけるトラフィック情報を容易に収集することができる。
【００２２】
ここで、図２に、第１の実施形態におけるＩＣＭＰパケットのフォーマット例を示す。第１の実施形態におけるＩＣＭＰパケットは、最初の１オクテット（８ビット）が「Ｔｙｐｅ」フィールドに該当し、２番目の１オクテットが「Ｃｏｄｅ」フィールドに該当し、３番目及び４番目の２オクテットが「チェックサム」フィールドに該当し、５番目及び６番目の２オクテットが「ＩＤ」フィールドに該当し、７番目及び８番目の２オクテットが「シーケンス番号」フィールドに該当し、９番目以降の可変長である数オクテットが「データ」フィールドに該当する。
【００２３】
「Ｔｙｐｅ」には、ＩＣＭＰパケットの種別が設定される。具体的には、第１の実施形態では、トラフィック情報の取得を要求するBandwidth  Requestパケット（要求パケット）に該当するＩＣＭＰパケットの「Ｔｙｐｅ」には、「Bandwidth  Request」であることを示す値が設定される。また、Bandwidth  Replyパケットに該当するＩＣＭＰパケットの「Ｔｙｐｅ」には、「Bandwidth  Reply」であることを示す値が設定される。また、Time  Exceededパケットに該当するＩＣＭＰパケットの「Ｔｙｐｅ」には、「Time  Exceeded」であることを示す値が設定される。なお、「Bandwidth  Request」や「Bandwidth  Reply」や「Time  Exceeded」であることを示す値の例としては、例えば、既存のＩＣＭＰパケットにおける「Ｔｙｐｅ」に設定され得る数値以外の値が挙げられる。
【００２４】
「Ｃｏｄｅ」には、第１の実施形態におけるＩＣＭＰパケットでは未使用フィールドとして例えば「０」などが設定される。「チェックサム」には、「Ｔｙｐｅ」から「データ」までのチェックサムが設定される。「ＩＤ」及び「シーケンス番号」には、ＩＣＭＰパケットの送信元によって任意の値が設定される。
【００２５】
「データ」には、ＩＣＭＰパケットの種別に応じた所定の情報が設定される。具体的には、第１の実施形態では、Bandwidth  Replyパケット又はTime  Exceededパケットの「データ」には、後に詳述するトラフィック情報が設定される。
【００２６】
ここで、図１を用いて、第１の実施形態におけるＩＣＭＰパケットの流通例について簡単に説明する。図１に示した例において、ユーザ端末２が、宛先ＩＰアドレスがルータ１００１であるBandwidth  Requestパケットを送信したものとする。ルータ１００１は、自装置（ルータ１００１）宛のBandwidth  Requestパケットを受信した場合に、かかるBandwidth  Requestパケットを受信したＩＦ部２３のトラフィック情報を取得する。そして、ルータ１００１は、図２に示した「Ｔｙｐｅ」に「Bandwidth  Reply」であることを示す値を設定するとともに、「データ」にＩＦ部２３のトラフィック情報を設定したBandwidth  Replyパケットを生成し、生成したBandwidth  Replyパケットをユーザ端末２に返信する。
【００２７】
また、図１に示した例において、ユーザ端末２が、ＩＰパケットが通信装置を通過することが許可されている通過可能回数を示すＴＴＬ（Time  To  Live）に「１」を設定したBandwidth  Requestパケットをルータ１００１に送信したものとする。ルータ１００１は、かかるBandwidth  Requestパケットを受信した場合に、かかるBandwidth  RequestパケットのＴＴＬを「１」から「０」に更新する。このとき、ルータ１００１は、Bandwidth  Requestパケットを受信したＩＦ部２３のトラフィック情報を取得する。そして、ルータ１００１は、図２に示した「Ｔｙｐｅ」に「Time  Exceeded」であることを示す値を設定するとともに、「データ」にＩＦ部２３のトラフィック情報を設定したTime  Exceededパケットを生成し、生成したTime  Exceededパケットをユーザ端末２に返信する。
【００２８】
このように、第１の実施形態に係るネットワークシステム１において、ユーザ端末２は、ＩＣＭＰパケットを送信するだけで、ＩＰパケットの流通経路におけるトラフィック情報を容易に収集することができる。なお、上記では、ＩＣＭＰパケットの流通例を簡単に説明したが、後にＩＣＭＰパケットの流通態様について詳細に説明する。
【００２９】
［第１の実施形態に係るルータの構成］
次に、図３を用いて、第１の実施形態に係るルータ１００１〜１００４の構成について説明する。なお、ルータ１００１〜１００４は同様の構成を有するので、ルータ１００１〜１００４を区別する必要がない場合には、総称して「ルータ１００」と表記する場合がある。また、以下に説明するルータ１００は、ＩＣＭＰパケット以外のＩＰパケットも送受信するが、ここでは、主にルータ１００がＩＣＭＰパケットを受信する場合の処理について説明する。
【００３０】
図３は、第１の実施形態に係るルータ１００の構成例を示す図である。図３に例示するように、第１の実施形態に係るルータ１００は、ＩＦ部１０ａ及び１０ｂと、ルーティング処理部１１０と、転送処理部１２０と、上位レイヤ処理部１３０とを有する。
【００３１】
ＩＦ部１０ａ及び１０ｂは、他の通信装置（他のルータ、ユーザ端末２、Ｗｅｂサーバ３等）との間でＩＰパケットを送受信する。例えば、図３に示したルータ１００が図１に示したルータ１００１である場合には、ＩＦ部１０ａ及び１０ｂは、ＩＦ部１１又は１２に該当する。なお、図３では、ルータ１００が２個のＩＦ部を有する例を示したが、ルータ１００は、３個以上のＩＦ部を有してもよい。
【００３２】
ルーティング処理部１１０は、図示しないルーティングテーブルに従って、転送処理部１２０がＩＰパケットの経路選択を行う際に用いる経路情報を集めた転送テーブル（ＦＩＢ：Forwarding  Information  Base）を生成し、生成した転送テーブルを転送処理部１２０に設定する。
【００３３】
転送処理部１２０は、ＩＦ部１０ａ又は１０ｂによって受信されたＩＰパケットが入力された場合に、かかるＩＰパケットのＴＴＬを１減算した後に、ＩＦ部１０ａ又は１０ｂや上位レイヤ処理部１３０にＩＰパケットを出力する。かかる転送処理部１２０は、図３に例示するように、判定部１２１と、送信部１２２とを有する。
【００３４】
判定部１２１は、ＩＦ部１０ａ又は１０ｂから入力されたＩＰパケットの宛先が自装置（ルータ１００）であるか否かを判定する。例えば、判定部１２１は、ＩＰパケットヘッダの宛先ＩＰアドレスに、ＩＦ部１０ａ又は１０ｂのＩＰアドレスが設定されているか否かを判定する。そして、判定部１２１は、自装置宛のＩＰパケットである場合には、かかるＩＰパケットを上位レイヤ処理部１３０に出力する。
【００３５】
一方、判定部１２１は、自装置宛のＩＰパケットでない場合には、減算後のＴＴＬが「０」であるか否かを判定する。すなわち、判定部１２１は、ＩＦ部１０ａ又は１０ｂから入力されたＩＰパケットを他の通信装置（他のルータ、Ｗｅｂサーバ３等）に転送してよいか否かを判定する。そして、判定部１２１は、ＴＴＬが「０」である場合には、かかるＩＰパケットを上位レイヤ処理部１３０に出力する。また、判定部１２１は、ＩＰパケットの宛先が自装置でなく、かつ、ＴＴＬが「０」でない場合には、かかるＩＰパケットを送信部１２２に出力する。
【００３６】
送信部１２２は、ルーティング処理部１１０によって設定された転送テーブルに従って、判定部１２１や後述する上位レイヤ処理部１３０から入力されたＩＰパケットをＩＦ部１０ａ又は１０ｂに出力する。すなわち、送信部１２２は、ＩＦ部１０ａ又は１０ｂを介して、ＩＰパケットを他の通信装置に転送する処理を行う。
【００３７】
上位レイヤ処理部１３０は、転送処理部１２０から入力されたＩＰパケットに応じて、エラー処理等の各種処理を行う。具体的には、上位レイヤ処理部１３０は、転送処理部１２０から入力されたＩＰパケットがＩＣＭＰパケットである場合には、応答パケットの生成処理等を行う。かかる上位レイヤ処理部１３０は、図３に例示するように、収集部１３１と、生成部１３２とを有する。以下では、上位レイヤ処理部１３０が転送処理部１２０からＩＣＭＰパケットを入力される場合の処理について説明する。
【００３８】
収集部１３１は、ＩＦ部毎に、かかるＩＦ部のトラフィック情報を収集する。具体的には、収集部１３１は、トラフィック情報として、ＩＦ部（ＩＦ部１０ａ又は１０ｂ）と他の通信装置との間における帯域に関するインタフェース帯域情報や、ＩＦ部によって受信されたＩＰパケットの数を示す受信パケット数や、ＩＦ部によって受信されたＩＰパケットのトラフィック量を示す受信パケット帯域や、ＩＦ部によって送信されたＩＰパケットの数を示す送信パケット数や、ＩＦ部によって送信されたＩＰパケットのトラフィック量を示す送信パケット帯域や、ＩＦ部によって送受信されたＩＰパケットのうち廃棄されたＩＰパケットの数を示す廃棄パケット数などを収集する。
【００３９】
生成部１３２は、転送処理部１２０から出力されたＩＣＭＰパケットの「Ｔｙｐｅ」に「Bandwidth  Request」であることを示す値が設定されている場合に、応答パケット（Bandwidth  Replyパケット、又は、Time  Exceededパケット）を生成する。具体的には、生成部１３２は、転送処理部１２０から出力されたＩＣＭＰパケットがBandwidth  Requestパケットであり、かつ、かかるBandwidth  Requestパケットの宛先が自装置（ルータ１００）である場合には、Bandwidth  Replyパケットを生成する。また、生成部１３２は、転送処理部１２０から出力されたＩＣＭＰパケットがBandwidth  Requestパケットであり、かつ、かかるBandwidth  RequestパケットのＴＴＬが「０」である場合には、Time  Exceededパケットを生成する。
【００４０】
このとき、生成部１３２は、Bandwidth  Requestパケットを受信したＩＦ部のトラフィック情報を収集部１３１から取得する。そして、生成部１３２は、「Bandwidth  Reply」や「Time  Exceeded」であることを示す値を「Ｔｙｐｅ」に設定し、収集部１３１から取得したトラフィック情報を「データ」に設定し、Bandwidth  Requestパケットの送信元ＩＰアドレスを宛先ＩＰアドレスとした応答パケット（Bandwidth  Replyパケット、又は、Time  Exceededパケット）を生成する。
【００４１】
なお、生成部１３２は、応答パケットの「データ」には、収集部１３１によって収集されたインタフェース帯域情報、受信パケット数、受信パケット帯域、送信パケット数、送信パケット帯域、廃棄パケット数の少なくとも一つ以上を設定する。例えば、生成部１３２は、収集部１３１によって収集された全てのトラフィック情報を設定してもよいし、収集部１３１によって収集されたトラフィック情報のうち１つのトラフィック情報のみを設定してもよい。
【００４２】
また、生成部１３２は、Bandwidth  Requestパケットの送信元ＩＰアドレスを転送処理部１２０に設定されている転送テーブルに照合することで、Bandwidth  Requestパケットを受信したＩＦ部を特定することができる。この照合処理は、転送処理部１２０によって実行されてもよい。また、このような照合処理を行わずに、転送処理部１２０が、Bandwidth  Requestパケットを受信したＩＦ部を生成部１３２に通知してもよい。
【００４３】
生成部１３２は、このようにして生成した応答パケット（Bandwidth  Replyパケット、又は、Time  Exceededパケット）を送信部１２２に出力する。送信部１２２は、上記の通り、転送テーブルに従って、かかる応答パケットをＩＦ部１０ａ又は１０ｂに出力する。これにより、ルータ１００は、Bandwidth  Requestパケットを受信した場合に、かかるBandwidth  Requestパケットの送信元に対して、トラフィック情報が設定された応答パケットを返信することができる。
【００４４】
なお、上記例では、ルータ１００が、Bandwidth  Requestパケットを受信した場合に、Bandwidth  Requestパケットの送信元に対して、Bandwidth  Replyパケット又はTime  Exceededパケットを返信する例を示した。しかし、図１に示したＷｅｂサーバ３等のルータ１００以外の通信装置も、上記図３に示した転送処理部１２０や上位レイヤ処理部１３０と同様の処理部を有してもよい。例えば、Ｗｅｂサーバ３は、転送テーブルを有しないものの、上記の判定部１２１、送信部１２２、収集部１３１及び生成部１３２と同様の処理部を有し、Bandwidth  Requestパケットを受信した場合に、トラフィック情報が格納されたBandwidth  Replyパケット又はTime  Exceededパケットを返信する機能を有してもよい。
【００４５】
［第１の実施形態に係るネットワークシステムにおけるパケット流通例］
次に、図１に示した例を用いて、第１の実施形態におけるＩＣＭＰパケットの流通態様の一例を説明する。ここでは、ユーザ端末２とＷｅｂサーバ３との間で行っている通信にパケットの到達遅延や欠損等の問題が発生しており、ユーザ端末２のユーザが、かかる問題の発生箇所や発生原因を特定するものとする。また、ここでは、Ｗｅｂサーバ３が、Bandwidth  ReplyパケットやTime  Exceededパケットを返信する機能を有するものとする。
【００４６】
このような状況において、ユーザ端末２の送信部２ａは、tracerouteとして、宛先ＩＰアドレスがＷｅｂサーバ３のＩＰアドレス「１０．２．３．１」であり、かつ、ＴＴＬが「１」であるBandwidth  Requestパケットを送信する。ルータ１００２は、ＩＰアドレス「１０．１．２．１」が割り当てられているＩＦ部２３によって、ユーザ端末２から送信されたBandwidth  Requestパケットを受信する。かかる場合に、ルータ１００２は、受信したBandwidth  RequestパケットのＴＴＬが「０」となるので、ＩＦ部２３のトラフィック情報（インタフェース帯域情報、受信パケット数、受信パケット帯域、送信パケット数、送信パケット帯域、廃棄パケット数の少なくとも一つ以上の情報）を格納したTime  Exceededパケットを生成し、生成したTime  Exceededパケットをユーザ端末２に送信する。ユーザ端末２の受信部２ｂは、Time  Exceededパケットを受信し、受信したTime  Exceededパケットに格納されているトラフィック情報を蓄積する。
【００４７】
続いて、ユーザ端末２の送信部２ａは、tracerouteとして、宛先ＩＰアドレスがＷｅｂサーバ３のＩＰアドレス「１０．２．３．１」であり、かつ、ＴＴＬが「２」であるBandwidth  Requestパケットを送信する。ルータ１００２は、転送テーブルに従って、ユーザ端末２から受信したBandwidth  Requestパケットをルータ１００１又は１００４に転送する。ここでは、ルータ１００２は、Bandwidth  Requestパケットをルータ１００１に転送するものとする。ルータ１００１は、ＩＰアドレス「１０．１．１．１」が割り当てられているＩＦ部１１によって、ルータ１００２により転送されたBandwidth  Requestパケットを受信する。かかる場合に、ルータ１００１は、受信したBandwidth  RequestパケットのＴＴＬが「０」となるので、ＩＦ部１１のトラフィック情報を格納したTime  Exceededパケットを生成する。そして、ルータ１００１は、Bandwidth  Requestパケットの送信元ＩＰアドレス「１０．０．０．１」（すなわち、ユーザ端末２）に対して、生成したTime  Exceededパケットを送信する。ユーザ端末２の受信部２ｂは、Time  Exceededパケットを受信し、受信したTime  Exceededパケットに格納されているトラフィック情報を蓄積する。
【００４８】
続いて、ユーザ端末２の送信部２ａは、tracerouteとして、宛先ＩＰアドレスがＷｅｂサーバ３のＩＰアドレス「１０．２．３．１」であり、かつ、ＴＴＬが「３」であるBandwidth  Requestパケットを送信する。ここでは、かかるBandwidth  Requestパケットが、ルータ１００２及びルータ１００１を経由して、ルータ１００３に転送されるものとする。ルータ１００３は、ＩＰアドレス「１０．２．１．１」が割り当てられているＩＦ部３１によって、ルータ１００１により転送されたBandwidth  Requestパケットを受信する。かかる場合に、ルータ１００３は、受信したBandwidth  RequestパケットのＴＴＬが「０」となるので、ＩＦ部３１のトラフィック情報を格納したTime  Exceededパケットをユーザ端末２に送信する。ユーザ端末２の受信部２ｂは、Time  Exceededパケットを受信し、受信したTime  Exceededパケットに格納されているトラフィック情報を蓄積する。
【００４９】
続いて、ユーザ端末２の送信部２ａは、tracerouteとして、宛先ＩＰアドレスがＷｅｂサーバ３のＩＰアドレス「１０．２．３．１」であり、かつ、ＴＴＬが「４」であるBandwidth  Requestパケットを送信する。ここでは、ＴＴＬが「４」であるので、かかるBandwidth  Requestパケットは、Ｗｅｂサーバ３に到達する。かかる場合に、Ｗｅｂサーバ３は、ＩＰアドレス「１０．２．３．１」が割り当てられているＩＦ部のトラフィック情報を収集し、収集したトラフィック情報を格納したBandwidth  Replyパケットをユーザ端末２に送信する。ユーザ端末２の受信部２ｂは、Bandwidth  Replyパケットを受信し、受信したBandwidth  Replyパケットに格納されているトラフィック情報を蓄積する。
【００５０】
このように、ユーザ端末２の送信部２ａは、ＴＴＬの値を「１」ずつ加算したBandwidth  RequestパケットをＷｅｂサーバ３宛に送信することにより、Ｗｅｂサーバ３までの流通経路におけるトラフィック情報（インタフェース帯域情報、受信パケット数、受信パケット帯域、送信パケット数、送信パケット帯域、廃棄パケット数の少なくとも一つ以上の情報）を収集することができる。これにより、ユーザ端末２のユーザは、収集されたトラフィック情報に基づいて、エンドエンド間（ユーザ端末２とＷｅｂサーバ３との間）の流通経路における帯域使用率や廃棄パケット数などを把握することができるので、Ｗｅｂサーバ３との通信で発生しているパケット遅延や欠損等の発生箇所や発生原因を特定することができる。すなわち、第１の実施形態に係るネットワークシステム１では、ユーザ端末２のユーザ自身が、ネットワーク上の問題の発生箇所や発生原因を特定することができる。
【００５１】
なお、上記例では、ユーザ端末２の送信部２ａが、tracerouteとして、Bandwidth  Requestパケットを送信する例を示した。しかし、ユーザ端末２の送信部２ａは、ルータ１００やＷｅｂサーバ３を宛先に設定した上で、pingとして、Bandwidth  Requestパケットを送信してもよい。かかる場合には、ユーザ端末２は、宛先に設定したルータ１００やＷｅｂサーバ３からトラフィック情報を収集することができる。
【００５２】
［第１の実施形態に係る通信装置による処理手順］
次に、図４を用いて、第１の実施形態に係る通信装置によるＩＣＭＰパケットの送受信処理の手順について説明する。図４は、第１の実施形態に係る通信装置によるＩＣＭＰパケットの送受信処理手順を示すフローチャートである。なお、以下では、図４に示す処理手順がルータ１００によって実行される場合を例に挙げて説明するが、かかる処理手順は、ルータ１００以外の通信装置（Ｗｅｂサーバ３等）によって実行されてもよい。
【００５３】
図４に示すように、ルータ１００の判定部１２１は、ＩＰパケットを受信した場合に（ステップＳ１０１肯定）、かかるＩＰパケットの宛先が自装置（ルータ１００）であるか否かを判定する（ステップＳ１０２）。そして、判定部１２１は、自装置宛のＩＰパケットである場合には（ステップＳ１０２肯定）、かかるＩＰパケットを上位レイヤ処理部１３０に出力する。
【００５４】
続いて、上位レイヤ処理部１３０の生成部１３２は、転送処理部１２０から出力されたＩＰパケットがＩＣＭＰパケットである場合に、かかるＩＣＭＰパケットの「Ｔｙｐｅ」に「Bandwidth  Request」であることを示す値が設定されているか否かを判定する（ステップＳ１０３）。
【００５５】
そして、「Ｔｙｐｅ」に「Bandwidth  Request」が設定されていない場合には（ステップＳ１０３否定）、ルータ１００は、通常の処理（転送処理やエラー処理等）を行う（ステップＳ１０４）。ここでは、かかる通常の処理については説明を省略する。
【００５６】
一方、「Ｔｙｐｅ」に「Bandwidth  Request」が設定されているBandwidth  Requestパケットである場合に（ステップＳ１０３肯定）、生成部１３２は、かかるBandwidth  Requestパケットを受信したＩＦ部のトラフィック情報を収集部１３１から取得する（ステップＳ１０５）。続いて、生成部１３２は、「Bandwidth  Reply」であることを示す値を「Ｔｙｐｅ」に設定し、収集部１３１から取得したトラフィック情報を「データ」に設定し、Bandwidth  Requestパケットの送信元ＩＰアドレスを宛先ＩＰアドレスとしたBandwidth  Replyパケットを生成する（ステップＳ１０６）。
【００５７】
そして、送信部１２２は、ＩＦ部１０ａ又は１０ｂを介して、生成部１３２によって生成されたBandwidth  ReplyパケットをBandwidth  Requestパケットの送信元に送信する（ステップＳ１０７）。
【００５８】
なお、上記ステップＳ１０３について、収集部１３１が、「Ｔｙｐｅ」に「Bandwidth  Request」が設定されているか否かを判定し、Bandwidth  Requestパケットであると判定した場合に、かかるBandwidth  Requestパケットを受信したＩＦ部のトラフィック情報を収集してもよい。
【００５９】
また、判定部１２１は、自装置宛のＩＰパケットでない場合には（ステップＳ１０２否定）、かかるＩＰパケットのＴＴＬが「０」であるか否かを判定する（ステップＳ１０８）。そして、判定部１２１は、ＴＴＬが「０」でない場合には（ステップＳ１０８否定）、かかるＩＰパケットを上位レイヤ処理部１３０に出力してエラー処理等の通常処理を行わせる（ステップＳ１０４）。また、判定部１２１は、ＴＴＬが「０」である場合には（ステップＳ１０８肯定）、かかるＩＰパケットを上位レイヤ処理部１３０に出力し、以下の処理を行わせる。
【００６０】
続いて、上位レイヤ処理部１３０の生成部１３２は、転送処理部１２０から出力されたＩＰパケットがＩＣＭＰパケットである場合に、かかるＩＣＭＰパケットの「Ｔｙｐｅ」に「Bandwidth  Request」であることを示す値が設定されているか否かを判定する（ステップＳ１０９）。
【００６１】
そして、「Ｔｙｐｅ」に「Bandwidth  Request」が設定されていない場合には（ステップＳ１０９否定）、ルータ１００は、通常の処理（転送処理やエラー処理等）を行う（ステップＳ１０４）。
【００６２】
一方、「Ｔｙｐｅ」に「Bandwidth  Request」が設定されているBandwidth  Requestパケットである場合に（ステップＳ１０９肯定）、生成部１３２は、かかるBandwidth  Requestパケットを受信したＩＦ部のトラフィック情報を収集部１３１から取得する（ステップＳ１１０）。続いて、生成部１３２は、「Time  Exceeded」であることを示す値を「Ｔｙｐｅ」に設定し、収集部１３１から取得したトラフィック情報を「データ」に設定し、Bandwidth  Requestパケットの送信元ＩＰアドレスを宛先ＩＰアドレスとしたTime  Exceededパケットを生成する（ステップＳ１１１）。
【００６３】
そして、送信部１２２は、ＩＦ部１０ａ又は１０ｂを介して、生成部１３２によって生成されたTime  ExceededパケットをBandwidth  Requestパケットの送信元に送信する（ステップＳ１１２）。
【００６４】
なお、上記ステップＳ１０９について、収集部１３１が、「Ｔｙｐｅ」に「Bandwidth  Request」が設定されているか否かを判定し、Bandwidth  Requestパケットであると判定した場合に、かかるBandwidth  Requestパケットを受信したＩＦ部のトラフィック情報を収集してもよい。
【００６５】
［第１の実施形態の効果］
上述してきたように、第１の実施形態に係るルータ１００やＷｅｂサーバ３等の通信装置は、他の通信装置と接続されるＩＦ部と、ＩＦ部と他の通信装置との間におけるトラフィック情報を収集する収集部１３１と、トラフィック情報の取得を要求する要求パケットがＩＦ部において受信された場合に、収集部１３１によって収集されたＩＦ部に対応するトラフィック情報を要求パケットの送信元に送信する送信部１２２とを有する。
【００６６】
これにより、第１の実施形態に係る通信装置は、ＩＰパケットの流通経路におけるトラフィック情報を容易に収集することを可能にする。例えば、ユーザ端末２は、第１の実施形態に係る通信装置に対して要求パケットを送信するだけで、ＩＰパケットの流通経路におけるトラフィック情報を容易に収集することができる。この結果、第１の実施形態に係るネットワークシステム１では、ユーザ端末２のユーザ自身が、エンドエンド間（ユーザ端末２とＷｅｂサーバ３との間等）の流通経路におけるトラフィック情報を把握することができ、Ｗｅｂサーバ３との通信で発生しているパケット遅延や欠損等の発生箇所や発生原因を特定することができる。
【００６７】
また、第１の実施形態に係る通信装置において、判定部１２１は、要求パケットを受信した場合に、かかる要求パケットの宛先が自装置（第１の実施形態に係る通信装置）であるか否かを判定する。また、送信部１２２は、判定部１２１によって要求パケットの宛先が自装置であると判定された場合に、かかる要求パケットを受信したＩＦ部のトラフィック情報を要求パケットの送信元に送信する。
【００６８】
これにより、第１の実施形態に係る通信装置は、自装置宛の要求パケットを受信した場合に、かかる要求パケットを受信したＩＦ部のトラフィック情報を送信するので、ＩＰパケットの流通経路におけるトラフィック情報を容易に収集することを可能にする。例えば、ユーザ端末２は、第１の実施形態に係る通信装置宛に要求パケットを送信するだけで、かかる通信装置のトラフィック情報を容易に収集することができる。
【００６９】
また、第１の実施形態に係る通信装置において、判定部１２１は、要求パケットの宛先が自装置（第１の実施形態に係る通信装置）でない場合に、かかる要求パケットに設定されている通信装置のＴＴＬに基づいて、かかる要求パケットを他の通信装置に転送することが許可されているか否かを判定する。また、送信部１２２は、判定部１２１によって要求パケットを他の通信装置に転送することが許可されていないと判定された場合に、かかる要求パケットを受信したＩＦ部のトラフィック情報を要求パケットの送信元に送信する。
【００７０】
これにより、第１の実施形態に係る通信装置は、自装置宛でなくてもＴＴＬが「０」となる要求パケットを受信した場合に、かかる要求パケットを受信したＩＦ部のトラフィック情報を送信するので、ＩＰパケットの流通経路におけるトラフィック情報を容易に収集することを可能にする。例えば、ユーザ端末２は、第１の実施形態に係るネットワークシステム１に対して所定のＴＴＬを設定した要求パケットを送信するだけで、要求パケットのＴＴＬが「０」となる通信装置におけるトラフィック情報を収集することができる。すなわち、ユーザ端末２は、ネットワークシステム１に含まれる通信装置の宛先を設定しなくても、ＴＴＬに所定値を設定するだけでＩＰパケットの流通経路におけるトラフィック情報を容易に収集することができる。
【００７１】
また、第１の実施形態に係る通信装置において、収集部１３１は、ＩＦ部のトラフィック情報として、かかるＩＦ部と他の通信装置との間における帯域に関するインタフェース帯域情報、かかるＩＦ部によって受信されたパケットの数を示す受信パケット数、かかるＩＦ部によって受信されたパケットのトラフィック量を示す受信パケット帯域、かかるＩＦ部によって送信されたパケットの数を示す送信パケット数、かかるＩＦ部によって送信されたパケットのトラフィック量を示す送信パケット帯域、かかるＩＦ部によって送受信されたパケットのうち廃棄されたパケットの数を示す廃棄パケット数の少なくとも一つ以上を収集する。また、送信部１２２は、判定部１２１によって収集されたインタフェース帯域情報、受信パケット数、受信パケット帯域、送信パケット数、送信パケット帯域、廃棄パケット数の少なくとも一つ以上を要求パケットの送信元に送信する。
【００７２】
これにより、ユーザ端末２のユーザは、収集されたトラフィック情報に基づいて、エンドエンド間の流通経路における帯域使用率や廃棄パケット数などを把握することができるので、ＩＰパケットの流通経路上で発生しているパケット遅延や欠損等の発生箇所や発生原因を特定することができる。
【００７３】
また、第１の実施形態に係る通信装置において、生成部１３２は、ＩＣＭＰに準拠するＩＣＭＰパケットのタイプフィールドにトラフィック情報の取得を要求することを示す情報（Bandwidth  Requestであることを示す情報）が設定された要求パケットがＩＦ部において受信された場合に、ＩＣＭＰパケットのタイプフィールドに要求パケットへの応答であることを示す情報（Bandwidth  Reply又はTime  Exceededであることを示す情報）を設定するとともに、データフィールドにＩＦ部のトラフィック情報を設定した応答パケットを生成する。また、送信部１２２は、生成部１３２によって生成された応答パケットを要求パケットの送信元に送信する。
【００７４】
これにより、第１の実施形態に係る通信装置は、ＩＣＭＰパケットのタイプフィールドに設定される情報に基づいて、ＩＰパケットの流通経路におけるトラフィック情報を容易に収集することを可能にする。例えば、通信装置は、tracerouteやpingが拡張されたＩＣＭＰパケットの送受信により、流通経路におけるトラフィック情報を容易に収集することを可能にする。
【００７５】
また、第１の実施形態に係るユーザ端末２等の通信装置は、ＩＣＭＰに準拠するＩＣＭＰパケットのタイプフィールドにトラフィック情報の取得を要求することを示す情報（Bandwidth  Requestであることを示す情報）が設定された要求パケットをネットワークシステム１に送信する。また、ユーザ端末２等の通信装置は、要求パケットを受信したネットワークシステム１内の通信装置（ルータ１００等）から、ＩＣＭＰパケットのタイプフィールドに要求パケットへの応答であることを示す情報（Bandwidth  Reply又はTime  Exceededであることを示す情報）が設定されるとともに、データフィールドに要求パケットを受信した通信装置のＩＦ部のトラフィック情報が設定された応答パケットを受信する。
【００７６】
これにより、第１の実施形態に係るユーザ端末２等の通信装置は、tracerouteやpingが拡張されたＩＣＭＰパケットを送信するだけで、ＩＰパケットの流通経路におけるトラフィック情報を容易に収集することができる。
【００７７】
（第２の実施形態）
上述したルータ１００等の通信装置は、上記実施形態以外にも種々の異なる形態にて実施されてよい。そこで、第２の実施形態では、上記の通信装置の他の実施形態について説明する。
【００７８】
［制限処理］
上記第１の実施形態において、転送処理部１２０や上位レイヤ処理部１３０は、ＩＦ部１０ａ又は１０ｂから入力されたＩＰパケットがBandwidth  Requestパケット（要求パケット）であるか否かを判定し、所定時間当たりに受信したBandwidth  Requestパケットの受信数が所定の閾値以上である場合に、かかる所定時間内において後に受信したBandwidth  Requestパケットを廃棄する廃棄部を有してもよい。例えば、かかる廃棄部は、１秒間に１個のBandwidth  Requestパケットを受信する旨の設定がされている場合には、１秒間に２個のBandwidth  Requestパケットを受信した際には、２個目のBandwidth  Requestパケットを廃棄する。これにより、第１の実施形態に係るルータ１００やＷｅｂサーバ３等の通信装置は、Bandwidth  Requestパケットにかかる処理負荷の上昇を防止することができる。また、上記の廃棄部は、全てのBandwidth  Requestパケットを廃棄する旨の設定がされることも可能である。このように設定された場合、第１の実施形態に係るルータ１００やＷｅｂサーバ３等の通信装置は、Bandwidth  Requestパケットを通信装置へのＤｏＳ攻撃に用いられることを防止することができるとともに、通信装置が提供するトラフィック情報を制限することができる。
【００７９】
［通信装置］
また、上記第１の実施形態では、図１に例示したように、通信装置としてルータを例に挙げて説明した。しかし、通信装置はルータに限られない。例えば、第１の実施形態における各ルータは、スイッチ等の通信装置であってもよい。
【００８０】
［システム構成］
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、図１に示したＩＰアドレスは一例であって任意に変更することができる。
【００８１】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、図３に示した例において、上位レイヤ処理部１３０が判定部１２１を有してもよい。また、図３に示した例において、収集部１３１と生成部１３２とは統合されてもよい。
【００８２】
［プログラム］
また、上記実施形態において説明したルータ１００等の通信装置が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。例えば、ルータ１００が実行する処理をコンピュータが実行可能な言語で記述した送信制御プログラムを作成することもできる。この場合、コンピュータが送信制御プログラムを実行することにより、上記実施形態と同様の効果を得ることができる。さらに、かかる送信制御プログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録された送信制御プログラムをコンピュータに読み込ませて実行することにより上記実施形態と同様の処理を実現してもよい。以下に、図３に示したルータ１００と同様の機能を実現する送信制御プログラムを実行するコンピュータの一例を説明する。
【００８３】
図５は、送信制御プログラムを実行するコンピュータ１０００を示す図である。図５に例示するように、コンピュータ１０００は、例えば、メモリ１０１０と、ＣＰＵ１０２０と、ハードディスクドライブインタフェース１０３０と、ディスクドライブインタフェース１０４０と、シリアルポートインタフェース１０５０と、ビデオアダプタ１０６０と、ネットワークインタフェース１０７０とを有し、これらの各部はバス１０８０によって接続される。
【００８４】
メモリ１０１０は、図５に例示するように、ＲＯＭ（Read  Only  Memory）１０１１及びＲＡＭ１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、図５に例示するように、ハードディスクドライブ１０３１に接続される。ディスクドライブインタフェース１０４０は、図５に例示するように、ディスクドライブ１０４１に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブに挿入される。シリアルポートインタフェース１０５０は、図５に例示するように、例えばマウス１０５１、キーボード１０５２に接続される。ビデオアダプタ１０６０は、図５に例示するように、例えばディスプレイ１０６１に接続される。
【００８５】
ここで、図５に例示するように、ハードディスクドライブ１０３１は、例えば、ＯＳ１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３、プログラムデータ１０９４を記憶する。すなわち、上記の送信制御プログラムは、コンピュータ１０００によって実行される指令が記述されたプログラムモジュールとして、例えばハードディスクドライブ１０３１に記憶される。例えば、図３に例示したルーティング処理部１１０と同様の情報処理を実行するルーティング処理手順と、転送処理部１２０と同様の情報処理を実行する転送処理手順と、上位レイヤ処理部１３０と同様の情報処理を実行する上位レイヤ処理手順とが記述されたプログラムモジュール１０９３が、ハードディスクドライブ１０３１に記憶される。
【００８６】
また、上記第１の実施形態で説明したルーティングテーブルや転送テーブルが保持する各種データは、プログラムデータとして、例えばメモリ１０１０に記憶される。そして、ＣＰＵ１０２０が、メモリ１０１０やハードディスクドライブ１０３１に記憶されたプログラムモジュール１０９３やプログラムデータ１０９４を必要に応じてＲＡＭ１０１２に読み出し、ルーティング処理手順、転送処理手順、上位レイヤ処理手順を実行する。
【００８７】
なお、送信制御プログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ハードディスクドライブ１０３１に記憶される場合に限られず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ等を介してＣＰＵ１０２０によって読み出されてもよい。あるいは、送信制御プログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ネットワーク（ＬＡＮ（Local  Area  Network）、ＷＡＮ（Wide  Area  Network）等）を介して接続された他のコンピュータに記憶され、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【符号の説明】
【００８８】
１    ネットワークシステム
２    ユーザ端末（通信装置）
２ａ  送信部
２ｂ  受信部
３    Ｗｅｂサーバ（通信装置）
１０ａ  ＩＦ部
１０ｂ  ＩＦ部
１００    ルータ（通信装置）
１１０    ルーティング処理部
１２０    転送処理部
１２１    判定部
１２２    送信部
１３０    上位レイヤ処理部
１３１    収集部
１３２    生成部
【図１】
0005701238.tif 000002
【図２】
0005701238.tif 000003
【図３】
0005701238.tif 000004
【図４】
0005701238.tif 000005
【図５】
0005701238.tif 000006