本開示は、ネットワーク接続機能を有する情報処理装置及びその環境設定方法に関する。
特許文献1は、複数のネットワークに対して優先順位に従って接続を試行する情報処理装置を開示する。
本開示の情報処理装置は、通信部と、記憶部と、プロセッサとを備えている。通信部は、ネットワークへの接続を行う。記憶部は、ネットワークの種類と、ネットワークを介して形成される仮想ネットワークの有無と、に応じて設定される自装置の環境を表す環境設定情報を記憶する。プロセッサは、ネットワークが切り替わった場合、及び仮想ネットワークの有無が変化した場合の少なくとも一方の場合に、環境設定情報に基づいて、自装置の環境を設定する。
本開示の情報処理装置の環境設定方法は、第1確認ステップと、第2確認ステップと、環境設定ステップとを含む。第1確認ステップは、ネットワークの切り替えを確認する。第2確認ステップは、ネットワークを介して形成される仮想ネットワークの有無の変化を確認する。環境設定ステップは、第1確認ステップにおいて、ネットワークの切り替えが確認された場合、及び第2確認ステップにおいて、仮想ネットワークの有無に変化が確認された場合の少なくとも一方の場合に、接続しているネットワークの種類と、仮想ネットワークの有無と、に応じて、自装置の環境を設定する。
本開示の情報処理装置は、自装置の環境を適切に設定できる。
図1は、実施の形態における情報処理装置が動作する環境を説明する図である。
図2は、実施の形態における情報処理装置の外観図である。
図3は、実施の形態における情報処理装置のブロック図である。
図4は、実施の形態における情報処理装置の記憶部に保存されているプロファイルの一例を示す図である。
図5は、実施の形態における情報処理装置が、ネットワークに接続された状態の場合に行う動作を示すフローチャートである。
図6は、実施の形態における情報処理装置が、接続先ネットワークの切り替わりを検知した場合、もしくは、ネットワークを介して形成される仮想ネットワークの有無に変化を確認した場合に行う動作を示すフローチャートである。
以下、適宜図面を参照しながら、実施の形態を詳細に説明する。但し、必要以上に詳細な説明は省略する場合がある。例えば、既によく知られた事項の詳細説明や実質的に同一の構成に対する重複説明を省略する場合がある。これは、以下の説明が不必要に冗長になるのを避け、当業者の理解を容易にするためである。
なお、添付図面および以下の説明は、当業者が本開示を十分に理解するために、提供されるのであって、これらにより請求の範囲に記載の主題を限定することは意図されていない。
(実施の形態)
以下、図1〜5を用いて、実施の形態を説明する。
[1−1−1.システムの構成]
図1は、実施の形態における情報処理装置100が動作する環境を説明する図である。図1において、情報処理装置100は、1つ以上のネットワーク101が存在する環境で動作を行う。
ネットワーク101は、情報処理装置100が接続可能なネットワークである。ネットワーク101は、既知の様々なネットワークが含まれる。例えば、ネットワーク101は、無線通信による広域データ通信ネットワークに接続する通信サービスであるWWAN(Wireless Wide Area Network)や、無線でデータの送受信を行う構内通信網であるWLAN(Wireless Local Area Network/無線LAN)や、無線通信技術の規格のひとつであるWiMAX(登録商標、以下同様)(Worldwide Interoperability for Microwave Access)ネットワークや、銅線や光ファイバー等の通信ケーブルで機器を接続し電気や光の送受信によって通信を行う構内通信網である有線LAN(Local Area Network)などを含む。
本開示では、情報処理装置100がこれらの物理的なネットワーク101と接続された時に、ネットワーク101を介して仮想のネットワークを形成できる。仮想ネットワークとは、例えば、VPN(Virtual Private Network)や、VLAN(Virtual Local Area Network)である。VPNの一例として、SSL(Secure Sockets Layer)−VPNなどのインターネットVPNが挙げられる。VPNは、各地に散在する拠点間を、外部からクローズした状態で接続する社内ネットワークなどとして利用されている。なお、本開示において、単にネットワークという場合には、物理的ネットワークを意味し、仮想ネットワークと識別される。
[1−1−2.情報処理装置の構成]
図2は、実施の形態における情報処理装置100の外観図である。
情報処理装置100は、OS(Operating System)に基づいて所定の情報処理を行う。本実施の形態では、情報処理装置100の一例としてノートパソコンを用いて説明する。
なお、本開示の情報処理装置100は、ノートパソコンに限られない。情報処理装置100として、ラップトップPC(Personal Computer)やタブレットPC、スマートフォン、ウェアラブルコンピュータ等に適用可能である。
情報処理装置100は、出力部210と、入力部220とを備える。
出力部210は、画像や映像を表示する。出力部210は、典型的には液晶ディスプレイが用いられる。
入力部220は、入力を受け付ける。入力部220は、典型的にはタッチパネル、キーボード、タッチパッド、ボタンなどが用いられる。
図3は、実施の形態における情報処理装置100のブロック図である。図3に示すように、情報処理装置100は、出力部210と、入力部220の他にも、プロセッサ310と、記憶部320と、バス330と、通信部340とを備える。
プロセッサ310は、プログラムを実行することで情報処理装置100の他の構成要素を制御する。たとえばプロセッサ310は、通信部340を制御してネットワーク101への接続を実施する。
記憶部320は、情報処理装置100の処理に必要なデータを一時的、または恒久的に保存する。たとえば、記憶部320にはOS325やプログラム、後述するプロファイルなどを保存する。記憶部320には揮発性メモリや不揮発性メモリ、HDD(Hard Disk Drive)などが用いられる。
OS325は、情報処理装置100の動作を司るソフトウェアである。
バス330は、情報処理装置100の他の構成要素が送受信する電気信号が通る箇所である。制御信号やデータは、バス330を介して情報処理装置100の各構成要素の間で送受信される。
通信部340は、ネットワーク101への接続の試行、接続の確立、接続の切断をプロセッサ310に制御されることで行う。ここで接続の試行とは、プロセッサ310がネットワーク101と接続を確立させる為に、通信部340を介して、ネットワーク101について規定されたゲートウェイと通信を行うことである。接続の確立とは、上述した接続の試行を経て、ネットワーク101内に存在する端末と情報処理装置100とが通信可能になった状態である。また、通信部340は、情報処理装置100に接続された通信カードやネットワークケーブルの検知や、空間内に存在するWWAN、WLANの電波を検出することで、情報処理装置100が接続可能なネットワークを特定する。通信部340は、情報処理装置100が接続可能なネットワークとして特定したネットワークをプロセッサ310に通知する。
なお、通信部340の数は、1つであっても良いし、複数であってもよい。例えば複数の通信部340のそれぞれは、WWAN用の通信部、WLAN用の通信部、WiMAX用の通信部、有線LAN用の通信部であり、これらの通信部は、各ネットワークに一つずつ対応していてもよい。
なお、上述した各構成要素は物理的に独立した状態で情報処理装置100を構成することもあれば、一部の構成要素が統合されて情報処理装置100を構成することもある。例えば、1つのLSI(Large Scale Integration)の内部にプロセッサ310や、記憶部320や、通信部340の機能の一部又は全部が統合されて実装される。
また、上述した各構成要素を構成するために、物理的に独立した他の構成要素が組み合わせられることもある。例えば、論理的に単一の記憶部320を構成するために、物理的に異なる記憶部が複数用いられることがある。
また、プロセッサ310の負担を分散するために、複数のプロセッサや、通信部340や記憶部320の内部に実装されたマイクロコントローラが実際の処理を行うこともある。本実施の形態ではこれら処理を行う要素を総称してプロセッサ310と定義する。
[1−1−3.プロファイルの構成]
図4は、実施の形態における情報処理装置100の記憶部320に保存されているプロファイルの一例を示す図である。プロファイル400は、データベース形式の情報である。プロファイル400には、識別情報410と、それに対応する優先順位情報420、通信環境設定情報430、追加環境設定情報(仮想ネットワーク無し用)441、及び追加環境設定情報(仮想ネットワーク有り用)442とが一組以上記憶される。追加環境設定情報(仮想ネットワーク無し用)441と、追加環境設定情報(仮想ネットワーク有り用)442とが、本開示における環境設定情報に相当する。
識別情報410は、情報処理装置100が接続するネットワーク101を識別する情報である。識別情報410は、例えば、「WLAN」や「WiMAX」や「WWAN」や「有線LAN」といったネットワークの種類を特定する情報である。識別情報410は、上述したネットワークの種類を特定する情報に限定されない。識別情報410は、無線LANにおけるアクセスポイントの識別子であるSSID(Service Set Identifier)や、WiMAXやWWANの接続先事業者を識別する情報を含んでもよい。また、ユーザが特定のネットワークに対して任意に付与した名称であってもよい。つまり、識別情報410は、接続先としての複数のネットワーク101をそれぞれ特定できればよい。
優先順位情報420は、ネットワーク101への接続を行う順を示す情報である。なお、ネットワーク101への接続を行う順のことを、以下、優先順位という。ここで、例えば、ネットワークAとネットワークBの両方に対して情報処理装置100が接続可能な際には、プロセッサ310は優先順位情報420を参照して、優先順位の高いネットワークに対して通信部340に接続を試行させる。本実施の形態では、優先順位の値が小さいほど、すなわち優先順位情報420の数値が小さいほど、優先順位が高い。よって、情報処理装置100がネットワークAとネットワークBの両方に対して接続が可能な際には、プロセッサ310は、まずネットワークAへの接続を通信部340に試行させる。本実施の形態においては、プロセッサ310は所定の間隔、例えば、数秒〜数ミリ秒間隔で、ネットワーク101のうち接続可能なネットワークが存在するか否かを特定する。そして接続可能なネットワークが複数存在する場合は、優先順位情報420に従って、優先順位の値が小さいネットワークから順に、ネットワークへの接続の試行を行う。
図4の例においては、通信環境設定情報430は、ネットワーク101に接続する際に、ネットワーク101への接続に使用する通信部340のIPアドレスをどのように設定するかを示す情報である。例えば、図4に示す通信環境設定情報430は、ネットワークAに接続する際には、ネットワーク101への接続に使用する通信部340のIPアドレスが、DHCP(Dynamic Host Configuration Protocol)で取得されることを示している。さらに通信環境設定情報430は、例えばネットワークAからネットワークBへ切り替わる場合、ネットワーク101への接続に使用する通信部340のIPアドレスが、IPアドレス「192.168.111.10」である設定に変更されることを示している。
図4に示す追加環境設定情報(仮想ネットワーク無し用)441は、ネットワーク介して仮想ネットワークが形成されていない場合、接続されるネットワークに応じて設定される自装置の環境に関する情報である。環境設定情報(仮想ネットワーク有り用)442は、ネットワークを介して仮想ネットワーク形成されている場合、接続されるネットワークに応じて設定される自装置の環境に関する情報である。追加環境設定情報(仮想ネットワーク無し用)441および環境設定情報(仮想ネットワーク有り用)442は、接続されるネットワークに応じて設定される通信環境設定情報430に追加して行われる設定を示す。図4の例においては、追加環境設定情報(仮想ネットワーク無し用)441および追加環境設定情報(仮想ネットワーク有り用)442は、どのプログラムを起動した状態にするかを示す情報である。例えば、図4に示す追加環境設定情報(仮想ネットワーク無し用)441では、ネットワークAに接続されている状態で仮想ネットワークが形成されていない場合には、プロセッサ310はプログラムAが起動された状態となるようすることを示している。また図4に示す追加環境設定情報(仮想ネットワーク有り用)442は、ネットワークAに接続されている状態で仮想ネットワークが形成されている場合には、プロセッサ310はプログラムXが起動された状態となるようにすることを示している。
図4における、追加環境設定情報(仮想ネットワーク無し用)441及び追加環境設定情報(仮想ネットワーク有り用)442は、本開示における環境設定情報に相当する。このように、環境設定情報は、情報処理装置100がネットワーク101に接続された際に、仮想ネットワークが形成されているか否かに応じて、各種環境をどのように設定変更するかを示す情報である。環境設定情報としては、他にも、プロキシの設定、デフォルトプリンタの設定、Webブラウザのホームページ設定、オペレーティングシステムの設定、アプリケーションソフトウェアの設定、保存ファイルの設定、各種通信環境の設定、デスクトップのアイコン配列の設定など、各種環境に関する情報を含んでもよい。
[1−2.動作]
以上のように構成された情報処理装置100について、その動作を説明する。
図5は、実施の形態における情報処理装置100が、複数のネットワーク101のうちのいずれかに接続された状態の場合に行う動作を示すフローチャートである。
図5のフローチャートの開始時において、情報処理装置100は、例えば複数のネットワーク101のうち、図4のネットワークC(第1のネットワーク)と接続されているものとする。情報処理装置100がネットワークCに接続されると、図5に示すフローチャートに従って処理が開始される。
プロセッサ310は、記憶部320に保存されているプロファイル400を参照し、現在接続されているネットワークCよりも、優先順位の高いネットワーク101がプロファイル400中に存在するかを確認する(ステップS501)。優先順位の高いネットワーク101がプロファイル400中に存在する場合(ステップS501でYesの場合)には、ステップS502に進む。優先順位の高いネットワーク101がプロファイル400中に存在しない場合(ステップS501でNoの場合)には、図5のフローチャートの処理を終了する。例えば、識別情報410が「ネットワークC」のネットワーク101に接続している状態の場合には、その優先順位情報420は「3」なので、プロセッサ310は、優先順位が「3」よりも上位である「1」や「2」のネットワーク101がプロファイル400中に存在すると判定し、ステップS502に進む。一方、例えば、識別情報410が「ネットワークA」のネットワーク101に接続している状態の場合には、その優先順位は「1」なので、プロセッサ310は、優先順位がそれよりも上位であるネットワーク101はプロファイル400中に存在しないと判定し、図5のフローチャートの処理を終了する。
プロセッサ310は、現在接続中のネットワークCよりも優先順位が上位のネットワーク101に情報処理装置100が接続可能かどうかを確認する(ステップS502)。具体的には、プロセッサ310は、通信部340を制御し、ネットワークCより優先順位の高いネットワーク101を検索することにより確認する。現在接続中のネットワークCよりも優先順位が上位のネットワーク101に接続可能な場合(ステップS502でYesの場合)は、プロセッサ310は、その接続可能なネットワーク101をネットワークCの次に接続する次回接続先候補として決定し、ステップS503に進む。ここで、接続可能なネットワーク101が複数ある場合には、優先順位情報420に基づき、優先順位が最も上位のネットワーク101を次回接続先候補に決定する。現在接続中のネットワークCよりも優先順位が上位のネットワーク101に接続できない場合(ステップS502でNoの場合)は、所定の時間経過後に、再びステップS502に進む。
次にプロセッサ310は、ネットワーク101への継続的な接続を必要とする動作が情報処理装置100で行われているかどうかを判定する(ステップS503)。具体的には、プロセッサ310は、通信部340の通信状況を確認し、現在接続中のネットワークCを介して、情報処理装置100が継続して通信中かどうかを判定する。継続して通信中である場合(ステップS503でYesの場合)は、ステップS504に進む。継続して通信中でない場合(ステップS503でNoの場合)は、ステップS505に進む。ネットワーク101への継続的な接続を必要とする動作とは、例えば、ファイルのダウンロード動作やアップロード動作が挙げられる。
継続的な接続が必要な場合、次にプロセッサ310は、情報処理装置100が仮想ネットワークを形成しているかどうかを確認する(ステップS504)。仮想ネットワークが形成されている場合(ステップS504でYesの場合)は、ステップS505に進む。仮想ネットワークが形成されていない場合(ステップS504でNoの場合)は、現在接続されているネットワークCとの接続を維持し、所定の時間経過後に、再びステップS502に進む。プロセッサ310が仮想ネットワーク形成の有無を確認する具体的な方法としては、通信部340に仮想アダプターが存在するかどうか、存在する場合に、その仮想アダプターがネットワーク(例えばネットワークC)に接続している状態かどうかを確認する方法がある。仮想アダプターがネットワークに接続している状態である場合に、プロセッサ310は、仮想ネットワークが形成されていると判定する。また、別の方法として、OS325が接続している状態と判定しているネットワークの中に、仮想ネットワークが存在するかどうかを確認する方法がある。プロセッサ310は、OS325が接続している状態と判定しているネットワークの中に、仮想ネットワークが存在する場合に、仮想ネットワークが形成されていると判定する。仮想ネットワークの形成有無を判定する方法は上述の方法に限られるわけではなく、例えば、仮想ネットワークを形成する専用ソフトウェアがOS325上で動作し、その専用ソフトウェアが仮想ネットワークの形成有無をプロセッサ310に通知する等の別の方法であってもよい。
プロセッサ310は、通信部340を制御し、通信部340の接続先を、ネットワークCからステップS502で次回接続先候補と決定されたネットワークへ切り替える(ステップS505)。
図5のように、ネットワーク101の接続は、自動で切り替わる。もしくは情報処理装置100の使用者は、ネットワーク101を、手動で切り替えることもできる。
図6は、ネットワーク101の切り替えが検知された場合、もしくは、ネットワーク101を介して形成される仮想ネットワークの有無に変化が確認された場合に、情報処理装置100が行う動作を示すフローチャートである。
プロセッサ310は所定の間隔で、接続先のネットワーク101が切り替わったか否かを確認する(ステップS601)。ステップS601は、本開示の第1確認ステップに相当する。ステップS601で、プロセッサ310が、接続先のネットワーク101が切り替わったことを検知した場合(ステップS601でYesの場合)、プロセッサ310は、プロファイル400を参照し、新たに接続されたネットワーク101に対応する通信環境設定情報430に従って、各種環境設定を行う(ステップS602)。
一方、ステップS601で、プロセッサ310がネットワーク101の切り替えを検知しなかった場合(ステップS601でNoの場合)、プロセッサは、所定の間隔で、仮想ネットワークの有無が変化したかどうかを確認する(ステップS603)。ステップS603は、本開示の第2確認ステップに相当する。
ステップS603で、プロセッサ310が仮想ネットワークの有無の変化を確認しなかった場合(ステップS603でNoの場合)、ステップS601に戻る。
一方、ステップS602の後、あるいはステップS603で仮想ネットワークの有無が変化したことが確認された場合(ステップS603でYesの場合)、ステップS604に進む。
ステップS604では、プロセッサ310は、情報処理装置100が仮想ネットワークを形成しているかどうかを確認する。仮想ネットワークが形成されている場合(ステップS604でYesの場合)は、ステップS605に進む。仮想ネットワークが形成されていない場合(ステップS604でNoの場合)は、ステップS606に進む。プロセッサ310が仮想ネットワーク形成の有無を確認する具体的な方法としては、ステップS504と同様の方法が考えられる。なお、ステップS603で、既にプロセッサ310が仮想ネットワークの有無を判断している場合は、ステップS604を省略し、ステップS605あるいはステップS606に進んでもよい。
ステップS605では、プロセッサ310は、プロファイル400を参照し、接続しているネットワーク101に対応する追加環境設定情報(仮想ネットワーク有り用)442に従って、各種環境設定を行う。
ステップS606では、プロセッサ310は、プロファイル400を参照し、接続しているネットワーク101に対応する追加環境設定情報(仮想ネットワーク無し用)441に従って、各種環境設定を行う。ステップS605及びステップS606は、本開示の環境設定ステップに相当する。
なお、ステップS602、ステップS605、及びステップS606で、プロセッサ310は、環境設定を行う前に、設定しようとしている内容が既に設定されているかどうかを確認し、設定済みである場合には、改めて設定しないようにしてもよい。
[1−3.効果等]
以上のように、本開示の情報処理装置は、ネットワークへの接続を行う通信部と、プロファイルを記憶する記憶部と、通信部及び記憶部を制御するプロセッサと、を有する。プロファイルは、接続するネットワークの種類と、仮想ネットワークの有無と、に応じて自装置の環境を設定する内容を表す環境設定情報を含む。プロセッサは、通信部と接続されるネットワークが切り替わった場合、及び仮想ネットワークの有無が変化した場合の少なくとも一方の場合に、環境設定情報に基づいて、自装置の環境を設定する。
また本開示の環境設定方法は、第1確認ステップと、第2確認ステップと、環境設定ステップと、を備える。第1確認ステップは、ネットワークの切り替えを確認する。第2確認ステップは、ネットワークを介して形成される仮想ネットワークの有無の変化を確認する。環境設定ステップは、第1確認ステップにおいて、ネットワークの切り替えが確認された場合、及び第2確認ステップにおいて、仮想ネットワークの有無に変化が確認された場合の少なくとも一方の場合に、ネットワークの種類及び仮想ネットワークの形成の有無に応じて、自装置の環境設定を行う。
これにより、接続しているネットワークが同じであっても、仮想ネットワークの形成状況に応じて、異なる環境が設定される。あるいはネットワークが切り替わった場合に、仮想ネットワークの形成状況に応じて、異なる環境が設定される。その結果として、本開示の情報処理装置100は、自装置の環境を適切に設定することができる。
具体的な用途を挙げる。例えば、ノートPCが自宅のネットワークに接続されている状態において、社内ネットワークが形成されている場合は、ブラウザのホームページの設定や、プリンタの設定などが、勤務に適した環境に設定される。そして社内ネットワークから断絶すれば、各種の環境が、プライベートに適した環境に変更される。
本開示は、ネットワーク接続機能を有する情報処理装置に適用可能である。具体的には、パソコン、スマートフォン、ウェアラブルコンピュータなどに、適用可能である。
100 情報処理装置
101 ネットワーク
210 出力部
220 入力部
310 プロセッサ
320 記憶部
325 OS
330 バス
340 通信部
400 プロファイル
410 識別情報
420 優先順位情報
430 通信環境設定情報
441 追加環境設定情報(仮想ネットワーク無し用)
442 追加環境設定情報(仮想ネットワーク有り用)
本開示は、ネットワーク接続機能を有する情報処理装置及びその環境設定方法に関する。
特許文献1は、複数のネットワークに対して優先順位に従って接続を試行する情報処理装置を開示する。
本開示の情報処理装置は、通信部と、記憶部と、プロセッサとを備えている。通信部は、ネットワークへの接続を行う。記憶部は、ネットワークの種類と、ネットワークを介して形成される仮想ネットワークの有無と、に応じて設定される自装置の環境を表す環境設定情報を記憶する。プロセッサは、ネットワークが切り替わった場合、及び仮想ネットワークの有無が変化した場合の少なくとも一方の場合に、環境設定情報に基づいて、自装置の環境を設定する。
本開示の情報処理装置の環境設定方法は、第1確認ステップと、第2確認ステップと、環境設定ステップとを含む。第1確認ステップは、ネットワークの切り替えを確認する。第2確認ステップは、ネットワークを介して形成される仮想ネットワークの有無の変化を確認する。環境設定ステップは、第1確認ステップにおいて、ネットワークの切り替えが確認された場合、及び第2確認ステップにおいて、仮想ネットワークの有無に変化が確認された場合の少なくとも一方の場合に、接続しているネットワークの種類と、仮想ネットワークの有無と、に応じて、自装置の環境を設定する。
本開示の情報処理装置は、自装置の環境を適切に設定できる。
図1は、実施の形態における情報処理装置が動作する環境を説明する図である。
図2は、実施の形態における情報処理装置の外観図である。
図3は、実施の形態における情報処理装置のブロック図である。
図4は、実施の形態における情報処理装置の記憶部に保存されているプロファイルの一例を示す図である。
図5は、実施の形態における情報処理装置が、ネットワークに接続された状態の場合に行う動作を示すフローチャートである。
図6は、実施の形態における情報処理装置が、接続先ネットワークの切り替わりを検知した場合、もしくは、ネットワークを介して形成される仮想ネットワークの有無に変化を確認した場合に行う動作を示すフローチャートである。
以下、適宜図面を参照しながら、実施の形態を詳細に説明する。但し、必要以上に詳細な説明は省略する場合がある。例えば、既によく知られた事項の詳細説明や実質的に同一の構成に対する重複説明を省略する場合がある。これは、以下の説明が不必要に冗長になるのを避け、当業者の理解を容易にするためである。
なお、添付図面および以下の説明は、当業者が本開示を十分に理解するために、提供されるのであって、これらにより特許請求の範囲に記載の主題を限定することは意図されていない。
(実施の形態)
以下、図1〜5を用いて、実施の形態を説明する。
[1−1−1.システムの構成]
図1は、実施の形態における情報処理装置100が動作する環境を説明する図である。図1において、情報処理装置100は、1つ以上のネットワーク101が存在する環境で動作を行う。
ネットワーク101は、情報処理装置100が接続可能なネットワークである。ネットワーク101は、既知の様々なネットワークが含まれる。例えば、ネットワーク101は、無線通信による広域データ通信ネットワークに接続する通信サービスであるWWAN(Wireless Wide Area Network)や、無線でデータの送受信を行う構内通信網であるWLAN(Wireless Local Area Network/無線LAN)や、無線通信技術の規格のひとつであるWiMAX(登録商標、以下同様)(Worldwide Interoperability for Microwave Access)ネットワークや、銅線や光ファイバー等の通信ケーブルで機器を接続し電気や光の送受信によって通信を行う構内通信網である有線LAN(Local Area Network)などを含む。
本開示では、情報処理装置100がこれらの物理的なネットワーク101と接続された時に、ネットワーク101を介して仮想のネットワークを形成できる。仮想ネットワークとは、例えば、VPN(Virtual Private Network)や、VLAN(Virtual Local Area Network)である。VPNの一例として、SSL(Secure Sockets Layer)−VPNなどのインターネットVPNが挙げられる。VPNは、各地に散在する拠点間を、外部からクローズした状態で接続する社内ネットワークなどとして利用されている。なお、本開示において、単にネットワークという場合には、物理的ネットワークを意味し、仮想ネットワークと識別される。
[1−1−2.情報処理装置の構成]
図2は、実施の形態における情報処理装置100の外観図である。
情報処理装置100は、OS(Operating System)に基づいて所定の情報処理を行う。本実施の形態では、情報処理装置100の一例としてノートパソコンを用いて説明する。
なお、本開示の情報処理装置100は、ノートパソコンに限られない。情報処理装置100として、ラップトップPC(Personal Computer)やタブレットPC、スマートフォン、ウェアラブルコンピュータ等に適用可能である。
情報処理装置100は、出力部210と、入力部220とを備える。
出力部210は、画像や映像を表示する。出力部210は、典型的には液晶ディスプレイが用いられる。
入力部220は、入力を受け付ける。入力部220は、典型的にはタッチパネル、キーボード、タッチパッド、ボタンなどが用いられる。
図3は、実施の形態における情報処理装置100のブロック図である。図3に示すように、情報処理装置100は、出力部210と、入力部220の他にも、プロセッサ310と、記憶部320と、バス330と、通信部340とを備える。
プロセッサ310は、プログラムを実行することで情報処理装置100の他の構成要素を制御する。たとえばプロセッサ310は、通信部340を制御してネットワーク101への接続を実施する。
記憶部320は、情報処理装置100の処理に必要なデータを一時的、または恒久的に保存する。たとえば、記憶部320にはOS325やプログラム、後述するプロファイルなどを保存する。記憶部320には揮発性メモリや不揮発性メモリ、HDD(Hard Disk Drive)などが用いられる。
OS325は、情報処理装置100の動作を司るソフトウェアである。
バス330は、情報処理装置100の他の構成要素が送受信する電気信号が通る箇所である。制御信号やデータは、バス330を介して情報処理装置100の各構成要素の間で送受信される。
通信部340は、ネットワーク101への接続の試行、接続の確立、接続の切断をプロセッサ310に制御されることで行う。ここで接続の試行とは、プロセッサ310がネットワーク101と接続を確立させる為に、通信部340を介して、ネットワーク101について規定されたゲートウェイと通信を行うことである。接続の確立とは、上述した接続の試行を経て、ネットワーク101内に存在する端末と情報処理装置100とが通信可能になった状態である。また、通信部340は、情報処理装置100に接続された通信カードやネットワークケーブルの検知や、空間内に存在するWWAN、WLANの電波を検出することで、情報処理装置100が接続可能なネットワークを特定する。通信部340は、情報処理装置100が接続可能なネットワークとして特定したネットワークをプロセッサ310に通知する。
なお、通信部340の数は、1つであっても良いし、複数であってもよい。例えば複数の通信部340のそれぞれは、WWAN用の通信部、WLAN用の通信部、WiMAX用の通信部、有線LAN用の通信部であり、これらの通信部は、各ネットワークに一つずつ対応していてもよい。
なお、上述した各構成要素は物理的に独立した状態で情報処理装置100を構成することもあれば、一部の構成要素が統合されて情報処理装置100を構成することもある。例えば、1つのLSI(Large Scale Integration)の内部にプロセッサ310や、記憶部320や、通信部340の機能の一部又は全部が統合されて実装される。
また、上述した各構成要素を構成するために、物理的に独立した他の構成要素が組み合わせられることもある。例えば、論理的に単一の記憶部320を構成するために、物理的に異なる記憶部が複数用いられることがある。
また、プロセッサ310の負担を分散するために、複数のプロセッサや、通信部340や記憶部320の内部に実装されたマイクロコントローラが実際の処理を行うこともある。本実施の形態ではこれら処理を行う要素を総称してプロセッサ310と定義する。
[1−1−3.プロファイルの構成]
図4は、実施の形態における情報処理装置100の記憶部320に保存されているプロファイルの一例を示す図である。プロファイル400は、データベース形式の情報である。プロファイル400には、識別情報410と、それに対応する優先順位情報420、通信環境設定情報430、追加環境設定情報(仮想ネットワーク無し用)441、及び追加環境設定情報(仮想ネットワーク有り用)442とが一組以上記憶される。追加環境設定情報(仮想ネットワーク無し用)441と、追加環境設定情報(仮想ネットワーク有り用)442とが、本開示における環境設定情報に相当する。
識別情報410は、情報処理装置100が接続するネットワーク101を識別する情報である。識別情報410は、例えば、「WLAN」や「WiMAX」や「WWAN」や「有線LAN」といったネットワークの種類を特定する情報である。識別情報410は、上述したネットワークの種類を特定する情報に限定されない。識別情報410は、無線LANにおけるアクセスポイントの識別子であるSSID(Service Set Identifier)や、WiMAXやWWANの接続先事業者を識別する情報を含んでもよい。また、ユーザが特定のネットワークに対して任意に付与した名称であってもよい。つまり、識別情報410は、接続先としての複数のネットワーク101をそれぞれ特定できればよい。
優先順位情報420は、ネットワーク101への接続を行う順を示す情報である。なお、ネットワーク101への接続を行う順のことを、以下、優先順位という。ここで、例えば、ネットワークAとネットワークBの両方に対して情報処理装置100が接続可能な際には、プロセッサ310は優先順位情報420を参照して、優先順位の高いネットワークに対して通信部340に接続を試行させる。本実施の形態では、優先順位の値が小さいほど、すなわち優先順位情報420の数値が小さいほど、優先順位が高い。よって、情報処理装置100がネットワークAとネットワークBの両方に対して接続が可能な際には、プロセッサ310は、まずネットワークAへの接続を通信部340に試行させる。本実施の形態においては、プロセッサ310は所定の間隔、例えば、数秒〜数ミリ秒間隔で、ネットワーク101のうち接続可能なネットワークが存在するか否かを特定する。そして接続可能なネットワークが複数存在する場合は、優先順位情報420に従って、優先順位の値が小さいネットワークから順に、ネットワークへの接続の試行を行う。
図4の例においては、通信環境設定情報430は、ネットワーク101に接続する際に、ネットワーク101への接続に使用する通信部340のIPアドレスをどのように設定するかを示す情報である。例えば、図4に示す通信環境設定情報430は、ネットワークAに接続する際には、ネットワーク101への接続に使用する通信部340のIPアドレスが、DHCP(Dynamic Host Configuration Protocol)で取得されることを示している。さらに通信環境設定情報430は、例えばネットワークAからネットワークBへ切り替わる場合、ネットワーク101への接続に使用する通信部340のIPアドレスが、IPアドレス「192.168.111.10」である設定に変更されることを示している。
図4に示す追加環境設定情報(仮想ネットワーク無し用)441は、ネットワーク介して仮想ネットワークが形成されていない場合、接続されるネットワークに応じて設定される自装置の環境に関する情報である。環境設定情報(仮想ネットワーク有り用)442は、ネットワークを介して仮想ネットワーク形成されている場合、接続されるネットワークに応じて設定される自装置の環境に関する情報である。追加環境設定情報(仮想ネットワーク無し用)441および環境設定情報(仮想ネットワーク有り用)442は、接続されるネットワークに応じて設定される通信環境設定情報430に追加して行われる設定を示す。図4の例においては、追加環境設定情報(仮想ネットワーク無し用)441および追加環境設定情報(仮想ネットワーク有り用)442は、どのプログラムを起動した状態にするかを示す情報である。例えば、図4に示す追加環境設定情報(仮想ネットワーク無し用)441では、ネットワークAに接続されている状態で仮想ネットワークが形成されていない場合には、プロセッサ310はプログラムAが起動された状態となるようすることを示している。また図4に示す追加環境設定情報(仮想ネットワーク有り用)442は、ネットワークAに接続されている状態で仮想ネットワークが形成されている場合には、プロセッサ310はプログラムXが起動された状態となるようにすることを示している。
図4における、追加環境設定情報(仮想ネットワーク無し用)441及び追加環境設定情報(仮想ネットワーク有り用)442は、本開示における環境設定情報に相当する。このように、環境設定情報は、情報処理装置100がネットワーク101に接続された際に、仮想ネットワークが形成されているか否かに応じて、各種環境をどのように設定変更するかを示す情報である。環境設定情報としては、他にも、プロキシの設定、デフォルトプリンタの設定、Webブラウザのホームページ設定、オペレーティングシステムの設定、アプリケーションソフトウェアの設定、保存ファイルの設定、各種通信環境の設定、デスクトップのアイコン配列の設定など、各種環境に関する情報を含んでもよい。
[1−2.動作]
以上のように構成された情報処理装置100について、その動作を説明する。
図5は、実施の形態における情報処理装置100が、複数のネットワーク101のうちのいずれかに接続された状態の場合に行う動作を示すフローチャートである。
図5のフローチャートの開始時において、情報処理装置100は、例えば複数のネットワーク101のうち、図4のネットワークC(第1のネットワーク)と接続されているものとする。情報処理装置100がネットワークCに接続されると、図5に示すフローチャートに従って処理が開始される。
プロセッサ310は、記憶部320に保存されているプロファイル400を参照し、現在接続されているネットワークCよりも、優先順位の高いネットワーク101がプロファイル400中に存在するかを確認する(ステップS501)。優先順位の高いネットワーク101がプロファイル400中に存在する場合(ステップS501でYesの場合)には、ステップS502に進む。優先順位の高いネットワーク101がプロファイル400中に存在しない場合(ステップS501でNoの場合)には、図5のフローチャートの処理を終了する。例えば、識別情報410が「ネットワークC」のネットワーク101に接続している状態の場合には、その優先順位情報420は「3」なので、プロセッサ310は、優先順位が「3」よりも上位である「1」や「2」のネットワーク101がプロファイル400中に存在すると判定し、ステップS502に進む。一方、例えば、識別情報410が「ネットワークA」のネットワーク101に接続している状態の場合には、その優先順位は「1」なので、プロセッサ310は、優先順位がそれよりも上位であるネットワーク101はプロファイル400中に存在しないと判定し、図5のフローチャートの処理を終了する。
プロセッサ310は、現在接続中のネットワークCよりも優先順位が上位のネットワーク101に情報処理装置100が接続可能かどうかを確認する(ステップS502)。具体的には、プロセッサ310は、通信部340を制御し、ネットワークCより優先順位の高いネットワーク101を検索することにより確認する。現在接続中のネットワークCよりも優先順位が上位のネットワーク101に接続可能な場合(ステップS502でYesの場合)は、プロセッサ310は、その接続可能なネットワーク101をネットワークCの次に接続する次回接続先候補として決定し、ステップS503に進む。ここで、接続可能なネットワーク101が複数ある場合には、優先順位情報420に基づき、優先順位が最も上位のネットワーク101を次回接続先候補に決定する。現在接続中のネットワークCよりも優先順位が上位のネットワーク101に接続できない場合(ステップS502でNoの場合)は、所定の時間経過後に、再びステップS502に進む。
次にプロセッサ310は、ネットワーク101への継続的な接続を必要とする動作が情報処理装置100で行われているかどうかを判定する(ステップS503)。具体的には、プロセッサ310は、通信部340の通信状況を確認し、現在接続中のネットワークCを介して、情報処理装置100が継続して通信中かどうかを判定する。継続して通信中である場合(ステップS503でYesの場合)は、ステップS504に進む。継続して通信中でない場合(ステップS503でNoの場合)は、ステップS505に進む。ネットワーク101への継続的な接続を必要とする動作とは、例えば、ファイルのダウンロード動作やアップロード動作が挙げられる。
継続的な接続が必要な場合、次にプロセッサ310は、情報処理装置100が仮想ネットワークを形成しているかどうかを確認する(ステップS504)。仮想ネットワークが形成されている場合(ステップS504でYesの場合)は、ステップS505に進む。仮想ネットワークが形成されていない場合(ステップS504でNoの場合)は、現在接続されているネットワークCとの接続を維持し、所定の時間経過後に、再びステップS502に進む。プロセッサ310が仮想ネットワーク形成の有無を確認する具体的な方法としては、通信部340に仮想アダプターが存在するかどうか、存在する場合に、その仮想アダプターがネットワーク(例えばネットワークC)に接続している状態かどうかを確認する方法がある。仮想アダプターがネットワークに接続している状態である場合に、プロセッサ310は、仮想ネットワークが形成されていると判定する。また、別の方法として、OS325が接続している状態と判定しているネットワークの中に、仮想ネットワークが存在するかどうかを確認する方法がある。プロセッサ310は、OS325が接続している状態と判定しているネットワークの中に、仮想ネットワークが存在する場合に、仮想ネットワークが形成されていると判定する。仮想ネットワークの形成有無を判定する方法は上述の方法に限られるわけではなく、例えば、仮想ネットワークを形成する専用ソフトウェアがOS325上で動作し、その専用ソフトウェアが仮想ネットワークの形成有無をプロセッサ310に通知する等の別の方法であってもよい。
プロセッサ310は、通信部340を制御し、通信部340の接続先を、ネットワークCからステップS502で次回接続先候補と決定されたネットワークへ切り替える(ステップS505)。
図5のように、ネットワーク101の接続は、自動で切り替わる。もしくは情報処理装置100の使用者は、ネットワーク101を、手動で切り替えることもできる。
図6は、ネットワーク101の切り替えが検知された場合、もしくは、ネットワーク101を介して形成される仮想ネットワークの有無に変化が確認された場合に、情報処理装置100が行う動作を示すフローチャートである。
プロセッサ310は所定の間隔で、接続先のネットワーク101が切り替わったか否かを確認する(ステップS601)。ステップS601は、本開示の第1確認ステップに相当する。ステップS601で、プロセッサ310が、接続先のネットワーク101が切り替わったことを検知した場合(ステップS601でYesの場合)、プロセッサ310は、プロファイル400を参照し、新たに接続されたネットワーク101に対応する通信環境設定情報430に従って、各種環境設定を行う(ステップS602)。
一方、ステップS601で、プロセッサ310がネットワーク101の切り替えを検知しなかった場合(ステップS601でNoの場合)、プロセッサ310は、所定の間隔で、仮想ネットワークの有無が変化したかどうかを確認する(ステップS603)。ステップS603は、本開示の第2確認ステップに相当する。
ステップS603で、プロセッサ310が仮想ネットワークの有無の変化を確認しなかった場合(ステップS603でNoの場合)、ステップS601に戻る。
一方、ステップS602の後、あるいはステップS603で仮想ネットワークの有無が変化したことが確認された場合(ステップS603でYesの場合)、ステップS604に進む。
ステップS604では、プロセッサ310は、情報処理装置100が仮想ネットワークを形成しているかどうかを確認する。仮想ネットワークが形成されている場合(ステップS604でYesの場合)は、ステップS605に進む。仮想ネットワークが形成されていない場合(ステップS604でNoの場合)は、ステップS606に進む。プロセッサ310が仮想ネットワーク形成の有無を確認する具体的な方法としては、ステップS504と同様の方法が考えられる。なお、ステップS603で、既にプロセッサ310が仮想ネットワークの有無を判断している場合は、ステップS604を省略し、ステップS605あるいはステップS606に進んでもよい。
ステップS605では、プロセッサ310は、プロファイル400を参照し、接続しているネットワーク101に対応する追加環境設定情報(仮想ネットワーク有り用)442に従って、各種環境設定を行う。
ステップS606では、プロセッサ310は、プロファイル400を参照し、接続しているネットワーク101に対応する追加環境設定情報(仮想ネットワーク無し用)441に従って、各種環境設定を行う。ステップS605及びステップS606は、本開示の環境設定ステップに相当する。
なお、ステップS602、ステップS605、及びステップS606で、プロセッサ310は、環境設定を行う前に、設定しようとしている内容が既に設定されているかどうかを確認し、設定済みである場合には、改めて設定しないようにしてもよい。
[1−3.効果等]
以上のように、本開示の情報処理装置は、ネットワークへの接続を行う通信部と、プロファイルを記憶する記憶部と、通信部及び記憶部を制御するプロセッサと、を有する。プロファイルは、接続するネットワークの種類と、仮想ネットワークの有無と、に応じて自装置の環境を設定する内容を表す環境設定情報を含む。プロセッサは、通信部と接続されるネットワークが切り替わった場合、及び仮想ネットワークの有無が変化した場合の少なくとも一方の場合に、環境設定情報に基づいて、自装置の環境を設定する。
また本開示の情報処理装置の環境設定方法は、第1確認ステップと、第2確認ステップと、環境設定ステップと、を備える。第1確認ステップは、ネットワークの切り替えを確認する。第2確認ステップは、ネットワークを介して形成される仮想ネットワークの有無の変化を確認する。環境設定ステップは、第1確認ステップにおいて、ネットワークの切り替えが確認された場合、及び第2確認ステップにおいて、仮想ネットワークの有無に変化が確認された場合の少なくとも一方の場合に、ネットワークの種類及び仮想ネットワークの形成の有無に応じて、自装置の環境設定を行う。
これにより、接続しているネットワークが同じであっても、仮想ネットワークの形成状況に応じて、異なる環境が設定される。あるいはネットワークが切り替わった場合に、仮想ネットワークの形成状況に応じて、異なる環境が設定される。その結果として、本開示の情報処理装置100は、自装置の環境を適切に設定することができる。
具体的な用途を挙げる。例えば、ノートPCが自宅のネットワークに接続されている状態において、社内ネットワークが形成されている場合は、ブラウザのホームページの設定や、プリンタの設定などが、勤務に適した環境に設定される。そして社内ネットワークから断絶すれば、各種の環境が、プライベートに適した環境に変更される。
本開示は、ネットワーク接続機能を有する情報処理装置に適用可能である。具体的には、パソコン、スマートフォン、ウェアラブルコンピュータなどに、適用可能である。
100 情報処理装置
101 ネットワーク
210 出力部
220 入力部
310 プロセッサ
320 記憶部
325 OS
330 バス
340 通信部
400 プロファイル
410 識別情報
420 優先順位情報
430 通信環境設定情報
441 追加環境設定情報(仮想ネットワーク無し用)
442 追加環境設定情報(仮想ネットワーク有り用)