(57)【特許請求の範囲】
【請求項１】
第１転送機器が指定サービスフローのパスにおける前ホップ転送機器から送信された、前記指定サービスフローのパスを検出するための第１検出パケットを受信し、前記第１検出パケットのパケットヘッダに含まれる転送情報と前記指定サービスフローのパケットヘッダに含まれる転送情報とは、同じであり、前記指定サービスフローのパスにおける少なくとも１つの転送機器の機器アドレスは、前記第１検出パケットのペーロードに付加されることと、
前記第１転送機器が自転送機器の機器アドレスを前記第１検出パケットのペーロードに追加して第２検出パケットを取得することと、
次ホップ転送機器が前記第１転送機器の前記機器アドレスを含む前記第２検出パケットを新しい第１検出パケットとして取り込み、前記新しい第１検出パケットに対応する新しい転送エラーメッセージを生成するように、前記第１転送機器が前記第２検出パケットのパケットヘッダにおける前記転送情報に基づいて前記第２検出パケットを前記指定サービスフローのパスにおける前記次ホップ転送機器へ転送することと、
前記第１転送機器は、ＳＤＮコントローラへ前記第１検出パケットのペーロードにおける少なくとも１つの機器アドレスが付加される転送エラーメッセージを送信することにより、前記ＳＤＮコントローラに前記転送エラーメッセージに付加される前記少なくとも１つの機器アドレスに基づいて前記指定サービスフローのパスを特定させることと、を含むことを特徴とするパス検出方法。
【請求項２】
前記前ホップ転送機器が前記指定サービスフローのパスにおける最初の転送機器であるときに、前記第１検出パケットは、前記最初の転送機器が前記ＳＤＮコントローラの制御命令に基づいて構築した検出パケットとなり、これにより前記第１検出パケットのペーロードには、前記最初の転送機器の機器アドレスが付加されることを特徴とする請求項１に記載の方法。
【請求項３】
前記第１検出パケットのパケットヘッダは、ＴＴＬを含み、前記ＴＴＬは、初期値であることを特徴とする請求項２に記載の方法。
【請求項４】
前記第１転送機器が前記ＳＤＮコントローラへ前記転送エラーメッセージを送信することは、
前記第１転送機器が前記ＴＴＬから前記ＴＴＬの初期値に等しい所定値を減算することで前記第１検出パケットのパケットヘッダにおける前記ＴＴＬを更新することと、
更新後の前記ＴＴＬが０に等しい場合に、前記第１転送機器は、前記第１検出パケットの転送にエラーが発生したと確認し、前記ＳＤＮコントローラへ前記転送エラーメッセージを送信することと、を含むことを特徴とする請求項３に記載の方法。
【請求項５】
前記転送エラーメッセージには、前記ＴＴＬが０に更新された前記第１検出パケットが付加され、
前記第２検出パケットのパケットヘッダにおける前記ＴＴＬは、前記初期値であることを特徴とする請求項４に記載の方法。
【請求項６】
前記第１検出パケットのパケットヘッダは、チェックサムを更に含み、前記チェックサムは、前記指定サービスフローの宛先ホストが前記第１検出パケットを受信したときに前記第１検出パケットを廃棄するように、チェックサムのエラーを示す指定検証値として配置されることを特徴とする請求項２に記載の方法。
【請求項７】
前記第１検出パケットのパケットヘッダは、ＩＰヘッダおよび伝送層プロトコルヘッダを含み、
前記ＴＴＬは、前記ＩＰヘッダのフィールドであり、前記チェックサムは、伝送層プロトコルヘッダのフィールドであり、
前記ＩＰヘッダに含まれる転送情報は、ソースＩＰアドレス、宛先ＩＰアドレス、プロトコルタイプおよび差別化サービスコードポイント（ＤＳＣＰ）を含み、
前記伝送層プロトコルヘッダに含まれる転送情報は、ソースポート番号および宛先ポート番号を含むことを特徴とする請求項２に記載の方法。
【請求項８】
転送機器であって、
プロセッサと、
機器読み取り可能な記憶媒体とを備え、
前記機器読み取り可能な記憶媒体には、前記プロセッサによって実行され得る機器の実行可能な指令が記憶され、
前記プロセッサは、前記機器の実行可能な指令により、
指定サービスフローのパスにおける前ホップ転送機器から送信された、前記指定サービスフローのパスを検出するための第１検出パケットを受信し、前記第１検出パケットのパケットヘッダに含まれる転送情報と前記指定サービスフローのパケットヘッダに含まれる転送情報とは、同じであり、前記指定サービスフローのパスにおける少なくとも１つの転送機器の機器アドレスは、前記第１検出パケットのペーロードに付加されることと、
自転送機器の機器アドレスを前記第１検出パケットのペーロードに追加して第２検出パケットを取得することと、
次ホップ転送機器が前記第１転送機器の前記機器アドレスを含む前記第２検出パケットを新しい第１検出パケットとして取り込み、前記新しい第１検出パケットに対応する新しい転送エラーメッセージを生成するように、前記第２検出パケットのパケットヘッダにおける前記転送情報に基づいて前記第２検出パケットを前記指定サービスフローのパスにおける前記次ホップ転送機器へ転送することと、
ＳＤＮコントローラへ前記第１検出パケットのペーロードにおける少なくとも１つの機器アドレスが付加される転送エラーメッセージを送信することにより、前記ＳＤＮコントローラに前記転送エラーメッセージに付加される前記少なくとも１つの機器アドレスに基づいて前記指定サービスフローのパスを特定させることと、を実行させることを特徴とする転送機器。
【請求項９】
前記前ホップ転送機器が前記指定サービスフローのパスにおける最初の転送機器であるときに、前記第１検出パケットは、前記最初の転送機器が前記ＳＤＮコントローラの制御命令に基づいて構築した検出パケットとなり、これにより前記第１検出パケットのペーロードには、前記最初の転送機器の機器アドレスが付加されることを特徴とする請求項８に記載の転送機器。
【請求項１０】
前記第１検出パケットのパケットヘッダは、ＴＴＬを含み、前記ＴＴＬは、初期値であることを特徴とする請求項９に記載の転送機器。
【請求項１１】
前記プロセッサは、前記機器の実行可能な指令により、
前記ＴＴＬから前記ＴＴＬの初期値に等しい所定値を減算することで前記第１検出パケットのパケットヘッダにおける前記ＴＴＬを更新することと、
更新後の前記ＴＴＬが０に等しい場合に、前記第１検出パケットの転送にエラーが発生したと確認し、前記ＳＤＮコントローラへ前記転送エラーメッセージを送信することと、を実行させることを特徴とする請求項１０に記載の転送機器。
【請求項１２】
前記転送エラーメッセージには、前記ＴＴＬが０に更新された前記第１検出パケットが付加され、
前記第２検出パケットのパケットヘッダにおける前記ＴＴＬは、前記初期値であることを特徴とする請求項１１に記載の転送機器。
【請求項１３】
前記第１検出パケットのパケットヘッダは、チェックサムを更に含み、前記チェックサムは、前記指定サービスフローの宛先ホストが前記第１検出パケットを受信したときに前記第１検出パケットを廃棄するように、チェックサムのエラーを示す指定検証値として配置されることを特徴とする請求項９に記載の転送機器。
【請求項１４】
前記第１検出パケットのパケットヘッダは、ＩＰヘッダおよび伝送層プロトコルヘッダを含み、
前記ＴＴＬは、前記ＩＰヘッダのフィールドであり、前記チェックサムは、伝送層プロトコルヘッダのフィールドであり、
前記ＩＰヘッダに含まれる転送情報は、ソースＩＰアドレス、宛先ＩＰアドレス、プロトコルタイプおよび差別化サービスコードポイント（ＤＳＣＰ）を含み、
前記伝送層プロトコルヘッダに含まれる転送情報は、ソースポート番号および宛先ポート番号を含むことを特徴とする請求項９に記載の転送機器。
【請求項１５】
機器の実行可能な指令が記憶される機器読み取り可能な記憶媒体であって、
前記機器の実行可能な指令が転送機器のプロセッサによって呼び出して実行されるときに、前記プロセッサは、
指定サービスフローのパスにおける前ホップ転送機器から送信された、前記指定サービスフローのパスを検出するための第１検出パケットを受信し、前記第１検出パケットのパケットヘッダに含まれる転送情報と前記指定サービスフローのパケットヘッダに含まれる転送情報とは、同じであり、前記指定サービスフローのパスにおける少なくとも１つの転送機器の機器アドレスは、前記第１検出パケットのペーロードに付加されることと、
自転送機器の機器アドレスを前記第１検出パケットのペーロードに追加して第２検出パケットを取得することと、
次ホップ転送機器が前記第１転送機器の前記機器アドレスを含む前記第２検出パケットを新しい第１検出パケットとして取り込み、前記新しい第１検出パケットに対応する新しい転送エラーメッセージを生成するように、前記第２検出パケットのパケットヘッダにおける前記転送情報に基づいて前記第２検出パケットを前記指定サービスフローのパスにおける前記次ホップ転送機器へ転送することと、
ＳＤＮコントローラへ前記第１検出パケットのペーロードにおける少なくとも１つの機器アドレスが付加される転送エラーメッセージを送信することにより、前記ＳＤＮコントローラに前記転送エラーメッセージに付加される前記少なくとも１つの機器アドレスに基づいて前記指定サービスフローのパスを特定させることと、を実行させることを特徴とする機器読み取り可能な記憶媒体。
【発明の詳細な説明】
【背景技術】
【０００１】
［関連出願の相互引用］
本願は、出願日が２０１７年３月３１日であり、出願番号が２０１７１０２１０８３３．４であり、発明名称が「パス検出方法および装置」である中国特許出願の優先権を主張し、当該出願の全文が引用により本願に組み込まれる。
【０００２】
ＩＰネットワークの運営・メンテナンスを図るために、ネットワーク内のサービスフローのパスを検出する必要はある。
【０００３】
パス検出は、ルート追跡（Ｔｒａｃｅｒｏｕｔｅ）メカニズムで実施可能である。Ｔｒａｃｅｒｏｕｔｅメカニズムとは、宛先ホストのＩＰアドレス（宛先ＩＰアドレスと略称）に基づいて検出パケットを送信することにより、サービスフローがソースホストから宛先ホストまでのパスを検出することを指す。
【０００４】
Ｔｒａｃｅｒｏｕｔｅメカニズムにおける検出パケットは、サービスフローのサービスフローパケットと異なる。例えば、検出パケットのサービスフローへの影響が回避されるように、検出パケットのポート番号は、サービスフローパケットのポート番号と異なるように配置されている。
【図面の簡単な説明】
【０００５】
【図１】本発明に係る方法フローチャートである。
【図２】本発明に係るパケット構造の模式図である。
【図３】本発明に係る実施例の模式図である。
【図４】本発明の実施例に係る検出パケット構造図である。
【図５】本発明の実施例に係る検出パケット構造図である。
【図６】本発明の実施例に係る検出パケット構造図である。
【図７】本発明の実施例に係る検出パケット構造図である。
【図８】本発明の実施例に係る検出パケット構造図である。
【図９】本発明の実施例に係る検出パケット構造図である。
【図１０】本発明に係るパス検出論理構造の模式図である。
【図１１】本発明に係る転送機器のハードウェア構造の模式図である。
【図１２】本発明に係る別のパス検出論理構造の模式図である。
【図１３】本発明に係るＳＤＮコントローラのハードウェア構造の模式図である。
【発明を実施するための形態】
【０００６】
以下では、本発明の実施例の図面を組み合わせて本発明の実施例における解決手段を明瞭で完全に記述する。明らかに、記述される実施例が単に本発明の一部の実施例に過ぎず、全部の実施例ではない。本発明における実施例に基づいて、当業者が進歩性に値する労働をせずに成した全ての他の実施例は、何れも本発明の保護範囲に含まれる。
【０００７】
Ｔｒａｃｅｒｏｕｔｅメカニズムでは、サービスフローパスを検出するための検出パケットのパケットヘッダに含まれる転送情報は、サービスフローのパケットヘッダに含まれる転送情報と異なる。転送情報がＵＤＰポート番号であることを例とすると、ＵＤＰポート番号は、幾つかの予め定義された応用に対応可能である。検出パケットの実際のサービス応用への潜在的な影響が回避されるように、Ｔｒａｃｅｒｏｕｔｅメカニズムにおいて、検出パケットのパケットヘッダに含まれるＵＤＰポート番号は、如何なるサービス応用にも対応せず、特定のＵＤＰポート番号（例えば、３００００より大きいＵＤＰポート番号）であってもよい。それは、サービスフローのパケットヘッダに含まれる、サービスフロー応用に対応するためのＵＤＰポート番号と異なる。検出パケットの転送であろうと、サービスフローの転送であろうと、等価パスまたはポリシーベースルーティング（ＰＢＲ）が存在すれば、パケットヘッダに含まれる転送情報に依存し、パスを選択して転送を行う。それは、検出パケットのパケットヘッダに含まれる転送情報とサービスフローのパケットヘッダに含まれる転送情報とが異なるからである。これにより、検出パケットによって最終的に検出されたパスと、サービスフローが実際のパスとが異なってしまう。
【０００８】
本発明の例示では、実際のサービスフローのパケットヘッダを模倣することにより、サービスフローのパスを検出するための検出パケットを構築する。このように、各転送機器は、検出パケットのパケットヘッダに含まれる転送情報に基づいて検出パケットを転送する際、検出パケットと実際のサービスフローとに対応する転送挙動が一致することを確保可能であり、実際のサービスフローのパスを最終的に正確に特定できる。
【０００９】
図１を参照すると、図１は、本発明に係る方法フローチャートである。当該フローは、転送機器に適用される。一実施例として、ここでの転送機器は、例えばルータ等であり、本発明の例示において具体的に限定されない。
【００１０】
図１に示すように、当該フローは、以下のステップを含んでもよい。
ステップ１０１では、第１転送機器は、指定サービスフローのパスにおける前ホップ転送機器から送信された第１検出パケットを受信する。
【００１１】
本発明では、一実施例として、第１転送機器は、指定サービスフローパスにおける何れか1つの非最初の転送機器である。
【００１２】
本発明では、一実施例として、上記前ホップ転送機器が指定サービスフローのパスにおける最初の転送機器である場合に、第１検出パケットは、最初の転送機器がＳＤＮコントローラの制御命令に応じて構築した、指定サービスフローのパスを検出するための検出パケットとなる。最初の転送機器は、構築した検出パケットを転送する際、検出パケットのペーロードに自身の機器アドレスを付加する。
【００１３】
構築された検出パケットのパケットヘッダに含まれる転送情報と、前記指定サービスフローのパケットヘッダに含まれる転送情報とが同じとなるように、制御命令には、指定サービスフローのパケットヘッダに含まれる転送情報が付加される。ここでは、ＳＤＮコントローラは、以下の方式にてサービスフローパスにおける最初の転送機器を特定してもよい。つまり、ＳＤＮコントローラは、サービスフローのソースＩＰアドレス、宛先ＩＰアドレスを基に、それが管理するネットワークトポロジーも考慮して、ソースＩＰアドレスから宛先ＩＰアドレスまでの各パスを算出し、各パスにおける最初の転送機器についてサービスフローサンプリングを行い、サンプリングの方式により、サービスフローが通過した転送機器を上記サービスフローパスにおける最初の転送機器として特定する。
【００１４】
本発明では、別の実施例として、上記前ホップ転送機器が指定サービスフローのパスにおける何れか1つの非最初の転送機器である場合に、当該前ホップ転送機器は、検出パケットを構築せず、受信された検出パケットを本第１転送機器へ転送する。本第１転送機器へ転送された検出パケットそのものは、第１検出パケットとなる。
【００１５】
第１検出パケットのパケットヘッダに含まれる転送情報と、前記指定サービスフローのパケットヘッダに含まれる転送情報とは、同じである。後文では、例を挙げて第１検出パケットのパケットヘッダに含まれる転送情報を記述するため、ここで繰り返し説明しない。
【００１６】
ステップ１０２では、第１転送機器は、ＳＤＮコントローラへ転送エラーメッセージを送信し、転送エラーメッセージには、前記第１検出パケットのペーロードにおける全ての機器アドレスが付加される。
【００１７】
本発明では、一実施例として、第１検出パケットのパケットヘッダは、ＴＴＬを含み、ＴＴＬは、初期値である。
【００１８】
第１検出パケットのパケットヘッダに含まれるＴＴＬに基づいて、ステップ１０２における第１転送機器がＳＤＮコントローラへ転送エラーメッセージを送信することは、下記のことを含む。
【００１９】
第１検出パケットのパケットヘッダにおけるＴＴＬを更新し、更新後のＴＴＬが０に等しい場合に、前記第１検出パケットの転送にエラーが発生したと確認し、前記ＳＤＮコントローラへ転送エラーメッセージを送信する。一実施例として、第１検出パケットのパケットヘッダにおけるＴＴＬを更新することは、具体的に、第１検出パケットのパケットヘッダにおけるＴＴＬから所定値を減算する。所定値は、上記初期値に等しい。
【００２０】
本発明では、一実施例として、転送エラーメッセージは、パケットヘッダにおけるＴＴＬが０に更新された第１検出パケットである。
【００２１】
ステップ１０３では、第１転送機器は、自機器の機器アドレスを第１検出パケットのペーロードに追加することで第２検出パケットを取得し、第２検出パケットのパケットヘッダにおける前記転送情報に基づいて前記第２検出パケットを前記指定サービスフローのパスにおける次ホップ転送機器へ転送する。
【００２２】
本発明の例示では、ステップ１０３に、第２検出パケットのパケットヘッダにおけるＴＴＬが初期値である。このように、指定サービスフローのパスにおける次ホップ転送機器は、第２検出パケットを受信したときに、その中のＴＴＬから初期値に等しい所定値を減算すると、第２検出パケットの転送にエラーが出たと確認できる。即ち、当該次ホップ転送機器は、ステップ１０２におけるＳＤＮコントローラへ転送エラーメッセージを報告することを実行できる。これより分かるように、次ホップ転送機器が第２検出パケットを受信したときに、次ホップ転送機器の処理とステップ１０２およびステップ１０３における第１転送機器の処理とは、同じである。即ち、次ホップ転送機器は、第１転送機器としてもよく、第２検出パケットは、第１検出パケットとしてもよい。
【００２３】
説明すべきことは、第１転送機器がステップ１０２およびステップ１０３を実行する順番について前後を問わない。
【００２４】
ステップ１０３から分かるように、指定サービスフローパスにおける転送機器の何れも、検出パケットを転送する際、自身の機器アドレスを検出パケットに追加する。上記ステップ１０２で記述されたように、第１検出パケットのペーロードにおける全ての機器アドレスが転送エラーメッセージに付加され、指定サービスフローパスにおける最後１ホップ転送機器からＳＤＮコントローラへ報告された転送エラーメッセージが、指定サービスフローパスにおける、当該最後１ホップ転送機器以外の全ての転送機器の機器アドレスを含み、且つこれらの機器アドレスの転送エラーパケットにおける順位と、対応する転送機器の指定サービスフローパスにおける順位とが同じである。したがって、ＳＤＮコントローラは、上記最後１ホップ転送機器から報告された転送エラーメッセージに基づいて、指定サービスフローのパスを正確に特定する。これは、ＳＤＮコントローラに適用される図２に示すフローを参照すればよいため、ここで繰り返し説明しない。
【００２５】
本発明の例示では、第１検出パケットのパケットヘッダは、チェックサムを更に含み、チェックサムは、サービスフローの宛先ホストが第１検出パケットを受信したときに第１検出パケットを廃棄するように、チェックサムのエラーを示す指定検証値として配置される。
【００２６】
一実施例として、第１検出パケットのパケットヘッダは、ＩＰヘッダと、伝送層プロトコルヘッダ（ＴＣＰ／ＵＤＰヘッダ）とに細かく区分される。上記ＴＴＬは、ＩＰヘッダのフィールドであり、チェックサムは、ＴＣＰ／ＵＤＰヘッダのフィールドである。ＩＰヘッダに含まれる転送情報は、ソースＩＰアドレス、宛先ＩＰアドレス、プロトコルタイプ、および、差別化サービスコードポイント（ＤＳＣＰ）を含み、ＴＣＰ／ＵＤＰヘッダに含まれる転送情報は、ソースポート番号および宛先ポート番号を含む。
【００２７】
説明すべきことは、本発明の例示において、実際の需要に応じてステップ１０１で構築された検出パケットにはより多くのヘッダを追加してもよい。例えば、ＶＸＬＡＮパケットパスを検出しようとする場合、ステップ１０１で構築された検出パケットにＶＸＬＡＮヘッダを追加する。
【００２８】
これで、図１に示すフローは、完成する。
以上で記述されたフローから分かるように、本発明の例示において、転送機器は、実際のサービスフローのパケットヘッダを模倣することで、サービスフローパスを検出するための検出パケットを構築する。このように、各転送機器は、検出パケットのパケットヘッダに含まれる転送情報に基づいて検出パケットを転送する際、検出パケットと実際のサービスフローとの転送挙動が一致することを確保可能であり、実際のサービスフローのパスを最終的に正確に特定できる。
【００２９】
図２を参照すると、図２は、本発明の別の方法フローチャートである。当該フローは、図１に示すフローに対応し、ＳＤＮコントローラに適用される。
【００３０】
図２に示すように、当該フローは、以下のステップを含んでもよい。
ステップ２０１では、ＳＤＮコントローラは、転送機器からの転送エラーメッセージを受信する。ここでの転送機器は、指定サービスフローパスにおける何れか１つの非最初の転送機器であってもよい。
【００３１】
上述した通り、ここでの転送エラーメッセージは、転送機器が検出パケットを受信したときに送信したものである。
【００３２】
図２に示すフローを実行する前に、ＳＤＮコントローラは、更に、指定サービスフローパスにおける最初の転送機器を特定し、且つ、当該最初の転送機器が検出パケットを構築するように、当該最初の転送機器へ制御命令を送信する必要がある。ここで、ＳＤＮコントローラは、上記サンプリング方式により、指定サービスフローパスにおける最初の転送機器を特定する。
【００３３】
本発明の例示では、転送機器から送信された転送エラーメッセージには、検出パケットのペーロードにおける全ての機器アドレスが付加される。ここでの全ての機器アドレスは、検出パケットが当該転送エラーメッセージの報告者に到達する前に既にあった各転送機器の機器アドレスを含む。
【００３４】
ステップ２０２では、ＳＤＮコントローラは、受信された最後１つの転送エラーメッセージに付加される全ての機器アドレスに基づいて、指定サービスフローのパスを特定する。
【００３５】
本発明の例示では、ＳＤＮコントローラは、サービスフローパスの検出について時間制限を実施する。ＳＤＮコントローラは、設定時間内でサービスフロー検出に対する転送エラーメッセージを受信していない場合に、直近受信された１つの転送エラーメッセージを最後１つの転送エラーメッセージとして特定し、最後１つの転送エラーメッセージに付加される全ての機器アドレスに基づいて、サービスフローのパスを特定する。
【００３６】
一実施例では、ＳＤＮコントローラは、最後１つの転送エラーメッセージに付加される全ての機器アドレスを基に、特定された指定サービスフローの経由した最後１つの転送機器の機器アドレスも考慮して、サービスフローのパスを特定する。ＳＤＮコントローラがサービスフローの経由した最後１つの転送機器を特定する方式は、上記ＳＤＮコントローラがサービスフローの経由した最初の転送機器を特定する方式と類似しており、具体的に下記のようになる。つまり、ＳＤＮコントローラは、サービスフローのソースＩＰアドレス、宛先ＩＰアドレスを基に、それが管理するネットワークトポロジーも考慮して、ソースＩＰアドレスから宛先ＩＰアドレスまでの各パスを算出し、各パスにおける最後１つの転送機器に対してサービスフローサンプリングを行い、サンプリングの方式により最後１つの転送機器を特定する。
【００３７】
これで、図２に示すフローは、完成する。
図２に示すフローから分かるように、本発明の例示では、転送エラーメッセージに少なくとも１つの機器アドレスが付加されることにより、ＳＤＮコントローラが実際のサービスフローパスを素早く特定することは、容易になり、ＳＤＮコントローラの稼働量は、減少可能である。
【００３８】
以下では、１つの具体的な実施例を用いて図１に示すフローを記述する。
図３を参照すると、図３は、本発明に係る実施例フローチャートである。本実施例は、検出サービスフロー（Ｆｌｏｗ）を例として記述される。Ｆｌｏｗ１は、ビデオパケットであり、そのパケットフォーマットが図４に示される。
【００３９】
ＳＤＮコントローラは、Ｆｌｏｗ１のソースＩＰアドレス、宛先ＩＰアドレスを基に、収集された図３に示すネットワークのネットワークトポロジーも考慮して、Ｆｌｏｗ１の可能性のあるパスを算出し、算出された各パスにおける最初の転送機器に対してサービスフローサンプリングを行い、サンプリングの方式により、ルータ（Ｒｏｕｔｅｒ）ＢをＦｌｏｗ１のパスにおける最初の転送機器として特定する。
【００４０】
ＳＤＮコントローラは、Ｆｌｏｗ１のパスにおける最初の転送機器Ｒｏｕｔｅｒ Ｂへ制御命令を配信し、制御命令には、Ｆｌｏｗ１のパケットヘッダに含まれる転送情報が付加される。ただし、Ｆｌｏｗ１のパケットヘッダに含まれる転送情報は、Ｆｌｏｗ１のＩＰヘッダに含まれる転送情報と、Ｆｌｏｗ１のＵＤＰヘッダに含まれる転送情報とを含む。Ｆｌｏｗ１のＩＰヘッダに含まれる転送情報は、例えば、ソースＩＰアドレス（ＩＰ１）、宛先ＩＰアドレス（ＩＰ３）、プロトコルタイプ、およびＤＳＣＰを含み、Ｆｌｏｗ１のＵＤＰヘッダに含まれる転送情報は、例えば、ソースポート番号および宛先ポート番号を含む。
【００４１】
Ｒｏｕｔｅｒ Ｂは、制御命令を受信し、制御命令における転送情報に基づいて、Ｆｌｏｗ１を検出するための検出パケットを構築する。記述の便宜上、ここで、構築された検出パケットは、検出パケット１_１と記される。検出パケット１_１のＩＰヘッダにおけるＴＴＬは、初期値（本実施例では、１を例とする）である。検出パケット１_１のＩＰヘッダは、受信された制御命令に付加されるＦｌｏｗ１のＩＰヘッダに含まれる転送情報、例えば、ソースＩＰアドレス（ＩＰ１）、宛先ＩＰアドレス（ＩＰ３）、プロトコルタイプ、ＤＳＣＰを更に含み、検出パケット１_１のＵＤＰヘッダにおけるチェックサムは、チェックサムのエラーを示すための指定検証値（０ｘ０を例とする）であり、検出パケット１_１のＵＤＰヘッダは、受信された制御命令に付加されるＦｌｏｗ１のＵＤＰヘッダに含まれる転送情報、例えば、ソースポート番号、宛先ポート番号を更に含む。
【００４２】
Ｒｏｕｔｅｒ Ｂは、本Ｒｏｕｔｅｒ ＢのＩＰアドレスを検出パケット１_１に追加する。記述の便宜上、ここで、Ｒｏｕｔｅｒ ＢのＩＰアドレスが追加された検出パケットは、検出パケット１_２と記される。図６は、検出パケット１_２のフォーマットを示す。
【００４３】
Ｒｏｕｔｅｒ Ｂは、検出パケット１_２のＩＰヘッダにおける転送情報とＵＤＰヘッダにおける転送情報とに基づいて、検出パケット１_２を転送する。一実施例として、Ｒｏｕｔｅｒ Ｂは、検出パケット１_２が送信された旨のメッセージをＳＤＮコントローラへ通知する。このように、ＳＤＮコントローラは、Ｆｌｏｗ１のパスが既に検出され始めたと把握できる。
【００４４】
仮にＲｏｕｔｅｒ Ｂが検出パケット１_２のＩＰヘッダにおける転送情報と、ＵＤＰヘッダにおける転送情報とに基づいて検出パケット１_２を転送すれば、当該検出パケット１_２は、最終的にＲｏｕｔｅｒ Ａまで転送される。
【００４５】
Ｒｏｕｔｅｒ Ａは、検出パケット１_２を受信した。
Ｒｏｕｔｅｒ Ａは、検出パケット１_２のＴＴＬから所定値（１を例とする）を減算して０を取得し、検出パケット１_２の転送にエラーが出たと特定する。その際、検出パケット１_２のＴＴＬは、０となる。記述の便宜上、ここで、ＴＴＬが０である検出パケット１_２は、検出パケット１_３と記される。
【００４６】
Ｒｏｕｔｅｒ Ａは、検出パケット１_３を転送エラーメッセージとしてＳＤＮコントローラへ報告する。
【００４７】
Ｒｏｕｔｅｒ Ａは、検出パケット１_３におけるＴＴＬを初期値（１を例とする）に更新し、本Ｒｏｕｔｅｒ ＡのＩＰアドレスを検出パケット１_３に追加する。記述の便宜上、ここで、Ｒｏｕｔｅｒ ＡのＩＰアドレスが追加された検出パケットは、検出パケット１_４と記される。その際、検出パケット１_４には、Ｒｏｕｔｅｒ ＢのＩＰアドレス、Ｒｏｕｔｅｒ ＡのＩＰアドレスが付加される。本実施例において、検出パケット１_４に付加されるＲｏｕｔｅｒ ＢのＩＰアドレス、Ｒｏｕｔｅｒ ＡのＩＰアドレスは、検出パケットへ追加された順番に応じて配列されている。Ｒｏｕｔｅｒ ＡのＩＰアドレスは、Ｒｏｕｔｅｒ ＢのＩＰアドレスの後に位置し、図７は、検出パケット１_４のパケット構造を示す。
【００４８】
Ｒｏｕｔｅｒ Ａは、検出パケット１_４のＩＰヘッダにおける転送情報と、ＵＤＰヘッダにおける転送情報とに基づいて、検出パケット１_４を転送する。仮にＲｏｕｔｅｒ Ａが検出パケット１_４のＩＰヘッダにおける転送情報とＵＤＰヘッダにおける転送情報とに基づいて検出パケット１_４を転送すれば、当該検出パケット１_４は、最終的にＲｏｕｔｅｒ Ｃまで転送される。
【００４９】
Ｒｏｕｔｅｒ Ｃは、検出パケット１_４を受信した。
Ｒｏｕｔｅｒ Ｃは、検出パケット１_４のＴＴＬから所定値（１を例とする）を減算することで、０を取得し、検出パケット１_４の転送にエラーが発生したと特定する。その際、検出パケット１_４のＴＴＬは、０になる。記述の便宜上、ここで、ＴＴＬが０である検出パケット１_４は、検出パケット１_５と記される。
【００５０】
Ｒｏｕｔｅｒ Ｃは、検出パケット１_５を転送エラーメッセージとしてＳＤＮコントローラへ報告する。
【００５１】
Ｒｏｕｔｅｒ Ｃは、検出パケット１_５におけるＴＴＬを初期値（１を例とする）に更新し、本Ｒｏｕｔｅｒ ＣのＩＰアドレスを検出パケット１_５に追加する。記述の便宜上、ここで、Ｒｏｕｔｅｒ ＣのＩＰアドレスが追加された検出パケットは、検出パケット１_６と記される。その際、検出パケット１_６には、Ｒｏｕｔｅｒ ＢのＩＰアドレス、Ｒｏｕｔｅｒ ＡのＩＰアドレス、及び、Ｒｏｕｔｅｒ ＣのＩＰアドレスが付加される。本実施例では、検出パケット１_６に付加されるＲｏｕｔｅｒ ＢのＩＰアドレス、Ｒｏｕｔｅｒ ＡのＩＰアドレス、Ｒｏｕｔｅｒ ＣのＩＰアドレスは、検出パケットへ追加された順番に応じて配列されている。ただし、Ｒｏｕｔｅｒ ＡのＩＰアドレスは、Ｒｏｕｔｅｒ ＢのＩＰアドレスの後に位置し、Ｒｏｕｔｅｒ ＣのＩＰアドレスは、Ｒｏｕｔｅｒ ＡのＩＰアドレスの後に位置し、図８は、検出パケット１_６のパケット構造を示す。
【００５２】
Ｒｏｕｔｅｒ Ｃは、検出パケット１_６のＩＰヘッダにおける転送情報とＵＤＰヘッダにおける転送情報とに基づいて、検出パケット１_６を転送する。仮にＲｏｕｔｅｒ Ｃが検出パケット１_６のＩＰヘッダにおける転送情報とＵＤＰヘッダにおける転送情報とに基づいて検出パケット１_６を転送すれば、当該検出パケット１_６は、最終的にＲｏｕｔｅｒ Ｆまで転送される。
【００５３】
Ｒｏｕｔｅｒ Ｆは、検出パケット１_６を受信した。
Ｒｏｕｔｅｒ Ｆは、検出パケット１_６のＴＴＬから所定値（１を例とする）を減算して０を取得し、検出パケット１_６の転送にエラーが出たと特定する。その際、検出パケット１_６のＴＴＬは、０となる。記述の便宜上、ここで、ＴＴＬが０である検出パケット１_６は、検出パケット１_７と記される。
【００５４】
Ｒｏｕｔｅｒ Ｆは、検出パケット１_７を転送エラーメッセージとしてＳＤＮコントローラへ報告する。
【００５５】
Ｒｏｕｔｅｒ Ｆは、検出パケット１_７におけるＴＴＬを初期値（１を例とする）に更新し、本Ｒｏｕｔｅｒ ＦのＩＰアドレスを検出パケット１_７に追加する。記述の便宜上、ここで、Ｒｏｕｔｅｒ ＦのＩＰアドレスが追加された検出パケット１_７は、検出パケット１_８と記される。その際、検出パケット１_８には、Ｒｏｕｔｅｒ ＢのＩＰアドレス、Ｒｏｕｔｅｒ ＡのＩＰアドレス、Ｒｏｕｔｅｒ ＣのＩＰアドレス、Ｒｏｕｔｅｒ ＦのＩＰアドレスが付加される。本実施例では、検出パケット１_８に付加されるＲｏｕｔｅｒ ＢのＩＰアドレス、Ｒｏｕｔｅｒ ＡのＩＰアドレス、Ｒｏｕｔｅｒ ＣのＩＰアドレス、Ｒｏｕｔｅｒ ＦのＩＰアドレスは、検出パケットへ追加された順番に応じて配列されている。Ｒｏｕｔｅｒ ＡのＩＰアドレスは、Ｒｏｕｔｅｒ ＢのＩＰアドレスの後に位置し、Ｒｏｕｔｅｒ ＣのＩＰアドレスは、Ｒｏｕｔｅｒ ＡのＩＰアドレスの後に位置し、Ｒｏｕｔｅｒ ＦのＩＰアドレスは、Ｒｏｕｔｅｒ ＣのＩＰアドレスの後に位置し、図９は、検出パケット１_８のフォーマットを示す。
【００５６】
Ｒｏｕｔｅｒ Ｆは、検出パケット１_８のＩＰヘッダにおける転送情報とＵＤＰヘッダにおける転送情報とに基づいて検出パケット１_８を転送する。仮にＲｏｕｔｅｒ Ｆが検出パケット１_８のＩＰヘッダにおける転送情報とＵＤＰヘッダにおける転送情報とに基づいて検出パケット１_８を転送すれば、当該検出パケット１_８は、最終的に宛先ホストＰＣ３まで転送される。
【００５７】
ＰＣ３は、検出パケット１_８を受信して検出パケット１_８のＵＤＰヘッダについて解析を行った結果、検出パケット１_８のＵＤＰヘッダにおけるチェックサムが、チェックサムのエラーを示すための指定検証値（０ｘ０を例とする）であることを発見した場合に、検出パケット１_８を廃棄する。これで、検出パケット転送手順は、終了する。
【００５８】
ＳＤＮコントローラは、設定時間内で転送エラーメッセージを受信していない場合に、直近受信された転送エラーメッセージである上記検出パケット１_７を最後１つの転送エラーメッセージとし、Ｆｌｏｗ１のパスを特定する。ただし、ＳＤＮコントローラは、下記のような情報を確定可能である。つまり、転送エラーメッセージに付加される機器アドレスがＲｏｕｔｅｒ ＢのＩＰアドレス、Ｒｏｕｔｅｒ ＡのＩＰアドレス、Ｒｏｕｔｅｒ ＣのＩＰアドレスを含み、これらのアドレスの転送エラーメッセージにおける順位と、対応する機器のＦｌｏｗ１パスにおける順位とが同じであり、サンプリングで特定されたＦｌｏｗ１が経由した最後１つの転送機器がＲｏｕｔｅｒ Ｆである。これにより、最終的に算出されたＦｌｏｗ１のパスに含まれる転送機器は、順にＲｏｕｔｅｒ Ｂ、Ｒｏｕｔｅｒ Ａ、Ｒｏｕｔｅｒ Ｃ、Ｒｏｕｔｅｒ Ｆとなる。
【００５９】
これで、実施例の記述は、完成する。
本発明に係る方法は、上述されている。以下では、本発明に係る装置を記述する。
【００６０】
図１１を参照すると、図１１は、本発明の幾つかの実施例に係る転送機器のハードウェア構造図である。当該転送機器１１００は、プロセッサ１１０１と機器読み取り可能な記憶媒体１１０２とを備える。プロセッサ１１０１と機器読み取り可能な記憶媒体１１０２とは、システムバス１１０３を介して互いに通信可能である。また、プロセッサ１１０１は、機器読み取り可能な記憶媒体１１０２に記憶されたパス検出論理１０００に対応する機器の実行可能な指令を読み取って実行することにより、上述したパス検出方法を実行可能である。
【００６１】
本文で言及される機器読み取り可能な記憶媒体１１０２は、如何なる電気的なもの、磁気的なもの、光学的なものまたは他の物理的記憶装置であってもよく、情報（例えば、実行可能な指令、データ等）を含むか記憶可能である。例えば、機器読み取り可能な記憶媒体１１０２は、ＲＡＭ（Ｒａｎｄｏｍ Ａｃｃｅｓｓ Ｍｅｍｏｒｙ、ランダムアクセスメモリ）、揮発性メモリ、不揮発性メモリ、フラッシュメモリ、記憶ドライバ（例えば、ハードディスクドライバ）、ソリッド・ステート・ディスク、如何なるタイプの記憶ディスク（例えば、光ディスク、ＤＶＤなど）、若しくは類似する記憶媒体、またはそれらの組み合わせであってもよい。
【００６２】
図１０を参照すると、図１０は、本発明に係るパス検出論理の構造図である。当該パス検出論理１０００は、転送機器に適用される。図１０に示すように、当該論理１０００は、受信モジュール１００１と転送モジュール１００２を含む。
【００６３】
受信モジュール１００１は、指定サービスフローのパスにおける前ホップ転送機器から送信された、前記指定サービスフローのパスを検出するための第１検出パケットを受信する。前記第１検出パケットのパケットヘッダに含まれる転送情報と、前記指定サービスフローのパケットヘッダに含まれる転送情報とは、同じであり、前記第１検出パケットのペーロードには、前記指定サービスフローのパスにおける少なくとも１つの転送機器の機器アドレスが付加される。
【００６４】
転送モジュール１００２は、自転送機器の機器アドレスを前記第１検出パケットのペーロードに追加して第２検出パケットを取得し、前記第２検出パケットのパケットヘッダにおける前記転送情報に基づいて前記第２検出パケットを前記指定サービスフローのパスにおける次ホップ転送機器へ転送し、ＳＤＮコントローラへ前記第１検出パケットのペーロードにおける少なくとも１つの機器アドレスが付加される転送エラーメッセージを送信することにより、前記ＳＤＮコントローラに前記転送エラーメッセージに付加される前記少なくとも１つの機器アドレスに基づいて前記指定サービスフローのパスを特定させる。
【００６５】
一実施例では、前記前ホップ転送機器が前記指定サービスフローのパスにおける最初の転送機器であるときに、前記第１検出パケットは、前記最初の転送機器が前記ＳＤＮコントローラの制御命令に基づいて構築した検出パケットとなり、これにより前記第１検出パケットのペーロードには、前記最初の転送機器の機器アドレスが付加される。
【００６６】
一実施例では、前記第１検出パケットのパケットヘッダは、ＴＴＬを含み、前記ＴＴＬは、初期値である。
【００６７】
一実施例では、前記転送モジュール１００２は、前記ＴＴＬから所定値を減算することで前記第１検出パケットのパケットヘッダにおける前記ＴＴＬを更新する。ただし、前記所定値は、前記ＴＴＬの初期値に等しい。更新後の前記ＴＴＬが０に等しい場合に、前記第１転送機器は、前記第１検出パケットの転送にエラーが発生したと確認し、前記ＳＤＮコントローラへ前記転送エラーメッセージを送信する。
【００６８】
一実施例では、前記転送エラーメッセージには、前記ＴＴＬが０に更新された前記第１検出パケットが付加される。前記第２検出パケットのパケットヘッダにおける前記ＴＴＬは、前記初期値である。
【００６９】
一実施例では、前記第１検出パケットのパケットヘッダは、チェックサムを更に含み、前記チェックサムは、前記指定サービスフローの宛先ホストが前記第１検出パケットを受信したときに前記第１検出パケットを廃棄するように、チェックサムのエラーを示す指定検証値として配置される。
【００７０】
一実施例では、前記ＴＴＬは、前記ＩＰヘッダのフィールドであり、前記チェックサムは、伝送層プロトコルヘッダのフィールドである。ただし、前記ＩＰヘッダに含まれる転送情報は、ソースＩＰアドレス、宛先ＩＰアドレス、プロトコルタイプ、および、差別化サービスコードポイント（ＤＳＣＰ）を含み、前記伝送層プロトコルヘッダに含まれる転送情報は、ソースポート番号および宛先ポート番号を含む。
【００７１】
これで、図１０に示す論理記述は、完成する。
図１３を参照すると、図１３は、本発明の幾つかの実施例に係るＳＤＮコントローラのハードウェア構造図である。当該ＳＤＮコントローラ１３００は、プロセッサ１３０１と機器読み取り可能な記憶媒体１３０２とを備える。プロセッサ１３０１と機器読み取り可能な記憶媒体１３０２とは、システムバス１３０３を介して互いに通信可能である。また、プロセッサ１３０１は、機器読み取り可能な記憶媒体１３０２に記憶されたパス検出論理１２００に対応する機器の実行可能な指令を読み取って実行することにより、上述したパス検出方法を実行可能である。
【００７２】
本文で言及される機器読み取り可能な記憶媒体１３０２は、如何なる電気的なもの、磁気的なもの、光学的なものまたは他の物理的記憶装置であってもよく、情報（例えば、実行可能な指令、データ等）を含むか記憶可能である。例えば、機器読み取り可能な記憶媒体１３０２は、ＲＡＭ（Ｒａｎｄｏｍ Ａｃｃｅｓｓ Ｍｅｍｏｒｙ、ランダムアクセスメモリ）、揮発性メモリ、不揮発性メモリ、フラッシュメモリ、記憶ドライバ（例えば、ハードディスクドライバ）、ソリッド・ステート・ディスク、如何なるタイプの記憶ディスク（例えば、光ディスク、ＤＶＤなど）、若しくは類似する記憶媒体、またはそれらの組み合わせであってもよい。
【００７３】
本発明は、別の装置構造図を更に提供する。図１２を参照すると、図１２は、本発明に係る別のパス検出論理構造図である。当該装置は、ＳＤＮコントローラに適用され、受信モジュール１２０１を備える。
【００７４】
受信モジュール１２０１は、転送機器からの転送エラーメッセージを受信する。
特定モジュール１２０２は、受信された最後１つの転送エラーメッセージに付加される全ての機器アドレスに基づいて指定サービスフローのパスを特定する。
【００７５】
一実施例では、前記論理は、命令モジュール１２０３を更に含み、当該命令モジュール１２０３は、指定サービスフローパスにおける最初の転送機器を特定し、当該最初の転送機器へ制御命令を送信する。このように、当該最初の転送機器は、検出パケットを構築する。
【００７６】
これで、図１２に示す装置の記述は、完成する。
装置実施例は、方法実施例に基本的に対応するため、その関連箇所が方法実施例部分の説明を参照すればよい。上述した装置実施例は、単に例示であり、その中、分離部品として説明される手段が物理的に分離されるものであってもよくでなくてもよい。また、手段として表示される部品は、物理手段であってもでなくてもよい。更に、それらの手段は、１箇所に位置してもよく、複数のネットワークセルに分散してもよい。実際の需要に応じてその中の一部または全部のモジュールを選択して本実施例の目的を果たすことが可能である。当業者は、進歩性に値する労働をせずに、理解して実施可能である。
【００７７】
説明すべきことは、本文に、第１と第２等のような関係用語は、単に１つの実体や操作を別の実体や操作と区分させるために用いられ、これらの実体や操作の間になんらかの実際的な関係や順番が存在するとは必ずしも要求やヒントすることではない。用語「含む」、「備える」またはほかの何れかの同義語が非排他的含有をカバーすることを意図する。このように、一シリーズの要素を有する手順、方法、物品または機器は、それらの要素を有するだけではなく、明確に挙げられていない他の要素も有し、またはこのような手順、方法、物品または機器に固有の要素も有する。更なる制限がない限り、語句「１つの…を含む」で限定される要素は、前記要素を有する手順、方法、物品または機器に他の同じ要素を更に有することをあえて排除しない。
【００７８】
以上では、本発明の実施例に供される方法と装置を詳細に説明した。本文では、具体的な例を用いて本発明の原理及び実施形態を説明したが、以上の実施例の説明が単に本発明の方法およびその要旨を容易に理解するために用いられる。それとともに、当業者であれば、本発明の思想に基づいて具体的な実施形態及び応用範囲を変更可能である。したがって、本明細書の内容は、本発明に対する制限として理解されるべきではない。 
【図１】
0006877573.tif 000002
【図２】
0006877573.tif 000003
【図３】
0006877573.tif 000004
【図４】
0006877573.tif 000005
【図５】
0006877573.tif 000006
【図６】
0006877573.tif 000007
【図７】
0006877573.tif 000008
【図８】
0006877573.tif 000009
【図９】
0006877573.tif 000010
【図１０】
0006877573.tif 000011
【図１１】
0006877573.tif 000012
【図１２】
0006877573.tif 000013
【図１３】
0006877573.tif 000014