(57)【要約】【課題】ＱｏＳが正しく適用されうるネットワークトポロジの構築を補助するパケット転送装置を提供すること。【解決手段】第１ポートで受信したメッセージを第２ポートに転送し、第２ポートで受信したメッセージを第１ポートに転送するパケット処理部１１１と、受信したメッセージに、予め定められた第１特定情報が含まれるか否かを判定し、第１特定情報が含まれる場合に、第１ポートで受信したメッセージの送信元である通信端末または第２ポートで受信したメッセージの宛先である通信端末を、ＱｏＳの適用を要求するＱｏＳ端末として検出するＱｏＳ端末検出部１１３と、検出されたＱｏＳ端末が、第１ネットワークを介して第１ポートに接続可能なＱｏＳ端末に関する予め定められた接続条件を満たすか否かを判定し、満たさない場合に、接続条件を満たさないことを表す出力情報を出力する出力部１１４と、を備えた。【選択図】        図２
2010062677.tif 000002
【特許請求の範囲】
【請求項１】
通信端末が接続された第１ネットワークに接続する第１ポートと、
第２ネットワークに接続する第２ポートと、
前記第１ポートで受信したメッセージを前記第２ポートに転送し、前記第２ポートで受信したメッセージを前記第１ポートに転送するメッセージ処理部と、
受信したメッセージに、メッセージの種類を特定可能な予め定められた第１特定情報が含まれるか否かを判定し、前記第１特定情報が含まれる場合に、前記第１ポートで受信したメッセージの送信元である前記通信端末または前記第２ポートで受信したメッセージの宛先である前記通信端末を、ＱｏＳ（Quality of Service）の適用を要求するＱｏＳ端末として検出するＱｏＳ端末検出部と、
前記第１ネットワークを介して前記第１ポートに接続可能なＱｏＳ端末に関する接続条件を記憶する記憶部と、
検出された前記ＱｏＳ端末が、前記接続条件を満たすか否かを判定し、満たさない場合に、前記接続条件を満たさないことを表す出力情報を出力する出力部と、
を備えたことを特徴とするメッセージ転送装置。
【請求項２】
前記第１ポートで受信したメッセージに、メッセージの種類を特定可能な予め定められた第２特定情報が含まれるか否かを判定し、前記第２特定情報が含まれる場合に、前記第１ポートで受信したメッセージの送信元である前記通信端末を、前記第１ネットワークを介して前記第１ポートに接続された前記通信端末として検出する接続検出部をさらに備え、
前記接続条件は、前記第１ネットワークを介して前記第１ポートに接続可能な前記通信端末に関する条件を含み、
前記出力部は、さらに、接続されたと判断された前記通信端末が前記接続条件を満たすか否かを判定し、満たさない場合に、前記出力情報を出力すること、
を特徴とする請求項１に記載のメッセージ転送装置。
【請求項３】
前記第１特定情報は、予め定められた特定プロトコルでメッセージを送信することを表す特定プロトコル情報であり、
前記ＱｏＳ端末検出部は、受信したメッセージのヘッダ情報に、前記特定プロトコル情報が含まれるか否かを判定し、前記特定プロトコル情報が含まれる場合に、前記第１ポートで受信したメッセージの送信元である前記通信端末または前記第２ポートで受信したメッセージの宛先である前記通信端末を前記ＱｏＳ端末として検出すること、
を特徴とする請求項１に記載のメッセージ転送装置。
【請求項４】
前記第１特定情報は、予め定められた特定ＩＰアドレスであり、
前記ＱｏＳ端末検出部は、前記第１ポートで受信したメッセージの宛先ＩＰアドレス、または、前記第２ポートで受信したメッセージの送信元ＩＰアドレスに、前記特定ＩＰアドレスが含まれるか否かを判定し、前記特定ＩＰアドレスが含まれる場合に、前記第１ポートで受信したメッセージの送信元である前記通信端末または前記第２ポートで受信したメッセージの宛先である前記通信端末を前記ＱｏＳ端末として検出すること、
を特徴とする請求項１に記載のメッセージ転送装置。
【請求項５】
前記第１特定情報は、予め定められた特定ポート番号であり、
前記ＱｏＳ端末検出部は、前記第１ポートで受信したメッセージの宛先ポート番号、または、前記第２ポートで受信したメッセージの送信元ポート番号に前記特定ポート番号が含まれるか否かを判定し、前記特定ポート番号が含まれる場合に、前記第１ポートで受信したメッセージの送信元である前記通信端末または前記第２ポートで受信したメッセージの宛先である前記通信端末を前記ＱｏＳ端末として検出すること、
を特徴とする請求項１に記載のメッセージ転送装置。
【請求項６】
前記第１特定情報は、メッセージのヘッダ情報の予め定められた設定項目に設定可能な設定値のうち特定の設定値を表す特定値であり、
前記ＱｏＳ端末検出部は、受信したメッセージのヘッダ情報の前記設定項目の設定値として前記特定値が含まれるか否かを判定し、前記特定値が含まれる場合に、前記第１ポートで受信したメッセージの送信元である前記通信端末または前記第２ポートで受信したメッセージの宛先である前記通信端末を前記ＱｏＳ端末として検出すること、
を特徴とする請求項１に記載のメッセージ転送装置。
【請求項７】
前記第１特定情報は、メッセージで送信されるデータのデータ形式を特定可能な予め定められた特定文字列であり、
前記ＱｏＳ端末検出部は、受信したメッセージに前記特定文字列が含まれるか否かを判定し、前記特定文字列が含まれる場合に、前記第１ポートで受信したメッセージの送信元である前記通信端末または前記第２ポートで受信したメッセージの宛先である前記通信端末を前記ＱｏＳ端末として検出すること、
を特徴とする請求項１に記載のメッセージ転送装置。
【請求項８】
前記接続条件は、前記第１ポートに接続可能な前記ＱｏＳ端末の個数が予め定められた閾値以下であることを表し、
前記出力部は、前記第１ポートに接続された前記ＱｏＳ端末が前記閾値以下であるか否かを判定し、前記閾値以下でない場合に、前記出力情報を出力すること、
を特徴とする請求項１に記載のメッセージ転送装置。
【請求項９】
前記接続条件は、前記第１ポートに、ＱｏＳの適用を要求しない前記通信端末と前記ＱｏＳ端末とを共に接続しないことを表し、
前記出力部は、前記第１ポートに、ＱｏＳの適用を要求しない前記通信端末と前記ＱｏＳ端末とを共に接続しているか否かを判定し、共に接続している場合に、前記出力情報を出力すること、
を特徴とする請求項１に記載のメッセージ転送装置。
【請求項１０】
前記出力部は、検出された前記ＱｏＳ端末が前記接続条件を満たさない場合に、前記接続条件を満たさないことを表すメッセージである前記出力情報を、前記第１ネットワークに送信すること、
を特徴とする請求項１に記載のメッセージ転送装置。
【請求項１１】
前記出力情報を表示可能な表示手段をさらに備え、
前記出力部は、検出された前記ＱｏＳ端末が前記接続条件を満たさない場合に、前記出力情報を前記表示手段に表示すること、
を特徴とする請求項１に記載のメッセージ転送装置。
【請求項１２】
メッセージ処理部が、通信端末が接続された第１ネットワークに接続する第１ポートで受信したメッセージを第２ネットワークに接続する第２ポートに転送し、前記第２ポートで受信したメッセージを前記第１ポートに転送するメッセージ処理ステップと、
ＱｏＳ端末検出部が、受信したメッセージに、メッセージの種類を特定可能な予め定められた第１特定情報が含まれるか否かを判定し、前記第１特定情報が含まれる場合に、前記第１ポートで受信したメッセージの送信元である前記通信端末または前記第２ポートで受信したメッセージの宛先である前記通信端末を、ＱｏＳ（Quality of Service）の適用を要求するＱｏＳ端末として検出するＱｏＳ端末検出ステップと、
出力部が、検出された前記ＱｏＳ端末が、前記第１ネットワークを介して前記第１ポートに接続可能な前記ＱｏＳ端末に関する予め定められた接続条件を満たすか否かを判定し、満たさない場合に、前記接続条件を満たさないことを表す出力情報を出力する出力ステップと、
を備えたことを特徴とする出力方法。
【請求項１３】
コンピュータを、
通信端末が接続された第１ネットワークに接続する第１ポートで受信したメッセージを第２ネットワークに接続する第２ポートに転送し、前記第２ポートで受信したメッセージを前記第１ポートに転送するメッセージ処理部と、
受信したメッセージに、メッセージの種類を特定可能な予め定められた第１特定情報が含まれるか否かを判定し、前記第１特定情報が含まれる場合に、前記第１ポートで受信したメッセージの送信元である前記通信端末または前記第２ポートで受信したメッセージの宛先である前記通信端末を、ＱｏＳ（Quality of Service）の適用を要求するＱｏＳ端末として検出するＱｏＳ端末検出部と、
検出された前記ＱｏＳ端末が、前記第１ネットワークを介して前記第１ポートに接続可能な前記ＱｏＳ端末に関する予め定められた接続条件を満たすか否かを判定し、満たさない場合に、前記接続条件を満たさないことを表す出力情報を出力する出力部と、
として機能させる出力プログラム。
【請求項１４】
通信端末が接続された第１ネットワークに接続する第１ポートと、
第２ネットワークに接続する第２ポートと、
前記第１ポートで受信したメッセージを前記第２ポートに転送し、前記第２ポートで受信したメッセージを前記第１ポートに転送するメッセージ処理部と、
前記第１ポートで受信したメッセージに、メッセージの種類を特定可能な予め定められた特定情報が含まれるか否かを判定し、前記特定情報が含まれる場合に、前記第１ポートで受信したメッセージの送信元である前記通信端末を、前記第１ネットワークを介して前記第１ポートに接続された前記通信端末として検出する接続検出部と、
前記第１ネットワークを介して前記第１ポートに接続可能な通信端末に関する接続条件を記憶する記憶部と、
接続されたと判断された前記通信端末が、前記接続条件を満たすか否かを判定し、満たさない場合に、前記接続条件を満たさないことを表す出力情報を出力する出力部と、
を備えたことを特徴とするメッセージ転送装置。
【請求項１５】
前記記憶部は、さらに、ＱｏＳ（Quality of Service）の適用を要求する前記通信端末であるＱｏＳ端末を識別する端末識別情報を記憶し、
前記接続条件は、前記第１ポートに接続可能な前記ＱｏＳ端末に関する条件を含み、
前記出力部は、さらに、接続されたと判断された前記通信端末を識別する端末識別情報が前記記憶部に記憶されているか否かを判定し、記憶されている場合に、接続されたと判断された前記通信端末が、前記接続条件に含まれる前記第１ポートに接続可能な前記ＱｏＳ端末に関する条件を満たすか否かを判定し、満たさない場合に、前記接続条件を満たさないことを表す出力情報を出力すること、
を特徴とする請求項１４に記載のメッセージ転送装置。
【請求項１６】
前記特定情報は、予め定められた特定プロトコルでメッセージを送信することを表す特定プロトコル情報であり、
前記接続検出部は、受信したメッセージのヘッダ情報に、前記特定プロトコル情報が含まれるか否かを判定し、前記特定プロトコル情報が含まれる場合に、前記第１ポートで受信したメッセージの送信元である前記通信端末を、前記第１ネットワークを介して前記第１ポートに接続された前記通信端末として検出すること、
を特徴とする請求項１４に記載のメッセージ転送装置。
【請求項１７】
前記接続条件は、前記第１ポートに接続可能な前記通信端末の個数が予め定められた第１閾値以下であることを表し、
前記出力部は、前記第１ポートに接続された前記通信端末が前記第１閾値以下であるか否かを判定し、前記第１閾値以下でない場合に、前記出力情報を出力すること、
を特徴とする請求項１４に記載のメッセージ転送装置。
【請求項１８】
前記接続検出部は、さらに、前記通信端末を含む通信装置が前記第１ポートに接続されたときに出力される電気信号を検出した日時を取得し、
前記接続条件は、前記電気信号を検出した日時から、前記特定情報を含むメッセージを受信したときの日時までの期間が予め定められた第２閾値以下であることを表し、
前記出力部は、前記電気信号を検出した日時から、前記特定情報を含むメッセージを受信したときの日時までの期間を算出し、算出した期間が前記第２閾値以下であるか否かを判定し、前記第２閾値以下でない場合に、前記出力情報を出力すること、
を特徴とする請求項１４に記載のメッセージ転送装置。
【請求項１９】
前記出力部は、前記通信端末が前記接続条件を満たさない場合に、前記接続条件を満たさないことを表すメッセージである前記出力情報を、前記第１ネットワークに送信すること、
を特徴とする請求項１４に記載のメッセージ転送装置。
【請求項２０】
前記出力情報を表示可能な表示手段をさらに備え、
前記出力部は、前記通信端末が前記接続条件を満たさない場合に、前記出力情報を前記表示手段に表示すること、
を特徴とする請求項１４に記載のメッセージ転送装置。
【請求項２１】
メッセージ処理部が、通信端末が接続された第１ネットワークに接続する第１ポートで受信したメッセージを第２ネットワークに接続する第２ポートに転送し、前記第２ポートで受信したメッセージを前記第１ポートに転送するメッセージ処理ステップと、
接続検出部が、前記第１ポートで受信したメッセージに、メッセージの種類を特定可能な予め定められた特定情報が含まれるか否かを判定し、前記特定情報が含まれる場合に、前記第１ポートで受信したメッセージの送信元である前記通信端末を、前記第１ネットワークを介して前記第１ポートに接続された前記通信端末として検出する接続検出ステップと、
出力部が、接続されたと判断された前記通信端末が、前記第１ネットワークを介して前記第１ポートに接続可能な前記通信端末に関する予め定められた接続条件を満たすか否かを判定し、満たさない場合に、前記接続条件を満たさないことを表す出力情報を出力する出力ステップと、
を備えたことを特徴とする出力方法。
【請求項２２】
コンピュータを、
通信端末が接続された第１ネットワークに接続する第１ポートで受信したメッセージを第２ネットワークに接続する第２ポートに転送し、前記第２ポートで受信したメッセージを前記第１ポートに転送するメッセージ処理部と、
前記第１ポートで受信したメッセージに、メッセージの種類を特定可能な予め定められた特定情報が含まれるか否かを判定し、前記特定情報が含まれる場合に、前記第１ポートで受信したメッセージの送信元である前記通信端末を、前記第１ネットワークを介して前記第１ポートに接続された前記通信端末として検出する接続検出部と、
接続されたと判断された前記通信端末が、前記第１ネットワークを介して前記第１ポートに接続可能な前記通信端末に関する予め定められた接続条件を満たすか否かを判定し、満たさない場合に、前記接続条件を満たさないことを表す出力情報を出力する出力部と、
として機能させる出力プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、サービス品質（ＱｏＳ：Quality of Service）を保証しつつメッセージを転送する装置、出力方法および出力プログラムに関する。
【背景技術】
【０００２】
ネットワークでの伝送品質を保証する技術としてＱｏＳが知られている。ＩＰネットワークでは、高精細な動画像または音声を伝送する際にＱｏＳが適用されている。これにより、伝送帯域、伝送遅延、およびパケット破棄率などの品質条件に対して、一定の基準を満たすネットワークが構築できる。
【０００３】
一般にＱｏＳは、ＱｏＳ機能を備える通信端末（ノード）によって実現される。例えば、ノードがネットワークにパケットを送信するとき、および、ノード内でパケットが処理されるときに、パケットごとに処理の優劣が決定される。パケットは、より優先度の高いものから順番に処理されるため、特定の通信に対するＱｏＳが実現できる。
【０００４】
ＱｏＳを正しく機能させて所望の通信品質を確保するためには、ＱｏＳの対象となるパケットを検出する処理、および、パケットに対して適用するルールの決定が重要である。
【０００５】
特許文献１では、ＰＬＣ（Power Line Communications）を用いたホームネットワークで、ＰＬＣアダプタがＱｏＳを適用するパケットを検出した際に、自動的にＱｏＳの適用を開始する技術が提案されている。また特許文献１では、ＱｏＳが適用できなかった場合に、ＰＬＣアダプタのＬＥＤ（Light Emitting Diode）を点滅させるなどして、その旨を通知することが開示されている。
【０００６】
特許文献２では、事前に設定される、または、ネットワークからダウンロードされるパケット群の識別条件と処理ルールとを用いて、ノードを通過するパケットから識別条件を満たすパケットを検出し、検出されたパケットに対して処理ルールを適用することでＱｏＳを実現する技術が提案されている。
【０００７】
【特許文献１】特開２００８−３５５１０
【特許文献２】特開２００６−１７４３５０
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献１および特許文献２などの従来の方法では、ＱｏＳの適用を要求するノードに対して、適切にＱｏＳを適用できない場合があった。これは、従来の方法では、主に利用可能な帯域または利用可能な記憶領域などのようにＱｏＳを実現する装置の内部の状態にしたがってＱｏＳの適用可否を判定していることに起因する。
【０００９】
すなわち、このような方法では、例えば、ＱｏＳの適用を要求するノードが属するネットワークに、他のノードがどのような接続状態で接続されているかといったノードの外部の状況に対応してＱｏＳの適用可否を判定することができない。このため、同じネットワークに接続される他のノードの動作状態によっては、要求を満たすＱｏＳを実現できない場合があった。
【００１０】
例えば、イーサネット（登録商標）により構成されたＬＡＮ（Local Area Network）が、ＱｏＳ機能を有するルータによって広域ネットワークに接続していると仮定する。この場合、広域ネットワークからＱｏＳが確保された通信が到達すれば、ルータはそれを維持してＬＡＮに転送することができる。ところが、ＬＡＮ内に大量のパケットを送信するノードが接続している場合、ルータが適切な条件でパケットを転送しても、ＬＡＮ内のパケットにより通信が乱される可能性が高い。結果として、ＱｏＳが適用できなくなる。
【００１１】
このように、ＱｏＳ型の通信を行うノードとベストエフォート型の通信を行うノードが混在していると、各々のノードが所望の通信品質を得られなくなる可能性がある。また、単にＱｏＳが適用されないだけでなく、ＱｏＳ型ノードが多数接続したケースでは、ベストエフォート型の通信が全くできなくなるという可能性もある。
【００１２】
このような問題は、ＬＡＮのトポロジに関係なくＱｏＳが設定されることが原因で生じる。特に、ＱｏＳ型通信を用いてサービスを提供するサービス提供者が想定しなかった環境でノードが通信を行うことが問題となる。
【００１３】
また、ネットワークやコンピュータの専門的な知識がないユーザが、このようにネットワークトポロジで問題が生じていることを理解することは困難である。例えば、すべてのノードがＬＡＮに同じように接続され、通信も可能な状態にあるにも関わらず、動画像や音声に乱れが生じるといった状況で、この状況の原因をユーザが追究することは極めて困難である。
【００１４】
本発明は、上記に鑑みてなされたものであって、ＱｏＳが正しく適用されうるネットワークトポロジの構築を補助することができる装置、方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１５】
上述した課題を解決し、目的を達成するために、本発明は、通信端末が接続された第１ネットワークに接続する第１ポートと、第２ネットワークに接続する第２ポートと、前記第１ポートで受信したメッセージを前記第２ポートに転送し、前記第２ポートで受信したメッセージを前記第１ポートに転送するメッセージ処理部と、受信したメッセージに、メッセージの種類を特定可能な予め定められた第１特定情報が含まれるか否かを判定し、前記第１特定情報が含まれる場合に、前記第１ポートで受信したメッセージの送信元である前記通信端末または前記第２ポートで受信したメッセージの宛先である前記通信端末を、ＱｏＳ（Quality of Service）の適用を要求するＱｏＳ端末として検出するＱｏＳ端末検出部と、前記第１ネットワークを介して前記第１ポートに接続可能なＱｏＳ端末に関する接続条件を記憶する記憶部と、検出された前記ＱｏＳ端末が、前記接続条件を満たすか否かを判定し、満たさない場合に、前記接続条件を満たさないことを表す出力情報を出力する出力部と、を備えたことを特徴とする。
【００１６】
また、本発明は、上記装置を実行することができる方法およびプログラムである。
【００１７】
また、本発明は、通信端末が接続された第１ネットワークに接続する第１ポートと、
第２ネットワークに接続する第２ポートと、前記第１ポートで受信したメッセージを前記第２ポートに転送し、前記第２ポートで受信したメッセージを前記第１ポートに転送するメッセージ処理部と、前記第１ポートで受信したメッセージに、メッセージの種類を特定可能な予め定められた特定情報が含まれるか否かを判定し、前記特定情報が含まれる場合に、前記第１ポートで受信したメッセージの送信元である前記通信端末を、前記第１ネットワークを介して前記第１ポートに接続された前記通信端末として検出する接続検出部と、前記第１ネットワークを介して前記第１ポートに接続可能な通信端末に関する接続条件を記憶する記憶部と、接続されたと判断された前記通信端末が、前記接続条件を満たすか否かを判定し、満たさない場合に、前記接続条件を満たさないことを表す出力情報を出力する出力部と、を備えたことを特徴とする。
【００１８】
また、本発明は、上記装置を実行することができる方法およびプログラムである。
【発明の効果】
【００１９】
本発明によれば、ＱｏＳが正しく適用されうるネットワークトポロジの構築を補助することができるという効果を奏する。
【発明を実施するための最良の形態】
【００２０】
以下に添付図面を参照して、この発明にかかる装置、方法およびプログラムの最良な実施の形態を詳細に説明する。
【００２１】
（第１の実施の形態）
第１の実施の形態にかかるメッセージ転送装置は、所定のメッセージ（パケット）の受信により通信端末（ノード）の接続を検出するとともに、ＱｏＳの適用を要求するノード（以下、ＱｏＳノードという）を検出する。そして、検出されたノードおよびＱｏＳノードが予め定められた接続条件を満たすか否かを判定し、満たさない場合に、接続されたノードに接続条件を満たさないことを通知する。
【００２２】
図１は、第１の実施の形態にかかるメッセージ転送装置としてのパケット転送装置を含む通信システムの一形態を示す図である。図１に示すように、第１の実施の形態にかかるパケット転送装置１００は、ノードが接続されるネットワークであるエンドサイト３００と、広域ネットワーク２００とを接続している。
【００２３】
パケット転送装置１００は、例えば、企業内または家庭内などで構築されるエンドサイト３００と、通信事業者が提供する広域ネットワーク２００との境界に設置されるＨＧＷ（Home Gate Way）などによって構成することができる。なお、適用可能な装置はＨＧＷに限るものではなく、ＱｏＳノードからのメッセージ（パケット）を転送する機能を備えた装置であればあらゆる装置に適用できる。
【００２４】
広域ネットワーク２００は、例えば動画像や音声などのコンテンツを配信するサーバ（図示せず）などを接続している。エンドサイト３００内の各ノードは、パケット転送装置１００を介して広域ネットワーク２００のサーバにアクセスすることにより、各種サービスの提供を受けることができる。
【００２５】
次に、パケット転送装置１００の構成について図２を用いて説明する。図２は、第１の実施の形態にかかるパケット転送装置１００のブロック図である。同図に示すように、パケット転送装置１００は、ＷＡＮポート１０１と、ＬＡＮポート１０２ａ〜１０２ｃと、記憶部１２０と、パケット処理部１１１と、接続検出部１１２と、ＱｏＳ端末検出部１１３と、出力部１１４と、を備えている。
【００２６】
ＷＡＮポート１０１は、広域ネットワーク２００と接続するポートである。ＬＡＮポート１０２ａ〜１０２ｃは、エンドサイト３００と接続するポートである。エンドサイト３００に含まれる各ノードは、ＬＡＮポート１０２ａ〜１０２ｃのいずれかのポートに接続される。ＷＡＮポート１０１およびＬＡＮポート１０２は、それぞれ広域ネットワーク２００およびエンドサイト３００に接続可能な適切な通信方式に対応していればよい。
【００２７】
例えば、ＬＡＮポート１０２は、１００ＢＡＳＥ−ＴＸや１０００ＢＡＳＥ−ＴなどのＩＥＥＥ  ８０２．３関連の規格や８０２．１１ｂ／ｇなどのＩＥＥＥ  ８０２．１１関連の規格に対応したものを用いることができる。ＷＡＮポート１０１も、同様にＩＥＥＥ８０２．３規格を適用できる。ＷＡＮポート１０１が、ＰＰＰ  ｏｖｅｒ  Ｅｔｈｅｒｎｅｔ（登録商標）などの論理的なインターフェイスを用いるように構成してもよい。
【００２８】
なお、ＬＡＮポート１０２ａ〜１０２ｃは同様の構成を備えるため、以下では単にＬＡＮポート１０２という場合がある。また、ＬＡＮポート１０２の個数は３つに限られるものではない。また、ＬＡＮポート１０２のそれぞれは、一意に識別可能なポート識別子が割り当てられている。以下では、ＬＡＮポート１０２ａ、１０２ｂ、および１０２ｃに、パケット転送装置１００内で管理する通し番号である１、２、および３がそれぞれポート識別子として割り当てられているものとして説明する。ポート識別子は、各ＬＡＮポート１０２を識別可能であればどのような情報を用いてもよい。
【００２９】
また、同図では、ＱｏＳを実現するポートと通常のポートとを分けていないが、この区別を設けるように構成してもよい。さらに、直接管理できるＬＡＮポート１０２の先にスイッチングハブなどのリピータを内蔵するように構成してもよい。
【００３０】
記憶部１２０は、パケット転送装置１００の各種処理で利用するデータを記憶する。例えば、記憶部１２０は、ＱｏＳを適用するために必要なノードの接続形態に関する条件（接続条件）を定めたトポロジ条件リスト１２１を記憶している。また、記憶部１２０は、後述する接続検出部１１２により検出されたノードの情報を含む接続ノードリスト１２２、および、ＱｏＳ端末検出部１１３により検出されたノードの情報を含むＱｏＳノードリスト１２３を記憶する。
【００３１】
図３は、記憶部１２０に記憶されるトポロジ条件リスト１２１のデータ構造の一例を示す図である。図３に示すように、記憶部１２０は、番号と、条件とを対応づけたトポロジ条件リスト１２１を記憶している。番号は、説明のために便宜上、設けたものである。同図では、「ＬＡＮポート１にはＱｏＳ型通信のノードとベストエフォート型通信のノードは混在できない」、および、「ＬＡＮポート１には１台のみ接続可」の２つの条件が指定されている。ＬＡＮポート１とは、ポート識別子が１であるＬＡＮポート（ＬＡＮポート１０２ａ）を意味する。
【００３２】
なお、説明の都合上、同図ではトポロジ条件を自然言語で記述しているが、トポロジ条件は、パケット転送装置１００で利用可能な形式に適宜変換されてトポロジ条件リスト１２１に保存されるものとする。
【００３３】
また、トポロジ条件リスト１２１は、以下のような方法により設定することができる。第一の方法は、パケット転送装置１００のユーザが、操作用インターフェイス（図示せず）を介して設定する方法である。ユーザは、広域ネットワーク２００から指定された接続ルールに基づいて条件を設定してもよいし、独自の基準で自由に条件を設定してもよい。
【００３４】
第二の方法は、広域ネットワーク２００上に存在するサーバ装置からダウンロードすることで設定する方法である。接続先の広域ネットワーク２００が複数存在し、条件をダウンロードするサーバが複数存在する場合には、各サーバからそれぞれ条件をダウンロードし、複数の条件を論理的に組み合わせて設定する条件を生成してもよい。または、複数のサーバから１つのサーバを選択し、そのサーバにより指定される条件を使用してもよい。
【００３５】
第三の方法は、事前に定められた１つ以上の条件を事前に記憶部１２０に設定する方法である。例えば、特定のＩＳＰに向けた設定を事前に用意しておき、ユーザが選択したＩＳＰ、または接続先のドメイン名などから動的に決定したＩＳＰに応じた条件を選択するように構成してもよい。
【００３６】
図４は、接続ノードリスト１２２のデータ構造の一例を示す図である。図４に示すように、接続ノードリスト１２２は、ノードを特定可能なノード識別子と、接続を検出したＬＡＮポート１０２のポート識別子とを含んでいる。
【００３７】
同図の例は、ポート識別子１のＬＡＮポート１０２ａに１つ、ポート識別子２のＬＡＮポート１０２ｂに２つ、ポート識別子３のＬＡＮポート１０２ｃに１つのノードが接続されていることを示している。
【００３８】
図５は、ＱｏＳノードリスト１２３のデータ構造の一例を示す図である。図５に示すように、ＱｏＳノードリスト１２３は、ＱｏＳを適用した通信を行うノードのノード識別子と、当該ノードが接続しているポートのポート識別子とを含んでいる。
【００３９】
なお、図４および図５では、ノード識別子としてノードのＭＡＣアドレスを利用した例が示されている。ノード識別子はＭＡＣアドレスに限られるものではなく、ノードを識別可能なものであればあらゆる情報を利用できる。
【００４０】
また、接続ノードリスト１２２とＱｏＳノードリスト１２３とを共に記憶部１２０に保存しているが、それぞれ別の記憶部に保存するように構成してもよい。さらに、全てのＬＡＮポート１０２に対して１つの接続ノードリスト１２２およびＱｏＳノードリスト１２３を作成しているが、ＬＡＮポート１０２ごとに別々のリストを作成するように構成してもよい。全てのポートに対して１つのリストを作成する場合には、ポート識別子との対応関係を維持できるようにしなければならない。以下では、接続ノードリスト１２２およびＱｏＳノードリスト１２３を１つの記憶部１２０で管理する場合を例に説明する。
【００４１】
なお、記憶部１２０は、ＨＤＤ（Hard Disk Drive）、光ディスク、メモリカード、ＲＡＭ（Random Access Memory）などの一般的に利用されているあらゆる記憶媒体により構成することができる。
【００４２】
図２に戻り、パケット処理部１１１は、ＷＡＮポート１０１とＬＡＮポート１０２ａ〜１０２ｃとに到達したパケットを処理する。例えば、パケット処理部１１１は、ＷＡＮポート１０１に到達したパケットを受信し、受信したパケットをパケット内で指定された宛先アドレスに対応するノードが接続されたＬＡＮポート１０２に転送する。また、パケット処理部１１１は、ＬＡＮポート１０２に到達したパケットを受信し、パケット内で広域ネットワーク２００内のサーバ等のアドレスが指定されている場合、受信したパケットをＷＡＮポート１０１に転送する。
【００４３】
接続検出部１１２は、ＬＡＮポート１０２に接続されたノードを検出する。具体的には、接続検出部１１２は、まず、ＬＡＮポート１０２で受信したパケットを監視してＬＡＮポート１０２へのノードの接続に伴う所定のパケットを検出する。接続検出部１１２は、ノードが通信に先立って送信するパケットを監視対象とする。より具体的には、接続検出部１１２は、ＩＰｖ４  ＡＲＰパケットやＩＰｖ６  Ｎｅｉｇｈｂｏｒ  Ｄｉｓｃｏｖｅｒｙのパケットを監視対象とする。そして、接続検出部１１２は、監視対象のパケット（以下、監視対象パケットという）を受信した場合に、受信したパケットの送信元のノードが接続されたことを検出する。
【００４４】
ＱｏＳ端末検出部１１３は、パケット処理部１１１により転送されるパケットを監視して、メッセージの種類を特定可能な予め定められた特定情報が含まれるか否かによって、ＬＡＮポート１０２に接続されたノードからＱｏＳノードを検出する。ＱｏＳ端末検出部１１３によるＱｏＳノード検出処理の詳細については後述する。
【００４５】
出力部１１４は、接続検出部１１２によって検出されたノード、および、ＱｏＳ端末検出部１１３によって検出されたＱｏＳノードが、トポロジ条件リスト１２１に記憶された条件を満たすか否かを判定し、条件を満たさない場合に、条件を満たさないことを表す出力情報を出力する。例えば、出力部１１４は、出力情報として、条件を満たさないことを表す通知メッセージを、接続が検出されたノードに対してＬＡＮポート１０２を介して通知する。出力部１１４は、直接ＬＡＮポート１０２に接続して通知メッセージを送信する。出力部１１４が、パケット処理部１１１を介して通知メッセージを送信するように構成してもよい。
【００４６】
また、出力部１１４が、図示しないＬＥＤ等を点滅させることにより出力情報を出力するように構成してもよい。また、ＬＥＤ以外の表示用のインターフェイス（表示手段）を備え、出力部１１４が、このインターフェイスに出力情報を出力するように構成してもよい。
【００４７】
なお、パケット転送装置１００が、表示用のインターフェイスや、設定のために利用可能なユーザインターフェイスとともに、これらのインターフェイスを制御するプロセッサを備えるように構成してもよい。
【００４８】
次に、このように構成された第１の実施の形態にかかるパケット転送装置１００によるメッセージ転送処理について図６を用いて説明する。図６は、第１の実施の形態におけるメッセージ転送処理の全体の流れを示すシーケンス図である。
【００４９】
同図に示すように、本実施の形態のパケット転送装置１００では、パケット処理部１１１が単に受信したパケットを転送するだけでなく（ステップＳ６０１、ステップＳ６０２、ステップＳ６１５）、受信したパケットを用いて、ＬＡＮポート１０２に接続されたノードがＱｏＳを適用するための接続条件を満たすかを判定し、判定結果を通知する処理が追加される（ステップＳ６０３〜ステップＳ６１４）。
【００５０】
追加された処理は、大きく２つの部分から構成される。前半部分（ステップＳ６０３〜ステップＳ６０８）は、ＬＡＮポート１０２に接続されたノードを検出する接続ノード検出処理である。後半部分（ステップＳ６０９〜ステップＳ６１４）は、ＬＡＮポート１０２に接続したノードによるＱｏＳが必要な通信の開始またはＱｏＳが必要な通信に先立つ通信を検出することにより、接続されたノードがＱｏＳノードであることを検出するＱｏＳノード検出処理である。
【００５１】
まず、ＬＡＮポート１０２のいずれかがパケットを受信すると（ステップＳ６０１）、パケット処理部１１１に受信したパケットが通知される（ステップＳ６０２）。パケット処理部１１１は、パケットをさらに接続検出部１１２に通知する（ステップＳ６０３）。
【００５２】
接続検出部１１２は、受け取ったパケットが監視対象パケットであるか否かを判断する（ステップＳ６０４）。例えば、接続検出部１１２は、受信したパケットが、監視対象パケットとして予め定められたＩＰｖ４  ＡＲＰパケットまたはＩＰｖ６  Ｎｅｉｇｈｂｏｒ  Ｄｉｓｃｏｖｅｒｙパケットであるかを判断する。
【００５３】
接続検出部１１２は、ＡＲＰパケットか否かを、例えば、Ｅｔｈｅｒｎｅｔ（登録商標）  Ｔｙｐｅフィールドが「０ｘ０８０６」であるか否かによって判断できる。また、接続検出部１１２が、ヘッダ情報中の宛先ＭＡＣアドレスが「ff:ff:ff:ff:ff:ff」であるか否かによってＡＲＰパケットか否かを判断してもよい。また、接続検出部１１２は、例えば、ＩＣＭＰｖ６  Ｔｙｐｅが特定値であることを確認することによってＩＰｖ６  Ｎｅｉｇｈｂｏｒ  Ｄｉｓｃｏｖｅｒｙパケットであることを判断できる。このように、接続検出部１１２は、受信したパケットが特定のプロトコルのパケットであるか否かを、検出対象のプロトコルごとに定められた特定の情報（特定プロトコル情報）が含まれるか否かによって判断する。
【００５４】
監視対象パケットではないと判定された場合（ステップＳ６０４：ＮＯ）、接続ノード検出処理を終了して次のパケットの受信に備える。
【００５５】
監視対象パケットであると判定された場合（ステップＳ６０４：ＹＥＳ）、接続検出部１１２は、図４に示した接続ノードリスト１２２に追加するためのエントリを作成する（ステップＳ６０５）。上述したように、接続ノードリスト１２２の各エントリは、ノード識別子とポート識別子とを含んでいる。この２つの識別子は、パケット処理部１１１により抽出または識別されて接続検出部１１２に伝えられる。
【００５６】
パケット処理部１１１は、受信したパケットのイーサネット（登録商標）ヘッダに含まれる送信元ＭＡＣアドレスフィールドからＭＡＣアドレスを抽出することができる。また、パケット処理部１１１は、ＬＡＮポート１０２ａ〜１０２ｃからパケットを受け取る際に、ＬＡＮポート１０２ａ〜１０２ｃごとに別々の受付手段（例えば受信パケットキュー）を設けることで、受信したＬＡＮポート１０２を特定できる。
【００５７】
エントリを作成後、接続検出部１１２は、作成したエントリを記憶部１２０に保存する（ステップＳ６０６）。
【００５８】
なお、既に記憶部１２０に登録済みのノードを検出した場合、接続検出部１１２が既存のエントリを上書きするように構成すれば、重複したエントリの作成を防ぐことができる。また、エントリを作成する前に、接続検出部１１２が、検出されたノードが記憶部１２０に登録済みか否かを確認し、登録済みの場合はエントリの作成と保存（ステップＳ６０５、ステップＳ６０６）の処理を省略するように構成してもよい。
【００５９】
接続ノードリスト１２２への登録が完了すると、接続検出部１１２は、出力部１１４に対して条件判定を依頼する（ステップＳ６０７）。条件判定とは、検出したノードがトポロジ条件リスト１２１の条件を満たすか否かを判定することを意味する。出力部１１４は、接続検出部１１２から依頼を受けると、条件を判定し、条件を満たさない場合に検出したノードに通知する条件判定・通知処理を実行する（ステップＳ６０８）。条件判定・通知処理の詳細については後述する。
【００６０】
次に、パケット処理部１１１は、受信したパケットをＱｏＳ端末検出部１１３に通知する（ステップＳ６０９）。
【００６１】
なお、パケット処理部１１１は、前半部分の接続ノード検出処理と同様に、ノード識別子とポート識別子とを抽出し、ＱｏＳ端末検出部１１３に通知する。パケット処理部１１１は、後半部分のＱｏＳノード検出処理で、接続ノード検出処理と異なるノード識別子を用いるように構成してもよい。例えば、接続ノード検出処理ではＭＡＣアドレスを利用し、ＱｏＳノード検出処理ではＩＰアドレスを利用するようにしてもよい。接続ノード検出処理では、例えばＡＲＰパケットを検出するため、ＭＡＣアドレスを抽出するほうが効率的であるのに対し、その他の場合はＩＰアドレスを抽出するほうが効率的な場合があるためである。
【００６２】
ただし、異なるノード識別子を用いる場合には、両者の対応関係を保持する機構を備え、出力部１１４から利用できる構成にする必要がある。この機構としては、例えば、ＭＡＣアドレスとＩＰｖ４アドレスとの対応であればＡＲＰテーブルを利用できる。また、ＭＡＣアドレスとＩＰｖ６アドレスとの対応であれば近隣ノードテーブルを利用できる。
【００６３】
ＱｏＳ端末検出部１１３は、受け取ったパケットがＱｏＳの適用が必要な通信に属するパケット、または、ＱｏＳの適用が必要な通信に先立つ通信に属するパケットか否かを判断する（ステップＳ６１０）。本ステップで行う判断の詳細については後述する。
【００６４】
受け取ったパケットがＱｏＳの適用が必要な通信に属するパケット、または、ＱｏＳの適用が必要な通信に先立つ通信に属するパケットでないと判断された場合（ステップＳ６１０：ＮＯ）、ＱｏＳノード検出処理を終了し、次のパケットの受信に備える。
【００６５】
受け取ったパケットがＱｏＳの適用が必要な通信に属するパケット、または、ＱｏＳの適用が必要な通信に先立つ通信に属するパケットであると判断された場合（ステップＳ６１０：ＹＥＳ）、ＱｏＳ端末検出部１１３は、図５に示したＱｏＳノードリスト１２３に追加するためのエントリを作成する（ステップＳ６１１）。エントリを作成後、ＱｏＳ端末検出部１１３は、作成したエントリを記憶部１２０に保存する（ステップＳ６１２）。
【００６６】
なお、ＱｏＳノードリスト１２３に必要なノードの情報は、受信したパケットを構成する各ヘッダから抽出する。一部の情報は受信したパケットに含まれない場合があるため、このような場合は、必要に応じてパケット転送装置１００内に事前に蓄積された情報を用いる。
【００６７】
例えば、ＭＡＣアドレスをＱｏＳノードリスト１２３のノード識別子として使用し、ＷＡＮポート１０１から受信したパケットを対象としてＱｏＳノード検出処理を実行する場合を考える。一般にＭＡＣアドレスは、イーサネット（登録商標）ヘッダから取得できる。しかし、このような場合には、パケットの受信先のノードのＭＡＣアドレス、すなわちＬＡＮポート１０２に接続してＱｏＳ型通信の端点となるノードのＭＡＣアドレスは、受信したパケット中に含まれない。このため、ＱｏＳ端末検出部１１３は、受信したパケットから受信先ＩＰアドレスを取得し、パケット転送装置１００に搭載されたＡＲＰテーブルまたは近隣ノードテーブルを用いて、取得したＩＰアドレスに対応するＭＡＣアドレスを取得する必要がある。
【００６８】
また、上記のような場合に、ポート識別子としてＷＡＮポート１０１の識別子を用いることができない。このため、ＱｏＳ端末検出部１１３は、受信先のノードが接続されているＬＡＮポート１０２のポート識別子を、例えばＡＲＰテーブルを参照して特定する必要がある。
【００６９】
ＱｏＳノードリスト１２３への登録が完了すると、ＱｏＳ端末検出部１１３は、出力部１１４に対して条件判定を依頼する（ステップＳ６１３）。そして、依頼を受けた出力部１１４は、ステップＳ６０８と同様に条件判定・通知処理を実行する（ステップＳ６１４）。条件判定・通知処理の詳細については後述する。
【００７０】
なお、条件判定・通知処理の後、パケット処理部１１１は、受信したパケットを当該パケットで指定された宛先に向けて転送する（ステップＳ６１５）。条件判定・通知処理で条件を満たさないと判定された場合にパケットを転送しないように構成してもよい。
【００７１】
また、同図では、接続ノード検出処理の後にＱｏＳノード検出処理を実行していたが、実行順序はこれに限られず、ＱｏＳノード検出処理を先に実行してもよいし、両処理を並行して実行するように構成してもよい。
【００７２】
また、同図では、パケット処理部１１１は受信したパケットをそのまま接続検出部１１２およびＱｏＳ端末検出部１１３に渡し、接続検出部１１２およびＱｏＳ端末検出部１１３が、受信したパケットが所定のパケットであるか否かの判定をそれぞれ実行していた。これに対し、パケット処理部１１１がパケットフィルタを備え、パケットフィルタによって受信したパケットが所定のパケットであるか否かを判定するように構成してもよい。
【００７３】
次に、ステップＳ６１０の、ＱｏＳの適用が必要な通信のパケットまたはＱｏＳの適用が必要な通信に先立つ通信のパケットを検出する処理の詳細について説明する。
【００７４】
ＱｏＳの適用が必要な通信とは、当該通信を用いるアプリケーションにより予めＱｏＳの適用が好ましいまたは必要とされている通信である。例えば、リアルタイムに音声情報を送受信するＶｏＩＰアプリケーションや、動画像を受信するＩＰＴＶアプリケーションがこのようなアプリケーションに該当する。
【００７５】
ＱｏＳ端末検出部１１３は、パケットヘッダを解析してプロトコルとポート番号を得ることにより、このようなアプリケーションが利用する通信のパケットであることを特定する。すなわち、ＱｏＳ端末検出部１１３は、解析により得られたプロトコルおよびポート番号が、ＶｏＩＰアプリケーションやＩＰＴＶアプリケーションで利用するプロトコルおよびポート番号として予め定められた特定のＩＰアドレス（特定ＩＰアドレス）および特定のポート番号（特定ポート番号）と一致していれば、該パケットはＱｏＳの適用が必要な通信に属していると判断する。例えば、ＲＴＰ（Real-time Transport Protocol）、およびＲＴＳＰ（Real Time Streaming Protocol）などがこのようなプロトコルに該当する。ＱｏＳ端末検出部１１３は、受信したパケットがＲＴＰ／ＲＴＳＰを用いて構成されている場合には、当該パケットはＶｏＩＰアプリケーションまたはＩＰＴＶアプリケーションが扱うパケットと判断することができる。
【００７６】
多用途に利用されるプロトコルの場合には、ＩＰヘッダやトランスポート層のヘッダだけではその中で伝送されるデータを特定できない場合がある。例えば、ＨＴＴＰはテキストデータや画像データに加え、音声データや動画像データを伝送する際にも利用されている。一方、伝送データの形式は、ＨＴＴＰヘッダのＣｏｎｔｅｎｔ−Ｔｙｐｅフィールドを参照することで取得可能である。そこで、ＱｏＳ端末検出部１１３が、Ｃｏｎｔｅｎｔ−Ｔｙｐｅフィールドを参照してＱｏＳの適用が必要な通信か否かを判断してもよい。例えば、ＱｏＳ端末検出部１１３は、Ｃｏｎｔｅｎｔ−Ｔｙｐｅフィールドの設定値が音声データや動画像データを表す特定値である場合に、ＱｏＳの適用が必要な通信であると判断する。
【００７７】
Ｃｏｎｔｅｎｔ−Ｔｙｐｅフィールドが含まれないパケットの場合は、このフィールド以外の情報によってＱｏＳの適用が必要な通信か否かを判定する必要がある。例えば、エンドサイト３００内のノードが、広域ネットワーク２００内のサーバに対して動画像の送信を要求する要求パケットには、上記のようなＣｏｎｔｅｎｔ−Ｔｙｐｅフィールドが含まれない。代わりに、この要求パケットにはデータを特定するＵＲＩが含まれる。このＵＲＩには、習慣により、ＭＰＥＧ動画であれば「ｍｐｇ」、ＭＰ３音声であれば「ｍｐ３」というように、そのデータのデータ形式を特定可能な特定文字列が含まれることが多い。したがって、ＱｏＳ端末検出部１１３が、このような特定文字列を検索することにより、要求パケットからＱｏＳの適用が必要な通信か否かを判断するように構成してもよい。
【００７８】
一方、ＱｏＳの適用が必要な通信に先立つ通信とは、ＱｏＳの適用が必要な通信の前に、所定のメッセージの送受信、または所定のサーバへのアクセス等のために利用される通信をいう。ＱｏＳの適用が必要な通信に先立つ通信には、ＱｏＳの適用が必要な通信を明示的に要求する通信と、ＱｏＳの適用が必要な通信を暗に要求する通信とが存在する。
【００７９】
明示的に要求する通信は、実際にデータを送受信する通信に先立ち、交換対象とするデータが要求する通信特性を通信相手に伝えるための通信である。この通信により、所望の通信特性が実現可能かを問い合わせたり、所望の通信特性の実現にむけてノードを制御するように依頼したりする。
このような通信には、ＳＩＰ（Session Initiation Protocol）やＲＳＶＰ（Resource reSerVation Protocol）のようなシグナリングプロトコルを用いることが多い。そこで、ＱｏＳ端末検出部１１３は、受信したパケットがこのような特定のプロトコルにより構成されている場合に、当該パケットはＱｏＳの適用が必要な通信に先立つ通信に属していると判断する。
【００８０】
シグナリングプロトコルによる通信は、複数のパケットで１つの通信を構成する場合がある。例えばＳＩＰであれば、要求とその応答により通信シーケンスが構成されるが、通信シーケンスが複数回になる場合もある。そのような場合には、２つの方法で判定することができる。第一の方法は、ある１つのパケットが特定のプロトコルおよびポート番号に一致したか否かで判定する方法である。第二の方法は、全てのパケットをパケット処理部１１１および接続検出部１１２で検出し、シーケンス全体を用いて判定する方法である。ＱｏＳ端末検出部１１３は、いずれの方法でＱｏＳの適用が必要な通信に先立つ通信を検出してもよい。
【００８１】
ＱｏＳの適用が必要な通信を暗に要求する通信は、ＳＩＰやＲＳＶＰのようなシグナリングプロトコルを用いない。代わりに、ＱｏＳの適用が必要または好ましい通信を行う機器に固有の通信を行う。例えば、ＩＰＴＶ機器は番組情報やコンテンツ配信網の情報を取得するために、特定のサーバにアクセスするように設計されるかもしれない。本実施の形態では、このような通信を、ＱｏＳの適用が必要な通信を暗に要求する通信として検出する。
【００８２】
ＱｏＳ端末検出部１１３は、ＱｏＳの適用が必要な通信を暗に要求する通信を、プロトコル、ＩＰアドレスやポート番号、およびアプリケーションデータなどの情報を用いて特定する。ただし、各情報の設定値は、対象となる機器ごとに異なるため、記憶部１２０等に事前に設定しておく必要がある。例えば、管理者がユーザインターフェイスを用いて設定してもよいし、ネットワークからダウンロードした情報を設定するように構成してもよい。
【００８３】
本実施の形態のパケット転送装置１００では、上記２種類の方法のうち、いずれかを満たす通信を行ったノードを、ＱｏＳの適用が必要なノードと判断する。なお、ＱｏＳの適用が必要な通信に先立つ通信を検出した場合、その後に実行されるＱｏＳの適用が必要な通信は、ＱｏＳの適用が必要な通信を明に、または、暗に要求したノードが対象になることを仮定している。この仮定は一般的であるが、仮に異なるノードへの通信が要求されている場合には、要求にて指定されたノードを、ＱｏＳの適用が必要なノードと判断する。
【００８４】
次に、ステップＳ６０８およびステップＳ６１４の条件判定・通知処理の詳細について図７を用いて説明する。図７は、第１の実施の形態における条件判定・通知処理の全体の流れを示すフローチャートである。
【００８５】
接続検出部１１２またはＱｏＳ端末検出部１１３から処理依頼の通知を受け取ると、出力部１１４は、接続ノードリスト１２２とＱｏＳノードリスト１２３とを記憶部１２０から取得する（ステップＳ７０１〜Ｓ７０２）。また、出力部１１４は、記憶部１２０からトポロジ条件リスト１２１を取得する（ステップＳ７０３）。
【００８６】
次に、出力部１１４は、取得したトポロジ条件リスト１２１から、未処理の条件を取得する（ステップＳ７０４）。そして、出力部１１４は、接続ノードリスト１２２に含まれる各ノード、および、ＱｏＳノードリスト１２３に含まれる各ノードが、取得した条件を満たすか否かを判定する（ステップＳ７０５）。この判定処理の詳細については後述する。
【００８７】
条件を満たす場合（ステップＳ７０５：ＹＥＳ）、出力部１１４は、トポロジ条件リスト１２１内のすべての条件を処理したか否かを判断する（ステップＳ７０６）。処理していない場合は（ステップＳ７０６：ＮＯ）、出力部１１４は、次の未処理の条件を取得して処理を繰り返す（ステップＳ７０４）。すべての条件を処理した場合は（ステップＳ７０６）、条件判定・通知処理を終了する。
【００８８】
ステップＳ７０５で、接続ノードリスト１２２に含まれる各ノード、および、ＱｏＳノードリスト１２３に含まれる各ノードが、取得した条件を満たさないと判断した場合（ステップＳ７０５：ＮＯ）、出力部１１４は、条件を満たさないことを表す出力情報を、ＬＡＮポート１０２に接続された各ノードに対して通知し（ステップＳ７０７）、条件判定・通知処理を終了する。
【００８９】
なお、出力部１１４は、条件を満たさなかったＬＡＮポート１０２に対してのみ通知してもよいし、全てのＬＡＮポート１０２に対して通知してもよい。また、出力部１１４は、接続を検出したノードまたはＱｏＳノードであることを検出したノードに対してユニキャストで通知してもよいし、ＬＡＮポート１０２に接続された各ノードにマルチキャストで通知してもよい。
【００９０】
例えば、条件を満たさないノードが、ユーザインターフェイスを備えていないＩＰ電話などの機器であった場合、出力情報をユニキャストで通知してもユーザは通知されたことを認識することができない。マルチキャストで通知すれば、ユーザインターフェイスを備えたＰＣ等にも通知されるため、ユーザが通知を知ることができる。
【００９１】
ユニキャストで通知する場合、出力部１１４は、接続ノードリスト１２２およびＡＲＰテーブルや近隣ノードテーブルに含まれるＭＡＣアドレスやＩＰｖ４アドレスまたはＩＰｖ６アドレスを用いて宛先アドレスを決定する。
【００９２】
一方、マルチキャストで通知する場合、出力部１１４は、新たなマルチキャストアドレスを規定してもよいし、既存のマルチキャストアドレスを使用してもよい。また、出力部１１４は、例えば、既存のマルチキャスト通知方法としてホームネットワークで広く利用されているＵＰｎＰ（Universal Plug and Play）を利用してもよい。また、出力部１１４が、複数回通知を行うように構成してもよい。この場合、例えば、通知から所定時間経過した後に再度通知を行うように構成する。
【００９３】
次に、ステップＳ７０５の判定処理の詳細について説明する。上述の通り、出力部１１４がトポロジ条件リスト１２１の条件を満たすか否かを判定する。
【００９４】
具体的には、出力部１１４は、トポロジ条件リスト１２１に記載の条件を順番に評価する。例えば、トポロジ条件リスト１２１、接続ノードリスト１２２、およびＱｏＳノードリスト１２３として、それぞれ図３、図４、および図５に示す各リストが取得できたと仮定する。
【００９５】
出力部１１４は、まず、図３の番号１の条件３０１を判定する。すなわち、出力部１１４は、ポート識別子＝１のＬＡＮポート１０２ａに、ＱｏＳ型通信のノードと、ベストエフォート型通信のノードとが混在していないことを確認する。例えば、出力部１１４は、図５のＱｏＳノードリスト１２３からポート識別子＝１のＬＡＮポート１０２ａに接続しているノードを検出し、検出したノードと同じノードを含むエントリが図４の接続ノードリスト１２２に存在するか否かを確認すればよい。
【００９６】
より具体的には、出力部１１４は、まず、図５からＱｏＳ型の通信を行うノードとして、ＭＡＣアドレス「AA:BB:CC:DD:EE:FF」のノードがポート識別子＝１のＬＡＮポート１０２ａに接続していると判定する。そして、出力部１１４は、図４から、ポート識別子＝１のＬＡＮポート１０２ａには同じＭＡＣアドレスを持つノードのみが接続されていると判定することができる。したがって、出力部１１４は、番号１の条件３０１は満たされていると判定する。
【００９７】
出力部１１４は、引き続き、番号２の条件３０２を満たすか否かを確認する。具体的には、出力部１１４は、ポート識別子＝１のＬＡＮポート１０２ａに接続するノードの個数が１台であることを確認する。このためには、出力部１１４が接続ノードリスト１２２を確認すればよい。すなわち、出力部１１４は、図４の接続ノードリスト１２２から、ポート識別子＝１のＬＡＮポート１０２ａにはＭＡＣアドレス「AA:BB:CC:DD:EE:FF」のノードだけが接続していると確認できる。したがって、出力部１１４は、番号２の条件３０２も満たされていると判定する。
【００９８】
以上の判定処理の結果、この例では、出力部１１４は指定されたトポロジ条件を満たしていると判定する。この場合、出力部１１４はメッセージ通知等の特別な処理は行わず、現在の状態を維持する。
【００９９】
次に、ステップＳ７０５の判定処理の別の具体例について説明する。図８は、この例で用いる接続ノードリスト１２２の一例を示す図である。なお、トポロジ条件リスト１２１およびＱｏＳノードリスト１２３は、図３および図５に示したものと同一とする。
【０１００】
また、図８の接続ノードリスト１２２は、図６の前半部分の接続ノード検出処理で、新たなノードであるＭＡＣアドレス「19:28:37:46:55:00」のノードの接続を検出した状態を表すと仮定する。
【０１０１】
先の例と同様に、出力部１１４は、トポロジ条件リスト１２１の番号１の条件３０１から順番に評価する。具体的には、出力部１１４は、接続ノードリスト１２２とＱｏＳノードリスト１２３とを確認し、ポート識別子＝１のＬＡＮポート１０２ａには、ＱｏＳが必要なノード（ＭＡＣアドレス「AA:BB:CC:DD:EE:FF」）と、ベストエフォートでもよいノード（ＭＡＣアドレス「19:28:37:46:55:00」）とが一台ずつ接続していると判定する。したがって、出力部１１４は、番号１の条件３０１が満たされないと判定する。この後、出力部１１４は、トポロジ条件を満たしていない旨を通知する。なお、出力部１１４は、通知するメッセージに、満たされなかった条件や原因となったノード（この場合はＭＡＣアドレス「19:28:37:46:55:00」のノード）の情報を含めてもよい。
【０１０２】
上述のように、図８を用いて説明した例は、図６の前半部分の接続ノード検出処理で実行される条件判定・通知処理（ステップＳ６０８）の例を表している。すなわち、条件を満たさない原因となったノードが、ＱｏＳの適用が必要なノードか否かは、出力部１１４の判断がなされた時点では完了してない。
【０１０３】
この後に実行されるＱｏＳノード検出処理で、条件を満たさない原因となったノードがＱｏＳの適用が必要なノードであると判明した場合、番号１の条件３０１は満たされることになる。
【０１０４】
このように、出力部１１４の判断は、ノードの接続状況が変化していなくても、通信の状況に応じて変化する可能性がある。なお、上記例では、番号２の条件３０２が満たされないため、最終的な判断は不変である。
【０１０５】
このような状況に対応するため、出力部１１４が、一定時間経過し、安定した状態になった後に再度判断を行い、メッセージを通知するように構成してもよい。また、例えば、ユーザがパケット転送装置１００のユーザインターフェイスからネットワーク診断を指定した場合に、トポロジ条件を満たすか否かの判断処理を開始するように構成してもよい。
【０１０６】
記憶部１２０に保存される接続ノードリスト１２２のエントリは、予め定められた有効時間が経過後に削除される。例えば、接続検出部１１２が、ＩＰｖ４  ＡＲＰパケットを検出したことにより接続ノードリスト１２２を作成する場合には、対応するＡＲＰエントリの有効期間が経過したときに、接続ノードリスト１２２のエントリが削除される。接続検出部１１２が、ＩＰｖ６近隣探索パケットを用いて接続ノードリスト１２２のエントリを作成する場合には、対応する近隣ノードテーブルのエントリの有効期間が経過したときに、接続ノードリスト１２２のエントリが削除される。
【０１０７】
また、記憶部１２０に保存されるＱｏＳノードリスト１２３のエントリは、エントリの検出方法に応じた方法により削除される。
【０１０８】
例えば、ＱｏＳ端末検出部１１３が、ＱｏＳの適用が必要な通信を明示的に要求する通信を検出したことによりエントリを作成した場合には、検出した通信に含まれた有効期間が経過したとき、または、ＱｏＳの適用が必要な通信を明示的に無効にする通信または終了する通信を検出したときに削除される。
【０１０９】
ＱｏＳ端末検出部１１３が、ＱｏＳの適用が必要な通信を暗に要求する通信を検出したことによりエントリを作成した場合には、接続ノードリスト１２２のエントリが削除される時にあわせて削除される。
【０１１０】
ＱｏＳ端末検出部１１３が、ＱｏＳの適用が必要な通信を検出したことによりエントリを作成した場合には、接続ノードリスト１２２のエントリが削除される時にあわせて削除される。
【０１１１】
なお、上記以外の方法を用いてエントリを削除するように構成してもよい。例えば、ＱｏＳノードリスト１２３のエントリに固有の有効期間を設けて、該有効期間が無効になったタイミングで削除するようにしてもよい。
【０１１２】
（変形例）
上記実施の形態では、ＱｏＳの適用が必要な通信またはＱｏＳの適用が必要な通信に先立つ通信として検出されるパケットは、パケット転送装置１００により転送されるだけであった。本変形例では、これらのパケットを内部で処理するパケット転送装置の例を示す。
【０１１３】
パケット処理部１１１がパケットを処理するためには、当該パケットの受信先アドレスに本パケット転送装置１００のアドレスが指定されていなければならない。このため、本変形例では、ＱｏＳ端末検出部１１３は、ＱｏＳの適用が必要な通信を明示的に要求する通信のみを検出するものとする。ＱｏＳの適用が必要な通信を明示的に要求する通信には、通常、ＳＩＰやＲＳＶＰといったシグナリングプロトコルが利用される。本変形例ではＳＩＰを用いる場合を例として説明する。すなわち、パケット転送装置１００がＳＩＰプロキシとして動作している場合を例に説明する。
【０１１４】
この場合、ＬＡＮポート１０２に接続したノードが送信するＳＩＰメッセージは、ＳＩＰプロキシとして動作するパケット転送装置１００により処理される。この処理はパケット処理部１１１にて行われる。
【０１１５】
したがって、パケット処理部１１１は、ＱｏＳの適用が必要な通信に先立つ通信に属するパケットを、パケットを処理する時点で検出することができる。検出した情報は、ＱｏＳ端末検出部１１３に通知され、記憶部１２０に保存される。なお、メッセージ転送処理の流れは上述の図６と同様であるため説明を省略する。
【０１１６】
このように、第１の実施の形態にかかるパケット転送装置では、パケット転送装置のポートごとに接続したノードを検出する機能と、ＱｏＳの対象となる通信またはＱｏＳの適用が必要な通信に先立つ通信を検出する機能とを具備したことにより、ホームネットワークのようにユーザが自由にネットワークを構築できる環境であっても、トポロジおよび通信を動的に検出することができる。
【０１１７】
さらに、ノードの接続状況が所定の条件を満たすか否かを判断する機能を具備したことにより、ホームネットワークのようにユーザが自由にネットワークを構築できる環境であっても、トポロジおよび通信の動的な検出と要求されるＱｏＳが適用可能なトポロジか否かを判断することができる。
【０１１８】
そして、この判断の結果、条件を満たさないことが判明した場合にその旨を通知する機能を具備することにより、ネットワークの知識に乏しいユーザであっても問題の状況を知り、改善することができる。すなわち、例えばネットワークやコンピュータの専門的な知識がないユーザに対しても、ＱｏＳが正しく適用されうるネットワークトポロジの構築を補助することができる。
【０１１９】
（第２の実施の形態）
第２の実施の形態にかかるパケット転送装置は、所定のパケットの受信によりノードの接続のみを検出し、検出されたノードが接続条件を満たすか否かを判定し、満たさない場合に、接続されたノードに接続条件を満たさないことを通知する。
【０１２０】
図９は、第２の実施の形態にかかるパケット転送装置９００の構成を示すブロック図である。図９に示すように、パケット転送装置９００は、ＷＡＮポート１０１と、ＬＡＮポート１０２ａ〜１０２ｃと、記憶部９２０と、パケット処理部１１１と、接続検出部１１２と、出力部１１４と、を備えている。
【０１２１】
第２の実施の形態では、ＱｏＳ端末検出部１１３を削除したこと、記憶部９２０からＱｏＳノードリスト１２３が削除されたこと、およびトポロジ条件リスト９２１の内容が第１の実施の形態と異なっている。その他の構成および機能は、第１の実施の形態にかかるパケット転送装置１００の構成を表すブロック図である図１と同様であるので、同一符号を付し、ここでの説明は省略する。
【０１２２】
本実施の形態では、ＱｏＳを適用できるか否かを、接続が検出されたノード数のみによって判定する。このため、接続されたノードを検出する接続検出部１１２を備えるが、ＱｏＳ端末検出部１１３が削除されている。また、ＱｏＳ端末検出部１１３が作成したエントリを記憶するＱｏＳノードリスト１２３が削除されている。
【０１２３】
また、トポロジ条件リスト９２１は、上述のように接続されたノードの台数のみを規定した条件を記憶する。例えば、「ノードは、ＬＡＮポート１０２に一台しか接続できない」という条件である。このように条件が固定されているため、トポロジ条件リスト９２１を記憶部９２０に記憶せず、出力部１１４がこのような静的に決定された条件を用いて判定処理を実行するように構成してもよい。
【０１２４】
本実施の形態では、出力部１１４は、ＬＡＮポート１０２に接続しているノード数を確認し、トポロジ条件リスト９２１の条件で設定された台数の閾値を超えたか否かを判断する。そして、出力部１１４は、閾値より多くのノードが接続していた場合に、条件を満たさない旨を通知する。
【０１２５】
なお、本実施の形態のメッセージ転送処理は、第１の実施の形態のメッセージ転送処理を表す図６の後半部分（ステップＳ６０９〜ステップＳ６１４）を削除した処理に相当するため、説明を省略する。
【０１２６】
このように、第２の実施の形態にかかるパケット転送装置では、所定のパケットの受信により検出したノードの接続数が接続条件を満たすか否かを判定し、満たさない場合に、接続されたノードに接続条件を満たさないことを通知することができる。これにより、ＱｏＳが正しく適用されうるネットワークトポロジの構築を補助することができる。
【０１２７】
（第３の実施の形態）
第３の実施の形態にかかるパケット転送装置は、所定のパケットの受信によりＱｏＳノードのみを検出し、検出されたＱｏＳノードが接続条件を満たすか否かを判定し、満たさない場合に、接続されたＱｏＳノードに接続条件を満たさないことを通知する。
【０１２８】
図１０は、第３の実施の形態にかかるパケット転送装置１０００の構成を示すブロック図である。図１０に示すように、パケット転送装置１０００は、ＷＡＮポート１０１と、ＬＡＮポート１０２ａ〜１０２ｃと、記憶部１０２０と、パケット処理部１１１と、ＱｏＳ端末検出部１１３と、出力部１１４と、を備えている。
【０１２９】
第３の実施の形態では、接続検出部１１２を削除したこと、記憶部１０２０から接続ノードリスト１２２が削除されたこと、およびトポロジ条件リスト１０２１の内容が第１の実施の形態と異なっている。その他の構成および機能は、第１の実施の形態にかかるパケット転送装置１００の構成を表すブロック図である図１と同様であるので、同一符号を付し、ここでの説明は省略する。
【０１３０】
本実施の形態では、ＱｏＳ型通信により全ての帯域が占有される状況を前提とする。そのため、ＱｏＳ型通信に関する情報のみを取り扱う。すなわち、本実施の形態では、ＱｏＳを適用できるか否かを、ＱｏＳノードを検出することのみによって判定する。このため、ＱｏＳノードを検出するＱｏＳ端末検出部１１３を備えるが、接続検出部１１２が削除されている。また、接続検出部１１２が作成したエントリを記憶する接続ノードリスト１２２が削除されている。
【０１３１】
また、トポロジ条件リスト１０２１は、ＱｏＳ型通信を行うノードに関する条件だけを記憶する。例えば、「各ポートに２台までＱｏＳ型通信を行うノードを接続可能」という条件である。
【０１３２】
本実施の形態では、出力部１１４は、ＱｏＳ端末検出部１１３によって検出されたＱｏＳ型通信を行うノードが、トポロジ条件リスト１０２１内の条件を満たすか否かを確認する。
【０１３３】
なお、本実施の形態のメッセージ転送処理は、第１の実施の形態のメッセージ転送処理を表す図６の前半部分（ステップＳ６０３〜ステップＳ６０８）を削除した処理に相当するため、説明を省略する。
【０１３４】
このように、第３の実施の形態にかかるパケット転送装置では、所定のパケットの受信により検出されたＱｏＳノードが接続条件を満たすか否かを判定し、満たさない場合に、接続されたＱｏＳノードに接続条件を満たさないことを通知することができる。これにより、ＱｏＳが正しく適用されうるネットワークトポロジの構築を補助することができる。
【０１３５】
（第４の実施の形態）
上記各実施の形態では、ノードの検出とＱｏＳ型通信の適用を要求するノードの検出とを独立に実行していた。本実施の形態では、これらを結合することにより、検出処理を効率化する。このため、本実施の形態にかかるパケット転送装置は、ＱｏＳノードに関する情報を不揮発メモリに記憶し、記憶した情報を参照することにより、ノードの検出と同時に、接続されたノードがＱｏＳノードか否かを判定する。
【０１３６】
図１１は、第４の実施の形態にかかるパケット転送装置１１００の構成を示すブロック図である。図１１に示すように、パケット転送装置１１００は、ＷＡＮポート１０１と、ＬＡＮポート１０２ａ〜１０２ｃと、記憶部１２０と、パケット処理部１１１と、接続検出部１１１２と、ＱｏＳ端末検出部１１１３と、出力部１１４と、不揮発メモリ１１３０と、を備えている。
【０１３７】
第４の実施の形態では、不揮発メモリ１１３０を追加したことと、接続検出部１１１２およびＱｏＳ端末検出部１１１３の機能と、が第１の実施の形態と異なっている。その他の構成および機能は、第１の実施の形態にかかるパケット転送装置１００の構成を表すブロック図である図１と同様であるので、同一符号を付し、ここでの説明は省略する。
【０１３８】
不揮発メモリ１１３０は、パケット転送装置１１００の電源を切断したときにも情報が消去されないフラッシュメモリなどの記憶媒体である。不揮発メモリ１１３０は、ＱｏＳノードを特定可能な情報を記憶する。具体的には、不揮発メモリ１１３０は、図５に示したＱｏＳノードリスト１２３と同様の情報（以下、長期的ＱｏＳノードリストという）を記憶する。
【０１３９】
接続検出部１１１２は、ノードの接続を検出したときに、接続されたノードのノード識別子と、接続を検出したＬＡＮポート１０２のポート識別子とを、ＱｏＳ端末検出部１１１３に通知する機能が追加された点が、第１の実施の形態の接続検出部１１２と異なっている。
【０１４０】
ＱｏＳ端末検出部１１１３は、ＱｏＳノードを検出したときに、記憶部１２０にＱｏＳノードリスト１２３を保存するとともに、不揮発メモリ１１３０に長期的ＱｏＳノードリストを記憶する機能が追加されている。また、ＱｏＳ端末検出部１１１３は、接続検出部１１１２から通知されたノード識別子およびポート識別子を用いて、ノード検出時にもＱｏＳノードの検出を実行し、条件判定・通知処理の依頼を実行する機能が追加されている。
【０１４１】
次に、このように構成された第４の実施の形態にかかるパケット転送装置１１００によるメッセージ転送処理について図１２および図１３を用いて説明する。図１２および図１３は、第４の実施の形態におけるメッセージ転送処理の全体の流れを示すシーケンス図である。
【０１４２】
ステップＳ１２０１からステップＳ１２０６までの、パケット受信処理、監視対象パケット判定処理、およびエントリ保存処理は、第１の実施の形態にかかるパケット転送装置１００におけるステップＳ６０１からステップＳ６０６までと同様の処理なので、その説明を省略する。
【０１４３】
接続ノードリスト１２２にエントリを保存後、接続検出部１１１２は、検出したノードのノード識別子と、検出したノードが接続されたＬＡＮポート１０２のポート識別子とを、ＱｏＳ端末検出部１１１３に通知する（ステップＳ１２０７）。
【０１４４】
次に、ＱｏＳ端末検出部１１１３は、通知されたノード識別子およびポート識別子を含むエントリを、不揮発メモリ１１３０に記憶された長期的ＱｏＳノードリストから取得する（ステップＳ１２０８）。
【０１４５】
次に、ＱｏＳ端末検出部１１１３は、通知されたノード識別子およびポート識別子を含むエントリが取得できたか否かを判断する（ステップＳ１２０９）。取得できた場合（ステップＳ１２０９：ＹＥＳ）、ＱｏＳ端末検出部１１１３は、記憶部１２０のＱｏＳノードリスト１２３に保存するためのエントリを作成する（ステップＳ１２１０）。具体的には、ＱｏＳ端末検出部１１１３は、不揮発メモリ１１３０から取得したエントリと同様のエントリを作成する。
【０１４６】
ステップＳ１２１１からステップＳ１２１３までの、エントリ保存処理および条件判定・通知処理は、第１の実施の形態にかかるパケット転送装置１００におけるステップＳ６１２からステップＳ６１４までと同様の処理なので、その説明を省略する。
【０１４７】
このような処理により、不揮発メモリ１１３０にそのノードがＱｏＳノードであることが記憶されていれば、ノードの接続が検出されたときに、検出されたノードがＱｏＳノードであると判定することができる。すなわち、ＱｏＳの適用が必要な通信のパケット等を判定してＱｏＳノードを検出する処理（ＱｏＳノード検出処理）を実行する必要がなくなる。
【０１４８】
なお、ノードがパケット転送装置１１００に初めて接続されたときには、不揮発メモリ１１３０に対応するエントリは保存されていない。このため、その後に当該ノードによってさらに送信されたパケットを参照することにより、当該ノードがＱｏＳノードか否かを判定する必要がある。
【０１４９】
すなわち、ステップＳ１２０９で、通知されたノード識別子およびポート識別子を含むエントリが取得できなかった場合（ステップＳ１２０９：ＮＯ）、ＱｏＳ端末検出部１１１３は、ＱｏＳの適用が必要な通信またはＱｏＳの適用が必要な通信に先立つ通信を検出する処理を実行する（ステップＳ１２１４〜ステップＳ１２２０）
【０１５０】
ステップＳ１２１４からステップＳ１２１７までの、パケット判定処理、エントリ作成処理、およびエントリ保存処理は、第１の実施の形態にかかるパケット転送装置１００におけるステップＳ６０９からステップＳ６１２までと同様の処理なので、その説明を省略する。
【０１５１】
第２の実施の形態では、ＱｏＳ端末検出部１１１３は、ＱｏＳノードを検出時に作成したエントリを、不揮発メモリ１１３０にも保存する（ステップＳ１２１８）。
【０１５２】
ステップＳ１２１９からステップＳ１２２０までの、依頼処理および条件判定・通知処理は、第１の実施の形態にかかるパケット転送装置１００におけるステップＳ６１３からステップＳ６１４までと同様の処理なので、その説明を省略する。また、ステップＳ１２２１のパケット転送処理は、第１の実施の形態にかかるパケット転送装置１００におけるステップＳ６１５と同様の処理なので、その説明を省略する。
【０１５３】
このように、第４の実施の形態にかかるパケット転送装置では、ＱｏＳノードに関する情報を不揮発メモリに記憶し、記憶した情報を参照することにより、ノードの検出と同時に、接続されたノードがＱｏＳノードか否かを判定することができる。これにより、ＱｏＳノードの検出処理を効率化することができる。
【０１５４】
（第５の実施の形態）
上記各実施の形態では、特定のパケットを受信することでノードの接続を検出していた。第５の実施の形態にかかるパケット転送装置は、ＬＡＮポートに機器が接続されたときに検出される電気信号によって、ノードまたはスイッチングハブなどの機器の接続を検出する。そして、電気信号の検出時刻と、所定のパケットの受信時刻との差が閾値以上であるときに、ノードが接続条件を満たさないと判定する。
【０１５５】
図１４は、第５の実施の形態にかかるパケット転送装置１４００の構成を示すブロック図である。図１４に示すように、パケット転送装置１４００は、ＷＡＮポート１０１と、ＬＡＮポート１０２ａ〜１０２ｃと、記憶部１２０と、パケット処理部１１１と、接続検出部１４１２と、ＱｏＳ端末検出部１１３と、出力部１４１４と、を備えている。
【０１５６】
第５の実施の形態では、接続検出部１４１２および出力部１４１４の機能が第１の実施の形態と異なっている。その他の構成および機能は、第１の実施の形態にかかるパケット転送装置１００の構成を表すブロック図である図１と同様であるので、同一符号を付し、ここでの説明は省略する。
【０１５７】
接続検出部１４１２は、ＬＡＮポート１０２のリンク状態を示す電気信号を監視する機能、および、各ＬＡＮポート１０２のリンクアップを検出した時刻（日時）から監視対象パケットを検出した時刻（日時）までの期間（監視対象パケット検出時刻とリンクアップ検出時刻との差分）を算出する機能をさらに備えた点が、第１の実施の形態の接続検出部１１２と異なっている。図１４に示すように、接続検出部１４１２は、電気信号を検出するために各ＬＡＮポート１０２と直接接続されている。
【０１５８】
出力部１４１４は、リンクアップの時刻と監視対象パケットの検出時刻との差分が、予め定められた閾値以上離れている場合に、ネットワークトポロジが不正であると判断する機能が追加された点が、第１の実施の形態の出力部１１４と異なっている。なお、本実施の形態では、トポロジ条件リスト１２１に、「１つのＱｏＳ用ＬＡＮポートには一台のノードのみ接続可能」またはそれに類似する条件が記憶されているものとする。ここで、ＱｏＳ用ＬＡＮポートとは、ＱｏＳ型通信のノードを接続するためのポートを意味する。
【０１５９】
ここで、出力部１４１４が正常および不正と判断するネットワークトポロジの例について図１５および図１６を用いて説明する。図１５は、正常と判断されるトポロジの一例を示す図である。
【０１６０】
図１５のＬＡＮポート１０２ａは、ＱｏＳ用ＬＡＮポートであるものとする。同図では、ＱｏＳ型通信を行うノード１５３１が、ＬＡＮポート１０２ａに直接接続されている。ＬＡＮポート１０２ｃには、スイッチングハブ１５３５を介して、ベストエフォート型通信を行う３台のノード１５３２〜１５３４が接続されている。
【０１６１】
同図では、ＱｏＳ型通信を行うノードがＱｏＳ用ＬＡＮポートに一台だけ接続されている。したがって、出力部１４１４は、トポロジ条件リスト１２１の条件が満たされていると判断する。
【０１６２】
一方、図１６は、不正と判断されるトポロジの一例を示す図である。図１６のＬＡＮポート１０２ａが、ＱｏＳ用ＬＡＮポートであるものとする。同図では、このＱｏＳ用ＬＡＮポートにスイッチングハブ１６３５を接続し、その下にＱｏＳ型通信を行うノード１６３１とベストエフォート型通信を行うノード１６３２〜１６３４とを混在させている。したがって、出力部１４１４は、多数のノードがＱｏＳ用ＬＡＮポートに接続しており条件が満たされないと判断する。
【０１６３】
出力部１４１４は、上述のように、ＬＡＮポート１０２のリンクアップの時刻と監視対象パケットの検出時刻との差分と所定の閾値とを比較することにより、図１５のトポロジを正常と判断し、図１６のトポロジを不正と判断することができる。
【０１６４】
例えば図１５の場合、ＬＡＮポート１０２がリンクアップする時刻と、当該ポートに接続するノード１５３２から監視対象パケットを受信する時刻とは、ノードが起動し、プロトコルスタックが初期化されるまでの時間離れるだけであって、大きく変わらないことが期待できる。
【０１６５】
一方、図１６の場合、スイッチングハブ１６３５の電源が常に入っているとすれば、ノード１６３１〜１６３４から監視対象パケットを受信するよりも遥かに前の時刻から、ＬＡＮポート１０２がリンクアップしていると考えられる。
【０１６６】
そこで、本実施の形態の出力部１４１４は、このような相違に基づき、両者を区別可能な適当な閾値を設定し、リンクアップの時刻と監視対象パケットの検出時刻との差分が閾値より小さいか否かを判定することによって、妥当なトポロジか否かを判定する。
【０１６７】
次に、このように構成された第５の実施の形態にかかるパケット転送装置１４００によるメッセージ転送処理について図１７を用いて説明する。図１７は、第５の実施の形態におけるメッセージ転送処理の全体の流れを示すシーケンス図である。
【０１６８】
最初に、接続検出部１４１２は、各ＬＡＮポート１０２に対する機器のリンクアップを検出し、検出した時刻を保存しておく（ステップＳ１７０１）。
【０１６９】
ステップＳ１７０２からステップＳ１７０７までの、パケット受信処理、監視対象パケット判定、およびエントリ保存処理は、第１の実施の形態にかかるパケット転送装置１００におけるステップＳ６０１からステップＳ６０６までと同様の処理なので、その説明を省略する。
【０１７０】
次に、接続検出部１４１２は、監視対象パケットを受信した時刻と、リンクアップを検出した時刻との差分を算出する（ステップＳ１７０８）。そして、接続検出部１４１２は、出力部１４１４に対して条件判定を依頼する（ステップＳ１７０９）。このとき、接続検出部１４１２は、算出した差分を出力部１４１４に通知する。出力部１４１４は、通知された差分等を参照し、条件判定・通知処理を実行する（ステップＳ１７１０）。本実施の形態の条件判定・通知処理の詳細については後述する。
【０１７１】
ステップＳ１７１１からステップＳ１７１７までの、パケット通知処理、エントリ保存処理、条件判定・通知処理、およびパケット転送処理は、第１の実施の形態にかかるパケット転送装置１００におけるステップＳ６０９からステップＳ６１５までと同様の処理なので、その説明を省略する。
【０１７２】
次に、ステップＳ１７１０およびステップＳ１７１６の条件判定・通知処理の詳細について図１８を用いて説明する。図１８は、第５の実施の形態における条件判定・通知処理の全体の流れを示すフローチャートである。
【０１７３】
まず、出力部１４１４は、接続検出部１４１２から通知された時刻の差分が、予め定められた閾値以下であるか否かを判断する（ステップＳ１８０１）。差分が閾値以下でない場合（ステップＳ１８０１：ＮＯ）、出力部１４１４は、条件を満たさないことを表す出力情報を通知し（ステップＳ１８０８）、条件判定・通知処理を終了する。
【０１７４】
差分が閾値以下である場合（ステップＳ１８０１：ＹＥＳ）、出力部１４１４は、第１の実施の形態にかかるパケット転送装置１００におけるステップＳ７０１以降と同様の処理を実行する。
【０１７５】
このように、第５の実施の形態にかかるパケット転送装置では、機器が接続されたときに検出される電気信号によってＬＡＮポートに対する機器の接続を検出する。そして、電気信号の検出時刻と、所定のパケットの受信時刻との差が閾値以上であるときに、ノードが接続条件を満たさないと判定することができる。
【０１７６】
次に、第１〜第５の実施の形態にかかるパケット転送装置のハードウェア構成について図１９を用いて説明する。図１９は、第１〜第５の実施の形態にかかるパケット転送装置のハードウェア構成を示す説明図である。
【０１７７】
第１〜第５の実施の形態にかかるパケット転送装置は、ＣＰＵ（Central Processing Unit）５１などの制御装置と、ＲＯＭ（Read Only Memory）５２やＲＡＭ５３などの記憶装置と、ネットワークに接続して通信を行う通信Ｉ／Ｆ５４と、各部を接続するバス６１を備えている。
【０１７８】
第１〜第５の実施の形態にかかるパケット転送装置で実行される出力プログラムは、ＲＯＭ５２等に予め組み込まれて提供される。
【０１７９】
第１〜第５の実施の形態にかかるパケット転送装置で実行される出力プログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ（Compact Disk Read Only Memory）、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ（Compact Disk Recordable）、ＤＶＤ（Digital Versatile Disk）等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
【０１８０】
さらに、第１〜第５の実施の形態にかかるパケット転送装置で実行される出力プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、第１〜第５の実施の形態にかかるパケット転送装置で実行される出力プログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
【０１８１】
第１〜第５の実施の形態にかかるパケット転送装置で実行される出力プログラムは、上述した各部（パケット処理部、接続検出部、ＱｏＳ端末検出部、出力部）を含むモジュール構成となっており、実際のハードウェアとしてはＣＰＵ５１が上記ＲＯＭ５２から出力プログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、各部が主記憶装置上に生成されるようになっている。
【産業上の利用可能性】
【０１８２】
以上のように、本発明にかかる装置、方法およびプログラムは、ＱｏＳを保証しつつメッセージを転送するＨＧＷ、ルータなどのパケット転送装置に適している。
【図面の簡単な説明】
【０１８３】
【図１】第１の実施の形態にかかる通信システムの一形態を示す図である。
【図２】第１の実施の形態にかかるパケット転送装置のブロック図である。
【図３】トポロジ条件リストのデータ構造の一例を示す図である。
【図４】接続ノードリストのデータ構造の一例を示す図である。
【図５】ＱｏＳノードリストのデータ構造の一例を示す図である。
【図６】第１の実施の形態におけるメッセージ転送処理の全体の流れを示すシーケンス図である。
【図７】第１の実施の形態における条件判定・通知処理の全体の流れを示すフローチャートである。
【図８】接続ノードリストの一例を示す図である。
【図９】第２の実施の形態にかかるパケット転送装置の構成を示すブロック図である。
【図１０】第３の実施の形態にかかるパケット転送装置の構成を示すブロック図である。
【図１１】第４の実施の形態にかかるパケット転送装置の構成を示すブロック図である。
【図１２】第４の実施の形態におけるメッセージ転送処理の全体の流れを示すシーケンス図である。
【図１３】第４の実施の形態におけるメッセージ転送処理の全体の流れを示すシーケンス図である。
【図１４】第５の実施の形態にかかるパケット転送装置の構成を示すブロック図である。
【図１５】正常と判断されるトポロジの一例を示す図である。
【図１６】不正と判断されるトポロジの一例を示す図である。
【図１７】第５の実施の形態におけるメッセージ転送処理の全体の流れを示すシーケンス図である。
【図１８】第５の実施の形態における条件判定・通知処理の全体の流れを示すフローチャートである。
【図１９】第１〜第５の実施の形態にかかるパケット転送装置のハードウェア構成を示す説明図である。
【符号の説明】
【０１８４】
５１  ＣＰＵ
５２  ＲＯＭ
５３  ＲＡＭ
５４  通信Ｉ／Ｆ
６１  バス
１００  パケット転送装置
１０１  ＷＡＮポート
１０２ａ〜１０２ｃ  ＬＡＮポート
１１１  パケット処理部
１１２  接続検出部
１１３  ＱｏＳ端末検出部
１１４  出力部
１２０  記憶部
１２１  トポロジ条件リスト
１２２  接続ノードリスト
１２３  ＱｏＳノードリスト
２００  広域ネットワーク
３００  エンドサイト
３０１、３０２  条件
９００  パケット転送装置
９２０  記憶部
９２１  トポロジ条件リスト
１０００  パケット転送装置
１０２０  記憶部
１０２１  トポロジ条件リスト
１１００  パケット転送装置
１１１２  接続検出部
１１１３  ＱｏＳ端末検出部
１１３０  不揮発メモリ
１４００  パケット転送装置
１４１２  接続検出部
１４１４  出力部
１５３１〜１５３４  ノード
１５３５  スイッチングハブ
１６３１〜１６３４  ノード
１６３５  スイッチングハブ
【図１】
2010062677.tif 000003
【図２】
2010062677.tif 000004
【図３】
2010062677.tif 000005
【図４】
2010062677.tif 000006
【図５】
2010062677.tif 000007
【図６】
2010062677.tif 000008
【図７】
2010062677.tif 000009
【図８】
2010062677.tif 000010
【図９】
2010062677.tif 000011
【図１０】
2010062677.tif 000012
【図１１】
2010062677.tif 000013
【図１２】
2010062677.tif 000014
【図１３】
2010062677.tif 000015
【図１４】
2010062677.tif 000016
【図１５】
2010062677.tif 000017
【図１６】
2010062677.tif 000018
【図１７】
2010062677.tif 000019
【図１８】
2010062677.tif 000020
【図１９】
2010062677.tif 000021