JP2014150372A - 通信方法、通信システム、および通信装置 - Google Patents

通信方法、通信システム、および通信装置 Download PDF

Info

Publication number
JP2014150372A
JP2014150372A JP2013017451A JP2013017451A JP2014150372A JP 2014150372 A JP2014150372 A JP 2014150372A JP 2013017451 A JP2013017451 A JP 2013017451A JP 2013017451 A JP2013017451 A JP 2013017451A JP 2014150372 A JP2014150372 A JP 2014150372A
Authority
JP
Japan
Prior art keywords
communication
client
address
identification information
mac address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2013017451A
Other languages
English (en)
Inventor
Yoshiko Yamaguchi
芳子 山口
Koichi Nozaki
浩一 野崎
Akira Miyajima
晃 宮嶋
Masahiro Tsuji
正宏 辻
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Original Assignee
Panasonic Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corp filed Critical Panasonic Corp
Priority to JP2013017451A priority Critical patent/JP2014150372A/ja
Publication of JP2014150372A publication Critical patent/JP2014150372A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Small-Scale Networks (AREA)

Abstract


【課題】通信の信頼性を向上できる通信装置を提供する。
【解決手段】第1のネットワーク上で第1のアドレス変換装置に接続され、第1のアドレス変換装置を介して第2のネットワークに接続される通信装置であって、第2のアドレス変換装置に接続された他の通信装置と通信する通信装置における通信方法において、第1のアドレス変換装置の機器自身を特定する識別情報である第1の識別情報を取得するステップと、第2のアドレス変換装置の機器自身を特定する識別情報である第2の識別情報を取得するステップと、第1の識別情報と第2の識別情報とが一致する場合、第1のアドレス変換装置と第2のアドレス変換装置が同一の機器であると判定し、第1のネットワーク上のアドレスを用いて通信するステップと、を有する。
【選択図】図1

Description

本発明は、通信方法、通信システム、および通信装置に関する。
近年、通信機器(例えば、コンピュータ、スマートフォン、携帯端末)を接続可能な通信ネットワークは、複雑な構成を有している。例えば家庭内又は企業内では、通信機器を互いに接続したローカルネットワーク(LAN:Local Area Network)が形成される。また、LAN内の通信機器からグローバルネットワーク(例えばインターネット)に接続する場合、LANとグローバルネットワークとが相互に接続される。これらのネットワークの境界には、NAT(Network Address Translation)機能を搭載したルータが配置される。
配下のLAN内の各通信機器は、プライベートIPアドレス、すなわちローカルアドレス(ローカルIPアドレス)が割り当てられる。また、LAN内の各通信機器がグローバルネットワークを介して他の通信機器との間において通信する場合、NAT機能を有するルータにより、ローカルアドレスとグローバルアドレス(グローバルIPアドレス)とを相互変換する。
ローカルアドレスとグローバルアドレスとの使い分けに関する技術が、例えば特許文献1に開示されている。特許文献1では、第1の通信機器と第2の通信機器とが同一のネットワークに接続されているか否かを判定するために、各通信機器が使用するグローバルアドレスの情報を取得して、これらの情報を比較する。
特許第4304593号公報
しかしながら、特許文献1の技術では、同一のグローバルアドレスを利用するLAN内に複数台のNAT機能を有するルータが接続される場合、通信できない恐れがある。例えば、2台のルータがLAN内に多段に配置され、ルータAの配下にルータBが配置されることを想定すると、ルータBの配下に配置された通信機器A,Bが相互に通信する場合、ルータBを越えないので、ローカルアドレスを用いて通信できる。
一方、ルータBの配下に配置された通信機器Aと、ルータBの配下ではなくルータAの配下に配置された通信機器Cと、の間において通信する場合、ルータBを越えて通信するので、ローカルアドレスを用いて通信できない。
つまり、同一のグローバルアドレスを有するLAN内において、複数台のNAT機能を有するルータが接続される場合、特許文献1の技術では、どのルータの配下に通信機器があるか区別できず、ローカルアドレスとグローバルアドレスとを高精度に使い分けできず、通信の信頼性が不十分であった。
本発明は、通信の信頼性を向上できる通信方法、通信システム、及び通信装置を提供する。
本発明の通信方法は、第1のネットワーク上で第1のアドレス変換装置に接続され、前記第1のアドレス変換装置を介して第2のネットワークに接続される通信装置であって、第2のアドレス変換装置に接続された他の通信装置と通信する通信装置における通信方法において、前記第1のアドレス変換装置の機器自身を特定する識別情報である第1の識別情報を取得するステップと、前記第2のアドレス変換装置の機器自身を特定する識別情報である第2の識別情報を取得するステップと、前記第1の識別情報と前記第2の識別情報とが一致する場合、前記第1のアドレス変換装置と前記第2のアドレス変換装置が同一の機器であると判定し、前記第1のネットワーク上のアドレスを用いて通信するステップと、を有する。
本発明の通信システムは、第1のネットワーク上にあり、第1のアドレス変換装置を介して第2のネットワークに接続される第1の通信装置と、第3のネットワーク上にあり、第2のアドレス変換装置を介して第2のネットワークに接続される第2の通信装置を有し、前記第1の通信装置と前記第2の通信装置とが通信する通信システムであって、前記第1の通信装置は、前記第1のアドレス変換装置の機器自身を特定する識別情報である第1の識別情報を取得する第1の情報取得部と、前記第2のアドレス変換装置の機器自身を特定する識別情報である第2の識別情報を取得する第2の情報取得部と、前記第1の識別情報と前記第2の識別情報とが一致する場合、前記第1のアドレス変換装置と前記第2のアドレス変換装置が同一の機器であると判定し、前記第1のネットワーク上のアドレスを用いて通信する通信部と、を備える。
本発明の通信装置は、第1のネットワーク上で第1のアドレス変換装置に接続され、前記第1のアドレス変換装置を介して第2のネットワークに接続される通信装置であって、第2のアドレス変換装置に接続された他の通信装置と通信する通信装置において、前記第1のアドレス変換装置の機器自身を特定する識別情報である第1の識別情報を取得する第1の情報取得部と、前記第2のアドレス変換装置の機器自身を特定する識別情報である第2の識別情報を取得する第2の情報取得部と、前記第1の識別情報と前記第2の識別情報とが一致する場合、前記第1のアドレス変換装置と前記第2のアドレス変換装置が同一の機器であると判定し、前記第1のネットワーク上のアドレスを用いて通信する通信部と、を備える。
本発明によれば、通信の信頼性を向上できる。
第1の実施形態における通信システムの構成例を示す模式図 第1の実施形態におけるクライアントの構成例を示すブロック図 第1の実施形態におけるサービスサーバの構成例を示すブロック図 第1の実施形態におけるMACアドレスをサービスサーバに登録する登録処理の流れの一例を示す模式図 第1の実施形態におけるクライアント情報保存テーブルの構成例を示す模式図 第1の実施形態におけるクライアントによるMACアドレスの登録処理時の動作例を示すフローチャート 第1の実施形態におけるクライアントにより通信対象機器が同一サブネットに所在するか否かを判定するサブネット判定処理の流れの第1例を示す模式図 第1の実施形態におけるクライアントにより通信対象機器が同一サブネットに所在するか否かを判定するサブネット判定処理の流れの第2例を示す模式図 第1の実施形態におけるクライアントによるサブネット判定処理時の動作例を示すフローチャート 第1の実施形態におけるサブネット判定処理時の動作の変形例(クライアント側)を示すフローチャート 第1の実施形態におけるサブネット判定処理時の動作の変形例(サーバ側)を示すフローチャート 第2の実施形態における通信システムの構成例を示す模式図 第2の実施形態における情報保存テーブルの構成例を示す模式図 第2の実施形態におけるクライアントによるサブネット判定処理時の動作例を示すフローチャート 第1の実施形態及び第2の実施形態の通信システムを家庭内に適用した模式図 第3の実施形態における通信環境の変化の具体例を示す状態遷移図 第3の実施形態における通信システムの各装置の構成例を示すブロック図 (A),(B)第3の実施形態におけるクライアント情報保存テーブルの構成例を示す模式図 第3の実施形態における通信システムによるサービス登録処理時の動作例を示すフローチャート 第3の実施形態における通信システムによる機器起動時又は定期通信時の処理の一例を示すフローチャート 第3の実施形態における通信システムによるイベント発生時のユーザへの通知処理の一例を示すフローチャート 第3の実施形態における通信システムによるサービス利用時の処理の一例を示すフローチャート 第3の実施形態における通信システムによる機器起動時又は定期通信時の処理の変形例(クライアント側)を示すフローチャート 第3の実施形態における通信システムによる機器起動時又は定期通信時の処理の変形例(サーバ側)を示すフローチャート
以下、本発明の実施形態について、図面を用いて説明する。
(第1の実施形態)
図1は、第1の実施形態における通信システム1000の構成例を示す模式図である。通信システム1000では、例えば家庭内に設置されるLAN100が、ルータ112を介してインターネット150と接続されている。また、インターネット150には、サービスサーバ200およびクライアント250が接続されている。インターネット150は、グローバルネットワークの一例である。
LAN100には、3台のクライアント121,122,123と、2台のルータ111,112と、が含まれている。クライアント121,122は、ルータ111の配下に接続されている。クライアント123は、ルータ112の配下に接続されている。ルータ111は、ルータ112の配下に接続されている。クライアント121,122,123は、IP(Internet Protocol)を用いて通信する通信機器(通信装置)である。
クライアント(例えばクライアント121,122,123,250)としては、例えば、有線通信機器、無線通信機器、又はモバイル通信端末を想定できる。また、LAN100では、2台のルータ111,112を備えることを例示するが、ルータの数を増減できる。また、クライアントの台数も上記の例に限られない。
ルータ111,112は、それぞれNAT機能を有する。なお、以降の説明で図示するルータは、すべてNAT機能を有するルータであり、NAT機能を持たないルータに関しては図示せず説明を省略する。ルータ111,112は、アドレス変換装置の一例である。
ここで、同一ルータにルータを介さず直接接続されている(通信時にルータを越えない)機器グループを「サブネット」とする。図1においては、クライアント121,122がサブネット101に属し、ルータ111、クライアント123がサブネット102に属する。
クライアント121がインターネット150を介して通信する場合、ルータ111,112がNAT機能により、クライアント121が通信に用いるアドレスを変換する。
具体的には、クライアント121がサブネット101内から送出する信号に対して、ルータ111は、信号の送信元のローカルアドレスをサブネット102で使用するローカルアドレスに変換し、ルータ112は、変換したローカルアドレスをグローバルアドレスに変換し、この信号をインターネット150に送出する。
また、インターネット150から受信した信号に対して、ルータ112は、信号の宛先のグローバルアドレスを、ルータ111のサブネット102で使用するローカルアドレスに変換し、ルータ111は、クライアント121に割り当てられたローカルアドレスに変換し、この信号をクライアント121に与える。
同様に、クライアント123がインターネット150を介して通信する場合、ルータ112がNAT機能により、クライアント123が通信に用いるアドレスを変換する。例えば、クライアント123がLAN100内から送出する信号に対して、ルータ112は、信号の送信元のローカルアドレスをグローバルアドレスに変換し、この信号をインターネット150に送出する。また、インターネット150から受信した信号に対して宛先のグローバルアドレスを、クライアント123に割り当てられたローカルアドレスに変換し、この信号をクライアント123に与える。
例えば、クライアント121,122が相互に通信する場合、両クライアントは同一サブネットに属しているので、ローカルアドレスを用いて、クライアント121とクライアント122との間においてP2P通信できる。
クライアント121,123が相互に通信する場合、両クライアントは異なるルータ111,112に接続されており、サブネットが異なるので、ルータ111の設定無しにP2P通信できない。従って、クライアント121,123が相互に通信する場合、ルータ111,112により、グローバルアドレスを付与するようアドレス変換し、クライアント間でルータ111の設定無しにP2P通信を行えるようにする。
クライアント121,250が相互に通信する場合、インターネット150を介して通信するので、ルータ112及びクライアント250が属するルータ(不図示)により、グローバルアドレスを付与するようアドレス変換し、P2P通信を行う。
サービスサーバ200は、様々なサービスを提供する。クライアント121〜123、250は、インターネット150を介してサービスサーバ200にアクセスできる。
図2は、クライアント121の構成例を示す図である。図2では、クライアント121の構成例を示すが、通信システム1000における他のクライアントの構成も同様である。
クライアント121は、メモリ11、処理ブロック12、及びインタフェース13を備える。
メモリ11は、MAC(Media Access Control)アドレス保存部11aを有する。MACアドレス保存部11aは、例えばメモリ11における不揮発性の記憶領域に割り当てられ、クライアント121を識別する識別情報(例えばMACアドレス)を保持する。
処理ブロック12は、マイクロコンピュータ又は特定の処理を実行可能な専用のハードウェアにより構成できる。処理ブロック12は、第1ルータMACアドレス取得部12a、ルータMACアドレス登録部12b、第2ルータMACアドレス取得部12c、サブネット判定部12d、及び通信処理部12eを有する。
第1ルータMACアドレス取得部12aは、ネットワークにおいて、クライアント121が属するサブネットに配置されたルータの識別情報(例えばMACアドレスの情報)を取得する。このルータは、例えばクライアントに直近のルータである。ここでは、一例として、図1、図2に沿って説明する。第1ルータMACアドレス取得部12aは、情報取得部としての機能を有する。
クライアント121に直近のルータはルータ111であるので、第1ルータMACアドレス取得部12aは、ルータ111からルータ111のMACアドレス(クライアント121の直近ルータMACアドレス)の情報を取得する。なお、第1ルータMACアドレス取得部12aは、ルータ111から事前に第1ルータMACアドレス情報を取得し、メモリ11に保存してもよい。これにより、第1ルータMACアドレス情報を素早く参照できる。
ルータMACアドレス登録部12bは、第1ルータMACアドレス取得部12aが取得した直近ルータMACアドレスの情報をサービスサーバ200へ送信し、サービスサーバ200に登録するよう要求する。ルータMACアドレス登録部12bは、情報送信部としての機能を有する。
第2ルータMACアドレス取得部12cは、クライアント121の通信先の通信機器(通信対象機器)に直近のルータの識別情報(例えばMACアドレスの情報)を、サービスサーバ200から取得する。第2ルータMACアドレス取得部12cは、情報取得部としての機能を有する。
例えば、第2ルータMACアドレス取得部12cは、クライアント123が通信対象機器である場合、クライアント123の直近のルータ112のMACアドレス(クライアント123の直近ルータMACアドレス)の情報を取得する。直近ルータMACアドレス情報は、サービスサーバ200に登録されている。第2ルータMACアドレス取得部12cは、サービスサーバ200から、クライアント123の直近ルータMACアドレスの情報を取得する。
なお、本実施形態では、通信対象機器のMACアドレスを、サービスサーバ200を介して取得しているが、MACアドレスの取得方法は通信対象機器から直接取得する等、取得方法は問わない。また、識別情報としてMACアドレスを例に挙げたが、機器毎にユニークなもの、つまり機器自身を特定できるものであればよく、製造番号(シリアルNo)等でもよい。
サブネット判定部12dは、クライアント121と通信対象機器とのサブネットが一致するか否かを判定する。例えば、サブネット判定部12dは、第1ルータMACアドレス取得部12aが取得した直近ルータMACアドレスと、第2ルータMACアドレス取得部12cが取得した直近ルータMACアドレスと、を比較する。比較の結果、両者が一致した場合には、両クライアントが同一のサブネットに所在すると判定する。サブネット判定部12dは、情報比較部としての機能を有する。
通信処理部12eは、サブネット判定部12dによる判定結果に基づいて、通信対象機器との間において、ローカルアドレス又はグローバルアドレスを用いて通信するための処理を実行する。通信処理部12eは、通信部としての機能を有する。
インタフェース13は、例えば、クライアント121がTCP(Transmission Control Protocol)/IP(Internet Protocol)に従って、インターネット150に接続するための通信インタフェースを提供する。
図3は、サービスサーバ200の構成例を示す図である。サービスサーバ200は、メモリ201、処理ブロック202、及びインタフェース203を備える。
メモリ201は、クライアント情報保存テーブル201aを有する。クライアント情報保存テーブル201aは、例えばメモリ201における不揮発性の記憶領域に割り当てられる。所定の登録処理により、各クライアントの管理に利用可能な情報がクライアント情報保存テーブル201aに登録される。クライアント情報保存テーブル201aは、情報保持部の一例である。
処理ブロック202は、マイクロコンピュータ又は特定の処理を実行可能な専用のハードウェアにより構成できる。処理ブロック202は、MACアドレス登録部202a及びMACアドレス送信部202bを有する。
MACアドレス登録部202aは、各クライアントからの登録要求に従って、所定の情報(例えば、クライアントMACアドレス、クライアントの直近ルータMACアドレスの情報)を、クライアント情報保存テーブル201aに登録する。MACアドレス登録部202aは、情報登録部としての機能を有するが、各クライアントが自ら所定の情報をクライアントに要求して登録してもよい。
MACアドレス送信部202bは、各クライアントからの問い合わせに従って、該当する情報をクライアント情報保存テーブル201aから取り出し、問い合わせ元のクライアントに通知する。MACアドレス送信部202bは、情報送信部としての機能を有する。
なお、本実施形態では、サブネットの判定をクライアント(例えばクライアント121)側において実施する場合を主に想定するが、サブネットの判定をサービスサーバ200が実施してもよい。この場合は、処理ブロック202に、上記のようなサブネット判定部を含め、その判定結果をクライアントに送信する。
インタフェース203は、サービスサーバ200がTCP/IPに従って、インターネット150に接続するための通信インタフェースを提供する。
図5は、サービスサーバ200のクライアント情報保存テーブル201aの具体的な構成例を示す図である。
クライアント情報保存テーブル201aは、例えば、各クライアントのMACアドレス(クライアントMACアドレス)の情報と、各クライアントに直近のルータのMACアドレス(直近ルータMACアドレス)の情報と、を対応づけて保存する。
図5における上から1番目,2番目,3番目,4番目の各クライアントMACアドレスは、クライアント121,122,123,250の各MACアドレスに相当する。図5における上から1番目,2番目の直近ルータMACアドレスは、ルータ111のMACアドレスに相当する。図5における上から3番目の直近ルータMACアドレスは、ルータ112のMACアドレスに相当する。図5における上から4番目の直近ルータMACアドレスは、クライアント250の直近のルータ(図示せず)のMACアドレスに相当する。
つまり、クライアント121のMACアドレス(AA:AA:AA:AA:AA:AA)と、ルータ111のMACアドレス(XX:XX:XX:XX:XX:XX)と、が対応付けられている。クライアント122のMACアドレス(BB:BB:BB:BB:BB:BB)と、ルータ111のMACアドレス(XX:XX:XX:XX:XX:XX)と、が対応付けられている。クライアント123のMACアドレス(CC:CC:CC:CC:CC:CC)と、ルータ112のMACアドレス(YY:YY:YY:YY:YY:YY)と、が対応付けられている。クライアント250のMACアドレス(DD:DD:DD:DD:DD:DD)と、不図示のルータのMACアドレス(ZZ:ZZ:ZZ:ZZ:ZZ:ZZ)と、が対応付けられている。
従って、クライアント情報保存テーブル201aの内容から、クライアント121,122とは、同一のサブネット(ルータ111の配下)に所在することが理解できる。また、クライアント121,123とは、互いに異なるサブネット(ルータ111,112の配下)に所在することが理解できる。
次に、通信システム1000における各装置の動作例について説明する。
まず、MACアドレスをサービスサーバ200に登録する登録処理について説明する。
図4は、クライアントがMACアドレスをサービスサーバ200に登録する登録処理の流れを示す模式図である。図4では、クライアント121の情報を登録する場合を例示するが、他のクライアントの情報を登録する場合も同様である。
サービスサーバ200のクライアント情報保存テーブル201aにMACアドレスの情報が登録される場合、図4に示した(A),(B),(C)の順番に処理が実行される。(A)〜(C)の各々の処理は、以下の通りである。
(A)クライアント121は、直近のルータ111の識別情報であるMACアドレスを直近ルータMACアドレスとして取得する。クライアント121は、例えば、ARP(Address Resolution Protocol)を用いて、ルータ111のIPアドレスからルータ111のMACアドレスを求める。
なお、TCP/IPネットワークを診断するプログラムであるping(Packet Internet Groper)を用いて、クライアント121からサービスサーバ200へ通信することで、ルータ111のMACアドレスの情報を取得してもよい。この場合、クライアント121からサービスサーバ200への通信に使用するルータのMACアドレスの情報を取得できる。
(B)クライアント121は、(A)において取得された直近ルータMACアドレスの情報と、自装置の識別情報(MACアドレス)とをサービスサーバ200に送信し、クライアント情報保存テーブル201aへの登録を要求する。クライアント121は、自装置の識別情報を別途送信してもよい。
なお、クライアント121は、送信先としてのサービスサーバ200を、予めクライアント121に登録されたIPアドレス又はURL(Uniform Resource Locators)に基づいて特定してもよい。
(C)サービスサーバ200は、クライアント121からの登録要求に従って、所定の情報をクライアント情報保存テーブル201aに保存する。所定の情報は、例えば、送信元としてのクライアント121の識別情報(例えばMACアドレスの情報)と、受け取った直近ルータMACアドレスの情報と、を含む。
なお、図5では、クライアントMACアドレスの情報と直近ルータMACアドレスの情報とを保存しているが、MACアドレス以外の識別情報を用いてもよい。MACアドレス以外の識別情報としては、例えば製造番号等のシリアルナンバが考えられる。
図4に示した登録処理は、クライアント121が起動した時に実行されてもよい。また、この登録処理は、クライアント121がアプリケーションを起動した時、又はアクティブになった時に実行されてよい。また、この登録処理は、クライアント121のネットワーク環境が変更された時に実行されてもよい。
ネットワーク環境の変更は、例えば、ネットワークインタフェースのオフからオンへの切り替えを含む。また、ネットワーク環境の変更は、例えば、モバイル回線(例えばGSM(Global System for Mobile Communications)(登録商標)、3G、4G)からWiFi(Wireless Fidelity)(登録商標)への切り替えを含む。また、ネットワーク環境の変更は、例えばIPアドレス又はデフォルトゲートウェイの変更を含む。
図6は、クライアントによるMACアドレスの登録処理時の動作例を示すフローチャートである。図6では、クライアント121が登録処理を実行する場合を例示するが、他のクライアントが登録処理を実行する場合も同様である。
まず、ステップS11では、第1ルータMACアドレス取得部12aが、クライアント121の直近のルータであるルータ111から、直近ルータMACアドレスを取得する。
ステップS12では、ルータMACアドレス登録部12bが、サービスサーバ200にクライアント121の直近ルータMACアドレスの情報を送信し、クライアント情報保存テーブル201aへの登録を要求する。
従って、サービスサーバ200のMACアドレス登録部202aは、クライアント121からの登録の要求に従い、受信した直近ルータMACアドレスと要求元のクライアント121の識別情報とを対応付けて、クライアント情報保存テーブル201aに登録する。
このようなMACアドレスの登録処理時の動作によれば、クライアントとクライアントに直近のルータとを対応付けて管理でき、後のクライアントからの問い合わせに対して直近ルータの情報を応答できる。
次に、サブネット判定の詳細について説明する。
まず、通信対象機器が同一サブネット内に所在する場合について例示する。
図7は、クライアントにより通信対象機器が同一サブネットに所在するか否かを判定するサブネット判定処理の流れの第1例を示す模式図である。図7では、クライアント121によりサブネット判定処理を実行し、通信対象機器がクライアント122である場合を例示する。
クライアント121が、クライアント122との間において通信する前に、クライアント122のサブネットを判定する場合、図7に示した(A),(B),(C)の順番に処理が実行する。(A)〜(C)の各々の処理は、以下の通りである。
(A)クライアント121は、通信対象機器としてのクライアント122の直近ルータMACアドレスをサービスサーバ200に問い合わせる。この問い合わせでは、クライアント121は、クライアント122の識別情報(例えばクライアントMACアドレスの情報)を、サービスサーバ200へ送信する。
(B)サービスサーバ200は、問い合わせに対して、クライアント情報保存テーブル201aを参照し、受信されたクライアントMACアドレスに対応する直近ルータMACアドレスを取得する。サービスサーバ200は、取得された直近ルータMACアドレスをクライアント121に通知する。この場合、クライアント122の直近ルータMACアドレスであるルータ111のMACアドレスが通知される。
(C)クライアント121は、クライアント121の直近のルータ111のMACアドレスと、サービスサーバ200から通知された通信対象機器の直近ルータMACアドレスと、を比較する。そして、クライアント121は、比較結果が一致したため、同一サブネットであると判定する。従って、クライアント121,122は、ローカルアドレスを用いて相互に通信を開始する。
より具体的には、クライアント121は、MACアドレス保存部11aを参照し、図5と同様のクライアント121の直近のルータ111のMACアドレス(XX:XX:XX:XX:XX:XX)を確認する。
また、クライアント121は、問い合わせの結果、クライアント122のMACアドレスと対応付けられた直近ルータMACアドレス(XX:XX:XX:XX:XX:XX)を確認する(図5参照)。
従って、クライアント121は、クライアント121の直近のルータ111のMACアドレス(XX:XX:XX:XX:XX:XX)と、サービスサーバ200から通知された直近ルータMACアドレス(XX:XX:XX:XX:XX:XX)と、を比較する。この場合、両者が同一であるので、同一サブネット内に所在すると判定し、ローカルアドレスを用いてP2P通信が可能であると判定する。
次に、通信対象機器が同一サブネット内に所在しない場合について例示する。
図8は、サブネット判定処理の流れの第2例を示す模式図である。図8では、クライアント121によりサブネット判定処理を実行し、通信対象機器がクライアント250である場合を例示する。
クライアント121が、クライアント250との間において通信する前に、クライアント250のサブネットを判定する場合、図8に示した(A),(B),(C)の順番に処理が実行する。(A)〜(C)の各々の処理は、以下の通りである。
(A)クライアント121は、通信対象機器としてのクライアント250の直近ルータMACアドレスをサービスサーバ200に問い合わせる。この問い合わせでは、クライアント121は、クライアント250の識別情報(例えばクライアントMACアドレスの情報)を、サービスサーバ200へ送信する。
(B)サービスサーバ200は、問い合わせに対して、クライアント情報保存テーブル201aを参照し、受信されたクライアントMACアドレスに対応する直近ルータMACアドレスを取得する。サービスサーバ200は、取得された直近ルータMACアドレスをクライアント121に通知する。この場合、クライアント250の直近ルータMACアドレスが通知される。
(C)クライアント121は、クライアント121の直近のルータ111のMACアドレスと、サービスサーバ200から通知された通信対象機器の直近ルータMACアドレスと、を比較する。そして、クライアント121は、比較結果が一致しないため、同一サブネットではないと判定する。この場合、クライアント121,250は、例えばインターネット150を介して、グローバルアドレスを用いて相互に通信を開始する。
より具体的には、クライアント121は、MACアドレス保存部11aを参照し、図5と同様のクライアント121の直近のルータ111のMACアドレス(XX:XX:XX:XX:XX:XX)を取得する。
また、クライアント121は、問い合わせの結果、クライアント250のMACアドレスと対応付けられた直近ルータMACアドレス(ZZ:ZZ:ZZ:ZZ:ZZ:ZZ)を取得する(図5参照)。
従って、クライアント121は、クライアント121の直近のルータ111のMACアドレス(XX:XX:XX:XX:XX:XX)と、サービスサーバ200から通知された直近ルータMACアドレス(ZZ:ZZ:ZZ:ZZ:ZZ:ZZ)と、を比較する。この場合、両者が不一致であるので、同一サブネット外に所在すると判定し、グローバルアドレスを用いて通信を行う。
図9は、クライアントによるサブネット判定処理時の動作例を示すフローチャートである。図9では、クライアント121がサブネット判定処理を実行する場合を例示するが、他のクライアントがサブネット判定処理を実行する場合も同様である。
まず、ステップS21では、第2ルータMACアドレス取得部12cが、サービスサーバ200に問い合わせ、直近ルータMACアドレスの情報を取得する。この通信対象機器は、例えば、クライアント122,123,250である。この問い合わせは、通信対象機器のクライアントMACアドレス等を用いて行う。
ステップS22では、サブネット判定部12dが、MACアドレス保存部11aに保存されたクライアント121の直近ルータMACアドレスと、サービスサーバ200から取得された通信対象機器の直近ルータMACアドレスと、を比較する。
MACアドレスが一致した場合、ステップS23進み、ステップS23では、処理ブロック12の通信処理部12eが、ローカルアドレスを用いて、クライアント121と通信対象機器との間において通信を開始するよう制御する。この場合に該当する通信対象機器は、例えばクライアント122である。
MACアドレスが不一致の場合はステップS24に進み、ステップS24では、処理ブロック12の通信処理部12eが、例えばインターネット150を介して、グローバルアドレスを用いて、クライアント121と通信対象機器との間において通信を開始するよう制御する。この場合に該当する通信対象機器は、例えばクライアント123,250である。
このようなサブネット判定処理時の動作によれば、LAN100内において同一のサブネットに所在するクライアントと通信する場合に、ローカルアドレスを用いて通信できる。一方、LAN100の外部に所在するクライアントと通信する場合、又は、LAN100内において異なるサブネットに所在するクライアントと通信する場合に、ローカルアドレスを用いた通信をせずに、グローバルアドレスを用いて通信する。従って、例えば同一のLAN内において多段にルータが設けられており、LAN内に異なるサブネットが存在する場合でも確実にサブネットを区別することができ、ローカルアドレスを用いて通信できない場合を把握することができる。そのため、確実に通信できるIPアドレス(ローカルアドレスまたはグローバルアドレス)を選択でき、通信の信頼性を低下させずに通信できる。
また、クライアント側においてサブネット判定処理を実行するので、サービスサーバ200の処理負荷を低減できる。
次に、サブネット判定処理の変形例について説明する。
図10及び図11は、クライアントによるサブネット判定処理時の動作の変形例を示すフローチャートであり、図10はクライアント側、図11はサーバ側の処理を表している。
図9では、クライアント(例えばクライアント121)が通信対象機器のサブネット判定処理を実行する例を示したが、図10,図11に示すように、サービスサーバ200が通信対象機器のサブネット判定処理を実行してもよい。
まず、図10のステップS31では、クライアント121のルータMACアドレス登録部12bは、例えば通信対象機器との間において通信を開始する前に、通信対象機器が属するサブネットについて、クライアント121が属するサブネットと同じがどうかサービスサーバ200へ問い合わせる。この問い合わせは、例えば、通信対象機器の識別情報(例えばMACアドレスの情報)と、クライアント121の識別情報(例えばMACアドレスの情報)と、を含む。
図11のステップS41では、サービスサーバ200のMACアドレス登録部202aは、クライアント121からの問い合わせを受信する。
ステップS42では、サービスサーバ200のサブネット判定部(不図示)は、クライアント121からの問い合わせを受け、クライアント情報保存テーブル201aを参照する。サービスサーバ200のサブネット判定部(不図示)は、クライアント121のMACアドレスに対応する直近ルータMACアドレスと、通信対象機器のMACアドレスに対応する直近ルータMACアドレスと、を比較する。そして、サービスサーバ200のサブネット判定部(不図示)は、クライアント121が所在するサブネットと通信対象機器が所在するサブネットとが一致するか、不一致であるかを判定する。
ステップS43では、サービスサーバ200は、サブネットの判定結果を、問い合わせ元のクライアント121に通知する。
図10のステップS32では、クライアント121の第2ルータMACアドレス取得部12cは、サービスサーバ200からの問い合わせの結果を受信する。
ステップS33では、クライアント121の通信処理部12eは、サービスサーバ200から通知されたサブネットの判定結果を参照する。通信対象機器がクライアント121と同一サブネットであればS34に進み、別のサブネットであればS35に進む。
ステップS34では、ローカルアドレスを用いてクライアント121と通信対象機器との間において通信を開始する。
ステップS35では、例えばインターネット150のサーバを介して、グローバルアドレスを用いて通信を開始する。
このようなサブネット判定処理時の動作によれば、サーバ側においてサブネット判定を実行する場合でも、サブネットを精度良く区別できる。従って、例えば同一のLAN内において多段にルータが設けられており、LAN内に異なるサブネットが存在する場合でも確実にサブネットを区別することができ、ローカルアドレスを用いて通信できない場合を把握することができる。そのため、確実に通信できるIPアドレス(ローカルアドレスまたはグローバルアドレス)を選択でき、通信の信頼性を低下させずに通信できる。
また、サーバ側においてサブネット判定処理を実行するので、クライアントの処理負荷を低減できる。従って、例えばクライアントを携帯端末など処理能力の低い機器とする場合に有益である。
通信システム1000によれば、同一のサブネットに属する通信機器同士において通信する場合、ローカルアドレスを用いてP2P通信することにより、インターネット150にかかる負荷を低減し、通信コストを削減できる。
(第2の実施形態)
図12は、第2の実施形態における通信システム1000Bの構成例を示す模式図である。通信システム1000Bは、LAN100Bを含む。LAN100Bは、ルータ111Bを含む。ルータ111Bは、有線又は無線により他の通信機器と接続される。クライアント121は、有線によりルータ111Bと接続されている。クライアント122Bは、無線によりルータ111Bと接続されている。
また、通信システム1000Bは、サービスサーバ200Bを含む。サービスサーバ200Bは、クライアント情報保存テーブル201aの代わりに、後述するクライアント情報保存テーブル201bを含む。
なお、通信システム1000Bにおいて、通信システム1000と同様の構成については、同一の符号を付し、説明を省略又は簡略化する。
無線、有線が混在する通信システム1000Bでは、2つのクライアント121,122Bは同一のルータ111Bの配下に接続されているが、ルータ111BのMACアドレスは、有線か無線かにより異なる場合がある。つまり、2つのクライアント121,122Bは同一のサブネットに属するが、ルータ111BのMACアドレスが有線か無線かにより異なるので、サブネット判定において異なるサブネットとして誤判定される可能性がある。この場合でも、後述するように行うことでサブネットの誤判定を防ぐことができる。
ここで、ルータには様々な種類があるため、本実施形態では、有線と無線のMACアドレスの差が±3以内の場合を例に説明する。なお、この±の範囲は、ルータ毎に異なるため、±3はその一例である。サブネット判定部12dは、このMACアドレスの差を考慮し、MACアドレスの判定の際、MACアドレスの差が±3以内であれば、ローカルアドレスを用いて通信可能と判定する。
しかしながら、2つの異なるルータに接続されている通信機器のそれぞれのルータのMACアドレスの差が偶然に±3の範囲にある場合、ローカルアドレスを用いて通信可能と、誤判定される。この場合でも、後述するように行うことでMACアドレスによる誤判定を防ぐことができる。
その誤判定を防ぐ方法として例えば、各通信機器のグローバルアドレスも考慮することにより、誤判定を防止できる。グローバルアドレスは、例えば、インターネット150に配置されるSTUN(Simple Traversal of UDP through NATs)サーバを用いて取得できる。具体的には、通信機器が、STUNサーバとの間において、RFC(Request for Comments)5389に定められたSTUNプロトコルを実行することにより、取得できる。
図13は、サービスサーバ200Bのクライアント情報保存テーブル201bの具体的な構成例を示す図である。
サービスサーバ200Bでは、クライアント情報保存テーブル201bに、事前に所定の情報が登録される。クライアント情報保存テーブル201bには、クライアントMACアドレスの情報と、クライアントの直近ルータMACアドレスの情報と、クライアントの直近ルータに割り当てられたグローバルアドレスの情報と、が対応付けて保存される。つまり、クライアント情報保存テーブル201bは、グローバルアドレスの情報を追加した点が、図5に示したクライアント情報保存テーブル201aと異なる。
図13では、クライアント情報保存テーブル201bに、クライアント121,122Bについての情報が登録されていることを例示している。図13では、クライアント121のMACアドレスが、(AA:AA:AA:AA:AA:AA)である。クライアント121の直近のルータ111BのMACアドレスが、(XX:XX:XX:XX:XX:XX)である。
また、図13では、クライアント122BのMACアドレスが、(BB:BB:BB:BB:BB:BB)である。クライアント122Bの直近のルータ111BのMACアドレスが、(XX:XX:XX:XX:XX:XX’)である。なお、ここで、「XX:XX:XX:XX:XX:XX」と「XX:XX:XX:XX:XX:XX’」との差は+2であるとする。
すなわち、2つのクライアント121,122Bの直近ルータMACアドレスは、±3の範囲内で異なる。また、クライアント情報保存テーブル201bに登録された2つのグローバルアドレスは、同一である。
次に、通信システム1000Bにおける各装置の動作例について説明する。
図14は、クライアントによるサブネット判定処理時の動作例を示すフローチャートである。図14では、クライアント121がサブネット判定処理を実行する場合を例示するが、他のクライアントがサブネット判定処理を実行する場合も同様である。
まず、ステップS51では、第2ルータMACアドレス取得部12cが、サービスサーバ200Bに問い合わせ、通信対象機器の直近ルータMACアドレスおよびグローバルアドレスを取得する。この問い合わせは、通信対象機器のクライアントMACアドレスの情報を含む。
ステップS52では、サブネット判定部12dが、MACアドレス保存部11aに保存されたクライアント121の直近ルータMACアドレスと、問い合わせにより取得された通信対象機器の直近ルータMACアドレスと、を比較する。両者が一致する場合はステップS53に進み、不一致の場合はステップS54に進む。
ステップS53では、処理ブロック12の通信処理部12eは、ローカルアドレスを用いて、クライアント121と通信対象機器との間において通信を開始するよう制御する。この通信対象機器は、例えばクライアント122Bである。
ステップS54では、処理ブロック12のサブネット判定部12dが、クライアント121の直近ルータMACアドレスと、サービスサーバ200Bから取得された通信対象機器の直近ルータMACアドレスとの差が±3の範囲内か否かを判定する。この差が±3の範囲内であればステップS55に進み、この差が±3の範囲外であればS56に進む。
ステップS55では、処理ブロック12のサブネット判定部12dが、直近ルータのグローバルアドレスと、サービスサーバ200Bから取得された通信対象機器のグローバルアドレスと、を比較する。両者が一致する場合はステップS53に進み、不一致の場合はステップS56に進む。
ステップS56では、処理ブロック12の通信処理部12eが、例えばインターネット150を介して、グローバルアドレスを用いて通信を開始するよう制御する。
図14の判定方式を用いれば、121と122Bは同一サブネットと判定することができ、ローカルアドレスでの通信が可能となる。
このようなサブネット判定処理の動作によれば、無線及び有線接続に対応可能なルータを用いる場合でも、通信の信頼性を向上できる。例えば、通信対象機器の直近ルータMACアドレスが自装置の直近ルータMACアドレスと多少異なっても、差異が許容範囲であれば、サブネットが一致すると推定できる。従って、サブネットが一致するか否かの判定精度が向上する。
なお、第1の実施形態と同様に、グローバルアドレスも加味したサブネット判定処理を、サービスサーバ200Bにより実行してもよい。
また、本実施形態においては、図13に示すようにグローバルアドレスを用いて、サブネットを判定しているが、多段ルータの場合、グローバルアドレスではなく、MACアドレスを取得したルータの直近のルータ(1つ上位のルータ)から付与されたアドレス、つまり、MACアドレスを取得したルータと、直近のルータとが属するサブネット内で用いられるローカルアドレスを用いて、行うことが望ましい。
上述した実施形態を具体的に適用した例について説明する。図15は、第1の実施形態及び第2の実施形態の通信システムを家庭内に適用した模式図である。なお、通信システム1000Cにおいて、通信システム1000又は通信システム1000Bと同様の構成については、同一の符号を付し、説明を省略又は簡略化する。
通信システム1000Cでは、例えば家庭内に設置されるLAN100Cを含む。LAN100Cは、ルータ111Bを介してインターネット150と接続されている。インターネット150には、サービスサーバ200Cが接続されている。
図15では、LAN100Cは、4台のクライアント131,132,133,134と、ルータ111Bを含む。クライアント及びルータの台数は一例であり、この台数以外でもよい。
クライアント131は、例えばネットワークカメラであり、有線又は無線接続によりルータ111Bの配下に接続されている。クライアント132は、例えばドアホンであり、有線又は無線接続によりルータ111Bの配下に接続されている。クライアント133は、例えばスマートフォンであり、必要に応じて有線又は無線接続によりルータ111Bの配下に接続され、家庭の外に持ち出した場合はクライアント133Aとなり、モバイル通信回線151を介してインターネット150に接続される。クライアント134は、例えばポータブルナビゲーション装置であり、必要に応じて有線又は無線接続によりルータ111Bの配下に接続される。
上記のような通信システム1000Cは、通信環境の変化に適応して通信方法を制御することができる。例えば、ドアホンであるクライアント132において、訪問者がある旨のアラートが発生した場合、例えばスマートフォンであるクライアント133に対して通信を行うとする。
この場合、クライアント133は、家庭内に所在するか、家庭外に所在するかで通信環境が変化する。この通信環境の変化を、サブネット判定を用いて判定することで、クライアント133がどこにいてもローカルアドレスで通信するかグローバルアドレスで通信するか適切な通信方法を用いて行うことができる。
さらに、家庭内に備え付けられているドアホンのようなクライアント132と、家庭内、家庭外に移動可能なスマートフォンのようなクライアント133とのサブネット判定は、同一サブネットにあると判定した場合、家庭内にあることが分かるため、クライアント133に通知する内容を切り替えることができる。
例えば、処理ブロック12のサブネット判定部12dが、クライアント133が同一サブネットに所在すると判定した場合、クライアント133が家庭内に所在すると判定し、通信の暗号化を省略してもよい。つまり、安全な通信環境であると推定できるので、セキュリティレベルを下げてもよい。従って、SSL(Secure Socket Layer)、IPsec(Security Architecture for Internet Protocol)等の通信の暗号化を省略してもよい。
また、処理ブロック12のサブネット判定部12dが、クライアント133が同一サブネットに所在すると判定した場合、所定の動作を変更する、例えば、所定のアラートをクライアント133に通知しなくてもよい。所定のアラートは、例えば、クライアント132が送出する訪問者の発生を示すアラートや、その他電子錠や家庭内の家電の制御信号など、クライアント132が検知可能なアラートを含む。つまり、クライアント133のユーザが宅内におり、通知する必要がないものについては省略することが望ましいと考えられるためである。
また、処理ブロック12のサブネット判定部12dが、クライアント133が同一サブネットに所在すると判定した場合、クライアント133へのデータ転送において、送信データ量を切り替えてもよい。
例えば、同一サブネット内のクライアント133に送信する場合、モバイル通信回線151を使用せず、ルータ111Bを介して通信を行うのみであり、モバイル通信回線151のデータ使用量を気にすることがなく利用できるため、高解像度の画像を送信することもできる。また、同一サブネット外のクライアント133に送信する場合、モバイル通信回線151を介して通信を行うため、解像度を下げて送信データ量を低減させてもよい。
以上のように、常に家庭内にあるクライアントと家庭内、家庭外を移動可能なクライアントがある場合に、サブネット判定を行うことで、家庭内、家庭外を移動可能なクライアントの所在を特定することができる。
(第3の実施形態)
直近ルータMACアドレスを利用した利用例について説明する。図16は、クライアントの通信環境の変化例を示す模式図である。例えば、ユーザが所有するクライアントを他人に譲渡することにより、このクライアントの通信環境が変化する。
通信環境301Aでは、宅内ネットワーク310(例えば家庭内のLAN)にクライアント311及びルータ312が配置されている。クライアント311は、ルータ312を介してインターネット150に接続されている。クライアント311は、例えばネットワークカメラである。
また、通信環境301Aでは、宅内ネットワーク320(例えば企業内のLAN)にクライアント321が配置されている。クライアント321は、インターネット150と接続されている。クライアント321は、例えばノートパソコンである。
ユーザAは、通信環境301Aにおいてクライアント311を所有している。また、ユーザAは、例えば、宅内ネットワーク320内においてクライアント321を使用し、インターネット150及びサービスサーバ200Dを経由して、宅内ネットワーク310のクライアント311を遠隔操作するサービスを利用している。遠隔操作は、例えば、撮影された画像を見るための操作を含む。
通信環境301Aにおいてサービスサーバ200Dに所定のサービスを利用可能な状態に登録したまま、別のユーザBにクライアント311を譲渡すると、通信環境301Aから通信環境301Bに変化する。
通信環境301Bでは、ユーザBは、宅内ネットワーク330において譲渡されたクライアント311を所有している。クライアント311は、ルータ331を介して、インターネット150及びサービスサーバ200Dと接続されている。
また、通信環境301Bでは、ユーザAが所定のサービス(例えば上述のユーザAによりクライアント311を遠隔操作するためのサービス)を解約しておらず、サービスサーバ200Dにサービス利用が可能な状態に維持されていることも想定される。
この場合、ユーザBの意図に関わらず、すでにユーザBに譲渡されたクライアント311を、ユーザAから遠隔操作される恐れがある。
これに対して、本実施形態によれば、このような通信環境の変化が発生した場合、特定のユーザ(例えばユーザA)を含むユーザからのアクセスを制限するため、本来禁止されるべきサービスの利用(例えば遠隔操作)を防止できる。
次に、本実施形態の通信システム1000Dの構成例について説明する。
図17は、通信システム1000Dの各装置の構成例を示すブロック図である。通信システム1000Dでは、サービス提供クライアント400が、ルータ450(図16のルータ312,331に相当)を介してインターネット150と接続されている。また、インターネット150には、サービスサーバ200D及びサービス利用クライアント500が接続されている。
サービス提供クライアント400は、所定のサービスを提供するためのクライアントであり、サービス提供装置の一例である。サービス提供クライアント400は、例えば、ネットワークカメラにより撮影された画像を提供する。サービス提供クライアント400は、例えば、図16に示したクライアント311に相当する。
サービス利用クライアント500は、所定のサービスを利用するクライアントであり、サービス利用クライアントの一例である。サービス利用クライアント500は、例えば、ネットワークカメラを遠隔操作し、画像を取得する。サービス利用クライアント500は、例えば、図16に示したクライアント321,332に相当する。
サービス提供クライアント400は、メモリ410、処理ブロック420、及びインタフェース430を備える。
メモリ410は、MACアドレス保存部411を有する。MACアドレス保存部411は、メモリ410における例えば不揮発性の記憶領域に割り当てられ、サービス提供クライアント400の識別情報(例えばMACアドレスの情報)を予め保持する。
処理ブロック420は、マイクロコンピュータ又は特定の処理を実行可能な専用のハードウェアにより構成できる。処理ブロック420は、ルータMACアドレス登録部421、第1ルータMACアドレス取得部422、第2ルータMACアドレス取得部423、及びサブネット判定部424の各機能を有する。
第1ルータMACアドレス取得部422は、ネットワークにおいて、サービス提供クライアント400の直近ルータの識別情報(例えばMACアドレスの情報)を取得する。なお、第1ルータMACアドレス取得部422は、サービス提供クライアント400の直近ルータMACアドレスの情報を事前に取得し、メモリ410に保存してもよい。これにより、直近ルータMACアドレスの情報を素早く参照できる。つまり、第1ルータMACアドレス取得部422は、図2に示した第1ルータMACアドレス取得部12aと同様の機能を有する。
ルータMACアドレス登録部421は、第1ルータMACアドレス取得部422により取得されたルータMACアドレスの情報を、サービスサーバ200Dに登録するよう要求する。つまり、ルータMACアドレス登録部421は、図2に示したルータMACアドレス登録部12bと同様の機能を有する。
第2ルータMACアドレス取得部423は、サービス提供クライアント400の通信対象機器の直近ルータの識別情報(例えばMACアドレスの情報)を、サービスサーバ200Dから取得する。つまり、第2ルータMACアドレス取得部423は、図2に示した第2ルータMACアドレス取得部12cと同様の機能を有する。
サブネット判定部424は、サービス提供クライアント400と通信対象機器とのサブネットが一致するか否かを判定する。例えば、サブネット判定部424は、第1ルータMACアドレス取得部422が取得したルータMACアドレスと、第2ルータMACアドレス取得部423が取得したルータMACアドレスと、を比較する。比較の結果、両者が一致した場合には、両クライアントが同一のサブネットに所在すると判定する。つまり、サブネット判定部424は、図2に示したサブネット判定部12dと同様の機能を有する。
インタフェース430は、サービス提供クライアント400がTCP/IPに従って、インターネット150に接続するための通信インタフェースを提供する。
イベント処理部425は、例えば、サービス提供クライアントに発生したイベントを検知し、イベントが発生した旨を通知する。
サービス提供処理部426は、例えば、サービス提供クライアントがサービスを提供するための処理を実行する。この処理は、例えば、ネットワークカメラにより撮影された画像の転送を含む。
通信処理部427は、サブネット判定部424による判定結果に基づいて、通信対象機器との間において、ローカルアドレス又はグローバルアドレスを用いて通信するための処理を実行する。つまり、通信処理部427は、図2に示した通信処理部12eと同様の機能を有する。
サービスサーバ200Dは、メモリ201D、処理ブロック202D、及びインタフェース203を有する。
メモリ201Dは、クライアント情報保存テーブル210を有する。クライアント情報保存テーブル210は、メモリ201Dにおける例えば不揮発性の記憶領域に割り当てられる。所定の登録処理により、各クライアントの管理に利用可能な情報がクライアント情報保存テーブル210に登録される。
処理ブロック202Dは、マイクロコンピュータ又は特定の処理を実行可能な専用のハードウェアにより構成できる。処理ブロック202Dは、MACアドレス登録部202a、MACアドレス送信部202b、MACアドレス変更監視部202c、及びサービス利用処理部202dを有する。MACアドレス登録部202a及びMACアドレス送信部202bについては図2において説明したので、説明を省略する。
MACアドレス変更監視部202cは、例えば、クライアント情報保存テーブル210に登録されている直近ルータMACアドレスの変更(通信環境の変化)を監視する。MACアドレス変更監視部202cは、情報比較部、情報設定部、情報取得部としての機能を有する。
サービス利用処理部202dは、例えば、サービス提供クライアント400が提供するサービスを利用するための処理を実行する。例えば、サービス利用処理部202dは、各クライアントからのユーザのアクセスに対して、所定のサービスの利用可否を判定する。サービス利用処理部202dは、サービス利用可否判定部、情報取得部、情報送信部としての機能を有する。
インタフェース203は、サービスサーバ200DがTCP/IPに従って、ネットワークに接続するための通信インタフェースを提供する。
サービス利用クライアント500は、処理ブロック510を有する。処理ブロック510は、マイクロコンピュータ又は特定の処理を実行可能な専用のハードウェアにより構成できる。処理ブロック510は、サービス利用アクセス部511及びサービス利用処理部512を含む。
サービス利用アクセス部511は、サービス利用アクセス部511は、サービスサーバ200Dにより所定のサービスの利用を許可された場合、インターネット150にアクセスし、所定のサービスを利用するためのデータを通信する。所定のサービスは、例えば、ネットワークカメラを遠隔操作するサービス、又は特定の機器が発生したアラートを他のクライアントに通知するサービス、を含む。サービス利用アクセス部511は、情報送信部及び情報取得部としての機能を有する。
サービス利用処理部512は、例えば、サービス提供クライアント400が提供するサービスを利用するための処理を実行する。例えば、サービス利用処理部512は、サービスサーバ200Dにより所定のサービスの利用を許可されなかった場合、ユーザに対して、サービス利用が許可されない旨を示すエラーを表示し、又はエラーを特定のクライアントに通知する。また、表示以外の方法(例えば音声出力)によりエラーをユーザに提示してもよい。
なお、サービス利用クライアント500、サービスサーバ200D、サービス提供クライアント400の機能を一体化してもよい。これにより、例えば、あるサービスについてはサービス提供クライアントとして動作し、他のサービスについてはサービス利用クライアントとして動作できる。
図18(A),(B)は、サービスサーバ200Dのクライアント情報保存テーブル210の具体的な構成例を示す図である。
クライアント情報保存テーブル210は、クライアントMACアドレスと、当該クライアントの直近ルータMACアドレスと、当該クライアントに対するサービスの利用可否を示すサービス利用フラグと、を対応付けて保存する。サービス利用フラグは、サービスの利用許可を示す「ON」状態と、サービスの利用禁止を示す「OFF」状態と、のいずれかに設定される。
クライアント情報保存テーブル210と図5に示したクライアント情報保存テーブル201aとの相違点は、サービス利用フラグの情報を保持する点である。
図18(A),(B)における上から1行目のクライアントMACアドレス、直近ルータMACアドレス、およびサービス利用フラグにより構成される1組の情報は、例えば、図16に示した通信環境301Aのクライアント311の情報である。
この場合、上から1番目のクライアントMACアドレス(AA:AA:AA:AA:AA:AA)は、クライアント311のMACアドレスである。また、上から一番目の直近ルータMACアドレス(XX:XX:XX:XX:XX:XX)は、クライアント311の直近ルータであるルータ312のMACアドレスである。
また、クライアント311に対するサービスを許可する場合、図18(A)に示すように、1番目のサービス利用フラグは「ON」にされる。クライアント311に対するサービスを禁止する場合、図18(B)に示すように、1番目のサービス利用フラグが「OFF」にされる。
次に、通信システム1000Dにおける各装置の動作例について説明する。
まず、サービス提供クライアント400によるサービスを登録するサービス登録処理について説明する。
図19は、通信システム1000Dによるサービス登録処理時の動作例を示すフローチャートである。図19の処理は、クライアント311の動作とサービスサーバ200Dの動作とが含まれる。なお、クライアント311は、サービス提供クライアント400の一例であり、他のサービス提供クライアント400がサービス登録処理を実行する場合も、同様である。
まず、ステップS61では、クライアント311の第1ルータMACアドレス取得部422が、クライアント311の直近のルータ312のMACアドレスを取得する。
ステップS62では、クライアント311のルータMACアドレス登録部421が、クライアント311のMACアドレスの情報と、ルータ312のMACアドレスの情報と、をサービスサーバ200Dに送信し、これらの情報の登録を要求する。
ステップS63では、サービスサーバ200DのMACアドレス登録部202aは、クライアント311からの登録要求に対して、クライアント情報保存テーブル210を参照する。そして、MACアドレス登録部202aは、クライアント311のクライアントMACアドレスが、既にクライアント情報保存テーブル210に登録されているか否かを判定する。クライアントMACアドレスが未登録である場合にはステップS64に進み、クライアントMACアドレスが登録済みである場合にはステップS65に進む。
ステップS64では、サービスサーバ200DのMACアドレス登録部202aは、クライアント311のクライアントMACアドレスと直近ルータMACアドレスとサービス利用フラグとを対応付けて、クライアント情報保存テーブル210に登録する。この直近ルータMACアドレスは、ルータ312のMACアドレスである。また、この場合(サービス登録時)のサービス利用フラグは、初期状態として例えば「ON」に設定される。
ステップS65では、サービスサーバ200DのMACアドレス登録部202aは、クライアント情報保存テーブル210において、クライアント311のクライアントMACアドレスと対応付けられたサービス利用フラグを参照し、サービス加入状態を判定する。サービス利用フラグが「OFF」である場合、サービスが未登録状態であるのでステップS64に進む。サービス利用フラグが「ON」である場合、サービスが登録状態であるのでステップS66に進む。
ステップS66では、サービスサーバ200DのMACアドレス登録部202aは、クライアント情報保存テーブル210への登録を中止する。これにより、同一のクライアント311によるサービスの二重登録を防止できる。また、MACアドレス登録部202aは、必要に応じてエラーを通知する。
このようなサービス登録処理時の動作によれば、クライアント311が提供するサービスを重複なく確実に登録できる。
次に、サービス提供クライアント400の機器起動時又は定期通信時の処理について説明する。
図20は、通信システム1000Dによる機器起動時又は定期通信時の処理の一例を示すフローチャートである。図20の処理には、クライアント311の動作とサービスサーバ200Dの動作とが含まれている。なお、クライアント311は、サービス提供クライアント400の一例であり、他のサービス提供クライアント400が上記処理を実行する場合も、同様である。
図20の処理は、クライアント311が起動した時、又は予め定めた定期通信を実行する時に、実行される。
まず、ステップS71では、クライアント311の第1ルータMACアドレス取得部422は、クライアント311の直近のルータ312のMACアドレスを、ルータ312から取得する。
ステップS72では、クライアント311のルータMACアドレス登録部421が、クライアント311のMACアドレスの情報と、ルータ312から取得した直近ルータMACアドレスの情報とを、サービスサーバ200Dに送信する。そして、ルータMACアドレス登録部421は、クライアント311に関する登録状態の確認をサービスサーバ200Dに要求する。
ステップS73では、サービスサーバ200DのMACアドレス変更監視部202cが、クライアント311からの確認要求に対し、クライアント311の登録状態を確認する。具体的には、MACアドレス変更監視部202cは、クライアント情報保存テーブル210に保存されクライアント311のクライアントMACアドレスに対応する直近ルータMACアドレスと、クライアント311からの直近ルータMACアドレスと、を比較する。比較の結果、両者が一致する場合には図20の処理を終了し、両者が不一致である場合にはステップS74に進む。
ステップS74では、MACアドレス変更監視部202cは、クライアント情報保存テーブル210に保存されクライアント311のクライアントMACアドレスに対応するサービス利用フラグを、OFFに切り替える。
なお、サービス利用フラグをONにするには、例えばクライアント311に備えられているスイッチを押すことによって実現することができ、これによりクライアント311を現在所有しているユーザのみがサービス利用フラグをONにすることができる。
更に、このサービス利用フラグをONにする際に、クライアント311とクライアント(ユーザ)との紐付け登録を行うことにより、特定のクライアント(ユーザ)のみクライアント311と通信を行うことができる。
このような動作によれば、通信環境の変化(例えば図16に示した通信環境301Aから通信環境301Bへの通信環境の変化)が生じた場合に、クライアント311の動作を制限する(例えばサービスの停止等)ことができる。従って、通信環境が変化し、クライアント311のユーザが変更された場合であっても、前ユーザからの覗き見を防止できる。
次に、サービス提供クライアント400のイベント発生時の処理について説明する。
図21は、通信システム1000Dによるイベント発生時のユーザへの通知処理の一例を示すフローチャートである。図21の処理には、クライアント311の動作とサービスサーバ200Dの動作とが含まれている。なお、クライアント311は、サービス提供クライアント400の一例であり、他のサービス提供クライアント400が上記処理を実行する場合も、同様である。
提供するサービスがサービスサーバ200Dに登録されたクライアント311に、所定のイベント(例えば、アラート発生等)が生じると、図21の処理が実行される。
まず、ステップS81では、クライアント311のイベント処理部425は、イベントの発生をサービスサーバ200Dに通知する(イベント発生通知)。
ステップS82では、サービスサーバ200Dのサービス利用処理部202dは、クライアント311からのイベント発生通知を受信する。
ステップS83では、サービスサーバ200Dのサービス利用処理部202dは、サービス利用可否を判定する。すなわち、サービス利用処理部202dは、イベント発生通知を送信したクライアント311のクライアントMACアドレスに対応付けられたサービス利用フラグを、クライアント情報保存テーブル210から取得し、サービス利用可否を判定する。サービス利用フラグがONである場合にはステップS84に進み、サービス利用フラグがOFFである場合には図21の処理を終了する。
ステップS84では、クライアント311が提供するサービスを利用できる状態である。サービスサーバ200Dのサービス利用処理部202dは、クライアント311にイベントに基づく情報(例えばイベントが発生した旨)を、サービスサーバ200Dに例えば予め登録されたクライアントに対して通知する。
例えば、サービス利用処理部202dは、図16に示すユーザAが所持するクライアント321に対して、例えば電子メールを送信し、イベントの発生を通知する。クライアント321へのイベント発生は、サービスサーバ200Dを介して通知されてもよい。なお、クライアント321は、サービス利用クライアント500の一例であり、他のクライアントへイベントの発生が通知されてもよい。
このようなイベント発生時の処理によれば、前の利用者に誤って送信することを防ぐことができる。
さらに、予めサービスを利用可能なクライアントを設定しておくことで、イベントが発生時に、設定したクライアント(例えばクライアント321)に限り、イベントが発生した旨を通知できる。従って、特定のユーザに限り、イベントに伴うサービス(例えばドアホンが押下されるイベントが発生した場合における訪問者の確認サービス)を利用できる。
次に、サービス利用クライアント500によるサービス利用時の処理について説明する。
図22は、通信システム1000Dによるサービス利用時の処理の一例を示すフローチャートである。図22の処理は、例えば、図16に示した通信環境301Aにおいて、ユーザAが所持するクライアント321が、サービスサーバ200Dを介して、クライアント311を遠隔操作する場合に、クライアント321により実行される。
なお、クライアント311は、サービス提供クライアント400の一例であり、他のクライアントによりサービスを提供してもよい。また、クライアント321は、サービス利用クライアント500の一例であり、他のクライアントによりサービスを利用してもよい。
まず、ステップS91では、クライアント321のサービス利用アクセス部511は、サービスサーバ200Dにアクセスする。この場合、例えば、サービスの提供元のクライアント311のクライアントMACアドレスの情報、又はサービス自体の識別情報をサービスサーバ200Dへ送信する。また、サービス利用アクセス部511は、クライアント311のクライアントMACアドレスに対応するサービス利用フラグの情報を、サービスサーバ200Dから取得する。
この場合、サービスサーバ200Dのサービス利用処理部202dは、クライアント情報保存テーブル210を参照し、クライアント311のクライアントMACアドレスに対応するサービス利用フラグを取得し、クライアント321へ送信する。
ステップS92では、クライアント321のサービス利用処理部512は、サービスサーバ200Dから取得したサービス利用フラグを参照し、サービス利用状態を把握する。サービス利用フラグがOFFである場合にはステップS93に進み、サービス利用フラグがONである場合にはステップS94に進む。
ステップS93では、クライアント321のサービス利用処理部512は、サービス利用フラグがOFFであるので、サービス利用が許可されていない旨を示すエラー(サービス利用エラー)を提示する。従って、クライアント321のユーザは、サービス利用が許可されていないことを認識できる。
ステップS94では、クライアント321のサービス利用処理部512は、サービス利用フラグがONであるので、サービスを利用するための処理を実行する。例えば、クライアント321がクライアント311を遠隔操作する。また、例えば、サービス提供クライアント400がネットワークカメラである場合、サービス利用クライアント500がネットワークカメラにより撮影された画像を確認できる。
このようなサービス利用時の処理によれば、サービス利用フラグに基づいて、信頼性の高いサービス提供が受けられる。サービス利用可否については、定期的に更新されるので、最新の状態に基づいたサービス提供が受けられる。また、サービス利用できない旨をユーザが確認することもできる。
なお、図22の処理では、サービス利用可否をクライアント321が判定する場合を想定したが、サービスサーバ200Dがサービス利用可否を判定してもよい。例えば、クライアント321は、サービスの提供元のクライアント311のクライアントMACアドレスを送信する。サービスサーバ200Dは、クライアント情報保存テーブル210を参照し、クライアント311のクライアントMACアドレスに対応するサービス利用フラグに基づいて、サービス利用可否を判定できる。この場合、サービスサーバ200Dは、サービス利用可否の判定結果を、クライアント321に通知する。
次に、図20に示した通信システム1000Dによる機器起動時又は定期通信時の処理の変形例について説明する。
図23及び図24は、通信システム1000Dによる機器起動時又は定期通信時の処理の変形例を示すフローチャートである。図23ではクライアント311の動作例を示し、図24ではサービスサーバ200Dの動作例を示す。なお、クライアント311は、サービス提供クライアント400の一例であり、他のサービス提供クライアント400が上記処理を実行する場合も、同様である。
図23及び図24の処理は、クライアント311が起動した時、又は予め定めた定期通信を実行する時に、実行される。
まず、図23のステップS101では、クライアント311の第1ルータMACアドレス取得部422は、クライアント311の直近のルータ312のMACアドレスを取得する。
ステップS102では、クライアント311のルータMACアドレス登録部421が、クライアント311の識別情報(例えばMACアドレスの情報)を、サービスサーバ200Dに送信する。これにより、ルータMACアドレス登録部421は、サービスサーバ200Dのクライアント情報保存テーブル210に登録されている直近ルータMACアドレスを問い合わせる。
サービスサーバ200Dでは、MACアドレス変更監視部202cが、クライアント311から問い合わせを受信すると、図24のステップS111からステップS112の処理に進む。
図24のステップS112では、サービスサーバ200DのMACアドレス変更監視部202cが、クライアント情報保存テーブル210を参照し、クライアント311のクライアントMACアドレスに対応する直近ルータMACアドレスの情報を取得する。
ステップS113では、サービスサーバ200DのMACアドレス変更監視部202cは、取得された直近ルータMACアドレスの情報を、問い合わせ元のクライアント311を通知する。
図23のステップS103では、クライアント311の第1ルータMACアドレス取得部422は、サービスサーバ200Dから問い合わせの結果を受信する。
ステップS104では、クライアント311のサブネット判定部424は、MACアドレス保存部411に保存されている直近ルータMACアドレスと、サービスサーバ200Dから受信された直近ルータMACアドレスと、を比較する。両者が一致する場合には図23の処理を終了し、両者が不一致である場合にはステップS105に進む。
保存された直近ルータMACアドレスは、第1のルータの第1の識別情報の一例であり、受信された直近ルータMACアドレスは、第1のルータの第2の識別情報の一例である。
ステップS105では、クライアント311のサービス提供処理部426は、クライアント311が提供するサービスの利用を停止(禁止)するよう、サービスサーバ200Dに対して要求する。
サービスサーバ200Dでは、サービス利用処理部202dが、クライアント311からの要求を受信すると、図24のステップS114からステップS115の処理に進む。
図24のステップS115では、サービスサーバ200Dのサービス利用処理部202dは、クライアント情報保存テーブル210を参照し、クライアント311のクライアントMACアドレスに対応するサービス利用フラグを検索する。サービス利用処理部202dは、検索されたサービス利用フラグを、OFFに切り替える。例えば、図16に示した通信環境301Aから通信環境301Bへの変化が生じた可能性があるので、サービスの利用を停止させる。
このように、サービス提供クライアント400を例えば移動又は譲渡できる場合、通信環境が変化する可能性がある。この場合、サービス提供クライアント400の過去のユーザにより、サービス提供クライアント400又はサービス提供クライアント400に付随するサービスが不正に使用される可能性がある。
図20又は図23の処理によれば、通信環境の変化に伴ってクライアントの直近ルータMACアドレスが変化した場合、対応するサービス利用フラグをOFFに切り替え可能である。従って、サービス提供クライアント400の本来のユーザの意思と無関係に、第三者によってサービス提供クライアント400が操作され、又はサービスが不正に利用されることを防止できる。
通信システム1000Dは、例えばサービス提供クライアント400の通信環境の変化が発生しても、特定のユーザによる本来禁止されるべきサービスの利用(例えば遠隔操作)を防止できる。通信システム1000Dでは、通信環境の変化を逐次実施するので、サービス利用可否情報は迅速に高精度に設定される。従って、通信の信頼性を向上できる。
また、第3の実施形態においても、第1及び第2の実施形態と同様に、クライアントが同一のサブネットに配置された場合、ローカルアドレスを用いて通信し、クライアントが異なるサブネットに配置された場合、グローバルアドレスを用いて通信する。従って、通信の信頼性を向上でき、ネットワーク資源も有効利用できる。
また、第1〜第3の実施形態の各々を組み合わせてもよい。
なお、本発明は、上記実施形態の構成に限られるものではなく、特許請求の範囲で示した機能、または本実施形態の構成が持つ機能が達成できる構成であればどのようなものであっても適用可能である。
また、本発明は、上記実施形態の機能を実現する通信プログラムを、ネットワーク又は各種記憶媒体を介して通信装置に供給し、この通信装置内のコンピュータが読み出して実行する通信プログラムも適用範囲である。
(本発明の一形態の概要)
本発明の一形態の通信方法は、第1のネットワーク上で第1のアドレス変換装置に接続され、前記第1のアドレス変換装置を介して第2のネットワークに接続される通信装置であって、第2のアドレス変換装置に接続された他の通信装置と通信する通信装置における通信方法において、前記第1のアドレス変換装置の機器自身を特定する識別情報である第1の識別情報を取得するステップと、前記第2のアドレス変換装置の機器自身を特定する識別情報である第2の識別情報を取得するステップと、前記第1の識別情報と前記第2の識別情報とが一致する場合、前記第1のアドレス変換装置と前記第2のアドレス変換装置が同一の機器であると判定し、前記第1のネットワーク上のアドレスを用いて通信するステップと、を有する。
本発明の一形態の通信方法は、前記第1の識別情報と前記第2の識別情報とが不一致の場合、前記第1のアドレス変換装置と前記第2のアドレス変換装置が異なる機器であると判定し、前記第2のネットワーク上のアドレスを用いて通信するステップと、を有する。
本発明の一形態の通信方法は、前記第1のアドレス変換装置の前記第2のネットワーク上の第1のアドレスを取得するステップと、前記第2のアドレス変換装置の前記第2のネットワーク上の第2のアドレスを取得するステップと、前記第1の識別情報と前記第2の識別情報とが不一致、かつ、前記第1のアドレスと前記第2のアドレスとが一致する場合、前記第1のアドレス変換装置と前記第2のアドレス変換装置が同一の機器であると判定し、前記第1のネットワーク上のアドレスを用いて通信するステップと、を有する。
本発明の一形態の通信方法は、前記第1の識別情報を取得するステップでは、所定のタイミングで行われ、前記第1の識別情報が前に取得した前記第1の識別情報と不一致の場合、前記第1のアドレス変換装置が交換されたと判定し、前記通信装置の動作を制限するステップと、を有する。
本発明の一形態の通信方法は、前記第1のネットワークが、ローカルネットワーク、前記第2のネットワークは、グローバルネットワークである。
本発明の一形態の通信方法は、前記第1の識別情報及び前記第2の識別情報は、MACアドレス、または、機器の製造番号である。
本発明の一形態の通信システムは、第1のネットワーク上にあり、第1のアドレス変換装置を介して第2のネットワークに接続される第1の通信装置と、第3のネットワーク上にあり、第2のアドレス変換装置を介して第2のネットワークに接続される第2の通信装置を有し、前記第1の通信装置と前記第2の通信装置とが通信する通信システムであって、前記第1の通信装置は、前記第1のアドレス変換装置の機器自身を特定する識別情報である第1の識別情報を取得する第1の情報取得部と、前記第2のアドレス変換装置の機器自身を特定する識別情報である第2の識別情報を取得する第2の情報取得部と、前記第1の識別情報と前記第2の識別情報とが一致する場合、前記第1のアドレス変換装置と前記第2のアドレス変換装置が同一の機器であると判定し、前記第1のネットワーク上のアドレスを用いて通信する通信部と、を備える。
本発明の一形態の通信システムは、前記通信部が、前記第1の識別情報と前記第2の識別情報とが不一致の場合、前記第1のアドレス変換装置と前記第2のアドレス変換装置が異なる機器であると判定し、前記第2のネットワーク上のアドレスを用いて通信する。
本発明の一形態の通信システムは、前記第1の通信装置が、更に、前記第1のアドレス変換装置の第2のネットワーク上のアドレスである第1のアドレスを取得する第1のアドレス取得部と、前記第2のアドレス変換装置の第2のネットワーク上のアドレスである第2のアドレスを取得する第2のアドレス取得部と、を備え、前記通信部が、前記第1の識別情報と前記第2の識別情報とが不一致、かつ、前記第1のアドレスと前記第2のアドレスとが一致する場合、前記第1のアドレス変換装置と前記第2のアドレス変換装置が同一の機器であると判定し、前記第1のネットワーク上のアドレスを用いて通信する。
本発明の一形態の通信システムは、前記第1の通信装置が、前記第1の情報取得部により、所定のタイミングで、前記第1の識別情報を取得し、前記第1の識別情報が前に取得した前記第1の識別情報と不一致の場合、前記第1のアドレス変換装置が交換されたと判定し、前記第1の通信装置の動作を制限する動作制御部を備える。
本発明の一形態の通信システムは、前記第1の通信装置が、更に、前記第1の識別情報と前記第2の識別情報とを比較し、一致するか否かを判定する情報比較部を備える。
本発明の一形態の通信システムは、前記第2のネットワーク上に、通信サーバを有し、前記通信サーバは、各通信装置の識別情報と、各通信装置に対応するアドレス変換装置の機器自身を特定する識別情報を保持する情報保持部と、前記第1の識別情報と前記第2の識別情報とを比較し、一致するか否かを判定し、その結果を前記第1の通信装置に送信する情報比較部と、を備える。
本発明の一形態の通信システムは、前記第1のネットワークが、ローカルネットワーク、前記第2のネットワークが、グローバルネットワークである。
本発明の一形態の通信システムは、前記第1の識別情報及び前記第2の識別情報が、MACアドレス、または、機器の製造番号である。
本発明の一形態の通信装置は、第1のネットワーク上で第1のアドレス変換装置に接続され、前記第1のアドレス変換装置を介して第2のネットワークに接続される通信装置であって、第2のアドレス変換装置に接続された他の通信装置と通信する通信装置において、前記第1のアドレス変換装置の機器自身を特定する識別情報である第1の識別情報を取得する第1の情報取得部と、前記第2のアドレス変換装置の機器自身を特定する識別情報である第2の識別情報を取得する第2の情報取得部と、前記第1の識別情報と前記第2の識別情報とが一致する場合、前記第1のアドレス変換装置と前記第2のアドレス変換装置が同一の機器であると判定し、前記第1のネットワーク上のアドレスを用いて通信する通信部と、を備える。
本発明は、通信の信頼性を向上できる通信方法、通信システム、及び通信装置等に有用である。
1000,1000B,1000C,1000D 通信システム
11,410 メモリ
11a MACアドレス保存部
12 処理ブロック
12a 第1ルータMACアドレス取得部
12b ルータMACアドレス登録部
12c 第2ルータMACアドレス取得部
12d サブネット判定部
12e 通信処理部
13 インタフェース
100,100B,100C ローカルネットワーク(LAN)
101,102 サブネット
111,111B,112 ルータ
121,122,122B,123,250 クライアント
131,132,133,133A,134 クライアント
150 インターネット
151 モバイル通信回線
200,200B,200C,200D サービスサーバ
201,201D メモリ
201a,201b,210 クライアント情報保存テーブル
202,202D 処理ブロック
202a MACアドレス登録部
202b MACアドレス送信部
202c MACアドレス変更監視部
202d サービス利用処理部
203 インタフェース
301A,301B 通信環境
310,320,330 宅内ネットワーク
311,321 クライアント
312,331 ルータ
400 サービス提供クライアント
411 MACアドレス保存部
420 処理ブロック
421 ルータMACアドレス登録部
422 第1ルータMACアドレス取得部
423 第2ルータMACアドレス取得部
424 サブネット判定部
425 イベント処理部
426 サービス提供処理部
427 通信処理部
430 インタフェース
450 ルータ
500 サービス利用クライアント
510 処理ブロック
511 サービス利用アクセス部
512 サービス利用処理部

Claims (15)

  1. 第1のネットワーク上で第1のアドレス変換装置に接続され、前記第1のアドレス変換装置を介して第2のネットワークに接続される通信装置であって、第2のアドレス変換装置に接続された他の通信装置と通信する通信装置における通信方法において、
    前記第1のアドレス変換装置の機器自身を特定する識別情報である第1の識別情報を取得するステップと、
    前記第2のアドレス変換装置の機器自身を特定する識別情報である第2の識別情報を取得するステップと、
    前記第1の識別情報と前記第2の識別情報とが一致する場合、前記第1のアドレス変換装置と前記第2のアドレス変換装置が同一の機器であると判定し、前記第1のネットワーク上のアドレスを用いて通信するステップと、
    を有する通信方法。
  2. 請求項1に記載の通信方法であって、更に、
    前記第1の識別情報と前記第2の識別情報とが不一致の場合、前記第1のアドレス変換装置と前記第2のアドレス変換装置が異なる機器であると判定し、前記第2のネットワーク上のアドレスを用いて通信するステップと、
    を有する通信方法。
  3. 請求項1に記載の通信方法であって、更に、
    前記第1のアドレス変換装置の前記第2のネットワーク上の第1のアドレスを取得するステップと、
    前記第2のアドレス変換装置の前記第2のネットワーク上の第2のアドレスを取得するステップと、
    前記第1の識別情報と前記第2の識別情報とが不一致、かつ、前記第1のアドレスと前記第2のアドレスとが一致する場合、前記第1のアドレス変換装置と前記第2のアドレス変換装置が同一の機器であると判定し、前記第1のネットワーク上のアドレスを用いて通信するステップと、
    を有する通信方法。
  4. 請求項1〜3のいずれか1項に記載の通信方法であって、
    前記第1の識別情報を取得するステップは、所定のタイミングで行われ、
    前記第1の識別情報が前に取得した前記第1の識別情報と不一致の場合、前記第1のアドレス変換装置が交換されたと判定し、前記通信装置の動作を制限するステップと、
    を有する通信方法。
  5. 請求項1〜4のいずれか1項に記載の通信方法であって、
    前記第1のネットワークは、ローカルネットワーク、前記第2のネットワークは、グローバルネットワークである通信方法。
  6. 請求項1〜5のいずれか1項に記載の通信方法であって、
    前記第1の識別情報及び前記第2の識別情報は、MACアドレス、または、機器の製造番号である通信方法。
  7. 第1のネットワーク上にあり、第1のアドレス変換装置を介して第2のネットワークに接続される第1の通信装置と、第3のネットワーク上にあり、第2のアドレス変換装置を介して第2のネットワークに接続される第2の通信装置を有し、前記第1の通信装置と前記第2の通信装置とが通信する通信システムであって、
    前記第1の通信装置は、
    前記第1のアドレス変換装置の機器自身を特定する識別情報である第1の識別情報を取得する第1の情報取得部と、
    前記第2のアドレス変換装置の機器自身を特定する識別情報である第2の識別情報を取得する第2の情報取得部と、
    前記第1の識別情報と前記第2の識別情報とが一致する場合、前記第1のアドレス変換装置と前記第2のアドレス変換装置が同一の機器であると判定し、前記第1のネットワーク上のアドレスを用いて通信する通信部と、
    を備える通信システム。
  8. 請求項7に記載の通信システムであって、
    前記通信部は、前記第1の識別情報と前記第2の識別情報とが不一致の場合、前記第1のアドレス変換装置と前記第2のアドレス変換装置が異なる機器であると判定し、前記第2のネットワーク上のアドレスを用いて通信する通信システム。
  9. 請求項7に記載の通信システムであって、
    前記第1の通信装置は、更に、
    前記第1のアドレス変換装置の第2のネットワーク上のアドレスである第1のアドレスを取得する第1のアドレス取得部と、
    前記第2のアドレス変換装置の第2のネットワーク上のアドレスである第2のアドレスを取得する第2のアドレス取得部と、
    を備え、
    前記通信部は、
    前記第1の識別情報と前記第2の識別情報とが不一致、かつ、前記第1のアドレスと前記第2のアドレスとが一致する場合、前記第1のアドレス変換装置と前記第2のアドレス変換装置が同一の機器であると判定し、前記第1のネットワーク上のアドレスを用いて通信する通信システム。
  10. 請求項7〜9のいずれか1項に記載の通信システムであって、
    前記第1の通信装置は、
    前記第1の情報取得部は、所定のタイミングで、前記第1の識別情報を取得し、
    前記第1の識別情報が前に取得した前記第1の識別情報と不一致の場合、前記第1のアドレス変換装置が交換されたと判定し、前記第1の通信装置の動作を制限する動作制御部を備える通信システム。
  11. 請求項7〜10のいずれか1項に記載の通信システムであって、
    前記第1の通信装置は、更に、
    前記第1の識別情報と前記第2の識別情報とを比較し、一致するか否かを判定する情報比較部を備える通信システム。
  12. 請求項7〜10のいずれか1項に記載の通信システムであって、更に、
    前記第2のネットワーク上に、通信サーバを有し、
    前記通信サーバは、
    各通信装置の識別情報と、各通信装置に対応するアドレス変換装置の機器自身を特定する識別情報を保持する情報保持部と、
    前記第1の識別情報と前記第2の識別情報とを比較し、一致するか否かを判定し、その結果を前記第1の通信装置に送信する情報比較部と、
    を備える通信システム。
  13. 請求項7〜12のいずれか1項に記載の通信システムであって、
    前記第1のネットワークは、ローカルネットワーク、前記第2のネットワークは、グローバルネットワークである通信システム。
  14. 請求項7〜13のいずれか1項に記載の通信システムであって、
    前記第1の識別情報及び前記第2の識別情報は、MACアドレス、または、機器の製造番号である通信システム。
  15. 第1のネットワーク上で第1のアドレス変換装置に接続され、前記第1のアドレス変換装置を介して第2のネットワークに接続される通信装置であって、第2のアドレス変換装置に接続された他の通信装置と通信する通信装置において、
    前記第1のアドレス変換装置の機器自身を特定する識別情報である第1の識別情報を取得する第1の情報取得部と、
    前記第2のアドレス変換装置の機器自身を特定する識別情報である第2の識別情報を取得する第2の情報取得部と、
    前記第1の識別情報と前記第2の識別情報とが一致する場合、前記第1のアドレス変換装置と前記第2のアドレス変換装置が同一の機器であると判定し、前記第1のネットワーク上のアドレスを用いて通信する通信部と、
    を備える通信装置。
JP2013017451A 2013-01-31 2013-01-31 通信方法、通信システム、および通信装置 Pending JP2014150372A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013017451A JP2014150372A (ja) 2013-01-31 2013-01-31 通信方法、通信システム、および通信装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013017451A JP2014150372A (ja) 2013-01-31 2013-01-31 通信方法、通信システム、および通信装置

Publications (1)

Publication Number Publication Date
JP2014150372A true JP2014150372A (ja) 2014-08-21

Family

ID=51573039

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013017451A Pending JP2014150372A (ja) 2013-01-31 2013-01-31 通信方法、通信システム、および通信装置

Country Status (1)

Country Link
JP (1) JP2014150372A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014171080A (ja) * 2013-03-04 2014-09-18 Nippon Telegraph & Telephone West Corp 端末識別装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014171080A (ja) * 2013-03-04 2014-09-18 Nippon Telegraph & Telephone West Corp 端末識別装置

Similar Documents

Publication Publication Date Title
Rahman et al. Group communication for the constrained application protocol (CoAP)
US9276770B2 (en) Network connecting device and method
JP6193185B2 (ja) 通信装置、端末装置およびプログラム
JP2007312353A (ja) ホームネットワークでのデバイス制御装置及び方法
KR102270909B1 (ko) 멀티미디어 공유 방법, 등록 방법, 서버 및 프록시 서버
JP2004208101A (ja) ゲートウェイ及びそれにおける通信方法
JP4576637B2 (ja) ネットワークカメラ、管理サーバおよび映像配信システム
JP4642652B2 (ja) 無線制御端末、無線通信システムおよび無線通信方法
JP2009010606A (ja) トンネル接続システム、トンネル管理サーバ、トンネル接続装置、及びトンネル接続方法
JP2010004344A (ja) リモートアクセスを行う方法、装置、システム及びプログラム
EP2936891B1 (en) Method, control node, gateway and computer program for enabling communication with a newly detected device
JP6597423B2 (ja) 情報処理装置及びプログラム
US8239930B2 (en) Method for controlling access to a network in a communication system
JP4775154B2 (ja) 通信システム、端末装置、プログラム、及び、通信方法
US20130107697A1 (en) Network Connection System of Network Electronic Device and Method to Solve Terminal Device Unable to Reach Electronic Device Caused by Router Not Supporting NAT Loopback
JP2014150372A (ja) 通信方法、通信システム、および通信装置
Rahman et al. RFC 7390: Group Communication for the Constrained Application Protocol (CoAP)
JP4371955B2 (ja) ボタン電話システム及びそれに用いる音声データ通信方法
JP4290125B2 (ja) サーバ装置
WO2015145953A1 (ja) 通信端末、通信方法及びプログラムを格納する記憶媒体
TW201519617A (zh) 網路連線方法及其網路系統
US12003479B1 (en) Conflict resolution to enable access to local network devices via mesh network devices
CN104917719A (zh) 用户端网络设备及远程登录的方法
US11831604B1 (en) Optimizing access to local network devices via mesh network devices
US11929980B1 (en) Sharing domain name service resources in a mesh network

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20150116