(57)【要約】【課題】ネットワークに接続されたデバイスが、該ネットワークからの離脱を示すメッセージを送信できずにネットワークから離脱したような場合であっても、速やかに該デバイスが離脱したことを認識可能とする。【解決手段】ネットワークに接続されるデジタルテレビ302は、ネットワークを介して通信可能に接続されたビデオカメラ300からネットワーク上へ発信される通知に基づいて、該ビデオカメラ300の該ネットワークへの接続を登録する。この登録は、当該ビデオカメラ302から第１の時間間隔（有効期間の間隔）でネットワーク上へ発信される通知に基づいて更新される。デジタルテレビ302では、第１の時間間隔よりも短い第２の時間間隔を第１タイマに設定することにより、該第２の時間隔よりも短い時間間隔でビデオカメラ300から所定の通知（ssdp:alive）が受信されているかを判定する。第１タイマがタイムアップした場合は、サーチリクエストによるビデオカメラ300の接続状態の確認が行なわれる。【選択図】  図４
2006005476.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続される通信装置であって、
前記ネットワークを介して通信可能に接続された外部装置から前記ネットワーク上へ発信される通知に基づいて該外部装置の該ネットワークへの接続を登録する登録手段と、
前記外部装置から第１の時間間隔で前記ネットワーク上へ発信される通知に基づいて、該外部装置の前記登録を維持する登録更新手段と、
前記第１の時間間隔よりも短い第２の時間間隔を設定し、該第２の時間隔よりも短い時間間隔で前記外部装置から所定の通知が受信されているかを判定する判定手段と、
前記判定手段による判定結果に基づいて前記外部装置の前記ネットワークへの接続を確認する確認手段とを備えることを特徴とする通信装置。
【請求項２】
前記確認手段は、前記第２の時間間隔よりも短い時間間隔で前記外部装置から前記所定メッセージが受信されていない場合に、前記外部装置との間で所定メッセージのやりとりを試み、該試みが失敗に終わった場合に該外部装置が非接続状態になったものと判断することを特徴とする請求項１に記載の通信装置。
【請求項３】
前記登録手段で登録された前記外部装置を示す表示を実施し、該表示の形態を、前記確認手段による前記外部装置の前記ネットワークへの接続の確認結果に基づいて変更する表示制御手段を更に備えることを特徴とする請求項１又は２に記載の通信装置。
【請求項４】
前記登録手段は、前記外部装置が前記ネットワークへの接続を確立した際に該ネットワーク上へ発信されるメッセージに基づいて該外部装置の該ネットワークへの接続を登録することを特徴とする請求項１に記載の通信装置。
【請求項５】
前記登録手段は、前記判定手段で利用される前記所定の通知に基づいて該外部装置の該ネットワークへの接続を登録することを特徴とする請求項１に記載の通信装置。
【請求項６】
前記メッセージの受信間隔を計時する計時手段と、
前記計時手段による受信間隔の計時結果に基づいて前記第２の時間間隔を算出する算出手段とを更に備えることを特徴とする請求項１に記載の通信装置。
【請求項７】
前記算出手段は、前記計時結果から算出される平均値、統計的中央値、統計的最頻値のいずれかに基づいて前記第２の時間間隔を決定することを特徴とする請求項６に記載の通信装置。
【請求項８】
前記算出手段は、前記計時結果の分散から算出される値、標準偏差から算出される値、レンジから算出される値のいずれかを加味して前記第２の時間間隔を決定することを特徴とする請求項７に記載の通信装置。
【請求項９】
ネットワークに接続される通信装置における制御方法であって、
前記ネットワークを介して通信可能に接続された外部装置からの通知に基づいて、該外部装置の該ネットワークへの接続を登録する登録工程と、
前記外部装置から第１の時間間隔で送信される通知に基づいて、該外部装置の前記登録を維持する登録更新工程と、
前記第１の時間間隔よりも短い第２の時間間隔を設定し、該第２の時間隔よりも短い時間間隔で前記外部装置から所定の通知が受信されているかを判定する判定工程と、
前記判定工程による判定結果に基づいて前記外部装置の前記ネットワークへの接続を確認する確認工程とを備えることを特徴とする制御方法。
【請求項１０】
ネットワークに第１装置と第２装置が接続された通信システムであって、
前記第２装置より前記ネットワーク上へ発行された通知に基づいて、前記第１装置により該第２装置の該ネットワークへの接続を登録する登録手段と、
前記第２装置から第１の時間間隔で前記ネットワーク上へ送信される通知に基づいて、該第２装置の前記登録を維持する登録更新手段と、
前記第２装置より所定の時間間隔で所定の通知を送信する送信手段と、
前記第１装置において、前記第１の時間間隔よりも短い第２の時間間隔を設定し、該第２の時間隔よりも短い時間間隔で前記第２装置から前記所定の通知が受信されているかを判定する判定手段と、
前記第１装置において、前記判定手段による判定結果に基づいて前記第２装置の前記ネットワークへの接続を確認する確認手段とを備えることを特徴とする通信システム。
【請求項１１】
請求項９に記載の制御方法をコンピュータに実行させるための制御プログラム。
【請求項１２】
請求項９に記載の制御方法をコンピュータに実行させるための制御プログラムを格納した記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御信号とデータを混在させて通信することが可能な通信路を用いて電子機器間を接続し通信を行うための通信装置、方法、及びシステムに関する。
【背景技術】
【０００２】
現在、デジタルインターフェースを有するデジタル機器が多く存在している。この種のデジタル機器はデジタルインターフェースを介して接続され、ネットワークを構築する。しかしながら、従来は１種類のインターフェイスで１つのネットワークが構築され、異なる種類のインターフェイスを１つのネットワークとして構築することは困難であった。
【０００３】
この問題を解決するために、現在UPnP（Universal Plug and Play）が提唱されている（例えば、非特許文献１を参照） 。UPnPではIP（InternetProtocol）を使用して、異なるインターフェイス間での通信を行い１つのネットワークを構築することができる。
【０００４】
図９に、複数の異なるインターフェイスを用いて接続された、UPnPのネットワークの構成例を示す。図９においては有線インターフェイスであるIEEE1394、Power Line、Home PNAと無線インターフェイスである802.11bを用いて複数の機器が接続され、１つのUPnPネットワークを構成している。
【０００５】
UPnPでは機器が有する機能をサービスとして定義しており、UPnPネットワーク上には大きく分けてサービスを提供する「デバイス」とデバイスの制御を行う「コントロールポイント」の２つの機器が存在する。例えば図１６においては、PC1、PC2、NotePC及びDTVがコントロールポイントとなってDVCRデバイスの制御を行うことができる。なお、PC1、PC2は夫々パーソナルコンピュータ、Note PCはノートパソコン、DTVはデジタルテレビ、DVCRはデジタルビデオカメラを表す。
【０００６】
UPnPにおいて、デバイス及びコントロールポイントはSSDP（Simple Service Discovery Protocol）を用いてサービス等の通知及び検出を行う。このサービス等の通知はdiscoverymessageの送信によって行われ、discovery messageはXML（Extensible Markup Language）を用いて記述される。
【０００７】
デバイスはUPnPネットワークに接続されるとネットワーク上に存在するDHCPサーバからIPアドレスを取得し、そのデバイスの種類とデバイスが有するサービスをネットワーク上にssdp:aliveメッセージとしてマルチキャスト送信する。例えばデバイスがVTRの機能を有する場合、当該デバイスは対応している記録メディアの種類や記録フォーマット、再生機能などの情報をXMLで記述して送信する。対応している記録メディアや記録フォーマットなどの情報は状態変数として定義され、再生機能などの機器の動作を行うための機能はアクションとして定義される。デバイスがUPnPネットワークから切断される場合は、切断されることを通知するssdp:bye-byeメッセージをマルチキャスト送信することが推奨されている。ssdp:aliveメッセージにはこのssdp:aliveメッセージで通知されたデバイスやサービスが有効である期間が記述されており、ssdp:bye-byeメッセージを送信しない場合は、コントロールポイントは受信した有効期間が経過することで対応するサービス等を無効化する。
【０００８】
またコントロールポイントがネットワークに接続されると、当該コントロールポイントはネットワーク上のDHCPサーバからIPアドレスを取得し、制御可能なデバイスからサービスが通知されるのを待つか、必要なサービスのサーチのリクエストをネットワーク上にマルチキャスト送信することによってデバイスを検出する。UPnPネットワーク上の各デバイスは、このサーチのリクエストを受信し、そのサーチ対象のサービスを有するデバイスがコントロールポイントに対してレスポンスを送信する。
【０００９】
こうして必要なサービスを取得したコントロールポイントは、デバイスに対して状態変数の問い合わせや、アクションの要求を行う。この問い合わせやアクションの要求は、HTTPリクエストを用いてコントロールポイントからデバイス送信され、その結果はHTTPレスポンスを用いてデバイスからコントロールポイントに送信される。
【非特許文献１】Universal Plug and Play Device Architecture, Version 1.0, 08 Jun2000
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、上記従来例においては、ssdp:aliveメッセージで通知されたデバイスやサービスが有効である期間が1800秒（30分）よりも大きい値を指定するようになっている。したがって、突然の電源断などによってデバイスがssdp:bye-byeメッセージを送信できずにネットワークから離脱したような場合、最悪の場合、30分間はコントロールポイントによってその離脱が認識されないといった問題点があった。また、コントロールポイントがアイコンなどの接続状態を表示している場合、その表示が最悪の場合30分間継続してしまい、適切に現在の接続状態を示すことができないといった問題点があった。
【００１１】
本発明は、上記問題点を解決するためになされたもので、ネットワークに接続されたデバイスが、該ネットワークからの離脱を示すメッセージを送信できずにネットワークから離脱したような場合であっても、速やかに該デバイスが離脱したことを認識可能とすることを目的とする。
【課題を解決するための手段】
【００１２】
上記の目的を達成するための本発明による通信装置は以下の構成を備える。すなわち、
ネットワークに接続される通信装置であって、
前記ネットワークを介して通信可能に接続された外部装置から前記ネットワーク上へ発信される通知に基づいて該外部装置の該ネットワークへの接続を登録する登録手段と、
前記外部装置から第１の時間間隔で前記ネットワーク上へ発信される通知に基づいて、該外部装置の前記登録を維持する登録更新手段と、
前記第１の時間間隔よりも短い第２の時間間隔を設定し、該第２の時間隔よりも短い時間間隔で前記外部装置からメッセージが受信されているかを判定する判定手段と、
前記判定手段による判定結果に基づいて前記外部装置の前記ネットワークへの接続を確認する確認手段とを備える。
【発明の効果】
【００１３】
本発明によれば、ネットワークに接続されたデバイスが該ネットワークからの離脱を示すメッセージを送信できずにネットワークから離脱したような場合であっても、速やかに該デバイスが離脱したことを認識することができる効果がある。従って、例えば、ネットワークに接続された機器間の接続が切断した場合には、速やかに、その切断した状態を表示に反映させることが可能となる。
【発明を実施するための最良の形態】
【００１４】
以下、添付の図面を参照して本発明の項的な実施形態について説明する。
【００１５】
＜第１実施形態＞
以下に、図１を参照して、本発明の第１実施形態に係る通信装置の一例であるデジタルビデオカメラについて説明する。なお、本発明の第１実施形態に係る通信装置は、デジタルビデオカメラに限らず、デジタルカメラ、デジタルカメラ付き情報端末（デジタルカメラ付き携帯電話を含む）等の装置であってもよい。図１において701はマイク、702は音声信号処理部、703はレンズ部、704はＣＣＤなどのイメージセンサ、705はカメラ信号処理部、706は圧縮伸張部、707は記録再生処理部、708は記録再生ヘッド、709は磁気テープなどの記録媒体、710はストリーム処理部、711はデジタルインターフェース部（以下、DIF部と称する）、712は中央演算処理部（以下、ＣＰＵと称する）、713は無線回路（以下RF回路と称する）、714はアンテナである。
【００１６】
上記構成のデジタルビデオカメラの動作について説明する。マイク701を通して音声信号処理部702に入力された音声信号は圧縮伸張処理部706に入力される。また、レンズ部703により結像され、ＣＣＤ704から出力される画像信号は同様に圧縮伸張処理部706に入力される。撮影動作時には圧縮伸張処理部706は入力された画像信号及び音声信号の圧縮動作を行う。圧縮伸張処理部706では例えば、記録媒体記録用にDV圧縮処理、DIF出力用にMPEG-4の圧縮処理が施される。圧縮された画像信号及び音声信号は記録再生処理部707において、記録処理が施された後、ヘッド708を介して記録媒体709に記録される。また、圧縮された画像信号及び音声信号を外部へ無線出力する場合は、圧縮された画像信号及び音声信号はパケット化されるべくストリーム処理部710に入力され、それぞれ、パケット化された後、DIF部711、RF回路713、及びアンテナ714を介して外部に出力される。
【００１７】
また、再生動作時には圧縮伸張処理部706は伸張動作を行う。例えば、記録媒体709にはDV圧縮処理が施されたデータが記録されているものとすると、ヘッド708によって再生されたDV信号は記録再生処理部707によって再生処理を施され、圧縮伸張処理部706においてDV伸張処理が行われる。DV伸張処理後の画像信号は、不図示の表示装置（例えば当該ビデオカメラが有する表示パネル）に送られて表示される。また、外部に再生画像を送信する場合には、圧縮伸張処理部706において例えばDIF出力用にMPEG-4の圧縮処理が施される。MPEG-4圧縮された画像信号はパケット化されるべくストリーム処理部710に入力され、それぞれ、パケット化された後、DIF部711、RF回路713、及び、アンテナ714を介して外部に出力される。本実施形態のデジタルビデオカメラにおいては、DIF部710及びRF回路713は、例えば、IEEE802.11a規格によって公知の無線ＬＡＮ技術を用いたデジタルインターフェース（DIF）である。なお、この無線ＬＡＮ技術に、IEEE802.11b、IEEE802.11gなど他の規格を用いてもかまわないことは言うまでも無い。
【００１８】
次に図２を用いて、本実施形態に係るデジタルテレビジョン装置（以下、デジタルテレビと称する）について説明する。図２において、無線周波（ＲＦ）信号がチューナ402のＲＦ入力端子400に供給される。チューナ402はチューナ制御ユニット404の制御を受けて個別の信号を選択する。制御ユニット404は信号線403を介してチューナ402に同調制御信号を供給し、制御母線403'を介して帯域切換え信号を供給する。チューナ制御ユニット404はマイクロプロセッサ410により制御される。マイクロプロセッサ410は、コントローラまたはマイクロコンピュータであり、中央演算処理ユニット（ＣＰＵ）412、読出し専用メモリ（ＲＯＭ）414およびランダム・アクセス・メモリ（ＲＡＭ）416を含んでいる。マイクロプロセッサ410は使用者が入力する制御信号を入力スイッチ（ＳＷ）420と赤外線（ＩＲ）受信機422から受信する。ＩＲ受信機422はリモートコントロール送信機425から送信されるリモートコントロール信号を受信し復号化する。
【００１９】
チューナ402は中間周波（ＩＦ）の信号を発生し、これを処理ユニット430に供給する。処理ユニット430はビデオＩＦ（ＶＩＦ）増幅段、ＡＦＴ回路、ビデオ検波器および音声ＩＦ（ＳＩＦ）増幅段より成る。処理ユニット430はベースバンドのビデオ信号（ＴＶ）および音声搬送波信号を発生する。音声搬送波信号は、音声検波器とステレオ・デコーダを含む音声信号処理回路435に供給される。音声信号処理回路435は左右のベースバンド音声信号を発生し、これらを１対のスピーカ438に供給して音声を再生する。
【００２０】
処理ユニット430から出力されたベースバンドのビデオ信号（ＴＶ）は、切換ユニット453に入力される。ビデオ入力端子442（ＡＵＸ入力）は、ベースバンドのビデオ信号を外部の信号源から受け取るために設けられる。ＡＵＸ入力端子442からの入力信号は、上述したＴＶ信号と同様に切換ユニット453に供給され、マイクロプロセッサ410からの切換信号によって、ビデオ信号処理回路455への出力が選択される。ビデオ信号処理回路455では、上記入力された信号を処理し最終的に表示装置（図示せず）のスクリーンに表示する。ビデオ信号は同期分離回路460にも供給される。同期分離回路460はビデオ信号から垂直同期信号と水平同期信号を取り出す。取り出された垂直および水平同期信号はマイクロプロセッサ410と偏向ユニット470に供給され、偏向信号を生成してヨーク構体（図示せず）に供給される。
【００２１】
マイクロプロセッサ410は、デジタルインターフェース（DIF）部495に結合される。DIF部495は、不図示のインターフェイスポートを介して外部と接続される。DIF部495は、例えば、IEEE1394を用いたデジタルインターフェースであり、外部からのコマンドがIEEE1394のAsynchronous通信方式を用いて入力可能であるとともに、映像信号がIEEE1394のIsochronous通信方式を用いて入力される。入力された映像信号はDIF部495によって適切な処理がなされ、切換ユニット453の一つの端子に入力される。上述したように、切換ユニット453は、チューナ入力、AUX入力、及びDIF部入力から一つを選択して表示させることができるようになっている。また、チューナ402からの信号はDIF部495にも入力されるようになっている。DIF部495が外部出力になるよう制御されているときには、チューナからの信号がIsochronous信号として外部に出力される。上記したAsynchronous通信方式を用いたコマンドは、マイクロプロセッサ410に入力され、該コマンドに対応した制御動作が行われるようになっている。
【００２２】
次に図３を用いて、本実施形態に係るネットワークの接続形態の例について説明する。300は本実施形態に係るデジタルビデオカメラ（ビデオカメラ）、302はデジタルテレビ、304は無線ＬＡＮのアクセスポイント（以下アクセスポイントと称する）である。上述したように、本実施形態のビデオカメラ300では、例えば、IEEE802.11a規格によって公知の無線ＬＡＮ技術を用いているので、ビデオカメラ300とアクセスポイント304との間には、配線などによる物理的な接続はなされていない。しかしながら、ビデオカメラ300とアクセスポイント304とは、無線ＬＡＮによって、相互に通信が可能となっている。一方、デジタルテレビ302とアクセスポイント304との間は、IEEE1394によって接続されており、例えば、RFC2734“IPv4 overIEEE 1394”規格を用いて相互に通信を行う。もちろん、本実施形態のデジタルテレビとアクセスポイントとは、イーサネット(登録商標）などの他の通信方式を用いて接続されていても良いことは言うまでも無い。
【００２３】
また、本実施形態では、ビデオカメラ300とデジタルテレビ302とは、例えば、公知のTCP/IPプロトコルを用いて通信を行う。このとき、アクセスポイント304はルータとしてTCP/IPパケットの経路制御を行う。UPnPに対応付けるならば、本実施形態のデジタルテレビ302はコントロールポイント（CP）として、ビデオカメラ300はAudio/Video（AV）デバイスとして、アクセスポイント304はInternetGatewayデバイス（IGD）として、それぞれ機能する。UPnPにおいて、“デバイス”は、ネットワーク上の“コントロールポイント”に対して様々なサービスを提供し、“コントロールポイント”は“デバイス”のサービスを利用して様々な制御を行うことによって様々なネットワークサービス機能を実現できるようになっている。
【００２４】
電源の投入や物理的接続の確立などによって、ネットワークへの接続がなされると、ビデオカメラ300、デジタルテレビ302、及びアクセスポイント304は、IPアドレスの獲得を試みる。これらの機器は、最初に、例えば、RFC 2131“Dynamic HostConfiguration Protocol”規格、いわゆるDHCPによって、DHCPサーバからIPアドレスを取得しようと試みる。もしも、ネットワーク上にDHCPサーバが存在しないといった理由で、DHCPによるIPアドレス取得ができなかった場合、上記機器は、インターネットのアドレス「http://www.upnp.org/download/draft-ietf-zeroconf-ipv4-linklocal-01-Apr.txt」にて公開されていて公知の、IPアドレスを決定するための“DynamicConfigurationof IPv4 link-local addresses”規格いわゆるAutoIP規格を用いて自機器のIPアドレスを決定する。
【００２５】
次に図４を用いて、本実施形態によるデータ授受の手順について説明する。図４は、ITU-T Recommendation Z.120, Message Sequence Chart規格を用いた、本実施形態によるデータ授受の動作を示すシークエンスチャートである。IPアドレスが決定されると、ビデオカメラ300は、Advertiseメッセージをネットワーク上のすべての機器に、いわゆるブロードキャストで送信する。このAdvertiseメッセージは、ssdp:alive形式のメッセージを用いており、上記の送信形態をAdvertisementと称する。該Advertisementによって、ネットワーク上のコントロールポイントは、デバイスあるいはデバイスが有するサービスが有効になったという情報や、ネットワーク上にどんなサービスやデバイスが存在するかといった情報を取得することができる。本実施形態では、コントロールポイントであるデジタルテレビ302が、例えば、ビデオカメラ300やアクセスポイント304のもつ機能情報や制御情報、あるいは、該デバイスの属性情報などを取得するようになっている。
【００２６】
次にデジタルテレビ302は、上記Advertisementによって取得した情報に基づいて、該デジタルテレビの表示面上にアイコンなどのビデオカメラ300の識別や選択をさせるための表示を行う。本実施形態のビデオカメラ300は、ssdp:aliveメッセージにより、例えばサービス有効期間が1800秒（30分）と通知するものとする。即ち、コントロールポイントであるデジタルテレビ302においては、ビデオカメラ300のサービス有効期間が1800秒（30分）に設定される。ビデオカメラ300は、この有効期間、1800秒（30分）よりも時間的に短い間隔で定期的にssdp:aliveメッセージをデジタルテレビ302に送信する。デジタルテレビ302は、このssdp:aliveメッセージを受信するたびに、ssdp:aliveメッセージの到着する時間的な間隔を測定するとともに、第１タイマをスタートさせる。第１タイマはssdp:aliveメッセージが到着する毎にリセットされる。
【００２７】
ここで、第１タイマのタイムアウト値は、初期値としてデフォルト値が設定されが、その後は上記ssdp:aliveメッセージが到着する時間的間隔の統計処理を施して得られる代表値に基いて設定される。例えば、ssdp:aliveメッセージが到着する時間的間隔の算術平均が計算され、算出された値に基づいて上記第１タイマのタイムアウト値がセットされる。なお、この値は算術平均に限らず、統計的な中央値（メディアン）や最頻値（モード）など他の代表値を用いても良い。中央値や最頻値を用いた場合は、平均値よりも測定誤りなどに起因するはずれ値に対してより動作を頑健にすることができる効果がある。また、上記動作により、コントロールポイントがssdp:aliveメッセージのタイムアウト時間を動的に設定することができるので、デバイスから送信されるssdp:aliveメッセージが、コントロールポイントへ到着する時間的間隔がデバイスによって異なっている場合においても、容易に対応可能となる効果がある。
【００２８】
通常は、上記設定された時間間隔内で、即ち第１タイマがタイムアップすることなく、ビデオカメラ300からssdp:aliveメッセージが受信される。しかしながら、ビデオカメラ300が無線LANの到達範囲から外へ出ることなどによって、ビデオカメラ300とデジタルテレビ302との通信が不可能になると、上記ssdp:aliveメッセージはデジタルテレビ302に到達しなくなるので、第１タイマはタイムアウトする。
【００２９】
第１タイマがタイムアウトすると、デジタルテレビ302は、このタイムアウト情報に基づいて、サーチメッセージをビデオカメラ300に対して送信するサーチ動作を行うとともに、第２タイマを始動させる。通常、ビデオカメラ300は該サーチ動作に対して所定時間内に応答するように構成されているが、上記同様、ビデオカメラ300が無線LANの到達範囲外である場合は、第２タイマはタイムアウトを発生させることになる。このタイムアウト情報に基づいて、デジタルテレビ302はビデオカメラ300が非接続になったものと判断し、ビデオカメラ300を示すアイコンなどの表示を消去する。上記動作により、デバイスの予期せぬネットワークからの離脱や突然の電源断などの場合においても、コントロールポイントが速やかにその状態を検出し、表示などに反映させることが可能となる。なお、上記サーチ動作は、例えば、公知のHTTPのM-SEARCHメソッドを用いたssdp:discoverメッセージによって行われる。
【００３０】
次に、上記第１タイマがタイムアウトした後、無線の到達範囲内へ戻るなどの理由により、通信状態が復帰した場合の動作について説明する。図５は、図４と同様にITU-T Recommendation Z.120, Message Sequence Chart規格を用いた、本実施形態の動作を示すシークエンスチャートである。図４と同様に、IPアドレスが決定されると、Advertiseメッセージによる情報取得、アイコン表示が行われ、ssdp:aliveメッセージの受信が開始される。即ち、ssdp:aliveメッセージを受信するたびに、ssdp:aliveメッセージの到着する時間的な間隔を測定するとともに、第１タイマをスタートさせる。
【００３１】
上述したように、ビデオカメラ300が無線LANの到達範囲から外へ出ることなどによってビデオカメラ300とデジタルテレビ302との通信が不可能になると、上記ssdp:aliveメッセージはデジタルテレビ302に到達しなくなり、第１タイマはタイムアウトする。第１タイマがタイムアウトすると、デジタルテレビ302は、このタイムアウト情報に基いてサーチメッセージをビデオカメラ300に対して送信するサーチ動作を行うとともに、第２タイマを始動させる。ここで、ビデオカメラ300が無線LANの無線エリア内へ戻った場合は、第２タイマがタイムアウトする前にサーチリクエストに対するレスポンスが受信され、第２タイマはタイムアップしない。このため、デジタルテレビ302は上述したビデオカメラ300は依然として接続状態であると認識し、ビデオカメラ300を示すアイコンなどの表示を維持する。
【００３２】
上記動作により、無線LANの到達範囲の周辺において、デバイスが無線到達可能範囲と不可能範囲とを頻繁に行き来する場合などにおいても、コントローラの表示を頑健にすることができる効果がある。なお、上記サーチ動作は、例えば、公知のHTTPのM-SEARCHメソッドを用いたssdp:discoverメッセージによって行われる。
【００３３】
次に、図６を参照して、本実施形態によるコントロールポイントの動作を説明する。図６は、本実施形態のコントロールポイの動作を示すフローチャートである。
【００３４】
ステップＳ１で動作が開始され、次のステップＳ２で初期設定が行われる。ステップＳ３では上述のAdvertiseメッセージの受信を待機し、Advertiseメッセージを受信すると、ステップＳ４において受信したAdvertiseメッセージの情報に基づきデバイスデータの解析を行う。次のステップＳ５でAdvertisementがなされたデバイスのアイコンを表示する。上記したように、本実施形態に係るデバイスは、例えば、1800秒（30分）よりも時間的に短い間隔で定期的にssdp:aliveメッセージをコントローラに送信するようになっている。次のステップＳ６では、デバイスから送信されるssdp:alive信号を待機する。
【００３５】
ssdp:alive信号を受信すると、コントロールポイントは、ステップＳ７にてTimeout値に予め定められた所定の値（デフォルト値）を設定して第１タイマを始動させる。次のステップＳ８では、第１タイマについてタイムアウトが判定される。ステップＳ８にて、第１タイマが満了していない場合には、次のステップＳ９に処理が移る。ステップＳ９において、再度、デバイスから送信されるssdp:alive信号を待機する。コントロールポイントがステップＳ９にてssdp:aliveを受信すると、次のステップＳ１０で、ssdp:alive信号の平均の受信間隔である平均到着時間を算出し、平均到着時間に基づいてTimeout値を計算して第１タイマに設定する。そして、第１タイマを再始動させ、上記ステップＳ８へ処理を戻す。なお、ステップＳ１０では、ssdp:alive信号の到着時間の平均値を算出して、Timeout値として設定しているが、上述したようにこの値は中央値（メディアン）や最頻値（モード）など他の代表値を用いても良い。
【００３６】
一方、ステップＳ９でssdp:aliveを受信していなかった場合には、ステップＳ８で第１タイマに関してタイムアウトの判定が行われる。ステップＳ８で第１タイマが満了し、タイムアウトを発生させていた場合、次のステップＳ１１でsearch:requestをデバイスに送信してデバイスのサーチ動作を開始する。このsearch:request信号は、例えば、公知のHTTPのM-SEARCHメソッドを用いたssdp:discoverメッセージである。その後、ステップＳ１２において、Timeout値に予め定められた所定の値（デフォルト値）を第２タイマに設定して該第２タイマを始動させる。
【００３７】
次のステップＳ１３では、第２タイマについてタイムアウトが判定される。ステップＳ１３でタイムアウトしていなかった場合には、ステップＳ１４にてsearch:response信号を待機する。search:response信号は、search:request信号に対するデバイスの応答信号であり、上記サーチ動作の応答である。ステップＳ１４でsearch:response信号を受信していなかった場合にはステップＳ１３に処理が戻り、第２タイマについてタイムアウトの判定が行われる。ステップＳ１４でsearch:response信号を受信した場合、上述のステップＳ７へ処理が戻り、ssdp:alive信号の受信処理が再開される。本実施形態においては、上記ステップＳ７乃至ステップＳ１４の動作によって、短期間だけデバイスとコントローラとが通信不能になった場合においても容易に通信の再開が可能となる効果がある。一方、上記ステップＳ１３において、第２タイマがタイムアウトを発生していた場合には、次のステップＳ１５にてアイコンなどの表示が消去され、接続状態の登録も解除される。ステップＳ１６で本実施形態の動作が終了する。
【００３８】
なお、上記処理はネットワークに接続が登録されたデバイス毎に行なわれる。
【００３９】
［ssdp:aliveの説明］
上述したように、ssdp:aliveは、ネットワークに参加したデバイスから送信される、該デバイスが有効であること、あるいは、該デバイスが有するサービスの一つが有効であることを示したメッセージ信号である。デバイスがネットワークへ参加すると、該デバイスは、該デバイスが供給するサービスを、ネットワーク上のすべての機器に認識させるために、ssdp:aliveを使用する。ssdp:aliveメッセージは、例えば、SSDPマルチキャストチャネル上のGENA（GeneralEventNotification Architecture）のNOTIFYメソッドを用いて送信される。GENAはインターネットのアドレス「http://www.upnp.org/download/draft-cohen-gena-client-01.txt」で公開されている文書“GeneralEventNotification Architecture Base: Client to Arbiter”によって公知のプロトコルであるとともに、イベントメッセージの送受信を行うためのプロトコルである。GENAでは、メッセージの送受信を行う機器、あるいはデバイス等を、publisher、及び、subscriberと呼ぶ。subscriberは、イベントの発行予約に関する要求、更新、及び、解除を行う。また、publisherは、イベントの発行を行う。このようにGENAでは、イベントはpublisherからsubscriberへ送信される。また、上記SSDPは、ローカルエリアネットワーク（ＬＡＮ）上のHTTPを基礎とする資源を発見するためのプロトコルである。SSDPは、インターネットのアドレス「http://www.upnp.org/download/draft_cai_ssdp_v1_03.txt」で公開されている文書“SimpleServiceDiscovery Protocol/1.0”によって公知のプロトコルである。
【００４０】
上記したように、デバイスがネットワークに参加すると、デバイスは、SSDPサービスが存在することを、SSDPマルチキャストチャネル上のNOTIFYメソッドを用いたメッセージを送信することで公開する。該メッセージは、このメッセージがGENAメッセージであることを示すデータを、該メッセージの要求ライン上に含む。該要求ラインは、例えば、
NOTIFY * HTTP/1.1
のようになっている。
【００４１】
また、ssdp:aliveメッセージは、付加情報としてヘッダを含む。ssdp:aliveメッセージのヘッダの内容を表１に示す。
【００４２】
【表１】
2006005476.tif 000003
【００４３】
表１中の、Cache-controlヘッダによって提供される期限の満了情報は、コントロールポイントに、該コントロールポイントの持つキャッシュメモリ内に、サービスに関する情報をどのくらいの期間保持しておかなければならないかを知らせる。この期間が満了すると、コントロールポイントは、上記情報を該コントロールポイントのキャッシュから破棄しなくてはならないようになっている。上述したssdp:aliveメッセージは、期限の満了によってキャッシュメモリのエントリが削除されてしまうまえに、継続的にデバイスのサービスが使用可能であることを、コントロールポイント対して示す目的にも使用される。
【００４４】
[ssdp:discoverの説明]
上記したようにssdp:discover要求は、公知のHTTPのメソッドM-SEARCHを用いるとともに、該ssdp:discoverメッセージ中のヘッダにサーチターゲットSTを含む。クライアントは、STに該クライアントが欲するサービスの型をセットする。複数のSTヘッダを、一つのssdp:discoverメッセージ中に含むことは、許されていない。また、論理演算や名前と値のペアのような複雑なサーチも、同様にサポートされていない。ssdp:discoverメッセージの要求ラインは、例えば、Request-URIに全てのリストされる機器に対してサーチを行うことを示す“＊”を伴ったM-SEARCH要求ラインである。これは例えば、
M-SEARCH * HTTP/1.1
のようになる。
【００４５】
UPnPのコントロールポイントとデバイスとは、SSDPのＵＲＩサーチ能力を用いるが、ssdp:discoverメッセージ中のＳＴヘッダのための特別なしきたりも用いる。ssdp:discoverメッセージ中のＳＴヘッダに異なる値を設定することにより、UPnPのコントロールポイントは、全デバイス、ルートデバイス、指定されたデバイス型、指定されたサービス型などのサーチを行うことができる。表２にSSDP要求に用いられるヘッダについて示す。
【００４６】
【表２】
2006005476.tif 000004
【００４７】
一旦、サーチされたデバイスやサービスが検出されると、該ssdp:discoverメッセージに対する応答メッセージが、ssdp:discoverメッセージの送信機器に対して、直接、ユニキャストメッセージとして送信される。このとき、ssdp:discoverメッセージは、サーチされるサービスのサービス型とユニークなサービス名に加えて、期間や場所の情報を含む。表３にssdp:discoverメッセージへの応答に使用されるヘッダを示す。
【００４８】
【表３】
2006005476.tif 000005
【００４９】
UPnPのデバイスのために、USNフィールドは、はじめに送信されたssdp:discoverメッセージ内のSTヘッダに含まれている要求のタイプに依存する多数の異なるフォーマットをとる。該STヘッダのフォーマットを、以下の表４に示す。
【００５０】
【表４】
2006005476.tif 000006
【００５１】
以上説明したように、本実施形態においては、ネットワークに接続されたデバイスが、該ネットワークからの離脱を示すメッセージを送信できずにネットワークから離脱したような場合であっても、コントローラが、速やかに該デバイスが離脱したことを認識できるという効果がある。また、ネットワークに接続された機器間の接続が何らかの理由により切断された場合には、速やかに、その切断した状態を表示に反映させることが可能な機器を提供することができる。さらに、第１タイマのタイムアウト値をデバイス（アクセスポイント）からのssdp:aliveの受信間隔の計時結果に基づいて設定するので、デバイスがネットワークから離脱したか否かの判断を正確、かつ、頑健にすることができる。
【００５２】
＜第２実施形態＞
第１実施形態では、コントロールポイントが既にネットワークに接続されているところへアクセスポイントが新たに加わった場合を説明した。従って、アクセスポイントからのAdvertisementを受信することによりアクセスポイントの接続を認識することができた。しかしながら、既にアクセスポイントが接続されたネットワークへコントロールポイントが接続された場合には、アクセスポイント自身は既にネットワークに加入した状態を維持しているので、そのサービスの有効期間が満了する直前までadvertiseメッセージを発行することはない。従って、コントロールポイントがアクセスポイントの接続を認識するまでに無視できない時間差を生じてしまう。第２実施形態では、このような場合にも、速やかにアクセスポイントの接続を認識することを可能にする。
【００５３】
図７は、第２実施形態によるコントロールポイントにおける動作を示すフローチャートである。図７において、図６と同一添番は同一の処理を示す。図７では、アクセスポイントの加入の認識をssdp:aliveメッセージを用いて行なう点が図６のフローチャートとは異なる。即ち、ステップＳ１で動作が開始されると、ステップＳ２で初期設定が行われる。そして、ステップＳ６において、デバイスから送信されるssdp:alive信号を待機する。上記したように、本実施形態に係るデバイスは、例えば、1800秒（30分）よりも時間的に短い間隔で定期的にssdp:aliveメッセージをコントローラに送信するようになっている。ステップＳ４では、受信したssdp:alive信号に基づきデバイスデータの解析を行い、当該デバイスのネットワークへの接続を登録し、ステップＳ５でデバイスのアイコンを表示する。以降、ステップＳ７〜Ｓ１５により、第１実施形態で説明した動作が実行される。
【００５４】
以上のように、第２実施形態によれば、アクセスポイントから定期的に発行されるssdp:aliveメッセージを利用してネットワークへの接続認識を行なうので、実際の接続状態に則したデバイスの認識が可能となる。
【００５５】
なお、図７で説明した処理は、第１実施形態或いは第２実施形態のステップＳ１３で第２タイマがタイムアウトして非接続状態と判定されたデバイスが再びネットワークに復帰した場合にも適用できる。すなわち、コントロールポイント側で非接続状態と認定されても、デバイス自身は継続してネットワークに接続しているものと認識していることがあり、このような場合はデバイスからのAdvertisementの発行は有効期間の満了までなされない。しかしながら、図７のステップＳ２、Ｓ６、Ｓ４による一連の処理によれば、速やかにデバイスを再登録することができる。
【００５６】
＜第３実施形態＞
次に第３実施形態について説明する。第３実施形態では、第１タイマのTimeout値設定処理の変形例を示す。
【００５７】
第１及び第２実施形態では、ステップＳ１０のTimeout値設定処理において、ssdp:aliveの到着時間の平均値に基づいてTimeout値を設定した。また、平均値を用いる他に、中央値（メディアン）や最頻値（モード）など他の代表値を用いても良い旨説明した。第３実施形態では、ssdp:aliveの到着時間の分散、標準偏差、レンジから算出される値を加味してTimeout値を決める。
【００５８】
図６或いは図７のステップＳ１０において、ssdp:alive信号の平均の受信間隔である平均到着時間t1、到着間隔の標準偏差σを算出し、測定された現在の到着間隔t、それまでに測定された到着間隔の最大値tmax及び最小値tminから、例えば、次の数式にしたがってTimeout値toutを算出する。
【００５９】
【数１】
2006005476.tif 000007
【００６０】
ステップＳ１０では第１タイマのTimeout値に、このtoutを設定して第１タイマを再始動させ、ステップＳ８へ処理が戻る。
【００６１】
なお、上記ではssdp:alive信号の到着時間の平均値をt1としているが、統計的な中央値（メディアン）や最頻値（モード）など他の代表値をt1として用いても良い。また、標準偏差σの代わりに、分散、レンジ（最大値tmax及び最小値tminの差）などの尺度を用いて算出するようにしても良い。
【００６２】
以上のように、第３実施形態によれば、コントローラがssdp:aliveメッセージのタイムアウト時間を動的に設定することができ、またその設定においてはssdp:aliveメッセージの到着時間間隔を統計的に処理した値が用いられるので、より適切なタイムアウト時間が設定でき、デバイスの離脱の検出をより迅速且つ正確に行なうことができる。
【００６３】
＜他の実施形態＞
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【００６４】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００６５】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，磁気テープ，不揮発性のメモリカード，ＲＯＭなどを用いることができる。
【００６６】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００６７】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【図面の簡単な説明】
【００６８】
【図１】第１実施形態によるデジタルビデオカメラを示すブロック図である。
【図２】第１実施形態によるデジタルテレビを示すブロック図である。
【図３】第１実施形態による接続例を示す図である。
【図４】第１実施形態のデータ授受手順を示すシークエンス図である。
【図５】第１実施形態のデータ授受手順を示すシークエンス図である。
【図６】第１実施形態のコントロールポイントの動作を示すフローチャートである。
【図７】第２実施形態のコントロールポイントの動作を示すフローチャートである。
【図８】従来例を示す図である。
【図１】
2006005476.tif 000008
【図２】
2006005476.tif 000009
【図３】
2006005476.tif 000010
【図４】
2006005476.tif 000011
【図５】
2006005476.tif 000012
【図６】
2006005476.tif 000013
【図７】
2006005476.tif 000014
【図８】
2006005476.tif 000015