(57)【特許請求の範囲】
【請求項１】
フロー統計に用いる方法であって、
特徴識別子を含むデータフローを受信し、前記データフローのマッチング情報を取得し；
前記マッチング情報を用いてフローテーブルに対して検索を行い、前記フローテーブルに前記マッチング情報と一致している情報がない場合、前記データフローをコントローラに送信し；
前記コントローラが送信している前記データフローのパケットヘッダー情報及びオペレーション情報を受信し、前記パケットヘッダー情報及び前記オペレーション情報を前記フローテーブルに書きこみ、そのうち、前記オペレーション情報は、少なくとも、前記データフローによって運ばれている特徴識別子についての統計オペレーションを含み；
前記統計オペレーションにおける前記特徴識別子に基づいて統計用インスタンステーブルに対して検索を行い、そのうち、前記統計用インスタンステーブルには、送信されたデータフローの特徴識別子及びその対応するトラフィック情報が記録されており；
前記統計用インスタンステーブルに第一特徴識別子が記録されており、該第一特徴識別子が前記データフローによって運ばれている特徴識別子と一致していれば、前記統計用インスタンステーブルにおける前記第一特徴識別子に対応するエントリーのインデックスに基づいて、前記フローテーブルにおける、前記データフローによって運ばれている特徴識別子についての統計オペレーションを、前記インデックスについての統計オペレーションに更新し；及び
前記フローテーブルのオペレーション情報における各種オペレーションを実行するときに、前記フローテーブルのオペレーション情報における前記統計オペレーションを実行する時に、統計用インスタンステーブルに記録されている前記第一特徴識別子に対応するトラフィック情報を更新する、方法。
【請求項２】
請求項１に記載の方法であって、
前記特徴識別子は、ユーザ識別子、サービス識別子、又は、プロトコール類型である、方法。
【請求項３】
請求項１又は２に記載の方法であって、
前記統計用インスタンステーブルに前記第一特徴識別子が記録されていなければ、統計用インスタンステーブルに一つの新エントリーを追加し、前記データフローによって運ばれている特徴識別子を該新エントリーに追加し、該新エントリーのインデックスにより、前記フローテーブルにおける、前記データフローによって運ばれている特徴識別子について統計オペレーションを、前記インデックスについての統計オペレーションに更新することを更に含む、方法。
【請求項４】
請求項１〜３の何れか一項に記載の方法であって、
前記統計用インスタンステーブルが引用されている回数を1増加させることを更に含む、方法。
【請求項５】
請求項１〜４の何れか一項に記載の方法であって、
前記フローテーブルに前記マッチング情報と一致している情報がある場合、前記フローテーブルのオペレーション情報における各オペレーションに基づいて、前記データフローに対して処理を行い、そのうち、前記オペレーション情報における前記統計オペレーションを行う時に、前記フローテーブルのオペレーション情報における前記統計オペレーションのインデックスに基づいて、前記インデックスに対応する統計用インスタンステーブルのエントリーの位置を探し出し、前記統計用インスタンステーブルにおける前記第一特徴識別子に対応するトラフィック情報を更新することを更に含む、方法。
【請求項６】
請求項５に記載の方法であって、
前記コントローラに統計結果としてのデータトラフィックを定期的に報告することを更に含む、方法。
【請求項７】
フォワーディング装置であって、
特徴識別子を含むデータフローを受信するための第一受信ユニット；
前記第一受信ユニットが受信しているデータフローに基づいて、前記データフローのマッチング情報を取得するための第一取得ユニット；
前記第一取得ユニットが取得しているマッチング情報を用いてフローテーブルに対して検索を行うための第一検索ユニット；
前記フローテーブルに前記マッチング情報と一致している情報がなければ、前記データフローをコントローラに送信するための第一送信ユニット；
前記コントローラが送信している前記データフローのパケットヘッダー情報及びオペレーション情報を受信し、受信した前記データフローのパケットヘッダー情報及びオペレーション情報を書き込みユニットに送信するための第二受信ユニット；
受信した、前記第二受信ユニットが送信している前記データフローのパケットヘッダー情報及びオペレーション情報を前記フローテーブルに書き込むための書き込みユニットであって、前記オペレーション情報は、少なくとも、前記データフローによって運ばれている特徴識別子についての統計オペレーションを含む、書き込みユニット；
前記統計オペレーションにおける前記特徴識別子に基づいて統計用インスタンステーブルに対して検索を行うための第二検索ユニットであって、前記統計用インスタンステーブルは、送信されたデータフローの特徴識別子及びその対応するトラフィック情報を記録するために用いられる、第二検索ユニット；
前記統計用インスタンステーブルに第一特徴識別子が記録されており、該第一特徴識別子が前記データフローによって運ばれている特徴識別子と一致していれば、前記統計用インスタンステーブルにおける第一特徴識別子に対応するエントリーのインデックスに基づいて、前記フローテーブルにおける、前記データフローによって運ばれている特徴識別子についての統計オペレーションを、前記インデックスについての統計オペレーションに更新するための第一更新ユニット；
前記フローテーブルのオペレーション情報における各オペレーションを実行し、統計オペレーションを実行する時に、統計用インスタンステーブルに記録されている前記第一特徴識別子に対応するトラフィック情報を更新するための第一実行ユニット；及び
フローテーブル及び統計用インスタンステーブルを記憶するための第一記憶ユニットを含む、フォワーディング装置。
【請求項８】
請求項７に記載のフォワーディング装置であって、
前記特徴識別子は、ユーザ識別子、サービス識別子、又は、プロトコール類型である、方法。
【請求項９】
請求項７又は８に記載のフォワーディング装置であって、
前記第一実行ユニットは、前記統計オペレーションを実行する時に、前記統計用インスタンステーブルが引用されている回数を1増加させるために更に用いられる、フォワーディング装置。
【請求項１０】
請求項７〜９の何れか一項に記載のフォワーディング装置であって、
前記統計用インスタンステーブルに第一特徴識別子が記録されていなければ、統計用インスタンステーブルに一つの新エントリーを追加し、前記データフローによって運ばれている特徴識別子を、前記第一記憶ユニット中の統計用インスタンステーブルの該新エントリーに追加するための追加ユニット；及び
追加ユニットにより追加されている前記新エントリーのインデックスに基づいて、前記フローテーブルにおける、前記データフローによって運ばれている特徴識別子についての統計オペレーションを、前記インデックスについての統計オペレーションに更新するための第二更新ユニットを更に含む、フォワーディング装置。
【請求項１１】
請求項７〜１０の何れか一項に記載のフォワーディング装置であって、
前記フローテーブルに前記マッチング情報と一致している情報がある場合、前記第一記憶ユニット中のフローテーブルのオペレーション情報における各オペレーションに基づいて、前記データフローに対して処理を行うための第二実行ユニットであって、前記オペレーション情報における前記統計オペレーションを実行する時に、前記フローテーブルのオペレーション情報における前記統計オペレーションのインデックスに基づいて、該インデックスに対応する統計用インスタンステーブルのエントリーの位置を探し出し、前記統計用インスタンステーブルにおける第一特徴識別子に対応するトラフィック情報を更新するための第二実行ユニットを更に含む、フォワーディング装置。
【請求項１２】
請求項１１に記載のフォワーディング装置であって、
前記コントローラに統計結果としてのデータトラフィックを定期的に報告するための報告ユニットを更に含む、フォワーディング装置。
【請求項１３】
フロー統計に用いるシステムであって、
前記システムは、コントローラ及びフォワーディング装置を含み、
前記コントローラは、前記フォワーディング装置が送信した、特徴識別子を含むデータフローを受信し、前記データフローを解析することにより前記データフローの類型を把握し;前記データフローの類型がフロー類型セットにおける所定類型である場合、前記特徴識別子及び前記データフローのパケットヘッダー情報を取得し、前記データフローに対応するオペレーション情報を取得し、前記特徴識別子についての統計オペレーションを前記オペレーション情報に追加し；及び、前記特徴識別子についての統計オペレーションが追加された前記オペレーション情報及び前記パケットヘッダー情報を前記フォワーディング装置に送信し、前記フォワーディング装置に、前記特徴識別子に基づいて、前記データフローに対してトラフィック統計を行わせるように構成され、
前記フォワーディング装置は、請求項７〜１２の何れか一項に記載のフォワーディング装置を含む、システム。
【請求項１４】
請求項１３に記載のシステムであって、
前記特徴識別子は、ユーザ識別子、サービス識別子、又は、プロトコール類型である、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信分野に関し、特に、フロー統計（Flow  Statistics）に用いる方法、装置及びシステムに関する。
【背景技術】
【０００２】
OpenFlow（オープンフロー）は、一種の新型ネットワークスイッチモデルであり、ネットワークの革新的開発を大きく推進している。OpenFlowネットワークは、OpenFlow  Switch（オープンフロースイッチ）、FlowVisor（フローコンバータ）、及びController（コントロールサーバ）の三つの部分を含む。OpenFlow  Switchは、データ層のフォワーディング（転送）を行い、FlowVisorは、ネットワークの仮想化を行い、Controllerは、ネットワークの集中制御を行って制御層の機能を実現する。OpenFlowネットワークは、OpenFlow  Switchにてのデータフォワーディング、及び、Controllerにてのデータフォワーディングの制御を実現し、これにより、データフォワーディング層と制御層との分離を実現し得る。各OpenFlow  Switchは、それぞれ、パケットルークアップ及びフォワーディングを行うための一つのフローテーブルを有する。OpenFlow  Switchは、Controllerに、フローテーブルに対してクエリー及び管理を行わせるように、OpenFlowプロトコールに従ってセキュアチャネルを経由してControllerに接続される。
【０００３】
通常、フロー統計技術では、データフローそのものについての統計を行う。例えば、一つのデータフロー、一つのフローテーブル、又は、一つのポートを通過するデータフローについて統計を行う。OpenFlow統計技術では、ControllerがOpenFlow  Switchに対してクエリーを自動的に行い、OpenFlowのトラフィック管理のためのデータトラフィック（data  traffic）を取得する。
【０００４】
OpenFlowのトラフィック管理のプロセスでは、本発明者が従来技術に少なくとも次のような問題があると発見した。即ち、OpenFlowのトラフィック管理では、大量のデータフローに対してクエリーを行う時に、大量のクエリー及び応答のトラフィックパケットが生成され、大量の管理用帯域幅（management  bandwidth）が消費され、これにより、コントローラとフォワーディング装置との間の通信の混雑をもたらしてしまう。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の目的は、フォワーディング装置に対してのコントローラの管理用帯域幅を低減することによって通信の混雑を軽減するための、フロー統計に用いる方法、装置及びシステムを提供することにある。
【課題を解決するための手段】
【０００６】
上述の目的を達成するために、本発明の実施例は、次のような技術案を採用する。
【０００７】
一実施例によれば、フロー統計に用いる方法が提供され、該方法は、フォワーディング装置が送信している、特徴識別子を含むデータフローを受信し、前記データフローを解析することにより前記データフローの類型（type）を把握し；前記データフローの類型がフロー類型セット（集合）における所定類型である場合、前記特徴識別子及び前記データフローのパケットヘッダー情報を取得し、前記データフローに対応するオペレーション（operation又はaction）情報を取得し、前記特徴識別子についての統計オペレーション（情報）を前記オペレーション情報に追加し、そのうち、前記オペレーション情報はデータフローの各種オペレーションを記録するために用いられ；及び、前記特徴識別子についての統計オペレーションが追加された前記オペレーション情報及び前記パケットヘッダー情報を前記フォワーディング装置に送信し、前記フォワーディング装置が前記特徴識別子に基づいて前記データフローのトラフィック統計を行うことを含む。
【０００８】
また、一実施例によれば、フロー統計に用いる他の方法が提供され、該他の方法は、特徴識別子を含むデータフローを受信し、前記データフローのマッチング情報を取得し；前記マッチング情報を用いてフローテーブルに対して検索を行い、前記フローテーブルに前記マッチング情報と一致している情報がなければ、前記データフローをコントローラに送信し；前記コントローラが送信している前記データフローのパケットヘッダー情報及びオペレーション情報を受信し、前記パケットヘッダー情報及びオペレーション情報を前記フローテーブルに書き込み、そのうち、前記オペレーション情報は、少なくとも、前記データフローによって運ばれている特徴識別子についての統計オペレーションを含み；前記統計オペレーションにおける、前記データフローによって運ばれている特徴識別子に基づいて、統計用インスタンステーブル（Statistics  Instance  Table）に対して検索を行い、そのうち、前記統計用インスタンステーブルは、送信されたデータフローの特徴識別子及びその対応するトラフィック情報を記録するために用いられ；前記統計用インスタンステーブルに第一特徴識別子が記録され、該第一特徴識別子が前記データフローによって運ばれている特徴識別子に一致すれば、前記統計用インスタンステーブルの第一特徴識別子に対応するエントリー（entry）のインデックスに基づいて、前記フローテーブルにおける、前記データフローによって運ばれている特徴識別子についての統計オペレーションを、前記インデックスについての統計オペレーションに更新し；及び、前記フローテーブルのオペレーション情報における各種オペレーションを実行し、前記フローテーブルのオペレーション情報における統計オペレーションを実行する時に、統計用インスタンステーブルに記録される前記第一特徴識別子に対応するトラフィック情報を更新することを含む。
【０００９】
また、一実施例によれば、フロー統計に用いるコントローラが提供され、該コントローラは、フォワーディング装置により送信されている、特徴識別子を含むデータフローを受信し、前記データフローを解析することによって前記データフローの類型を把握するための把握ユニット；前記データフローの類型がフロー類型セットにおける所定類型である場合、前記データフローによって運ばれている特徴識別子及び前記データフローのパケットヘッダー情報を取得し、前記データフローに対応するオペレーション情報を取得し、前記特徴識別子についての統計オペレーションを前記オペレーション情報に追加するための第一取得ユニット；取得ユニットにより取得されている、前記特徴識別子についての統計オペレーションが追加された前記オペレーション情報及び前記パケットヘッダー情報を前記フォワーディング装置に送信し、前記フォワーディング装置に、前記データフローに対して前記特徴識別子に基づいてトラフィック統計を行わせるための送信ユニットを含む。
【００１０】
また、一実施例によれば、フロー統計に用いるフォワーディング装置が提供され、該フォワーディング装置は、特徴識別子を含むデータフローを受信するための第一受信ユニット；前記第一受信ユニットにより受信されているデータフローに基づいて前記データフローのマッチング情報を取得するための第一取得ユニット；前記マッチング情報を用いてフローテーブルに対して検索を行うための第一検索ユニット；前記フローテーブルに前記マッチング情報と一致している情報がなければ、前記データフローをコントローラに送信するための第一送信ユニット；前記コントローラにより送信されている前記データフローのパケットヘッダー情報及び前記オペレーション情報を受信し、受信されている前記データフローのパケットヘッダー情報及び前記オペレーション情報を書き込みユニットに送信するための第二受信ユニット；受信された、前記第二受信ユニットにより送信されているデータフローのパケットヘッダー情報及び前記オペレーション情報を前記フローテーブルに書き込むための書き込みユニットであって、前記オペレーション情報は、少なくとも、前記データフローによって運ばれている特徴識別子についての統計オペレーションを含む、書き込みユニット；前記統計オペレーションにおける前記特徴識別子に基づいて、統計用インスタンステーブルに対して検索を行うための第二検索ユニットであって、前記統計用インスタンステーブルは、送信されたデータフローの特徴識別子及びその対応するトラフィックを記録するために用いられる、第二検索ユニット；前記統計用インスタンステーブルに第一特徴識別子が記録され、該第一特徴識別子が前記データフローによって運ばれている特徴識別子と一致すれば、前記統計用インスタンステーブルの第一特徴識別子に対応するエントリーのインデックスに基づいて、前記フローテーブルにおける、前記データフローによって運ばれている特徴識別子についての統計オペレーションを、前記インデックスについての統計オペレーションに更新するための第一更新ユニット；前記フローテーブルのオペレーション情報における各オペレーションを実行し、統計オペレーションを実行する時に、統計用インスタンステーブルに記録される前記第一特徴識別子に対応するトラフィック情報を更新するための実行ユニット；及び、フローテーブル及び統計用インスタンステーブルを記憶するための第一記憶ユニットを含む。
【００１１】
また、一実施例によれば、フロー統計に用いるシステムが提供され、該システムは、コントローラ及びフォワーディング装置を含み、そのうち、前記コントローラは、上述のコントローラであり、前記フォワーディング装置は、上述のフォワーディング装置である。
【００１２】
本発明の実施例は、フロー統計に用いる方法、装置及びシステムを提供する。フォワーディング装置は、データフローを受信し、データフローのマッチング情報を取得し、フローテーブルを検索し、フローテーブルにマッチング情報と一致している情報がなければ、データフローをコントローラに送信する。コントローラは、フォワーディング装置によって送信されているデータフローを受信し、データフローを、統計を行う必要のあるデータフローとして認識すると、データフローによって運ばれている特徴識別子及びパケットヘッダー情報並びにデータフローに対応するオペレーション情報を取得し、特徴識別子についての統計オペレーションをオペレーション情報に追加し、そして、このような情報フォワーディング装置に送信する。フォワーディング装置は、コントローラにより送信された情報を受信し、受信された情報に基づいてフローテーブルを更新し、特徴識別子に基づいて統計用インスタンステーブルを検索する。同じエントリーが検索されたら、前記統計用インスタンステーブルの第一特徴識別子に対応するエントリーのインデックスに基づいて、前記フローテーブルにおける、前記データフローよって運ばれている特徴識別子についての統計オペレーションを、前記インデックスについての統計オペレーションに変更し、統計オペレーションを実行する時に、統計用インスタンステーブルに記録される特徴識別子に対応するトラフィック情報を更新する。その同時に、フォワーディング装置は、さらに、統計結果としてのデータトラフィックをコントローラに自動的で定期的にレポート（報告）する。これにより、特徴識別子によるデータフローのトラフィック統計を実現し、トラフィック統計の能力を向上させ、フォワーディング装置に対してのコントローラの管理用帯域幅を低減し、通信の混雑を軽減することができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施例による、フロー統計に用いる方法のフローチャート（その一）である。
【図２】本発明の実施例による、フロー統計に用いる方法のフローチャート（その二）である。
【図３】本発明の実施例による、フロー統計に用いる方法のフローチャート（その三）である。
【図４】本発明の実施例による、フロー統計に用いる方法のフローチャート（その四）である。
【図５】本発明の実施例による、フロー統計に用いる方法のフローチャート（その五）である。
【図６】本発明の実施例によるコントローラの構造図である。
【図７】本発明の実施例による他のコントローラの構造図である。
【図８】本発明の実施例によるフォワーディング装置の構造図である。
【図９】本発明の実施例による他のフォワーディング装置の構造図である。
【図１０】本発明の実施例による他のフォワーディング装置の構造図である。
【図１１】本発明の実施例による他のフォワーディング装置の構造図である。
【図１２】本発明の実施例による、フロー統計に用いるシステムの構造図である。
【発明を実施するための形態】
【００１４】
以下、添付した図面を参照しながら本発明の好適な実施形態を詳細に説明する。
【００１５】
本発明の実施例は、フロー統計に用いる方法を提供し、図1に示すように、該方法は次のステップを含む。
【００１６】
101：フォワーディング装置が送信しているデータフローを受信し（そのうち、前記データフローには特徴識別子が含まれ）、また、前記データフローを解析することによって前記データフローの類型を把握する。
【００１７】
なお、フォワーディング装置とは、受信したデータフローを所定のインターフェース又は他の装置に送ることができるものを指す。フォワーディング装置は、スイッチ、ルーター、又は、フォワーディング機能を有する他の装置であってもよく、本発明では、これについて限定しない。
【００１８】
具体的に、コントローラが、フォワーディング装置によって送信されているデータフローを受信した後に、該データフローを構成するパケットの情報を解析することにより、データフローの類型を把握する。
【００１９】
102：前記データフローの類型がフロー類型セットにおける所定類型であれば、前記特徴識別子及び前記データフローのパケットヘッダー情報を取得し、前記データフローに対応するオペレーション情報を取得し、そして、前記特徴識別子についての統計オペレーション（情報）を前記オペレーション情報に追加し、そのうち、前記オペレーション情報は、データフローの各種オペレーション（情報）を記録するために用いられる。
【００２０】
具体的に、所定類型は、データフロー類の類型を、統計を行う必要があるデータフローの類型として予め設定することにより得られたものである。フロー類型セットとは、所定類型を含むセットを指す。認識されたデータフローの類型と、フロー類型セットにおける所定類型との比較が行われる。データフローの類型がフロー類型セットにおける一種の所定類型であれば、この類型のデータフローは、統計を行う必要のあるフローである。このデータフローによって運ばれている特徴識別子及びパケットヘッダー情報を取得し、且つ、コントローラにより、このデータフローのサービス層におけるサービスに基づいて、このデータフローの各オペレーションを決定し、これにより、このデータフローに対応するオペレーション情報を取得し、且つ、このデータフローによって運ばれている特徴識別子についての統計オペレーションをオペレーション情報に追加する。上述の統計オペレーションをオペレーション情報に書き込む時に、特徴識別子は、パラメータとされ、好ましくは、カウント識別子（Count  Identifier）の形で書き込まれる。
【００２１】
なお、特徴識別子は、統計項(エントリー)識別子として、フォワーディング装置に、データフローに対して、特徴識別子についての統計を行わせることができる。識別子は、ユーザ識別子、サービス識別子、又は、プロトコール類型であってもよく、本発明では、これについて限定しない。
【００２２】
103：前記特徴識別子についての統計オペレーションが追加された前記オペレーション情報及びパケットヘッダー情報を前記フォワーディング装置に送信し、前記フォワーディング装置に、前記特徴識別子に基づいて前記データフローに対してトラフィック統計を行わせる。
【００２３】
本発明の実施例は、フロー統計に用いる方法を提供している。フォワーディング装置により送信されているデータフローを受信及び識別し、データフローが、統計を行う必要のあるフローである場合、このデータフローによって運ばれている特徴識別子、パケットヘッダー情報、及びデータフローに対応するオペレーション情報を取得する。また、特徴識別子についての統計オペレーションをオペレーション情報に追加し、フォワーディング装置に送信し、これにより、フォワーディング装置に、特徴識別子に基づいてこのデータフローに対してトラフィック統計を行わせることができる。このようにして、特徴識別子によるデータフローのトラフィック統計を実現し、トラフィック統計の能力を向上させ、管理用帯域幅を低減し、通信の混雑を軽減することができる。
【００２４】
上述の方法は、図2に示すように、ステップ101の後に、次のステップを更に含む。
【００２５】
104：前記データフローの類型が前記フロー類型セットにおけるいずれの所定類型でもない場合、前記データフローの類型及び前記データフローのサービスにおけるウェイト（weight）を分析し、前記データフローに対して統計を行う必要があるかどうかを判定し、前記データフローに対して統計を行う必要があれば、前記データフローの類型を前記フロー類型セットに追加し、前記フロー類型セットを更新する。
【００２６】
具体的に、データフローを受信してその類型を認識した後に、前記フロー類型セットに対して検索を行うことにより、前記データフローの類型が前記フロー類型セットにおけるいずれの所定類型でもないことを把握すれば、データフローの類型及びこのデータフローのサービス層におけるウェイトを分析し、このデータフローに対して統計を行う必要があるかどうかを判定する。このデータフローに対して統計を行う必要があれば、このデータフローの類型をフロー類型セットに追加し、フロー類型セットを更新する。このデータフローに対して統計を行う必要がなければ、このデータフローの類型を放棄し、フロー類型セットを更新しない。
【００２７】
なお、上述の方法は、OpenFlowネットワークのフロー統計に応用されてもよく、Internetネットワークのトラフィック統計に応用されてもよく、本発明では、これについて限定しない。本発明の全ての実施例では、OpenFlowネットワークのフロー統計を例として説明を行う。
【００２８】
例えば、OpenFlowネットワークでは、コントローラがOpenFlowコントローラであってもよく、フォワーディング装置がOpenFlowスイッチであってもよい。
【００２９】
ステップ104により、新類型のデータフローを受信する時に、リアルタイムでフロー類型セットにおける所定のデータフローの類型を更新することができ、これにより、特徴識別子に基づいて、統計を行う必要のあるデータフローの類型を記録することができ、その後のデータフローに対して行う類型マッチングに便利である。
【００３０】
本発明の実施例は、フロー統計に用いる他の方法を提供し、図3に示すように、該他の方法は、次のステップを含む。
【００３１】
301：データフローを受信し（前記データフローには特徴識別子が含まれ）、また、前記データフローのマッチング情報を取得する。
【００３２】
前記マッチング情報は、フォワーディング装置がそれ自身に記憶されているマッチング方法で取得した、フローテーブルとマッチングを行う必要がある、データフローの一部の情報である。
【００３３】
302：前記マッチング情報を用いてフローテーブルに対して検索を行う。
【００３４】
フローテーブルは、後述の表1に示される。
【００３５】
303：前記フローテーブルに前記マッチング情報と一致している情報がなければ、前記データフローをコントローラに送信する。
【００３６】
具体的に、ステップ301により取得されているマッチング情報を用いて、フローテーブルを検索する。OpenFlowネットワークでは、フローテーブルが、データフローの進入（アクセス）インターフェース、ソースイーサネット（登録商標）アドレス、ターゲットイーサネットアドレス、類型、vlan識別子、vlan優先度、ソースIPアドレス、ターゲットIPアドレス、プロトコール、IP  ToSビット、ターゲットTCP/UDPポート、ソースTCP/UDPポート、統計結果としてのデータトラフィック、及びデータフローに対応する各オペレーションを記録するために用いられる。オプションで、フローテーブルの各エントリーは、それぞれ、三つのフィールド、即ち、パケットヘッダーフィールド、第一カウンター及びオペレーション（アクション）フィールドを含む。パケットヘッダーフィールドは、データフローの進入インターフェース、ソースイーサネットアドレ、ターゲットイーサネットアドレス、類型、vlan識別子、vlan優先度、ソースIPアドレス、ターゲットIPアドレス、プロトコール、IP  ToSビット、ターゲットTCP/UDPポート、ソースTCP/UDPポートを記録するために用いられる。第一カウンターは、統計結果としてのデータトラフィックを記録するために用いられ、主に、一つのフローテーブル、一つのデータフロー、又は、一つのポートに対して統計を行う。オペレーションフィールドは、データフローに対応する各オペレーションを記録するために用いられる。表１に示すように、フローテーブルの各エントリーはすべて三つのフィールドの内容を含む。
【００３７】
【表１】
0005623585.tif 000002
304：前記コントローラにより送信されている前記データフローのパケットヘッダー情報及びオペレーション情報を受信し、前記パケットヘッダー情報及びオペレーション情報を前記フローテーブルに書き込み、そのうち、前記オペレーション情報は、少なくとも、前記データフローによって運ばれている特徴識別子についての統計オペレーションを含む。
【００３８】
具体的に、ステップ303でフローテーブルとマッチングしないデータフローをコントローラに送信し、コントローラは、このデータフローを解析し、解析により取得したパケットヘッダー情報及びオペレーション情報をフォワーディング装置に返す。フォワーディング装置は、パケットヘッダー情報及びオペレーション情報を受信した後に、パケットヘッダー情報をフローテーブルのパケットヘッダーフィールドに追加し、オペレーション情報をフローテーブルのオペレーションフィールドに追加する。オペレーション情報は、データフローによって運ばれている特徴識別子についての統計オペレーションを有し、上述のオペレーション情報における統計オペレーションは、特徴識別子をパラメータとして用い、好ましくは、カウント識別子の形で、フローテーブルのオペレーションフィールドに書き込まれる。また、フォワーディング装置は、フローテーブルの該エントリーにおける第一カウンターに0を書き込む（Fill）。
【００３９】
なお、パケットヘッダー情報とは、コントローラの分析により得られたデータフローの進入インターフェース、ソースイーサネットアドレ、ターゲットイーサネットアドレス、類型、vlan識別子、vlan優先度、ソースIPアドレス、ターゲットIPアドレス、プロトコール、IP  ToSビット、ターゲットTCP/UDPポート、ソースTCP/UDPポート情報を指す。フォワーディング装置自身が取得したマッチング情報とは異なり、マッチング情報は、フォワーディング装置が一つのデータフローを受信した後に、その自身のマッチングアルゴリズムで取得した幾つかの必要なマッチング情報であり、このマッチング情報を用いてフローテーブルに記録されているパケットヘッダー情報を検索する。ところが、このデータフローの具体的なパケットヘッダー情報は、フォワーディング装置により直接取得することができず、フローテーブルへの検索が失敗した後に、コントローラの解析によりこのデータフローの具体的パケットヘッダー情報を取得する必要がある。
【００４０】
305：前記統計オペレーションにおける前記特徴識別子に基づいて、統計用インスタンステーブルに対して検索を行い、そのうち、前記統計用インスタンステーブルは、送信されたデータフローの特徴識別子及びその対応するトラフィック情報を記録するために用いられる。
【００４１】
具体的に、ステップ304でオペレーション情報をフローテーブルのオペレーションフィールドに書き込む時に、オペレーション情報にはデータフローによって運ばれている特徴識別子についての統計オペレーションが追加されたため、この統計オペレーションをフローテーブルのオペレーションフィールドに書き込む時に、データフローによって運ばれている特徴識別子を取得することができ、また、この特徴識別子に基づいて統計用インスタンステーブルに対して検索を行うことができる。統計用インスタンステーブルには、送信されたデータフローの特徴識別子及びその対応するトラフィックが記録されている。オプションで、統計用インスタンステーブルの各エントリーは、表2に示すように、識別子フィールド及び第二カウンターを含む。識別子フィールドは、データフローの特徴識別子を記録するために用いられる。第二カウンターは、識別子フィールドが記録する特徴識別子に対応するトラフィック情報を記録するために用いられ、また、パケット、バイト、エラーパケット等のデータフローの他の情報に対して統計を行うことができる。統計オペレーションを行っていない時に、フォワーディング装置は、統計用インスタンステーブルの該エントリーにおける第二カウンターに0を書き込む（Fill）。
【００４２】
【表２】
0005623585.tif 000003
さらに、前記統計用インスタンステーブルが引用されている回数に1増加させることも含む。
【００４３】
具体的に、統計用インスタンステーブルは、さらに、前記統計用インスタンステーブルがデータフローにより引用されている回数を記録するためにも用いられる。表３に示すように、統計用インスタンステーブルの各エントリーに引用回数フィールドを追加し、この引用回数フィールドは、統計用インスタンステーブルがデータフローにより引用されている回数を記録するために用いられる。前記統計用インスタンステーブルには統計オペレーションにおける特徴識別子とマッチングしている一項（エントリー）があれば、統計用インスタンステーブルの引用回数フィールドのカウント値を1増加させる。前記統計用インスタンステーブルには統計オペレーションにおける特徴識別子にマッチングしている一項がなければ、統計用インスタンステーブルに一つのエントリーを追加し、また、前記データフローによって運ばれている特徴識別子を前記エントリーに追加する時に、統計用インスタンステーブルの引用回数フィールドに1を書き込む。
【００４４】
【表３】
0005623585.tif 000004
306：前記統計用インスタンステーブルに第一特徴識別子が記録され、該第一特徴識別子が前記データフローによって運ばれている特徴識別子と一致すれば、前記統計用インスタンステーブルの第一特徴識別子に対応するエントリーのインデックスに基づいて、前記フローテーブルにおける、前記データフローによって運ばれている特徴識別子についての統計オペレーションを、前記インデックスについての統計オペレーションに更新する。
【００４５】
なお、インデックスは、記憶アドレスであってもよく、インデックス番号又は第一特徴識別子に対応するエントリーを表し得る他の識別子であってもよい。前記インデックス番号とは、第一特徴識別子に対応するエントリーを統計用インスタンステーブルに所定順序に従って追加する時に、統計用インスタンステーブルのエントリーに与えられる順番号を指す。
【００４６】
具体的に、データフローによって運ばれている特徴識別子が統計用インスタンステーブルの識別子フィールドに記録されレイル一つの特徴識別子と一致すれば、即ち、統計用インスタンステーブルに第一特徴識別子が記録されている時に、フローテーブルのオペレーションフィールドにおけるオペレーション情報の統計オペレーションのパラメータは、データフローによって運ばれている特徴識別子から、第一特徴識別子に対応するエントリーのインデックスに置換し、好ましくは、フローテーブルのオペレーションフィールドにおいて、カウントcountIndexの形で表され、そのうち、countIndexは、統計用インスタンステーブルのインデックスを表す。このようにして、フローテーブルにおける統計オペレーションのパラメータはすべて、統計用インスタンステーブルのエントリーのインデックスに変更される。フォワーディング装置は、フローテーブルにマッチングしているデータフローを受信した後に、統計オペレーションを行う時に、パラメータcountIndexに基づいて、対応する統計用インスタンステーブルのエントリーを直接見つけ出し、トラフィック統計を行うことができる。
【００４７】
307：前記フローテーブルのオペレーション情報における各種オペレーションを実行し、前記フローテーブルのオペレーション情報における統計オペレーションを実行する時に、統計用インスタンステーブルに記録されている前記第一特徴識別子に対応するトラフィックを更新する。
【００４８】
具体的に、フローテーブルのオペレーションフィールドのオペレーション情報における各種の統計オペレーションを実行するとき、統計オペレーションを実行する時に、統計オペレーションにパラメータcountIndexを有し、このパラメータにより統計用インスタンステーブルに対して検索を行い、統計用インスタンステーブルにおけるこのパラメータに対応するエントリーを見つけ出し、統計用インスタンステーブルにおける第二カウンターに記録されている第一特徴識別子に対応するトラフィックを更新し、統計用インスタンステーブルの引用回数フィールドにおける引用カウント値を1増加させる。
【００４９】
本発明の実施例は、フロー統計に用いる他の方法を提供している。フォワーディング装置は、データフローを受信した後に、このデータフローのマッチング情報を取得し、このマッチング情報に基づいてフローテーブルを検索する。フローテーブルにはデータフローのマッチング情報に一致している情報がなければ、このデータフローをコントローラに送信する。フォワーディング装置は、コントローラにより送信されているパケットヘッダー情報及びオペレーション情報を受信し、受信された情報をフローテーブルに追加し、フローテーブルを更新する。オペレーション情報にはデータフローによって運ばれている特徴識別子についての統計オペレーションが追加されたため、上述の特徴識別子に基づいて統計用インスタンステーブルを検索することができる。統計用インスタンステーブルには第一特徴識別子が記録されていれば、統計用インスタンステーブルの第一特徴識別子に対応するエントリーのインデックスに基づいて、フローテーブルにおける、データフローによって運ばれている特徴識別子についての統計オペレーションを、インデックスについての統計オペレーションに更新し、また、統計オペレーションを実行する時に、統計用インスタンステーブルに記録されている特徴識別子に対応するトラフィックを更新する。このようにして、特徴識別子によるデータフローのトラフィック統計を実現し、トラフィック統計の能力を向上させ、フォワーディング装置に対してコントローラの管理用帯域幅を低減し、通信の混雑を軽減することができる。
【００５０】
上述の他の方法は、図4に示すように、次のステップを更に含む。
【００５１】
308：前記統計用インスタンステーブルには第一特徴識別子が記録されていなければ、統計用インスタンステーブルに一つのエントリーを追加し、前記データフローによって運ばれている特徴識別子を該エントリーに追加し、また、前記エントリーのインデックスに基づいて、前記フローテーブルにおける、前記データフローによって運ばれている特徴識別子の統計オペレーションを、該インデックスについての統計オペレーションに更新する。
【００５２】
具体的に、統計用インスタンステーブルには第一特徴識別子がなく、即ち、統計用インスタンステーブルの識別子フィールドには、ステップ304にて取得された、データフローによって運ばれている特徴識別子と一致している特徴識別子がなければ、統計用インスタンステーブルに一つのエントリーを追加し、ステップ304にて取得された、データフローによって運ばれている特徴識別子を、統計用インスタンステーブルの新しく追加された一つのエントリーに追加し、且つ、フォワーディング装置が、統計用インスタンステーブルの該エントリーの引用回数フィールドに1を書き込み、統計用インスタンステーブルを更新する。新しく追加されたエントリーのインデックスに基づいて、フローテーブルにおける、データフローによって運ばれている特徴識別子についての統計オペレーションを、前記インデックスについての統計オペレーションに更新する。言い換えると、新しく添加された統計用インスタンステーブルのエントリーのインデックスに基づいて、フローテーブルにおけるオペレーションフィールドの統計オペレーションのパラメータは、データフローによって運ばれている特徴識別子を、統計用インスタンステーブルエントリーのインデックスに置換し、好ましくは、フローテーブルにおけるオペレーションフィールドにおいて、カウントcountIndexの形で表され、そのうち、countIndexは、統計用インスタンステーブルのエントリーのインデックスを表す。また、フローテーブルのオペレーションフィールドの統計オペレーションを実行する時に、統計オペレーションにパラメータcountIndexがあるため、このパラメータを基づいて統計用インスタンステーブルに対して検索を行って、統計用インスタンステーブルにおける、このパラメータに対応する統計用インスタンステーブルのエントリーを取得し、統計用インスタンステーブルにおける第二カウンターに記録されている第一特徴識別子に対応するトラフィック情報を更新する。
【００５３】
ステップ308：統計用インスタンステーブルを更新してもよく、統計を行う必要のあるデータフローを統計用インスタンステーブルの対応するエントリーに記録し、且つ、フローテーブルにおける統計オペレーションのパラメータをすべて統計用インスタンステーブルのエントリーのインデックスに修正してもよい。フォワーディング装置がフローテーブルにマッチングしているデータフローを受信した後、統計オペレーションを行う時に、パラメータcountIndexに基づいて、対応する統計用インスタンステーブルのエントリーを直接見つけ出し、トラフィック統計を行うことができる。
【００５４】
なお、統計用インスタンステーブルは、アレー（配列）、リンクテーブル、ツリーの形で記憶されてもよく、図の形や他の記憶形で記憶されてもよく、本発明では、これについて限定しない。
【００５５】
上述の他の方法は、図5に示すように、次のステップを更に含む。
【００５６】
309：前記フローテーブルには前記マッチング情報に一致している情報があれば、前記フローテーブルにおけるオペレーション情報の各オペレーションに基づいて、前記データフローに対して処理を行う。
【００５７】
そのうち、前記オペレーション情報における統計オペレーションを行う時に、前記フローテーブルのオペレーション情報における統計オペレーションのインデックスに基づいて、前記インデックスに対応する統計用インスタンステーブルのエントリーの位置を検索し、そして、前記統計用インスタンステーブルの第一特徴識別子に対応するトラフィック情報を更新する。
【００５８】
具体的に、前記オペレーション情報における統計オペレーションを行うときには、統計オペレーションを実行する時に、統計オペレーションのパラメータが統計用インスタンステーブルのエントリーのインデックスcountIndexであるため、フォワーディング装置が統計オペレーションのパラメータcountIndexに基づいて、対応する統計用インスタンステーブルのエントリーを直接探し出し、そてし、統計用インスタンステーブルのエントリーにおける第二カウンターの第一特徴識別子に対応するトラフィック情報を更新することができる。
【００５９】
ステップ309により、フォワーディング装置がデータフローを受信した後に、データフローのマッチング情報を受信し、フローテーブルにはこのマッチング情報に一致している情報が記録されていれば、フローテーブルにおけるマッチングエントリーに記録されている第一カウンターを更新し、マッチングエントリーのオペレーションフィールドにおけるオペレーション情報に基づいて、データフローに対して処理を行う。また、オペレーション情報における統計オペレーションのインデックスに基づいて、対応する統計用インスタンステーブルのエントリーを探し出し、データフローに対してトラフィック統計を行うことができる。このようにして、特徴識別子によるデータフローのトラフィック統計を実現し、トラフィック統計の能力を向上させ、フォワーディング装置に対してのコントローラの管理用帯域幅を低減し、通信の混雑を軽減することができる。
【００６０】
なお、本発明のすべての実施例では、データフローに対応するオペレーションは、フローテーブルのオペレーションフィールドにおけるオペレーション情報に記録されてもよく、第一記憶ユニットのオペレーションセット（集合）に記憶されてもよく、本発明では、これについて限定しない。
【００６１】
上述の他の方法は、図5に示すように、次のステップを更に含む。
【００６２】
310：定期的に、コントローラに統計結果としてのデータトラフィックをレポート（報告）する。
【００６３】
ステップ310により、フォワーディング装置は、コントローラによるクエリーを要しなく、コントローラに統計結果としてのデータトラフィックを自動的に報告することができる。これにより、フォワーディング装置に対してのコントローラの管理用帯域幅を低減し、軽通信の混雑を軽減することができる。
【００６４】
なお、上述の他の方法は、OpenFlowネットワークのフロー統計に応用されてもよく、Internetネットワークのトラフィック統計に応用されてもよく、本発明では、これについて限定しない。
【００６５】
本発明の実施例はコントローラを提供し、図6に示すように、該コントローラは次のユニットを含む。
【００６６】
把握ユニット601：フォワーディング装置により送信されているデータフローを受信すし（そのうち、前記データフローは特徴識別子を含み）、また、前記データフローを解析することにより前記データフローの類型を把握するために用いられる。
【００６７】
第一取得ユニット602：前記データフローの類型がフロー類型セットにおける所定類型である場合、前記データフローによって運ばれている特徴識別子及び前記データフローのパケットヘッダー情報を取得し、前記データフローに対応するオペレーション情報を取得し、また、前記特徴識別子についての統計オペレーションを前記オペレーション情報に追加するために用いられる。
【００６８】
送信ユニット603：第一取得ユニット602により取得されている、前記特徴識別子が追加された統計オペレーションにおける前記オペレーション情報及びパケットヘッダー情報を前記フォワーディング装置に送信し、前記フォワーディング装置に、前記特徴識別子に基づいて、前記データフローに対してトラフィック統計を行わせるために用いられる。
【００６９】
上述のコントローラは、図7に示すように、次のユニットを更に含む。
【００７０】
フロー類型決定ユニット604：前記データフローの類型が前記フロー類型セットにおけるいずれの所定類型でもない場合、前記データフローの類型及び前記データフローのサービスにおけるウェイトの分析により、前記データフローに対して統計を行う必要があるかどうかを判定し、前記データフローに対して統計を行う必要があれば、前記フロー類型セットに前記データフロー類型がないとき、前記データフローの類型を前記フロー類型セットに追加し、前記フロー類型セットを更新するために用いられる。
【００７１】
第二取得ユニット605：前記データフローのサービスにおけるウェイトを取得するために用いられる。
【００７２】
本発明の実施例はコントローラを提供している。把握ユニットは、フォワーディング装置により送信されているデータフローを受信してその類型を把握し、データフローが、統計を行う必要のあるフローである場合、第一取得ユニットは、このデータフローによって運ばれている特徴識別子、パケットヘッダー情報、及び、データフローに対応するオペレーション情報を取得し、また、特徴識別子についての統計オペレーションをオペレーション情報に追加し、送信ユニットは、取得ユニットにより取得されている情報をフォワーディング装置に送信し、これにより、フォワーディング装置は、特徴識別子に基づいて、このデータフローに対してトラフィック統計を行うことができる。また、フロー類型決定ユニットは、新類型のデータフローを受信しているときに、この類型のデータフローを分析することにより、この類型のデータフローに対して統計を行う必要があるかどうかを判断することができ、統計を行う必要があれば、リアルタイムでフロー類型セットにおける所定のデータフローの類型を更新する。これにより、特徴識別子について統計を行う必要のあるデータフローの類型を記録することができ、その後のデータフローの類型マッチングに便利である。このようにして、特徴識別子によるデータフローのトラフィック統計を実現し、トラフィック統計の能力を向上させ、管理用帯域幅を低減し、通信の混雑を軽減することができる。
【００７３】
本発明の実施例は、フォワーディング装置を提供し、図8に示すように、該フォワーディング装置は、次のユニットを含む。
【００７４】
第一受信ユニット801：データフローを受信するために用いられ、そのうち、前記データフローは、特徴識別子を含む。
【００７５】
第一取得ユニット802：第一受信ユニット801により受信されているデータフローに基づいて、前記データフローのマッチング情報を取得するために用いられる。
【００７６】
第一検索ユニット803：第一取得ユニット802によれ取得されているマッチング情報を利用してフローテーブルに対して検索を行うために用いられる。
【００７７】
第一送信ユニット804：前記フローテーブルに前記マッチング情報と一致している情報がなければ、前記データフローをコントローラに送信するために用いられる。
【００７８】
第二受信ユニット805：前記コントローラにより送信されている前記データフローにおけるパケットヘッダー情報及びオペレーション情報を受信し、そして、受信した前記データフローにおけるパケットヘッダー情報及びオペレーション情報を書き込みユニット806に送信するために用いられる。
【００７９】
書き込みユニット806：受信した、前記第二受信ユニット805により送信されているデータフローにおけるパケットヘッダー情報及びオペレーション情報を前記フローテーブルに書き込むために用いられ、そのうち、前記オペレーション情報は、少なくとも、前記データフローによって運ばれている特徴識別子についての統計オペレーションを含む。
【００８０】
第二検索ユニット807：前記統計オペレーションにおける前記特徴識別子に基づいて、統計用インスタンステーブルに対して検索を行うために用いられ、そのうち、前記統計用インスタンステーブルは、送信されたデータフローの特徴識別子及びその対応するトラフィック情報を記憶するために用いられる。
【００８１】
第一更新ユニット808：前記統計用インスタンステーブルに第一特徴識別子が記録され、該第一特徴識別子が前記データフローによって運ばれている特徴識別子に一致すれば、前記統計用インスタンステーブルの第一特徴識別子に対応するエントリーのインデックスに基づいて、前記フローテーブルにおける、前記データフローによって運ばれている特徴識別子についての統計オペレーションを、前記インデックスについての統計オペレーションに変更するために用いられる。
【００８２】
第一実行ユニット809：前記フローテーブルのオペレーション情報における各オペレーションを実行し、また、前記統計オペレーションを実行する時に、統計用インスタンステーブルに記録されている前記第一特徴識別子に対応するトラフィック情報を更新するために用いられる。
【００８３】
そのうち、第一実行ユニット809は、さらに、前記統計オペレーションを実行する時に、前記統計用インスタンステーブルが引用されている回数を1増加させるために用いられる。
【００８４】
第一記憶ユニット810：フローテーブル及び統計用インスタンステーブルを記憶するために用いられる。
【００８５】
なお、統計用インスタンステーブルは、第一記憶ユニット810において、アレー（配列）、リンクテーブル、ツリー樹の形で記憶されてもよく、図の形や他の形で記憶されてもよく、本発明では、これについて限定しない。
【００８６】
上述のフォワーディング装置は、図9に示すように、次のユニットを更に含む。
【００８７】
追加ユニット811：前記統計用インスタンステーブルに第一特徴識別子が記録されていない場合、統計用インスタンステーブルに一つのエントリーを追加し、そして、前記データフローによって運ばれている特徴識別子を、第一記憶ユニット810の統計用インスタンステーブルの新しく追加されたエントリーに追加するために用いられる。
【００８８】
第二更新ユニット812：追加ユニット811により追加された前記エントリーのインデックスに基づいて、前記フローテーブルにおける、前記データフローによって運ばれている特徴識別子についての統計オペレーションを、前記インデックスについての統計オペレーションに更新するために用いられる。
【００８９】
上述のフォワーディング装置は、図10に示すように、次のユニットを更に含む。
【００９０】
第二実行ユニット813：前記フローテーブルに前記マッチング情報と一致している情報がある場合、前記第一記憶ユニット810のフローテーブルのオペレーション情報における各オペレーションに基づいて、前記データフローに対して処理を行うために用いられる。
【００９１】
そのうち、前記オペレーション情報における統計オペレーションを行う時に、前記フローテーブルのオペレーション情報における統計オペレーションのインデックスに基づいて、前記統計用インスタンステーブルのエントリーの位置を検索し（探し出し）、そして、前記統計用インスタンステーブルの第一特徴識別子に対応するデータトラフィックを更新するために用いられる。
【００９２】
上述のフォワーディング装置は、図11に示すように、次のユニットを更に含む。
【００９３】
報告ユニット814：定期的に、コントローラに統計結果としてのデータトラフィックを報告するために用いられる。
【００９４】
なお、第一実行ユニットと第二実行ユニットとは、一つのユニットに統合されてもよく、フォワーディング装置におけるそれぞれ独立したユニットであってもよく、本発明では、これについて限定しない。
【００９５】
本発明の実施例はフォワーディング装置を提供している。フォワーディング装置は、データフローを受信し、データフローのマッチング情報を取得し、そして、フローテーブルに対して検索を行い、フローテーブルにマッチング情報と一致している情報がなければ、データフローをコントローラに送信する。フォワーディング装置は、コントローラにより送信されている情報を受信し、受信した情報に基づいてフローテーブルを更新、また、特徴識別子に基づいて統計用インスタンステーブルに対して検索を行い、同じ項（エントリー）を検索し（見つけ出し）たら、統計オペレーションを実行する時に、統計用インスタンステーブルに記録されている、特徴識別子に対応するトラフィックを更新する。その同時に、フォワーディング装置は、さらに、定期的に、コントローラに統計結果としてデータトラフィックを報告する。これにより、特徴識別子によるデータフローのトラフィック統計を実現し、トラフィック統計の能力を向上させ、フォワーディング装置に対してのコントローラの管理用帯域幅を低減し、通信の混雑を軽減することができる。
【００９６】
本発明の実施例は、フロー統計に用いるシステムを提供し、図12に示すように、該システムは、コントローラ131及びフォワーディング装置132を含む。
【００９７】
前記コントローラ131は、フォワーディング装置132より送信されているデータフローを受信し（そのうち、前記データフローは特徴識別子を含み）、また、前記データフローを解析することにより前記データフローの類型を把握し；前記データフローの類型がフロー類型セットにおける所定類型であれば、前記データフローによって運ばれている特徴識別子及び前記データフローのパケットヘッダー情報を取得し、前記データフローに対応するオペレーション情報を取得し、また、前記特徴識別子についての統計オペレーションを前記オペレーション情報に追加し；前記オペレーション情報は、データフローの各種オペレーションを記録するために用いられ；前記特徴識別子についての統計オペレーションが追加された前記オペレーション情報及びパケットヘッダー情報を前記フォワーディング装置132に送信し、前記フォワーディング装置132に、前記データフローに対して、前記特徴識別子に基づいて、トラフィック統計を行わせるために用いられる。
【００９８】
前記フォワーディング装置132は、データフローを受信し（そのうち、前記データフローは特徴識別子を含み）、また、前記データフローのマッチング情報を取得し；前記マッチング情報を利用してフローテーブルに対して検索を行い、前記フローテーブルに前記マッチング情報と一致している情報がなければ、前記データフローをコントローラ131に送信し；前記コントローラ131により送信されている前記データフローのパケットヘッダー情報及びオペレーション情報を受信し、前記パケットヘッダー情報及びオペレーション情報を前記フローテーブルに書き込み、そのうち、前記オペレーション情報は、少なくとも、前記データフローによって運ばれている特徴識別子についての統計オペレーションを含み；前記統計オペレーションにおける前記特徴識別子に基づいて統計用インスタンステーブルに対して検索を行い、前記統計用インスタンステーブルは、送信されたデータフローの特徴識別子及びその対応するトラフィック情報を記録するために用いられ；前記統計用インスタンステーブルに第一特徴識別子が記録され、該第一特徴識別子が前記データフローによって運ばれている特徴識別子と一致すれば、前記統計用インスタンステーブルにおける第一特徴識別子に対応するエントリーのインデックスに基づいて、前記フローテーブルにおける、前記データフローによって運ばれている特徴識別子についての統計オペレーションを、前記インデックスについての統計オペレーションに更新し、前記フローテーブルのオペレーション情報における統計オペレーションを行う時に、統計用インスタンステーブルに記録されている前記第一特徴識別子に対応するトラフィック情報を更新するために用いられる。
【００９９】
本発明の実施例は、フロー統計に用いるシステムを提供している。フォワーディング装置は、データフローを受信し、データフローのマッチング情報を取得し、そして、フローテーブルに対して検索を行い、フローテーブルにマッチング情報と一致している情報がなければ、データフローをコントローラに送信する。コントローラは、フォワーディング装置により送信されているデータフローを受信し、データフローが統計を行う必要のあるフローであると識別すれば、このデータフローによって運ばれている特徴識別子、パケットヘッダー情報、及びデータフローに対応するオペレーション情報を取得し、特徴識別子についての統計オペレーションをオペレーション情報に追加し、また、取得した情報をフォワーディング装置に送信する。フォワーディング装置は、コントローラにより送信されている情報を受信し、そして、受信した情報に基づいてフローテーブルを更新し、また、特徴識別子に基づいて統計用インスタンステーブルを検索し、同じ項（エントリー）を見つければ、前記統計用インスタンステーブルにおける第一特徴識別子に対応するエントリーのインデックスに基づいて、前記フローテーブルにおける、前記データフローによって運ばれている特徴識別子についての統計オペレーションを、前記インデックスについて統計オペレーションに更新し、また、統計オペレーションを実行する時に、統計用インスタンステーブルに記録されている特徴識別子に対応するデータトラフィックを更新する。その同時に、フォワーディング装置は、さらに、定期的に、コントローラに統計結果としてのデータトラフィックを報告する。これにより、特徴識別子によるデータフローのトラフィック統計を実現し、トラフィック統計の能力を向上させ、フォワーディング装置に対してのコントローラの管理用帯域幅を低減し、通信の混雑を軽減することができる。
【０１００】
以上、本発明の好ましい実施形態を説明したが、本発明はこの実施形態に限定されず、本発明の趣旨を離脱しない限り、本発明に対するあらゆる変更は本発明の技術的範囲に属する。
【図１】
0005623585.tif 000005
【図２】
0005623585.tif 000006
【図３】
0005623585.tif 000007
【図４】
0005623585.tif 000008
【図５】
0005623585.tif 000009
【図６】
0005623585.tif 000010
【図７】
0005623585.tif 000011
【図８】
0005623585.tif 000012
【図９】
0005623585.tif 000013
【図１０】
0005623585.tif 000014
【図１１】
0005623585.tif 000015
【図１２】
0005623585.tif 000016