(57)【要約】【課題】サーバの処理負荷を削減でき、処理性能が向上する【解決手段】送受信部と記憶部と抽出部と指示部と作成部とを備える。送受信部は、ネットワークを介してサーバへの要求メッセージを送信、及びサーバからの応答メッセージを受信する。記憶部は、複数の通信装置に割り当てられている識別子、及び通信装置の識別子を含む識別情報を記憶する。抽出部は、受信した応答メッセージから通知情報及びコマンドを抽出する。指示部は、抽出された通知情報に応じてコマンドを指示する。作成部は、通知情報に応じて識別情報を含む要求メッセージを作成する。【選択図】  図２
2012216023.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介してサーバへの要求メッセージを送信、及びサーバからの応答メッセージを受信する送受信部と、
複数の通信装置に割り当てられている識別子、及び通信装置の識別子を含む識別情報を記憶した記憶部と、
受信した前記応答メッセージから通知情報及びコマンドを抽出する抽出部と、
抽出された前記通知情報に応じて前記コマンドを指示する指示部と、
前記通知情報に応じて前記識別情報を含む要求メッセージを作成する要求作成部とを具備することを特徴とする通信装置。
【請求項２】
前記通知情報はサーバから通信装置を選別する選別情報を含み、
更に、前記選別情報から記憶部に記憶された前記識別情報が割り当てされているか否かを判断する判断部を具備し、
前記送受信部は、前記判断部の判断結果に応じて前記要求メッセージをサーバに送信することを特徴とする請求項１記載の通信装置。
【請求項３】
前記要求メッセージ及び前記応答メッセージはＤＮＳプロトコルを用いることを特徴とする請求項１乃至２のいずれか一つの通信装置。
【請求項４】
前記選別情報はハッシュ値を用いることを特徴とする請求項１乃至３いずれか一項の通信装置。
【請求項５】
前記選別情報はブルームフィルタを用いることを特徴とする請求項１乃至３いずれか一項の通信装置。
【請求項６】
サーバとネットワークを介して接続するコンピュータを、
ネットワークを介してサーバへの要求メッセージを送信、及びサーバからの応答メッセージを受信する送受信部と、
複数の通信装置に割り当てられている識別子、及び通信装置の識別子を含む識別情報を記憶した記憶部と、
受信した前記応答メッセージから通知情報及びコマンドを抽出する抽出部と、
抽出された前記通知情報に応じて前記コマンドを指示する指示部と、
前記通知情報に応じて前記識別情報を含む要求メッセージを作成する要求作成部として機能させるための通信プログラム。
【請求項７】
ネットワークを介して通信装置とサーバとが接続された通信システムにおいて、
前記通信装置は、
ネットワークを介して前記サーバへの要求メッセージを送信、及び前記サーバからの応答メッセージを受信する送受信部と、
複数の通信装置に割り当てられている識別子、及び通信装置の識別子を含む識別情報を記憶した記憶部と、
受信した前記応答メッセージから通知情報及びコマンドを抽出する抽出部と、
抽出された前記通知情報に応じて前記コマンドを指示する指示部と、
前記通知情報に応じて前記識別情報を含む要求メッセージを作成する要求作成部とを具備し、
前記サーバは、
ネットワークを介して前記通信装置からの要求メッセージを受信、及び前記通信装置への応答メッセージを送信する送受信部と、
前記通信機器の識別情報に関連付けて前記通知情報と前記通信機器を動作させるコマンドと動作させるとを記憶するデータキャッシュと、
受信した前記要求メッセージに含まれる識別情報が前記データキャッシュに記憶されているか否かを解析する解析部と、
前記解析部の解析結果に応じてデータベースから識別情報を取得し、前記データキャッシュに記憶させるデータアクセス部と、
前記解析部の解析結果に応じて、前記データキャッシュに記憶された前記識別情報と、当該識別情報に対応づけた前記コマンドとを含む応答メッセージを作成する応答作成部とを具備することを特徴とする通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介してサーバとメッセージを送受信する通信装置に通信プログラム、及び通信システム関わる。
【背景技術】
【０００２】
近年、様々な端末（例えば、ＰＣ・携帯電話・家電など）が数多くインターネットに接続され、インターネット上のサーバからと通信することによりサービスを実現している。また、今後はスマートグリッドにおけるスマートメータのような新しい機器もインターネットに接続され、インターネット上のサーバと通信することで新たなサービスが実現されると期待されている。サーバは、多数の端末と通信を行うため、一般にその処理負荷が高くなる傾向があり、そのサーバの負荷を下げるための工夫がこれまでも種々の提案がなされている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−２０３８５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
サーバの処理性能を向上させるこれまでの提案は、データキャッシュを用いている。これは、一度処理された結果をデータキャッシュに残し再利用することで処理負荷を削減できるという経験則に基づいている。しかしながら、データキャッシュを用いた手法の処理性能は、端末からのサーバへの問い合わせパターンに依存する。例えば、端末からサーバへの問い合わせが、キャッシュ内に存在しないデータに関するものである場合、サーバの処理性能は向上せず、一般的にはデータキャッシュに関わる処理の分だけサーバの処理性能は低下する。
【課題を解決するための手段】
【０００５】
実施形態の通信装置は、送受信部と記憶部と抽出部と指示部と作成部とを備える。送受信部は、ネットワークを介してサーバへの要求メッセージを送信、及びサーバからの応答メッセージを受信する。記憶部は、複数の通信装置に割り当てられている識別子、及び通信装置の識別子を含む識別情報を記憶する。抽出部は、受信した応答メッセージから通知情報及びコマンドを抽出する。指示部は、抽出された通知情報に応じてコマンドを指示する。作成部は、通知情報に応じて識別情報を含む要求メッセージを作成する。
【図面の簡単な説明】
【０００６】
【図１】一実施形態のシステムを示す図。
【図２】通信装置の構成図。
【図３】サーバの構成図。
【図４】通信装置の処理の流れを示すフローチャート。
【図５】通信装置とサーバとのシーケンス図。
【図６】通信装置の構成図。
【図７】通信装置の処理の流れを示すフローチャート。
【図８】通信装置とサーバとのシーケンス図。
【図９】一実施形態のシステムを示す図。
【図１０】通信装置の処理の流れを示すフローチャート。
【図１１】通信装置とサーバとのシーケンス図。
【図１２】通信装置の処理の流れを示すフローチャート。
【図１３】通信装置とサーバとのシーケンス図。
【発明を実施するための形態】
【０００７】
図を用いて実施形態を説明する。
（第１の実施形態）
図１は、第１の実施形態のシステムの構成を示す図である。複数の通信装置１００がネットワーク３００を介してサーバ２００に接続しており、サーバ２００はデータベース４００と接続している。通信装置１００は、例えばＨＴＴＰにてサーバ２００へ要求メッセージを送信すると、サーバ２００はその処理の一部としてデータベース４００を使用し、通信装置に応答メッセージを送信する。サーバ２００がデータベース４００を検索する際には、予めサーバ内に構成されたデータキャッシュを検索し、データキャッシュに検索すべきデータが存在する場合には、データキャッシュ中のデータを使用し、データキャッシュにデータが存在しない場合には、データベース４００からデータを検索し、そのデータを用いて通信装置１００に応答メッセージを送信する。
【０００８】
図２は、第１の実施形態の通信装置１００の構成図である。通信装置１００は、送受信部１０１、記憶部１０２、指示部１０３、抽出部１０４、及び要求作成部１０５から構成されている。
【０００９】
送受信部１０１は、ネットワークを介して接続したサーバへ要求メッセージを送信し、この要求メッセージに応答した応答メッセージをサーバから受信する。記憶部１０２は、複数の通信装置１００を１つに割り当てられた識別子、及び通信装置１００に割り当てられた識別子で示される識別情報を記憶する。要求メッセージは、識別情報を含むメッセージであり、応答メッセージは、通信装置に設定したい動作有無を示す「動作設定あり」、「動作設定なし」や通信装置を絞り込む要求を示す「絞り込み要求」等を含む通知情報、及び通信装置に設定したい動作を示すコマンドを含むメッセージである。抽出部１０４は、送受信部１０１で受信した応答メッセージから通知情報及びコマンドを抽出する。指示部１０３は、抽出部１０４から抽出した通知情報に応じてコマンドに示される動作をするように該当する機能に指示する。例えば、通知情報が「動作設定あり」の場合には、抽出したコマンドに示される動作を指示する。要求作成部１０５は、抽出部１０４から抽出した通知情報に応じて記憶部１０２に記憶する識別情報を含む要求メッセージを作成する。例えば、通知情報が「絞り込み要求」の場合は、動作を設定したい通信機器の識別情報を含む要求メッセージを作成する。
【００１０】
図３は、第１の実施形態のサーバ２００の構成図である。サーバ２００は、送受信部２０１、データキャッシュ２０２、要求解析部２０３、データアクセス部２０４、及び応答作成部２０５から構成されている。
【００１１】
送受信部２０１は、ネットワークを介して接続した通信装置１００からの要求メッセージを受信し、この要求メッセージに応答する応答メッセージを通信装置１００に送信する。データキャッシュ２０２は、識別情報（通信装置に割り当てられる識別子、又は複数の通信装置を１つに割り当てられた識別子）に関連付けて通知情報及びコマンドを記憶する。要求解析部２０３は、送受信部２０１で受信した要求メッセージに含まれる識別情報がデータキャッシュ２０２に記憶されているか否かを解析する。データアクセス部２０４は、要求解析部２０３で解析した結果、要求メッセージに含まれる識別情報がデータキャッシュ２０２に記憶されていない場合には、データベース４００にアクセスして識別情報と関連付けて通知情報及びコマンドをデータキャッシュ２０２に記憶させる。応答作成部２０５は、要求解析部２０３の解析結果に応じて、データキャッシュ２０２に記憶された識別情報に関連付けた通知情報及びコマンド情報を含む応答メッセージを作成する。例えば、要求メッセージに含まれる識別情報がデータキャッシュ２０２に記憶されている場合に、その識別情報に関連づけられた「動作設定あり」の通知情報や「運転開始」のコマンドを含めた応答メッセージを作成する。
【００１２】
図４に示す通信装置１００のフローチャートを用いて通信装置１００の処理の流れを説明する。
送受信部１０１は、識別情報（複数の通信装置に予め割り当てられた識別子等）を含む要求メッセージをサーバ２００に送信し（Ｓ４０１）、サーバ２００は受信した要求メッセージに含まれる識別情報から通信装置１００を識別し、その通信装置１００に対する応答メッセージをその通信装置１００に送信する。サーバ２００が通信装置１００に応答メッセージを送信する際には、識別情報をキーにデータキャッシュを検索し、識別情報と関連付けられたデータがある場合には、データキャッシュ内のそのデータを基に応答メッセージを作成する（データキャッシュ以外のデータが必要な場合にはデータベースのアクセスを行っても良い）。識別情報として例えば通信装置１００自身のＭＡＣアドレス、ＦＱＤＮ名、製品シリアル番号、製品モデル番号などがある。
【００１３】
送受信部１０１は、サーバが送信した応答メッセージを受信し（Ｓ４０２）、抽出部１０４は、受信した応答メッセージから通知情報及びコマンドを抽出する。抽出した通知情報に「動作設定あり」を含む場合（Ｓ４０３（Ｙｅｓ））、指示部１０３は、抽出したコマンドに示される動作を指示し（Ｓ４０４）、次の要求メッセージ送信まで待機する（Ｓ４０６）。抽出した通知情報に「動作設定あり」を含まず（Ｓ４０３（Ｎｏ））、「動作設定なし」を含む場合（Ｓ４０５（Ｙｅｓ））も同様に、次の要求メッセージ送信まで待機する（Ｓ４０６）。抽出した通知情報に「動作設定のあり／なし」が含まず（Ｓ４０５（Ｎｏ））、「絞り込み要求」を含む場合には、この「絞り込み要求」に応じて記憶部に記憶された識別情報（通信装置に予め割り当てられた識別子）を含む要求メッセージを作成する（Ｓ４０７）。更に、送受信部１０１は、要求作成部１０５で作成した要求メッセージをサーバ２００に送信する（Ｓ４０１）。
【００１４】
ここで、図５に示すシーケンス図を用い、通信装置としてエアコン用いた例で動作を説明する。図５（ａ）は応答メッセージが「動作設定なし」の通知情報を含む時のシーケンスを示しており、（ｂ）は更に「絞り込み要求」及び「動作設定あり」の通知情報を含む時のシーケンスを示している。
【００１５】
エアコンは（運転開始、運転停止、運転モード設定（省エネ運転ＯＮ、省エネ運転ＯＦＦ））のコマンドをサーバから受け付ける。
１．各エアコン（通信装置０、１）は、定期的（例えば１時間毎）にサーバに要求メッセージを送信する。このとき要求メッセージに含まれる識別情報は、「地域」であり、具体例としては「地域Ａ」である（この地域Ａは電力供給組織の管理地域区分と一致しているとなおよい）。
【００１６】
２．サーバはこの要求メッセージに対し、「地域Ａ」のエアコンに対して以下（１）〜（３）いずれかの応答メッセージを送信する。
（１）一律に設定したい動作が有る場合には、それを含む応答メッセージをエアコンに送信する。例えば「動作設定あり」の通知情報、「運転モード設定（省エネ運転ＯＮ）」のコマンドを含む応答メッセージを送信する。
【００１７】
（２）全ての「地域Ａ」のエアコンに対して、設定したい動作がない場合には、「動作設定なし」の通知情報を含む応答メッセージをエアコンに送信する。
（３）「地域Ａ」の一部のエアコンに対して、設定したい動作がある場合は、「絞り込み要求」の通知情報を含む応答メッセージをエアコンに送信する。
３．エアコンは、「絞り込み要求」の通知情報を含む応答メッセージを受信すると、より詳細な識別情報（例えば、「地域Ａ」「製品モデル番号：ＡＢＣ」）を含む要求メッセージをサーバに送信する。
【００１８】
４．サーバは同様にして「地域Ａ」の「製品モデル番号：ＡＢＣ」のエアコンに対して「動作設定なし」の通知情報、或いは「地域Ａ」の「製品モデル番号：ＸＹＺ」のエアコンに対して「動作設定あり」の通知情報、及び設定したい動作「運転開始」のコマンド、或いは「絞り込み要求」（更に一部のエアコンに対して設定した動作が有る場合）の通知情報を含む応答メッセージをエアコンに送信する。
【００１９】
５．上述のシーケンスをサーバと通信装置の間で続けることにより、通信装置は「動作設定あり」、或いは「動作設定なし」のいずれかの応答メッセージを受け取ることができる。  （通信装置は一意に割り当てられた識別子をサーバに送信すると、サーバは必ず「動作設定あり」、或いは「動作設定なし」のどちらかを含めた応答メッセージを送信する。）
【００２０】
このように、通信装置はサーバへ、複数の通信装置に割り当てられている識別子を含む要求メッセージを送信することで、データキャッシュのヒット率を上げることができる。特に、スマートグリッドの電力制御のようにある一群の通信装置に同一動作を設定する場合において効果的である。
【００２１】
（第２の実施形態）
第１の実施形態では、識別情報を用いて通信装置の選別を行っていたが、サーバから通信装置の選別を行うようにしてもよい。
図６は、第２の実施形態の通信装置１００の構成図である。通信装置１００は、送受信部１０１、記憶部１０２、指示部１０３、抽出部１０４、要求作成部１０５、及び判断部１０６から構成されている。
【００２２】
送受信部１０１は、ネットワークを介して接続したサーバへ要求メッセージを送信し、この要求メッセージに応答した応答メッセージをサーバから受信する。記憶部１０２は、複数の通信装置１００を１つに割り当てられた識別子、及び通信装置１００に割り当てられた識別子で示される識別情報を記憶する。要求メッセージは、識別情報を含むメッセージであり、応答メッセージは、通信装置に設定したい動作有無を示す「動作設定あり」、「動作設定なし」やサーバから通信装置を選別する選別情報等を含む通知情報、及び通信装置に設定したい動作を示すコマンドを含むメッセージである。抽出部１０４は、送受信部１０１で受信した応答メッセージから通知情報及びコマンドを抽出する。指示部１０３は、抽出部１０４から抽出した通知情報に応じてコマンドに示される動作をするように該当する機能に指示する。例えば、通知情報が「動作設定あり」の場合には、抽出したコマンドに示される動作を指示する。判断部１０６は、通知情報に含まれる選別情報から記憶部１０２に記憶された識別情報が割り当てられているか否かを判断する。要求作成部１０５は、抽出部１０４から抽出した通知情報に応じて記憶部１０２に記憶する識別情報を含む要求メッセージを作成する。例えば、通知情報に含まれる「動作設定あり」の場合は、動作を設定したい通信機器の識別情報を含む要求メッセージを作成する。送受信部１０１は、判断部１０６の判断結果に応じて要求作成部１０５で作成した要求メッセージをサーバ２００に送信する。例えば、選別情報から記憶部１０２に記憶された識別情報が割り当てられている場合には、要求メッセージを送信し、割り当てられていない場合には要求メッセージを送信しない。
【００２３】
図７に示す通信装置１００のフローチャートを用いて通信装置１００の処理の流れを説明する。
送受信部１０１は、識別情報（複数の通信装置に予め割り当てられた識別子等）を含む要求メッセージをサーバ２００に送信し（Ｓ７０１）、サーバ２００は受信した要求メッセージに含まれる識別情報から通信装置１００を識別し、その通信装置１００に対する応答メッセージをその通信装置１００に送信する。送受信部１０１は、サーバが送信した応答メッセージを受信し（Ｓ７０２）、抽出部１０４は、受信した応答メッセージから通知情報及びコマンドを抽出する。抽出した通知情報に「動作設定あり」を含まない場合（Ｓ７０３（Ｎｏ））、通知情報に「動作設定なし」を含んでおり、次の要求メッセージ送信まで待機する（Ｓ７０７）。通知情報に「動作設定あり」含み（Ｓ７０３（Ｙｅｓ））、選別情報を含まない場合（Ｓ７０４（Ｎｏ））に、指示部１０３は、抽出したコマンドに示される動作を指示し（Ｓ７０５）、次の要求メッセージ送信まで待機する（Ｓ７０７）。判定部１０６で選別情報に記憶部１０２に記憶された識別情報を割り当てられていると判定した場合（Ｓ７０６（Ｙｅｓ））に、応答作成部１０５は、選別情報に割り当てられている識別情報を含む要求メッセージを作成し（Ｓ７０８）、送受信部１０１は、要求作成部１０５で作成した要求メッセージをサーバ２００に送信する（Ｓ７０１）。一方、判定部１０６で選別情報に記憶部１０２に記憶された識別情報を割り当てられていないと判定した場合（Ｓ７０６（Ｎｏ））は、要求メッセージを送信せず、次の要求メッセージ送信まで待機する（Ｓ７０７）。
【００２４】
ここで、図８に示すシーケンス図を用い、通信装置をエアコンとし、選別情報をハッシュ値として用いた例で動作を説明する。識別情報の固有識別子が０〜Ｎ−１の整数とし、ハッシュ値はｍｂｉｔｓ長である。サーバは、割り当てる通信装置の固有識別子をｍで割った余りに対応するビット位置を１とする。例えば、８つの通信装置が有り、各々０〜７の固有識別子が割り当てられており、ハッシュ値が４ｂｉｔｓ長の場合で説明する。サーバは、固有識別子が０と４と５の通信装置を割り当てたい場合、これらを４で割った余り（０，０，１）に対応するビット位置を１として（１，１，０，０）というハッシュ値を得る。
【００２５】
１．各エアコン（通信装置０、１、２）は、定期的（例えば１時間毎）にサーバに要求メッセージを送信する。このとき要求メッセージに含まれる識別情報は、「地域」であり、具体例としては「地域Ａ」である（この地域Ａは電力供給組織の管理地域区分と一致しているとなおよい）。
【００２６】
２．サーバは、ハッシュ値（１，１，０，０）と「動作設定あり」を含む応答メッセージをエアコンに送信する
３．応答メッセージを受信したエアコンは、自身の固有識別子が割り当てられているか否かハッシュ値を用いて判断する。すなわち、自身の固有識別子を４で割った余りの位置のビットが１であるか否かを確認する（１であれば割り当てられていると判断する）。
【００２７】
（１）エアコンは、固有識別子が割り当てられていると判断されれば、次の要求メッセージをサーバに送信する。（この要求メッセージには、「地域Ａ」の「製品モデル番号：ＡＢＣ」のように新たな識別情報を含んでも良いし、あるいは「設定動作要求」のような新たな種類の要求メッセージを送信しても良い）
【００２８】
（２）エアコンは固有識別子が割り当てられていないと判断されれば、次の要求メッセージの送信を行わない
４．サーバは同様にして「地域Ａ」の「製品モデル番号：ＡＢＣ」のエアコンに対して、動作設定したいエアコンに対する選別情報をもとめ、これを含む応答メッセージをエアコンに送信する。
【００２９】
５．上述のシーケンスをサーバと通信装置の間で続けることにより、通信装置は「動作設定あり」、或いは「動作設定なし」のいずれかを含む応答メッセージを受け取ることができる。
【００３０】
また、上述では選別情報としてハッシュ値を用いた実施の形態について説明したが、ハッシュ値を計算する方法以外にも、様々なものが使用できる。別の例を挙げれば、ブルームフィルタを用いることも可能である。ブルームフィルタはｍｂｉｔｓの長さのビット列であり、初期値は全ビットが０である。値が０以上ｍ−１以下をとるハッシュ関数をｋ個用意し、割り当てたい値に対して、ｋ個のハッシュ関数で求めた値の対応するビット位置に１をセットする。例えば、固有識別子が２と３の通信装置を割り当てたい場合で説明する、ｋ＝２、ｍ＝４として、二つのハッシュ関数Ｈ０，Ｈ１を用いて固有識別子のハッシュ値を計算する。例えば、
【００３１】
Ｈ０（２）＝０      Ｈ１（２）＝１
Ｈ０（３）＝１      Ｈ１（３）＝２
だとして、ブルームフィルタは、（１，１，１，０）となる。
一方、通信装置によるブルームフィルタによる識別情報の割り当て判断は、通信装置自身の固有識別子に対してｋ個のハッシュ関数でハッシュ値を求め、夫々の値に対応する位置のビットが１であれば識別情報が割り当てられていると判断される。
【００３２】
例えば、ブルームフィルタが（１，１，１，０）で、固有識別子が２の場合、Ｈ０（２）＝０，Ｈ１（２）＝１となるため、０ビット目と１ビット目の全てが１であるこのブルームフィルタは識別情報を割り当てられている。
【００３３】
選別情報は、偽陽性（割り当てられていない通信装置を割り当てているとして間違う）であっても良いが、偽陰性（割り当てられている通信装置を割り当てられていないとして間違う）であってはならない。上述のハッシュ値の例やブルームフィルタの例はこの条件を満足しており、この条件を満足すれば他の方法を用いて選別情報をもとめても構わない。
【００３４】
ここまで、図４により通知情報に「絞り込み要求」を含む場合と、図７により通知情報に選別情報を含む場合について説明してきたが、通知情報に「絞り込み要求」あるいは「選別情報」のどちらか一つあるいは両方を含む応答メッセージが、一連のサーバと通信装置の間のシーケンスで混在しても良い。
【００３５】
このようにサーバが選別情報を送ることにより、サーバは通信装置からの要求メッセージの受信が少なくなることになり、サーバの負荷を下げることができる。また、選別情報は識別情報に対して同じ値とすることにより、選別情報もデータキャッシュに保持することができ、サーバの負荷を下げることができる。
【００３６】
（第３の実施形態）
図９を用いて第３の実施形態を説明する。図９は、第３の実施形態のシステム構成を示す図である。第１、２の実施形態では、通信装置１００からの問い合わせはすべてサーバ２００に届き、これを背後のデータキャッシュを用いて効率的に処理していた。ここでは、さらにドメインネームサービスシステム６００を用いてサーバの負荷を減らす実施形態について説明する。なお、第１、２の実施形態にて用いたデータキャッシュは本実施形態にても使用可能であるが、重複するのでここでは説明を省略する。
【００３７】
第３の実施形態のシステムは、複数の通信装置１００、サーバ２００、データベース４００、フロントＤＮＳサーバ５００、ドメインネームサーバシステム６００から構成される。ドメインネームサーバシステム６００は、ＩＥＴＦ  ＲＦＣ  １０３５に記されているＤＮＳサーバ群であり、フロントＤＮＳサーバ５００は、例えばＩＳＰが用意するＤＮＳサーバ５００で通信装置１００からのＤＮＳ要求メッセージを受信し、ドメインネームサーバシステム６００と連携して、ＤＮＳ応答メッセージを通信装置に送信するものである。
【００３８】
図１０に示す通信装置１００のフローチャートを用いて通信装置１００の処理の流れを説明する。
通信装置１００の送受信部１０１は、通信装置１００の識別情報を含むＤＮＳ要求メッセージをフロントＤＮＳサーバ５００に送信する（Ｓ１００１）。例えば、通信装置１００はc0.toshiba.co.jpのＴＸＴレコードの名前解決要求をフロントＤＮＳサーバ５００に送信する。ここで、c0は通信装置の識別情報（通信装置の固有識別子）である。フロントＤＮＳサーバ５００は、c0.toshiba.co.jpのＴＸＴレコードの値をそのフロントＤＮＳサーバ５００のキャッシュに記憶していれば、その値を記したＤＮＳ応答メッセージを通信装置１００に送信する。キャッシュに記憶していなければ、toshiba.co.jpのドメインを管理しているＤＮＳサーバを調べる。具体的には、フロントＤＮＳサーバ５００に予め設定されているルートＤＮＳサーバ６０１に、jpドメインを管理しているＤＮＳサーバを問い合わせ、jpドメインを管理しているjpドメインＤＮＳサーバ６０２にco.jpドメインを管理しているco.jp ドメインＤＮＳサーバ６０３を問い合わせ、更にco.jpドメインを管理しているco.jpドメインＤＮＳサーバ６０３にtoshiba.co.jpドメインを管理しているtoshiba.co.jpドメインＤＮＳサーバ６０４を問い合わせることで行う。toshiba.co.jpを管理しているtoshiba.co.jpドメインＤＮＳサーバ６０４をフロントＤＮＳサーバ５００が知ると、c0.toshiba.co.jpのＴＸＴレコードの値をそのtoshiba.co.jpドメインＤＮＳサーバ６０４に問い合わせ、得られた値を記したＤＮＳ応答メッセージを通信装置１００に送信する。（通信装置１００はＴＸＴレコードの値に従い動作を行う）。
【００３９】
送受信部１０１は、ＤＮＳサーバが送信したＤＮＳ応答メッセージを受信し（Ｓ１００２）、抽出部１０４は、受信したＤＮＳ応答メッセージから通知情報及びコマンドを抽出する。抽出した通知情報に「動作設定あり」を含む場合（Ｓ４０３（Ｙｅｓ））、指示部１０３は、抽出したコマンドに示される動作を指示し（Ｓ１００４）、次のＤＮＳ要求メッセージ送信まで待機する（Ｓ４０６）。抽出した通知情報に「動作設定あり」を含まず（Ｓ４０３（Ｎｏ））、「動作設定なし」を含む場合（Ｓ１００５（Ｙｅｓ））も同様に、次の要求メッセージ送信まで待機する（Ｓ１００６）。抽出した通知情報に「動作設定のあり／なし」が含まず（Ｓ１００５（Ｎｏ））、「絞り込み要求」を含む場合には、この「絞り込み要求」に応じて記憶部に記憶された識別情報（通信装置に予め割り当てられた識別子）を含むＤＮＳ要求メッセージを作成する（Ｓ１００７）。更に、送受信部１０１は、要求作成部１０５で作成したＤＮＳ要求メッセージをサーバ２００に送信する（Ｓ１００１）。
【００４０】
この際、フロントＤＮＳサーバ５００は、toshiba.co.jpドメインＤＮＳサーバ６０４からＴＸＴレコードの値と共にＴＴＬ（生存時間）を得る。このＴＴＬはＴＸＴレコードの値をキャッシュする時間を表す。フロントＤＮＳサーバ５００は得られたＴＴＬの時間だけＴＸＴレコードの値をキャッシュに記憶し、それ以降はキャッシュの値を破棄する。このようにＤＮＳを使うことで、通信装置１００からの問い合わせをフロントＤＮＳサーバ５００が自身のキャッシュに記憶する値でサーバ２００に問い合わせることなく通信装置１００にＤＮＳ応答メッセージを送信することができるため、サーバの負荷を軽減することができる。
【００４１】
図１１に示すシーケンス図を用いてシステム構成内の動作を説明する。第３の実施形態においても、第１、２の実施形態と同様に、通信装置は複数の通信装置を割り当てた識別子（識別情報）を用いることができる。例えば、
【００４２】
１．通信装置０がtoshiba.co.jpに対するＤＮＳ要求メッセージを送信する。
２．通信装置０は、「絞り込み要求」を含むＤＮＳ応答メッセージを受信すると、c0. toshiba.co.jpに対するＤＮＳ要求メッセージを送信する。
３．通信装置０は、「動作設定あり」「運転開始」を含むＤＮＳ応答メッセージを受信すると、コマンド「運転開始」を実行する。
４．通信装置１がtoshiba.co.jpに対するＤＮＳ要求メッセージを送信する。
５．通信装置１は、「絞り込み要求」を含むＤＮＳ応答メッセージを受信すると、c0. toshiba.co.jpに対するＤＮＳ要求メッセージを送信する。
６．通信装置１は、「動作設定なし」を含むＤＮＳ応答メッセージを受信すると、次回のＤＮＳ要求メッセージ送信まで待機する。
このように、第１、２の実施形態と第３の実施形態との間では、要求メッセージと応答メッセージのシーケンスにＤＮＳプロトコルを用いる点が異なる。しかしながら、このように複数のクライアントで共有する識別子を用いることで、フロントＤＮＳサーバ５００のキャッシュに保持されるデータのサイズを少なくすることができる。
【００４３】
さらに、第２の実施形態のように選別情報を用いることも可能である。図１２に示す通信装置１００のフローチャートを用いて通信装置１００の処理の流れを説明する。
【００４４】
送受信部１０１は、識別情報（複数の通信装置に予め割り当てられた識別子等）を含むＤＮＳ要求メッセージをサーバ２００に送信し（Ｓ１２０１）、サーバ２００は受信したＤＮＳ要求メッセージに含まれる識別情報から通信装置１００を識別し、その通信装置１００に対するＤＮＳ応答メッセージをその通信装置１００に送信する。送受信部１０１は、サーバが送信したＤＮＳ応答メッセージを受信し（Ｓ１２０２）、抽出部１０４は、受信したＤＮＳ応答メッセージから通知情報及びコマンドを抽出する。抽出した通知情報に「動作設定あり」を含まない場合（Ｓ１２０３（Ｎｏ））、通知情報に「動作設定なし」を含んでおり、次のＤＮＳ要求メッセージ送信まで待機する（Ｓ１２０７）。通知情報に「動作設定あり」含み（Ｓ１２０３（Ｙｅｓ））、選別情報を含まない場合（Ｓ１２０４（Ｎｏ））に、指示部１０３は、抽出したコマンドに示される動作を指示し（Ｓ１２０５）、次のＤＮＳ要求メッセージ送信まで待機する（Ｓ１２０７）。判定部１０６で選別情報に記憶部１０２に記憶された識別情報を割り当てられていると判定した場合（Ｓ１２０６（Ｙｅｓ））に、応答作成部１０５は、選別情報に割り当てられている識別情報を含むＤＮＳ要求メッセージを作成し（Ｓ１２０８）、送受信部１０１は、要求作成部１０５で作成したＤＮＳ要求メッセージをサーバ２００に送信する（Ｓ１２０１）。一方、判定部１０６で選別情報に記憶部１０２に記憶された識別情報を割り当てられていないと判定した場合（Ｓ１２０６（Ｎｏ））は、ＤＮＳ要求メッセージを送信せず、次のＤＮＳ要求メッセージ送信まで待機する（Ｓ１２０７）。
【００４５】
ここで、図１３に示すシーケンス図を用い、通信装置をエアコンとし、選別情報をハッシュ値として用いた例で動作を説明する。識別情報の固有識別子が０〜Ｎ−１の整数とし、ハッシュ値はｍｂｉｔｓ長である。サーバは、割り当てる通信装置の固有識別子をｍで割った余りに対応するビット位置を１とする。例えば、８つの通信装置が有り、各々０〜７の固有識別子が割り当てられており、ハッシュ値が４ｂｉｔｓ長の場合で説明する。サーバは、固有識別子が０と４と５の通信装置を割り当てたい場合、これらを４で割った余り（０，０，１）に対応するビット位置を１として（１，１，０，０）というハッシュ値を得る。
【００４６】
１．各エアコン（通信装置０、１）は、定期的（例えば１時間毎）にサーバにＤＮＳ要求メッセージを送信する。このときＤＮＳ要求メッセージに含む識別情報は、「地域」であり、具体例としてはtoshiba.co.jpである（この地域は電力供給組織の管理地域区分と一致しているとなおよい）。
【００４７】
２．サーバは、ハッシュ値（１，１，０，０）と「動作設定あり」を含むＤＮＳ応答メッセージをエアコン（通信装置０）に送信する。
３．ＤＮＳ応答メッセージを受信した通信装置０は自身の識別情報（固有識別子）でハッシュ値をテストする。すなわち、自身の固有識別子を４で割った余りの位置のビットが１であるか否かを確認する（１であれば割り当てられていると判断する）。
【００４８】
（１）エアコンは、固有識別子が割り当てられていると判断されれば、次のＤＮＳ要求メッセージをサーバに送信する。（このＤＮＳ要求メッセージには、c0.toshiba.co.jpのように新たな識別情報を含んでも良いし、あるいは新たな識別情報を含んでも良いし、あるいは「設定動作要求」のような新たな種類の要求メッセージを送信しても良い）
【００４９】
（２）エアコンは固有識別子が割り当てられていないと判断されれば、次の要求メッセージの送信を行わない
４．サーバは同様にしてc0.toshiba.co.jpのエアコンに対して、動作設定したいエアコンに対する選別情報をもとめ、これを含むＤＮＳ応答メッセージをエアコンに送信する。
【００５０】
５．上述のシーケンスをサーバと通信装置の間で続けることにより、通信装置は「動作設定あり」、或いは「動作設定なし」のいずれかを含む応答メッセージを受け取ることができる。
【００５１】
このように選別情報を用いることにより、通信装置が送信するＤＮＳ要求メッセージを減らすことができる。
上述では選別情報としてハッシュ値を用いた実施の形態について説明したが、ハッシュ値を計算する方法以外にも、様々なものが使用できる。別の例を挙げれば、ブルームフィルタを用いることにも適用できる。
【００５２】
なお、第３の実施形態ではＤＮＳ応答メッセージのＴＸＴレコードを用いてサーバは通信装置に情報を送っているが、例えばＨＩＮＦＯレコードのように他のレコードを用いてもサーバから通信装置への情報を送ってもよい。
【００５３】
第１乃至第３の実施形態にかかる通信装置は、ＣＰＵ（Central  Processing  Unit）などの制御装置と、ＲＯＭ（Read  Only  Memory）やＲＡＭ（Random  Access  Memory）などの記憶装置と、ネットワークに接続して通信を行う通信Ｉ／Ｆと、ＨＤＤ（Hard  Disk  Drive）、ＣＤ（Compact  Disc）ドライブ装置などの外部記憶装置と、ディスプレイ装置などの表示装置と、キーボードやマウスなどの入力装置と、各部を接続するバスを備えており、通常のコンピュータを利用したハードウェア構成となっている。
【００５４】
第１乃至第３の実施形態にかかる通信装置で実行されるサーバプログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ（Compact  Disk  Read  Only  Memory）、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ（Compact  Disk  Recordable）、ＤＶＤ（Digital  Versatile  Disk）等のコンピュータで読み取り可能な記録媒体に記録されてコンピュータプログラムプロダクトとして提供してもよい。
【００５５】
また、第１乃至第３の実施形態にかかる通信装置で実行されるサーバプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、第１乃至第３の実施形態にかかる通信装置で実行されるサーバプログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
【００５６】
また、第１乃至第３の実施形態の通信プログラムを、ＲＯＭ等に予め組み込んで提供するように構成してもよい。
本実施形態にかかる通信装置で実行されるサーバプログラムは、上述した各部（送受信部、記憶部、指示部、抽出部、要求作成部、及び判断部）を含むモジュール構成となっており、実際のハードウェアとしてはＣＰＵ（プロセッサ）が上記記憶媒体から通信プログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、上述した各部が主記憶装置上に生成されるようになっていてもよい。
【００５７】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００５８】
１００  通信装置
１０１  送受信部
１０２  記憶部
１０３  指示部
１０４  抽出部
１０５  要求作成部
１０６  判断部
２００  サーバ
２０１  送受信部
２０２  データキャッシュ
２０３  要求解析部
２０４  データアクセス部
２０５  応答作成部
３００  ネットワーク
４００  データベース
【図１】
2012216023.tif 000003
【図２】
2012216023.tif 000004
【図３】
2012216023.tif 000005
【図４】
2012216023.tif 000006
【図５】
2012216023.tif 000007
【図６】
2012216023.tif 000008
【図７】
2012216023.tif 000009
【図８】
2012216023.tif 000010
【図９】
2012216023.tif 000011
【図１０】
2012216023.tif 000012
【図１１】
2012216023.tif 000013
【図１２】
2012216023.tif 000014
【図１３】
2012216023.tif 000015