以下に、図面を参照して、本発明にかかる通信装置、および通信システムの実施の形態を詳細に説明する。
(実施の形態にかかる通信方法の一実施例)
図1は、実施の形態にかかる通信方法の一実施例を示す説明図である。図1において、通信装置100は、第1の無線通信規格に対応の通信部および第2の無線通信規格に対応の通信部を有し、第1の無線通信規格の無線通信および第2の無線通信規格の無線通信を行うことが可能なコンピュータである。
第1の無線通信規格は、例えば、Bluetoothである。Bluetooth対応の通信部は、Bluetoothの規格にしたがい、Bluetooth対応のアンテナを用いて、Bluetooth対応の機器との無線通信を行う。Bluetooth対応のアンテナとは、Bluetoothの規格に対応する所定の周波数の電波を送受信可能なアンテナである。Bluetooth対応の機器は、Bluetooth通信可能な機器である。以下の説明では、Bluetoothを「BT」と表記する場合がある。また、以下の説明では、Bluetooth対応の通信部を「BT通信部」と表記し、Bluetooth対応の機器を「BT機器」と表記する場合がある。また、以下の説明では、Bluetooth対応の通信部による無線通信を「BT通信」と表記する場合がある。
第2の無線通信規格は、例えば、Wi−Fiである。Wi−Fi対応の通信部は、Wi−Fiの規格にしたがい、Wi−Fi対応のアンテナを用いて、Wi−Fi対応の機器との無線通信を行う。Wi−Fi対応のアンテナとは、Wi−Fiの規格に対応する所定の周波数の電波を送受信可能なアンテナである。Wi−Fi対応の機器は、Wi−Fi通信可能な機器である。以下の説明では、Wi−Fi対応の通信部を「Wi−Fi通信部」と表記し、Wi−Fi対応の機器を「Wi−Fi機器」と表記する場合がある。また、以下の説明では、Wi−Fi対応の通信部による無線通信を「Wi−Fi通信」と表記する場合がある。
また、通信装置100は、種々の接続方式によって、自装置を公衆回線に接続したり、自装置とBluetooth通信可能な機器や自装置とWi−Fi通信可能な機器を公衆回線に接続させたりすることができる。種々の接続方式は、例えば、下記の第1の方式〜第5の方式などである。
第1の方式は、BT通信部を用いて、自装置と通信可能な機器を公衆回線に接続させる方式である。第1の方式では、通信装置100は、PAN(Personal Area Networking Profile)に基づいて、PANU(PAN User)となるBT機器を、PANNAP(PAN Network Access Point)となる自装置を介して、公衆回線に接続する。第1の方式は、具体的には、Bluetoothテザリングと呼ばれる。
第2の方式は、BT通信部を用いて、自装置を公衆回線に接続する方式である。第2の方式では、通信装置100は、PANに基づいて、PANUとなる自装置を、PANNAPとなるアクセスポイントを介して、公衆回線に接続する。
第3の方式は、BT通信部を用いて、自装置と通信可能な機器を公衆回線に接続させる方式である。第3の方式では、通信装置100は、DUN(Dial−Up Network Profile)に基づいて、DUN−DT(Data Terminal)となるBT機器を、DUN−GW(GateWay)となる自装置を介して、公衆回線に接続する。
第4の方式は、Wi−Fi通信部を用いて、自装置と通信可能な機器を公衆回線に接続させる方式である。第4の方式では、通信装置100は、Wi−Fi機器を、Wi−Fi AP(Access Point)となる自装置を介して、公衆回線に接続させる。第4の方式は、具体的には、Wi−Fiテザリングと呼ばれる。
第5の方式は、Wi−Fi通信部を用いて、自装置を公衆回線に接続する方式である。第5の方式では、自装置を、Wi−Fi APとなるアクセスポイントを介して、公衆回線に接続する。第1の方式〜第5の方式では、例えば、TCP(Transmission Control Protocol)/IP(Internet Protocol)の通信規約にしたがって、通信装置100にIPが割り当てられる。
ここで、1つの機器において、同時に、複数のIPアドレスを保持することが好ましくない場合がある。このため、従来の携帯電話やスマートフォンなどの携帯端末は、第1の方式〜第5の方式のうち2つ以上の方式を同時に用いることなく、いずれか1つの方式を用いて自装置または自装置と通信可能な機器を公衆回線に接続させる傾向がある。
ところで、近年では、携帯端末の利便性の向上を図るために、駅、空港、公園、飲食店、コンビニエンスストア、集合住宅、または、個人宅などにWi−Fi対応のアクセスポイントが設置されることがある。このため、Wi−Fi対応のアクセスポイントが設置された場所は増加する傾向がある。
ところが、携帯端末のユーザは、Wi−Fi対応のアクセスポイントがどこに設置されているかを把握することが難しい場合がある。このため、携帯端末のユーザは、Wi−Fi通信部を通信許可の状態に設定したまま、3Gの無線通信とWi−Fiの無線通信とが自動的に切り替わるようにして、携帯端末を使用する傾向がある。
一方で、携帯端末は、カーナビゲーション装置などを公衆回線に接続する際にも用いられることがある。この際、カーナビゲーション装置は、車両の走行中にはハンドオーバーが困難なWi−Fi APとなるアクセスポイントを利用することが好ましくないため、BTのDUNに基づいて携帯端末を介して公衆回線に接続される傾向がある。
しかしながら、携帯端末のユーザは、カーナビゲーション装置を公衆回線に接続させるためにBT通信部を通信許可の状態に設定したとき、Wi−Fi通信部を通信許可の状態に設定したままにして、通信不許可の状態に変更しない場合がある。換言すれば、BT通信部とWi−Fi通信部とは、ともに通信許可の状態に設定される場合がある。
この場合、従来の携帯端末は、第1の方式〜第5の方式のうち2つ以上の方式を同時に用いることを回避するため、Wi−Fi通信部が通信許可の状態である間は、Wi−Fi通信部を用いた公衆回線への接続を優先してしまうことがある。換言すれば、従来の携帯端末は、Wi−Fi通信部が通信許可の状態である間は、BT通信部が通信許可の状態であってもBT通信部を用いた公衆回線への接続を行わないことがある。
このように、従来の携帯端末は、必ずしもユーザが所望するように自装置または自装置と通信可能な機器を公衆回線に接続してくれるとは限らず、ユーザが設定変更を行うことになりユーザにかかる負担が増大することがある。
そこで、本実施の形態では、ユーザが設定変更を行わなくても公衆回線への接続が行われる機会を増やし、ユーザにかかる負担を減らして通信装置100の利便性の向上を図ることができる通信方法について説明する。
図1の例では、通信装置100は、BT通信を用いた公衆回線110への接続要求を受け付ける。通信装置100は、例えば、BT通信によって、BT機器120からダイアルアップ通信の接続要求を受信する。ダイアルアップ通信は、通信装置100がアクセスポイントとなり、通信装置100とBT通信可能なBT機器120を、基地局112を介して、インターネット111を含む公衆回線110に接続させることにより実現される。
通信装置100は、接続要求を受け付けたことに応じて、Wi−Fi通信を用いた公衆回線110への接続が確立しているか否かを判定する。通信装置100は、例えば、Wi−Fi通信を用いてWi−Fi対応のアクセスポイント113に接続しているか否かを判定し、接続していればWi−Fi通信を用いた公衆回線110への接続が確立していると判定する。通信装置100は、例えば、Wi−Fi通信を用いてテザリングを行い、自装置とWi−Fi通信可能な機器を公衆回線110に接続させているか否かを判定し、接続させていればWi−Fi通信を用いた公衆回線110への接続が確立していると判定してもよい。
通信装置100は、Wi−Fi通信を用いた公衆回線110への接続が確立していないと判定した場合に、BT通信を用いた公衆回線110への接続を行う。通信装置100は、例えば、Wi−Fi対応のアクセスポイント113に接続していなければ、BT対応のアクセスポイントとして動作してBT機器120にダイアルアップ通信させる。一方で、通信装置100は、Wi−Fi通信を用いた公衆回線110への接続が確立していると判定した場合には、BT通信部を用いた公衆回線110への接続を行わない。
これによれば、通信装置100は、Wi−Fi通信部が通信許可の状態に設定されていても、実際にWi−Fi通信部を用いて公衆回線110に接続されていなければ、BT通信部を用いた公衆回線110への接続を行うことができる。これにより、通信装置100は、異なる無線通信規格の無線通信を用いた公衆回線へ接続が競合することを回避することができる。そして、通信装置100は、ユーザが設定変更を行わなくても、公衆回線110への接続を行う機会を増やすことができ、ユーザにかかる負担を減らし、通信装置100の利便性の向上を図ることができる。
通信装置100は、具体的には、Wi−Fi対応のアクセスポイント113に接続中でない場合や、Wi−Fiテザリングによって通信中でない場合には、BT通信部を用いた公衆回線110への接続を行うことができる。結果として、通信装置100は、Wi−Fi通信部が通信許可の状態に設定されたまま、ユーザが設定変更を行わなくても、BT通信部を用いてBT機器120にダイアルアップ通信させることが可能となる。また、通信部は、Wi−Fi通信部が通信許可の状態に設定されたまま、ユーザが設定変更を行わなくても、BT通信部を用いてBT対応のアクセスポイントに接続することも可能となる。
通信装置100が、Wi−Fi対応のアクセスポイント113に接続中でない場合や、Wi−Fiテザリングによって通信中でない場合に、BT通信部を用いた公衆回線110への接続を行う具体例は、動作例1として図8〜図12を用いて後述する。
ここでは、通信装置100が、Wi−Fi通信を用いた公衆回線110への接続が確立している場合には、BT通信部を用いた公衆回線110への接続を行わない場合について説明したが、これに限らない。例えば、通信装置100は、自装置とBT通信可能なBT機器120の種類が所定の種類である場合には、Wi−Fi通信を用いた公衆回線110への接続が確立していてもBT通信部を用いた公衆回線110への接続を行ってもよい。
通信装置100が、BT対応の所定の種類の機器とBT通信可能である場合に、Wi−Fi通信を用いた公衆回線110への接続が確立していても、BT通信部を用いた公衆回線110への接続を行う具体例は、動作例2として図13〜図17を用いて後述する。
また、ここでは、通信装置100が、Wi−Fi通信を用いた公衆回線110への接続が確立している場合に、BT通信部を用いた公衆回線110への接続を行うか否かを判断する場合について説明したが、これに限らない。例えば、通信装置100は、BT通信を用いた公衆回線110への接続が確立している場合に、Wi−Fi通信部を用いた公衆回線110への接続を行うか否かを判断してもよい。
以下の説明では、公衆回線110として「インターネットおよび電話回線」を採用し、第1の無線通信規格としてBluetoothを採用し、第2の無線通信規格としてWi−Fiを採用した場合について、実施の形態を説明する。
(本実施の形態にかかる通信システム200の一例)
次に、図1に示した通信装置100を適用した、本実施の形態にかかる通信システム200の一例について説明する。
図2は、本実施の形態にかかる通信システム200の一例を示す説明図である。図2において、通信システム200は、通信装置100と、クライアント装置220と、公衆回線210とを含む。公衆回線210は、インターネット211と、交換機212と、RNC213(Radio Network Controller)と、基地局214と、Wi−Fi対応のアクセスポイント215と、BT対応のアクセスポイント216とを含む。通信システム200において、通信装置100とクライアント装置220とは、例えば、Wi−Fi通信やBT通信によって接続される。
通信装置100は、3G通信部、Wi−Fi通信部、BT通信部を有するコンピュータである。通信装置100は、3G通信部を用いて、基地局214と3G/LTE(Long Term Evolution)通信を行う。通信装置100は、3G通信部を用いて、4G通信を行ってもよい。通信装置100は、Wi−Fi通信部を用いて、クライアント装置220やWi−Fi対応のアクセスポイント215とWi−Fi通信を行う。通信装置100は、BT通信部を用いて、クライアント装置220やBT対応のアクセスポイント216とBT通信を行う。通信装置100は、上述した第1の方式〜第5の方式によって、自装置または自装置と通信可能な機器を公衆回線210に接続する。通信装置100は、具体的には、携帯電話、スマートフォン、タブレット端末、またはPC(Personal Computer)である。
クライアント装置220は、Wi−Fi通信部およびBT通信部の少なくともいずれかを有するコンピュータである。クライアント装置220は、Wi−Fi通信部を用いて、通信装置100とWi−Fi通信を行う。クライアント装置220は、BT通信部を用いて、通信装置100とBT通信を行う。クライアント装置220は、上述した第1の方式、第3の方式、第5の方式などによって、通信装置100を介して公衆回線210に接続される。クライアント装置220は、具体的には、PC、ノートPC、タブレット端末、スマートフォン、カーナビゲーション装置、オーディオプレーヤー、ゲーム機などである。以下の説明では、カーナビゲーション装置を「カーナビ」と表記する場合がある。
インターネット211は、IPの通信規約にしたがって、所属するコンピュータにIPアドレスが割り振られたネットワークである。交換機212は、移動体通信網に含まれ、インターネット211とRNC213との間を中継する装置である。RNC213は、移動体通信網に含まれ、交換機212と基地局214との間を中継する装置である。基地局214は、移動体通信網に含まれ、RNC213と通信装置100との間を中継する装置である。基地局214は、例えば、通信装置100の電波を送受信するためのアンテナと通信機器との組み合わせを有する設備である。基地局214は、具体的には、鉄塔やビルの上、建物の中などに設置される。
Wi−Fi対応のアクセスポイント215は、Wi−Fi機器と通信可能であって、Wi−Fi機器とインターネット211との間を中継する装置である。BT対応のアクセスポイント216は、BT機器と通信可能であって、BT機器とインターネット211との間を中継する装置である。
(通信装置100のハードウェア構成例)
次に、図3を用いて、通信装置100のハードウェア構成例について説明する。
図3は、通信装置100のハードウェア構成例を示すブロック図である。図3において、通信装置100は、CPU(Central Processing Unit)301と、メモリ302と、3G通信部303と、Wi−Fi通信部304と、BT通信部305と、入力装置306と、表示装置307と、オーディオ入出力装置308とを有する。各構成部は、例えば、バス(不図示)によってそれぞれ接続される。
ここで、CPU301は、通信装置100の全体の制御を司る。メモリ302は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)およびフラッシュROMなどを有する。具体的には、例えば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU301のワークエリアとして使用される。メモリ302に記憶されるプログラムは、CPU301にロードされることで、コーディングされている処理をCPU301に実行させる。メモリ302は、Wi−Fi通信部304やBT通信部305などの電源ON/OFFの設定、および、Wi−Fi通信部304やBT通信部305などにおける接続状態を示す管理情報を記憶する。
3G通信部303は、3Gアンテナ313を有し、3G/LTE通信を行い、基地局214との間でデータの送受信を行う。3G通信部303は、3G/LTE通信によって送受信されたデータを、CPU301に対して入出力する。3G通信部303は、例えば、CPU301によって制御される。
Wi−Fi通信部304は、Wi−Fiアンテナ314を有し、Wi−Fi通信を行い、Wi−Fi対応のアクセスポイント215やクライアント装置220との間でデータの送受信を行う。Wi−Fi通信部304は、Wi−Fi通信によって送受信されたデータを、CPU301に対して入出力する。Wi−Fi通信部304は、例えば、CPU301によって制御される。
BT通信部305は、BTアンテナ315を有し、BT通信を行い、BT対応のアクセスポイント216やクライアント装置220との間でデータの送受信を行う。BT通信部305は、BT通信によって送受信されたデータを、CPU301に対して入出力する。BT通信部305は、例えば、CPU301によって制御される。
入力装置306は、文字、数字、各種指示などの入力のためのキーパッドを有し、データの入力を行う。入力装置306は、キーボードやマウスなどであってもよい。また、入力装置306は、タッチパネル式の入力パッドやテンキーなどであってもよい。入力装置306は、キーパッドおよびタッチパネル式の入力パッドの両方であってもよい。
表示装置307は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。表示装置307は、例えば、CRT(Cathode Ray Tube)、液晶ディスプレイ、有機EL(Electroluminescence)ディスプレイなどである。オーディオ入出力装置308は、通話時の音声の入出力、アラームや着信音などの出力を行う。オーディオ入出力装置308は、例えば、CODECを含む。CODECは、例えば、アナログ信号をPCM(Pulse Code Modulation)によりディジタル信号に変換する。
通信装置100は、上述した構成部のほか、例えば、インタフェース、ディスクドライブ、ディスク、SSD(Solid State Drive)、半導体メモリ、キーボード、マウス、ディスプレイなどを有することにしてもよい。
(通信装置100のソフトウェア構成例)
次に、図4を用いて、通信装置100のソフトウェア構成例について説明する。
図4は、通信装置100のソフトウェア構成例を示すブロック図である。図4において、通信装置100は、3G/LTE通信を管理する3G用要素群410と、Wi−Fi通信を管理するWi−Fi用要素群420と、BT通信を管理するBT用要素群430とを有する。通信装置100は、さらに、それぞれの要素群を制御するNW接続選択管理部440を有する。
3G用要素群410は、MB網接続管理制御部411と無線部412とを有する。MB網接続管理制御部411は、通信装置100の移動体通信網への接続を管理する。MB網接続管理制御部411は、移動体通信網への接続状態をステータスバーに送信する。MB網接続管理制御部411は、例えば、CPUによって実現される。ステータスバーは、通信装置100の通信状態を示す。無線部412は、3G/LTE通信を行う。無線部412は、例えば、3G通信部303によって実現される。
Wi−Fi用要素群420は、Wi−Fiアプリ421とWi−Fi接続管理部422とWi−Fiドライバ423とWi−Fiチップ424とを有する。Wi−Fiアプリ421は、Wi−Fi通信を用いた接続状態、接続先の候補として登録済みの機器、および、セキュリティに関する情報などを管理する。Wi−Fiアプリ421は、例えば、CPUによって実現される。Wi−Fi接続管理部422は、Wi−Fi通信を用いた接続処理および切断処理を管理する。Wi−Fi接続管理部422は、例えば、Wi−Fi対応のアクセスポイント215などのWi−Fi対応機器を検出する制御を行い、Wi−Fi通信を用いたWi−Fi対応機器への接続を行う。Wi−Fi接続管理部422は、例えば、CPUによって実現される。Wi−Fiドライバ423は、Wi−Fiチップ424へのインタフェースを制御する。Wi−Fiチップ424は、Wi−Fi通信を行う。Wi−Fiチップ424は、例えば、Wi−Fi通信部304によって実現される。
BT用要素群430は、BTアプリ431とBTプロファイル制御部432とBTプロトコルスタック433とHCI(Host Controller Interface)ドライバ434とBTチップ435とを有する。BTアプリ431は、BT通信を用いた接続状態、接続先の候補として登録済みの機器、および、セキュリティに関する情報などを管理する。BTアプリ431は、CPUによって実現される。BTプロファイル制御部432は、BTのプロファイルに対応したアプリ群である。BTプロファイル制御部432は、DUNプロファイルを扱うアプリを含む。DUNプロファイルは、通信装置100と、BT機器との間のRFCOMM(Radio Frequency Communication)502のリンクについてオフラインモードおよびオンラインモードを定義している。オフラインモードは、発信や切断、イベントを通知するためのATコマンドを取り扱う。オンラインモードは、ダイアルアップ通信を取り扱う。DUNプロファイルは、例えば、CPUによって実現される。
BTプロトコルスタック433は、階層構造のプロトコルである。プロトコルスタックは、複数のロジカルチャネルを設けるプロトコルを含む。BTプロトコルスタック433は、例えば、CPUによって実現される。HCIドライバ434は、UART(Universal Asynchronous Receiver Transmitter)のドライバであり、BTチップ435へのインタフェースを制御する。HCIドライバ434は、USB(Universal Serial Bus)のドライバであってもよい。HCIドライバ434は、PCI(Peripheral Component Interconnect)バスのドライバであってもよい。BTチップ435は、BT通信を行う。BTチップ435は、例えば、BT通信部305によって実現される。
NW接続選択管理部440は、図8〜図12を用いて後述する動作例1や図13〜図17を用いて後述する動作例2などを実現するロジックを有する。NW接続選択管理部440は、例えば、Wi−Fi通信部304が通信許可の状態に設定されていても、Wi−Fi通信が行われていなければ、BT通信を用いたダイアルアップ通信などを行うというロジックを有する。
NW接続選択管理部440は、具体的には、通信装置100にダイアルアップ通信が要求されたとき、通信装置100のWi−FiテザリングがONに設定されていても、設定に基づいてダイアルアップ通信を行うか否かを判定しない。NW接続選択管理部440は、設定にかかわらず、Wi−Fi通信を用いてインターネット211に接続されていない場合に、BT通信を用いたダイアルアップ通信を行うと判定する。
NW接続選択管理部440は、具体的には、通信装置100にダイアルアップ通信が要求されたとき、通信装置100がWi−Fi対応のアクセスポイント215への接続許可の状態であっても、設定に基づいてダイアルアップ通信を行うか否かを判定しない。NW接続選択管理部440は、設定にかかわらず、Wi−Fi通信を用いてインターネット211に接続されていない場合に、BT通信を用いたダイアルアップ通信を行うと判定する。
NW接続選択管理部440は、例えば、BT機器の種類が所定の種類である場合には、Wi−Fi通信が行われていてもWi−Fi通信を切断して、BT通信を用いたダイアルアップ通信を行うというロジックを有する。NW接続選択管理部440は、具体的には、BT通信によってBT機器から受信され、BTアプリ431が管理しているCoDに基づいて、BT機器の種類が所定の種類であるか否かを判定する。
CoDとは、BT機器の特徴を示すフラグを有するデータである。CoDは、Major device class、Minor device classを含む。Major device classとは、BT機器を大きくカテゴライズするフラグである。Minor device classとは、Major device classで定義されるカテゴリ内を、さらに詳細にカテゴライズするフラグである。
NW接続選択管理部440は、具体的には、Wi−Fi通信が行われているとき、カーナビであるBT機器からダイアルアップ通信の要求を受け付けた場合には、Wi−Fi接続管理部422にWi−Fi通信を切断させ、ダイアルアップ通信を行うよう制御する。この場合、Wi−Fi接続管理部422は、NW接続選択管理部440からダイアルアップ通信の完了通知を受信するまで、Wi−Fi対応のアクセスポイント215の検出動作を行ってもよいが、Wi−Fi通信の再接続は抑止する。
NW接続選択管理部440は、ダイアルアップ通信が完了すると、Wi−Fi接続管理部422に、ダイアルアップ通信の完了通知を送信する。Wi−Fi接続管理部422は、ダイアルアップ通信の完了通知を受信すると、Wi−Fi通信の再接続を行う。一方で、NW接続選択管理部440は、Wi−Fi通信が行われているとき、カーナビではないBT機器からダイアルアップ通信の要求を受け付けた場合には、ダイアルアップ通信を拒否して、Wi−Fi通信を継続するよう制御する。
(BT用要素群430の具体例)
次に、図5を用いて、図4に示したBT用要素群430の具体例について説明する。
図5は、BT用要素群430の具体例を示すブロック図である。図5において、L2CAP501(Logical link Control and Adaptation Protocol)と、RFCOMM502と、SDP503(Service Discovery Protocol)とはBTプロトコルスタック433に含まれる。
L2CAP501は、論理リンクを制御するプロトコルである。L2CAP501によって作成された論理リンク上で上位のプロトコルの通信が行われる。上位のプロトコルは、例えば、SDP503とRFCOMM502である。SDP503は、接続した機器との間でどのようなサービスが利用可能か、サービスの内容がどのようなものであるかを上位のアプリケーションに対して通知するプロトコルである。RFCOMM502は、論理リンク上でシリアルポートをエミュレートするプロトコルである。
HCI504は、HCIドライバ434とBTチップ435との間のインタフェースである。HCI504は、HCIドライバ434によって制御される。Link Controller505と、LMP506(Link Management Protocol)とは、BTチップ435に搭載される。Link Controller505は、BTにおけるベースバンド処理を行うソフトウェアである。LMP506は、自BTチップ435と接続先のBTチップ435間の接続やセキュリティを制御するプロトコルである。
(クライアント装置220のハードウェア構成例)
次に、図6を用いて、クライアント装置220のハードウェア構成例について説明する。
図6は、クライアント装置220のハードウェア構成例を示すブロック図である。図6において、クライアント装置220は、CPU601と、メモリ602と、BT通信部603と、入力装置604と、表示装置605と、オーディオ入出力装置606とを有する。各構成部は、例えば、バス(不図示)によってそれぞれ接続される。ここで、各構成部は、図3に示すCPU301と、メモリ302と、BT通信部305と、入力装置306と、表示装置307と、オーディオ入出力装置308と同様であるため、説明を省略する。
クライアント装置220は、上述した構成部のほか、例えば、Wi−Fi通信部304、インタフェース、ディスクドライブ、ディスク、SSD、半導体メモリ、キーボード、マウス、ディスプレイなどを有してもよい。また、クライアント装置220は、BT通信部603の代わりに、Wi−Fi通信部304を有してもよい。
(通信装置100の機能的構成例)
次に、図7を用いて、通信装置100の機能的構成例について説明する。
図7は、通信装置100の機能的構成例を示すブロック図である。通信装置100は、記憶部701と、受付部702と、判定部703と、接続部704と、出力部705とを含む構成である。記憶部701は、例えば、図3に示したメモリ302によって実現される。受付部702〜出力部705は、制御部となる機能であり、例えば、図3に示したメモリ302に記憶されたプログラムをCPU301に実行させることにより、または、3G通信部303、Wi−Fi通信部304、BT通信部305により、その機能を実現する。各機能部の処理結果は、例えば、メモリ302に記憶される。
記憶部701は、第1の無線通信規格による通信状況を示す情報を記憶する。第1の無線通信規格は、例えば、BTである。記憶部701は、例えば、BT通信部305を用いた公衆回線210への接続状況を示す情報を記憶する。BT通信部305を用いた公衆回線210への接続状況を示す情報は、例えば、BT通信部305を用いてBT対応のアクセスポイント216と接続しているか否かを示す情報である。BT通信部305を用いた公衆回線210への接続状況を示す情報は、例えば、自装置がBT対応のアクセスポイント216として動作中に、BT通信部305を用いてBT機器と接続しているか否かを示す情報である。
記憶部701は、第2の無線通信規格による通信状況を示す情報を記憶する。第2の無線通信規格は、例えば、Wi−Fiである。記憶部701は、例えば、Wi−Fi通信部304を用いた公衆回線210への接続状況を示す情報を記憶する。Wi−Fi通信部304を用いた公衆回線210への接続状況を示す情報は、例えば、Wi−Fi通信部304を用いてWi−Fi対応のアクセスポイント215と接続しているか否かを示す情報である。Wi−Fi通信部304を用いた公衆回線210への接続状況を示す情報は、例えば、自装置がWi−Fi対応のアクセスポイント215として動作中に、Wi−Fi通信部304を用いてWi−Fi機器と接続しているか否かを示す情報である。これにより、記憶部701は、判定部703によって用いられる情報を記憶しておき、判定部703に参照させることができる。
受付部702は、第1の無線通信規格の無線通信を用いた公衆回線210への接続要求を受け付ける。接続要求は、例えば、BT機器からのダイアルアップ通信の中継依頼である。接続要求は、例えば、ユーザからのBT対応のアクセスポイント216への接続許可であってもよい。公衆回線210は、例えば、IPネットワークを含む。公衆回線210は、具体的には、インターネット211や電話回線を含むネットワークである。
受付部702は、例えば、第1の無線通信規格の無線通信により、第1の通信装置から接続要求を受け付ける。第1の通信装置は、例えば、BT機器である。受付部702は、具体的には、BT通信により、BT機器からダイアルアップ通信の中継依頼を受信する。これにより、受付部702は、判定部703が判定を行うトリガを、判定部703に出力することができる。
受付部702は、第1の無線通信規格による無線通信により、第1の通信装置から第1の通信装置の種類を示す情報を受信する。受付部702は、BT通信により、BT機器から、BT機器の種類を示すCoDを受信する。これにより、受付部702は、判定部703によって用いられる第1の通信装置の種類を示す情報を、判定部703に出力することができる。
受付部702は、第1の通信装置の種類を示す情報をユーザの操作入力によって受け付けて、記憶部701に記憶しておいてもよい。そして、受付部702は、通信圏内に第1の通信装置が存在する場合に、記憶部701から第1の通信装置の種類を示す情報を取得してもよい。
受付部702は、第1の無線通信規格の無線通信により、第1の通信装置と公衆回線210との切断要求を受け付ける。受付部702は、例えば、BT通信により、BT機器から、ダイアルアップ通信の切断要求を受信する。これにより、受付部702は、第1の無線通信規格を用いた公衆回線210への接続を終了するトリガを、接続部704に出力することができる。
判定部703は、接続要求を受け付けたことに応じて、第2の無線通信規格の無線通信を用いた公衆回線210への接続が確立しているか否かを判定する。判定部703は、例えば、第2の無線通信規格の無線通信によって、第2の無線通信規格に対応したアクセスポイントへの接続が行われている場合に、第2の無線通信規格の無線通信を用いた公衆回線210への接続が確立していると判定する。判定部703は、具体的には、Wi−Fi対応のアクセスポイント215と接続中であれば、インターネット211への接続が確立していると判定する。
判定部703は、例えば、第2の無線通信規格の無線通信により接続された第2の通信装置を移動体通信網の基地局214を介して公衆回線210に接続している場合に、第2の無線通信規格の無線通信を用いた公衆回線210への接続が確立していると判定する。判定部703は、具体的には、自装置がWi−Fi対応のアクセスポイント215として動作し、Wi−Fi機器をインターネット211に接続中であれば、インターネット211への接続が確立していると判定する。これにより、判定部703は、接続部704が第1の無線通信規格を用いた公衆回線210への接続を行うか否かの基準となる判定結果を、接続部704に出力することができる。
判定部703は、さらに、第2の無線通信規格の無線通信を用いた公衆回線210への接続が確立していると判定した場合に、第1の通信装置の種類が所定の種類であるか否かを判定する。所定の種類とは、第2の無線通信規格の無線通信を用いた公衆回線210への接続よりも優先して、公衆回線210への接続を行うことが好ましい第1の通信装置の種類である。所定の種類は、例えば、カーナビである。判定部703は、例えば、受信した第1の通信装置の種類を示す情報に基づいて、第1の通信装置の種類が所定の種類であるか否かを判定する。判定部703は、具体的には、受信したBT機器の種類を示すCoDに基づいて、BT機器がカーナビであるか否かを判定する。これにより、判定部703は、接続部704が第1の無線通信規格を用いた公衆回線210への接続を行うか否かの基準となる判定結果を、接続部704に出力することができる。
接続部704は、第2の無線通信規格の無線通信を用いた公衆回線210への接続が確立していないと判定した場合に、第1の無線通信規格の無線通信を用いた公衆回線210への接続を行う。接続部704は、例えば、第2の無線通信規格の無線通信を用いた公衆回線210への接続が確立していないと判定した場合に、第1の通信装置を自装置および移動体通信網の基地局214を介して公衆回線210に接続する。接続部704は、具体的には、Wi−Fi通信を用いたインターネット211への接続が確立していなければ、自装置がBT対応のアクセスポイント216として動作し、BT機器をダイアルアップ通信させる。また、接続部704は、具体的には、Wi−Fi通信を用いたインターネット211への接続が確立していなければ、自装置をBT対応のアクセスポイント216を介してインターネット211に接続してもよい。
これにより、接続部704は、第2の無線通信規格の無線通信を許可する設定であっても、設定に基づいて第1の無線通信規格を用いた公衆回線210への接続を拒否することがないようにすることができる。換言すれば、接続部704は、実際に第2の無線通信規格の無線通信が行われているか否かに基づいて第1の無線通信規格を用いた公衆回線210への接続を行うことができる。そして、接続部704は、ユーザが設定変更を行わなくても、第1の無線通信規格を用いた公衆回線210への接続を行う機会を増やすことができ、通信装置100の利便性の向上を図ることができる。
接続部704は、所定の種類であると判定した場合に、第2の無線通信規格の無線通信を用いた公衆回線210への接続を切断し、第1の通信装置を自装置および移動体通信網の基地局214を介して公衆回線210に接続する。接続部704は、例えば、BT機器がカーナビであると判定した場合に、Wi−Fi通信を用いたインターネット211通信を切断し、自装置がBT対応のアクセスポイント216として動作して、BT機器に基地局214を介してダイアルアップ通信させる。
これにより、接続部704は、第2の無線通信規格の無線通信が行われている場合であっても、第2の無線通信規格の無線通信を終了して第1の無線通信規格を用いた公衆回線210への接続を行うことができる。また、接続部704は、第1の通信装置の種類が、第2の無線通信規格の無線通信を用いた公衆回線210への接続よりも優先して公衆回線210への接続を行うことが好ましい所定の種類であるか否かを判定することができる。
そして、接続部704は、所定の種類であれば、第1の無線通信規格を用いた公衆回線210への接続を優先して行うことができる。結果として、接続部704は、ユーザが設定変更を行わなくても、第1の無線通信規格を用いた公衆回線210への接続を行うことが好ましいと判断される場合には、第1の無線通信規格を用いた公衆回線210への接続を行うことができる。
接続部704は、切断要求を受け付けたことに応じて、第1の通信装置と公衆回線210とを切断し、第2の無線通信規格の無線通信を用いた公衆回線210への接続を行う。接続部704は、切断要求を受け付けたことに応じて、BT機器のダイアルアップ通信を切断し、Wi−Fi通信を用いたインターネット211への接続を復旧する。これにより、接続部704は、第1の通信装置と公衆回線210との接続が終了した後は、第2の無線通信規格の無線通信を用いた公衆回線210への接続を復旧することができる。
接続部704は、第1の無線通信規格の無線通信により、第1の無線通信規格に対応したアクセスポイントを検出してもよい。そして、接続部704は、検出したことに応じて、第2の無線通信規格の無線通信を用いた公衆回線210への接続が確立していないと判定した場合に、自装置を第1の無線通信規格に対応したアクセスポイントを介して公衆回線210に接続する。
接続部704は、例えば、BT通信部305の通信圏内に、BT対応のアクセスポイント216があることを検出し、BT対応のアクセスポイント216を検出したことに応じて、自装置をインターネット211に接続する。これにより、接続部704は、第2の無線通信規格の無線通信を許可する設定であっても、設定に基づいて第1の無線通信規格を用いた公衆回線210への接続を拒否することがないようにすることができる。換言すれば、接続部704は、実際に第2の無線通信規格の無線通信が行われているか否かに基づいて第1の無線通信規格を用いた公衆回線210への接続を行うことができる。そして、接続部704は、ユーザが設定変更を行わなくても、第1の無線通信規格を用いた公衆回線210への接続を行う機会を増やすことができ、通信装置100の利便性の向上を図ることができる。
出力部705は、第2の無線通信規格の無線通信を用いた公衆回線210への接続が確立していると判定した場合に、第1の通信装置に公衆回線210への接続失敗を通知する。出力部705は、例えば、Wi−Fi通信を用いたインターネット211への接続が確立していると判定した場合に、BT機器にダイアルアップ通信の失敗を通知する。これにより、出力部705は、第1の無線通信規格の無線通信を用いた公衆回線210への接続を行う場合には、通信装置100の設定変更を行うように第1の通信装置のユーザに促すことができる。
ここでは、第1の無線通信規格がBTであり、第2の無線通信規格がWi−Fiである場合について説明したが、これに限らない。例えば、第1の無線通信規格がWi−Fiであり、第2の無線通信規格がBTであってもよい。
(通信装置100の動作例1)
次に、図8を用いて、通信装置100の動作例1について説明する。
図8は、通信装置100の動作例1を示す説明図である。動作例1では、通信装置100は、Wi−Fi通信部304が通信を許可する状態に設定されていても、Wi−Fi通信部304を用いてインターネット211に接続されていなければ、BT通信部305を用いたインターネット211への接続を行う。
図8(A)の例では、Wi−Fi通信部304は、通信を許可する状態に設定されている。しかしながら、Wi−Fi通信部304は、Wi−Fi対応のアクセスポイント215と接続しておらず、Wi−Fiテザリングも行っていないため、インターネット211への接続に用いられていない状態である。また、BT通信部305は、通信を許可する状態に設定されている。また、クライアント装置220は、カーナビである。
以下の説明では、通信を許可する状態を「ON状態」と表記する場合がある。Wi−Fi通信部304のON状態とは、Wi−Fi通信部304に電源が投入され、Wi−Fi通信部304を用いたインターネット211への接続が許可された状態である。BT通信部305のON状態とは、同様に、BT通信部305に電源が投入され、BT通信部305を用いたインターネット211への接続が許可された状態である。
これらの状態で、通信装置100は、通信圏内のBT対応のカーナビから、上述した第3の方式を用いて、DUN−DTとなるカーナビを、DUN−GWとなる通信装置100を介してインターネット211にダイアルアップ接続する要求を受信する。このとき、通信装置100は、Wi−Fi通信部304がON状態に設定されていてもダイアルアップ接続する要求を拒否せず、Wi−Fi通信部304を用いて実際にインターネット211に接続されているか否かを判定する。
ここで、通信装置100は、Wi−Fi通信部304がインターネット211への接続に用いられていると判定する。そして、通信装置100は、判定結果に応じて、上述した第3の方式を用いて、DUN−DTとなるカーナビを、DUN−GWとなる通信装置100を介してインターネット211にダイアルアップ接続する。
これにより、通信装置100は、Wi−Fi通信部304がON状態であっても、実際にWi−Fi通信部304をインターネット211への接続に用いない状況であれば、BT通信部305を用いたインターネット211への接続を可能にすることができる。結果として、通信装置100は、ユーザが設定変更を行わなくても、BT通信部305を用いたインターネット211への接続を行うことができる機会を増やすことができ、通信装置100の利便性の向上を図ることができる。
図8(B)の例では、Wi−Fi通信部304はON状態に設定されている。そして、Wi−Fi通信部304は、Wi−Fi対応のアクセスポイント215を介して通信装置100をインターネット211へ接続しているため、インターネット211への接続に用いられている状態である。また、BT通信部305はON状態に設定されている。また、クライアント装置220は、カーナビである。
これらの状態で、通信装置100は、通信圏内のBT対応のカーナビから、上述した第3の方式を用いて、DUN−DTとなるカーナビを、DUN−GWとなる通信装置100を介してインターネット211にダイアルアップ接続する要求を受信する。このとき、通信装置100は、Wi−Fi通信部304がON状態に設定されていてもダイアルアップ接続する要求を拒否せず、Wi−Fi通信部304を用いて実際にインターネット211に接続されているか否かを判定する。
ここで、通信装置100は、Wi−Fi通信部304がインターネット211への接続に用いられていると判定する。そして、通信装置100は、判定結果に応じて、DUN−DTとなるカーナビを、DUN−GWとなる通信装置100を介してインターネット211にダイアルアップ接続する要求を拒否し、カーナビにエラーメッセージを送信する。
これにより、通信装置100は、Wi−Fi通信部304がON状態であり、実際にWi−Fi通信部304をインターネット211への接続に用いている状況であれば、当該インターネット211への接続が切断されないようにすることができる。そして、通信装置100は、通信装置100の利便性の向上を図ることができる。また、通信装置100は、Wi−Fi通信部304がON状態であるためダイアルアップ接続が失敗したことを示す通知を、カーナビに送信してもよい。これにより、通信装置100は、カーナビのユーザにダイアルアップ接続が失敗した原因を把握させることができる。
図8(C)の例では、Wi−Fi通信部304はON状態に設定されている。そして、Wi−Fi通信部304は、Wi−FiテザリングによってWi−Fi機器を通信装置100を介してインターネット211へ接続しているため、インターネット211への接続に用いられている状態である。また、BT通信部305はON状態に設定されている。また、クライアント装置220は、カーナビである。
これらの状態で、通信装置100は、通信圏内のBT対応のカーナビから、上述した第3の方式を用いて、DUN−DTとなるカーナビを、DUN−GWとなる通信装置100を介してインターネット211にダイアルアップ接続する要求を受信する。このとき、通信装置100は、Wi−Fi通信部304がON状態に設定されていてもダイアルアップ接続する要求を拒否せず、Wi−Fi通信部304を用いて実際にインターネット211に接続されているか否かを判定する。
ここで、通信装置100は、Wi−Fi通信部304がインターネット211への接続に用いられていると判定する。そして、通信装置100は、判定結果に応じて、DUN−DTとなるカーナビを、DUN−GWとなる通信装置100を介してインターネット211にダイアルアップ接続する要求を拒否し、カーナビにエラーメッセージを送信する。
これにより、通信装置100は、Wi−Fi通信部304がON状態であり、実際にWi−Fi通信部304をインターネット211への接続に用いている状況であれば、当該インターネット211への接続が切断されないようにすることができる。そして、通信装置100は、通信装置100の利便性の向上を図ることができる。また、通信装置100は、Wi−Fi通信部304がON状態であるためダイアルアップ接続が失敗したことを示す通知を、カーナビに送信してもよい。これにより、通信装置100は、カーナビのユーザにダイアルアップ接続が失敗した原因を把握させることができる。
ここでは、通信装置100が、Wi−Fi対応のアクセスポイント215へ接続しているときも、Wi−Fiテザリングを行っているときも、ダイアルアップ接続する要求を拒否する場合について説明したが、これに限らない。例えば、通信装置100は、Wi−Fi対応のアクセスポイント215へ接続しているときはダイアルアップ接続する要求を拒否せず、Wi−Fiテザリングを行っているときにダイアルアップ接続する要求を拒否してもよい。
(動作例1における通信制御処理の一例)
次に、図9〜図11を用いて、通信装置100による動作例1における通信制御処理の一例について説明する。
図9〜図11は、動作例1における通信制御処理の一例を示すシーケンス図である。図9において、通信装置100は、BT通信部305がON状態であり、カーナビとのペアリングが完了し、Page scanを実行している状態である。カーナビは、車のイグニッションがOFF状態であり、電源が投入されていない。
カーナビは、車のイグニッションがON状態になると、電源が投入される(ステップS901)。カーナビは、BT通信部305を用いて、通信装置100とのオフラインモードのBT接続を開始し、認証、暗号化を経て、L2CAP501レイヤにおける論理リンクの確立により、接続動作を完了する(ステップS902)。
次に、カーナビは、Service Discovery Profileによるサービス検索を行う(ステップS903)。また、Bluetooth設定アプリは、同様にService Discovery Profileによるサービス検索を行い、サービス検索によって得られた情報を、接続完了通知としてBTプロファイル制御部432に送信する(ステップS904)。
BTプロファイル制御部432は、受信した接続完了通知となる情報を用いて、RFCOMM502の接続を完了する(ステップS905)。これにより、通信装置100は、シリアルポートを使用可能な、リンク確立状態になる。
カーナビは、ユーザからの操作入力を受け付け、ユーザからの操作入力がカーナビのセンターのサーバにダイアルアップ接続する操作入力であった場合に、ATコマンドのDコマンドを、BTプロファイル制御部432に送信する(ステップS906)。BTプロファイル制御部432は、Dコマンドを受信すると、ATコマンド解析を行う(ステップS907)。そして、BTプロファイル制御部432は、図10のステップS1001に移行する。
図10において、BTプロファイル制御部432は、ATコマンド解析の結果、正式なDコマンドであれば、NW接続選択管理部440へ接続要求を送信する(ステップS1001)。NW接続選択管理部440は、接続要求を受信すると、図12に後述するWi−Fi接続状態チェック処理を行う(ステップS1002)。
NW接続選択管理部440は、Wi−Fi接続状態チェック処理の結果、Wi−Fi通信部304を用いたインターネット211への接続が行われているか否かを判定する(ステップS1003)。ここで、NW接続選択管理部440は、インターネット211への接続が行われていない場合(ステップS1003:No)、接続要求をMB網接続管理制御部411に送信する(ステップS1004)。
MB網接続管理制御部411は、接続要求を受信すると、無線部412に対して発信要求を行うことにより、無線部412にPDP CONTEXT ACTIVATE手順を実施させる。MB網接続管理制御部411は、無線部412がPDP CONTEXT ACTIVATE手順を成功させ、無線部412から接続完了通知を受け付けると、NW接続選択管理部440に対して接続完了通知を送信する(ステップS1005)。
NW接続選択管理部440は、接続完了通知を受信すると、さらに接続完了通知をBTプロファイル制御部432に送信する(ステップS1006)。BTプロファイル制御部432は、接続完了通知を受信すると、接続完了を示すATコマンドであるCONNECTをカーナビに送信する(ステップS1007)。これにより、通信装置100は、カーナビにダイアルアップ通信させることができる。通信装置100は、カーナビとの間では、オンラインモードによって接続され、カーナビとインターネット211との間を流れる情報についてかかわらない。
一方で、インターネット211への接続が行われている場合(ステップS1003:Yes)、NW接続選択管理部440は、図11のステップS1101の処理に移行する。
図11において、NW接続選択管理部440は、BTプロファイル制御部432へ接続失敗通知を送信する(ステップS1101)。BTプロファイル制御部432は、接続失敗通知を受信すると、カーナビに対してATコマンドのエラー応答であるERRORを送信する(ステップS1102)。これにより、通信装置100は、Wi−Fi通信部304を用いたインターネット211への接続が行われている場合には、Wi−Fi通信部304を用いたインターネット211への接続を終了させないようにする。
(Wi−Fi接続状態チェック処理手順)
次に、図12を用いて、通信装置100のNW接続選択管理部440が実行するWi−Fi接続状態チェック処理手順の一例について説明する。
図12は、Wi−Fi接続状態チェック処理手順の一例を示すフローチャートである。図12において、NW接続選択管理部440は、Wi−Fi通信部304がON状態であるか否かを判定する(ステップS1201)。ここで、ON状態ではない場合(ステップS1201:No)、NW接続選択管理部440は、ステップS1205の処理に移行する。
一方で、ON状態である場合(ステップS1201:Yes)、NW接続選択管理部440は、Wi−Fi通信部304を用いてWi−Fi対応のアクセスポイント215に接続されているか否かを判定する(ステップS1202)。ここで、接続されている場合(ステップS1202:Yes)、NW接続選択管理部440は、ステップS1204の処理に移行する。
一方で、接続されていない場合(ステップS1202:No)、NW接続選択管理部440は、Wi−Fi通信部304を用いたテザリングによって通信が行われているか否かを判定する(ステップS1203)。ここで、行われていない場合(ステップS1203:No)、NW接続選択管理部440は、ステップS1205の処理に移行する。
一方で、行われている場合(ステップS1203:Yes)、NW接続選択管理部440は、ステップS1204の処理に移行する。ステップS1204では、NW接続選択管理部440は、Wi−Fi通信部304を用いたインターネット211への接続が行われている状態であると決定して(ステップS1204)、Wi−Fi接続状態チェック処理を終了する。
一方で、ステップS1205では、NW接続選択管理部440は、Wi−Fi通信部304を用いたインターネット211への接続が行われていない状態であると決定して(ステップS1205)、Wi−Fi接続状態チェック処理を終了する。これにより、NW接続選択管理部440は、BT通信部305を用いたインターネット211への接続を行うか否かを判定する際に用いられる決定結果を作成することができる。
(通信装置100の動作例2)
次に、図13を用いて、通信装置100の動作例2について説明する。
図13は、通信装置100の動作例2を示す説明図である。動作例2では、通信装置100は、Wi−Fi通信部304を用いてインターネット211に接続されていても、自装置とBT通信可能なBT機器が所定の種類の機器であれば、BT通信部305を用いたインターネット211への接続を行う。所定の種類とは、Wi−Fi通信部304を用いたインターネット211への接続よりも優先して、BT通信部305を用いた公衆回線210への接続を行うことが好ましいBT機器の種類である。所定の種類は、例えば、カーナビである。
例えば、通信装置100がBT通信可能なBT機器がカーナビになった場合であれば、通信装置100のユーザが車を運転しているか、運転を始めようとしている可能性がある。この場合、Wi−Fi通信部304を用いてWi−Fi対応のアクセスポイント215に接続していたとしても、車の移動によってWi−Fi対応のアクセスポイント215がWi−Fi通信部304の通信圏内から外れる傾向がある。このため、Wi−Fi通信部304を用いてWi−Fi対応のアクセスポイント215に接続していたとしても、Wi−Fi対応のアクセスポイント215への接続を継続させなくても、ユーザが不便を感じない場合がある。
また、この場合、ユーザは、安全運転のために通信装置100を操作することを控える傾向があり、実際にWi−Fi通信によるインターネット211とのデータのやり取りが行われない傾向がある。このため、Wi−Fi通信部304を用いてWi−Fi対応のアクセスポイント215に接続していたとしても、Wi−Fi対応のアクセスポイント215への接続を継続させなくても、ユーザが不便を感じない場合がある。
以上のように、BT機器がカーナビであれば、通信装置100が、Wi−Fi通信部304を用いたインターネット211への接続を終了し、BT通信部305を用いたインターネット211への接続を行っても、ユーザが不便を感じる可能性が小さい。このため、通信装置100は、ユーザが設定変更を行わなくても、BT通信部305を用いたインターネット211への接続を行うことができる機会を増やして、通信装置100の利便性の向上を図る。
図13(D)の例では、Wi−Fi通信部304はON状態に設定されている。そして、Wi−Fi通信部304は、インターネット211への接続に用いられている状態である。また、BT通信部305はON状態に設定されている。また、クライアント装置220は、PCである。
これらの状態で、通信装置100は、通信圏内のBT対応のPCから、上述した第3の方式を用いて、DUN−DTとなるPCを、DUN−GWとなる通信装置100を介してインターネット211にダイアルアップ接続する要求を受信する。このとき、通信装置100は、Wi−Fi通信部304を用いてインターネット211に接続されていてもダイアルアップ接続する要求を拒否せず、BT通信するBT機器の種類を示すCoDを取得する。
CoDは、例えば、BTのFHS(Frequency Hop Syncronization)パケットによって送受信される。BT通信する機器同士では、接続先を探す側のBT機器がInquiryの状態に遷移し、接続先として探される側のBT機器がInquiry scanの状態に遷移し、FHSパケットが送受信される。このときに、通信装置100は、FHSパケットから抽出したCoDを記憶しておき、記憶しておいたCoDを取得する。
通信装置100は、取得したCoDに基づいて、BT通信するBT機器の種類が、カーナビであるか否かを判定する。通信装置100は、例えば、Major device classがAudio/Videoであるか否かを判定する。通信装置100は、例えば、Audio/Videoでなければ、カーナビではないと判定する。
通信装置100は、Audio/Videoであれば、さらに、Minor device classが、hands−free device、Car audio、Video monitorであるか否かを判定する。通信装置100は、例えば、hands−free device、Car audio、Video monitorであれば、カーナビであると判定する。
ここでは、通信装置100は、BT通信するBT機器がカーナビではないため、DUN−DTとなるカーナビを、DUN−GWとなる通信装置100を介してインターネット211にダイアルアップ接続する要求を拒否し、カーナビにエラーメッセージを送信する。これにより、通信装置100は、Wi−Fi通信部304を用いたインターネット211への接続を優先し、インターネット211への接続が切断されないようにして、通信装置100の利便性の向上を図ることができる。
図13(E)の例では、Wi−Fi通信部304はON状態に設定されている。そして、Wi−Fi通信部304は、Wi−Fi対応のアクセスポイント215を介して通信装置100をインターネット211へ接続しているため、インターネット211への接続に用いられている状態である。また、BT通信部305はON状態に設定されている。また、クライアント装置220は、カーナビである。
これらの状態で、通信装置100は、通信圏内のBT対応のカーナビから、上述した第3の方式を用いて、DUN−DTとなるカーナビを、DUN−GWとなる通信装置100を介してインターネット211にダイアルアップ接続する要求を受信する。このとき、通信装置100は、Wi−Fi通信部304を用いてインターネット211に接続されていてもダイアルアップ接続する要求を拒否せず、BT通信するBT機器の種類を示す情報CoDを取得する。
通信装置100は、取得したCoDに基づいて、BT通信するBT機器の種類が、カーナビであるか否かを判定する。ここでは、通信装置100は、BT通信するBT機器がカーナビであるため、上述した第3の方式を用いて、DUN−DTとなるカーナビを、DUN−GWとなる通信装置100を介してインターネット211にダイアルアップ接続する。
これにより、通信装置100は、Wi−Fi通信部304をインターネット211への接続に用いている状況であっても、BT通信部305を用いたインターネット211への接続を優先することができる。そして、通信装置100は、ユーザが設定変更を行わなくても、BT通信部305を用いたインターネット211への接続を行うことができる機会を増やして、通信装置100の利便性の向上を図る。
また、通信装置100は、ユーザが設定変更を行わなくてもよいため、ユーザが運転中であった場合に、停車して通信装置100を操作する負担がユーザにかかることを抑制することができ、運転中に通信装置100を操作してしまうことを抑制することができる。
ここでは、通信装置100が、BT機器がカーナビでなければ、ダイアルアップ接続する要求を拒否する場合について説明したが、これに限らない。例えば、通信装置100は、BT機器がPCである場合には、ダイアルアップ接続する要求を拒否しないようにしてもよい。これにより、通信装置100は、BT通信部305を用いたインターネット211への接続を行うか否かを、BT機器の種類に応じて判定することができる。
(動作例2における通信制御処理の一例)
次に、図14〜図16を用いて、通信装置100による動作例2における通信制御処理の一例について説明する。
図14〜図16は、動作例2における通信制御処理の一例を示すシーケンス図である。図14において、カーナビは、ステップS901〜S905と同様に、RFCOMM502の接続を完了している状態である。カーナビは、ユーザからの操作入力を受け付け、ユーザからの操作入力がカーナビのセンターのサーバにダイアルアップ接続する操作入力であった場合に、ATコマンドのDコマンドを、BTプロファイル制御部432に送信する(ステップS1401)。
BTプロファイル制御部432は、Dコマンドを受信すると、ATコマンド解析を行う(ステップS1402)。BTプロファイル制御部432は、ATコマンド解析の結果、正式なDコマンドであれば、NW接続選択管理部440へ接続要求を送信する(ステップS1403)。
NW接続選択管理部440は、接続要求を受信すると、図12に示したWi−Fi接続状態チェック処理を行う(ステップS1404)。ここでは、Wi−Fi通信部304を用いたインターネット211への接続が行われているとして説明を続ける。
NW接続選択管理部440は、CoDの問い合わせを、BT設定アプリに送信する(ステップS1405)。BT設定アプリは、接続中のBT機器がどの機器であるかを記憶しているため、問い合わせを受信すると、接続中のBT機器のCoDを取得し、応答としてCoDをNW接続選択管理部440に送信する(ステップS1406)。NW接続選択管理部440は、CoDを受信すると、図15のステップS1501の処理に移行する。
図15において、NW接続選択管理部440は、CoDに基づいて図17に後述する種類判定処理を実行し、カーナビであるか否かを判定する(ステップS1501)。ここで、カーナビではない場合(ステップS1501:No)、NW接続選択管理部440は、図11のステップS1101の処理に移行する。
一方で、カーナビである場合(ステップS1501:Yes)、NW接続選択管理部440は、ダイアルアップ通信を優先させるために、切断要求をWi−Fi接続管理部422に送信する(ステップS1502)。Wi−Fi接続管理部422は、Wi−Fi通信部304を用いたインターネット211への接続を終了し(ステップS1503)、切断完了通知をNW接続選択管理部440に送信する(ステップS1504)。Wi−Fi接続管理部422は、接続先のScan処理を定期的に行ってもよい(ステップS1505)。
NW接続選択管理部440は、切断完了通知を受信すると、接続要求をMB網接続管理制御部411に送信する(ステップS1506)。MB網接続管理制御部411は、接続要求を受信すると、無線部412に対して発信要求を行うことにより、無線部412にPDP CONTEXT ACTIVATE手順を実施させる。MB網接続管理制御部411は、無線部412がPDP CONTEXT ACTIVATE手順を成功させ、無線部412から接続完了通知を受け付けると、NW接続選択管理部440に対して接続完了通知を送信する(ステップS1507)。
NW接続選択管理部440は、接続完了通知を受信すると、さらに接続完了通知をBTプロファイル制御部432に送信する(ステップS1508)。BTプロファイル制御部432は、接続完了通知を受信すると、接続完了を示すATコマンドであるCONNECTをカーナビに送信する(ステップS1509)。これにより、通信装置100は、カーナビにダイアルアップ通信させることができる。ここで、カーナビは、ダイアルアップ通信を終了する場合に、ステップS1601の処理に移行する。
図16において、カーナビは、通信装置100との間のBT通信をオフラインモードへ遷移させる(ステップS1601)。カーナビは、例えば、RFCOMM502の信号線を用いた制御によって、オフラインモードに遷移させる。カーナビは、ダイアルアップ通信を終了させるために、ATコマンドのHコマンドをBTプロファイル制御部432に送信する(ステップS1602)。
BTプロファイル制御部432は、Hコマンドを受信すると、ATコマンド解析を行う(ステップS1603)。BTプロファイル制御部432は、正式なHコマンドであれば、切断要求をNW接続選択管理部440に送信する(ステップS1604)。NW接続選択管理部440は、切断要求を受信すると、さらに切断要求をMB網接続管理制御部411に送信する(ステップS1605)。
MB網接続管理制御部411は、無線部412を制御し、無線部412にPDP CONTEXT DEACTIVATE手順を実施させる。MB網接続管理制御部411は、無線部412がPDP CONTEXT DEACTIVATE手順を成功させ、無線部412から切断完了通知を受け付けると、切断完了通知をNW接続選択管理部440に送信する(ステップS1606)。
NW接続選択管理部440は、切断完了通知を受信すると、Wi−Fi通信部304を用いたインターネット211への再接続要求を、Wi−Fi接続管理部422に送信する(ステップS1607)。NW接続選択管理部440は、さらに、切断完了通知をBTプロファイル制御部432に送信する(ステップS1608)。BTプロファイル制御部432は、Hコマンドに対する応答であるNO CARRIERをカーナビに送信する(ステップS1609)。
Wi−Fi接続管理部422は、再接続要求を受信すると、Wi−Fi対応のアクセスポイント215との再接続を行う(ステップS1610)。Wi−Fi接続管理部422は、再接続することができれば、再接続完了通知をNW接続選択管理部440に送信する(ステップS1611)。Wi−Fi接続管理部422は、接続可能なアクセスポイントがなければ、再接続せずに処理を終了する。
(種類判定処理手順)
次に、図17を用いて、通信装置100のNW接続選択管理部440が実行する種類判定処理手順の一例について説明する。
図17は、種類判定処理手順の一例を示すフローチャートである。図17において、NW接続選択管理部440は、Major device classが、Audio/Videoであるか否かを判定する(ステップS1701)。ここで、Audio/Videoではない場合(ステップS1701:No)、NW接続選択管理部440は、ステップS1706の処理に移行する。
一方で、Audio/Videoである場合(ステップS1701:Yes)、NW接続選択管理部440は、Minor device classが、hands−free deviceであるか否かを判定する(ステップS1702)。ここで、hands−free deviceである場合(ステップS1702:Yes)、NW接続選択管理部440は、ステップS1705の処理に移行する。
一方で、hands−free deviceではない場合(ステップS1702:No)、NW接続選択管理部440は、Minor device classが、Car audioであるか否かを判定する(ステップS1703)。ここで、Car audioである場合(ステップS1703:Yes)、NW接続選択管理部440は、ステップS1705の処理に移行する。
一方で、Car audioではない場合(ステップS1703:No)、NW接続選択管理部440は、Minor device classが、Video monitorであるか否かを判定する(ステップS1704)。ここで、Video monitorである場合(ステップS1704:Yes)、NW接続選択管理部440は、ステップS1705の処理に移行する。
一方で、Video monitorではない場合(ステップS1704:No)、NW接続選択管理部440は、ステップS1706の処理に移行する。ステップS1705では、NW接続選択管理部440は、接続中のBT機器の種類はカーナビであると決定して(ステップS1705)、種類判定処理を終了する。
ステップS1706では、NW接続選択管理部440は、接続中のBT機器の種類はカーナビではないと決定して(ステップS1706)、種類判定処理を終了する。これにより、通信装置100は、BT通信部305を用いたインターネット211への接続を行うか否かを判定する際に用いられる決定結果を作成することができる。
以上説明したように、通信装置100によれば、第1の無線通信規格の無線通信を用いた公衆回線210への接続要求を受け付けたことに応じて、第2の無線通信規格の無線通信を用いた公衆回線210への接続が確立しているか否かを判定することができる。そして、通信装置100によれば、第2の無線通信規格の無線通信を用いた公衆回線210への接続が確立していないと判定した場合に、第1の無線通信規格の無線通信を用いた公衆回線210への接続を行うことができる。これにより、通信装置100は、ユーザが設定変更を行わなくても、第1の無線通信規格の無線通信を用いた公衆回線210への接続を行う機会を増やすことができ、ユーザにかかる負担を減らし、通信装置100の利便性の向上を図ることができる。
また、通信装置100によれば、第1の無線通信規格の無線通信により、第1の通信装置から第1の無線通信規格を用いた公衆回線210への接続要求を受け付けることができる。そして、通信装置100によれば、第1の通信装置を自装置および移動体通信網の基地局214を介して公衆回線210に接続することができる。これにより、通信装置100は、テザリングやダイアルアップによって、自装置と通信可能な第1の通信装置を自装置および移動体通信網の基地局214を介して公衆回線210に接続させることができる。
また、通信装置100によれば、第2の無線通信規格の無線通信を用いた公衆回線210への接続が確立していると判定した場合に、第1の通信装置に公衆回線210への接続失敗を通知することができる。これにより、通信装置100は、第1の通信装置のユーザに、公衆回線210への接続失敗を把握させ、公衆回線210への接続を行う場合には通信装置100の設定変更を行うように促すことができる。
また、通信装置100によれば、第2の無線通信規格の無線通信を用いた公衆回線210への接続が確立していると判定した場合に、さらに第1の通信装置の種類が所定の種類であるか否かを判定することができる。そして、通信装置100によれば、所定の種類であると判定した場合に、第2の無線通信規格の無線通信を用いた公衆回線210への接続を切断し、第1の通信装置を自装置および移動体通信網の基地局214を介して公衆回線210に接続することができる。これによれば、通信装置100は、第1の通信装置の種類が、第2の無線通信規格の無線通信を用いた公衆回線210への接続よりも優先して、公衆回線210への接続を行うことが好ましい所定の種類であるか否かを判定することができる。そして、通信装置100は、第2の無線通信規格の無線通信を用いた公衆回線210への接続よりも優先して、公衆回線210への接続を行うことが好ましい所定の種類の第1の通信装置を、公衆回線210へ接続させることができる。
また、通信装置100によれば、第1の無線通信規格による無線通信により、第1の通信装置から第1の通信装置の種類を示す情報を受信し、受信した情報に基づいて、第1の通信装置の種類が所定の種類であるか否かを判定することができる。これにより、通信装置100は、第1の通信装置の種類を示す情報を第1の通信装置から取得することができ、ユーザが第1の通信装置の種類を示す情報を入力しなくてもよくすることができる。
また、通信装置100によれば、第1の無線通信規格の無線通信により、第1の通信装置と公衆回線210との切断要求を受け付けることができる。そして、通信装置100によれば、切断要求を受け付けたことに応じて、第1の通信装置と公衆回線210とを切断し、第2の無線通信規格の無線通信を用いた公衆回線210への接続を行うことができる。これにより、通信装置100は、第1の無線通信規格の無線通信を用いた公衆回線210への接続が終了すれば、第2の無線通信規格の無線通信を用いて公衆回線210への接続を復旧することができる。
また、通信装置100によれば、第1の無線通信規格の無線通信により、第1の無線通信規格に対応したアクセスポイントを検出することができる。そして、通信装置100によれば、検出したことに応じて、第2の無線通信規格の無線通信を用いた公衆回線210への接続が確立していないと判定した場合に、自装置をアクセスポイントを介して公衆回線210に接続することができる。これにより、通信装置100は、アクセスポイントを介して、自装置を公衆回線210に接続させることができる。
また、通信装置100によれば、第2の無線通信規格の無線通信によって、第2の無線通信規格に対応したアクセスポイントへの接続が行われている場合に、第2の無線通信規格の無線通信を用いた公衆回線210への接続が確立していると判定することができる。これにより、通信装置100は、第2の無線通信規格の無線通信を用いて自装置が公衆回線210に接続している場合に、第2の無線通信規格の無線通信を用いた公衆回線210への接続が確立していると判定することができる。
また、通信装置100によれば、第2の無線通信規格の無線通信によって接続された第2の通信装置を、移動体通信網の基地局214を介して公衆回線210に接続しているか否かを判定することができる。そして、通信装置100によれば、第2の通信装置を公衆回線210に接続している場合に、第2の無線通信規格の無線通信を用いた公衆回線210への接続が確立していると判定することができる。これにより、通信装置100は、第2の無線通信規格の無線通信を用いて、第1の通信装置が自装置を介して公衆回線210に接続している場合に、第2の無線通信規格の無線通信を用いた公衆回線210への接続が確立していると判定することができる。
なお、本実施の形態で説明した通信方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本通信プログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また本通信プログラムは、インターネット等のネットワークを介して配布してもよい。
上述した実施の形態に関し、さらに以下の付記を開示する。
(付記1)第1の無線通信規格の無線通信を用いた公衆回線への接続要求を受け付け、
前記接続要求を受け付けたことに応じて、前記第1の無線通信規格とは異なる第2の無線通信規格の無線通信を用いた前記公衆回線への接続が確立しているか否かを判定し、
前記第2の無線通信規格の無線通信を用いた前記公衆回線への接続が確立していないと判定した場合に、前記第1の無線通信規格の無線通信を用いた前記公衆回線への接続を行う、
制御部を有することを特徴とする通信装置。
(付記2)前記制御部は、
前記第1の無線通信規格の無線通信により、第1の通信装置から前記第1の無線通信規格を用いた前記公衆回線への接続要求を受け付け、
前記第2の無線通信規格の無線通信を用いた前記公衆回線への接続が確立していないと判定した場合に、前記第1の通信装置を自装置および移動体通信網の基地局を介して前記公衆回線に接続する、ことを特徴とする付記1に記載の通信装置。
(付記3)前記制御部は、
前記第2の無線通信規格の無線通信を用いた前記公衆回線への接続が確立していると判定した場合に、前記第1の通信装置に前記公衆回線への接続失敗を通知する、ことを特徴とする付記2に記載の通信装置。
(付記4)前記制御部は、
前記第2の無線通信規格の無線通信を用いた前記公衆回線への接続が確立していると判定した場合に、前記第1の通信装置の種類が所定の種類であるか否かを判定し、
前記所定の種類であると判定した場合に、前記第2の無線通信規格の無線通信を用いた前記公衆回線への接続を切断し、前記第1の通信装置を自装置および移動体通信網の基地局を介して前記公衆回線に接続する、ことを特徴とする付記2または3に記載の通信装置。
(付記5)前記制御部は、
前記第1の無線通信規格による無線通信により、前記第1の通信装置から前記第1の通信装置の種類を示す情報を受信し、
受信した前記情報に基づいて、前記第1の通信装置の種類が前記所定の種類であるか否かを判定する、ことを特徴とする付記4に記載の通信装置。
(付記6)前記制御部は、
前記第1の無線通信規格の無線通信により、前記第1の通信装置と前記公衆回線との切断要求を受け付け、
前記切断要求を受け付けたことに応じて、前記第1の通信装置と前記公衆回線とを切断し、前記第2の無線通信規格の無線通信を用いた前記公衆回線への接続を行う、ことを特徴とする付記4または5に記載の通信装置。
(付記7)前記制御部は、
前記第1の無線通信規格の無線通信により、前記第1の無線通信規格に対応したアクセスポイントを検出したことに応じて、前記第2の無線通信規格の無線通信を用いた前記公衆回線への接続が確立していないと判定した場合に、自装置を前記アクセスポイントを介して前記公衆回線に接続する、ことを特徴とする付記1に記載の通信装置。
(付記8)前記制御部は、
前記第2の無線通信規格の無線通信によって、前記第2の無線通信規格に対応したアクセスポイントへの接続が行われている場合に、前記第2の無線通信規格の無線通信を用いた前記公衆回線への接続が確立していると判定する、ことを特徴とする付記1〜7のいずれか一つに記載の通信装置。
(付記9)前記制御部は、
前記第2の無線通信規格の無線通信によって接続された第2の通信装置を、移動体通信網の基地局を介して前記公衆回線に接続している場合に、前記第2の無線通信規格の無線通信を用いた前記公衆回線への接続が確立していると判定する、ことを特徴とする付記1〜8のいずれか一つに記載の通信装置。
(付記10)第1の通信装置と第2の通信装置とを含む通信システムであって、
前記第1の通信装置は、
第1の無線通信規格の無線通信により、前記第1の無線通信規格を用いた公衆回線への接続要求を、前記第2の通信装置に送信し、
前記第2の通信装置は、
前記第1の無線通信規格の無線通信により、前記第1の通信装置から前記接続要求を受け付け、
前記接続要求を受け付けたことに応じて、前記第1の無線通信規格とは異なる第2の無線通信規格の無線通信を用いた前記公衆回線への接続が確立しているか否かを判定し、
前記第2の無線通信規格の無線通信を用いた前記公衆回線への接続が確立していないと判定した場合に、前記第1の無線通信規格の無線通信を用いた前記公衆回線への接続を行う、ことを特徴とする通信システム。