以下に添付図面を参照して、通信装置、通信システム及び通信方法の実施形態を詳細に説明する。
(第1の実施形態)
図1は、第1の実施形態に係る通信システムの一例を示す図である。図1において、通信システムは、情報機器10と、接続ボックス20と、ホスト端末30と、ルータ40とを含み、これらの機器が第1のネットワークN1に通信可能に接続されることで構成される。
第1のネットワークN1は、例えば、TCP/IP(Transmission Control Protocol/Internet Protocol)をプロトコルとして用いて通信を行う通信システムであって、企業等の組織体内で閉じた構成とされる組織内LANである。
情報機器10は、組織体内に設けられる各種の情報機器である。例えば、情報機器10は、MFP(Multi Function Printer)11、PJ(プロジェクタ装置)12、IWB(Interactive White Board)13等である。なお、第1のネットワークN1に接続される情報機器10は、これらの例に限定されないものとする。
ホスト端末30は、組織体内のユーザ(以下、内部ユーザと呼ぶ)が使用する端末装置である。本実施形態において、ホスト端末30は、接続ボックス20にアクセスしたゲスト端末50の、第1のネットワークN1への接続許可を行う。
ルータ40は、第1のネットワークN1と当該第1のネットワークN1とは異なる第2のネットワークN2とを繋ぐためのネットワーク機器である。第2のネットワークN2は、例えば、インターネット等のパブリックなネットワークである。なお、ルータ40は、ファイアウォール等のフィルタリング機能を有するものとする。
このような構成において、ホスト端末30から送信された画像等の情報を、第1のネットワークN1を介してMFP11に出力させたり、IWB13に表示させたりすることができる。また、ホスト端末30から送信された画像等の情報を、第1のネットワークN1を介してPJ12により図示されないスクリーンに投射させることができる。また、第1のネットワークN1に接続された各機器は、ルータ40を介して第2のネットワークN2にアクセスすることができる。
これら第1のネットワークN1に接続される情報機器10、接続ボックス20、ホスト端末30及びルータ40は、それぞれ第1のネットワークN1を含む通信システムにより、組織体内の認証を受けている。すなわち、組織体外の端末装置(ゲスト端末50)が第1のネットワークN1を介して通信を行うためには、組織体内の認証を受ける必要がある。
そこで、本実施形態の通信システムでは、組織体外の端末装置であるゲスト端末50と第1のネットワークN1とを接続(中継)するための通信装置として接続ボックス20を設けている。接続ボックス20は、例えばアクセスポイントであって、組織体内に1又は複数台設けられる。例えば、接続ボックス20は、組織体内の各会議室にそれぞれ設けられる。なお、ゲスト端末50は、組織体外のユーザ(以下、外部ユーザと呼ぶ)が使用する端末装置である。
接続ボックス20は、第1のネットワークN1を含む通信システムにより、組織体内の認証を受けており、接続ボックス20から第1のネットワークN1を介して、第1のネットワークN1に接続される各機器と通信することができる。
また、接続ボックス20は、例えばIEEE(Institute of Electrical and Electronics Engineers) 802.11規格に準拠した無線LANによるアクセスポイント機能を有する。以下、このIEEE 802.11規格に準拠した無線LANを、IEEE 802.11機器に関する業界団体であるWi−Fi Allianceによる相互接続性の認定の名称であるWi−Fi(登録商標)と呼ぶ。接続ボックス20は、このアクセスポイント機能により、例えば組織体外の機器であって、組織体内による認証を受けていないゲスト端末50と、無線により通信を行うことができる。
ここで、接続ボックス20は、無線通信により接続されたゲスト端末50と、第1のネットワークN1との間の接続の有効化と無効化とを、ホスト端末30からの指示により切り替えることができる。したがって、ゲスト端末50は、接続ボックス20により第1のネットワークN1との接続が有効化されている場合に、第1のネットワークN1と接続され、当該第1のネットワークN1に接続される各機器との通信が可能となる。
また、接続ボックス20は、第1のネットワークN1及びルータ40を経由する通信経路とは異なる通信経路により、第2のネットワークN2と通信することができる。接続ボックス20は、ゲスト端末50の接続先を第1のネットワークN1又は第2のネットワークN2に選択的に切り替えることで、何れか一方のネットワークをゲスト端末50の接続先とする。なお、デフォルトの状態において、接続ボックス20は、第1のネットワークN1を接続先とするよう定められている。
図2は、ゲスト端末50と第1のネットワークN1とを接続ボックス20を用いて接続する手順を概略的に示す図である。図2において、ゲスト端末50を外部ユーザ側とし、第1のネットワークN1側を内部ユーザ側として示している。内部ユーザ側では、例えばホスト端末30から接続ボックス20にアクセスするものとする。
図2の手順の開始に先立って、内部ユーザ側から外部ユーザ側に対して、内部ユーザ側が外部ユーザ側を認証するための識別情報が何らかの方法で伝えられる。各実施形態では、内部ユーザ側のユーザ本人から、外部ユーザ側のユーザ本人に対して、識別情報が直接的に通知される。識別情報を通知する方法は、特に限定されず、口頭でもよいし、メモ等でもよい。識別情報を、電子メール等を用いて通知してもよい。また、識別情報の通知は、ゲスト端末50が第1のネットワークN1に接続する毎に行うようにする。
まず、ゲスト端末50と接続ボックス20とを、Wi−Fi(登録商標)による無線通信により接続する。なお、接続ボックス20のアクセスポイント機能を識別するために必要なSSID(Service Set Identifier)は、内部ユーザ側から外部ユーザ側に予め伝えておく。また、接続ボックス20において、アクセスポイント機能は、WEP(Wired Equivalent Privacy)キー等を用いた暗号化を行わなくてもよい。
図2において、ステップS11で、ゲスト端末50から接続ボックス20に対して接続要求が送信される。このとき、外部ユーザ側では、外部ユーザ本人が、内部ユーザ側から予め通知された識別情報をゲスト端末50に入力する。ゲスト端末50は、接続要求にこの識別情報を付加して接続ボックス20に送信する。
ステップS12で、接続ボックス20は、ゲスト端末50からの接続要求および識別情報を、内部ユーザ側に通知する。例えば、接続ボックス20は、ゲスト端末50からの接続要求及び識別情報をホスト端末30に送信する。ホスト端末30は、これら接続要求及び識別情報を受信し、識別情報をホスト端末30の後述する表示部303(図4参照)に表示させる。
なお、この時点では、接続ボックス20は、ゲスト端末50と第1のネットワークN1との間の接続を無効化している。そのため、接続ボックス20は、例えば接続要求及び識別情報を、メモリなどを介してゲスト端末50側から第1のネットワークN1側へと受け渡すようにする。
内部ユーザ側では、ホスト端末30の表示部303に表示された識別情報を内部ユーザ側の内部ユーザが見て、当該識別情報が正しいか否かを当該内部ユーザ本人が判定する。当該内部ユーザは、識別情報が正しいと判定した場合に、ステップS13で、接続許可を接続ボックス20に通知する。例えば、内部ユーザは、ホスト端末30に対して接続許可を示す接続許可情報を入力する。ホスト端末30は、入力された接続許可情報を接続ボックス20に送信する。
接続ボックス20は、接続許可情報を受信すると、ゲスト端末50と第1のネットワークN1との間の接続を有効化する。これにより、ゲスト端末50が接続ボックス20を介して第1のネットワークN1に接続されることになる。接続ボックス20は、第1のネットワークN1による認証を受けているため、ゲスト端末50は、接続ボックス20を介して第1のネットワークN1に接続される各機器にアクセスすることができるようになる(ステップS14)。
なお、このとき、接続ボックス20において、接続可能な機器を予め指定して記憶しておくことができる。例えば、MFP11及びPJ12のアクセスが許可されている場合、接続ボックス20は、これらMFP11及びPJ12を指示する情報(例えばIP(Internet Protocol)アドレス)を接続先情報として記憶しておく。
内部ユーザ側においてゲスト端末50から第1のネットワークN1へのアクセスを明示的に拒絶した場合や、内部ユーザ側において接続ボックス20に対するアクセスを中止した場合、接続ボックス20は、外部ユーザ側の接続を解除する(ステップS15)。例えば、内部ユーザ側の、ゲスト端末50の接続を許可した内部ユーザが、ホスト端末30から接続ボックス20に対して、ゲスト端末50の接続を解除するように要求する。接続ボックス20は、この要求に従い、ゲスト端末50と第1のネットワークN1との間の接続を無効化して、ゲスト端末50の第1のネットワークN1への接続を解除する。
このように、接続ボックス20は、組織体外のゲスト端末50と、組織体内の第1のネットワークN1との接続を制御する。そして、ゲスト端末50と第1のネットワークN1との接続を許可するか否かを、外部ユーザが入力した、予め通知した識別情報に基づき、内部ユーザが判定するようにしている。そのため、ゲスト端末50を容易に第1のネットワークN1に接続することができる。また、第1のネットワークN1に対する組織体外からの悪意による侵入を抑止できる。
以下、本実施形態の通信システムを構成する主要な装置の構成について説明する。
図3は、接続ボックス20の構成の一例を示す図である。図3に示すように、接続ボックス20は、Wi−Fi通信部201と、LAN通信部202と、WAN通信部203と、接続管理部204と、接続先記憶部205と、IP付加部206と、通信状態監視部207と、接続切替部208とを有する。これら構成の一部又は全ては、CPU上で動作するプログラムで構成してもよいし、互いに行動して動作するそれぞれ独立したハードウェアで構成してもよい。なお、図3において、破線で示す矢印は、外部装置(ホスト端末30)から入力される情報の入力経路を意味する。
Wi−Fi通信部201は、Wi−Fi(登録商標)によるアクセスポイント機能を有し、Wi−Fi(登録商標)による無線通信を行う。Wi−Fi通信部201は、予め定められたSSIDにより識別される。ゲスト端末50は、Wi−Fi通信部201が検出されると、当該Wi−Fi通信部201に設定されたSSIDを接続ボックス20に送信することで、Wi−Fi通信部201との接続を確立する。
ゲスト端末50は、上述したように、Wi−Fi通信部201との接続が確立されると、外部ユーザにより入力された識別情報をWi−Fi通信部201に送信する。Wi−Fi通信部201は、受信した識別情報を接続管理部204に出力する。接続管理部204は、例えばメモリであって、Wi−Fi通信部201から出力された識別情報を記憶する。
Wi−Fi通信部201は、ゲスト端末50との接続の確立後、ゲスト端末50から送信された通信データを、接続切替部208に出力する。ゲスト端末50から送信されるデータが識別情報であるか、それ以外の通信データであるかは、例えば、ゲスト端末50から送信されるデータに、データの内容を識別する識別子を埋め込むことで判別することが考えられる。
なお、第1の実施形態では、Wi−Fi通信部201は、WEPキーを設定せず、WEPによる暗号化を行わずに用いるようにする。勿論、一般的なWi−Fiのアクセスポイント機能と同様に、WEPキー等を設定し、通信パケットの暗号化を行ってWi−Fiによる通信を行うようにしてもよい。
LAN通信部202は、第1のネットワークN1に有線又は無線で接続可能な通信インタフェースを有し、第1のネットワークN1を介して接続される各機器との通信を制御する。WAN通信部203は、第2のネットワークN2に接続可能な通信インタフェースを有し、第2のネットワークN2を介して接続される各機器との通信を制御する。WAN通信部203は、例えば、第4世代又は第5世代の移動体通信システムに対応した通信インタフェースであって、図示しない通信事業者等を介して第2のネットワークN2に接続する。
接続先記憶部205は、この接続ボックス20を介した通信によりゲスト端末50に接続を許可する接続先のIPアドレスを予め記憶する。接続先記憶部205からIP付加部206に供給するIPアドレスは、外部、例えばホスト端末30からの指示で設定及び変更することができる。なお、接続ボックス20自体が、IPアドレスの設定手段や切り替え手段を備えてもよい。
IP付加部206は、Wi−Fi通信部201から接続切替部208を経由して入力される通信データに対して、接続先記憶部205に記憶されるIPアドレスを付加する。接続先記憶部205は、この接続ボックス20を介した通信によりゲスト端末50に接続を許可する接続先のIPアドレスを予め記憶する。
なお、図3では、接続管理部204、接続先記憶部205及びIP付加部206が接続ボックス20に内蔵されているものとして示しているが、これに限定されないものとする。例えば、接続管理部204、接続先記憶部205及びIP付加部206のうち一部または全部を接続ボックス20から分離し、第1のネットワークN1に接続されるサーバのような形態で接続ボックス20と連動して動作させてもよい。
通信状態監視部207は、LAN通信部202の通信状態を監視する。通信状態監視部207は、通信状態の変化を検知すると、その状態を示す状態情報を接続切替部208に通知する。
具体的には、通信状態監視部207は、通信状態監視部207のリンクダウンを検知すると、LAN通信部202の通信状態に異常が発生したと判定する。この場合、通信状態監視部207は、正常に通信可能な正常状態から異常状態に遷移したことを示す状態情報を、接続切替部208に通知する。また、通信状態監視部207は、リンクダウン状態にある通信状態監視部207のリンクアップを検知すると、異常状態から正常状態に遷移(復帰)したと判定する。この場合、通信状態監視部207は、異常状態から正常状態に遷移(復帰)したことを示す状態情報を、接続切替部208に通知する。
なお、LAN通信部202の通信状態の監視方法は、上記の例に限らないものとする。他の監視方法としては、LAN通信部202と第1のネットワークN1に接続された特定の機器との間の通信状態を監視してもよい。この場合、例えば、通信状態監視部207は、ホスト端末30から所定の時間間隔で送信される生存確認信号(例えばポーリング信号)により、LAN通信部202の通信状態を判定してもよい。具体的には、通信状態監視部207は、ホスト端末30から送信される生存確認信号をLAN通信部202を介して受信し、当該生存確認信号を所定時間の間受信できない場合に異常状態に遷移したと判定する。なお、通信状態監視部207は、生存確認信号に対する応答をホスト端末30に行うものとする。また、通信状態監視部207は、ホスト端末30に所定の時間間隔で生存確認信号を送信し、この生存確認信号に対するホスト端末30の応答により通信状態を判定してもよい。
接続切替部208は、外部装置(例えば、ホスト端末30)から入力される接続可否の設定に応じて、Wi−Fi通信部201とLAN通信部202との間の接続を有効化又は無効化する。なお、接続の「有効化」とは、通信インタフェース間を電気的に接続する意味や、インタフェース間でデータ(パケット)の転送が可能な状態とする意味を含む概念である。また、接続の「無効化」とは、通信インタフェース間を電気的に切断する意味や、インタフェース間でデータ(パケット)の転送を不能とする意味を含む概念である。データの転送制御については、例えば、NAT(Network Address Translation)やNAPT(Network Address Port Translation)等の技術を用いることができる。
また、接続切替部208は、通信状態監視部207から通知されるLAN通信部202の通信状態(状態情報)に応じて、Wi−Fi通信部201の接続先を、第1のネットワークN1又は第2のネットワークN2に切り替える。
具体的には、接続切替部208は、通信状態監視部207から異常状態への遷移を示す状態情報が通知されると、Wi−Fi通信部201とLAN通信部202との間の接続を無効化する。次いで、接続切替部208は、オフ状態にあるWAN通信部203の電源をオンとすることでWAN通信部203を有効化する。そして、接続切替部208は、Wi−Fi通信部201の接続先をWAN通信部203に切り替えることで、Wi−Fi通信部201からWAN通信部203にデータ(パケット)が転送されるよう制御する。これにより、ゲスト端末50は、接続ボックス20を介して第2のネットワークN2にアクセスすることができるようになる。
一方、通信状態監視部207から正常状態への遷移(復帰)を示す状態情報が通知された場合、接続切替部208は、Wi−Fi通信部201とWAN通信部203との間の接続を無効化する。次いで、接続切替部208は、オン状態にあるWAN通信部203の電源をオフとすることでWAN通信部203を無効化する。そして、接続切替部208は、Wi−Fi通信部201の接続先をLAN通信部202に切り替えることで、異常発生前の状態を復元する。これにより、第1のネットワークN1への接続が許可されたゲスト端末50は、接続ボックス20を介して第1のネットワークN1に接続される機器に再びアクセスすることができるようになる。
また、接続切替部208は、Wi−Fi通信部201の接続先の切り替えに伴い、Wi−Fi通信部201から入力されるパケットのヘッドデータ等を変更してもよい。例えば、接続切替部208は、ヘッドデータに含まれる送信元のIPアドレスやポートを変更してもよい。
また、通信状態監視部207は、接続先をWAN通信部203に切り替えた際、第1のネットワークN1への接続が許可されたゲスト端末50のみ、Wi−Fi通信部201からWAN通信部203にデータが転送されるよう制御してもよい。また、通信状態監視部207は、全てのゲスト端末50に対し、Wi−Fi通信部201からWAN通信部203へのデータ転送を許可することで、接続ボックス20をフリーアクセスポイントとして機能させてもよい。なお、LAN通信部202への復元時においては、通信状態監視部207は、異常発生前と同様に、第1のネットワークN1への接続が許可されたゲスト端末50のみ、データが転送されるよう制御する。
図4は、第1の実施形態に係るホスト端末30の機能構成の一例を示す図である。ホスト端末30は、通信部301と、接続要求取得部302と、表示部303と、入力部304と、接続設定部305と、通信状態監視部306と、制御部307とを有する。これら機能部の一部または全部は、CPU上で動作するプログラムにより構成される。また、これらの機能部は、互いに協働して動作するそれぞれ独立したハードウェアで構成してもよい。
通信部301は、第1のネットワークN1に有線又は無線で接続可能な通信インタフェースを有し、第1のネットワークN1を介して接続される各機器との通信を制御する。接続要求取得部302は、ゲスト端末50から接続ボックス20を経由して送信される識別情報を取得する。表示部303は、図示しない表示デバイスを有し、制御部307の制御に従い、各種の情報を表示デバイスに表示させる。例えば、表示部303は、接続要求取得部302に取得された識別情報と、ゲスト端末50の接続の可否の入力を促すメッセージとを表示させる。入力部304は、内部ユーザによる操作入力を受け付ける。接続設定部305は、入力部304になされた入力に従い、接続ボックス20に対して、第1のネットワークN1に対する接続の可否を指示する。
通信状態監視部306は、自己の装置(通信部301)と接続ボックス20の各々との間の通信状態を監視する。具体的には、通信状態監視部306は、接続ボックス20の各々に生存確認信号を所定の時間間隔で送信し、当該生存確認信号に対する接続ボックス20の応答により、接続ボックス20の各々との通信状態を判定する。例えば、通信状態監視部306は、生存確認信号に応答しない接続ボックス20が存在すると、当該接続ボックス20との通信状態に異常が発生したと判定する。この場合、通信状態監視部207は、異常発生を示すメッセージとともに、その接続ボックス20を特定可能な情報(例えばIPアドレス)を制御部307に通知する。なお、通信状態監視部306は、通信状態の監視方法は、上記の例に限らないものとする。例えば、通信状態監視部306は、接続ボックス20の各々から所定の時間間隔で送信される生存確認信号に基づき、通信状態を判定してもよい。なお、この場合、通信状態監視部306は、生存確認信号に対する応答を接続ボックス20の各々に行うものとする。
制御部307は、ホスト端末30の各機能部の動作を統括的に制御する。例えば、制御部307は、通信状態監視部306から異常発生を示すメッセージが通知されると、その旨の報知を行う。報知方法は特に問わず、種々の形態が可能である。例えば、制御部307は、異常が発生した接続ボックス20のIPアドレスを、異常の発生を報知するメッセージととともに表示部303に表示させてもよい。また、制御部307は、異常が発生した接続ボックス20のIPアドレスともに、異常の発生を報知するメッセージを、第1のネットワークN1に接続された他の装置や、第2のネットワークN2上に存在する外部の装置に送信してもよい。
図5は、第1の実施形態に係るゲスト端末50の機能構成の一例を示す図である。ゲスト端末50は、検索部501と、通信部502と、表示部503と、入力部504とを有する。これら機能部の一部または全部は、CPU(Central Processing Unit)上で動作するプログラムにより構成される。また、これらの機能部は、互いに協働して動作するそれぞれ独立したハードウェアで構成してもよい。
検索部501は、通信部502による通信を行う際に、Wi−Fiによるアクセスポイントを検索する。通信部502は、Wi−Fiによる通信が可能な通信インタフェースを有して構成される。通信部502は、検索部501で検索されたアクセスポイントとの間の接続を確立し、接続が確立されたアクセスポイントとの間で通信を行う。表示部503は、図示しない表示デバイスを有し、ゲスト端末50のCPUの制御に従い、各種の情報を表示デバイスに表示させる。例えば、表示部503は、識別情報を入力するように促すメッセージを含む画面を表示させる。入力部504は、外部ユーザによる操作入力を受け付ける。例えば、入力部504は、表示部503により表示された画面に応じて入力された識別情報を、通信部502に渡す。この場合、通信部502は、入力部504に入力された識別情報を送信する際に、例えば、識別情報が含まれる旨を示す識別子を送信データに埋め込むようにする。
以下、上述した接続ボックス20、ホスト端末30及びゲスト端末50の動作について説明する。
まず、図6を参照して、ホスト端末30で実行される、接続ボックス20に対する接続許可処理について説明する。図6は、ホスト端末30で実行される、接続ボックス20に対する接続許可処理の一例を示すフローチャートである。このフローチャートによる処理は、ホスト端末30のCPU上で動作するプログラムにより実行される。
接続ボックス20が第1のネットワークN1に接続されると、ホスト端末30は、例えば第1のネットワークN1を含む通信システムから、接続ボックス20のIPアドレスを取得する(ステップS101)。次に、ホスト端末30は、取得したIPアドレスに従い接続ボックス20にアクセスし、ゲスト端末50からの接続要求の有無を確認する(ステップS102)。ホスト端末30は、接続要求が接続ボックス20に受信されていないと判定した場合(ステップS103;No)、処理をステップS102に戻す。
ここで、ゲスト端末50から識別情報を付加して送信された接続要求は、接続ボックス20内の接続管理部204に記憶される。ホスト端末30は、ステップS101で、接続ボックス20に対して接続要求の有無を問い合わせる。接続ボックス20の接続管理部204は、この問い合わせに応じて接続要求を記憶しているか否かを判定し、判定結果をホスト端末30に通知する。
ホスト端末30は、接続要求が接続ボックス20に受信されていると判定した場合(ステップS103;Yes)、処理をステップS104に移行する。ホスト端末30は、接続ボックス20から識別情報を取得し、その識別情報を確認するための識別情報表示画面を生成して、表示部303に表示させる(ステップS104)。
例えば、ホスト端末30は、ステップS104で、接続ボックス20に対して、接続要求に付加される識別情報を要求する。接続ボックス20では、接続管理部204がホスト端末30からの要求に応じて、当該接続管理部204が記憶する識別情報を、ホスト端末30に送信する。ホスト端末30は、この識別情報と、ゲスト端末50の接続の可否を指示するための入力を促すメッセージとを表示させるための表示画面を生成し、生成した表示画面を表示部303に表示させる。
続いて、ホスト端末30は、内部ユーザによる、ゲスト端末50の接続可否を指示する入力を待機する(ステップS105;No)。そして、ホスト端末30は、ゲスト端末50の接続可否の指示が内部ユーザにより入力されると(ステップS105;Yes)、入力された指示に従い、第1のネットワークN1に対する接続可否を接続ボックス20に指示する(ステップS106)。
表示部303の識別情報表示画面に表示される識別情報を外部ユーザが認証した場合、内部ユーザは、ゲスト端末50と第1のネットワークN1の間の接続を許可する指示をホスト端末30に入力する。ホスト端末30は、この指示を接続ボックス20に送信する。接続ボックス20において、接続切替部208は、LAN通信部202を介してこの指示を受信すると、Wi−Fi通信部201とLAN通信部202との間の接続を有効化する。
次に図7を参照して、ゲスト端末50で実行される、第1のネットワークN1への接続要求処理を説明する。図7は、ゲスト端末50で実行される、第1のネットワークN1への接続要求処理の一例を示すフローチャートである。このフローチャートによる処理は、ゲスト端末50のCPU上で動作するプログラムにより実行される。
まず、ゲスト端末50は、接続ボックス20のWi−Fi通信部201から送信されるWi−Fiによる電波を検出する(ステップS201)。ゲスト端末50において、Wi−Fi通信部201からの電波が検出されると、外部ユーザは、予め通知された接続ボックス20(Wi−Fi通信部201)のSSIDをゲスト端末50に入力する。ゲスト端末50は、SSIDの入力を受け付けると、その入力されたSSIDを接続ボックス20に送信して、接続ボックス20にアクセスする(ステップS202)。
続いて、ゲスト端末50は、外部ユーザに対して識別情報の入力を促す識別情報入力画面を生成し、表示部503に表示させる(ステップS203)。次いで、ゲスト端末50は、外部ユーザによる識別情報の入力を待機する(ステップS204;No)。外部ユーザにより識別情報が入力されると(ステップS204;Yes)、ゲスト端末50は、入力された識別情報を接続ボックス20に送信する(ステップS205)。このとき、ゲスト端末50は、識別情報を、第1のネットワークN1に対する接続を要求する接続要求に付加して、接続ボックス20に送信する。接続要求に付加して送信された識別情報がホスト端末30において内部ユーザにより認証されることで、接続ボックス20では、Wi−Fi通信部201とLAN通信部202との間の接続が有効化される。これにより、ゲスト端末50と第1のネットワークN1とが接続される。
なお、ゲスト端末50の第1のネットワークN1に対する接続が終了した場合、接続ボックス20の接続切替部208は、Wi−Fi通信部201とLAN通信部202との間の接続を無効化とする。また、接続切替部208は、接続管理部204に記憶された識別情報を消去し、さらに、Wi−Fi通信部201を初期化する。
なお、上述では、図1に示した通信システムにおいて、無線LANによる通信のセキュリティのためにWEPを用いるように説明したが、これに限定されないものとする。例えば、図1に示した通信システムにおける無線LANによる通信のセキュリティのために、WPA(Wi-Fi Protected Access)や、WPAを拡張したWPA2を用いてもよい。この場合であっても、第1の実施形態では、Wi−Fi通信部201は、WPAによるセキュリティを設定せず、WPAによる暗号化を行わずに用いるようにしている。勿論、Wi−Fi通信部201において、WPAによるセキュリティを設定し、接続認証と通信パケットの暗号化を行い、通信を実行してもよい。
次に、図8を参照して、接続ボックス20で実行される、Wi−Fi通信部201の接続先切替処理について説明する。図8は、接続ボックス20で実行される、Wi−Fi通信部201の接続先切替処理の一例を示すフローチャートである。
まず、通信状態監視部207は、LAN通信部202の通信状態を監視し、当該通信状態の変化を検知するまで待機する(ステップS301;No)。通信状態監視部207は、通信状態の変化を検知すると(ステップS301;Yes)、その旨を示す状態情報を接続切替部208に通知する。接続切替部208は、通信状態監視部207から状態情報が通知されると、その状態情報が異常状態への遷移を示すものかを判定する(ステップS302)。
状態情報が異常状態への遷移を示す場合(ステップS302;Yes)、接続切替部208は、Wi−Fi通信部201とLAN通信部202との間の接続を無効化する(ステップS303)。次いで、接続切替部208は、WAN通信部203の電源をオンとする(ステップS304)。そして、接続切替部208は、Wi−Fi通信部201の接続先をWAN通信部203に切り替えることで、Wi−Fi通信部201とWAN通信部203との間の接続を有効化する(ステップS305)。
一方、状態情報が正常状態への遷移(復帰)を指示する場合(ステップS302;No)、接続切替部208は、Wi−Fi通信部201とWAN通信部203との間の接続を無効化する(ステップS306)。次いで、接続切替部208は、WAN通信部203の電源をオフとする(ステップS307)。そして、接続切替部208は、Wi−Fi通信部201の接続先をLAN通信部202に切り替える(ステップS308)。
以上のように、本実施形態によれば、接続ボックス20は、第1のネットワークN1との通信に異常が発生すると、Wi−Fi通信部201(ゲスト端末50)の接続先を第2のネットワークN2に切り替える。これにより、接続ボックス20と第1のネットワークN1との通信に異常が発生した場合であっても、ゲスト端末50の通信環境を確保できるため、ゲスト端末50を操作する外部ユーザの通信に係るユーザ体験を維持することができる。
(第1の実施形態の変形例)
次に、第1の実施形態の変形例について説明する。上述した第1の実施形態では、LAN通信部202の通信状態に異常が発生した場合に、Wi−Fi通信部201の接続先を切り替える例を説明した。しかしながら、接続先の切り替えに係る条件は、これに限らない。そこで、本変形例では、任意の条件に応じてWi−Fi通信部201の接続先を切り替えることが可能な接続ボックス20の構成について説明する。
図9は、第1の実施形態の変形例に係る接続ボックス20aの構成の一例を示す図である。なお、図9において、上述した第1の実施形態と共通する要素については同一の符号を付して、詳細な説明を省略する。
図9に示すように、接続ボックス20aは、Wi−Fi通信部201と、LAN通信部202と、WAN通信部203と、接続管理部204と、接続先記憶部205と、IP付加部206と、接続切替部208aとを有する。
接続切替部208aは、上述した第1の実施形態の接続切替部208に代わるものであり、接続切替部208と同様の機能を有する。また、接続切替部208aは、自己の接続ボックス20aの状態が所定の条件を満たすと、その条件に応じてWi−Fi通信部201の接続先を、LAN通信部202又はWAN通信部203に切り替える。
ここで、接続先の切り替えに係る条件は特に問わず、種々の形態が可能である。例えば、接続切替部208aは、接続ボックス20aの計時手段(図示せず)で計時される時刻が、所定の時刻に達したことを条件に、Wi−Fi通信部201の接続先をWAN通信部203又はLAN通信部202に切り替える。また、接続切替部208aは、第1のネットワークN1に接続されたホスト端末30等の外部装置から、接続先の切り替えが指示されたことを条件に、その指示された接続先に切り替える。なお、LAN通信部202の通信状態を条件とすることで、上述した第1の実施形態の接続ボックス20と同様の動作(機能)を実現できることは言うまでもない。
図10は、接続ボックス20aで実行される、Wi−Fi通信部201の接続先切替処理の一例を示すフローチャートである。
まず、接続切替部208aは、自己の装置(接続ボックス20a)の状態が所定の条件を満たすまで待機する(ステップS401;No)。自己の装置の状態が所定の条件を満たすと(ステップS401;Yes)、接続切替部208aは、その条件に対応する接続先を判定する(ステップS402)。
接続先がWAN通信部203の場合(ステップS403;Yes)、接続切替部208aは、ステップS404〜S406の処理を実行することで、Wi−Fi通信部201の接続先をWAN通信部203に切り替える。これにより、ゲスト端末50は、接続ボックス20aを介して第2のネットワークN2にアクセスすることができるようになる。なお、ステップS404〜S406の処理は、図8で説明したステップS303〜S305と同様であるため説明を省略する。
一方、接続先がLAN通信部202の場合(ステップS403;No)、接続切替部208aは、ステップS407〜S409の処理を実行することで、Wi−Fi通信部201の接続先をLAN通信部202に切り替える。これにより、第1のネットワークN1への接続が許可されたゲスト端末50は、接続ボックス20aを介して第1のネットワークN1に接続される機器に再びアクセスすることができるようになる。なお、ステップS407〜S409の処理は、図8で説明したステップS306〜S308の処理と同様であるため説明を省略する。
以上のように、第1の実施形態の変形例によれば、接続ボックス20aは、自己の装置の状態が所定の条件を満たすと、Wi−Fi通信部201の接続先を第1のネットワークN1又は第2のネットワークN2に切り替える。これにより、任意の条件で、ゲスト端末50の接続先となるネットワークを切り替えることができるとともに、当該ゲスト端末50を操作する外部ユーザの通信に係るユーザ体験を維持することができる。
(第2の実施形態)
次に、第2の実施形態について説明する。第2の実施形態は、上述した接続ボックス20に対してSDN(Software Defined Networking)の概念を適用したものである。第2の実施形態の説明に先んじて、SDNについて概略的に説明する。
従来、組織体内で閉じた構成の組織内LAN等のネットワーク環境は、各ベンダが提供するLANスイッチや無線LANアクセスポイントの設定・運用を熟知した専任の担当者が構築するのが一般的であった。このようなネットワーク環境は、ベンダのソリューションによる認証手段や運用方法しか提供されない、所謂「ベンダロックイン」の状態であり、組織体が自在に認証手段や運用方法を設定することが困難であった。
これに対して、近年では、ユーザである組織体が独自のネットワークを構築できるようにするため、ネットワーク上のデータの動きをソフトウェアだけで制御可能とするSDNと呼ばれる概念が注目されている。このSDNに関連して、注目を集めている代表的な構成技術要素として「ネットワークの仮想化」と、「OpenFlow(オープンフロー)」とがある。
ネットワーク仮想化は、例えば、一つの物理インタフェースを複数に(若しくは複数の物理インタフェースを一つに)見せるような仮想インタフェース技術や、仮想インタフェースを接続中継する仮想スイッチ技術等に至る、複数の構成要素を含む技術の集合体である。ネットワーク仮想化は、物理ネットワーク機器と仮想ネットワーク部品、プロトコル技術の組合せによって、物理的なネットワーク構成から論理的なネットワーク構成を仮想的に分離し、物理構成に縛られない柔軟なネットワーク構成を実現する。
OpenFlowは、仮想化されたネットワーク上での通信を制御する手法(プロトコル)の一つである。OpenFlowは、通信をエンド・ツー・エンドのフローとして捉えて、そのフロー単位に経路制御、負荷分散、最適化等を行うことができる。具体的には、OpenFlowは、データ通信経路の中継機器等において自立分散的に各データパケットを解析して転送するのではなく、集中制御型に変えることで実現する。
OpenFlowでは、データの解析と転送先判断及び決定制御とを行う「コントロール・プレーン」と、パケットの物理的な伝送を担う部分である「データ・プレーン」とを分離する。OpenFlowでは、コントロール・プレーンを司るOFC(OpenFlowコントローラ)が転送ルールを指示し、データ・プレーンを担うOFS(OpenFlowスイッチ)がOFCの指示に従ってパケットの転送を行う。より具体的には、OFSは、OFCが追加及び書き換えを行う、OFSが持つフローテーブルに従って、パケットの転送を行う。このようにOpenFlowは、上述したネットワーク仮想化を制御するためのツールとして活用できる。
図11は、第2の実施形態に係る接続ボックス20bの構成の一例を示す図である。なお、図11において、上述した第1の実施形態と共通する要素については、同一の符号を付して、詳細な説明を省略する。
図11に示すように、接続ボックス20bは、Wi−Fi通信部201と、LAN通信部202と、WAN通信部203と、接続管理部204と、通信状態監視部207と、転送制御テーブル209と、転送処理部210とを有する。なお、図11において、破線で示す矢印は、外部装置(転送制御装置70)から入力される情報の入力経路を意味する。また、サーバ60と、転送制御装置70とが、第1のネットワークN1に接続される。
まず、サーバ60及び転送制御装置70について説明する。サーバ60は、第1のネットワークN1上の通信を管理する。第1のネットワークN1に接続される機器は、サーバ60の認証を受けることで、第1のネットワークN1を介した通信が可能となる。
転送制御装置70は、上述したOFCに対応し、接続ボックス20bを介したデータ転送を制御する。具体的には、転送制御装置70は、処理対象となるパケットの条件と当該パケットの転送先を示す情報とを含んだ転送制御情報を生成する。転送制御装置70は、生成した転送制御情報を、第1のネットワークN1を介して接続ボックス20bに送信する。なお、転送制御装置70は、第1の実施形態で説明したホスト端末30の機能の一部(例えば、通信状態監視部207)を備えてもよい。
ここで、処理対象となるパケットの条件や転送先は特に問わず、任意に設定することが可能である。例えば、転送制御装置70は、第1のネットワークN1に転送するパケットを条件とし、この第1のネットワークN1上に存在する特定の装置(PJ12やIWB13等)を転送先としてもよい。また、例えば、転送制御装置70は、第2のネットワークN2に転送するパケット条件とし、この第2のネットワークN2上に存在する特定の装置やサイトを転送先としてもよい。
一方、接続ボックス20bは、図11に示すように、Wi−Fi通信部201と、LAN通信部202と、WAN通信部203と、接続管理部204と、通信状態監視部207と、転送制御テーブル209と、転送処理部210とを有する。
転送制御テーブル209は、転送制御装置70から送信された転送制御情報を記憶する。転送処理部210は、上述したOFSに対応し、中継するパケットの振る舞いを、転送制御テーブル209から読み出した転送制御情報に従い制御する。また、転送処理部210は、通信状態監視部207から通知される状態情報に応じて、Wi−Fi通信部201の接続先を第1のネットワークN1又は第2のネットワークN2に切り替えることで、入力されるデータの転送先を切り替える。具体的には、転送処理部210は、NATやNAPTといった技術を用いることで、データ(パケット)の転送先を切り替える。
次に、接続ボックス20bを用いた通信について、図11〜図15及び上述の図2、図8を用いて説明する。
まず、内部ユーザ側において、例えばホスト端末30から接続ボックス20bに対する接続を確立させる。一例として、ホスト端末30は、例えばサーバ60にアクセスし、接続ボックス20bへの接続を要求する。この要求に応じて、サーバ60は、接続ボックス20bへの接続を確立させるための接続画面をホスト端末30の表示部303に表示させる。図12は、この接続画面G1の一例を示す。図12の例では、接続画面G1、接続ボックス20bへの接続をキャンセルするボタンG11と、接続ボックス20bへの接続処理を継続するためのボタンG12とが配置される。ホスト端末30は、操作されたボタンを示す情報をサーバ60に送信する。
サーバ60は、ボタンG12に対する操作を示す情報がホスト端末30から送信されると、図13に示すログイン画面G2をホスト端末30の表示部303に表示させる。入力領域G21及びG22は、それぞれユーザ名及びパスワードを入力するための領域である。ボタンG23は、入力領域G21及びG22に入力された情報をサーバ60に送信するためのボタンである。ボタンG24は、接続ボックス20bへの接続処理をキャンセルするボタンである。
サーバ60は、ホスト端末30から送信、ログイン画面G2に入力されたユーザ名及びパスワードを受信すると、受信したユーザ名及びパスワードに従い認証処理を行う。そして、サーバ60において認証が成功すると、ホスト端末30と接続ボックス20bとの間で、第1のネットワークN1を介した接続が確立される。
ホスト端末30は、接続ボックス20bとの接続が確立されると、ゲスト端末50による接続ボックス20bを介した接続を許可する機器を指定する機器指定画面を表示部303に表示させる。機器指定画面は、サーバ60から提示されて表示するようにしてもよい。
図14は、機器指定画面G3の一例を示す。この機器指定画面G3では、接続を許可することが可能な機器(MFP11、PJ12及びIWB13)を、アイコン画像G31a、G31b及びG31cとして表示している。なお、機器の選択画面はこれに限らず、各機器を文字列によりリスト表示させてもよい。
ホスト端末30は、アイコン画像G31a、G31b及びG31cのうち所望のアイコン画像が選択された後、ボタンG32が操作されると、選択されたアイコン画像に対応する機器を指示した指示情報を転送制御装置70に送信する。転送制御装置70は、ホスト端末30から送信された指示情報を、第1のネットワークN1を介して受け取り、受け取った指示に従い転送制御情報を設定する。転送制御装置70は、生成した転送制御情報を、第1のネットワークN1を介して接続ボックス20bに送信する。接続ボックス20bにおいて、転送制御装置70から送信された転送制御情報は、LAN通信部202を介して転送制御テーブル209に書き込まれる。
一方、ゲスト端末50は、予め通知された、Wi−Fi通信部201との接続を確立するためのSSIDを接続ボックス20bに対して送信する(図2のステップS11)。なお、上述した第1の実施形態と同様に、接続ボックス20bにおいて、アクセスポイント機能はWPA等による暗号化を行わなくてもよい。この場合、ゲスト端末50は、所定のSSIDを接続ボックス20bに送信することで、Wi−Fi通信部201との接続を確立することができる。また、この段階では、Wi−Fi通信部201においてWPAによる認証が行われていないので、Wi−Fi通信部201からLAN通信部202へのデータ転送は無効化されており、ゲスト端末50は第1のネットワークN1上の各機器にアクセスできない。
次に、外部ユーザ側において、ユーザ本人が、内部ユーザ側から予め通知された識別情報をゲスト端末50に入力する。このとき、ゲスト端末50は、Captive Portal機能により、例えばWi−Fi通信部201から接続管理部204を介してサーバ60上の識別情報入力画面を参照することで、当該識別情報入力画面がゲスト端末50の表示部503に表示される。
図15は、識別情報入力画面G4の一例を示す。図15の例では、識別情報入力画面G4は、描画領域G41に描画を行うことが可能な構成とされている。外部ユーザは、描画領域G41に対して、内部ユーザから予め通知された描画を行う。描画の内容は、外部ユーザ側と内部ユーザ側との間で認識が共有できれば特に限定されず、絵でもよいし、文字や記号でもよい。識別情報入力画面G4においてボタンG42が操作されると、例えば描画領域G41内の画像がホスト端末30に送信される。ホスト端末30は、送信された画像を受信し、受信した画像を表示部303に表示させる。
なお、識別情報入力画面G4において、ボタンG43を操作することで、描画領域G41の描画内容を消去することができる。また、識別情報入力画面G4は、描画を行うのに限らず、識別情報として例えば文字列の入力を行うようにしてもよい。
内部ユーザ側では、ホスト端末30の表示部303に表示された画像を内部ユーザ側のユーザ本人が見て、識別情報が正しいか否かを当該ユーザ本人が判定する。当該ユーザ本人は、識別情報が正しいと判定した場合に、接続許可を示す接続許可情報を接続ボックス20bに送信し(図2のステップS13)、接続許可を通知する。
接続ボックス20bは、ホスト端末30から受信した接続許可情報を接続管理部204に渡す。接続管理部204は、渡された接続許可情報に応じて、Wi−Fi通信部201に対してWPAによる鍵を渡す。Wi−Fi通信部201は、接続管理部204から渡された鍵を用いてWPAによる認証処理を行う。転送処理部210は、この認証処理に応じて、Wi−Fi通信部201とLAN通信部202との間の接続を有効化する。これにより、ゲスト端末50が接続ボックス20bを介して第1のネットワークN1に接続されることになる。接続ボックス20bは、第1のネットワークN1による認証を受けているため、ゲスト端末50は、接続ボックス20bを介して第1のネットワークN1に接続される各機器にアクセスすることができるようになる(図2のステップS14)。
ここで、ゲスト端末50から第1のネットワークN1への通信は、転送処理部210に中継されて行われるため、ゲスト端末50の第1のネットワークN1上の各機器への通信は、転送制御テーブル209に記憶される転送制御情報に従い制御される。例えば、転送制御テーブル209にIWB13に対応する転送制御情報が記憶されている場合、転送処理部210は、ゲスト端末50から送信されたデータ(パケット)の送信先をIWB13に設定する。
また、接続ボックス20bでは、通信状態監視部207がLAN通信部202の通信状態を監視している。通信状態監視部207は、通常状態の変化を検知すると(図8のステップS301;Yes)、その状態変化を示す状態情報を転送処理部210に通知する。
転送処理部210は、通信状態監視部207から異常状態への遷移を示す状態情報が通知されると、LAN通信部202にデータを転送する設定を無効化することで、Wi−Fi通信部201とLAN通信部202との間の接続を無効化する(図8のステップS303)。次いで、転送処理部210は、オフ状態にあるWAN通信部203の電源をオンとすることで、WAN通信部203を有効化する(図8のステップS304)。そして、転送処理部210は、Wi−Fi通信部201からWAN通信部203にデータを転送する設定を有効化することで、Wi−Fi通信部201の接続先をWAN通信部203に切り替える(図8のステップS305)。これにより、ゲスト端末50は、接続ボックス20bを介して第2のネットワークN2に接続される各機器にアクセスすることができるようになる。
一方、転送処理部210は、通信状態監視部207から通常状態への遷移(復帰)を示す状態情報が通知されると、WAN通信部203にデータを転送する設定を無効化することで、Wi−Fi通信部201とWAN通信部203との間の接続を無効化する(図8のステップS306)。次いで、転送処理部210は、オン状態にあるWAN通信部203の電源をオフとすることで、WAN通信部203を無効化する(図8のステップS307)。そして、転送処理部210は、Wi−Fi通信部201からLAN通信部202にデータを転送する設定を有効化することで、Wi−Fi通信部201の接続先をLAN通信部202に切り替える(図8のステップS308)。これにより、第1のネットワークN1への接続が許可されたゲスト端末50は、接続ボックス20bを介して第1のネットワークN1に接続される機器に再びアクセスすることができるようになる。
以上のように、第2の実施形態によれば、上述した第1の実施形態による構成にOpenFlowを適用しているため、第1のネットワークN1に対するゲスト端末50の接続許可に係る構成やシステムを、より柔軟且つ容易に構成することができる。また、接続ボックス20bにおける、Wi−Fi通信部201(ゲスト端末50)の接続先の切り替えに係る構成やシステムを、より柔軟且つ容易に構成することができる。
(第2の実施形態の変形例)
次に、第2の実施形態の変形例について説明する。上述した第2の実施形態では、LAN通信部202の通信状態に異常が発生した場合に、Wi−Fi通信部201の接続先を切り替える例を説明した。しかしながら、接続先の切り替えに係る条件は、第1の実施形態の変形例と同様、これに限らない。そこで、本変形例では、任意の条件に応じてWi−Fi通信部201の接続先を切り替えることが可能な接続ボックス20cの構成について説明する。
図16は、第2の実施形態の変形例に係る接続ボックス20cの構成の一例を示す図である。なお。図16において、図11と共通する要素については同一の符号を付して、詳細な説明を省略する。
図16に示すように、接続ボックス20cは、Wi−Fi通信部201と、LAN通信部202と、WAN通信部203と、接続管理部204と、転送制御テーブル209と、転送処理部210aとを有する。
転送処理部210aは、図11で説明した転送処理部210に代わるものであり、転送処理部210と同様の機能を有する。また転送処理部210aは、自己の接続ボックス20cの状態が所定の条件を満たすと、その条件に応じてWi−Fi通信部201の接続先を、LAN通信部202又はWAN通信部203に切り替える。転送先の切り替えに係る条件は特に問わず、上述した第1の実施形態の変形例と同様に種々の形態が可能である。
次に、接続ボックス20cで実行される、Wi−Fi通信部201の接続先切替処理について、図10を用いて説明する。
転送処理部210aは、自己の装置(接続ボックス20c)の状態が所定の条件を満たすと(図11のステップS401;Yes)、その条件に対応する接続先を判定する。接続先がWAN通信部203の場合(図11のステップS403;Yes)、転送処理部210aは、ステップS404〜S406の処理を実行することで、Wi−Fi通信部201の接続先をWAN通信部203に切り替える。これにより、ゲスト端末50は、接続ボックス20cを介して第2のネットワークN2にアクセスすることができるようになる。
一方、接続先がLAN通信部202の場合(図11のステップS403;No)、転送処理部210aは、ステップS407〜S409の処理を実行することで、Wi−Fi通信部201の接続先をLAN通信部202に切り替える。これにより、第1のネットワークN1への接続が許可されたゲスト端末50は、接続ボックス20cを介して第1のネットワークN1に接続される機器に再びアクセスすることができるようになる。
以上のように、第2の実施形態の変形例によれば、上述した第1の実施形態の変形例による構成にOpenFlowを適用しているため、第1のネットワークN1に対するゲスト端末50の接続許可に係る構成やシステムを、より柔軟且つ容易に構成することができる。また、接続ボックス20cにおける、Wi−Fi通信部201(ゲスト端末50)の接続先の切り替えに係る構成やシステムを、より柔軟且つ容易に構成することができる。
なお、上述の各実施形態は、本発明の好適な実施の例ではあるがこれに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変形による実施が可能である。
例えば、上記の実施形態では、接続ボックス20(20a、20b、20c)のWAN通信部203の接続先を第2のネットワークN2としたが、これに限らないものとする。また、WAN通信部203の接続先を第2のネットワークN2とする場合、第2のネットワークN2及びルータ40を経由して、第1のネットワークN1に接続可能な構成としてもよい。この場合、接続ボックス20(20a、20b、20c)は、第1のネットワークN1への接続が許可されたゲスト端末50のデータ(パケット)のみを転送するよう制御することが、セキュリティ上好ましい。
また、上記の実施形態では、ホスト端末30が接続ボックス20との通信異常を報知する構成としたが、これに限らず、接続ボックス20(20a、20b、20c)の各々が個別に行う構成としてもよい。この場合、例えば、接続ボックス20(20b)の、通信状態監視部207は、LAN通信部202の通信状態に異常が発生したことを検知すると、WAN通信部203を介して、第2のネットワークN2に接続された特定の装置に異常発生を通知する構成としてもよい。