(57)【要約】【課題】制御装置側の処理負荷を軽減できる通信装置等を提供する。【解決手段】通信装置は、登録部と、制御部とを有する。登録部は、第１のパケットのフロー識別情報に対応する宛先情報を制御装置に要求する際に当該フロー識別情報をテーブル内に登録する。制御部は、前記テーブル内への登録後に受信した第２のパケットのフロー識別情報が前記テーブル内に未登録の場合にのみ、当該フロー識別情報に対応する前記宛先情報を前記制御装置に要求する。【選択図】図３
2018064239.tif 000002
【特許請求の範囲】
【請求項１】
第１のパケットのフロー識別情報に対応する宛先情報を制御装置に要求する際に当該フロー識別情報をテーブル内に登録する登録部と、
登録後に受信した第２のパケットのフロー識別情報が前記テーブル内に未登録の場合にのみ、当該フロー識別情報に対応する前記宛先情報を前記制御装置に要求する制御部と
を有することを特徴とする通信装置。
【請求項２】
前記制御部は、
前記登録後に受信した前記第２のパケットのフロー識別情報が前記テーブル内に登録済みの場合、当該登録後に受信した前記第２のパケットを廃棄することを特徴とする請求項１に記載の通信装置。
【請求項３】
前記登録部は、
前記フロー識別情報及び当該フロー識別情報の宛先情報を要求する際の時刻情報を前記テーブル内に登録し、
前記制御部は、
前記登録後に受信した前記第２のパケットのフロー識別情報が前記テーブル内に登録済みの場合に、当該フロー識別情報に対応した前記時刻情報が有効時間内にあるか否かを判定し、前記時刻情報が有効時間内にある場合に、当該登録後に受信した前記第２のパケットを廃棄することを特徴とする請求項２に記載の通信装置。
【請求項４】
前記制御部は、
前記時刻情報が有効時間内にない場合に、当該登録後に受信した前記第２のパケットのフロー識別情報に対応する前記宛先情報を前記制御装置に要求することを特徴とする請求項３に記載の通信装置。
【請求項５】
前記制御装置から前記宛先情報の要求に対する前記フロー識別情報に対応する宛先情報を受信した場合に、当該フロー識別情報を前記テーブルから削除することを特徴とする請求項１〜４の何れか一つに記載の通信装置。
【請求項６】
前記制御部は、
登録後に受信した前記第２のパケットのフロー識別情報を要求する際に、前記第２のパケット以外に要求待ちのパケットがあるか否かを判定し、前記要求待ちのパケットがある場合に、前記第２のパケットと前記要求待ちのパケットのうち、優先度が高度のパケットから優先的にフロー識別情報の宛先情報を要求することを特徴とする請求項１〜５の何れか一つに記載の通信装置。
【請求項７】
第１のパケットのフロー識別情報に対応する宛先情報を制御装置に要求する際に当該フロー識別情報をテーブル内に登録しておき、
登録後に受信した第２のパケットのフロー識別情報が前記テーブル内に未登録の場合にのみ、当該フロー識別情報に対応する前記宛先情報を前記制御装置に要求する
処理を実行することを特徴とする宛先要求方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置及び宛先要求方法に関する。
【背景技術】
【０００２】
近年、ネットワークを構成する機器をソフトウェアによって集中的に制御して、ネットワークの構造、構成や設定等を柔軟、かつ動的に変更することを可能とする技術としてＳＤＮ（Software  Defined  Network）が知られている。
【０００３】
ＳＤＮシステムは、複数台のＳＤＮ対応装置と、ＳＤＮ対応装置を管理するＳＤＮコントローラとを有する。ＳＤＮ対応装置には、宛先不明のパケットを受信した場合に、受信パケットの宛先をＳＤＮコントローラに要求するパケットイン機能がある。ＳＤＮコントローラは、ＳＤＮ対応装置からの宛先要求に応じて宛先を検索し、その検索結果の宛先をＳＤＮ対応装置に通知する。その結果、ＳＤＮ対応装置は、宛先不明のパケットを受信した場合でも、ＳＤＮコントローラから宛先を受信し、その宛先に基づき、受信パケットを他のＳＤＮ対応装置に送信できる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−１８６１４２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、ＳＤＮ対応装置は、宛先不明のパケットの宛先をＳＤＮコントローラに要求する場合に、その宛先不明のパケットを含む制御パケットをＳＤＮコントローラに通知する。つまり、ＳＤＮ対応装置は、宛先不明のパケットを受信する都度、その宛先不明のパケットを含む制御パケットをＳＤＮコントローラに順次に通知することになる。
【０００６】
図１４は、宛先要求に関わるパケットの流れの一例を示す説明図である。尚、説明の便宜上、ＳＤＮ対応装置は、フローＩＤ“Ａ”、“Ｂ”及び“Ｃ”のパケットを受信し、フローＩＤ“Ａ”のパケットの宛先は登録済み、フローＩＤ“Ｂ”及び“Ｃ”のパケットの宛先は不明とする。フローＩＤ“Ａ”のパケットは“Ａ＃１”〜“Ａ＃４”、フローＩＤ“Ｂ”のパケットは“Ｂ＃１”〜“Ｂ＃５”、フローＩＤ“Ｃ”は“Ｃ＃１”及び“Ｃ＃２”とする。ＳＤＮ対応装置は、パケット“Ａ＃１”を受信した場合、フローＩＤ“Ａ”の宛先が登録済みのため、パケット“Ａ＃１”を宛先に転送する。次にＳＤＮ対応装置は、パケット“Ｂ＃１”を受信した場合、そのフローＩＤ“Ｂ”の宛先が不明のため、パケット“Ｂ＃１”を含む制御パケットをＳＤＮコントローラに通知する。更に、ＳＤＮ対応装置は、次のパケット“Ｂ＃２”を受信した場合でも、フローＩＤ“Ｂ”の宛先が不明のため、パケット“Ｂ＃１”を含む制御パケットをＳＤＮコントローラに通知する。つまり、ＳＤＮ対応装置は、ＳＤＮコントローラからフローＩＤ“Ｂ”の宛先を取得できるまで、パケット“Ｂ＃１”〜“Ｂ＃５”を受信し、その都度、制御パケットをＳＤＮコントローラに連続通知することになる。その結果、ＳＤＮコントローラは、連続して送られてくる制御パケットに対する処理負荷が大きくなる。しかも、制御パケットは、宛先不明のパケットを含むことになるため、その宛先不明パケットが高レートの場合、ＳＤＮコントローラ、すなわち制御装置側の処理負荷は顕著となる。
【０００７】
一つの側面では、制御装置側の処理負荷を軽減できる通信装置及び宛先要求方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
一つの態様として通信装置は、登録部と、制御部とを有する。登録部は、第１のパケットのフロー識別情報に対応する宛先情報を制御装置に要求する際に当該フロー識別情報をテーブル内に登録する。制御部は、登録後に受信した第２のパケットのフロー識別情報が前記テーブル内に未登録の場合にのみ、当該フロー識別情報に対応する前記宛先情報を前記制御装置に要求する。
【発明の効果】
【０００９】
一つの側面として、制御装置側の処理負荷を軽減できる。
【図面の簡単な説明】
【００１０】
【図１】図１は、実施例１のＳＤＮシステムの一例を示す説明図である。
【図２】図２は、ＳＤＮ対応装置のハードウェア構成の一例を示す説明図である。
【図３】図３は、ＮＰＵの機能構成の一例を示す説明図である。
【図４】図４は、フローテーブルのテーブル構成の一例を示す説明図である。
【図５】図５は、管理テーブルのテーブル構成の一例を示す説明図である。
【図６】図６は、第１のパケット受信処理に関わるＮＰＵの処理動作の一例を示すフローチャートである。
【図７】図７は、エントリ情報受信処理に関わるＣＰＵの処理動作の一例を示すフローチャートである。
【図８】図８は、宛先要求に関わるパケットの流れの一例を示す説明図である。
【図９】図９は、実施例２のＮＰＵの機能構成の一例を示す説明図である。
【図１０】図１０は、管理テーブルのテーブル構成の一例を示す説明図である。
【図１１】図１１は、第２のパケット受信処理に関わるＮＰＵの処理動作の一例を示すフローチャートである。
【図１２】図１２は、第３のパケット受信処理に関わるＮＰＵの処理動作の一例を示すフローチャートである。
【図１３】図１３は、宛先要求プログラムを実行する情報処理装置の一例を示す説明図である。
【図１４】図１４は、宛先要求に関わるパケットの流れの一例を示す説明図である。
【発明を実施するための形態】
【００１１】
以下、図面に基づいて、本願の開示する通信装置及び宛先要求方法の実施例を詳細に説明する。尚、本実施例により、開示技術が限定されるものではない。また、以下に示す実施例は、矛盾を起こさない範囲で適宜組み合わせても良い。
【実施例１】
【００１２】
図１は、実施例１のＳＤＮシステム１の一例を示す説明図である。図１に示すＳＤＮシステム１は、複数のルータ２と、複数のＰＥ(Provider  Edge)ルータ３と、複数のＳＤＮ対応装置４と、ＳＤＮコントローラ５とを有する。ルータ２は、例えば、ＩＰ網６との間の通信を司る中継装置である。ＰＥルータ３は、ＩＰ網６側のルータ２と、ＳＤＮ網７側のＳＤＮ対応装置４との間の通信を司る中継装置である。ＳＤＮ対応装置４は、ＳＤＮ網７内の通信装置である。ＳＤＮコントローラ５は、ＳＤＮ網７内のＳＤＮ対応装置４を管理する制御装置である。
【００１３】
図２は、ＳＤＮ対応装置４のハードウェア構成の一例を示す説明図である。図２に示すＳＤＮ対応装置４は、複数のＩＦ(Interface)カード１０と、ＳＷ(Switch)カード２０と、制御カード３０とを有する。ＩＦカード１０は、Ｏ／Ｅ(Optical/Electrical)１１と、Ｅ／Ｏ１２と、ＰＨＹ(Physical)１３と、ＭＡＣ(Media  Access  Control)１４と、ＮＰＵ(Network  Processor  Unit)１５と、ＴＭＱＵＥ(Traffic  Manager  Que)１６とを有する。更に、ＩＦカード１０は、ＦＰＧＡ(Field  Programmable  Gate  Arrayed)１７と、ＣＰＵ(Central  Processing  Unit)１８とを有する。Ｏ／Ｅ１１は、例えば、ＰＥルータ３やＳＤＮ網７と接続し、受信した光信号をＥtｈｅｒｎｅｔ（登録商標）の電気信号に変換する光モジュールである。Ｅ／Ｏ１２は、例えば、ＰＥルータ３やＳＤＮ網７と接続し、電気信号を光信号に変換する光モジュールである。ＰＨＹ１３は、物理層のインタフェースである。ＭＡＣ１４は、データリンク層のインタフェースである。ＮＰＵ１５は、電気信号であるパケットの信号処理を司るユニットである。ＴＭＱＵＥ１６は、パケットのトラフィックのスケジュール等のＱｏＳを管理するユニットである。ＦＰＧＡ１７は、プログラミング可能なＬＳＩ（Large  Scale  Integration）である。ＣＰＵ１８は、ＩＦカード１０全体を制御する制御部である。
【００１４】
ＳＷカード２０は、ＳＷ２１を有する。ＳＷ２１は、ＩＦカード１０間でパケットの通信方路を切替えるスイッチである。制御カード３０は、ＳＷ３１と、ＣＰＵ３２と、ＰＨＹ３３と、Ｅ／Ｏ３４と、Ｏ／Ｅ３５とを有する。ＳＷ３１は、ＩＦカード１０内のＣＰＵ１８の制御信号を切替制御するスイッチである。ＣＰＵ３２は、制御カード３０全体を制御する。ＰＨＹ３３は、物理層のインタフェースである。Ｅ／Ｏ３４は、ＳＤＮコントローラ５と接続し、電気信号を光信号に変換する光モジュールである。Ｏ／Ｅ３５は、ＳＤＮコントローラ５と接続し、光信号を電気信号に変換する光モジュールである。
【００１５】
図３は、ＮＰＵ１５の機能構成の一例を示す説明図である。ＮＰＵ１５は、検査部４１と、検索部４２と、加工部４３と、振分部４４と、フローテーブル４５と、管理テーブル４６とを有する。検査部４１は、受信パケット内のＦＣＳ（Frame  Check  Sequence）をチェックする処理部である。検索部４２は、受信パケット内のフローＩＤを抽出し、抽出したフローＩＤに対応する宛先情報をフローテーブル４５から検索する。加工部４３は、フローＩＤに対応した宛先情報に基づき、例えば、ＶＬＡＮタグ等のアドレス情報の付け替え等の受信パケットを加工する。また、加工部４３は、フローＩＤに対応する宛先情報がフローテーブル４５内にない場合、受信パケットをパケットイン等の制御パケットに加工する。尚、パケットインは、受信パケットの宛先情報をＳＤＮコントローラ５に要求するための制御パケットである。振分部４４は、加工部４３から宛先情報に基づき編集した受信パケットを受信した場合、受信パケットをＴＭＱＵＥ１６に転送する。また、振分部４４は、加工部４３から制御パケットを受信した場合、制御パケットをＣＰＵ１８に転送する。
【００１６】
検索部４２は、登録部５１と、制御部５２とを有する。登録部５１は、宛先要求の制御パケットをＳＤＮコントローラ５に通知する際に宛先要求のフローＩＤ及び時刻情報を管理テーブル４６内に登録する。制御部５２は、管理テーブル４６のフローＩＤの登録有無に応じて、制御パケットの通知有無及び受信パケットの廃棄有無を制御する。制御部５２は、第１の判定部５２Ａを有する。第１の判定部５２Ａは、受信パケットのフローＩＤが管理テーブル４６内にあり、フローＩＤに対応する時刻情報がある場合、その時刻情報が有効時間内にあるか否かを判定する。尚、有効時間は、ＳＤＮコントローラ５に宛先要求の制御パケットを通知後の所定時間、すなわち制御パケットに対して宛先要求から宛先情報を得るまでの時間である。制御部５２は、時刻情報が有効時間内にある場合、その受信パケットを廃棄する。制御部５２は、時刻情報が有効時間内にない場合、その受信パケットのフローＩＤに対応する宛先要求の制御パケットの再度の通知を加工部４３に要求する。
【００１７】
図４は、フローテーブル４５のテーブル構成の一例を示す説明図である。図４に示すフローテーブル４５は、フローＩＤ４５Ａと、宛先情報４５Ｂとを対応付けて管理する。フローＩＤ４５Ａは、受信パケットのユーザフローを識別するＩＤである。宛先情報４５Ｂは、受信パケットに関わる宛先アドレス及び転送ポート等の情報である。
【００１８】
図５は、管理テーブル４６のテーブル構成の一例を示す説明図である。図５に示す管理テーブル４６は、フローＩＤ４６Ａと、時刻情報４６Ｂとを対応付けて管理する。制御部５２は、受信パケットのフローＩＤに対応する宛先情報がフローテーブル４５内にない場合、そのフローＩＤの宛先情報をＳＤＮコントローラ５に要求する制御パケットをＣＰＵ１８に通知するように加工部４３に要求する。この際、検索部４２内の登録部５１は、宛先要求対象のフローＩＤと、その要求時刻の時刻情報とを管理テーブル４６内に登録する。
【００１９】
ＣＰＵ１８は、ＳＤＮコントローラ５から要求対象のフローＩＤに対応するエントリ情報を受信した場合、エントリ情報内のフローＩＤ及び宛先情報をフローテーブル４５内に登録する。尚、エントリ情報は、宛先要求に対する返信内容、例えば、フローＩＤ及び、当該フローＩＤに対応する宛先情報を有する。その結果、検索部４２内の制御部５２は、フローテーブル４５を参照し、該当フローＩＤに対応した宛先情報４５Ｂを使用して受信パケットの転送を加工部４３に要求する。更に、ＣＰＵ１８は、エントリ情報内のフローＩＤに基づき、宛先要求に対する宛先情報の取得が完了したと判断し、管理テーブル４６から該当フローＩＤ４６Ａ及び時刻情報４６Ｂを削除する。
【００２０】
次に実施例１のＳＤＮシステム１の動作について説明する。図６は、第１のパケット受信処理に関わるＮＰＵ１５の処理動作の一例を示すフローチャートである。図６においてＮＰＵ１５内の検査部４１は、パケットを受信したか否かを判定する（ステップＳ１１）。検査部４１は、パケットを受信した場合（ステップＳ１１肯定）、受信パケット内のＦＣＳをチェックする（ステップＳ１２）。ＮＰＵ１５内の検索部４２内の制御部５２は、受信パケット内のフローＩＤを抽出し（ステップＳ１３）、抽出されたフローＩＤに基づき、フローテーブル４５内を検索する（ステップＳ１４）。制御部５２は、抽出されたフローＩＤがフローテーブル４５内にあるか否かを判定する（ステップＳ１５）。
【００２１】
制御部５２は、抽出されたフローＩＤがフローテーブル４５内にある場合（ステップＳ１５肯定）、フローＩＤに対応した宛先情報をフローテーブル４５から取得する（ステップＳ１６）。ＮＰＵ１５内の加工部４３は、取得された宛先情報に基づき、受信パケットを加工する（ステップＳ１７）。更に、ＮＰＵ１５内の振分部４４は、加工部４３で加工したパケットを振り分け転送し（ステップＳ１８）、図６に示す処理動作を終了する。尚、振分部４４は、宛先情報に基づく加工後の受信パケットを受信した場合、加工後の受信パケットを宛先情報に基づく出力ポートに転送する。
【００２２】
制御部５２は、抽出されたフローＩＤがフローテーブル４５内にない場合（ステップＳ１５否定）、抽出されたフローＩＤに基づき、管理テーブル４６内を検索する（ステップＳ１９）。制御部５２は、抽出されたフローＩＤが管理テーブル４６内にあるか否かを判定する（ステップＳ２０）。
【００２３】
制御部５２内の第１の判定部５２Ａは、抽出されたフローＩＤが管理テーブル４６内にある場合（ステップＳ２０肯定）、フローＩＤ４６Ａに対応した時刻情報４６Ｂを取得する（ステップＳ２１）。第１の判定部５２Ａは、時刻情報４６Ｂが有効時間内であるか否かを判定する（ステップＳ２２）。尚、有効時間は、ＳＤＮコントローラ５に対する宛先要求の通知開始から所定時間に相当する。制御部５２は、時刻情報４６Ｂが有効時間内の場合（ステップＳ２２肯定）、受信パケットを廃棄し（ステップＳ２３）、図６に示す処理動作を終了する。その結果、制御部５２は、宛先要求対象のフローＩＤが現在宛先要求中のフローＩＤと判断し、受信パケットを廃棄し、そのフローＩＤの再度の宛先要求を控えることでＳＤＮコントローラ５側の負荷を軽減できる。
【００２４】
検索部４２内の登録部５１は、抽出されたフローＩＤが管理テーブル４６内にない場合（ステップＳ２０否定）、フローＩＤ４６Ａ及び時刻情報４６Ｂを管理テーブル４６内に登録する（ステップＳ２４）。尚、時刻情報４６Ｂは、例えば、宛先要求の開始時刻である。更に、加工部４３は、管理テーブル４６内に登録した後、受信パケットを宛先要求の制御パケットに加工し（ステップＳ２５）、加工後の制御パケットを振り分け転送すべく、ステップＳ１８に移行する。尚、振分部４４は、加工後の制御パケットを受信した場合、その制御パケットをＳＤＮコントローラ５に通知すべく、加工後の制御パケットをＣＰＵ１８に転送する。
【００２５】
制御部５２は、時刻情報４６Ｂが有効時間内にない場合（ステップＳ２２否定）、管理テーブル４６内のフローＩＤ４６Ａに対応した時刻情報４６Ｂを更新し（ステップＳ２６）、受信パケットを宛先要求の制御パケットに加工すべく、ステップＳ２５に移行する。尚、制御部５２は、時刻情報４６Ｂが有効時間内にない場合、ＳＤＮコントローラ５に対して再度要求する際の現在時刻を時刻情報４６Ｂとして管理テーブル４６内に更新する。
【００２６】
ＮＰＵ１５は、受信パケットの宛先情報がフローテーブル４５内に未登録の場合、管理テーブル４６内に受信パケットのフローＩＤがあるか否かを判定する。ＮＰＵ１５は、管理テーブル４６内に受信パケットのフローＩＤがない場合、フローＩＤ及び時刻情報を管理テーブル４６内に登録し、受信パケットを宛先要求の制御パケットに加工し、制御パケットをＳＤＮコントローラ５に通知する。その結果、ＮＰＵ１５は、ＳＤＮコントローラ５に宛先要求の制御パケットを通知できる。しかも、ＳＤＮ対応装置４とＳＤＮコントローラ５との間の制御用パスの通信帯域の使用を抑制できる。
【００２７】
ＮＰＵ１５は、管理テーブル４６内に受信パケットのフローＩＤがある場合、時刻情報が有効時間内であるか否かを判定する。ＮＰＵ１５は、時刻情報が有効時間内の場合、受信パケットを廃棄する。その結果、ＳＤＮコントローラ５は、重複する宛先要求の受信が回避できるため、その処理負荷を軽減できる。
【００２８】
ＮＰＵ１５は、時刻情報が有効時間内でない場合、時刻情報を更新し、再度、受信パケットを宛先要求の制御パケットに加工し、制御パケットをＳＤＮコントローラ５に通知する。その結果、ＮＰＵ１５は、有効時間が超えているため、ＳＤＮコントローラ５に宛先要求を催促できる。
【００２９】
ＮＰＵ１５は、受信パケットの宛先情報がフローテーブル４５内に登録済みのため、宛先情報に基づき、受信パケットを送信する。その結果、ＮＰＵ１５は、ＳＤＮコントローラ５に問い合わせることなく、受信パケットを宛先のＳＤＮ対応装置４に送信できる。
【００３０】
図７は、エントリ情報受信処理に関わるＣＰＵ１８の処理動作の一例を示すフローチャートである。図７においてＣＰＵ１８は、ＳＤＮコントローラ５からエントリ情報を受信したか否かを判定する（ステップＳ３１）。尚、エントリ情報は、宛先要求対象のフローＩＤ及び、そのフローＩＤに対応する宛先情報を有する。
【００３１】
ＣＰＵ１８は、エントリ情報を受信した場合（ステップＳ３１肯定）、エントリ情報からフローＩＤ及び宛先情報を抽出する（ステップＳ３２）。ＣＰＵ１８は、抽出されたフローＩＤ及び宛先情報をフローテーブル４５内に登録する（ステップＳ３３）。ＣＰＵ１８は、抽出されたフローＩＤに基づき、該当フローＩＤ４６Ａ及び時刻情報４６Ｂを管理テーブル４６から削除し（ステップＳ３４）、図７に示す処理動作を終了する。ＣＰＵ１８は、エントリ情報を受信しなかった場合（ステップＳ３１否定）、図７に示す処理動作を終了する。
【００３２】
ＣＰＵ１８は、ＳＤＮコントローラ５からエントリ情報を受信した場合、エントリ情報からフローＩＤ及び宛先情報を抽出し、フローＩＤ及び宛先情報をフローテーブル４５内に登録する。その結果、ＮＰＵ１５は、フローテーブル４５内のフローＩＤ４５Ａ及び宛先情報４５Ｂを使用して受信パケットを対応のＳＤＮ対応装置４に送信できる。
【００３３】
ＣＰＵ１８は、ＳＤＮコントローラ５から受信したエントリ情報内のフローＩＤに対応する管理テーブル４６内の該当フローＩＤ４６Ａ及び時刻情報４６Ｂを削除する。その結果、ＣＰＵ１８は、宛先要求の完了に関わるフローＩＤ４６Ａ及び時刻情報４６Ｂを管理テーブル４６から削除できる。
【００３４】
図８は、宛先要求のパケットの流れの一例を示す説明図である。尚、説明の便宜上、ＳＤＮ対応装置４は、フローＩＤ“Ａ”、“Ｂ”及び“Ｃ”の受信パケットを受信し、フローテーブル４５内にはフローＩＤ“Ａ”の宛先情報が登録済み、フローＩＤ“Ｂ”及び“Ｃ”の宛先情報が不明とする。
【００３５】
ＮＰＵ１５内の検索部４２は、最初、フローＩＤの“Ａ”のパケット“Ａ＃１”を受信した場合、フローＩＤの“Ａ”の宛先情報４５Ｂがフローテーブル４５内に登録済みのため、宛先情報に基づき、パケット“Ａ＃１”を出力する。次に、検索部４２は、パケット“Ｂ＃１”を受信した場合、フローＩＤ“Ｂ”の宛先情報４５Ｂがフローテーブル４５内に未登録のため、パケット“Ｂ＃１”の制御パケットをＳＤＮコントローラ５に通知する。この際、検索部４２は、管理テーブル４６内にフローＩＤ“Ｂ”及び時刻情報を登録する。次に、検索部４２は、パケット“Ｂ＃２”を受信した場合、管理テーブル４６を参照し、フローＩＤ“Ｂ”の宛先情報が宛先要求中であるため、パケット“Ｂ＃２”を廃棄する。更に、検索部４２は、パケット“Ｂ＃３”〜“Ｂ＃５”を順次受信した場合、管理テーブル４６を参照し、フローＩＤ“Ｂ”の宛先情報が宛先要求中であるため、パケット“Ｂ＃３”〜“Ｂ＃５”も順次廃棄する。その結果、ＳＤＮ対応装置４は、宛先要求中の重複する宛先要求を実行しないため、ＳＤＮコントローラ５側の負荷を軽減できる。
【００３６】
次に、検索部４２は、パケット“Ｃ＃１”を受信した場合、フローＩＤ“Ｃ”の宛先情報がフローテーブル４５内に未登録のため、パケット“Ｃ＃１”の制御パケットをＳＤＮコントローラ５に通知する。この際、検索部４２は、管理テーブル４６内にフローＩＤ“Ｃ”及び時刻情報を登録する。次に検索部４２は、パケット“Ａ＃２”及び“Ａ＃３”を受信した場合、フローＩＤの“Ａ”の宛先情報が登録済みのため、宛先情報に基づき、パケット“Ａ＃２”及び“Ａ＃３”を出力する。
【００３７】
次に、検索部４２は、パケット“Ｃ＃２”を受信した場合、管理テーブル４６を参照し、フローＩＤ“Ｃ”の宛先情報が宛先要求中であるため、パケット“Ｃ＃２”を廃棄する。その結果、ＳＤＮ対応装置４は、宛先要求中の重複する宛先要求を実行しないため、ＳＤＮコントローラ５側の負荷を軽減できる。次に検索部４２は、パケット“Ａ＃４”を受信した場合、フローＩＤの“Ａ”の宛先情報が登録済みのため、パケット“Ａ＃４”を出力する。
【００３８】
実施例１のＳＤＮ対応装置４は、パケットのフローＩＤに対応する宛先情報をＳＤＮコントローラ５に要求する際に当該フローＩＤを管理テーブル４６内に登録する。ＳＤＮ対応装置４は、登録後に受信したパケットのフローＩＤが管理テーブル４６内に未登録の場合にのみ、当該フローＩＤに対応する宛先情報をＳＤＮコントローラ５に要求する。その結果、ＳＤＮコントローラ５は、ＳＤＮ対応装置４からの宛先要求に関わる処理負荷を軽減できる。しかも、ＳＤＮ対応装置４とＳＤＮコントローラ５との間の制御用パスの通信帯域の使用を抑制できる。
【００３９】
ＳＤＮ対応装置４は、登録後に受信したパケットのフローＩＤが管理テーブル４６内に登録済みの場合、当該登録後に受信したパケットを廃棄する。その結果、ＳＤＮコントローラ５は、ＳＤＮ対応装置４からの宛先要求に関わる処理負荷を軽減できる。
【００４０】
ＳＤＮ対応装置４は、フローＩＤ及び当該フローＩＤの宛先情報を要求する際の時刻情報を管理テーブル４６内に登録する。ＳＤＮ対応装置４は、登録後に受信したパケットのフローＩＤが管理テーブル４６内に登録済みの場合に、当該フローＩＤに対応した時刻情報４６Ｂが有効時間内にあるか否かを判定し、時刻情報４６Ｂが有効時間内にある場合に、当該登録後に受信したパケットを廃棄する。その結果、ＳＤＮコントローラ５は、ＳＤＮ対応装置４からの宛先要求に関わる処理負荷を軽減できる。
【００４１】
ＳＤＮ対応装置４は、時刻情報４６Ｂが有効時間内にない場合に、当該登録後に受信したパケットのフローＩＤに対応する宛先情報をＳＤＮコントローラ５に要求する。その結果、ＳＤＮ対応装置４は、有効時間が超えているため、ＳＤＮコントローラ５に宛先要求を催促できる。
【００４２】
ＳＤＮ対応装置４は、ＳＤＮコントローラ５から宛先要求に対するフローＩＤに対応する宛先情報を受信した場合に、当該フローＩＤ４６Ａ及び時刻情報４６Ｂを管理テーブル４６から削除する。その結果、ＳＤＮ対応装置４は、宛先要求の完了に関わるフローＩＤ４６Ａ及び時刻情報４６Ｂを管理テーブル４６から削除できる。
【００４３】
尚、上記実施例１のＮＰＵ１５は、宛先要求対象のフローＩＤ４６Ａに対応付けて時刻情報４６Ｂを管理テーブル４６内に管理する。更に、ＮＰＵ１５は、宛先要求中のフローＩＤに対応した受信パケットを受信した場合、そのフローＩＤに対応する時刻情報４６Ｂが有効時間内であるか否かを判定する。ＮＰＵ１５は、時刻情報４６Ｂが有効時間内にある場合、その受信パケットを廃棄した。しかしながら、これに限定されるものではなく、例えば、管理テーブル４６内にフローＩＤ４６Ａ及び時刻情報４６Ｂの他に、優先度を管理しても良く、その実施の形態につき、実施例２として以下に説明する。
【実施例２】
【００４４】
図９は、実施例２のＮＰＵ１５の機能構成の一例を示す説明図である。尚、実施例１のＳＤＮシステム１と同一の構成には同一符号を付すことで、その重複する構成及び動作の説明については省略する。図１０は、管理テーブル４６のテーブル構成の一例を示す説明図である。
【００４５】
図１０に示す管理テーブル４６は、宛先要求中のフローＩＤ４６Ａ及び時刻情報４６Ｂに対応付けて優先度４６Ｃを管理する。優先度４６Ｃは、宛先要求中のパケットの優先度である。例えば、受信パケットのパケット種別（音声やデータ種別）、サービス種別、フローＩＤに応じて優先度を付しても良い。尚、例えば、音声通話等の音声パケットを優先度が高度のパケットとし、例えば、Ｗｅｂ検索アクセス等のデータパケットを優先度が高度でないパケットとする。
【００４６】
図９に示す検索部４２Ａ内の制御部５２は、第１の判定部５２Ａの他に、第２の判定部５２Ｂを有する。第２の判定部５２Ｂは、第１の判定部５２Ａにて受信パケットのフローＩＤに対する時刻情報４６Ｂが有効時間内にない場合、ＮＰＵ１５内の図示せぬ転送バッファ内にパケットがあるか否かを判定する。第２の判定部５２Ｂは、転送バッファ内にパケットがある場合、今回の受信パケットの優先度４６Ｃが高度であるか否かを判定する。
【００４７】
制御部５２は、今回の受信パケットの優先度４６Ｃが高度でない場合、受信パケットを廃棄する。また、制御部５２は、今回の受信パケットの優先度４６Ｃが高度の場合、再度、受信パケットの宛先を要求すべく、宛先要求の制御パケットを加工すべく、加工部４３に要求する。
【００４８】
ＣＰＵ１８は、ＳＤＮコントローラ５から宛先要求に対するフローＩＤに対応する宛先情報を受信した場合に、当該フローＩＤ４６Ａ、時刻情報４６Ｂ及び優先度４６Ｃを管理テーブル４６から削除する。その結果、ＳＤＮ対応装置４は、宛先要求の完了に関わるフローＩＤ４６Ａ、時刻情報４６Ｂ及び優先度４６Ｃを管理テーブル４６から削除できる。
【００４９】
次に実施例２のＳＤＮシステム１の動作について説明する。図１１は、第２のパケット受信処理に関わるＮＰＵ１５の処理動作の一例を示すフローチャートである。図１１においてＮＰＵ１５内の検索部４２内の制御部５２は、管理テーブル４６内に受信パケットのフローＩＤ４６Ａがある場合（ステップＳ２０肯定）、フローＩＤ４６Ａに対応した時刻情報４６Ｂ及び優先度４６Ｃを管理テーブル４６から取得する（ステップＳ４１）。
【００５０】
制御部５２内の第１の判定部５２Ａは、時刻情報４６Ｂが有効時間内であるか否かを判定する（ステップＳ４２）。制御部５２は、時刻情報４６Ｂが有効時間内である場合（ステップＳ４２肯定）、受信パケットを廃棄し（ステップＳ４３）、図１１に示す処理動作を終了する。その結果、ＳＤＮ対応装置４は、受信パケットを廃棄し、宛先要求中の重複する宛先要求を実行しないため、ＳＤＮコントローラ５側の負荷を軽減できる。
【００５１】
制御部５２内の第２の判定部５２Ｂは、時刻情報４６Ｂが有効時間内でない場合（ステップＳ４２否定）、転送バッファ内に複数のパケットがあるか否かを判定する（ステップＳ４４）。第２の判定部５２Ｂは、転送バッファ内に複数のパケットがある場合（ステップＳ４４肯定）、転送バッファ内のパケットの内、優先度４６Ｃに応じてパケットを指定する（ステップＳ４５）。
【００５２】
制御部５２は、優先度４６Ｃに応じてパケットを指定した場合、管理テーブル４６内の指定パケットのフローＩＤ４６Ａに対応した時刻情報４６Ｂを更新する（ステップＳ４６）。加工部４３は、指定パケットの時刻情報４６Ｂを更新後、指定パケットを宛先要求中の制御パケットに加工する（ステップＳ４７）。そして、振分部４４は、パケットを振り分け転送する（ステップＳ４８）。尚、振分部４４は、宛先要求の制御パケットを受信した場合、ＳＤＮコントローラ５に対して制御パケットをＣＰＵ１８に転送する。
【００５３】
更に、制御部５２は、制御パケットの転送後、転送バッファ内に未指定のパケットがあるか否かを判定する（ステップＳ４９）。制御部５２は、転送バッファ内に未指定のパケットがある場合（ステップＳ４９肯定）、転送バッファ内に複数のパケットがあるか否かを判定すべく、ステップＳ４４に移行する。
【００５４】
制御部５２は、転送バッファ内に複数のパケットがない場合（ステップＳ４４否定）、管理テーブル４６内の受信パケットのフローＩＤ４６Ａに対応した時刻情報４６Ｂを更新すべく、ステップＳ４６に移行する。制御部５２は、転送バッファ内に未指定のパケットがない場合（ステップＳ４９否定）、図１１に示す処理動作を終了する。
【００５５】
ＮＰＵ１５は、時刻情報４６Ｂが有効時間内にない場合に転送バッファ内に複数のパケットがあるか否かを判定する。ＮＰＵ１５は、転送バッファ内に複数のパケットがある場合、優先度に応じてパケットを指定し、指定パケットを宛先要求の制御パケットに加工し、加工後の制御パケットをＳＤＮコントローラ５に通知する。その結果、ＳＤＮ対応装置４は、転送バッファ内に複数のパケットがある場合でも、パケット同士で競合することなく、優先度に応じてパケットを指定し、その指定パケットの制御パケットをＳＤＮコントローラ５に通知できる。
【００５６】
実施例２のＳＤＮ対応装置４は、フローＩＤ４６Ａ、時刻情報４６Ｂ及び優先度４６Ｃを管理テーブル４６内に登録する。ＳＤＮ対応装置４は、登録後に受信したパケットのフローＩＤが管理テーブル４６内に登録済みの場合に、当該フローＩＤに対応した時刻情報４６Ｂが有効時間内にあるか否かを判定する。ＳＤＮ対応装置４は、時刻情報４６Ｂが有効時間内にない場合に複数のパケットがあるか否かを判定する。ＳＤＮ対応装置４は、複数のパケットがある場合に、複数のパケットの内、優先度４６Ｃが高度のパケットから優先的にフローＩＤの宛先情報を要求する制御パケットをＳＤＮコントローラ５に通知する。その結果、ＳＤＮ対応装置４は、転送バッファ内に複数のパケットがある場合でも、パケット同士で競合することなく、優先度に応じてパケットを指定し、その指定パケットの制御パケットをＳＤＮコントローラ５に通知できる。
【００５７】
尚、上記実施例２では、優先度としてサービス種別を例示したが、時刻情報の古い順を優先度としても良く、この場合、時刻情報が古い順に、その時刻情報のフローＩＤの宛先要求を優先的に実行する。
【００５８】
上記実施例２のＮＰＵ１５は、管理テーブル４６内の優先度４６Ｃに応じて、宛先要求中のフローＩＤ４６Ａの時刻情報４６Ｂが有効時間内にない場合に転送バッファ内に複数パケットがあるか否かを判定する。ＮＰＵ１５は、転送バッファ内に複数パケットがある場合、転送バッファ内のパケットの内、優先度４６Ｃに応じてパケットの宛先要求を優先的に実行した。しかしながら、これに限定されるものではなく、管理テーブル４６内のフローＩＤ４６Ａに対応した優先度４６Ｃを使用し、時刻情報４６Ｂが有効時間内であっても、その優先度４６Ｃが高度の場合、宛先要求を優先的に実行しても良い。その実施の形態につき、実施例３として以下に説明する。尚、実施例２のＳＤＮシステム１と同一の構成には同一符号を付すことで、その重複する構成及び動作の説明ついては省略する。
【実施例３】
【００５９】
図１２は、第３のパケット受信処理に関わるＮＰＵ１５の処理動作の一例を示すフローチャートである。図１２においてＮＰＵ１５内の検索部４２内の制御部５２は、管理テーブル４６内に宛先要求中のフローＩＤがある場合（ステップＳ２０肯定）、フローＩＤに対応した時刻情報４６Ｂ及び優先度４６Ｃを管理テーブル４６から取得する（ステップＳ５１）。制御部５２内の第１の判定部５２Ａは、時刻情報４６Ｂが有効時間内であるか否かを判定する（ステップＳ５２）。
【００６０】
制御部５２内の第２の判定部５２Ｂは、受信パケットの時刻情報４６Ｂが有効時間内である場合（ステップＳ５２肯定）、その受信パケットの優先度４６Ｃが高度であるか否かを判定する（ステップＳ５３）。制御部５２は、受信パケットの優先度４６Ｃが高度でない場合（ステップＳ５３否定）、受信パケットを廃棄し（ステップＳ５４）、図１２に示す処理動作を終了する。その結果、ＳＤＮ対応装置４は、受信パケットを廃棄し、宛先要求中の重複する宛先要求を実行しないため、ＳＤＮコントローラ５側の負荷を軽減できる。
【００６１】
制御部５２は、時刻情報４６Ｂが有効時間内にない場合（ステップＳ５２否定）、管理テーブル４６内の宛先要求中のフローＩＤに対応する時刻情報４６Ｂを更新し（ステップＳ５５）、再度、受信パケットを宛先要求中の制御パケットに加工すべく、ステップＳ２５に移行する。また、制御部５２は、優先度４６Ｃが高度の場合（ステップＳ５３肯定）、管理テーブル４６内の宛先要求中のフローＩＤ４６Ａに対応する時刻情報４６Ｂを更新すべく、ステップＳ５５に移行する。
【００６２】
ＮＰＵ１５は、時刻情報４６Ｂが有効時間内の場合でも、その受信パケットの優先度が高度であるか否かを判定する。ＮＰＵ１５は、受信パケットの優先度が高度である場合、受信パケットを宛先要求の制御パケットに加工し、その制御パケットをＳＤＮコントローラ５に通知する。その結果、ＮＰＵ１５は、時刻情報４６Ｂが有効時間内であっても、受信パケットの優先度が高度の場合は受信トラヒックを廃棄することなく、宛先要求を実行できる。
【００６３】
実施例３のＳＤＮ対応装置４は、フローＩＤ４６Ａ、時刻情報４６Ｂ及び優先度４６Ｃを管理テーブル４６内に登録する。ＳＤＮ対応装置４は、登録後に受信したパケットのフローＩＤが管理テーブル４６内に登録済みの場合に、当該フローＩＤに対応した時刻情報４６Ｂが有効時間内にあるか否かを判定する。ＳＤＮ対応装置４は、時刻情報４６Ｂが有効時間内にある場合に、優先度４６Ｃが高度であるか否かを判定する。ＳＤＮ対応装置４は、優先度４６Ｃが高度の場合に、当該フローＩＤの宛先情報を要求する制御パケットをＳＤＮコントローラ５に通知する。その結果、ＳＤＮ対応装置４は、時刻情報４６Ｂが有効時間内であっても、受信パケットの優先度が高度の場合は受信トラヒックを廃棄することなく、宛先要求を実行できる。
【００６４】
また、図示した各部の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各部の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。
【００６５】
更に、各装置で行われる各種処理機能は、ＣＰＵ（Central  Processing  Unit）（又はＭＰＵ（Micro  Processing  Unit）、ＭＣＵ（Micro  Controller  Unit）等のマイクロ・コンピュータ）上で、その全部又は任意の一部を実行するようにしても良い。また、各種処理機能は、ＣＰＵ（又はＭＰＵ、ＭＣＵ等のマイクロ・コンピュータ）で解析実行するプログラム上、又はワイヤードロジックによるハードウェア上で、その全部又は任意の一部を実行するようにしても良いことは言うまでもない。
【００６６】
ところで、本実施例で説明した各種の処理は、予め用意されたプログラムをコンピュータ内のＣＰＵ等のプロセッサで実行させることによって実現できる。そこで、以下では、上記実施例と同様の機能を有するプログラムを実行する情報処理装置１００の一例を説明する。図１３は、宛先要求プログラムを実行する情報処理装置１００の一例を示す説明図である。
【００６７】
図１３に示す宛先要求プログラムを実行する情報処理装置１００は、通信部１１０と、ＨＤＤ（Hard  Disc  Drive）１２０と、ＲＯＭ１３０と、ＲＡＭ１４０と、ＣＰＵ１５０とを有する。通信部１１０、ＨＤＤ１２０、ＲＯＭ１３０、ＲＡＭ１４０及びＣＰＵ１５０は、バス１６０を介して接続される。通信部１１０は、図示せぬ他の情報処理装置や制御装置と接続し、他の情報処理装置や制御装置と通信する。そして、制御装置は、パケットのフロー識別情報に対応する宛先情報を管理する。
【００６８】
そして、ＲＯＭ１３０には、上記実施例と同様の機能を発揮する宛先要求プログラムが予め記憶されている。ＲＯＭ１３０は、宛先要求プログラムとして登録プログラム１３０Ａ及び制御プログラム１３０Ｂが記憶されている。尚、ＲＯＭ１３０ではなく、図示せぬドライブでコンピュータ読取可能な記録媒体に宛先要求プログラムが記録されていても良い。また、記録媒体としては、例えば、ＣＤ−ＲＯＭ、ＤＶＤディスク、ＵＳＢメモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリ等でも良い。ＲＡＭ１４０内には、テーブルを有する。
【００６９】
そして、ＣＰＵ１５０は、登録プログラム１３０ＡをＲＯＭ１３０から読み出し、ＲＡＭ１４０上で登録プロセス１４０Ａとして機能させる。更に、ＣＰＵ１５０は、制御プログラム１３０ＢをＲＯＭ１３０から読み出し、ＲＡＭ１４０上で制御プロセス１４０Ｂとして機能させる。
【００７０】
ＣＰＵ１５０は、第１のパケットのフロー識別情報に対応する宛先情報を制御装置に要求する際に当該フロー識別情報をテーブル内に登録する。ＣＰＵ１５０は、登録後に受信した第２のパケットのフロー識別情報がテーブル内に未登録の場合にのみ、当該フロー識別情報に対応する宛先情報を制御装置に要求する。その結果、制御装置側の処理負荷を軽減できる。
【符号の説明】
【００７１】
１  ＳＤＮシステム
４  ＳＤＮ対応装置
５  ＳＤＮコントローラ
１５  ＮＰＵ
１８  ＣＰＵ
４２  検索部
４５  フローテーブル
４６  管理テーブル
５１  登録部
５２  制御部
５２Ａ  第１の判定部
５２Ｂ  第２の判定部
【図１】
2018064239.tif 000003
【図２】
2018064239.tif 000004
【図３】
2018064239.tif 000005
【図４】
2018064239.tif 000006
【図５】
2018064239.tif 000007
【図６】
2018064239.tif 000008
【図７】
2018064239.tif 000009
【図８】
2018064239.tif 000010
【図９】
2018064239.tif 000011
【図１０】
2018064239.tif 000012
【図１１】
2018064239.tif 000013
【図１２】
2018064239.tif 000014
【図１３】
2018064239.tif 000015
【図１４】
2018064239.tif 000016