(57)【要約】  １台以上のルータで構成されるローカルネットワークにおいて、ルータを超えて双方向の通信を互いに可能とする通信機器を提供する。上位セグメント判断部（４２１）は、自身が接続されたルータよりも外部ネットワーク側に接続された上位ルータ配下のアドレス範囲情報を取得する。端末通信路保持部（４２５）は、ローカルネットワーク内の他の通信機器との間に通信路を接続し保持する。メッセージ中継部（４２４）は、他の通信機器からの通信メッセージを中継転送する。端末通信路保持部（４２５）は、他の通信機器から通信路の確立を要求する第１の要求メッセージを受信した場合、当該受信した第１の要求メッセージの送信元アドレス情報を記憶し、当該記憶した送信元アドレス情報に対して、応答メッセージを送信し、他の通信機器との間で通信路の接続を確立する。
2007114251.tif 000002
【特許請求の範囲】
【請求項１】
外部ネットワークに接続するローカルネットワークにおいて、前記ローカルネットワーク内の通信機器と前記外部ネットワークとの間に１つ以上のルータが直列に接続されており、前記ローカルネットワーク内に接続され、前記ローカルネットワーク内の他の通信機器との間に通信路を接続し、前記他の通信機器からの通信メッセージを中継する中継機能を有する通信機器において、
前記ローカルネットワーク内で、自身が接続されたルータよりも外部ネットワーク側に接続された上位ルータ配下の通信機器が設定可能なアドレス範囲を表すアドレス範囲情報を取得し、記憶する上位セグメント判断部と、
前記ローカルネットワーク内の他の通信機器との間に通信路を接続し保持する端末通信路保持部と、
前記他の通信機器からの通信メッセージを中継転送するメッセージ中継部とを備え、
前記端末通信路保持部は、前記他の通信機器から通信路の確立を要求する第１の要求メッセージを受信した場合、当該受信した第１の要求メッセージの送信元アドレス情報を記憶し、当該記憶した送信元アドレス情報に対して、応答メッセージを送信し、前記他の通信機器との間で通信路の接続を確立し、
前記端末通信路保持部は、前記他の通信機器から第１の要求メッセージを受信しなかった場合、前記上位セグメント判断部が記憶した前記アドレス範囲情報を用いて、前記上位ルータ配下の他の通信機器のアドレス情報を推定し、当該推定したアドレス情報宛に、通信路の確立を要求する第２の要求メッセージを送信し、応答メッセージを受信することによって、前記上位ルータ配下の他の通信機器との間に通信路を確立すると共に、当該通信路を確立した他の通信機器のアドレス情報を記憶し、
前記メッセージ中継部は、前記他の通信機器からの通信メッセージを受信し、当該受信した通信メッセージに記載された前記他の通信機器が指定した送信先情報を取り出し、前記端末通信路保持部が記憶するアドレス情報から前記送信先情報に対応するアドレス情報を取得して、当該取得したアドレス情報宛てに、当該受信した通信メッセージを送信する中継機能を有することを特徴とする、通信機器。
【請求項２】
前記上位セグメント判断部は、自身が接続されたルータと前記外部ネットワークとの間に位置するルータの内、１つ以上のルータのＬＡＮ側アドレス情報、又はＬＡＮ側アドレス情報とＷＡＮ側アドレス情報とを取得して、当該取得したアドレス情報が属する第１のネットワークに接続される他の通信機器が取ることが可能なアドレス範囲を推定して、当該推定したアドレス範囲を前記アドレス範囲情報として記憶することを特徴とする、請求項１に記載の通信機器。
【請求項３】
前記ローカルネットワーク内に存在する中継機能を有する他の通信機器を探索する中継機能探索部と、
前記ローカルネットワーク内の他の通信機器から受信した探索用メッセージに対して、応答を送信する探索応答部とをさらに備え、
前記中継機能探索部は、前記端末通信路保持部が記憶するアドレス情報を用いて、中継機能を有する他の通信機器が取りうるアドレスを得て、当該アドレス宛に探索用メッセージを送信し、前記中継機能を有する他の通信機器からの応答メッセージを受信することで、前記中継機能を有する他の通信機器を発見し、
前記中継機能を有する他の通信機器を発見しなかった場合にのみ、前記中継機能探索部は、前記端末通信路保持部と前記メッセージ中継部とを動作させ、前記探索応答部は、前記ローカルネットワーク内の他の通信機器から受信した探索用メッセージに対して応答し、
前記中継機能を有する他の通信機器を発見した場合には、前記中継機能探索部は、前記端末通信路保持部と前記メッセージ中継部との動作を停止させ、前記探索応答部は、前記ローカルネットワーク内の他の通信機器から受信した探索用メッセージに応答しないことを特徴とする、請求項１に記載の通信機器。
【請求項４】
中継機能を有する他の通信機器との間に通信路を接続し保持するサーバ通信路保持部をさらに備え、
前記中継機能探索部が中継機能を有する他の通信機器を発見した場合、前記サーバ通信路保持部は、当該発見した中継機能を有する他の通信機器に対して、通信路の確立を要求する第１の要求メッセージを送信し、応答メッセージを受信することで、当該発見した中継機能を有する他の通信機器との間の通信路を確立し、
前記中継機能探索部が中継機能を有する他の通信機器を発見しなかった場合、前記サーバ通信路保持部は、中継機能を有する他の通信機器から通信路の確立を要求する第１の要求メッセージを受信すれば、当該受信した第１の要求メッセージの送信元に応答メッセージを送信し、前記中継機能を有する他の通信機器との間の通信路を確立することを特徴とする、請求項３に記載の通信機器。
【請求項５】
前記サーバ通信路保持部が、前記中継機能を有する他の通信機器との間の通信に異常を検出した場合、前記中継機能探索部は、中継機能を有する他の通信機器の探索を再実行し、当該探索結果に応じて、前記中継通信路保持部、前記メッセージ中継部、及び前記探索応答部を動作させることを特徴とする、請求項３に記載の通信機器。
【請求項６】
前記中継機能探索部が、中継機能を有する他の通信機器を発見しなかった場合、
前記サーバ通信路保持部は、中継機能を有する他の通信機器から通信路の確立を要求する第１の要求メッセージを受信するか否かを所定時間監視し、
前記第１の要求メッセージを受信しなかった場合、前記サーバ通信路保持部は、前記端末通信路保持部と前記メッセージ中継部とを動作させ、前記探索応答部は、前記ローカルネットワーク内の他の通信機器から受信した探索用メッセージに対して応答することを特徴とする、請求項４に記載の通信機器。
【請求項７】
前記端末通信路保持部と前記メッセージ中継部とを動作させる場合、サブネット内のホストアドレスで現状使用されていないアドレス内から、所定範囲のアドレスにマッチするアドレスを選択して、自身のアドレスとすることを特徴とする、請求項１に記載の通信機器。
【請求項８】
前記端末通信路保持部は、前記通信路を接続した他の通信機器から、当該通信路を通じて、未だ通信路を接続していない他の通信機器のアドレス情報を受信した場合、当該受信したアドレス情報に基づいて、通信路の確立を要求する第２の要求メッセージを送信することを特徴とする、請求項１に記載の通信機器。
【請求項９】
ユーザが通信機器に信号を入力する入力手段をさらに備え、
前記上位セグメント判断部は、前記入力手段からの信号に応じて、前記上位ルータ配下のアドレス範囲情報を取得するか否かを決定し、
前記端末通信路保持部は、前記入力手段からの信号に応じて、前記上位ルータ配下の他の通信機器に対して、通信路の確立を要求する第２の要求メッセージを送信するか否かを決定することを特徴とする、請求項１に記載の通信機器。
【請求項１０】
ユーザが通信機器に信号を入力する入力手段をさらに備え、
前記端末通信路保持部は、前記入力手段からの信号に応じて、前記他の通信機器から通信路の確立を要求する第１の要求メッセージを受信した場合に、応答メッセージを送信するか否かを決定することを特徴とする、請求項１に記載の通信機器。
【請求項１１】
外部ネットワークに接続するローカルネットワークにおいて、前記ローカルネットワーク内の通信機器と前記外部ネットワークとの間に１つ以上のルータが直列に接続されており、前記ローカルネットワーク内に接続され、前記ローカルネットワーク内の中継機能を有する他の通信機器との間に通信路を接続し、前記中継機能を有する他の通信機器を介して、他の通信機器とメッセージ通信を行う通信機器において、
前記ローカルネットワーク内で、自身が接続されたルータよりも外部ネットワーク側に接続された上位ルータ配下の通信機器が設定可能なアドレス範囲を表すアドレス範囲情報を取得し、記憶する上位セグメント判断部と、
前記中継機能を有する他の通信機器と通信路の接続を行うサーバ通信路保持部とを備え、
前記サーバ通信路保持部は、前記上位セグメント判断部が記憶した前記アドレス範囲情報に基づいて、前記中継機能を有する他の通信機器のアドレス情報を推測し、当該推測したアドレス情報宛に通信路の確立を要求する第１の要求メッセージを送信し、前記中継機能を有する他の通信機器からの応答メッセージを受信することで通信路を確立し、
前記サーバ通信路保持部は、前記中継機能を有する他の通信機器から通信路の確立を要求する第２の要求メッセージを受信した場合、当該第２の要求メッセージの送信元アドレスに、応答メッセージを送信することで、前記中継機能を有する他の通信機器との間に通信路を確立することを特徴とする、通信機器。
【請求項１２】
前記サーバ通信路保持部は、前記中継機能を有する他の通信機器との間に接続している通信路を通じて、前記中継機能を有する他の通信機器が未だ通信路を接続していない他の通信機器のアドレス情報を、前記中継機能を有する他の通信機器に送信することを特徴とする、請求項１１に記載の通信機器。
【請求項１３】
前記サーバ通信路保持部が、前記中継機能を有する他の通信機器との間の通信に異常を検出した場合、
前記上位セグメント判断部は、前記アドレス範囲情報を取得し、記憶する処理を再実行し、
前記サーバ通信路保持部は、前記中継機能を有する他の通信機器との通信路の確立処理を再実行することを特徴とする、請求項１１に記載の通信機器。
【請求項１４】
ユーザが通信機器に信号を入力する入力手段をさらに備え、
前記上位セグメント判断部は、前記入力手段からの信号に応じて、前記上位ルータ配下のアドレス範囲情報を取得するか否かを決定し、
前記サーバ通信路保持部は、前記入力手段からの信号に応じて、前記上位ルータ配下の他の通信機器に対して、通信路の確立を要求する第１の要求メッセージを送信するか否かを決定することを特徴とする、請求項１１に記載の通信機器。
【請求項１５】
ユーザが通信機器に信号を入力する入力手段をさらに備え、
前記サーバ通信路保持部は、前記入力手段からの信号に応じて、前記中継機能を有する他の通信機器から通信路の確立を要求する第２の要求メッセージを受信した場合に、応答メッセージを送信するか否かを決定することを特徴とする、請求項１１に記載の通信機器。
【請求項１６】
外部ネットワークに接続するローカルネットワークにおいて、前記ローカルネットワーク内の通信機器と前記外部ネットワークとの間に１つ以上のルータが直列に接続されており、前記ローカルネットワーク内に接続され、前記ローカルネットワーク内の他の通信機器との間に通信路を接続し、前記他の通信機器からの通信メッセージを中継する中継機能を有する通信機器が実行する方法であって、
前記ローカルネットワーク内で、自身が接続されたルータよりも外部ネットワーク側に接続された上位ルータ配下の通信機器が設定可能なアドレス範囲を表すアドレス範囲情報を取得し、記憶する上位セグメント判断ステップと、
前記ローカルネットワーク内の他の通信機器との間に通信路を接続し保持する端末通信路保持ステップと、
前記他の通信機器からの通信メッセージを中継転送するメッセージ中継ステップとを備え、
前記端末通信路保持ステップは、前記他の通信機器から通信路の確立を要求する第１の要求メッセージを受信した場合、当該受信した第１の要求メッセージの送信元アドレス情報を記憶し、当該記憶した送信元アドレス情報に対して、応答メッセージを送信し、前記他の通信機器との間で通信路の接続を確立し、
前記端末通信路保持ステップは、前記他の通信機器から第１の要求メッセージを受信しなかった場合、前記上位セグメント判断ステップが記憶したアドレス範囲情報を用いて、前記上位ルータ配下の他の通信機器のアドレス情報を推定し、当該推定したアドレス情報宛に、通信路の確立を要求する第２の要求メッセージを送信し、応答メッセージを受信することによって、前記上位ルータ配下の他の通信機器との間に通信路を確立すると共に、当該通信路を確立した他の通信機器のアドレス情報を記憶し、
前記メッセージ中継ステップは、前記他の通信機器からの通信メッセージを受信し、当該受信した通信メッセージに記載された前記他の通信機器が指定した送信先情報を取り出し、前記端末通信路保持部が記憶するアドレス情報から前記送信先情報に対応するアドレス情報を取得して、当該取得したアドレス情報宛てに、当該受信した通信メッセージを送信する中継機能を有することを特徴とする、方法。
【請求項１７】
外部ネットワークに接続するローカルネットワークにおいて、前記ローカルネットワーク内の通信機器と前記外部ネットワークとの間に１つ以上のルータが直列に接続されており、前記ローカルネットワーク内に接続され、前記ローカルネットワーク内の中継機能を有する他の通信機器との間に通信路を接続し、前記中継機能を有する他の通信機器を介して、他の通信機器とメッセージ通信を行う通信機器が実行する方法であって、
前記ローカルネットワーク内で、自身が接続されたルータよりも外部ネットワーク側に接続された上位ルータ配下の通信機器が設定可能なアドレス範囲を表すアドレス範囲情報を取得し、記憶する上位セグメント判断ステップと、
前記中継機能を有する他の通信機器と通信路の接続を行うサーバ通信路保持ステップとを備え、
前記サーバ通信路保持ステップは、前記上位セグメント判断ステップが記憶したアドレス範囲情報に基づいて、前記中継機能を有する他の通信機器のアドレス情報を推測し、当該推測したアドレス情報宛に通信路の確立を要求する第１の要求メッセージを送信し、前記中継機能を有する他の通信機器からの応答メッセージを受信することで通信路を確立し、
前記サーバ通信路保持ステップは、前記中継機能を有する他の通信機器から通信路の確立を要求する第２の要求メッセージを受信した場合、当該第２の要求メッセージの送信元アドレスに、応答メッセージを送信することで、前記中継機能を有する他の通信機器との間に通信路を確立することを特徴とする、方法。
【請求項１８】
請求項１６又は請求項１７に基づく方法を実装したソフトウエアを記録した記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信機器間、その通信機器が実行する方法、及びその方法を実装したソフトウェアを格納した記憶媒体に関し、より特定的には、１台以上のルータで構成されるローカルネットワークにおいて、ルータを超えて双方向の通信を互いに可能とする通信機器、その通信機器が実行する方法、及びその方法を実装したソフトウェアを格納した記憶媒体に関する。ここで、ローカルネットワークの一例としては、家庭内におけるネットワーク（いわゆる宅内ネットワーク）や、企業内で構築される企業内ネットワーク等がある。
【背景技術】
【０００２】
近年、急速に情報化社会が進展し、宅内においても急速にネットワーク化が普及しつつある。このような状況のもと、宅内ネットワークに接続される複数の機器は、互いに連携し、機器間で通信し合いながら動作することで、機器が提供するサービスの利便性を高めることが期待されている。【０００３】
また、宅内ネットワークに接続される機器は、使用者が一般家庭ユーザであるため、その機器の接続作業をできるだけ簡単なものにする必要がある。【０００４】
しかしながら、一般家庭のユーザはネットワーク知識がないため、ルータとハブとの違いがわからず、ハブの代わりにルータを接続したり、無線アクセスポイントの代わりに無線ルータを接続したりする場合がある。また、宅内ネットワークが複数のルータで構成される場合がしばしば発生し、このネットワーク構成により機器間の通信が不能となる障害が発生する場合がある。これを避けるためには、ユーザ自身が宅内ネットワークの構成を理解し、通信を行う機器を通信可能なネットワークの位置に接続する必要があるが、これは現実的ではない。なお、ここでは、ローカルネットワークとして、宅内ネットワークを例にして説明するが、企業内でも専門知識を持つ人は極少数であり、企業内ネットワークでも同様のことが言える。【０００５】
宅内ネットワークが複数のルータで構成された場合、機器間の通信が不能となることについて図を用いてより詳細に説明する。図３１は、従来の複数のルータで構成された宅内ネットワーク５２の構成の一例を示している。図３１において、モデム内蔵ルータ５３ａの配下には、ルータ５３ｂ及びルータ５３ｃが接続されている。家庭用で用いられるルータには、ＮＡＴ機能やファイアウォール機能がついているため、宅内ネットワーク５２が複数のルータで構成される場合、宅内ネットワーク５２内で、アドレス変換（ＮＡＰＴ）機能やファイアウォール機能が動作することになる。一般に家庭用ルータでは、ＮＡＰＴ機能やファイアウォール機能によって、ＷＡＮ側に位置する機器から通信を開始して、ＬＡＮ側に位置する機器と通信することができない。そのため、図３１の例では、通信機器５５ａから通信機器５５ｂに通信を開始することができない。【０００６】
なお、通信機器５５ｂから通信機器５５ａに対しては、ルータ５３ｂにとって、ＬＡＮ側からＷＡＮ側への通信になるため、自動的にルータ５３ｂにアドレス変換（ＮＡＰＴ）設定が行われる。そのため、通信機器５５ｂから通信機器５５ａに対して通信を行うことが可能である。【０００７】
このような家庭用ルータにより通信が阻害される問題に対して、宅内ネットワークの外部（例えば、インターネット上）に接続支援サーバを設け、接続支援サーバを通じて、宅内ネットワークに接続されたルータのＷＡＮ側の通信機器からＬＡＮ側の通信機器に接続する方法が知られている（例えば、特許文献１）。この方法では、まず、宅内ネットワーク内の通信機器が接続支援サーバと通信路を確立する。そして、宅内ネットワーク外の通信機器は、接続支援サーバを通じて、宅内ネットワーク内の通信機器と接続する。
【特許文献１】特開２００３−１６９０７５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、従来の接続支援サーバを用いる方法は、宅内ネットワークの外部に接続支援サーバを設置することを前提するものであり、宅内ネットワークが外部ネットワーク（例えば、インターネット）に接続されていない場合、適用できないという問題点があった。【０００９】
ここで、従来の接続支援サーバを宅内ネットワーク内に設置する場合について考察する。このような場合、接続支援サーバは、ネットワークを理解していないユーザによって設置されることが前提となるため、宅内ネットワークのどの位置に接続されても、所望の機能を実現する必要がある。【００１０】
すなわち、従来の接続支援サーバを用いる方法は、宅内ネットワーク内の通信機器からは、必ずインターネット側（ＷＡＮ側）になる位置に接続支援サーバが存在する場合のみ適用可能であるため、従来の方法をそのまま１つ以上のルータを直列に接続して構成される宅内ネットワーク内に適用することができないという問題があった。【００１１】
例えば、接続支援サーバを図３１のように、１つ以上のルータを直列に接続して構成された宅内ネットワーク内に接続した場合、従来の方法では、複数ルータで構成されるネットワーク（マルチセグメントネットワーク）内に接続支援サーバを接続することに対する考慮がなされていないため、接続支援サーバがルータ５３ｂやルータ５３ｃに接続された場合、通信機器５５ａから接続支援サーバに接続することができない。すなわち、接続支援サーバを設置する位置によっては、通信機器５５ａと接続支援サーバとの間に通信路を確立できないという問題が発生していた。【００１２】
それ故に、本発明は、上記問題点を鑑みてなされたものであり、１つ以上のルータを直列に接続して構成される宅内ネットワークに接続され、宅内ネットワークに接続された他の通信機器のメッセージを中継することで、他の通信機器間の通信を可能とする中継機能を有する通信機器と、中継機能を有する通信機器を介して通信を行うことを可能とする通信機器とを提供することを目的とする。【００１３】
さらに、通信機器が実行する方法、及びその方法を実装したソフトウエアを記録した記録媒体を提供することを目的とする。
【課題を解決するための手段】
【００１４】
本発明は、外部ネットワークに接続するローカルネットワークにおいて、ローカルネットワーク内の通信機器と外部ネットワークとの間に１つ以上のルータが直列に接続されており、ローカルネットワーク内に接続され、ローカルネットワーク内の他の通信機器との間に通信路を接続し、他の通信機器からの通信メッセージを中継する中継機能を有する通信機器に向けられている。そして、上記目的を達成するために、中継機能を有する通信機器は、ローカルネットワーク内で、自身が接続されたルータよりも外部ネットワーク側に接続された上位ルータ配下の通信機器が設定可能なアドレス範囲を表すアドレス範囲情報を取得し、記憶する上位セグメント判断部と、ローカルネットワーク内の他の通信機器との間に通信路を接続し保持する端末通信路保持部と、他の通信機器からの通信メッセージを中継転送するメッセージ中継部とを備える。端末通信路保持部は、他の通信機器から通信路の確立を要求する第１の要求メッセージを受信した場合、当該受信した第１の要求メッセージの送信元アドレス情報を記憶し、当該記憶した送信元アドレス情報に対して、応答メッセージを送信し、他の通信機器との間で通信路の接続を確立する。端末通信路保持部は、他の通信機器から第１の要求メッセージを受信しなかった場合、上位セグメント判断部が記憶したアドレス範囲情報を用いて、上位ルータ配下の他の通信機器のアドレス情報を推定し、当該推定したアドレス情報宛に、通信路の確立を要求する第２の要求メッセージを送信し、応答メッセージを受信することによって、上位ルータ配下の他の通信機器との間に通信路を確立すると共に、当該通信路を確立した他の通信機器のアドレス情報を記憶する。メッセージ中継部は、他の通信機器からの通信メッセージを受信し、当該受信した通信メッセージに記載された他の通信機器が指定した送信先情報を取り出し、端末通信路保持部が記憶するアドレス情報から送信先情報に対応するアドレス情報を取得して、当該取得したアドレス情報宛てに、当該受信した通信メッセージを送信する中継機能を有する。【００１５】
これによって、中継機能を有する通信機器は、ローカルネットワーク内で、自身が接続されているルータより上位（外部ネットワークに近づく側）に他のルータが存在している時、上位ルータに接続された他の通信機器に対して、通信路の確立を要求する第１の要求メッセージを送信することができる。一般にルータは、ＬＡＮ側からＷＡＮ側に開始した通信を中継することは可能であるため、第１の要求メッセージを受信した他の通信機器が、メッセージのヘッダに記述された送信元アドレス（ＩＰアドレス、ポート番号）に応答メッセージを送信することにより、通信路が確立し、中継機能を有する通信機器と上位ルータに接続された通信機とは相互に通信を行うことが可能となる。【００１６】
また、中継機能を有する通信機器は、自身が接続しているルータ、もしくはより下位（外部ネットワークから遠ざかる側）のルータに接続されている他の通信機器に対しては、他の通信機器から通信路の確立を要求する第２の要求メッセージを受信した時に、その送信元アドレス（ＩＰアドレス、ポート番号）に対して、応答メッセージを送信し通信路を確立する。この結果、中継機能を有する通信機器が、下位のルータに接続されている他の通信機器との間に通信路を接続することが可能となり、他の通信機器は、中継機能を有する通信機器にメッセージを中継させることが可能となる。【００１７】
また、上位セグメント判断部は、自身が接続されたルータと外部ネットワークとの間に位置するルータの内、１つ以上のルータのＬＡＮ側アドレス情報、又はＬＡＮ側アドレス情報とＷＡＮ側アドレス情報とを取得して、当該取得したアドレス情報が属する第１のネットワークに接続される他の通信機器が取ることが可能なアドレス範囲を推定し、当該推定したアドレス範囲をアドレス範囲情報として記憶する。【００１８】
これによって、中継機能を有する通信機器は、Ｔｒａｃｅ  ｒｏｕｔｅのようにＴＴＬを操作したメッセージを送信したり、ＵＰｎＰ  ＩＧＤ仕様に基づくメッセージを送信したりして上位ルータから応答メッセージを得ることにより、上位ルータのアドレス情報を取得し、当該取得したアドレス情報により、上位ルータがローカルネットワークに属するルータであるか否かを判断し（例えば、上位ルータのＬＡＮ側アドレスがプライベートアドレスであれば、その上位ルータはローカルネットワーク内のルータであると判断してもよい）、上位ルータがローカルネットワークに属するルータである場合には、取得したアドレス情報を用いて、サブネットワーク内の通信機器が取ることが可能なアドレスの範囲を推測して記憶する。【００１９】
そして、中継機能を有する通信機器は、記憶したアドレス範囲のアドレス宛に通信路の確立を要求する第２の要求メッセージを送信する。そして、送信されたアドレスに通信機器が接続されていれば、通信機器から応答メッセージを受信し、通信路を確立する。【００２０】
この結果、中継機能を有する通信機器は、予めローカルネットワークの構成情報や接続された他の通信機器のアドレス情報等を記憶しておかなくても、上位ルータに接続された通信機器との間に通信路を接続することが可能になる。【００２１】
好ましくは、中継機能を通信機器は、ローカルネットワーク内に存在する中継機能を有する他の通信機器を探索する中継機能探索部と、ローカルネットワーク内の他の通信機器から受信した探索用メッセージに対して、応答を送信する探索応答部とをさらに備える。中継機能探索部は、端末通信路保持部が記憶するアドレス情報を用いて、中継機能を有する他の通信機器が取りうるアドレスを得て、当該アドレス宛に探索用メッセージを送信し、中継機能を有する他の通信機器からの応答メッセージを受信することで、中継機能を有する他の通信機器を発見する。中継機能を有する他の通信機器を発見しなかった場合にのみ、中継機能探索部は、端末通信路保持部とメッセージ中継部とを動作させ、探索応答部は、ローカルネットワーク内の他の通信機器から受信した探索用メッセージに対して応答する。中継機能を有する他の通信機器を発見した場合には、中継機能探索部は、端末通信路保持部とメッセージ中継部との動作を停止させ、探索応答部は、ローカルネットワーク内の他の通信機器から受信した探索用メッセージに応答しない。【００２２】
これによって、中継機能を有する通信機器は、ローカルネットワーク内に既に中継機能を提供している通信機器を発見しなかった場合にのみ、自身が中継機能を提供することが可能となる。結果として、ローカルネットワーク内に中継機能を提供している通信機器が増えていくことを防ぐことになり、各通信機器が複数の中継機能を有する通信機器と通信するために、多数の通信路を接続しなければならなくなることを防ぐことができる。【００２３】
好ましくは、中継機能を有する通信機器は、中継機能を有する他の通信機器との間に通信路を接続し保持するサーバ通信路保持部をさらに備える。中継機能探索部が中継機能を有する他の通信機器を発見した場合、サーバ通信路保持部は、当該発見した中継機能を有する他の通信機器に対して、通信路の確立を要求する第１の要求メッセージを送信し、応答メッセージを受信することで、当該発見した中継機能を有する他の通信機器との間の通信路を確立する。中継機能探索部が中継機能を有する他の通信機器を発見しなかった場合、サーバ通信路保持部は、中継機能を有する他の通信機器から通信路の確立を要求する第１の要求メッセージを受信すれば、当該受信した第１の要求メッセージの送信元に応答メッセージを送信し、中継機能を有する他の通信機器との間の通信路を確立する。【００２４】
これによって、中継機能を有する通信機器は、ローカルネットワーク内に既にメッセージ中継機能を提供している通信機器が存在している場合は、既に存在する中継機能を有する通信機器と通信路を接続する通信機器として動作し、中継機能を提供している通信機器が存在しない場合には、メッセージ中継機能を提供する通信機器として動作することが可能となる。結果として、中継機能を専門とした通信機器という形ではなく、通常の通信機器に中継機能を付加しておき、必要なときに（ローカルネットワーク内に中継機能を提供している他の通信機器がいないときに）自身の通信機器としての固有機能に加えて、中継機能を提供する通信機器を構成することが可能となる。【００２５】
好ましくは、サーバ通信路保持部が、中継機能を有する他の通信機器との間の通信に異常を検出した場合、中継機能探索部は、中継機能を有する他の通信機器の探索を再実行し、当該探索結果に応じて、中継通信路保持部、メッセージ中継部、及び探索応答部を動作させる。【００２６】
これによって、中継機能を有する通信機器は、メッセージ中継機能を提供していた中継機能を有する通信機器に障害が発生（例えば、電源が切断された、ネットワークケーブルが外れた等）し、中継機能が提供されなくなった場合に、自動的に自身が代わりにローカルネットワーク内でメッセージ中継機能を提供することが可能となる。なお、中継機能を有する他の通信機器との間の通信に異常を検出することの一例としては、通信路を保持するために中継機能を有する他の通信機器との間で定期的に送信しているパケットの到着が途切れることを検出する方法等が考えられる。【００２７】
中継機能探索部が中継機能を有する他の通信機器を発見しなかった場合、サーバ通信路保持部は、中継機能を有する他の通信機器から通信路の確立を要求する第１の要求メッセージを受信するか否かを所定時間監視する。第１の要求メッセージを受信しなかった場合、サーバ通信路保持部は、端末通信路保持部とメッセージ中継部とを動作させる。探索応答部は、ローカルネットワーク内の他の通信機器から受信した探索用メッセージに対して応答する。【００２８】
これによって、中継機能を有する通信機器は、中継機能を提供している他の通信機器が、自身が接続しているルータより下位ルータに接続されている場合に、この中継機能を提供している通信機器から通信路の確立を要求する第１の要求メッセージを受信するか否かを所定時間待つことにより、不必要な中継機能の提供を防ぎ、既に存在する中継機能を提供している他の通信機器との間に安定して通信路を接続することが可能となる。【００２９】
好ましくは、中継機能を有する通信機器は、端末通信路保持部とメッセージ中継部とを動作させる場合、サブネット内のホストアドレスで現状使用されていないアドレス内から、所定範囲のアドレスにマッチするアドレスを選択して、自身のアドレスとする。【００３０】
これによって、他の通信機器は、中継機能を有する通信機器のアドレスを推測することが容易になり、他の通信機器からの中継機能を有する通信機器への通信路接続が容易になる。【００３１】
好ましくは、端末通信路保持部は、通信路を接続した他の通信機器から、当該通信路を通じて、未だ通信路を接続していない他の通信機器のアドレス情報を受信した場合、当該受信したアドレス情報に基づいて、通信路の確立を要求する第２の要求メッセージを送信する。【００３２】
これによって、中継機能を有する通信機器は、上位ルータに接続された既に通信路を接続済みの通信機器から、上位ルータに新規接続された通信機器のアドレス情報を受信した場合等に、通信路の確立を要求する第２の要求メッセージを迅速に送信することが可能となる。【００３３】
好ましくは、中継機能を有する通信機器は、ユーザが通信機器に信号を入力する入力手段をさらに備える。上位セグメント判断部は、入力手段からの信号に応じて、上位ルータ配下のアドレス範囲情報を取得するか否かを決定する。端末通信路保持部は、入力手段からの信号に応じて、上位ルータ配下の他の通信機器に対して、通信路の確立を要求する第２の要求メッセージを送信するか否かを決定する。【００３４】
これによって、中継機能を有する通信機器は、外部からの入力がなければ、上位ルータに接続された通信機器と通信路を接続しないことが可能となり、セキュリティを高めることが可能となる。【００３５】
中継機能を有する通信機器は、ユーザが通信機器に信号を入力する入力手段をさらに備える。端末通信路保持部は、入力手段からの信号に応じて、他の通信機器から通信路の確立を要求する第１の要求メッセージを受信した場合に、応答メッセージを送信するか否かを決定する。【００３６】
これによって、中継機能を有する通信機器は、外部からの入力がなければ、他の通信機器と通信路を接続しないことが可能となり、セキュリティを高めることが可能となる。        【００３７】
また、本発明は、外部ネットワークに接続するローカルネットワークにおいて、ローカルネットワーク内の通信機器と外部ネットワークとの間に１つ以上のルータが直列に接続されており、ローカルネットワーク内に接続され、ローカルネットワーク内の中継機能を有する他の通信機器との間に通信路を接続し、中継機能を有する他の通信機器を介して、他の通信機器とメッセージ通信を行う通信機器にも向けられている。そして、上記目的を達成するために、通信機器は、ローカルネットワーク内で、自身が接続されたルータよりも外部ネットワーク側に接続された上位ルータ配下の通信機器が設定可能なアドレス範囲を表すアドレス範囲情報を取得し、記憶する上位セグメント判断部と、中継機能を有する他の通信機器と通信路の接続を行うサーバ通信路保持部とを備える。サーバ通信路保持部は、上位セグメント判断部が記憶したアドレス範囲情報に基づいて、中継機能を有する他の通信機器のアドレス情報を推測し、当該推測したアドレス情報宛に通信路の確立を要求する第１の要求メッセージを送信し、中継機能を有する他の通信機器からの応答メッセージを受信することで通信路を確立する。サーバ通信路保持部は、中継機能を有する他の通信機器から通信路の確立を要求する第２の要求メッセージを受信した場合、当該第２の要求メッセージの送信元アドレスに、応答メッセージを送信することで、中継機能を有する他の通信機器との間に通信路を確立する。【００３８】
これによっって、通信機器は、１つ以上のルータを直列に接続し構成されたローカルネットワークに接続された中継機能を有する通信機器との間に通信路を確立することができる。【００３９】
好ましくは、サーバ通信路保持部は、中継機能を有する他の通信機器との間に接続している通信路を通じて、中継機能を有する他の通信機器が未だ通信路を接続していない他の通信機器のアドレス情報を、中継機能を有する他の通信機器に送信する。【００４０】
これによって、他の通信機器のアドレス情報を中継機能を有する他の通信機器に送信することにより、中継機能を有する他の通信機器が当該アドレス情報を用いて、通信路の確立を要求する第１の要求メッセージを迅速に送信することが可能となる。【００４１】
好ましくは、サーバ通信路保持部が、中継機能を有する他の通信機器との間の通信に異常を検出した場合、上位セグメント判断部は、アドレス範囲情報を取得し、記憶する処理を再実行する。サーバ通信路保持部は、中継機能を有する他の通信機器との通信路の確立処理を再実行する。【００４２】
これによって、通信機器は、中継機能を提供していた中継機能を有する通信機器に障害が発生（例えば、電源が切断された、ネットワークケーブルが外れた等）し、中継機能が提供できなくなった場合に、自動的に代わりの中継機能を有する通信機器を探し、通信路を設定することが可能となる。【００４３】
好ましくは、通信機器は、ユーザが通信機器に信号を入力する入力手段をさらに備える。上位セグメント判断部は、入力手段からの信号に応じて、上位ルータ配下のアドレス範囲情報を取得するか否かを決定する。サーバ通信路保持部は、入力手段からの信号に応じて、上位ルータ配下の他の通信機器に対して、通信路の確立を要求する第１の要求メッセージを送信するか否かを決定する。【００４４】
これによって、通信機器は、外部からの入力がなければ、上位ルータに接続された中継機能を有する他の通信機器と通信路を接続しないことが可能となり、セキュリティを高めることが可能となる。【００４５】
通信機器は、ユーザが通信機器に信号を入力する入力手段をさらに備える。サーバ通信路保持部は、入力手段からの信号に応じて、中継機能を有する他の通信機器から通信路の確立を要求する第２の要求メッセージを受信した場合に、応答メッセージを送信するか否かを決定する。【００４６】
これによって、通信機器は、外部からの入力がなければ、中継機能を有する他の通信機器と通信路を接続しないことが可能となり、セキュリティを高めることが可能となる。【００４７】
また、本発明は、外部ネットワークに接続するローカルネットワークにおいて、ローカルネットワーク内の通信機器と外部ネットワークとの間に１つ以上のルータが直列に接続されており、ローカルネットワーク内に接続され、ローカルネットワーク内の他の通信機器との間に通信路を接続し、他の通信機器からの通信メッセージを中継する中継機能を有する通信機器が実行する方法にも向けられている。そして、上記目的を達成するために、本発明の方法は、ローカルネットワーク内で、自身が接続されたルータよりも外部ネットワーク側に接続された上位ルータ配下の通信機器が設定可能なアドレス範囲を表すアドレス範囲情報を取得し、記憶する上位セグメント判断ステップと、ローカルネットワーク内の他の通信機器との間に通信路を接続し保持する端末通信路保持ステップと、他の通信機器からの通信メッセージを中継転送するメッセージ中継ステップとを備える。端末通信路保持ステップは、他の通信機器から通信路の確立を要求する第１の要求メッセージを受信した場合、当該受信した第１の要求メッセージの送信元アドレス情報を記憶し、当該記憶した送信元アドレス情報に対して、応答メッセージを送信し、他の通信機器との間で通信路の接続を確立する。端末通信路保持ステップは、他の通信機器から第１の要求メッセージを受信しなかった場合、上位セグメント判断ステップが記憶したアドレス範囲情報を用いて、上位ルータ配下の他の通信機器のアドレス情報を推定し、当該推定したアドレス情報宛に、通信路の確立を要求する第２の要求メッセージを送信し、応答メッセージを受信することによって、上位ルータ配下の他の通信機器との間に通信路を確立すると共に、当該通信路を確立した他の通信機器のアドレス情報を記憶する。メッセージ中継ステップは、他の通信機器からの通信メッセージを受信し、当該受信した通信メッセージに記載された他の通信機器が指定した送信先情報を取り出し、端末通信路保持部が記憶するアドレス情報から送信先情報に対応するアドレス情報を取得して、当該取得したアドレス情報宛てに、当該受信した通信メッセージを送信する中継機能を有する。【００４８】
この方法により、中継機能を有する通信機器とローカルエリア内の他の通信機器との間に通信路を接続することが可能となり、他の通信機器は、中継機能を有する通信機器によりメッセージを中継させることが可能となる。【００４９】
また、本発明は、外部ネットワークに接続するローカルネットワークにおいて、ローカルネットワーク内の通信機器と外部ネットワークとの間に１つ以上のルータが直列に接続されており、ローカルネットワーク内に接続され、ローカルネットワーク内の中継機能を有する他の通信機器との間に通信路を接続し、中継機能を有する他の通信機器を介して、他の通信機器とメッセージ通信を行う通信機器が実行する方法にも向けられている。そして、上記目的を達成するために、本発明の方法は、ローカルネットワーク内で、自身が接続されたルータよりも外部ネットワーク側に接続された上位ルータ配下の通信機器が設定可能なアドレス範囲を表すアドレス範囲情報を取得し、記憶する上位セグメント判断ステップと、中継機能を有する他の通信機器と通信路の接続を行うサーバ通信路保持ステップとを備える。サーバ通信路保持ステップは、上位セグメント判断ステップが記憶したアドレス範囲情報に基づいて、中継機能を有する他の通信機器のアドレス情報を推測し、当該推測したアドレス情報宛に通信路の確立を要求する第１の要求メッセージを送信し、中継機能を有する他の通信機器からの応答メッセージを受信することで通信路を確立する。サーバ通信路保持ステップは、中継機能を有する他の通信機器から通信路の確立を要求する第２の要求メッセージを受信した場合、当該第２の要求メッセージの送信元アドレスに、応答メッセージを送信することで、中継機能を有する他の通信機器との間に通信路を確立する。【００５０】
この方法により、通信機器とローカルエリア内の中継機能を有する他の通信機器との間に通信路を接続することが可能となり、他の通信機器は、中継機能を有する通信機器によりメッセージを中継させることが可能となる。【００５１】
また、本発明は、上述した方法を実装したソフトウェアを記憶した記憶媒体であってもよい。【００５２】
この場合、本記録媒体に記録されたソフトウエアをＰＣ等のソフトウエア実行機能を持つ機器にインストールすることで、中継機能を有する通信機器とローカルエリア内の他の通信機器との間に通信路を接続することが可能となり、他の通信機器は、中継機能を有する通信機器によりメッセージを中継させることが可能となる。
【発明の効果】
【００５３】
本発明によれば、１つ以上のルータを直列に接続し構成されるローカルネットワークに接続され、ローカルネットワークに接続された他の通信機器のメッセージを中継することで、他の通信機器間の通信を可能とする中継機能を有する通信機器と、中継機能を有する通信機器を介して通信を行うことを可能とする通信機器と、中継機能を有する通信機器を介して通信を行うことを可能とする通信機器とが実現される。
【図面の簡単な説明】
【００５４】
【図１】図１は、本発明の一実施形態における宅内ネットワーク２の構成の一例を示す図である。
【図２】図２は、本発明の一実施形態における通信機器４ａ〜４ｃ、５ａ〜５ｃの基本的なハードウエア構成の一例を示す図である。
【図３】図３は、本発明の一実施形態における中継機能付き通信機器４ａ〜４ｃの機能構成の一例を示すブロック図である。
【図４】図４は、本発明の一実施形態における中継機能を持たない通信機器５ａ〜５ｃの機能構成の一例を示すブロック図である。
【図５】図５は、本発明の一実施形態における中継通信部４２が中継機能を起動するまでの動作シーケンスの一例を示す図である。
【図６】図６は、本発明の一実施形態における中継機能探索要求／応答メッセージ、通信路接続通知／要求／応答メッセージの一例を示す図である。
【図７】図７は、本発明の一実施形態における機器接続通知メッセージの一例を示す図である。
【図８】図８は、本発明の一実施形態における中継機能が有効になった場合の中継通信部４２の動作シーケンスの一例を示す図である。
【図９】図９は、本発明の一実施形態における中継通信メッセージの一例を示す図である。
【図１０】図１０は、本発明の一実施形態における中継機能を持たない通信機器５ａ〜５ｃの動作シーケンスの一例を示す図である。
【図１１】図１１は、本発明の一実施形態における通信機器４ｂと、中継機能が有効になった通信機器４ａとの間で中継通信用の通信路を接続するまでのメッセージシーケースの一例を示す図である。
【図１２】図１２は、本発明の一実施形態における通信機器４ａと、中継機能が有効になった通信機器４ｂとの間で中継通信用の通信路を接続するまでのメッセージシーケンスの一例を示す図である。
【図１３】図１３は、本発明の一実施形態における新規通信機器５ａと、中継機能が有効になった通信機器４ｂとの間で中継通信用の通信路を接続するまでのメッセージシーケンスの一例を示す図である。
【図１４】図１４は、本発明の一実施形態における上位セグメント解析処理において宅内ネットワーク２の構成とＴＴＬパケットとの関係を説明する図である。
【図１５】図１５は、本発明の一実施形態におけるＴＴＬを変化させたパケットを利用して行う上位セグメント解析処理のフローチャートである。
【図１６】図１６は、本発明の一実施形態における上位セグメント解析処理でのＴＴＬパケット送信処理のフローチャートである。
【図１７】図１７は、本発明の一実施形態におけるＵＤＰを用いたＴＴＬパケットの構成例を示す図である。
【図１８】図１８は、本発明の一実施形態におけるＴＴＬパケットのＴＴＬと宛先ポート番号との対応関係の一例を示す図である。
【図１９】図１９は、本発明の一実施形態におけるＩＣＭＰを用いたＴＴＬパケットの構成例を示す図である。
【図２０】図２０は、本発明の一実施形態におけるＴＴＬパケットのＴＴＬとシーケンス番号との対応関係の一例を示す図である。
【図２１】図２１は、本発明の一実施形態におけるＴＴＬ応答パケットの構成例を示す図である。
【図２２】図２２は、本発明の一実施形態におけるＩＧＤ仕様を利用する上位セグメント解析処理が用いられる宅内ネットワーク２の構成の一例を示す図である。
【図２３】図２３は、本発明の一実施形態におけるＩＧＤ仕様を利用する上位セグメント解析処理の一例を示すフローチャートである。
【図２４】図２４は、本発明の一実施形態における推定ルータパケットのデータ部の一例を示す図である。
【図２５】図２５は、本発明の一実施形態における推定ルータ応答パケットのデータ部の一例を示す図である。
【図２６】図２６は、本発明の一実施形態におけるＧｅｔＥｘｔｅｒｎａｌＩＰＡｄｄｒｅｓｓアクション要求メッセージの一例を示す図である。
【図２７】図２７は、本発明の一実施形態におけるＧｅｔＥｘｔｅｒｎａｌＩＰＡｄｄｒｅｓｓアクション応答メッセージの一例を示す図である。
【図２８】図２８は、本発明の一実施形態における推定ルータパケットの送信先アドレスの一例を示す図である。
【図２９】図２９は、本発明の一実施形態におけるユーザによる接続許可の確認を行う場合の中継機能付き通信機器４ａ〜４ｃの動作の一例を示すフローチャートである。
【図３０】図３０は、本発明の一実施形態におけるユーザによる接続許可の確認を行う場合の中継機能を持たない通信機器５ａ〜５ｃ動作の一例を示すフローチャートである。
【図３１】図３１は、従来の複数のルータで構成された宅内ネットワーク５２の構成の一例を示す図である。
【符号の説明】
【００５５】
１    インターネット
２    宅内ネットワーク
３ａ〜３ｃ    ルータ
４ａ〜４ｃ    中継機能付き通信機器
４１    通信Ｉ／Ｆ部
４１１    アドレス情報部
４２    中継通信部
４２１    上位セグメント判断部
４２２    上位セグメント情報部
４２３    中継機能探索・応答部
４２４    メッセージ中継部
４２５    端末通信路保持部
４２６    通信路情報部
４２７    サーバ通信路保持部
４２８    中継機能情報部
４３    端末アプリ部
５ａ〜５ｃ    中継機能を持たない通信機器
５１    通信Ｉ／Ｆ部
５１１    アドレス情報部
５２    中継通信部
５２１    上位セグメント判断部
５２２    上位セグメント情報部
５２７    サーバ通信路保持部
５２８    中継機能情報部
５３    端末アプリ部
【発明を実施するための最良の形態】
【００５６】
本発明の実施形態について図に基づいて説明する。【００５７】
図１は、本発明の一実施形態における宅内ネットワーク（ローカルネットワーク）２の構成の一例を示す図である。図１において、宅内ネットワーク２は、３台のルータ３ａ，３ｂ，３ｃで構成されており、ルータ３ａがインターネット１に接続されている最上位ルータである。また、各ルータ３ａ，３ｂ，３ｃには、中継機能を有した中継機能付き通信機器４ａ〜４ｃと、中継機能を持たない通信機器５ａ〜５ｃとが接続されている。通信機器４ａ〜４ｃ、５ａ〜５ｃは、ネットワーク通信機能を持ち、ユーザや他の機器に自身が持つサービスを提供する。通信機器４ａ〜４ｃ、５ａ〜５ｃが提供するサービスの一例としては、通信機器４ａ〜４ｃ、５ａ〜５ｃはネットワーク対応のＡＶレコーダであり、他の機器からの要求によりコンテンツ一覧の情報を応答送信したり、他の機器から要求されたコンテンツの内容を送信したりする。なお、ここで述べたＡＶレコーダは、通信機器４ａ〜４ｃ、５ａ〜５ｃの一例であり、通信機器４ａ〜４ｃ、５ａ〜５ｃはネットワーク上の他の機器と通信する機器であればよい。また、３台のルータで構成された宅内ネットワーク２の構成は一例であり、３台より少ないルータで構成された宅内ネットワーク、又は３台以上のルータで構成された宅内ネットワークであってもよい。また、宅内ネットワーク２は有線あるいは無線によって接続される。【００５８】
ここで、中継機能付き通信機器４ａ〜４ｃが持つ中継機能は、他の通信機器との間に通信路を確保して、メッセージを中継することで通信機器間でのメッセージ通信を可能とする機能である。本実施の形態では、後述の「中継機能起動までの手順」により、宅内ネットワーク２内の中継機能付き通信機器４ａ〜４ｃのうち、１台だけの中継機能を起動し、他の中継機能付き通信機器の中継機能はＯＦＦ状態になるように制御される。【００５９】
図２は、本発明の一実施形態における通信機器４ａ〜４ｃ、５ａ〜５ｃの基本的なハード構成の一例を示している。図２において、通信機器４ａ〜４ｃ、５ａ〜５ｃは、メインＣＰＵ、ＲＯＭ、ＲＡＭ、ユーザＩ／Ｏ、及びネットワークＩ／Ｆで構成される。メインＣＰＵは、他の機器とデータの送受信を行うための通信サービスと、ユーザや他の機器に機器固有のサービスを提供するアプリケーションサービスとに関する処理を行う。また、メインＣＰＵは、データやプログラムをＲＯＭ、又はＲＡＭから読み出し、ＲＡＭへの書き込みを実行する。また、メインＣＰＵは、ユーザＩ／Ｏを通じて、ユーザからの入力受付やサービスに関する情報の表示等を実行したり、ネットワークＩ／Ｆを通じて、他の通信機器やルータとの間でデータの送受信を実行したりする。【００６０】
ここで述べたアプリケーションサービスとは、前述のＡＶレコーダの例で言うと、コンテンツ一覧情報の提供やコンテンツデータの送信等のサービスに該当する。また、通信サービスとは、通信相手の機器との間で情報のやりとりを行うための通信制御等に該当する。【００６１】
（中継機能付き通信機器の機能構成）
次に、図３を用いて、中継機能付き通信機器４ａ〜４ｃが提供する通信サービスとアプリケーションサービスとを実行するための機能構成について説明する。図３は、本発明の一実施形態における中継機能付き通信機器４ａ〜４ｃの機能構成の一例を示すブロック図である。【００６２】
図３において、中継機能付き通信機器４ａ〜４ｃは、通信Ｉ／Ｆ部４１、中継通信部４２、及び端末アプリ部４３を備える。通信Ｉ／Ｆ部４１は、ネットワークＩ／Ｆを制御し、ネットワークとの間で情報を送受信する。また、通信Ｉ／Ｆ部４１は、自身のアドレス情報をアドレス情報部４１１で管理し、中継通信部４２が中継機能をＯＮにする場合、中継通信部４２の指示により、アドレス情報の再設定を実行する。このアドレス情報の再設定により、下位のルータ配下の通信機器から、中継機能をＯＮにした通信機器を発見しやすくなる。【００６３】
ここで、アドレス情報部４１１が管理するアドレス情報の一例としては、自身のＩＰアドレス、ネットマスク、デフォルトゲートウエイアドレス等である。【００６４】
なお、この「アドレス再設定処理」の詳細については、後述する。【００６５】
中継通信部４２は、他の通信機器との間で通信路を保持しメッセージの中継を実行することで通信機器間の通信を可能とするメッセージ中継機能と、中継機能がＯＮになっている他の中継機能付き通信機器との間で通信路を接続保持し、他の中継機能付き通信機器を介して、他の機器とのメッセージ通信を可能とするメッセージ送受信機能とを提供する。中継通信部４２は、メッセージ中継機能とメッセージ送受信機能とが同時に有効になるわけではなく、メッセージ中継機能が有効な場合（すなわち、自身がメッセージ中継機能を提供している場合）、メッセージ送受信機能は無効となるように制御される。逆に、メッセージ送受信機能が有効な場合、メッセージ中継機能は無効となるように制御される。この中継通信部４２の提供する機能の選択については、後述の「中継機能起動の手順」で説明する。この中継通信部４２により、中継機能を通じた通信機器間のメッセージ通信を可能とする通信サービスが提供される。なお、メッセージ中継機能がＯＮになった通信機器が他の通信機器にメッセージを送信する場合、自身のメッセージ中継機能を通じてメッセージの送信を実行する。【００６６】
端末アプリ部４３は、ユーザＩ／Ｏや中継通信部４２を通じて、ユーザや他の機器にその機器固有のサービスを提供するアプリケーションサービスに関する処理を行う。【００６７】
また、中継通信部４２は、上位セグメント判断部４２１、上位セグメント情報部４２２、中継機能探索・応答部４２３、メッセージ中継部４２４、端末通信路保持部４２５、通信路情報部４２６、サーバ通信路保持部４２７、及び中継機能情報部４２８で構成される。以下、中継機能部４２を構成する各機能部について説明する。【００６８】
上位セグメント判断部４２１は、後述する上位セグメント解析処理を実施し、自身が接続されているルータより上位（インターネット側）に接続されたルータ配下のネットワーク情報を取得する。例えば、図１のルータ３ｂに接続された中継機能付き通信機器４ｂの上位セグメント判断部４２１は、ルータ３ａ配下のネットワーク情報を取得する。上位セグメント解析処理を簡単に記述すると、ｔｒａｃｅ  ｒｏｕｔｅやＵＰｎＰ  ＩＧＤ仕様を用いて、上位ルータ又は自身が接続されているルータのＬＡＮ側アドレス又はＷＡＮ側アドレスを取得し、当該取得したアドレスを用いて上位ルータのアドレス範囲（すなわち、上位ルータに接続される通信機器に設定可能なアドレスの範囲）をネットワークアドレスの形で推測する処理である。【００６９】
上位セグメント情報部４２２は、上位セグメント判断部４２１が取得又は推測した上位セグメント情報を記憶する機能部である。上位セグメント情報の一例としては、上位ネットワークのネットワークアドレス情報が挙げられる。つまり、ルータ３ａ配下のネットワークアドレスが、１９２．１６８．１．０／２４である場合、ルータ３ｂに接続された中継機能付き通信機器４ｂの上位セグメント情報部４２２には、１９２．１６８．１．０／２４が記憶される。ここで、１９２．１６８．１．０はネットワークアドレスを示しており、／２４はネットマスクのビット数を示している。【００７０】
同様に、ルータ３ｂ配下のネットワークアドレスが１９２．１６８．２．０／２４である場合、ルータ３ｃに接続された中継機能付き通信機器４ｃの上位セグメント情報部４２２には、１９２．１６８．１、０／２４と１９２．１６８．２．０／２４との２つのネットワークアドレスが記憶される。なお、ネットワークアドレスが分かれば、ホストアドレスの取りうる値が容易に類推できるため、そのネットワークに接続される通信機器に設定される可能性があるアドレスが容易に推定できる。【００７１】
中継機能探索・応答部４２３は、上位セグメント情報部４２２が記憶する上位セグメント情報を利用し、上位のルータに”中継機能が有効になった通信機器”が接続されているか否かを検索する処理と、自身の中継機能が有効になっている場合、他の通信機器からの中継機能探索要求メッセージに対して応答メッセージを返信する機能とを提供する。このとき、中継機能探索・応答部４２３は、他の通信機器で有効になっている中継機能を発見した場合、発見した中継機能が有効になっている通信機器のアドレス情報をサーバ通信路保持部４２７に通知し、メッセージ中継部４２４と端末通信路保持部４２５との機能を無効にする。【００７２】
中継機能探索・応答部４２３は、宅内ネットワーク２内に中継機能が有効になっている通信機器を発見出来なかった場合、サーバ通信路保持部４２７が他の中継機能付き通信機器から通信路接続通知メッセージを受信しないことを確認するために、予め定められた期間待つ。サーバ通信路保持部４２７は、通信路接続要求メッセージを受信した場合、他の中継機能が有効になっている通信機器との間の中継用通信路を接続する。また、中継機能探索・応答部４２３は、メッセージ中継部４２４と端末通信路保持部４２５との機能を無効にする。【００７３】
中継機能探索・応答部４２３は、サーバ通信路保持部４２７が他の中継機能付き通信機器から通信路接続要求メッセージを定められた期間受信しなかった場合、メッセージ中継部４２４と端末通信路保持部４２５との機能を有効にする。なお、この中継機能の有効／無効を決定する処理シーケンスについては、後述の「中継機能起動までの手順」で再度詳細を説明する。【００７４】
メッセージ中継部４２４は、中継機能が有効になっている場合、ある通信機器からのメッセージを他の通信機器へと中継転送する。メッセージ中継部４２４は、受信メッセージ中の送信先情報と、通信路情報部４２６が管理する通信路情報とを参照することで、送信先のアドレスを決定し、受信メッセージを送信先通信機器へ中継転送する。【００７５】
端末通信路保持部４２５は、中継機能が有効になっている場合、他の通信機器からの通信路接続要求メッセージを受信した場合に、メッセージの送信元アドレス情報（ＩＰアドレス、ポート番号）と、メッセージ内に含まれる送信元通信機器のＩＤを通信路情報として通信路情報部４２６に記憶する。また、端末通信路保持部４２５は、通信路保持のために定期的に通信機器と通信を行う。また、端末通信路保持部４２５は、上位セグメント情報部４２２を参照し、定期的に上位のルータ配下に接続された通信機器のアドレスを推定し、推定したアドレスに通信路接続通知メッセージを送信する。【００７６】
通信路情報部４２６は、端末通信路保持部４２５が保持する通信機器との通信路情報を記憶する。通信路情報部４２６が記憶する通信路情報の一例としては、通信機器のＩＤ、アドレス情報（ＩＰアドレス、ポート番号）である。【００７７】
サーバ通信路保持部４２７は、中継機能探索・応答部４２３の指示で動作し、自身の中継機能（すなわち、メッセージ中継部４２４、端末通信路保持部４２５）が無効になっている時に、中継機能が有効になっている他の通信機器とメッセージ中継用の通信路を確立し、保持する機能を提供する。サーバ通信路保持部４２７は、中継機能探索・応答部４２３から指定された“中継機能が有効になっている通信機器”に通信路接続要求メッセージを送信する。または、サーバ通信路保持部４２７は、上位セグメント情報部４２２を参照し、上位のルータ配下に接続された中継機能が有効になっている通信機器のアドレスを推定し、当該推定したアドレスに通信路接続要求メッセージを送信する。また、サーバ通信路保持部４２７は、下位ルータに接続された“中継機能が有効になっている通信機器”から通信路接続通知メッセージを受信した場合、通信路接続要求メッセージを送信元の通信機器に対して送信する。【００７８】
（中継機能を持たない通信機器の機能構成）
図４を用いて、中継機能を持たない通信機器５ａ〜５ｃの機能構成を説明する。図４は、本発明の一実施形態における中継機能を持たない通信機器５ａ〜５ｃの機能構成の一例を示すブロック図である。図４に示すように、中継機能を持たない通信機器５ａ〜５ｃの機能構成は、中継機能付き通信機器４ａ〜４ｃから中継機能に関する機能部を取り除いた構成となる。以下、その機能構成について説明する。【００７９】
図４において、中継機能を持たない通信機器５ａ〜５ｃは、通信Ｉ／Ｆ部５１、中継通信部５２、及び端末アプリ部５３を備える。通信Ｉ／Ｆ部５１は、ネットワークＩ／Ｆを制御し、ネットワークとの間で情報を送受信する。前述の中継機能付き通信機器４ａ〜４ｃの通信Ｉ／Ｆ部４１との相違点は、中継通信部５２の指示によるアドレスの再設定を行わない点である。【００８０】
中継通信部５２は、中継機能がＯＮになっている他の中継機能付き通信機器と通信路を接続保持し、他の中継機能付き通信機器を介して他の機器とのメッセージ通信を可能とするメッセージ送受信機能を提供する。前述の中継機能付き通信機器４ａ〜４ｃの中継通信部４２との相違点は、メッセージ中継機能を持たない点である。【００８１】
端末アプリ部５３は、ユーザＩ／Ｏや中継通信部５２を通じて、ユーザや他の機器にその機器固有のサービスを提供するアプリケーションサービスに関する処理を行う。【００８２】
また、中継通信部５２は、上位セグメント判断部５２１、上位セグメント情報部５２２、サーバ通信路保持部５２７、及び中継機能情報部５２８で構成される。以下、中継機能部５２を構成する各機能部について説明する。【００８３】
上位セグメント判断部５２１は、前述の上位セグメント判断部４２１と同様に後述する上位セグメント解析処理を実施し、自身が接続されているルータより上位（インターネット側）に接続されたルータ配下のネットワークアドレス情報を取得又は推測し、当該取得したネットワークアドレス情報を上位セグメント情報部５２２に記憶する。【００８４】
サーバ通信路保持部５２７は、中継機能が有効になっている他の通信機器とメッセージ中継用の通信路を確立し、保持する機能を提供する。サーバ通信路保持部５２７は、上位セグメント情報部５２２を参照し、上位側ルータに接続された“中継機能が有効になっている通信機器”のアドレスを推測し、当該推測したアドレスに通信路接続要求メッセージを送信する。【００８５】
また、サーバ通信路保持部５２７は、下位ルータに接続された中継機能が有効になっている通信機器から通信路接続通知メッセージを受信した場合、通信路接続要求メッセージを送信元の通信機器に対して送信する。また、サーバ通信路保持部５２７は、中継機能が有効になっている通信機器と通信路が確立した場合、中継機能が有効になっている通信機器のアドレス情報を中継機能情報部５２８に記憶し、定期的に中継機能が有効になっている通信機器と通信することで通信路を保持する。【００８６】
（中継機能起動までの手順）
次に、中継機能付き通信機器４ａ〜４ｃにおいて、中継通信部４２が中継機能を起動する手順について、図５、又は図８を用いて説明する。【００８７】
図５は、本発明の一実施形態における中継通信部４２が中継機能を起動するまでの動作シーケンスの一例を示す図である。【００８８】
まず、中継機能が有効になった通信機器がネットワーク上に存在しておらず、中継通信部４２が自身の中継機能を有効にする場合について説明する。【００８９】
（中継機能起動までの手順：中継機能を有効にする場合）
図５を参照して、上位セグメント判断部４２１は、後述する上位セグメント解析処理を実施して、自身が接続されているルータより上位（インターネット側）に接続されたルータ配下のネットワークアドレス情報を取得し、当該取得したネットワークアドレス情報を上位セグメント情報として、上位セグメント情報部４２２に記憶する（ステップＳ１０）。【００９０】
そして、中継機能探索・応答部４２３は、上位セグメント情報部４２２に記憶された上位セグメント情報を利用し、上位の各ルータに接続された”中継機能が有効になった通信機器”のアドレスを推定し、当該推定したアドレスに中継機能探索要求メッセージをユニキャストで送信する。例えば、図１のルータ３ｃに接続された中継機能付き通信機器４ｃは、ルータ３ａ及びルータ３ｃのネットワークアドレス情報を元にして、ルータ３ａ及びルータ３ｃに接続された”中継機能が有効になった通信機器”のアドレスを推定し、当該推定したアドレスに中継機能探索要求メッセージを送信する。ただし、中継機能探索・応答部４２３は、この”中継機能が有効になった通信機器”のアドレスを推定する処理において、”中継機能が有効になった通信機器”が特定のアドレス範囲を取るように設定されている場合、特定のアドレス範囲にのみ中継機能探索要求メッセージを送信してもよい。この処理によって、中継機能探索・応答部４２３は、ルータ３ａ及びルータ３ｃの有効なホストアドレス全体（例えば、クラスＣのプライベートアドレス場合、１９２．１６８．ｘ．１〜１９２．１６８．ｘ．２５４）に中継機能探索要求メッセージを送信する必要がなくなり、特定のアドレス範囲にだけ、中継機能探索要求メッセージを送信すればよくなる。結果として、処理の高速化、通信トラヒックの削減が可能となる。【００９１】
図６に中継機能探索要求メッセージの一例を示す。図６に示す中継探索要求メッセージにおいて、メッセージＩＤには、中継機能探索要求メッセージであることを示すＩＤがセットされる。また、送信元ＩＤとして、通信機器固有のＩＤが設定される。【００９２】
上位ルータに接続された中継機能付き通信機器４ａ〜４ｃは、中継機能探索要求メッセージを受信すると、中継機能探索・応答部４２３が自身の中継機能が有効である場合にのみ、中継機能探索応答メッセージを中継機能探索要求メッセージの送信元アドレス（ＩＰアドレス、ポート番号）宛てに送信する。中継機能探索応答メッセージのフォーマットの一例は、図６に示す中継機能探索要求メッセージと同一である。ただし、メッセージＩＤには、中継機能探索応答メッセージであることを示すＩＤ値がセットされる。【００９３】
ここで、ＬＡＮ側ネットワークに接続された通信機器からＷＡＮ側ネットワークに接続された通信機器に向けて通信を開始する場合、通信メッセージを中継するルータは、自動的にアドレス変換設定（ＮＡＰＴ設定）を実行し、当該通信メッセージをＷＡＮ側のネットワークに接続された通信機器に送信する。そのため、ＷＡＮ側ネットワークに接続された通信機器は、受信したメッセージの送信元アドレス（ＩＰアドレス、ポート番号）宛に応答メッセージを送信することで、ＬＡＮ側ネットワークに接続された通信機器と通信が可能となる。このため、中継機能探索・応答部４２３は、中継機能探索処理を実施し、上記のように中継機能探索要求メッセージを上位のルータに接続された中継機器に向けて送信することにより、上位側のルータに接続された”中継機能が有効になった通信機器”からの応答を受信することが可能となる。結果として、ＬＡＮ側ネットワークに接続された通信機器は、“中継機能が有効になった通信機器”を発見することが可能となる（ステップＳ１１）。【００９４】
次に、中継機能探索・応答部４２３は、中継機能探索応答メッセージを受信したか否かを（すなわち、中継機能を発見できた否かを）判断する（ステップＳ１２）。【００９５】
中継機能探索応答メッセージを受信できなかった場合、中継機能探索・応答部４２３は、サーバ通信路保持部４２７に、下位のルータに接続された”中継機能が有効になった通信機器”からの通信路接続通知メッセージの受信を所定時間待つように指示する。ここで、通信路接続通知メッセージのフォーマットの一例は、図６に示す中継機能探索要求メッセージと同一であり、メッセージＩＤには、通信路接続通知メッセージであることを示すＩＤ値がセットされる（ステップＳ１３）。【００９６】
前述のように、一般にルータは、ＬＡＮ側ネットワークに接続された通信機器からＷＡＮ側ネットワークに接続された通信機器にメッセージ送信を開始すれば、通信機器間で送受信されるメッセージを中継することが可能となる。そのため、サーバ通信路保持部４２７は、通信路接続通知メッセージの受信を所定時間待つことにより、下位のルータに接続された”中継機能が有効になった通信機器”を発見することが可能になる。また、サーバ通信路保持部４２７は、受信した通信路接続通知メッセージの送信元アドレス（ＩＰアドレス、ポート番号）宛にメッセージを送信することで、下位のルータに接続された”中継機能が有効になった通信機器”と通信することが可能となる。【００９７】
続いて、中継機能探索・応答部４２３は、サーバ通信路保持部４２７が通信路接続通知メッセージを受信したか否かを確認する（ステップＳ１４）。【００９８】
サーバ通信路保持部４２７が通信路接続通知メッセージを受信していない場合、中継機能探索・応答部４２３は、メッセージ中継部４２４、端末通信路保持部４２５、サーバ通信路保持部４２７に中継機能部を有効にする旨を通知し、中継機能開始処理を実行する（ステップＳ１５）。【００９９】
次に、同じく図５を用いて、中継機能を無効にするまでのシーケンスについて説明する。なお、中継機能が有効になった後の動作（中継動作）については、中継機能を無効にするまでのシーケンスの説明後に記載する。【０１００】
（中継機能起動までの手順：中継機能を無効にする場合）
図５を参照して、中継機能を有効にする場合と同様に、上位セグメント判断部４２１は、後述する上位セグメント解析処理を実施して、自身が接続されているルータより上位（インターネット側）に接続されたルータ配下のネットワークアドレス情報を取得し、当該取得したネットワークアドレス情報を上位セグメント情報として、上位セグメント情報部４２２に記憶する（ステップＳ１０）。【０１０１】
次に、中継機能探索・応答部４２３は、中継機能探索処理を実施する。具体的には、中継機能探索・応答部４２３は、上位セグメント情報部４２２に記憶された上位セグメント情報を利用し、上位の各ルータに接続された”中継機能が有効になった通信機器”のアドレスを推定し、当該推定したアドレス宛に中継機能探索要求メッセージをユニキャストで送信する（ステップＳ１１）。【０１０２】
上位側のルータに接続された”中継機能が有効になった通信機器”が存在している場合、”中継機能が有効になった通信機器”は、中継機能探索要求メッセージの送信元アドレス（ＩＰアドレス、ポート番号）宛に、中継機能探索応答メッセージを返信する。【０１０３】
この中継機能探索応答メッセージは、ＬＡＮ側ネットワークに接続された通信機器からＷＡＮ側ネットワークに接続された通信機器に向けて通信が開始された中継機能探索要求メッセージの送信元アドレス宛に送信されるため、前述のようにルータを越えて宛先に送信される。【０１０４】
次に、中継機能探索・応答部４２３は、中継機能探索応答メッセージを受信したか否かを（すなわち、中継機能を発見できたか否かを）判断する（ステップＳ１２）。【０１０５】
中継機能探索応答メッセージを受信した場合、中継機能探索・応答部４２３は、メッセージ中継部４２４、端末通信路保持部４２５、及びサーバ通信路保持部４２７に中継機能を無効にする旨を通知する。また、中継機能探索・応答部４２３は、サーバ通信路保持部４２７に”中継機能が有効になった通信機器”のアドレス情報を通知する。【０１０６】
サーバ通信路保持部４２７は、中継機能情報部４２８に”中継機能が有効になった通信機器”のアドレス情報を記憶する。そして、サーバ通信路保持部４２７は、通信路接続要求メッセージを”中継機能が有効になった通信機器”に送信し、”中継機能が有効になった通信機器”から通信路接続応答メッセージを受信することで、メッセージ中継用の通信路を確立する。また、確立したメッセージ中継用の通信路を保持するために、サーバ通信路保持部４２７は、定期的にメッセージの送受信を行う。これは、例えば、サーバ通信路保持部４２７が、”中継機能が有効になった通信機器”とＵＤＰで通信を行う場合、ＬＡＮ側ネットワークからＷＡＮ側ネットワークに通信を開始した場合に自動的にルータに設定されたアドレス変換設定（ＮＡＰＴ設定）が、一定時間通信が行われないことによって自動的に削除されることを防ぐためである。同様に、ＴＣＰで”中継機能が有効になった通信機器”と通信する場合においても、ＴＣＰセッションが切断しルータに設定されたアドレス変換設定（ＮＡＰＴ設定）が自動的に削除されることを防ぐために、定期的にセッションを保持する目的でパケットの送受信を実行する（ステップＳ１６）。【０１０７】
通信路接続要求メッセージのフォーマットの一例は、図６に示す中継機能探索要求メッセージと同一であり、メッセージＩＤには通信路接続要求メッセージであることを示すＩＤ値がセットされる。通信路接続要求メッセージを受信した”中継機能が有効になった通信機器”は、応答メッセージを送信すると伴に、通信路接続要求メッセージから、送信元ＩＤと送信元アドレス情報（ＩＰアドレス、ポート番号）を取り出し、通信路情報部４２６に記憶する。【０１０８】
“中継機能が有効になった通信機器”と通信路を確立した後、中継通信部４２は、以下の処理を実行する。【０１０９】
中継通信部４２は、下位側のルータに接続された”中継機能が有効になった通信機器”と通信路を確立した場合（すなわち、ステップＳ１４の通信路接続通知メッセージを受信し、”中継機能が有効になった通信機器”との間で通信路を確立した場合）、自身が接続しているネットワークに新規通信機器が接続されたことを検出すると、機器接続通知メッセージを”中継機能が有効になった通信機器”に送信する。機器接続通知メッセージには、新規通信機器のアドレス情報が設定され、確立した通信路を通じて送信される。図７は、機器接続通知メッセージの一例であり、メッセージＩＤには、機器接続通知メッセージであることを示すＩＤがセットされ、接続機器アドレス情報には、新規通信機器のアドレス情報が設定される（ステップＳ１７）。【０１１０】
そして、サーバ通信路保持部４２７は、定期的に送受信するメッセージやパケットにより、”中継機能が有効になった通信機器”との間の通信が成功しているか否かを監視する。例えば、”中継機能が有効になった通信機器”の電源がＯＦＦされた等の事態が発生すると、”中継機能が有効になった通信機器”からのメッセージやパケットがとぎれるため、サーバ通信路保持部４２７は、通信路が切断されたこと検出する。通信路が切断されたことを検出した場合、中継通信部４２は、再度、上位セグメント解析処理から順次処理を実行する（ステップＳ１８）。【０１１１】
次に、ステップＳ１２の中継機能探索応答メッセージを受信できたか否かを（すなわち、中継機能を発見できたか否かを）判断する処理において、中継機能探索応答メッセージを受信できなかった場合について説明する。【０１１２】
この場合、「中継機能起動までの手順：中継機能を有効にする場合」で記述したように、サーバ通信路保持部４２７は、通信路接続通知メッセージの受信を所定時間待つ処理を実行する（ステップＳ１３）。【０１１３】
そして、その後、サーバ通信路保持部４２７は、通信路接続通知メッセージを受信したか否かを判断する（ステップＳ１４）。【０１１４】
“中継機能が有効になった通信機器”からの通信路接続通知メッセージを受信した場合、中継機能探索・応答部４２３は、メッセージ中継部４２４、端末通信路保持部４２５、及びサーバ通信路保持部４２７に中継機能を無効にする旨を通知する。そして、サーバ通信路保持部４２７は、通信路接続通知メッセージの送信元アドレス（ＩＰアドレス、ポート番号）宛に通信路接続要求メッセージを送信し、”中継機能が有効になった通信機器”から通信路接続応答メッセージを受信することで、メッセージ中継用の通信路を確立する。また、確立したメッセージ中継用の通信路を保持するために、サーバ通信路保持部４２７は、定期的にメッセージの送受信を行う（ステップＳ１９）。【０１１５】
そして、前述の通り、サーバ通信路保持部４２７は、必要に応じて機器接続通知メッセージの送信を行う（ステップＳ１７）。【０１１６】
また、サーバ通信路保持部４２７は、”中継機能が有効になった通信機器”との間の通信路が保持されているか否かを監視する。通信路が切断されたことを検出した場合、中継通信部４２は、再度、上位セグメント解析処理から順次処理を再実行する（ステップＳ１８）。【０１１７】
以上が、中継機能を有効／無効にするまでの手順である。次に、図８を用いて、中継機能が有効になった場合の動作について説明する。図８は、中継機能が有効になった場合の中継通信部４２の動作シーケンスの一例を示す図である。【０１１８】
（中継機能有効時の動作）
図８を参照して、中継通信部４２の中継機能が有効になった場合、中継機能探索・応答部４２３は、通信Ｉ／Ｆ部４１にＩＰアドレスの変更（すなわち、アドレス再設定処理）を指示する。この指示を受けた通信Ｉ／Ｆ部４１は、通信機器自身のＩＰアドレスの付け替えを行う（ステップＳ２０）。【０１１９】
（アドレス再設定処理）
アドレス再設定処理の手順の一例としては以下のように実行される。【０１２０】
通信Ｉ／Ｆ部４１は、通信機器に現在設定されているネットワークアドレス情報をアドレス情報部４１１から取り出す。なお、アドレス情報部４１１には、起動時に実行されるＤＨＣＰ等により、ネットワークアドレス情報が設定されているものとする。【０１２１】
次に、通信Ｉ／Ｆ部４１は、ホストアドレスの有効範囲を把握し、予め定められている中継機能有効時のアドレス候補の内、ホストアドレスの有効範囲内にあるアドレスを選択する。【０１２２】
通信Ｉ／Ｆ部４１は、ＡＲＰやｐｉｎｇ等により、選択した中継機能有効時のアドレス候補がネットワーク内で他の通信機器に使用されていないことを確認する。【０１２３】
通信Ｉ／Ｆ部４１は、選択したアドレス候補が他の通信機器で使用されていることが検出された場合、他のアドレス候補を選択し、再度、他の通信機器で使用されていないかを確認する。【０１２４】
通信Ｉ／Ｆ部４１は、上述した手順を他の通信機器で使用されていないアドレスを見つけるまで実行する。【０１２５】
通信Ｉ／Ｆ部４１は、通信機器のＩＰアドレスを、使用されていないことを確認したＩＰアドレスに変更し、アドレス情報部４１１に変更したＩＰアドレスを記憶する。【０１２６】
このように、通信機器４ａ〜４ｃは、中継機能が有効になった場合に、予め定められているアドレス候補内のＩＰアドレスに切り替えることによって、下位側のルータに接続された通信機器が、中継機能が有効になっている通信機器のアドレスを推定して、メッセージをユニキャストで送信する際、候補となるＩＰアドレスを絞り込むことが可能となり、処理の高速化、通信トラヒックの削減が可能となる。【０１２７】
アドレスの付け替えが完了すると、中継機能のメッセージ処理と、定期的な上位セグメント解析処理とが開始される。まず、中継機能のメッセージ処理について記述する。【０１２８】
中継機能探索要求メッセージを受信した場合、中継機能探索・応答部４２３は、中継機能探索応答メッセージを中継機能探索要求メッセージの送信元アドレス（ＩＰアドレス、ポート番号）宛に送信する（ステップＳ２１、Ｓ２２）。【０１２９】
通信路接続要求メッセージを受信した場合、端末通信路保持部４２５は、通信路接続応答メッセージを通信路接続要求メッセージの送信元アドレス（ＩＰアドレス、ポート番号）宛に送信すると伴に、通信路接続要求ージから、送信元ＩＤと送信元アドレス情報（ＩＰアドレス、ポート番号）とを取り出し、通信路情報部４２６に記憶する。なお、端末通信路保持部４２５は、通信路接続要求メッセージから取り出した送信元アドレス情報に対応した機器識別ＩＤを割り当て、送信元ＩＤとして通信路情報部４２６に記憶してもよい。そして、サーバ通信路保持部４２７は、定期的にメッセージやパケットを送受信することにより、確立した通信路を保持する（ステップＳ２３、Ｓ２４）。【０１３０】
機器接続通知メッセージを受信した場合、端末通信路保持部４２５は、受信した機器接続通知メッセージから接続機器アドレス情報を取り出し、当該取り出した接続機器アドレス情報宛てに、通信路接続通知メッセージを送信する。なお、端末通信路保持部４２５は、通信路接続通知メッセージ送信時に、接続機器アドレス情報宛てに既にメッセージを送信済みか否かをチェックし、既に送信済みの場合、メッセージを送信しないようにしても良い。【０１３１】
ここで、先に記述したとおり、機器接続通知メッセージは、”中継機能が有効になった通信機器”が接続しているネットワークより、上位側のネットワークに新規通信機器が接続された場合に、新規通信機器の接続を”中継機能が有効になった通信機器”に通知するためのメッセージであり、新規通信機器が接続されたネットワークで既に”中継機能が有効になった通信機器”との間に通信路が確立している通信機器により送信される。【０１３２】
機器接続通知メッセージを受信した場合、端末通信路保持部４２５は、通信路接続通知メッセージを送信することにより、上位側のネットワークに新規通信機器が接続された場合に、新規通信機器と”中継機能が有効になった通信機器”との間で素早く通信路の接続を行うことが可能となる効果が得られる（ステップＳ３０、Ｓ３１）。【０１３３】
なお、”中継機能が有効になった通信機器”が接続しているネットワークより、下位側のネットワークに新規通信機器が接続された場合には、上位側のネットワークに接続された場合とは異なり、新規通信機器から”中継機能が有効になった通信機器”へ通信を開始することが可能であり、”中継機能が有効になった通信機器”のアドレスを推定することができるため、新規通信機器が接続後、速やかに”中継機能が有効になった通信機器”へ通信路接続要求メッセージを送信することにより素早く通信路の接続を行うことが可能である。図９に中継通信メッセージの一例を示す。【０１３４】
中継通信メッセージを受信した場合、メッセージ中継部４２４は、中継通信メッセージから送信先ＩＤを取り出し、通信路情報部４２６を参照し、取り出した送信先ＩＤに対応する送信先通信機器へデータを送信するための通信路のアドレス情報（ＩＰアドレス、ポート番号）を取得する。そして、メッセージ中継部４２４は、通信路情報部４２６から取得したアドレス情報（ＩＰアドレス、ポート番号）宛てに受信した中継通信メッセージの送信先を書き換えて送信する（ステップＳ３２、Ｓ３３）。【０１３５】
以上が中継機能のメッセージ処理の動作である。次に、定期的な上位セグメント解析処理とそれに伴う一連の処理について説明する。【０１３６】
端末通信路保持部４２５は、後述の上位セグメント解析処理を実行後、所定時間経過した時、上位セグメント判断部４２１に上位セグメント解析処理を再実行するように指示する（ステップＳ２５、Ｓ２６）。上位セグメント解析処理の再実行が完了すると、端末通信路保持部４２５は、上位セグメント情報部４２２を参照し、上位側の各ルータ配下のネットワークで通信機器に設定される可能性がある各アドレス宛に、ユニキャストで通信路接続通知メッセージを送信する。【０１３７】
この通信路接続通知メッセージを受信した通信機器は、通信路接続通知メッセージの送信元アドレスに対して、通信路接続要求メッセージを送信する（ステップＳ２７）。【０１３８】
通信路接続要求メッセージを受信した端末通信路保持部４２５は、応答メッセージを送信すると伴に、受信した通信路接続要求メッセージから送信元ＩＤとメッセージの送信元アドレス情報とを取りだし、通信路情報部４２６の情報を参照し、必要に応じて、新規記録、又は記録された情報の更新を実行する。そして、定期的にメッセージやパケットの送信を行うことで通信路の保持を実行する（ステップＳ２８、Ｓ２９）。【０１３９】
以上が、中継機能が有効になった場合の中継通信部４２の動作である。【０１４０】
なお、中継機能起動までの動作では、中継機能探索処理（ステップＳ１１）において、中継通信部４２は、”中継機能が有効になった通信機器”のアドレスを推定し、当該推定したアドレス宛に中継機能探索要求メッセージを送信し、応答メッセージを受信した後、通信路接続要求メッセージを送信するとしたが、中継機能探索要求メッセージを送信せずに、”中継機能が有効になった通信機器”のアドレス宛に、通信路接続要求メッセージを通信するようにしても良い。この場合、中継通信部４２は、応答メッセージを受信することで、”中継機能が有効になった通信機器”が存在することを検出すると同時に、中継通信用の通信路を確立する。結果として、中継機能探索要求メッセージを送信、応答受信するステップが必要無くなるため、処理が高速化されるという効果が得られる。【０１４１】
また、本中継機能起動までの動作では、中継通信部４２は、”中継機能が有効になった通信機器”を発見した場合、自身の中継機能をＯＮにしないシーケンスを記載したが、他の”中継機能が有効になった通信機器”が存在しても、自身の中継機能をＯＮするようにしても良い。この場合、各通信機器は、複数の“中継機能が有効になった通信機器”との間にメッセージ中継の通信路を確立するようにする。このようにすることで、１台の”中継機能が有効になった通信機器”が突然の電源断等で使用できなくなった場合でも、他の”中継機能が有効になった通信機器”を使用してメッセージを中継することで、途切れることなく通信が可能となる。【０１４２】
（中継機能を持たない通信機器の動作シーケンス）
次に、中継機能を持たない通信機器５ａ〜５ｃの動作シーケンスについて、図１０を用いて説明する。【０１４３】
中継機能を持たない通信機器５ａ〜５ｃの動作シーケンスは、中継機能付き通信機器が”中継機能が有効になった通信機器”を発見した場合の動作に似ている。両者の相違点は、中継機能を持たない通信機器の場合、一旦、”中継機能が有効になった通信機器”を探索することなく、”中継機能が有効になった通信機器”のアドレスを推測し、当該推定したアドレス宛に通信路接続のためのメッセージを送信する点である。【０１４４】
図１０を参照して、上位セグメント判断部５２１は、後述する上位セグメント解析処理を実施して、自身が接続されているルータより上位（インターネット側）に接続されたルータ配下のネットワークアドレス情報（又は、上位側の各ルータに接続された通信機器が設定することが可能なアドレス範囲の情報）を取得し、上位セグメント情報部５２２として記憶する（ステップＳ４０）。【０１４５】
そして、サーバ通信路保持部５２７が、上位セグメント情報部５２２を利用し、上位の各ルータに接続された”中継機能が有効になった通信機器”のアドレスを推定し、当該推定したアドレス宛に通信路接続要求メッセージをユニキャストで送信する（ステップＳ４１）。【０１４６】
上位側のルータに接続された”中継機能が有効になった通信機器”が存在している場合、”中継機能が有効になった通信機器”は、通信路接続要求メッセージの送信元アドレス（ＩＰアドレス、ポート番号）宛に、通信路接続応答メッセージを返信する。【０１４７】
この通信路接続応答メッセージは、ＬＡＮ側ネットワークに接続された通信機器からＷＡＮ側ネットワークに接続された通信機器に向けて通信が開始された通信路接続要求メッセージの送信元アドレス宛へ送信されるため、前述のようにルータを超えて宛先に送信される。【０１４８】
次に、サーバ通信路保持部５２７は、通信路接続応答メッセージを受信できたか否かを判断する（ステップＳ４２）。【０１４９】
通信路接続応答メッセージを受信した場合、サーバ通信路保持部５２７は、中継機能情報部５２８に”中継機能が有効になった通信機器”のアドレス情報を記憶し、メッセージ中継用の通信路を確立する。また、確立したメッセージ中継用の通信路を保持するために、サーバ通信路保持部５２７は、定期的にメッセージの送受信を行う。これは、例えば、サーバ通信路保持部５２７が、”中継機能が有効になった通信機器”とＵＤＰで通信を行う場合、ＬＡＮ側ネットワークからＷＡＮ側ネットワークに通信を開始した場合に自動的にルータに設定されたアドレス変換設定（ＮＡＰＴ設定）が、一定時間通信が行われないことによって自動的に削除されることを防ぐためである。同様に、ＴＣＰで”中継機能が有効になった通信機器”と通信する場合においても、ＴＣＰセッションが切断しルータに設定されたアドレス変換設定（ＮＡＰＴ設定）が削除されることを防ぐために、定期的にセッションを保持する目的でパケットの送受信を実行する（ステップＳ４５）。【０１５０】
“中継機能が有効になった通信機器”と通信路を確立した後、中継通信部５２は、以下の処理を実行する。【０１５１】
中継通信部５２は、下位側のルータに接続された”中継機能が有効になった通信機器”と通信路を確立した場合（すなわち、ステップＳ４４の通信路接続通知メッセージを受信し、”中継機能が有効になった通信機器”と通信路を確立した場合）、自身が接続しているネットワークに新規通信機器が接続されたことを検出すると、機器接続通知メッセージを”中継機能が有効になった通信機器”に送信する。機器接続通知メッセージには、新規通信機器のアドレス情報が設定され、確立した通信路を通じて送信される。図７は、機器接続通知メッセージの一例であり、メッセージＩＤには、機器接続通知メッセージであることを示すＩＤがセットされ、接続機器アドレス情報には、新規通信機器のアドレス情報が設定される（ステップＳ４６）。【０１５２】
そして、サーバ通信路保持部５２７は、定期的に送受信するメッセージやパケットにより、”中継機能が有効になった通信機器”との間の通信が成功しているか否かを監視する。例えば、”中継機能が有効になった通信機器”の電源がＯＦＦされた等の事態が発生すると、”中継機能が有効になった通信機器”からのメッセージやパケットが途切れるため、サーバ通信路保持部５２７は、通信路が切断されたこと検出する。通信路が切断されたことを検出した場合、中継通信部５２は、再度、上位セグメント解析処理から順次再実行する（ステップＳ４７）。【０１５３】
次に、ステップＳ４２の通信路接続応答メッセージを受信できたか否かを（すなわち、中継機能を発見できたか否かを）判断する処理において、通信路接続応答メッセージを受信できなかった場合について説明する。【０１５４】
この場合、サーバ通信路保持部５２７は、通信路接続通知メッセージの受信を所定時間待つ処理を実行する（ステップＳ４３）。【０１５５】
そして、その後、サーバ通信路保持部５２７は、通信路接続通知メッセージを受信できたかを判断する（ステップＳ４４）。【０１５６】
“中継機能が有効になった通信機器”からの通信路接続通知メッセージを受信した場合、サーバ通信路保持部５２７は、通信路接続通知メッセージの送信元アドレス（ＩＰアドレス、ポート番号）宛に通信路接続要求メッセージを送信する。そして、サーバ通信路保持部５２７は、”中継機能が有効になった通信機器”から通信路接続応答メッセージを受信することで、メッセージ中継用の通信路を確立する。また、確立したメッセージ中継用の通信路を保持するために、サーバ通信路保持部５２７は、定期的にメッセージの送受信を行う（ステップＳ４８）。【０１５７】
そして、前述の通り、サーバ通信路保持部５２７は、必要に応じて機器接続通知メッセージの送信を行う（ステップＳ４６）。また、サーバ通信路保持部５２７は、”中継機能が有効になった通信機器”との間の通信路が保持されているか否かを監視する。通信路が切断されたことを検出した場合、中継通信部５２は、再度、上位セグメント解析処理から順次再実行する（ステップＳ４７）。【０１５８】
以上が、中継機能を持たない通信機器５ａ〜５ｃの動作シーケンスである。【０１５９】
なお、説明した通信機器５ａ〜５ｃの動作シーケンスは一例であり、中継機能付きの通信機器４ａ〜４ｃのシーケンスと同様に、”中継機能が有効になった通信機器”を探索し、発見後に通信路接続のためのメッセージを送信しても良い。【０１６０】
また、中継機能付き通信機器４ａ〜４ｃの端末アプリ部４３が、他の通信機器にデータを送信したい場合、送信したいデータと宛先通信機器のＩＤとを中継通信部４２に引渡し、データ送信を依頼する。依頼を受けた中継通信部４２は、自身の中継機能が有効になっている場合、通信路情報部４２６を参照し、ＩＤに対応するアドレス情報を取得する。そして、中継通信メッセージを作成し、取得したアドレス情報宛てにメッセージを送信する。【０１６１】
中継通信部４２は、自身の中継機能が無効になっている場合、中継通信メッセージを作成し、確立している通信路を通じて、“中継機能が有効になった通信機器”へ送信する。【０１６２】
中継機能を持たない通信機器５ａ〜５ｃの場合も同様に、通信機器の端末アプリ部５３が、他の通信機器にデータを送信したい場合、端末アプリ部５３は送信したいデータと宛先通信機器のＩＤとを中継通信部５２に引渡し、送信を依頼する。そして、依頼を受けた中継通信部５２は、中継通信メッセージを作成し、確立している通信路を通じて、“中継機能が有効になった通信機器”へ送信する。【０１６３】
“中継機能が有効になった通信機器”へ送信した中継通信メッセージは、中継動作の説明で述べたように、“中継機能が有効になった通信機器”で中継通信メッセージ内の送信先ＩＤが参照される。そして、“中継機能が有効になった通信機器”は、送信先ＩＤに対応する通信路のアドレス情報を通信路情報部４２６から取得し、受信した中継通信メッセージを取得した通信路のアドレス情報宛に送信する。結果として、通信機器が送信したメッセージは、“中継機能が有効になった通信機器”を経由して、ルータを越えて宛先の通信機器に送信されることになる。先に述べたように、“中継機能が有効になった通信機器”は、同一ネットワークの通信機器は勿論、上位側のネットワークに接続された通信機器、下位側に接続された通信機器の全てと通信路を接続することが可能であるため、各通信機器は図１の宅内ネットワーク２のどの通信機器とも中継通信メッセージを用いて、通信することが可能である。【０１６４】
また、通信相手が同一ネットワーク又は、上位側ネットワークに存在する場合のように“中継機能が有効になった通信機器”で中継しなくとも直接通信可能である場合、端末アプリ部４３、５３は、中継通信部４２、５２を通じて“中継機能が有効になった通信機器”を介して通信するのではなく、通信Ｉ／Ｆ部４１、５１を通じて直接、通信機器間で通信するようにしても良い。【０１６５】
（中継機能と通信機器とのメッセージシーケンス）
次に、先に述べた通信機器の動作によって、実行されるメッセージシーケンスを図１１〜図１３を用いて説明する。【０１６６】
（メッセージシーケンス：中継機能が上位側ネットワークに接続している場合）
図１１は、ルータ３ｂ配下のネットワークに通信機器４ｂが接続された時に、通信機器４ｂと、上位側のルータ３ａに接続された“中継機能が有効になった通信機器４ａ”との間で中継通信用の通信路を接続するまでのメッセージシーケンスの一例を示している。【０１６７】
図１１を参照して、通信機器４ｂは、後述する上位セグメント解析処理を行い、宅内ネットワーク２に上位ルータとしてルータ３ａのみが存在する場合、ルータ３ａのネットワークアドレス情報を取得又は推測する。そして、取得したネットワークアドレス情報を参照し、“中継機能が有効になった通信機器”のアドレスを推定して、当該推定したアドレス宛に中継機能探索要求メッセージを送信する。また、通信機器４ｂは、自身が接続している同一ネットワークについても中継機能探索要求メッセージを送信する。【０１６８】
他のネットワークへの中継機能探索要求メッセージの送信は、ルータ３ｂにとって、ＬＡＮ側ネットワークからＷＡＮ側ネットワークへの通信であるため、自動的にアドレス変換設定（ＮＡＰＴ設定）が実行されて、上位側のネットワークの宛先アドレスに送信される。【０１６９】
送信した中継機能探索要求メッセージが“中継機能が有効になった通信機器４ａ”に受信されると、受信したメッセージの送信元アドレス（ＩＰアドレス、ポート番号）宛に中継機能探索応答メッセージを送信する。通信機器４ａは、受信したメッセージの送信元アドレス宛に中継機能探索応答メッセージを送信したことにより、中継機能探索要求メッセージ送信時に作成されたアドレス変換設定（ＮＡＰＴ設定）が使用され、ルータ３ｂのＷＡＮ側ネットワークから送信された応答メッセージがルータ３ｂのＬＡＮ側ネットワークに接続された通信機器４ｂまで届けられる。【０１７０】
中継機能探索応答メッセージを受信した通信機器４ｂは、応答メッセージの送信元アドレスが“中継機能が有効になった通信機器”のアドレス情報であると認識し、このアドレス情報宛に通信路接続要求メッセージを送信する。そして、通信機器４ｂが“中継機能が有効になった通信機器４ａ”から通信路接続応答メッセージを受信することで、通信機器４ｂと“中継機能が有効になった通信機器４ａ”との間に通信路が確立する。【０１７１】
以上のように各通信機器が、上位セグメント解析処理を実行して、上位側ネットワークに接続されている可能性がある“中継機能が有効になった通信機器”のアドレスを推定して、当該推定したアドレス宛に中継機能探索要求メッセージを送信する機能部を持つことで、上位側ネットワークに“中継機能が有効になった通信機器”が接続された場合でも、通信機器と中継機能が有効になった通信機器”との間に通信路を接続することが可能とする効果が得られる。【０１７２】
なお、本実施の形態では、同一ネットワークの“中継機能が有効になった通信機器”を探す際にも、アドレスを推定して中継機能探索要求メッセージを送信すると記載したが、これは一例であり、マルチキャストやブロードキャストを利用して“中継機能が有効になった通信機器”を探索しても良いのは明らかである。【０１７３】
（メッセージシーケンス：中継機能が下位側ネットワークに接続している場合）
図１２は、ルータ３ａ配下のネットワークに通信機器４ａが接続された時に、通信機器４ａと、下位側のルータ３ｂに接続された“中継機能が有効になった通信機器４ｂ”との間で中継通信用の通信路を接続するまでのメッセージシーケンスの一例を示している。【０１７４】
図１２を参照して、通信機器４ａは、後述する上位セグメント解析処理を行い、宅内ネットワーク２の上位側にルータが無い場合、自身が接続しているネットワークのネットワークアドレス情報のみを取得する。通信機器４ａは、このネットワークアドレスを参照し、“中継機能が有効になった通信機器”のアドレスを推定して、当該推定したアドレス宛に中継機能探索要求メッセージを送信する。しかし、通信機器４ａは、“中継機能が有効になった通信機器”を発見できないため、通信路接続通知メッセージが下位側ネットワークから到着しないかを規定時間（Ｔ１）の間待つ。【０１７５】
“中継機能が有効になった通信機器４ｂ”は、一定時間（Ｔ２）間隔で上位ネットワーク解析処理を実行し、得られた上位側ネットワークのネットワークアドレス情報を参照して、上位側ネットワークで設定される可能性がある全アドレス宛に通信路接続通知メッセージを送信する。【０１７６】
ここで、Ｔ１＞Ｔ２に設定しておくことにより、宅内ネットワーク２に“中継機能が有効になった通信機器４ｂ”があれば、通信機器４ａがＴ１以内に通信路接続通知メッセージを受信することになる。通信路接続通知メッセージを受信した中継機器４ａは、通信路接続要求メッセージを通信路接続通知メッセージの送信元アドレス宛に送信する。【０１７７】
「中継機能が上位側ネットワークに接続している場合のシーケンス」と同様に、通信路接続通知メッセージは、ルータ３ｂにとって、ＬＡＮ側ネットワークからＷＡＮ側ネットワークへの通信であるため、ルータ３ｂで自動的にアドレス変換設定（ＮＡＰＴ設定）が行われ、当該メッセージが通信機器４ａに送信される。通信機器４ａは、受信したメッセージの送信元アドレス宛にメッセージを送信すると、先のメッセージで自動的に設定されたアドレス変換設定（ＮＡＰＴ設定）が使用され、ルータ３ｂのＷＡＮ側ネットワークから送信された通信路接続要求メッセージがルータ３ｂのＬＡＮ側ネットワークに接続された通信機器４ｂまで届けられる。“中継機能が有効になった通信機器４ｂ”が通信路接続応答メッセージを送信し、通信機器４ａが受信することで、通信機器４ａと“中継機能が有効になった通信機器４ｂ”との間に通信路が確立する。【０１７８】
以上のように各通信機器が上位側ネットワークに“中継機能が有効になった通信機器”を発見できなかった場合、通信路接続通知メッセージの受信を規定時間（Ｔ１）の間待ち、しかも、“中継機能が有効になった通信機器”が、一定時間間隔（Ｔ２）で上位ネットワークの解析処理を実行し、得られた上位側ネットワークのネットワークアドレス情報を参照して、上位側ネットワークで設定される可能性がある全アドレス宛に通信路接続通知メッセージを送信することで、“中継機能が有効になった通信機器”の上位側ネットワークに通信機器が接続された場合でも、或いは、上位側ネットワークに新規にルータが接続されネットワークが拡張され機器が接続された場合でも、通信機器と中継機能が有効になった通信機器”との間に通信路を接続することが可能となる効果が得られる。【０１７９】
なお、本実施の形態では、“中継機能が有効になった通信機器”が通信路接続通知メッセージを上位ネットワークの解析処理で得られた全ての上位側ネットワークに対して送信するとしたが、通信路が確立している通信機器が接続している上位側ネットワークに対しては、一定時間間隔（Ｔ２）で通信路接続通知メッセージを送信せず、次に説明する機器接続通知メッセージで新規接続された通信機器を発見した場合にのみ、発見した通信機器に対して通信路接続通知メッセージを送信するようにしても良い。このように機器接続通知メッセージを利用することで、通信路接続通知メッセージの送信回数を減らすことが可能となり、“中継機能が有効になった通信機器”の処理負荷低減とネットワークトラヒックの低減が可能となる。【０１８０】
（メッセージシーケンス：機器接続通知メッセージを利用した通信路接続）
図１３は、ルータ３ａ配下のネットワークに新規通信機器５ａが接続された時に、新規通信機器５ａと、下位側のルータ３ｂに接続された“中継機能が有効になった通信機器４ｂ”との間で、機器接続通知メッセージを利用して中継通信用の通信路を接続するまでのメッセージシーケンスを示している。ここで、図１３のネットワークの構成は、図１２とよく似ているが、これらの相違点は、図１３では新規通信機器５ａと同一ネットワークの通信機器４ａが、既に“中継機能が有効になった通信機器”と通信路を確立している点である。【０１８１】
図１３を参照して、新規通信機器５ａが接続されると、同一ネットワークに接続されている通信機器４ａが新規通信機器５ａの接続を検出し、通信機器５ａのアドレス情報を取得する。この通信機器４ａが新規通信機器５ａを検出する方法の一例としては、通信機器５ａがＵＰｎＰ（Ｕｎｉｖｅｒｓａｌ  Ｐｌｕｇ  ａｎｄ  Ｐｌａｙ）対応機器であれば、マルチキャストで送信されるＵＰｎＰのＡｌｉｖｅパケットを利用して検出する方法が考えられる。また、新規通信機器５ａが同一ネットワーク内に中継機能が有効になった通信機器”がいないかを検索するために送信するメッセージを利用して検出する方法等が考えられる。【０１８２】
通信機器４ａは、新規通信機器５ａを検出すると、“中継機能が有効になった通信機器４ｂ”との間に確立済みの通信路を用いて、機器接続通知メッセージを送信する。このとき、通信機器４ａは、機器接続通知メッセージに通信機器５ａのアドレス情報を設定して送信する。【０１８３】
機器接続通知メッセージを受信した“中継機能が有効になった通信機器４ｂ”は、メッセージから通信機器５ａのアドレス情報を取り出し、取り出したアドレス情報宛てへ通信路接続通知メッセージを送信済みか否かを判定する。そして、送信していない場合、取り出した通信機器５ａのアドレス情報宛てへ通信路接続通知メッセージを送信する。【０１８４】
通信路接続通知メッセージを受信した通信機器５ａは、通信路接続通知メッセージの送信元アドレス宛に、通信路接続要求メッセージを送信する。そして、“中継機能が有効になった通信機器４ｂ”が通信路接続応答メッセージを送信し、当該メッセージを通信機器５ａが受信することで、通信機器５ａと“中継機能が有効になった通信機器４ｂ”との間に通信路が確立する。【０１８５】
ここで、上記で説明した通信機器４ａからの機器接続通知メッセージは、通信機器４ａが“中継機能が有効になった通信機器４ｂ”より上位側ネットワークに接続されている場合にのみ送信する。このように制御することで、“中継機能が有効になった通信機器４ｂ”から通信路接続通知メッセージを届けることができない下位側ネットワークから機器接続通知メッセージがくることを防ぐことが可能となり、無駄な通信トラヒックが発生しない。なお、下位側ネットワークに新規通信機器が接続された場合には、先に述べた新規通信機器が上位セグメント解析処理を実施し、“中継機能が有効になった通信機器”のアドレスを推定して、通信路接続要求メッセージを送信する方法で“中継機能が有効になった通信機器”との間に通信路を設定する。このとき、“中継機能が有効になった通信機器”のアドレスが定められたアドレス範囲になるようにアドレスの再設定が実行されていると、通信路接続要求メッセージを多数送信せずとも、通信路を接続することが可能となる。また、新規通信機器から通信路を接続するためのシーケンスを開始することが可能であるため、新規接続した後、速やかに通信路接続を行うことが可能である。【０１８６】
以上のように、各通信機器が上位セグメント解析処理を実行して、上位側ネットワークに接続されている可能性がある“中継機能が有効になった通信機器”のアドレスを推定して、メッセージを送信する機能と、上位側ネットワークに“中継機能が有効になった通信機器”を発見できなかった場合、自身の下位側ネットワークに接続された“中継機能が有効になった通信機器”からのメッセージ受信を規定時間の間待つ機能をもち、“中継機能が有効になった通信機器”が、一定時間間隔で上位ネットワークの解析処理を実行し、得られた上位側ネットワークのネットワークアドレス情報を参照して、上位側ネットワークで設定される可能性があるアドレス宛にメッセージを送信することで、図１のようなネットワークにおいて、“中継機能が有効になった通信機器”と、通信機器がどのように配置されても、通信路を確立することが可能であることが分かる。【０１８７】
なお、図１１〜図１３では、宅内ネットワーク２がルータ２台で構成されている例で説明したが、“中継機能が有効になった通信機器”と通信機器との間に２台以上のルータが存在しても、同一の方法で通信路の接続が可能なのは明らかである。【０１８８】
（上位セグメント解析処理）
次に、通信機器４ａ〜４ｃ、５ａ〜５ｃが実行する上位セグメント解析処理について説明する。【０１８９】
上位セグメント解析処理は、“中継機能が有効になった通信機器”を含めた各通信機器４ａ〜４ｃ、５ａ〜５ｃで実行される処理であり、自身が接続しているルータ配下のネットワークと、その上位側（すなわち、インターネット側）のルータ配下のネットワークのネットワークアドレスを取得又は記憶する処理である。まず、自身が接続しているルータ配下のネットワークのネットワークアドレス情報は、通信Ｉ／Ｆ部４１、５１から取得する。【０１９０】
そして、上位側のルータのネットワークアドレスを取得する処理の一例としては、特願２００５−１０３０５９と同様の方法を用いることができる。ここでは、その概要を説明する。【０１９１】
上位セグメント解析処理は、２つのステップからなる。最初のステップは、上位側ルータのネットワークアドレス情報を取得するために、宅内ネットワーク２内の上位側ルータのアドレスを取得するステップである。そして、次のステップは、取得したルータのアドレスを用いて、そのルータのネットワークアドレス（又は、そのネットワークで有効なアドレスの範囲）を推測するステップである。ここで、ルータのネットワークアドレス（又は、そのネットワークで有効なアドレスの範囲）をそのネットワークのアドレス空間と呼ぶことにする。また、ルータのアドレス情報を用いて、このネットワークのアドレス空間を推定する処理をアドレス空間推定処理と呼ぶことにする。【０１９２】
宅内ネットワーク２内の上位側ルータのアドレスを取得する方法として、ＴＴＬ（Ｔｉｍｅ  Ｔｏ  Ｌｉｖｅ）を変化させたパケットを用いてアドレスを取得する方法（ｔｒａｃｅ  ｒｏｕｔｅと同様な方法）と、ＵＰｎＰ（Ｕｎｉｖｅｒｓａｌ  Ｐｌｕｇ  ａｎｄ  Ｐｌａｙ）  ＩＧＤ（Ｉｎｔｅｒｎｅｔ  Ｇａｔｅｗａｙ  Ｄｅｖｉｃｅ）仕様を用いてアドレスを取得する方法を利用することができる。【０１９３】
（ＴＴＬを変化させたパケットを利用する方法）
まず、ＴＴＬを変化させたパケットを利用してルータのアドレスを取得する方法を説明する。図１４は、宅内ネットワーク２の構成とＴＴＬパケットとの関係を説明する図である。図１４において、宅内ネットワーク２とインターネット１との異なる２つのネットワークが接続されている。なお、宅内ネットワーク２は、ローカルネットワークであれば、家庭内のネットワークでなくても良い。図１４に示すように、宅内ネットワーク２は、通信機器１０と、ルータＡ２０と、ルータＢ３０と、ルータＣ４０とを備える。通信機器１０は、上位セグメント解析処理を行う場合の通信機器４ａ〜４ｃ、５ａ〜５ｃに相当する。ルータＡ２０は、ＷＡＮ側通信Ｉ／Ｆ２０１と、ＬＡＮ側通信Ｉ／Ｆ２０２とを含む。ルータＢ３０は、ＷＡＮ側通信Ｉ／Ｆ３０１と、ＬＡＮ側通信Ｉ／Ｆ３０２とを含む。ルータＣ４０は、ＷＡＮ側通信Ｉ／Ｆ４０１と、ＬＡＮ側通信Ｉ／Ｆ４０２とを含む。なお、ルータＡ２０、ルータＢ３０、及びルータＣ４０において、ＷＡＮ側通信Ｉ／Ｆ及びＬＡＮ側通信Ｉ／Ｆ以外の構成の記載を省略している。【０１９４】
ルータＣ４０は、インターネット１内のルータＤ５０と接続することによって、宅内ネットワーク２とインターネット１とを接続するゲートウェイである。ルータＣ４０において、ＷＡＮ側通信Ｉ／Ｆ４０１には、グローバルアドレスが割り当てられ、ＬＡＮ側Ｉ／Ｆ４０２には、プライベートアドレスが割り当てられる。ルータＡ２０のＷＡＮ側通信Ｉ／Ｆ２０１及びＬＡＮ側通信Ｉ／Ｆ２０２と、ルータＢ３０のＷＡＮ側通信Ｉ／Ｆ３０１及びＬＡＮ側通信Ｉ／Ｆ３０２とには、それぞれプライベートアドレスが割り当てられる。【０１９５】
図１５は、通信機器１０が行う、ＴＴＬを変化させたパケットを利用してルータのネットワークアドレス（又は、ルータ配下の端末が取ることが可能な有効なアドレスの範囲）を取得する処理を示すフローチャートである。図１５を参照して、動作を説明する。通信機器１０は、上位セグメント解析処理を開始すると、ＴＴＬパケット送信処理を起動する（ステップＳ１０１）。ここで、起動したＴＴＬパケット送信処理は、ＴＴＬ応答パケット受信処理（ステップＳ１０２）などと並行して実行される。通信機器１０は、ＴＴＬパケット送信処理の起動後、ＴＴＬ応答パケットを受信したか否かを判断する（ステップＳ１０２）。ＴＴＬ応答パケットを受信すると、通信機器１０は、ルータを検出したと判断して、ＴＴＬ応答パケットの受信処理を実行する（ステップＳ１０３）。ＴＴＬ応答パケットは、具体的には、ＩＣＭＰ（Ｉｎｔｅｒｎｅｔ  Ｃｏｎｔｒｏｌ  Ｍｅｓｓａｇｅ  Ｐｒｏｔｏｃｏｌ）  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥである。ＩＣＭＰ  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥとは、中継するパケットの生存時間（ＴＴＬ：Ｔｉｍｅ  Ｔｏ  Ｌｉｖｅ）の超過によるパケットの破棄を、送信元に報告するメッセージである。【０１９６】
通信機器１０は、ＴＴＬ応答パケットの送信元アドレスが、グローバルアドレスであるか否か判断する（ステップＳ１０４）。ＴＴＬ応答パケットの送信元アドレスがグローバルアドレスでない場合、通信機器１０は、アドレス空間推定処理を実行する（ステップＳ１０５）。ＴＴＬ応答パケットの送信元アドレスがグローバルアドレスであった場合、通信機器１０は、ＴＴＬパケット送信処理を中止する（ステップＳ１０６）。【０１９７】
通信機器１０は、送信したＴＴＬパケットに対するＴＴＬ応答パケットを全て受信したか否かを判断する（ステップＳ１０７）。通信機器１０は、ＴＴＬ応答パケットを全て受信した場合、図１５に示すアドレス空間の推定処理を終了する。全て受信していない場合、通信機器１０は、ステップＳ１０２に戻り、ＴＴＬ応答パケットの受信待機状態となる。送信したＴＴＬパケットに対するＴＴＬ応答パケットを全て受信するまで、受信処理を継続する理由は、ＴＴＬパケットを送信した順にＴＴＬ応答パケットを受信するとは限らないためである。なお、送信元アドレスがグローバルアドレスであったＴＴＬ応答パケットに対応するＴＴＬパケットにおいて、設定したＴＴＬ値をＴＴＬｇとすると、ＴＴＬｇ以下のＴＴＬ値のＴＴＬパケットに対するＴＴＬ応答パケットを全て受信した場合、ＴＴＬ応答パケットを全て受信したと判断してもよい。【０１９８】
図１６〜１８を用いて、ＴＴＬパケット送信処理の詳細を説明する。図１６は、ＴＴＬパケット送信処理のフローチャートである。図１７は、ＴＴＬパケットの送信にＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）を用いる場合の、ＴＴＬパケットの構成を示す図である。図１８は、ＴＴＬパケットにおける、ＴＴＬと宛先ポート番号との対応関係の一例を示す図である。【０１９９】
図１６を用いて、ＴＴＬパケット送信処理を説明する。通信機器１０は、ＴＴＬパケットの作成を続行するか否かを確認する（ステップＳ１１１）。このＴＴＬパケットの作成を続行するか否かの判断は、後で記述するＴＴＬパケット応答受信で、送信元がグローバルアドレスの応答パケットを受信したか否かで判断する。通信機器１０は、グローバルアドレスの応答を受信している場合、パケット作成の続行を中止と判断し、グローバルアドレスの応答を受信していない場合、続行と判断する。【０２００】
通信機器１０は、ＴＴＬパケット作成の中止と判断する場合、ＴＴＬパケット送信処理を終了する。ＴＴＬパケット作成の続行と判断した場合、ＴＴＬと宛先ポート番号とを、１つずつインクリメントしたＴＴＬパケットを作成する（ステップＳ１１２）。通信機器１０は、作成したＴＴＬパケットを送信する（ステップＳ１１３）。なお、通信機器１０は、送信したＴＴＬパケットに対応するＴＴＬ応答パケットの受信を待つことなく、ＴＴＬをインクリメントした次のＴＴＬパケットを送信してもよい。この場合、通信機器１０は、複数のＴＴＬパケットを同時に送信できるため、高速にルータを検出することが可能となる。また、ＴＴＬパケットは、インターネット上の特定のグローバルアドレス宛（例えば、ルータＤ５０のＬＡＮ側Ｉ／Ｆ５０１、あるいはインターネット上の特定サーバのアドレス（例えば、ｐａｎａｓｏｎｉｃ．ｃｏｍなど）に向けて送信してもよい。【０２０１】
通信機器１０は、図１８に示すように、ＩＰヘッダのＴＴＬフィールドの値を１からインクリメントするとともに、ＵＤＰヘッダの宛先ポート番号フィールドを１０００１からインクリメントしながら、ＴＴＬパケットを作成する。なお、宛先ポート番号は、図１８に示す例に限られず、他のポート番号を用いてもよいのは言うまでもない。宛先ポート番号は、宛先ポート番号からＴＴＬが一意に判別できればよい。【０２０２】
また、ＴＴＬパケットは、図１７のようなＵＤＰを用いた例に限られず、例えば、図１９に示すＩＣＭＰを用いてもよい。この場合、図２０に示すようにＩＰヘッダのＴＴＬとシーケンス番号を対応付ける方法が利用できる。【０２０３】
図１４、及び図２１を用いて、ＴＴＬ応答パケットの受信処理を説明する。図１４は、ＴＴＬパケットと、ＴＴＬ応答パケットとの対応関係を示している。図２１は、ＴＴＬ応答パケットの構成例を示す図である。【０２０４】
図１４において、ルータＡ２０、ルータＢ３０、ルータＣ４０、及びルータＤ５０は、それぞれのＬＡＮ側通信Ｉ／Ｆで受信したＴＴＬパケットを、ＴＴＬ値を１だけ引いてＷＡＮ側のルータに送信する。それぞれのルータは、ＴＴＬ値を１引いて、ＴＴＬ＝０となった場合、ＴＴＬパケットをＷＡＮ側のルータに送信せずに廃棄する。そして、それぞれのルータは、ＴＴＬ値が原因であるパケットの廃棄が発生したことを示すために、ＴＴＬ応答パケットをＴＴＬパケットの送信元へ送信する。図２１に示すＴＴＬ応答パケットのデータ部には、廃棄したルータディスカバリ用パケットのＩＰヘッダと、それに続くＵＤＰヘッダを含む６４ビットのデータが付加される。【０２０５】
通信機器１０が、ＴＴＬ＝１に設定したＴＴＬパケットを、インターネット１上の特定のＩＰアドレスに向けて送信した場合を考える。ＴＴＬ＝１のＴＴＬパケットは、ルータＡ２０のＬＡＮ側Ｉ／Ｆ２０２で受信される。ＴＴＬ＝１に設定したＴＴＬパケットは、ＷＡＮ側Ｉ／Ｆ２０１から送信される前に、ＴＴＬ＝０となる。このため、ルータＡ２０は、ＴＴＬ＝１のＴＴＬパケットは廃棄する。ルータＡ２０は、ＴＴＬ＝１のＴＴＬパケットを廃棄したことを通知するために、ＴＴＬ応答パケットを通信機器１０に送信する。このとき、ＴＴＬ応答パケットの送信元ＩＰアドレス（以下、送信元アドレスという）は、ルータＡ２０のＬＡＮ側通信Ｉ／Ｆ２０２のＩＰアドレスとなる（以下、各ルータのＬＡＮ側通信Ｉ／ＦのＩＰアドレスを、各ルータのＬＡＮ側アドレスという）。通信機器１０は、ＴＴＬ応答パケットの送信元アドレスを確認することによって、ルータＡ２０のＬＡＮ側アドレスを知ることが可能となる。【０２０６】
同様に、通信機器１０が、ＴＴＬ＝２に設定したＴＴＬパケットを、インターネット上の特定のＩＰアドレスに向けて送信すると、ルータＢ３０は、ルータＢ３０自身のＬＡＮ側アドレスを送信元アドレスとしたＴＴＬ応答パケットを、通信機器１０に送信する。また、通信機器１０が、ＴＴＬ＝３に設定したＴＴＬパケットを、インターネット上の特定のＩＰアドレスに向けて送信すると、ルータＣ４０は、ルータＣ４０自身のＬＡＮ側アドレスを送信元アドレスとしたＴＴＬ応答パケットを、通信機器１０に送信する。このように、通信機器１０は、ＴＴＬパケットに対応するＴＴＬ応答パケットを受信することで、それぞれのルータを検出するとともに、それぞれのルータのＬＡＮ側アドレスを取得することができる。通信機器１０は、自身とインターネット１との間に接続されているルータの接続順序に関する接続順序情報を取得することができる。【０２０７】
次に、通信機器１０が行うアドレス空間の推定処理を説明する。ここで述べるアドレス空間推定処理とは、ルータ配下のネットワークに接続される端末に設定できるアドレスの範囲を推定する処理である。端末に設定できるアドレスの範囲は、すなわち、ホストアドレスの範囲に対応するため、ホストアドレスからネットワークアドレスを求めることが可能である。【０２０８】
通信機器１０は、ＴＴＬ応答パケットの送信元アドレスがローカルアドレスであった場合に、ＴＴＬ応答パケットの送信元ルータを対象として、ＴＴＬ応答パケットに対応するＴＴＬパケットで指定したＴＴＬ値を用いて、送信先アドレスを変化させたアドレス範囲推定パケットを送信する。例えば、ルータＡ２０であればＴＴＬ値は１、ルータＢ３０であれば、ＴＴＬ値は２を用いることになる。【０２０９】
また、通信機器１０は、ＴＴＬ応答パケットから得られたルータのＬＡＮ側アドレスを基に、そのルータのアドレス空間を一次推測し記憶する。アドレス空間の一次推測の具体的な方法は、アドレス空間をクラスＣのアドレスとして推測する方法が考えられる。例えば、ルータＡ２０のＬＡＮ側アドレスが、１９２．１６８．０．１であれば、ルータＡ２０のアドレス空間は、１９２．１６８．０．１〜１９２．１６８．０．２５４と推測できる。なお、得られたルータのＬＡＮ側アドレスが、クラスＡまたはクラスＢのプライベートアドレスである場合、得られたルータのアドレス空間が、それぞれのクラスに応じたアドレス空間であると一次推測してもよい。例えば、ルータＡ２０のプライベートアドレスが１０．１．０．１３０であった場合、そのルータのアドレス空間を１０．０．０．１〜１０．２５５．２５５．２５４であると一次推測する。また、１０．１．０．１〜１０．１．０．２５４（最下位８ビットだけを変化）又は１０．１．０．１２９〜１０．１．０．２５４（最下位７ビットだけを変化）などのように一次推測してもよい。【０２１０】
通信機器１０は、アドレス空間を一次推測する際に、少なくとも得られたルータのＬＡＮ側アドレスが含まれるように得られたルータのアドレス空間を一次推測して記憶する。そして、通信機器１０（上位セグメント判断部）は、記憶したアドレス空間のアドレスを順に送信先として指定し、アドレス範囲推定パケットを送信する。このとき、得られたルータのＬＡＮ側アドレスは必ず一次推測したアドレス空間に含まれていると考えることができるので、通信機器１０は、得られたルータのＬＡＮ側アドレスにアドレス範囲推定パケットを送信しなくてもよい。【０２１１】
アドレス範囲推定パケットとは、通信機器１０が、対象となるルータのアドレス空間として推定したアドレス空間が、対象ルータのアドレス空間であるか否かを確認するためのパケットである。アドレス範囲推定パケットは、図１７に示すＵＤＰパケットまたは、図１９に示すＩＣＭＰパケットを用いる。ＴＴＬパケットとアドレス範囲推定パケットとの相違点は、ＴＴＬパケットの送信先アドレスが、インターネット上の特定のアドレスであるのに対し、アドレス範囲推定パケットの送信先アドレスが、対象ルータのアドレス空間内と思われるローカルアドレスである点である。【０２１２】
また、ＴＴＬ応答パケットと、アドレス範囲推定パケットの応答であるＩＣＭＰ  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥとを識別可能とするために、通信機器１０は、図１７に示すＵＤＰパケットを用いる場合、ＴＴＬパケットで使用しないポート番号を指定したＵＤＰパケットを、アドレス範囲推定パケットとして送信する。この結果、アドレス範囲推定パケットの応答であるＩＣＭＰ  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥのデータ部には、アドレス範囲推定パケットで指定したポート番号が含まれることになる。このように、通信機器１０は、ポート番号を参照することによって、ＴＴＬ応答パケットと、アドレス範囲推定パケットの応答であるＩＣＭＰ  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥとを識別することができる。同様に、アドレス範囲推定パケットとしてＩＣＭＰを使用する場合、シーケンス番号等にＴＴＬパケットでは使用しない値を設定する。なお、アドレス範囲推定パケットの応答を用いたルータのアドレス空間の推定方法は後述する。【０２１３】
アドレス範囲推定パケットに対する応答があった場合、通信機器１０は、応答がＩＣＭＰ  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥであるか否かを判定する。応答がＩＣＭＰ  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥでない場合、アドレス範囲推定パケットの送信先アドレスが、ルータのアドレス空間内であると判定する。そして、通信機器１０は、判定結果に基づきルータのアドレス空間の推定情報を更新して記憶する。【０２１４】
アドレス範囲推定パケットの応答としてＩＣＭＰ  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥを受信することによって、アドレス範囲推定パケットの送信先が、ルータのアドレス空間の範囲外のアドレスと判断できる理由について説明する。アドレス範囲推定パケットは、ルータのＬＡＮ側アドレスを取得するために送信したＴＴＬパケットと同一のＴＴＬ値を指定して送信される（例えば、ルータＡ２０のアドレス空間を推測する場合、ＴＴＬ値は１が指定される）。ルータのアドレス空間の範囲外のアドレスを指定してパケットを送信すると、ルータは、上位のルータにパケットを送信しようとする。このとき、ＴＴＬ値の減算が実行され、ＴＴＬ＝０となるため、ルータはアドレス範囲推定パケットを廃棄し、ＩＣＭＰ  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥを送信する。ゆえに、アドレス範囲推定パケットの応答としてＩＣＭＰ  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥを受信すると、アドレス範囲推定パケットの送信先アドレスは、ルータのアドレス空間の範囲外であることがわかる。【０２１５】
なお、アドレス範囲推定パケットに対する応答がない場合も、通信機器１０は、アドレス範囲推定パケットの送信先アドレスが対象ルータのアドレス空間内であると判定してよい。応答がＩＣＭＰ  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥである場合、通信機器１０は、アドレス範囲推定パケットの送信先アドレスが、ルータのアドレス空間外であると判定する。そして、通信機器１０は、判定結果に基づきルータのＬＡＮ側アドレス空間の推定情報を更新して記憶する。その後、通信機器１０は、アドレス空間の推定が終了したか否かを判定する。具体的には、アドレス空間は、アドレス範囲推定パケットの送信及びアドレス範囲推定パケットに対する応答を全て受信したか否かを確認する。終了していない場合、通信機器１０（上位セグメント判断部）は、処理を続行する。終了と判断した場合、通信機器は、アドレス空間の推定処理を終了、すなわち、上位セグメント解析処理を終了する。【０２１６】
なお、通信機器１０は、アドレス空間内と判定されるアドレスと、アドレス空間外と判定されるアドレスとの境界のアドレスを検出した時に、アドレス空間の推定処理を終了してよい。これは、一般にルータのアドレス空間が、連続するアドレスで構成されるためである。例えば、１９２．２６８．２．２から１９２．１６８．２．３、１９２．１６８．２．４・・・の順に、通信機器１０が送信先としてアドレス範囲推定パケットを送信した場合（ただし、１９２．１６８．２．１はルータのアドレスであり、必ずアドレス空間内であると分かっているため送信しない）、１９２．１６８．２．１２８で初めてアドレス空間の範囲外と判断された場合について説明する。この場合、アドレス空間が連続なら、１９２．１６８．２．１２８以降のアドレスは、全てアドレス空間の範囲外と判断されると予測することができる。このため、通信機器１０は、１９２．１６８．２．１２８をアドレス空間の範囲外と判断した時点で、実際に一次推測したアドレス空間全体のアドレスにアドレス範囲推定パケットを送信せず、アドレス空間の判定処理を終了してよい。このとき、通信機器１０が記憶するルータのアドレス空間情報は、判定結果に基づき更新される。【０２１７】
（ＵＰｎＰ  ＩＧＤ仕様を利用する方法）
次に、ＵＰｎＰ  ＩＧＤ仕様を利用して、ルータのアドレスを取得する方法を説明する。【０２１８】
なお、ルータのアドレスを取得した後に、アドレス空間の範囲を推定する処理については、ＴＴＬを変化させたパケットを利用する方法と同様である。【０２１９】
ＴＴＬを変化させたパケットを利用する方法では、ＴＴＬを変化させたＴＴＬパケットと、ＩＣＭＰ  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥとを利用したＴＴＬ応答パケットとを用いて、宅内ネットワーク２に存在するルータの検出を行った。しかし、ＴＴＬ処理を行わないルータや、ＩＣＭＰパケットをフィルタリングするルータ等が市販されている。このため、ＴＴＬを変化させたパケットを利用する方法で説明した上位セグメント解析処理が適用できないルータが存在する。ＵＰｎＰ  ＩＧＤ仕様を利用する方法では、この問題を解決するための上位セグメント解析処理を説明する。【０２２０】
図２２は、ＵＰｎＰ  ＩＧＤ仕様を利用する上位セグメント解析処理が用いられる宅内ネットワーク２の構成の一例を示す図である。図２２において、宅内ネットワーク２は、通信機器１０に代えて、通信機器１１を備える点が異なる。通信機器１１は、ＩＧＤ仕様を利用した上位セグメント解析処理を実行する通信機器である。通信機器１１は、ルータＡ２０、ルータＢ３０、及びルータＣ４０のＬＡＮ側アドレスの他に、それぞれのＷＡＮ側アドレスを取得する点が、通信機器１０と異なる。なお、通信機器１１は、ＩＧＤ仕様を利用した上位セグメント解析処理を行う場合の通信機器４ａ〜４ｃ、５ａ〜５ｃに相当する。【０２２１】
通信機器１１の上位セグメント解析処理の動作を説明する。通信機器１１は、ＵＰｎＰ
ＩＧＤ（Ｉｎｔｅｒｎｅｔ  Ｇａｔｅｗａｙ  Ｄｅｖｉｃｅ）仕様などを用いて、自身が接続されているルータのＬＡＮ側アドレスを取得後、さらにＷＡＮ側アドレスを取得する。そして、通信機器１１は、上位のルータのＬＡＮ側アドレスを取得しながら、上位のルータのアドレス空間の範囲の推定を行う。図２１に示す例の場合、通信機器１１が取得するアドレスの順序は、Ａ→Ｂ→Ｃ→Ｄ→Ｅ→Ｆのようになる。【０２２２】
図２３を用いて、通信機器１１が行うアドレス空間の推定処理を説明する。図２３は、通信機器１１が行う上位セグメント解析処理の一例を示すフローチャートである。図２３を参照して、通信機器１１は、自身が接続されたルータＡ２０に対してＵＰｎＰのディスカバリメッセージである“Ｍ−Ｓｅａｒｃｈ”を用いたルータディスカバリ用パケット（以下、推定ルータパケットという）をマルチキャスト送信する（ステップＳ２０１）。通信機器１１は、送信した推定ルータパケットに対する応答パケット（以下、推定ルータ応答パケットという）を受信したか否かを判断する（ステップＳ２０２）。図２４に、推定ルータパケットのデータ部の一例を示す。また、図２５に推定ルータ応答パケットのデータ部の一例を示す。【０２２３】
通信機器１１は、推定ルータ応答パケットを受信した場合、推定ルータ応答パケットを解析して、送信元ルータのＬＡＮ側アドレスを取得する（ステップＳ２０３）。なお、通信機器１１は、ＵＰｎＰを使用しているため、推定ルータ応答パケットに含まれる情報から、デバイスディスクリプション及びサービスディスクリプションを取得する。これらの情報は、アクション送信のための情報として用いられる。そして、通信機器１１は、推定ルータパケットの送信処理を中止する（ステップＳ２０４）。通信機器１１は、推定ルータ応答パケットの送信元のルータのＷＡＮ側アドレスを取得する（ステップＳ２０５）。【０２２４】
ルータのＷＡＮ側アドレスを、ＵＰｎＰ  ＩＧＤ仕様を用いて取得する手順を説明する。推定ルータ応答パケットの送信元ルータのＬＡＮ側アドレスに対して、通信機器１１は、ＧｅｔＥｘｔｅｒｎａｌＩＰＡｄｄｒｅｓｓアクション要求メッセージを送信する。図２６は、ＧｅｔＥｘｔｅｒｎａｌＩＰＡｄｄｒｅｓｓアクション要求メッセージの一例を示す図である。ＧｅｔＥｘｔｅｒｎａｌＩＰＡｄｄｒｅｓｓアクション要求メッセージを受信したルータが、応答を通信機器１１に返信することよって、通信機器１１は、ルータのＷＡＮ側アドレスを取得する。図２７は、ＧｅｔＥｘｔｅｒｎａｌＩＰＡｄｄｒｅｓｓアクション応答メッセージの一例を示す図である。図２７において、ルータのＬＡＮ側アドレスは、＜ＮｅｗＥｘｔｅｒｎａｌＩＰＡｄｄｒｅｓｓ＞タグで囲まれた部分にセットされる。そのため、通信機器１１は、＜ＮｅｗＥｘｔｅｒｎａｌＩＰＡｄｄｒｅｓｓ＞タグの値を取り出すことで、ルータのＷＡＮ側アドレスを取得することができる。なお、ルータは、通常、Ｗｅｂベースでのユーザインターフェースが実装されている。このため、通信機器１１は、Ｗｅｂベースのユーザインターフェースを用いて、推定ルータ応答パケットの送信元ルータのＷＡＮ側アドレスを取得してもよい。具体的には、ｈｔｔｐメッセージを推定ルータ応答パケットの送信元ルータに送信して、その応答を受信することによって、推定ルータ応答パケットの送信元ルータのＷＡＮ側アドレスを取得できる。【０２２５】
通信機器１１は、推定ルータ応答パケットの送信元ルータのＷＡＮ側アドレスが、ローカルアドレスであるか否かを確認する（ステップＳ２０６）。通信機器１１は、取得したＷＡＮ側アドレスがグローバルアドレスである場合、推定ルータ応答パケットの送信元ルータの上位ルータがインターネット１上のルータであると特定する。すなわち、通信機器１１は、宅内ネットワーク２の全てのルータの検出が完了したと推測して、処理を終了する。一方、通信機器１１は、取得したＷＡＮ側アドレスがローカルアドレスである場合、推定ルータ応答パケットの送信元ルータの上位に、宅内ネットワーク２に属するルータが存在すると判断する。そして、再び、ルータのＷＡＮ側アドレス情報を用いて、推定ルータパケットの送信処理を行う（ステップＳ２０７）。この推定ルータパケットの送信処理については、後述する。【０２２６】
そして、推定ルータ応答パケットの送信元ルータの情報（ＬＡＮ側アドレスやＷＡＮ側アドレスなど）を用いて、アドレス空間推定処理を実行する（ステップＳ２０８）。【０２２７】
ここでのアドレス空間推定処理は、ＴＴＬを変化させたパケットを利用する場合とは若干異なり、通知されたＷＡＮ側アドレスを基に、上位ルータのアドレス空間を推測する。例えば、図２２において、通信機器１１は、ルータＢ３０のＷＡＮ側アドレスを取得すると、アドレス空間推定処理（ステップＳ２０７）が起動される。具体的には、通信機器１１（上位セグメント判断部）は、ルータＢ３０のＷＡＮ側アドレスを用いて、ルータＣ４０のアドレス空間を一次推測し、推定したアドレス空間情報を記憶する。そして、通信機器１１は（上位セグメント判断部）は、上述したアドレス範囲推定パケットを用いたアドレス空間推定を実行し、アドレス空間情報を更新する。ＴＴＬを変化させたパケットを利用する方法との違いは、アドレス空間に必ず含まれるアドレスが、推定対象のルータのＬＡＮ側アドレス（ルータＣ４０のＬＡＮ側アドレス）ではなく、下位ルータのＷＡＮ側アドレス（ルータＢ３０のＷＡＮ側アドレス）である点のみである。【０２２８】
通信機器１１は、直接接続されたルータ（ルータＡ２０）のＷＡＮ側アドレスを取得した場合、ルータＡ２０のＷＡＮ側アドレスを用いて、上述のようにルータＢ３０のアドレス空間を推定し、記憶する。それに加えて、通信機器１１自身のＩＰアドレスとネットマスク情報とを用いて、ルータＡ２０のＬＡＮ側アドレス情報を推測し、記憶する。【０２２９】
そして、再度推定ルータパケット送信処理を起動し、推定ルータ応答パケットを受信するため、ステップＳ２０２に戻る。【０２３０】
図２３に示すフローチャートを用いることによって、通信機器１１は、自身に接続されているルータから上位のルータの存在を確認することができるため、宅内ネットワーク２のルータの接続順序情報を記憶することができる。【０２３１】
なお、上記では、アドレス空間推定処理において、アドレス範囲推定パケットを用いたアドレス空間推定処理を実行するとして説明した。ＴＴＬを変化させたパケットを利用する方法と同様に、アドレス範囲推定パケットを用いたアドレス空間推定処理を実行せず、一次推測したアドレス空間情報を用いて、上位セグメント解析処理を完了してもよい。【０２３２】
（推定ルータパケット送信処理）
なお、ＵＰｎＰを用いて推定ルータパケットを送信処理おいて、通信機器１１は、推測した上位ルータのＬＡＮ側アドレスに対して、ユニキャストでＭ−Ｓｅａｒｃｈを送信するようにすることができる（ＵＰｎＰ  Ｆｏｒｕｍの規格上では、Ｍ−Ｓｅａｒｃｈはマルチキャストのみであるが、ほとんどのルータは、ユニキャストのＭ−Ｓｅａｒｃｈも受信可能としている）。【０２３３】
図２８に、通信機器１１が、推定ルータパケットの送信先として推測する上位ルータのＬＡＮ側アドレスの一例を示す。通常、ルータのＬＡＮ側アドレスは、工場出荷時の状態で使用すると、クラスＣのローカルアドレスが使用されている。この場合、ローカルアドレスの下位８ビットの値は、１または２５４である。このため、通信機器１１は、上位ルータのＬＡＮ側アドレスを推測する場合、ルータのＷＡＮ側アドレスの下位８ビットを１または２５４に置き換えたアドレスを、上位ルータのＬＡＮ側アドレスとして優先的に推測する。このように推測することで、通信機器１１は、高速に上位ルータを検出することが可能となる。また、ユーザは、ルータのＬＡＮ側アドレスを変更する場合、ＬＡＮ側アドレスの下位８ビットの値を６４または１２８などの特定の値に設定することが多い。このため、通信機器１１は、ＬＡＮ側アドレスの下位８ビットの値を、ユーザが設定する頻度が高い特定の値に設定したアドレスを、上位ルータのアドレスとして、優先的に推測する。【０２３４】
原理的には、通信機器１１は、図２８のように推測可能な全てのアドレスを宛先とした多量の推定ルータパケットを作成し、一度に送信することが可能である。しかし、多量の推定ルータパケットを一度に送信すると、ネットワークが輻輳状態になり、他の通信に悪影響が出る場合がある。また、送信した推定ルータパケットが廃棄され、ルータのＬＡＮ側アドレス獲得に悪影響が出ることも考えられる。このような影響を避けるため、通信機器１１は、一定期間に規定の数以下の推定ルータパケットを送信するように制御する。また、推定ルータパケットは、図２４に示すように、ルータだけが応答を返すように指定して送信される。【０２３５】
図２４の例では、ＳＴ（ＳｅａｒｃｈＴａｒｇｅｔ）として、“ｕｒｎ：ｓｃｈｅｍａｓ−ｕｐｎｐ−ｏｒｇ：ｄｅｖｉｃｅ：ＩｎｔｅｒｎｅｔＧａｔｅｗａｙＤｅｖｉｃｅ：１”を設定することにより、ルータだけが応答を返すようになる。このため、通信機器１１は、複数のアドレスに対して推定ルータパケットを送信しても、ルータ以外のアドレスから応答を受信しない。一方、ルータのアドレスを指定した推定ルータパケットに対して、通信機器１１は、図２５の例のような推定ルータ応答パケットを受信する。通信機器１１は、推定ルータ応答パケットのＩＰヘッダの送信元アドレスを参照することで、ルータのＬＡＮ側アドレスを入手することができる。【０２３６】
このように、通信機器１１は、自身が接続するルータのＬＡＮ側アドレスを取得した後に、ＷＡＮ側アドレスを取得する。そして、得られたＷＡＮ側アドレスを基に、上位ルータのアドレス空間の推定処理を行う。さらに、自身が接続するルータのＷＡＮ側アドレスから、上位のルータのＬＡＮ側アドレスを取得する。この動作を繰り返すことによって、通信機器１１は、宅内ネットワーク２内の全てのルータのアドレスとルータの接続情報とを取得して、宅内ネットワーク２内のルータのＬＡＮ側アドレス空間の推定処理を行う。これにより、通信機器１１は、ＴＴＬパケットに含まれるＴＴＬの操作や、ＩＣＭＰ  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥの受信処理を行う必要がない。また、ＴＴＬ処理を行わない市販のルータや、ＩＣＭＰパケットをフィルタリングする市販のルータに対しても適用することが可能となる。【０２３７】
なお、図２３に示すフローチャートにおいて、通信機器１１は、推定ルータパケットの送信の際に、ＵＰｎＰ  ＩＧＤ仕様のディスカバリメッセージであるＭ−Ｓｅａｒｃｈ送信を行うものとして説明した。しかし、通常のルータに実装されているＷｅｂベースのユーザインターフェースを用いて、推定ルータパケットを作成してもよい。例えば、デフォルトＧＷ（ＧａｔｅＷａｙ）のＬＡＮ側通信Ｉ／Ｆのアドレスに適切なｈｔｔｐメッセージを送信し、その応答を受信することによって、ｈｔｔｐメッセージの送信先がルータであることを確認できる。この場合、通信機器１１は、自身が接続するルータのＬＡＮ側アドレスの取得の際に、図２３に示すフローチャートのステップＳ２０１〜Ｓ２０４に代えて、上記の処理を行えばよい。【０２３８】
また、アドレス空間推定処理は、宅内ネットワーク２内の全ルータの検出が終了してから実行してもよい。【０２３９】
また、通信機器１１は、推定ルータパケットにアドレス範囲推定パケットの機能を持たせることによって、ルータディスカバリ処理とアドレス空間の推定処理とを同時に実行してもよい。この場合、推定ルータパケットのＴＴＬ値を、上位ルータと通信機器１１との間に存在するルータ数に応じて適切に設定する。通信機器１１が推定ルータパケットに対するＩＣＭＰ  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥを受信した場合、通信機器１１（上位セグメント判断部）は、推定ルータパケットの送信先のアドレスが、上位ルータのアドレス空間外であると判断すればよい。【０２４０】
また、ＵＰｎＰ  ＩＧＤ仕様を利用する方法において、アドレス空間推定処理はＴＴＬを変化させたパケットを利用する方法と同様の方法を行うものとして説明した。しかし、アドレス空間推定処理は、ＩＣＭＰ  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥを利用するため、通信機器１１は、ＩＣＭＰメッセージをフィルタリングするルータに対して、ＴＴＬを変化させたパケットを利用する方法と同様のアドレス空間の推定処理を行うことができない。この場合、通信機器１１は、ＩＣＭＰメッセージをフィルタリングするルータのアドレス空間が、クラスＣのアドレス空間であると推測してもよい。また、ｈｔｔｐメッセージやＳＮＭＰなどのプロトコルを利用して、ＩＣＭＰメッセージをフィルタリングするルータのアドレス空間を読み出してもよい。【０２４１】
以上が中継機能を有する通信機器、及び中継機能を持たない通信機器が実行する上位セグメント解析処理の概要である。【０２４２】
なお、本実施の形態では、中継機能を有する通信機器４ａ〜４ｃ、及び中継機能を持たない通信機器５ａ〜５ｃが自動的に通信路を接続する場合を例に説明したが、ユーザがユーザＩ／Ｏを通じて通信機器に通信路の接続許可の設定を行った場合にだけ、通信路の接続を行うようにしても良い。図２９、図３０を用いて、より詳細に説明する。【０２４３】
図２９は、ユーザによる接続許可の確認を行う場合の中継機能付き通信機器４ａ〜４ｃの動作の一例を示すフローチャートである。通信機器４ａ〜４ｃは、宅内ネットワーク２に接続されると、上位側ルータに接続された通信機器との通信がユーザに許可されているか否かを確認する（ステップＳ１）。すなわち、通信機器４ａ〜４ｃは、ユーザＩ／Ｏより、上位側ルータに接続された通信機器との通信に対する許可信号が入力されたか否かを確認する。通信機器４ａ〜４ｃは、上位側ルータに接続された通信機器との通信が許可されている場合には、図５で示した「中継機能起動までの手順」と同様の処理を実行する。【０２４４】
一方、許可されていない場合には、通信機器４ａ〜４ｃは、上位セグメント解析処理（ステップＳ１０）、及び上位側ルータに対する中継機能探索処理（ステップＳ１１）を実行しない。上位セグメント解析処理、上位側ルータに対する中継機能探索処理を実行しないことにより、上位側ルータに接続されている中継機能を有する通信機器とは通信路が設定されなくなる。【０２４５】
次に、通信機器４ａ〜４ｃは、下位側ルータに接続された通信機器との通信がユーザに許可されているか否かを確認する（ステップＳ２）。すなわち、通信機器４ａ〜４ｃは、ユーザＩ／Ｏより、下位側ルータに接続された通信機器との通信に対する許可信号が入力されたか否かを確認する。許可されている場合には、図５で示した「中継機能起動までの手順」と同様の処理を実行する。【０２４６】
一方、通信機器４ａ〜４ｃは、下位側ルータに接続された通信機器との通信が許可されていない場合、下位側ルータに接続された“中継機能が有効になっている通信機器”からの接続通知メッセージの受信処理（ステップＳ１３、１４）を実行しない。これによって、下位側ルータに接続されている“中継機能が有効になっている通信機器”とは通信路が接続されなくなる。【０２４７】
次に、中継機能の起動後の動作について説明する。【０２４８】
中継機能起動後にも、上位側ルータに接続された通信機器との通信がユーザに許可されているかを確認するかを確認し、許可されていない場合、上位セグメント解析処理、通信路接続通知メッセージの送信処理を実行しない。この処理により、上位側ルータに接続する通信機器とは通信路が接続されなくなる。【０２４９】
さらに、下位側ルータに接続された通信機器との通信がユーザに許可されているかを確認し、許可されていない場合、自身が送信した接続通知の応答として送信された通信路接続要求メッセージを除く通信路接続要求メッセージを受信した場合、応答を送信しない。この処理により、下位側ルータに接続された通信機器と通信路が接続されなくなる。【０２５０】
次に、中継機能を持たない通信機器５ａ〜５ｃについて説明する。図３０は、ユーザによる接続許可の確認を行う場合の中継機能を持たない通信機器５ａ〜５ｃの動作の一例を示すフローチャートを示している。図３０を参照して、中継機能付き通信機器の場合と同様、通信機器５ａ〜５ｃは、上位側ルータに接続された通信機器との通信がユーザに許可されているか否かを確認し（ステップＳ５）、許可されていない場合、図１０に示す上位セグメント解析処理（ステップＳ４０）、及び上位側ルータに接続された“中継機能が有効になっている通信機器”に対する通信路接続要求メッセージの送信処理（ステップＳ４１）を実行しない。これによって、上位側ルータに接続された“中継機能が有効になっている通信機器”と通信路が接続されなくなる。【０２５１】
さらに、通信機器５ａ〜５ｃは、下位側ルータに接続された通信機器との通信がユーザに許可されているかを確認し、許可されていない場合、通信路接続通知メッセージを受信した場合、応答を送信しない。この処理により、下位側ルータに接続された“中継機能が有効になっている通信機器”と通信路が接続されなくなる。【０２５２】
このような中継機能を有する通信機器４ａ〜４ｃと、中継機能を持たない通信機器５ａ〜５ｃで実行されるユーザによる接続許可が設定されているかの確認処理により、マンション等におけるローカルネットワークが他人と共用されている場合等で、通信機器を接続したルータ以外の他のルータに接続された他人の通信機器との間で不用意に通信路が設定されることを防ぐことができ、セキュリティを高めることができる。【０２５３】
なお、本実施の形態の処理フローの例では、中継機能を有する通信機器４ａ〜４ｃと、中継機能を持たない通信機器５ａ〜５ｃにおいて、上位側ルータと下位側ルータのどちらに接続された通信機器との通信も許可しない場合、同一ルータに接続された中継機能を有する通信機器４ａ〜４ｃ間でもメッセージ中継用の通信路が接続されなくなる。しかし、同一ルータ内の通信では通信機器間で直接通信が可能であるため、中継用の通信路の接続は必要なく、問題は発生しない。【０２５４】
また、ここではセキュリティを高める方法として、上位側ルータ又は下位側ルータに接続された通信機器との通信に対してユーザが許可を与える方法を説明したが、接続を許可する通信機器の識別情報を予め登録しておく方法や、共有情報を持つ通信機器からの接続を認証する方法等を用いても同様の効果を得ることが可能である。同様に、通信機器４ａ〜４ｃ、５ａ〜５ｃが、新規通信路を接続する処理を行う度に、ユーザに確認を求める方法を用いても良い。【０２５５】
本実施の形態では、中継機能を有する通信機器と、中継機能を持たない通信機器の動作について説明したが、これらの通信機器の動作を行うソフトウエアを作成し、ＣＤ、ＤＶＤ、ＲＯＭ、フラッシュＲＯＭ等の記憶媒体に記録してもよい。このような記憶媒体を作成することにより、ＰＣや高機能デジタル家電等のソフトウエア実行機能を持つ機器に、記憶媒体からソフトウエアをインストールすることにより、本実施の形態で説明した“中継機能を有する通信機器”や“中継機能を持たない通信機器”の機能を必要に応じて追加することが可能となる。【０２５６】
以上のように、本実施の形態における中継機能を有する通信機器は、１つ以上のルータを直列に接続し構成される宅内ネットワークに接続され、宅内ネットワークに接続された他の通信機器との間に通信路を確立し、確立した通信路を用いてメッセージを中継することで、通信機器間の通信を可能とする。また、本実施の形態における通信機器は、１つ以上のルータを直列に接続し構成される宅内ネットワークに接続され、宅内ネットワークに接続された中継機能を有する他の通信機器との間に通信路を確立し、確立した通信路を介して中継機能を有する他の通信機器を用いて、通信機器間の通信を可能とする。
【産業上の利用可能性】
【０２５７】
本発明の通信機器は、宅内ネットワーク等に接続された通信機器等として有用である。
【図１】
2007114251.tif 000003
【図２】
2007114251.tif 000004
【図３】
2007114251.tif 000005
【図４】
2007114251.tif 000006
【図５】
2007114251.tif 000007
【図６】
2007114251.tif 000008
【図７】
2007114251.tif 000009
【図８】
2007114251.tif 000010
【図９】
2007114251.tif 000011
【図１０】
2007114251.tif 000012
【図１１】
2007114251.tif 000013
【図１２】
2007114251.tif 000014
【図１３】
2007114251.tif 000015
【図１４】
2007114251.tif 000016
【図１５】
2007114251.tif 000017
【図１６】
2007114251.tif 000018
【図１７】
2007114251.tif 000019
【図１８】
2007114251.tif 000020
【図１９】
2007114251.tif 000021
【図２０】
2007114251.tif 000022
【図２１】
2007114251.tif 000023
【図２２】
2007114251.tif 000024
【図２３】
2007114251.tif 000025
【図２４】
2007114251.tif 000026
【図２５】
2007114251.tif 000027
【図２６】
2007114251.tif 000028
【図２７】
2007114251.tif 000029
【図２８】
2007114251.tif 000030
【図２９】
2007114251.tif 000031
【図３０】
2007114251.tif 000032
【図３１】
2007114251.tif 000033
【手続補正書】
【提出日】平成20年9月26日(2008.9.26)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
外部ネットワークに接続するローカルネットワークにおいて、前記ローカルネットワーク内の通信機器と前記外部ネットワークとの間に１つ以上のルータが直列に接続されており、前記ローカルネットワーク内に接続され、前記ローカルネットワーク内の他の通信機器との間に通信路を接続し、前記他の通信機器からの通信メッセージを中継する中継機能を有する通信機器において、
前記ローカルネットワーク内で、自身が接続されたルータよりも外部ネットワーク側に接続された上位ルータ配下の通信機器が設定可能なアドレス範囲を表すアドレス範囲情報を取得し、記憶する上位セグメント判断部と、
前記ローカルネットワーク内の他の通信機器との間に通信路を接続し保持する端末通信路保持部と、
前記他の通信機器からの通信メッセージを中継転送するメッセージ中継部とを備え、
前記端末通信路保持部は、前記他の通信機器から通信路の確立を要求する第１の要求メッセージを受信した場合、当該受信した第１の要求メッセージの送信元アドレス情報を記憶し、当該記憶した送信元アドレス情報に対して、応答メッセージを送信し、前記他の通信機器との間で通信路の接続を確立し、
前記端末通信路保持部は、前記他の通信機器から第１の要求メッセージを受信しなかった場合、前記上位セグメント判断部が記憶した前記アドレス範囲情報を用いて、前記上位ルータ配下の他の通信機器のアドレス情報を推定し、当該推定したアドレス情報宛に、通信路の確立を要求する第２の要求メッセージを送信し、応答メッセージを受信することによって、前記上位ルータ配下の他の通信機器との間に通信路を確立すると共に、当該通信路を確立した他の通信機器のアドレス情報を記憶し、
前記メッセージ中継部は、前記他の通信機器からの通信メッセージを受信し、当該受信した通信メッセージに記載された前記他の通信機器が指定した送信先情報を取り出し、前記端末通信路保持部が記憶するアドレス情報から前記送信先情報に対応するアドレス情報を取得して、当該取得したアドレス情報宛てに、当該受信した通信メッセージを送信する中継機能を有することを特徴とする、通信機器。
【請求項２】
前記上位セグメント判断部は、自身が接続されたルータと前記外部ネットワークとの間に位置するルータの内、１つ以上のルータのＬＡＮ側アドレス情報、又はＬＡＮ側アドレス情報とＷＡＮ側アドレス情報とを取得して、当該取得したアドレス情報が属する第１のネットワークに接続される他の通信機器が取ることが可能なアドレス範囲を推定して、当該推定したアドレス範囲を前記アドレス範囲情報として記憶することを特徴とする、請求項１に記載の通信機器。
【請求項３】
前記ローカルネットワーク内に存在する中継機能を有する他の通信機器を探索する中継機能探索部と、
前記ローカルネットワーク内の他の通信機器から受信した探索用メッセージに対して、応答を送信する探索応答部とをさらに備え、
前記中継機能探索部は、前記端末通信路保持部が記憶するアドレス情報を用いて、中継機能を有する他の通信機器が取りうるアドレスを得て、当該アドレス宛に探索用メッセージを送信し、前記中継機能を有する他の通信機器からの応答メッセージを受信することで、前記中継機能を有する他の通信機器を発見し、
前記中継機能を有する他の通信機器を発見しなかった場合にのみ、前記中継機能探索部は、前記端末通信路保持部と前記メッセージ中継部とを動作させ、前記探索応答部は、前記ローカルネットワーク内の他の通信機器から受信した探索用メッセージに対して応答し、
前記中継機能を有する他の通信機器を発見した場合には、前記中継機能探索部は、前記端末通信路保持部と前記メッセージ中継部との動作を停止させ、前記探索応答部は、前記ローカルネットワーク内の他の通信機器から受信した探索用メッセージに応答しないことを特徴とする、請求項１に記載の通信機器。
【請求項４】
中継機能を有する他の通信機器との間に通信路を接続し保持するサーバ通信路保持部をさらに備え、
前記中継機能探索部が中継機能を有する他の通信機器を発見した場合、前記サーバ通信路保持部は、当該発見した中継機能を有する他の通信機器に対して、通信路の確立を要求する第１の要求メッセージを送信し、応答メッセージを受信することで、当該発見した中継機能を有する他の通信機器との間の通信路を確立し、
前記中継機能探索部が中継機能を有する他の通信機器を発見しなかった場合、前記サーバ通信路保持部は、中継機能を有する他の通信機器から通信路の確立を要求する第１の要求メッセージを受信すれば、当該受信した第１の要求メッセージの送信元に応答メッセージを送信し、前記中継機能を有する他の通信機器との間の通信路を確立することを特徴とする、請求項３に記載の通信機器。
【請求項５】
前記サーバ通信路保持部が、前記中継機能を有する他の通信機器との間の通信に異常を検出した場合、前記中継機能探索部は、中継機能を有する他の通信機器の探索を再実行し、当該探索結果に応じて、前記サーバ通信路保持部、前記メッセージ中継部、及び前記探索応答部を動作させることを特徴とする、請求項３に記載の通信機器。
【請求項６】
前記中継機能探索部が、中継機能を有する他の通信機器を発見しなかった場合、
前記サーバ通信路保持部は、中継機能を有する他の通信機器から通信路の確立を要求する第１の要求メッセージを受信するか否かを所定時間監視し、
前記第１の要求メッセージを受信しなかった場合、前記サーバ通信路保持部は、前記端末通信路保持部と前記メッセージ中継部とを動作させ、前記探索応答部は、前記ローカルネットワーク内の他の通信機器から受信した探索用メッセージに対して応答することを特徴とする、請求項４に記載の通信機器。
【請求項７】
前記端末通信路保持部と前記メッセージ中継部とを動作させる場合、サブネット内のホストアドレスで現状使用されていないアドレス内から、所定範囲のアドレスにマッチするアドレスを選択して、自身のアドレスとすることを特徴とする、請求項１に記載の通信機器。
【請求項８】
前記端末通信路保持部は、前記通信路を接続した他の通信機器から、当該通信路を通じて、未だ通信路を接続していない他の通信機器のアドレス情報を受信した場合、当該受信したアドレス情報に基づいて、通信路の確立を要求する第２の要求メッセージを送信することを特徴とする、請求項１に記載の通信機器。
【請求項９】
ユーザが通信機器に信号を入力する入力手段をさらに備え、
前記上位セグメント判断部は、前記入力手段からの信号に応じて、前記上位ルータ配下のアドレス範囲情報を取得するか否かを決定し、
前記端末通信路保持部は、前記入力手段からの信号に応じて、前記上位ルータ配下の他の通信機器に対して、通信路の確立を要求する第２の要求メッセージを送信するか否かを決定することを特徴とする、請求項１に記載の通信機器。
【請求項１０】
ユーザが通信機器に信号を入力する入力手段をさらに備え、
前記端末通信路保持部は、前記入力手段からの信号に応じて、前記他の通信機器から通信路の確立を要求する第１の要求メッセージを受信した場合に、応答メッセージを送信するか否かを決定することを特徴とする、請求項１に記載の通信機器。
【請求項１１】
外部ネットワークに接続するローカルネットワークにおいて、前記ローカルネットワーク内の通信機器と前記外部ネットワークとの間に１つ以上のルータが直列に接続されており、前記ローカルネットワーク内に接続され、前記ローカルネットワーク内の中継機能を有する他の通信機器との間に通信路を接続し、前記中継機能を有する他の通信機器を介して、他の通信機器とメッセージ通信を行う通信機器において、
前記ローカルネットワーク内で、自身が接続されたルータよりも外部ネットワーク側に接続された上位ルータ配下の通信機器が設定可能なアドレス範囲を表すアドレス範囲情報を取得し、記憶する上位セグメント判断部と、
前記中継機能を有する他の通信機器と通信路の接続を行うサーバ通信路保持部とを備え、
前記サーバ通信路保持部は、前記上位セグメント判断部が記憶した前記アドレス範囲情報に基づいて、前記中継機能を有する他の通信機器のアドレス情報を推測し、当該推測したアドレス情報宛に通信路の確立を要求する第１の要求メッセージを送信し、前記中継機能を有する他の通信機器からの応答メッセージを受信することで通信路を確立し、
前記サーバ通信路保持部は、前記中継機能を有する他の通信機器から通信路の確立を要求する第２の要求メッセージを受信した場合、当該第２の要求メッセージの送信元アドレスに、応答メッセージを送信することで、前記中継機能を有する他の通信機器との間に通信路を確立することを特徴とする、通信機器。
【請求項１２】
前記サーバ通信路保持部は、前記中継機能を有する他の通信機器との間に接続している通信路を通じて、前記中継機能を有する他の通信機器が未だ通信路を接続していない他の通信機器のアドレス情報を、前記中継機能を有する他の通信機器に送信することを特徴とする、請求項１１に記載の通信機器。
【請求項１３】
前記サーバ通信路保持部が、前記中継機能を有する他の通信機器との間の通信に異常を検出した場合、
前記上位セグメント判断部は、前記アドレス範囲情報を取得し、記憶する処理を再実行し、
前記サーバ通信路保持部は、前記中継機能を有する他の通信機器との通信路の確立処理を再実行することを特徴とする、請求項１１に記載の通信機器。
【請求項１４】
ユーザが通信機器に信号を入力する入力手段をさらに備え、
前記上位セグメント判断部は、前記入力手段からの信号に応じて、前記上位ルータ配下のアドレス範囲情報を取得するか否かを決定し、
前記サーバ通信路保持部は、前記入力手段からの信号に応じて、前記上位ルータ配下の他の通信機器に対して、通信路の確立を要求する第１の要求メッセージを送信するか否かを決定することを特徴とする、請求項１１に記載の通信機器。
【請求項１５】
ユーザが通信機器に信号を入力する入力手段をさらに備え、
前記サーバ通信路保持部は、前記入力手段からの信号に応じて、前記中継機能を有する他の通信機器から通信路の確立を要求する第２の要求メッセージを受信した場合に、応答メッセージを送信するか否かを決定することを特徴とする、請求項１１に記載の通信機器。
【請求項１６】
外部ネットワークに接続するローカルネットワークにおいて、前記ローカルネットワーク内の通信機器と前記外部ネットワークとの間に１つ以上のルータが直列に接続されており、前記ローカルネットワーク内に接続され、前記ローカルネットワーク内の他の通信機器との間に通信路を接続し、前記他の通信機器からの通信メッセージを中継する中継機能を有する通信機器が実行する方法であって、
前記ローカルネットワーク内で、自身が接続されたルータよりも外部ネットワーク側に接続された上位ルータ配下の通信機器が設定可能なアドレス範囲を表すアドレス範囲情報を取得し、記憶する上位セグメント判断ステップと、
前記ローカルネットワーク内の他の通信機器との間に通信路を接続し保持する端末通信路保持ステップと、
前記他の通信機器からの通信メッセージを中継転送するメッセージ中継ステップとを備え、
前記端末通信路保持ステップは、前記他の通信機器から通信路の確立を要求する第１の要求メッセージを受信した場合、当該受信した第１の要求メッセージの送信元アドレス情報を記憶し、当該記憶した送信元アドレス情報に対して、応答メッセージを送信し、前記他の通信機器との間で通信路の接続を確立し、
前記端末通信路保持ステップは、前記他の通信機器から第１の要求メッセージを受信しなかった場合、前記上位セグメント判断ステップが記憶したアドレス範囲情報を用いて、前記上位ルータ配下の他の通信機器のアドレス情報を推定し、当該推定したアドレス情報宛に、通信路の確立を要求する第２の要求メッセージを送信し、応答メッセージを受信することによって、前記上位ルータ配下の他の通信機器との間に通信路を確立すると共に、当該通信路を確立した他の通信機器のアドレス情報を記憶し、
前記メッセージ中継ステップは、前記他の通信機器からの通信メッセージを受信し、当該受信した通信メッセージに記載された前記他の通信機器が指定した送信先情報を取り出し、前記端末通信路保持ステップが記憶するアドレス情報から前記送信先情報に対応するアドレス情報を取得して、当該取得したアドレス情報宛てに、当該受信した通信メッセージを送信する中継機能を有することを特徴とする、方法。
【請求項１７】
外部ネットワークに接続するローカルネットワークにおいて、前記ローカルネットワーク内の通信機器と前記外部ネットワークとの間に１つ以上のルータが直列に接続されており、前記ローカルネットワーク内に接続され、前記ローカルネットワーク内の中継機能を有する他の通信機器との間に通信路を接続し、前記中継機能を有する他の通信機器を介して、他の通信機器とメッセージ通信を行う通信機器が実行する方法であって、
前記ローカルネットワーク内で、自身が接続されたルータよりも外部ネットワーク側に接続された上位ルータ配下の通信機器が設定可能なアドレス範囲を表すアドレス範囲情報を取得し、記憶する上位セグメント判断ステップと、
前記中継機能を有する他の通信機器と通信路の接続を行うサーバ通信路保持ステップとを備え、
前記サーバ通信路保持ステップは、前記上位セグメント判断ステップが記憶したアドレス範囲情報に基づいて、前記中継機能を有する他の通信機器のアドレス情報を推測し、当該推測したアドレス情報宛に通信路の確立を要求する第１の要求メッセージを送信し、前記中継機能を有する他の通信機器からの応答メッセージを受信することで通信路を確立し、
前記サーバ通信路保持ステップは、前記中継機能を有する他の通信機器から通信路の確立を要求する第２の要求メッセージを受信した場合、当該第２の要求メッセージの送信元アドレスに、応答メッセージを送信することで、前記中継機能を有する他の通信機器との間に通信路を確立することを特徴とする、方法。
【請求項１８】
請求項１６又は請求項１７に基づく方法を実装したソフトウエアを記録した記憶媒体。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信機器間、その通信機器が実行する方法、及びその方法を実装したソフトウェアを格納した記憶媒体に関し、より特定的には、１台以上のルータで構成されるローカルネットワークにおいて、ルータを超えて双方向の通信を互いに可能とする通信機器、その通信機器が実行する方法、及びその方法を実装したソフトウェアを格納した記憶媒体に関する。ここで、ローカルネットワークの一例としては、家庭内におけるネットワーク（いわゆる宅内ネットワーク）や、企業内で構築される企業内ネットワーク等がある。
【背景技術】
【０００２】
近年、急速に情報化社会が進展し、宅内においても急速にネットワーク化が普及しつつある。このような状況のもと、宅内ネットワークに接続される複数の機器は、互いに連携し、機器間で通信し合いながら動作することで、機器が提供するサービスの利便性を高めることが期待されている。
【０００３】
また、宅内ネットワークに接続される機器は、使用者が一般家庭ユーザであるため、その機器の接続作業をできるだけ簡単なものにする必要がある。
【０００４】
しかしながら、一般家庭のユーザはネットワーク知識がないため、ルータとハブとの違いがわからず、ハブの代わりにルータを接続したり、無線アクセスポイントの代わりに無線ルータを接続したりする場合がある。また、宅内ネットワークが複数のルータで構成される場合がしばしば発生し、このネットワーク構成により機器間の通信が不能となる障害が発生する場合がある。これを避けるためには、ユーザ自身が宅内ネットワークの構成を理解し、通信を行う機器を通信可能なネットワークの位置に接続する必要があるが、これは現実的ではない。なお、ここでは、ローカルネットワークとして、宅内ネットワークを例にして説明するが、企業内でも専門知識を持つ人は極少数であり、企業内ネットワークでも同様のことが言える。
【０００５】
宅内ネットワークが複数のルータで構成された場合、機器間の通信が不能となることについて図を用いてより詳細に説明する。図３１は、従来の複数のルータで構成された宅内ネットワーク５２の構成の一例を示している。図３１において、モデム内蔵ルータ５３ａの配下には、ルータ５３ｂ及びルータ５３ｃが接続されている。家庭用で用いられるルータには、ＮＡＴ機能やファイアウォール機能がついているため、宅内ネットワーク５２が複数のルータで構成される場合、宅内ネットワーク５２内で、アドレス変換（ＮＡＰＴ）機能やファイアウォール機能が動作することになる。一般に家庭用ルータでは、ＮＡＰＴ機能やファイアウォール機能によって、ＷＡＮ側に位置する機器から通信を開始して、ＬＡＮ側に位置する機器と通信することができない。そのため、図３１の例では、通信機器５５ａから通信機器５５ｂに通信を開始することができない。
【０００６】
なお、通信機器５５ｂから通信機器５５ａに対しては、ルータ５３ｂにとって、ＬＡＮ側からＷＡＮ側への通信になるため、自動的にルータ５３ｂにアドレス変換（ＮＡＰＴ）設定が行われる。そのため、通信機器５５ｂから通信機器５５ａに対して通信を行うことが可能である。
【０００７】
このような家庭用ルータにより通信が阻害される問題に対して、宅内ネットワークの外部（例えば、インターネット上）に接続支援サーバを設け、接続支援サーバを通じて、宅内ネットワークに接続されたルータのＷＡＮ側の通信機器からＬＡＮ側の通信機器に接続する方法が知られている（例えば、特許文献１）。この方法では、まず、宅内ネットワーク内の通信機器が接続支援サーバと通信路を確立する。そして、宅内ネットワーク外の通信機器は、接続支援サーバを通じて、宅内ネットワーク内の通信機器と接続する。
【特許文献１】特開２００３−１６９０７５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、従来の接続支援サーバを用いる方法は、宅内ネットワークの外部に接続支援サーバを設置することを前提するものであり、宅内ネットワークが外部ネットワーク（例えば、インターネット）に接続されていない場合、適用できないという問題点があった。
【０００９】
ここで、従来の接続支援サーバを宅内ネットワーク内に設置する場合について考察する。このような場合、接続支援サーバは、ネットワークを理解していないユーザによって設置されることが前提となるため、宅内ネットワークのどの位置に接続されても、所望の機能を実現する必要がある。
【００１０】
すなわち、従来の接続支援サーバを用いる方法は、宅内ネットワーク内の通信機器からは、必ずインターネット側（ＷＡＮ側）になる位置に接続支援サーバが存在する場合のみ適用可能であるため、従来の方法をそのまま１つ以上のルータを直列に接続して構成される宅内ネットワーク内に適用することができないという問題があった。
【００１１】
例えば、接続支援サーバを図３１のように、１つ以上のルータを直列に接続して構成された宅内ネットワーク内に接続した場合、従来の方法では、複数ルータで構成されるネットワーク（マルチセグメントネットワーク）内に接続支援サーバを接続することに対する考慮がなされていないため、接続支援サーバがルータ５３ｂやルータ５３ｃに接続された場合、通信機器５５ａから接続支援サーバに接続することができない。すなわち、接続支援サーバを設置する位置によっては、通信機器５５ａと接続支援サーバとの間に通信路を確立できないという問題が発生していた。
【００１２】
それ故に、本発明は、上記問題点を鑑みてなされたものであり、１つ以上のルータを直列に接続して構成される宅内ネットワークに接続され、宅内ネットワークに接続された他の通信機器のメッセージを中継することで、他の通信機器間の通信を可能とする中継機能を有する通信機器と、中継機能を有する通信機器を介して通信を行うことを可能とする通信機器とを提供することを目的とする。
【００１３】
さらに、通信機器が実行する方法、及びその方法を実装したソフトウエアを記録した記録媒体を提供することを目的とする。
【課題を解決するための手段】
【００１４】
本発明は、外部ネットワークに接続するローカルネットワークにおいて、ローカルネットワーク内の通信機器と外部ネットワークとの間に１つ以上のルータが直列に接続されており、ローカルネットワーク内に接続され、ローカルネットワーク内の他の通信機器との間に通信路を接続し、他の通信機器からの通信メッセージを中継する中継機能を有する通信機器に向けられている。そして、上記目的を達成するために、中継機能を有する通信機器は、ローカルネットワーク内で、自身が接続されたルータよりも外部ネットワーク側に接続された上位ルータ配下の通信機器が設定可能なアドレス範囲を表すアドレス範囲情報を取得し、記憶する上位セグメント判断部と、ローカルネットワーク内の他の通信機器との間に通信路を接続し保持する端末通信路保持部と、他の通信機器からの通信メッセージを中継転送するメッセージ中継部とを備える。端末通信路保持部は、他の通信機器から通信路の確立を要求する第１の要求メッセージを受信した場合、当該受信した第１の要求メッセージの送信元アドレス情報を記憶し、当該記憶した送信元アドレス情報に対して、応答メッセージを送信し、他の通信機器との間で通信路の接続を確立する。端末通信路保持部は、他の通信機器から第１の要求メッセージを受信しなかった場合、上位セグメント判断部が記憶したアドレス範囲情報を用いて、上位ルータ配下の他の通信機器のアドレス情報を推定し、当該推定したアドレス情報宛に、通信路の確立を要求する第２の要求メッセージを送信し、応答メッセージを受信することによって、上位ルータ配下の他の通信機器との間に通信路を確立すると共に、当該通信路を確立した他の通信機器のアドレス情報を記憶する。メッセージ中継部は、他の通信機器からの通信メッセージを受信し、当該受信した通信メッセージに記載された他の通信機器が指定した送信先情報を取り出し、端末通信路保持部が記憶するアドレス情報から送信先情報に対応するアドレス情報を取得して、当該取得したアドレス情報宛てに、当該受信した通信メッセージを送信する中継機能を有する。
【００１５】
これによって、中継機能を有する通信機器は、ローカルネットワーク内で、自身が接続されているルータより上位（外部ネットワークに近づく側）に他のルータが存在している時、上位ルータに接続された他の通信機器に対して、通信路の確立を要求する第１の要求メッセージを送信することができる。一般にルータは、ＬＡＮ側からＷＡＮ側に開始した通信を中継することは可能であるため、第１の要求メッセージを受信した他の通信機器が、メッセージのヘッダに記述された送信元アドレス（ＩＰアドレス、ポート番号）に応答メッセージを送信することにより、通信路が確立し、中継機能を有する通信機器と上位ルータに接続された通信機とは相互に通信を行うことが可能となる。
【００１６】
また、中継機能を有する通信機器は、自身が接続しているルータ、もしくはより下位（外部ネットワークから遠ざかる側）のルータに接続されている他の通信機器に対しては、他の通信機器から通信路の確立を要求する第２の要求メッセージを受信した時に、その送信元アドレス（ＩＰアドレス、ポート番号）に対して、応答メッセージを送信し通信路を確立する。この結果、中継機能を有する通信機器が、下位のルータに接続されている他の通信機器との間に通信路を接続することが可能となり、他の通信機器は、中継機能を有する通信機器にメッセージを中継させることが可能となる。
【００１７】
また、上位セグメント判断部は、自身が接続されたルータと外部ネットワークとの間に位置するルータの内、１つ以上のルータのＬＡＮ側アドレス情報、又はＬＡＮ側アドレス情報とＷＡＮ側アドレス情報とを取得して、当該取得したアドレス情報が属する第１のネットワークに接続される他の通信機器が取ることが可能なアドレス範囲を推定し、当該推定したアドレス範囲をアドレス範囲情報として記憶する。
【００１８】
これによって、中継機能を有する通信機器は、Ｔｒａｃｅ  ｒｏｕｔｅのようにＴＴＬを操作したメッセージを送信したり、ＵＰｎＰ  ＩＧＤ仕様に基づくメッセージを送信したりして上位ルータから応答メッセージを得ることにより、上位ルータのアドレス情報を取得し、当該取得したアドレス情報により、上位ルータがローカルネットワークに属するルータであるか否かを判断し（例えば、上位ルータのＬＡＮ側アドレスがプライベートアドレスであれば、その上位ルータはローカルネットワーク内のルータであると判断してもよい）、上位ルータがローカルネットワークに属するルータである場合には、取得したアドレス情報を用いて、サブネットワーク内の通信機器が取ることが可能なアドレスの範囲を推測して記憶する。
【００１９】
そして、中継機能を有する通信機器は、記憶したアドレス範囲のアドレス宛に通信路の確立を要求する第２の要求メッセージを送信する。そして、送信されたアドレスに通信機器が接続されていれば、通信機器から応答メッセージを受信し、通信路を確立する。
【００２０】
この結果、中継機能を有する通信機器は、予めローカルネットワークの構成情報や接続された他の通信機器のアドレス情報等を記憶しておかなくても、上位ルータに接続された通信機器との間に通信路を接続することが可能になる。
【００２１】
好ましくは、中継機能を有する通信機器は、ローカルネットワーク内に存在する中継機能を有する他の通信機器を探索する中継機能探索部と、ローカルネットワーク内の他の通信機器から受信した探索用メッセージに対して、応答を送信する探索応答部とをさらに備える。中継機能探索部は、端末通信路保持部が記憶するアドレス情報を用いて、中継機能を有する他の通信機器が取りうるアドレスを得て、当該アドレス宛に探索用メッセージを送信し、中継機能を有する他の通信機器からの応答メッセージを受信することで、中継機能を有する他の通信機器を発見する。中継機能を有する他の通信機器を発見しなかった場合にのみ、中継機能探索部は、端末通信路保持部とメッセージ中継部とを動作させ、探索応答部は、ローカルネットワーク内の他の通信機器から受信した探索用メッセージに対して応答する。中継機能を有する他の通信機器を発見した場合には、中継機能探索部は、端末通信路保持部とメッセージ中継部との動作を停止させ、探索応答部は、ローカルネットワーク内の他の通信機器から受信した探索用メッセージに応答しない。
【００２２】
これによって、中継機能を有する通信機器は、ローカルネットワーク内に既に中継機能を提供している通信機器を発見しなかった場合にのみ、自身が中継機能を提供することが可能となる。結果として、ローカルネットワーク内に中継機能を提供している通信機器が増えていくことを防ぐことになり、各通信機器が複数の中継機能を有する通信機器と通信するために、多数の通信路を接続しなければならなくなることを防ぐことができる。
【００２３】
好ましくは、中継機能を有する通信機器は、中継機能を有する他の通信機器との間に通信路を接続し保持するサーバ通信路保持部をさらに備える。中継機能探索部が中継機能を有する他の通信機器を発見した場合、サーバ通信路保持部は、当該発見した中継機能を有する他の通信機器に対して、通信路の確立を要求する第１の要求メッセージを送信し、応答メッセージを受信することで、当該発見した中継機能を有する他の通信機器との間の通信路を確立する。中継機能探索部が中継機能を有する他の通信機器を発見しなかった場合、サーバ通信路保持部は、中継機能を有する他の通信機器から通信路の確立を要求する第１の要求メッセージを受信すれば、当該受信した第１の要求メッセージの送信元に応答メッセージを送信し、中継機能を有する他の通信機器との間の通信路を確立する。
【００２４】
これによって、中継機能を有する通信機器は、ローカルネットワーク内に既にメッセージ中継機能を提供している通信機器が存在している場合は、既に存在する中継機能を有する通信機器と通信路を接続する通信機器として動作し、中継機能を提供している通信機器が存在しない場合には、メッセージ中継機能を提供する通信機器として動作することが可能となる。結果として、中継機能を専門とした通信機器という形ではなく、通常の通信機器に中継機能を付加しておき、必要なときに（ローカルネットワーク内に中継機能を提供している他の通信機器がいないときに）自身の通信機器としての固有機能に加えて、中継機能を提供する通信機器を構成することが可能となる。
【００２５】
好ましくは、サーバ通信路保持部が、中継機能を有する他の通信機器との間の通信に異常を検出した場合、中継機能探索部は、中継機能を有する他の通信機器の探索を再実行し、当該探索結果に応じて、サーバ通信路保持部、メッセージ中継部、及び探索応答部を動作させる。
【００２６】
これによって、中継機能を有する通信機器は、メッセージ中継機能を提供していた中継機能を有する通信機器に障害が発生（例えば、電源が切断された、ネットワークケーブルが外れた等）し、中継機能が提供されなくなった場合に、自動的に自身が代わりにローカルネットワーク内でメッセージ中継機能を提供することが可能となる。なお、中継機能を有する他の通信機器との間の通信に異常を検出することの一例としては、通信路を保持するために中継機能を有する他の通信機器との間で定期的に送信しているパケットの到着が途切れることを検出する方法等が考えられる。
【００２７】
中継機能探索部が中継機能を有する他の通信機器を発見しなかった場合、サーバ通信路保持部は、中継機能を有する他の通信機器から通信路の確立を要求する第１の要求メッセージを受信するか否かを所定時間監視する。第１の要求メッセージを受信しなかった場合、サーバ通信路保持部は、端末通信路保持部とメッセージ中継部とを動作させる。探索応答部は、ローカルネットワーク内の他の通信機器から受信した探索用メッセージに対して応答する。
【００２８】
これによって、中継機能を有する通信機器は、中継機能を提供している他の通信機器が、自身が接続しているルータより下位ルータに接続されている場合に、この中継機能を提供している通信機器から通信路の確立を要求する第１の要求メッセージを受信するか否かを所定時間待つことにより、不必要な中継機能の提供を防ぎ、既に存在する中継機能を提供している他の通信機器との間に安定して通信路を接続することが可能となる。
【００２９】
好ましくは、中継機能を有する通信機器は、端末通信路保持部とメッセージ中継部とを動作させる場合、サブネット内のホストアドレスで現状使用されていないアドレス内から、所定範囲のアドレスにマッチするアドレスを選択して、自身のアドレスとする。
【００３０】
これによって、他の通信機器は、中継機能を有する通信機器のアドレスを推測することが容易になり、他の通信機器からの中継機能を有する通信機器への通信路接続が容易になる。
【００３１】
好ましくは、端末通信路保持部は、通信路を接続した他の通信機器から、当該通信路を通じて、未だ通信路を接続していない他の通信機器のアドレス情報を受信した場合、当該受信したアドレス情報に基づいて、通信路の確立を要求する第２の要求メッセージを送信する。
【００３２】
これによって、中継機能を有する通信機器は、上位ルータに接続された既に通信路を接続済みの通信機器から、上位ルータに新規接続された通信機器のアドレス情報を受信した場合等に、通信路の確立を要求する第２の要求メッセージを迅速に送信することが可能となる。
【００３３】
好ましくは、中継機能を有する通信機器は、ユーザが通信機器に信号を入力する入力手段をさらに備える。上位セグメント判断部は、入力手段からの信号に応じて、上位ルータ配下のアドレス範囲情報を取得するか否かを決定する。端末通信路保持部は、入力手段からの信号に応じて、上位ルータ配下の他の通信機器に対して、通信路の確立を要求する第２の要求メッセージを送信するか否かを決定する。
【００３４】
これによって、中継機能を有する通信機器は、外部からの入力がなければ、上位ルータに接続された通信機器と通信路を接続しないことが可能となり、セキュリティを高めることが可能となる。
【００３５】
中継機能を有する通信機器は、ユーザが通信機器に信号を入力する入力手段をさらに備える。端末通信路保持部は、入力手段からの信号に応じて、他の通信機器から通信路の確立を要求する第１の要求メッセージを受信した場合に、応答メッセージを送信するか否かを決定する。
【００３６】
これによって、中継機能を有する通信機器は、外部からの入力がなければ、他の通信機器と通信路を接続しないことが可能となり、セキュリティを高めることが可能となる。  
【００３７】
また、本発明は、外部ネットワークに接続するローカルネットワークにおいて、ローカルネットワーク内の通信機器と外部ネットワークとの間に１つ以上のルータが直列に接続されており、ローカルネットワーク内に接続され、ローカルネットワーク内の中継機能を有する他の通信機器との間に通信路を接続し、中継機能を有する他の通信機器を介して、他の通信機器とメッセージ通信を行う通信機器にも向けられている。そして、上記目的を達成するために、通信機器は、ローカルネットワーク内で、自身が接続されたルータよりも外部ネットワーク側に接続された上位ルータ配下の通信機器が設定可能なアドレス範囲を表すアドレス範囲情報を取得し、記憶する上位セグメント判断部と、中継機能を有する他の通信機器と通信路の接続を行うサーバ通信路保持部とを備える。サーバ通信路保持部は、上位セグメント判断部が記憶したアドレス範囲情報に基づいて、中継機能を有する他の通信機器のアドレス情報を推測し、当該推測したアドレス情報宛に通信路の確立を要求する第１の要求メッセージを送信し、中継機能を有する他の通信機器からの応答メッセージを受信することで通信路を確立する。サーバ通信路保持部は、中継機能を有する他の通信機器から通信路の確立を要求する第２の要求メッセージを受信した場合、当該第２の要求メッセージの送信元アドレスに、応答メッセージを送信することで、中継機能を有する他の通信機器との間に通信路を確立する。
【００３８】
これによっって、通信機器は、１つ以上のルータを直列に接続し構成されたローカルネットワークに接続された中継機能を有する通信機器との間に通信路を確立することができる。
【００３９】
好ましくは、サーバ通信路保持部は、中継機能を有する他の通信機器との間に接続している通信路を通じて、中継機能を有する他の通信機器が未だ通信路を接続していない他の通信機器のアドレス情報を、中継機能を有する他の通信機器に送信する。
【００４０】
これによって、他の通信機器のアドレス情報を中継機能を有する他の通信機器に送信することにより、中継機能を有する他の通信機器が当該アドレス情報を用いて、通信路の確立を要求する第１の要求メッセージを迅速に送信することが可能となる。
【００４１】
好ましくは、サーバ通信路保持部が、中継機能を有する他の通信機器との間の通信に異常を検出した場合、上位セグメント判断部は、アドレス範囲情報を取得し、記憶する処理を再実行する。サーバ通信路保持部は、中継機能を有する他の通信機器との通信路の確立処理を再実行する。
【００４２】
これによって、通信機器は、中継機能を提供していた中継機能を有する通信機器に障害が発生（例えば、電源が切断された、ネットワークケーブルが外れた等）し、中継機能が提供できなくなった場合に、自動的に代わりの中継機能を有する通信機器を探し、通信路を設定することが可能となる。
【００４３】
好ましくは、通信機器は、ユーザが通信機器に信号を入力する入力手段をさらに備える。上位セグメント判断部は、入力手段からの信号に応じて、上位ルータ配下のアドレス範囲情報を取得するか否かを決定する。サーバ通信路保持部は、入力手段からの信号に応じて、上位ルータ配下の他の通信機器に対して、通信路の確立を要求する第１の要求メッセージを送信するか否かを決定する。
【００４４】
これによって、通信機器は、外部からの入力がなければ、上位ルータに接続された中継機能を有する他の通信機器と通信路を接続しないことが可能となり、セキュリティを高めることが可能となる。
【００４５】
通信機器は、ユーザが通信機器に信号を入力する入力手段をさらに備える。サーバ通信路保持部は、入力手段からの信号に応じて、中継機能を有する他の通信機器から通信路の確立を要求する第２の要求メッセージを受信した場合に、応答メッセージを送信するか否かを決定する。
【００４６】
これによって、通信機器は、外部からの入力がなければ、中継機能を有する他の通信機器と通信路を接続しないことが可能となり、セキュリティを高めることが可能となる。
【００４７】
また、本発明は、外部ネットワークに接続するローカルネットワークにおいて、ローカルネットワーク内の通信機器と外部ネットワークとの間に１つ以上のルータが直列に接続されており、ローカルネットワーク内に接続され、ローカルネットワーク内の他の通信機器との間に通信路を接続し、他の通信機器からの通信メッセージを中継する中継機能を有する通信機器が実行する方法にも向けられている。そして、上記目的を達成するために、本発明の方法は、ローカルネットワーク内で、自身が接続されたルータよりも外部ネットワーク側に接続された上位ルータ配下の通信機器が設定可能なアドレス範囲を表すアドレス範囲情報を取得し、記憶する上位セグメント判断ステップと、ローカルネットワーク内の他の通信機器との間に通信路を接続し保持する端末通信路保持ステップと、他の通信機器からの通信メッセージを中継転送するメッセージ中継ステップとを備える。端末通信路保持ステップは、他の通信機器から通信路の確立を要求する第１の要求メッセージを受信した場合、当該受信した第１の要求メッセージの送信元アドレス情報を記憶し、当該記憶した送信元アドレス情報に対して、応答メッセージを送信し、他の通信機器との間で通信路の接続を確立する。端末通信路保持ステップは、他の通信機器から第１の要求メッセージを受信しなかった場合、上位セグメント判断ステップが記憶したアドレス範囲情報を用いて、上位ルータ配下の他の通信機器のアドレス情報を推定し、当該推定したアドレス情報宛に、通信路の確立を要求する第２の要求メッセージを送信し、応答メッセージを受信することによって、上位ルータ配下の他の通信機器との間に通信路を確立すると共に、当該通信路を確立した他の通信機器のアドレス情報を記憶する。メッセージ中継ステップは、他の通信機器からの通信メッセージを受信し、当該受信した通信メッセージに記載された他の通信機器が指定した送信先情報を取り出し、端末通信路保持ステップが記憶するアドレス情報から送信先情報に対応するアドレス情報を取得して、当該取得したアドレス情報宛てに、当該受信した通信メッセージを送信する中継機能を有する。
【００４８】
この方法により、中継機能を有する通信機器とローカルエリア内の他の通信機器との間に通信路を接続することが可能となり、他の通信機器は、中継機能を有する通信機器によりメッセージを中継させることが可能となる。
【００４９】
また、本発明は、外部ネットワークに接続するローカルネットワークにおいて、ローカルネットワーク内の通信機器と外部ネットワークとの間に１つ以上のルータが直列に接続されており、ローカルネットワーク内に接続され、ローカルネットワーク内の中継機能を有する他の通信機器との間に通信路を接続し、中継機能を有する他の通信機器を介して、他の通信機器とメッセージ通信を行う通信機器が実行する方法にも向けられている。そして、上記目的を達成するために、本発明の方法は、ローカルネットワーク内で、自身が接続されたルータよりも外部ネットワーク側に接続された上位ルータ配下の通信機器が設定可能なアドレス範囲を表すアドレス範囲情報を取得し、記憶する上位セグメント判断ステップと、中継機能を有する他の通信機器と通信路の接続を行うサーバ通信路保持ステップとを備える。サーバ通信路保持ステップは、上位セグメント判断ステップが記憶したアドレス範囲情報に基づいて、中継機能を有する他の通信機器のアドレス情報を推測し、当該推測したアドレス情報宛に通信路の確立を要求する第１の要求メッセージを送信し、中継機能を有する他の通信機器からの応答メッセージを受信することで通信路を確立する。サーバ通信路保持ステップは、中継機能を有する他の通信機器から通信路の確立を要求する第２の要求メッセージを受信した場合、当該第２の要求メッセージの送信元アドレスに、応答メッセージを送信することで、中継機能を有する他の通信機器との間に通信路を確立する。
【００５０】
この方法により、通信機器とローカルエリア内の中継機能を有する他の通信機器との間に通信路を接続することが可能となり、他の通信機器は、中継機能を有する通信機器によりメッセージを中継させることが可能となる。
【００５１】
また、本発明は、上述した方法を実装したソフトウェアを記憶した記憶媒体であってもよい。
【００５２】
この場合、本記録媒体に記録されたソフトウエアをＰＣ等のソフトウエア実行機能を持つ機器にインストールすることで、中継機能を有する通信機器とローカルエリア内の他の通信機器との間に通信路を接続することが可能となり、他の通信機器は、中継機能を有する通信機器によりメッセージを中継させることが可能となる。
【発明の効果】
【００５３】
本発明によれば、１つ以上のルータを直列に接続し構成されるローカルネットワークに接続され、ローカルネットワークに接続された他の通信機器のメッセージを中継することで、他の通信機器間の通信を可能とする中継機能を有する通信機器と、中継機能を有する通信機器を介して通信を行うことを可能とする通信機器とが実現される。
【発明を実施するための最良の形態】
【００５４】
本発明の実施形態について図に基づいて説明する。
【００５５】
図１は、本発明の一実施形態における宅内ネットワーク（ローカルネットワーク）２の構成の一例を示す図である。図１において、宅内ネットワーク２は、３台のルータ３ａ，３ｂ，３ｃで構成されており、ルータ３ａがインターネット１に接続されている最上位ルータである。また、各ルータ３ａ，３ｂ，３ｃには、中継機能を有した中継機能付き通信機器４ａ〜４ｃと、中継機能を持たない通信機器５ａ〜５ｃとが接続されている。通信機器４ａ〜４ｃ、５ａ〜５ｃは、ネットワーク通信機能を持ち、ユーザや他の機器に自身が持つサービスを提供する。通信機器４ａ〜４ｃ、５ａ〜５ｃが提供するサービスの一例としては、通信機器４ａ〜４ｃ、５ａ〜５ｃはネットワーク対応のＡＶレコーダであり、他の機器からの要求によりコンテンツ一覧の情報を応答送信したり、他の機器から要求されたコンテンツの内容を送信したりする。なお、ここで述べたＡＶレコーダは、通信機器４ａ〜４ｃ、５ａ〜５ｃの一例であり、通信機器４ａ〜４ｃ、５ａ〜５ｃはネットワーク上の他の機器と通信する機器であればよい。また、３台のルータで構成された宅内ネットワーク２の構成は一例であり、３台より少ないルータで構成された宅内ネットワーク、又は３台以上のルータで構成された宅内ネットワークであってもよい。また、宅内ネットワーク２は有線あるいは無線によって接続される。
【００５６】
ここで、中継機能付き通信機器４ａ〜４ｃが持つ中継機能は、他の通信機器との間に通信路を確保して、メッセージを中継することで通信機器間でのメッセージ通信を可能とする機能である。本実施の形態では、後述の「中継機能起動までの手順」により、宅内ネットワーク２内の中継機能付き通信機器４ａ〜４ｃのうち、１台だけの中継機能を起動し、他の中継機能付き通信機器の中継機能はＯＦＦ状態になるように制御される。
【００５７】
図２は、本発明の一実施形態における通信機器４ａ〜４ｃ、５ａ〜５ｃの基本的なハード構成の一例を示している。図２において、通信機器４ａ〜４ｃ、５ａ〜５ｃは、メインＣＰＵ、ＲＯＭ、ＲＡＭ、ユーザＩ／Ｏ、及びネットワークＩ／Ｆで構成される。メインＣＰＵは、他の機器とデータの送受信を行うための通信サービスと、ユーザや他の機器に機器固有のサービスを提供するアプリケーションサービスとに関する処理を行う。また、メインＣＰＵは、データやプログラムをＲＯＭ、又はＲＡＭから読み出し、ＲＡＭへの書き込みを実行する。また、メインＣＰＵは、ユーザＩ／Ｏを通じて、ユーザからの入力受付やサービスに関する情報の表示等を実行したり、ネットワークＩ／Ｆを通じて、他の通信機器やルータとの間でデータの送受信を実行したりする。
【００５８】
ここで述べたアプリケーションサービスとは、前述のＡＶレコーダの例で言うと、コンテンツ一覧情報の提供やコンテンツデータの送信等のサービスに該当する。また、通信サービスとは、通信相手の機器との間で情報のやりとりを行うための通信制御等に該当する。
【００５９】
（中継機能付き通信機器の機能構成）
次に、図３を用いて、中継機能付き通信機器４ａ〜４ｃが提供する通信サービスとアプリケーションサービスとを実行するための機能構成について説明する。図３は、本発明の一実施形態における中継機能付き通信機器４ａ〜４ｃの機能構成の一例を示すブロック図である。
【００６０】
図３において、中継機能付き通信機器４ａ〜４ｃは、通信Ｉ／Ｆ部４１、中継通信部４２、及び端末アプリ部４３を備える。通信Ｉ／Ｆ部４１は、ネットワークＩ／Ｆを制御し、ネットワークとの間で情報を送受信する。また、通信Ｉ／Ｆ部４１は、自身のアドレス情報をアドレス情報部４１１で管理し、中継通信部４２が中継機能をＯＮにする場合、中継通信部４２の指示により、アドレス情報の再設定を実行する。このアドレス情報の再設定により、下位のルータ配下の通信機器から、中継機能をＯＮにした通信機器を発見しやすくなる。
【００６１】
ここで、アドレス情報部４１１が管理するアドレス情報の一例としては、自身のＩＰアドレス、ネットマスク、デフォルトゲートウエイアドレス等である。
【００６２】
なお、この「アドレス再設定処理」の詳細については、後述する。
【００６３】
中継通信部４２は、他の通信機器との間で通信路を保持しメッセージの中継を実行することで通信機器間の通信を可能とするメッセージ中継機能と、中継機能がＯＮになっている他の中継機能付き通信機器との間で通信路を接続保持し、他の中継機能付き通信機器を介して、他の機器とのメッセージ通信を可能とするメッセージ送受信機能とを提供する。中継通信部４２は、メッセージ中継機能とメッセージ送受信機能とが同時に有効になるわけではなく、メッセージ中継機能が有効な場合（すなわち、自身がメッセージ中継機能を提供している場合）、メッセージ送受信機能は無効となるように制御される。逆に、メッセージ送受信機能が有効な場合、メッセージ中継機能は無効となるように制御される。この中継通信部４２の提供する機能の選択については、後述の「中継機能起動までの手順」で説明する。この中継通信部４２により、中継機能を通じた通信機器間のメッセージ通信を可能とする通信サービスが提供される。なお、メッセージ中継機能がＯＮになった通信機器が他の通信機器にメッセージを送信する場合、自身のメッセージ中継機能を通じてメッセージの送信を実行する。
【００６４】
端末アプリ部４３は、ユーザＩ／Ｏや中継通信部４２を通じて、ユーザや他の機器にその機器固有のサービスを提供するアプリケーションサービスに関する処理を行う。
【００６５】
また、中継通信部４２は、上位セグメント判断部４２１、上位セグメント情報部４２２、中継機能探索・応答部４２３、メッセージ中継部４２４、端末通信路保持部４２５、通信路情報部４２６、サーバ通信路保持部４２７、及び中継機能情報部４２８で構成される。以下、中継通信部４２を構成する各機能部について説明する。
【００６６】
上位セグメント判断部４２１は、後述する上位セグメント解析処理を実施し、自身が接続されているルータより上位（インターネット側）に接続されたルータ配下のネットワーク情報を取得する。例えば、図１のルータ３ｂに接続された中継機能付き通信機器４ｂの上位セグメント判断部４２１は、ルータ３ａ配下のネットワーク情報を取得する。上位セグメント解析処理を簡単に記述すると、ｔｒａｃｅ  ｒｏｕｔｅやＵＰｎＰ  ＩＧＤ仕様を用いて、上位ルータ又は自身が接続されているルータのＬＡＮ側アドレス又はＷＡＮ側アドレスを取得し、当該取得したアドレスを用いて上位ルータのアドレス範囲（すなわち、上位ルータに接続される通信機器に設定可能なアドレスの範囲）をネットワークアドレスの形で推測する処理である。
【００６７】
上位セグメント情報部４２２は、上位セグメント判断部４２１が取得又は推測した上位セグメント情報を記憶する機能部である。上位セグメント情報の一例としては、上位ネットワークのネットワークアドレス情報が挙げられる。つまり、ルータ３ａ配下のネットワークアドレスが、１９２．１６８．１．０／２４である場合、ルータ３ｂに接続された中継機能付き通信機器４ｂの上位セグメント情報部４２２には、１９２．１６８．１．０／２４が記憶される。ここで、１９２．１６８．１．０はネットワークアドレスを示しており、／２４はネットマスクのビット数を示している。
【００６８】
同様に、ルータ３ｂ配下のネットワークアドレスが１９２．１６８．２．０／２４である場合、ルータ３ｃに接続された中継機能付き通信機器４ｃの上位セグメント情報部４２２には、１９２．１６８．１、０／２４と１９２．１６８．２．０／２４との２つのネットワークアドレスが記憶される。なお、ネットワークアドレスが分かれば、ホストアドレスの取りうる値が容易に類推できるため、そのネットワークに接続される通信機器に設定される可能性があるアドレスが容易に推定できる。
【００６９】
中継機能探索・応答部４２３は、上位セグメント情報部４２２が記憶する上位セグメント情報を利用し、上位のルータに”中継機能が有効になった通信機器”が接続されているか否かを検索する処理と、自身の中継機能が有効になっている場合、他の通信機器からの中継機能探索要求メッセージに対して応答メッセージを返信する機能とを提供する。このとき、中継機能探索・応答部４２３は、他の通信機器で有効になっている中継機能を発見した場合、発見した中継機能が有効になっている通信機器のアドレス情報をサーバ通信路保持部４２７に通知し、メッセージ中継部４２４と端末通信路保持部４２５との機能を無効にする。
【００７０】
中継機能探索・応答部４２３は、宅内ネットワーク２内に中継機能が有効になっている通信機器を発見出来なかった場合、サーバ通信路保持部４２７が他の中継機能付き通信機器から通信路接続通知メッセージを受信しないことを確認するために、予め定められた期間待つ。サーバ通信路保持部４２７は、通信路接続要求メッセージを受信した場合、他の中継機能が有効になっている通信機器との間の中継用通信路を接続する。また、中継機能探索・応答部４２３は、メッセージ中継部４２４と端末通信路保持部４２５との機能を無効にする。
【００７１】
中継機能探索・応答部４２３は、サーバ通信路保持部４２７が他の中継機能付き通信機器から通信路接続要求メッセージを定められた期間受信しなかった場合、メッセージ中継部４２４と端末通信路保持部４２５との機能を有効にする。なお、この中継機能の有効／無効を決定する処理シーケンスについては、後述の「中継機能起動までの手順」で再度詳細を説明する。
【００７２】
メッセージ中継部４２４は、中継機能が有効になっている場合、ある通信機器からのメッセージを他の通信機器へと中継転送する。メッセージ中継部４２４は、受信メッセージ中の送信先情報と、通信路情報部４２６が管理する通信路情報とを参照することで、送信先のアドレスを決定し、受信メッセージを送信先通信機器へ中継転送する。
【００７３】
端末通信路保持部４２５は、中継機能が有効になっている場合、他の通信機器からの通信路接続要求メッセージを受信した場合に、メッセージの送信元アドレス情報（ＩＰアドレス、ポート番号）と、メッセージ内に含まれる送信元通信機器のＩＤを通信路情報として通信路情報部４２６に記憶する。また、端末通信路保持部４２５は、通信路保持のために定期的に通信機器と通信を行う。また、端末通信路保持部４２５は、上位セグメント情報部４２２を参照し、定期的に上位のルータ配下に接続された通信機器のアドレスを推定し、推定したアドレスに通信路接続通知メッセージを送信する。
【００７４】
通信路情報部４２６は、端末通信路保持部４２５が保持する通信機器との通信路情報を記憶する。通信路情報部４２６が記憶する通信路情報の一例としては、通信機器のＩＤ、アドレス情報（ＩＰアドレス、ポート番号）である。
【００７５】
サーバ通信路保持部４２７は、中継機能探索・応答部４２３の指示で動作し、自身の中継機能（すなわち、メッセージ中継部４２４、端末通信路保持部４２５）が無効になっている時に、中継機能が有効になっている他の通信機器とメッセージ中継用の通信路を確立し、保持する機能を提供する。サーバ通信路保持部４２７は、中継機能探索・応答部４２３から指定された“中継機能が有効になっている通信機器”に通信路接続要求メッセージを送信する。または、サーバ通信路保持部４２７は、上位セグメント情報部４２２を参照し、上位のルータ配下に接続された中継機能が有効になっている通信機器のアドレスを推定し、当該推定したアドレスに通信路接続要求メッセージを送信する。また、サーバ通信路保持部４２７は、下位ルータに接続された“中継機能が有効になっている通信機器”から通信路接続通知メッセージを受信した場合、通信路接続要求メッセージを送信元の通信機器に対して送信する。
【００７６】
（中継機能を持たない通信機器の機能構成）
図４を用いて、中継機能を持たない通信機器５ａ〜５ｃの機能構成を説明する。図４は、本発明の一実施形態における中継機能を持たない通信機器５ａ〜５ｃの機能構成の一例を示すブロック図である。図４に示すように、中継機能を持たない通信機器５ａ〜５ｃの機能構成は、中継機能付き通信機器４ａ〜４ｃから中継機能に関する機能部を取り除いた構成となる。以下、その機能構成について説明する。
【００７７】
図４において、中継機能を持たない通信機器５ａ〜５ｃは、通信Ｉ／Ｆ部５１、中継通信部５２、及び端末アプリ部５３を備える。通信Ｉ／Ｆ部５１は、ネットワークＩ／Ｆを制御し、ネットワークとの間で情報を送受信する。前述の中継機能付き通信機器４ａ〜４ｃの通信Ｉ／Ｆ部４１との相違点は、中継通信部５２の指示によるアドレスの再設定を行わない点である。
【００７８】
中継通信部５２は、中継機能がＯＮになっている他の中継機能付き通信機器と通信路を接続保持し、他の中継機能付き通信機器を介して他の機器とのメッセージ通信を可能とするメッセージ送受信機能を提供する。前述の中継機能付き通信機器４ａ〜４ｃの中継通信部４２との相違点は、メッセージ中継機能を持たない点である。
【００７９】
端末アプリ部５３は、ユーザＩ／Ｏや中継通信部５２を通じて、ユーザや他の機器にその機器固有のサービスを提供するアプリケーションサービスに関する処理を行う。
【００８０】
また、中継通信部５２は、上位セグメント判断部５２１、上位セグメント情報部５２２、サーバ通信路保持部５２７、及び中継機能情報部５２８で構成される。以下、中継通信部５２を構成する各機能部について説明する。
【００８１】
上位セグメント判断部５２１は、前述の上位セグメント判断部４２１と同様に後述する上位セグメント解析処理を実施し、自身が接続されているルータより上位（インターネット側）に接続されたルータ配下のネットワークアドレス情報を取得又は推測し、当該取得したネットワークアドレス情報を上位セグメント情報部５２２に記憶する。
【００８２】
サーバ通信路保持部５２７は、中継機能が有効になっている他の通信機器とメッセージ中継用の通信路を確立し、保持する機能を提供する。サーバ通信路保持部５２７は、上位セグメント情報部５２２を参照し、上位側ルータに接続された“中継機能が有効になっている通信機器”のアドレスを推測し、当該推測したアドレスに通信路接続要求メッセージを送信する。
【００８３】
また、サーバ通信路保持部５２７は、下位ルータに接続された中継機能が有効になっている通信機器から通信路接続通知メッセージを受信した場合、通信路接続要求メッセージを送信元の通信機器に対して送信する。また、サーバ通信路保持部５２７は、中継機能が有効になっている通信機器と通信路が確立した場合、中継機能が有効になっている通信機器のアドレス情報を中継機能情報部５２８に記憶し、定期的に中継機能が有効になっている通信機器と通信することで通信路を保持する。
【００８４】
（中継機能起動までの手順）
次に、中継機能付き通信機器４ａ〜４ｃにおいて、中継通信部４２が中継機能を起動する手順について、図５、又は図８を用いて説明する。
【００８５】
図５は、本発明の一実施形態における中継通信部４２が中継機能を起動するまでの動作シーケンスの一例を示す図である。
【００８６】
まず、中継機能が有効になった通信機器がネットワーク上に存在しておらず、中継通信部４２が自身の中継機能を有効にする場合について説明する。
【００８７】
（中継機能起動までの手順：中継機能を有効にする場合）
図５を参照して、上位セグメント判断部４２１は、後述する上位セグメント解析処理を実施して、自身が接続されているルータより上位（インターネット側）に接続されたルータ配下のネットワークアドレス情報を取得し、当該取得したネットワークアドレス情報を上位セグメント情報として、上位セグメント情報部４２２に記憶する（ステップＳ１０）。
【００８８】
そして、中継機能探索・応答部４２３は、上位セグメント情報部４２２に記憶された上位セグメント情報を利用し、上位の各ルータに接続された”中継機能が有効になった通信機器”のアドレスを推定し、当該推定したアドレスに中継機能探索要求メッセージをユニキャストで送信する。例えば、図１のルータ３ｃに接続された中継機能付き通信機器４ｃは、ルータ３ａ及びルータ３ｃのネットワークアドレス情報を元にして、ルータ３ａ及びルータ３ｃに接続された”中継機能が有効になった通信機器”のアドレスを推定し、当該推定したアドレスに中継機能探索要求メッセージを送信する。ただし、中継機能探索・応答部４２３は、この”中継機能が有効になった通信機器”のアドレスを推定する処理において、”中継機能が有効になった通信機器”が特定のアドレス範囲を取るように設定されている場合、特定のアドレス範囲にのみ中継機能探索要求メッセージを送信してもよい。この処理によって、中継機能探索・応答部４２３は、ルータ３ａ及びルータ３ｃの有効なホストアドレス全体（例えば、クラスＣのプライベートアドレス場合、１９２．１６８．ｘ．１〜１９２．１６８．ｘ．２５４）に中継機能探索要求メッセージを送信する必要がなくなり、特定のアドレス範囲にだけ、中継機能探索要求メッセージを送信すればよくなる。結果として、処理の高速化、通信トラヒックの削減が可能となる。
【００８９】
図６に中継機能探索要求メッセージの一例を示す。図６に示す中継機能探索要求メッセージにおいて、メッセージＩＤには、中継機能探索要求メッセージであることを示すＩＤがセットされる。また、送信元ＩＤとして、通信機器固有のＩＤが設定される。
【００９０】
上位ルータに接続された中継機能付き通信機器４ａ〜４ｃは、中継機能探索要求メッセージを受信すると、中継機能探索・応答部４２３が自身の中継機能が有効である場合にのみ、中継機能探索応答メッセージを中継機能探索要求メッセージの送信元アドレス（ＩＰアドレス、ポート番号）宛てに送信する。中継機能探索応答メッセージのフォーマットの一例は、図６に示す中継機能探索要求メッセージと同一である。ただし、メッセージＩＤには、中継機能探索応答メッセージであることを示すＩＤ値がセットされる。
【００９１】
ここで、ＬＡＮ側ネットワークに接続された通信機器からＷＡＮ側ネットワークに接続された通信機器に向けて通信を開始する場合、通信メッセージを中継するルータは、自動的にアドレス変換設定（ＮＡＰＴ設定）を実行し、当該通信メッセージをＷＡＮ側のネットワークに接続された通信機器に送信する。そのため、ＷＡＮ側ネットワークに接続された通信機器は、受信したメッセージの送信元アドレス（ＩＰアドレス、ポート番号）宛に応答メッセージを送信することで、ＬＡＮ側ネットワークに接続された通信機器と通信が可能となる。このため、中継機能探索・応答部４２３は、中継機能探索処理を実施し、上記のように中継機能探索要求メッセージを上位のルータに接続された中継機器に向けて送信することにより、上位側のルータに接続された”中継機能が有効になった通信機器”からの応答を受信することが可能となる。結果として、ＬＡＮ側ネットワークに接続された通信機器は、“中継機能が有効になった通信機器”を発見することが可能となる（ステップＳ１１）。
【００９２】
次に、中継機能探索・応答部４２３は、中継機能探索応答メッセージを受信したか否かを（すなわち、中継機能を発見できた否かを）判断する（ステップＳ１２）。
【００９３】
中継機能探索応答メッセージを受信できなかった場合、中継機能探索・応答部４２３は、サーバ通信路保持部４２７に、下位のルータに接続された”中継機能が有効になった通信機器”からの通信路接続通知メッセージの受信を所定時間待つように指示する。ここで、通信路接続通知メッセージのフォーマットの一例は、図６に示す中継機能探索要求メッセージと同一であり、メッセージＩＤには、通信路接続通知メッセージであることを示すＩＤ値がセットされる（ステップＳ１３）。
【００９４】
前述のように、一般にルータは、ＬＡＮ側ネットワークに接続された通信機器からＷＡＮ側ネットワークに接続された通信機器にメッセージ送信を開始すれば、通信機器間で送受信されるメッセージを中継することが可能となる。そのため、サーバ通信路保持部４２７は、通信路接続通知メッセージの受信を所定時間待つことにより、下位のルータに接続された”中継機能が有効になった通信機器”を発見することが可能になる。また、サーバ通信路保持部４２７は、受信した通信路接続通知メッセージの送信元アドレス（ＩＰアドレス、ポート番号）宛にメッセージを送信することで、下位のルータに接続された”中継機能が有効になった通信機器”と通信することが可能となる。
【００９５】
続いて、中継機能探索・応答部４２３は、サーバ通信路保持部４２７が通信路接続通知メッセージを受信したか否かを確認する（ステップＳ１４）。
【００９６】
サーバ通信路保持部４２７が通信路接続通知メッセージを受信していない場合、中継機能探索・応答部４２３は、メッセージ中継部４２４、端末通信路保持部４２５、サーバ通信路保持部４２７に中継機能を有効にする旨を通知し、中継機能開始処理を実行する（ステップＳ１５）。
【００９７】
次に、同じく図５を用いて、中継機能を無効にするまでのシーケンスについて説明する。なお、中継機能が有効になった後の動作（中継動作）については、中継機能を無効にするまでのシーケンスの説明後に記載する。
【００９８】
（中継機能起動までの手順：中継機能を無効にする場合）
図５を参照して、中継機能を有効にする場合と同様に、上位セグメント判断部４２１は、後述する上位セグメント解析処理を実施して、自身が接続されているルータより上位（インターネット側）に接続されたルータ配下のネットワークアドレス情報を取得し、当該取得したネットワークアドレス情報を上位セグメント情報として、上位セグメント情報部４２２に記憶する（ステップＳ１０）。
【００９９】
次に、中継機能探索・応答部４２３は、中継機能探索処理を実施する。具体的には、中継機能探索・応答部４２３は、上位セグメント情報部４２２に記憶された上位セグメント情報を利用し、上位の各ルータに接続された”中継機能が有効になった通信機器”のアドレスを推定し、当該推定したアドレス宛に中継機能探索要求メッセージをユニキャストで送信する（ステップＳ１１）。
【０１００】
上位側のルータに接続された”中継機能が有効になった通信機器”が存在している場合、”中継機能が有効になった通信機器”は、中継機能探索要求メッセージの送信元アドレス（ＩＰアドレス、ポート番号）宛に、中継機能探索応答メッセージを返信する。
【０１０１】
この中継機能探索応答メッセージは、ＬＡＮ側ネットワークに接続された通信機器からＷＡＮ側ネットワークに接続された通信機器に向けて通信が開始された中継機能探索要求メッセージの送信元アドレス宛に送信されるため、前述のようにルータを越えて宛先に送信される。
【０１０２】
次に、中継機能探索・応答部４２３は、中継機能探索応答メッセージを受信したか否かを（すなわち、中継機能を発見できたか否かを）判断する（ステップＳ１２）。
【０１０３】
中継機能探索応答メッセージを受信した場合、中継機能探索・応答部４２３は、メッセージ中継部４２４、端末通信路保持部４２５、及びサーバ通信路保持部４２７に中継機能を無効にする旨を通知する。また、中継機能探索・応答部４２３は、サーバ通信路保持部４２７に”中継機能が有効になった通信機器”のアドレス情報を通知する。
【０１０４】
サーバ通信路保持部４２７は、中継機能情報部４２８に”中継機能が有効になった通信機器”のアドレス情報を記憶する。そして、サーバ通信路保持部４２７は、通信路接続要求メッセージを”中継機能が有効になった通信機器”に送信し、”中継機能が有効になった通信機器”から通信路接続応答メッセージを受信することで、メッセージ中継用の通信路を確立する。また、確立したメッセージ中継用の通信路を保持するために、サーバ通信路保持部４２７は、定期的にメッセージの送受信を行う。これは、例えば、サーバ通信路保持部４２７が、”中継機能が有効になった通信機器”とＵＤＰで通信を行う場合、ＬＡＮ側ネットワークからＷＡＮ側ネットワークに通信を開始した場合に自動的にルータに設定されたアドレス変換設定（ＮＡＰＴ設定）が、一定時間通信が行われないことによって自動的に削除されることを防ぐためである。同様に、ＴＣＰで”中継機能が有効になった通信機器”と通信する場合においても、ＴＣＰセッションが切断しルータに設定されたアドレス変換設定（ＮＡＰＴ設定）が自動的に削除されることを防ぐために、定期的にセッションを保持する目的でパケットの送受信を実行する（ステップＳ１６）。
【０１０５】
通信路接続要求メッセージのフォーマットの一例は、図６に示す中継機能探索要求メッセージと同一であり、メッセージＩＤには通信路接続要求メッセージであることを示すＩＤ値がセットされる。通信路接続要求メッセージを受信した”中継機能が有効になった通信機器”は、応答メッセージを送信すると伴に、通信路接続要求メッセージから、送信元ＩＤと送信元アドレス情報（ＩＰアドレス、ポート番号）を取り出し、通信路情報部４２６に記憶する。
【０１０６】
“中継機能が有効になった通信機器”と通信路を確立した後、中継通信部４２は、以下の処理を実行する。
【０１０７】
中継通信部４２は、下位側のルータに接続された”中継機能が有効になった通信機器”と通信路を確立した場合（すなわち、ステップＳ１４の通信路接続通知メッセージを受信し、”中継機能が有効になった通信機器”との間で通信路を確立した場合）、自身が接続しているネットワークに新規通信機器が接続されたことを検出すると、機器接続通知メッセージを”中継機能が有効になった通信機器”に送信する。機器接続通知メッセージには、新規通信機器のアドレス情報が設定され、確立した通信路を通じて送信される。図７は、機器接続通知メッセージの一例であり、メッセージＩＤには、機器接続通知メッセージであることを示すＩＤがセットされ、接続機器アドレス情報には、新規通信機器のアドレス情報が設定される（ステップＳ１７）。
【０１０８】
そして、サーバ通信路保持部４２７は、定期的に送受信するメッセージやパケットにより、”中継機能が有効になった通信機器”との間の通信が成功しているか否かを監視する。例えば、”中継機能が有効になった通信機器”の電源がＯＦＦされた等の事態が発生すると、”中継機能が有効になった通信機器”からのメッセージやパケットがとぎれるため、サーバ通信路保持部４２７は、通信路が切断されたこと検出する。通信路が切断されたことを検出した場合、中継通信部４２は、再度、上位セグメント解析処理から順次処理を実行する（ステップＳ１８）。
【０１０９】
次に、ステップＳ１２の中継機能探索応答メッセージを受信できたか否かを（すなわち、中継機能を発見できたか否かを）判断する処理において、中継機能探索応答メッセージを受信できなかった場合について説明する。
【０１１０】
この場合、「中継機能起動までの手順：中継機能を有効にする場合」で記述したように、サーバ通信路保持部４２７は、通信路接続通知メッセージの受信を所定時間待つ処理を実行する（ステップＳ１３）。
【０１１１】
そして、その後、サーバ通信路保持部４２７は、通信路接続通知メッセージを受信したか否かを判断する（ステップＳ１４）。
【０１１２】
“中継機能が有効になった通信機器”からの通信路接続通知メッセージを受信した場合、中継機能探索・応答部４２３は、メッセージ中継部４２４、端末通信路保持部４２５、及びサーバ通信路保持部４２７に中継機能を無効にする旨を通知する。そして、サーバ通信路保持部４２７は、通信路接続通知メッセージの送信元アドレス（ＩＰアドレス、ポート番号）宛に通信路接続要求メッセージを送信し、”中継機能が有効になった通信機器”から通信路接続応答メッセージを受信することで、メッセージ中継用の通信路を確立する。また、確立したメッセージ中継用の通信路を保持するために、サーバ通信路保持部４２７は、定期的にメッセージの送受信を行う（ステップＳ１９）。
【０１１３】
そして、前述の通り、サーバ通信路保持部４２７は、必要に応じて機器接続通知メッセージの送信を行う（ステップＳ１７）。
【０１１４】
また、サーバ通信路保持部４２７は、”中継機能が有効になった通信機器”との間の通信路が保持されているか否かを監視する。通信路が切断されたことを検出した場合、中継通信部４２は、再度、上位セグメント解析処理から順次処理を再実行する（ステップＳ１８）。
【０１１５】
以上が、中継機能を有効／無効にするまでの手順である。次に、図８を用いて、中継機能が有効になった場合の動作について説明する。図８は、中継機能が有効になった場合の中継通信部４２の動作シーケンスの一例を示す図である。
【０１１６】
（中継機能有効時の動作）
図８を参照して、中継通信部４２の中継機能が有効になった場合、中継機能探索・応答部４２３は、通信Ｉ／Ｆ部４１にＩＰアドレスの変更（すなわち、アドレス再設定処理）を指示する。この指示を受けた通信Ｉ／Ｆ部４１は、通信機器自身のＩＰアドレスの付け替えを行う（ステップＳ２０）。
【０１１７】
（アドレス再設定処理）
アドレス再設定処理の手順の一例としては以下のように実行される。
【０１１８】
通信Ｉ／Ｆ部４１は、通信機器に現在設定されているネットワークアドレス情報をアドレス情報部４１１から取り出す。なお、アドレス情報部４１１には、起動時に実行されるＤＨＣＰ等により、ネットワークアドレス情報が設定されているものとする。
【０１１９】
次に、通信Ｉ／Ｆ部４１は、ホストアドレスの有効範囲を把握し、予め定められている中継機能有効時のアドレス候補の内、ホストアドレスの有効範囲内にあるアドレスを選択する。
【０１２０】
通信Ｉ／Ｆ部４１は、ＡＲＰやｐｉｎｇ等により、選択した中継機能有効時のアドレス候補がネットワーク内で他の通信機器に使用されていないことを確認する。
【０１２１】
通信Ｉ／Ｆ部４１は、選択したアドレス候補が他の通信機器で使用されていることが検出された場合、他のアドレス候補を選択し、再度、他の通信機器で使用されていないかを確認する。
【０１２２】
通信Ｉ／Ｆ部４１は、上述した手順を他の通信機器で使用されていないアドレスを見つけるまで実行する。
【０１２３】
通信Ｉ／Ｆ部４１は、通信機器のＩＰアドレスを、使用されていないことを確認したＩＰアドレスに変更し、アドレス情報部４１１に変更したＩＰアドレスを記憶する。
【０１２４】
このように、通信機器４ａ〜４ｃは、中継機能が有効になった場合に、予め定められているアドレス候補内のＩＰアドレスに切り替えることによって、下位側のルータに接続された通信機器が、中継機能が有効になっている通信機器のアドレスを推定して、メッセージをユニキャストで送信する際、候補となるＩＰアドレスを絞り込むことが可能となり、処理の高速化、通信トラヒックの削減が可能となる。
【０１２５】
アドレスの付け替えが完了すると、中継機能のメッセージ処理と、定期的な上位セグメント解析処理とが開始される。まず、中継機能のメッセージ処理について記述する。
【０１２６】
中継機能探索要求メッセージを受信した場合、中継機能探索・応答部４２３は、中継機能探索応答メッセージを中継機能探索要求メッセージの送信元アドレス（ＩＰアドレス、ポート番号）宛に送信する（ステップＳ２１、Ｓ２２）。
【０１２７】
通信路接続要求メッセージを受信した場合、端末通信路保持部４２５は、通信路接続応答メッセージを通信路接続要求メッセージの送信元アドレス（ＩＰアドレス、ポート番号）宛に送信すると伴に、通信路接続要求メッセージから、送信元ＩＤと送信元アドレス情報（ＩＰアドレス、ポート番号）とを取り出し、通信路情報部４２６に記憶する。なお、端末通信路保持部４２５は、通信路接続要求メッセージから取り出した送信元アドレス情報に対応した機器識別ＩＤを割り当て、送信元ＩＤとして通信路情報部４２６に記憶してもよい。そして、サーバ通信路保持部４２７は、定期的にメッセージやパケットを送受信することにより、確立した通信路を保持する（ステップＳ２３、Ｓ２４）。
【０１２８】
機器接続通知メッセージを受信した場合、端末通信路保持部４２５は、受信した機器接続通知メッセージから接続機器アドレス情報を取り出し、当該取り出した接続機器アドレス情報宛てに、通信路接続通知メッセージを送信する。なお、端末通信路保持部４２５は、通信路接続通知メッセージ送信時に、接続機器アドレス情報宛てに既にメッセージを送信済みか否かをチェックし、既に送信済みの場合、メッセージを送信しないようにしても良い。
【０１２９】
ここで、先に記述したとおり、機器接続通知メッセージは、”中継機能が有効になった通信機器”が接続しているネットワークより、上位側のネットワークに新規通信機器が接続された場合に、新規通信機器の接続を”中継機能が有効になった通信機器”に通知するためのメッセージであり、新規通信機器が接続されたネットワークで既に”中継機能が有効になった通信機器”との間に通信路が確立している通信機器により送信される。
【０１３０】
機器接続通知メッセージを受信した場合、端末通信路保持部４２５は、通信路接続通知メッセージを送信することにより、上位側のネットワークに新規通信機器が接続された場合に、新規通信機器と”中継機能が有効になった通信機器”との間で素早く通信路の接続を行うことが可能となる効果が得られる（ステップＳ３０、Ｓ３１）。
【０１３１】
なお、”中継機能が有効になった通信機器”が接続しているネットワークより、下位側のネットワークに新規通信機器が接続された場合には、上位側のネットワークに接続された場合とは異なり、新規通信機器から”中継機能が有効になった通信機器”へ通信を開始することが可能であり、”中継機能が有効になった通信機器”のアドレスを推定することができるため、新規通信機器が接続後、速やかに”中継機能が有効になった通信機器”へ通信路接続要求メッセージを送信することにより素早く通信路の接続を行うことが可能である。図９に中継通信メッセージの一例を示す。
【０１３２】
中継通信メッセージを受信した場合、メッセージ中継部４２４は、中継通信メッセージから送信先ＩＤを取り出し、通信路情報部４２６を参照し、取り出した送信先ＩＤに対応する送信先通信機器へデータを送信するための通信路のアドレス情報（ＩＰアドレス、ポート番号）を取得する。そして、メッセージ中継部４２４は、通信路情報部４２６から取得したアドレス情報（ＩＰアドレス、ポート番号）宛てに受信した中継通信メッセージの送信先を書き換えて送信する（ステップＳ３２、Ｓ３３）。
【０１３３】
以上が中継機能のメッセージ処理の動作である。次に、定期的な上位セグメント解析処理とそれに伴う一連の処理について説明する。
【０１３４】
端末通信路保持部４２５は、後述の上位セグメント解析処理を実行後、所定時間経過した時、上位セグメント判断部４２１に上位セグメント解析処理を再実行するように指示する（ステップＳ２５、Ｓ２６）。上位セグメント解析処理の再実行が完了すると、端末通信路保持部４２５は、上位セグメント情報部４２２を参照し、上位側の各ルータ配下のネットワークで通信機器に設定される可能性がある各アドレス宛に、ユニキャストで通信路接続通知メッセージを送信する。
【０１３５】
この通信路接続通知メッセージを受信した通信機器は、通信路接続通知メッセージの送信元アドレスに対して、通信路接続要求メッセージを送信する（ステップＳ２７）。
【０１３６】
通信路接続要求メッセージを受信した端末通信路保持部４２５は、応答メッセージを送信すると伴に、受信した通信路接続要求メッセージから送信元ＩＤとメッセージの送信元アドレス情報とを取りだし、通信路情報部４２６の情報を参照し、必要に応じて、新規記録、又は記録された情報の更新を実行する。そして、定期的にメッセージやパケットの送信を行うことで通信路の保持を実行する（ステップＳ２８、Ｓ２９）。
【０１３７】
以上が、中継機能が有効になった場合の中継通信部４２の動作である。
【０１３８】
なお、中継機能起動までの動作では、中継機能探索処理（ステップＳ１１）において、中継通信部４２は、”中継機能が有効になった通信機器”のアドレスを推定し、当該推定したアドレス宛に中継機能探索要求メッセージを送信し、応答メッセージを受信した後、通信路接続要求メッセージを送信するとしたが、中継機能探索要求メッセージを送信せずに、”中継機能が有効になった通信機器”のアドレス宛に、通信路接続要求メッセージを通信するようにしても良い。この場合、中継通信部４２は、応答メッセージを受信することで、”中継機能が有効になった通信機器”が存在することを検出すると同時に、中継通信用の通信路を確立する。結果として、中継機能探索要求メッセージを送信、応答受信するステップが必要無くなるため、処理が高速化されるという効果が得られる。
【０１３９】
また、本中継機能起動までの動作では、中継通信部４２は、”中継機能が有効になった通信機器”を発見した場合、自身の中継機能をＯＮにしないシーケンスを記載したが、他の”中継機能が有効になった通信機器”が存在しても、自身の中継機能をＯＮするようにしても良い。この場合、各通信機器は、複数の“中継機能が有効になった通信機器”との間にメッセージ中継の通信路を確立するようにする。このようにすることで、１台の”中継機能が有効になった通信機器”が突然の電源断等で使用できなくなった場合でも、他の”中継機能が有効になった通信機器”を使用してメッセージを中継することで、途切れることなく通信が可能となる。
【０１４０】
（中継機能を持たない通信機器の動作シーケンス）
次に、中継機能を持たない通信機器５ａ〜５ｃの動作シーケンスについて、図１０を用いて説明する。
【０１４１】
中継機能を持たない通信機器５ａ〜５ｃの動作シーケンスは、中継機能付き通信機器が”中継機能が有効になった通信機器”を発見した場合の動作に似ている。両者の相違点は、中継機能を持たない通信機器の場合、一旦、”中継機能が有効になった通信機器”を探索することなく、”中継機能が有効になった通信機器”のアドレスを推測し、当該推定したアドレス宛に通信路接続のためのメッセージを送信する点である。
【０１４２】
図１０を参照して、上位セグメント判断部５２１は、後述する上位セグメント解析処理を実施して、自身が接続されているルータより上位（インターネット側）に接続されたルータ配下のネットワークアドレス情報（又は、上位側の各ルータに接続された通信機器が設定することが可能なアドレス範囲の情報）を取得し、上位セグメント情報部５２２に記憶する（ステップＳ４０）。
【０１４３】
そして、サーバ通信路保持部５２７が、上位セグメント情報部５２２を利用し、上位の各ルータに接続された”中継機能が有効になった通信機器”のアドレスを推定し、当該推定したアドレス宛に通信路接続要求メッセージをユニキャストで送信する（ステップＳ４１）。
【０１４４】
上位側のルータに接続された”中継機能が有効になった通信機器”が存在している場合、”中継機能が有効になった通信機器”は、通信路接続要求メッセージの送信元アドレス（ＩＰアドレス、ポート番号）宛に、通信路接続応答メッセージを返信する。
【０１４５】
この通信路接続応答メッセージは、ＬＡＮ側ネットワークに接続された通信機器からＷＡＮ側ネットワークに接続された通信機器に向けて通信が開始された通信路接続要求メッセージの送信元アドレス宛へ送信されるため、前述のようにルータを超えて宛先に送信される。
【０１４６】
次に、サーバ通信路保持部５２７は、通信路接続応答メッセージを受信できたか否かを判断する（ステップＳ４２）。
【０１４７】
通信路接続応答メッセージを受信した場合、サーバ通信路保持部５２７は、中継機能情報部５２８に”中継機能が有効になった通信機器”のアドレス情報を記憶し、メッセージ中継用の通信路を確立する。また、確立したメッセージ中継用の通信路を保持するために、サーバ通信路保持部５２７は、定期的にメッセージの送受信を行う。これは、例えば、サーバ通信路保持部５２７が、”中継機能が有効になった通信機器”とＵＤＰで通信を行う場合、ＬＡＮ側ネットワークからＷＡＮ側ネットワークに通信を開始した場合に自動的にルータに設定されたアドレス変換設定（ＮＡＰＴ設定）が、一定時間通信が行われないことによって自動的に削除されることを防ぐためである。同様に、ＴＣＰで”中継機能が有効になった通信機器”と通信する場合においても、ＴＣＰセッションが切断しルータに設定されたアドレス変換設定（ＮＡＰＴ設定）が削除されることを防ぐために、定期的にセッションを保持する目的でパケットの送受信を実行する（ステップＳ４５）。
【０１４８】
“中継機能が有効になった通信機器”と通信路を確立した後、中継通信部５２は、以下の処理を実行する。
【０１４９】
中継通信部５２は、下位側のルータに接続された”中継機能が有効になった通信機器”と通信路を確立した場合（すなわち、ステップＳ４４の通信路接続通知メッセージを受信し、”中継機能が有効になった通信機器”と通信路を確立した場合）、自身が接続しているネットワークに新規通信機器が接続されたことを検出すると、機器接続通知メッセージを”中継機能が有効になった通信機器”に送信する。機器接続通知メッセージには、新規通信機器のアドレス情報が設定され、確立した通信路を通じて送信される。図７は、機器接続通知メッセージの一例であり、メッセージＩＤには、機器接続通知メッセージであることを示すＩＤがセットされ、接続機器アドレス情報には、新規通信機器のアドレス情報が設定される（ステップＳ４６）。
【０１５０】
そして、サーバ通信路保持部５２７は、定期的に送受信するメッセージやパケットにより、”中継機能が有効になった通信機器”との間の通信が成功しているか否かを監視する。例えば、”中継機能が有効になった通信機器”の電源がＯＦＦされた等の事態が発生すると、”中継機能が有効になった通信機器”からのメッセージやパケットが途切れるため、サーバ通信路保持部５２７は、通信路が切断されたこと検出する。通信路が切断されたことを検出した場合、中継通信部５２は、再度、上位セグメント解析処理から順次再実行する（ステップＳ４７）。
【０１５１】
次に、ステップＳ４２の通信路接続応答メッセージを受信できたか否かを（すなわち、中継機能を発見できたか否かを）判断する処理において、通信路接続応答メッセージを受信できなかった場合について説明する。
【０１５２】
この場合、サーバ通信路保持部５２７は、通信路接続通知メッセージの受信を所定時間待つ処理を実行する（ステップＳ４３）。
【０１５３】
そして、その後、サーバ通信路保持部５２７は、通信路接続通知メッセージを受信できたかを判断する（ステップＳ４４）。
【０１５４】
“中継機能が有効になった通信機器”からの通信路接続通知メッセージを受信した場合、サーバ通信路保持部５２７は、通信路接続通知メッセージの送信元アドレス（ＩＰアドレス、ポート番号）宛に通信路接続要求メッセージを送信する。そして、サーバ通信路保持部５２７は、”中継機能が有効になった通信機器”から通信路接続応答メッセージを受信することで、メッセージ中継用の通信路を確立する。また、確立したメッセージ中継用の通信路を保持するために、サーバ通信路保持部５２７は、定期的にメッセージの送受信を行う（ステップＳ４８）。
【０１５５】
そして、前述の通り、サーバ通信路保持部５２７は、必要に応じて機器接続通知メッセージの送信を行う（ステップＳ４６）。また、サーバ通信路保持部５２７は、”中継機能が有効になった通信機器”との間の通信路が保持されているか否かを監視する。通信路が切断されたことを検出した場合、中継通信部５２は、再度、上位セグメント解析処理から順次再実行する（ステップＳ４７）。
【０１５６】
以上が、中継機能を持たない通信機器５ａ〜５ｃの動作シーケンスである。
【０１５７】
なお、説明した通信機器５ａ〜５ｃの動作シーケンスは一例であり、中継機能付きの通信機器４ａ〜４ｃのシーケンスと同様に、”中継機能が有効になった通信機器”を探索し、発見後に通信路接続のためのメッセージを送信しても良い。
【０１５８】
また、中継機能付き通信機器４ａ〜４ｃの端末アプリ部４３が、他の通信機器にデータを送信したい場合、送信したいデータと宛先通信機器のＩＤとを中継通信部４２に引渡し、データ送信を依頼する。依頼を受けた中継通信部４２は、自身の中継機能が有効になっている場合、通信路情報部４２６を参照し、ＩＤに対応するアドレス情報を取得する。そして、中継通信メッセージを作成し、取得したアドレス情報宛てにメッセージを送信する。
【０１５９】
中継通信部４２は、自身の中継機能が無効になっている場合、中継通信メッセージを作成し、確立している通信路を通じて、“中継機能が有効になった通信機器”へ送信する。
【０１６０】
中継機能を持たない通信機器５ａ〜５ｃの場合も同様に、通信機器の端末アプリ部５３が、他の通信機器にデータを送信したい場合、端末アプリ部５３は送信したいデータと宛先通信機器のＩＤとを中継通信部５２に引渡し、送信を依頼する。そして、依頼を受けた中継通信部５２は、中継通信メッセージを作成し、確立している通信路を通じて、“中継機能が有効になった通信機器”へ送信する。
【０１６１】
“中継機能が有効になった通信機器”へ送信した中継通信メッセージは、中継動作の説明で述べたように、“中継機能が有効になった通信機器”で中継通信メッセージ内の送信先ＩＤが参照される。そして、“中継機能が有効になった通信機器”は、送信先ＩＤに対応する通信路のアドレス情報を通信路情報部４２６から取得し、受信した中継通信メッセージを取得した通信路のアドレス情報宛に送信する。結果として、通信機器が送信したメッセージは、“中継機能が有効になった通信機器”を経由して、ルータを越えて宛先の通信機器に送信されることになる。先に述べたように、“中継機能が有効になった通信機器”は、同一ネットワークの通信機器は勿論、上位側のネットワークに接続された通信機器、下位側に接続された通信機器の全てと通信路を接続することが可能であるため、各通信機器は図１の宅内ネットワーク２のどの通信機器とも中継通信メッセージを用いて、通信することが可能である。
【０１６２】
また、通信相手が同一ネットワーク又は、上位側ネットワークに存在する場合のように“中継機能が有効になった通信機器”で中継しなくとも直接通信可能である場合、端末アプリ部４３、５３は、中継通信部４２、５２を通じて“中継機能が有効になった通信機器”を介して通信するのではなく、通信Ｉ／Ｆ部４１、５１を通じて直接、通信機器間で通信するようにしても良い。
【０１６３】
（中継機能と通信機器とのメッセージシーケンス）
次に、先に述べた通信機器の動作によって、実行されるメッセージシーケンスを図１１〜図１３を用いて説明する。
【０１６４】
（メッセージシーケンス：中継機能が上位側ネットワークに接続している場合）
図１１は、ルータ３ｂ配下のネットワークに通信機器４ｂが接続された時に、通信機器４ｂと、上位側のルータ３ａに接続された“中継機能が有効になった通信機器４ａ”との間で中継通信用の通信路を接続するまでのメッセージシーケンスの一例を示している。
【０１６５】
図１１を参照して、通信機器４ｂは、後述する上位セグメント解析処理を行い、宅内ネットワーク２に上位ルータとしてルータ３ａのみが存在する場合、ルータ３ａのネットワークアドレス情報を取得又は推測する。そして、取得したネットワークアドレス情報を参照し、“中継機能が有効になった通信機器”のアドレスを推定して、当該推定したアドレス宛に中継機能探索要求メッセージを送信する。また、通信機器４ｂは、自身が接続している同一ネットワークについても中継機能探索要求メッセージを送信する。
【０１６６】
他のネットワークへの中継機能探索要求メッセージの送信は、ルータ３ｂにとって、ＬＡＮ側ネットワークからＷＡＮ側ネットワークへの通信であるため、自動的にアドレス変換設定（ＮＡＰＴ設定）が実行されて、上位側のネットワークの宛先アドレスに送信される。
【０１６７】
送信した中継機能探索要求メッセージが“中継機能が有効になった通信機器４ａ”に受信されると、受信したメッセージの送信元アドレス（ＩＰアドレス、ポート番号）宛に中継機能探索応答メッセージを送信する。通信機器４ａは、受信したメッセージの送信元アドレス宛に中継機能探索応答メッセージを送信したことにより、中継機能探索要求メッセージ送信時に作成されたアドレス変換設定（ＮＡＰＴ設定）が使用され、ルータ３ｂのＷＡＮ側ネットワークから送信された応答メッセージがルータ３ｂのＬＡＮ側ネットワークに接続された通信機器４ｂまで届けられる。
【０１６８】
中継機能探索応答メッセージを受信した通信機器４ｂは、応答メッセージの送信元アドレスが“中継機能が有効になった通信機器”のアドレス情報であると認識し、このアドレス情報宛に通信路接続要求メッセージを送信する。そして、通信機器４ｂが“中継機能が有効になった通信機器４ａ”から通信路接続応答メッセージを受信することで、通信機器４ｂと“中継機能が有効になった通信機器４ａ”との間に通信路が確立する。
【０１６９】
以上のように各通信機器が、上位セグメント解析処理を実行して、上位側ネットワークに接続されている可能性がある“中継機能が有効になった通信機器”のアドレスを推定して、当該推定したアドレス宛に中継機能探索要求メッセージを送信する機能部を持つことで、上位側ネットワークに“中継機能が有効になった通信機器”が接続された場合でも、通信機器と中継機能が有効になった通信機器”との間に通信路を接続することが可能とする効果が得られる。
【０１７０】
なお、本実施の形態では、同一ネットワークの“中継機能が有効になった通信機器”を探す際にも、アドレスを推定して中継機能探索要求メッセージを送信すると記載したが、これは一例であり、マルチキャストやブロードキャストを利用して“中継機能が有効になった通信機器”を探索しても良いのは明らかである。
【０１７１】
（メッセージシーケンス：中継機能が下位側ネットワークに接続している場合）
図１２は、ルータ３ａ配下のネットワークに通信機器４ａが接続された時に、通信機器４ａと、下位側のルータ３ｂに接続された“中継機能が有効になった通信機器４ｂ”との間で中継通信用の通信路を接続するまでのメッセージシーケンスの一例を示している。
【０１７２】
図１２を参照して、通信機器４ａは、後述する上位セグメント解析処理を行い、宅内ネットワーク２の上位側にルータが無い場合、自身が接続しているネットワークのネットワークアドレス情報のみを取得する。通信機器４ａは、このネットワークアドレスを参照し、“中継機能が有効になった通信機器”のアドレスを推定して、当該推定したアドレス宛に中継機能探索要求メッセージを送信する。しかし、通信機器４ａは、“中継機能が有効になった通信機器”を発見できないため、通信路接続通知メッセージが下位側ネットワークから到着しないかを規定時間（Ｔ１）の間待つ。
【０１７３】
“中継機能が有効になった通信機器４ｂ”は、一定時間（Ｔ２）間隔で上位セグメント解析処理を実行し、得られた上位側ネットワークのネットワークアドレス情報を参照して、上位側ネットワークで設定される可能性がある全アドレス宛に通信路接続通知メッセージを送信する。
【０１７４】
ここで、Ｔ１＞Ｔ２に設定しておくことにより、宅内ネットワーク２に“中継機能が有効になった通信機器４ｂ”があれば、通信機器４ａがＴ１以内に通信路接続通知メッセージを受信することになる。通信路接続通知メッセージを受信した中継機器４ａは、通信路接続要求メッセージを通信路接続通知メッセージの送信元アドレス宛に送信する。
【０１７５】
「中継機能が上位側ネットワークに接続している場合のシーケンス」と同様に、通信路接続通知メッセージは、ルータ３ｂにとって、ＬＡＮ側ネットワークからＷＡＮ側ネットワークへの通信であるため、ルータ３ｂで自動的にアドレス変換設定（ＮＡＰＴ設定）が行われ、当該メッセージが通信機器４ａに送信される。通信機器４ａは、受信したメッセージの送信元アドレス宛にメッセージを送信すると、先のメッセージで自動的に設定されたアドレス変換設定（ＮＡＰＴ設定）が使用され、ルータ３ｂのＷＡＮ側ネットワークから送信された通信路接続要求メッセージがルータ３ｂのＬＡＮ側ネットワークに接続された通信機器４ｂまで届けられる。“中継機能が有効になった通信機器４ｂ”が通信路接続応答メッセージを送信し、通信機器４ａが受信することで、通信機器４ａと“中継機能が有効になった通信機器４ｂ”との間に通信路が確立する。
【０１７６】
以上のように各通信機器が上位側ネットワークに“中継機能が有効になった通信機器”を発見できなかった場合、通信路接続通知メッセージの受信を規定時間（Ｔ１）の間待ち、しかも、“中継機能が有効になった通信機器”が、一定時間間隔（Ｔ２）で上位セグメントの解析処理を実行し、得られた上位側ネットワークのネットワークアドレス情報を参照して、上位側ネットワークで設定される可能性がある全アドレス宛に通信路接続通知メッセージを送信することで、“中継機能が有効になった通信機器”の上位側ネットワークに通信機器が接続された場合でも、或いは、上位側ネットワークに新規にルータが接続されネットワークが拡張され機器が接続された場合でも、通信機器と中継機能が有効になった通信機器”との間に通信路を接続することが可能となる効果が得られる。
【０１７７】
なお、本実施の形態では、“中継機能が有効になった通信機器”が通信路接続通知メッセージを上位セグメントの解析処理で得られた全ての上位側ネットワークに対して送信するとしたが、通信路が確立している通信機器が接続している上位側ネットワークに対しては、一定時間間隔（Ｔ２）で通信路接続通知メッセージを送信せず、次に説明する機器接続通知メッセージで新規接続された通信機器を発見した場合にのみ、発見した通信機器に対して通信路接続通知メッセージを送信するようにしても良い。このように機器接続通知メッセージを利用することで、通信路接続通知メッセージの送信回数を減らすことが可能となり、“中継機能が有効になった通信機器”の処理負荷低減とネットワークトラヒックの低減が可能となる。
【０１７８】
（メッセージシーケンス：機器接続通知メッセージを利用した通信路接続）
図１３は、ルータ３ａ配下のネットワークに新規通信機器５ａが接続された時に、新規通信機器５ａと、下位側のルータ３ｂに接続された“中継機能が有効になった通信機器４ｂ”との間で、機器接続通知メッセージを利用して中継通信用の通信路を接続するまでのメッセージシーケンスを示している。ここで、図１３のネットワークの構成は、図１２とよく似ているが、これらの相違点は、図１３では新規通信機器５ａと同一ネットワークの通信機器４ａが、既に“中継機能が有効になった通信機器”と通信路を確立している点である。
【０１７９】
図１３を参照して、新規通信機器５ａが接続されると、同一ネットワークに接続されている通信機器４ａが新規通信機器５ａの接続を検出し、通信機器５ａのアドレス情報を取得する。この通信機器４ａが新規通信機器５ａを検出する方法の一例としては、通信機器５ａがＵＰｎＰ（Ｕｎｉｖｅｒｓａｌ  Ｐｌｕｇ  ａｎｄ  Ｐｌａｙ）対応機器であれば、マルチキャストで送信されるＵＰｎＰのＡｌｉｖｅパケットを利用して検出する方法が考えられる。また、新規通信機器５ａが同一ネットワーク内に中継機能が有効になった通信機器”がいないかを検索するために送信するメッセージを利用して検出する方法等が考えられる。
【０１８０】
通信機器４ａは、新規通信機器５ａを検出すると、“中継機能が有効になった通信機器４ｂ”との間に確立済みの通信路を用いて、機器接続通知メッセージを送信する。このとき、通信機器４ａは、機器接続通知メッセージに通信機器５ａのアドレス情報を設定して送信する。
【０１８１】
機器接続通知メッセージを受信した“中継機能が有効になった通信機器４ｂ”は、メッセージから通信機器５ａのアドレス情報を取り出し、取り出したアドレス情報宛てへ通信路接続通知メッセージを送信済みか否かを判定する。そして、送信していない場合、取り出した通信機器５ａのアドレス情報宛てへ通信路接続通知メッセージを送信する。
【０１８２】
通信路接続通知メッセージを受信した通信機器５ａは、通信路接続通知メッセージの送信元アドレス宛に、通信路接続要求メッセージを送信する。そして、“中継機能が有効になった通信機器４ｂ”が通信路接続応答メッセージを送信し、当該メッセージを通信機器５ａが受信することで、通信機器５ａと“中継機能が有効になった通信機器４ｂ”との間に通信路が確立する。
【０１８３】
ここで、上記で説明した通信機器４ａからの機器接続通知メッセージは、通信機器４ａが“中継機能が有効になった通信機器４ｂ”より上位側ネットワークに接続されている場合にのみ送信する。このように制御することで、“中継機能が有効になった通信機器４ｂ”から通信路接続通知メッセージを届けることができない下位側ネットワークから機器接続通知メッセージがくることを防ぐことが可能となり、無駄な通信トラヒックが発生しない。なお、下位側ネットワークに新規通信機器が接続された場合には、先に述べた新規通信機器が上位セグメント解析処理を実施し、“中継機能が有効になった通信機器”のアドレスを推定して、通信路接続要求メッセージを送信する方法で“中継機能が有効になった通信機器”との間に通信路を設定する。このとき、“中継機能が有効になった通信機器”のアドレスが定められたアドレス範囲になるようにアドレスの再設定が実行されていると、通信路接続要求メッセージを多数送信せずとも、通信路を接続することが可能となる。また、新規通信機器から通信路を接続するためのシーケンスを開始することが可能であるため、新規接続した後、速やかに通信路接続を行うことが可能である。
【０１８４】
以上のように、各通信機器が上位セグメント解析処理を実行して、上位側ネットワークに接続されている可能性がある“中継機能が有効になった通信機器”のアドレスを推定して、メッセージを送信する機能と、上位側ネットワークに“中継機能が有効になった通信機器”を発見できなかった場合、自身の下位側ネットワークに接続された“中継機能が有効になった通信機器”からのメッセージ受信を規定時間の間待つ機能をもち、“中継機能が有効になった通信機器”が、一定時間間隔で上位セグメントの解析処理を実行し、得られた上位側ネットワークのネットワークアドレス情報を参照して、上位側ネットワークで設定される可能性があるアドレス宛にメッセージを送信することで、図１のようなネットワークにおいて、“中継機能が有効になった通信機器”と、通信機器がどのように配置されても、通信路を確立することが可能であることが分かる。
【０１８５】
なお、図１１〜図１３では、宅内ネットワーク２がルータ２台で構成されている例で説明したが、“中継機能が有効になった通信機器”と通信機器との間に２台以上のルータが存在しても、同一の方法で通信路の接続が可能なのは明らかである。
【０１８６】
（上位セグメント解析処理）
次に、通信機器４ａ〜４ｃ、５ａ〜５ｃが実行する上位セグメント解析処理について説明する。
【０１８７】
上位セグメント解析処理は、“中継機能が有効になった通信機器”を含めた各通信機器４ａ〜４ｃ、５ａ〜５ｃで実行される処理であり、自身が接続しているルータ配下のネットワークと、その上位側（すなわち、インターネット側）のルータ配下のネットワークのネットワークアドレスを取得又は記憶する処理である。まず、自身が接続しているルータ配下のネットワークのネットワークアドレス情報は、通信Ｉ／Ｆ部４１、５１から取得する。
【０１８８】
そして、上位側のルータのネットワークアドレスを取得する処理の一例としては、特願２００５−１０３０５９と同様の方法を用いることができる。ここでは、その概要を説明する。
【０１８９】
上位セグメント解析処理は、２つのステップからなる。最初のステップは、上位側ルータのネットワークアドレス情報を取得するために、宅内ネットワーク２内の上位側ルータのアドレスを取得するステップである。そして、次のステップは、取得したルータのアドレスを用いて、そのルータのネットワークアドレス（又は、そのネットワークで有効なアドレスの範囲）を推測するステップである。ここで、ルータのネットワークアドレス（又は、そのネットワークで有効なアドレスの範囲）をそのネットワークのアドレス空間と呼ぶことにする。また、ルータのアドレス情報を用いて、このネットワークのアドレス空間を推定する処理をアドレス空間推定処理と呼ぶことにする。
【０１９０】
宅内ネットワーク２内の上位側ルータのアドレスを取得する方法として、ＴＴＬ（Ｔｉｍｅ  Ｔｏ  Ｌｉｖｅ）を変化させたパケットを用いてアドレスを取得する方法（ｔｒａｃｅ  ｒｏｕｔｅと同様な方法）と、ＵＰｎＰ（Ｕｎｉｖｅｒｓａｌ  Ｐｌｕｇ  ａｎｄ  Ｐｌａｙ）  ＩＧＤ（Ｉｎｔｅｒｎｅｔ  Ｇａｔｅｗａｙ  Ｄｅｖｉｃｅ）仕様を用いてアドレスを取得する方法を利用することができる。
【０１９１】
（ＴＴＬを変化させたパケットを利用する方法）
まず、ＴＴＬを変化させたパケットを利用してルータのアドレスを取得する方法を説明する。図１４は、宅内ネットワーク２の構成とＴＴＬパケットとの関係を説明する図である。図１４において、宅内ネットワーク２とインターネット１との異なる２つのネットワークが接続されている。なお、宅内ネットワーク２は、ローカルネットワークであれば、家庭内のネットワークでなくても良い。図１４に示すように、宅内ネットワーク２は、通信機器１０と、ルータＡ２０と、ルータＢ３０と、ルータＣ４０とを備える。通信機器１０は、上位セグメント解析処理を行う場合の通信機器４ａ〜４ｃ、５ａ〜５ｃに相当する。ルータＡ２０は、ＷＡＮ側通信Ｉ／Ｆ２０１と、ＬＡＮ側通信Ｉ／Ｆ２０２とを含む。ルータＢ３０は、ＷＡＮ側通信Ｉ／Ｆ３０１と、ＬＡＮ側通信Ｉ／Ｆ３０２とを含む。ルータＣ４０は、ＷＡＮ側通信Ｉ／Ｆ４０１と、ＬＡＮ側通信Ｉ／Ｆ４０２とを含む。なお、ルータＡ２０、ルータＢ３０、及びルータＣ４０において、ＷＡＮ側通信Ｉ／Ｆ及びＬＡＮ側通信Ｉ／Ｆ以外の構成の記載を省略している。
【０１９２】
ルータＣ４０は、インターネット１内のルータＤ５０と接続することによって、宅内ネットワーク２とインターネット１とを接続するゲートウェイである。ルータＣ４０において、ＷＡＮ側通信Ｉ／Ｆ４０１には、グローバルアドレスが割り当てられ、ＬＡＮ側Ｉ／Ｆ４０２には、プライベートアドレスが割り当てられる。ルータＡ２０のＷＡＮ側通信Ｉ／Ｆ２０１及びＬＡＮ側通信Ｉ／Ｆ２０２と、ルータＢ３０のＷＡＮ側通信Ｉ／Ｆ３０１及びＬＡＮ側通信Ｉ／Ｆ３０２とには、それぞれプライベートアドレスが割り当てられる。
【０１９３】
図１５は、通信機器１０が行う、ＴＴＬを変化させたパケットを利用してルータのネットワークアドレス（又は、ルータ配下の端末が取ることが可能な有効なアドレスの範囲）を取得する処理を示すフローチャートである。図１５を参照して、動作を説明する。通信機器１０は、上位セグメント解析処理を開始すると、ＴＴＬパケット送信処理を起動する（ステップＳ１０１）。ここで、起動したＴＴＬパケット送信処理は、ＴＴＬ応答パケット受信処理（ステップＳ１０２）などと並行して実行される。通信機器１０は、ＴＴＬパケット送信処理の起動後、ＴＴＬ応答パケットを受信したか否かを判断する（ステップＳ１０２）。ＴＴＬ応答パケットを受信すると、通信機器１０は、ルータを検出したと判断して、ＴＴＬ応答パケットの受信処理を実行する（ステップＳ１０３）。ＴＴＬ応答パケットは、具体的には、ＩＣＭＰ（Ｉｎｔｅｒｎｅｔ  Ｃｏｎｔｒｏｌ  Ｍｅｓｓａｇｅ  Ｐｒｏｔｏｃｏｌ）  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥである。ＩＣＭＰ  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥとは、中継するパケットの生存時間（ＴＴＬ：Ｔｉｍｅ  Ｔｏ  Ｌｉｖｅ）の超過によるパケットの破棄を、送信元に報告するメッセージである。
【０１９４】
通信機器１０は、ＴＴＬ応答パケットの送信元アドレスが、グローバルアドレスであるか否か判断する（ステップＳ１０４）。ＴＴＬ応答パケットの送信元アドレスがグローバルアドレスでない場合、通信機器１０は、アドレス空間推定処理を実行する（ステップＳ１０５）。ＴＴＬ応答パケットの送信元アドレスがグローバルアドレスであった場合、通信機器１０は、ＴＴＬパケット送信処理を中止する（ステップＳ１０６）。
【０１９５】
通信機器１０は、送信したＴＴＬパケットに対するＴＴＬ応答パケットを全て受信したか否かを判断する（ステップＳ１０７）。通信機器１０は、ＴＴＬ応答パケットを全て受信した場合、図１５に示すアドレス空間の推定処理を終了する。全て受信していない場合、通信機器１０は、ステップＳ１０２に戻り、ＴＴＬ応答パケットの受信待機状態となる。送信したＴＴＬパケットに対するＴＴＬ応答パケットを全て受信するまで、受信処理を継続する理由は、ＴＴＬパケットを送信した順にＴＴＬ応答パケットを受信するとは限らないためである。なお、送信元アドレスがグローバルアドレスであったＴＴＬ応答パケットに対応するＴＴＬパケットにおいて、設定したＴＴＬ値をＴＴＬｇとすると、ＴＴＬｇ以下のＴＴＬ値のＴＴＬパケットに対するＴＴＬ応答パケットを全て受信した場合、ＴＴＬ応答パケットを全て受信したと判断してもよい。
【０１９６】
図１６〜１８を用いて、ＴＴＬパケット送信処理の詳細を説明する。図１６は、ＴＴＬパケット送信処理のフローチャートである。図１７は、ＴＴＬパケットの送信にＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）を用いる場合の、ＴＴＬパケットの構成を示す図である。図１８は、ＴＴＬパケットにおける、ＴＴＬと宛先ポート番号との対応関係の一例を示す図である。
【０１９７】
図１６を用いて、ＴＴＬパケット送信処理を説明する。通信機器１０は、ＴＴＬパケットの作成を続行するか否かを確認する（ステップＳ１１１）。このＴＴＬパケットの作成を続行するか否かの判断は、後で記述するＴＴＬパケット応答受信で、送信元がグローバルアドレスの応答パケットを受信したか否かで判断する。通信機器１０は、グローバルアドレスの応答を受信している場合、パケット作成の続行を中止と判断し、グローバルアドレスの応答を受信していない場合、続行と判断する。
【０１９８】
通信機器１０は、ＴＴＬパケット作成の中止と判断する場合、ＴＴＬパケット送信処理を終了する。ＴＴＬパケット作成の続行と判断した場合、ＴＴＬと宛先ポート番号とを、１つずつインクリメントしたＴＴＬパケットを作成する（ステップＳ１１２）。通信機器１０は、作成したＴＴＬパケットを送信する（ステップＳ１１３）。なお、通信機器１０は、送信したＴＴＬパケットに対応するＴＴＬ応答パケットの受信を待つことなく、ＴＴＬをインクリメントした次のＴＴＬパケットを送信してもよい。この場合、通信機器１０は、複数のＴＴＬパケットを同時に送信できるため、高速にルータを検出することが可能となる。また、ＴＴＬパケットは、インターネット上の特定のグローバルアドレス宛（例えば、ルータＤ５０のＬＡＮ側Ｉ／Ｆ５０１、あるいはインターネット上の特定サーバのアドレス（例えば、ｐａｎａｓｏｎｉｃ．ｃｏｍなど）に向けて送信してもよい。
【０１９９】
通信機器１０は、図１８に示すように、ＩＰヘッダのＴＴＬフィールドの値を１からインクリメントするとともに、ＵＤＰヘッダの宛先ポート番号フィールドを１０００１からインクリメントしながら、ＴＴＬパケットを作成する。なお、宛先ポート番号は、図１８に示す例に限られず、他のポート番号を用いてもよいのは言うまでもない。宛先ポート番号は、宛先ポート番号からＴＴＬが一意に判別できればよい。
【０２００】
また、ＴＴＬパケットは、図１７のようなＵＤＰを用いた例に限られず、例えば、図１９に示すＩＣＭＰを用いてもよい。この場合、図２０に示すようにＩＰヘッダのＴＴＬとシーケンス番号を対応付ける方法が利用できる。
【０２０１】
図１４、及び図２１を用いて、ＴＴＬ応答パケットの受信処理を説明する。図１４は、ＴＴＬパケットと、ＴＴＬ応答パケットとの対応関係を示している。図２１は、ＴＴＬ応答パケットの構成例を示す図である。
【０２０２】
図１４において、ルータＡ２０、ルータＢ３０、ルータＣ４０、及びルータＤ５０は、それぞれのＬＡＮ側通信Ｉ／Ｆで受信したＴＴＬパケットを、ＴＴＬ値を１だけ引いてＷＡＮ側のルータに送信する。それぞれのルータは、ＴＴＬ値を１引いて、ＴＴＬ＝０となった場合、ＴＴＬパケットをＷＡＮ側のルータに送信せずに廃棄する。そして、それぞれのルータは、ＴＴＬ値が原因であるパケットの廃棄が発生したことを示すために、ＴＴＬ応答パケットをＴＴＬパケットの送信元へ送信する。図２１に示すＴＴＬ応答パケットのデータ部には、廃棄したルータディスカバリ用パケットのＩＰヘッダと、それに続くＵＤＰヘッダを含む６４ビットのデータが付加される。
【０２０３】
通信機器１０が、ＴＴＬ＝１に設定したＴＴＬパケットを、インターネット１上の特定のＩＰアドレスに向けて送信した場合を考える。ＴＴＬ＝１のＴＴＬパケットは、ルータＡ２０のＬＡＮ側通信Ｉ／Ｆ２０２で受信される。ＴＴＬ＝１に設定したＴＴＬパケットは、ＷＡＮ側通信Ｉ／Ｆ２０１から送信される前に、ＴＴＬ＝０となる。このため、ルータＡ２０は、ＴＴＬ＝１のＴＴＬパケットは廃棄する。ルータＡ２０は、ＴＴＬ＝１のＴＴＬパケットを廃棄したことを通知するために、ＴＴＬ応答パケットを通信機器１０に送信する。このとき、ＴＴＬ応答パケットの送信元ＩＰアドレス（以下、送信元アドレスという）は、ルータＡ２０のＬＡＮ側通信Ｉ／Ｆ２０２のＩＰアドレスとなる（以下、各ルータのＬＡＮ側通信Ｉ／ＦのＩＰアドレスを、各ルータのＬＡＮ側アドレスという）。通信機器１０は、ＴＴＬ応答パケットの送信元アドレスを確認することによって、ルータＡ２０のＬＡＮ側アドレスを知ることが可能となる。
【０２０４】
同様に、通信機器１０が、ＴＴＬ＝２に設定したＴＴＬパケットを、インターネット上の特定のＩＰアドレスに向けて送信すると、ルータＢ３０は、ルータＢ３０自身のＬＡＮ側アドレスを送信元アドレスとしたＴＴＬ応答パケットを、通信機器１０に送信する。また、通信機器１０が、ＴＴＬ＝３に設定したＴＴＬパケットを、インターネット上の特定のＩＰアドレスに向けて送信すると、ルータＣ４０は、ルータＣ４０自身のＬＡＮ側アドレスを送信元アドレスとしたＴＴＬ応答パケットを、通信機器１０に送信する。このように、通信機器１０は、ＴＴＬパケットに対応するＴＴＬ応答パケットを受信することで、それぞれのルータを検出するとともに、それぞれのルータのＬＡＮ側アドレスを取得することができる。通信機器１０は、自身とインターネット１との間に接続されているルータの接続順序に関する接続順序情報を取得することができる。
【０２０５】
次に、通信機器１０が行うアドレス空間の推定処理を説明する。ここで述べるアドレス空間推定処理とは、ルータ配下のネットワークに接続される端末に設定できるアドレスの範囲を推定する処理である。端末に設定できるアドレスの範囲は、すなわち、ホストアドレスの範囲に対応するため、ホストアドレスからネットワークアドレスを求めることが可能である。
【０２０６】
通信機器１０は、ＴＴＬ応答パケットの送信元アドレスがローカルアドレスであった場合に、ＴＴＬ応答パケットの送信元ルータを対象として、ＴＴＬ応答パケットに対応するＴＴＬパケットで指定したＴＴＬ値を用いて、送信先アドレスを変化させたアドレス範囲推定パケットを送信する。例えば、ルータＡ２０であればＴＴＬ値は１、ルータＢ３０であれば、ＴＴＬ値は２を用いることになる。
【０２０７】
また、通信機器１０は、ＴＴＬ応答パケットから得られたルータのＬＡＮ側アドレスを基に、そのルータのアドレス空間を一次推測し記憶する。アドレス空間の一次推測の具体的な方法は、アドレス空間をクラスＣのアドレスとして推測する方法が考えられる。例えば、ルータＡ２０のＬＡＮ側アドレスが、１９２．１６８．０．１であれば、ルータＡ２０のアドレス空間は、１９２．１６８．０．１〜１９２．１６８．０．２５４と推測できる。なお、得られたルータのＬＡＮ側アドレスが、クラスＡまたはクラスＢのプライベートアドレスである場合、得られたルータのアドレス空間が、それぞれのクラスに応じたアドレス空間であると一次推測してもよい。例えば、ルータＡ２０のプライベートアドレスが１０．１．０．１３０であった場合、そのルータのアドレス空間を１０．０．０．１〜１０．２５５．２５５．２５４であると一次推測する。また、１０．１．０．１〜１０．１．０．２５４（最下位８ビットだけを変化）又は１０．１．０．１２９〜１０．１．０．２５４（最下位７ビットだけを変化）などのように一次推測してもよい。
【０２０８】
通信機器１０は、アドレス空間を一次推測する際に、少なくとも得られたルータのＬＡＮ側アドレスが含まれるように得られたルータのアドレス空間を一次推測して記憶する。そして、通信機器１０（上位セグメント判断部）は、記憶したアドレス空間のアドレスを順に送信先として指定し、アドレス範囲推定パケットを送信する。このとき、得られたルータのＬＡＮ側アドレスは必ず一次推測したアドレス空間に含まれていると考えることができるので、通信機器１０は、得られたルータのＬＡＮ側アドレスにアドレス範囲推定パケットを送信しなくてもよい。
【０２０９】
アドレス範囲推定パケットとは、通信機器１０が、対象となるルータのアドレス空間として推定したアドレス空間が、対象ルータのアドレス空間であるか否かを確認するためのパケットである。アドレス範囲推定パケットは、図１７に示すＵＤＰパケットまたは、図１９に示すＩＣＭＰパケットを用いる。ＴＴＬパケットとアドレス範囲推定パケットとの相違点は、ＴＴＬパケットの送信先アドレスが、インターネット上の特定のアドレスであるのに対し、アドレス範囲推定パケットの送信先アドレスが、対象ルータのアドレス空間内と思われるローカルアドレスである点である。
【０２１０】
また、ＴＴＬ応答パケットと、アドレス範囲推定パケットの応答であるＩＣＭＰ  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥとを識別可能とするために、通信機器１０は、図１７に示すＵＤＰパケットを用いる場合、ＴＴＬパケットで使用しないポート番号を指定したＵＤＰパケットを、アドレス範囲推定パケットとして送信する。この結果、アドレス範囲推定パケットの応答であるＩＣＭＰ  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥのデータ部には、アドレス範囲推定パケットで指定したポート番号が含まれることになる。このように、通信機器１０は、ポート番号を参照することによって、ＴＴＬ応答パケットと、アドレス範囲推定パケットの応答であるＩＣＭＰ  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥとを識別することができる。同様に、アドレス範囲推定パケットとしてＩＣＭＰを使用する場合、シーケンス番号等にＴＴＬパケットでは使用しない値を設定する。なお、アドレス範囲推定パケットの応答を用いたルータのアドレス空間の推定方法は後述する。
【０２１１】
アドレス範囲推定パケットに対する応答があった場合、通信機器１０は、応答がＩＣＭＰ  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥであるか否かを判定する。応答がＩＣＭＰ  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥでない場合、アドレス範囲推定パケットの送信先アドレスが、ルータのアドレス空間内であると判定する。そして、通信機器１０は、判定結果に基づきルータのアドレス空間の推定情報を更新して記憶する。
【０２１２】
アドレス範囲推定パケットの応答としてＩＣＭＰ  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥを受信することによって、アドレス範囲推定パケットの送信先が、ルータのアドレス空間の範囲外のアドレスと判断できる理由について説明する。アドレス範囲推定パケットは、ルータのＬＡＮ側アドレスを取得するために送信したＴＴＬパケットと同一のＴＴＬ値を指定して送信される（例えば、ルータＡ２０のアドレス空間を推測する場合、ＴＴＬ値は１が指定される）。ルータのアドレス空間の範囲外のアドレスを指定してパケットを送信すると、ルータは、上位のルータにパケットを送信しようとする。このとき、ＴＴＬ値の減算が実行され、ＴＴＬ＝０となるため、ルータはアドレス範囲推定パケットを廃棄し、ＩＣＭＰ  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥを送信する。ゆえに、アドレス範囲推定パケットの応答としてＩＣＭＰ  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥを受信すると、アドレス範囲推定パケットの送信先アドレスは、ルータのアドレス空間の範囲外であることがわかる。
【０２１３】
なお、アドレス範囲推定パケットに対する応答がない場合も、通信機器１０は、アドレス範囲推定パケットの送信先アドレスが対象ルータのアドレス空間内であると判定してよい。応答がＩＣＭＰ  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥである場合、通信機器１０は、アドレス範囲推定パケットの送信先アドレスが、ルータのアドレス空間外であると判定する。そして、通信機器１０は、判定結果に基づきルータのＬＡＮ側アドレス空間の推定情報を更新して記憶する。その後、通信機器１０は、アドレス空間の推定が終了したか否かを判定する。具体的には、通信機器１０は、アドレス範囲推定パケットの送信及びアドレス範囲推定パケットに対する応答を全て受信したか否かを確認する。終了していない場合、通信機器１０（上位セグメント判断部）は、処理を続行する。終了と判断した場合、通信機器は、アドレス空間の推定処理を終了、すなわち、上位セグメント解析処理を終了する。
【０２１４】
なお、通信機器１０は、アドレス空間内と判定されるアドレスと、アドレス空間外と判定されるアドレスとの境界のアドレスを検出した時に、アドレス空間の推定処理を終了してよい。これは、一般にルータのアドレス空間が、連続するアドレスで構成されるためである。例えば、１９２．２６８．２．２から１９２．１６８．２．３、１９２．１６８．２．４・・・の順に、通信機器１０が送信先としてアドレス範囲推定パケットを送信した場合（ただし、１９２．１６８．２．１はルータのアドレスであり、必ずアドレス空間内であると分かっているため送信しない）、１９２．１６８．２．１２８で初めてアドレス空間の範囲外と判断された場合について説明する。この場合、アドレス空間が連続なら、１９２．１６８．２．１２８以降のアドレスは、全てアドレス空間の範囲外と判断されると予測することができる。このため、通信機器１０は、１９２．１６８．２．１２８をアドレス空間の範囲外と判断した時点で、実際に一次推測したアドレス空間全体のアドレスにアドレス範囲推定パケットを送信せず、アドレス空間の判定処理を終了してよい。このとき、通信機器１０が記憶するルータのアドレス空間情報は、判定結果に基づき更新される。
【０２１５】
（ＵＰｎＰ  ＩＧＤ仕様を利用する方法）
次に、ＵＰｎＰ  ＩＧＤ仕様を利用して、ルータのアドレスを取得する方法を説明する。
【０２１６】
なお、ルータのアドレスを取得した後に、アドレス空間の範囲を推定する処理については、ＴＴＬを変化させたパケットを利用する方法と同様である。
【０２１７】
ＴＴＬを変化させたパケットを利用する方法では、ＴＴＬを変化させたＴＴＬパケットと、ＩＣＭＰ  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥとを利用したＴＴＬ応答パケットとを用いて、宅内ネットワーク２に存在するルータの検出を行った。しかし、ＴＴＬ処理を行わないルータや、ＩＣＭＰパケットをフィルタリングするルータ等が市販されている。このため、ＴＴＬを変化させたパケットを利用する方法で説明した上位セグメント解析処理が適用できないルータが存在する。ＵＰｎＰ  ＩＧＤ仕様を利用する方法では、この問題を解決するための上位セグメント解析処理を説明する。
【０２１８】
図２２は、ＵＰｎＰ  ＩＧＤ仕様を利用する上位セグメント解析処理が用いられる宅内ネットワーク２の構成の一例を示す図である。図２２において、宅内ネットワーク２は、通信機器１０に代えて、通信機器１１を備える点が異なる。通信機器１１は、ＩＧＤ仕様を利用した上位セグメント解析処理を実行する通信機器である。通信機器１１は、ルータＡ２０、ルータＢ３０、及びルータＣ４０のＬＡＮ側アドレスの他に、それぞれのＷＡＮ側アドレスを取得する点が、通信機器１０と異なる。なお、通信機器１１は、ＩＧＤ仕様を利用した上位セグメント解析処理を行う場合の通信機器４ａ〜４ｃ、５ａ〜５ｃに相当する。
【０２１９】
通信機器１１の上位セグメント解析処理の動作を説明する。通信機器１１は、ＵＰｎＰ
ＩＧＤ（Ｉｎｔｅｒｎｅｔ  Ｇａｔｅｗａｙ  Ｄｅｖｉｃｅ）仕様などを用いて、自身が接続されているルータのＬＡＮ側アドレスを取得後、さらにＷＡＮ側アドレスを取得する。そして、通信機器１１は、上位のルータのＬＡＮ側アドレスを取得しながら、上位のルータのアドレス空間の範囲の推定を行う。図２１に示す例の場合、通信機器１１が取得するアドレスの順序は、Ａ→Ｂ→Ｃ→Ｄ→Ｅ→Ｆのようになる。
【０２２０】
図２３を用いて、通信機器１１が行うアドレス空間の推定処理を説明する。図２３は、通信機器１１が行う上位セグメント解析処理の一例を示すフローチャートである。図２３を参照して、通信機器１１は、自身が接続されたルータＡ２０に対してＵＰｎＰのディスカバリメッセージである“Ｍ−Ｓｅａｒｃｈ”を用いたルータディスカバリ用パケット（以下、推定ルータパケットという）をマルチキャスト送信する（ステップＳ２０１）。通信機器１１は、送信した推定ルータパケットに対する応答パケット（以下、推定ルータ応答パケットという）を受信したか否かを判断する（ステップＳ２０２）。図２４に、推定ルータパケットのデータ部の一例を示す。また、図２５に推定ルータ応答パケットのデータ部の一例を示す。
【０２２１】
通信機器１１は、推定ルータ応答パケットを受信した場合、推定ルータ応答パケットを解析して、送信元ルータのＬＡＮ側アドレスを取得する（ステップＳ２０３）。なお、通信機器１１は、ＵＰｎＰを使用しているため、推定ルータ応答パケットに含まれる情報から、デバイスディスクリプション及びサービスディスクリプションを取得する。これらの情報は、アクション送信のための情報として用いられる。そして、通信機器１１は、推定ルータパケットの送信処理を中止する（ステップＳ２０４）。通信機器１１は、推定ルータ応答パケットの送信元のルータのＷＡＮ側アドレスを取得する（ステップＳ２０５）。
【０２２２】
ルータのＷＡＮ側アドレスを、ＵＰｎＰ  ＩＧＤ仕様を用いて取得する手順を説明する。推定ルータ応答パケットの送信元ルータのＬＡＮ側アドレスに対して、通信機器１１は、ＧｅｔＥｘｔｅｒｎａｌＩＰＡｄｄｒｅｓｓアクション要求メッセージを送信する。図２６は、ＧｅｔＥｘｔｅｒｎａｌＩＰＡｄｄｒｅｓｓアクション要求メッセージの一例を示す図である。ＧｅｔＥｘｔｅｒｎａｌＩＰＡｄｄｒｅｓｓアクション要求メッセージを受信したルータが、応答を通信機器１１に返信することよって、通信機器１１は、ルータのＷＡＮ側アドレスを取得する。図２７は、ＧｅｔＥｘｔｅｒｎａｌＩＰＡｄｄｒｅｓｓアクション応答メッセージの一例を示す図である。図２７において、ルータのＷＡＮ側アドレスは、＜ＮｅｗＥｘｔｅｒｎａｌＩＰＡｄｄｒｅｓｓ＞タグで囲まれた部分にセットされる。そのため、通信機器１１は、＜ＮｅｗＥｘｔｅｒｎａｌＩＰＡｄｄｒｅｓｓ＞タグの値を取り出すことで、ルータのＷＡＮ側アドレスを取得することができる。なお、ルータは、通常、Ｗｅｂベースでのユーザインターフェースが実装されている。このため、通信機器１１は、Ｗｅｂベースのユーザインターフェースを用いて、推定ルータ応答パケットの送信元ルータのＷＡＮ側アドレスを取得してもよい。具体的には、ｈｔｔｐメッセージを推定ルータ応答パケットの送信元ルータに送信して、その応答を受信することによって、推定ルータ応答パケットの送信元ルータのＷＡＮ側アドレスを取得できる。
【０２２３】
通信機器１１は、推定ルータ応答パケットの送信元ルータのＷＡＮ側アドレスが、ローカルアドレスであるか否かを確認する（ステップＳ２０６）。通信機器１１は、取得したＷＡＮ側アドレスがグローバルアドレスである場合、推定ルータ応答パケットの送信元ルータの上位ルータがインターネット１上のルータであると特定する。すなわち、通信機器１１は、宅内ネットワーク２の全てのルータの検出が完了したと推測して、処理を終了する。一方、通信機器１１は、取得したＷＡＮ側アドレスがローカルアドレスである場合、推定ルータ応答パケットの送信元ルータの上位に、宅内ネットワーク２に属するルータが存在すると判断する。そして、再び、ルータのＷＡＮ側アドレス情報を用いて、推定ルータパケットの送信処理を行う（ステップＳ２０７）。この推定ルータパケットの送信処理については、後述する。
【０２２４】
そして、推定ルータ応答パケットの送信元ルータの情報（ＬＡＮ側アドレスやＷＡＮ側アドレスなど）を用いて、アドレス空間推定処理を実行する（ステップＳ２０８）。
【０２２５】
ここでのアドレス空間推定処理は、ＴＴＬを変化させたパケットを利用する場合とは若干異なり、通知されたＷＡＮ側アドレスを基に、上位ルータのアドレス空間を推測する。例えば、図２２において、通信機器１１は、ルータＢ３０のＷＡＮ側アドレスを取得すると、アドレス空間推定処理（ステップＳ２０７）が起動される。具体的には、通信機器１１（上位セグメント判断部）は、ルータＢ３０のＷＡＮ側アドレスを用いて、ルータＣ４０のアドレス空間を一次推測し、推定したアドレス空間情報を記憶する。そして、通信機器１１は（上位セグメント判断部）は、上述したアドレス範囲推定パケットを用いたアドレス空間推定を実行し、アドレス空間情報を更新する。ＴＴＬを変化させたパケットを利用する方法との違いは、アドレス空間に必ず含まれるアドレスが、推定対象のルータのＬＡＮ側アドレス（ルータＣ４０のＬＡＮ側アドレス）ではなく、下位ルータのＷＡＮ側アドレス（ルータＢ３０のＷＡＮ側アドレス）である点のみである。
【０２２６】
通信機器１１は、直接接続されたルータ（ルータＡ２０）のＷＡＮ側アドレスを取得した場合、ルータＡ２０のＷＡＮ側アドレスを用いて、上述のようにルータＢ３０のアドレス空間を推定し、記憶する。それに加えて、通信機器１１自身のＩＰアドレスとネットマスク情報とを用いて、ルータＡ２０のＬＡＮ側アドレス情報を推測し、記憶する。
【０２２７】
そして、再度推定ルータパケット送信処理を起動し、推定ルータ応答パケットを受信するため、ステップＳ２０２に戻る。
【０２２８】
図２３に示すフローチャートを用いることによって、通信機器１１は、自身に接続されているルータから上位のルータの存在を確認することができるため、宅内ネットワーク２のルータの接続順序情報を記憶することができる。
【０２２９】
なお、上記では、アドレス空間推定処理において、アドレス範囲推定パケットを用いたアドレス空間推定処理を実行するとして説明した。ＴＴＬを変化させたパケットを利用する方法と同様に、アドレス範囲推定パケットを用いたアドレス空間推定処理を実行せず、一次推測したアドレス空間情報を用いて、上位セグメント解析処理を完了してもよい。
【０２３０】
（推定ルータパケット送信処理）
なお、ＵＰｎＰを用いて推定ルータパケットを送信処理おいて、通信機器１１は、推測した上位ルータのＬＡＮ側アドレスに対して、ユニキャストでＭ−Ｓｅａｒｃｈを送信するようにすることができる（ＵＰｎＰ  Ｆｏｒｕｍの規格上では、Ｍ−Ｓｅａｒｃｈはマルチキャストのみであるが、ほとんどのルータは、ユニキャストのＭ−Ｓｅａｒｃｈも受信可能としている）。
【０２３１】
図２８に、通信機器１１が、推定ルータパケットの送信先として推測する上位ルータのＬＡＮ側アドレスの一例を示す。通常、ルータのＬＡＮ側アドレスは、工場出荷時の状態で使用すると、クラスＣのローカルアドレスが使用されている。この場合、ローカルアドレスの下位８ビットの値は、１または２５４である。このため、通信機器１１は、上位ルータのＬＡＮ側アドレスを推測する場合、ルータのＷＡＮ側アドレスの下位８ビットを１または２５４に置き換えたアドレスを、上位ルータのＬＡＮ側アドレスとして優先的に推測する。このように推測することで、通信機器１１は、高速に上位ルータを検出することが可能となる。また、ユーザは、ルータのＬＡＮ側アドレスを変更する場合、ＬＡＮ側アドレスの下位８ビットの値を６４または１２８などの特定の値に設定することが多い。このため、通信機器１１は、ＬＡＮ側アドレスの下位８ビットの値を、ユーザが設定する頻度が高い特定の値に設定したアドレスを、上位ルータのアドレスとして、優先的に推測する。
【０２３２】
原理的には、通信機器１１は、図２８のように推測可能な全てのアドレスを宛先とした多量の推定ルータパケットを作成し、一度に送信することが可能である。しかし、多量の推定ルータパケットを一度に送信すると、ネットワークが輻輳状態になり、他の通信に悪影響が出る場合がある。また、送信した推定ルータパケットが廃棄され、ルータのＬＡＮ側アドレス獲得に悪影響が出ることも考えられる。このような影響を避けるため、通信機器１１は、一定期間に規定の数以下の推定ルータパケットを送信するように制御する。また、推定ルータパケットは、図２４に示すように、ルータだけが応答を返すように指定して送信される。
【０２３３】
図２４の例では、ＳＴ（ＳｅａｒｃｈＴａｒｇｅｔ）として、“ｕｒｎ：ｓｃｈｅｍａｓ−ｕｐｎｐ−ｏｒｇ：ｄｅｖｉｃｅ：ＩｎｔｅｒｎｅｔＧａｔｅｗａｙＤｅｖｉｃｅ：１”を設定することにより、ルータだけが応答を返すようになる。このため、通信機器１１は、複数のアドレスに対して推定ルータパケットを送信しても、ルータ以外のアドレスから応答を受信しない。一方、ルータのアドレスを指定した推定ルータパケットに対して、通信機器１１は、図２５の例のような推定ルータ応答パケットを受信する。通信機器１１は、推定ルータ応答パケットのＩＰヘッダの送信元アドレスを参照することで、ルータのＬＡＮ側アドレスを入手することができる。
【０２３４】
このように、通信機器１１は、自身が接続するルータのＬＡＮ側アドレスを取得した後に、ＷＡＮ側アドレスを取得する。そして、得られたＷＡＮ側アドレスを基に、上位ルータのアドレス空間の推定処理を行う。さらに、自身が接続するルータのＷＡＮ側アドレスから、上位のルータのＬＡＮ側アドレスを取得する。この動作を繰り返すことによって、通信機器１１は、宅内ネットワーク２内の全てのルータのアドレスとルータの接続情報とを取得して、宅内ネットワーク２内のルータのＬＡＮ側アドレス空間の推定処理を行う。これにより、通信機器１１は、ＴＴＬパケットに含まれるＴＴＬの操作や、ＩＣＭＰ  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥの受信処理を行う必要がない。また、ＴＴＬ処理を行わない市販のルータや、ＩＣＭＰパケットをフィルタリングする市販のルータに対しても適用することが可能となる。
【０２３５】
なお、図２３に示すフローチャートにおいて、通信機器１１は、推定ルータパケットの送信の際に、ＵＰｎＰ  ＩＧＤ仕様のディスカバリメッセージであるＭ−Ｓｅａｒｃｈ送信を行うものとして説明した。しかし、通常のルータに実装されているＷｅｂベースのユーザインターフェースを用いて、推定ルータパケットを作成してもよい。例えば、デフォルトＧＷ（ＧａｔｅＷａｙ）のＬＡＮ側通信Ｉ／Ｆのアドレスに適切なｈｔｔｐメッセージを送信し、その応答を受信することによって、ｈｔｔｐメッセージの送信先がルータであることを確認できる。この場合、通信機器１１は、自身が接続するルータのＬＡＮ側アドレスの取得の際に、図２３に示すフローチャートのステップＳ２０１〜Ｓ２０４に代えて、上記の処理を行えばよい。
【０２３６】
また、アドレス空間推定処理は、宅内ネットワーク２内の全ルータの検出が終了してから実行してもよい。
【０２３７】
また、通信機器１１は、推定ルータパケットにアドレス範囲推定パケットの機能を持たせることによって、ルータディスカバリ処理とアドレス空間の推定処理とを同時に実行してもよい。この場合、推定ルータパケットのＴＴＬ値を、上位ルータと通信機器１１との間に存在するルータ数に応じて適切に設定する。通信機器１１が推定ルータパケットに対するＩＣＭＰ  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥを受信した場合、通信機器１１（上位セグメント判断部）は、推定ルータパケットの送信先のアドレスが、上位ルータのアドレス空間外であると判断すればよい。
【０２３８】
また、ＵＰｎＰ  ＩＧＤ仕様を利用する方法において、アドレス空間推定処理はＴＴＬを変化させたパケットを利用する方法と同様の方法を行うものとして説明した。しかし、アドレス空間推定処理は、ＩＣＭＰ  ＴＩＭＥ  ＥＸＣＥＥＤＥＤ  ＭＥＳＳＡＧＥを利用するため、通信機器１１は、ＩＣＭＰメッセージをフィルタリングするルータに対して、ＴＴＬを変化させたパケットを利用する方法と同様のアドレス空間の推定処理を行うことができない。この場合、通信機器１１は、ＩＣＭＰメッセージをフィルタリングするルータのアドレス空間が、クラスＣのアドレス空間であると推測してもよい。また、ｈｔｔｐメッセージやＳＮＭＰなどのプロトコルを利用して、ＩＣＭＰメッセージをフィルタリングするルータのアドレス空間を読み出してもよい。
【０２３９】
以上が中継機能を有する通信機器、及び中継機能を持たない通信機器が実行する上位セグメント解析処理の概要である。
【０２４０】
なお、本実施の形態では、中継機能を有する通信機器４ａ〜４ｃ、及び中継機能を持たない通信機器５ａ〜５ｃが自動的に通信路を接続する場合を例に説明したが、ユーザがユーザＩ／Ｏを通じて通信機器に通信路の接続許可の設定を行った場合にだけ、通信路の接続を行うようにしても良い。図２９、図３０を用いて、より詳細に説明する。
【０２４１】
図２９は、ユーザによる接続許可の確認を行う場合の中継機能付き通信機器４ａ〜４ｃの動作の一例を示すフローチャートである。通信機器４ａ〜４ｃは、宅内ネットワーク２に接続されると、上位側ルータに接続された通信機器との通信がユーザに許可されているか否かを確認する（ステップＳ１）。すなわち、通信機器４ａ〜４ｃは、ユーザＩ／Ｏより、上位側ルータに接続された通信機器との通信に対する許可信号が入力されたか否かを確認する。通信機器４ａ〜４ｃは、上位側ルータに接続された通信機器との通信が許可されている場合には、図５で示した「中継機能起動までの手順」と同様の処理を実行する。
【０２４２】
一方、許可されていない場合には、通信機器４ａ〜４ｃは、上位セグメント解析処理（ステップＳ１０）、及び上位側ルータに対する中継機能探索処理（ステップＳ１１）を実行しない。上位セグメント解析処理、上位側ルータに対する中継機能探索処理を実行しないことにより、上位側ルータに接続されている中継機能を有する通信機器とは通信路が設定されなくなる。
【０２４３】
次に、通信機器４ａ〜４ｃは、下位側ルータに接続された通信機器との通信がユーザに許可されているか否かを確認する（ステップＳ２）。すなわち、通信機器４ａ〜４ｃは、ユーザＩ／Ｏより、下位側ルータに接続された通信機器との通信に対する許可信号が入力されたか否かを確認する。許可されている場合には、図５で示した「中継機能起動までの手順」と同様の処理を実行する。
【０２４４】
一方、通信機器４ａ〜４ｃは、下位側ルータに接続された通信機器との通信が許可されていない場合、下位側ルータに接続された“中継機能が有効になっている通信機器”からの接続通知メッセージの受信処理（ステップＳ１３、１４）を実行しない。これによって、下位側ルータに接続されている“中継機能が有効になっている通信機器”とは通信路が接続されなくなる。
【０２４５】
次に、中継機能の起動後の動作について説明する。
【０２４６】
中継機能起動後にも、上位側ルータに接続された通信機器との通信がユーザに許可されているかを確認するかを確認し、許可されていない場合、上位セグメント解析処理、通信路接続通知メッセージの送信処理を実行しない。この処理により、上位側ルータに接続する通信機器とは通信路が接続されなくなる。
【０２４７】
さらに、下位側ルータに接続された通信機器との通信がユーザに許可されているかを確認し、許可されていない場合、自身が送信した接続通知の応答として送信された通信路接続要求メッセージを除く通信路接続要求メッセージを受信した場合、応答を送信しない。この処理により、下位側ルータに接続された通信機器と通信路が接続されなくなる。
【０２４８】
次に、中継機能を持たない通信機器５ａ〜５ｃについて説明する。図３０は、ユーザによる接続許可の確認を行う場合の中継機能を持たない通信機器５ａ〜５ｃの動作の一例を示すフローチャートを示している。図３０を参照して、中継機能付き通信機器の場合と同様、通信機器５ａ〜５ｃは、上位側ルータに接続された通信機器との通信がユーザに許可されているか否かを確認し（ステップＳ５）、許可されていない場合、図１０に示す上位セグメント解析処理（ステップＳ４０）、及び上位側ルータに接続された“中継機能が有効になっている通信機器”に対する通信路接続要求メッセージの送信処理（ステップＳ４１）を実行しない。これによって、上位側ルータに接続された“中継機能が有効になっている通信機器”と通信路が接続されなくなる。
【０２４９】
さらに、通信機器５ａ〜５ｃは、下位側ルータに接続された通信機器との通信がユーザに許可されているかを確認し、許可されていない場合、通信路接続通知メッセージを受信した場合、応答を送信しない。この処理により、下位側ルータに接続された“中継機能が有効になっている通信機器”と通信路が接続されなくなる。
【０２５０】
このような中継機能を有する通信機器４ａ〜４ｃと、中継機能を持たない通信機器５ａ〜５ｃで実行されるユーザによる接続許可が設定されているかの確認処理により、マンション等におけるローカルネットワークが他人と共用されている場合等で、通信機器を接続したルータ以外の他のルータに接続された他人の通信機器との間で不用意に通信路が設定されることを防ぐことができ、セキュリティを高めることができる。
【０２５１】
なお、本実施の形態の処理フローの例では、中継機能を有する通信機器４ａ〜４ｃと、中継機能を持たない通信機器５ａ〜５ｃにおいて、上位側ルータと下位側ルータのどちらに接続された通信機器との通信も許可しない場合、同一ルータに接続された中継機能を有する通信機器４ａ〜４ｃ間でもメッセージ中継用の通信路が接続されなくなる。しかし、同一ルータ内の通信では通信機器間で直接通信が可能であるため、中継用の通信路の接続は必要なく、問題は発生しない。
【０２５２】
また、ここではセキュリティを高める方法として、上位側ルータ又は下位側ルータに接続された通信機器との通信に対してユーザが許可を与える方法を説明したが、接続を許可する通信機器の識別情報を予め登録しておく方法や、共有情報を持つ通信機器からの接続を認証する方法等を用いても同様の効果を得ることが可能である。同様に、通信機器４ａ〜４ｃ、５ａ〜５ｃが、新規通信路を接続する処理を行う度に、ユーザに確認を求める方法を用いても良い。
【０２５３】
本実施の形態では、中継機能を有する通信機器と、中継機能を持たない通信機器の動作について説明したが、これらの通信機器の動作を行うソフトウエアを作成し、ＣＤ、ＤＶＤ、ＲＯＭ、フラッシュＲＯＭ等の記憶媒体に記録してもよい。このような記憶媒体を作成することにより、ＰＣや高機能デジタル家電等のソフトウエア実行機能を持つ機器に、記憶媒体からソフトウエアをインストールすることにより、本実施の形態で説明した“中継機能を有する通信機器”や“中継機能を持たない通信機器”の機能を必要に応じて追加することが可能となる。
【０２５４】
以上のように、本実施の形態における中継機能を有する通信機器は、１つ以上のルータを直列に接続し構成される宅内ネットワークに接続され、宅内ネットワークに接続された他の通信機器との間に通信路を確立し、確立した通信路を用いてメッセージを中継することで、通信機器間の通信を可能とする。また、本実施の形態における通信機器は、１つ以上のルータを直列に接続し構成される宅内ネットワークに接続され、宅内ネットワークに接続された中継機能を有する他の通信機器との間に通信路を確立し、確立した通信路を介して中継機能を有する他の通信機器を用いて、通信機器間の通信を可能とする。
【産業上の利用可能性】
【０２５５】
本発明の通信機器は、宅内ネットワーク等に接続された通信機器等として有用である。
【図面の簡単な説明】
【０２５６】
【図１】本発明の一実施形態における宅内ネットワーク２の構成の一例を示す図
【図２】本発明の一実施形態における通信機器４ａ〜４ｃ、５ａ〜５ｃの基本的なハードウエア構成の一例を示す図
【図３】本発明の一実施形態における中継機能付き通信機器４ａ〜４ｃの機能構成の一例を示すブロック図
【図４】本発明の一実施形態における中継機能を持たない通信機器５ａ〜５ｃの機能構成の一例を示すブロック図
【図５】本発明の一実施形態における中継通信部４２が中継機能を起動するまでの動作シーケンスの一例を示す図
【図６】本発明の一実施形態における中継機能探索要求／応答メッセージ、通信路接続通知／要求／応答メッセージの一例を示す図
【図７】本発明の一実施形態における機器接続通知メッセージの一例を示す図
【図８】本発明の一実施形態における中継機能が有効になった場合の中継通信部４２の動作シーケンスの一例を示す図
【図９】本発明の一実施形態における中継通信メッセージの一例を示す図
【図１０】本発明の一実施形態における中継機能を持たない通信機器５ａ〜５ｃの動作シーケンスの一例を示す図
【図１１】本発明の一実施形態における通信機器４ｂと、中継機能が有効になった通信機器４ａとの間で中継通信用の通信路を接続するまでのメッセージシーケースの一例を示す図
【図１２】本発明の一実施形態における通信機器４ａと、中継機能が有効になった通信機器４ｂとの間で中継通信用の通信路を接続するまでのメッセージシーケンスの一例を示す図
【図１３】本発明の一実施形態における新規通信機器５ａと、中継機能が有効になった通信機器４ｂとの間で中継通信用の通信路を接続するまでのメッセージシーケンスの一例を示す図
【図１４】本発明の一実施形態における上位セグメント解析処理において宅内ネットワーク２の構成とＴＴＬパケットとの関係を説明する図
【図１５】本発明の一実施形態におけるＴＴＬを変化させたパケットを利用して行う上位セグメント解析処理のフローチャート
【図１６】本発明の一実施形態における上位セグメント解析処理でのＴＴＬパケット送信処理のフローチャート
【図１７】本発明の一実施形態におけるＵＤＰを用いたＴＴＬパケットの構成例を示す図
【図１８】本発明の一実施形態におけるＴＴＬパケットのＴＴＬと宛先ポート番号との対応関係の一例を示す図
【図１９】本発明の一実施形態におけるＩＣＭＰを用いたＴＴＬパケットの構成例を示す図
【図２０】本発明の一実施形態におけるＴＴＬパケットのＴＴＬとシーケンス番号との対応関係の一例を示す図
【図２１】本発明の一実施形態におけるＴＴＬ応答パケットの構成例を示す図
【図２２】本発明の一実施形態におけるＩＧＤ仕様を利用する上位セグメント解析処理が用いられる宅内ネットワーク２の構成の一例を示す図
【図２３】本発明の一実施形態におけるＩＧＤ仕様を利用する上位セグメント解析処理の一例を示すフローチャート
【図２４】本発明の一実施形態における推定ルータパケットのデータ部の一例を示す図
【図２５】本発明の一実施形態における推定ルータ応答パケットのデータ部の一例を示す図
【図２６】本発明の一実施形態におけるＧｅｔＥｘｔｅｒｎａｌＩＰＡｄｄｒｅｓｓアクション要求メッセージの一例を示す図
【図２７】本発明の一実施形態におけるＧｅｔＥｘｔｅｒｎａｌＩＰＡｄｄｒｅｓｓアクション応答メッセージの一例を示す図
【図２８】本発明の一実施形態における推定ルータパケットの送信先アドレスの一例を示す図
【図２９】本発明の一実施形態におけるユーザによる接続許可の確認を行う場合の中継機能付き通信機器４ａ〜４ｃの動作の一例を示すフローチャート
【図３０】本発明の一実施形態におけるユーザによる接続許可の確認を行う場合の中継機能を持たない通信機器５ａ〜５ｃ動作の一例を示すフローチャート
【図３１】従来の複数のルータで構成された宅内ネットワーク５２の構成の一例を示す図
【符号の説明】
【０２５７】
１    インターネット
２    宅内ネットワーク
３ａ〜３ｃ    ルータ
４ａ〜４ｃ    中継機能付き通信機器
４１    通信Ｉ／Ｆ部
４１１    アドレス情報部
４２    中継通信部
４２１    上位セグメント判断部
４２２    上位セグメント情報部
４２３    中継機能探索・応答部
４２４    メッセージ中継部
４２５    端末通信路保持部
４２６    通信路情報部
４２７    サーバ通信路保持部
４２８    中継機能情報部
４３    端末アプリ部
５ａ〜５ｃ    中継機能を持たない通信機器
５１    通信Ｉ／Ｆ部
５１１    アドレス情報部
５２    中継通信部
５２１    上位セグメント判断部
５２２    上位セグメント情報部
５２７    サーバ通信路保持部
５２８    中継機能情報部
５３    端末アプリ部
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正の内容】
【図１】
2007114251.tif 000034
【図２】
2007114251.tif 000035
【図３】
2007114251.tif 000036
【図４】
2007114251.tif 000037
【図５】
2007114251.tif 000038
【図６】
2007114251.tif 000039
【図７】
2007114251.tif 000040
【図８】
2007114251.tif 000041
【図９】
2007114251.tif 000042
【図１０】
2007114251.tif 000043
【図１１】
2007114251.tif 000044
【図１２】
2007114251.tif 000045
【図１３】
2007114251.tif 000046
【図１４】
2007114251.tif 000047
【図１５】
2007114251.tif 000048
【図１６】
2007114251.tif 000049
【図１７】
2007114251.tif 000050
【図１８】
2007114251.tif 000051
【図１９】
2007114251.tif 000052
【図２０】
2007114251.tif 000053
【図２１】
2007114251.tif 000054
【図２２】
2007114251.tif 000055
【図２３】
2007114251.tif 000056
【図２４】
2007114251.tif 000057
【図２５】
2007114251.tif 000058
【図２６】
2007114251.tif 000059
【図２７】
2007114251.tif 000060
【図２８】
2007114251.tif 000061
【図２９】
2007114251.tif 000062
【図３０】
2007114251.tif 000063
【図３１】
2007114251.tif 000064
【国際調査報告】
2007114251.tif 000065
2007114251.tif 000066