(58)【調査した分野】(Int.Cl.,DB名)
子機端末が、当該子機端末にて実行するアプリケーションの通信相手となるインターネット網上の通信先サーバと無線LANルータ装置を介して接続され、前記無線LANルータ装置が前記子機端末に対するバンドステアリングを実施するバンドステアリングシステムであって、
前記インターネット網上に、アプリケーション毎に、該当アプリケーションのアプリケーション名と該当アプリケーションの通信中にバンドステアリングの実施を許可するか否かを示すバンドステアリング許可/禁止情報とを含むアプリケーション情報が登録されたアプリケーション情報登録データベースを有するバンドステアリングサーバを備え、
前記無線LANルータ装置は、前記子機端末との間の無線通信環境が、前記子機端末に対するバンドステアリングを実施する条件を満たし、かつ、当該子機端末のアプリケーションが通信中の状態にあった場合に、前記バンドステアリングサーバから、前記アプリケーション情報登録データベースに登録された前記アプリケーション情報を取得して、当該子機端末に対するバンドステアリングの実施の可否の判断に基づいて、当該子機端末に対するバンドステアリングの実施の有無を決定する
ことを特徴とするバンドステアリングシステム。
前記バンドステアリングサーバの前記アプリケーション情報登録データベースには、アプリケーション毎に登録する前記アプリケーション情報として、該当アプリケーションの通信相手となる全ての通信先サーバのドメイン名を含むドメイン名一覧に関する情報を含み、
前記無線LANルータ装置の前記バンドステアリング実施判断部は、
前記子機端末との間の無線通信環境が、前記子機端末に対するバンドステアリングを実施する条件を満たし、かつ、当該子機端末のアプリケーションが通信中の状態にある場合において、前記バンドステアリングレスポンス受信部が受信した前記アプリケーション情報の前記ドメイン名一覧の中に、前記子機端末のアプリケーションとの通信相手になる前記通信先サーバのドメイン名が存在していた場合であって、かつ、当該ドメイン名を使用するアプリケーションに関する前記バンドステアリング許可/禁止情報の状態情報が、バンドステアリングの実施を許可する状態であった場合、当該子機端末に対するバンドステアリングの実施命令を、当該子機端末に対して送信して、バンドステアリングを実施する
ことを特徴とする請求項2に記載のバンドステアリングシステム。
子機端末が、当該子機端末にて実行するアプリケーションの通信相手となるインターネット網上の通信先サーバと無線LANルータ装置を介して接続される構成において、前記無線LANルータ装置が前記子機端末に対するバンドステアリングを実施するバンドステアリング方法であって、
前記インターネット網上に、アプリケーション毎に、該当アプリケーションのアプリケーション名と該当アプリケーションの通信中にバンドステアリングの実施を許可するか否かを示すバンドステアリング許可/禁止情報とを含むアプリケーション情報が登録されたアプリケーション情報登録データベースを有するバンドステアリングサーバを設け、
前記無線LANルータ装置は、前記子機端末との間の無線通信環境が、前記子機端末に対するバンドステアリングを実施する条件を満たし、かつ、当該子機端末のアプリケーションが通信中の状態にあった場合に、前記バンドステアリングサーバから、前記アプリケーション情報登録データベースに登録された前記アプリケーション情報を取得して、当該子機端末に対するバンドステアリングの実施の可否の判断に基づいて、当該子機端末に対するバンドステアリングの実施の有無を決定する
ことを特徴とするバンドステアリング方法。
【発明を実施するための形態】
【0023】
以下、本発明によるバンドステアリングシステムおよびバンドステアリング方法の好適な実施形態について添付図を参照して説明する。なお、かかるバンドステアリング方法をコンピュータにより実行可能なバンドステアリング制御プログラムとして実施するようにしても良いし、あるいは、バンドステアリング制御プログラムをコンピュータにより読み取り可能な記録媒体に記録するようにしても良いことは言うまでもない。また、以下の各図面に付した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、本発明を図示の態様に限定することを意図するものではないことも言うまでもない。
【0024】
(本発明の特徴)
本発明の実施形態の説明に先立って、本発明の特徴についてその概要をまず説明する。本発明は、バンドステアリング機能を搭載した無線LANルータ装置に、バンドステアリングを実施するか否かの判断基準となるデータベースを有するバンドステアリングサーバへ問い合わせる手段を備えることにより、該無線LANルータ装置に属している子機端末が現在使用しているアプリケーションの通信中において、該無線LANルータ装置が当該子機端末に関するバンドステアリングを実施するか否かを決定することを、主要な特徴としている。而して、子機端末において通信中の状態にあるアプリケーションに関し、バンドステアリング実施に伴う不具合の発生を防止し、バンドステアリング実施による通信品質の低下を回避することを可能にしている。
【0025】
本発明の特徴について、より具体的に、
図1の概要図を参照してさらに説明する。
図1は、本発明に係るステアリングシステムのシステム構成の概要の一例を示す概要図であり、現状のステアリング技術の問題を説明するために
図17に示した概要図に対して、バンドステアリングサーバ6をインターネット網5上に追加した構成としている。ここで、バンドステアリングサーバ6は、子機端末2がアプリケーションの通信を行っている最中に、バンドステアリングを実施すると問題が生じるか否かを示す情報がアプリケーション毎に登録されているアプリケーション情報登録データベース61を備えている。
【0026】
図1の概要図において、無線LANルータ装置1に帰属している子機端末2が特定のアプリケーションの使用を開始すると、子機端末2は、該アプリケーションの通信相手となる、インターネット網5上の通信先サーバ3のIP(Internet Protocol)アドレスを知るためにDNS(Domain Name System)サーバ4へDNS問い合わせ(DNSクエリ)を行う(シーケンスSeq1)。その結果、DNSサーバ4からのDNSレスポンスとして、子機端末2が通信先サーバ3のIPアドレスを知ると、子機端末2と通信先サーバ3との間で、無線LANルータ装置1およびインターネット網5を介して、該アプリケーションの通信を開始する(シーケンスSeq2)。
【0027】
しかる後、無線LANルータ装置1は、無線通信環境の変化に応じて、子機端末2に関するバンドステアリングを実施すべきと判断した場合、無線LANルータ装置1は、
図17の場合とは異なり、まず、前記DNSレスポンスから取得した通信先サーバ3のドメイン名を含むアプリケーション情報の問い合わせ(すなわち、バンドステアリング実施可否に関する問い合わせ)を作成して、バンドステアリングサーバ6へ送信する。つまり、無線LANルータ装置1は、バンドステアリングサーバ6に対して、当該無線LANルータ装置1に帰属する子機端末2が現在使用しているアプリケーションの通信中に、バンドステアリングを実施すると問題が生じるか否かを問い合わせる(シーケンスSeq3)。
【0028】
無線LANルータ装置1からの前記アプリケーション情報の問い合わせを受信すると、バンドステアリングサーバ6は、自身が備えているアプリケーション情報登録データベース61を参照して、登録されている情報の中から、該当するアプリケーションに関する情報を取り出す。そして、当該アプリケーションの通信中にバンドステアリングを実施しても良いか否かの判定結果を、レスポンスとして、問い合わせ元の無線LANルータ装置1へ送信する(シーケンスSeq4)。
【0029】
無線LANルータ装置1は、バンドステアリングサーバ6から前記レスポンスを受信すると、該レスポンスに基づいて、該当する子機端末2に対するバンドステアリングを実施するか否かを判断する(シーケンスSeq5)。つまり、バンドステアリングサーバ6のアプリケーション情報登録データベース61の登録内容として、該当するアプリケーションの通信中にバンドステアリングを実施しても問題がない旨が登録されている場合には、子機端末2が当該アプリケーションの通信中において、バンドステアリングの実施に伴って周波数帯域の切り替えが生じても、当該アプリケーションの動作には問題はないと、無線LANルータ装置1は判断する。
【0030】
したがって、無線LANルータ装置1は、子機端末2に対するバンドステアリングを実施することが可能であると判断すると、子機端末2がアプリケーションの通信を行っている最中であっても、子機端末2に対してバンドステアリングの命令を出力する。子機端末2は、無線LANルータ装置1からのバンドステアリングの命令にしたがって、周波数帯域の切り替えを行う。
【0031】
一方、バンドステアリングサーバ6のアプリケーション情報登録データベース61の登録内容として、該当するアプリケーションの通信中にバンドステアリングを実施すると問題が生じる可能性がある旨が登録されている場合には、子機端末2が、当該アプリケーション通信中において、バンドステアリング実施に伴って周波数帯域の切り替えが生じた際には、当該アプリケーションの動作に不具合が生じる可能性があると判断される。
【0032】
したがって、無線LANルータ装置1は子機端末2に対するバンドステアリングを実施することができないと判断すると、子機端末2がアプリケーションの通信を行っている最中であるので、子機端末2に対してバンドステアリングの命令を出力する動作を行わない。
【0033】
而して、無線LANルータ装置1においては、子機端末2が使用するアプリケーション毎に、通信中にバンドステアリングを実施しても良いか否かを確実に判断することが可能となり、通信中にバンドステアリングを実施すべきではないアプリケーションが通信中の状態にある場合には、バンドステアリングの実施を抑止し、当該アプリケーションに不具合が生じることを確実に回避きる。
【0034】
(第1の実施形態の構成例)
次に、本発明の第1の実施形態に係るバンドステアリングシステムの構成例について、
図2のシステム構成図を参照して詳細に説明する。
図2は、本発明の第1の実施形態に係るバンドステアリングシステムの構成の一例を示すシステム構成図である。
【0035】
図2のシステム構成図に示すように、本発明の第1の実施形態に係るバンドステアリングシステムは、
図1に示した概要図と同様、無線LANルータ装置1、子機端末2、通信先サーバ3、DNSサーバ4、インターネット網5、および、バンドステアリングサーバ6を、含んで構成されている。また、バンドステアリングサーバ6は、
図1に示した概要図と同様、アプリケーション情報登録データベース61を備えている。
【0036】
子機端末2は、無線LANルータ装置1に帰属している子機端末であり、本発明の第1の実施形態においては、子機端末2において何らかのアプリケーションを使用して、該アプリケーションの通信相手となる通信先サーバ3と通信を行うものとする。また、通信先サーバ3は、子機端末2の通信先のサーバである。例えば、子機端末2においてゲームアプリケーションを実行する場合には、通信先サーバ3としては、当該ゲームアプリケーションによって特定されるインターネット網5上にあるゲームサーバ(子機端末2の通信先のサーバ)に該当する。
【0037】
また、DNSサーバ4は、インターネット網5上におけるドメイン名やホスト名とIPアドレスとの対応関係を管理し、無線LANルータ装置1からのDNSクエリに対してDNSレスポンスを返す。例えば、子機端末2のアプリケーションの通信相手となる通信先サーバ3のドメイン名とIPアドレスとの対応関係を問い合わせるDNSクエリを、無線LANルータ装置1から受け取った場合に、該当する通信先サーバ3のドメイン名とIPアドレスとの対応関係を示すDNSレスポンスを無線LANルータ装置1に対して返送する。
【0038】
また、バンドステアリングサーバ6は、前述したように、アプリケーション情報登録データベース61の記憶領域を含んで構成されている。アプリケーション情報登録データベース61は、使用ユーザ数が多い汎用的なアプリケーションに関する情報があらかじめ登録されており、アプリケーション毎に、アプリケーション名、ドメイン名一覧、バンドステアリング許可/禁止の各情報を少なくとも管理している。
【0039】
ここで、ドメイン名一覧は、該当するアプリケーションが通信先として使用する通信先サーバ3の全てのドメイン名の一覧を意味している。また、バンドステアリング許可/禁止情報は、子機端末2において使用している該当アプリケーションが通信中の状態にある際に、無線LANルータ装置1が当該子機端末2に対してバンドステアリングを実施しても問題がないかあるいは実施すると問題があるかを示す情報である。バンドステアリング“許可”の状態であれば、該当アプリケーションの通信中にバンドステアリングを実施しても問題が生じないことを意味し、一方、バンドステアリング“禁止”の状態であれば、該当アプリケーションの通信中にバンドステアリングを実施すると問題が生じる可能性があることを意味している。
【0040】
なお、該当アプリケーションの通信中にバンドステアリングを実施すると問題が生じる可能性があるという判断基準は、例えば、複数のユーザ間でリアルタイムに通信が行われるアプリケーションにおいて通信が切断してしまった場合に、差し障りが生じる可能性があるとされるアプリケーションであるか否かということに基づいて設定される。
【0041】
アプリケーション情報登録データベース61は、逐次更新されるものである。アプリケーション情報登録データベース61が更新される契機としては、例えば、新しいアプリケーションの追加、ドメイン名の変更、バンドステアリング許可/禁止の設定変更、などがある。また、バンドステアリングサーバ6のアプリケーション情報登録データベース61を管理する管理者が存在しており、アプリケーション情報登録データベース61の更新は当該管理者の判断に基づいて任意に行うことが可能である。
【0042】
なお、本第1の実施形態においては、アプリケーション情報登録データベース61のバンドステアリング許可/禁止に関する登録情報は、全てのユーザにとって共通の情報としている。その理由は、複数のユーザ間で或るアプリケーションの通信を行っている最中に、或るユーザにおいては通信中のバンドステアリングが禁止されている設定がなされているにも関わらず、他のユーザにおいては通信中のバンドステアリングが許可されている設定がなされていた場合には、他のユーザ側にのみバンドステアリングによる当該アプリケーションの通信の切断が発生してしまい、ユーザ間の混乱が生じてしまうというケースを回避するためである。かくとごとき事情を考慮して、本実施形態においては、バンドステアリングサーバ6をインターネット網5上に設置している。
【0043】
バンドステアリングサーバ6は、バンドステアリングの可否に関する問い合わせ(クエリ)として、無線LANルータ装置1から通信先サーバ3のドメイン名を受信すると、当該ドメイン名がアプリケーション情報登録データベース61に登録されているか否かを確認する。当該ドメイン名がアプリケーション情報登録データベース61に登録されている場合には、当該ドメイン名が登録されているアプリケーション情報(すなわち、当該ドメイン名がドメイン名一覧に含まれているアプリケーション名、ドメイン名一覧、バンドステアリング許可/禁止情報に関する情報)を、無線LANルータ装置1へ送信する。一方、当該ドメイン名がアプリケーション情報登録データベース61に登録されていない場合には、当該ドメイン名はアプリケーション情報登録データベース61に登録されていない旨を無線LANルータ装置1に通知する。
【0044】
次に、無線LANルータ装置1は、
図2に示すように、WLAN I/F11、WAN I/F12、DNSクエリ送信部13、DNSレスポンス受信部14、データベース処理部15、通信部16、無線通信環境変化検知部17、バンドステアリング実施判断部18、バンドステアリング命令送信部19、バンドステアリングクエリ送信部20、および、バンドステアリングレスポンス受信部21を含んで構成される。ここで、データベース処理部15は、内部に、ローカルデータベース151の記憶領域を有し、バンドステアリング実施判断部18は、内部に、バンドステアリング実施可否状態181の記憶領域およびバンドステアリング禁止タイマ182を有している。
【0045】
ここで、WLAN I/F11は、無線LANに接続するためのインタフェースであり、無線LANを介して子機端末2と通信を行うためのインタフェースである。また、WAN I/F12は、インターネット網5に接続するためのインタフェースである。
【0046】
DNSクエリ送信部13は、WLAN I/F11を介して子機端末2から受信したDNSクエリを、WAN I/F12を介してDNSサーバ4へ送信する。このため、無線LANルータ装置1は、DNSプロキシ機能(子機端末2のアプリケーションから受信したDNSクエリに含まれている通信先サーバ3のドメイン名に該当するIPアドレスを取得するための機能)を搭載しているものとする。また、DNSレスポンス受信部14は、DNSサーバ4からのDNSレスポンスをWAN I/F12を介して受信し、WLAN I/F11を介して子機端末2へ送信する。さらに、DNSレスポンス受信部14は、受信したDNSレスポンスから通信先サーバ3のドメイン名とIPアドレスとを取得し、データベース処理部15へ送信して、データベース処理部15内のローカルデータベース151を更新するように依頼する。
【0047】
データベース処理部15は、前述のように、ローカルデータベース151の記憶領域を含んで構成されている。ローカルデータベース151には、無線LANルータ装置1に帰属する子機端末2が使用するアプリケーションに関する情報が登録される。該アプリケーションに関する情報としては、アプリケーション名、通信先となる通信先サーバ3のドメイン名一覧およびIPアドレス、バンドステアリング許可/禁止情報、アプリ情報保持タイマの各情報を含んでいる。
【0048】
ここで、ドメイン名一覧は、該当するアプリケーションが通信先として使用する全ての通信先サーバ3のドメイン名の一覧を示す。IPアドレスは、各通信先サーバ3のドメイン名それぞれに対応するIPアドレスを示す。
【0049】
また、ローカルデータベース151に登録されるバンドステアリング許可/禁止情報は、子機端末2が使用しているアプリケーションの通信中にバンドステアリングの実施を許可するか否かを示す。該バンドステアリング許可/禁止情報に設定された状態情報が“許可”の状態であれば、無線LANルータ装置1は、アプリケーションが通信中の状態であっても、子機端末2に対するバンドステアリングの実施を許可することを意味する。一方、該バンドステアリング許可/禁止情報に設定された状態情報が“禁止”の状態であれば、無線LANルータ装置1は、アプリケーションが通信中の場合には、子機端末2に対するバンドステアリングの実施を禁止することを意味する。
【0050】
また、アプリ情報保持タイマは、ローカルデータベース151に登録されたアプリケーション毎に用意されている。ローカルデータベース151にアプリケーション情報(すなわち、アプリケーション名、ドメイン名一覧、IPアドレス、バンドステアリング許可/禁止情報)が登録されると、該アプリ情報保持タイマが発動し、該アプリケーション情報が更新されると、タイマリセットして、該アプリ情報保持タイマのカウントアップをやり直す。該アプリ情報保持タイマがタイムアウトした場合、当該アプリケーション情報は、古い情報として、ローカルデータベース151から消去される。なお、ローカルデータベース151からアプリケーション情報を消去する時間は、子機端末2が持つDNSキャッシュ情報のタイムアウト時間よりも長い時間に設定する。
【0051】
また、ローカルデータベース151に登録されるアプリケーション情報は、当該無線LANルータ装置1に帰属する子機端末2が使用するアプリケーションに関する情報のみであり、該アプリケーション情報を基にして、無線LANルータ装置1は、子機端末2がアプリケーションの通信中において、該子機端末2に対するバンドステアリングを実施するか否かを判断する。
【0052】
ローカルデータベース151にアプリケーション情報を登録・更新するケースに関しては、次の2つのケースが存在する。
【0053】
第1番目のケースは、子機端末2によるアプリケーションの通信開始時において送信されるDNSクエリに対するDNSレスポンスをDNSサーバ4から受信した際である。受信したDNSレスポンスからドメイン名・IPアドレスを取得し、ローカルデータベース151へ保存する。本ケースにおいて保存されたドメイン名は、無線通信環境の変化に応じて、無線LANルータ装置1が子機端末2に対するバンドステアリングを実施したいと判断したタイミングで、アプリケーションの通信中にバンドステアリングを実施すると問題が生じるか否かをバンドステアリングサーバ6に対して問い合わせる時に使用される。
【0054】
第2番目のケースは、無線LANルータ装置1においてバンドステアリング実施可否判断のためにバンドステアリングサーバ6へ送信するバンドステアリングクエリに対するバンドステアリングレスポンスをバンドステアリングサーバ6から受信した際である。なお、バンドステアリングクエリ、バンドステアリングレスポンスの詳細については、それぞれ、後述のバンドステアリングクエリ送信部20、バンドステアリングレスポンス受信部21の説明に含めて記述する。
【0055】
無線LANルータ装置1からのバンドステアリングクエリに含まれている通信先サーバ3のドメイン名が、バンドステアリングサーバ6のアプリケーション情報登録データベース61に登録されている場合には、無線LANルータ装置1のデータベース処理部15は、バンドステアリングサーバ6から受信したバンドステアリングレスポンスに含まれているアプリケーション名、ドメイン名一覧、バンドステアリング許可/禁止の各情報を取得し、ローカルデータベース151へ更新登録する。一方、無線LANルータ装置1からのバンドステアリングクエリに含まれている通信先サーバ3のドメイン名が、バンドステアリングサーバ6のアプリケーション情報登録データベース61に登録されていない場合には、無線LANルータ装置1のデータベース処理部15は、ローカルデータベース151への更新登録は行わない。そして、その結果として、無線LANルータ装置1のバンドステアリング実施判断部18は、バンドステアリングサーバ6に送信したバンドステアリングクエリに含まれているドメイン名が、バンドステアリングサーバ6のアプリケーション情報登録データベース61に登録されていなかった場合には、無条件に、バンドステアリングの実施が許可されているものと判断する。
【0056】
通信部16は、WLAN I/F11に接続されている子機端末2とインターネット網5との間でやり取りされるパケットの送受信を行う。また、通信部16は、子機端末2とインターネット網5との間の通信状況を常に監視し、あらかじめ定めた一定間隔毎に、子機端末2と通信を行った通信相手のIPアドレスを記録したIPアドレスリストを作成して、バンドステアリング実施判断部18へ送信する機能を有する。
【0057】
無線通信環境変化検知部17は、無線通信環境の状況を常に監視し、無線通信環境の変化を検知すると、検知した無線通信環境情報をバンドステアリング実施判断部18へ送信する。ここで、無線通信環境情報としては、例えば各周波数帯域の混雑状況、または、無線LANルータ装置1が子機端末2から受信する電波の受信強度、等がある。
【0058】
バンドステアリング実施判断部18は、無線通信環境変化検知部17が検知した子機端末2との間の無線通信環境が子機端末2に対するバンドステアリングを実施する条件を満たしていた場合、無線LANルータ装置1が子機端末2に対してバンドステアリングを実施するか否かを判断する。バンドステアリングを実施するか否かの判断処理の詳細については後述する。バンドステアリング実施判断部18は、前述したように、バンドステアリング実施可否状態181の記憶領域とバンドステアリング禁止タイマ182とを含んで構成されている。
【0059】
バンドステアリング実施判断部18のバンドステアリング実施可否状態181は、現在バンドステアリングの実施が許可されている状態であるかあるいは禁止されている状態であるかというバンドステアリング実施の可否を示す状態情報を保持する。該状態情報が“許可”の状態であれば、無線LANルータ装置1は子機端末2に対してバンドステアリングを実施することができる状態であることを示す。一方、該状態情報が“禁止”の状態であれば、無線LANルータ装置1は子機端末2に対するバンドステアリングの実施が禁止されている状態であることを示す。
【0060】
前回のバンドステアリング実施可否判断において、通信中のバンドステアリングが禁止されているアプリケーションが通信中であったため、バンドステアリング実施可否状態181の状態情報が“禁止”の状態になってから、次回のバンドステアリング実施可否判断のタイミングにおいても、当該アプリケーションの通信が行われている場合には、バンドステアリング実施可否状態181の状態情報は”禁止”の状態を保つ。
【0061】
一方、バンドステアリング実施可否状態181が“禁止”の状態になった後、通信中のバンドステアリングが禁止されているアプリケーションの通信が行われなくなってから、バンドステアリング禁止タイマ182のタイムアウト時間としてあらかじめ設定した一定時間が経過した場合には、バンドステアリング実施可否状態181の状態情報は“禁止”の状態から“許可”の状態に変わる。
【0062】
また、前回のバンドステアリング実施可否判断において、バンドステアリング実施可否状態181の状態情報が“許可”の状態であった場合には、次回のバンドステアリング実施可否判断のタイミングまで、バンドステアリング実施可否状態181の状態情報は“許可”の状態を保つ。
【0063】
バンドステアリング実施判断部18のバンドステアリング禁止タイマ182は、バンドステアリング実施可否状態181の状態情報がバンドステアリングを禁止する“禁止”の状態にあった時に発動するタイマである。ローカルデータベース151にて通信中のバンドステアリングが禁止されているアプリケーションの通信が行われた場合はタイマリセットする。一方、当該アプリケーションの通信が前記タイムアウト時間としてあらかじめ設定した前記一定時間の間行われなく、バンドステアリング禁止タイマ182がタイムアウトした場合には、バンドステアリング実施可否状態181の状態情報を“禁止”の状態から“許可”の状態に変更する。
【0064】
バンドステアリング禁止タイマ182の前記タイムアウト時間については、任意の時間を設定可能としている。バンドステアリング禁止タイマ182の前記タイムアウト時間を例えば10秒にあらかじめ設定した場合は、通信中のバンドステアリングが禁止されているアプリケーションの通信がこの10秒間の間行われなければ、バンドステアリング実施可否状態181の状態情報を“禁止”の状態から“許可”の状態に変更する。
【0065】
バンドステアリング命令送信部19は、バンドステアリング実施判断部18からの指示を受けたことを契機にして、WLAN I/F11を介して子機端末2に対してバンドステアリングの命令パケットを送信する。子機端末2は、無線LANルータ装置1からバンドステアリングの命令パケットを受信すると、周波数帯域の切り替え等のバンドステアリングを実施する。
【0066】
バンドステアリングクエリ送信部20は、バンドステアリング実施判断部18からの指示を受けたことを契機にして、通信先サーバ3のドメイン名が使われているアプリケーションの情報(すなわち、アプリケーション名、ドメイン名一覧、バンドステアリング許可/禁止情報を少なくとも含む情報)と、子機端末2が該アプリケーションを使用して通信を行っている最中にバンドステアリングを実施することに問題が生じるか否かを示す情報と、を問い合わせるバンドステアリングクエリのパケットを生成し、WAN I/F12 を介してバンドステアリングサーバ6へ送信する。
【0067】
バンドステアリングレスポンス受信部21は、無線LANルータ装置1からのバンドステアリングクエリに対してバンドステアリングサーバ6が返送するレスポンス(以降、「バンドステアリングレスポンス」と呼称する)のパケットをWAN I/F12を介して受信する。そして、バンドステアリングレスポンス受信部21は、バンドステアリングサーバ6から返送されてきたバンドステアリングレスポンスのパケットを解析する。
【0068】
バンドステアリングレスポンス受信部21は、バンドステアリングレスポンスのパケットの解析結果として、子機端末2の通信相手の通信先サーバ3のドメイン名がバンドステアリングサーバ6に登録されていた場合には、該バンドステアリングレスポンスに含まれているアプリケーション情報(すなわち、アプリケーション名、ドメイン名一覧、バンドステアリング許可/禁止情報に関する各情報)を、データベース処理部15へ送信して、ローカルデータベース151の更新を行わせる。さらに、バンドステアリング実施判断部18に対して、通信先サーバ3のドメイン名がバンドステアリングサーバ6に登録されている旨を通知する。
【0069】
一方、バンドステアリングレスポンスのパケットの解析結果として、子機端末2の通信相手の通信先サーバ3のドメイン名がバンドステアリングサーバ6に登録されていなかった場合には、バンドステアリングレスポンス受信部21は、バンドステアリング実施判断部18に対して、通信先サーバ3のドメイン名がバンドステアリングサーバ6に登録されていない旨を通知する。なお、バンドステアリングレスポンス受信部21は、通信先サーバ3のドメイン名がバンドステアリングサーバ6に登録されていない旨の通知を受け取った場合には、データベース処理部15への送信動作を行わないので、データベース処理部15のローカルデータベース151の更新は行われない。
【0070】
(第1の実施形態の動作例)
次に、本発明の第1の実施形態に係るバンドステアリングシステムの動作について、図面を参照しながら詳細に説明する。
【0071】
まず、
図3のフローチャートを参照して、子機端末2がアプリケーションの使用を開始し、通信先サーバ3と通信を始めるときの処理の流れについて説明する。
図3は、本発明の第1の実施形態に係るバンドステアリングシステムの子機端末2が特定のアプリケーションの使用を開始する際の無線LANルータ装置1における処理の流れの一例を示すフローチャートである。
【0072】
図3のフローチャートにおいて、子機端末2は、ユーザが希望するアプリケーションの使用を開始しようとする際、通信先サーバ3のIPアドレスが分からないため、子機端末2は、無線LANルータ装置1に対して通信先サーバ3のIPアドレスを問い合わせるDNSクエリを送信してくる。無線LANルータ装置1は、WLAN I/F11を介して子機端末2からのDNSクエリを受け取ると、DNSクエリ送信部13を起動する。DNSクエリ送信部13は、子機端末2から受信したDNSクエリを、WAN I/F12を介してDNSサーバ4へ送信する(ステップS301)。
【0073】
DNSサーバ4は、無線LANルータ装置1からインターネット網5を介してDNSクエリを受信すると、該DNSクエリに対応するDNSレスポンスを、送信元の無線LANルータ装置1に対して返信してくる。無線LANルータ装置1は、WAN I/F12を介してDNSサーバ4からのDNSレスポンスを受け取ると、DNSレスポンス受信部14を起動する(ステップS302)。DNSレスポンス受信部14は、
図17において説明したような本発明に関連する現状の技術におけるDNSレスポンスの処理の他に、次のような処理をさらに追加して行う。
【0074】
すなわち、DNSレスポンス受信部14は、WAN I/F12を介して受信したDNSレスポンスを解析して、該DNSレスポンスに含まれている通信先サーバ3のドメイン名とIPアドレスとを取得する(ステップS303)。しかる後、DNSレスポンス受信部14は、
図17の場合と同様の処理として、WLAN I/F11 を介して、DNSクエリ送信元の子機端末2に対して該DNSレスポンスを送信する。以降、子機端末2は、受け取った該DNSレスポンスに含まれている通信先サーバ3のIPアドレスに基づいて、無線LANルータ装置1のWLAN I/F11、通信部16、WAN I/F12 を介して、通信先サーバ3と通信を行うことになる。
【0075】
また、DNSレスポンス受信部14は、本第1の実施形態に特有の動作として、ステップS303において取得した通信先サーバ3のドメイン名とIPアドレスとをデータベース処理部15へ送信する。
【0076】
ここで、データベース処理部15内に備えているローカルデータベース151について
図4を参照して説明する。
図4は、本発明の第1の実施形態に係るバンドステアリングシステムの無線LANルータ装置1のデータベース処理部15内に備えているローカルデータベース151の記憶内容の一例を示すテーブルである。
図4には、無線LANルータ装置1に帰属する子機端末2のアプリケーションが通信開始時に送信したDNSクエリに対して、DNSサーバ4から返送されてきたDNSレスポンスを無線LANルータ装置1が受信した際に設定登録されるローカルデータベース151の保存内容の一例を示している。
【0077】
ローカルデータベース151は、子機端末2が使用するアプリケーションに関する情報が登録されるものであり、
図4に示すように、アプリケーション名1511、ドメイン名一覧1512、IPアドレス1513、バンドステアリング許可/禁止情報1514からなるアプリケーション情報の他、アプリ情報保持タイマ1515に関する情報を含んで構成され、登録された各情報は、データベース処理部15により管理される。
【0078】
ドメイン名一覧1512は、該当するアプリケーションが使用する全ての通信先サーバ3のドメイン名の一覧を示す。IPアドレス1513は、ドメイン名一覧1512に登録される各ドメイン名に対応するIPアドレスを示す。バンドステアリング許可/禁止情報1514は、子機端末2が該当のアプリケーションの通信中においてバンドステアリングの実施を許可するか否かを示す。バンドステアリング許可/禁止情報1514の状態情報が“許可”の状態であることは、子機端末2に対して該当のアプリケーション通信中の状態であっても、無線LANルータ装置1がバンドステアリングの実施を許可することを意味する。一方、バンドステアリング許可/禁止情報1514の状態情報が“禁止”の状態であることは、子機端末2において該当のアプリケーション通信中の状態にある場合には、無線LANルータ装置1がバンドステアリングの実施を禁止することを意味する。
【0079】
ローカルデータベース151に登録されたアプリケーション毎にアプリ情報保持タイマ1515が用意されている。ローカルデータベース151にアプリケーション情報が登録されると、前述したように、アプリ情報保持タイマ1515が発動して、カウントアップを開始し、ローカルデータベース151に登録したアプリケーション情報が更新されると、タイマリセットして、カウントアップをやり直す。アプリ情報保持タイマ1515があらかじめ設定したタイムアウト時間に達して、タイムアウトした場合は、該当アプリケーション情報は古い情報としてローカルデータベース151から消去される。なお、ローカルデータベース151からアプリケーション情報を消去するタイムアウト時間は、子機端末2が持つDNSキャッシュ情報のタイムアウト時間よりも長い時間に設定する。
【0080】
ここで、ローカルデータベース151に登録されるアプリケーション情報は、子機端末2が使用するアプリケーションに関する情報であり、ローカルデータベース151に登録された該アプリケーション情報を基にして、無線LANルータ装置1は、子機端末2がアプリケーションの通信中にバンドステアリングを実施するか否かを判断する。
【0081】
図4のテーブルの第1行目(太い線の枠で囲んだ行)のレコードにあるアプリケーション情報を例にして説明すると、次の通りである。DNSレスポンス受信部14が、DNSサーバ4から受信したDNSレスポンスから‘game-xxx.com’というドメイン名と‘XXX.XXX.XXX.111’というIPアドレスとを取得して、データベース処理部15へ送信する。データベース処理部15は、DNSレスポンス受信部14から受信した‘game-xxx.com’というドメイン名と‘XXX.XXX.XXX.111’というIPアドレスとを、それぞれ、ローカルデータベース151のドメイン名一覧1512とIPアドレス1513とに登録し、かつ、‘game-xxx.com’というドメイン名のアプリ情報保持タイマ1515を発動する。
【0082】
次に、再び、
図3のフローチャートの説明に戻る。データベース処理部15は、DNSレスポンス受信部14からドメイン名とIPアドレスとを受信すると、まず、受信したドメイン名と同一のドメイン名が、自身が有するローカルデータベース151に既に登録されているか否かを確認する(ステップS304)。同一のドメイン名がローカルデータベース151に既に登録されている場合(ステップS304のYes)、次に、DNSレスポンス受信部14から受信したIPアドレスとローカルデータベース151に登録されているIPアドレスとが一致しているか否かを確認する(ステップS305)。両者のIPアドレスが一致している場合は(ステップS305のYes)、ローカルデータベース151の更新は不要と判断して、処理を終了する。
【0083】
一方、ステップS305において、両者のIPアドレスが一致していなかった場合は(ステップS305のNo)、ローカルデータベース151に登録されているIPアドレスは古い情報と判断して、DNSレスポンス受信部14から受信したIPアドレスにローカルデータベース151のIPアドレス1513の記憶内容を更新し(ステップ307)、更新したIPアドレスに対応するアプリ情報保持タイマ1515をタイマリセットして、カウントアップ動作をやり直す。
【0084】
また、ステップS304において、受信したドメイン名と同一のドメイン名が、自身が有するローカルデータベース151にまだ登録されていない場合(ステップS304のNo)、DNSレスポンス受信部14から受信したドメイン名とIPアドレスとを、それぞれ、ローカルデータベース151のドメイン名一覧1512とIPアドレス1513とに新規追加するとともに(ステップS306)、対応するアプリ情報保持タイマ1515を発動して、カウントアップ動作を開始する。
【0085】
なお、
図3のフローチャートの処理が実施される時点、すなわち、子機端末2が特定のアプリケーションの使用を開始する時点においては、DNSレスポンスから得られた情報を登録する段階である。したがって、ローカルデータベース151の登録内容に関しては、ドメイン名一覧1512およびIPアドレス1513の第1行目以外のドメイン名およびIPアドレス(
図4の登録例においては該当アプリケーションが使用する第1行目の登録内容‘game-xxx.com’および‘XXX.XXX.XXX.111’以外のドメイン名およびIPアドレス)、アプリケーション名1511、バンドステアリング許可/禁止情報1514に関するアプリケーション情報については、まだ、登録されていない。
図3のフローチャートの処理が実施された時点でまだ登録されていない前述の各情報の更新については後述する。
【0086】
ここで、
図3のフローチャートの処理が実施される時点でローカルデータベース151に登録されたドメイン名(
図4の登録例における第1行目の登録内容‘game-xxx.com’)は、無線通信環境の変化に応じて、無線LANルータ装置1が子機端末2に対するバンドステアリングを実施したいと判断したタイミングにおいて、アプリケーション通信中にバンドステアリングを実施すると問題が生じるか否かを、バンドステアリングサーバ6へ問い合わせる際に使用する。
【0087】
次に、バンドステアリング実施に関する具体的な処理の流れについて説明する。まず、本発明の実施形態の説明に先立って、
図5のフローチャートを参照して、本発明が関連する現状の技術において用いられているバンドステアリングの処理の流れを説明する。
図5は、本発明が関連する現状の技術において用いられているバンドステアリングの処理の流れを示すフローチャートである。
【0088】
本発明が関連する現状の技術における無線LANルータ装置においても、
図2に示した本発明の第1の実施形態に係る無線LANルータ装置1の場合と同様、無線通信環境の変化を検知する無線通信環境変化検知部と、アプリケーションの通信中におけるバンドステアリングの実施の可否を判断するバンドステアリング実施判断部と、子機端末に対してバンドステアリングの実施を命令するバンドステアリング命令送信部と、を備えている。そして、
図5のフローチャートに示すように、まず、現状の技術における無線LANルータ装置に搭載の無線通信環境変化検知部が、無線通信環境の変化を検知すると(ステップS501)、変化した無線通信環境を示す無線通信環境情報をバンドステアリング実施判断部へ送信する。該無線通信環境情報については、例えば、各周波数帯域の混雑状況または無線LANルータ装置が子機端末から受信する電波の受信強度、等がある。
【0089】
現状の技術における無線LANルータ装置に搭載のバンドステアリング実施判断部は、無線通信環境変化検知部から前記無線通信環境情報を取得すると、該無線通信環境情報に基づいてバンドステアリングを実施する条件を満たしているか否かを判断する(ステップS502)。ここで、現状の技術における無線LANルータ装置が子機端末に対してバンドステアリングを実施する条件としては、例えば、子機端末が現在接続している周波数帯域が混雑していて、接続していない空きの他周波数帯域が存在している、といった場合である。
【0090】
無線通信環境の状況として、バンドステアリングを実施する条件を満たしている場合には(ステップS502のYes)、バンドステアリング実施判断部は、バンドステアリング命令送信部に対して、バンドステアリング命令を子機端末へ送信することを指示する。その結果、バンドステアリング命令送信部は、WLAN I/Fを介して子機端末に対してバンドステアリング命令を送信する(ステップS503)。これに対して、無線通信環境の状況として、バンドステアリングを実施する条件を満たしていない場合には(ステップS502のNo)、バンドステアリング実施判断部は、子機端末に対してバンドステアリング命令を送信すべきではないと判断して、バンドステアリングを実施しない。
【0091】
以上に説明したような処理を行うことにより、本発明に関連する現状の技術においては、無線LANルータ装置におけるバンドステアリングの処理が実施される。これに対して、本発明の第1の実施形態に係るバンドステアリングシステムの無線LANルータ装置1においては、異なる処理を行っており、
図5のフローチャートにおいて、バンドステアリングを実施する条件を満たしていると判断した後において(ステップS502のYes)、無線LANルータ装置1が子機端末2に対してバンドステアリング命令を送信する(ステップS503)という処理を実施することに先立って、本発明に特有の処理を追加して実施している。
【0092】
次に、本発明の第1の実施形態に係るバンドステアリングシステムの無線LANルータ装置1におけるバンドステアリングの処理の流れについて、その一例を、
図6のフローチャートを参照して詳細に説明する。
図6は、本発明の第1の実施形態に係るバンドステアリングシステムの無線LANルータ装置1におけるバンドステアリングの処理の流れの一例を示すフローチャートである。
図6は、紙面サイズの制限から、前半部分を表す
図6Aと後半部分を表す
図6Bとに分けて図示してある。
図6Aの下部における○で囲まれたA,B,Cは、
図6Bの上部における○で囲まれたA,B,Cに繋がっているものとする。以下の説明における
図6は、
図6Aと
図6Bとを繋いだ一つの図を指している。
【0093】
図6のフローチャートにおいて、まず、無線LANルータ装置1の無線通信環境変化検知部17が、子機端末2との間の無線通信環境の変化を検知すると(ステップS601)、変化した無線通信環境を示す無線通信環境情報をバンドステアリング実施判断部18へ送信する。バンドステアリング実施判断部18は、無線通信環境変化検知部17から前記無線通信環境情報を取得すると、該無線通信環境情報が示す無線通信環境がバンドステアリングを実施する条件を満たしているか否かを判断する(ステップS602)。該無線通信環境情報としては、
図5に示した本発明に関連する現状の技術の場合と同様、例えば、各周波数帯域の混雑状況または無線LANルータ装置が子機端末から受信する電波の受信強度、等がある。
【0094】
無線通信環境の状況として、バンドステアリングを実施する条件を満たしていない場合には(ステップS602のNo)、例えば、現在接続している周波数帯域を別の周波数帯域へ切り替えるメリットがない状況であり、バンドステアリング実施判断部18は、子機端末2に対してバンドステアリング命令を送信すべきでないと判断して、バンドステアリングを実施しない。以上の処理は、
図5に示した本発明に関連する現状の技術の場合と同様の処理である。また、子機端末2に対してバンドステアリングを実施する条件を満たしているか否かの判定基準についても、
図5に示した本発明に関連する現状の技術の場合と同様であり、条件を満たしている場合とは、例えば、子機端末2が現在接続している周波数帯域が混雑していて、接続していない空きの他周波数帯域が存在している、といった場合である。
【0095】
無線通信環境の状況として、バンドステアリングを実施する条件を満たしている場合には(ステップS602のYes)、
図5の処理とは異なり、次のような処理を行う。つまり、通信部16が取得した通信状況に基づいて、子機端末2が通信中の状態にあるか否かをまず判断する。そして、通信中の状態にあると判断した場合には、当該子機端末2のアプリケーションによる通信中の通信相手である通信先サーバ3のドメイン名を取得して、バンドステアリングクエリ送信部20を用いて、バンドステアリングサーバ6にバンドステアリングクエリを送信する。
【0096】
該バンドステアリングクエリを受け取ったバンドステアリングサーバ6は、アプリケーション情報登録データベース61に登録されたアプリケーション情報のうち、該バンドステアリングクエリに含まれた通信先サーバ3のドメイン名をドメイン名一覧に含むアプリケーション情報を取り出して、バンドステアリングレスポンスを作成して、バンドステアリングクエリの送信元の無線LANルータ装置1にそのバンドステアリングレスポンスを送信する。
【0097】
無線LANルータ装置1のバンドステアリングレスポンス受信部21は、バンドステアリングサーバ6から送信されてきた該バンドステアリングレスポンスを受け取ると、該バンドステアリングレスポンスに含まれているアプリケーション情報(すなわち、当該子機端末2のアプリケーションによる通信中の通信相手である通信先サーバ3のドメイン名をドメイン名一覧に含むアプリケーション情報)を、バンドステアリング実施判断部18に送信する。バンドステアリング実施判断部18は、バンドステアリングレスポンス受信部21から受け取った該アプリケーション情報に基づいて、子機端末2に対するバンドステアリングの可否を判断する。
【0098】
図6のフローチャートの説明に戻って、バンドステアリングを実施する条件を満たしている場合には(ステップS602のYes)、まず、バンドステアリング実施判断部18は、あらかじめ定めた一定時間間隔毎に定期的に通信部16から取得しているIPアドレスリストを参照して、子機端末2が通信を行っているか否かを判断する(ステップS603)。ここで、通信部16は、子機端末2とインターネット網5との間の通信状況を常に監視し、あらかじめ定めた前記一定時間間隔内に子機端末2と通信を行った通信相手のIPアドレスを記録して、前記IPアドレスリストを作成する機能を備えている。そして、通信部16は、該一定時間間隔毎に、定期的に、作成した該IPアドレスリストをバンドステアリング実施判断部18へ送信する機能を備えている。
【0099】
バンドステアリング実施判断部18は、通信部16から受け取った前記IPアドレスリストを参照して、前記一定時間間隔内に、子機端末2と通信を行った通信相手のIPアドレスが前記IPアドレスリスト内に存在していた場合には、子機端末2が通信中であるものと判断する。一方、子機端末2と通信を行った通信相手のIPアドレスが前記IPアドレスリスト内に存在しない場合には、子機端末2は通信していない状態であるものと判断する。
【0100】
バンドステアリング実施判断部18は、通信部16から定期的に取得する前記IPアドレスリストに基づいて子機端末2が通信中ではないと判断すると(ステップS603のNo)、バンドステアリングを実施しても問題がないものと判断して、バンドステアリング命令送信部19へ子機端末2に対してバンドステアリング命令を送信するように指示する。バンドステアリング実施判断部18からの指示を受け取ったバンドステアリング命令送信部19は、WLAN I/F11を介して、子機端末2へバンドステアリング命令を送信する(ステップS612)。
【0101】
これに対して、バンドステアリング実施判断部18が、通信部16から定期的に取得する前記IPアドレスリストに基づいて子機端末2が通信中であると判断した場合には(ステップS603のYes)、バンドステアリングの実施の可否を判断するために、まず、バンドステアリング実施可否状態181の状態情報を参照する(ステップS604)。
【0102】
ここで、バンドステアリング実施可否状態181の状態情報は、現在、バンドステアリングの実施が許可されている状態または禁止されている状態のうち、いずれかの状態情報を保持している。該状態情報が“許可”の状態であれば、無線LANルータ装置1は、子機端末2に対してバンドステアリングを実施することが可能な状態を示している。一方、該状態情報が“禁止”の状態であれば、無線LANルータ装置1は、子機端末2に対してバンドステアリングを実施することが禁止されている状態であることを示している。
【0103】
バンドステアリング実施判断部18における前回のバンドステアリング実施可否判断において、バンドステアリング実施可否状態181の状態情報が“禁止”の状態になってから、通信中のバンドステアリングが禁止されているアプリケーションの通信が、今回までの期間の間も、継続して行われている場合には、バンドステアリング実施可否状態181の状態情報は“禁止”の状態を保つ。
【0104】
しかし、バンドステアリング実施可否状態181の状態情報が“禁止”の状態となった後、通信中のバンドステアリングが禁止されているアプリケーションの通信が行われなくなってから、バンドステアリング禁止タイマ182のタイムアウト時間としてあらかじめ設定した一定時間が経過した場合には、バンドステアリング実施可否状態181の状態情報は“禁止”から“許可”の状態に変わる。また、前回のバンドステアリング実施可否判断において、バンドステアリング実施可否状態181の状態情報が“許可”の状態であった場合には、今回のバンドステアリング実施可否判断のタイミングまでの期間は“許可”の状態を保つ。
【0105】
図6のフローチャートの説明に戻って、現在のバンドステアリング実施可否状態181の状態情報が、“許可”ではなく、“禁止”の状態であった場合には(ステップS604のNo)、前回のバンドステアリング実施可否判断においてバンドステアリング実施可否状態181の状態情報が“禁止”の状態となってから、通信中のバンドステアリングが禁止されているアプリケーションの通信が今回までの期間の間も継続して行われている。したがって、バンドステアリングを実施するタイミングとしては不適当であるものと判断して、バンドステアリングは実施しない。
【0106】
一方、現在のバンドステアリング実施可否状態181の状態情報が“許可”の状態であった場合には(ステップS604のYes)、現時点でバンドステアリングを実施することが可能であるか否かをバンドステアリングサーバ6に問い合わせる処理に進む。このため、バンドステアリング実施判断部18は、まず、データベース処理部15のローカルデータベース151を参照して、子機端末2の通信相手となる通信先サーバ3のIPアドレスに対応するドメイン名を取得する(ステップS605)。なお、バンドステアリング実施判断部18が、子機端末2の通信相手の通信先サーバ3のIPアドレスとして、通信部16から受信したIPアドレスリストから複数のIPアドレスを得た場合は、全てのIPアドレスに対応するドメイン名を全て取得する。ここで、
図3のフローチャートにて説明したように、子機端末2のアプリケーションの通信開始時においてDNSレスポンスから全ての通信先サーバ3のドメイン名、IPアドレスを取得しているので、ローカルデータベース151には必ず登録されている。
【0107】
バンドステアリング実施判断部18は、ローカルデータベース151から通信先サーバ3のドメイン名を取得すると、取得した通信先サーバ3のドメイン名をバンドステアリングクエリ送信部20へ送信する。バンドステアリングクエリ送信部20は、バンドステアリング実施判断部18から受け取った通信先サーバ3のドメイン名に関するバンドステアリングクエリを作成して、WAN I/F12を介して、バンドステアリングサーバ6へ送信する(ステップS606)。
【0108】
なお、バンドステアリング実施判断部18から複数の通信先サーバ3のドメイン名を受け取った場合には、バンドステアリングクエリ送信部20は、ドメイン名毎にそれぞれのバンドステアリングクエリを作成して、バンドステアリングサーバ6へ送信する。また、該バンドステアリングクエリは、該当の通信先サーバ3のドメイン名が使われているアプリケーションの情報(すなわち、アプリケーション名、ドメイン名一覧、バンドステアリング許可/禁止情報を少なくとも含む情報)と、子機端末2が当該アプリケーションを通信中にバンドステアリングを実施すると不具合が発生するか否かを示す情報と、をバンドステアリングサーバ6に問い合わせるものである。
【0109】
ここで、
図7のテーブルを参照して、バンドステアリングサーバ6のアプリケーション情報登録データベース61の登録内容について詳細に説明する。
図7は、本発明の第1の実施形態に係るバンドステアリングシステムのバンドステアリングサーバ6に備えられるアプリケーション情報登録データベース61の登録内容の一例を示すテーブルである。アプリケーション情報登録データベース61は、使用ユーザ数が多い汎用的なアプリケーションに関する情報が登録されており、
図7のテーブルに示すように、アプリケーション名611、ドメイン名一覧612、バンドステアリング許可/禁止情報613に関する情報を含んで構成される。
【0110】
ドメイン名一覧612は、該当アプリケーションの通信相手となる通信先サーバのドメイン名一覧を示すものであり、アプリケーション名611に示すアプリケーションが使用する全てのドメイン名の一覧を示すものである。バンドステアリング許可/禁止情報613は、子機端末2がアプリケーション名611に示すアプリケーションの通信中の状態にある際に、無線LANルータ装置1が当該子機端末2に対してバンドステアリングを実施しても良いか否かを示すものである。
【0111】
バンドステアリング許可/禁止情報613の状態情報が“許可”の状態であれば、アプリケーション通信中にバンドステアリングを実施しても問題は生じないことを意味し、一方、バンドステアリング許可/禁止情報613の状態情報が“禁止”の状態であれば、アプリケーション通信中にバンドステアリングを実施すると、問題が生じる可能性があることを意味する。
【0112】
例えば、バンドステアリングサーバ6が無線LANルータ装置1からのバンドステアリングクエリとして‘game-xxx.com’のドメイン名を受け取った場合には、バンドステアリングサーバ6は、
図7に示すアプリケーション情報登録データベース61のドメイン名一覧612の登録内容を検索する。
【0113】
アプリケーション情報登録データベース61の検索結果、該当するドメイン名を検出すると、バンドステアリングサーバ6は、該ドメイン名を使用するアプリケーションとしてアプリケーション名611に登録されている“ゲームアプリ”、当該“ゲームアプリ”が使用するドメイン名としてドメイン名一覧612に登録されているドメイン名一覧(すなわち、
図7のテーブル登録例の場合は、‘game-xxx.com’の他に‘game-yyy.com’、…等の各ドメイン名)、および、当該“ゲームアプリ”のバンドステアリング許可/禁止情報613に登録されている情報(すなわち、
図7のテーブル登録例の場合は、当該“ゲームアプリ”の通信中においてはバンドステアリング実施の“禁止”を示す情報)を取り出す。
【0114】
通常、“ゲームアプリ”は、オンライン対戦の機能があり、例えば、複数ユーザとの間で通信を行って対戦を行うアプリとして、オンライン対戦をしている最中に、バンドステアリングが実施されると、オンライン対戦のセッションが切断されてしまう場合があり、ユーザに不快な思いをさせてしまう可能性が高い。そのため、“ゲームアプリ”の通信中においては、一般的には、バンドステアリングの実施を“禁止"とすることが望ましい。
【0115】
しかる後、バンドステアリングサーバ6は、アプリケーション情報登録データベース61から取り出した“ゲームアプリ”というアプリケーション名、当該“ゲームアプリ”が使用するドメイン名一覧(‘game-xxx.com’の他に‘game-yyy.com’、…等)、および、当該“ゲームアプリ”の通信中においてはバンドステアリング実施の“禁止”を示す情報からなるアプリケーション情報を少なくとも含むバンドステアリングレスポンスを作成して、前記バンドステアリングクエリの送信元の無線LANルータ装置1に対して送信する。
【0116】
ここで、バンドステアリングサーバ6が無線LANルータ装置1からバンドステアリングクエリを受信したときのバンドステアリングサーバ6の処理の流れについて、
図8のフローチャートを参照してさらに説明する。
図8は、本発明の第1の実施形態に係るバンドステアリングシステムのバンドステアリングサーバ6における処理の流れの一例を示すフローチャートであり、無線LANルータ装置1からバンドステアリングクエリを受信した時の処理の流れの一例を示している。
【0117】
バンドステアリングサーバ6は、無線LANルータ装置1からバンドステアリングクエリを受信すると、
図8のフローチャートに示すように、まず、自身が持つアプリケーション情報登録データベース61のドメイン名一覧612を参照して、無線LANルータ装置1から送信されてきた通信先サーバ3のドメイン名がアプリケーション情報登録データベース61に登録されているか否かを確認する(ステップS801)。無線LANルータ装置1から複数の通信先サーバ3のドメイン名が送信されてきた場合には、各ドメイン名毎に、アプリケーション情報登録データベース61に登録されているか否かを確認する。
【0118】
無線LANルータ装置1から送られてきた通信先サーバ3のドメイン名がアプリケーション情報登録データベース61に登録されていた場合には(ステップS801のYes)、当該ドメイン名が使われるアプリケーション名、該アプリケーションが使用するドメイン名一覧、子機端末2が該アプリケーションの通信中においてバンドステアリングの実施が可能か否かを示す情報からなるアプリケーション情報を少なくとも含むバンドステアリングレスポンスを作成して、無線LANルータ装置1へ送信する(ステップS802)。
【0119】
一方、無線LANルータ装置1から送られてきた通信先サーバ3のドメイン名がアプリケーション情報登録データベース61に登録されていなかった場合には(ステップS801のNo)、バンドステアリングサーバ6は、送られてきた通信先サーバ3のドメイン名がアプリケーション情報登録データベース61に登録されていない旨を示すバンドステアリングレスポンスを作成して、無線LANルータ装置1へ送信する(ステップS803)。
【0120】
次に、
図6のフローチャートの説明に戻って、無線LANルータ装置1のバンドステアリング処理のステップS607およびそれ以降の処理について説明する。ステップS606において無線LANルータ装置1がバンドステアリングクエリをバンドステアリングサーバ6に対して送信しているので、しかる後、無線LANルータ装置1のバンドステアリングレスポンス受信部21は、WAN I/F12を介して、バンドステアリングサーバ6からバンドステアリングレスポンスを受信する(ステップS607)。
【0121】
バンドステアリングレスポンス受信部21は、受信したバンドステアリングレスポンスのパケットを解析し、解析の結果、子機端末2の通信相手である通信先サーバ3のドメイン名がバンドステアリングサーバ6に登録されていない場合は、その旨をバンドステアリング実施判断部18へ通知する。
【0122】
一方、解析の結果、子機端末2の通信相手である通信先サーバ3のドメイン名がバンドステアリングサーバ6に登録されている場合には、バンドステアリングレスポンス受信部21は、通信先サーバ3のドメイン名がバンドステアリングサーバ6に登録されている旨をバンドステアリング実施判断部18へ通知する。さらに、バンドステアリングレスポンス受信部21は、受信したバンドステアリングレスポンスに含まれている、アプリケーション名、ドメイン名一覧、バンドステアリング許可/禁止に関する各情報からなる最新のアプリケーション情報を取り出して、データベース処理部15へ送信する。
【0123】
データベース処理部15は、ローカルデータベース151のアプリケーション情報のうち、IPアドレス1513以外のアプリケーション名1511、ドメイン名一覧1512、バンドステアリング許可/禁止情報1514の各記憶内容を、バンドステアリングレスポンス受信部21から受け取ったアプリケーション名、ドメイン名一覧、バンドステアリング許可/禁止に関する各情報からなる最新のアプリケーション情報に更新するとともに、更新したアプリケーション情報に関するアプリ情報保持タイマ1515をリセットする(ステップS608)。
【0124】
ここで、バンドステアリングサーバ6からバンドステアリングレスポンスとして取得したアプリケーション情報により、ローカルデータベース151の保存内容を更新したときのローカルデータベース151の更新結果について、
図9のテーブルを参照してさらに説明する。
図9は、本発明の第1の実施形態に係るバンドステアリングシステムの無線LANルータ装置1のデータベース処理部15内に備えているローカルデータベース151の記憶内容の
図4とは異なる例を示すテーブルである。
図9には、無線LANルータ装置1が送信したバンドステアリングクエリクエリに対して、バンドステアリングサーバ6から返送されてきたバンドステアリングレスポンスを無線LANルータ装置1が受信した際に更新登録されるローカルデータベース151の記憶内容の一例を示している。
【0125】
図6のフローチャートのステップS606における先の説明において例示したように、‘game-xxx.com’というドメイン名を含むバンドステアリングクエリをバンドステアリングサーバ6へ送信した場合、無線LANルータ装置1は、‘game-xxx.com’というドメイン名を使用しているアプリケーション情報(“ゲームアプリ”というアプリケーション名、“ゲームアプリ”が使用するドメイン名一覧(すなわち‘game-xxx.com’、‘game-yyy.com、’…というドメイン名一覧)、および、“ゲームアプリ”通信中におけるバンドステアリングは禁止というバンドステアリング許可/禁止情報)を含むバンドステアリングレスポンスをバンドステアリングサーバ6から受信する。
【0126】
その結果、無線LANルータ装置1のデータベース処理部15は、
図9において太線で囲んで示す領域に表してあるように、ローカルデータベース151のアプリケーション名1511、ドメイン名一覧1512、および、バンドステアリング許可/禁止情報1514の各記憶内容を、バンドステアリングサーバ6から受け取った該バンドステアリングレスポンスに含まれている最新のアプリケーション情報(“ゲームアプリ”というアプリケーション名、“ゲームアプリ”が使用するドメイン名一覧(すなわち‘game-xxx.com’、‘game-yyy.com、’…というドメイン名一覧)、および、“ゲームアプリ”通信中におけるバンドステアリングは禁止というバンドステアリング許可/禁止情報)によって更新する。さらに、データベース処理部15は、ローカルデータベース151のアプリケーション名1511が“ゲームアプリ”に対応するアプリ情報保持タイマ1515のタイマ値(すなわち、“ゲームアプリ”のアプリ情報保持タイマ)をリセットして、‘0.0(秒)’からカウントアップし直すように設定する。
【0127】
DNSクエリに対するDNSレスポンスを受信した際の記憶内容として前述した
図4のローカルデータベース151においては、ドメイン名一覧1512に‘game-xxx.com’と‘game-yyy.com’との2つのドメイン名が、アプリケーション名1511のアプリケーション名が未登録の状態で登録されていた。しかし、バンドステアリングクエリに対するバンドステアリングレスポンスを受信した際の記憶内容を示す
図9のローカルデータベース151においては、バンドステアリングサーバ6から受信したバンドステアリングレスポンスにより、少なくとも、‘game-xxx.com’と‘game-yyy.com’との2つのドメイン名は、“ゲームアプリ”で使われるドメイン名であることが判明したので、当該2つのドメイン名に対応するアプリケーション名1511の記憶内容を、“ゲームアプリ”というアプリケーション名に更新している。
【0128】
なお、アプリ情報保持タイマ1515のタイマ値については、
図4のローカルデータベース151においては、ドメイン名一覧1512が‘game-xxx.com’というドメイン名に対応するアプリ情報保持タイマ1515のタイマ値は、IPアドレスの更新登録により、‘0.0’にリセットされて、カウントアップし直すように設定される。一方、‘game-yyy.com’というドメイン名に対応するアプリ情報保持タイマ1515のタイマ値は、リセットされずに、例えば‘1.42(秒)’というタイマ値までカウントアップされている。しかし、
図9のローカルデータベース151においては、‘game-xxx.com’と‘game-yyy.com’との2つのドメイン名は、“ゲームアプリ”で使われるドメイン名であることが判明し、‘game-xxx.com’のみならず、‘game-yyy.com’についてもアプリケーション情報が更新されるので、‘game-xxx.com’と‘game-yyy.com’との2つのドメイン名に対応するアプリ情報保持タイマ1515のタイマ値は、‘0.0’にリセットされる。
【0129】
次に、
図6のフローチャートの説明に再び戻って、無線LANルータ装置1のバンドステアリング処理のステップS609およびそれ以降の処理について説明する。ここで、ステップS606において無線LANルータ装置1のバンドステアリングクエリ送信部20から全てのドメイン名に関するバンドステアリングクエリを送信した結果として、ステップS608においては、無線LANルータ装置1のデータベース処理部15がバンドステアリングサーバ6からの全てのバンドステアリングレスポンスの内容に基づいて、ローカルデータベース151の記憶内容を更新しており、しかる後に、ステップS609の処理が行われる。
【0130】
無線LANルータ装置1のバンドステアリング実施判断部18は、データベース処理部15のローカルデータベース151の更新後の内容を参照して、通信部16から受信したIPアドレスリストから子機端末2のアプリケーションの通信相手として得られる全ての通信先サーバ3のIPアドレスに対応するアプリケーションに関するバンドステアリング許可/禁止の状態情報を、ローカルデータベース151のバンドステアリング許可/禁止情報1514から取得する。そして、バンドステアリング実施判断部18は、取得したバンドステアリング許可/禁止の状態情報に“禁止”の状態になっている状態情報が存在する場合には(ステップS609のYes)、バンドステアリング実施可否状態181を“禁止”に変更し、現在の状態は、バンドステアリングを実施することができない状態に設定する(ステップS610)。しかる後、バンドステアリング実施判断部18は、バンドステアリング禁止タイマ182を発動する(ステップS611)。なお、バンドステアリング禁止タイマ182の発動後の処理については後述する。
【0131】
かくのごとき処理を行うことにより、バンドステアリングサーバ6のアプリケーション情報登録データベース61にて子機端末2が現在使用しているアプリケーションの通信中においてバンドステアリングの実施に問題が生じる可能性があるとされているアプリケーションの場合には、当該アプリケーションの通信中の状態にある子機端末2に対して、無線LANルータ装置1はバンドステアリングの命令を送信しないように制御することになり、子機端末2が使用中のアプリケーションに関し、バンドステアリング実施に伴う不具合が生じることを確実に回避することを可能にしている。
【0132】
一方、ステップS609において、バンドステアリング実施判断部18が取得したバンドステアリング許可/禁止の状態情報には“禁止”の状態になっている状態情報が存在していなかった場合には(ステップS609のNo)、バンドステアリング実施判断部18は、バンドステアリングを実施しても問題がないものと判断し、バンドステアリング命令送信部19へ子機端末2に対してバンドステアリング命令を送信するように指示する。その結果、バンドステアリング命令送信部19は、WLAN I/F11を介して、子機端末2へバンドステアリング命令を送信する(ステップS612)。
【0133】
次に、
図6のフローチャートのステップS610、S611の処理において、バンドステアリング実施判断部18のバンドステアリング実施可否状態181に登録されているバンドステアリング実施可否状態を“禁止”の状態に設定して、バンドステアリング禁止タイマ182を発動した後の処理について、
図10のフローチャートを参照して説明する。
図10は、本発明の第1の実施形態に係るバンドステアリングシステムの無線LANルータ装置1においてバンドステアリング禁止タイマ182が発動中の状態にある時の処理の一例を示すフローチャートである。
【0134】
前述したように、無線LANルータ装置1のバンドステアリング実施判断部18のバンドステアリング実施可否状態181に登録されている状態が“禁止”の状態に設定されると、バンドステアリング禁止タイマ182が発動される。そして、バンドステアリング禁止タイマ182が発動中の状態になると、
図10のフローチャートに示すように、バンドステアリング実施判断部18は、通信部16から子機端末2の通信相手のIPアドレスリストをあらかじめ定めた一定時間間隔毎に定期的に受信した際に、通信を行ったことを示す該IPアドレスリストから得たIPアドレスが対応するアプリケーションに関して、ローカルデータベース151において通信中のバンドステアリングの実施が禁止されているアプリケーションとして存在するか否かを確認する(ステップS1001)。
【0135】
通信中のバンドステアリングの実施が禁止されているアプリケーションとしてローカルデータベース151に存在している場合には(ステップS1001のYes)、当該アプリケーションが通信相手のIPアドレスとの間で通信を行ったことを意味しているので、バンドステアリング実施判断部18は、バンドステアリング禁止タイマ182をリセットして、カウントアップをやり直す(ステップS1002)。
【0136】
これに対して、通信中のバンドステアリングが禁止されているアプリケーションとしてローカルデータベース151には存在していなかった場合は(ステップS1001のNo)、バンドステアリング実施判断部18は、バンドステアリング禁止タイマ182があらかじめ設定したタイムアウト時間を超えたか否かを確認する(ステップS1003)。バンドステアリング禁止タイマ182が該タイムアウト時間を超えていない場合には(ステップS1003のNo)、ステップS1001に復帰して、前記一定時間間隔に達するまで、すなわち、通信部16から子機端末2の通信相手のIPアドレスリストを次回受信するまで待ち合わせる。
【0137】
一方、バンドステアリング禁止タイマ182が該タイムアウト時間に達していた場合には(ステップS1003のYes)、バンドステアリング禁止タイマ182を停止する。しかる後、バンドステアリング実施判断部18は、バンドステアリング実施可否状態181を“禁止”から“許可”の状態に変更する(ステップS1004)。
【0138】
なお、前述の説明においては、子機端末2で使用されているアプリケーションが、無線LANルータ装置1においてバンドステアリングレスポンスを得るまで特定されていない一般的な場合について、説明したが、例えば、特定のゲームサーバとの間で特定アプリケーションを用いて通信を行うゲーム端末の場合のように、無線LANルータ装置1において子機端末2が使用するアプリケーションが、あらかじめ特定されていたり、あるいは、子機端末2が送受信する通信パケットを分析して特定したりすることが可能な場合もある。
【0139】
かかる場合には、無線LANルータ装置1のバンドステアリング実施判断部18は、当該子機端末2との間の無線通信環境が、バンドステアリングを実施する条件を満たし、かつ、当該子機端末2のアプリケーションが通信中の状態にあった場合において、バンドステアリングレスポンス受信部21が受信したバンドステアリングサーバ6からのアプリケーション情報のうち、当該子機端末2が使用しているアプリケーションのアプリケーション名に該当する前記アプリケーション情報を取り出して、当該アプリケーション情報のバンドステアリング許可/禁止情報の状態情報が、バンドステアリングの実施を許可する状態であった場合には、当該子機端末2に対するバンドステアリングの実施命令を、当該子機端末2に対して送信して、バンドステアリングを実施するようにしても構わない。また、かかる場合には、バンドステアリングサーバ6のアプリケーション情報登録データベース61のドメイン名一覧612についても、ドメイン名の登録を行わなくても構わない。
【0140】
一方、前述の第1の実施形態に説明したように、バンドステアリングサーバ6のアプリケーション情報登録データベース61に、子機端末2が使用するアプリケーションの通信相手となる全ての通信先サーバのドメイン名を含むドメイン名一覧612が存在している場合には、無線LANルータ装置1のバンドステアリング実施判断部18は、子機端末2との間の無線通信環境が、当該子機端末2に対するバンドステアリングを実施する条件を満たし、かつ、当該子機端末2のアプリケーションが通信中の状態にある場合において、バンドステアリングレスポンス受信部21が受信した前記アプリケーション情報の前記ドメイン名一覧の中に、当該子機端末2のアプリケーションとの通信相手になる通信先サーバ3のドメイン名が存在していた場合であって、かつ、当該ドメイン名を使用するアプリケーションに関する前記バンドステアリング許可/禁止情報の状態情報が、“許可”を示す状態であった場合には、当該子機端末2に対するバンドステアリングの実施命令を、当該子機端末2に対して送信して、バンドステアリングを実施する。
【0141】
以上に説明したように、本発明の第1の実施形態に係るバンドステアリングシステムにおいては、無線LANルータ装置1は、子機端末2が使用しているアプリケーションが通信中の状態にある時にバンドステアリングを実施すると問題が生じる可能性があるか否かを、バンドステアリングサーバ6に問い合わせることにより、無線LANルータ装置1は、バンドステアリングを子機端末2に対して実施すべきか否かを判断することを実現している。而して、バンドステアリングの実施に伴って子機端末2が通信中のアプリケーションの動作に不具合が生じることを確実に回避することができ、子機端末2のユーザが不快な思いをすることを防止することができる。
【0142】
(第1の実施形態の効果の説明)
以上に詳細に説明したように、本発明の第1の実施形態においては、以下に示すような効果を奏することができる。
【0143】
第1の効果は、子機端末2が使用しているアプリケーションに応じて、アプリケーションの通信中の状態においてバンドステアリングを実施するか否かの判断が、無線LANルータ装置1において確実に行えることである。この判断は、バンドステアリングサーバ6をインターネット網5上に配置し、アプリケーション毎に、アプリケーションの通信中状態においてバンドステアリングの実施の可否を示す情報をそのバンドステアリングサーバ6にあらかじめ登録しておくことにより、可能になる。無線LANルータ装置1は、無線通信環境の変化に応じて、バンドステアリングを実施することが望ましいと判断した際に、当該無線LANルータ装置1に帰属する子機端末2が現在使用しているアプリケーションの通信中にバンドステアリングを実施すると問題が生じる可能性があるか否かを、インターネット網5を介してバンドステアリングサーバ6に問い合わせる。
【0144】
第2の効果は、子機端末2が使用しているアプリケーションに応じて、アプリケーションの通信中の状態においてバンドステアリングを実施するか否かを無線LANルータ装置1が確実に判断することを可能にすることによって、アプリケーションを使用中の状態であっても、バンドステアリングの実施に伴って、子機端末2が使用しているアプリケーションに不具合が発生することを確実に回避することを可能にしていることである。
【0145】
第3の効果は、無線LANルータ装置1内に備えたバンドステアリング実施判断部18が、子機端末2とインターネット網5との間の通信状況をあらかじめ定めた一定時間間隔で定期的に受信して、子機端末2が通信中の状態であるか否か、または、通信中のバンドステアリングが禁止されているアプリケーションの通信が行われたか否かの情報を得ることを可能にすることにある。而して、バンドステアリング実施判断部18が、バンドステアリングを実施するか否かを、容易に判断することを可能にしている。
【0146】
第4の効果は、子機端末2の通信に使われるパケットを分析して、バンドステアリングを実施すべきか否かを判断することができない場合であっても、使用ユーザ数が多い汎用的なアプリケーションに関するアプリケーション情報(アプリケーション名611、通信相手の通信先サーバ3のドメイン名一覧612、バンドステアリング許可/禁止情報613)を登録しているバンドステアリングサーバ6をインターネット網5上に配置し、無線LANルータ装置1が、子機端末2が現在使用しているアプリケーションの通信中にバンドステアリングを実施すると問題が発生する可能性があるか否かをバンドステアリングサーバ6に問い合わせることができるので、無線LANルータ装置1は、バンドステアリングを実施するか否かをより確実に判断することが可能になることである。
【0147】
第5の効果は、無線LANルータ装置1が、無線通信環境の変化に応じて子機端末2に対するバンドステアリングを実施したいタイミングにおいて、子機端末2が現在使用しているアプリケーションの通信中にバンドステアリングを実施すると問題が発生する可能性があるか否かをバンドステアリングサーバ6に問い合わせることができるので、バンドステアリングサーバ6に備えたアプリケーション情報登録データベース61の最新情報を基にして、バンドステアリングを実施するか否かを判断することができることである。
【0148】
第6の効果は、無線LANルータ装置1が、バンドステアリングサーバ6に備えたアプリケーション情報登録データベース61の最新の情報を基にして、バンドステアリングを実施するか否かを判断することができるので、バンドステアリングシステムを構成する無線LANルータ装置1に帰属している複数の子機端末2の間で行われる通信において、一方の子機端末2に対するバンドステアリングの実施が認められる状態にあり、他方の子機端末2に対するバンドステアリングの実施が禁止されている状態にある、といったバンドステアリング許可/禁止の状態の不一致の発生を確実に回避することができることである。
【0149】
(第2の実施形態)
次に、本発明の第2の実施形態に係るバンドステアリングシステムの構成について説明する。本発明の第2の実施形態に係るバンドステアリングシステムの無線LANルータ装置が、第1の実施形態の場合とは異なり、ローカルデータベース151を有するデータベース処理部15を備えていない構成とした場合であっても、子機端末が現在使用しているアプリケーションが通信している最中に当該子機端末に対するバンドステアリングを実施すると問題が発生する可能性があるか否かを判断することを可能にする場合について説明している。ここで、第2の実施形態においては、無線LANルータ装置は、第1の実施形態とは異なり、DNSプロキシ機能を搭載していないものとする。
【0150】
(第2の実施形態の構成例)
まず、本発明の第2の実施形態に係るバンドステアリングシステムの構成例について
図11のシステム構成図を参照して詳細に説明する。
図11は、本発明の第2の実施形態に係るバンドステアリングシステムの構成の一例を示すシステム構成図である。
【0151】
図11のシステム構成図に示すように、本発明の第2の実施形態に係るバンドステアリングシステムは、第1の実施形態の
図2に示したシステム構成図と同様の要素でなり、無線LANルータ装置1A、子機端末2、通信先サーバ3、DNSサーバ4A、インターネット網5、および、バンドステアリングサーバ6を有している。つまり、
図11のバンドステアリングシステムは、無線LANルータ装置1A、DNSサーバ4Aの内部構成が第1の実施形態の
図2の場合とは異なるが、その他の構成要素(すなわち、子機端末2、通信先サーバ3、インターネット網5、および、バンドステアリングサーバ6)については、第1の実施形態の
図2と全く同じ構成であり、
図2と同じ符号を付して示してある。
【0152】
図11の無線LANルータ装置1Aは、前述したように、DNSプロキシ機能を搭載していないので、DNSサーバ4Aは、第1の実施形態の場合とは異なり、IPアドレスからドメイン名を取得するというDNS逆引きの対応を可能な構成とし、かつ、バンドステアリングサーバ6のアプリケーション情報登録データベース61に登録されている各アプリケーションについても全てのIPアドレスからドメイン名へのDNS逆引きが可能であるものとしている。
【0153】
また、無線LANルータ装置1Aは、第1の実施形態の
図2に示した無線LANルータ装置1からデータベース処理部15を削除するとともに、バンドステアリング実施判断部18の代わりに、バンドステアリング実施可否状態181およびバンドステアリング禁止タイマ182を削除した内部構成としたバンドステアリング実施判断部18Aを備えた構成としている。また、無線LANルータ装置1Aは、前述したように、DNSプロキシ機能を搭載していないので、第1の実施形態のDNSクエリ送信部13、DNSレスポンス受信部14の代わりに、DNS逆引き機能を備えたDNSクエリ送信部13A、DNSレスポンス受信部14Aを用いて構成している。
【0154】
すなわち、無線LANルータ装置1Aは、
図11に示すように、WLAN I/F11、WAN I/F12、DNSクエリ送信部13A、DNSレスポンス受信部14A、通信部16、無線通信環境変化検知部17、バンドステアリング実施判断部18A、バンドステアリング命令送信部19、バンドステアリングクエリ送信部20、および、バンドステアリングレスポンス受信部21を含んで構成される。
【0155】
DNSクエリ送信部13Aは、DNS逆引きに対応しており、バンドステアリング実施判断部18Aから通信先サーバ3のIPアドレスを受け取り、DNS逆引きクエリのパケットを生成して、WAN I/F12を介して、DNSサーバ4Aへ送信する。無線LANルータ装置1AからDNS逆引きクエリを受け取ったDNSサーバ4Aは、該DNS逆引きクエリに含まれているIPアドレスに対応するドメイン名を取り出して、DNS逆引きレスポンスとして、無線LANルータ装置1Aに返送する。DNSレスポンス受信部14Aは、DNSサーバ4AからWAN I/F12を介して受け取ったDNS逆引きレスポンスに含まれている通信先サーバ3のドメイン名を取得して、バンドステアリング実施判断部18Aに送信する。なお、バンドステアリング実施判断部18Aの機能については、次に記述する「第2の実施形態の動作例」において詳しく説明する。
【0156】
(第2の実施形態の動作例)
次に、本発明の第2の実施形態に係るバンドステアリングシステムの動作について、無線LANルータ装置1Aにおけるバンドステアリング処理の流れを中心にして、
図12のフローチャートを参照しながら説明する。
図12は、本発明の第2の実施形態に係るバンドステアリングシステムの無線LANルータ装置1Aにおけるバンドステアリングの処理の流れの一例を示すフローチャートである。
【0157】
図12のフローチャートにおいて、無線LANルータ装置1の無線通信環境変化検知部17が無線通信環境の変化を検知してから、子機端末2が通信を行っているか否かをバンドステアリング実施判断部18Aが判断するまでの処理(ステップS1201〜ステップS1203までの処理)は、第1の実施形態として
図6のフローチャートに示したステップS601〜ステップS603までの処理の説明と全く同様であるので、ここでの重複する説明は割愛する。
【0158】
バンドステアリング実施判断部18Aは、通信部16から定期的に取得するIPアドレスリストに基づいて子機端末2が通信中ではないと判断すると(ステップS1203のNo)、バンドステアリングを実施しても問題がないものと判断して、バンドステアリング命令送信部19へ子機端末2に対してバンドステアリング命令を送信するように指示する。バンドステアリング実施判断部18Aからの指示を受け取ったバンドステアリング命令送信部19は、WLAN I/F11を介して、子機端末2へバンドステアリング命令を送信する(ステップS1209)。
【0159】
これに対して、バンドステアリング実施判断部18Aが、通信部16から定期的に取得する前記IPアドレスリストに基づいて子機端末2が通信中であると判断した場合には(ステップS1203のYes)、子機端末2のアプリケーションが通信している通信先サーバ3のドメイン名を取得するために、前記IPアドレスリストからIPアドレスを取得して、DNSクエリ送信部13Aへ送信する。
【0160】
DNSクエリ送信部13Aは、バンドステアリング実施判断部18Aから受け取ったIPアドレスに関するDNS逆引きクエリを作成して、WAN I/F12、インターネット網5を介して、DNSサーバ4Aに送信する(ステップS1204)。ここで、前記IPアドレスリストとして通信先サーバ3のIPアドレスが複数存在していた場合には、IPアドレス毎に、前記DNS逆引きクエリを作成して、WAN I/F12を介して、DNSサーバ4Aに送信する。
【0161】
無線LANルータ装置1Aからの前記DNS逆引きクエリを受け取ったDNSサーバ4Aは、受け取った前記DNS逆引きクエリに含まれているIPアドレスに対応するドメイン名を取り出して、DNS逆引きレスポンスを作成し、前記DNS逆引きクエリの送信元の無線LANルータ装置1Aに対して返信する。
【0162】
無線LANルータ装置1AのDNSレスポンス受信部14Aは、WAN I/F12を介して、DNSサーバ4AからのDNS逆引きレスポンスを受信すると、該DNS逆引きレスポンスに含まれている通信先サーバ3のドメイン名を取得する(ステップS1205)。しかる後、DNSレスポンス受信部14Aは、取得した通信先サーバ3のドメイン名をバンドステアリング実施判断部18Aへ送信する。
【0163】
バンドステアリング実施判断部18Aは、DNSクエリ送信部13Aへ送信した全てのIPアドレスに対応するドメイン名をDNSレスポンス受信部14Aから受信すると、バンドステアリングクエリ送信部20へ全ての通信先サーバ3のドメイン名を送信する。
【0164】
バンドステアリングクエリ送信部20は、バンドステアリング実施判断部18Aから全ての通信先サーバ3のドメイン名を受け取ると、受け取ったドメイン名毎に、通信先サーバ3のドメイン名が使われているアプリケーション情報(すなわち、アプリケーション名、ドメイン名一覧、バンドステアリング許可/禁止情報を少なくとも含む情報)と、子機端末2が当該アプリケーションを使用して通信を行っている最中にバンドステアリングを実施すると問題が発生する可能性があるか否かを示す情報と、を問い合わせるバンドステアリングクエリを作成して、WAN I/F12 を介して、バンドステアリングサーバ6へ送信する(ステップS1206)。つまり、バンドステアリングクエリ送信部20は、複数の通信先サーバ3のドメイン名を受け取った場合は、ドメイン名毎に、WAN I/F12を介して、バンドステアリングサーバ6へバンドステアリングクエリのパケットを送信する。
【0165】
ここで、無線LANルータ装置1Aからのバンドステアリングクエリを受け取ったバンドステアリングサーバ6における、該バンドステアリングクエリの受信から、対応するバンドステアリングレスポンスの送信に至るまで、の処理の流れについては、第1の実施形態の
図8のフローチャートを参照して説明した内容と全く同じであるので、ここでの重複する説明は割愛する。
【0166】
バンドステアリングサーバ6が、バンドステアリングレスポンスを無線LANルータ装置1Aに送信すると、無線LANルータ装置1Aのバンドステアリングレスポンス受信部21は、WAN I/F12を介して、バンドステアリングサーバ6からの該バンドステアリングレスポンスを受信する(ステップS1207)。
【0167】
バンドステアリングレスポンス受信部21は、受信した該バンドステアリングレスポンスのパケットを解析し、解析の結果、子機端末2の通信相手である通信先サーバ3のドメイン名がバンドステアリングサーバ6に登録されていない場合は、その旨をバンドステアリング実施判断部18Aへ通知する。
【0168】
一方、解析の結果、子機端末2の通信相手である通信先サーバ3のドメイン名がバンドステアリングサーバ6に登録されている場合には、バンドステアリングレスポンス受信部21は、通信先サーバ3のドメイン名がバンドステアリングサーバ6に登録されている旨をバンドステアリング実施判断部18Aへ通知する。さらに、バンドステアリングレスポンス受信部21は、受信した該バンドステアリングレスポンスに含まれているバンドステアリング許可/禁止に関する情報を取り出して、バンドステアリング実施判断部18Aへ通知する。
【0169】
バンドステアリング実施判断部18Aは、バンドステアリングクエリ送信部20へ送信した全てのドメイン名に対応するバンドステアリングレスポンスを解析した結果を、バンドステアリングレスポンス受信部21から受信すると、全てのバンドステアリングレスポンスの解析結果の中から、アプリケーション通信中のバンドステアリングの実施が禁止されているアプリケーションが存在するか否かを確認する(ステップS1208)。
【0170】
該解析結果において、アプリケーション通信中のバンドステアリングの実施が禁止されているアプリケーションが存在している場合には(ステップS1208のYes)、バンドステアリング実施判断部18Aは、現在はバンドステアリングを実施するタイミングとしてふさわしくないと判断し、バンドステアリングを実施しない。
【0171】
一方、該解析結果において、アプリケーション通信中のバンドステアリングの実施が禁止されているアプリケーションが一つも存在していない場合には(ステップS1208のYes)、バンドステアリング実施判断部18Aは、現在は、子機端末2が使用しているアプリケーションの通信中にバンドステアリングの実施が禁止されているアプリケーションが存在していない状況であるので、バンドステアリングを実施しても問題がないと判断して、バンドステアリング命令送信部19へ子機端末2に対してバンドステアリング命令を送信するように指示する。該指示を受け取ったバンドステアリング命令送信部19 は、WLAN I/F11 を介して、子機端末2へバンドステアリング命令を送信する(ステップS1209)。
【0172】
以上のような処理を行うことにより、無線LANルータ装置1Aは、バンドステアリングを子機端末2へ実施することが可能であるか否かを判断して、可能な場合に、子機端末2に対するバンドステアリングを実施することができる。すまわち、
図11に示したように、第1の実施形態に記載したようなローカルデータベース151を保持していない内部構成であっても、無線LANルータ装置1Aは、子機端末2へバンドステアリングを実施したいタイミングにおいて、通信部16からのIPアドレスリストを用いて、DNS逆引き機能によって通信先サーバ3のドメイン名を取得することが可能である。而して、取得した該ドメイン名を用いて、子機端末2が使用しているアプリケーションが通信中にバンドステアリングを実施すると問題が発生する可能性があるか否かをバンドステアリングサーバ6に問い合わせた結果を得ることができ、子機端末2に対するバンドステアリングの実施の可否を決定することができる。
【0173】
(第3の実施形態)
次に、本発明の第3の実施形態に係るバンドステアリングシステムの構成について説明する。本発明の第3の実施形態に係るバンドステアリングシステムにおいては、第1、第2の実施形態の場合とは異なり、バンドステアリングサーバ内に備えたアプリケーション情報登録データベースの登録内容について、子機端末を使用するユーザの要望を反映することを可能にしている。
【0174】
つまり、第1、第2の実施形態の場合は、バンドステアリングサーバ内のアプリケーション情報登録データベースに登録したアプリケーション情報の登録内容は、当該バンドステアリングサーバの管理者の判断に基づいて更新することにしている。これに対して、本第3の実施形態においては、子機端末を操作するユーザが該アプリケーション情報の登録内容を参照することを可能にし、参照結果に基づいて当該ユーザが該アプリケーション情報の登録内容の更新を要望することを可能にしている。本第3の実施形態においては、例えば、子機端末を操作するユーザが、該登録内容の参照結果に基づいて、或るアプリケーションの通信中のバンドステアリングの実施に関して“許可”の状態から“禁止”の状態への更新を要望することを可能にしている。
【0175】
(第3の実施形態の構成例)
まず、本発明の第3の実施形態に係るバンドステアリングシステムの構成例について
図13のシステム構成図を参照して詳細に説明する。
図13は、本発明の第3の実施形態に係るバンドステアリングシステムの構成の一例を示すシステム構成図である。
【0176】
図13のシステム構成図に示すように、本発明の第3の実施形態に係るバンドステアリングシステムは、第1の実施形態の
図2に示したシステム構成図と同様、無線LANルータ装置1、子機端末2、通信先サーバ3、DNSサーバ4、インターネット網5、および、バンドステアリングサーバ6Aを、含んで構成されている。つまり、
図13のバンドステアリングシステムは、バンドステアリングサーバ6Aの内部構成が第1の実施形態の
図2の場合とは異なるが、その他の構成要素(すなわち、無線LANルータ装置1、子機端末2、通信先サーバ3、DNSサーバ4、および、インターネット網5)については、第1の実施形態の
図2と全く同じ構成であり、
図2と同じ符号を付して示している。
図2と同じ符号を付した構成要素については、ここでの重複する説明を割愛する。なお、本第3の実施形態においては、バンドステアリングサーバ6A以外のその他の構成要素を、第2の実施形態の
図11の場合と同様の構成要素を用いて構成しても構わない。
【0177】
図13に示すように、本第3の実施形態に係るバンドステアリングサーバ6Aは、アプリケーション情報登録データベース61A、Webサイト62およびユーザ要望集計部63を少なくとも備えて構成される。
【0178】
アプリケーション情報登録データベース61Aの内部構成を、
図14のテーブルを参照して説明する。
図14は、本発明の第3の実施形態に係るバンドステアリングシステムのバンドステアリングサーバ6Aに備えられるアプリケーション情報登録データベース61Aの登録内容の一例を示すテーブルである。
【0179】
図14に示すように、アプリケーション情報登録データベース61Aは、第1の実施形態の
図7に示したアプリケーション情報登録データベース61と同様のアプリケーション名611、ドメイン名一覧612、バンドステアリング許可/禁止情報613の各登録項目に関する記憶領域を含んでいる他に、さらに、ユーザ要望数614に関する情報の記憶領域を追加して構成される。以下に、第1の実施形態と同様のアプリケーション名611、ドメイン名一覧612、バンドステアリング許可/禁止情報613の登録内容に関する説明は割愛し、新たに追加したユーザ要望数614について説明する。
【0180】
ユーザ要望数614は、アプリケーション毎に、アプリケーション情報登録データベース61Aに登録されているアプリケーション情報の更新を要望する子機端末2のユーザ数(更新要望の件数)を登録する。例えば、指定したアプリケーション名に関するバンドステアリング許可/禁止情報613の登録内容を更新して、アプリケーション通信中に子機端末2に対してバンドステアリングを実施しても問題がないというアプリケーションに関して、バンドステアリングの実施を“許可”の状態から“禁止”の状態に変更することを要望している子機端末2の個数を集計した結果をユーザ要望数614に登録する。
【0181】
以下に、アプリケーション情報登録データベース61Aのアプリケーション情報に関する登録項目のうち、バンドステアリング許可/禁止情報613の登録内容に着目して詳細に説明する。本第3の実施形態においては、バンドステアリングサーバ6Aは、或るアプリケーションのバンドステアリング許可/禁止情報613の登録内容に関する子機端末2のユーザからの更新要望の件数があらかじめ設定した閾値以上に多い場合には、当該アプリケーションの通信中におけるバンドステアリングの実施に伴って通信の切断が生じると、当該アプリケーションの動作に不具合が生じるアプリケーションであると判断する。したがって、バンドステアリングサーバ6Aは、アプリケーション情報登録データベース61Aのバンドステアリング許可/禁止情報613の登録内容を“許可”の状態から“禁止”の状態に変更する。
【0182】
ここで、バンドステアリング許可/禁止情報613の登録内容が“禁止”の状態に設定されているアプリケーションに関しては、ユーザからの要望の集計は行わないことが望ましい。つまり、たとえ、ユーザからの要望として、“禁止”から“許可”の状態への更新の要望件数が多くなったとしても、当該アプリケーションの通信中におけるバンドステアリングの実施を“禁止”の状態から“許可”の状態に変更することはできないようにすることが望ましい。その理由は、元々、アプリケーションの通信中のバンドステアリングの実施を“禁止”としているアプリケーションに関しては、通信中のバンドステアリングの実施に伴って、アプリケーションの動作に不具合が発生する可能性があるアプリケーションとされているためである。
【0183】
次に、Webサイト62について説明する。Webサイト62は、インターネット網5を介して、子機端末2を操作するユーザが、バンドステアリングサーバ6Aのアプリケーション情報登録データベース61Aに登録されているアプリケーション情報を閲覧することを可能にするためのWebサイトである。子機端末2を操作するユーザは、バンドステアリングサーバ6AのWebサイト62へアクセスすることによって、バンドステアリングサーバ6Aのアプリケーション情報登録データベース61Aに登録されているアプリケーション情報の登録内容をWeb画面上に画面表示して閲覧することができる。
【0184】
ここで、子機端末2のユーザが、Webサイト62により閲覧することが可能なアプリケーション情報登録データベース61Aのアプリケーション情報の項目に関して、全てではなく、一部のみに制限するようにしても良い。例えば、
図15に示すように、
図14のアプリケーション情報登録データベース61Aのアプリケーション情報の登録項目のうち、ドメイン名一覧612を除いた、アプリケーション名611、バンドステアリング許可/禁止情報613、ユーザ要望数614の3つの項目を、Web画面上に画面表示して閲覧することが可能な項目とするように制限しても良い。
図15は、本発明の第3の実施形態に係るバンドステアリングシステムのバンドステアリングサーバ6Aに備えたアプリケーション情報登録データベース61Aの登録項目のうち、Webサイト62を利用して子機端末2のユーザが閲覧することが可能な項目の一例を示すテーブルである。
【0185】
子機端末2を操作するユーザは、バンドステアリングサーバ6AのWebサイト62にアクセスして、例えば、
図15に示したようなアプリケーション名611、バンドステアリング許可/禁止情報613、ユーザ要望数614の3つの項目をWeb画面上に画面表示して閲覧することができる。そして、閲覧した結果に基づいて、子機端末2のユーザは、アプリケーション情報登録データベース61Aに登録されているアプリケーション情報の更新を要望するか否かを判断することができる。その結果、例えば、当該子機端末2がアプリケーションの通信中に当該子機端末2に対してバンドステアリングを実施しても問題がないとされていたアプリケーション(例えば、
図15の場合の“音楽アプリ”)に関して、バンドステアリングの実施を“許可”の状態から“禁止”の状態へアプリケーション情報登録データベース61Aの登録内容を更新する要望を、バンドステアリングサーバ6Aに対して送信することが可能である。
【0186】
なお、アプリケーション情報登録データベース61Aの登録内容の更新要望、例えば、バンドステアリングの実施を“許可”の状態から“禁止”の状態へ更新する更新要望を送信する手段に関しては、例えば、Webサイト62を利用して閲覧することができるWeb画面上にアプリケーション毎やさらには登録項目毎に「要望」ボタンを備える、といった手段を用いても良い。Webサイト62を介してユーザの更新要望を受け付けた場合、該更新要望を、アプリケーション情報登録データベース61Aのユーザ要望数614へ反映するために、ユーザ要望集計部63を起動する。
【0187】
次に、ユーザ要望集計部63について説明する。ユーザ要望集計部63は、Webサイト62を介してユーザの更新要望を受け付けた場合、該更新要望を、アプリケーション情報登録データベース61Aのユーザ要望数614へ反映する。そして、アプリケーション情報登録データベース61Aのユーザ要望数614の集計結果とあらかじめ設定された閾値との比較を行い、ユーザ要望数614の集計結果が該閾値以上に多くなった場合には、該当するアプリケーション情報登録データベース61Aの登録内容を、更新要望に従って更新する。例えば、更新要望がバンドステアリングの実施を“禁止”の状態へ更新する要望であった場合には、アプリケーション情報登録データベース61Aのバンドステアリング許可/禁止情報613の状態情報を“許可”の状態から“禁止”の状態に変更して、以降、該当するアプリケーションの通信中におけるバンドステアリングの実施を禁止する。
【0188】
なお、前記閾値は、任意の値を用いることが可能であり、例えば、ユーザ要望数614の集計結果が、あらかじめ定めた一定値を用いても良い。あるいは、バンドステアリングサーバ6Aが各アプリケーションのダウンロード数を知る手段を備えるようにして、ユーザ要望数614の集計結果と該ダウンロード数との割合を求め、該割合を、前記閾値としてあらかじめ定めた一定の割合と比較するようにしても良い。
【0189】
(第3の実施形態の動作例)
次に、本発明の第3の実施形態に係るバンドステアリングシステムの動作について、バンドステアリングサーバ6Aにおけるアプリケーション情報登録データベース61Aの登録内容の変更処理の流れを中心にして、
図16を参照しながら説明する。
図16は、本発明の第3の実施形態に係るバンドステアリングシステムのバンドステアリングサーバ6Aにおけるアプリケーション情報登録データベース61Aの登録内容の変更処理の流れの一例を示すフローチャートである。ここで、
図16のフローチャートは、子機端末2のユーザからの更新要望数に応じてアプリケーション情報登録データベース61Aのバンドステアリング許可/禁止情報613の状態情報を“許可”の状態から“禁止”の状態に変更する場合を例にして説明している。
【0190】
図16のフローチャートにおいて、子機端末2を操作しているユーザは、バンドステアリングサーバ6AのWebサイト62にアクセスして、当該子機端末2において実行されるアプリケーションに関するアプリケーション情報登録データベース61Aの登録内容をWeb画面上に表示する。該Web画面を閲覧した結果に基づいて、子機端末2のユーザは、当該子機端末2において実行されるアプリケーションの通信中に、当該子機端末2に対してバンドステアリングを実施しても問題がないとされていた状態から、通信中のバンドステアリングを禁止する状態に変更したいと判断する。
【0191】
そこで、子機端末2のユーザは、当該子機端末2を操作して、当該子機端末2において実行されるアプリケーションに関して、該アプリケーションの通信中にはバンドステアリングの実施を“許可”から“禁止”の状態に変更して欲しいという更新要望を、Webサイト62に送信する。バンドステアリングサーバ6AのWebサイト62は、当該子機端末2のユーザからの更新要望を受信すると(ステップS1601)、Webサイト62は、その旨をユーザ要望集計部63へ通知する。ユーザ要望集計部63は、ユーザからの更新要望を受け取ると、アプリケーション情報登録データベース61Aのユーザ要望数614の更新要望件数(総ユーザ要望数)を更新する(ステップS1602)。
【0192】
しかる後、ユーザ要望集計部63は、アプリケーション情報登録データベース61Aのユーザ要望数614の更新要望件数(総ユーザ要望数)を参照し、該更新要望件数(総ユーザ要望数)があらかじめ設定した閾値以上に達したか否かを確認する(ステップS1603)。更新要望件数(総ユーザ要望数)が該閾値よりも少ない場合は(ステップS1603のNo)、アプリケーション情報登録データベース61Aの登録内容の更新は行わない。しかし、更新要望件数(総ユーザ要望数)が該閾値以上に達した場合には(ステップS1603のYes)、ユーザ要望集計部63は、アプリケーション情報登録データベース61Aの該当アプリケーションに関するバンドステアリング許可/禁止情報613の状態情報を“許可”の状態から“禁止”の状態に変更する(ステップS1604)。
【0193】
以上のような処理を行うことによって、実際に、子機端末2にてアプリケーションを操作しているユーザの要望に応じて、バンドステアリングサーバ6Aのアプリケーション情報登録データベース61Aの登録内容を更新することができる。つまり、実際に、アプリケーションを使用しているユーザの経験を基にして、アプリケーション情報登録データベース61Aの登録内容を更新していくことができる。而して、アプリケーション通信中のバンドステアリングの実施が許可されるという設定が元々なされていたアプリケーションであっても、バンドステアリングの実施に伴って実際に生じていたアプリケーションの動作の不具合に対する多数のユーザの不快な思いを解消することができる。
【0194】
以上、本発明の好適な実施形態の構成を説明した。しかし、かかる実施形態は、本発明の単なる例示に過ぎず、何ら本発明を限定するものではないことに留意されたい。本発明の要旨を逸脱することなく、特定用途に応じて種々の変形変更が可能であることが、当業者には容易に理解できよう。