(57)【特許請求の範囲】
【請求項１】
第１の識別子により識別される第１の仮想ネットワークに属する端末間のパケット転送を制御する制御装置であって、
第２の識別子により識別される第２の仮想ネットワークに前記端末が属するように、前記第２の仮想ネットワークの構成情報を保持するネットワーク構成情報管理手段と、
前記第２の仮想ネットワークの構成情報に基づいて、前記端末間の通信を制御する経路制御手段と、
を備えることを特徴とする制御装置。
【請求項２】
前記ネットワーク構成情報管理手段は、前記端末の識別子と前記端末が有する前記第１の識別子とを対応付けて、前記端末の識別情報として端末ごとに管理することを特徴とする請求項１に記載の制御装置。
【請求項３】
前記ネットワーク構成情報管理手段は、前記第２の仮想ネットワークの構成情報として、前記端末の識別情報と、前記端末が有する前記第２の識別子とを対応付けて端末ごとに管理することを特徴とする請求項１または２に記載の制御装置。
【請求項４】
前記制御装置は、さらに、検索手段を備え、
前記検索手段は、パケットを転送する転送装置の受信パケットに関する問い合わせを受信した場合、前記受信パケットの情報に基づいて、前記受信パケットの送信元端末および送信先端末が同一の前記第２の識別子を有するかどうか前記ネットワーク構成情報管理手段から検索し、前記受信パケットの送信元端末と送信先端末とが同一の前記第２の識別子を有する場合には、前記送信先端末の属する前記第１の識別子を前記ネットワーク構成情報管理手段から検索し、前記受信パケットの送信元端末と送信先端末とが異なる前記第２の識別子を有する場合には、前記受信パケットを破棄し、
前記経路制御手段は、前記送信元端末と前記送信先端末との間の転送経路を算出し、前記検索の結果得られた送信先端末の前記第１の識別子に応じて、前記転送経路上の転送装置に前記受信パケットに対する処理を含む処理規則を設定する命令を通知することを特徴とする請求項１から３のいずれか１つに記載の制御装置。
【請求項５】
前記検索手段は、前記送信元端末が属する前記第１の識別子と前記送信元端末の識別子とに基づいて、前記ネットワーク構成情報管理手段から前記送信元端末が有する前記第２の識別子を検索し、前記送信先端末の識別子と前記検索の結果得られた前記送信元端末が有する前記第２の識別子とに基づいて、前記ネットワーク構成情報管理手段から前記送信先端末が有する前記第１の識別子を検索することを特徴とする請求項４に記載の制御装置。
【請求項６】
前記経路制御手段は、
前記問い合わせの送信元の転送装置に対し、前記受信パケットのヘッダ内の第１の識別子を、前記送信先端末が有する第１の識別子に更新する処理を含む処理規則を設定し、
前記問い合わせの送信元の転送装置以外の前記受信パケットの経路上の転送装置に対して、前記受信パケットに対応する処理規則のうち、前記受信パケットのヘッダの第１の識別子を、前記送信先端末が有する第１の識別子に更新することを特徴とする請求項４または５に記載の制御装置。
【請求項７】
前記経路制御手段は、
前記問い合わせの送信元の転送装置以外の前記受信パケットの経路上の転送装置に対して、前記パケットのヘッダ内の第２の識別子を、前記送信先端末が有する第１の識別子に更新する処理を含む処理規則を設定することを特徴とする請求項４または５に記載の制御装置。
【請求項８】
前記ネットワーク構成情報管理手段は、前記第２の仮想ネットワークの構成情報として、さらに、端末のＩＰアドレスを記憶し、
前記検索手段は、前記送信元端末が有する第１の識別子と前記送信元端末の識別子と前記送信元端末のＩＰアドレスとに基づいて、前記ネットワーク構成情報管理手段から前記送信元端末が有する第２の識別子を検索し、前記送信先端末の識別子と前記検索の結果得られた前記送信元端末が有する第２の識別子と前記送信先端末のＩＰアドレスとに基づいて、前記ネットワーク構成情報管理手段から前記送信先端末が有する第１の識別子を検索することを特徴とする請求項４から７のいずれか１つに記載の制御装置。
【請求項９】
前記ネットワーク構成情報管理手段は、前記端末の識別情報として、さらに、端末が属する第２の仮想ネットワーク上の転送装置のリストを記憶し、
前記経路制御手段は、前記転送装置のリストから、前記送信元端末または前記送信先端末と同一の前記第２の仮想ネットワークに属する転送装置を検索することを特徴とする請求項４から８のいずれか１つに記載の制御装置。
【請求項１０】
第１の識別子により識別される第１の仮想ネットワークに属する端末と、
前記端末間のパケット転送を制御する制御装置と、を備える通信システムであって、
前記制御装置は、
第２の識別子により識別される第２の仮想ネットワークに前記端末が属するように、前記第２の仮想ネットワークの構成情報を保持するネットワーク構成情報管理手段と、
前記第２の仮想ネットワークの構成情報に基づいて、前記端末間の通信を制御する経路制御手段と、
を備えることを特徴とする通信システム。
【請求項１１】
前記ネットワーク構成情報管理手段は、前記端末の識別子と前記端末が有する前記第１の識別子とを対応付けて、前記端末の識別情報として端末ごとに管理することを特徴とする請求項１０に記載の通信システム。
【請求項１２】
前記ネットワーク構成情報管理手段は、前記第２の仮想ネットワークの構成情報として、前記端末の識別情報と、前記端末が有する前記第２の識別子とを対応付けて端末ごとに管理することを特徴とする請求項１０または１１に記載の通信システム。
【請求項１３】
前記通信システムは、さらに、
パケットのヘッダと当該パケットに対応する処理とを対応付けた処理規則に基づいて受信パケットの処理を行い、前記受信パケットに対する前記処理規則が不明である場合には、前記制御装置へ問い合わせを行う転送装置を備え、
前記制御装置は、さらに、検索手段を備え、
前記検索手段は、前記問い合わせを受信した場合、前記受信パケットの情報に基づいて、前記受信パケットの送信元端末および送信先端末が同一の前記第２の識別子を有するかどうか前記ネットワーク構成情報管理手段から検索し、前記受信パケットの送信元端末と送信先端末とが同一の前記第２の識別子を有する場合には、前記送信先端末の属する前記第１の識別子を前記ネットワーク構成情報管理手段から検索し、前記受信パケットの送信元端末と送信先端末とが異なる前記第２の識別子を有する場合には、前記受信パケットを破棄し、
前記経路制御手段は、前記送信元端末と前記送信先端末との間の転送経路を算出し、前記検索の結果得られた送信先端末の前記第１の識別子に応じて、前記転送経路上の転送装置に前記受信パケットに対する処理を含む処理規則を設定する命令を通知することを特徴とする請求項１０から１２のいずれか１つに記載の通信システム。
【請求項１４】
前記検索手段は、前記送信元端末が属する前記第１の識別子と前記送信元端末の識別子とに基づいて、前記ネットワーク構成情報管理手段から前記送信元端末が有する前記第２の識別子を検索し、前記送信先端末の識別子と前記検索の結果得られた前記送信元端末が有する前記第２の識別子とに基づいて、前記ネットワーク構成情報管理手段から前記送信先端末が有する前記第１の識別子を検索することを特徴とする請求項１３に記載の通信システム。
【請求項１５】
前記経路制御手段は、
前記問い合わせの送信元の転送装置に対し、前記受信パケットのヘッダ内の第１の識別子を、前記送信先端末が有する第１の識別子に更新する処理を含む処理規則を設定し、
前記問い合わせの送信元の転送装置以外の前記受信パケットの経路上の転送装置に対して、前記受信パケットに対応する処理規則のうち、前記受信パケットのヘッダの第１の識別子を、前記送信先端末が有する第１の識別子に更新することを特徴とする請求項１３または１４に記載の通信システム。
【請求項１６】
前記経路制御手段は、
前記問い合わせの送信元の転送装置以外の前記受信パケットの経路上の転送装置に対して、前記パケットのヘッダ内の第２の識別子を、前記送信先端末が有する第１の識別子に更新する処理を含む処理規則を設定することを特徴とする請求項１３または１４に記載の通信システム。
【請求項１７】
前記ネットワーク構成情報管理手段は、前記第２の仮想ネットワークの構成情報として、さらに、端末のＩＰアドレスを記憶し、
前記検索手段は、前記送信元端末が有する第１の識別子と前記送信元端末の識別子と前記送信元端末のＩＰアドレスとに基づいて、前記ネットワーク構成情報管理手段から前記送信元端末が有する第２の識別子を検索し、前記送信先端末の識別子と前記検索の結果得られた前記送信元端末が有する第２の識別子と前記送信先端末のＩＰアドレスとに基づいて、前記ネットワーク構成情報管理手段から前記送信先端末が有する第１の識別子を検索することを特徴とする請求項１３から１６のいずれか１つに記載の通信システム。
【請求項１８】
前記ネットワーク構成情報管理手段は、前記端末の識別情報として、さらに、端末が属する第２の仮想ネットワーク上の転送装置のリストを記憶し、
前記経路制御手段は、前記転送装置のリストから、前記送信元端末または前記送信先端末と同一の前記第２の仮想ネットワークに属する転送装置を検索することを特徴とする請求項１３から１７のいずれか１つに記載の通信システム。
【請求項１９】
第１の識別子により識別される第１の仮想ネットワークに属する端末間のパケット転送を制御する通信方法であって、
第２の識別子により識別される第２の仮想ネットワークに前記端末が属するようにネットワーク構成情報管理手段に保持された前記第２の仮想ネットワークの構成情報に基づいて、前記端末間の通信を制御する経路制御手順を含むことを特徴とする通信方法。
【請求項２０】
前記ネットワーク構成情報管理手段は、前記端末の識別子と前記端末が有する前記第１の識別子とを対応付けて、前記端末の識別情報として端末ごとに管理することを特徴とする請求項１９に記載の通信方法。
【請求項２１】
前記ネットワーク構成情報管理手段は、前記第２の仮想ネットワークの構成情報として、前記端末の識別情報と、前記端末が有する前記第２の識別子とを対応付けて端末ごとに管理することを特徴とする請求項１９または２０に記載の通信方法。
【請求項２２】
前記通信方法は、さらに、
パケットを転送する転送装置の受信パケットに関する問い合わせを受信した場合、前記受信パケットの情報に基づいて、前記受信パケットの送信元端末および送信先端末が同一の前記第２の識別子を有するかどうか前記ネットワーク構成情報管理手段から検索し、前記受信パケットの送信元端末と送信先端末とが同一の前記第２の識別子を有する場合には、前記送信先端末の属する前記第１の識別子を前記ネットワーク構成情報管理手段から検索し、前記受信パケットの送信元端末と送信先端末とが異なる前記第２の識別子を有する場合には、前記受信パケットを破棄する、検索手順を含み、
前記経路制御手順は、前記送信元端末と前記送信先端末との間の転送経路を算出し、前記検索の結果得られた送信先端末の前記第１の識別子に応じて、前記転送経路上の転送装置に前記受信パケットに対する処理を含む処理規則を設定する命令を通知することを含む、ことを特徴とする請求項１９から２１のいずれか１つに記載の通信方法。
【請求項２３】
前記通信方法は、さらに、
前記送信元端末が属する前記第１の識別子と前記送信元端末の識別子とに基づいて、前記ネットワーク構成情報管理手段から前記送信元端末が有する前記第２の識別子を検索し、前記送信先端末の識別子と前記検索の結果得られた前記送信元端末が有する前記第２の識別子とに基づいて、前記ネットワーク構成情報管理手段から前記送信先端末が有する前記第１の識別子を検索することを特徴とする請求項２２に記載の通信方法。
【請求項２４】
前記通信方法は、さらに、
前記問い合わせの送信元の転送装置に対し、前記受信パケットのヘッダ内の第１の識別子を、前記送信先端末が有する第１の識別子に更新する処理を含む処理規則を設定し、
前記問い合わせの送信元の転送装置以外の前記受信パケットの経路上の転送装置に対して、前記受信パケットに対応する処理規則のうち、前記受信パケットのヘッダの第１の識別子を、前記送信先端末が有する第１の識別子に更新することを特徴とする請求項２２または２３に記載の通信方法。
【請求項２５】
前記通信方法は、さらに、
前記問い合わせの送信元の転送装置以外の前記受信パケットの経路上の転送装置に対して、前記パケットのヘッダ内の第２の識別子を、前記送信先端末が有する第１の識別子に更新する処理を含む処理規則を設定することを特徴とする請求項２２または２３に記載の通信方法。
【請求項２６】
前記ネットワーク構成情報管理手段は、前記第２の仮想ネットワークの構成情報として、さらに、端末のＩＰアドレスを記憶し、
前記検索手順は、前記送信元端末が有する第１の識別子と前記送信元端末の識別子と前記送信元端末のＩＰアドレスとに基づいて、前記ネットワーク構成情報管理手段から前記送信元端末が有する第２の識別子を検索し、前記送信先端末の識別子と前記検索の結果得られた前記送信元端末が有する第２の識別子と前記送信先端末のＩＰアドレスとに基づいて、前記ネットワーク構成情報管理手段から前記送信先端末が有する第１の識別子を検索することを特徴とする請求項２２から２５のいずれか１つに記載の通信方法。
【請求項２７】
前記ネットワーク構成情報管理手段は、前記端末の識別情報として、さらに、端末が属する第２の仮想ネットワーク上の転送装置のリストを記憶し、
前記経路制御手順は、前記転送装置のリストから、前記送信元端末または前記送信先端末と同一の前記第２の仮想ネットワークに属する転送装置を検索することを特徴とする請求項２２から２５のいずれか１つに記載の通信方法。
【請求項２８】
第１の識別子により識別される第１の仮想ネットワークに属する端末間のパケット転送を制御する通信プログラムであって、
第２の識別子により識別される第２の仮想ネットワークに前記端末が属するようにネットワーク構成情報管理手段に保持された前記第２の仮想ネットワークの構成情報に基づいて、前記端末間の通信を制御する経路制御処理をコンピュータに実行させることを特徴とする通信プログラム。
【請求項２９】
前記ネットワーク構成情報管理手段は、前記端末の識別子と前記端末が有する前記第１の識別子とを対応付けて、前記端末の識別情報として端末ごとに管理することを特徴とする請求項２８に記載の通信プログラム。
【請求項３０】
前記ネットワーク構成情報管理手段は、前記第２の仮想ネットワークの構成情報として、前記端末の識別情報と、前記端末が有する前記第２の識別子とを対応付けて端末ごとに管理することを特徴とする請求項２８または２９に記載の通信プログラム。
【請求項３１】
前記通信プログラムは、さらに、
パケットを転送する転送装置の受信パケットに関する問い合わせを受信した場合、前記受信パケットの情報に基づいて、前記受信パケットの送信元端末および送信先端末が同一の前記第２の識別子を有するかどうか前記ネットワーク構成情報管理手段から検索し、前記受信パケットの送信元端末と送信先端末とが同一の前記第２の識別子を有する場合には、前記送信先端末の属する前記第１の識別子を前記ネットワーク構成情報管理手段から検索し、前記受信パケットの送信元端末と送信先端末とが異なる前記第２の識別子を有する場合には、前記受信パケットを破棄する検索処理を含み、
前記経路制御処理は、前記送信元端末と前記送信先端末との間の転送経路を算出し、前記検索の結果得られた送信先端末の前記第１の識別子に応じて、前記転送経路上の転送装置に前記受信パケットに対する処理を含む処理規則を設定する命令を通知することを特徴とする請求項２８から３０のいずれか１つに記載の通信プログラム。
【請求項３２】
前記検索処理は、前記送信元端末が属する前記第１の識別子と前記送信元端末の識別子とに基づいて、前記ネットワーク構成情報管理手段から前記送信元端末が有する前記第２の識別子を検索し、前記送信先端末の識別子と前記検索の結果得られた前記送信元端末が有する前記第２の識別子とに基づいて、前記ネットワーク構成情報管理手段から前記送信先端末が有する前記第１の識別子を検索することを特徴とする請求項３１に記載の通信プログラム。
【請求項３３】
前記経路制御処理は、
前記問い合わせの送信元の転送装置に対し、前記受信パケットのヘッダ内の第１の識別子を、前記送信先端末が有する第１の識別子に更新する処理を含む処理規則を設定し、
前記問い合わせの送信元の転送装置以外の前記受信パケットの経路上の転送装置に対して、前記受信パケットに対応する処理規則のうち、前記受信パケットのヘッダの第１の識別子を、前記送信先端末が有する第１の識別子に更新することを特徴とする請求項３１または３２に記載の通信プログラム。
【請求項３４】
前記経路制御処理は、
前記問い合わせの送信元の転送装置以外の前記受信パケットの経路上の転送装置に対して、前記パケットのヘッダ内の第２の識別子を、前記送信先端末が有する第１の識別子に更新する処理を含む処理規則を設定することを特徴とする請求項３１または３２に記載の通信プログラム。
【請求項３５】
前記ネットワーク構成情報管理手段は、前記第２の仮想ネットワークの構成情報として、さらに、端末のＩＰアドレスを記憶し、
前記検索処理は、前記送信元端末が有する第１の識別子と前記送信元端末の識別子と前記送信元端末のＩＰアドレスとに基づいて、前記ネットワーク構成情報管理手段から前記送信元端末が有する第２の識別子を検索し、前記送信先端末の識別子と前記検索の結果得られた前記送信元端末が有する第２の識別子と前記送信先端末のＩＰアドレスとに基づいて、前記ネットワーク構成情報管理手段から前記送信先端末が有する第１の識別子を検索することを特徴とする請求項３１から３４のいずれか１つに記載の通信プログラム。
【請求項３６】
前記ネットワーク構成情報管理手段は、前記端末の識別情報として、さらに、端末が属する第２の仮想ネットワーク上の転送装置のリストを記憶し、
前記経路制御処理は、前記転送装置のリストから、前記送信元端末または前記送信先端末と同一の前記第２の仮想ネットワークに属する転送装置を検索することを特徴とする請求項３１から３４のいずれか１つに記載の通信プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信を行うネットワーク上の制御装置、通信システム、通信方法、および通信プログラムを記録する記録媒体に関する。
【背景技術】
【０００２】
近年、通信ネットワーク上のトラフィックの増加や、ネットワーク上で行われるサービスの増加等に伴い、ネットワーク上にさらに仮想ネットワークを構築する技術が多く開発されている。そのような仮想ネットワークを構築する代表的な方法の１つとして、非特許文献１に記載されたＶＬＡＮ（Ｖｉｒｔｕａｌ  Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）がある。
【０００３】
大規模データセンタのような、サーバが多数接続されているネットワークでは、サーバの用途ごとに、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスの他に、ＶＬＡＮごとの識別子であるＶＬＡＮ−ＩＤを用いて仮想化を行うことが一般的に行われる。この仮想化により、複数サーバのＩＰアドレスが衝突しても通信に影響のないようにネットワークを設計している。
【０００４】
しかしながら、ＶＬＡＮ−ＩＤの割り当て個数には限りがあり、その個数は最大でも４０９６個である。大規模なネットワーク上でＶＬＡＮを用いる場合には、上述のような手法でサーバのＩＰアドレスごとにＶＬＡＮ−ＩＤを割り当てると、ＶＬＡＮ−ＩＤの個数が不足する。その結果、仮想ネットワークの個数が不足してしまうという課題がある。
【０００５】
特許文献１には、このような課題を解決するための技術が記載されている。特許文献１には、非特許文献１に記載のＶＬＡＮ−ＩＤとは別の識別子であるＶＬＡＮドメインＩＤを新たに設けている。特許文献１に記載のスイッチングハブには、このＶＬＡＮドメインＩＤと、ＶＬＡＮ−ＩＤとを組み合わせることによって、受信するフレームが属するＶＬＡＮを識別する技術が記載されている。
【０００６】
また、特許文献２には、パケットを受信すると、送信元ＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレスとＶＬＡＮタグ情報を対応付けてＭＡＣアドレス学習テーブルに保存する技術が記載されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００３−３１８９３７号公報
【特許文献２】特開２００６−３１１０６６号公報
【非特許文献】
【０００８】
【非特許文献１】ＩＥＥＥ  Ｓｔｄ  ８０２．１Ｑ．−２００５、ＩＥＥＥ  Ｓｔａｎｄａｒｄ  ｆｏｒ  Ｌｏｃａｌ  ａｎｄ  ｍｅｔｒｏｐｏｌｉｔａｎ  ａｒｅａ  ｎｅｔｗｏｒｋｓ  −Ｖｉｒｔｕａｌ  Ｂｒｉｄｇｅｄ  Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋｓ
【非特許文献２】ＯｐｅｎＦｌｏｗ  Ｓｗｉｔｃｈ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ  Ｖｅｒｓｉｏｎ  １．０．０  （Ｗｉｒｅ  Ｐｒｏｔｏｃｏｌ  ０ｘ０１）、２００９年１２月３１日、［２０１０年７月２０日検索］、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ｏｐｅｎｆｌｏｗｓｗｉｔｃｈ．ｏｒｇ／ｄｏｃｕｍｅｎｔｓ／ｏｐｅｎｆｌｏｗ−ｓｐｅｃ−ｖ１．０．０．ｐｄｆ＞
【発明の概要】
【発明が解決しようとする課題】
【０００９】
上述の通り、特許文献１に記載の技術では、既存のＶＬＡＮ−ＩＤと新たに設けたＶＬＡＮドメインＩＤとを組み合わせることにより、ＶＬＡＮ−ＩＤの個数制限を回避しようとしていた。
【００１０】
しかしながら、特許文献１に記載の技術では、フレーム内にＶＬＡＮドメインＩＤ用のフィールドを設けていることから、ＶＬＡＮドメインＩＤの数にも限界が存在しており、大規模ネットワーク構築時に用意することができる仮想ネットワークの個数に限界があることには変わりがない。
【００１１】
本発明の目的は、上述した課題を解決することが可能な、制御装置、通信システム、通信方法、および通信プログラムを記録する記録媒体を提供することにある。
【課題を解決するための手段】
【００１２】
本発明による制御装置は、第１の識別子により識別される第１の仮想ネットワークに属する端末間のパケット転送を制御する制御装置であって、第２の識別子により識別される第２の仮想ネットワークに前記端末が属するように、前記第２の仮想ネットワークの構成情報を保持するネットワーク構成情報管理手段と、前記第２の仮想ネットワークの構成情報に基づいて、前記端末間の通信を制御する経路制御手段と、を備えることを特徴とする。
【００１３】
本発明による通信システムは、第１の識別子により識別される第１の仮想ネットワークに属する端末と、前記端末間のパケット転送を制御する制御装置と、を備える通信システムであって、前記制御装置は、第２の識別子により識別される第２の仮想ネットワークに前記端末が属するように、前記第２の仮想ネットワークの構成情報を保持するネットワーク構成情報管理手段と、前記第２の仮想ネットワークの構成情報に基づいて、前記端末間の通信を制御する経路制御手段と、を備えることを特徴とする。
【００１４】
本発明による通信方法は、第１の識別子により識別される第１の仮想ネットワークに属する端末間のパケット転送を制御する通信方法であって、第２の識別子により識別される第２の仮想ネットワークに前記端末が属するようにネットワーク構成情報管理手段に保持された前記第２の仮想ネットワークの構成情報に基づいて、前記端末間の通信を制御することを特徴とする。
【００１５】
本発明による通信プログラムを記録する記録媒体は、第１の識別子により識別される第１の仮想ネットワークに属する端末間のパケット転送を制御する通信プログラムであって、第２の識別子により識別される第２の仮想ネットワークに前記端末が属するようにネットワーク構成情報管理手段に保持された前記第２の仮想ネットワークの構成情報に基づいて、前記端末間の通信を制御する経路制御処理をコンピュータに実行させることを特徴とする通信プログラムを記録する。
【発明の効果】
【００１６】
本発明によれば、仮想ネットワークの識別子の個数制限に関わらず、第２の仮想ネットワークを用いた大規模ネットワークの構築が可能となる。
【図面の簡単な説明】
【００１７】
【図１】第１の実施形態の構成を示すブロック図である。
【図２】ネットワーク構成情報テーブル１０１の構成を示す図である。
【図３】転送テーブル１１２の構成を示す図である。
【図４】第１の実施形態の動作を示すフローチャートである。
【図５】第１の実施形態の動作を示すフローチャートである。
【図６】第２の実施形態の構成を示すブロック図である。
【図７】ネットワーク構成情報テーブル２０１の構成を示す図である。
【図８】第３の実施形態の構成を示すブロック図である。
【図９】ネットワーク構成情報テーブル３０１の構成を示す図である。
【図１０】フローテーブル３１２の構成を示す図である。
【図１１】第３の実施形態の動作を示すフローチャートである。
【図１２】第３の実施形態の動作を示すフローチャートである。
【図１３】第３の実施形態の具体例を示す図である。
【図１４】第３の実施形態の具体例を示す図である。
【図１５】第３の実施形態の具体例を示す図である。
【図１６】第３の実施形態の具体例を示す図である。
【図１７】第３の実施形態の具体例を示す図である。
【図１８】第３の実施形態の具体例を示す図である。
【図１９】第３の実施形態の具体例を示す図である。
【図２０】第３の実施形態の具体例を示す図である。
【図２１】第３の実施形態の具体例を示す図である。
【図２２】第４の実施形態の構成を示すブロック図である。
【図２３】第１の実施形態の概要を示すブロック図である。
【発明を実施するための形態】
【００１８】
以下、本発明の実施形態について、図面を参照して詳細に説明する。
【００１９】
＜実施形態１＞
（概要）
まず、本実施形態の概要について、図２３を用いて以下に説明する。図２３は、本実施形態によるシステムの構成例を示したブロック図である。図２３のシステムは、コントローラ１００、スイッチ１１０、スイッチ１２０、端末１３０、端末１３１、端末１４０、端末１４１から構成される。端末１３０と端末１４０は仮想ネットワーク（ＮＷ）１に属している。端末１３１と端末１４１はＮＷ２に属している。以下、仮想ネットワークＮＷを「ＮＷ」と呼称する。
【００２０】
コントローラ１００は、本システム上で行われる通信を管理する。コントローラ１００は、ネットワーク構成情報管理部１０１、検索部１０２、経路制御部１０３を含む。各部の構成と動作については後に詳細に説明する。
【００２１】
スイッチ１１０、スイッチ１２０は、各端末間で通信されるパケットを、設定された処理規則に従って転送する。端末１３０と端末１３１はスイッチ１１０に、端末１４０と端末１４１はスイッチ１２０に、それぞれ接続されており、各々の間で通信を行う。
【００２２】
本実施形態では、ＶＬＡＮに属する端末間の通信を制御するコントローラ１００が、ＶＬＡＮとは異なる仮想ネットワークＮＷに各端末が属するように、ＮＷの構成情報をネットワーク構成情報管理部１０１に保持する。また、コントローラ１００は、ＮＷの構成情報に基づいて、端末間の通信を制御する。
【００２３】
ＮＷ１およびＮＷ２は、上記のＶＬＡＮとは異なる仮想ネットワークである。ＶＬＡＮによって実現していた仮想ネットワークの構築を、このＮＷと、ＮＷの識別子であるＮＷ−ＩＤによって実現している。
【００２４】
各端末は、ＮＷおよびＶＬＡＮに属しており、双方の識別子（ＩＤ）を有している。端末１３０は、ＮＷ１およびＶＬＡＮ１に属するため、ＮＷ−ＩＤが１、ＶＬＡＮ−ＩＤが１である。以下同様に、端末１３１はＮＷ２およびＶＬＡＮ２に、端末１４１はＮＷ１およびＶＬＡＮ２に、端末１４２はＮＷ２およびＶＬＡＮ１に、それぞれ属している。なお、図２３では、ＮＷ１を点線で、ＮＷ２を破線で、それぞれ示している。
【００２５】
ＶＬＡＮ−ＩＤは、各端末に割り当てられるが、仮想ネットワークの構築ではなく、各端末を識別するための識別子として用いられる。より具体的には、図２に示すネットワーク構成情報テーブル１０１において、各端末は、端末のＭＡＣアドレス等に代表される識別子とＶＬＡＮ−ＩＤとの組み合わせによって識別される。
【００２６】
従って、異なるＶＬＡＮ−ＩＤを有する端末１３０と端末１４０との間でも、ＮＷ−ＩＤが同一であるため通信を行うことが可能である。この通信の設定は、ＮＷの構成情報を保持するコントローラ１００によって行われる。
【００２７】
以下、本実施形態について、図１から図５を参照して詳細に説明する。
【００２８】
（構成）
本実施形態の構成について、図１を参照して説明する。図１は、本実施形態によるシステムの構成を示したブロック図である。
【００２９】
図１によれば、本実施形態のシステムは、コントローラ１００、スイッチ１１０、スイッチ１２０、端末１３０、端末１４０を含む。
【００３０】
なお、上記の本実施形態の概要説明（図２３）においては、端末が４個の場合について説明したが、以降は簡単のため、端末の個数が２個の場合について説明する。
【００３１】
コントローラ１００は、ネットワーク構成情報テーブル１０１、検索部１０２、経路制御部１０３を含む。コントローラ１００は、スイッチ１１０、スイッチ１２０、端末１３０、端末１４０を管理する装置である。
【００３２】
ネットワーク構成情報テーブル１０１は、コントローラ１００の管理下にあるネットワーク上の端末（端末１３０および端末１４０）の情報を保持するテーブルである。詳細は後述する（図２）。
【００３３】
検索部１０２は、各スイッチが受信したパケット（以下、「受信パケット」）の情報に基づいて、ネットワーク構成情報テーブル１０１から、受信パケットの宛先端末が属するＶＬＡＮ−ＩＤを検索する。
【００３４】
経路制御部１０３は、受信パケットの送信元端末または宛先端末と同じネットワークに属するスイッチのリストを、ネットワーク構成情報テーブル１０１から取り出す。続いて、取り出したスイッチに対して、受信パケットの送信元端末と宛先端末との間での通信が可能となるように、処理規則（エントリ）を設定する。
【００３５】
スイッチ１１０は、パケット転送部１１１、転送テーブル１１２を含む。同様に、スイッチ１２０は、パケット転送部１２１、転送テーブル１２２を含む。
【００３６】
パケット転送部１１１は、受信パケットについて、転送テーブル１１２に受信パケットに対応する処理規則があるかどうかを検索する。対応する処理規則がある場合には、その処理規則に記載された処理内容を参照して、処理を実行する。処理内容とは、例えば、特定のポート（図では非表示）を経由して、スイッチ１２０にパケットを転送する、パケットを破棄する、パケットのヘッダを書き換える、パケットのブロードキャストを行う、というような処理が挙げられる。また、受信したパケットに対応する処理規則が転送テーブル１１２に記載されていなかった場合は、コントローラ１００に対して、どのように処理を行うか問い合わせを行う。
【００３７】
転送テーブル１１２は、スイッチ１１０の受信パケットの情報（ヘッダ）の内容と、受信パケットのヘッダに応じた処理内容とを対応付けて、処理規則として１つのエントリに格納している。上述の通り、パケット転送部１１１は、受信パケットに対して、この処理規則に応じた処理を行う。詳細は後述する（図３）。
【００３８】
なお、スイッチ１２０のパケット転送部１２１および転送テーブル１２２は、スイッチ１１０のパケット転送部１１１、転送テーブル１１２と同様であるため、説明は省略する。また、図１では、スイッチの数が２個であるが、これに限定されるものではなく、３個以上であっても同様に動作する。
【００３９】
端末１３０は、端末１４０との間でパケット通信を行う。同様に、端末１４０は、端末１３０との間でパケット通信を行う。以降、パケット通信が端末１３０から端末１４０に向けて行われるものとして説明するが、これに限定されるものではなく、逆方向でも動作する。
【００４０】
図２は、ネットワーク構成情報テーブル１０１の詳細を示した図である。ネットワーク構成情報テーブル１０１は、ネットワーク構成情報エントリ１０１−１、１０１−２、等を含む。各ネットワーク構成情報エントリは、コントローラ１００が管理するネットワーク上の端末の情報を保持している。従って、ネットワーク構成情報テーブル１０１は、ネットワーク構成情報エントリを端末の数（Ｎ個）だけ保持している。
【００４１】
ネットワーク構成情報エントリは、ＶＬＡＮ−ＩＤと、ＭＡＣアドレスと、ＮＷを識別する識別子であるＮＷ−ＩＤと、スイッチリストを含む。以下、ネットワーク構成情報エントリ１０１−１を例にとって説明する。ネットワーク構成情報エントリ１０１−１は、図１の端末１３０に対応している。ＶＬＡＮ−ＩＤには、端末１３０が属するＶＬＡＮの識別子が格納されている。ＭＡＣアドレスには、端末１３０の固有の識別子であるＭＡＣアドレスが格納されている。なお、本実施形態では、端末の固有の識別子として、ＭＡＣアドレスを用いるが、これに限られるものではない。例えば、ＩＰアドレスを用いることも可能である。
【００４２】
ＮＷ−ＩＤには、端末１３０の属するＮＷの識別子が格納されている。なお、ＮＷ−ＩＤとしては、例えば、各端末に割り当てられたＩＰアドレスの前半部を用いて表現されるネットワークアドレスや、無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）の識別子であるＳＳＩＤ（Ｓｅｒｖｉｃｅ  Ｓｅｔ  Ｉｄｅｎｔｉｆｉｅｒ）等が挙げられる。仮想ネットワークであるＶＬＡＮのＩＤと異なるものであれば、これらに限られるものではなく、新規に識別子を設定して用いることも可能である。
【００４３】
最後に、スイッチリストには、端末１３０が属するＮＷに属するスイッチのリストが格納されている。図２の例では、スイッチ１１０とスイッチ１２０が格納されている。このスイッチリストは、コントローラ１００が収集した各スイッチの情報（ＶＬＡＮ−ＩＤ、ＭＡＣアドレス、ＮＷ−ＩＤ）から生成される。スイッチリストのその他の構成としては、例えば、受信パケットの転送経路を計算し、計算した経路上にあるスイッチのリストを格納することも可能である。
【００４４】
また、ネットワーク構成情報テーブル１０１には、スイッチリストは必ずしも必要ではない。検索部１０２または経路制御部１０３によってネットワーク構成情報テーブル１０１が検索される度に、コントローラ１００が管理するスイッチの情報を収集し、その情報を一時的に使用することも可能である。
【００４５】
図３は、転送テーブル１１２の詳細を示した図である。転送テーブル１１２は、転送テーブルエントリ１１２−１、１１２−２、等を含んでいる。
【００４６】
転送テーブルエントリは、上述のように、スイッチ１１０の受信パケットのヘッダに対して行う処理を記した処理規則を示すものである。転送テーブルエントリの内容としては、ＶＬＡＮ−ＩＤ、送信元ＭＡＣアドレス、宛先ＭＡＣアドレス、処理内容、入力ポート、出力ポート、を含む。ここで、スイッチ１１０の受信パケットのヘッダに記載された情報のうちいくつかを、転送テーブル１１２を検索する際の検索キーとして扱う。例えば、ＶＬＡＮ−ＩＤ、送信元ＭＡＣアドレス、宛先ＭＡＣアドレスを検索キーとすることが考えられる。同じ検索キーで定義されるパケットに対しては、同じ処理を行うことになる。
【００４７】
（動作）
続いて、本実施形態の動作について、図４および図５を用いて詳細に説明する。上述の通り、図１の端末１３０から端末１４０の方向へ通信が行われる場合について説明する。図４は、スイッチ１１０の動作を示すフローチャートである。図５は、コントローラ１００の動作を示すフローチャートである。
【００４８】
まず、スイッチ１１０の動作について、図４を用いて説明する。スイッチ１１０は、端末１３０からパケットを受信する（図４：ステップＳ１００１）。次に、パケット転送部１１１は、転送テーブル１１２を参照し、受信パケットに対応する転送テーブルエントリが存在するかどうかを判定する（図４：ステップＳ１００２）。
【００４９】
ステップＳ１００２で、受信パケットに対応する転送テーブルエントリが存在すると判定された場合は、ステップＳ１００３を行う。パケット転送部１１１は、該当する転送テーブルエントリに記載された処理内容、出力ポート等に従って、受信パケットの処理を行う（図４：ステップＳ１００３）。
【００５０】
ステップＳ１００２で、受信パケットに対応する転送テーブルエントリが存在しないと判定された場合は、ステップＳ１００４を行う。パケット転送部１１１は、コントローラ１００に対して、処理規則が不明であるパケットを受信した旨を問い合わせる、パケット受信メッセージを送信する。このパケット受信メッセージは、ヘッダを含む受信パケットに関する情報を含んでいる。従って、パケット受信メッセージに替えて、受信したパケットをそのまま送信することも可能である。
【００５１】
ステップＳ１００４が行われた場合は、コントローラ１００が図５に示す動作を行う。以下、コントローラ１００の動作について、図５を用いて説明する。
【００５２】
まず、コントローラ１００は、スイッチ１１０から、パケット受信メッセージを受信する。（図５：ステップＳ１００５）。
【００５３】
次に、検索部１０２が、ネットワーク構成情報テーブル１０１から、受信パケットの送信元端末（端末１３０）に対応するＮＷ−ＩＤが存在するかどうかを検索する（図５：ステップＳ１００６）。より具体的には、検索部１０２は、受信パケットのＶＬＡＮ−ＩＤと送信元ＭＡＣアドレスをキーに、対応するＮＷ−ＩＤを検索する。
【００５４】
ステップＳ１００６で、ネットワーク構成情報テーブル１０１に受信パケットの送信元端末に対応するＮＷ−ＩＤが存在しなかった場合には、スイッチ１１０に対して、受信パケットを破棄するよう命令する（図５：ステップＳ１００７）。コントローラ１００が、パケット受信メッセージではなく、受信パケットそのものを受信している場合には、コントローラ１００が受信パケットを破棄する。
【００５５】
ステップＳ１００６で、ネットワーク構成情報テーブル１０１に受信パケットの送信元端末に対応するＮＷ−ＩＤが存在し、検索された場合には、ステップＳ１００８を行う。検索部１０２は、ネットワーク構成情報テーブル１０１から、受信パケットの宛先端末（端末１４０）に対応するＶＬＡＮ−ＩＤがあるかどうかを検索する（図５：ステップＳ１００８）。より具体的には、受信パケットの宛先ＭＡＣアドレスと、ステップＳ１００６で検索したＮＷ−ＩＤとをキーに、対応するＶＬＡＮ−ＩＤを検索する。
【００５６】
ステップＳ１００８で、ネットワーク構成情報テーブル１０１に受信パケットの宛先端末に対応するＶＬＡＮ−ＩＤが存在しなかった場合には、スイッチ１１０に対して、受信パケットを破棄するよう命令する（図５：ステップＳ１００９）。ステップＳ１００７と同様、コントローラ１００が、パケット受信メッセージではなく、受信パケットそのものを受信している場合には、コントローラ１００が受信パケットを破棄する。
【００５７】
ステップＳ１００８で、ネットワーク構成情報テーブル１０１に受信パケットの宛先端末に対応するＶＬＡＮ−ＩＤが存在し、検索された場合には、ステップＳ１０１０を行う。経路制御部１０３は、まず、ネットワーク構成情報テーブル１０１から、ステップＳ１００８でＶＬＡＮ−ＩＤを検索した際に該当した端末（宛先端末）に対応するスイッチリストを検索する。本実施形態においては、スイッチ１１０およびスイッチ１２０が記載されているものとする。その後、検索されたスイッチリストに記載されている各スイッチに対し、エントリ書き換えメッセージを送信する（図５：ステップＳ１０１０）。このエントリ書き換えメッセージは、スイッチ１１０の転送テーブル１１２と、スイッチ１２０の転送テーブル１２２のエントリに、受信パケットに対応するエントリを新たに加える命令である。エントリ書き換えメッセージは、受信パケットのヘッダ（ＶＬＡＮ−ＩＤ、送信元ＭＡＣアドレス、宛先ＭＡＣアドレス）と、ヘッダに対応する処理内容、入力ポート、出力ポートを含むものである。
【００５８】
エントリ書き換えメッセージについて、さらに詳細に説明する。スイッチ１１０またはスイッチ１２０のどちらか一方に対しては、新規に加えるエントリのＶＬＡＮ−ＩＤを、ステップＳ１００８で検索されたＶＬＡＮ−ＩＤで書き換える。また、スイッチ１１０またはスイッチ１２０のもう一方に対しては、スイッチが該当するパケットを受信した際に、受信パケットのヘッダに記載されたＶＬＡＮ−ＩＤを、ステップＳ１００８で検索されたＶＬＡＮ−ＩＤで書き換えるという処理を、処理内容として設定する。なお、スイッチが３個以上ある場合には、スイッチ１２０以外に処理規則を設定すべきスイッチに対し、スイッチ１２０と同様のエントリ書き換えメッセージを送信すれば良い。
【００５９】
最後に、コントローラ１００は、エントリ書き換えメッセージの送信元スイッチ（スイッチ１１０）に対して、受信パケットを宛先端末（端末１４０）に送信するよう指示を出す。コントローラ１００が、パケット受信メッセージではなく、受信パケットをそのまま受信していた場合には、受信パケットの宛先端末（端末１４０）に向けて受信パケットを直接送信しても良い（図５：ステップＳ１０１１）。
【００６０】
（効果）
以上説明した通り、本実施形態においては、コントローラ１００が、ＶＬＡＮに属する端末を、ＶＬＡＮとは異なる仮想ネットワークであるＮＷに属するように構成情報を保持し、端末間の通信を制御する。この構成により、本実施形態によれば、以下のような効果を奏する。
【００６１】
（１）同一のＮＷ上であれば、ＶＬＡＮ−ＩＤが一致していない端末間でも通信を行うことが可能になる。例えば、図２３の端末１３０と端末１４０は、異なるＶＬＡＮ−ＩＤを有する一方、同一のＮＷ−ＩＤを有している。端末１３０と端末１４０との間の通信が確立されていない場合であっても、コントローラ１００の制御によってＮＷ上での通信が可能となる。
【００６２】
（２）異なるＮＷ上であれば、同一のＶＬＡＮ−ＩＤを複数の端末が使用することが可能になる。例えば、図２３の端末１３１と端末１４０は、同一のＶＬＡＮ−ＩＤ「２」を有する。端末１３１と端末１４０とは、それぞれ異なるＮＷに属しているため、ＮＷの構成が変更されない限り、互いに通信を行うことはない。よって、端末１３１と端末１４０とは、同一のＶＬＡＮ−ＩＤを有することが可能となる。
【００６３】
以上（１）および（２）で説明したように、仮想ネットワークの構築は、ＮＷおよびＮＷ-ＩＤを用いるため、ＶＬＡＮおよびＶＬＡＮ−ＩＤに依存しない。従って、ＶＬＡＮ−ＩＤの個数制限の問題を解消することができる。また、ＶＬＡＮ−ＩＤを仮想ネットワークの構築のために使用しないことから、ＶＬＡＮ−ＩＤを各端末が有するＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）の多重化のために用いることができる。
【００６４】
＜実施形態２＞
（概要）
次に、本発明の第２の実施形態について、図６および図７を用いて詳細に説明する。本実施形態と第１の実施形態との差分は、コントローラが、スイッチの受信パケットの送信元端末が属するＮＷ−ＩＤを検索する際（図５：ステップＳ１００６）に用いる情報と、受信パケットの宛先端末が属するＶＬＡＮ−ＩＤを検索する際（図５：ステップＳ１００８）に用いる情報にある。
【００６５】
（構成）
図６は、本実施形態のシステムの構成を示すブロック図である。本実施形態によるシステムは、コントローラ２００、スイッチ２１０、スイッチ２２０、端末２３０、端末２４０とを含む。
【００６６】
コントローラ２００は、ネットワーク構成情報テーブル２０１、検索部２０２、経路制御部２０３とを含む。
【００６７】
スイッチ２１０は、パケット転送部２１１と、転送テーブル２１２とを含む。同様に、スイッチ２２０は、パケット転送部２２１と、転送テーブル２２２とを含む。
【００６８】
なお、コントローラ２００のネットワーク構成情報テーブル２０１以外は、いずれも第１の実施形態と同様であるので、ここでは説明を省略する。
【００６９】
以下、図７を用いて、ネットワーク構成情報テーブル２０１について説明する。図７は、ネットワーク構成情報テーブル２０１の詳細構成を示している。
【００７０】
ネットワーク構成情報テーブル２０１は、ネットワーク構成情報エントリ２０１−１、２０１−２、等を含む。各ネットワーク構成情報エントリは、コントローラ２００が管理するネットワーク上の端末の情報を保持している。従って、第１の実施形態と同様、ネットワーク構成情報テーブル２０１は、ネットワーク構成情報エントリを端末の数（Ｎ個）だけ保持している。
【００７１】
ネットワーク構成情報エントリは、ＶＬＡＮ−ＩＤと、ＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレスと、Ｌ３（Ｌａｙｅｒ  ３）アドレスと、ＮＷ−ＩＤと、スイッチリストを含む。第１の実施形態との差分は、ネットワーク構成情報エントリに、Ｌ３アドレスが含まれていることである。Ｌ３とは、ＯＳＩ（Ｏｐｅｎ  Ｓｙｓｔｅｍｓ  Ｉｎｔｅｒｃｏｎｎｅｃｔｉｏｎ）参照モデルの７階層の第３層（レイヤ３、ネットワーク層）を表している。Ｌ３アドレスの代表的な例としては、ＩＰアドレスが挙げられる。
【００７２】
以下、ネットワーク構成情報エントリ２０１−１を例にとって説明する。ネットワーク構成情報エントリ２０１−１は、図６の端末２３０に対応している。上述の通り、第１の実施形態（図２）と比較して、Ｌ３アドレスが追加されている。このＬ３アドレスには、端末２３０の識別子であるＬ３アドレスが格納されている。ネットワーク構成情報エントリのうち、Ｌ３アドレス以外、つまり、ＶＬＡＮ−ＩＤ、ＭＡＣアドレス、ＮＷ−ＩＤ、スイッチリストについては、第１の実施形態と同様であるので、その説明は省略する。
【００７３】
（動作）
本実施形態と第１の実施形態との動作の差分としては、上述の通り、図５のステップＳ１００６およびステップＳ１００８が挙げられる。以下、図５を用いて、ステップＳ１００６およびステップＳ１００８の差分について説明する。
【００７４】
ステップＳ１００６では、検索部２０２が、ネットワーク構成情報テーブル２０１から、受信パケットの送信元端末（端末２３０）に対応するＮＷ−ＩＤが存在するかどうかを検索する。本実施形態では、検索部２０２は、受信パケットのＶＬＡＮ−ＩＤと送信元ＭＡＣアドレスに加え、送信元端末（端末２３０）のＬ３アドレスをキーに、対応するＮＷ−ＩＤを検索する。
【００７５】
ステップＳ１００６で、ネットワーク構成情報テーブル２０１に受信パケットの送信元端末に対応するＮＷ−ＩＤが存在し、検索された場合には、ステップＳ１００８を行う。検索部２０２は、ネットワーク構成情報テーブル２０１から、受信パケットの宛先端末（端末２４０）に対応するＶＬＡＮ−ＩＤがあるかどうかを検索する（図５：ステップＳ１００８）。本実施形態では、受信パケットの宛先ＭＡＣアドレスと、ステップＳ１００６で検索したＮＷ−ＩＤに加え、送信先端末（端末２４０）のＬ３アドレスをキーに、対応するＶＬＡＮ−ＩＤを検索する。
【００７６】
（効果）
以上説明した通り、本実施形態においては、第１の実施形態と同様の効果を奏する。
【００７７】
＜実施形態３＞
（概要）
本発明の第３の実施形態について、図面を参照して詳細に説明する。本実施形態は、第１の実施形態を、非特許文献２に記載のＯｐｅｎＦｌｏｗ（ＯＦ）と呼ばれる技術に適用した場合について説明する。
【００７８】
（構成）
本実施形態の構成について、図８から図１０を参照して説明する。図８は、本実施形態によるシステムの構成を示したブロック図である。
【００７９】
図８によれば、本実施形態のシステムは、ＯＦコントローラ３００、ＯＦスイッチ３１０、ＯＦスイッチ３２０、端末３３０、端末３４０を含む。
【００８０】
ＯＦコントローラ３００は、ネットワーク構成情報テーブル３０１、検索部３０２、経路制御部３０３を含む。ＯＦコントローラ３００は、ＯＦスイッチ３１０、ＯＦスイッチ３２０、端末３３０および端末３４０を管理する装置である。
【００８１】
ネットワーク構成情報テーブル３０１は、ＯＦコントローラ３００の管理下にあるネットワーク上の端末（端末３３０および端末３４０）の情報を保持するテーブルである。詳細は後述する（図９）。
【００８２】
検索部３０２は、各ＯＦスイッチが受信したパケット（以下、「受信パケット」）の情報に基づいて、ネットワーク構成情報テーブル３０１から、受信パケットの宛先端末が属するＶＬＡＮ−ＩＤを検索する。
【００８３】
経路制御部３０３は、受信パケットの送信元端末または宛先端末と同じＮＷに属するＯＦスイッチのリストを、ネットワーク構成情報テーブル３０１から取り出す。続いて、取り出したスイッチに対して、受信パケットの送信元端末と宛先端末との間での通信が可能となるように、処理規則（エントリ）を設定する。
【００８４】
ＯＦスイッチ３１０は、パケット転送部３１１、フローテーブル３１２を含む。同様に、ＯＦスイッチ３２０は、パケット転送部３２１、フローテーブル３２２を含む。
【００８５】
パケット転送部３１１は、受信パケットについて、フローテーブル３１２に受信パケットに対応する処理規則があるかどうかを検索する。対応する処理規則がある場合には、その処理規則に記載された処理内容を参照して、Ａｃｔｉｏｎを実行する。Ａｃｔｉｏｎには、例えば、特定のポート（図では非表示）を経由して、ＯＦスイッチ３２０にパケットを転送する、パケットを破棄する、パケットのヘッダを書き換える、パケットのブロードキャストを行う、というような処理が含まれる。また、受信したパケットに対応する処理規則がフローテーブル３１２に記載されていなかった場合は、ＯＦコントローラ３００に対して、どのＡｃｔｉｏｎを行うか問い合わせを行う。
【００８６】
フローテーブル３１２は、ＯＦスイッチ３１０の受信パケットの情報（ヘッダ）の内容と、受信パケットのヘッダに応じたＡｃｔｉｏｎとを対応付けて、処理規則として１つのエントリに格納している。上述の通り、パケット転送部３１１は、受信パケットに対して、対応するＡｃｔｉｏｎを行う。詳細は後述する（図１０）。
【００８７】
なお、ＯＦスイッチ３２０のパケット転送部３２１およびフローテーブル３２２は、ＯＦスイッチ３１０のパケット転送部３１１、フローテーブル３１２と同様であるため、説明は省略する。また、図８では、スイッチの数が２個であるが、これに限定されるものではなく、３個以上であっても同様に動作する。
【００８８】
端末３３０は、端末３４０との間でパケット通信を行う。同様に、端末３４０は、端末３３０との間でパケット通信を行う。以降、パケット通信が端末３３０から端末３４０に向けて行われるものとして説明するが、これに限定されるものではなく、逆方向でも動作する。
【００８９】
図９は、ネットワーク構成情報テーブル３０１の詳細を示した図である。ネットワーク構成情報テーブル３０１は、ネットワーク構成情報エントリ３０１−１、３０１−２、等を含む。各ネットワーク構成情報エントリは、ＯＦコントローラ３００が管理するネットワーク上の端末の情報を保持している。従って、ネットワーク構成情報テーブル３０１は、ネットワーク構成情報エントリを端末の数（Ｎ個）だけ保持している。
【００９０】
ネットワーク構成情報エントリは、ＶＬＡＮ−ＩＤと、ＭＡＣアドレスと、ＮＷ−ＩＤと、スイッチリストを含む。以下、ネットワーク構成情報エントリ３０１−１を例にとって説明する。ネットワーク構成情報エントリ３０１−１は、図８の端末３３０に対応している。ＶＬＡＮ−ＩＤには、端末３３０が属するＶＬＡＮの識別子が格納されている。ＭＡＣアドレスには、端末３３０の固有の識別子であるＭＡＣアドレスが格納されている。なお、第１の実施形態と同様、本実施形態においても、端末の固有の識別子として、ＭＡＣアドレスを用いるが、これに限られるものではない。例えば、ＩＰアドレスを用いることも可能である。
【００９１】
ＮＷ−ＩＤには、端末３３０の属するＮＷの識別子が格納されている。なお、第１実施形態と同様に、ＮＷ−ＩＤとしては、例えば、各端末に割り当てられたＩＰアドレスの前半部を用いて表現されるネットワークアドレスや、無線ＬＡＮの識別子であるＳＳＩＤ等が挙げられる。仮想ネットワークであるＶＬＡＮのＩＤと異なるものであれば、これらに限られるものではなく、新規に識別子を設定して用いることも可能である。
【００９２】
最後に、スイッチリストには、端末３３０が属するＮＷに属するスイッチのリストが格納されている。このスイッチリストは、ＯＦコントローラ３００が収集した各スイッチの情報（ＶＬＡＮ−ＩＤ、ＭＡＣアドレス、ＮＷ−ＩＤ）から生成される。スイッチリストのその他の構成としては、例えば、受信パケットの転送経路を計算し、計算した経路上にあるＯＦスイッチのリストを格納することも可能である。
【００９３】
第１の実施形態と同様、ネットワーク構成情報テーブル３０１には、スイッチリストは必ずしも必要ではない。検索部３０２または経路制御部３０３によってネットワーク構成情報テーブル３０１が検索される度に、ＯＦコントローラ３００が管理するスイッチの情報を収集し、その情報を一時的に使用することも可能である。
【００９４】
また、図９では、ネットワーク構成情報エントリ内に、ＶＬＡＮ−ＩＤ、ＭＡＣアドレス、ＮＷ−ＩＤ、スイッチリストの４つの情報が含まれる例を示したが、第２の実施形態と同様に、さらにＬ３アドレスを付加することも可能である。その場合の構成および動作については、第２の実施形態とほぼ同様であるため、ここでは説明を省略する。
【００９５】
図１０は、フローテーブル３１２の詳細を示した図である。フローテーブル３１２は、フローテーブルエントリ３１２−１、３１２−２、等を含む。
【００９６】
フローテーブルエントリは、上述のように、スイッチ１１０の受信パケットのヘッダに対して行う処理を記した処理規則を示すものである。エントリの内容としては、ＶＬＡＮ−ＩＤ、送信元ＭＡＣアドレス、宛先ＭＡＣアドレス、Ａｃｔｉｏｎ、入力ポート、出力ポート、を含む。ここで、ＯＦスイッチ３１０の受信パケットのヘッダに記載された情報のうちいくつかを、フローテーブル３１２を検索する際の検索キーとして扱う。例えば、ＶＬＡＮ−ＩＤ、送信元ＭＡＣアドレス、宛先ＭＡＣアドレスを検索キーとすることが考えられる。同じ検索キーで定義されるパケットに対しては、同じＡｃｔｉｏｎを行うことになる。
【００９７】
（動作）
続いて、本実施形態の動作について、図１１および図１２を用いて詳細に説明する。上述の通り、以下では、図８の端末３３０から端末３４０の方向へ通信が行われる場合について説明する。図１１は、ＯＦスイッチ３１０の動作を示すフローチャートである。図１２は、ＯＦコントローラ３００の動作を示すフローチャートである。
【００９８】
まず、ＯＦスイッチ３１０の動作について、図１１を用いて説明する。ＯＦスイッチ３１０は、端末３３０からパケットを受信する（図１１：ステップＳ３００１）。次に、パケット転送部３１１は、フローテーブル３１２を参照し、受信パケットに対応するフローテーブルエントリが存在するかどうかを判定する（図１１：ステップＳ３００２）。
【００９９】
ステップＳ３００２で、受信パケットに対応するフローテーブルエントリが存在すると判定された場合は、ステップＳ３００３を行う。パケット転送部３１１は、該当するフローテーブルエントリに記載された処理内容、出力ポート等に従って、受信パケットの処理を行う（図１１：ステップＳ３００３）。
【０１００】
ステップＳ３００２で、受信パケットに対応するフローテーブルエントリが存在しないと判定された場合は、ステップＳ３００４を行う。パケット転送部３１１は、ＯＦコントローラ３００に対して、処理規則が不明であるパケットを受信した旨を通知するメッセージを送信する。このメッセージは、非特許文献２では、Ｐａｃｋｅｔ−ｉｎと呼ばれるものである。このＰａｃｋｅｔ−ｉｎは、ヘッダを含む受信パケットに関する情報を含んでいる。従って、Ｐａｃｋｅｔ−ｉｎに替えて、受信したパケットをそのまま送信することも可能である。
【０１０１】
ステップＳ３００４が行われた場合は、ＯＦコントローラ３００が図１２に示す動作を行う。以下、ＯＦコントローラ３００の動作について、図１２を用いて説明する。
【０１０２】
まず、ＯＦコントローラ３００は、ＯＦスイッチ３１０から、Ｐａｃｋｅｔ−ｉｎを受信する。（図１２：ステップＳ３００５）。
【０１０３】
次に、検索部３０２が、ネットワーク構成情報テーブル３０１から、受信パケットの送信元端末（端末３３０）に対応するＮＷ−ＩＤが存在するかどうかを検索する（図１２：ステップＳ３００６）。より具体的には、検索部３０２は、受信パケットのＶＬＡＮ−ＩＤと送信元ＭＡＣアドレスをキーに、対応するＮＷ−ＩＤを検索する。
【０１０４】
ステップＳ３００６で、ネットワーク構成情報テーブル３０１に受信パケットの送信元端末に対応するＮＷ−ＩＤが存在しなかった場合には、ＯＦスイッチ３１０に対して、受信パケットを破棄するよう命令する（図１２：ステップＳ３００７）。ＯＦコントローラ３００が、Ｐａｃｋｅｔ−ｉｎではなく、受信パケットそのものを受信している場合には、ＯＦコントローラ３００が受信パケットを破棄する。
【０１０５】
ステップＳ３００６で、ネットワーク構成情報テーブル３０１に受信パケットの送信元端末に対応するＮＷ−ＩＤが存在し、検索された場合には、ステップＳ３００８を行う。検索部３０２は、ネットワーク構成情報テーブル３０１から、受信パケットの宛先端末（端末３４０）に対応するＶＬＡＮ−ＩＤがあるかどうかを検索する（図１２：ステップＳ３００８）。より具体的には、受信パケットの宛先ＭＡＣアドレスと、ステップＳ３００６で検索したＮＷ−ＩＤとをキーに、対応するＶＬＡＮ−ＩＤを検索する。
【０１０６】
ステップＳ３００８で、ネットワーク構成情報テーブル３０１に受信パケットの宛先端末に対応するＶＬＡＮ−ＩＤが存在しなかった場合には、ＯＦスイッチ３１０に対して、受信パケットを破棄するよう命令する（図１２：ステップＳ３００９）。この命令とは、より具体的には、受信パケットを破棄する処理を記したＡｃｔｉｏｎを含むエントリをＯＦスイッチ３１０に設定するよう命令することを示している。
【０１０７】
非特許文献２において、このような命令は、ｆｌｏｗ＿ｍｏｄと呼ばれるメッセージによってＯＦスイッチに設定される。このｆｌｏｗ＿ｍｏｄは、ＯＦコントローラからＯＦスイッチに対して、フローテーブル内のエントリの設定を行うためのメッセージである。フローテーブルエントリの設定には、例えば、新規登録・変更・上書き・削除等が含まれる。
【０１０８】
また、ステップＳ３００７と同様、ＯＦコントローラ３００が、Ｐａｃｋｅｔ−ｉｎを受信せず、受信パケットそのものを受信している場合には、ＯＦコントローラ３００が受信パケットを破棄する。
【０１０９】
ステップＳ３００８で、ネットワーク構成情報テーブル３０１に受信パケットの宛先端末に対応するＶＬＡＮ−ＩＤが存在し、検索された場合には、ステップＳ３０１０を行う。経路制御部３０３は、まず、ネットワーク構成情報テーブル３０１から、ステップＳ３００８でＶＬＡＮ−ＩＤを検索した際に該当した端末（宛先端末）に対応するＯＦスイッチリストを検索する。本実施形態においては、ＯＦスイッチ３１０およびＯＦスイッチ３２０が記載されているものとする。その後、検索されたＯＦスイッチリストに記載されている各ＯＦスイッチに対し、ｆｌｏｗ＿ｍｏｄを送信する（図１２：ステップＳ３０１０）。このｆｌｏｗ＿ｍｏｄは、ＯＦスイッチ３１０のフローテーブル３１２、ＯＦスイッチ３２０のフローテーブル３２２のエントリに、受信パケットに対応するエントリを新たに加えるために送信される。
【０１１０】
ステップＳ３０１０において送信されるｆｌｏｗ＿ｍｏｄについて、さらに詳細に説明する。ＯＦスイッチ３１０またはＯＦスイッチ３２０のどちらか一方に対しては、新規に加えるエントリのＶＬＡＮ−ＩＤを、ステップＳ３００８で検索されたＶＬＡＮ−ＩＤで書き換える。また、ＯＦスイッチ３１０またはＯＦスイッチ３２０のもう一方に対しては、ＯＦスイッチが該当するパケットを受信した際に、受信パケットのヘッダに記載されたＶＬＡＮ−ＩＤを、ステップＳ３００８で検索されたＶＬＡＮ−ＩＤで書き換えるという処理を、Ａｃｔｉｏｎとして設定する。なお、スイッチが３個以上ある場合には、ＯＦスイッチ３２０以外に処理規則を設定すべきＯＦスイッチに対し、ＯＦスイッチ３２０と同様のｆｌｏｗ＿ｍｏｄを送信すれば良い。
【０１１１】
最後に、ＯＦコントローラ３００は、ｐａｃｋｅｔ−ｉｎの送信元ＯＦスイッチ（ＯＦスイッチ３１０）に対して、受信パケットを宛先端末（端末３４０）に送信するよう命令を出す。この命令は、非特許文献２においては、Ｐａｃｋｅｔ−ｏｕｔと呼ばれるメッセージに相当する。ＯＦコントローラ３００が、Ｐａｃｋｅｔ−ｉｎではなく、受信パケットをそのまま受信していた場合には、受信パケットの宛先端末（端末３４０）に向けて受信パケットを直接送信しても良い（図１２：ステップＳ３０１１）。
【０１１２】
（動作例）
以下、第３の実施形態の具体的な動作例について、図１３から図２１を用いて説明する。
【０１１３】
図１３は、本動作例におけるシステムの構成を示している。図１３で示されるシステムは、ＯＦコントローラ３００、ＯＦスイッチ３１０、ＯＦスイッチ３２０、端末３３０、端末３４０から構成される。
【０１１４】
図１３に示す通り、ＯＦスイッチ３１０、ＯＦスイッチ３２０、端末３３０、端末３４０は、ネットワーク１（ＮＷ１）に含まれている。また、ＯＦスイッチ３１０と端末３３０は、ＶＬＡＮ１に、ＯＦスイッチ３２０と端末３４０は、ＶＬＡＮ２に、それぞれ含まれているものとする。また、端末３３０のＭＡＣアドレスは「３３０」、端末３４０のＭＡＣアドレスは「３４０」とそれぞれ設定されている。なお、本動作例では、簡単のため、ＮＷが１つである場合の動作を示す。
【０１１５】
図１３のＡ、Ｂ、Ｃ、Ｄは、各ＯＦスイッチのポートを表す。ＯＦスイッチ３１０のポートＡは、端末３３０と接続する。ＯＦスイッチ３１０のポートＢは、ＯＦスイッチ３２０と接続する。ＯＦスイッチ３２０のポートＣは、ＯＦスイッチ３１０と接続する。ＯＦスイッチ３２０のポートＤは、端末３４０と接続する。
【０１１６】
ここで、図１３では、ＯＦコントローラ３００が、ＮＷ１に含まれていない構成を示しているが、ＮＷ１に含まれていても良い。また、ＯＦコントローラ３００とＯＦスイッチ３１０、ＯＦスイッチ３２０は、専用のネットワークで接続されていても良いし、ＯＦスイッチ３１０、ＯＦスイッチ３２０同士を接続するネットワーク（ＮＷ１）で接続されていても良い。
【０１１７】
図１４は、第３の実施形態のステップＳ３００１、ステップＳ３００２（図１１）、ステップＳ３００４、ステップＳ３００５（図１２）の動作例を示している。
【０１１８】
図１３に加えて、フローテーブル３１２、フローテーブル３２２、ＯＦスイッチ３１０が受信したパケットのヘッダの内容を記載している。フローテーブル３１２およびフローテーブル３２２には、このパケットに対応するエントリはまだ記載されていないものとする。
【０１１９】
まず、端末３３０が端末３４０を宛先としたパケットを送信する。このパケットのヘッダには、ＶＬＡＮ−ＩＤとして、端末３３０が属するＶＬＡＮのＩＤである「１」が、送信元ＭＡＣアドレスとして、端末３３０の「３３０」、宛先ＭＡＣアドレスとして、端末３４０の「３４０」が、それぞれ記載されている。
【０１２０】
このパケットを受信したＯＦスイッチ３１０のパケット転送部３１１は、フローテーブル３１２に受信パケットに対応するエントリがあるかどうかを検索する（図１１：ステップＳ３００１、ステップＳ３００２）。フローテーブル３１２には対応するエントリがないため、パケット転送部３１１は、ｐａｃｋｅｔ−ｉｎを用いて、ＯＦコントローラ３００に処理内容の問い合わせを行う（図１１：ステップＳ３００４）。続いて、ＯＦコントローラ３００は、このｐａｃｋｅｔ−ｉｎを受信する（図１２：ステップＳ３００５）。
【０１２１】
図１５および図１６は、第３の実施形態のステップＳ３００６の動作例を示している。図１４に加え、ＯＦコントローラ３００が保持するネットワーク構成情報テーブル３０１の内容を示している。
【０１２２】
本動作例では、ネットワーク構成情報テーブル３０１のエントリとして、端末３３０および端末３４０に対応するエントリが格納されている。
【０１２３】
端末３３０に対応するエントリは、ＶＬＡＮ−ＩＤとして「１」、ＭＡＣアドレスとして「３３０」、ＮＷ−ＩＤとして「１」、スイッチリスト（ＳＷ−ｌｉｓｔ）として「３１０、３２０」をそれぞれ格納している。
【０１２４】
同様に、端末３４０に対応するエントリは、ＶＬＡＮ−ＩＤとして「２」、ＭＡＣアドレスとして「３４０」、ＮＷ−ＩＤとして「１」、スイッチリストとして「３１０、３２０」をそれぞれ格納している。
【０１２５】
ステップＳ３００６で、ＯＦコントローラ３００の検索部３０２は、受信パケットのＶＬＡＮ−ＩＤ（１）および送信元ＭＡＣアドレス（３３０）をキーに、ネットワーク構成情報テーブル３０１から対応するＮＷ−ＩＤを検索する。
【０１２６】
この検索の結果、ネットワーク構成情報テーブル３０１から、端末３３０が属するＮＷ−ＩＤ「１」を得ることができる（図１６）。
【０１２７】
図１７および図１８は、第３の実施形態のステップＳ３００８の動作例を示している。ステップＳ３００８で、検索部３０２は、受信パケットの宛先ＭＡＣアドレス（３４０）と、ステップＳ３００６で得たＮＷ−ＩＤ（１）とをキーに、対応するＶＬＡＮ−ＩＤを検索する（図１７）。その結果、ＶＬＡＮ−ＩＤとして「２」を得ることができる（図１８）。
【０１２８】
図１９は、第３の実施形態のステップＳ３０１０、ステップＳ３０１１の動作例を示している。
【０１２９】
まず、ＯＦコントローラ３００の経路制御部３０３は、ネットワーク構成情報テーブル３０１から、ステップＳ３００８でＶＬＡＮ−ＩＤを検索した際に該当した端末（宛先端末）に対応するＯＦスイッチリストを検索する。この場合は、スイッチリストとして、「３１０」と「３２０」が格納されている。
【０１３０】
その後、スイッチリストに記載されている各スイッチに対し、ｆｌｏｗ＿ｍｏｄを送信する（図１２：ステップＳ３０１０）。このｆｌｏｗ＿ｍｏｄは、ＯＦスイッチ３１０のフローテーブル３１２、ＯＦスイッチ３２０のフローテーブル３２２のエントリに、受信パケットに対応するエントリを新たに加えるために送信される。このｆｌｏｗ＿ｍｏｄの内容としては、以下の２種類が考えられる。
【０１３１】
（１）ＯＦスイッチ３１０のフローテーブル３１２に、ＶＬＡＮ−ＩＤ「１」、送信元ＭＡＣアドレス「３３０」、宛先ＭＡＣアドレス「３４０」、処理内容「ポートＢに出力」、「パケットのＶＬＡＮ−ＩＤを２に書き換え」、入力ポート「Ａ」、出力ポート「Ｂ」をそれぞれ設定する。同時に、ＯＦスイッチ３２０のフローテーブル３２２には、ＶＬＡＮ−ＩＤ「２」、送信元ＭＡＣアドレス「３３０」、宛先ＭＡＣアドレス「３４０」、処理内容「ポートＤに出力」、入力ポート「Ｃ」、出力ポート「Ｄ」をそれぞれ設定する。
【０１３２】
このように設定することで、ＯＦスイッチ３１０が該当パケットを受信した際、パケットのＶＬＡＮ−ＩＤが「１」から「２」に書き換えられることになり、ＶＬＡＮ−ＩＤ「２」に属する端末３４０まで通信することができる。
【０１３３】
（２）ＯＦスイッチ３１０のフローテーブル３１２には、ＶＬＡＮ−ＩＤ「１」、送信元ＭＡＣアドレス「３３０」、宛先ＭＡＣアドレス「３４０」、処理内容「ポートＢに出力」、入力ポート「Ａ」、出力ポート「Ｂ」をそれぞれ設定する。ＯＦスイッチ３２０のフローテーブル３２２には、ＶＬＡＮ−ＩＤ「１」、送信元ＭＡＣアドレス「３３０」、宛先ＭＡＣアドレス「３４０」、処理内容「ポートＤに出力」、「パケットのＶＬＡＮ−ＩＤを２に書き換え」、入力ポート「Ｃ」、出力ポート「Ｄ」をそれぞれ設定する。
【０１３４】
このように設定することで、ＯＦスイッチ３１０からＯＦスイッチ３２０までは該当パケットのＶＬＡＮ−ＩＤを「１」から書き換えることなく通信することができる。また、ＯＦスイッチ３２０において、パケットのＶＬＡＮ−ＩＤを「２」に書き換えることにより、ＶＬＡＮ−ＩＤ「２」に属する端末３４０までの通信が可能となる。
【０１３５】
最後に、ステップＳ３０１１では、ＯＦコントローラ３００は、ＯＦスイッチ３１０に対して、Ｐａｃｋｅｔ−ｏｕｔを送信し、受信パケットを宛先端末に送信するよう命令を行う。
【０１３６】
図２０および図２１は、上述した動作により、フローテーブル３１２およびフローテーブル３２２が更新された後の動作例を示している。図２１は、ステップＳ３０１０で、ｆｌｏｗ＿ｍｏｄにより、各フローテーブルが図１９の（１）の通り更新された場合の動作例を示している。図２１は、ステップＳ３０１０で、ｆｌｏｗ＿ｍｏｄにより、各フローテーブルが図１９の（２）の通り更新された場合の動作例を示している。
【０１３７】
図２０の例では、まず、ＯＦスイッチ３１０が該当パケットを受信すると、フローテーブル３１２を検索する。フローテーブル３１２の対応するエントリには、Ａｃｔｉｏｎとして「Ｓｅｔ  Ｖ−ＩＤ  ２」、つまりＶＬＡＮ−ＩＤを２に書き換えることが示されている。これに応じて、受信パケットヘッダのＶＬＡＮ−ＩＤは２に書き換えられる。その後、ＯＦスイッチ３２０では、フローテーブル３２２の対応エントリに従って端末３４０への転送が行われる。
【０１３８】
このＶＬＡＮ−ＩＤの書き換えが、ＶＬＡＮ（１）に属するＯＦスイッチ３１０において行われることで、異なるＶＬＡＮ間での通信が可能となる。
【０１３９】
図２１の例では、まず、ＯＦスイッチ３１０が該当パケットを受信すると、フローテーブル３１２を検索する。フローテーブル３１２には対応するエントリが存在するので、ＯＦスイッチ３１０は、これに従って、受信パケットをＯＦスイッチ３２０に転送する。
【０１４０】
続いて、ＯＦスイッチ３２０が該当パケットを受信した際には、フローテーブル３２２を検索し、Ａｃｔｉｏｎに記載されている「Ｓｅｔ  Ｖ−ＩＤ  ２」に従って、受信パケットのＶＬＡＮ−ＩＤを２に書き換える。
【０１４１】
図２１の例では、フローテーブル３２２の該当エントリのＶＬＡＮ−ＩＤをあらかじめ「１」に設定しておくことで、異なるＶＬＡＮ間での通信を可能にしている。
【０１４２】
（効果）
以上説明した通り、本実施形態においては、第１の実施形態と同様の効果を奏する。
【０１４３】
＜実施形態４＞
本発明の第４の実施形態について、図２２を参照して詳細に説明する。
【０１４４】
（構成）
本実施形態の構成について、図２２を参照して説明する。図２２は、本実施形態によるシステムの構成を示したブロック図である。
【０１４５】
図２２によれば、本実施形態のシステムは、制御装置４００、端末４３０、端末４４０を含む。
【０１４６】
制御装置４００は、ネットワーク構成情報管理部４０１と経路制御部４０３を含む。制御装置４００は、端末４３０と端末４４０間で行われる通信（パケット転送）を制御する装置である。
【０１４７】
端末４３０、端末４４０は、それぞれ、第１の識別子により識別される第１の仮想ネットワークに属している。
【０１４８】
ネットワーク構成情報管理部４０１は、端末４３０および端末４４０が、第２の識別子により識別される第２の仮想ネットワークに属するように、第２の仮想ネットワークの構成情報を保持する。
【０１４９】
経路制御部４０３は、ネットワーク構成情報管理部４０１が保持する第２の仮想ネットワークの構成情報に基づいて、各端末間の通信を制御する。
【０１５０】
（効果）
本実施形態によれば、制御装置が、第１の仮想ネットワークに属する端末を、第２の仮想ネットワークに属するように構成情報を保持し、端末間の通信を制御する。これにより、第１の仮想ネットワークの識別子の個数に対して使用制限がある場合でも、第２の仮想ネットワークを用いることで大規模ネットワークの構築が可能となる。
【０１５１】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【０１５２】
この出願は、２０１０年９月３日に出願された日本出願特願２０１０−１９７６３０を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【０１５３】
上記の実施形態の一部または全部は、以下の付記のようにも記載され得るが、以下には限られない。
【０１５４】
（付記１）
第１の識別子により識別される第１の仮想ネットワークに属する端末間のパケット転送を制御する制御装置であって、
第２の識別子により識別される第２の仮想ネットワークに前記端末が属するように、前記第２の仮想ネットワークの構成情報を保持するネットワーク構成情報管理手段と、
前記第２の仮想ネットワークの構成情報に基づいて、前記端末間の通信を制御する経路制御手段と、
を備えることを特徴とする制御装置。
【０１５５】
（付記２）
前記ネットワーク構成情報管理手段は、前記端末の識別子と前記端末が有する前記第１の識別子とを対応付けて、前記端末の識別情報として端末ごとに管理することを特徴とする付記１に記載の制御装置。
【０１５６】
（付記３）
前記ネットワーク構成情報管理手段は、前記第２の仮想ネットワークの構成情報として、前記端末の識別情報と、前記端末が有する前記第２の識別子とを対応付けて端末ごとに管理することを特徴とする付記１または２に記載の制御装置。
【０１５７】
（付記４）
前記制御装置は、さらに、検索手段を備え、
前記検索手段は、パケットを転送する転送装置の受信パケットに関する問い合わせを受信した場合、前記受信パケットの情報に基づいて、前記受信パケットの送信元端末および送信先端末が同一の前記第２の識別子を有するかどうか前記ネットワーク構成情報管理手段から検索し、前記受信パケットの送信元端末と送信先端末とが同一の前記第２の識別子を有する場合には、前記送信先端末の属する前記第１の識別子を前記ネットワーク構成情報管理手段から検索し、前記受信パケットの送信元端末と送信先端末とが異なる前記第２の識別子を有する場合には、前記受信パケットを破棄し、
前記経路制御手段は、前記送信元端末と前記送信先端末との間の転送経路を算出し、前記検出した送信先端末の前記第１の識別子に応じて、前記転送経路上の転送装置に前記受信パケットに対する処理を含む処理規則を設定する命令を通知することを特徴とする付記１から３のいずれか１つに記載の制御装置。
【０１５８】
（付記５）
前記検索手段は、前記送信元端末が属する前記第１の識別子と前記送信元端末の識別子とに基づいて、前記ネットワーク構成情報管理手段から前記送信元端末が有する前記第２の識別子を検索し、前記宛先端末の識別子と前記検索の結果得られた前記送信元端末が有する前記第２の識別子とに基づいて、前記ネットワーク構成情報管理手段から前記宛先端末が有する前記第１の識別子を検索することを特徴とする付記４に記載の制御装置。
【０１５９】
（付記６）
前記経路制御手段は、
前記問い合わせの送信元の転送装置に対し、前記受信パケットのヘッダ内の第１の識別子を、前記宛先端末が有する第１の識別子に更新する処理を含む処理規則を設定し、
前記問い合わせの送信元の転送装置以外の前記受信パケットの経路上の転送装置に対して、前記受信パケットに対応する処理規則のうち、前記受信パケットのヘッダの第１の識別子を、前記宛先端末が有する第１の識別子に更新することを特徴とする付記４または５に記載の制御装置。
【０１６０】
（付記７）
前記経路制御手段は、
前記問い合わせの送信元の転送装置以外の前記受信パケットの経路上の転送装置に対して、前記パケットのヘッダ内の第２の識別子を、前記宛先端末が有する第１の識別子に更新する処理を含む処理規則を設定することを特徴とする付記４または５に記載の制御装置。
【０１６１】
（付記８）
前記ネットワーク構成情報管理手段は、前記第２のネットワーク構成情報として、さらに、端末のＩＰアドレスを記憶し、
前記検索手段は、前記送信元端末が有する第１の識別子と前記送信元端末の識別子と前記送信元端末のＩＰアドレスとに基づいて、前記ネットワーク構成情報管理手段から前記送信元端末が有する第２の識別子を検索し、前記宛先端末の識別子と前記検索の結果得られた前記送信元端末が有する第２の識別子と前記宛先端末のＩＰアドレスとに基づいて、前記ネットワーク構成情報管理手段から前記宛先端末が有する第１の識別子を検索することを特徴とする付記３から７のいずれか１つに記載の制御装置。
【０１６２】
（付記９）
前記ネットワーク構成情報管理手段は、前記端末の識別情報として、さらに、端末が属する第２の仮想ネットワーク上の転送装置のリストを記憶し、
前記経路制御手段は、前記転送装置のリストから、前記送信元端末または前記宛先端末と同一の前記第２の仮想ネットワークに属する転送装置を検索することを特徴とする付記３から８のいずれか１つに記載の制御装置。
【０１６３】
（付記１０）
第１の識別子により識別される第１の仮想ネットワークに属する端末と、
前記端末間のパケット転送を制御する制御装置と、を備える通信システムであって、
前記制御装置は、
第２の識別子により識別される第２の仮想ネットワークに前記端末が属するように、前記第２の仮想ネットワークの構成情報を保持するネットワーク構成情報管理手段と、
前記第２の仮想ネットワークの構成情報に基づいて、前記端末間の通信を制御する経路制御手段と、
を備えることを特徴とする通信システム。
【０１６４】
（付記１１）
前記ネットワーク構成情報管理手段は、前記端末の識別子と前記端末が有する前記第１の識別子とを対応付けて、前記端末の識別情報として端末ごとに管理することを特徴とする付記１０に記載の通信システム。
【０１６５】
（付記１２）
前記ネットワーク構成情報管理手段は、前記第２の仮想ネットワークの構成情報として、前記端末の識別情報と、前記端末が有する前記第２の識別子とを対応付けて端末ごとに管理することを特徴とする付記１０または１１に記載の通信システム。
【０１６６】
（付記１３）
前記通信システムは、さらに、
パケットのヘッダと当該パケットに対応する処理とを対応付けた処理規則に基づいて受信パケットの処理を行い、前記受信パケットに対する前記処理規則が不明である場合には、前記制御装置へ問い合わせを行う転送装置を備え、
前記制御装置は、さらに、検索手段を備え、
前記検索手段は、前記問い合わせを受信した場合、前記受信パケットの情報に基づいて、前記受信パケットの送信元端末および送信先端末が同一の前記第２の識別子を有するかどうか前記ネットワーク構成情報管理手段から検索し、前記受信パケットの送信元端末と送信先端末とが同一の前記第２の識別子を有する場合には、前記送信先端末の属する前記第１の識別子を前記ネットワーク構成情報管理手段から検索し、前記受信パケットの送信元端末と送信先端末とが異なる前記第２の識別子を有する場合には、前記受信パケットを破棄し、
前記経路制御手段は、前記送信元端末と前記送信先端末との間の転送経路を算出し、前記検出した送信先端末の前記第１の識別子に応じて、前記転送経路上の転送装置に前記受信パケットに対する処理を含む処理規則を設定する命令を通知することを特徴とする付記１０から１２のいずれか１つに記載の通信システム。
【０１６７】
（付記１４）
前記検索手段は、前記送信元端末が属する前記第１の識別子と前記送信元端末の識別子とに基づいて、前記ネットワーク構成情報管理手段から前記送信元端末が有する前記第２の識別子を検索し、前記宛先端末の識別子と前記検索の結果得られた前記送信元端末が有する前記第２の識別子とに基づいて、前記ネットワーク構成情報管理手段から前記宛先端末が有する前記第１の識別子を検索することを特徴とする付記１３に記載の通信システム。
【０１６８】
（付記１５）
前記経路制御手段は、
前記問い合わせの送信元の転送装置に対し、前記受信パケットのヘッダ内の第１の識別子を、前記宛先端末が有する第１の識別子に更新する処理を含む処理規則を設定し、
前記問い合わせの送信元の転送装置以外の前記受信パケットの経路上の転送装置に対して、前記受信パケットに対応する処理規則のうち、前記受信パケットのヘッダの第１の識別子を、前記宛先端末が有する第１の識別子に更新することを特徴とする付記１３または１４に記載の通信システム。
【０１６９】
（付記１６）
前記経路制御手段は、
前記問い合わせの送信元の転送装置以外の前記受信パケットの経路上の転送装置に対して、前記パケットのヘッダ内の第２の識別子を、前記宛先端末が有する第１の識別子に更新する処理を含む処理規則を設定することを特徴とする付記１３または１４に記載の通信システム。
【０１７０】
（付記１７）
前記ネットワーク構成情報管理手段は、前記第２のネットワーク構成情報として、さらに、端末のＩＰアドレスを記憶し、
前記検索手段は、前記送信元端末が有する第１の識別子と前記送信元端末の識別子と前記送信元端末のＩＰアドレスとに基づいて、前記ネットワーク構成情報管理手段から前記送信元端末が有する第２の識別子を検索し、前記宛先端末の識別子と前記検索の結果得られた前記送信元端末が有する第２の識別子と前記宛先端末のＩＰアドレスとに基づいて、前記ネットワーク構成情報管理手段から前記宛先端末が有する第１の識別子を検索することを特徴とする付記１２から１６のいずれか１つに記載の通信システム。
【０１７１】
（付記１８）
前記ネットワーク構成情報管理手段は、前記端末の識別情報として、さらに、端末が属する第２の仮想ネットワーク上の転送装置のリストを記憶し、
前記経路制御手段は、前記転送装置のリストから、前記送信元端末または前記宛先端末と同一の前記第２の仮想ネットワークに属する転送装置を検索することを特徴とする付記１２から１７のいずれか１つに記載の通信システム。
【０１７２】
（付記１９）
第１の識別子により識別される第１の仮想ネットワークに属する端末間のパケット転送を制御する通信方法であって、
第２の識別子により識別される第２の仮想ネットワークに前記端末が属するようにネットワーク構成情報管理手段に保持された前記第２の仮想ネットワークの構成情報に基づいて、前記端末間の通信を制御することを特徴とする通信方法。
【０１７３】
（付記２０）
前記ネットワーク構成情報管理手段は、前記端末の識別子と前記端末が有する前記第１の識別子とを対応付けて、前記端末の識別情報として端末ごとに管理することを特徴とする付記１９に記載の通信方法。
【０１７４】
（付記２１）
前記ネットワーク構成情報管理手段は、前記第２の仮想ネットワークの構成情報として、前記端末の識別情報と、前記端末が有する前記第２の識別子とを対応付けて端末ごとに管理することを特徴とする付記１９または２０に記載の通信方法。
【０１７５】
（付記２２）
前記通信方法は、さらに、
パケットを転送する転送装置の受信パケットに関する問い合わせを受信した場合、前記受信パケットの情報に基づいて、前記受信パケットの送信元端末および送信先端末が同一の前記第２の識別子を有するかどうか前記ネットワーク構成情報管理手段から検索し、前記受信パケットの送信元端末と送信先端末とが同一の前記第２の識別子を有する場合には、前記送信先端末の属する前記第１の識別子を前記ネットワーク構成情報管理手段から検索し、前記受信パケットの送信元端末と送信先端末とが異なる前記第２の識別子を有する場合には、前記受信パケットを破棄し、
前記送信元端末と前記送信先端末との間の転送経路を算出し、前記検出した送信先端末の前記第１の識別子に応じて、前記転送経路上の転送装置に前記受信パケットに対する処理を含む処理規則を設定する命令を通知することを特徴とする付記１９から２１のいずれか１つに記載の通信方法。
【０１７６】
（付記２３）
前記通信方法は、さらに、
前記送信元端末が属する前記第１の識別子と前記送信元端末の識別子とに基づいて、前記ネットワーク構成情報管理手段から前記送信元端末が有する前記第２の識別子を検索し、前記宛先端末の識別子と前記検索の結果得られた前記送信元端末が有する前記第２の識別子とに基づいて、前記ネットワーク構成情報管理手段から前記宛先端末が有する前記第１の識別子を検索することを特徴とする付記２２に記載の通信方法。
【０１７７】
（付記２４）
前記通信方法は、さらに、
前記問い合わせの送信元の転送装置に対し、前記受信パケットのヘッダ内の第１の識別子を、前記宛先端末が有する第１の識別子に更新する処理を含む処理規則を設定し、
前記問い合わせの送信元の転送装置以外の前記受信パケットの経路上の転送装置に対して、前記受信パケットに対応する処理規則のうち、前記受信パケットのヘッダの第１の識別子を、前記宛先端末が有する第１の識別子に更新することを特徴とする付記２２または２３に記載の通信方法。
【０１７８】
（付記２５）
前記通信方法は、さらに、
前記問い合わせの送信元の転送装置以外の前記受信パケットの経路上の転送装置に対して、前記パケットのヘッダ内の第２の識別子を、前記宛先端末が有する第１の識別子に更新する処理を含む処理規則を設定することを特徴とする付記２２または２３に記載の通信方法。
【０１７９】
（付記２６）
前記ネットワーク構成情報管理手段は、前記第２のネットワーク構成情報として、さらに、端末のＩＰアドレスを記憶し、
前記検索手段は、前記送信元端末が有する第１の識別子と前記送信元端末の識別子と前記送信元端末のＩＰアドレスとに基づいて、前記ネットワーク構成情報管理手段から前記送信元端末が有する第２の識別子を検索し、前記宛先端末の識別子と前記検索の結果得られた前記送信元端末が有する第２の識別子と前記宛先端末のＩＰアドレスとに基づいて、前記ネットワーク構成情報管理手段から前記宛先端末が有する第１の識別子を検索することを特徴とする付記２１から２５のいずれか１つに記載の通信方法。
【０１８０】
（付記２７）
前記ネットワーク構成情報管理手段は、前記端末の識別情報として、さらに、端末が属する第２の仮想ネットワーク上の転送装置のリストを記憶し、
前記経路制御手段は、前記転送装置のリストから、前記送信元端末または前記宛先端末と同一の前記第２の仮想ネットワークに属する転送装置を検索することを特徴とする付記２１から２５のいずれか１つに記載の通信方法。
【０１８１】
（付記２８）
第１の識別子により識別される第１の仮想ネットワークに属する端末間のパケット転送を制御する通信プログラムを記録する記録媒体であって、
第２の識別子により識別される第２の仮想ネットワークに前記端末が属するようにネットワーク構成情報管理手段に保持された前記第２の仮想ネットワークの構成情報に基づいて、前記端末間の通信を制御する経路制御処理をコンピュータに実行させることを特徴とする通信プログラムを記録する記録媒体。
【０１８２】
（付記２９）
前記ネットワーク構成情報管理手段は、前記端末の識別子と前記端末が有する前記第１の識別子とを対応付けて、前記端末の識別情報として端末ごとに管理することを特徴とする付記２８に記載の通信プログラムを記録する記録媒体。
【０１８３】
（付記３０）
前記ネットワーク構成情報管理手段は、前記第２の仮想ネットワークの構成情報として、前記端末の識別情報と、前記端末が有する前記第２の識別子とを対応付けて端末ごとに管理することを特徴とする付記２８または２９に記載の通信プログラムを記録する記録媒体。
【０１８４】
（付記３１）
前記通信プログラムは、さらに、
パケットを転送する転送装置の受信パケットに関する問い合わせを受信した場合、前記受信パケットの情報に基づいて、前記受信パケットの送信元端末および送信先端末が同一の前記第２の識別子を有するかどうか前記ネットワーク構成情報管理手段から検索し、前記受信パケットの送信元端末と送信先端末とが同一の前記第２の識別子を有する場合には、前記送信先端末の属する前記第１の識別子を前記ネットワーク構成情報管理手段から検索し、前記受信パケットの送信元端末と送信先端末とが異なる前記第２の識別子を有する場合には、前記受信パケットを破棄する検索処理を含み、
前記経路制御処理は、前記送信元端末と前記送信先端末との間の転送経路を算出し、前記検出した送信先端末の前記第１の識別子に応じて、前記転送経路上の転送装置に前記受信パケットに対する処理を含む処理規則を設定する命令を通知することを特徴とする付記２８から３０のいずれか１つに記載の通信プログラムを記録する記録媒体。
【０１８５】
（付記３２）
前記検索処理は、前記送信元端末が属する前記第１の識別子と前記送信元端末の識別子とに基づいて、前記ネットワーク構成情報管理手段から前記送信元端末が有する前記第２の識別子を検索し、前記宛先端末の識別子と前記検索の結果得られた前記送信元端末が有する前記第２の識別子とに基づいて、前記ネットワーク構成情報管理手段から前記宛先端末が有する前記第１の識別子を検索することを特徴とする付記３１に記載の通信プログラムを記録する記録媒体。
【０１８６】
（付記３３）
前記経路制御処理は、
前記問い合わせの送信元の転送装置に対し、前記受信パケットのヘッダ内の第１の識別子を、前記宛先端末が有する第１の識別子に更新する処理を含む処理規則を設定し、
前記問い合わせの送信元の転送装置以外の前記受信パケットの経路上の転送装置に対して、前記受信パケットに対応する処理規則のうち、前記受信パケットのヘッダの第１の識別子を、前記宛先端末が有する第１の識別子に更新することを特徴とする付記３１または３２に記載の通信プログラムを記録する記録媒体。
【０１８７】
（付記３４）
前記経路制御処理は、
前記問い合わせの送信元の転送装置以外の前記受信パケットの経路上の転送装置に対して、前記パケットのヘッダ内の第２の識別子を、前記宛先端末が有する第１の識別子に更新する処理を含む処理規則を設定することを特徴とする付記３１または３２に記載の通信プログラムを記録する記録媒体。
【０１８８】
（付記３５）
前記ネットワーク構成情報管理手段は、前記第２のネットワーク構成情報として、さらに、端末のＩＰアドレスを記憶し、
前記検索手段は、前記送信元端末が有する第１の識別子と前記送信元端末の識別子と前記送信元端末のＩＰアドレスとに基づいて、前記ネットワーク構成情報管理手段から前記送信元端末が有する第２の識別子を検索し、前記宛先端末の識別子と前記検索の結果得られた前記送信元端末が有する第２の識別子と前記宛先端末のＩＰアドレスとに基づいて、前記ネットワーク構成情報管理手段から前記宛先端末が有する第１の識別子を検索することを特徴とする付記３０から３４のいずれか１つに記載の通信プログラムを記録する記録媒体。
【０１８９】
（付記３６）
前記ネットワーク構成情報管理手段は、前記端末の識別情報として、さらに、端末が属する第２の仮想ネットワーク上の転送装置のリストを記憶し、
前記経路制御手段は、前記転送装置のリストから、前記送信元端末または前記宛先端末と同一の前記第２の仮想ネットワークに属する転送装置を検索することを特徴とする付記３０から３４のいずれか１つに記載の通信プログラムを記録する記録媒体。
【符号の説明】
【０１９０】
１、２    ネットワークＮＷ
１００、２００    コントローラ
３００    ＯＦコントローラ
４００    制御装置
１０１、２０１、３０１    ネットワーク構成情報テーブル
４０１    ネットワーク構成情報管理部
１０１−１、１０１−２、１０１−Ｎ、２０１−１、２０１−２、２０１−Ｎ、３０１−１、３０１−２、３０１−Ｎ、４０１−１、４０１−２、４０１−Ｎ    ネットワーク構成情報エントリ
１０２、２０２、３０２    検索部
１０３、２０３、３０３    経路制御部
１１０、１２０、２１０、２２０    スイッチ
３１０、３２０    ＯＦスイッチ
１１１、１２１、２１１、２２１、３１１、３２１    パケット転送部
１１２、１２２、２１２、２２２    転送テーブル
１１２−１、１１２−２、１１２−Ｍ    転送テーブルエントリ
３１２、３２２    フローテーブル
３１２−１、３１２−２、３１２−Ｍ    フローテーブルエントリ
１３０、１４０、２３０、２４０、３３０、３４０    端末
【図１】
0005846199.tif 000002
【図２】
0005846199.tif 000003
【図３】
0005846199.tif 000004
【図４】
0005846199.tif 000005
【図５】
0005846199.tif 000006
【図６】
0005846199.tif 000007
【図７】
0005846199.tif 000008
【図８】
0005846199.tif 000009
【図９】
0005846199.tif 000010
【図１０】
0005846199.tif 000011
【図１１】
0005846199.tif 000012
【図１２】
0005846199.tif 000013
【図１３】
0005846199.tif 000014
【図１４】
0005846199.tif 000015
【図１５】
0005846199.tif 000016
【図１６】
0005846199.tif 000017
【図１７】
0005846199.tif 000018
【図１８】
0005846199.tif 000019
【図１９】
0005846199.tif 000020
【図２０】
0005846199.tif 000021
【図２１】
0005846199.tif 000022
【図２２】
0005846199.tif 000023
【図２３】
0005846199.tif 000024