JP2014533001A - 転送装置の制御装置、転送装置の制御方法、通信システムおよびプログラム - Google Patents

転送装置の制御装置、転送装置の制御方法、通信システムおよびプログラム Download PDF

Info

Publication number
JP2014533001A
JP2014533001A JP2014518855A JP2014518855A JP2014533001A JP 2014533001 A JP2014533001 A JP 2014533001A JP 2014518855 A JP2014518855 A JP 2014518855A JP 2014518855 A JP2014518855 A JP 2014518855A JP 2014533001 A JP2014533001 A JP 2014533001A
Authority
JP
Japan
Prior art keywords
transfer
address
packet
lower layer
rule
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.)
Granted
Application number
JP2014518855A
Other languages
English (en)
Other versions
JP5994851B2 (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 JP2014518855A priority Critical patent/JP5994851B2/ja
Publication of JP2014533001A publication Critical patent/JP2014533001A/ja
Application granted granted Critical
Publication of JP5994851B2 publication Critical patent/JP5994851B2/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
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways

Landscapes

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

Abstract

【課題】下位層アドレスのユニーク性(一意性)が担保されていない環境下での端末間の通信の実現。【解決手段】転送規則に従いパケットを転送する転送装置群と接続された転送装置の制御装置が、上位層のアドレスと、下位層のアドレスとの対応関係を記憶するアドレス記憶部と、前記アドレス記憶部を参照して、前記転送装置を介した転送対象のパケットの上位層の宛先アドレスから、対応する下位層アドレスを検索するアドレス管理部と、前記転送対象のパケットの転送経路上のいずれかの転送装置に、前記転送対象のパケットの下位層の宛先アドレスフィールドに、前記検索した下位層のアドレスを書き込む処理を行わせる転送規則を設定する転送規則設定部とを、備える。【選択図】図1

Description

(関連出願についての記載)
本発明は、日本国特許出願:特願2011−231820号(2011年10月21日出願)の優先権主張に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
本発明は、転送装置の制御装置、転送装置の制御方法、通信システムおよびプログラムに関し、転送ルールに従いパケットを転送する転送装置を制御する転送装置の制御装置、転送装置の制御方法、通信システムおよびプログラムに関する。
非特許文献1、2にオープンフロースイッチ(以下、「OFS」)とオープンフローコントローラ(以下、「OFC」)とを用いて通信を実現するオープンフローという通信システムが記載されている。以下に、OFS、OFCの概略を述べる。
OFSは、受信パケットのヘッダ情報等と照合するマッチフィールズ(Match Fields)と処理内容(Instructions)とを対応付けた転送規則(フローエントリ)を格納したフローテーブルと、コントローラとの通信用のセキュアチャネルとを備えた非特許文献2に仕様化されている転送装置である。OFCは、非特許文献2に記載されているオープンフロープロトコルを用いてセキュアチャネル上でOFSと通信し、例えばAPI(Application Programming Interface)レベルでフローを制御する制御装置である。
OFSとOFCは、例えば、次のように動作する。OFSに最初のパケット(First packet)が到着すると、OFSは、フローテーブルから、パケットのヘッダ情報を適合するマッチフィールズ(Match Fields)を持つ転送規則(フローエントリ)を検索する。検索の結果、該当するフローエントリを発見できなかった場合、OFSは、セキュアチャネルを介してOFCに対し、当該パケットを転送する。
OFCは、当該パケットのヘッダ情報に含まれる宛先、送信元情報に基づいて始点と終点となるOFSを特定し、さらに、ネットワークトポロジー情報を参照して、前記パケットのパス(転送経路)を決定する。次に、OFCは、前記決定したパス(転送経路)上の各OFSに対して、それぞれのフローテーブルに当該パス(転送経路)に沿ったパケット転送を実行させる転送規則(フローエントリ)を設定する。2番目以降のパケットは、前記設定された転送規則(フローエントリ)により、当該パス(転送経路)上のOFSからOFSへと転送される。
図18は、OFSのフローテーブルを模式的に表わした図である。同図に示すように、フローテーブル100に格納される転送規則(フローエントリ)は、受信パケットのヘッダ情報等と照合するマッチフィールズ(Match Fields)と、前記マッチフィールズ(Match Fields)に適合するパケットに適用する処理内容を定めたインストラクション(Instructions、「Actions」ともいう。)と、フロー統計情報(Counters)とによって構成される。
マッチフィールズ(Match Fields)には、正確な値(Exact)及びワイルドカード(Wild card)を指定することが可能となっている。パケットのヘッダの所定のフィールドが、前記マッチフィールズ(Match Fields)との照合に用いられる。マッチ対象の情報としては、図19に示すパケットヘッダのMAC DA(Media Access Control ディスティネーションアドレス)、MAC SA(MAC ソースアドレス)、Ethernet(登録商標) タイプ(TPID)、VLAN ID(Virtual Local Area Network ID)、VLAN TYPE(優先度)、IP SA(Internet Protocol ソースアドレス)、IP DA (IP ディスティネーションアドレス)、IP プロトコル、Source Port(TCP/UDP ソースポート、あるいは、ICMP(Internet Control Message Protocol) Type)、Destination Port(TCP/UDP ディスティネーションポート、あるいは、ICMP Code)のほか、OFSの入力ポート情報(Ingress Port)やメタデータ等を指定可能となっている。
図20は、転送規則(フローエントリ)のインストラクション(Instructions)フィールドに設定可能な処理内容の例である。OUTPUTは、指定ポート(インタフェース)にパケットを出力する。SET_VLAN_VIDからSET_TP_DSTは、パケットヘッダのフィールドを修正するアクションである。
また、OFSは、物理ポートのほか、仮想ポートへパケットを転送することもできる。図21は、非特許文献2に例示されている仮想ポートの例である。IN_PORTは、受信ポートからの送信を指示するための仮想ポート名である。NORMALは、非オープンフローのパイプラインを用いたパケット処理を指示するための仮想ポート名である。FLOODは、受信ポートを除く通信可能状態(Forwarding 状態)のすべてのポートからの転送を指示するための仮想ポート名である。ALLは受信ポートを除くポートからの転送を指示するための仮想ポート名である。CONTROLLERは、パケットをカプセル化してコントローラに向けて送信することを指示するための仮想ポート名である。LOCALは、パケットをスイッチ自身のローカルネットワークスタックに送信することを指示するための仮想ポート名である。
なお、転送規則(フローエントリ)のインストラクション(Instructions)フィールドに何も指定されていない場合、当該転送規則(フローエントリ)に適合したパケットはドロップ(廃棄)される。
図22に、セキュアチャネルを介してOFSとOFC間でやり取りされるメッセージを例示する。Flow−modは、OFCからOFSに対して、転送規則(フローエントリ)の追加、変更、削除を行うためのメッセージである。Packet−inは、OFSからOFCに対して送られるメッセージで、転送規則(フローエントリ)にマッチしなかったパケットを送るために用いられる。Packet−outは、OFCからOFSに対して送られるメッセージで、OFSの任意のポートからOFCが生成したパケットを出力するために用いられる。
また、図18のフロー統計情報(Counters)は、アクティビティカウンタともいい、アクティブエントリ数、パケットルックアップ数、パケットマッチ数、フロー単位に、受信パケット数、受信バイト数、フローがアクティブな期間、ポート単位で受信パケット、送信パケット、受信バイト、送信バイト、受信ドロップ、送信ドロップ、受信エラー、送信エラー、受信フレームアラインメントエラー、受信オーバーランエラー、受信CRCエラー、コリジョン数を含む。
Nick McKeownほか7名、"OpenFlow: Enabling Innovation in Campus Networks"、[online]、[平成23(2011)年10月4日検索]、インターネット〈URL: http://www.openflow.org/documents/openflow-wp-latest.pdf〉 "OpenFlow Switch Specification" Version 1.1.0 Implemented (Wire Protocol 0x02)、[online]、[平成23(2011)年10月4日検索]、インターネット〈URL:http://www.openflow.org/documents/openflow-spec-v1.1.0.pdf〉
以下の分析は、本発明によって与えられたものである。同一の下位層ネットワーク上に存在する複数の端末は、それぞれ異なる下位層アドレス(例えば、MACアドレス)を持っている必要がある。そのため、同一の下位層アドレスを持つ端末が複数ネットワークに存在する場合、そのネットワーク上での通信を正常に行うことが出来ないという問題点がある。
この点、非特許文献1、2には、上述したとおり、OFCからの制御により、きめ細かにパケットを特定しヘッダ書き換え等をなしうることが記載されているが、上記同一の下位層アドレスを持つ端末間の通信を実現できる構成は開示されていない。
本発明は、上記した事情に鑑みてなされたものであってその目的とするところは、下位層アドレスのユニーク性(一意性)が担保されていない環境下でも通信を実現できる転送装置の制御装置、転送装置の制御方法、通信システムおよびプログラムを提供することにある。
本発明の第1の視点によれば、転送規則に従いパケットを転送する転送装置群と接続された制御装置であって、上位層のアドレスと、下位層のアドレスとの対応関係を記憶するアドレス記憶部と、前記アドレス記憶部を参照して、前記転送装置を介した転送対象のパケットの上位層の宛先アドレスから、対応する下位層アドレスを検索するアドレス管理部と、前記転送対象のパケットの転送経路上のいずれかの転送装置に、前記転送対象のパケットの下位層の宛先アドレスフィールドに、前記検索した下位層のアドレスを書き込む処理を行わせる転送規則を設定する転送規則設定部とを、備えた転送装置の制御装置が提供される。
本発明の第2の視点によれば、転送規則に従いパケットを転送する転送装置群と、上位層のアドレスと、下位層のアドレスとの対応関係を記憶するアドレス記憶部と、前記アドレス記憶部を参照して、前記転送装置を介した転送対象のパケットの上位層の宛先アドレスから、対応する下位層アドレスを検索するアドレス管理部と、前記転送対象のパケットの転送経路上のいずれかの転送装置に、前記転送対象のパケットの下位層の宛先アドレスフィールドに、前記検索した下位層のアドレスを書き込む処理を行わせる転送規則を設定する転送規則設定部とを、備えた制御装置と、を含む通信システムが提供される。
本発明の第3の視点によれば、転送規則に従いパケットを転送する転送装置群と接続された制御装置が、上位層のアドレスと、下位層のアドレスとの対応関係を記憶するアドレス記憶部を参照して、前記転送装置を介した転送対象のパケットの上位層の宛先アドレスから、対応する下位層アドレスを検索するステップと、前記転送対象のパケットの転送経路上のいずれかの転送装置に、前記転送対象のパケットの下位層の宛先アドレスフィールドに、前記検索した下位層のアドレスを書き込む処理を行わせる転送規則を設定するステップとを、含む転送装置の制御方法が提供される。本方法は、転送規則に従いパケットを転送する転送装置を制御する制御装置という、特定の機械に結びつけられている。
本発明の第4の視点によれば、転送規則に従いパケットを転送する転送装置群と接続された制御装置を構成するコンピュータに、上位層のアドレスと、下位層のアドレスとの対応関係を記憶するアドレス記憶部を参照して、前記転送装置を介した転送対象のパケットの上位層の宛先アドレスから、対応する下位層アドレスを検索する処理と、前記転送対象のパケットの転送経路上のいずれかの転送装置に、前記転送対象のパケットの下位層の宛先アドレスフィールドに、前記検索した下位層のアドレスを書き込む処理を行わせる転送規則を設定する処理とを実行させるプログラムが提供される。なお、このプログラムは、コンピュータが読み取り可能な記憶媒体に記録することができる。即ち、本発明は、コンピュータプログラム製品として具現することも可能である。
本発明によれば、下位層アドレスのユニーク性(一意性)が担保されていない環境下でも、端末間の通信を実現することが可能となる。
本発明の一実施形態の概略構成および動作を説明するための図である。 本発明の第1の実施形態の構成を表した図である。 本発明の第1の実施形態のコントローラ(制御装置)の構成を表わしたブロック図である。 本発明の第1の実施形態のコントローラ(制御装置)に保持されるアドレスデータベースに登録されるエントリの構成例を示す図である。 本発明の第1の実施形態のコントローラ(制御装置)に保持されるインターフェース対応表の一例を示す図である。 本発明の第1の実施形態のパケット受信時の処理の流れを示すフローチャートである。 本発明の第1の実施形態のARPパケット受信時の処理の流れを示すフローチャートである。 本発明の第1の実施形態におけるARP要求パケット及びARP応答パケットの授受の流れを模式的に示す図である。 本発明の第1の実施形態のパス構築処理の流れを示すフローチャートである。 本発明の具体的な動作を説明するため、スイッチと端末の接続関係を模式的に表した図である。 図10の接続関係に対応するアドレスデータベースの構成例を示す図である。 図10の接続関係に対応するインターフェース対応表の構成例を示す図である。 図10における最短パスツリーの例を示す図である。 本発明の第2の実施形態のパス構築処理の流れを示すフローチャートである。 本発明の第3の実施形態のパス構築処理の流れを示すフローチャートである。 図10における逆方向の最短パスツリーの例を示す図である。 本発明の第4の実施形態のコントローラが保持する経路表の一例を示す図である。 非特許文献2のオープンフロースイッチが保持するフローテーブルの概略構成を示す図である。 Ethernet(登録商標)/IP/TCPパケットのヘッダを示す図である。 非特許文献2の転送規則(フローエントリ)中に設定可能なインストラクション名とその説明を示す図である。 非特許文献2のOFSにパケット出力先として指示可能な仮想ポートとその説明を示す図である。 非特許文献2のオープンフロープロトコルの代表的なメッセージとその説明を示す図である。
はじめに本発明の一実施形態の概要について図面を参照して説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、本発明を図示の態様に限定することを意図するものではない。
本発明はその一実施形態において、図1に示すように、複数の転送装置10Aを制御する制御装置20Aにより実現できる。転送装置10Aは、上記した非特許文献1、2のOFSのように転送規則に従いパケットを転送する通信装置である。
制御装置20Aは、上位層のアドレスと、下位層のアドレスとの対応関係を記憶するアドレス記憶部26Aと、前記アドレス記憶部を参照して、前記転送装置を介した転送対象のパケットの上位層の宛先アドレスから、対応する下位層アドレスを検索するアドレス管理部25Aと、前記転送対象のパケットの転送経路上のいずれかの転送装置に、前記転送対象のパケットの下位層の宛先アドレスフィールドに、前記検索した下位層のアドレスを書き込む処理を行わせる転送規則を設定する転送規則設定部23Aとを備えている。
制御装置20Aは、例えば、端末50と通信先60間の転送装置に、宛先IPアドレスとして通信先60のIPアドレスが設定されているパケットを端末50から通信先60側に転送する転送規則を設定する。さらに、制御装置20Aは、端末50と通信先60間の転送装置のうちのいずれか(図1では、右端の転送装置10A)に、パケットヘッダの宛先MACアドレスフィールドに、通信先60のIPアドレスに対応付けられている通信先60のMACアドレス(XX:XX:XX:XX:XX:XX)を書き込む処理を行わせる。
以上により、下位層アドレスのユニーク性(一意性)が担保されていない環境下での端末50から通信先60へのパケット転送が実現される。なお、図1においては、転送装置10AのMACアドレスは省略されているが、上記のように転送装置10Aは、宛先IPアドレスを用いて転送対象のパケットを特定しているので、仮に転送装置10AのMACアドレスが通信先のMACアドレスと同一であっても差し支えはない。但し、通信先60から端末50への逆方向の通信を実現するには、送信元のMACアドレスも書き換える必要がある。これについては、後述する各実施形態において詳細に説明する。
[第1の実施形態]
続いて、本発明の第1の実施形態について図面を参照して詳細に説明する。図2は、本発明の第1の実施形態の構成を表した図である。図2を参照すると、端末50、51間に配置された複数のスイッチ10と、これら複数のスイッチ10を制御するコントローラ20とを含む構成が示されている。
スイッチ10は、パケットを特定する照合規則と、適用する処理内容とを対応付けた転送規則(フローエントリ)に従いパケットを転送する、上述した転送装置10Aに相当する装置である。以下、本実施形態では、スイッチ10として、非特許文献1のOFSを用いるものとして説明するが、その他同等のパケット処理をなしうる通信装置を用いることが可能である。
コントローラ20は、上述したスイッチ10に転送規則を設定することにより、スイッチ10を制御する、上述した制御装置20Aに相当する装置である。以下、本実施形態では、コントローラ20として、非特許文献1のOFCをベースにした装置を用いるものとして説明するが、その他同等の制御をなしうるサーバ等を用いることが可能である。
図3は、本発明の第1の実施形態のコントローラ(制御装置)の構成を表わしたブロック図である。図3を参照すると、スイッチ管理部31と、ネットワーク中の各スイッチ10と通信を行うセキュアチャネル(通信部)32と、を備えた構成が示されている。
スイッチ管理部31は、入力パケット処理部21と、パス構築部22と、転送規則設定部23と、パケット送出部24と、アドレスデータベース管理部(アドレスDB管理部)25と、アドレスデータベース(アドレスDB)26と、パス計算部27と、トポロジー管理部28と、ARP代理応答部29と、インターフェース対応表記憶部30とを備えて構成される。
入力パケット処理部21は、セキュアチャネル32を介して、スイッチ10からコントローラ20へ送られてきたパケットが入力されるモジュールである。具体的には、入力パケット処理部21は、入力パケットの種別を判別し、ARP Requestパケット(ARP要求パケット)であれば、ARP代理応答部29へ当該パケットを転送する。一方、入力パケットがそれ以外のパケットであれば、入力パケット処理部21は、パス構築部22へ当該パケットを転送する。また、入力パケット処理部21は、入力パケットの入力スイッチ(送信元)、ポート、送信元MACアドレスおよび送信元IPアドレスの組を、アドレスDB管理部25へと送る。
パス構築部22は、入力パケット処理部21から送られてきたパケットに対して、アドレスDB管理部25に対し、問い合わせを行い、パケットの終点スイッチを決定し、パス計算部27に対して、前記終点スイッチまでの最短パスの計算を依頼する。パス計算部27から計算結果である最短パスを受信すると、パス構築部22は、前記最短パスに沿ってパケットを転送させるための転送規則を生成し、転送規則設定部23へと送る。
転送規則設定部23は、セキュアチャネル32を介して、パス構築部22から送られてきた転送規則を各スイッチ10へと送信する。この転送規則の送信には、上述した非特許文献2のFlow−modメッセージを用いることができる。
パケット送出部24は、ARP代理応答部29の指示に従い、セキュアチャネル32を介して、指定されたスイッチに対し、ARP代理応答部29から送られてきたパケットを指定のポートから出力するよう指示する。
アドレスDB管理部25は、アドレスDB26に、入力パケット処理部21から送られてくる入力スイッチ、ポート、パケットの送信元MACアドレス及び送信元IPアドレスを含むエントリを登録する。また、アドレスDB管理部25は、パス構築部22からの検索要求に対し、アドレスDB26を検索し、パス構築部22に該当するエントリを応答する。
アドレスDB26は、少なくともスイッチ、ポート、パケットの送信元MACアドレス及び送信元IPアドレスを含むエントリを格納するデータベースである。図4は、アドレスDB26に登録されるエントリの構成例を示す図である。図4のスイッチフィールド81およびポートフィールド82は、MACアドレスフィールド83、IPアドレスフィールド84に記述されたアドレスを持つ端末がどのスイッチのどのポートの先に接続されているかを表している。ここでは、スイッチの識別に、非特許文献2のオープンフロープロトコルにおけるDatapath IDを用いている。例えば、図4の一番目のエントリは、Datapath IDが0x11であるスイッチの2番目のポートに、MACアドレスXX:XX:XX:XX:XX:XX、IPアドレス192.168.1.1を持つ端末が接続されていることを示している。このようなエントリを参照することにより、例えば、宛先IPアドレスが192.168.1.1であるパケットの終点となるスイッチ及びそのポートと、接続先の端末のMACアドレスを特定することが可能となっている。
パス計算部27は、転送経路計算部として機能し、パス構築部22からの要求に従い、トポロジー管理部28に格納されているネットワークトポロジー情報を元に、始点から終点までのパスを計算し、その結果をパス構築部22へと返す。
トポロジー管理部28は、コントローラ20が管理するスイッチ群にて構成されるネットワークのトポロジー情報を管理しており、パス計算部27に対しその情報を提供する。ここで、トポロジー情報とは、このネットワーク中に含まれるスイッチに関する情報と、スイッチ同士がどのように接続されているかを示す情報である。これらの情報は、管理者が事前に手動で格納してもよいし、各スイッチに情報交換を行わせるなどしてコントローラが自律的に収集した上で格納してもよい。
ARP代理応答部29は、入力パケット処理部21から送られてきたARP要求パケットに対してARP応答パケットを作成し、パケット送出部24へと送る。
インターフェース対応表記憶部30は、ARP代理応答部29が作成するARP応答中に含めるMACアドレスを、ARP応答を出力するスイッチ、ポート毎に格納したテーブルであるインターフェース対応表を記憶する。図5は、コントローラ(制御装置)に保持されるインターフェース対応表の一例を示す図である。図5のスイッチフィールド91には、スイッチを識別するための情報、例えば、上述したオープンフロープロトコルのDatapath ID等が格納される。ポートフィールド92にはポート番号が格納される。MACアドレスフィールド93には、当該スイッチのポートでARP要求パケットを受信した場合に応答すべきMACアドレスが格納される。例えば図5の1番目のエントリは、Datapath IDが0x11であるスイッチの2番目のポートへ届いたARP要求パケットに対して、MACアドレスAA:AA:AA:AA:AA:AAを応答すべきことを示している。
続いて、本実施形態の動作について図面を参照して詳細に説明する。図6は、スイッチ10が新規パケットを受信し、これをコントローラ20に転送した場合の動作の概略を表すフローチャートである。
外部接続ポートからパケットを受信したスイッチ10は、自身のフローテーブルを参照し、受信パケットにマッチする転送規則(フローエントリ)を検索する。受信パケットにマッチする転送規則が存在した場合、当該転送規則中のアクションに記述された処理を、受信パケットに対して施す(図6には表示せず)。一方、対応するフローエントリがなかった場合、スイッチ10は、セキュアチャネル経由で、コントローラ20へと受信パケットを送信する(ステップS001)。このコントローラ20への受信パケットの送信には、上述した非特許文献2のPacket−inメッセージを用いることができる。
スイッチから送られてきた受信パケットを受け取ったセキュアチャネル32は、そのパケットを入力パケット処理部21へと送る(ステップS002)。
入力パケット処理部21は、パケットを受信したスイッチ10の識別子と、そのポート番号と、パケット中の送信元IPアドレスと、送信元MACアドレスとを、アドレスDB管理部25へと送る(ステップS003)。
次に、アドレスDB管理部25は、アドレスDB26に、入力パケット処理部21から送られてきたIPアドレスと同一のIPアドレスのエントリが存在するか否かを確認する(ステップS004)。
入力パケット処理部21から送られてきたIPアドレスと同一のIPアドレスのエントリが存在する場合、アドレスDB管理部25は、当該既存のエントリに、ステップS003で送られてきたスイッチ10の識別子と、そのポート番号と、パケット中の送信元MACアドレスとを上書きする(ステップS005)。
一方、アドレスDB26に、入力パケット処理部21から送られてきたIPアドレスと同一のIPアドレスのエントリが存在しない場合、アドレスDB管理部25は、アドレスDB26に、ステップS003で送られてきたスイッチ10の識別子と、そのポート番号と、パケット中の送信元IPアドレスと、送信元MACアドレスとを含む新しいエントリを登録する(ステップS006)。
なお、上記ステップS003〜ステップS006の処理は、アドレスDB26に、パケットを送信してきた端末のIPアドレスとMACアドレスの対応関係や、当該端末と接続するスイッチ10とそのポートに関する情報を学習するフェーズである。これらの情報は、例えば管理者が予めこれらの情報を設定しておいてもよいし、管理システム等、他のシステムで生成した情報を利用するようにしてもよい。これらの場合、上記ステップS003〜ステップS006の処理を省略できる。
次に、入力パケット処理部21は、受信パケットがARP要求パケットである否かを確認する(ステップS007)。ここで、受信パケットがARP要求パケットであった場合、このパケットはARP代理応答部29へと送られ、ARP代理応答処理が行われる(ステップS008;図7参照)。
一方、受信パケットがARP要求パケットでない場合、受信パケットは、パス構築部22へと送られて、パス構築処理が行われる(ステップS009;図9参照)。
続いて、図6のステップS008におけるARP代理応答処理の詳細について、図7を参照して詳細に説明する。
ARP代理応答部29は、入力パケット処理部21から送られてきたARP要求パケットがどのスイッチのどのポートから送られてきたのかを調べる(ステップS101)。ARP要求パケットの送信元のスイッチやそのポートは、入力パケット処理部21に問い合わせることで取得できる。また、入力パケット処理部21が、ARP代理応答部29に対し、ARP要求パケットとともにスイッチやそのポート情報を送信することとしてもよい。
次に、ARP代理応答部29は、ステップS101で調べた結果であるスイッチの識別子およびポート番号をキーに、インターフェース対応表記憶部30のインターフェース対応表から該当エントリを検索し、対応するMACアドレスを取得する(ステップS102)。
次に、ARP代理応答部29は、ステップS102の検索結果であるMACアドレスを応答とするARP応答パケットを作成し、パケット送出部24へと送る(ステップS103)。
パケット送出部24は、セキュアチャネル32を介して、ステップS101で調べたスイッチに対し、ステップS101で調べたポートから、ステップS103で作成したARP応答パケットの出力を指示するメッセージを出力する(ステップS104)。このARP応答パケットの出力指示には、上述した非特許文献2のPacket−outメッセージを用いることができる。
前記ARP応答パケットの出力指示を受信したスイッチ10は、指定されたポートからARP応答パケットを出力する(ステップS105)。
図8は、ARP要求パケットおよびARP応答パケットの授受の流れを模式的に示した図である。端末50が送信したARP要求(パケット)41を受信したスイッチ10は、ARP要求(パケット)を含んだPacket−inメッセージ42を、セキュアチャネル32を通してコントローラ20へと送信する。
コントローラ20は、前記図7のステップS101〜S103の処理を実施する。さらに、コントローラ20は、図7のステップS104において説明したように、ARP応答(パケット)を含んだPacket−outメッセージ44をスイッチ10へと送信する。
スイッチ10は、図7のステップS105において説明したように、Packet−outメッセージ44に従い、ARP応答(パケット)44を指定のポートから出力する。
以上のようにしてネットワークに接続された端末からのARP要求は、スイッチ10によりコントローラ20へと転送され、コントローラ内部のARP代理応答部29にて、インターフェース対応表に格納されたMACアドレスが応答される。
続いて、図6のステップS009におけるパス構築部のパス構築処理の詳細について、図9を参照して詳細に説明する。図9を参照すると、パス構築部22は、入力パケット処理部21から送られてきた受信パケットの宛先IPアドレスをキーに、アドレスDB管理部25を介してアドレスDB26を検索し、該当するIPアドレスを持つ端末が接続されているスイッチ(即ち、終点スイッチ)の識別子、ポート番号および該当するIPアドレスを持つ端末のMACアドレスを取得する(ステップS201)。
次にパス構築部22は、ステップS201で得たスイッチの識別子、ポート番号をキーに、インターフェース対応表記憶部30のインターフェース対応表から該当エントリを検索し、該当するスイッチ(即ち、終点スイッチ)のポートに割り当てられているMACアドレスを取得する(ステップS202)。
ステップS201で取得したMACアドレスは、図6のステップS001〜S006で説明したように、端末のIPアドレスとMACアドレスの対応関係を学習した結果から得られた送信先の端末のMACアドレスである。一方、ステップS202で取得したMACアドレスは、スイッチのポートに割り当てられたMACアドレスであり、本実施形態では、送信元のMACアドレスとして用いる。
パス構築部22は、ステップS201で取得したMACアドレスを宛先に、ステップS202で取得したMACアドレスを送信元に、それぞれ書き換える処理を行わせる転送規則を生成し、転送規則設定部23に出力する。そして、転送規則設定部23は、セキュアチャネル32を介して、ステップS201で検索したスイッチに対し、前記転送規則を送信する(ステップS203)。
次にパス計算部27は、パス構築部22からの要求に応じて、受信パケットをはじめに受け取ったスイッチを始点とし、ステップS201で得たスイッチを終点としたパス計算を行う(ステップS204)。
このパス計算は、トポロジー管理部28にて保持しているネットワークトポロジー情報を元にダイクストラ法等を用いて行われる。ここでは、ダイクストラ法等を用いるものとして説明するが、他のパス計算アルゴリズムを用いてもよい。
パス構築部22は、パス計算部27の計算結果を受け取ると、前記パス上の各スイッチに、前記パスに沿って宛先IPアドレスを持つパケットをそれぞれ転送させる転送規則を生成し、転送規則設定部23に出力する。そして、転送規則設定部23は、セキュアチャネル32を介して、前記パス上の各スイッチに対して前記転送規則を送信する(ステップS205)。
以上の処理の流れについて、図10〜図13を用いて、より具体的に説明する。例えば、図10のスイッチ10(0x21)が、端末51から、宛先IPアドレスが192.168.Z.15であるパケットを受信した場合を考える。
図11は、図10の接続関係に対応するアドレスDB26の構成例を示す図である。図11を参照すると、IPアドレス192.168.Z.15を持つ端末は、スイッチ10(0x25)のポート#2に接続されている端末55であり、この端末55のMACアドレスはZZ:ZZ:ZZ:ZZ:ZZ:15であることがわかる。
図12は、図10の接続関係に対応するインターフェース対応表の構成例を示す図である。次に図12のインターフェース対応表を参照すると、スイッチ10(0x25)のポート#2に対応するMACアドレスは、XX:XX:XX:XX:XX:25 であることがわかる。
このとき、端末51からのパケットを受信したスイッチ10(0x21)が始点、スイッチ10(0x25)が終点となる。ダイクストラ法を用いることで、図13に示すようなスイッチ10(0x21)を始点とし、スイッチ10(0x23)を経由してスイッチ10(0x25)へと到る最短パスツリーを計算することができる。
上記パスに沿ったパケット転送を行うため、スイッチ10(0x21)に、宛先IPアドレスが192.168.Z.15のパケットを、スイッチ10(0x23)と接続するポート#2に出力する転送規則が送信される。同様に、スイッチ10(0x23)にはスイッチ10(0x25)と接続するポート#4に、宛先IPアドレス192.168.Z.15のパケットを出力する転送規則が送信される。スイッチ10(0x25)には、送信元MACアドレスをXX:XX:XX:XX:XX:25(スイッチ10(0x25)のポート#2のMACアドレス)、送信先MACアドレスをZZ:ZZ:ZZ:ZZ:ZZ:15へと書き換えを実施した後、端末55と接続するポート#2に宛先IPアドレス192.168.Z.15へのパケットを出力する転送規則が送信される。
以上のように、スイッチ10群を制御することにより、下位層のアドレスがユニークでなくとも、目的とする宛先までパケットを転送することが可能となる。
なお、上記した本実施形態では、上位層のアドレスをIPアドレスとし、下位層のアドレスをMACアドレスとして説明を行ったが、上位層アドレス、下位層アドレスのこの組合せに限られるものではない。例えば、上位層アドレスとして、IPv6アドレスを用いてもよく、任意の上位層アドレス、下位層アドレスと用いても同様に実施可能である。また、上記した実施形態では、コントローラ20がARP代理応答部29を備え、IPアドレスに対応するMACアドレスを応答するものとして説明したが、その他上位層アドレスに対して下位層の上位層のアドレスの問い合わせに応答する上記ARP代理応答部29に相当する下位層アドレス応答部を備えても良い。
[第2の実施形態]
続いて、上記した第1の実施形態のパス構築処理(図9参照)に変更を加え、MACアドレスの書き換えを先に行うようにした本発明の第2の実施形態について図面を参照して詳細に説明する。本発明の第2の実施形態は、上記した第1の実施形態と略同様の構成にて実現できるので、以下、その相違点を中心に説明する。
図14は、本発明の第2の実施形態のパス構築処理の流れを示すフローチャートである。図9に示した第1の実施形態のパス構築処理の流れと比較すると、ステップS201、S202の処理は第1の実施形態と同様であり、ステップS203A以降の処理が異なっている。
本実施形態では、パス構築部22は、ステップS201で得たMACアドレス(送信先端末のMACアドレス)を宛先、ステップS202で得たMACアドレス(終点スイッチの出力ポートのMACアドレス)を送信元としたMACアドレスの書き換えを行う転送規則を生成し、転送規則設定部23に出力する。そして、転送規則設定部23は、セキュアチャネル32を介して、受信パケットを入力したスイッチに対して前記転送規則を送信する(ステップS203A)。
次に、パス計算部27は、受信パケットの入力スイッチを始点、ステップS201で得たスイッチを終点とした最短パスを計算する(ステップS204A)。
そして、パス構築部22は、最短パス上の各スイッチについてそれぞれ、ステップS203Aで書き換えた送信元MACアドレスが設定されているパケットを最短パス上に沿って転送する転送規則を生成し、転送規則設定部23に出力する。転送規則設定部23は、最短パス上の各スイッチに対して、前記転送規則を送信する(ステップS205A)。
以上の処理の流れについて、再度図10〜図13を用いて、より具体的に説明する。例えば、図10のスイッチ10(0x21)が、端末51から、宛先IPアドレスが192.168.Z.15であるパケットを受信した場合を考える。
図11を参照すると、IPアドレス192.168.Z.15を持つ端末は、スイッチ10(0x25)のポート#2に接続されている端末55であり、この端末55のMACアドレスはZZ:ZZ:ZZ:ZZ:ZZ:15であることがわかる。
図12は、図10の接続関係に対応するインターフェース対応表の構成例を示す図である。次に図12のインターフェース対応表を参照すると、スイッチ10(0x25)のポート#2に対応するMACアドレスは、XX:XX:XX:XX:XX:25であることがわかる。更にスイッチ10(0x21)からスイッチ10(0x25)までの最短パスツリーは、図13のようになる。
図14のステップS203Aに示したように、本実施形態では、スイッチ10(0x21)がコントローラから受信した転送規則に従い、IPアドレス192.168.Z.15のパケットの送信元MACアドレスをXX:XX:XX:XX:XX:25と書き換え、送信先MACアドレスをZZ:ZZ:ZZ:ZZ:ZZ:15へと書き換える。そして、スイッチ10(0x21)は、ポート#2から、当該書き換え後のパケットを出力する。
そして、スイッチ10(0x23)にはスイッチ10(0x25)と接続するポート#4に、送信元MACアドレスがXX:XX:XX:XX:XX:25のパケットを出力する転送規則が送信される。スイッチ10(0x25)には、端末55と接続するポート#2に送信元MACアドレスがXX:XX:XX:XX:XX:25のパケットを出力する転送規則が送信される。
以上のように、本実施形態では、終点のスイッチよりも前のスイッチにおいてMAC書き換えを行ない、パス上の後続するスイッチにおいて送信元MACアドレスを参照してパケット転送を行うようにしている。また、この送信元MACアドレスは、このネットワークにおいて外部の端末と接続するスイッチのポートの数だけになる(図10の例でいえば5つ)。
第1の実施形態では、転送対象のパケットを特定するために、多くの異なる宛先IP アドレスを取り扱う必要があったが、本実施形態では、送信元MACアドレスでパケットを特定できるため、各スイッチに設定する転送規則の数を低減し、その検索処理を高速化することができる。
[第3の実施形態]
続いて、上記した第2の実施形態におけるパス構築処理を事前に行うようにした本発明の第3の実施形態について図面を参照して詳細に説明する。本発明の第3の実施形態は、実際に通信が行われる前にパスと対応する転送規則を設定する点で相違し、その他は、上記した第2の実施形態と略同様の構成にて実現できるので、以下、その相違点を中心に説明する。
上記した第2の実施形態では、パケットをスイッチ10が受信した際に行われる一連の処理の中で、最短パスの計算を行ない(図14のステップS204A参照)、そのパス上のスイッチに、当該パスを実現する転送規則の設定を行なっていた(図14のステップS205A参照)。
本実施形態では、前記パスの逆方向のパスの構築処理を事前に行っておくことにより、パケット受信からパケット転送が可能となるまでの時間の削減を実現する。
図15は、本発明の第3の実施形態のパス構築処理の流れを示すフローチャートである。図15を参照すると、まず、パス構築部22が、インターフェース対応表記憶部30に記憶されたインターフェース対応表から処理済でないエントリをひとつ選択する(ステップS301)。
次に、パス構築部22が、パス計算部27に対し、ステップS301で選択したエントリ中のスイッチを終点とする逆方向の最短パスツリーの計算を依頼する(ステップS302)。
逆方向のパス計算結果を受け取ると、パス構築部22は、ステップS302で計算した最短パスツリーに沿って、ステップS301で選択したエントリ中のMACアドレスを送信元とするパケットを転送する転送規則を作成し、転送規則設定部23に出力する。転送規則設定部23は、前記最短パス上の各スイッチに対し、前記転送規則を送信する(ステップS303)。
次に、パス構築部22は、すべてのエントリに対して、逆方向のパスの計算と転送規則の送信が行われたかを調べ、行われていなければステップS301へ戻って、ステップS302、S303の処理を行う。一方、すべてのエントリに対して、逆方向のパスの計算と転送規則の送信が行われていれば、すべての処理を終了する。
なお、以上の説明では、逆方向のパスの計算と、転送規則の送信を行うものとして説明したが、順方向のパスの計算と、転送規則の送信も同様の手順で行うことができる。このような一連の処理を、コントローラ20の起動時などに事前に行っておくことで、図9(図14)のステップS203(S203A)〜S205(S205A)をその都度実行せずに済むことになる。
例えば、図10の接続関係に対応する図12のインターフェース対応表の一番目のエントリの場合、スイッチ0x21、ポート#1のMACアドレスがXX:XX:XX:XX:XX:21となっている。図16は、スイッチ0x21を終点とする逆方向の最短パスツリーであり、この最短パスツリーに沿ってパケットが転送されるよう転送規則が設定される。具体的には、スイッチ0x21は、ポート#1へ、スイッチ0x22はポート#1へ、スイッチ0x23はポート2へ、スイッチ0x24はポート1へ、スイッチ0x25はポート4へそれぞれ送信元MACアドレスがXX:XX:XX:XX:XX:21であるパケットを転送する転送規則が設定される。
以上のように、本実施形態では、上述した第1、第2の実施形態と比較して、パスを事前に構築しておくようにしているため、パケット受信からパケット転送が可能となるまでの時間の削減することが可能となっている。
[第4の実施形態]
本発明の第1の実施形態では、図9のステップS201において、パス構築部22が宛先IPアドレスをキーにアドレスDB26の検索を行っている。宛先IPアドレスを持つ端末がオープンフローネットワークに直接接続されていれば、この検索で対応するエントリが見つかるはずである。しかしながら、宛先IPアドレスの端末がルータ装置などを介して接続されており、オープンフローネットワークに直接接続されていない場合、アドレスDB26から該当するエントリを検索できないことが考えられる。
続いて、このようなケースにも対応できるようにした本発明の第4の実施形態について図面を参照して詳細に説明する。本発明の第4の実施形態は、上記した第1〜第3の実施形態と略同様の構成にて実現できるので、以下、その相違点を中心に説明する。
上記のようなケースに対応するために、本発明の第4の実施形態のコントローラは、図17に示す経路表を図示省略する記憶手段に保持する。図9のステップS201において該当するエントリが存在しない場合、パス構築部22は、宛先IPアドレスに対するロンゲストプレフィックスマッチ検索をこの経路表に対して行い、次転送先を決定する。
ここで、ロンゲストプレフィックスマッチ検索とは、検索により複数のエントリがマッチする場合、プレフィックス長が一番長いエントリを選択する検索手法である。例えば、宛先IPアドレスが192.168.11.1である場合、図17の2番目のエントリと3番目のエントリがマッチするが、プレフィックス長が一番長い3番目のエントリが選択される。従って、その次転送先は172.16.1.254となる。
本実施形態では、この次転送先アドレスに対し、再度、アドレスDB26を参照し、下位層アドレスを決定する。以降の処理は、本発明の第1の実施形態における図9のステップS202以降と同じである。
以上のように本実施形態によれば、宛先IPアドレスを持つ端末がオープンフローネットワークに直接接続されていないようなケースにも対応することが可能となる。
また、上記した第4の実施形態のような経路表を持つ場合、図9のステップS205を以下のように変更することができる。第1の実施形態では、図9のステップS205で送信される転送規則において、受信パケットとの照合する部分に宛先IPアドレスを用いていた。この宛先IPアドレスの代わりに、先の経路表検索で得られたエントリにおけるプレフィックス及びプレフィックス長を用いてもよい。例えば、宛先IPアドレスが192.168.11.1の場合、プレフィックス/プレフィックス長が192.168.11.0/24に適合するパケットを処理対象とする転送規則が生成される。この場合、宛先が192.168.11.2であるパケットも同様に処理されることになり、スイッチのフローエントリ数を節約することができる。
以上、本発明の各実施形態を説明したが、本発明は、上記した実施形態に限定されるものではなく、本発明の基本的技術的思想を逸脱しない範囲で、更なる変形・置換・調整を加えることができる。例えば、上記した各実施形態で示したスイッチ(転送装置)、コントローラ(制御装置)の数や接続関係は、本発明を簡単に説明するために示したものであり、適宜変更することが可能である。
また、上記した各実施形態では関連技術であるオープンフローを参照しているが、本発明はオープンフローを用いることに限定されない。例えば、オープンフローに限らず、パケットの転送経路を制御装置が集中制御する通信アーキテクチャにも本発明を適用できる。
なお、上記の特許文献および非特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素(各請求項の各要素、各実施例の各要素、各図面の各要素等を含む)の多様な組み合わせ、ないし、選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
10 スイッチ
10A 転送装置
20 コントローラ
20A 制御装置
21 入力パケット処理部
22 パス構築部
23 転送規則設定部
23A 転送規則設定部
24 パケット送出部
25 アドレスデータベース管理部(アドレスDB管理部)
25A アドレス管理部
26 アドレスデータベース(アドレスDB)
26A アドレス記憶部
27 パス計算部
28 トポロジー管理部
29 ARP代理応答部
30 インターフェース対応表記憶部
31 スイッチ管理部
32 セキュアチャネル(通信部)
50〜55 端末
60 通信先
81、91 スイッチフィールド
82、92 ポートフィールド
83、93 MACアドレスフィールド
84 IPアドレスフィールド
100 フローテーブル

Claims (15)

  1. 転送規則に従いパケットを転送する転送装置群と接続され、
    上位層のアドレスと、下位層のアドレスとの対応関係を記憶するアドレス記憶部と、
    前記アドレス記憶部を参照して、前記転送装置を介した転送対象のパケットの上位層の宛先アドレスから、対応する下位層アドレスを検索するアドレス管理部と、
    前記転送対象のパケットの転送経路上のいずれかの転送装置に、前記転送対象のパケットの下位層の宛先アドレスフィールドに、前記検索した下位層のアドレスを書き込む処理を行わせる転送規則を設定する転送規則設定部とを、備えた転送装置の制御装置。
  2. さらに、前記転送装置を介して受信した、上位層の宛先アドレスに対応する下位層のアドレスの問い合わせに対して、前記転送装置を介して予め用意した下位層アドレスを応答する下位層アドレス応答部を備える請求項1の転送装置の制御装置。
  3. 前記転送装置のうち、外部と接続する転送装置のポート毎に、前記予め用意した下位層アドレスを対応付けたインターフェイス対応表を記憶するインターフェイス対応表記憶部を備え、
    前記下位層アドレス応答部は、前記インターフェイス対応表記憶部を参照して、前記上位層のアドレスに対応する下位層のアドレスの問い合わせを受けた転送装置とそのポート情報に基づいて、前記応答する下位層アドレスを決定する請求項2の転送装置の制御装置。
  4. 前記転送規則設定部は、さらに、前記インターフェイス対応表から前記転送対象のパケットを受信した転送装置とそのポートに対応する下位層のアドレスを検索し、前記転送対象のパケットの下位層の送信元アドレスフィールドに、前記検索した下位層のアドレスを書き込む処理を行わせる転送規則を設定する請求項3の転送装置の制御装置。
  5. 前記転送規則設定部は、さらに、
    前記転送対象のパケットを受信した転送装置から終点となる転送装置までの転送経路に沿って前記パケットを転送するための第2の転送規則を生成し、前記転送経路上の各転送装置に対して、前記第2の転送規則を設定する請求項1から4いずれか一の転送装置の制御装置。
  6. 前記転送規則設定部は、前記第2の転送規則として、上位層の宛先アドレスもしくはそのプレフィックスを用いて転送対象のパケットを特定する転送規則を生成する請求項5の転送装置の制御装置。
  7. 前記転送規則設定部は、前記第2の転送規則として、下位層の送信元アドレスを用いて転送対象のパケットを特定する転送規則を生成する請求項5の転送装置の制御装置。
  8. さらに、前記転送対象のパケットを受信した転送装置から、終点となる転送装置へと至る転送経路を計算する転送経路計算部を備える請求項1から7いずれか一の転送装置の制御装置。
  9. 前記アドレス記憶部の上位層のアドレスと下位層のアドレスには、前記上位層のアドレスと下記層のアドレスを持つ外部装置と接続する転送装置とのそのポート情報が対応付けられており、
    前記アドレス記憶部を参照して、前記転送対象のパケットの上位層の宛先アドレスから、前記終点となる転送装置およびポートを決定する請求項8の転送装置の制御装置。
  10. 前記アドレス管理部は、前記転送対象のパケットの上位層の送信元アドレスおよび下位層の送信元アドレスの組を、前記アドレス記憶部に登録する請求項1から9いずれか一の転送装置の制御装置。
  11. 前記アドレス管理部は、さらに、前記上位層のアドレスと下記層のアドレスを持つ外部装置と接続する転送装置とのそのポート情報を前記上位層のアドレスと下記層のアドレスに対応付けて前記アドレス記憶部に登録する請求項10の転送装置の制御装置。
  12. 前記転送経路計算部は、さらに、前記終点となる転送装置を始点とし、前記転送対象の前記転送対象のパケットを受信した転送装置を終点とする逆方向の転送経路を計算し、
    前記転送規則設定部は、さらに、
    前記逆方向の転送経路に沿って前記パケットを転送するための第3の転送規則を生成し、前記逆方向の転送経路上の各転送装置に対して、前記第3の転送規則を設定する請求項8から11いずれか一の転送装置の制御装置。
  13. 転送規則に従いパケットを転送する転送装置群と、
    上位層のアドレスと、下位層のアドレスとの対応関係を記憶するアドレス記憶部と、
    前記アドレス記憶部を参照して、前記転送装置を介した転送対象のパケットの上位層の宛先アドレスから、対応する下位層アドレスを検索するアドレス管理部と、
    前記転送対象のパケットの転送経路上のいずれかの転送装置に、前記転送対象のパケットの下位層の宛先アドレスフィールドに、前記検索した下位層のアドレスを書き込む処理を行わせる転送規則を設定する転送規則設定部とを、備えた制御装置と、を含む通信システム。
  14. 転送規則に従いパケットを転送する転送装置群と接続された制御装置が、
    上位層のアドレスと、下位層のアドレスとの対応関係を記憶するアドレス記憶部を参照して、前記転送装置を介した転送対象のパケットの上位層の宛先アドレスから、対応する下位層アドレスを検索するステップと、
    前記転送対象のパケットの転送経路上のいずれかの転送装置に、前記転送対象のパケットの下位層の宛先アドレスフィールドに、前記検索した下位層のアドレスを書き込む処理を行わせる転送規則を設定するステップとを、含む転送装置の制御方法。
  15. 転送規則に従いパケットを転送する転送装置群と接続された制御装置を構成するコンピュータに、
    上位層のアドレスと、下位層のアドレスとの対応関係を記憶するアドレス記憶部を参照して、前記転送装置を介した転送対象のパケットの上位層の宛先アドレスから、対応する下位層アドレスを検索する処理と、
    前記転送対象のパケットの転送経路上のいずれかの転送装置に、前記転送対象のパケットの下位層の宛先アドレスフィールドに、前記検索した下位層のアドレスを書き込む処理を行わせる転送規則を設定する処理とを実行させるプログラム。
JP2014518855A 2011-10-21 2012-10-19 転送装置の制御装置、転送装置の制御方法、通信システムおよびプログラム Expired - Fee Related JP5994851B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014518855A JP5994851B2 (ja) 2011-10-21 2012-10-19 転送装置の制御装置、転送装置の制御方法、通信システムおよびプログラム

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2011231820 2011-10-21
JP2011231820 2011-10-21
JP2014518855A JP5994851B2 (ja) 2011-10-21 2012-10-19 転送装置の制御装置、転送装置の制御方法、通信システムおよびプログラム
PCT/JP2012/006714 WO2013057960A1 (en) 2011-10-21 2012-10-19 Control apparatus for forwarding apparatus, control method for forwarding apparatus, communication system, and program

Publications (2)

Publication Number Publication Date
JP2014533001A true JP2014533001A (ja) 2014-12-08
JP5994851B2 JP5994851B2 (ja) 2016-09-21

Family

ID=48140620

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014518855A Expired - Fee Related JP5994851B2 (ja) 2011-10-21 2012-10-19 転送装置の制御装置、転送装置の制御方法、通信システムおよびプログラム

Country Status (4)

Country Link
US (1) US20140241368A1 (ja)
EP (1) EP2769512A4 (ja)
JP (1) JP5994851B2 (ja)
WO (1) WO2013057960A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017228935A (ja) * 2016-06-22 2017-12-28 日本電信電話株式会社 パケット転送制御装置、パケット転送制御方法、およびパケット転送制御プログラム
JP2018527776A (ja) * 2015-09-15 2018-09-20 グーグル エルエルシー コンピュータネットワークにおいてパケットを処理するためのシステムおよび方法

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2604995C1 (ru) * 2012-11-28 2016-12-20 Нек Корпорейшн Коммутационное устройство, способ и программа управления настройкой vlan
US9806945B2 (en) * 2013-06-22 2017-10-31 Extreme Networks, Inc. mDNS support in unified access networks
CN104579968B (zh) 2013-10-26 2018-03-09 华为技术有限公司 Sdn交换机获取精确流表项方法及sdn交换机、控制器、系统
WO2015077976A1 (zh) * 2013-11-29 2015-06-04 华为技术有限公司 一种流表项的下发方法及装置
US10367725B2 (en) * 2013-12-21 2019-07-30 Hewlett Packard Enterprise Development Lp Network programming
JP6260285B2 (ja) * 2014-01-10 2018-01-17 富士通株式会社 制御装置および転送制御方法
KR20150113597A (ko) * 2014-03-31 2015-10-08 한국전자통신연구원 Arp 패킷 처리 방법 및 장치
WO2016049802A1 (en) * 2014-09-29 2016-04-07 Hewlett-Packard Development Company, L.P. Adaptive split and compression
US20160112311A1 (en) * 2014-10-20 2016-04-21 Gainspan Corporation Enhanced connectivity to end devices via access points of wireless local area networks (wlan)
KR20160095554A (ko) * 2015-02-03 2016-08-11 한국전자통신연구원 Sdn 기반의 물리 주소 결정장치 및 그 방법
US20160359720A1 (en) * 2015-06-02 2016-12-08 Futurewei Technologies, Inc. Distribution of Internal Routes For Virtual Networking
US10558808B2 (en) * 2016-03-03 2020-02-11 Qualcomm Incorporated Methods and apparatus for packet-based validation of control-flow transfers for hardware control-flow enforcement
WO2018230608A1 (ja) * 2017-06-15 2018-12-20 日本電気株式会社 通信システム、通信制御装置、スイッチ装置、通信制御方法、及び、記録媒体
CN114884859B (zh) * 2022-04-19 2024-01-09 西安大衡天成信息科技有限公司 一种支持指挥通信模拟训练的网络状态控制装置及方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010110235A1 (ja) * 2009-03-26 2010-09-30 日本電気株式会社 経路設定サーバ、経路設定方法、及び経路設定プログラム
JP2011146982A (ja) * 2010-01-15 2011-07-28 Nec Corp コンピュータシステム、及びコンピュータシステムの監視方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8761152B2 (en) * 2008-10-14 2014-06-24 William Marsh Rice University Method and system for scalable ethernet
US8989187B2 (en) * 2010-06-04 2015-03-24 Coraid, Inc. Method and system of scaling a cloud computing network
US9525647B2 (en) * 2010-07-06 2016-12-20 Nicira, Inc. Network control apparatus and method for creating and modifying logical switching elements
US9001827B2 (en) * 2010-12-17 2015-04-07 Big Switch Networks, Inc. Methods for configuring network switches

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010110235A1 (ja) * 2009-03-26 2010-09-30 日本電気株式会社 経路設定サーバ、経路設定方法、及び経路設定プログラム
JP2011146982A (ja) * 2010-01-15 2011-07-28 Nec Corp コンピュータシステム、及びコンピュータシステムの監視方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
JPN6016027794; OpenFlow Switch Specification version 1.1.0, 20110228, pp.1-56 *
JPN7016002069; Nick McKeown et al.: 'OpenFlow:Enabling Innovation in Campus Networks' ACM SIGCOMM Computer Communication Review volume 38 Issue 2, 200804, pp.69-74, ACM *
JPN7016002070; Martin Casado et al.: 'Ethane:Taking Control of the Enterprise' SIGCOMM'07 proceedings of the 2007 conference on Applications,technologies,architectures,and protoco volume 37 Issue 4, 200710, pp.1-12, ACM *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018527776A (ja) * 2015-09-15 2018-09-20 グーグル エルエルシー コンピュータネットワークにおいてパケットを処理するためのシステムおよび方法
US10855480B2 (en) 2015-09-15 2020-12-01 Google Llc Systems and methods for processing packets in a computer network
JP2017228935A (ja) * 2016-06-22 2017-12-28 日本電信電話株式会社 パケット転送制御装置、パケット転送制御方法、およびパケット転送制御プログラム

Also Published As

Publication number Publication date
WO2013057960A1 (en) 2013-04-25
JP5994851B2 (ja) 2016-09-21
EP2769512A1 (en) 2014-08-27
EP2769512A4 (en) 2015-06-03
US20140241368A1 (en) 2014-08-28

Similar Documents

Publication Publication Date Title
JP5994851B2 (ja) 転送装置の制御装置、転送装置の制御方法、通信システムおよびプログラム
JP6418261B2 (ja) 通信システム、ノード、制御装置、通信方法及びプログラム
US20180324274A1 (en) Information system, control apparatus, method of providing virtual network, and program
JP5494668B2 (ja) 情報システム、制御サーバ、仮想ネットワーク管理方法およびプログラム
JP5598582B2 (ja) 通信システム、ノード、制御装置、通信方法およびプログラム
JP5850068B2 (ja) 制御装置、通信システム、通信方法およびプログラム
WO2011083780A1 (ja) 通信システム、制御装置、処理規則の設定方法、パケットの送信方法およびプログラム
JP5858141B2 (ja) 制御装置、通信装置、通信システム、通信方法及びプログラム
JPWO2014112616A1 (ja) 制御装置、通信装置、通信システム、スイッチの制御方法及びプログラム
EP2922250B1 (en) Control apparatus, communication system, control information creating method and program
JP5747997B2 (ja) 制御装置、通信システム、仮想ネットワークの管理方法およびプログラム
JP6440191B2 (ja) スイッチ装置、vlan設定管理方法及びプログラム
WO2014126094A1 (ja) 通信システム、通信方法、制御装置、制御装置の制御方法及びプログラム
JP6024761B2 (ja) 制御装置、通信システム、通信方法及びプログラム
WO2014175335A1 (ja) 制御装置、計算機システム、通信制御方法及びプログラム
WO2014119602A1 (ja) 制御装置、スイッチ、通信システム、スイッチの制御方法及びプログラム
JP5768600B2 (ja) 通信システム、制御装置、パケット転送方法およびプログラム
WO2014142081A1 (ja) 転送ノード、制御装置、通信システム、パケット処理方法及びプログラム
WO2015087947A1 (ja) 通信システム、通信ノード、制御装置、通信制御方法及びプログラム
JP2016225933A (ja) 制御装置、中継装置の制御方法、プログラム及び通信システム
JP2016139908A (ja) 通信システム、通信ノード、制御装置、通信制御方法、及び、プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150907

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160808

R150 Certificate of patent or registration of utility model

Ref document number: 5994851

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees