JP6055009B2 - パケット処理方法、装置及びシステム - Google Patents

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

Info

Publication number
JP6055009B2
JP6055009B2 JP2015048938A JP2015048938A JP6055009B2 JP 6055009 B2 JP6055009 B2 JP 6055009B2 JP 2015048938 A JP2015048938 A JP 2015048938A JP 2015048938 A JP2015048938 A JP 2015048938A JP 6055009 B2 JP6055009 B2 JP 6055009B2
Authority
JP
Japan
Prior art keywords
flow table
table entry
importance
flow
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2015048938A
Other languages
English (en)
Other versions
JP2015130697A (ja
Inventor
万夫 丁
万夫 丁
恩慧 ▲劉▼
恩慧 ▲劉▼
程勇 林
程勇 林
▲風▼▲凱▼ 李
▲風▼▲凱▼ 李
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=48576727&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JP6055009(B2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of JP2015130697A publication Critical patent/JP2015130697A/ja
Application granted granted Critical
Publication of JP6055009B2 publication Critical patent/JP6055009B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/021Ensuring consistency of routing table updates, e.g. by using epoch numbers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、データ処理技術に関し、特に、パケットを処理する方法、装置及びシステムに関する。
インターネットの発展に伴い、分散型システムがネットワークの拡張性及び管理上のニーズをよりよく満足することができないので、制御及び転送が分離した集中型システムが機運に応じて生まれている。例えば、オープンフロー(OpenFlow)システムは、制御及び転送が分離した集中型システムの一種であり、OpenFlowスイッチ(OpenFlow Switch)は、元々完全にスイッチ/ルーターにより制御されるパケット転送プロセスを、OpenFlowスイッチ及びコントローラ(Controller)により共同に完成されるプロセスに変換し、これにより、データの転送及びルーティング制御の分離を実現することができる。コントローラは、事前に規定されたインターフェース操作(interface operation)により、OpenFlowスイッチにおけるフローテーブルを制御することができ、これにより、データ転送の目的を達成することができる。OpenFlowスイッチは、OpenFlowスイッチに進入したパケットについて、フローテーブルに対してクエリーを行うことにより、該パケットにマッチングするフローテーブルエントリーを得ることができる。そして、該フローテーブルエントリーに従って、該パケットに対して行う必要のある操作を確定することができ、該操作は、例えば、該パケットを、目的ポートに転送し、放棄し、又はコントローラに報告(report)するなどである。フローの最初のパケットについては、OpenFlowスイッチは、マッチングによりフローテーブルエントリーが得られなければ、該パケットをコントローラに報告することができ、コントローラは、該パケットが所属するフローのために、新しいフローテーブルエントリーを生成し、そして、該パケットをOpenFlowスイッチに引き渡し(deliver)、これにより、OpenFlowスイッチは、この新しいフローテーブルエントリーをフローテーブルに追加する。
しかし、フローテーブルエントリーのリソースがすべて使われている時に、OpenFlowスイッチは、新しいフローテーブルエントリーをフローテーブルに追加することができず、これにより、OpenFlowスイッチは、新しいフローに対してタイムリーな処理を行うことができないので、パケット処理は信頼性が低下してしまう。また、制御及び転送が分離した他の集中型システムにも類似する問題が存在する。
本発明の目的は、パケット処理の信頼性を向上させるために、パケットを処理する方法、装置、及びシステムを提供することにある。
本発明の一側面によれば、制御及び転送が分離した集中型システムに用いるパケット処理方法が提供される。該パケット処理方法は、コントローラにより送信されている第一フローテーブルエントリーを受信し、そのうち、前記第一フローテーブルエントリーは第一フローの重要性を示すための第一重要性情報を含み;フローテーブルにアイドル(idle;“空き”)フローテーブルエントリーリソースが存在しなければ、前記フローテーブルに第二フローテーブルエントリーが存在するかどうかを判断し、そのうち、前記第二フローテーブルエントリーは第二フローの重要性を示すための第二重要性情報を含み、前記第二重要性情報により示される重要性は前記第一重要性情報により示される重要性よりも低く;及び、前記フローテーブルに前記第二フローテーブルエントリーが存在すれば、前記フローテーブルにおける前記第二フローテーブルエントリーを削除し、前記第一フローテーブルエントリーを前記フローテーブルに追加することを含む。
本発明の他の側面によれば、制御及び転送が分離した集中型システムに用いるパケット処理装置が提供される。該パケット処理装置は、コントローラにより送信されている第一フローテーブルエントリーを受信するための受信器であって、前記第一フローテーブルエントリーは第一フローの重要性を示すための第一重要性情報を含む、受信器;及び、フローテーブルにアイドルフローテーブルエントリーリソースが存在しなければ、前記フローテーブルに第二フローテーブルエントリーが存在するかどうかを判断するための処理器であって、前記第二フローテーブルエントリーは第二フローの重要性を示すための第二重要性情報を含み、前記第二重要性情報により示される重要性は前記第一重要性情報により示される重要性よりも低く、前記処理器は、前記フローテーブルに前記第二フローテーブルエントリーが存在すれば、前記フローテーブルにおける前記第二フローテーブルエントリーを削除し、前記第一フローテーブルエントリーを前記フローテーブルに追加する、処理器を含む。
本発明の他の側面によれば、制御及び転送が分離した集中型システムに用いるパケット処理システムが提供される。該パケット処理システムは、コントローラ及び上述のようなパケット処理装置を含む。
上述の技術案によれば、本発明の実施例は、追加された前記第一フローテーブルエントリーに従って、受信されたパケットに対してタイムリーな処理を行うことができ、重要性が比較的高いフローに対してのタイムリーな処理を実現することができ、フローテーブルエントリーリソースがすべて使われていることによって転送装置が新しいフローテーブルエントリーをフローテーブルに追加することができないという従来技術における問題を軽減することができるので、パケット処理の信頼性を向上させることができる。
本発明の一実施例によるパケット処理方法のフローチャートである。 本発明の他の実施例によるパケット処理装置の構造図である。
以下、添付した図面を参照しながら本発明の好適な実施形態を詳細に説明する。
なお、本発明の技術案は、制御及び転送が分離した集中型システム、例えば、OpenFlowシステム等に応用することができる。
図1は、本発明の一実施例によるパケット処理方法のフローチャートである。図1に示すように、該パケット処理方法は、次のようなステップを含む。
101:コントローラにより送信されている第一フローテーブルエントリーを受信し、そのうち、該第一フローテーブルエントリーは、第一フローの重要性を示すための第一重要性情報を含む。
102:フローテーブルにアイドルフローテーブルエントリーリソースが存在しなければ、該フローテーブルに第二フローテーブルエントリーが存在するかどうかを判断し、そのうち、該第二フローテーブルエントリーは、第二フローの重要性を示すための第二重要性情報を含み、該第二重要性情報により示される重要性は、上述の第一重要性情報により示される重要性よりも低い。
103:上述のフローテーブルに上述の第二フローテーブルエントリーが存在すると判断すれば、上述のフローテーブルにおける上述の第二フローテーブルエントリーを削除し、上述の第一フローテーブルエントリーを上述のフローテーブルに追加する。
なお、上述のフローテーブルには、アイドルフローテーブルエントリーリソースが存在しない。言い換えると、フローテーブルエントリーリソースは、すべて使われており、即ち、フローテーブルは、フル(満)になっている。
オプションで、本実施例の一例では、上述の重要性情報は、従来技術におけるフローテーブルエントリーのフィールドに運ばれてもよく、又は、フローテーブルエントリーの新しく追加されたフィールドに運ばれてもよいが、本実施例では、これに限定されない。具体的には、上述の重要性情報は、次のような情報のうちの少なくとも一つを含んでもよいが、それに限定されない。
フローテーブルエントリーのマッチング優先度情報(例えば、従来技術におけるフローテーブルエントリーに運ばれるPriority):フローテーブルエントリーのマッチング優先度情報により示される優先度が高ければ高いほど、対応するフローの重要性が高く;及び、
フローテーブルエントリーのマッチング回数情報(例えば、従来技術におけるフローテーブルエントリーに運ばれるCounters):フローテーブルエントリーのマッチング回数情報により示される回数が多ければ多いほど、対応するフローの重要性が高い。
オプションで、上述の新しく追加されたフィールドは、統計による「最近もっともアクセスされていない(LRU:Least Recently Used)回数」に基づいて、フローテーブルエントリーの重要性を設置するために用いられてもよく、例えば、フローのLRU回数が多ければ多いほど、フローテーブルエントリーの重要性が高く;或いは、所定期間において、統計によるパケットの数に基づいて、フローテーブルエントリーの重要性を設置するために用いられてもよく、例えば、フローに含まれるパケットの数が多ければ多いほど、フローテーブルエントリーの重要性が高い。なお、本実施例では、これに限定されない。
オプションで、上述の重要性情報は、単独でフローの重要性を示してもよい。
オプションで、上述の重要性情報は、組み合わせることによってフローの重要性を示してもよい。例えば、フローテーブルエントリーのマッチング優先度情報(例えば、従来技術におけるフローテーブルエントリーのPriority)により示される2つのフロー(フロー1及びフロー2)の重要性が等しい時に、フロー1に対応するフローテーブルエントリーにおけるフローテーブルエントリーのマッチング回数情報が、高い(大きい)マッチング回数を示せれば、フロー1の重要性が高く;フロー2に対応するフローテーブルエントリーにおけるフローテーブルエントリーのマッチング回数情報が、高い(大きい)マッチング回数を示せれば、フロー2の重要性が高い。重要性情報を組み合わせてフローの重要性を示す時は、具体的なニーズに応じて重要性の配置(configuration)を行ってもよいが、本発明では、具体的に限定されない。
なお、上述のステップ101、102及び103の実行主体は、転送装置であってもよく、例えば、OpenFlowシステムでは、転送装置は、OpenFlowスイッチであってもよい。
理解すべきは、転送装置は、上述のフローテーブルにおける第二フローテーブルエントリーを削除した後に、さらに、上述のコントローラに削除メッセージを送信することができ、これにより、上述のフローテーブルにおける第二フローテーブルエントリーが削除されたということを知らせることができる。
オプションで、本実施例の一例では、ステップ102の後に、転送装置により、上述のフローテーブルに上述の第二フローテーブルエントリーが存在しないと判断すれば、転送装置は、上述のコントローラにエラーメッセージを送信することができ、これにより、上述の第一フローテーブルエントリーを追加するためのアイドルフローテーブルエントリーリソースが上述のフローテーブルに存在しないことを示す(報告する)ことができるので、上述のコントローラにより受信されるエラーメッセージの数を減少させ、上述のコントローラの処理負荷を低減させることができる。
例えば、OpenFlowシステムでは、OpenFlowスイッチは、コントローラにエラーメッセージofp_error_msgを送信し、該ofp_error_msgには、フローテーブル追加失敗類型(OFPET_FLOW_MOD_FAILED)及びフローテーブルフルコード(OFPFMFC_ALL_TABLES_FULL)が運ばれる。
また、フローテーブルがフル(満)になる時刻は、臨界(critical)時刻であり、転送装置は、その受信したフロー(例えば、対応するフローテーブルエントリーがなければ)の最初のパケットをコントローラに送信する。本実施例では、転送装置は、タイムリーに、重要性が比較的高いフローのフローテーブルエントリーをフローテーブルに追加することができるので、該フローのパケット(例えば、後続のパケット)を上述のコントローラに送信する可能性を減少させることができ、これにより、上述のコントローラの処理負荷を更に低減させることができる。
オプションで、本実施例の一例では、上述のフローテーブルに未マッチング(unmatched)エントリー(table-miss)が存在すれば、予め該未マッチングエントリー(table-miss)に最も低い重要性情報が配置されたので、上述の第二重要性情報により示される重要性が、二番目に低い(second lowest)ものであってもよい。
オプションで、本実施例の一例では、上述のフローテーブルに未マッチングエントリー(table-miss)が存在しなければ、上述の第二重要性情報により示される重要性が、最も低いものであってもよい。
本実施例では、コントローラにより送信されている第一フローテーブルエントリーを受信し、そのうち、該第一フローテーブルエントリーは、第一フローの重要性を示すための第一重要性情報を含む。フローテーブルにアイドルフローテーブルエントリーリソースが存在しなければ、該フローテーブルに第二フローテーブルエントリーが存在するかどうかを判断し、そのうち、該第二フローテーブルエントリーは、第二フローの重要性を示すための第二重要性情報を含み、該第二重要性情報により示される重要性は、上述の第一重要性情報により示される重要性よりも低い。上述のフローテーブルに上述の第二フローテーブルエントリーが存在すると判断すれば、上述のフローテーブルにおける上述の第二フローテーブルエントリーを削除し、上述の第一フローテーブルエントリーを上述のフローテーブルに追加し、これにより、添加された上述の第一フローテーブルエントリーに基づいて、受信したパケットに対してタイムリーな処理を行うことができ、重要性が比較的高いフローに対してタイムリーな処理を実現することができるので、フローテーブルエントリーリソースが全て使われていることによって転送装置が新しいフローテーブルエントリーをフローテーブルに追加できないという従来技術における問題を軽減させ、パケット処理の信頼性を向上させることができる。
なお、上述の方法に係る各実施例は、説明を簡潔にするために、一連の動作(ステップ)の組み合わせとして説明されているが、理解すべきは、本発明は、説明されている動作(ステップ)の順序に限定されず、幾つかのステップは、他の順序又は同時に行われてもよいとのことである。また、理解すべきは、明細書に記載されている実施例は、すべて例示的なものであり、その中に含まれている動作(ステップ)及びモジュールは、必ずしも本発明の必須なものではない。
上述では、各実施例についての説明にそれぞれ重点を置いている。ある実施例の詳しく説明されていない部分については、他の実施例の関連する説明を参照することができる。
図2は、本発明の他の実施例によるパケット処理装置の構造図である。図2に示すように、本実施例のパケット処理装置は、受信器21及び処理器22を含んでもよい。受信器21は、コントローラにより送信されている第一フローテーブルエントリーを受信するために用いられ、そのうち、該第一フローテーブルエントリーは、第一フローの重要性を示すための第一重要性情報を含む。処理器22は、フローテーブルにアイドルフローテーブルエントリーリソースが存在しなければ、該フローテーブルに第二フローテーブルエントリーが存在するかどうかを判断するために用いられ、そのうち、該第二フローテーブルエントリーは、第二フローの重要性を示すための第二重要性情報を含み、該第二重要性情報により示される重要性は、上述の第一重要性情報により示される重要性よりも低い。処理器22は、上述のフローテーブルに上述の第二フローテーブルエントリーが存在すると判断すれば、上述のフローテーブルにおける第二フローテーブルエントリーを削除し、上述の第一フローテーブルエントリーを上述のフローテーブルに追加する。
オプションで、本実施例の一例では、上述の重要性情報は、従来技術におけるフローテーブルエントリーのフィールドに運ばれてもよく、或いは、フローテーブルエントリーの新しく追加されたフィールドに運ばれてもよいが、本実施例は、これについて限定しない。具体的には、上述の重要性情報は、次のような情報のうちの少なくとも一つを含んでもよいが、それに限定されない。
フローテーブルエントリーのマッチング優先度情報(例えば、従来技術におけるフローテーブルエントリーに運ばれるPriority):フローテーブルエントリーのマッチング優先度情報により示される優先度が高ければ高いほど、対応するフローの重要性が高く;及び、
フローテーブルエントリーのマッチング回数情報(例えば、従来技術におけるフローテーブルエントリーに運ばれるCounters):フローテーブルエントリーのマッチング回数情報により示される回数が多ければ多いほど、対応するフローの重要性が高い。
オプションで、上述の新しく追加されたフィールドは、統計による「最近もっともアクセスされていない(LRU:Least Recently Used)回数」に基づいて、フローテーブルエントリーの重要性を設置するために用いられてもよく、例えば、フローのLRU回数が多ければ多いほど、フローテーブルエントリーの重要性が高く;或いは、所定期間において、統計によるパケットの数に基づいて、フローテーブルエントリーの重要性を設置するために用いられてもよく、例えば、フローに含まれるパケットの数が多ければ多いほど、フローテーブルエントリーの重要性が高い。なお、本実施例では、これに限定されない。
オプションで、上述の重要性情報は、単独でフローの重要性を示してもよい。
オプションで、上述の重要性情報は、組み合わせることによってフローの重要性を示してもよい。例えば、フローテーブルエントリーのマッチング優先度情報(例えば、従来技術におけるフローテーブルエントリーのPriority)により示される2つのフロー(フロー1及びフロー2)の重要性が等しい時に、フロー1に対応するフローテーブルエントリーにおけるフローテーブルエントリーのマッチング回数情報が、高い(大きい)マッチング回数を示せれば、フロー1の重要性が高く;フロー2に対応するフローテーブルエントリーにおけるフローテーブルエントリーのマッチング回数情報が、高い(大きい)マッチング回数を示せれば、フロー2の重要性が高い。重要性情報を組み合わせてフローの重要性を示す時は、具体的なニーズに応じて重要性の配置(configuration)を行ってもよいが、本発明では、具体的に限定されない。
なお、本実施例のパケット処理装置は、OpenFlowシステムにおいて、OpenFlowスイッチであってもよい。
オプションで、本実施例の一例では、処理器22は、上述のフローテーブルに上述の第二フローテーブルエントリーが存在しないと判断すれば、上述のコントローラにエラーメッセージを送ってもよく、これにより、上述の第一フローテーブルエントリーを追加するためのアイドルフローテーブルエントリーリソースが上述のフローテーブルに存在しないことを示す(報告する)ことができるので、上述のコントローラにより受信されるエラーメッセージの数を減少させ、上述のコントローラの処理負荷を低減させることができる。
例えば、OpenFlowシステムでは、パケット処理装置(即ち、OpenFlowスイッチ)の送信器は、コントローラにエラーメッセージofp_error_msgを送信してもよく、該ofp_error_msgには、フローテーブル追加失敗類型(OFPET_FLOW_MOD_FAILED)及びフローテーブルフルコード(OFPFMFC_ALL_TABLES_FULL)が運ばれる。
また、フローテーブルがフル(満)になる時刻は、臨界(critical)時刻であり、転送装置は、その受信したフロー(例えば、対応するフローテーブルエントリーがなければ)の最初のパケットをコントローラに送信する。本実施例では、転送装置は、タイムリーに、重要性が比較的高いフローのフローテーブルエントリーをフローテーブルに追加することができるので、該フローのパケット(例えば、後続のパケット)を上述のコントローラに送信する可能性を減少させることができ、これにより、上述のコントローラの処理負荷を更に低減させることができる。
オプションで、本実施例の一例では、上述のフローテーブルに未マッチング(unmatched)エントリー(table-miss)が存在すれば、予め該未マッチングエントリー(table-miss)に最も低い重要性情報が配置されたので、上述の第二重要性情報により示される重要性が、二番目に低い(second lowest)ものであってもよい。
オプションで、本実施例の一例では、上述のフローテーブルに未マッチングエントリー(table-miss)が存在しなければ、上述の第二重要性情報により示されている重要性が、最も低いものであってもよい。
本実施例では、受信器は、コントローラにより送信されている第一フローテーブルエントリーを受信し、そのうち、該第一フローテーブルエントリーは、第一フローの重要性を示すための第一重要性情報を含む。処理器は、フローテーブルにアイドルフローテーブルエントリーリソースが存在しなければ、該フローテーブルに第二フローテーブルエントリーが存在するかどうかを判断し、そのうち、該第二フローテーブルエントリーは、第二フローの重要性を示すための第二重要性情報を含み、該第二重要性情報により示される重要性は、上述の第一重要性情報により示される重要性よりも低い。処理器は、上述のフローテーブルに上述の第二フローテーブルエントリーが存在すると判断すれば、上述のフローテーブルにおける上述の第二フローテーブルエントリーを削除し、上述の第一フローテーブルエントリーを上述のフローテーブルに追加し、これにより、添加された上述の第一フローテーブルエントリーに基づいて、受信したパケットに対してタイムリーな処理を行うことができ、重要性が比較的高いフローに対してタイムリーな処理を実現することができるので、フローテーブルエントリーリソースが全て使われていることによって転送装置が新しいフローテーブルエントリーをフローテーブルに追加できないという従来技術における問題を軽減させ、パケット処理の信頼性を向上させることができる。
本発明の他の実施例によれば、制御及び転送が分離した集中型システムに用いるパケット処理システムが提供される。該パケット処理システムは、コントローラ及び上述の図2に対応する実施例により提供されているパケット処理装置を含む。
理解すべきは、説明を簡潔にするために、上述のシステム、装置及びユニットの具体的なワーキングプロセスについて、上述の方法に係る実施例における対応するプロセスを参照することができるので、ここでは、その説明を省略してもよいとのことである。
また、理解すべきは、本明細書に記載の幾つかの実施例において説明されているシステム、装置及び方法は、他の方式で実現され得るとのことである。例えば、上述の装置に係る実施例は、例示的なものだけであり、例えば、上述のユニットの区別は、ロジック機能の区別だけであり、実際に実現する時は、他の区別方法を採用してもよく、例えば、複数のユニット又はアセンブリは、組み合わせることにより他のシステムに応用されてもよく、又は、他のシステムに集積されてもよく、或いは、幾つかの特徴は、省略されてもよく、又は、実行されなくもよい。また、表示されている又は議論されている互いの間のカップリング又は直接的なカップリング又は通信接続は、幾つかのインターフェース、装置又はユニットによる間接的なカップリング又は通信接続であってもよく、電気的な、機械的な又は他の形式であってもよい。
上述の分離した部品として説明されているユニットは、物理的に分離したものであってもよく、そうではなくてもよい。ユニットとして表示されている部品は、物理的なユニットであってもよく、そうではなくてもよく、即ち、一つの箇所に位置してもよく、複数のネットワークユニットに分布してもよい。また、実際のニーズに応じて、そのうちの一部又は全部のユニットを選択して、本実施例の技術案の目的を達成することができる。
また、本発明の各実施例における各機能ユニットは、一つの処理ユニットに集積されてもよく、各ユニットとして物理的に単独で存在してもよく、又は、そのうちの複数のユニットが一つのユニットに集積されてもよい。集積されたユニットは、ハードウェアの形で実現されてもよく、ソフトウェアによる機能ユニット(例えば、プログラムによるもの)の形で実現されてもよく、又は、ハードウェア及びソフトウェアによる機能ユニットの形で実現されてもよく。
ソフトウェアによる機能ユニットの形で実現された集積ユニット(例えば、プログラムによるもの)は、コンピュータ可読な記憶媒体に記録されてもよい。該記憶媒体に記録されている該ソフトウェアによる機能ユニットは、複数の指令を含み、コンピュータ装置(例えば、パソコン、サーバー、又はネットワーク装置等)又はプロセッサー(processor)に、本発明の各実施例における方法の部分のステップを実行させるために用いられる。また、上述の記憶媒体は、Uディスク、ポータブルハードディスク、ROM(Read-Only Memory)、RAM(Random Access Memory)、磁気ディスク又は光ディスクなどの各種の、プログラムコードを記録可能な媒体を含む。
以上、本発明の好ましい実施形態を説明したが、本発明はこの実施形態に限定されず、本発明の趣旨を離脱しない限り、本発明に対するあらゆる変更は本発明の技術的範囲に属する。
以上の実施形態に関し、更に、以下の項目を開示する。
(1)制御及び転送が分離した集中型システムに用いるパケット処理方法であって、
コントローラにより送信されている第一フローテーブルエントリーを受信し、そのうち、前記第一フローテーブルエントリーは、第一フローの重要性を示すための第一重要性情報を含み;
フローテーブルにアイドルフローテーブルエントリーリソースが存在しなければ、前記フローテーブルに第二フローテーブルエントリーが存在するかどうかを判断し、前記第二フローテーブルエントリーは、第二フローの重要性を示すための第二重要性情報を含み、前記第二重要性情報により示される重要性は、前記第一重要性情報により示される重要性よりも低く;及び
前記フローテーブルに前記第二フローテーブルエントリーが存在すれば、前記フローテーブルにおける前記第二フローテーブルエントリーを削除し、前記第一フローテーブルエントリーを前記フローテーブルに追加することを含む、方法。
(2)(1)に記載の方法であって、
前記重要性情報は、フローテーブルエントリーのマッチング優先度情報及びフローテーブルエントリーのマッチング回数情報のうちの少なくとも一つを含み、
前記フローテーブルエントリーのマッチング優先度情報により示される優先度が高ければ高いほど、対応するフローの重要性が高く;及び
前記フローテーブルエントリーのマッチング回数情報により示される回数が多ければ多いほど、対応するフローの重要性が高い、方法。
(3)(1)又は(2)に記載の方法であって、
前記フローテーブルに前記第二フローテーブルエントリーが存在しなければ、前記コントローラにエラーメッセージを送信し、前記フローテーブルに、前記第一フローテーブルエントリーを追加するためのアイドルフローテーブルエントリーリソースが存在しないことを示すことを更に含む、方法。
(4)(1)〜(3)のうちの何れか一つに記載の方法であって、
前記フローテーブルに未マッチングエントリーが存在すれば、前記第二重要性情報により示される重要性が2番目に低いものであり;又は
前記フローテーブルに未マッチングエントリーが存在しなければ、前記第二重要性情報により示される重要性が最も低いものである、方法。
(5)(1)〜(4)のうちの何れか一つに記載の方法であって、
前記制御及び転送が分離した集中型システムは、オープンフローシステムを含む、方法。
(6)制御及び転送が分離した集中型システムに用いるパケット処理装置であって、
コントローラにより送信されている第一フローテーブルエントリーを受信するための受信器であって、前記第一フローテーブルエントリーは、第一フローの重要性を示すための第一重要性情報を含む、受信器;及び
フローテーブルにアイドルフローテーブルエントリーリソースが存在しなければ、前記フローテーブルに第二フローテーブルエントリーが存在するかどうかを判断するための処理器であって、前記第二フローテーブルエントリーは、第二フローの重要性を示すための第二重要性情報を含み、前記第二重要性情報により示される重要性は、前記第一重要性情報により示される重要性よりも低く、前記処理器は、前記フローテーブルに前記第二フローテーブルエントリーが存在すれば、前記フローテーブルにおける前記第二フローテーブルエントリーを削除し、前記第一フローテーブルエントリーを前記フローテーブルに追加する、処理器を含む、装置。
(7)(6)に記載の装置であって、
前記重要性情報は、フローテーブルエントリーのマッチング優先度情報及びフローテーブルエントリーのマッチング回数情報のうちの少なくとも一つを含み、
前記フローテーブルエントリーのマッチング優先度情報により示される優先度が高ければ高いほど、対応するフローの重要性が高く;及び
前記フローテーブルエントリーのマッチング回数情報により示される回数が多ければ多いほど、対応するフローの重要性が高い、装置。
(8)(6)又は(7)に記載の装置であって、
前記処理器は、さらに、
前記フローテーブルに前記第二フローテーブルエントリーが存在しなければ、前記コントローラにエラーメッセージを送信し、前記フローテーブルに、前記第一フローテーブルエントリーを追加するためのアイドルフローテーブルエントリーリソースが存在しないことを示すために用いられる、装置。
(9)(6)〜(8)のうちの何れか一つに記載の装置であって、
前記フローテーブルに未マッチングエントリーが存在すれば、前記第二重要性情報により示される重要性が2番目に低いものであり;又は
前記フローテーブルに未マッチングエントリーが存在しなければ、前記第二重要性情報により示される重要性が最も低いものである、装置。
(10)(6)〜(9)のうちの何れか一つに記載の装置であって、
前記制御及び転送が分離した集中型システムは、オープンフローシステムを含む、装置。
(11)制御及び転送が分離した集中型システムに用いるパケット処理システムであって、
コントローラ及び(6)〜(10)のうちの何れか一つに記載のパケット処理装置を含む、システム。
(12)コンピュータに、請求項(1)〜(5)のうちの何れか一つに記載の方法を実行させるためのプログラム。
(13)(12)に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。

Claims (19)

  1. 制御及び転送が分離した集中型システムに用いるパケット処理方法であって、
    パケット処理装置により、コントローラにより送信されている第一フローテーブルエントリーを受信し、前記第一フローテーブルエントリーは、第一フローテーブルエントリーの重要性を示すために用いられる第一重要性情報を含み;
    フローテーブルにアイドルフローテーブルエントリーリソースが存在しなければ、前記パケット処理装置により、前記フローテーブルに第二フローテーブルエントリーが存在するかどうかを判断し、前記第二フローテーブルエントリーは、第二フローテーブルエントリーの重要性を示すために用いられる第二重要性情報を含み、前記第二重要性情報により示される重要性は、前記第一重要性情報により示される重要性よりも低く;及び
    前記フローテーブルに前記第二フローテーブルエントリーが存在すれば、前記パケット処理装置により、前記フローテーブルにおける前記第二フローテーブルエントリーを削除し、前記パケット処理装置により、前記第一フローテーブルエントリーを前記フローテーブルに追加することを含む、方法。
  2. 請求項1に記載の方法であって、
    前記第一フローテーブルエントリーは、フローテーブルエントリーのマッチング優先度情報を含み、前記第一フローテーブルエントリーは、前記第一重要性情報を運ぶために用いられる新しく追加されたフィールドを更に含む、方法。
  3. 請求項1に記載の方法であって、
    前記第一及び第二重要性情報は、フローテーブルエントリーのマッチング優先度情報及びフローテーブルエントリーのマッチング回数情報のうちの少なくとも一つをそれぞれ含み、
    前記フローテーブルエントリーのマッチング優先度情報により示される優先度が高ければ高いほど、対応するフローの重要性が高く;及び
    前記フローテーブルエントリーのマッチング回数情報により示される回数が多ければ多いほど、対応するフローの重要性が高い、方法。
  4. 請求項1〜3のうち何れか一つに記載の方法であって、
    前記フローテーブルに前記第二フローテーブルエントリーが存在しなければ、前記コントローラにエラーメッセージを送信し、前記フローテーブルに、前記第一フローテーブルエントリーを追加するためのアイドルフローテーブルエントリーリソースが存在しないことを示すことを更に含む、方法。
  5. 請求項1〜4のうちの何れか一つに記載の方法であって、
    前記制御及び転送が分離した集中型システムは、オープンフローシステムを含む、方法。
  6. 制御及び転送が分離した集中型システムに用いるパケット処理装置であって、
    コントローラにより送信されている第一フローテーブルエントリーを受信するように構成された受信器であって、前記第一フローテーブルエントリーは、第一フローテーブルエントリーの重要性を示すために用いられる第一重要性情報を含む、受信器;及び
    フローテーブルにアイドルフローテーブルエントリーリソースが存在しなければ、前記フローテーブルに第二フローテーブルエントリーが存在するかどうかを判断するように構成された処理器であって、前記第二フローテーブルエントリーは、第二フローテーブルエントリーの重要性を示すために用いられる第二重要性情報を含み、前記第二重要性情報により示される重要性は、前記第一重要性情報により示される重要性よりも低く、前記処理器は、前記フローテーブルに前記第二フローテーブルエントリーが存在すれば、前記フローテーブルにおける前記第二フローテーブルエントリーを削除し、前記第一フローテーブルエントリーを前記フローテーブルに追加する、処理器を含む、装置。
  7. 請求項6に記載の装置であって、
    前記第一フローテーブルエントリーは、フローテーブルエントリーのマッチング優先度情報を含み、前記第一フローテーブルエントリーは、前記第一重要性情報を運ぶために用いられる新しく追加されたフィールドを更に含む、装置。
  8. 請求項6又は7に記載の装置であって、
    前記第一及び第二重要性情報は、フローテーブルエントリーのマッチング優先度情報及びフローテーブルエントリーのマッチング回数情報のうちの少なくとも一つをそれぞれ含み、
    前記フローテーブルエントリーのマッチング優先度情報により示される優先度が高ければ高いほど、対応するフローの重要性が高く;及び
    前記フローテーブルエントリーのマッチング回数情報により示される回数が多ければ多いほど、対応するフローの重要性が高い、装置。
  9. 請求項6〜8のうち何れか一つに記載の装置であって、
    前記処理器は、さらに、
    前記フローテーブルに前記第二フローテーブルエントリーが存在しなければ、前記コントローラにエラーメッセージを送信し、前記フローテーブルに、前記第一フローテーブルエントリーを追加するためのアイドルフローテーブルエントリーリソースが存在しないことを示すように構成される、装置。
  10. 請求項6〜9のうちの何れか一つに記載の装置であって、
    前記制御及び転送が分離した集中型システムは、オープンフローシステムを含む、装置。
  11. フローテーブルエントリー送信方法であって、
    コントローラにより、第一フローテーブルエントリーをネットワーク装置に送信し、前記第一フローテーブルエントリーは、第一フローテーブルエントリーの重要性を示すために用いられる第一重要性情報を含み、前記第一重要性情報は、フローテーブルにおける第二フローテーブルエントリーの第二重要性情報及び前記第一フローテーブルエントリーの前記第一重要性情報に従って、前記ネットワーク装置のフローテーブルにアイドルフローテーブルエントリーリソースが存在しない場合、前記第一フローテーブルエントリーを前記フローテーブルに追加するかどうかを判断するために、前記ネットワーク装置により用いられ;
    前記コントローラにより、前記第一フローテーブルエントリーを生成し、前記第一フローテーブルエントリーは、優先度情報を運ぶフィールドと、前記第一重要性情報を運ぶ新しく追加されたフィールドとを含む、方法。
  12. 請求項11に記載の方法であって、
    前記コントローラにより、前記ネットワーク装置の前記フローテーブルに前記第二フローテーブルエントリーが存在しなければ、前記第一フローテーブルエントリーを追加するためのアイドルフローテーブルエントリーリソースが存在しないことを示すために用いられるエラーメッセージを受信することを更に含む、方法。
  13. コントローラであって、
    第一フローテーブルエントリーをネットワーク装置に送信するように構成された送信器であって、前記第一フローテーブルエントリーは、第一フローテーブルエントリーの重要性を示すために用いられる第一重要性情報を含み、前記第一重要性情報は、フローテーブルにおける第二フローテーブルエントリーの第二重要性情報及び前記第一フローテーブルエントリーの前記第一重要性情報に従って、前記ネットワーク装置のフローテーブルにアイドルフローテーブルエントリーリソースが存在しない場合、前記第一フローテーブルエントリーを前記フローテーブルに追加するかどうかを判断するために、前記ネットワーク装置により用いられる、送信器;
    前記第一フローテーブルエントリーを生成するように構成された処理器であって、前記第一フローテーブルエントリーは、優先度情報を運ぶフィールドと、前記第一重要性情報を運ぶ新しく追加されたフィールドとを含む、コントローラ。
  14. 請求項13に記載のコントローラであって、
    前記ネットワーク装置の前記フローテーブルに前記第二フローテーブルエントリーが存在しなければ、前記第一フローテーブルエントリーを追加するためのアイドルフローテーブルエントリーリソースが存在しないことを示すために用いられるエラーメッセージを受信するように構成された受信器を更に含む、コントローラ。
  15. 請求項13又は14に記載のコントローラ及び請求項6〜10のうちの何れか一つに記載のパケット処理装置を含む、パケット処理システム。
  16. コンピュータに、請求項1〜5のうちの何れか一つに記載の方法を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
  17. コンピュータに、請求項1〜5のうちの何れか一つに記載の方法を実行させるためのプログラム。
  18. コンピュータに、請求項11又は12に記載の方法を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
  19. コンピュータに、請求項11又は12に記載の方法を実行させるためのプログラム。
JP2015048938A 2012-05-21 2015-03-12 パケット処理方法、装置及びシステム Active JP6055009B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201210157767.6A CN103220225B (zh) 2012-05-21 2012-05-21 报文处理方法及设备、系统
CN201210157767.6 2012-05-21

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2013105078A Division JP5715185B2 (ja) 2012-05-21 2013-05-17 パケット処理方法、装置及びシステム

Publications (2)

Publication Number Publication Date
JP2015130697A JP2015130697A (ja) 2015-07-16
JP6055009B2 true JP6055009B2 (ja) 2016-12-27

Family

ID=48576727

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2013105078A Active JP5715185B2 (ja) 2012-05-21 2013-05-17 パケット処理方法、装置及びシステム
JP2015048938A Active JP6055009B2 (ja) 2012-05-21 2015-03-12 パケット処理方法、装置及びシステム

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2013105078A Active JP5715185B2 (ja) 2012-05-21 2013-05-17 パケット処理方法、装置及びシステム

Country Status (5)

Country Link
US (2) US9385948B2 (ja)
EP (2) EP3101850B1 (ja)
JP (2) JP5715185B2 (ja)
CN (1) CN103220225B (ja)
ES (1) ES2594010T3 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103929334B (zh) * 2013-01-11 2018-02-23 华为技术有限公司 网络异常通知方法和装置
CN104954258B (zh) * 2014-03-26 2019-03-01 中兴通讯股份有限公司 数据报文处理方法、装置及开放流交换机
CN105450525B (zh) 2014-05-28 2018-05-01 国际商业机器公司 用于路由交换设备使用的方法和设备
CN104113482B (zh) * 2014-07-23 2017-11-24 华为技术有限公司 流表更新的方法、装置和系统
WO2016023148A1 (zh) * 2014-08-11 2016-02-18 华为技术有限公司 报文的控制方法、交换机及控制器
CN104219150B (zh) * 2014-09-03 2018-03-16 新华三技术有限公司 流表下发方法及装置
US9692684B2 (en) * 2014-09-05 2017-06-27 Telefonaktiebolaget L M Ericsson (Publ) Forwarding table precedence in SDN
CN105812266B (zh) * 2014-12-31 2018-10-23 北京东土科技股份有限公司 一种请求报文的硬件配置处理方法及装置
WO2017018989A1 (en) * 2015-07-24 2017-02-02 Hewlett Packard Enterprise Development Lp Simultaneous processing of flow tables
CN105539196B (zh) * 2015-12-08 2017-10-10 北京理工大学 电动汽车的反馈式变优先级组合传输网络化控制装置
CN105522935B (zh) * 2015-12-14 2017-12-05 北京理工大学 电动汽车的应用驱动式动态切换网络化控制装置
CN105599637B (zh) * 2015-12-21 2017-11-14 北京理工大学 电动汽车的分层式动态调节网络化控制装置
CN107204924B (zh) * 2016-03-18 2020-09-25 华为技术有限公司 链路发现方法及装置
US10958489B2 (en) * 2017-03-21 2021-03-23 Samsung Electronics Co., Ltd. Method and apparatus for wireless communication using modulation, coding schemes, and channel quality indicators
CN107920024B (zh) * 2017-10-11 2020-08-14 中国电子科技集团公司第三十研究所 一种sdn控制器动态流表管理方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4392294B2 (ja) 2004-06-15 2009-12-24 株式会社日立製作所 通信統計収集装置
JP4526458B2 (ja) 2005-07-29 2010-08-18 富士通株式会社 パケット処理装置及びパケット処理プログラム
JP4137948B2 (ja) 2006-02-14 2008-08-20 日本電信電話株式会社 パケット通過制御装置及びパケット通過制御方法
US7817549B1 (en) * 2006-06-30 2010-10-19 Extreme Networks, Inc. Flexible flow-aging mechanism
JP4729506B2 (ja) 2007-01-15 2011-07-20 三菱電機株式会社 分散型データ処理装置
CN100563173C (zh) * 2007-01-26 2009-11-25 华为技术有限公司 老化原始流的方法及装置、网流输出器和网流系统
US8072894B2 (en) 2007-11-07 2011-12-06 Juniper Networks, Inc. Systems and methods for flow monitoring
JP5408243B2 (ja) 2009-03-09 2014-02-05 日本電気株式会社 OpenFlow通信システムおよびOpenFlow通信方法
JP5621781B2 (ja) * 2009-10-06 2014-11-12 日本電気株式会社 ネットワークシステムとコントローラと方法とプログラム
CN101789905A (zh) * 2010-02-05 2010-07-28 杭州华三通信技术有限公司 防止未知组播攻击cpu的方法和设备
WO2011102312A1 (ja) 2010-02-16 2011-08-25 日本電気株式会社 パケット転送装置、通信システム、処理規則の更新方法およびプログラム
US20120099591A1 (en) 2010-10-26 2012-04-26 Dell Products, Lp System and Method for Scalable Flow Aware Network Architecture for Openflow Based Network Virtualization
EP2689562B1 (en) * 2011-03-24 2017-05-03 Nec Corporation Method for operating a flow-based switching system and switching system
JP5433627B2 (ja) 2011-05-09 2014-03-05 アラクサラネットワークス株式会社 スイッチング装置およびスイッチング装置のエージング方法
CN102263664A (zh) * 2011-08-11 2011-11-30 北京星网锐捷网络技术有限公司 一种会话流处理方法及装置
US8718064B2 (en) * 2011-12-22 2014-05-06 Telefonaktiebolaget L M Ericsson (Publ) Forwarding element for flexible and extensible flow processing software-defined networks
JP2013168817A (ja) 2012-02-15 2013-08-29 Nippon Telegr & Teleph Corp <Ntt> トラヒック制御・情報収集装置及び方法及びプログラム

Also Published As

Publication number Publication date
US20130308651A1 (en) 2013-11-21
US9742667B2 (en) 2017-08-22
CN103220225A (zh) 2013-07-24
US20160285754A1 (en) 2016-09-29
JP2015130697A (ja) 2015-07-16
JP2013243670A (ja) 2013-12-05
EP2667553B1 (en) 2016-07-13
EP3101850A1 (en) 2016-12-07
EP3101850B1 (en) 2019-02-27
JP5715185B2 (ja) 2015-05-07
CN103220225B (zh) 2015-07-08
ES2594010T3 (es) 2016-12-15
US9385948B2 (en) 2016-07-05
EP2667553A1 (en) 2013-11-27

Similar Documents

Publication Publication Date Title
JP6055009B2 (ja) パケット処理方法、装置及びシステム
US10305783B2 (en) Packet control method, switch, and controller
JP6490205B2 (ja) フローエントリ構成の方法、装置及びシステム
US9479323B2 (en) Communication system, forwarding node, control device, communication control method, and program
CN102197627B (zh) 组播流量收敛的改善
US9401772B2 (en) Communication system, control device, forwarding node, communication control method, and program
JP2017500819A (ja) 協働するネットワークコントローラに基づくマルチドメイン送信元ルート選択転送
EP3179687B1 (en) Network flow information statistics method and apparatus
US10652145B2 (en) Managing data frames in switched networks
US20200044963A1 (en) Centralized label-based software defined network
JP6119562B2 (ja) ネットワークシステムおよびネットワーク中継装置
US8717909B1 (en) Methods and apparatus for route installation acknowledgement and acknowledgement aggregation in BGP
CN104869064A (zh) 一种流表更新方法及装置
CN110036610B (zh) 一种软件定义网络中路由管理的方法和交换机
CN105610614A (zh) 高可用访问系统以及高可用故障切换方法
CN109412942B (zh) 云网传输路由方法和系统
WO2017071430A1 (zh) 处理报文的方法、网卡及系统、更新信息的方法及主机
US10666553B2 (en) Method for quick reconfiguration of routing in the event of a fault in a port of a switch
CN110932975B (zh) 流表下发方法、数据转发方法、装置及电子设备
CN105765903A (zh) 一种拓扑发现方法及设备
WO2014040409A1 (zh) 路由管理的方法和节点
CN105490943A (zh) 一种流表项的处理方法、控制器和交换机
KR20130082735A (ko) 가상화를 이용한 컨텐츠 서비스 제공 방법 및 시스템
JP2009284278A (ja) ルート集約装置、及び集約処理方法
EP3211842A1 (en) Method and device for implementing routing

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160219

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160301

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20160524

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160830

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160915

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20161101

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161201

R150 Certificate of patent or registration of utility model

Ref document number: 6055009

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R157 Certificate of patent or utility model (correction)

Free format text: JAPANESE INTERMEDIATE CODE: R157

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250