(57)【特許請求の範囲】
【請求項１】
複数のスイッチと、コントローラと、前記コントローラと接続された対応アドレス記憶装置であって、ＭＡＣアドレスとＩＰアドレスとを対応付けて記憶する対応アドレス記憶装置とを備えるオープンフローネットワークシステムであって、各スイッチと前記コントローラとは経路制御網によって接続され、前記各スイッチ間は前記経路制御網とは異なる転送網によって接続されたオープンフローネットワークシステムであり、
前記各スイッチは、
ポートに機器が接続された場合に、前記機器からＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレスを取得するＭＡＣアドレス取得部と、
前記ＭＡＣアドレス取得部が取得したＭＡＣアドレスを前記コントローラへ通知するＭＡＣアドレス通知部と
を備え、
前記コントローラは、
前記ＭＡＣアドレス通知部が通知したＭＡＣアドレスに対してＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスを割り当てるＩＰアドレス割当部であって、前記ＭＡＣアドレス通知部が通知したＭＡＣアドレスを前記対応アドレス記憶装置が記憶している場合には、そのＭＡＣアドレスと対応付けて前記対応アドレス記憶装置が記憶したＩＰアドレスをそのＭＡＣアドレスに対して割り当てるＩＰアドレス割当部と、
前記ＩＰアドレス割当部が割り当てたＩＰアドレスを前記ＭＡＣアドレスの通知元のスイッチへ通知するＩＰアドレス通知部と
を備え、
前記各スイッチは、さらに、
前記ＩＰアドレス通知部が通知したＩＰアドレスを前記機器へ配布するアドレス配布部を備えることを特徴とするオープンフローネットワークシステム。
【請求項２】
前記オープンフローネットワークシステムは、さらに、
ＭＡＣアドレス群毎に、割り当てるＩＰアドレス群を記憶した割当アドレス記憶装置
を備え、
前記ＩＰアドレス割当部は、前記ＭＡＣアドレス通知部が通知したＭＡＣアドレスを含むＭＡＣアドレス群に対応付けて前記割当アドレス記憶装置が記憶したＩＰアドレス群に含まれるＩＰアドレスを前記ＭＡＣアドレスに対して割り当てる
ことを特徴とする請求項１に記載のオープンフローネットワークシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、オープンフロー技術を利用したオープンフローネットワークシステムにおけるＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスの割り当て技術に関する。
【背景技術】
【０００２】
オープンフロー技術では、従来１台のネットワーク機器に組み込まれていた、ネットワークの経路制御を行う機能と、データ転送を行う機能とが分離され別の機器に組み込まれている。ネットワークの経路制御を行う機能が組み込まれたのがオープンフローコントローラ（以下、コントローラ）であり、データ転送を行う機能が組み込まれたのがオープンフロースイッチ（以下、スイッチ）である。
【０００３】
オープンフロー技術を利用した通信システムでは、１台のコントローラに対して、複数台のスイッチが割り当てられる。コントローラは、割り当てられたスイッチに、パケットの種別毎に、フローエントリと呼ばれる経路を制御する制御情報を設定する。各スイッチは、受信したパケットの種別に対応したフローエントリに従い、受信したパケットの転送を制御する。
コントローラがフローエントリをスイッチに送信するネットワークは経路制御網と呼ばれ、パケットが転送されるネットワークは転送網と呼ばれる。オープンフローネットワークシステムでは、経路制御網と転送網とが分割されている。
【０００４】
オープンフローネットワークシステムにおいても、一般的なネットワークシステムと同様に、スイッチに接続される機器にＩＰアドレスを自動的に割り当てる場合、ＤＨＣＰ（Ｄｙｎａｍｉｃ  Ｈｏｓｔ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）サーバが導入される。
ＤＨＣＰサーバは、機器へＩＰアドレスを配布するため転送網に接続されるだけでなく、コントローラに機器に割り当てたＩＰアドレスを通知するため経路制御網にも接続される。つまり、ＤＨＣＰサーバは、経路制御網と転送網とに跨って設置される。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】国際公開第２０１１／１５５４８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ＤＨＣＰサーバを経路制御網と転送網とに跨って設置してしまうと、ＤＨＣＰサーバを介して経路制御網と転送網とが接続されてしまい、セキュリティ上の脅威となり得る。
この発明は、オープンフローネットワークシステムにおいて、安全にＩＰアドレスを配布することを目的とする。
【課題を解決するための手段】
【０００７】
この発明に係るオープンフローネットワークシステムは、
スイッチとコントローラとを備えるオープンフローネットワークシステムであり、
前記スイッチは、
ポートに機器が接続された場合に、前記機器からＭＡＣアドレスを取得するＭＡＣアドレス取得部と、
前記ＭＡＣアドレス取得部が取得したＭＡＣアドレスを前記コントローラへ通知するＭＡＣアドレス通知部と
を備え、
前記コントローラは、
前記ＭＡＣアドレス通知部が通知したＭＡＣアドレスに対してＩＰアドレスを割り当てるＩＰアドレス割当部と、
前記ＩＰアドレス割当部が割り当てたＩＰアドレスを前記スイッチへ通知するＩＰアドレス通知部と
を備え、
前記スイッチは、さらに、
前記ＩＰアドレス通知部が通知したＩＰアドレスを前記機器へ配布するアドレス配布部
を備えることを特徴とする。
【０００８】
前記オープンフローネットワークシステムは、さらに、
ＭＡＣアドレスとＩＰアドレスとを対応付けて記憶する対応アドレス記憶装置
を備え、
前記ＩＰアドレス割当部は、前記ＭＡＣアドレス通知部が通知したＭＡＣアドレスを前記対応アドレス記憶装置が記憶している場合には、そのＭＡＣアドレスと対応付けて前記対応アドレス記憶装置が記憶したＩＰアドレスをそのＭＡＣアドレスに対して割り当てる
ことを特徴とする。
【０００９】
前記オープンフローネットワークシステムは、さらに、
ＭＡＣアドレス群毎に、割り当てるＩＰアドレス群を記憶した割当アドレス記憶装置
を備え、
前記ＩＰアドレス割当部は、前記ＭＡＣアドレス通知部が通知したＭＡＣアドレスを含むＭＡＣアドレス群に対応付けて前記割当アドレス記憶装置が記憶したＩＰアドレス群に含まれるＩＰアドレスを前記ＭＡＣアドレスに対して割り当てる
ことを特徴とする。
【００１０】
この発明に係るスイッチは、
オープンフローネットワークシステムにおけるスイッチであり、
ポートに機器が接続された場合に、前記機器からＭＡＣアドレスを取得するＭＡＣアドレス取得部と、
前記ＭＡＣアドレス取得部が取得したＭＡＣアドレスをコントローラへ通知するＭＡＣアドレス通知部と、
前記ＭＡＣアドレス通知部が通知したＭＡＣアドレスに対して、前記コントローラが割り当てたＩＰアドレスを前記機器へ配布するアドレス配布部
を備えることを特徴とする。
【００１１】
この発明に係るコントローラは、
オープンフローネットワークシステムにおけるコントローラであり、
スイッチのポートに機器が接続された場合に、前記スイッチから前記機器のＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレスを取得して、取得したＭＡＣアドレスに対してＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスを割り当てるＩＰアドレス割当部と、
前記ＩＰアドレス割当部が割り当てたＩＰアドレスを前記スイッチへ通知して、前記ＩＰアドレスを前記機器に割り当てさせるＩＰアドレス通知部と
を備えることを特徴とする。
【発明の効果】
【００１２】
この発明に係るオープンフローネットワークシステムでは、ＤＨＣＰサーバを設けることなく、コントローラとスイッチとに機能を追加することにより、機器にＩＰアドレスを配布する。ＤＨＣＰサーバを設ける必要がないため、経路制御網と転送網と分割されており、安全性が高い。
【図面の簡単な説明】
【００１３】
【図１】ＤＨＣＰサーバ４０を用いた場合のオープンフローネットワークシステム２００の構成図。
【図２】実施の形態１に係るオープンフローネットワークシステム１００の構成図。
【図３】実施の形態１に係るオープンフローネットワークシステム１００の動作を示すフローチャート。
【図４】ＤＨＣＰサーバ４０を用いた場合のオープンフローネットワークシステム２００の構成図。
【図５】実施の形態２に係るオープンフローネットワークシステム１００の構成図。
【図６】実施の形態２に係る対応アドレス記憶装置７０が記憶する情報を示す図。
【図７】実施の形態２に係るオープンフローネットワークシステム１００の動作を示すフローチャート。
【図８】実施の形態３に係るオープンフローネットワークシステム１００の構成図。
【図９】実施の形態３に係る割当アドレス記憶装置８０が記憶する情報を示す図。
【図１０】実施の形態３に係るオープンフローネットワークシステム１００の動作を示すフローチャート。
【図１１】実施の形態１〜３に示したコントローラ１０、スイッチ２０のハードウェア構成の例を示す図。
【発明を実施するための形態】
【００１４】
実施の形態１．
実施の形態１では、ＤＨＣＰサーバ４０を設けることなく、ＩＰアドレスを自動的に割り当てる技術について説明する。
【００１５】
図１は、ＤＨＣＰサーバ４０を用いた場合のオープンフローネットワークシステム２００の構成図である。
オープンフローネットワークシステム２００は、コントローラ１０、複数のスイッチ２０、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）等の複数の機器３０、ＤＨＣＰサーバ４０を備える。
コントローラ１０と各スイッチ２０とは経路制御網５０によって接続されている。また、スイッチ２０間、及びスイッチ２０と機器３０とは転送網６０によって接続されている。ＤＨＣＰサーバ４０は、経路制御網５０と転送網６０との両方に跨って設置されている。
【００１６】
オープンフローネットワークシステム２００では、スイッチ２０に機器３０が新たに接続されると、転送網６０を介してＤＨＣＰサーバ４０へ機器３０のＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレスが送信される。すると、ＤＨＣＰサーバ４０は、送信されたＭＡＣアドレスに対してＩＰアドレスを割り当てる。ＤＨＣＰサーバ４０は、割り当てたＩＰアドレスを、転送網６０を介して機器３０へ送信するとともに、経路制御網５０を介してコントローラ１０へ送信する。
【００１７】
ＤＨＣＰサーバ４０が経路制御網５０と転送網６０との両方に跨って設置されているため、ＤＨＣＰサーバ４０を介して転送網６０から経路制御網５０へ侵入される恐れがある。
【００１８】
図２は、実施の形態１に係るオープンフローネットワークシステム１００の構成図である。
オープンフローネットワークシステム１００は、コントローラ１０、複数のスイッチ２０、複数の機器３０を備える。
コントローラ１０と各スイッチ２０とは経路制御網５０によって接続されている。また、スイッチ２０間、及びスイッチ２０と機器３０とは転送網６０によって接続されている。
【００１９】
コントローラ１０は、ＩＰアドレス割当部１１、ＩＰアドレス通知部１２を備える。
スイッチ２０は、ＭＡＣアドレス取得部２１、ＭＡＣアドレス通知部２２、アドレス配布部２３を備える。
【００２０】
図３は、実施の形態１に係るオープンフローネットワークシステム１００の動作を示すフローチャートである。
スイッチ２０に機器３０が新たに接続されると、スイッチ２０のＭＡＣアドレス取得部２１は、新たに接続された機器３０からＭＡＣアドレスを取得する（Ｓ１１）。そして、スイッチ２０のＭＡＣアドレス通知部２２は、取得したＭＡＣアドレスをコントローラ１０へ通知する（Ｓ１２）。
コントローラ１０のＩＰアドレス割当部１１は、ＭＡＣアドレスが通知されると、通知されたＭＡＣアドレスに対してＩＰアドレスを割り当てる（Ｓ１３）。そして、ＩＰアドレス通知部１２は、割り当てられたＩＰアドレスをスイッチ２０へ通知する（Ｓ１４）。
スイッチ２０は、ＩＰアドレスが通知されると、通知されたＩＰアドレスを機器３０へ配布する（Ｓ１５）。
【００２１】
以上のように、実施の形態１に係るオープンフローネットワークシステム１００では、ＤＨＣＰサーバ４０のＩＰアドレス割り当て機能をコントローラ１０が持ち、ＩＰアドレス配布機能をスイッチ２０が持つ。これにより、経路制御網５０と転送網６０との両方に跨って設置されるＤＨＣＰサーバ４０が必要なくなり、安全性を高くすることができる。
【００２２】
実施の形態２．
実施の形態２では、同一の機器３０に同一のＩＰアドレスを割り当てる技術について説明する。
実施の形態２では、実施の形態１と異なる部分を中心に説明する。
【００２３】
図４は、ＤＨＣＰサーバ４０を用いた場合のオープンフローネットワークシステム２００の構成図である。なお、図４では、簡単のため、経路制御網５０と転送網６０との表示を省略している。
オープンフローネットワークシステム２００は、ネットワークのセグメント毎にＤＨＣＰサーバ４０が設置される。ここでは、セグメントＡにはＤＨＣＰサーバ４０Ａが設置され、セグメントＢにはＤＨＣＰサーバ４０Ｂが設置されている。
【００２４】
オープンフローネットワークシステム２００では、スイッチ２０に機器３０が新たに接続されると、スイッチ２０と同じセグメントに設置されたＤＨＣＰサーバ４０へ機器３０のＭＡＣアドレスが送信される。例えば、機器３０Ａが新たに設置されたとする。この場合、スイッチ２０Ａを介して、ＤＨＣＰサーバ４０Ａへ機器３０ＡのＭＡＣアドレスが送信される。すると、ＤＨＣＰサーバ４０Ａは、送信されたＭＡＣアドレスに対してＩＰアドレスを割り当てる。
【００２５】
その後、機器３０Ａがスイッチ２０Ａから外され、スイッチ２０Ｂに接続されたとする。この場合、ＤＨＣＰサーバ４０Ｂへ機器３０ＡのＭＡＣアドレスが送信される。すると、ＤＨＣＰサーバ４０Ｂは、送信されたＭＡＣアドレスに対してＩＰアドレスを割り当てる。ここで、ＤＨＣＰサーバ４０Ｂは、ＤＨＣＰサーバ４０Ａが機器３０Ａに割り当てたＩＰアドレスを知らないため、全く異なるＩＰアドレスを機器３０Ａに割り当ててしまう。
そのため、他の機器３０が、ＤＨＣＰサーバ４０Ａによって割り当てられたＩＰアドレスを用いて機器３０Ａと通信しようとしても、通信できなくなってしまう。
【００２６】
図５は、実施の形態２に係るオープンフローネットワークシステム１００の構成図である。
オープンフローネットワークシステム１００は、図２に示すオープンフローネットワークシステム１００が備える装置に加え、対応アドレス記憶装置７０を備える。
【００２７】
図６は、実施の形態２に係る対応アドレス記憶装置７０が記憶する情報を示す図である。
対応アドレス記憶装置７０は、ＭＡＣアドレスと、そのＭＡＣアドレスに対して割り当てられたＩＰアドレスとを対応付けて記憶する。
【００２８】
図７は、実施の形態２に係るオープンフローネットワークシステム１００の動作を示すフローチャートである。
Ｓ２１からＳ２２の処理は、図３に示すＳ１１からＳ１２の処理と同じである。
コントローラ１０のＩＰアドレス割当部１１は、ＭＡＣアドレスが通知されると、通知されたＭＡＣアドレスを対応アドレス記憶装置７０が記憶しているか否かを判定する（Ｓ２３）。
ＩＰアドレス割当部１１は、通知されたＭＡＣアドレスを対応アドレス記憶装置７０が記憶している場合（Ｓ２３で記憶されている）、通知されたＭＡＣアドレスと対応付けて対応アドレス記憶装置７０が記憶しているＩＰアドレスを、通知されたＭＡＣアドレスに割り当てる（Ｓ２４）。
一方、ＩＰアドレス割当部１１は、通知されたＭＡＣアドレスを対応アドレス記憶装置７０が記憶していない場合（Ｓ２３で記憶されていない）、通知されたＭＡＣアドレスに対して新たなＩＰアドレスを割り当てる（Ｓ２５）。ＩＰアドレス割当部１１は、割り当てたＩＰアドレスをＭＡＣアドレスに対応付けて、対応アドレス記憶装置７０に記憶する（Ｓ２６）。
Ｓ２７からＳ２８の処理は、図３に示すＳ１４からＳ１５の処理と同じである。
【００２９】
以上のように、実施の形態２に係るオープンフローネットワークシステム１００では、対応アドレス記憶装置７０がオープンフローネットワークシステム１００全体でＭＡＣアドレスとＩＰアドレスとの対応関係を一元管理する。これにより、同じ機器３０をセグメントを超えて移動させた場合であっても、ＩＰアドレスが変わることがない。
【００３０】
実施の形態３．
実施の形態３では、機器３０毎に予め定められたＩＰアドレスを割り当てる技術について説明する。
実施の形態３では、実施の形態１と異なる部分を中心に説明する。
【００３１】
図８は、実施の形態３に係るオープンフローネットワークシステム１００の構成図である。
オープンフローネットワークシステム１００は、図２に示すオープンフローネットワークシステム１００が備える装置に加え、割当アドレス記憶装置８０を備える。
【００３２】
図９は、実施の形態３に係る割当アドレス記憶装置８０が記憶する情報を示す図である。
割当アドレス記憶装置８０は、ＭＡＣアドレス群毎に、割り当てるＩＰアドレス群を記憶する。
例えば、オープンフローネットワークシステム１００がある会社で構築される場合、割当アドレス記憶装置８０は、各部署に配布される機器３０のＭＡＣアドレス群毎に、割り当てるＩＰアドレス群を記憶する。つまり、人事部に配布される機器３０のＭＡＣアドレス群に対応させてＩＰアドレス群を記憶し、経理部に配布される機器３０のＭＡＣアドレス群に対応させてＩＰアドレス群を記憶する。
【００３３】
図１０は、実施の形態３に係るオープンフローネットワークシステム１００の動作を示すフローチャートである。
Ｓ３１からＳ３２の処理は、図３に示すＳ１１からＳ１２の処理と同じである。
コントローラ１０のＩＰアドレス割当部１１は、ＭＡＣアドレスが通知されると、通知されたＭＡＣアドレスと対応付けて割当アドレス記憶装置８０が記憶しているＩＰアドレス群から選択したＩＰアドレスを、通知されたＭＡＣアドレスに割り当てる（Ｓ３３）。
Ｓ３４からＳ３５の処理は、図３に示すＳ１４からＳ１５の処理と同じである。
【００３４】
以上のように、実施の形態３に係るオープンフローネットワークシステム１００では、割当アドレス記憶装置８０がＭＡＣアドレス群毎に、割り当てるＩＰアドレス群を記憶する。これにより、機器３０群毎に割り当てられるＩＰアドレスを予め定めることができ、ＩＰアドレスの管理が容易となる。
【００３５】
なお、実施の形態２，３を組合せ、対応アドレス記憶装置７０と割当アドレス記憶装置８０との両方を有するオープンフローネットワークシステム１００としてもよい。これにより、実施の形態２，３の両方の効果を得ることができる。
【００３６】
図１１は、実施の形態１〜３に示したコントローラ１０、スイッチ２０のハードウェア構成の例を示す図である。
コントローラ１０、スイッチ２０はコンピュータであり、コントローラ１０、スイッチ２０の各要素をプログラムで実現することができる。
コントローラ１０、スイッチ２０のハードウェア構成としては、バスに、演算装置９０１、外部記憶装置９０２、主記憶装置９０３が接続されている。
【００３７】
演算装置９０１は、プログラムを実行するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等である。外部記憶装置９０２は、例えばＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）やフラッシュメモリ、ハードディスク装置等である。主記憶装置９０３は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等である。
【００３８】
プログラムは、通常は外部記憶装置９０２に記憶されており、主記憶装置９０３にロードされた状態で、順次演算装置９０１に読み込まれ、実行される。
プログラムは、ＩＰアドレス割当部１１、ＩＰアドレス通知部１２、ＭＡＣアドレス取得部２１、ＭＡＣアドレス通知部２２、アドレス配布部２３として説明している機能を実現するプログラムである。
更に、外部記憶装置９０２にはオペレーティングシステム（ＯＳ）も記憶されており、ＯＳの少なくとも一部が主記憶装置９０３にロードされ、演算装置９０１はＯＳを実行しながら、上記プログラムを実行する。
また、実施の形態１〜３の説明において、「〜の計算」、「〜の受信」、「〜の送信」等として説明している処理の結果を示す情報やデータや信号値や変数値が主記憶装置９０３にファイルとして記憶されている。
【００３９】
なお、図１１の構成は、あくまでもコントローラ１０、スイッチ２０のハードウェア構成の一例を示すものであり、コントローラ１０、スイッチ２０のハードウェア構成は図１１に記載の構成に限らず、他の構成であってもよい。
【符号の説明】
【００４０】
１０  コントローラ、１１  ＩＰアドレス割当部、１２  ＩＰアドレス通知部、２０  スイッチ、２１  ＭＡＣアドレス取得部、２２  ＭＡＣアドレス通知部、２３  アドレス配布部、３０  機器、４０  ＤＨＣＰサーバ、５０  経路制御網、６０  転送網、７０  対応アドレス記憶装置、８０  割当アドレス記憶装置、１００，２００  オープンフローネットワークシステム。
【要約】
【課題】オープンフローネットワークシステムにおいて、安全にＩＰアドレスを配布することを目的とする。
【解決手段】スイッチ２０は、ポートに機器が接続された場合に、機器３０からＭＡＣアドレスを取得し、取得したＭＡＣアドレスをコントローラ１０へ通知する。コントローラ１０は、通知されたＭＡＣアドレスに対してＩＰアドレスを割り当て、割り当てたＩＰアドレスをスイッチ２０へ通知する。スイッチ２０は、通知されたＩＰアドレスを機器３０へ配布する。
【選択図】図１【図１】
0005550764.tif 000002
【図２】
0005550764.tif 000003
【図３】
0005550764.tif 000004
【図４】
0005550764.tif 000005
【図５】
0005550764.tif 000006
【図６】
0005550764.tif 000007
【図７】
0005550764.tif 000008
【図８】
0005550764.tif 000009
【図９】
0005550764.tif 000010
【図１０】
0005550764.tif 000011
【図１１】
0005550764.tif 000012