以下、添付図面を参照して、通信システムの実施形態を詳細に説明する。なお、以下に説明する実施形態は、通信システムの一実施形態であって、その構成や仕様等を限定するものではない。
(第1の実施の形態)
図1は、第1の実施の形態に係る通信システム1の一例を示す説明図である。図1に示す通信システム1は、外部端末装置10と、スイッチ装置20と、コントローラ装置30と、内部端末装置40a、40b、40cとを備える。通信システム1は、LAN(Local Area Network)50を介して、外部端末装置10と、スイッチ装置20と、コントローラ装置30と、内部端末装置40とを通信可能に接続している。例えば、LAN50は、組織体の内部で使用する各種装置を接続する組織内LANである。LAN50は、組織体の外部からの不正な侵入を阻止している。LAN50は、例えば、TCP/IP(Transmission Control Protocol/Internet Protocol)をプロトコルとして用いて通信を行う。なお、図1に示す通信システム1には、1台の外部端末装置10と、1台のスイッチ装置20と、1台のコントローラ装置30と、3台の内部端末装置40a、40b、40cとを記載している。しかし、通信システム1が備える各装置の台数はこれに限らず任意の台数であってよい。
外部端末装置10は、例えば、組織体の外部で使用されていたパーソナルコンピュータや、タブレット端末や、スマートフォン等の情報処理装置である。
スイッチ装置20は、LAN50に係るネットワークを介して通信データを転送するネットワーク機器である。スイッチ装置20は、SDN(Software-Defined Network)と呼ばれる概念に適用している。SDNとは、ネットワーク上の通信データの動きをソフトウェアで制御可能とする概念である。従来、アクセスポイント等のネットワーク機器は、AODV(Ad-hoc On Demand Distance Vector)、OLSR(Optimized Link State Routing)などのルーティングプロトコルによって、自律的に収集した情報に基づいて通信データの転送経路を設定していた。しかし、ネットワークが複雑化するに伴い、従来技術ではネットワーク構成を迅速に変更することが困難になってきた。そこで、SDNによって迅速にネットワーク構成を変更可能とすることが求められている。
SDNを実現する仕様として、OpenFlowと呼ばれる仕様がある。OpenFlowは、通信データの転送経路を制御するOpenFlowコントローラと、通信データを転送するOpenFlowスイッチとを分離する仕様である。OpenFlowコントローラには、ネットワークの構成が設定される。OpenFlowコントローラは、設定されたネットワーク構成に基づいて、OpenFlowスイッチの各々に設定する転送設定を生成する。OpenFlowコントローラは、生成した転送設定をOpenFlowスイッチの各々に送信する。OpenFlowスイッチは、受信した転送設定に基づいて、通信データの転送を行う。また、ネットワーク構成を変更する場合には、OpenFlowコントローラは、変更されたネットワーク構成に基づいて、OpenFlowスイッチの各々に設定する転送設定を生成する。OpenFlowコントローラは、生成した転送設定をOpenFlowスイッチの各々に送信する。ネットワークの管理者は、ネットワーク構成を変更すれば、OpenFlowスイッチの各々に変更後の転送設定が設定されるため、迅速にネットワーク構成を変更可能とすることができる。
スイッチ装置20は、OpenFlowスイッチの機能を有している。すなわち、スイッチ装置20は、転送設定に基づいてLAN50を介して通信データを転送する。例えば、スイッチ装置20は、例えば、デスクトップ型パーソナルコンピュータや、モバイル型パーソナルコンピュータや、NUC(Next Unit of Computing)や、AP(Access Point)等の情報処理装置である。スイッチ装置20は、外部端末装置10が接続された場合に、組織体の内部のユーザにLAN50への接続許可を求める。すなわち、スイッチ装置20は、内部端末装置40に接続を許可するか否かの判定を求める。スイッチ装置20は、接続が許可された場合に、該当する外部端末装置10をLAN50に接続させる。
コントローラ装置30は、LAN50に接続されたスイッチ装置20等の各装置間の通信データの転送に係る転送設定を制御する制御装置である。例えば、コントローラ装置30は、デスクトップ型パーソナルコンピュータや、モバイル型パーソナルコンピュータや、NUC等の情報処理装置である。コントローラ装置30は、OpenFlowコントローラの機能を有している。すなわち、コントローラ装置30は、LAN50に係るネットワーク構成を管理する。例えば、コントローラ装置30は、LAN50に係るネットワーク構成を構築したり、LAN50に係るネットワーク構成を変更したりする。コントローラ装置30は、ネットワーク構成に基づいて、LAN50に接続されたネットワーク機器に設定するネットワーク設定情報を生成する。
ネットワーク設定情報とは、LAN50に接続されたネットワーク機器が他のネットワーク機器と通信するための設定が示された情報である。さらに詳しくは、ネットワーク設定情報は、スイッチ装置20に設定するIP(Internet Protocol)アドレスや、アクセス可能な他の装置のIPアドレスや、全ネットワークの制約や、全ネットワークのルーティングプロトコルやレイヤ3スイッチの設定等の情報である。ここで、レイヤ3スイッチとは、OSI(Open Systems Interconnection)参照モデルにおけるネットワーク層(レイヤ3)のプロトコルであるIPのデータ転送処理をハードウェアで高速に行う装置である。
また、ネットワーク設定情報には、フローテーブルが含まれる。フローテーブルとは、転送する通信データの適用条件に応じた処理内容が定義された情報である。適用条件は、例えば、通信データを受信したポート番号や、送信先、VLAN等である。処理内容は、例えば、受信した通信データを転送させる処理や、受信した通信データを破棄する処理等である。受信した通信データを転送させる処理には、通信データを送信するポート番号を指定する処理や、送信先のIPアドレスを付与する処理等がある。すなわち、フローテーブルには、送信する通信データの送信先等の適用条件に応じて、通信データを転送する経路が定義されている。
コントローラ装置30は、外部端末装置10や外部端末装置10を使用するユーザを認証する機能を有している。すなわち、コントローラ装置30は、例えばRADIUS(Remote Authentication Dial In User Service)認証におけるRADIUSサーバとしての機能を有している。コントローラ装置30は、外部端末装置10をLAN50に接続するか否かを判定する。コントローラ装置30は、スイッチ装置20を介して、外部端末装置10から接続要求を受け付ける。コントローラ装置30は、LAN50において認証済みの内部端末装置40からの指示を受けて、スイッチ装置20に外部端末装置10の接続可否を応答する。
内部端末装置40a、40b、40cは、例えば、組織体の内部で使用されていたパーソナルコンピュータや、MFP(Multi-Function Printer)や、IWB(Interactive White Board)等の情報処理装置である。内部端末装置40aは、例えば、MFPである。MFPである内部端末装置40aは、コピー機能、スキャナ機能、ファクス機能、プリンタ機能のうち少なくとも2つの機能を有する装置である。内部端末装置40bは、例えば、IWBである。IWBである内部端末装置40bは、各種画像を表示可能な電子黒板である。内部端末装置40cは、例えば、パーソナルコンピュータである。パーソナルコンピュータである内部端末装置40cは、例えば、各種画像をMFPに出力させたり、各種画像をIWBに表示させたりすることができる。以下の説明では、内部端末装置40a、40b、40cを区別しない場合には、内部端末装置40と説明する。
コントローラ装置30は、BLE(Bluetooth(登録商標) Low Energy)等の近距離無線通信によりアドバタイズ情報を不特定の装置に送信している。アドバタイズ情報とは、コントローラ装置30自身の存在を周囲のスイッチ装置20等に通知する情報である。アドバタイズ情報には、コントローラ装置30が近距離無線通信により通信可能な通信可能範囲が含まれている。例えば、アドバタイズ情報には、通信可能範囲として、コントローラ装置30を中心にしてコントローラ装置30から所定距離までの半径の範囲内が定義されている。
スイッチ装置20は、アドバタイズ情報を受信した場合に、スイッチ装置20自身が通信可能範囲に進入しているか否かを判定する。スイッチ装置20自身が通信可能範囲に進入している場合に、スイッチ装置20と、コントローラ装置30とは、近距離無線通信を確立する。
近距離無線通信の確立が終了した場合に、コントローラ装置30は、スイッチ装置20の各々に応じたネットワーク設定情報を送信する。そして、スイッチ装置20は、ネットワーク設定情報に基づいて、外部端末装置10から受信した通信データの転送経路を選定し、送信する。
ネットワーク設定情報には、認証設定情報が含まれていてもよい。ここで、認証設定情報とは、外部端末装置10や外部端末装置10を使用するユーザ等を認証する認証サーバ等との通信データ処理に係る設定が示された情報である。具体的には、認証設定情報とは、認証サーバのIPアドレスや、認証サーバのポート番号や、認証サーバのパスワードや、認証方式等の設定である。スイッチ装置20は、ネットワーク設定情報に認証設定情報が含まれている場合には、ユーザ認証のクライアント装置として機能する。スイッチ装置20は、例えばRADIUS認証におけるRADIUSクライアントとして機能する。スイッチ装置20は、RADIUSサーバに対しては、認証設定情報の設定に基づいて通信データ処理を実行する。
次に、通信システム1が有する各種装置のハードウェア構成について説明する。
まず、外部端末装置10のハードウェア構成について説明する。図2は、外部端末装置10のハードウェア構成の一例を示すブロック図である。
外部端末装置10は、制御部11と、表示部12と、操作部13と、メモリ部14と、記憶部15と、通信部16とを備える。
制御部11は、CPUなどの外部端末装置10全体の動作を制御する演算装置等である。
表示部12は、例えば、液晶表示装置(LCD)である。操作部13は、タッチパネルやキーボードやマウス等の操作装置である。操作部13は、ユーザの操作に応じた各種の入力を受け付ける。
メモリ部14は、例えば、揮発性のメモリである。メモリ部14は、例えば入力された各種データを展開する作業領域として機能すると共に、展開された各種データを一時的に保持する記憶領域である。
記憶部15は、例えば、HDDやSSD等の不揮発性の記憶装置である。記憶部15は、制御プログラムを記憶する。制御プログラムは、外部端末装置10が有する機能を発揮させるためのソフトウェアである。
通信部16は、スイッチ装置20に接続する通信インタフェースである。例えば、通信部16は、IEEE802.11(WiFi(Wireless Fidelity))等の無線通信プロトコルにより通信する。なお、通信部16は、無線に限らず、有線により通信してもよい。また、通信部16は、WEP(Wired Equivalent Privacy)等により通信データを暗号化してもよいし、暗号化しなくてもよい。
次に、スイッチ装置20のハードウェア構成について説明する。図3は、スイッチ装置20のハードウェア構成の一例を示すブロック図である。
スイッチ装置20は、制御部21と、表示部22と、操作部23と、メモリ部24と、記憶部25と、通信部26と、LAN通信部27と、近距離無線通信部28とを備える。
制御部21は、CPUなどのスイッチ装置20全体の動作を制御する演算装置等である。
表示部22は、例えば、液晶表示装置(LCD)である。操作部23は、タッチパネルやキーボードやマウス等の操作装置である。操作部23は、ユーザの操作に応じた各種の入力を受け付ける。
メモリ部24は、例えば、揮発性のメモリである。メモリ部24は、例えば入力された各種データを展開する作業領域として機能すると共に、展開された各種データを一時的に保持する記憶領域である。
記憶部25は、例えば、HDDやSSD等の不揮発性の記憶装置である。記憶部25は、制御プログラムを記憶する。制御プログラムは、スイッチ装置20が有する機能を発揮させるためのソフトウェアである。
通信部26は、外部端末装置10に接続する通信インタフェースである。例えば、通信部26は、IEEE802.11(WiFi)等の無線通信プロトコルにより通信する。なお、通信部26は、無線に限らず、有線により通信してもよい。また、通信部26は、WEP等により通信データを暗号化してもよいし、暗号化しなくてもよい。
LAN通信部27は、LAN50に接続する通信インタフェースである。
近距離無線通信部28は、近距離無線通信によりコントローラ装置30と通信する通信インタフェースである。例えば、近距離無線通信部28は、BLE等の規格により通信する。または、近距離無線通信部28は、NFC(Near Field Communication)や音波等により通信する。
次に、コントローラ装置30のハードウェア構成について説明する。図4は、コントローラ装置30のハードウェア構成の一例を示すブロック図である。
コントローラ装置30は、制御部31と、表示部32と、操作部33と、メモリ部34と、記憶部35と、LAN通信部36と、近距離無線通信部37とを備える。
制御部31は、CPUなどのコントローラ装置30全体の動作を制御する演算装置等である。
表示部32は、例えば、液晶表示装置(LCD)である。操作部33は、タッチパネルやキーボードやマウス等の操作装置である。操作部33は、ユーザの操作に応じた各種の入力を受け付ける。
メモリ部34は、例えば、揮発性のメモリである。メモリ部34は、例えば入力された各種データを展開する作業領域として機能すると共に、展開された各種データを一時的に保持する記憶領域である。
記憶部35は、例えば、HDDやSSD等の不揮発性の記憶装置である。記憶部35は、制御プログラムを記憶する。制御プログラムは、コントローラ装置30が有する機能を発揮させるためのソフトウェアである。
LAN通信部36は、LAN50に接続する通信インタフェースである。
近距離無線通信部37は、近距離無線通信によりスイッチ装置20と通信する通信インタフェースである。例えば、近距離無線通信部37は、BLE等の規格により通信する。または、近距離無線通信部37は、NFCや音波等により通信する。
次に、内部端末装置40のハードウェア構成について説明する。図5は、内部端末装置40のハードウェア構成の一例を示すブロック図である。
内部端末装置40は、制御部41と、表示部42と、操作部43と、メモリ部44と、記憶部45と、LAN通信部46とを備える。
制御部41は、CPUなどの内部端末装置40全体の動作を制御する演算装置等である。
表示部42は、例えば、液晶表示装置(LCD)である。操作部43は、タッチパネルやキーボードやマウス等の操作装置である。操作部43は、ユーザの操作に応じた各種の入力を受け付ける。
メモリ部44は、例えば、揮発性のメモリである。メモリ部44は、例えば入力された各種データを展開する作業領域として機能すると共に、展開された各種データを一時的に保持する記憶領域である。
記憶部45は、例えば、HDDやSSD等の不揮発性の記憶装置である。記憶部45は、制御プログラムを記憶する。制御プログラムは、内部端末装置40が有する機能を発揮させるためのソフトウェアである。
LAN通信部46は、LAN50に接続する通信インタフェースである。
次に、通信システム1の各装置が有する特徴的な機能について説明する。
ここで、図6は、第1の実施の形態の外部端末装置10が有する特徴的な機能構成を示す機能ブロックの例を示すブロック図である。便宜上、図6では、第1の実施の形態に係る機能を主に例示しているが、外部端末装置10が有する機能は、これらに限られるものではない。
外部端末装置10の制御部11は、記憶部15に格納された制御プログラム等を実行することにより、各種機能を実現する。具体的には、制御部11は、通信制御部101と、操作制御部102と、接続制御部103と、表示制御部104とを実現する。
通信制御部101は、通信部16を制御して、スイッチ装置20と通信する。
操作制御部102は、操作部13を制御して、各種操作を受け付ける。例えば、操作制御部102は、接続するスイッチ装置20を識別可能な識別情報の入力を受け付ける。スイッチ装置20を識別可能な識別情報とは、例えば、SSID(Service Set Identifier)等である。
接続制御部103は、スイッチ装置20との接続を制御する。接続制御部103は、通信制御部101と協働で、操作制御部102が受け付けた識別情報のスイッチ装置20に接続する。
表示制御部104は、表示部12を制御して、各種画面を表示させる。
ここで、図7は、第1の実施の形態のスイッチ装置20が有する特徴的な機能構成を示す機能ブロックの例を示すブロック図である。便宜上、図7では、第1の実施の形態に係る機能を主に例示しているが、スイッチ装置20が有する機能は、これらに限られるものではない。
スイッチ装置20の制御部21は、記憶部25に格納された制御プログラム等を実行することにより、各種機能を実現する。具体的には、制御部21は、通信制御部201と、接続制御部202と、識別情報付加部203と、LAN通信制御部204と、近距離無線通信制御部205と、接続記憶部206と、接続設定部207とを実現する。
通信制御部201は、アクセスポイント機能を有する。すなわち、通信制御部201は、通信部26を制御して、外部端末装置10と通信する。通信制御部201は、外部端末装置10からスイッチ装置20自身を指定するSSID等の識別情報を受信した場合に、外部端末装置10との通信を確立する。通信制御部201は、通信を確立した場合に、外部端末装置10から受信した通信データを識別情報付加部203に出力する。なお、通信制御部201は、SSID等の識別情報であるか否かは、例えば通信データに含まれる識別子により判断する。
接続制御部202は、外部端末装置10のLAN50への接続を許可するか否かを判定する。接続制御部202は、コントローラ装置30から外部端末装置10の接続の許可を受信した場合に、該当する外部端末装置10をLAN50に接続する。一方、接続制御部202は、コントローラ装置30から外部端末装置10の接続の禁止を受信した場合に、該当する外部端末装置10をLAN50に接続しない。
識別情報付加部203は、通信制御部201から出力された通信データに対して、接続先の内部端末装置40を示す識別情報を付加する。更に詳しくは、識別情報付加部203は、通信データの条件に応じた処理内容の抽出を接続記憶部206に要求する。識別情報付加部203は、接続記憶部206が抽出した処理内容に示されているIPアドレスを通信データに付加する。
LAN通信制御部204は、LAN通信部27を制御して、LAN50と通信する。転送手段であるLAN通信制御部204は、接続設定部207が設定したネットワーク設定情報に基づいて、LAN50を介して通信データを転送する。また、LAN通信制御部204は、ユーザを認証するRADIUSサーバ等の認証装置に対しては、認証設定情報の設定に基づいて通信データ処理を実行する。
近距離無線通信制御部205は、近距離無線通信部28を制御して、コントローラ装置30と通信する。近距離無線通信制御部205は、コントローラ装置30からアドバタイズ情報を受信した場合に、アドバタイズ情報が示す通信可能範囲内にスイッチ装置20自身があるか否かを判定する。第1の通知手段である近距離無線通信制御部205は、アドバタイズ情報が示す通信可能範囲内にある場合に、通信可能範囲内に進入したことを示す応答信号を通知する。応答信号には、スイッチ装置20を識別可能な識別情報が含まれる。識別情報は、例えば、MAC(Media Access Control)アドレス等である。一方、近距離無線通信制御部205は、アドバタイズ情報が示す通信可能範囲外にある場合に、通信可能範囲から退出したことを示す応答信号を通知する。また、第2の通知手段である近距離無線通信制御部205は、SDNに対応したスイッチ装置20であるか否かをコントローラ部305に通知する。入力手段である近距離無線通信制御部205は、SDNに対応したスイッチ装置20である場合に、コントローラ装置30から送信されたネットワーク設定情報を受信する。
接続記憶部206は、近距離無線通信制御部205が受信した情報を記憶部25に記憶させる。例えば、接続記憶部206は、近距離無線通信制御部205が受信したネットワーク設定情報に含まれるフローテーブルを記憶部25に記憶させる。また、接続記憶部206は、識別情報付加部203の要求に応じて、通信データの条件に応じた処理内容を抽出する。
設定手段である接続設定部207は、LAN通信制御部204がコントローラ装置30から受信したネットワーク設定情報を設定する。
ここで、図8は、第1の実施の形態のコントローラ装置30が有する特徴的な機能構成を示す機能ブロックの例を示すブロック図である。便宜上、図8では、第1の実施の形態に係る機能を主に例示しているが、コントローラ装置30が有する機能は、これらに限られるものではない。
コントローラ装置30の制御部31は、記憶部35に格納された制御プログラム等を実行することにより、各種機能を実現する。具体的には、制御部31は、近距離無線通信制御部301と、接続記憶部302と、LAN通信制御部303と、接続管理部304と、コントローラ部305と、認証部306とを実現する。
近距離無線通信制御部301は、近距離無線通信部37を制御して、スイッチ装置20と通信する。送信手段である近距離無線通信制御部301は、不特定の装置にアドバタイズ情報を送信する。近距離無線通信制御部301は、アドバタイズ情報の応答として、通信可能範囲内にいることを示す応答信号を受信する。これにより、近距離無線通信制御部301は、通信可能範囲内にあるスイッチ装置20を検知する。または、近距離無線通信制御部301は、通信可能範囲外にスイッチ装置20が退出したことを検知する。確立手段である近距離無線通信制御部301は、検知したスイッチ装置20との近距離無線通信を確立する。
さらに、近距離無線通信制御部301は、通信可能範囲内にいる装置がSDNに対応しているか否かを示す情報を受信する。近距離無線通信制御部301は、SDNに対応してない装置に対しては、ネットワーク設定情報は送信しない。出力手段である近距離無線通信制御部301は、通信可能範囲内のSDNに対応しているスイッチ装置20に対して、コントローラ部305が生成したネットワーク設定情報を送信する。近距離無線通信制御部301は、通信可能範囲外にスイッチ装置20が退出した場合に、コントローラ部305が生成したネットワーク設定情報の送信を停止する。
接続記憶部302は、近距離無線通信制御部301がスイッチ装置20から受信した情報を記憶部35に記憶させる。
LAN通信制御部303は、LAN通信部36を制御して、LAN50に接続された各装置と通信する。
接続管理部304は、外部端末装置10からの接続要求をLAN通信制御部303が受信した場合に、接続要求を送信した外部端末装置10が示す識別情報をメモリ部34に記憶させる。接続管理部304は、内部端末装置40から、接続要求を送信した外部端末装置10の有無の問い合わせをLAN通信制御部303が受信した場合に、メモリ部34に記憶された識別情報をLAN通信制御部303に送信させる。接続管理部304は、接続要求を送信した外部端末装置10の接続を許可する通知を受信した場合に、接続が許可された外部端末装置10の識別情報をコントローラ部305に通知する。
コントローラ部305は、OpenFlowコントローラに係る機能を有する。コントローラ部305は、操作部33を介して、ネットワーク管理者がネットワーク構成を設定する入力を受け付ける。コントローラ部305は、接続管理部304から接続が許可された外部端末装置10の識別情報の通知を受けた場合に、ネットワーク構成を更新する。生成手段であるコントローラ部305は、近距離無線通信制御部301がSDNに対応しているスイッチ装置20との通信を確立した場合に、LAN50に接続されたスイッチ装置20の各々に設定するネットワーク設定情報を生成する。なお、コントローラ部305は、ネットワーク構成に基づいて、認証設定情報を有するネットワーク設定情報を生成する。従来は、予めRADIUSクライアントの各々に、RADIUSサーバの設定に基づいて、認証設定情報を設定しておく必要があり、認証設定情報の設定に大幅な時間がかかっていた。しかし、コントローラ部305は、近距離無線通信制御部301に認証設定情報を送信させる。そして、スイッチ装置20は、受信した認証設定情報を設定する。よって、コントローラ部305は、最初の設定にかかる時間を大幅に削減できる。そして、コントローラ部305は、生成したネットワーク設定情報をスイッチ装置20に向けて近距離無線通信制御部301に送信させる。また、コントローラ部305は、生成したネットワーク設定情報を内部端末装置40に向けてLAN通信制御部303に送信させる。
認証部306は、外部端末装置10や外部端末装置10を使用するユーザを認証する認証装置としての機能を有する。例えば、認証部306は、外部端末装置10を使用するユーザがLAN50に接続する権限を有しているか否かを判定する。具体的には、認証部306は、クライアントとして機能するスイッチ装置20を介して、ユーザ認証が要求された場合にユーザを認証可能であるか否かを判定する。認証部306は、スイッチ装置20を介して、外部端末装置10を使用するユーザに認証判定結果を通知する。なお、認証部306は、コントローラ装置30以外の装置に実装されていてもよい。
ここで、図9は、第1の実施の形態の内部端末装置40が有する特徴的な機能構成を示す機能ブロックの例を示すブロック図である。便宜上、図9では、第1の実施の形態に係る機能を主に例示しているが、内部端末装置40が有する機能は、これらに限られるものではない。
内部端末装置40の制御部41は、記憶部45に格納された制御プログラム等を実行することにより、各種機能を実現する。具体的には、制御部41は、通信制御部401と、操作制御部402と、接続制御部403と、表示制御部404とを実現する。
通信制御部401は、LAN通信部46を制御して、スイッチ装置20と通信する。
操作制御部402は、操作部43を制御して、各種操作を受け付ける。例えば、操作制御部402は、接続するスイッチ装置20を識別可能な識別情報の入力を受け付ける。スイッチ装置20を識別可能な識別情報とは、例えば、SSID等である。
接続制御部403は、スイッチ装置20との接続を制御する。接続制御部403は、通信制御部401と協働で、操作制御部402が受け付けた識別情報のスイッチ装置20に接続する。
表示制御部404は、表示部42を制御して、各種画面を表示させる。
次に、LAN50にスイッチ装置20を追加する追加処理について説明する。ここで、図10は、第1の実施の形態の通信システム1の各装置が実行する追加処理の一例を示すシーケンス図である。
まず、コントローラ装置30のコントローラ部305は、LAN50に係るネットワーク構成を設定する入力を受け付ける(ステップS1)。次いで、コントローラ装置30の近距離無線通信制御部301は、スイッチ装置20を含む不特定の装置にアドバタイズ情報を送信する(ステップS2)。
アドバタイズ情報に含まれる通信可能範囲内にスイッチ装置20がある場合に、スイッチ装置20の近距離無線通信制御部205は、通信可能範囲内にあることを示す応答信号を送信する(ステップS3)。
次いで、スイッチ装置20の近距離無線通信制御部205は、コントローラ装置30との近距離無線通信を確立する(ステップS4)。同様に、コントローラ装置30の近距離無線通信制御部301は、スイッチ装置20との近距離無線通信を確立する(ステップS5)。
次いで、コントローラ装置30のコントローラ部305は、近距離通信範囲内に進入したスイッチ装置20をLAN50に係るネットワーク構成に追加する更新を実行する(ステップS6)。次いで、コントローラ装置30のコントローラ部305は、LAN50に係るネットワーク構成に基づいて、各装置に送信するネットワーク設定情報を生成する(ステップS7)。
次いで、コントローラ装置30の近距離無線通信制御部301は、ネットワーク設定情報をスイッチ装置20に送信する(ステップS8)。次いで、コントローラ装置30のLAN通信制御部303は、更新後のネットワーク構成に基づいて生成したネットワーク設定情報をLAN50に接続された他の装置に送信する(ステップS9)。
スイッチ装置20の接続記憶部206は、コントローラ装置30から受信したネットワーク設定情報を記憶部25に記憶する(ステップS10)。次いで、スイッチ装置20の接続設定部207は、ネットワーク設定情報を設定する(ステップS11)。
以上により、通信システム1の各装置が実行する追加処理を終了する。
次に、LAN50にスイッチ装置20を追加する追加処理において、スイッチ装置20が通信可能範囲外に退出した場合について説明する。ここで、図11は、第1の実施の形態の通信システム1の各装置が実行する追加処理の一例を示すシーケンス図である。
ステップS21からステップS22までの処理は、図10に示すステップS1からステップS2までの処理と同じである。
アドバタイズ情報に含まれる通信可能範囲外にスイッチ装置20がある場合に、スイッチ装置20の近距離無線通信制御部205は、通信可能範囲外にあることを示す応答信号を送信する(ステップS23)。
次いで、スイッチ装置20の近距離無線通信制御部205は、コントローラ装置30との近距離無線通信を切断する(ステップS24)。同様に、コントローラ装置30の近距離無線通信制御部301は、スイッチ装置20との近距離無線通信を切断する(ステップS25)。
以上により、通信システム1の各装置が実行する追加処理を終了する。
次に、スイッチ装置20を介して、LAN50に外部端末装置10を接続する接続要求処理について説明する。ここで、図12は、第1の実施の形態の外部端末装置10が実行する接続要求処理の一例を示すフローチャートである。
まず、外部端末装置10の通信制御部101は、スイッチ装置20から送信された電波を検出したか否かを判定する(ステップS31)。スイッチ装置20から送信された電波を検出していない場合に(ステップS31;No)、外部端末装置10の通信制御部101は、電波を検出するまで待機する。
一方、スイッチ装置20から送信された電波を検出した場合に(ステップS31;Yes)、外部端末装置10の操作制御部102は、接続対象のスイッチ装置20の識別情報の入力が完了したか否かを判定する(ステップS32)。接続対象のスイッチ装置20の識別情報の入力が完了していない場合に(ステップS32;No)、外部端末装置10の操作制御部102は、識別情報の入力が完了するまで待機する。
一方、接続対象のスイッチ装置20の識別情報の入力が完了した場合に(ステップS32;Yes)、外部端末装置10の接続制御部103は、入力した識別情報のスイッチ装置20との通信を確立する(ステップS33)。
次いで、外部端末装置10の表示制御部104は、認証情報入力画面を表示する(ステップS34)。次いで、外部端末装置10の操作制御部102は、認証情報の入力が完了したか否かを判定する(ステップS35)。認証情報の入力が完了していない場合に(ステップS35;No)、外部端末装置10の操作制御部102は、認証情報の入力が完了するまで待機する。
認証情報の入力が完了した場合に(ステップS35;Yes)、外部端末装置10の通信制御部101は、スイッチ装置20を介して、コントローラ装置30に認証情報を有する接続要求に送信する(ステップS36)。
以上により、外部端末装置10が実行する接続要求処理を終了する。
次に、LAN50への接続を求められた内部端末装置40の接続許可処理について説明する。ここで、図13は、第1の実施の形態の内部端末装置40が実行する接続許可処理の一例を示すフローチャートである。
まず、内部端末装置40の通信制御部401は、コントローラ装置30との通信を確立する(ステップS41)。次いで、内部端末装置40の通信制御部401は、接続要求の有無をコントローラ装置30に問い合わせる(ステップS42)。
次いで、内部端末装置40の接続制御部403は、コントローラ装置30からの応答信号に基づいて、接続要求の有無を判定する(ステップS43)。接続要求が無い場合に(ステップS43;No)、内部端末装置40は、ステップS41に移行する。
一方、接続要求が有る場合に(ステップS43;Yes)、内部端末装置40の表示制御部404は、接続要求した外部端末装置10を識別可能な識別情報が示された識別情報表示画面を表示する(ステップS44)。また、識別情報表示画面には、外部端末装置10からの接続要求に応じて接続を許可するか否かを入力する操作子が表示されている。
次いで、内部端末装置40の操作制御部402は、接続可否の入力が完了したか否かを判定する(ステップS45)。接続可否の入力が完了していない場合に(ステップS45;No)、内部端末装置40は、接続可否の入力が完了するまで待機する。
一方、接続可否の入力が完了した場合に(ステップS45;Yes)、内部端末装置40の通信制御部401は、入力内容に基づいて、接続可否を送信する(ステップS46)。
以上により、内部端末装置40が実行する接続許可処理を終了する。
以上のように、第1の実施の形態に係る通信システム1によれば、コントローラ装置30は、アドバタイズ情報の応答信号に基づいて、スイッチ装置20を検知する。コントローラ装置30は、検知したスイッチ装置20に対して、ネットワーク設定情報を送信する。スイッチ装置20は、受信したネットワーク設定情報を設定する。スイッチ装置20は、設定したネットワーク設定情報に基づいて、LAN50に接続された内部端末装置40等と通信する。従って、ネットワーク管理者は、スイッチ装置20の各々に対して、各種設定を行う必要がない。よって、第1の実施の形態に係る通信システム1は、ネットワーク管理者の作業時間を大幅に短縮し、ネットワーク設定の人為的なミスを避けることができる。
(第2の実施の形態)
次に、第2の実施の形態に係る通信システム2について説明する。以下では、第1の実施の形態との相違点の説明を主に行う。第1の実施の形態と同様の機能を有する構成要素については、第1の実施の形態と同様の名称・符号を付し、その説明を省略する。
ここで、図14は、第2の実施の形態に係る通信システム2の構成の一例を示す説明図である。図14に示す通信システム2は、第1の実施の形態の通信システム1が備える装置の他に、外部端末装置10aと、アクセスポイント60とを備えている。外部端末装置10aは、アクセスポイント60を介して、LAN50に接続されている。外部端末装置10aは、第1の実施の形態に係る外部端末装置10のハードウェア構成及び機能構成と同様の構成である。アクセスポイント60は、スイッチ装置20と同様の機能を有するネットワーク装置である。しかし、アクセスポイント60は、SDNに対応していない点が、スイッチ装置20と異なっている。
次に、アクセスポイント60のハードウェア構成について説明する。図15は、アクセスポイント60のハードウェア構成の一例を示すブロック図である。
アクセスポイント60は、制御部61と、表示部62と、操作部63と、メモリ部64と、記憶部65と、通信部66と、LAN通信部67と、近距離無線通信部68とを備える。制御部61と、表示部62と、操作部63と、メモリ部64と、記憶部65と、通信部66と、LAN通信部67と、近距離無線通信部68とは、スイッチ装置20と同様の構成になっている。しかし、記憶部65に記憶された制御プログラムが、SDNに非対応である点が異なっている。
次に、アクセスポイント60が有する特徴的な機能について説明する。ここで、図16は、第2の実施の形態のアクセスポイント60が有する特徴的な機能構成を示す機能ブロックの例を示すブロック図である。便宜上、図16では、第2の実施の形態に係る機能を主に例示しているが、アクセスポイント60が有する機能は、これらに限られるものではない。
アクセスポイント60の制御部61は、記憶部65に格納された制御プログラム等を実行することにより、各種機能を実現する。具体的には、制御部61は、通信制御部601と、接続制御部602と、識別情報付加部603と、LAN通信制御部604と、近距離無線通信制御部605と、接続記憶部606と、接続設定部607とを実現する。
通信制御部601と、接続制御部602と、識別情報付加部603と、LAN通信制御部604と、近距離無線通信制御部605と、接続記憶部606とは、スイッチ装置20が備える通信制御部201と、接続制御部202と、識別情報付加部203と、LAN通信制御部204と、近距離無線通信制御部205と、接続記憶部206と同様の機能を有している。
接続設定部607は、ネットワーク上の通信データの転送経路を設定する。接続設定部607は、SDNに対応していないため、AODV、OLSRなどのルーティングプロトコルによって、自律的に収集した情報に基づいて通信データの転送経路を設定する。
次に、第2の実施の形態の通信システム2に係る追加処理について説明する。ここで、図17は、第2の実施の形態の通信システム2の各装置が実行する追加処理の一例を示すシーケンス図である。図17に示す追加処理は、SDNに対応したスイッチ装置20やSDNに対応してないアクセスポイント60等のネットワーク装置が混在している通信システム2において、SDNに対応したスイッチ装置20等に対する追加処理を示している。
ステップS51からステップS55までの処理は、第1の実施の形態に係るステップS1からステップS5までの処理と同じである。
次いで、スイッチ装置20の近距離無線通信制御部205は、SDNに対応しているか否かを示すSDN対応通知をコントローラ装置30に送信する(ステップS56)。
ステップS57からステップS58までの処理は、第1の実施の形態に係るステップS6からステップS7までの処理と同じである。
次いで、スイッチ装置20等のSDNに対応しているネットワーク装置には、コントローラ装置30の近距離無線通信制御部301は、ネットワーク設定情報を送信する(ステップS59)。
ステップS60からステップS62までの処理は、第1の実施の形態に係るステップS9からステップS11までの処理と同じである。
なお、スイッチ装置20が通信可能範囲外に退出した場合には、第1の実施の形態に係るステップS23からステップS25までと同様の処理を実行する。
以上により、通信システム2の各装置が実行する追加処理を終了する。
次に、第2の実施の形態の通信システム2に係る追加処理について説明する。ここで、図18は、第2の実施の形態の通信システム2の各装置が実行する追加処理の一例を示すシーケンス図である。図18に示す追加処理は、SDNに対応したスイッチ装置20やSDNに対応してないアクセスポイント60等のネットワーク装置が混在している通信システム2において、SDNに対応してないアクセスポイント60等に対する追加処理を示している。
ステップS71からステップS78までの処理は、図17に示すステップS51からステップS58までの処理と同じである。
アクセスポイント60等のSDNに対応していないネットワーク装置には、コントローラ装置30の近距離無線通信制御部301は、ネットワーク設定情報は送信しない。そして、コントローラ装置30のLAN通信制御部303は、更新後のネットワーク構成に基づいて生成したネットワーク設定情報をLAN50に接続されたSDNに対応した他の装置に送信する(ステップS79)。
次いで、SDNに対応していないアクセスポイント60の接続設定部607は、ルーティングプロトコルによって通信データの転送経路を設定する(ステップS80)。
なお、スイッチ装置20が通信可能範囲外に退出した場合には、第1の実施の形態に係るステップS23からステップS25までと同様の処理を実行する。
以上により、通信システム2の各装置が実行する追加処理を終了する。
以上のように、第2の実施の形態に係る通信システム2によれば、スイッチ装置20は、SDNに対応しているか否かを示す情報をコントローラ装置30に送信する。コントローラ装置30は、SDNに対応しているスイッチ装置20に対しては、ネットワーク設定情報を送信する。SDNに対応しているスイッチ装置20は、ネットワーク設定情報を設定する。一方、SDNに対応していないアクセスポイント60は、ルーティングプロトコルによって自律的に収集した情報を設定する。従って、第2の実施の形態に係る通信システム2は、SDNに対応している装置と、SDNに対応していない装置とが混在している場合であっても、ネットワーク管理者の作業時間を大幅に短縮し、ネットワーク設定の人為的なミスを避けることができる。
本発明のいくつかの実施の形態を説明したが、これらの実施の形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これらの新規な実施の形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これらの実施の形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
上述した外部端末装置10の各部の機能(通信制御部101、操作制御部102、接続制御部103、及び表示制御部104)は、制御部11のCPUが、記憶装置(例えば記憶部15等)に格納された制御プログラム等を実行することにより実現されるが、これに限らず、例えば上記外部端末装置10の各部の機能のうちの少なくとも一部が専用のハードウェア回路(例えば半導体集積回路等)で実現されてもよい。
上述したスイッチ装置20の各部の機能(通信制御部201、接続制御部202、識別情報付加部203、LAN通信制御部204、近距離無線通信制御部205、接続記憶部206、及び接続設定部207)は、制御部21のCPUが、記憶装置(例えば記憶部25等)に格納された制御プログラム等を実行することにより実現されるが、これに限らず、例えば上記スイッチ装置20の各部の機能のうちの少なくとも一部が専用のハードウェア回路(例えば半導体集積回路等)で実現されてもよい。
上述したコントローラ装置30の各部の機能(近距離無線通信制御部301、接続記憶部302、LAN通信制御部303、接続管理部304、コントローラ部305、及び認証部306)は、制御部31のCPUが、記憶装置(例えば記憶部35)に格納された制御プログラム等を実行することにより実現されるが、これに限らず、例えば上記コントローラ装置30の各部の機能のうちの少なくとも一部が専用のハードウェア回路(例えば半導体集積回路等)で実現されてもよい。
上述した内部端末装置40の各部の機能(通信制御部401、操作制御部402、接続制御部403、及び表示制御部404)は、制御部41のCPUが、記憶装置(例えば記憶部45)に格納された制御プログラム等を実行することにより実現されるが、これに限らず、例えば上記内部端末装置40の各部の機能のうちの少なくとも一部が専用のハードウェア回路(例えば半導体集積回路等)で実現されてもよい。
上述したアクセスポイント60の各部の機能(通信制御部601、接続制御部602、識別情報付加部603、LAN通信制御部604、近距離無線通信制御部605、接続記憶部606、及び接続設定部607)は、制御部61のCPUが、記憶装置(例えば記憶部65)に格納された制御プログラム等を実行することにより実現されるが、これに限らず、例えば上記アクセスポイント60の各部の機能のうちの少なくとも一部が専用のハードウェア回路(例えば半導体集積回路等)で実現されてもよい。
上記実施形態の各装置で実行されるプログラムは、各装置が備える記憶媒体(ROM又は記憶部)に予め組み込んで提供するものとするが、これに限らないものとする。例えば、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。さらに、記憶媒体は、コンピュータ或いは組み込みシステムと独立した媒体に限らず、LANやインターネット等により伝達されたプログラムをダウンロードして記憶又は一時記憶した記憶媒体も含まれる。
また、上記実施形態の各装置で実行されるプログラムをインターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよいし、インターネット等のネットワーク経由で提供又は配布するように構成してもよい。また、本実施形態の各装置のプログラムは、ROM等に予め組み込んで提供するように構成してもよい。