JP2010117778A - 通信装置、制御方法、および、プログラム - Google Patents

通信装置、制御方法、および、プログラム Download PDF

Info

Publication number
JP2010117778A
JP2010117778A JP2008288948A JP2008288948A JP2010117778A JP 2010117778 A JP2010117778 A JP 2010117778A JP 2008288948 A JP2008288948 A JP 2008288948A JP 2008288948 A JP2008288948 A JP 2008288948A JP 2010117778 A JP2010117778 A JP 2010117778A
Authority
JP
Japan
Prior art keywords
network service
network
dms
unit
determination
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2008288948A
Other languages
English (en)
Inventor
Akira Kunimatsu
亮 國松
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2008288948A priority Critical patent/JP2010117778A/ja
Publication of JP2010117778A publication Critical patent/JP2010117778A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】 ネットワークサービスと該ネットワークサービスよりも優先度の高い処理の双方を実行する場合、ネットワークサービスの処理が該ネットワークサービスよりも優先度の高い処理に影響を与えてしまう。
【解決手段】 所定のネットワークサービスよりも優先度の高い処理に関する情報に基づいて該ネットワークサービスを停止するかを判定する。さらに、該判定に応じてネットワークサービスの停止をネットワーク上の他の装置に通知する。
【選択図】 図6

Description

本発明は、ネットワークサービスを行う通信装置、通信装置の制御方法、および、プログラムに関する。
従来、家電ネットワークシステムにおいて、機器間でコンテンツ(画像や映像など)の相互利用を可能とするためのDLNAガイドラインが提案されている。DLNAとはDigital Living Network Allianceの略である(http://www.dlna.org/)。
DLNAガイドラインにおいては、ネットワークサービスを提供するデジタルメディアサーバー(DMS)と、ネットワークサービスを受けるデジタルメディアプレイヤー(DMP)とが定義されている。
DMSとはDigital Media Serverの略である。また、DMPとはDigital Media Playerの略である。
ここで、ネットワークサービスとは、例えばDMSがコンテンツ(画像データや映像データ)をDMPに提供するサービスや、DMPがDMSからコンテンツを取得するサービスである。
また、ネットワークサービスと該ネットワークサービスよりも優先度の高い処理の双方を実行する装置がある。ここで、該ネットワークサービスよりも優先度の高い処理とは、例えばデジタルカメラにおける撮影や画像閲覧等である。
特許文献1には、装置の機器構成の変化により装置が提供可能なネットワークサービスが変化した場合、装置がデバイスディスクリプションを編集し、ネットワークに広告する構成が開示されている。
特開2005−182481号公報
しかし、従来においては、ネットワークサービスと該ネットワークサービスよりも優先度の高い処理の双方を実行する場合、ネットワークサービスの処理が該ネットワークサービスよりも優先度の高い処理に影響を与えてしまうという課題があった。
本発明では上記問題点を鑑み、ネットワークサービスよりも優先度の高い処理を実行する装置において、優先度の高い処理に関する情報に応じてネットワークサービスの停止をネットワーク上の他の装置に通知することを目的とする。
前述の課題を解決するために、通信装置であって、所定のネットワークサービスを実行する第1の実行手段と、前記第1の実行手段により実行されるネットワークサービスよりも優先度の高い処理を実行する第2の実行手段と、前記第2の実行手段により実行される処理に関する情報に基づいて、前記第1の実行手段によるネットワークサービスを停止するかを判定する判定手段と、前記判定手段による判定に応じて、前記第1の実行手段により実行しているネットワークサービスの停止をネットワーク上の他の装置に通知する通知手段とを備えることを特徴とする。
本発明によれば、ネットワークサービスよりも優先度の高い処理を実行する装置において、優先度の高い処理に関する情報に応じてネットワークサービスの停止をネットワーク上の他の装置に通知することができる。
<実施形態1>
本実施形態において、サービス提供装置は優先度の高い処理に関する情報としてバッファメモリに書き込まれたデータのサイズ情報を用いる。
まず、本実施形態における、サービス提供装置およびサービスを利用するクライアント装置の接続関係(システム構成)を、図1を用いて説明する。
図1において、101は本実施形態における通信装置としてのサービス提供装置である。サービス提供装置とは、例えばデジタルカメラやビデオカメラ、コンテンツサーバである。102は、サービス提供装置101が提供するネットワークサービスを利用するクライアント装置である。クライアント装置とは、例えばテレビやプリンタである。なお、クライアント装置は複数あっても構わない。103は、ローカルエリアネットワーク(LAN)である。
サービス提供装置101は、DLNAにより規定されるDMSの機能を用いてネットワークサービスを行う。DMSの機能は、ソフトウェアモジュールとしてサービス提供装置101の内部に含まれている。DLNAでは、主にUPnPTMで定められたプロトコルを用いてネットワークサービスを行う。UPnPとはUniversal Plug and Playの略である。
本実施形態においては、サービス提供装置101としてデジタルカメラを例に説明するが、本発明はこれに限らず適用可能である。
なお、DMSの機能をハードウェアとして装置内部に含んでいてもよいし、外部モジュールとして機能を提供されていてもよい。
サービス提供装置101のハードウェア構成図を図2に示す。
図2において、201はDMSによるサービス制御(ネットワークサービスの機能の起動や停止など)等を実現するCPUである。202は、撮影や画像処理等の機器機能を実現するデジタルカメラ部である。デジタルカメラ部202は、後述するバッファメモリ等を内部に含んでいる。203は、表示器および操作キーを含む操作部である。
204は、CPU201が読み出してDMSによるサービス制御等を実現するためのプログラムなどが記憶されたメモリである。205は、サービス提供装置101をLAN103と接続するための通信インターフェイスである。206はバスである。
デジタルカメラ部202のハードウェア構成図を図3に示す。
301は、被写体を撮影する撮影部である。302は、撮影部301による撮影が行われると、画像データを生成する画像データ生成部である。
303は、画像データ生成部302のワーキングメモリとして使用される高速に読み書きが可能なバッファメモリである。画像データ生成部302は、生成した画像データをバッファメモリ303に書き出す。
画像データ生成部302が撮影した画像データを高速に読み書きが可能なバッファメモリに書き出すことで、デジタルカメラは高速に連続撮影を行うことが可能となる。
304は、画像データを格納するストレージである。CPU201は、バッファメモリ303に書き出された画像データをストレージ304に書き込む。CPU201は、ストレージ304への書き込みが終了すると、バッファメモリ303から該画像データを削除する。
図4は、サービス提供装置101のソフトウェアモジュールを示したブロック図である。これらのモジュールは、CPU201がメモリ204のプログラムを読み出して実行することにより実現される。
401は、デジタルカメラ部202の利用状態を取得するカメラ状態検知モジュールである。カメラ状態検知モジュール401は、バッファメモリ303に書き込まれている画像データの総サイズを取得する機能を含む。
バッファメモリ303に書き込まれている画像データの総サイズは、例えば図5に示すように変化する。
図5において、t501は連続撮影を開始する時である。t502は、連続撮影を開始した後、画像データの総サイズが閾値である128メガバイト以上となった時である。該閾値は、ネットワークサービスを行うかどうかを判定する判定基準として用いる値である。
t503は、CPU201がストレージ304に画像データを書き出し、画像データの総サイズが閾値である128メガバイト未満となった時である。t504は、ストレージ304への書き込みが完了する時である。
図4の説明に戻る。
402は、画像データの総サイズに基づいて、ネットワークサービスを行うかどうかを判定するカメラ状態判定モジュールである。
403は、ネットワークサービスの機能を含むDMSである。404は、DMS403の動作制御を行うDMSコントローラである。
次に、本実施形態におけるクライアント装置102について説明する。本実施形態において、クライアント装置102はDLNAにより規定されるDMP(Digital Media Player)を実装したパーソナルコンピュータである。
なお、図2乃至図5に示した全ての機能ブロックは、ソフトウェアもしくはハードウェア的に相互関係を有するものである。また、上記機能ブロックは一例であり、複数の機能ブロックが1つの機能ブロックを構成するようにしてもよいし、何れかの機能ブロックが更に複数の機能を行うブロックに分かれてもよい。
図6は、CPU201がメモリ204に記憶されたプログラムを読み出して実行するフローチャートである。
ステップS701において、CPU201の指示によりカメラ状態検知モジュール401はバッファメモリ303にデータの書き込みもしくは削除のイベントが発生したかどうかを判定する。イベントが発生した場合には、ステップS702に進む。なお、本実施形態において、該イベントの優先度はDMS403の行うネットワークサービスの優先度よりも高い。
ステップS702において、CPU201の指示によりカメラ状態検知モジュール401はバッファメモリ303に書き込まれたデータの総サイズ情報を取得する。ここでは、総サイズ情報として152000002バイトであることを示す情報を取得したとする。ここで、総サイズとは画像データ生成部302が生成した画像データのうち、ストレージ304にまだ書き込まれていないデータの総量である。
ステップS703において、CPU201の指示によりカメラ状態判定モジュール402は該状態情報から、バッファメモリ303に書き込まれている画像データの総サイズが、閾値以上であるかどうかの判定を行う。該判定により、閾値以上であると判定された場合にはステップS704に進む。また、閾値未満であると判定された場合にはステップS707に進む。
ここで、DLNAの規定によりDMSが受けたSOAPリクエストに対する応答は30秒以内にしなければならない。SOAPとはSimple Object Access Protocolの略である。SOAPは、UPnPTMで定められたプロトコロルの1つであり、SOAP内に外部装置へのメッセージを記述することで、外部装置に所定の動作を行わせることができる。
また、総サイズが128メガバイト以上の画像データをストレージ304に書き込むためには、30秒以上の処理時間を要することとする。
そのため、ここでは閾値として128メガバイトを用いる。なお、総サイズが128メガバイト以上の画像データは、デジタルカメラで高速の連続撮影を行った場合に生じる可能性がある。
このような閾値を設けることによって、CPU201はSOAPリクエストに対する応答処理によって中断されることなく、ストレージ304への書き込み処理を行うことができる。
ここでは、バッファメモリ303に書き込まれている画像データの総サイズが152000002バイトであり、閾値は128メガバイトであるので、閾値以上であると判定され、ステップS704に進む。
ステップS704において、CPU201の指示によりDMSコントローラ404は、DMS403がネットワークサービスを提供中であるかどうか判定する。ここで、提供中とはサービス提供装置101がUPnPTMで定められたプロトコロルの1つであるSSDPで規定されたaliveメッセージをネットワーク上のクライアント装置102に通知した後の状態である。該状態には、クライアント装置102からのDLNAを用いた要求を待機している状態を含む。なお、コンテンツをクライアント装置102に実際に提供(送信)している状態も含まれる。なお、SSDPとは、Simple Service Description Protcolの略である。
DMS403がネットワークサービスを提供中である場合は、ステップS705に進む。
ステップS705において、CPU201の指示によりDMS403は利用不可能メッセージをネットワーク上のクライアント装置102に通知する。該利用不可能メッセージには、UPnPTMで定められたプロトコロルの1つであるSSDPで規定されたbyebyeメッセージを用いる。
byebyeメッセージを受信したクライアント装置102は、自身のサーバーリストからサービス提供装置101のDMSを削除する。これにより、クライアント装置102はDLNAを用いた要求をサービス提供装置101に送らなくなる。従って、サービス提供装置101はコンテンツ提供等のサービスを行わなくて良いようになる。
以上のようにして、サービス提供装置101は優先度の低い処理に影響されることなく、優先度の高い処理を実行することが可能となる。
ステップS706において、CPU201の指示によりDMSコントローラ404はDMS403を停止する。
このように、利用不可能メッセージをネットワーク上のクライアント装置102に通知した後にDMSを停止することで、クライアント装置がDMSを停止したサービス装置にアクセスすることを防ぐことができる。
一方、ステップS704において、DMS403がネットワークサービスを提供中でない(即ち、停止中)と判定された場合は、サービス提供装置101はメッセージを送らない。このように、DMSの状態が変化しない場合には、サービス提供装置はメッセージを送らないので、ネットワークの負荷を軽減することができる。
次に、ステップS703において、バッファメモリ303に書き込まれている画像データの総サイズが、閾値(ここでは、128メガバイト)未満であった場合について説明する。このような場合には、ステップS707に進む。
ステップS707において、CPU201の指示によりDMSコントローラ404は、DMS403がネットワークサービスを提供中であるかどうか判定する。DMS403がネットワークサービスを提供中である場合は、ステップS708に進む。
ステップS708において、DMSコントローラ404はDMS403を起動することにより、DMS403は提供中の状態に移行する。
さらにステップS709において、CPU201の指示によりDMS403は利用可能メッセージをネットワーク上のクライアント装置102に通知する。該利用可能メッセージには、UPnPTMで定められたプロトコロルの1つであるSSDPで規定されたaliveメッセージを用いる。
このように、DMSを起動した後に利用可能メッセージをネットワーク上のクライアント装置102に通知することで、クライアント装置がDMSを停止したサービス装置にアクセスすることを防ぐことができる。
一方、ステップS707において、DMS403がネットワークサービスを提供中であると判定された場合は、サービス提供装置101はメッセージを送らない。このように、DMSの状態が変化しない場合にはサービス提供装置はメッセージを送らないので、ネットワークの負荷を軽減することができる。
図7は、サービス提供装置101とクライアント装置102の動作を示すシーケンスチャートである。
時刻t501において、サービス提供装置101が連続撮影を始めた。画像データ生成部302は、連続撮影した画像データをバッファメモリ303に書き込み、その総サイズは152000002バイトとなる。その際、時刻t502において画像データの総サイズが閾値である128メガバイト以上となる。
従って、CPU201はステップステップS704〜S706を実行する。即ち、サービス提供装置101はDMS利用不可能メッセージをクライアント装置102に通知し、さらにDMS403を停止する。
クライアント装置102は、サービス提供装置101のDMS利用不可能メッセージを受信し、自身のサーバーリストからサービス提供装置101のDMSを削除する。
その後、時刻t503において、CPU201がストレージ304に画像データを書き出したことで、画像データの総サイズが閾値である128メガバイト未満となる。
従って、CPU201はステップS707〜S709を実行する。即ち、DMSコントローラ404はDMS403を起動し、さらにサービス提供装置101はDMS利用可能メッセージをクライアント装置102に通知する。
クライアント装置102は、サービス提供装置101のDMS利用可能メッセージを受信し、自身のサーバーリストにサービス提供装置101のDMSを追加する。
時刻t504において、CPU201は、バッファメモリ303からストレージ304への時刻t501で撮影した画像データの書き込みを完了する。
次に、時刻t801において、サービス提供装置101が1枚の単撮影を実施する。画像データ生成部302は、連続撮影した画像データをバッファメモリ303に書き込み、その総サイズは4000000バイトである。
この場合、カメラ状態判定モジュール402はバッファメモリ303に書き込まれている画像データの総サイズを閾値未満と判定する。従って、CPU201はステップS707を実行する。即ち、サービス提供装置101はDMS利用不可能メッセージの通知を行わず、DMS403はネットワークサービスを提供したままである。
一方、クライアント装置102は、サービス提供装置101からのメッセージを受信しないので処理は発生しない。
次に、時刻t802において、CPU201は、バッファメモリ303からストレージ304への時刻t801で撮影した画像データの書き込みを完了する。該書き込みが完了すると、バッファメモリ303に書き込まれている画像データの総サイズは閾値未満となる。従って、CPU201はステップS707を実行する。即ち、サービス提供装置101はDMS利用不可能メッセージの通知を行わず、DMS403はネットワークサービスを提供したままである。
一方、クライアント装置102は、サービス提供装置101からのメッセージを受信しないので処理は発生しない。
図7において、サービス提供装置101は2度の撮影処理を行っている。しかし、CPU201がカメラ状態判定モジュール402及び、DMSコントローラ404に上述のフローチャートに示す方法を実施させることにより、DMS403が停止するのは1回のみとなる。
以上のようにして、サービス提供装置の処理リソースの情報に基づいてネットワークサービスを提供するか否かを変更することができる。
また、DMSが頻繁に停止することがないので、該DMSを利用するクライアント装置のユーザの利便性が向上する。
以上、本実施形態によれば、優先度の高いディスクアクセスによる処理負荷が重い場合に、優先度の低いネットワークサービスであるDMSを停止させる。
これにより、クライアント装置に通知するメッセージによるネットワークトラフィックの増加を軽減することができる。また、クライアント装置の処理負荷を軽減することができる。さらに、サービス提供装置の処理負荷が重い場合にはDMSを停止させることでサービス提供装置の主たる機器機能を優先させることができる。
さらには、サービス提供装置を本実施形態の構成とすることで、サービスの提供と停止を切替えることができる。これにより、ユーザは手動でサービスの提供と停止を切替える必要がなくなるため、ユーザの利便性が向上する。
<実施形態2>
第2の実施形態において、サービス提供装置は優先度の高い処理に関する情報として、機器機能の処理(画像の拡大、縮小等)に関する情報を用いる。
本実施形態のサービス提供装置101およびサービスを利用するクライアント装置102の接続形態は、実施形態1と同じである。さらに、サービス提供装置101の一例としてのデジタルカメラの構成(図2乃至図4)および、クライアント装置の構成(図6)も実施形態1と同じである。
本実施形態のサービス提供装置101のデジタルカメラ部202は、操作部203を用いてストレージ304に格納されている画像データを表示する機能を有する。さらに、デジタルカメラ部202は、操作部203のキー操作により、画像を拡大または縮小して表示する機能を有する。
本実施形態のカメラ状態検知モジュール401は、画像の拡大または縮小を行うキー操作のイベントが発生したことを検知する機能を含む。
また、本実施形態のカメラ状態判定モジュール402のソフトウェアモジュール構成を図8に示す。
901は、イベントが発生したタイムポイントを取得するタイムモジュールである。該タイムポイントは、サービス提供装置101内の不図示の時計から得られる時刻であっても良いし、サービス提供装置101内の不図示のカウンタから得られる数値であっても良い。
902は、タイムモジュール901で取得したタイムポイントをメモリ204に記録する記録モジュールである。
903は、CPU201の負荷を判定するCPU状態判定モジュールである。
本実施形態では、所定の時間のうちに拡大もしくは縮小の操作が所定の回数以上含まれるかどうかに基づいて、CPU201の負荷を判定する。
図9は、CPU201がメモリ204に記憶されたプログラムを読み出して実行するフローチャートである。
ステップS1001において、CPU201の指示によりカメラ状態検知モジュール401は画像の拡大または縮小を行うキー操作のイベントが発生したかどうかを判定する。該イベントが発生した場合には、ステップS1002に進む。なお、本実施形態において、該イベントの優先度はDMS403の行うネットワークサービスの優先度よりも高い。
ステップS1002において、CPU201の指示によりタイムモジュール901はイベントが発生したタイムポイントを取得する。
ステップS1003において、CPU201の指示により記録モジュール902は、ステップS1002で取得したタイムポイントをメモリ204に記録する。
ステップS1004において、CPU201の指示によりCPU状態判定モジュール903はCPU201の負荷を判定する。ここでは、画像の拡大もしくは縮小のイベントが5秒間に1回以上ある状態が、一定時間以上(ここでは、10秒以上)続いているかどうかを基準量として判定する。このとき、CPU状態判定モジュール903は、ステップS1003においてメモリ204に記録した情報に基づいて該判定を行う。
イベントが5秒間に1回以上ある状態が、10秒以上続いている(基準量以上の操作)と判定された場合にはステップS1005に進む。一方、続いていない(基準量未満の操作)と判定された場合にはステップS1008に進む。
ステップS1005において、CPU201の指示によりDMSコントローラ404は、DMS403が動作中であるかどうか判定する。DMS403が動作中である場合は、ステップS1006に進む。
ステップS1006において、CPU201の指示によりDMS403は利用不可能メッセージをネットワーク上のクライアント装置102に通知する。該利用不可能メッセージにはbyebyeメッセージを用いる。
ステップS1007において、CPU201の指示によりDMSコントローラ404はDMS403を停止する。
このように、利用不可能メッセージをネットワーク上のクライアント装置に通知した後に、DMSを停止することで、クライアント装置がDMSを停止したサービス装置にアクセスすることを防ぐことができる。
一方、ステップS1005において、DMS403が動作中でないと判定された場合は、サービス提供装置101はメッセージを送らない。このように、DMSの動作状態が変化しない場合には、サービス提供装置はメッセージを送らないので、ネットワークの負荷を軽減することができる。
次に、ステップS1004において、イベントが5秒間に1回以上ある状態が、10秒以上続いていないと判定された場合について説明する。このような場合には、ステップS1008に進む。
ステップS1008において、CPU201の指示によりDMSコントローラ404は、DMS403が動作中であるかどうか判定する。DMS403が動作中である場合は、ステップS1009に進む。
ステップS1009において、CPU201の指示によりDMSコントローラ404はDMS403を起動する。
さらにステップS1010において、CPU201の指示によりDMS403は利用可能メッセージをネットワーク上のクライアント装置102に通知する。該利用可能メッセージにはaliveメッセージを用いる。
一方、ステップS1008において、DMS403が動作中であると判定された場合は、サービス提供装置101はメッセージを送らない。このように、DMSの動作状態が変化しない場合には、サービス提供装置はメッセージを送らないので、ネットワークの負荷を軽減することができる。
前述したように、本実施形態では、所定の時間のうちに拡大もしくは縮小の操作が所定の回数以上含まれるかどうかで、CPU201の負荷を判定する。むろん、CPU201の負荷を判定できるものであれば別の基準を用いてもかまわない。
例えば、デジタルカメラ部202がオートフォーカスを行う回数を基準としてもよい。また、CPU201の使用率が閾値以上である場合は負荷があるとしてステップS1005に進むようにしてもよい。また、撮影画像にノイズリダクション処理を行う必要がある場合は負荷があるとしてステップS1005に進むようにするなど、処理の内容を基準としてもよい。また、実施形態1のカメラ状態判定モジュール402の処理と併用して使用することもできる。
これにより、クライアント装置に通知するメッセージによるネットワークトラフィックの増加を軽減することができる。また、クライアント装置の処理負荷を軽減することができる。
さらに、サービス提供装置の優先度の高い処理の負荷が重い場合には優先度の低いDMSを停止させる。これにより、サービス提供装置の主たる機器機能を優先させることができる。
さらには、サービス提供装置を本実施形態の構成とすることで、サービスの動作と停止を切替えることができる。これにより、ユーザは手動でサービスの動作と停止を切替える必要がなくなるため、ユーザの利便性が向上する。
<実施形態3>
第3の実施形態では、優先度の異なる複数種類のネットワークサービスを実行するサービス提供装置について説明する。
サービス提供装置は優先度の高い処理に関する情報として、サービス提供装置にアクセスした装置の台数を用いる。ここで用いるサービス提供装置にアクセスした装置の台数とは、優先度の高いネットワークサービスをサービス提供装置に行わせるために、サービス提供装置にアクセスした装置の台数である。
本実施形態のサービス提供装置101およびサービスを利用するクライアント装置102の接続形態を図10に示す。1101および1102は、サービス提供装置101を遠隔操作するためのリモコン装置である。なお、リモコン装置は2台に限らず、1台であってもよいし、3台以上であっても良い。
該遠隔操作はネットワークサービスの一種であり、シャッターを切る操作や、オートフォーカス等の操作のことである。また、本実施形態の該遠隔操作はプロトコルとしてHTTPを用いて行われ、DMS403は処理に関与しない。
また、本実施形態において、該遠隔操作の優先度はUPnPTMに準拠したDMS403が行うネットワークサービスの優先度よりも高いものとする。なお、UPnPTMに準拠しDMS403が行うネットワークサービスとは、サービス提供装置101がコンテンツをクライアント装置102に提供するサービスである。
本実施形態では、サービス提供装置101の構成(図2〜図4)は実施形態1および2と同様である。以下、優先度の高い遠隔操作を行う装置としてリモコン装置1101を用いるものとして説明する。
サービス提供装置101のデジタルカメラ部202は、通信インターフェイス205を通して、リモコン装置1101からの遠隔操作を受け付け、該操作を実行する。
例えばリモコン装置1101が「http://camera/api/Release」といったURLをリクエストする。該リクエストを、通信インターフェイス205を介してカメラ状態検知モジュール401が検知する。該検知されたリクエストに基づいて、撮影部301がレリーズを実施する。このようにして、遠隔操作が実行される。
また、カメラ状態検知モジュール401は、デジタルカメラ部202への遠隔操作のためのリクエストのヘッダ情報から、アクセスしてきたリモコン装置のIPアドレスを示す「REMOTE_HOST」ヘッダの値の文字列を抽出するモジュールを含む。本実施形態のカメラ状態判定モジュール402のソフトウェアモジュール構成を図11に示す。
1201は、リモコン装置1101から、遠隔操作のためのリクエストを受け付けたタイムポイントを取得するタイムモジュールである。該タイムポイントは、サービス提供装置101内の不図示の時計から得られる時刻であっても良いし、サービス提供装置101内の不図示のカウンタから得られる数値であっても良い。
1202は、カメラ状態検知モジュール401が抽出したリモコン装置1101のIPアドレスに基づいて図12に示すデータベース1300を作成するデータベース操作モジュールである。また、データベース操作モジュール1202は、作成したデータベース1300をメモリ204に記憶する。また、データベース操作モジュール1202は、メモリ204から該記憶されたデータベース1300を読み出す。さらに、データベース操作モジュール1202は、データベース1300を監視し、書き込みから10秒以上たったデータを削除する。このように削除を行うことで、メモリの節約をすることができる。
1203は、優先度の高いネットワークサービスである遠隔操作を行うために、所定時間内にサービス提供装置にアクセスした装置の台数をカウントするネットワーク状態判定モジュールである。
図12において、1300は、優先度の高い処理を行うためにネットワークを介して該サービス装置にアクセスしたリモコン装置を示すデータベースである。列1301は、カメラ状態検知モジュール401が抽出したネットワーク上の他の装置のIPアドレスを表す。また、列1302はカメラ状態検知モジュール401がデジタルカメラ部202への遠隔操作のためのリクエストを受け付けたタイムポイントを表す。
図13は、CPU201がメモリ204に記憶されたプログラムを読み出して実行するフローチャートである。
ステップS1401において、CPU201の指示によりカメラ状態検知モジュール401は、優先度の高い操作のためのリクエストを受け付けたかどうかを判定する。該リクエストを受け付けた場合には、ステップS1402に進む。
ステップS1402において、CPU201の指示によりデータベース操作モジュール1202は、タイムモジュール1201からタイムポイントを取得する。さらに、CPU201の指示によりデータベース操作モジュール1202は、該取得したタイムポイントと共に前記リクエストを送信した他の装置のIPアドレスをメモリ204に記憶されているデータベース1300に書き込む。
ステップS1403において、CPU201の指示によりデータベース操作モジュール1202はメモリ204に記憶されているデータベース1300のタイムポイントを参照し、一定時間以上経過しているIPアドレスとタイムポイントの組があるかを判定する。
該判定により、一定時間以上経過している組がある場合には、ステップS1404に進む。一方、そのような組がない場合には、ステップS1405に進む。
ステップS1404において、CPU201の指示によりデータベース操作モジュール1202は一定時間以上経過しているIPアドレスとタイムポイントの組をデータベース1300から削除する。ここでは、10秒以上経過している組をデータベース1300から削除するものとする。
これにより、一定時間内に優先度の高い遠隔操作のためのリクエストを送信した他の装置のIPアドレスのみをデータベース1300に記憶しておくことができる。
ステップS1405において、CPU201の指示によりネットワーク状態判定モジュール1203は、データベース1300にIPアドレスが2つ以上記憶されているかどうかを判定する。
該判定により、IPアドレスが2つ以上記憶されていたと判定された場合にはステップS1406に進む。一方、記憶されていないと判定された場合にはステップS1409に進む。
ステップS1406において、CPU201の指示によりDMSコントローラ404は、DMS403が動作中であるかどうか判定する。DMS403が動作中である場合は、ステップS1407に進む。
ステップS1407において、CPU201の指示によりDMS403は利用不可能メッセージをネットワークに通知する。該利用不可能メッセージには、byebyeメッセージを用いる。
ステップS1408において、CPU201の指示によりDMSコントローラ404はDMS403を停止する。
このように、利用不可能メッセージをネットワーク上のクライアント装置102に通知した後に、優先度の低いネットワークサービスであるDMSを停止する。これにより、クライアント装置がDMSを停止したサービス装置にDMS403が行うネットワークサービスを要求しないようにすることが可能となる。
一方、ステップS1406において、DMS403が動作中でないと判定された場合は、サービス提供装置101はメッセージを送らない。このように、DMSの動作状態が変化しない場合には、サービス提供装置はメッセージを送らないので、ネットワークの負荷を軽減することができる。
次に、ステップS1405において、IPアドレスが2つ以上記憶されていないと判定された場合について説明する。このような場合には、ステップS1409に進む。
ステップS1409において、CPU201の指示によりDMSコントローラ404は、DMS403が動作中であるかどうか判定する。DMS403が動作中である場合は、ステップS1410に進む。
ステップS1410において、CPU201の指示によりDMSコントローラ404はDMS403を起動する。
さらにステップS1411において、CPU201の指示によりDMS403は利用可能メッセージをネットワーク上のクライアント装置102に通知する。該利用可能メッセージには、aliveメッセージを用いる。
一方、ステップS1409において、DMS403が動作中であると判定された場合は、サービス提供装置101はメッセージを送らない。このように、DMSの状態が変化しない場合には、サービス提供装置はメッセージを送らないので、ネットワークの負荷を軽減することができる。
以上のようにして、10秒以内に2つ以上地点(IPアドレス)のリモコン装置から優先度の高い遠隔操作が行われた場合には、優先度の低いネットワークサービスを停止する。むろん、優先度の高いネットワークサービスに関する情報あれば別の情報を用いてもかまわない。
例えば、10秒以内に2回以上、優先度の高い遠隔操作が行われた場合には、優先度の低いネットワークサービスを停止するようにしてもよい。
本実施形態によれば、優先度高い遠隔操作の負荷が重くなったときには、優先度の低いネットワークサービス(ここでは、DMSによる処理)より優先してその処理を行うことができる。
なお、優先度は本実施形態と異なるように設定されていてもよいし、ユーザにより設定されるものであってもよい。
また、以上に示した、実施形態1〜3の実施形態を組み合わせて用いても良い。
また、実施形態1〜3ではDMSの場合について説明したが、DMPであっても良い。
また、UPnPTMに準拠したDMS403が行うネットワークサービスが複数ある場合、優先度の高い処理に関する情報に応じて、DMS403は複数のネットワークサービスのうち、一部のネットワークサービスを停止させるようにしても良い。
例えば、DMS403が行うネットワークサービスとして、コンテンツの提供と、リモコン装置からのレリーズ等のカメラ操作があるとする。また、該ネットワークサービスの優先度よりも、サービス提供装置101の操作部203で行われる操作(例えば、画像閲覧時の拡大や縮小等)の優先度が高いものとする。
この場合において、操作部203で行われる操作に関する情報に基づいて、DMS403が行うネットワークサービスのうち、コンテンツの提供だけを停止させる。
ここで、操作部203で行われる操作に関する情報とは、例えば画像閲覧時の拡大や縮小の操作が5秒間に1回以上ある状態が、10秒以上続いている等である。
具体的に、一部のネットワークサービスを停止させるには、DMS403が提供するネットワークサービスについて記述されたデバイスディスクリプションを更新し、クライアント装置に通知することによって行われる。
以上のようにして、クライアント装置に通知するメッセージによるネットワークトラフィックの増加を軽減することができる。また、クライアント装置の処理負荷を軽減することができる。さらに、サービス提供装置の優先度の高い処理の負荷が重い場合にはDMSを停止させることでサービス提供装置の主たる機器機能を優先させることができる。これにより、ネットワークサービスに影響されることなく、連続撮影等を行うことができ、ユーザの利便性が向上する。
さらには、サービス提供装置を本実施形態の構成とすることで、サービスの稼働と停止を切替えることができる。これにより、ユーザは手動でサービスの稼働と停止を切替える必要がなくなるため、ユーザの利便性が向上する。
以上説明した通信装置は、図14のように表すこともできる。
1500は、通信装置である。1501は、所定のネットワークサービスを実行する第1の実行部である。
1502は、第1の実行部1501により実行されるネットワークサービスよりも優先度の高い処理を実行する第2の実行部である。
1503は、第2の実行部1502により実行される処理に関する情報に基づいて、第1の実行部1501によるネットワークサービスを停止するか、起動するかを判定する判定部である。
1504は、判定部1503による判定に応じて、第1の実行部1501により実行しているネットワークサービスの停止をネットワーク上の他の装置に通知する通知部である。
1505は、判定部1503が停止すると判定した場合に、ネットワークサービスを停止する停止部である。1506は、判定部1503が起動すると判定した場合に、ネットワークサービスを起動する起動部である。
1507は、データを記憶する記憶部である。1508は、通信装置1500を操作するための操作部である。1509は、ネットワーク上の他の装置からの操作を受け付ける受付部である。
本発明の範囲には、以下の形態も含まれる。即ち、CPU201が実行する処理を含む機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ(またはCPUまたはMPU)が記録媒体に格納されたプログラムコードを読み出し実行する。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現し、そのプログラムコードを記憶した記憶媒体は本発明を構成する。
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、ROM、DVDなどを用いることができる。
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施例の機能が実現される形態には限られず、以下の形態も本発明に含まれる。すなわち、その形態では、そのプログラムコードの指示に基づき、コンピュータ上で動作しているOperating System(OS)などが実際の処理の一部または全部を行う。そして、その処理によって前述した実施例の機能が実現される。
さらに、以下の形態も含まれる。すなわち、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書きこまれる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される。
実施形態1および2のシステム構成図。 サービス提供装置101のハードウェア構成図。 デジタルカメラ部202のハードウェア構成図。 サービス提供装置101のソフトウェアモジュールを示す図。 バッファメモリ303に書き込まれている画像データの総サイズを示す図。 実施形態1のCPU201が実行するフローチャート。 サービス提供装置101とクライアント装置102の動作を示すシーケンスチャート。 実施形態2のカメラ状態判定モジュール402のソフトウェアモジュールを示す図。 実施形態2のCPU201が実行するフローチャート。 実施形態3のシステム構成図。 実施形態3のカメラ状態判定モジュール402のソフトウェアモジュールを示す図。 データベースを示す図。 実施形態3のCPU201が実行するフローチャート。 サービス提供装置101の機能ブロック図。
符号の説明
101 サービス提供装置
102 クライアント装置
103 LAN
1101 リモコン装置
1102 リモコン装置

Claims (9)

  1. 通信装置であって、
    所定のネットワークサービスを実行する第1の実行手段と、
    前記第1の実行手段により実行されるネットワークサービスよりも優先度の高い処理を実行する第2の実行手段と、
    前記第2の実行手段により実行される処理に関する情報に基づいて、前記第1の実行手段によるネットワークサービスを停止するかを判定する判定手段と、
    前記判定手段による判定に応じて、前記第1の実行手段により実行しているネットワークサービスの停止をネットワーク上の他の装置に通知する通知手段と、
    を備えることを特徴とする通信装置。
  2. 前記判定手段が停止すると判定した場合に、前記ネットワークサービスを停止する停止手段をさらに有し、
    前記停止手段は、前記通知手段による通知の後に前記ネットワークサービスを停止することを特徴とする請求項1に記載の通信装置。
  3. 前記判定手段は、さらに前記第2の実行手段により実行される処理に関する情報に基づいて、前記ネットワークサービスを起動するかを判定し、
    前記通知手段は、前記判定手段により前記ネットワークサービスを起動すると判定された場合、前記ネットワークサービスの起動をネットワーク上の他の装置に通知することを特徴とする請求項1または2に記載の通信装置。
  4. 前記判定手段が起動すると判定した場合に、前記ネットワークサービスを起動する起動手段をさらに有し、
    前記起動手段は、前記通知手段により前記ネットワークサービスの起動を通知する前に前記ネットワークサービスを起動することを特徴とする請求項3に記載の通信装置。
  5. データを記憶する記憶手段をさらに有し、
    前記判定手段は、前記記憶手段に記憶されているデータのサイズに基づいて判定することを特徴とする請求項1乃至4のいずれか1項に記載の通信装置。
  6. 前記通信装置を操作するための操作手段をさらに有し、
    前記判定手段は、前記操作手段による操作に関する情報に基づいて判定することを特徴とする請求項1乃至4のいずれか1項に記載の通信装置。
  7. 前記ネットワーク上の外部装置からの操作を受け付ける受付手段をさらに有し、
    前記判定手段は、前記受付手段により受け付けた操作に関する情報に基づいて判定することを特徴とする請求項1乃至4のいずれか1項に記載の通信装置。
  8. 通信装置の制御方法であって、
    所定のネットワークサービスを実行する第1の実行工程と、
    前記第1の実行工程において実行されるネットワークサービスよりも優先度の高い処理を実行する第2の実行工程と、
    前記第2の実行工程において実行される処理に関する情報に基づいて、前記第1の実行工程におけるネットワークサービスを停止するかを判定する判定工程と、
    前記判定工程における判定に応じて、前記第1の実行工程において実行しているネットワークサービスの停止をネットワーク上の他の装置に通知する通知工程と、
    を備えることを特徴とする通信装置の制御方法。
  9. コンピュータにより実行され、通信装置の制御を行うためのプログラムであって、
    請求項8に記載の通信装置における制御方法を実現するためのプログラム。
JP2008288948A 2008-11-11 2008-11-11 通信装置、制御方法、および、プログラム Pending JP2010117778A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008288948A JP2010117778A (ja) 2008-11-11 2008-11-11 通信装置、制御方法、および、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008288948A JP2010117778A (ja) 2008-11-11 2008-11-11 通信装置、制御方法、および、プログラム

Publications (1)

Publication Number Publication Date
JP2010117778A true JP2010117778A (ja) 2010-05-27

Family

ID=42305435

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008288948A Pending JP2010117778A (ja) 2008-11-11 2008-11-11 通信装置、制御方法、および、プログラム

Country Status (1)

Country Link
JP (1) JP2010117778A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140313357A1 (en) * 2013-04-23 2014-10-23 Olympus Corporation Operation device, imaging device, and remote imaging system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140313357A1 (en) * 2013-04-23 2014-10-23 Olympus Corporation Operation device, imaging device, and remote imaging system
JP2014216702A (ja) * 2013-04-23 2014-11-17 オリンパス株式会社 操作端末、撮影端末、遠隔撮影システム、遠隔撮影方法およびプログラム
US9350910B2 (en) * 2013-04-23 2016-05-24 Olympus Corporation Operation device, imaging device, and remote imaging system

Similar Documents

Publication Publication Date Title
US7861038B2 (en) Method and apparatus for managing data in a hybrid drive system
JP5256209B2 (ja) 集約した装置利用データを用いたユーザ・エクスペリエンスの向上
EP2520049B1 (en) Method and apparatus for using service of home network device based on remote access
TW498207B (en) Data transfer control device and electronic apparatus
CN108228425A (zh) 一种Linux系统实施获取设备热插拔信息的系统
JP2005182491A (ja) 通信装置管理プログラム
JP2005346706A (ja) メディアファイルの移動方法及び装置、並びにその方法を行うためのプログラムが保存された保存媒体
JP2004070570A (ja) データ転送制御システム、電子機器、プログラム及びデータ転送制御方法
JP2004153530A (ja) 電子機器を制御するための制御装置および制御方法
JP2010117778A (ja) 通信装置、制御方法、および、プログラム
KR100717059B1 (ko) 홈 네트워크에서 하나의 컨텐츠를 복수의 디바이스에분할하여 저장하기 위한 방법 및 장치
TW511351B (en) Data transmission controller and electronic machine
EP1691268A1 (en) Printer and printing method
CN115150464A (zh) 应用代理方法、装置、设备及介质
JP3599053B2 (ja) データ転送制御システム、電子機器、及びデータ転送制御方法
CN108027752A (zh) 信息处理装置、用于信息处理装置的控制方法、和程序
JP4709857B2 (ja) 情報処理装置
TWI318833B (en) Network device, local network system, and network transmitting method
JP5884595B2 (ja) メッセージ通信方法,メッセージ通信プログラムおよびコンピュータ
JP3598922B2 (ja) データ転送制御装置、情報記憶媒体及び電子機器
KR20070088889A (ko) 네트워크 상에서의 데이터 백업 방법
JP5099232B2 (ja) 情報共有化システム
JP2005216101A (ja) 情報システムの制御方法、情報処理装置、記憶媒体、プログラム
US9729750B2 (en) Information processing apparatus, information processing method, and medium
JP2006172327A (ja) センタ・サーバおよびリクエスト・コンピュータならびにそれらの制御方法

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20100630