図面 (/)

技術 パケット処理方法、装置及びシステム

出願人 華為技術有限公司
発明者 丁万夫劉恩慧林程勇李風凱
出願日 2015年3月12日 (5年0ヶ月経過) 出願番号 2015-048938
公開日 2015年7月16日 (4年8ヶ月経過) 公開番号 2015-130697
状態 特許登録済
技術分野 広域データ交換
主要キーワード 目的ポート ポータブルハードディスク マッチング回数 集積ユニット 集中型システム パケット処理システム LRU インターフェース操作
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2015年7月16日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (3)

課題

パケットを処理する方法、装置及びシステムを提供する。

解決手段

コントローラにより送信されている第一フローテーブルエントリーを受信し、前記第一フローテーブルエントリーは、第一フロー重要性を示すための第一重要性情報を含み;フローテーブルアイドルフローテーブルエントリーリソースが存在しなければ、前記フローテーブルに第二フローテーブルエントリーが存在するかどうかを判断し、前記第二フローテーブルエントリーは、第二フローの重要性を示すための第二重要性情報を含み、前記第二重要性情報により示される重要性は、前記第一重要性情報により示される重要性よりも低く;及び、前記フローテーブルに前記第二フローテーブルエントリーが存在すれば、前記第二フローテーブルエントリーを削除し、前記第一フローテーブルエントリーを前記フローテーブルに追加することを含む。

概要

背景

インターネット発展に伴い、分散型システムネットワーク拡張性及び管理上のニーズをよりよく満足することができないので、制御及び転送が分離した集中型システムが機運に応じて生まれている。例えば、オープンフロー(OpenFlow)システムは、制御及び転送が分離した集中型システムの一種であり、OpenFlowスイッチ(OpenFlow Switch)は、元々完全にスイッチ/ルーターにより制御されるパケット転送プロセスを、OpenFlowスイッチ及びコントローラ(Controller)により共同に完成されるプロセスに変換し、これにより、データの転送及びルーティング制御の分離を実現することができる。コントローラは、事前に規定されたインターフェース操作(interface operation)により、OpenFlowスイッチにおけるフローテーブルを制御することができ、これにより、データ転送の目的を達成することができる。OpenFlowスイッチは、OpenFlowスイッチに進入したパケットについて、フローテーブルに対してクエリーを行うことにより、該パケットにマッチングするフローテーブルエントリーを得ることができる。そして、該フローテーブルエントリーに従って、該パケットに対して行う必要のある操作を確定することができ、該操作は、例えば、該パケットを、目的ポートに転送し、放棄し、又はコントローラに報告(report)するなどである。フローの最初のパケットについては、OpenFlowスイッチは、マッチングによりフローテーブルエントリーが得られなければ、該パケットをコントローラに報告することができ、コントローラは、該パケットが所属するフローのために、新しいフローテーブルエントリーを生成し、そして、該パケットをOpenFlowスイッチに引き渡し(deliver)、これにより、OpenFlowスイッチは、この新しいフローテーブルエントリーをフローテーブルに追加する。

しかし、フローテーブルエントリーのリソースがすべて使われている時に、OpenFlowスイッチは、新しいフローテーブルエントリーをフローテーブルに追加することができず、これにより、OpenFlowスイッチは、新しいフローに対してタイムリーな処理を行うことができないので、パケット処理信頼性が低下してしまう。また、制御及び転送が分離した他の集中型システムにも類似する問題が存在する。

概要

パケットを処理する方法、装置及びシステムを提供する。コントローラにより送信されている第一フローテーブルエントリーを受信し、前記第一フローテーブルエントリーは、第一フローの重要性を示すための第一重要性情報を含み;フローテーブルにアイドルフローテーブルエントリーリソースが存在しなければ、前記フローテーブルに第二フローテーブルエントリーが存在するかどうかを判断し、前記第二フローテーブルエントリーは、第二フローの重要性を示すための第二重要性情報を含み、前記第二重要性情報により示される重要性は、前記第一重要性情報により示される重要性よりも低く;及び、前記フローテーブルに前記第二フローテーブルエントリーが存在すれば、前記第二フローテーブルエントリーを削除し、前記第一フローテーブルエントリーを前記フローテーブルに追加することを含む。

目的

本発明の目的は、パケット処理の信頼性を向上させるために、パケットを処理する方法、装置、及びシステムを提供する

効果

実績

技術文献被引用数
0件
牽制数
0件

この技術が所属する分野

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

制御及び転送が分離した集中型システムに用いるパケット処理方法であって、パケット処理装置により、コントローラにより送信されている第一フローテーブルエントリーを受信し、前記第一フローテーブルエントリーは、第一フロー重要性を示すために用いられる第一重要性情報を含み;フローテーブルアイドルフローテーブルエントリーリソースが存在しなければ、前記パケット処理装置により、前記フローテーブルに第二フローテーブルエントリーが存在するかどうかを判断し、前記第二フローテーブルエントリーは、第二フローの重要性を示すために用いられる第二重要性情報を含み、前記第二重要性情報により示される重要性は、前記第一重要性情報により示される重要性よりも低く;及び前記フローテーブルに前記第二フローテーブルエントリーが存在すれば、前記パケット処理装置により、前記フローテーブルにおける前記第二フローテーブルエントリーを削除し、前記パケット処理装置により、前記第一フローテーブルエントリーを前記フローテーブルに追加することを含む、方法。

請求項2

請求項1に記載の方法であって、前記第一フローテーブルエントリーは、フローテーブルエントリーのマッチング優先度情報を含み、前記第一フローテーブルエントリーは、前記第一重要性情報を運ぶために用いられる新しく追加されたフィールドを更に含む、方法。

請求項3

請求項1に記載の方法であって、前記第一及び第二重要性情報は、フローテーブルエントリーのマッチング優先度情報及びフローテーブルエントリーのマッチング回数情報のうちの少なくとも一つをそれぞれ含み、前記フローテーブルエントリーのマッチング優先度情報により示される優先度が高ければ高いほど、対応するフローの重要性が高く;及び前記フローテーブルエントリーのマッチング回数情報により示される回数が多ければ多いほど、対応するフローの重要性が高い、方法。

請求項4

請求項1〜3のうち何れか一つに記載の方法であって、前記フローテーブルに前記第二フローテーブルエントリーが存在しなければ、前記コントローラにエラーメッセージを送信し、前記フローテーブルに、前記第一フローテーブルエントリーを追加するためのアイドルフローテーブルエントリーリソースが存在しないことを示すことを更に含む、方法。

請求項5

請求項1〜4のうちの何れか一つに記載の方法であって、前記制御及び転送が分離した集中型システムは、オープンフローステムを含む、方法。

請求項6

制御及び転送が分離した集中型システムに用いるパケット処理装置であって、コントローラにより送信されている第一フローテーブルエントリーを受信するように構成された受信器であって、前記第一フローテーブルエントリーは、第一フローの重要性を示すために用いられる第一重要性情報を含む、受信器;及びフローテーブルにアイドルフローテーブルエントリーリソースが存在しなければ、前記フローテーブルに第二フローテーブルエントリーが存在するかどうかを判断するように構成された処理器であって、前記第二フローテーブルエントリーは、第二フローの重要性を示すために用いられる第二重要性情報を含み、前記第二重要性情報により示される重要性は、前記第一重要性情報により示される重要性よりも低く、前記処理器は、前記フローテーブルに前記第二フローテーブルエントリーが存在すれば、前記フローテーブルにおける前記第二フローテーブルエントリーを削除し、前記第一フローテーブルエントリーを前記フローテーブルに追加する、処理器を含む、装置。

請求項7

請求項6に記載の装置であって、前記第一フローテーブルエントリーは、フローテーブルエントリーのマッチング優先度情報を含み、前記第一フローテーブルエントリーは、前記第一重要性情報を運ぶために用いられる新しく追加されたフィールドを更に含む、装置。

請求項8

請求項6又は7に記載の装置であって、前記第一及び第二重要性情報は、フローテーブルエントリーのマッチング優先度情報及びフローテーブルエントリーのマッチング回数情報のうちの少なくとも一つをそれぞれ含み、前記フローテーブルエントリーのマッチング優先度情報により示される優先度が高ければ高いほど、対応するフローの重要性が高く;及び前記フローテーブルエントリーのマッチング回数情報により示される回数が多ければ多いほど、対応するフローの重要性が高い、装置。

請求項9

請求項6〜8のうち何れか一つに記載の装置であって、前記処理器は、さらに、前記フローテーブルに前記第二フローテーブルエントリーが存在しなければ、前記コントローラにエラーメッセージを送信し、前記フローテーブルに、前記第一フローテーブルエントリーを追加するためのアイドルフローテーブルエントリーリソースが存在しないことを示すように構成される、装置。

請求項10

請求項6〜9のうちの何れか一つに記載の装置であって、前記制御及び転送が分離した集中型システムは、オープンフローシステムを含む、装置。

請求項11

コントローラ及び請求項6〜10のうちの何れか一つに記載のパケット処理装置を含む、パケット処理システム

請求項12

コンピュータに、請求項1〜5のうちの何れか一つに記載の方法を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体

請求項13

コンピュータに、請求項1〜5のうちの何れか一つに記載の方法を実行させるためのプログラム。

技術分野

0001

本発明は、データ処理技術に関し、特に、パケットを処理する方法、装置及びシステムに関する。

背景技術

0002

インターネット発展に伴い、分散型システムネットワーク拡張性及び管理上のニーズをよりよく満足することができないので、制御及び転送が分離した集中型システムが機運に応じて生まれている。例えば、オープンフロー(OpenFlow)システムは、制御及び転送が分離した集中型システムの一種であり、OpenFlowスイッチ(OpenFlow Switch)は、元々完全にスイッチ/ルーターにより制御されるパケット転送プロセスを、OpenFlowスイッチ及びコントローラ(Controller)により共同に完成されるプロセスに変換し、これにより、データの転送及びルーティング制御の分離を実現することができる。コントローラは、事前に規定されたインターフェース操作(interface operation)により、OpenFlowスイッチにおけるフローテーブルを制御することができ、これにより、データ転送の目的を達成することができる。OpenFlowスイッチは、OpenFlowスイッチに進入したパケットについて、フローテーブルに対してクエリーを行うことにより、該パケットにマッチングするフローテーブルエントリーを得ることができる。そして、該フローテーブルエントリーに従って、該パケットに対して行う必要のある操作を確定することができ、該操作は、例えば、該パケットを、目的ポートに転送し、放棄し、又はコントローラに報告(report)するなどである。フローの最初のパケットについては、OpenFlowスイッチは、マッチングによりフローテーブルエントリーが得られなければ、該パケットをコントローラに報告することができ、コントローラは、該パケットが所属するフローのために、新しいフローテーブルエントリーを生成し、そして、該パケットをOpenFlowスイッチに引き渡し(deliver)、これにより、OpenFlowスイッチは、この新しいフローテーブルエントリーをフローテーブルに追加する。

0003

しかし、フローテーブルエントリーのリソースがすべて使われている時に、OpenFlowスイッチは、新しいフローテーブルエントリーをフローテーブルに追加することができず、これにより、OpenFlowスイッチは、新しいフローに対してタイムリーな処理を行うことができないので、パケット処理信頼性が低下してしまう。また、制御及び転送が分離した他の集中型システムにも類似する問題が存在する。

発明が解決しようとする課題

0004

本発明の目的は、パケット処理の信頼性を向上させるために、パケットを処理する方法、装置、及びシステムを提供することにある。

課題を解決するための手段

0005

本発明の一側面によれば、制御及び転送が分離した集中型システムに用いるパケット処理方法が提供される。該パケット処理方法は、コントローラにより送信されている第一フローテーブルエントリーを受信し、そのうち、前記第一フローテーブルエントリーは第一フローの重要性を示すための第一重要性情報を含み;フローテーブルにアイドル(idle;“空き”)フローテーブルエントリーリソースが存在しなければ、前記フローテーブルに第二フローテーブルエントリーが存在するかどうかを判断し、そのうち、前記第二フローテーブルエントリーは第二フローの重要性を示すための第二重要性情報を含み、前記第二重要性情報により示される重要性は前記第一重要性情報により示される重要性よりも低く;及び、前記フローテーブルに前記第二フローテーブルエントリーが存在すれば、前記フローテーブルにおける前記第二フローテーブルエントリーを削除し、前記第一フローテーブルエントリーを前記フローテーブルに追加することを含む。

0006

本発明の他の側面によれば、制御及び転送が分離した集中型システムに用いるパケット処理装置が提供される。該パケット処理装置は、コントローラにより送信されている第一フローテーブルエントリーを受信するための受信器であって、前記第一フローテーブルエントリーは第一フローの重要性を示すための第一重要性情報を含む、受信器;及び、フローテーブルにアイドルフローテーブルエントリーリソースが存在しなければ、前記フローテーブルに第二フローテーブルエントリーが存在するかどうかを判断するための処理器であって、前記第二フローテーブルエントリーは第二フローの重要性を示すための第二重要性情報を含み、前記第二重要性情報により示される重要性は前記第一重要性情報により示される重要性よりも低く、前記処理器は、前記フローテーブルに前記第二フローテーブルエントリーが存在すれば、前記フローテーブルにおける前記第二フローテーブルエントリーを削除し、前記第一フローテーブルエントリーを前記フローテーブルに追加する、処理器を含む。

0007

本発明の他の側面によれば、制御及び転送が分離した集中型システムに用いるパケット処理システムが提供される。該パケット処理システムは、コントローラ及び上述のようなパケット処理装置を含む。

0008

上述の技術案によれば、本発明の実施例は、追加された前記第一フローテーブルエントリーに従って、受信されたパケットに対してタイムリーな処理を行うことができ、重要性が比較的高いフローに対してのタイムリーな処理を実現することができ、フローテーブルエントリーリソースがすべて使われていることによって転送装置が新しいフローテーブルエントリーをフローテーブルに追加することができないという従来技術における問題を軽減することができるので、パケット処理の信頼性を向上させることができる。

図面の簡単な説明

0009

本発明の一実施例によるパケット処理方法のフローチャートである。
本発明の他の実施例によるパケット処理装置の構造図である。

実施例

0010

以下、添付した図面を参照しながら本発明の好適な実施形態を詳細に説明する。

0011

なお、本発明の技術案は、制御及び転送が分離した集中型システム、例えば、OpenFlowシステム等に応用することができる。

0012

図1は、本発明の一実施例によるパケット処理方法のフローチャートである。図1に示すように、該パケット処理方法は、次のようなステップを含む。

0013

101:コントローラにより送信されている第一フローテーブルエントリーを受信し、そのうち、該第一フローテーブルエントリーは、第一フローの重要性を示すための第一重要性情報を含む。

0014

102:フローテーブルにアイドルフローテーブルエントリーリソースが存在しなければ、該フローテーブルに第二フローテーブルエントリーが存在するかどうかを判断し、そのうち、該第二フローテーブルエントリーは、第二フローの重要性を示すための第二重要性情報を含み、該第二重要性情報により示される重要性は、上述の第一重要性情報により示される重要性よりも低い。

0015

103:上述のフローテーブルに上述の第二フローテーブルエントリーが存在すると判断すれば、上述のフローテーブルにおける上述の第二フローテーブルエントリーを削除し、上述の第一フローテーブルエントリーを上述のフローテーブルに追加する。

0016

なお、上述のフローテーブルには、アイドルフローテーブルエントリーリソースが存在しない。言い換えると、フローテーブルエントリーリソースは、すべて使われており、即ち、フローテーブルは、フル(満)になっている。

0017

オプションで、本実施例の一例では、上述の重要性情報は、従来技術におけるフローテーブルエントリーのフィールドに運ばれてもよく、又は、フローテーブルエントリーの新しく追加されたフィールドに運ばれてもよいが、本実施例では、これに限定されない。具体的には、上述の重要性情報は、次のような情報のうちの少なくとも一つを含んでもよいが、それに限定されない。

0018

フローテーブルエントリーのマッチング優先度情報(例えば、従来技術におけるフローテーブルエントリーに運ばれるPriority):フローテーブルエントリーのマッチング優先度情報により示される優先度が高ければ高いほど、対応するフローの重要性が高く;及び、
フローテーブルエントリーのマッチング回数情報(例えば、従来技術におけるフローテーブルエントリーに運ばれるCounters):フローテーブルエントリーのマッチング回数情報により示される回数が多ければ多いほど、対応するフローの重要性が高い。

0019

オプションで、上述の新しく追加されたフィールドは、統計による「最近もっともアクセスされていない(LRU:Least Recently Used)回数」に基づいて、フローテーブルエントリーの重要性を設置するために用いられてもよく、例えば、フローのLRU回数が多ければ多いほど、フローテーブルエントリーの重要性が高く;或いは、所定期間において、統計によるパケットの数に基づいて、フローテーブルエントリーの重要性を設置するために用いられてもよく、例えば、フローに含まれるパケットの数が多ければ多いほど、フローテーブルエントリーの重要性が高い。なお、本実施例では、これに限定されない。

0020

オプションで、上述の重要性情報は、単独でフローの重要性を示してもよい。

0021

オプションで、上述の重要性情報は、組み合わせることによってフローの重要性を示してもよい。例えば、フローテーブルエントリーのマッチング優先度情報(例えば、従来技術におけるフローテーブルエントリーのPriority)により示される2つのフロー(フロー1及びフロー2)の重要性が等しい時に、フロー1に対応するフローテーブルエントリーにおけるフローテーブルエントリーのマッチング回数情報が、高い(大きい)マッチング回数を示せれば、フロー1の重要性が高く;フロー2に対応するフローテーブルエントリーにおけるフローテーブルエントリーのマッチング回数情報が、高い(大きい)マッチング回数を示せれば、フロー2の重要性が高い。重要性情報を組み合わせてフローの重要性を示す時は、具体的なニーズに応じて重要性の配置(configuration)を行ってもよいが、本発明では、具体的に限定されない。

0022

なお、上述のステップ101、102及び103の実行主体は、転送装置であってもよく、例えば、OpenFlowシステムでは、転送装置は、OpenFlowスイッチであってもよい。

0023

理解すべきは、転送装置は、上述のフローテーブルにおける第二フローテーブルエントリーを削除した後に、さらに、上述のコントローラに削除メッセージを送信することができ、これにより、上述のフローテーブルにおける第二フローテーブルエントリーが削除されたということを知らせることができる。

0024

オプションで、本実施例の一例では、ステップ102の後に、転送装置により、上述のフローテーブルに上述の第二フローテーブルエントリーが存在しないと判断すれば、転送装置は、上述のコントローラにエラーメッセージを送信することができ、これにより、上述の第一フローテーブルエントリーを追加するためのアイドルフローテーブルエントリーリソースが上述のフローテーブルに存在しないことを示す(報告する)ことができるので、上述のコントローラにより受信されるエラーメッセージの数を減少させ、上述のコントローラの処理負荷を低減させることができる。

0025

例えば、OpenFlowシステムでは、OpenFlowスイッチは、コントローラにエラーメッセージofp_error_msgを送信し、該ofp_error_msgには、フローテーブル追加失敗類型(OFPET_FLOW_MOD_FAILED)及びフローテーブルフルコード(OFPFMFC_ALL_TABLES_FULL)が運ばれる。

0026

また、フローテーブルがフル(満)になる時刻は、臨界(critical)時刻であり、転送装置は、その受信したフロー(例えば、対応するフローテーブルエントリーがなければ)の最初のパケットをコントローラに送信する。本実施例では、転送装置は、タイムリーに、重要性が比較的高いフローのフローテーブルエントリーをフローテーブルに追加することができるので、該フローのパケット(例えば、後続のパケット)を上述のコントローラに送信する可能性を減少させることができ、これにより、上述のコントローラの処理負荷を更に低減させることができる。

0027

オプションで、本実施例の一例では、上述のフローテーブルに未マッチング(unmatched)エントリー(table-miss)が存在すれば、予め該未マッチングエントリー(table-miss)に最も低い重要性情報が配置されたので、上述の第二重要性情報により示される重要性が、二番目に低い(second lowest)ものであってもよい。

0028

オプションで、本実施例の一例では、上述のフローテーブルに未マッチングエントリー(table-miss)が存在しなければ、上述の第二重要性情報により示される重要性が、最も低いものであってもよい。

0029

本実施例では、コントローラにより送信されている第一フローテーブルエントリーを受信し、そのうち、該第一フローテーブルエントリーは、第一フローの重要性を示すための第一重要性情報を含む。フローテーブルにアイドルフローテーブルエントリーリソースが存在しなければ、該フローテーブルに第二フローテーブルエントリーが存在するかどうかを判断し、そのうち、該第二フローテーブルエントリーは、第二フローの重要性を示すための第二重要性情報を含み、該第二重要性情報により示される重要性は、上述の第一重要性情報により示される重要性よりも低い。上述のフローテーブルに上述の第二フローテーブルエントリーが存在すると判断すれば、上述のフローテーブルにおける上述の第二フローテーブルエントリーを削除し、上述の第一フローテーブルエントリーを上述のフローテーブルに追加し、これにより、添加された上述の第一フローテーブルエントリーに基づいて、受信したパケットに対してタイムリーな処理を行うことができ、重要性が比較的高いフローに対してタイムリーな処理を実現することができるので、フローテーブルエントリーリソースが全て使われていることによって転送装置が新しいフローテーブルエントリーをフローテーブルに追加できないという従来技術における問題を軽減させ、パケット処理の信頼性を向上させることができる。

0030

なお、上述の方法に係る各実施例は、説明を簡潔にするために、一連の動作(ステップ)の組み合わせとして説明されているが、理解すべきは、本発明は、説明されている動作(ステップ)の順序に限定されず、幾つかのステップは、他の順序又は同時に行われてもよいとのことである。また、理解すべきは、明細書に記載されている実施例は、すべて例示的なものであり、その中に含まれている動作(ステップ)及びモジュールは、必ずしも本発明の必須なものではない。

0031

上述では、各実施例についての説明にそれぞれ重点を置いている。ある実施例の詳しく説明されていない部分については、他の実施例の関連する説明を参照することができる。

0032

図2は、本発明の他の実施例によるパケット処理装置の構造図である。図2に示すように、本実施例のパケット処理装置は、受信器21及び処理器22を含んでもよい。受信器21は、コントローラにより送信されている第一フローテーブルエントリーを受信するために用いられ、そのうち、該第一フローテーブルエントリーは、第一フローの重要性を示すための第一重要性情報を含む。処理器22は、フローテーブルにアイドルフローテーブルエントリーリソースが存在しなければ、該フローテーブルに第二フローテーブルエントリーが存在するかどうかを判断するために用いられ、そのうち、該第二フローテーブルエントリーは、第二フローの重要性を示すための第二重要性情報を含み、該第二重要性情報により示される重要性は、上述の第一重要性情報により示される重要性よりも低い。処理器22は、上述のフローテーブルに上述の第二フローテーブルエントリーが存在すると判断すれば、上述のフローテーブルにおける第二フローテーブルエントリーを削除し、上述の第一フローテーブルエントリーを上述のフローテーブルに追加する。

0033

オプションで、本実施例の一例では、上述の重要性情報は、従来技術におけるフローテーブルエントリーのフィールドに運ばれてもよく、或いは、フローテーブルエントリーの新しく追加されたフィールドに運ばれてもよいが、本実施例は、これについて限定しない。具体的には、上述の重要性情報は、次のような情報のうちの少なくとも一つを含んでもよいが、それに限定されない。

0034

フローテーブルエントリーのマッチング優先度情報(例えば、従来技術におけるフローテーブルエントリーに運ばれるPriority):フローテーブルエントリーのマッチング優先度情報により示される優先度が高ければ高いほど、対応するフローの重要性が高く;及び、
フローテーブルエントリーのマッチング回数情報(例えば、従来技術におけるフローテーブルエントリーに運ばれるCounters):フローテーブルエントリーのマッチング回数情報により示される回数が多ければ多いほど、対応するフローの重要性が高い。

0035

オプションで、上述の新しく追加されたフィールドは、統計による「最近もっともアクセスされていない(LRU:Least Recently Used)回数」に基づいて、フローテーブルエントリーの重要性を設置するために用いられてもよく、例えば、フローのLRU回数が多ければ多いほど、フローテーブルエントリーの重要性が高く;或いは、所定期間において、統計によるパケットの数に基づいて、フローテーブルエントリーの重要性を設置するために用いられてもよく、例えば、フローに含まれるパケットの数が多ければ多いほど、フローテーブルエントリーの重要性が高い。なお、本実施例では、これに限定されない。

0036

オプションで、上述の重要性情報は、単独でフローの重要性を示してもよい。

0037

オプションで、上述の重要性情報は、組み合わせることによってフローの重要性を示してもよい。例えば、フローテーブルエントリーのマッチング優先度情報(例えば、従来技術におけるフローテーブルエントリーのPriority)により示される2つのフロー(フロー1及びフロー2)の重要性が等しい時に、フロー1に対応するフローテーブルエントリーにおけるフローテーブルエントリーのマッチング回数情報が、高い(大きい)マッチング回数を示せれば、フロー1の重要性が高く;フロー2に対応するフローテーブルエントリーにおけるフローテーブルエントリーのマッチング回数情報が、高い(大きい)マッチング回数を示せれば、フロー2の重要性が高い。重要性情報を組み合わせてフローの重要性を示す時は、具体的なニーズに応じて重要性の配置(configuration)を行ってもよいが、本発明では、具体的に限定されない。

0038

なお、本実施例のパケット処理装置は、OpenFlowシステムにおいて、OpenFlowスイッチであってもよい。

0039

オプションで、本実施例の一例では、処理器22は、上述のフローテーブルに上述の第二フローテーブルエントリーが存在しないと判断すれば、上述のコントローラにエラーメッセージを送ってもよく、これにより、上述の第一フローテーブルエントリーを追加するためのアイドルフローテーブルエントリーリソースが上述のフローテーブルに存在しないことを示す(報告する)ことができるので、上述のコントローラにより受信されるエラーメッセージの数を減少させ、上述のコントローラの処理負荷を低減させることができる。

0040

例えば、OpenFlowシステムでは、パケット処理装置(即ち、OpenFlowスイッチ)の送信器は、コントローラにエラーメッセージofp_error_msgを送信してもよく、該ofp_error_msgには、フローテーブル追加失敗類型(OFPET_FLOW_MOD_FAILED)及びフローテーブルフルコード(OFPFMFC_ALL_TABLES_FULL)が運ばれる。

0041

また、フローテーブルがフル(満)になる時刻は、臨界(critical)時刻であり、転送装置は、その受信したフロー(例えば、対応するフローテーブルエントリーがなければ)の最初のパケットをコントローラに送信する。本実施例では、転送装置は、タイムリーに、重要性が比較的高いフローのフローテーブルエントリーをフローテーブルに追加することができるので、該フローのパケット(例えば、後続のパケット)を上述のコントローラに送信する可能性を減少させることができ、これにより、上述のコントローラの処理負荷を更に低減させることができる。

0042

オプションで、本実施例の一例では、上述のフローテーブルに未マッチング(unmatched)エントリー(table-miss)が存在すれば、予め該未マッチングエントリー(table-miss)に最も低い重要性情報が配置されたので、上述の第二重要性情報により示される重要性が、二番目に低い(second lowest)ものであってもよい。

0043

オプションで、本実施例の一例では、上述のフローテーブルに未マッチングエントリー(table-miss)が存在しなければ、上述の第二重要性情報により示されている重要性が、最も低いものであってもよい。

0044

本実施例では、受信器は、コントローラにより送信されている第一フローテーブルエントリーを受信し、そのうち、該第一フローテーブルエントリーは、第一フローの重要性を示すための第一重要性情報を含む。処理器は、フローテーブルにアイドルフローテーブルエントリーリソースが存在しなければ、該フローテーブルに第二フローテーブルエントリーが存在するかどうかを判断し、そのうち、該第二フローテーブルエントリーは、第二フローの重要性を示すための第二重要性情報を含み、該第二重要性情報により示される重要性は、上述の第一重要性情報により示される重要性よりも低い。処理器は、上述のフローテーブルに上述の第二フローテーブルエントリーが存在すると判断すれば、上述のフローテーブルにおける上述の第二フローテーブルエントリーを削除し、上述の第一フローテーブルエントリーを上述のフローテーブルに追加し、これにより、添加された上述の第一フローテーブルエントリーに基づいて、受信したパケットに対してタイムリーな処理を行うことができ、重要性が比較的高いフローに対してタイムリーな処理を実現することができるので、フローテーブルエントリーリソースが全て使われていることによって転送装置が新しいフローテーブルエントリーをフローテーブルに追加できないという従来技術における問題を軽減させ、パケット処理の信頼性を向上させることができる。

0045

本発明の他の実施例によれば、制御及び転送が分離した集中型システムに用いるパケット処理システムが提供される。該パケット処理システムは、コントローラ及び上述の図2に対応する実施例により提供されているパケット処理装置を含む。

0046

理解すべきは、説明を簡潔にするために、上述のシステム、装置及びユニットの具体的なワーキングプロセスについて、上述の方法に係る実施例における対応するプロセスを参照することができるので、ここでは、その説明を省略してもよいとのことである。

0047

また、理解すべきは、本明細書に記載の幾つかの実施例において説明されているシステム、装置及び方法は、他の方式で実現され得るとのことである。例えば、上述の装置に係る実施例は、例示的なものだけであり、例えば、上述のユニットの区別は、ロジック機能の区別だけであり、実際に実現する時は、他の区別方法を採用してもよく、例えば、複数のユニット又はアセンブリは、組み合わせることにより他のシステムに応用されてもよく、又は、他のシステムに集積されてもよく、或いは、幾つかの特徴は、省略されてもよく、又は、実行されなくもよい。また、表示されている又は議論されている互いの間のカップリング又は直接的なカップリング又は通信接続は、幾つかのインターフェース、装置又はユニットによる間接的なカップリング又は通信接続であってもよく、電気的な、機械的な又は他の形式であってもよい。

0048

上述の分離した部品として説明されているユニットは、物理的に分離したものであってもよく、そうではなくてもよい。ユニットとして表示されている部品は、物理的なユニットであってもよく、そうではなくてもよく、即ち、一つの箇所に位置してもよく、複数のネットワークユニット分布してもよい。また、実際のニーズに応じて、そのうちの一部又は全部のユニットを選択して、本実施例の技術案の目的を達成することができる。

0049

また、本発明の各実施例における各機能ユニットは、一つの処理ユニットに集積されてもよく、各ユニットとして物理的に単独で存在してもよく、又は、そのうちの複数のユニットが一つのユニットに集積されてもよい。集積されたユニットは、ハードウェアの形で実現されてもよく、ソフトウェアによる機能ユニット(例えば、プログラムによるもの)の形で実現されてもよく、又は、ハードウェア及びソフトウェアによる機能ユニットの形で実現されてもよく。

0050

ソフトウェアによる機能ユニットの形で実現された集積ユニット(例えば、プログラムによるもの)は、コンピュータ可読な記憶媒体に記録されてもよい。該記憶媒体に記録されている該ソフトウェアによる機能ユニットは、複数の指令を含み、コンピュータ装置(例えば、パソコンサーバー、又はネットワーク装置等)又はプロセッサー(processor)に、本発明の各実施例における方法の部分のステップを実行させるために用いられる。また、上述の記憶媒体は、Uディスクポータブルハードディスク、ROM(Read-Only Memory)、RAM(Random Access Memory)、磁気ディスク又は光ディスクなどの各種の、プログラムコードを記録可能な媒体を含む。

0051

以上、本発明の好ましい実施形態を説明したが、本発明はこの実施形態に限定されず、本発明の趣旨を離脱しない限り、本発明に対するあらゆる変更は本発明の技術的範囲に属する。

0052

以上の実施形態に関し、更に、以下の項目を開示する。

0053

(1)制御及び転送が分離した集中型システムに用いるパケット処理方法であって、
コントローラにより送信されている第一フローテーブルエントリーを受信し、そのうち、前記第一フローテーブルエントリーは、第一フローの重要性を示すための第一重要性情報を含み;
フローテーブルにアイドルフローテーブルエントリーリソースが存在しなければ、前記フローテーブルに第二フローテーブルエントリーが存在するかどうかを判断し、前記第二フローテーブルエントリーは、第二フローの重要性を示すための第二重要性情報を含み、前記第二重要性情報により示される重要性は、前記第一重要性情報により示される重要性よりも低く;及び
前記フローテーブルに前記第二フローテーブルエントリーが存在すれば、前記フローテーブルにおける前記第二フローテーブルエントリーを削除し、前記第一フローテーブルエントリーを前記フローテーブルに追加することを含む、方法。

0054

(2)(1)に記載の方法であって、
前記重要性情報は、フローテーブルエントリーのマッチング優先度情報及びフローテーブルエントリーのマッチング回数情報のうちの少なくとも一つを含み、
前記フローテーブルエントリーのマッチング優先度情報により示される優先度が高ければ高いほど、対応するフローの重要性が高く;及び
前記フローテーブルエントリーのマッチング回数情報により示される回数が多ければ多いほど、対応するフローの重要性が高い、方法。

0055

(3)(1)又は(2)に記載の方法であって、
前記フローテーブルに前記第二フローテーブルエントリーが存在しなければ、前記コントローラにエラーメッセージを送信し、前記フローテーブルに、前記第一フローテーブルエントリーを追加するためのアイドルフローテーブルエントリーリソースが存在しないことを示すことを更に含む、方法。

0056

(4)(1)〜(3)のうちの何れか一つに記載の方法であって、
前記フローテーブルに未マッチングエントリーが存在すれば、前記第二重要性情報により示される重要性が2番目に低いものであり;又は
前記フローテーブルに未マッチングエントリーが存在しなければ、前記第二重要性情報により示される重要性が最も低いものである、方法。

0057

(5)(1)〜(4)のうちの何れか一つに記載の方法であって、
前記制御及び転送が分離した集中型システムは、オープンフローシステムを含む、方法。

0058

(6)制御及び転送が分離した集中型システムに用いるパケット処理装置であって、
コントローラにより送信されている第一フローテーブルエントリーを受信するための受信器であって、前記第一フローテーブルエントリーは、第一フローの重要性を示すための第一重要性情報を含む、受信器;及び
フローテーブルにアイドルフローテーブルエントリーリソースが存在しなければ、前記フローテーブルに第二フローテーブルエントリーが存在するかどうかを判断するための処理器であって、前記第二フローテーブルエントリーは、第二フローの重要性を示すための第二重要性情報を含み、前記第二重要性情報により示される重要性は、前記第一重要性情報により示される重要性よりも低く、前記処理器は、前記フローテーブルに前記第二フローテーブルエントリーが存在すれば、前記フローテーブルにおける前記第二フローテーブルエントリーを削除し、前記第一フローテーブルエントリーを前記フローテーブルに追加する、処理器を含む、装置。

0059

(7)(6)に記載の装置であって、
前記重要性情報は、フローテーブルエントリーのマッチング優先度情報及びフローテーブルエントリーのマッチング回数情報のうちの少なくとも一つを含み、
前記フローテーブルエントリーのマッチング優先度情報により示される優先度が高ければ高いほど、対応するフローの重要性が高く;及び
前記フローテーブルエントリーのマッチング回数情報により示される回数が多ければ多いほど、対応するフローの重要性が高い、装置。

0060

(8)(6)又は(7)に記載の装置であって、
前記処理器は、さらに、
前記フローテーブルに前記第二フローテーブルエントリーが存在しなければ、前記コントローラにエラーメッセージを送信し、前記フローテーブルに、前記第一フローテーブルエントリーを追加するためのアイドルフローテーブルエントリーリソースが存在しないことを示すために用いられる、装置。

0061

(9)(6)〜(8)のうちの何れか一つに記載の装置であって、
前記フローテーブルに未マッチングエントリーが存在すれば、前記第二重要性情報により示される重要性が2番目に低いものであり;又は
前記フローテーブルに未マッチングエントリーが存在しなければ、前記第二重要性情報により示される重要性が最も低いものである、装置。

0062

(10)(6)〜(9)のうちの何れか一つに記載の装置であって、
前記制御及び転送が分離した集中型システムは、オープンフローシステムを含む、装置。

0063

(11)制御及び転送が分離した集中型システムに用いるパケット処理システムであって、
コントローラ及び(6)〜(10)のうちの何れか一つに記載のパケット処理装置を含む、システム。

0064

(12)コンピュータに、請求項(1)〜(5)のうちの何れか一つに記載の方法を実行させるためのプログラム。

0065

(13)(12)に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い技術

関連性が強い 技術一覧

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ