以下、本発明を実施するための最良の形態について図面を参照しながら説明する。
(実施の形態1)
本発明の実施の形態1の通信システムについて、図1から図9を用いて説明する。
まず、図1および図2を用いて、実施の形態1の通信システムの構成を説明する。
図1は、実施の形態1の通信システムの構成を示す概要図である。図1に示す通信システムは、例えば、LAN内に存在する機器を所有するユーザが、外出先から端末装置を用い、その機器が有する情報、例えば、その機器が有するコンテンツを取得するためにインターネットを介した接続を確立するためのシステムである。
図1に示すように、実施の形態1の通信システムは、通信ネットワーク網として、インターネット105およびLAN106を利用している。LAN106はNATルータ103を介してインターネット105に接続されている。また、LAN106にはLAN106内の機器としと機器101が存在する。インターネット105にはユーザの操作する端末102および端末102から機器101への接続を確立させる管理サーバ104が接続されている。
なお、管理サーバ104は、本発明の通信管理装置の一例であり、端末102は端末装置の一例である。また、「LAN内の機器」という場合、有線、無線を問わずLANを構成する通信網に接続されている機器のことを指す。LAN内の機器はNATルータを介しインターネット上の機器と通信することができる。
機器101は、動画などのコンテンツを蓄積する機器であり、例えばハードディスクレコーダである。また、機器を特定可能な固有情報(以下、「機器ID」という。)を有している。本実施の形態における機器101の機器IDは「123456789」である。
機器101は、管理サーバ104に対して、最大アクセス確認周期を要求し、管理サーバ104から最大アクセス確認周期通知を受信する。更に、管理サーバ104に対して、その最大アクセス確認周期に従い、定期的に通知UDPパケットを送信する。
ここで、最大アクセス確認周期とは、機器101から管理サーバ104へ送信される通知UDPパケット(後述)の送信時間の間隔の最大値を示すものであり、例えば「10分」という値である。
端末102は、LAN106内の機器101と通信を行なうための装置であり、例えば、携帯電話である。また、インターネットを介して他の機器と通信を行うためにグローバルIPアドレスが割り当てられている。
本実施の形態における端末102のIPアドレスは、グローバルIPアドレスの「15.18.170.2」である。なお、本実施の形態においては、IPアドレスは“IP version4”に準拠している。
NATルータ103は、上述のNAT機能を有するルータである。NATルータ103は、インターネット105上の機器とLAN106内の機器101とが通信を行なうためのグローバルIPアドレスとプライベートIPアドレスとの相互変換を行なう。
一般的には、NATルータのインターネット側グローバルIPアドレスは、インターネットサービスプロバイダからDHCPプロトコル等によって動的に設定される。本実施の形態においては、NATルータ103のインターネット105側のグローバルIPアドレスとして「202.224.168.6」が割り当てられている。また、NATルータ103内で、LAN106内の機器101に静的NATテーブルによって関連付けられたポート番号は「80」である。
管理サーバ104は、端末102から、LAN106内の機器101への通信を確立させるためのサーバであり、通信経路上にNATルータ103が存在していても端末102から機器101への接続を可能としている。この接続を可能とする方法は、例えば、特許文献1に開示される技術を利用した方法である。
具体的には、LAN106内の機器101が、管理サーバ104に定期的に通知UDPパケットを送信する。管理サーバ104は、その通知UDPパケットに対する応答として任意のタイミングで、機器101へ情報を送信することができる。この状況において、管理サーバ104は、機器101への接続要求を端末102から受信すると、機器101へ接続要求を送信する。
機器101は、端末102からの接続要求を受信後、管理サーバ104との通信を確立し、確立時にNATルータ103に設定した、インターネット上の機器と直接通信を行うためのポート番号やNATルータ103のグローバルIPアドレス等を含む接続情報を、管理サーバ104へ送信する。
管理サーバ104はその接続情報を端末102へ送信する。端末102は、受信した接続情報を利用し、機器101との接続を確立する。これにより、以後、端末102と機器101とは直接通信を行うことができる。
なお、逆に、管理サーバ104が、端末102のグローバルIPアドレス等を機器101に通知することにより、機器101から端末102へ接続させてもよい。
本実施の形態における管理サーバ104は、グローバルIPアドレス「4.17.168.6」が割り当てられている。
図2は、実施の形態1における管理サーバ104および端末102の機能的な構成を示す機能ブロック図である。
なお、端末102については、受信したコンテンツの再生機能等の説明および図示は省略し、本発明における特徴的な構成部についてのみ説明する。同様に、管理サーバ104についても、本発明における特徴的な構成部についてのみ説明する。
管理サーバ104は、上述のように端末102から、LAN106内の機器101への通信を確立させるためのサーバであり、例えば、特許文献1に記載のサーバ装置と同様に、端末102から機器101への通信を開始させるための機能を有している。
管理サーバ104は、サーバ通信部11と、機器情報記憶部12と、接続要求記憶部13と、サーバ制御部14とを備える。
サーバ通信部11は、LAN106内の機器101や端末102等の他の機器と情報のやり取りを行なうための処理部である。なお、サーバ通信部11により、本発明の通信管理装置における、接続要求受信手段、機器情報受信手段、通信可能通知手段、通信不可能通知手段、応答受信手段、無効通知手段、時期的条件受信手段、取得要求受信手段、属性情報送信手段、および送信要求手段のそれぞれが有する、情報を送受信する機能が実現される。
機器情報記憶部12は、機器101から通知UDPパケットによって送信される機器情報を記憶するための記憶部である。機器情報については図3を用いて後述する。
接続要求記憶部13は、端末102から送信される接続要求を含むである接続要求情報を記憶するための記憶部である。接続要求とは、管理サーバ104を介して端末102から機器101への接続を確立するための要求であり、情報として接続先である機器101の機器IDと端末102のグローバルIPアドレスとを含んでいる。接続要求記憶部13に記憶される接続要求情報については、図4を用いて後述する。
サーバ制御部14は、サーバ通信部11と、機器情報記憶部12と、接続要求記憶部13とを制御することで、管理サーバ104の処理を実行する処理部である。
端末102は、上述のようにLAN106内の機器101と通信を行なうための機器であり、例えば携帯電話である。端末102は、端末通信部1と、入力部2と、表示部3と、端末制御部4と、送信情報記憶部5とを備える。
端末通信部1は、LAN106内の機器101や管理サーバ104等の他の機器と情報のやり取りを行なうための処理部である。端末通信部1により、端末装置における接続要求送信手段および通信受信手段のそれぞれが有する、情報を送受信する機能が実現される。
入力部2は、ユーザが端末102に対しての指示や選択を入力するためのボタン等である。表示部3は、情報の表示や、指示の入力をユーザに行なわせるためのGUIを表示する液晶画面等である。表示部3は、本発明の端末装置における出力手段の一例である。
端末制御部4は、端末通信部1と、入力部2等の他の構成部を制御することで端末102における情報の処理を実行する処理部である。
送信情報記憶部5は、管理サーバ104に送信した接続要求の送信時刻等を示す情報である送信情報を記憶するための記憶部である。送信情報については図5を用いて後述する。
図3は、機器情報記憶部12に記憶されている機器情報のデータ構成の例を示す図である。機器情報は管理サーバ104から機器101に接続を行なう際に必要となる情報であり、上述のように、機器101から通知UDPパケットで送信される情報である。
図3に示すように、機器情報はデータ項目として、送信元機器IDと、送信元ポート番号と、最終アクセス時刻と、通信可否フラグとを有する。また、各データは機器情報記憶部12においてテーブル形式で記憶されている。
送信元機器IDは、通知UDPパケットの送信元である機器101の機器IDを示すデータ項目である。送信元IPアドレスは、機器101が接続されているLAN106を特定するIPアドレス、つまり、NATルータ103のインターネット側のグローバルIPアドレスを示すデータ項目である。
送信元ポート番号は、NATルータ103内で機器101に関連付けられているNATルータ103のポート番号を示すデータ項目である。最終アクセス時刻は、管理サーバ104が最後に通知UDPパケットを受信した時刻を示すデータ項目である。
なお、サーバ制御部14は、サーバ通信部11が機器101からの通知UDPパケットを受信する毎に、最終アクセス時刻を通知UDPパケットの受信時刻に更新する。なお、時刻は管理サーバ104が内部で管理するシステムタイマー(図示せず)から取得する。以下、管理サーバ104において時刻に基づく処理には、同様にシステムタイマーから取得された時刻が用いられる。
通信可否フラグは、機器101が通信可能であるか否かを示すデータ項目であり、「1」であれば通信可能であることを示し、「0」であれば通信不可能であることを示す。
この通信可否フラグは、最終アクセス時刻と上述の最大アクセス確認周期とに基づき、サーバ制御部14が更新する。つまり、サーバ制御部14により、本発明の通信管理装置における期間経過判断手段が有する、機器情報を受信しない期間が所定の期間を越えたか否かを判断する機能が実現される。更新の詳細は、図6を用いて後述する管理サーバ104の動作の説明の中で述べる。
機器101から通知UDPパケットが管理サーバ104へ送信されると、通知UDPパケットに含まれる各データは、図3に示すように一つのエントリとして、サーバ制御部14により機器情報記憶部12に登録される。なお、エントリとはデータテーブルにおいて1行分のデータ列のことを示す。
図4は、接続要求記憶部13に記憶されている接続要求情報のデータ構成の例を示す図である。接続要求情報は、上述のように、端末102から管理サーバ104へ送信された接続要求を含むである。
図4に示すように、接続要求情報はデータ項目として、要求先機器IDと、要求元IPアドレスと、要求登録時刻とを有する。また、各データは、接続要求記憶部13においてテーブル形式で記憶されている。
要求先機器IDは、端末102が接続相手として要求する機器である機器101の機器IDを示すデータ項目である。要求元IPアドレスは、端末102のグローバルIPアドレスを示すデータ項目である。要求登録時刻は、接続要求が登録された時刻を示すデータ項目である。
端末102から送信された接続要求が、管理サーバ104によって受信されると、接続要求に含まれる各データおよび要求登録時刻は、図4に示すように一つのエントリとして、サーバ制御部14により接続要求記憶部13に登録される。
なお、本実施の形態における接続要求情報の各エントリは、所定の期間内にその処理が行われない場合、サーバ制御部14により削除される。この所定の期間を特定する時間を接続要求タイムアウト時間といい、本発明の通信管理装置における時期的条件の一例である。接続要求タイムアウト時間は、例えば「20分」という期間で示される。この場合、接続要求情報の各エントリは登録されて20分間は有効であることを意味し、20分を超えると無効となることを意味する。接続要求タイムアウト時間を示す値は接続要求記憶部13に記憶されている。
図5は、端末102の送信情報記憶部5に記憶されている送信情報のデータ構成の一例を示す図である。送信情報は、上述のように、管理サーバ104に送信した接続要求の送信時刻等を示す情報である。
図5に示すように、送信情報はデータ項目として、要求先機器IDと、送信時刻とを有しており、送信情報記憶部5においてテーブル形式で記憶されている。
要求先機器IDは、端末102が接続相手として要求する機器101の機器IDを示すデータ項目である。送信時刻は、接続要求を管理サーバ104へ送信した時刻を示すデータ項目である。なお、時刻は端末102が内部で管理するシステムタイマー(図示せず)から取得する。以下、端末102において時刻に基づく処理には、同様にシステムタイマーから取得された時刻が用いられる。
端末102が管理サーバ104へ接続要求を送信すると、接続要求に含まれる機器101の機器IDおよび送信時刻は、図5に示すように一つのエントリとして、端末制御部4により送信情報記憶部5に登録される。
次に、実施の形態1における管理サーバ104および端末102の動作を、図6〜図9を用いて説明する。
図6は、実施の形態1の通信システムにおける各機器間の通信の流れの一例を示す通信シーケンス図である。
なお、図6に示す通信シーケンス図は、端末102が、管理サーバ104を介してLAN内の機器101との接続を確立する際の通信の流れを示す。また、端末102が機器101に対する接続要求を管理サーバ104へ送信した時点では、機器101は通信不可能であり、その後、通信が可能となる場合を想定している。
なお、ユーザは機器101の機器IDを予め知っており、また、機器101と端末102には、管理サーバ104のIPアドレスがそれぞれの所定の記憶領域に記憶されていると想定する。更に機器101は、予め管理サーバ104から最大アクセス確認周期として「10分」を通知されていると想定して説明する。
まず、機器101は、管理サーバ104に対して、ペイロードに機器101の機器IDを含む通知UDPパケットを送信する(S201)。
なお、「管理サーバ104に対してパケットを送信する」とはTCP/IPプロトコルにおけるIPパケットの宛先IPヘッダに、管理サーバ104のIPアドレス、すなわち「4.17.168.6」を指定し、パケットを送信することを指し、以降も同様とする。
管理サーバ104のサーバ通信部11は、通知UDPパケットを受信し、サーバ制御部14は、機器情報記憶部12に記憶されている機器情報のデータテーブルに、機器101の機器情報からなるエントリを登録する(S202)。この登録の際、通知UDPパケットが受信された時刻が最終アクセス時刻として記録される。また、通信可否フラグは「1」と記録される。この結果、機器情報のデータテーブルは、例えば図3に示す状態となる。
機器101が通知UDPパケットを送信(S201)した後、LAN106の通信障害等により通信不可能になったと想定する(S203)。
機器101の機器情報が登録された(S202)後、最大アクセス確認周期である10分が経過すると(S204)、サーバ制御部14は、機器101からの通知UDPパケットが最大アクセス確認周期の時間内に通知UDPパケットが届いていないことから、機器101が通信不可能になったと判断する(S205)。具体的には、サーバ制御部14は、最終アクセス時刻の10分後に、その最終アクセス時刻が更新されているか否かをチェックする。更新されている場合は、通信可否フラグを「1」のままとし、更新されていない場合は、通信可否フラグを「0」とする。
更に、サーバ制御部14は、チェックした時点の最終アクセス時刻を基準とし、最大アクセス確認周期である10分間隔で、その最終アクセス時刻が更新されているか否かをチェックする。なお、最終アクセス時刻が更新されていなかった場合は、そのことを確認した時刻から10分後にチェックする。サーバ制御部14は、このように定期的に最終アクセス時刻の更新をチェックすることにより、通信可否フラグを更新する。
ここで、ユーザは、機器101への接続のために、入力部2を操作し機器101の機器IDを端末102に入力する。具体的には、端末102の端末制御部4は、ユーザの入力を受け付けるために表示部3に、図7に示すGUIを表示する。
図7は、端末102の表示部3に表示される、ユーザに操作の目的を選択させるためのGUIの一例を示す図である。図7に示すメニュー画面70において、ユーザは、入力部2を用いて「1.機器接続」を選択する。端末制御部4はその選択を受け付け、表示部3に、図8に示すGUIを表示する。
なお、ユーザが「2.接続要求中機器一覧」を選択した場合、端末制御部4により、図5に示す送信情報が読み出され、接続要求中の機器の機器ID等が表示される。
図8は、端末102の表示部3に表示される、ユーザに機器IDを入力させるためのGUIの一例を示す図である。図8に示す機器ID入力画面80において、ユーザは、入力部2を用いて、機器101の機器IDである「123456789」を入力する。更に、ユーザによって「進む」と表示されたボタンが選択される。
「進む」と表示されたボタンが選択されると、端末制御部4は、機器101の機器IDの入力を受け付ける。更に、端末制御部4は、機器101の機器IDと、接続を要求することを示す所定のデータとをパケットのペイロードに含んだUDPパケットである接続要求を生成する。生成された接続要求は、管理サーバ104を送信先として端末通信部1により送信される(S206)。つまり、端末制御部4により、本発明の端末装置における接続要求送信手段が有する、機器への接続を要求する機能が実現される。
管理サーバ104は、サーバ通信部11により機器101の機器IDを含む接続要求を受信する。サーバ制御部14は、機器101の機器情報が既に登録されており、かつ機器101が通信可能であるかを確認する(S207)。つまり、サーバ制御部14により、本発明の通信管理装置における接続要求判断手段が有する、接続要求が記憶済みの機器情報に対するものであるか否かを判断する機能が実現される。
具体的には、サーバ制御部14は、機器情報記憶部12に記憶されている機器情報のデータテーブルを参照し、テーブル内に、送信元機器IDが機器101の機器IDと一致するエントリがあるか否かを確認する。そして、一致するエントリが存在すれば、機器101の機器情報が既に登録されていると判断する。
更に、そのエントリに含まれる通信可否フラグが「1」であれば、機器101は通信可能であると判断し、「0」であれば機器101は通信不可能であると判断する。
本実施の形態では、機器101の機器情報は既に登録されており、かつ通信不可能であるので、以下に示す処理が行われる。なお、機器101の機器情報が登録されていない場合、は、その旨を端末102に通知して終了する。また、機器101が通信可能である場合、管理サーバ104は、端末102へ機器101に接続するための情報を送信する。その後、端末102は機器101と通信する。
機器101が通信不可能であることを確認した後、サーバ制御部14は、端末102からの接続要求に含まれる機器101の機器IDと端末102のIPアドレスとを、登録時刻と併せて一つのエントリとし、接続要求記憶部13に記憶されている接続要求情報のデータテーブルに登録する(S208)。登録の結果、接続要求情報のデータテーブルは、例えば図4に示す状態となる。
その後、機器101が通信不可能であった原因が除去されたことなどにより、機器101が通信可能となる(S209)。機器101は最大アクセス確認周期を管理サーバ104に要求し取得する。取得後、管理サーバ104に対して、通知UDPパケットを送信する(S210)。なお、この通知UDPパケットの送信は、接続要求タイムアウト時間内に行われたと想定する。つまり、端末102からの接続要求に対応する接続要求情報のエントリが有効に存在している間に通知UDPパケットが送信されたことを意味する。
管理サーバ104のサーバ制御部14は、サーバ通信部11で機器101からの通知UDPパケットを受信すると、機器101は通信可能であると判断する(S211)。
サーバ制御部14は、機器101が通信可能となったと判断すると、接続要求記憶部13に記憶されている接続要求情報のデータテーブルを参照し、機器101から受信した通知UDPパケットに含まれる機器ID「123456789」が要求先機器IDとして含まれるエントリを検索する。該当するエントリが存在することで、機器101への接続要求が登録されていることを確認する。つまり、サーバ制御部14により、本発明の通信管理装置における接続対象判断手段が有する、機器情報の送信元の機器が接続要求の対象の機器であるか否かを判断する機能が実現される。
本実施の形態では、該当するエントリが存在し、機器101に対する端末102からの接続要求が登録されていることが確認される(S212)。
管理サーバ104のサーバ制御部14は、機器101の機器IDおよび「接続可能」を示すデータをパケットのペイロードに含んだUDPパケットである接続可能通知を生成する。生成された接続可能通知は、該当するエントリに含まれる要求元IPアドレス、つまり、端末102のIPアドレスを宛先としてサーバ通信部11により送信される(S213)。つまり、サーバ制御部14により、本発明の通信管理装置における通信可能通知手段が有する、機器が通信可能である旨を端末装置へ通知する機能が実現される。
続いて、サーバ制御部14は、接続要求記憶部13に記憶されている接続要求情報のデータテーブルから、該当するエントリを削除する。つまり、端末102から機器101への接続要求の登録を削除する(S214)。
端末102は、端末通信部1により前記接続可能通知を受信し、表示部3により、図9で示すGUIを表示することでユーザに通知を行なう(S215)。
図9は、端末102の表示部3に表示される、機器が接続可能となったことをユーザに通知するためのGUIの一例を示す図である。
図9に示すメニュー画面90は、図7に示すメニュー画面70における表示内容に加えて、機器101への接続可能となったことを示す情報が表示されている。この表示により、ユーザは、機器101への接続が可能になったことを簡単に把握することができる。
図9に示すメニュー画面90において、ユーザは、入力部2を用いて、機器101の機器IDである「123456789」を選択する。
機器101の機器IDが選択されると、端末制御部4はその選択を受け付け、管理サーバ104へ機器101への接続を要求する旨の応答をする。以降、端末102は機器101との接続を確立する。
機器101への接続を確立した後、この接続に対応する送信情報のエントリは送信情報記憶部5から端末制御部4により削除される。
以上、説明したように、本発明の実施の形態1の通信システムでは、端末102から機器101に対する接続要求を管理サーバ104が記憶することで、機器101が通信可能になった時点で、ユーザは、何ら操作を行なうことなく接続可能通知を受け取ることが可能となる。
このため、ユーザは、端末102から機器101へ接続をしようとした際、機器101が通信不可能な状態であっても、接続可能通知を待って、再接続のための操作を行えばよい。そのため、ユーザは、例えば、機器101が通信可能となるまでの間、管理サーバ104へ何度も接続要求を送り続ける必要がない。つまり、ユーザは管理サーバ104へ不要な接続要求の送信を行う必要がない。従って、端末102が機器101へ接続するために必要な通信量が削減される、また、ユーザにとっては、無駄な操作をすることがなくユーザビリティが向上する。
また、管理サーバ104で端末102からの接続要求を登録する際に、その接続要求に含まれる要求先の機器が事前に登録されていることを確認する。これにより、ユーザの機器IDの指定の間違いや、悪意あるユーザが、故意にランダムな機器IDを指定することにより他人の機器に接続を試みた場合、その接続要求が接続要求情報として登録されることがない。
これにより、例えば、悪意あるユーザからの接続要求が受信された時点では、未登録であった機器が、その後に偶然に登録されたことにより、悪意あるユーザがその機器に接続することが可能となる事態を防ぐことができる。
なお、本実施の形態では、管理サーバ104は、上述のように端末102から機器101に対する接続要求を受信した際、機器101が既に登録されているか否かを確認した。しかしながら管理サーバ104はこの確認を行わなくてもよい。ただし、確認を行うことにより、上述のような効果が得られるため、本実施の形態では上述の登録の確認を行うとした。
また、本実施の形態では、端末102は、接続可能通知を受信した際、表示部3によりユーザに通知を行うとした。しかしながら、ユーザに通知を行なわず、自動的にサーバに対して再接続を行なってもよい。また、その再接続の後に接続が完了した旨をユーザに通知してもよい。
また、端末102において、管理サーバ104から接続可能通知を受信した際、その旨が表示部3に表示されるとした。しかしながら、ユーザに管理サーバ104から通知された内容を伝えることができれば画像表示でなくてもよい。例えば、音、光、振動など、ユーザが知覚できる方法で管理サーバからの通知内容を出力すればよい。
また、管理サーバ104における通知UDPパケットの受信時刻の取得に際して、本実施の形態では、時刻はサーバが内部で管理するシステムタイマーから時刻を取得するとした。しかしながら、管理サーバ104が接続可能なNTP(Network Time Protocol)サーバから取得する等、時刻の取得方法はこれに限定されるものではない。端末102における接続要求の送信時刻の取得も同様である。
また、機器情報および接続要求情報は、機器情報記憶部12および接続要求記憶部13にそれぞれ記憶されているとした。しかしながら各情報が記憶される場所はこれに限定されるものではない。例えば、データ管理用のサーバを別途設け、そのサーバでデータを管理させてもよい。この場合、管理サーバ104が必要に応じ、データ管理用サーバに記憶されているデータの読み出しおよび書き込みを行えばよい。
また、本実施の形態では、接続要求タイムアウト時間として接続要求記憶部13に一定値が記憶されており、その一定値を受信した接続要求に適用するとした。しかしながら、接続要求情報のエントリに、接続要求タイムアウト時間が記録されるデータ領域を追加することで、接続要求ごとに異なる値を保持させてもよい。この場合、接続要求ごとに有効な期間を設定することが可能となる。更に、接続要求タイムアウト時間として、本実施の形態では相対的な期間を設定したが、接続要求登録時に、例えば日付と時刻とからなる絶対的な有効期限を設定してもよい。
また、端末102が管理サーバ104に接続要求を送信する際、ユーザが、図8に示す機器ID入力画面80において接続先となる機器101の機器IDを入力するとした。しかしながら、端末102の所定の記憶領域に機器101の機器IDを記憶させておき、記憶されている機器IDを利用してもよい。
これにより、例えば、端末102は、機器101に対する接続要求を送信する際、ユーザに機器IDを入力させる必要がなくなる。
また、端末102において、機器101に接続した後、その接続に対応する送信情報のエントリは削除されるとしたが、削除されずに残されてもよい。この場合、各エントリに示される接続行為が完了したか否か判別できるようにするために、例えば、接続が確立したエントリに接続済みであることを示すフラグを記録すればよい。
(実施の形態2)
本発明の実施の形態2の通信システムについて、図10から図13を用いて説明する。
実施の形態2の通信システムは実施の形態1の通信システムが有する特徴に加えて、以下の2つの特徴を有する。一つは、管理サーバ104は端末102から受信した接続要求に対し、管理サーバ104と機器101との通信が不可能な場合、管理サーバ104と機器101との通信が不可能であることを端末102に対してすぐに通知するという特徴である。
また、もう一つは管理サーバ104が端末102に、接続要求が無効である旨の通知を行うという特徴である。具体的には、端末102は、上記通知を受けた場合、接続可能通知の送信を要求する内容を含む通知要求を送信することができ、管理サーバ104はその要求を接続要求として接続要求記憶部13に登録する。登録後、接続要求タイムアウト時間を経過するまでに機器101からの通知UDPパケットが受信されない場合、端末102に接続要求が無効である旨の通知を行う。
なお、実施の形態2の通信システムの構成および端末102と管理サーバ104の機能ブロック図は、実施の形態1と同様である。つまり、それぞれ図1および図2に示すものと同様である。
ただし、管理サーバ104は、端末102から機器101に対する接続要求を受信した場合、機器101が通信不可能な状態であることを確認すると、端末102に通信不可能通知を送信する。具体的には、端末102からの接続要求に要求元IPアドレスとして含まれている端末102のグローバルIPアドレスに対して、通信不可能通知を送信する。通信不可能通知とは、接続要求に含まれている機器IDおよび「通信不可能」を示すデータをパケットのペイロードに含むUDPパケットである。
端末102は、通信不可能通知を受信すると、接続要求先の機器IDおよび通信が可能となった際の通知を要求することを示すデータをパケットのペイロードに含んだUDPパケットを通知要求として生成し管理サーバ104へ送信する。
管理サーバ104は、通知要求を受信すると、実施の形態1において接続要求を登録するのと同様に、接続要求記憶部13に受信した通知要求を登録する。
また、管理サーバ104は、現在時刻と接続要求情報のエントリに記録されている最終アクセス時刻との差が、接続要求記憶部13のもつ接続要求タイムアウト時間を越えた場合、そのエントリに対応する接続要求がタイムアウトしたと判断する。タイムアウトと判断された接続要求に対応するエントリを参照し、端末102のグローバルIPアドレスを取得する。更に、そして、取得したグローバルIPアドレスを宛先IPアドレスとし、エントリ内の機器IDと「接続失敗」を示すデータをパケットのペイロードに含んだUDPパケットである接続失敗通知を送信する。
また、端末102は、接続失敗通知を受信すると、表示部3によって、ユーザに接続が失敗した旨の情報を表示する。
以下に、実施の形態2における管理サーバ104および端末102の動作を、図10〜図13を用いて説明する。
図10は、実施の形態2の通信システムにおける各機器間の通信の流れの一例を示す通信シーケンス図である。
なお、図10に示す通信シーケンス図は、端末102が、管理サーバ104を介してLAN内の機器101との接続を確立する際の通信の流れを示す。また、端末102が機器101に対する接続要求を管理サーバ104へ送信した時点では、機器101は通信不可能であり、その後、通信が可能となる場合を想定している。
また、ユーザは機器101の機器IDを予め知っており、また、機器101と端末102は、管理サーバ104のIPアドレスが所定の記憶領域に記憶されていると想定する。更に機器101は、予め管理サーバ104から最大アクセス確認周期として「10分」を通知されていると想定して説明する。
まず、機器101は、管理サーバ104に対して、ペイロードに機器101の機器IDを含む通知UDPパケットを送信する(S301)。
管理サーバ104のサーバ通信部11は、通知UDPパケットを受信し、サーバ制御部14は、その内容に基づき、機器情報記憶部12に機器101の機器情報を登録する(S302)。
機器101が通知UDPパケットを送信した後、LAN106の通信障害等により通信が不可能になったと想定する(S303)。
機器101の機器情報が登録された(S302)後、最大アクセス確認周期である10分が経過すると(S304)、サーバ制御部14は、機器101からの通知UDPパケットが最大アクセス確認周期の時間内に通知UDPパケットが届いていないことから、機器101が通信不可能になったと判断する(S305)。
ここで、ユーザは、機器101への接続のために、機器101の機器IDを入力部2によって端末102に入力する。具体的な入力方法は実施の形態1と同様であり、その説明は省略する。
端末制御部4は、機器101の機器IDの入力を受け付ける。更に、端末制御部4は、機器101の機器IDと、接続を要求することを示す所定のデータをパケットのペイロードに含んだUDPパケットである接続要求を生成する。生成された接続要求は、端末通信部1から管理サーバ104へ送信される(S306)。
管理サーバ104は、サーバ通信部11により機器101の機器IDを含む接続要求を受信する。サーバ制御部14は、機器101の機器情報が既に登録されており、かつ機器101が通信可能であるかを確認する(S307)。具体的な確認方法は実施の形態1と同様であり、その説明は省略する。
本実施の形態では、機器101の機器情報は既に登録されており、かつ通信不可能であるので、以下に示す処理が行われる。なお、機器101の機器情報が登録されていない場合、は、その旨を端末102に通知して終了する。また、機器101が通信可能である場合、管理サーバ104は機器101に接続するための情報を端末102へ送信する。端末102はその情報に基づき機器101と通信する。
サーバ制御部14は、機器101が通信不可能であることを通知するUDPパケットである通信不可能通知を生成する。生成された通信不可能通知は、サーバ通信部11により、受信した接続要求に要求元IPアドレスとして含まれている端末102のIPアドレスに対して送信される。(S308)。つまり、サーバ制御部14により、本発明の通信管理装置における通信不可能通知手段が有する、機器が通信不可能である旨を端末装置へ通知する機能が実現される。
端末102は、端末通信部1により通信不可能通知を受信する。更に、通信不可能通知に基づき、ユーザに対して機器101への接続が失敗したことを通知するとともに、機器101が通信可能になった際の通知を要求するか否かの確認を行う(S309)。この通知および確認は、表示部3に表示される、図11に示すGUIを介して行われる。
図11は、端末102の表示部3に表示される、ユーザに接続の失敗の通知と、通信可能になった際の通知の要求を確認するためのGUIの一例を示す図である。
図11に示す機器ID入力画面110は、図8に示す機器ID入力画面80における表示内容に加えて、機器101への接続が失敗したことを示す情報が表示されている。この表示により、ユーザは、機器101への接続が失敗したことを明確かつ迅速に知ることができる。
また、ユーザは、機器101が通信可能となった際に、管理サーバ104から、接続可能通知を受け取るか否かを選択する。接続可能通知は機器101への接続が可能な状態になったことをユーザに通知するものである。
つまり、ユーザは、機器101への接続が失敗したことを認識した上で、接続を希望する場合、機器101が通信可能となった際の通知を簡単に要求できる。また、接続を希望しない場合は、接続のための処理をキャンセルすることができる。そのため、通信システム全体に対するユーザの使い勝手が向上する。また、管理サーバ104を端末102から機器101への接続のための処理から早く開放することができ、管理サーバ104は無駄に通信可能通知を端末102に送信することがない。
本実施の形態では、ユーザは、機器101が通信可能になった際の通知を受け取ることを選択する。具体的には、ユーザは、図10で示すGUI上で、入力部2を用いて、「はい」と表示されたボタンを選択する。(S309)。
端末制御部4は、入力部2からユーザの入力を受け付けると、機器101の機器IDおよび通知を要求することを示すデータをパケットのペイロードに含んだUDPパケットである通知要求をする。生成された通知要求は端末通信部1から管理サーバ104へ送信される(S310)。
管理サーバ104は、サーバ通信部11により端末102から送信された通知要求を受信する。サーバ制御部14は、サーバ通信部11が受信したパケットが通知要求である場合、その通知要求に含まれる、機器101の機器IDと端末102のグローバルIPアドレスとを登録時刻と併せて一つのエントリとし、接続要求記憶部13に記憶されている接続要求情報のデータテーブルに登録する。
つまり、実施の形態2における管理サーバ104は、端末102から受信したUDPパケットが通知要求である場合、その通知要求は、接続要求として接続要求情報のデータテーブルに登録する(S311)。また、登録されたエントリには実施の形態1と同様に、接続要求タイムアウト時間が適用される。このように、通知要求とは、接続先の機器である機器101が通信不可能であることを知ったユーザが端末102を用いて送信する接続要求である。
その後、機器101が通信不可能であった原因が除去されたことなどにより、機器101が通信可能となる(S312)。機器101が通信可能となった後は、実施の形態1と同様の通信の流れとなる。
つまり、機器101は通知UDPパケットを管理サーバ104へ送信する(S313)。この通知UDPパケットの送信は、接続要求タイムアウト時間内に行われており、端末102からの通知要求に対応する接続要求情報のエントリは有効に存在している。接続要求タイムアウト時間内に通知UDPパケットが機器101から送信されなかった場合については後述する。
管理サーバ104のサーバ制御部14は、サーバ通信部11が機器101からの通知UDPパケットを受信すると、機器101は通信可能であると判断する(S314)。更に、接続要求記憶部13に記憶されている接続要求情報のデータテーブルを参照し、機器101の機器ID「123456789」が要求先機器IDとして含まれるエントリを検索する。検索の結果、端末102から機器101への接続要求が登録されていることを確認する(S315)。
管理サーバ104のサーバ制御部14は、機器101が通信可能となってことを端末102に通知するための接続可能通知を生成する。生成された接続可能通知はサーバ通信部11から端末102へ送信される(S316)。
続いて、サーバ制御部14は、接続要求記憶部13に記憶されている接続要求情報のデータテーブルから、該当するエントリを削除する。つまり、接続要求として登録した端末102からの通知要求に対応するエントリを削除する(S317)。
端末102は、端末通信部1により、前記接続可能通知を受信し、表示部3により、図9で示すGUIを表示することで、ユーザに通知を行なう(S318)。ユーザは表示部3に表示されたGUIを介し、機器101との通信を開始することができる。
このように、実施の形態2における管理サーバ104は、端末102から機器101に対する接続要求を受信した場合、機器101が通信不可能であるときは、通信不可能通知を端末102に送信する。端末102は、通信不可能通知を受け取るとその旨をユーザに通知し、かつ、接続可能通知を要求するか否かを確認するためのGUIをユーザに提示する。
ユーザが、接続可能通知を要求する場合、通知要求が端末102から管理サーバ104へ送信され、管理サーバ104はその通知要求を接続要求として登録する。
つまり、実施の形態2における管理サーバ104は、実施の形態1における管理サーバ104と異なり、機器101が通信不可能であることを端末102へ通知する。これによりユーザは機器101への接続が失敗したことを明確かつ迅速に知ることができる。
更に、ユーザは機器101への接続が失敗したことを認識した上で、機器101へ接続するかを決定できる。その決定は具体的には接続可能通知を要求する通知要求という形で管理サーバ104へ送信される。接続を希望しない場合は、管理サーバ104を端末102から機器101への接続のための処理から開放することができる。
なお、本実施の形態における管理サーバ104は、端末102から送信された通知要求を管理サーバ104が接続要求として登録した後、接続要求タイムアウト時間が経過するまでに、管理サーバ104が機器101からの通知UDPパケットを受信しなかった場合、接続要求が無効である旨の通知を行う。管理サーバ104がこの通知を行う場合の通信システムの各機器の動作を、図12を用いて説明する。
図12は、実施の形態2の通信システムにおける各機器間の通信の流れの別の一例を示す通信シーケンス図である。
なお、図12に示す通信シーケンス図は、図10に示す通信シーケンス図と同様に、端末102が機器101に対する接続要求を管理サーバ104へ送信した時点では、機器101は通信不可能であり、その後、通信が可能となる場合を想定している。
図12に示すように、機器101が管理サーバ104に通知UDPパケットを送信してから(S301)、管理サーバ104が、端末102から送信された通知要求を接続要求として登録する(S311)までは、図11に示す通信シーケンスと同じであり、各ステップについての説明は省略する。
管理サーバ104が通知要求を登録した後、接続要求タイムアウト時間、例えば「20分」が経過(S320)するまでの間に、機器101からの通知UDPパケットを受信しなかったと想定する。
この場合、サーバ制御部14は、現在時刻と、その通知要求に対応するエントリに含まれる要求登録時刻との差が、接続要求記憶部13に記憶されている接続要求タイムアウト時間である20分を越えたため、その通知要求がタイムアウトしたと判断する(S321)。つまり、端末102からの機器101に対する接続要求は有効な期間を過ぎ無効であると判断する。このように、サーバ制御部14により、本発明の通信管理装置における無効判断手段が有する、接続要求が時期的条件を満たすか否かを判断する機能が実現される。
そして、サーバ制御部14は、サーバ通信部11を用いて、通知要求に対応するエントリに含まれる端末102のグローバルIPアドレスに対してタイムアウト通知を送信する(S322)。タイムアウト通知とは、機器101の機器IDと「タイムアウト」を示すデータをパケットのペイロードに含んだUDPパケットである。
続いて、サーバ制御部14は、接続要求記憶部13に記憶されている接続要求情報のデータテーブルから、通知要求に対応するエントリを削除する(S323)。このように、サーバ制御部14により、本発明の通信管理装置における無効通知手段が有する、接続要求が無効である旨を端末装置へ通知する機能が実現される。また、削除手段が有する、無効な接続要求を削除する機能が実現される。
端末102は、端末通信部1によりタイムアウト通知を受信し、表示部3によって、図13に示すGUIを表示することでユーザに通知を行なう(S324)。
図13は、端末102の表示部3に表示される、ユーザに通知要求がタイムアウトしたことを通知するためのGUIの一例を示す図である。通知要求とは、上述のように機器101が通信不可能であることを知ったユーザが端末102を用いて送信する接続要求である。つまり、通知要求がタイムアウトしたということは接続要求が無効となったことを意味する。
図13に示すメニュー画面130は、図7に示すメニュー画面70における表示内容に加えて、機器101への通知要求がタイムアウトしたことを示す情報が表示されている。
この表示により、ユーザは、管理サーバ104と機器101とが通信できない状態が継続した場合であっても、所定の期間が経過すると接続要求が無効になったことを知ることができる。そのため、ユーザは、いつまでも接続可能通知を待つ状態に置かれることがなく、通信システムに対するユーザの使い勝手が向上する。また、管理サーバ104からすると、接続要求の受信から一定期間が経過し、ユーザにとって無用である可能性が高い接続可能通知を送信する必要がない。つまり、無駄な通信を発生させることがない。
また、図13示すメニュー画面130を提示されたユーザが、再度、機器101への接続を試みる場合、メニュー画面130に表示された機器101の機器ID「123456789」を選択する。これにより、再び、機器101に対する接続要求が管理サーバ104へ送信される(S306)。以降、上述の処理が繰り返される。
なお、上述の、通知要求のタイムアウトを端末102に通知する機能は、実施の形態1における管理サーバ104が採用してもよい。接続要求タイムアウト時間に関して、実施の形態1と実施の形態2との違いは、接続要求タイムアウト時間が適用される対象が、端末102が送信する接続要求であるのか通知要求であるのかだけの違いである。また、上述のように、通知要求は、実質的な内容は接続要求と同じであり、接続要求情報の1つのエントリとして登録されている。従って、実施の形態1の管理サーバ104が、接続要求のタイムアウトを判断し、タイムアウト通知を行う機能を持つことは容易である。
また、接続要求タイムアウト時間は、所定の時間、例えば「20分」が接続要求記憶部13に予め記憶されており、その時間が通知要求に適用されるとした。しかしながら、ユーザが接続要求タイムアウト時間を決定してもよい。例えば、端末102から管理サーバ104へ通知要求を送信するためのGUIである機器ID入力画面110(図11参照)において、ユーザが時間を入力するための入力欄を設ける。端末102は、ユーザから入力された時間を受け付け、その時間を含む通知要求を管理サーバ104へ送信する。
管理サーバ104は、送信された通知要求の内容と対応付けて、通知要求に含まれている時間を接続要求タイムアウト時間として記憶する。
これにより、通知要求の送信ごとにユーザは接続要求タイムアウト時間を指定することができる。また、端末102がユーザによって接続要求タイムアウト時間として指定された時間を記憶しておき、その記憶された時間を通知要求に含めて送信してもよい。
(実施の形態3)
本発明の実施の形態3の通信システムについて、図14から図21を用いて説明する。
実施の形態3の通信システムは、実施の形態1の通信システムと同様に、例えば、LAN内に存在する機器を所有するユーザが、外出先から端末を用い、その機器の情報、例えば、その機器が有するコンテンツを取得するためにインターネットを介した接続を確立するためのシステムである。しかしながら実施の形態1とは異なり、実施の形態3の通信システムでは、端末とLAN内の機器との接続を確立する前、または接続を確立している最中に、端末が機器のステータスを取得することができる。
なお、機器の「ステータス」とは、本発明の通信管理装置における属性情報の一例であり、機器の仕様、状態等を示す値または文字列である。例えば、機器が有する記憶媒体の残容量、機器が行っている処理内容などである。
まず、図14および図15を用いて、実施の形態3の通信システムの構成を説明する。
図14は、実施の形態3の通信システムの構成を示す概要図である。
図14に示すように、実施の形態3の通信システムは、通信ネットワーク網として、インターネット105およびLAN106を利用している。LAN106はNATルータ103を介してインターネット105に接続される。LAN106にはLAN106内の機器として機器101が存在する。インターネット105にはユーザの操作する端末402および端末402から機器101への接続を確立させる管理サーバ404が接続されている。
なお、管理サーバ404は、本発明の通信管理装置の一例であり、端末402は本発明の端末装置の一例である。
機器101は、実施の形態1の機器101と同じ機器であり、例えばハードディスクレコーダである。また、機器IDは「123456789」である。また、NATルータ103は、実施の形態1におけるNATルータ103と同じルータ装置であり、グローバルIPアドレスとプライベートIPアドレスとの相互変換を行なう機器である。
端末402は、LAN106内の機器101と通信を行なうための端末装置であり、例えば、携帯電話である。また本実施の形態における端末402のグローバルIPアドレスは、「15.18.171.1」である。なお、本実施の形態においても、実施の形態1と同じくIPアドレスは“IP version4”に準拠している。
管理サーバ404は、端末402から、LAN106内の機器101への通信を確立させるためのサーバであり、実施の形態1における管理サーバ104と同様に、端末402と機器101とが、通信経路上にNATルータ103が存在していても通信を行なうことを可能としている。本実施の形態における管理サーバ404のグローバルIPアドレスは「4.17.168.7」である。
このように、本実施の形態の管理サーバ404および端末402は、基本的な役割は実施の形態1における管理サーバ104および端末102と同じである。しかしながら、機能的な構成は、実施の形態1における管理サーバ104および端末102の構成とは異なる部分を有する。
図15は、実施の形態3における管理サーバ404および端末402の機能的な構成を示す機能ブロック図である。
ここでは、管理サーバ404および端末402について、本実施の形態において特徴的な構成部についてのみ説明する。
管理サーバ404は、上述のように端末402から、LAN106内の機器101への通信を確立させるためのサーバであり、例えば、特許文献1に記載のサーバ装置と同様に、端末402から機器101への通信を開始させるための機能を有している。
管理サーバ404は、実施の形態1における管理サーバ104の構成部と同じ構成部であるサーバ通信部11と、機器情報記憶部12と、サーバ制御部14とを備え、更に、機器ステータス記憶部15と、接続要求記憶部16とを備える。
機器ステータス記憶部15は、機器101からの通知UDPパケットに含まれる機器ステータス情報を記憶する記憶部である。機器ステータス情報とは、機器101からの通知UDPパケットに含まれる機器101の有する少なくとも1つのステータスを示すものである。また、機器ステータス情報には、機器101から管理サーバ404へ定期的に送信される通知UDPパケットに含まれる機器ステータス情報と、管理サーバ404からのステータスの送信の要求に応じて機器101から管理サーバ404へ送信される通知UDPパケットに含まれる機器ステータス情報とがある。機器ステータス情報については図16を用いて後述する。
接続要求記憶部16は、端末402からの機器101に対する送信される接続要求を含むである接続要求情報を記憶するための記憶部である。接続要求とは、端末402から管理サーバ404を介して機器101へ接続を確立するためのUDPパケットであり、ペイロードに機器101の機器IDを含んでいる。更に、本実施の形態においては、端末402が機器101のステータスを少なくとも1つ以上取得することを所望している場合、機器101のステータスの名前であるステータス名を含んでいる。
つまり、接続要求記憶部16は、実施の形態1における接続要求記憶部13とは異なり、端末402から機器101へ要求するステータス名を記憶している。実施の形態3における接続要求情報については図17を用いて後述する。
端末402は、実施の形態1における端末102の構成部と同じ構成部である、端末通信部1と、入力部2と、表示部3と、端末制御部4と、送信情報記憶部5とを備え、更に、ステータス名記憶部6を備える。
ステータス名記憶部6は、ステータス名を記憶する記憶部である。本実施の形態においては、「残容量」および「転送レート」というステータス名が記憶されている。端末402において機器101に対する接続要求が生成される際、ステータス名記憶部6からこれらステータス名が読み出され接続要求に含められる。
図16は、管理サーバ404の機器ステータス記憶部15に記憶されている機器ステータス情報のデータ構成の一例を示す図である。
図16に示すように、本実施の形態では、通知UDPパケットを送信した機器101の機器IDと、残容量ステータスと、転送レートステータスとが一つのエントリとして、機器ステータス記憶部15内部のデータテーブルに登録される。
機器101から、最大アクセス確認周期に基づき定期的に送信される通知UDPパケットのペイロードには、機器ステータス情報のうち残容量ステータスのみが含まれている。転送レートステータスは、管理サーバ404からのステータス要求に応じて送信される通知UDPパケットに含められて送信される。
図16は、機器ID「123456789」を有する機器101の機器ステータス情報が1つのエントリとして機器ステータス情報のデータテーブルに登録されていることを示している。
ここで、残容量ステータスとは、機器101が備える記憶装置の追加記憶が可能な容量を示すステータスであり、例えば「25.4」である。この場合、この残容量ステータスが含まれる通知UDPパケットが送信された時点では、機器101の記憶装置は、あと25.4GB分のコンテンツを記憶可能であることを意味する。
また、転送レートステータスは、機器101から外部の機器へのコンテンツの転送速度を示したステータスであり、例えば、「300」である。「300」とは、機器101から外部の機器へのコンテンツの転送速度が300Kbpsであることを意味する。
図17は、管理サーバ404の接続要求記憶部16に記憶されている接続要求情報のデータ構成の一例を示す図である。
図17に示すように、本実施の形態における接続要求記憶部16には、実施の形態1における接続要求記憶部13と同じく、接続要求情報のデータテーブルの1つのエントリとして、要求先機器IDと、要求元IPアドレスと、要求登録時刻とが登録され、更に、要求ステータス名が登録される。
図17に示す接続要求情報のデータテーブルにおいて、要求先機器IDは、端末402の接続要求先である機器101の機器IDを示し、要求元IPアドレスは、端末402のグローバルIPアドレスを示す。また、要求登録時刻はこのエントリが登録された時刻を示す。
要求ステータス名は、端末402が要求する、機器101のステータスを特定する情報であり、図17に示す例では、「残容量」および「転送レート」が登録されている。つまり、端末402が、機器101の残容量ステータスと転送レートステータスとを要求していることを意味する。
これら、要求先機器ID、要求元IPアドレス、および要求ステータス名は、端末402から送信される接続要求のペイロードに含まれている。
次に、実施の形態3における管理サーバ404および端末402の動作を、図18から図21を用いて説明する。
図18は、実施の形態3の通信システムにおける各機器間の通信の流れの一例を示す通信シーケンス図である。
なお、図18に示す通信シーケンス図は、端末402が、管理サーバ404を介してLAN内の機器101との接続を確立する際の通信の流れを示す。また、端末402が機器101に対する接続要求を管理サーバ404へ送信した時点では、機器101は通信不可能である場合を想定している。
また、ユーザは機器101の機器IDを予め知っており、また、機器101と端末402は、管理サーバ404のIPアドレスが所定の記憶領域に記憶されていると想定する。更に、機器101は、予め管理サーバ404から最大アクセス確認周期として「10分」を通知されていると想定して説明する。
まず、機器101は、管理サーバ404に対して、ペイロードに機器101の機器IDを含む通知UDPパケットを送信する(S501)。
この通知UDPパケットのペイロードには、機器101の機器IDに加え、残容量ステータスとして「25.4」という数値が含まれている。
管理サーバ404のサーバ通信部11は、通知UDPパケットを受信し、サーバ制御部14は、その内容に基づき、機器情報記憶部12に機器101の機器情報を登録する(S502)。
サーバ制御部14は、機器ステータス記憶部15に記憶されている機器ステータス情報のデータテーブルを参照し、機器101の機器IDを含むエントリがあるか否かを確認する。該当するエントリがある場合、該当エントリを上書きする。機器101の機器IDを含むエントリがない場合は、機器101の機器IDと、残容量ステータスである「25.4」の数値を含む機器101の機器ステータス情報を登録する。
本実施の形態では、機器101の機器IDと、数値「25.4」である機器101の通信状態ステータスからなる機器101の機器ステータス情報が新たに登録される(S503)。
機器101が通知UDPパケットを送信した後、LAN106の通信障害等により通信が不可能になったと想定する(S504)。
機器101の機器情報が登録された(S502)後、最大アクセス確認周期である10分が経過すると(S505)、サーバ制御部14は、機器101からの通知UDPパケットが最大アクセス確認周期の時間内に通知UDPパケットが届いていないことから、機器101が通信不可能になったと判断する(S506)。
ユーザは、機器101への接続のために、機器101の機器IDを入力部2によって端末402に入力する。
具体的には、端末402の端末制御部4は、ユーザの入力を受け付けるために表示部3に図7に示すメニュー画面70を表示する。メニュー画面70において、ユーザは、入力部2を用いて「1.機器接続」を選択する。端末制御部4はその選択を受け付け、表示部3に、図8に示す機器ID入力画面80を表示する。
機器ID入力画面80において、ユーザは、入力部2を用いて、機器101の機器IDである「123456789」を入力する。
端末制御部4は、機器101の機器IDの入力を受け付ける。更に、端末制御部4は、機器101の機器IDと、接続を要求することを示す所定のデータと、文字列「残容量」および「転送レート」とをパケットのペイロードに含んだUDPパケットである接続要求を生成する。生成された接続要求は端末通信部1から管理サーバ404に送信される(S507)。つまり、この接続要求は、本発明の通信管理装置における取得要求の一例である。
上記の文字列「残容量」および「転送レート」は、機器101の残容量ステータスおよび転送レートステータスの通知を要求することを示すステータス名である。またこれら文字列は端末制御部4によりステータス名記憶部6から読み出される。
管理サーバ404は、サーバ通信部11により、端末402から送信された接続要求を受信する。サーバ制御部14は、実施の形態1と同様に、機器101の機器情報が既に登録されており、かつ機器101が通信可能であるかを確認する(S508)。
本実施の形態では、機器101の機器情報は既に登録されており、かつ通信不可能であるので、以下に示す処理が行われる。
サーバ制御部14は、前記接続要求に含まれる機器101の機器IDに基づいて、機器ステータス記憶部15に記憶されている機器ステータス情報のデータテーブルから、登録済みの機器101の機器ステータス情報を特定する。特定された機器ステータス情報に、端末402から要求された残容量ステータスと、転送レートステータスとが登録されているかを確認し、登録済みのステータスを取得する。
本実施の形態では、機器ステータス記憶部15に記憶されている機器ステータス情報のデータテーブルには、機器101の残容量ステータスは登録されているが、転送レートステータスは登録されていない。従って、残容量ステータスのみを機器ステータス記憶部15から取得する(S509)。
サーバ制御部14は、端末402に対して、機器ステータス情報のデータテーブルに登録済みである機器101の残容量ステータスを含み、機器101が通信不可能であることを示す通信不可能通知を送信する(S510)。つまり、サーバ制御部14により、本発明の通信管理装置における属性情報送信手段が有する、取得要求に応じた属性情報を機器情報記憶手段から読み出す機能が実現される。
具体的には、サーバ制御部14は、接続要求記憶部13に記憶されている接続要求情報から、要求先機器IDとして機器101の機器IDを含むエントリを検索する。該当するエントリに含まれる要求元IPアドレスを宛先IPアドレスとし、機器101の機器IDと、機器101の残容量ステータスと、「通信不可能」を示すデータとをパケットのペイロードに含むUDPパケットである通信不可能通知を生成する。生成された通信不可能通知はサーバ通信部11から端末402へ送信される。
端末402は、端末通信部1により管理サーバ404から送信された通信不可能通知を受信する。
これにより、ユーザは、たとえ機器101が通信不可能の状態であったとしても、端末402を用い、管理サーバ404が保持している機器101のステータスを迅速に取得することが可能となる。本実施の形態においては、機器101から定期的に送信される通知UDPパケットには残容量ステータスが含まれている。そのため、管理サーバ404は、定期的に更新される機器101の残容量ステータスを保持している状態である。従って、機器101が通信不可能な状態であっても、端末402は機器101の最新の残容量ステータスの通知を受けることができる。
端末402の端末制御部4は、機器101のステータスを含む通信不可能通知を受け取ると、通信不可能通知に含まれる内容に基づき、図19に示すGUIを表示部3に表示する。
図19は、端末402の表示部3に表示される、ユーザに接続の失敗の通知とステータスの取得の確認とを行うためのGUIの一例を示す図である。
図19に示す機器ID入力画面190には、機器101への接続が失敗したことを示す情報が表示され、更に、機器101の残容量ステータスが表示されている。また、転送レートステータスが取得できなかったことを示す情報も表示されている。
更に、機器101が通信可能となった際に、転送レートステータスを取得するか否かをユーザに決定させるボタンが表示されている。
機器ID入力画面190において、ユーザにより、「はい」と表示されたボタンが選択されると(S511)、端末制御部4はその選択を受け付ける。なお、この選択により、実施の形態2の端末102と同様に、機器101が通信可能となったことの通知を受け取ることができ、更に、転送レートステータスの通知を受け取ることができる。
端末制御部4は上記選択を受け付けると、機器101の機器IDと、ステータス名「転送レート」と、「通知要求」であることを示すデータとをパケットのペイロードに含んだUDPパケットである通知要求を生成する。生成された通知要求は端末通信部1から管理サーバ404へ送信される(S512)。
管理サーバ404のサーバ通信部11は前記通知要求を受信し、その通知要求に含まれる、機器101の機器IDと端末402のグローバルIPアドレスと、ステータス名「転送レート」とを登録時刻と併せて一つのエントリとし、接続要求記憶部16に記憶されている接続要求情報のデータテーブルに登録する(S513)。
サーバ制御部14は、通知要求を登録後、機器ステータス記憶部15に記憶されている機器ステータス情報のデータテーブルを参照し、通知要求に含まれる機器101の機器IDと一致する機器IDを含むエントリを特定する。更に、特定された機器101の転送レートステータスの取得を試みる。
本実施の形態では、管理サーバ404に対する機器101からの通知UDPパケットに機器101の転送レートステータスは含まれていないため、特定されたエントリには、機器101の転送レートステータスは登録されていない。そのため、機器101の転送レートステータスの取得は失敗する(S514)。
サーバ制御部14は、機器ステータス記憶部15からの機器101の転送レートステータスの取得が失敗すると、機器101が通信可能である場合は、機器101へ転送レートステータスを送信するよう要求し、機器101が通信不可能である場合は、何もしない。
本実施の形態では、機器101は通信不可能であるので(S515)、サーバ制御部14は、何もしない。
図20は、図18に示す通信シーケンスに続く通信シーケンスの一例を示す通信シーケンス図である。
なお、図20に示す通信シーケンス図は、図18に示すように、端末402が機器101に対する接続要求を管理サーバ404へ送信した時点では、機器101は通信不可能であったが、その後、通信可能となった場合を想定している。また、機器101の残容量ステータスは「25.4」のままであると想定する。
機器101が通信不可能であった原因が除去されたことなどにより、機器101が通信可能となる(S516)。機器101は、最大アクセス確認周期である「10分」を管理サーバ404から通知された後、管理サーバ404に対して、再び、ペイロードに機器101の機器IDと、数値「25.4」である機器101の残容量ステータスとが含まれている通知UDPパケットを送信する(S517)。
管理サーバ404のサーバ制御部14は、サーバ通信部11が通知UDPパケットを受信すると、機器101は通信可能であると判断する(S518)。
サーバ制御部14は、機器101が通信可能であると判断すると、接続要求記憶部16に記憶されている接続要求情報のデータテーブルを参照し、その通知UDPパケットに含まれる機器101の機器IDを要求先機器IDとして含むエントリを検索する。
本実施の形態においては、端末402から送信された、ステータス名「転送レート」を含む通知要求が、1つのエントリとして接続要求情報のデータテーブルに登録されている。そのため、サーバ制御部14は、そのエントリに含まれる要求ステータス名である「転送レート」を取得する(S519)。
サーバ制御部14は、更に、通知UDPパケットに対する応答として、機器101に転送レートステータスの送信を要求することを示すデータをUDPパケットのペイロードに含んだUDPパケットであるステータス要求を生成する。生成されたステータス要求はサーバ通信部11から機器101へ送信される(S520)。つまり、サーバ制御部14により、本発明の通信管理装置における送信要求手段が有する、属性情報の送信を要求する機能が実現される。
機器101は、管理サーバ404に対し、ステータス要求の応答として通知UDPパケットを送信する(S521)。
この通知UDPパケットのペイロードには、機器101の機器IDと、数値「25.4」である残容量ステータスとが含まれ、更に、管理サーバ404からのステータス要求に基づき、数値「300」である転送レートステータスが含まれている。
管理サーバ404は、サーバ通信部11により通知UDPパケットを受信する。通知UDPパケットの受信後、サーバ制御部14は、機器ステータス記憶部15に記憶されている機器ステータス情報のデータテーブルを参照し、機器101の機器IDと一致する機器IDを含むエントリを特定する。更に、特定したエントリの残容量ステータスのデータ領域に「25.4」を上書きし、転送レートステータスのデータ領域に「300」を上書きする(S522)。
また、サーバ制御部14は、接続要求記憶部16に記憶されている接続要求情報のデータテーブルを参照し、通知UDPパケットに含まれる機器101の機器IDを要求先機器IDとして含むエントリを検索する。更に、該当するエントリに含まれる要求ステータス名を確認する(S523)。
本実施の形態では、該当エントリに含まれる要求ステータス名は「転送レート」である。
サーバ制御部14は、通知UDPパケットに含まれる機器101の機器IDに基づき、機器ステータス記憶部15に記憶されている機器ステータス情報のデータテーブルから、登録済みの機器101の機器ステータス情報を特定する。更に、特定された機器ステータス情報に含まれる機器101の転送レートステータスである数値「300」を取得する(S524)。
サーバ制御部14は、接続要求記憶部16に記憶されている接続要求情報のデータテーブルを参照し、機器101の機器IDを含むエントリを特定する。更に、特定されたエントリから端末402のグローバルIPアドレスを取得する。
端末402のグローバルIPアドレスを取得すると、サーバ制御部14は、機器101の機器IDと、数値「300」である機器101の転送レートステータスと、「接続可能」を示すデータとをパケットのペイロードに含んだUDPパケットである接続可能通知を生成する(S525)。生成された接続可能通知は、端末402のグローバルIPアドレスを宛先IPアドレスとして、サーバ通信部11により送信される(S526)。
続いて、サーバ制御部14は、接続要求記憶部16に記憶されている接続要求情報のデータテーブルから、該当するエントリを削除する(S527)。これにより、端末402から機器101へ接続要求の登録が削除される。
端末402の端末制御部4は、管理サーバ404から送信された接続可能通知を受け取ると、接続可能通知に含まれる内容と、既に管理サーバ404から通知された内容とに基づき、図21に示すGUIを表示部3に表示する(S528)。
図21は、端末402の表示部3に表示される、機器101への接続が可能となったことと、機器101のステータスとをユーザに通知するためのGUIの一例を示す図である。
図21に示す機器ID入力画面210には、先に取得済みであった残容量ステータスと、機器101が通信可能となった後に管理サーバ404によって取得された転送レートステータスとが表示されている。また、機器101が通信可能となったことで、機器101へ接続するか否かをユーザに決定させるボタンが表示されている。
機器ID入力画面210において、ユーザにより、「はい」と表示されたボタンが選択されると、管理サーバ404を介し、端末402から機器101への接続が開始される。
また、ユーザが、表示されている機器101の残容量および転送レートから判断し、接続をしない決定がされた場合、つまり、ユーザにより、「いいえ」と表示されたボタンが選択された場合、端末402と管理サーバ404との通信は終了する。
以上、説明したように、実施の形態3の通信システムにおいて、端末402を使用するユーザは、LAN106内に存在する機器101に対してインターネットを介した接続を確立する際、接続を確立する前、または接続を確立している最中に、機器101のステータスを取得することが可能となる。
例えば、本実施の形態における残容量ステータスのように、通知UDPパケットに常に含ませるようにしたステータスは、管理サーバ404において、通知UDPパケットが受信される毎に更新され、端末402はそのステータスを取得することができる。これにより、たとえ機器101自体が通信不可能になった場合でも、ユーザは迅速に、所望するステータスを取得することが可能となる。
また、本実施の形態における転送レートステータスのように、管理サーバ404にユーザの所望するステータスが登録されていない場合、管理サーバ404は、そのステータスを機器に対して問い合わせることができる。また、その際、機器101が通信不可能な状態であっても、機器101との通信が可能となると、そのステータスを機器に対して問い合わせることができる。これにより、管理サーバ404にユーザの所望するステータスが登録されていない場合であっても、ユーザは、そのステータスを取得することが可能となる。
このように、本発明の実施の形態3における管理サーバ404は、端末402からLAN106内の機器101への接続を確立させることができるとともに、端末402に機器101のステータスを通知することができる。
ユーザは、端末402により機器101のステータスを知ることができ、そのステータスを参考にして機器101との通信を継続するか否か、または、機器101に対してどのような要求を行うかを判断できる。例えば、ユーザが、端末402を用い、機器101からコンテンツを取得することを考えた場合、取得の前に機器101のステータスである転送レートを確認できる。ユーザが、機器101の転送レートがコンテンツの送信に見合うだけの値でないと判断した場合、コンテンツ取得のための操作をせずに機器101との通信を終えることができる。
これにより、例えば、機器101の転送レートが低いため、予想以上にコンテンツの取得に時間が掛かることにより取得の途中で通信を中断するような事態を防ぐことができる。つまり、無駄な通信発生を防ぐことができ、ユーザに無駄な操作をさせることを防ぐことができる。
なお、本実施の形態では、機器ステータス情報に含まれるステータスの種類を、残容量ステータスと、転送レートステータスとした。しかしながら、機器ステータス情報に含まれるステータスの種類はこれに限定されるものではない。つまり、管理サーバ404が機器101から取得し、端末402に通知するステータスの種類は上記の2種類以外のものであってもよい。
例えば、管理サーバ404が、機器101がリモコンやフロントパネルによる操作を受付中か否かというステータスである操作中ステータス等を機器101から取得し、端末402に通知してもよい。これにより、例えば、端末402を使用しているユーザは、機器101が、自分以外の指示による処理を行っている状態にあることを知ることができる。
また、図18において、機器101が通信不可能となる(S504)場合の通信シーケンスを例示したが、機器101が通信不可能とならなくても、本実施の形態の管理サーバ404および端末402は機器101のステータスの取得等の動作を行うことができる。
この場合、端末402から、機器101の残容量ステータスおよび転送レートステータスの要求を伴う接続要求が送信されると、管理サーバ404はまず登録済みの残容量ステータスのみを端末402へ送信する。送信後、管理サーバ404は機器101へ転送レートステータスの送信を要求し取得する。更に、取得した転送レートステータスを端末402へ送信する。これにより、端末402は、機器101の残容量ステータスおよび転送レートステータスの取得を完了する。
また、機器101から管理サーバ404へ送信される通知UDPパケットには常に残容量ステータスが含まれるとしたが、これは残容量ステータス以外のステータスでもよい。例えば、転送レートステータスを常に通知UDPパケットに含ませるようにしてもよい。また複数のステータスを含ませるようにしてもよい。つまり、通知UDPパケットのサイズと、ユーザのニーズとを考慮することで、通知UDPパケットに常に含ませるに最適なステータスを決定すればよい。
また、端末402から機器101に対する接続要求が送信される際、残容量ステータスと転送レートステータスの要求が含まれるとした。しかしながら、例えば、ユーザに取得を希望するステータスを選択させてもよい。
この場合、端末402において、端末制御部4がステータス名記憶部6に記憶されているステータス名を呼び出し、接続要求に含めるステータスをユーザに決定させるGUIを生成し表示部3に表示させる。端末制御部4は、ユーザに選択されたステータスを要求するデータを接続要求に含ませて、端末通信部1に送信させる。こうすることで、例えば、機器101から取得可能なステータスが増えた場合、ユーザに取得するステータスを明示的に選択させることにより、ユーザにとって不要なステータスを取得することを防ぐことができる。つまり、無駄な通信量の増加を防ぐことができる。
また、機器101が管理サーバ404からステータス要求を受信し、その要求が、セキュリティ上の理由等により送信できないステータスである場合、機器は送信不可である旨とその理由を通知UDPパケットに含めて管理サーバ404に送信してもよい。この場合、管理サーバ404は、端末402から要求されたステータスが送信不可である旨とその理由とを端末402に送信すればよい。これにより、ユーザは、単にステータスを取得できないことだけでなく、その理由も知ることができ困惑することがない。
また、管理サーバ404は、端末402から複数のステータスの要求を受けた場合、要求された全てのステータスが機器ステータス記憶部15に登録されていなくても、登録済みのステータスをまず端末402に送信するとした(図19参照)。しかしながら、要求された全てのステータスが登録された後に、要求されたステータスをまとめて端末402へ送信してもよい。
管理サーバ404が、登録済みのステータスのみを一旦端末402へ送信する場合、ユーザは送信されたステータスのみで、その後の通信を継続しないことを決定できる場合もあり、これにより無駄な通信の発生を防ぐことができるという利点がある。
また、管理サーバ404が、要求されたステータスをまとめて端末402へ送信する場合、1回の通信でユーザの要求するステータスを送信することとなる。これによっても、無駄な通信の発生を防ぐことができるという利点がある。
また、上述の各実施の形態において、機器101はNATルータ103を介してインターネット105に接続されていたが、NATルータ103を介さず、直接インターネット105に接続されていてもよい。この場合、機器101はプライベートIPアドレスではなくグローバルIPアドレスが割り当てられることになるだけである。従って、ユーザが、端末を用い、機器から所望するステータスを迅速に取得するという本発明の効果は得ることができる。端末が機器と同じLAN内にある場合でも同様に本発明の効果を得ることができる。
また、上述の各実施の形態において、機器101の機器IDは「123456789」であるとしたが、これは機器IDの形式を限定するものではなく、機器毎にユニークなものであればよい。
また、管理サーバ104の接続要求記憶部13、および管理サーバ404の接続要求記憶部16は、端末102または端末402のグローバルIPアドレスを登録した。しかしながら、登録される情報はグローバルIPアドレスでなくてもよく、機器101と同様に、端末ごとにIDを持たせ、そのIDを登録する等でもよい。つまり、端末が特定できる情報であればよい。
また、上述の各実施の形態において、接続要求や接続可能通知等のデータ形式をUDPパケットとしたが、UDPパケットでなくてもよく、特定の方法に限定されるものではない。
例えば、端末が携帯電話である場合、管理サーバへの通信手段として電子メールを用いてもよい。具体的には、端末から管理サーバへ接続要求を送信する際、電子メールに所定の事項を含むようにして送信する。管理サーバは電子メールの内容を認識しその処理を行えばよい。このように、電子メールなどのような一般的な通信手段を利用した場合、既存の端末に対して広く本発明が適用できるため、特に有効である。