[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP5725236B2 - 通信システム、ノード、パケット転送方法およびプログラム - Google Patents

通信システム、ノード、パケット転送方法およびプログラム Download PDF

Info

Publication number
JP5725236B2
JP5725236B2 JP2014091784A JP2014091784A JP5725236B2 JP 5725236 B2 JP5725236 B2 JP 5725236B2 JP 2014091784 A JP2014091784 A JP 2014091784A JP 2014091784 A JP2014091784 A JP 2014091784A JP 5725236 B2 JP5725236 B2 JP 5725236B2
Authority
JP
Japan
Prior art keywords
address
processing rule
packet
layer
destination
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.)
Expired - Fee Related
Application number
JP2014091784A
Other languages
English (en)
Other versions
JP2014161098A (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.)
NEC Corp
Original Assignee
NEC Corp
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
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2014091784A priority Critical patent/JP5725236B2/ja
Publication of JP2014161098A publication Critical patent/JP2014161098A/ja
Application granted granted Critical
Publication of JP5725236B2 publication Critical patent/JP5725236B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/16Multipoint 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/38Flow based routing

Landscapes

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

Description

[関連出願についての記載]
本発明は、日本国特許出願:特願2010−281473号(2010年12月17日出願)の優先権主張に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
本発明は、通信システム、ノード、パケット転送方法およびプログラムに関し、特に、受信パケットに適合する処理規則に従って、受信パケットを処理するノードを用いて通信を実現する通信システム、ノード、パケット転送方法およびプログラムに関する。
特許文献1、非特許文献1、2に示すとおり、近年、オープンフロー(OpenFlow)という技術が提案されている。オープンフローは、通信をエンドツーエンドのフローとして捉え、フロー単位で経路制御、障害回復、負荷分散、最適化を行うものである。転送ノードとして機能するオープンフロースイッチは、オープンフローコントローラとの通信用のセキュアチャネルを備え、オープンフローコントローラから適宜追加または書き換え指示されるフローテーブルに従って動作する。フローテーブルには、フロー毎に、パケットヘッダと照合する照合規則(マッチングルール)と、処理内容を定義したアクション(Actions)と、フロー統計情報(Stats)との組にしたフローエントリ(処理規則)が定義される(図7参照)。
例えば、オープンフロースイッチは、最初のパケット(first packet)を受信すると、フローテーブルから、受信パケットのヘッダ情報に適合する照合規則(マッチングルール)を持つエントリを検索する。検索の結果、受信パケットに適合するエントリが見つかった場合、オープンフロースイッチは、受信パケットに対して、当該エントリのアクションフィールドに記述された処理内容を実施する。一方、前記検索の結果、受信パケットに適合するエントリが見つからなかった場合、オープンフロースイッチは、セキュアチャネルを介して、オープンフローコントローラに対して受信パケットを転送し、受信パケットの送信元・送信先に基づいたパケットの経路の決定を依頼(処理規則の設定依頼)し、これを実現するフローエントリを受け取ってフローテーブルを更新する。
国際公開第2008/095010号
Nick McKeownほか7名、"OpenFlow: Enabling Innovation in Campus Networks"、[online]、[平成22(2010)年11月22日検索]、インターネット〈URL:http://www.openflowswitch.org//documents/openflow-wp-latest.pdf〉 "OpenFlow Switch Specification" Version 1.0.0. (Wire Protocol 0x01) [平成22(2010)年11月22日検索]、インターネット〈URL:http://www.openflowswitch.org/documents/openflow-spec-v1.0.0.pdf〉
以下の分析は、本発明によって与えられたものである。
しかしながら、上記特許文献1、非特許文献1、2の技術では、通信をエンドツーエンドのフローとして捉えるため、各ノードに接続された通信端末等の数やそれぞれの通信端末が利用する通信サービスが増えるに従い、フローの数に応じた数の処理規則(上述のフローエントリに相当。)が必要になってしまう。
また、上述のように通信端末の数やそれぞれの通信端末が利用する通信サービスが増大すると、ノードから制御装置に対する未知のパケット(上記オープンフローの場合におけるフローエントリがフローテーブルに無い場合に相当。)についての処理規則の設定依頼も増加してしまう。
以上のように、特許文献1、非特許文献1、2に記載の技術では、通信端末の数やそれぞれの通信端末が利用する通信サービスの数が増えるに従い、ノードや制御装置の負荷が増大し、処理遅延等が起こりやすくなってしまうという問題点がある。
上記の問題は、受信パケットがマルチキャストアドレスである場合にも同様に発生し、とりわけ、ノードが保持する処理規則の数や、制御装置に対する処理規則の設定依頼を飛躍的に増大させてしまう可能性がある。
本発明の第1の視点によれば、パケットを転送する通信装置を含む通信システムであって、前記通信装置は、複数の前記通信装置と通信可能な制御装置から、パケットフローを識別するための条件と当該条件に対応するパケットフローの転送先とを含む制御情報を受信する第一の手段と、宛先アドレスにマルチキャストアドレスが格納された受信パケットを、当該マルチキャストアドレスと、当該受信パケットと異なるパケットフローに対応する前記条件を含む複数の前記制御情報に含まれる転送先とに基づいて複数の転送先に転送する第二の手段とを含む通信システムが提供される。
本発明の第2の視点によれば、パケットを転送する通信装置であって、複数の前記通信装置と通信可能な制御装置から、パケットフローを識別するための条件と当該条件に対応するパケットフローの転送先とを含む制御情報を受信する第一の手段と、宛先アドレスにマルチキャストアドレスが格納された受信パケットを、当該マルチキャストアドレスと、当該受信パケットと異なるパケットフローに対応する前記条件を含む複数の前記制御情報に含まれる転送先とに基づいて複数の転送先に転送する第二の手段とを含む通信装置が提供される。
本発明の第3の視点によれば、パケットを転送する通信方法であって、複数の前記通信装置と通信可能な制御装置から、パケットフローを識別するための条件と当該条件に対応するパケットフローの転送先とを含む制御情報を受信し、宛先アドレスにマルチキャストアドレスが格納された受信パケットを、当該マルチキャストアドレスと、当該受信パケットと異なるパケットフローに対応する前記条件を含む複数の前記制御情報に含まれる転送先とに基づいて複数の転送先に転送する通信方法が提供される。
本発明の第4の視点によれば、上記した通信装置の機能を実現するためのプログラムが提供される。なお、このプログラムは、コンピュータが読み取り可能な記憶媒体に記録することができる。即ち、本発明は、コンピュータプログラム製品として具現することも可能である。
本発明によれば、通信端末の数やそれぞれの通信端末が利用する通信サービスの数が増えても、ノードや制御装置の負荷増大や処理遅延等を起こりにくくすることができる。
本発明の第1の実施形態の構成を表わした図である。 本発明の第1の実施形態のノードの構成を表わしたブロック図である。 本発明の第1の実施形態の制御装置によって設定された経路の例である。 図3のノード200Aに設定される処理規則の例である。 本発明の第1の実施形態のノードのパケット受信時の動作を表わした流れ図である。 図5の処理規則検索条件生成処理(ステップS200)の詳細を説明するための流れ図である。 非特許文献2に記載のフローエントリの構成を表した図である。
はじめに本発明の一実施形態の概要について説明する。なお、この概要に付記した図面参照符号は、専ら理解を助けるための例示であり、図示の態様に限定することを意図するものではない。本発明は、その一実施形態において、各フローに属するパケットの転送先と前記フローを特定するための照合規則とを対応付けた処理規則を複数保持し、前記処理規則に従って受信パケットを転送するノードを含む通信システムにより実現できる。具体的には、前記ノードは、受信パケットの宛先アドレスがマルチキャスト対象であることを示すアドレスである場合、前記複数保持する処理規則を用いてマルチキャスト転送を行う。
例えば、図3に示すように、3つのフローについてそれぞれ経路が設定されている場合において、新たに、ノード200Aが、これらの3つのフローに属さず、宛先アドレスがマルチキャスト対象であることを示すアドレスである受信パケットを新たに受信した場合、ノード200Aは、制御装置100Aへの処理規則の設定依頼は行わず、自装置が保持している処理規則を用いて、ノード200B、200Cへのマルチキャスト転送を行う。
以上により、ノードに新しい処理規則を設定することなくマルチキャスト転送を実行することが可能になる。なお、上記したマルチキャスト転送において、ノードは自装置が保持している処理規則のすべてを用いる必要は無く、必要なものだけを選択することが可能である。その詳細については、以下の実施形態において説明する。
[第1の実施形態]
続いて、本発明の第1の実施形態について図面を参照して詳細に説明する。図1は、本発明の第1の実施形態の通信システムの構成を表わした図である。
図1を参照すると、複数のノード200A〜200Cと、これらノードを制御する制御装置100Aと、が示されている。複数のノード200A〜200Cには、外部ノード300A〜300Eがそれぞれ接続されている。
制御装置100Aは、これらのノード200A〜200Cに対して、受信パケットに対する処理内容を定めた処理規則を設定することにより、外部ノード300A〜300E間の通信を制御する。
このような制御装置100Aとしては、オープンフロースイッチにフローエントリ(処理規則に相当。)を設定する非特許文献1、2のオープンフローコントローラを用いることが可能である。
ノード200A〜200Cは、外部ノード300A〜300Eを含む他のノードからパケットを受信すると、制御装置100から設定された処理規則の中から、受信パケットに適合する照合規則を持つ処理規則を選択し、受信パケットの処理を行う。
上記受信パケットの処理内容としては、ノード300A〜300Eを含む他のノードや制御装置100への受信パケットの転送が設定されているものとする。なお、処理内容として、その他パケットのドロップ(廃棄)、ヘッダ書き換え等を適宜設定することも可能である。
このようなノード200A〜200Cとしては、オープンフローコントローラから設定されたフローエントリ(処理規則に相当。)に従って動作する非特許文献1、2のオープンフロースイッチに、後記するマルチキャスト転送機能を追加することによっても実現することができる。
外部ノード300は、ノード200A〜200Cのいずれかに接続し、他の外部ノード300と通信するユーザ端末等である。
図2は、ノード200A〜200C(以下、ノード200A〜200Cを特に区別する必要が無いときは「ノード200」と記す。)の詳細構成を示すブロック図である。図2を参照すると、処理規則検索条件生成部201と、処理規則検索部202と、処理規則記憶部203と、処理規則管理部204と、フロー処理部205と、制御装置通信部206とを備えた構成が示されている。
処理規則検索条件生成部201は、処理規則検索部202から渡される受信パケットまたは受信パケットから抽出した情報を基に、処理規則検索部202が処理規則記憶部203から受信パケットに適合するする処理規則を検索するための処理規則検索条件を生成し、生成した処理規則検索条件を処理規則検索部202に渡す。
処理規則検索部202は、外部ノードや他のノードからパケットを受信すると、処理規則検索条件生成部201に、受信パケットまたは受信パケットから抽出した情報を出力し、処理規則検索条件の生成を依頼する。
また、処理規則検索部202は処理規則検索条件生成部201から渡される処理規則検索条件を用いて、処理規則記憶部203を検索する。処理規則記憶部203に処理規則検索条件に適合する処理規則を抽出できた場合、処理規則検索部202は、処理規則検索条件に適合する処理規則に定められた処理内容(アクション)と受信パケットをフロー処理部205に渡す。
なお、前記検索の結果、処理規則検索条件に適合する処理規則を抽出できた場合、処理規則検索部202が、当該処理規則のタイムアウト時間や統計情報などを更新するようにしてもよい。前記タイムアウト時間は、一定時間適合するパケットを受信しなかった処理規則の削除制御等に利用することができる。また、統計情報は、制御装置100がトラヒック状況を把握するための情報として用いることができる。
処理規則記憶部203は、ノード200が受信パケットを処理するための処理規則を保持する。このような処理規則記憶部203は、非特許文献1、2のオープンフロースイッチのフローテーブルにより実現することもできる(図7参照)。
処理規則管理部204は、制御装置通信部206を介して制御装置100から受信した指示に従い、処理規則記憶部203に保持された処理規則の追加・削除、参照等を行う。なお、前述のように、処理規則検索部202が当該処理規則のタイムアウト時間や統計情報などの更新を行っている場合、処理規則管理部204が、タイムアウトした処理規則の削除や統計情報の参照を行う、その結果を制御装置100に伝える処理を行う。
フロー処理部205は処理規則検索部202または制御装置通信部206を通して制御装置100から渡される受信パケットとその処理内容(アクション)に従って受信パケットに対する処理を行う。
制御装置通信部206は、制御装置100と、処理規則管理部204やフロー処理部205との中継を行う。
なお、図2に示したノード200の各部(処理手段)は、ノード200を構成するコンピュータに、そのハードウェアを用いて、上記した各処理を実行させるコンピュータプログラムにより実現することもできる。
以下の説明では、図3に示すように、制御装置100Aにより3つのフローについてそれぞれ経路が設定されているものとして説明する。
図4は、図3のノード200Aに設定される処理規則の例である。No.1のエントリは、図3の一点鎖線で示した外部ノード300Aを送信元とし、外部ノード300Bを宛先とする経路を実現するための処理規則である。図4の例では、レイヤ2の送信元アドレスが外部ノード300Aのレイヤ2アドレス、レイヤ2の宛先アドレスが外部ノード300Bのレイヤ2アドレス、レイヤ3の送信元アドレスが外部ノード300Aのレイヤ3アドレス、レイヤ3の宛先アドレスが外部ノード300Bのレイヤ3アドレスからなる照合規則と、当該照合規則に適合するパケットをノード200Bに転送するという処理内容とが設定されている。
同様に、図4のNo.2のエントリは、図3の破線で示した外部ノード300Aを送信元とし、外部ノード300Bを宛先とする経路を実現するための処理規則である。図4の例では、レイヤ2の送信元アドレスが外部ノード300Aのレイヤ2アドレス、レイヤ2の宛先アドレスが外部ノード300Cのレイヤ2アドレス、レイヤ3の送信元アドレスが外部ノード300Aのレイヤ3アドレス、レイヤ3の宛先アドレスが外部ノード300Cのレイヤ3アドレスからなる照合規則と、当該照合規則に適合するパケットをノード200Bに転送するという処理内容とが設定されている。
同様に、図4のNo.3のエントリは、図3の実線で示した外部ノード300Aを送信元とし、外部ノード300D、300Eを宛先とする経路を実現するための処理規則である。図4の例では、レイヤ2のアドレスについては不問とし、レイヤ3の送信元アドレスが外部ノード300Aのレイヤ3アドレス、レイヤ3の宛先アドレスが外部ノード300D、300Eのレイヤ3アドレスを集約したアグリゲートアドレスであるパケットを抽出するための照合規則と、当該照合規則に適合するパケットをノード200Cに転送するという処理内容とが設定されている。
なお、図4の照合規則のいずれにも適合しないパケットについては、制御装置100Aに受信パケットを転送し、処理規則の設定要求が行われる。なお、図4の照合規則は、本発明の理解を助けるための例であり、例えば、図7に示した入力ポート番号(In Port)、VLAN ID、レイヤ4のプロトコル番号、レイヤ4の送信元ポート番号や宛先ポート番号(TCP/UDP src port、TCP/UDP dst port)等を設定することができる。また、非特許文献2に記載されているように、任意のフィールドにワイルドカードを設定することもできる。
なお、以下の説明では、外部ノード300A、300B、300Cのレイヤ2アドレスは、それぞれMAC(Media Access Control)アドレス「00:11:22:33:44:AA」、「00:11:22:33:44:BB」、「00:11:22:33:44:CC」であるものとする。
また、外部ノード300A、300B、300Cのレイヤ3アドレスは、それぞれIPアドレス「192.168.0.1」、「192.168.0.2」、「192.168.0.3」であるものとする。また、外部ノード300D、300Eのレイヤ3アドレスは、IPアドレス「192.168.0.4」、「192.168.0.5」であり、これらを集約したアグリゲートアドレスは「192.168.0.4/31」であるものとする。
続いて、本実施形態のノードの動作について説明する。以下、図5と図5のステップS200の詳細を表わした図6を参照して、本実施形態の動作について説明する。なお、以下の説明では、予め制御装置100Aから図3、図4に示す経路とこれに対応する処理規則が設定されているものとして説明する。
図5を参照すると、まず、ノード200は、パケットを受信すると、受信パケットから抽出した受信パケットに適合する処理規則を検索するための処理規則検索条件生成情報を、処理規則検索条件生成部201に出力し、処理規則検索条件の生成を依頼する(ステップS100)。
本実施形態では、ノード200の処理規則検索部202から処理規則検索条件生成部201に渡される処理規則検索条件生成情報には、以下の情報が含まれるものとする。
・レイヤ2の送信元アドレスと宛先アドレス
・レイヤ3の送信元アドレスと宛先アドレス
・レイヤ3のネットワークアドレスを識別可能にする情報
なお、ARP(Address Resolution Protocol)等のレイヤ3の送信元アドレスと宛先アドレスが含まれているプロトコルである場合、これらのプロトコルのフォーマットから、レイヤ3の送信元アドレスと宛先アドレスを取得することができる。
前記レイヤ3のネットワークアドレスを識別可能にする情報としては、例えば、VLAN IDフィールドにレイヤ3のネットワークアドレス長を設定することにしている場合はそのVLAN ID、IPv4ヘッダやIPv6ヘッダにレイヤ3のネットワークアドレス長やネットワークアドレスマスクが設定されているオプションヘッダが存在する場合はそのオプションヘッダを用いることができる。ここではVLAN IDフィールドに、レイヤ3のネットワークアドレス長が設定されているものとし、レイヤ3のネットワークアドレスを識別可能にする情報として入力フレームのVLAN IDを抽出するものとする。
次に、ノード200の処理規則検索条件生成部201は、処理規則検索部202から渡された処理規則検索条件生成情報を基に処理規則検索条件を生成する(ステップS200)。
処理規則検索条件生成部201による処理規則検索条件の生成処理は次のように行われる。
まず、処理規則検索条件生成部201は、処理規則検索部202から渡された処理規則検索条件生成情報に含まれるレイヤ2やレイヤ3の宛先アドレスがリンクローカルマルチキャストアドレスであるかどうか判定する(図6のステップS201)。
レイヤ2やレイヤ3の宛先アドレスがリンクローカルマルチキャストアドレスであるとは、IPv4の場合はレイヤ2の宛先アドレスがFF:FF:FF:FF:FF:FFのMACアドレスであり、レイヤ3の宛先アドレスが255.255.255.255である場合や、レイヤ2の宛先アドレスがFF:FF:FF:FF:FF:FFのMACアドレスでありタイプがARPである場合である。また、IPv6の場合はレイヤ2の宛先アドレスが次の25ビット0000 00001 0000 0000 1001 1110 0で始まるMACアドレスであり、レイヤ3の宛先アドレスがFF02::/16の場合である。
ステップS201にて、レイヤ2やレイヤ3の宛先アドレスがリンクローカルマルチキャストアドレスであると判定した場合(ステップS201のYes)、処理規則検索条件生成部201は、上記レイヤ3のネットワークアドレスを識別可能にする情報と必要に応じてレイヤ3の送信元アドレスとを用いて、受信パケットのレイヤ3の送信元のネットワークアドレスを抽出する(ステップS202)。
例えば、レイヤ3のネットワークアドレスを識別可能にする情報としてVLAN IDに24が設定されている場合に、レイヤ3の送信元アドレスがノード200Aの192.168.0.1であれば(ARPの場合はARPフォーマットよりレイヤ3の送信元アドレスを抽出すればよい)、レイヤ3の送信元のネットワークアドレスとして192.168.0.0/24を抽出する。IPv6の場合も同様である。なお、レイヤ3のネットワークアドレスを識別可能にする情報として、送信元のネットワークアドレスそのものが存在する場合はそれをそのまま用いればよい。
次に、処理規則検索条件生成部201は、処理規則検索条件として、レイヤ2の宛先アドレスをワイルドカードに設定するとともに、レイヤ3の宛先アドレスを前記ステップS202で抽出した受信パケットのレイヤ3の送信元のネットワークアドレスに設定する(ステップS203)。
一方、ステップS201にて、レイヤ2やレイヤ3の宛先アドレスがリンクローカルマルチキャストアドレスでないと判定した場合(ステップS201のNo)、処理規則検索条件生成部201は、処理規則検索部202から渡された情報に含まれるレイヤ2やレイヤ3の宛先アドレスがダイレクトマルチキャストアドレスであるかどうか判定する(ステップS204)。
レイヤ2やレイヤ3の宛先アドレスがダイレクトマルチキャストアドレスであるとは、IPv4の場合はレイヤ2の宛先アドレスがFF:FF:FF:FF:FF:FFのMACアドレスであり、レイヤ3の宛先アドレスが255.255.255.255以外の場合である。
ステップS204にて、レイヤ2やレイヤ3の宛先アドレスがダイレクトマルチキャストアドレスであると判定した場合(ステップS204のYes)、処理規則検索条件生成部201は、上記レイヤ3のネットワークアドレスを識別可能にする情報と必要に応じてレイヤ3の宛先アドレスとを用いて、受信パケットのレイヤ3の宛先のネットワークアドレスを抽出する(ステップS205)。
例えば、レイヤ3のネットワークアドレスを識別可能にする情報としてVLAN IDに24が設定されている場合に、レイヤ3の宛先アドレスが192.168.0.255であればレイヤ3の宛先のネットワークアドレスとして192.168.0.0/24を抽出する。なお、レイヤ3のネットワークアドレスを識別可能にする情報として宛先のネットワークアドレスそのものが存在する場合はそれをそのまま用いればよい。
次に、処理規則検索条件生成部201は、処理規則検索条件として、レイヤ2の宛先アドレスをワイルドカードに設定するとともに、レイヤ3の宛先アドレスを前記ステップS205で抽出した受信パケットのレイヤ3の宛先のネットワークアドレスに設定する(ステップS206)。
最後に、処理規則検索条件生成部201は、処理規則検索条件として、ステップS203、S206で設定していない処理規則検索条件に対して処理規則検索部から渡された処理規則検索条件生成情報をそのまま設定する(ステップS207)。ただし、ARP等の場合はこれらプロトコルのフォーマットよりレイヤ3の送信元アドレスや宛先アドレスを抽出して追加する。
以下の説明では、ステップS201、S204のいずれかにて、リンクローカルマルチキャストアドレスまたはダイレクトマルチキャストアドレスと判定されて、レイヤ2の送信元アドレスにノード200AのMACアドレス00:11:22:33:44:AA、レイヤ2の宛先アドレスにワイルドカード、レイヤ3の送信元アドレスにノード200AのIPv4アドレス192.168.0.1、レイヤ3の宛先アドレスをノード200Aのネットワークアドレス192.168.0.0/24とした処理規則検索条件が生成されたものとする。
再度、図5を参照すると、上記のように生成された処理規則検索条件を処理規則検索条件生成部201から受け取った処理規則検索部202は、処理規則検索条件を用いて、処理規則記憶部203から処理規則検索条件に適合する処理規則を検索する(ステップS300)。このとき、レイヤ3の宛先アドレスに関しては処理規則検索条件のレイヤ3の宛先アドレスに包含され、または包含するレイヤ3の宛先アドレスを持つ処理規則すべてが検索される(ステップS350のYes)。
そして、処理規則検索部202は、その他の条件も適合する照合規則を持つ処理規則のアクションと受信パケットとの組をフロー処理部205に渡す。
図4の処理規則から上記した処理規則検索条件に適合する処理規則を検索すると、No.1、No.3のエントリが抽出されることになる。なお、図4には示されていないが、処理規則としてレイヤ3の宛先アドレスが192.168.0.0/16のエントリがあったとすると、その処理規則も抽出されることになる。
フロー処理部205は、上記のように処理規則検索部202から渡される受信パケットとそのアクションに従って、受信パケットを、外部ノード300に出力したり、他のノード200に出力したり、制御装置通信部206を通して制御装置100Aに出力したり、ドロップしたりする(ステップS400)。図4のような処理規則からNo.1、No.3のエントリが抽出されている場合、これら処理規則のアクションに従ってノード200Bとノード200Cに受信パケットが出力される(マルチキャスト転送される)。
他方、処理規則記憶部203から処理規則検索条件に適合する処理規則を検索できなかった場合(ステップS350のNo)、制御装置100Aに対し、パケットに対する処理規則の設定依頼が行われる(ステップS500)。制御装置100Aによる処理規則の設定が完了すると、その後、再度、処理規則の検索が行われて、前記設定された処理規則によるパケット処理が行われる(ステップS300、S400)。
以上のように本実施形態によれば、ノード200の処理規則記憶部203に保持される処理規則の数を削減することが可能になる。その理由はレイヤ2やレイヤ3の宛先アドレスがマルチキャストアドレスであるパケットをマルチキャストするための処理規則をノード200に設定しなくても、既存の処理規則を用いて転送できるようにしたためである。
なお、図5の流れ図ではステップS500において制御装置100Aに対しパケットに対する処理規則の設定依頼を行うものとして説明したが、処理規則の設定依頼は行わずに、パケットを廃棄(Drop)することや、制御装置100Aが処理規則の設定依頼で受け取ったパケットを他のノードに転送することも可能である。さらに、制御装置100Aが処理規則の設定依頼で受け取ったパケットを終端することも可能である。
また、上記した実施形態の説明では、処理規則検索条件生成部201が処理規則検索部202から処理規則検索条件生成情報を受け取って処理規則検索条件を生成するものとして説明したが、処理規則検索条件生成部201が処理規則検索部202から、処理規則検索条件生成情報として、少なくとも、上記したレイヤ2の送信元アドレスと宛先アドレス、レイヤ3の送信元アドレスと宛先アドレス(ARPフォーマット等から取得できるものを含む。)、レイヤ3のネットワークアドレスを識別可能にする情報を受け取って処理規則検索条件の一部を生成し、処理規則検索部202が処理規則検索条件生成部201から受け取ったその一部の処理規則検索条件を処理規則検索条件生成情報に反映して処理規則検索条件を生成するものとしてもよい。
また本実施形態によれば、パケット処理の遅延や、制御装置とノード間のネットワーク帯域の圧迫、制御装置の処理負荷の増大といった問題を軽減することができる。その理由は、上記のように、レイヤ2やレイヤ3の宛先アドレスがマルチキャストアドレスであるパケットをマルチキャストするための処理規則をノード200に設定しなくてよいようにしたことにある。また、また本実施形態によれば、ノード200に保持可能な処理規則の数の制限により処理規則を登録できないような状況が生じることもなく、ノード200が制御装置100Aにマルチキャスト対象のパケットについての処理規則の設定依頼することも無くなっている。
以上、本発明の好適な実施形態を説明したが、本発明は、上記した実施形態に限定されるものではなく、本発明の基本的技術的思想を逸脱しない範囲で、更なる変形・置換・調整を加えることができる。例えば、上記した実施形態に示したノードの数は一例であって、その数に特に制限はない。
また、上記した実施形態では、図4にノード200Aに設定される処理規則の例を用いて説明したが、レイヤ3の送信元アドレス、宛先アドレスにネットワークアドレス(プレフィックスでも可)を含めた処理規則を事前設定しておいてもよい。
また、ノード200に、上記のような処理規則に登録されているレイヤ3のアドレスと、そのネットワークアドレスと関連付けたテーブルを持たせることも可能である。このようにすることで、受信パケットに、レイヤ3のネットワークアドレスを識別可能にする情報」がなくても、図6のステップS202、S205において、前記テーブルを参照することで、上記した実施形態と同様の処理を行うことが可能になる。
また、レイヤ3の送信元アドレス、宛先アドレスにネットワークアドレス(プレフィックスでも可)を含めた処理規則を事前設定しておいた場合、ローカルブロードキャストの場合は図6のステップS202の処理を省略し、ステップS203を「レイヤ3の宛先アドレスを、受信パケットのレイヤ3の送信元のネットワークアドレスと同じネットワークアドレスを持つレイヤ3の宛先アドレスとした処理規則検索情条件を生成」とすることができる。
なお、この場合、処理規則中の任意のフィールドに、レイヤ3のネットワークアドレスが同一であることを識別可能なフラグなどを設け、レイヤ3のネットワークアドレスが同一である処理規則を簡単に検索できるようにしておいてもよい。
同様に、ダイレクトブロードキャストの場合も、ステップS204の処理を省略し、ステップS205に同様の変更を加えることで対応することが可能である。
また、上記した実施形態では、図3に示すように、制御装置100Aにより3つのフローについてそれぞれ経路が設定されているものとして説明したが、ノードに設定されている処理規則が少ない場合には、マルチキャスト対象パケットについても、制御装置100Aに処理規則の設定依頼を行うようにしてもよいことはもちろんである。また、これらのノードに設定されている処理規則を把握する制御装置100Aが、個々のノード200が上記したマルチキャスト転送ができるよう必要な処理規則を設定するようにしてもよい。また、制御装置100Aが、個々のノード200に設定されている処理規則の内容を判断した上で、上記した設定済みの処理規則を用いたマルチキャスト転送を行うか否かをオンオフ制御するようにしてもよい。
その他、ループ対策として、マルチキャスト転送を行う前に、ループ検出用にヘッダを書き換え、前記ヘッダが書き換えられたパケットの受信によりループが検出された場合には、該当パケットを破棄する処理規則を設定しておくことなども可能である。
最後に、本発明の好ましい形態を要約する。
[形態1]
前記第1の視点に記載の通信システムのとおり。
[形態2]
前記ノードは、マルチキャストすべき宛先に適合する処理規則を抽出する検索条件を生成する処理規則検索条件生成部(処理規則検索条件生成手段)を備え、
受信パケットの宛先アドレスがマルチキャスト対象であることを示すアドレスである場合、前記処理規則検索条件生成部にて生成された検索条件に適合する照合規則を持つ処理規則を抽出してマルチキャスト転送を行うことが好ましい。
[形態3]
前記処理規則検索条件生成部は、受信パケットの宛先アドレスがリンクローカルマルチキャストアドレスである場合、レイヤ3の宛先アドレスがパケット送信元のレイヤ3ネットワークアドレスに一致する照合規則を持つ処理規則を抽出する検索条件を生成することが好ましい。
[形態4]
前記処理規則検索条件生成部は、受信パケットの宛先アドレスがダイレクトマルチキャストアドレスである場合、レイヤ3の宛先アドレスが宛先のレイヤ3ネットワークアドレスに一致する照合規則を持つ処理規則を抽出する検索条件を生成することが好ましい。
[形態5]
前記第2の視点に記載のノードのとおり。
[形態6]
前記ノードは、
マルチキャストすべき宛先に適合する処理規則を抽出する検索条件を生成する処理規則検索条件生成部(処理規則検索条件生成手段)を備え、
受信パケットの宛先アドレスがマルチキャスト対象であることを示すアドレスである場合、前記処理規則検索条件生成部にて生成された検索条件に適合する照合規則を持つ処理規則を抽出してマルチキャスト転送を行うことが好ましい。
[形態7]
前記処理規則検索条件生成部は、受信パケットの宛先アドレスがリンクローカルマルチキャストアドレスである場合、レイヤ3の宛先アドレスがパケット送信元のレイヤ3ネットワークアドレスに一致する照合規則を持つ処理規則を抽出する検索条件を生成することが好ましい。
[形態8]
前記処理規則検索条件生成部は、受信パケットの宛先アドレスがダイレクトマルチキャストアドレスである場合、レイヤ3の宛先アドレスが宛先のレイヤ3ネットワークアドレスに一致する照合規則を持つ処理規則を抽出する検索条件を生成することが好ましい。
[形態9]
前記第3の視点に記載のパケット転送方法のとおり。
[形態10]
前記第4の視点に記載のプログラムのとおり。
なお、パケット転送方法、プログラムは、形態1の通信システムと同様に、それぞれの構成要素ないしステップについて、形態2〜形態4と同様に展開することが可能である。
なお、上記の特許文献および非特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素(各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む)の多様な組み合わせ、ないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
100、100A 制御装置
200、200A〜200C ノード
201 処理規則検索条件生成部
202 処理規則検索部
203 処理規則記憶部
204 処理規則管理部
205 フロー処理部
206 制御装置通信部
300A〜300E 外部ノード

Claims (12)

  1. パケットを転送する通信装置であって、
    複数の前記通信装置と通信可能な制御装置から、パケットフローを識別するための条件と当該条件に対応するパケットフローの転送先とを含む制御情報を受信する第一の手段と、
    宛先アドレスにマルチキャストアドレスが格納された受信パケットを、当該マルチキャストアドレスと、当該受信パケットと異なるパケットフローに対応する前記条件を含む複数の前記制御情報に含まれる転送先とに基づいて複数の転送先に転送する第二の手段と
    を含むことを特徴とする通信装置。
  2. 前記第一の手段は、宛先アドレスが前記マルチキャストアドレスとは異なるアドレスを有するパケットフローを識別するための前記条件を含む前記複数の制御情報を、前記制御装置から受信する
    ことを特徴とする請求項1の通信装置。
  3. 前記第二の手段は、前記制御装置から予め通知された前記複数の制御情報を参照し、宛先アドレスにマルチキャストアドレスが格納された受信パケットを前記複数の制御情報に対応する複数の転送先に転送する
    ことを特徴とする請求項1または2の通信装置。
  4. 前記第二の手段は、前記マルチキャストアドレスに対応する前記複数の制御情報を特定するための検索条件に基づいて、前記受信パケットを前記複数の転送先に転送する
    ことを特徴とする請求項1乃至3のいずれか1項の通信装置。
  5. パケットを転送する通信方法であって、
    複数の前記通信装置と通信可能な制御装置から、パケットフローを識別するための条件と当該条件に対応するパケットフローの転送先とを含む制御情報を受信し、
    宛先アドレスにマルチキャストアドレスが格納された受信パケットを、当該マルチキャストアドレスと、当該受信パケットと異なるパケットフローに対応する前記条件を含む複数の前記制御情報に含まれる転送先とに基づいて複数の転送先に転送する
    ことを特徴とする通信方法。
  6. 宛先アドレスが前記マルチキャストアドレスとは異なるアドレスを有するパケットフローを識別するための前記条件を含む前記複数の制御情報を、前記制御装置から受信する
    ことを特徴とする請求項5の通信方法。
  7. 前記制御装置から予め通知された前記複数の制御情報を参照し、宛先アドレスにマルチキャストアドレスが格納された受信パケットを前記複数の制御情報に対応する複数の転送先に転送する
    ことを特徴とする請求項5または6の通信方法。
  8. 前記マルチキャストアドレスに対応する前記複数の制御情報を特定するための検索条件に基づいて、前記受信パケットを前記複数の転送先に転送する
    ことを特徴とする請求項5乃至7のいずれか1項の通信方法。
  9. パケットを転送する通信装置を含む通信システムであって、
    前記通信装置は、
    複数の前記通信装置と通信可能な制御装置から、パケットフローを識別するための条件と当該条件に対応するパケットフローの転送先とを含む制御情報を受信する第一の手段と、
    宛先アドレスにマルチキャストアドレスが格納された受信パケットを、当該マルチキャストアドレスと、当該受信パケットと異なるパケットフローに対応する前記条件を含む複数の前記制御情報に含まれる転送先とに基づいて複数の転送先に転送する第二の手段と
    を含むことを特徴とする通信システム。
  10. 前記第一の手段は、宛先アドレスが前記マルチキャストアドレスとは異なるアドレスを有するパケットフローを識別するための前記条件を含む前記複数の制御情報を、前記制御装置から受信する
    ことを特徴とする請求項9の通信システム。
  11. 前記第二の手段は、前記制御装置から予め通知された前記複数の制御情報を参照し、宛先アドレスにマルチキャストアドレスが格納された受信パケットを前記複数の制御情報に対応する複数の転送先に転送する
    ことを特徴とする請求項9または10の通信システム。
  12. 前記第二の手段は、前記マルチキャストアドレスに対応する前記複数の制御情報を特定するための検索条件に基づいて、前記受信パケットを前記複数の転送先に転送する
    ことを特徴とする請求項9乃至11のいずれか1項の通信システム。
JP2014091784A 2010-12-17 2014-04-25 通信システム、ノード、パケット転送方法およびプログラム Expired - Fee Related JP5725236B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014091784A JP5725236B2 (ja) 2010-12-17 2014-04-25 通信システム、ノード、パケット転送方法およびプログラム

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2010281473 2010-12-17
JP2010281473 2010-12-17
JP2014091784A JP5725236B2 (ja) 2010-12-17 2014-04-25 通信システム、ノード、パケット転送方法およびプログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2012548861A Division JP5534033B2 (ja) 2010-12-17 2011-12-19 通信システム、ノード、パケット転送方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2014161098A JP2014161098A (ja) 2014-09-04
JP5725236B2 true JP5725236B2 (ja) 2015-05-27

Family

ID=46244811

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2012548861A Expired - Fee Related JP5534033B2 (ja) 2010-12-17 2011-12-19 通信システム、ノード、パケット転送方法およびプログラム
JP2014091784A Expired - Fee Related JP5725236B2 (ja) 2010-12-17 2014-04-25 通信システム、ノード、パケット転送方法およびプログラム

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2012548861A Expired - Fee Related JP5534033B2 (ja) 2010-12-17 2011-12-19 通信システム、ノード、パケット転送方法およびプログラム

Country Status (6)

Country Link
US (1) US20130259044A1 (ja)
EP (1) EP2654251A1 (ja)
JP (2) JP5534033B2 (ja)
KR (1) KR101500251B1 (ja)
CN (1) CN103262479B (ja)
WO (1) WO2012081721A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011512393A (ja) * 2008-02-22 2011-04-21 アセラ・バイオテクノロジーズ・アーベー 再狭窄の予防または治療のための化合物および方法
KR101501242B1 (ko) * 2014-05-26 2015-03-12 주식회사 파이오링크 오픈플로우에 기반하여 네트워크를 병합하기 위한 방법, 장치 및 컴퓨터 판독 가능한 기록 매체
KR101501892B1 (ko) * 2014-05-26 2015-03-12 주식회사 파이오링크 오픈플로우에 기반하여 서비스에 적합한 네트워크를 선택하기 위한 방법, 장치 및 컴퓨터 판독 가능한 기록 매체
GB2532055B (en) * 2014-11-07 2016-12-14 Ibm Sticky and transient markers for a packet parser
WO2016140696A1 (en) * 2015-03-02 2016-09-09 Hewlett Packard Enterprise Development Lp Controlling an unknown flow inflow to an sdn controller in a software defined network (sdn)
CN109379286B (zh) * 2018-12-25 2020-12-01 中国科学院沈阳自动化研究所 一种基于Handle标识的数据转发系统

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6850531B1 (en) * 1999-02-23 2005-02-01 Alcatel Multi-service network switch
US6791980B1 (en) * 1999-10-28 2004-09-14 Nortel Networks Ltd System, device, and method for reducing the number of multicast routes maintained in a multicast routing information base
JP3610913B2 (ja) * 2001-02-14 2005-01-19 日本電気株式会社 ルータとそのパケット交換方法、及びパケット交換プログラム
KR100425020B1 (ko) * 2001-11-26 2004-03-27 주식회사 케이티프리텔 명시적 멀티캐스트의 터널링 서비스 방법 및 장치
US7881291B2 (en) * 2005-05-26 2011-02-01 Alcatel Lucent Packet classification acceleration using spectral analysis
JP4772053B2 (ja) * 2005-08-04 2011-09-14 パナソニック株式会社 送信装置および送信レート制御方法
CN100596094C (zh) * 2005-12-31 2010-03-24 华为技术有限公司 多点到多点的业务实现方法及交换设备
EP2036283B1 (en) * 2006-06-27 2015-10-21 Thomson Licensing Method and apparatus for reliably delivering multicast data
KR100811890B1 (ko) * 2006-09-29 2008-03-10 한국전자통신연구원 인터넷 시스템에서 서비스 플로우를 보장하는 애니캐스트라우팅 방법 및 장치
US20080189769A1 (en) 2007-02-01 2008-08-07 Martin Casado Secure network switching infrastructure
JP4867806B2 (ja) * 2007-06-15 2012-02-01 株式会社日立製作所 通信システム、サーバ、制御装置および通信装置
JP4742072B2 (ja) * 2007-06-20 2011-08-10 アラクサラネットワークス株式会社 シェーピング装置およびルータ装置
WO2009089761A1 (fr) * 2008-01-09 2009-07-23 Huawei Technologies Co., Ltd. Procédé, système pour la mise en oeuvre d'une commutation de suivi de routage de multidiffusion dans des deuxième et troisième couches, et routeur
US8270290B2 (en) * 2008-12-19 2012-09-18 Rockstar Bidco, LP Resilient attachment to provider link state bridging (PLSB) networks
JP5408243B2 (ja) * 2009-03-09 2014-02-05 日本電気株式会社 OpenFlow通信システムおよびOpenFlow通信方法
US8681668B2 (en) * 2009-10-09 2014-03-25 Media Patents, S.L. Methods and apparatus for transmitting multicast traffic in a data network
CN101699886B (zh) * 2009-10-20 2012-02-08 清华大学 多连接移动节点在代理移动IPv6中的流绑定方法
US8750164B2 (en) * 2010-07-06 2014-06-10 Nicira, Inc. Hierarchical managed switch architecture
CN101883055B (zh) * 2010-07-19 2013-11-20 福建星网锐捷网络有限公司 路由转发表容量扩展实现方法、装置及交换设备
CN101917290B (zh) * 2010-08-12 2012-09-05 北京星网锐捷网络技术有限公司 标签交换路径故障处理方法、装置及网络设备
US9887728B2 (en) * 2011-02-03 2018-02-06 The Board Of Trustees Of The Leland Stanford Junior University Single channel full duplex wireless communications

Also Published As

Publication number Publication date
CN103262479B (zh) 2016-08-10
KR20130099199A (ko) 2013-09-05
JP5534033B2 (ja) 2014-06-25
US20130259044A1 (en) 2013-10-03
CN103262479A (zh) 2013-08-21
EP2654251A1 (en) 2013-10-23
JPWO2012081721A1 (ja) 2014-05-22
KR101500251B1 (ko) 2015-03-06
WO2012081721A1 (ja) 2012-06-21
JP2014161098A (ja) 2014-09-04

Similar Documents

Publication Publication Date Title
EP2544417B1 (en) Communication system, path control apparatus, packet forwarding apparatus and path control method
US10541920B2 (en) Communication system, communication device, controller, and method and program for controlling forwarding path of packet flow
US9379975B2 (en) Communication control system, control server, forwarding node, communication control method, and communication control program
JP5800019B2 (ja) 通信経路制御システム、経路制御装置、通信経路制御方法および経路制御プログラム
US20130282867A1 (en) Information system, control apparatus, method of providing virtual network, and program
JP5725236B2 (ja) 通信システム、ノード、パケット転送方法およびプログラム
JP2015029356A (ja) 制御装置、通信システム、制御方法及びプログラム
US20130195110A1 (en) Communication system, control device, method for setting processing rules, and program
US10069648B2 (en) Communication system, control apparatus, communication control method and program
JPWO2013118873A1 (ja) 制御装置、通信システム、通信方法およびプログラム
JP5858141B2 (ja) 制御装置、通信装置、通信システム、通信方法及びプログラム
WO2014112616A1 (ja) 制御装置、通信装置、通信システム、スイッチの制御方法及びプログラム
JPWO2013039083A1 (ja) 通信システム、制御装置および通信方法
WO2011118574A1 (ja) 通信システム、制御装置、遅延測定方法およびプログラム
US20150288595A1 (en) Control apparatus, communication system, control information creation method, and program
US20190007279A1 (en) Control apparatus, communication system, virtual network management method, and program
US20150256455A1 (en) Communication system, path information exchange apparatus, communication node, forwarding method for path information and program
JP5935897B2 (ja) 通信ノード、通信システム、制御装置、パケット転送方法及びプログラム
US20150381775A1 (en) Communication system, communication method, control apparatus, control apparatus control method, and program
WO2014142256A1 (ja) 通信システム、制御装置、通信方法およびプログラム
WO2014142081A1 (ja) 転送ノード、制御装置、通信システム、パケット処理方法及びプログラム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140603

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140804

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140902

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141202

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20141210

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: 20150303

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150316

R150 Certificate of patent or registration of utility model

Ref document number: 5725236

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees