JP2007048137A - 制御装置、制御方法、プログラム及び記憶媒体 - Google Patents

制御装置、制御方法、プログラム及び記憶媒体 Download PDF

Info

Publication number
JP2007048137A
JP2007048137A JP2005233336A JP2005233336A JP2007048137A JP 2007048137 A JP2007048137 A JP 2007048137A JP 2005233336 A JP2005233336 A JP 2005233336A JP 2005233336 A JP2005233336 A JP 2005233336A JP 2007048137 A JP2007048137 A JP 2007048137A
Authority
JP
Japan
Prior art keywords
protocol data
data
protocol
device control
communication
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.)
Granted
Application number
JP2005233336A
Other languages
English (en)
Other versions
JP2007048137A5 (ja
JP4541994B2 (ja
Inventor
Takashi Hirata
隆 平田
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 JP2005233336A priority Critical patent/JP4541994B2/ja
Priority to US11/497,389 priority patent/US7549010B2/en
Publication of JP2007048137A publication Critical patent/JP2007048137A/ja
Publication of JP2007048137A5 publication Critical patent/JP2007048137A5/ja
Application granted granted Critical
Publication of JP4541994B2 publication Critical patent/JP4541994B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • H04L67/5651Reducing the amount or size of exchanged application data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

【課題】 プロトコルの違いにより相互運用性が確保されていない場合に、他装置のプロトコルを自装置に反映させてシステム内の相互運用性を高める。
【解決手段】 ネットワークシステムには、第1のプロトコルデータに準拠して通信するように構成された複数の装置が接続している。ここで、他装置間で第2のプロトコルデータにより相互運用性が確保されている場合に、当該他装置間の通信データを収集する。そして、収集した通信データを解析して第2のプロトコルデータを取得し、他装置との通信に用いる自装置のプロトコルデータとして、第1のプロトコルデータに代えて第2のプロトコルデータを適用する。
【選択図】 図6

Description

本発明は、プロトコルデータによって相互運用性が確保されたシステムにおける装置を制御する制御装置、制御方法、プログラム及び記憶媒体に関する。
電子計算機技術の進歩により、従来は単一の機能しか有せず相互に有機的に接続することができなかったオフィス機器や一般の家庭用機器においても、ネットワークを通じた結合と処理の連携といった機能が実現されるようになった。このような機器制御装置のネットワークを通じた融合を実現するネットワーク技術として、UPnP(Universal Plug and Play)、Jini、Jxta等の機器制御用プロトコルが知られている。
次に、これらの機器制御用プロトコルの代表例として、UPnPについて説明する。UPnPは、インターネットの世界で事実上のデファクトスタンダードとなった、以下のようなプロトコルをサポートするネットワーク上で用いられる機器制御用プロトコルである。すなわち、IP(Internet Protocol)、TCP(Transfer Control Protocol)、UDP(User Datagram Protocol)がある。また、HTTP(Hyper Text Transfer Protocol)及びXML(eXtensible Markup Language)等もある。
UPnPでは、ネットワーク上に接続された機器制御装置の発見にSSDP(Simple Service Discover Protocol)を用いる。また、制御対象となる機器制御装置のあらかじめ定義されている仕様や設定を表現するプロファイル情報の把握にもSSDPを用いる。SSDPは、UPnPを構成するための基幹部分であり、IETFから標準仕様が発行されている。機器の発見には、IPブロードキャストを用いる。
例えば、「デジタルビデオストリームを再生できる機器は?」とブロードキャストする。この場合、条件に合う機器が自主的に問い合わせ元に対してIPアドレスとホスト名を送信する。制御対象となる機器制御装置のあらかじめ定義されている仕様や設定、具体的にどのような機能を持っているか等のプロファイル情報もこのときに交換する。情報交換に使われるデータ形式はXMLであり、HTTPにより通信される。
機器の制御には、SOAP(Simple Object Access Protocol)を用いる。SOAPは、XML Webサービスのやり取りを円滑に行うために取り決められた、RPCベースのインターネット通信の業界標準プロトコルである。SOAPを使用して制御メッセージを機器に送信し、リザルト又はエラーを取得する。UPnP制御要求は、パラメータを指定して呼び出すアクションを含んでいるSOAPメッセージであり、レスポンスもSOAPメッセージでステータスが含まれており、値とパラメータが返却される。
UPnPに代表されるようなネットワークを通じて機器を相互に接続するために用いる機器制御用プロトコルは、ノード間の相互接続性を確保するため、仕様が決められている。当該仕様は、さまざまな組織で策定され勧告として発表されている。例えば、HTTP、SOAP等のWeb関連又はWebサービス関連の仕様の多くは、World Wide Web Consortium(w3c、Http://www.w3c.org)で策定されている。そして、インターネット関連の仕様の多くは、The Internet Engineering Task Force(IETF、http://www.ietf.org)で策定され勧告として発表されている。
各種組織において仕様が厳密に策定され、また機器制御装置を開発するベンダーが仕様に完全に沿って機器制御用プロトコルを実装することによって、機器制御用プロトコルを用いた通信は全て成功し、相互運用性が確保される。しかし、現実には、仕様には「あいまいさ」があり厳密ではないことが多い。そのため、機器制御装置のベンダーが仕様に完全に沿って機器制御用プロトコルを実装したつもりであっても、仕様のあいまいさのために解釈の違いが発生し、通信が失敗するように相互運用性が確保されないことがある。
また、仕様に沿っていない実装も多々ある。さらに、仕様に沿っていないプロトコルを用いる機器制御装置が事実上の標準(デファクトスタンダード)となると次のような失敗が生じる。すなわち、仕様に沿ったプロトコルを用いる機器制御装置をベンダーが開発しても、事実上の標準となった機器制御用プロトコルを用いる機器制御装置との通信は失敗してしまう。通信が失敗する例として、例えば、ある実装では大文字小文字を区別していないが、別の実装では区別するため通信が失敗することがある。また、SOAP等のXML関連の機器制御用プロトコルでは、ネームスペースの有無により通信が失敗する等といった例も挙げられる。
相互運用性を向上させるために、機器制御用装置のベンダーは様々なことを行う。例えば、プロトコルモニタを用いてネットワーク上を流れる機器制御用プロトコルを監視して違いを把握する、複数のベンダーが製品を一箇所に持ち寄って通信実験を行う、等といったことが行われる。そして、機器制御用プロトコルの違いを発見した場合には、それを修正することによって相互運用性を向上させる。機器制御用プロトコルの違いを発見するプロトコルモニタに関する提案の1つとして、機器制御用プロトコルの誤り箇所を検出し、自動的に指摘することを可能とするものがある(例えば、特許文献1参照。)。
特開平8−88672号公報
しかしながら、上記特許文献1に記載されたような対応は、製品を出荷する前に行う対応であり、出荷後の対応は容易ではない。前述した相互運用性を向上させるための通信実験にしても、市場に存在する全ての機器制御装置を集めて実験することは不可能であり、検証が十分に行われることはない。そのため、製品を使用するユーザは、製品購入前に、購入対象の製品がどのような機器と通信を行えたかを調査し、インターネット上での報告を探す等して、相互運用性が高いと思われる製品を選ばざるをえない。また、ベンダー側としては、相互運用性を確保するため、ユーザにファームウェアを更新させたり、製品を回収し、製品内のプログラムを書き換えたりする等の対応を取らなければならない場合がある。
本発明は、このような事情を考慮してなされたものであり、特定のプロトコルに準拠した複数の装置から構成されるネットワークにおいて相互運用性を高めるために、以下のような制御装置、制御方法、プログラム及び記憶媒体を提供することを目的とする。すなわち、プロトコルの違いにより相互運用性が確保されていない場合に、他装置のプロトコルを自装置に反映させてシステム内の相互運用性を高めることができる。
上記課題を解決するため、本発明に係る制御装置は、
第1のプロトコルデータに準拠して通信するように構成された複数の装置からなるシステムにおいて、他装置間で第2のプロトコルデータにより相互運用性が確保されている場合に、該他装置間の通信データを収集する収集手段と、
前記通信データを解析して前記第2のプロトコルデータを取得し、前記他装置との通信に用いる自装置のプロトコルデータとして、前記第1のプロトコルデータに代えて該第2のプロトコルデータを適用する適用手段と
を備えることを特徴とする。
また、上記課題を解決するため、本発明は、第1のプロトコルデータに準拠して通信するように構成された複数の装置からなるシステム内の装置の制御方法であって、
他装置間で第2のプロトコルデータにより相互運用性が確保されている場合に、該他装置間の通信データを収集する収集工程と、
前記通信データを解析して前記第2のプロトコルデータを取得し、前記他装置との通信に用いる自装置のプロトコルデータとして、前記第1のプロトコルデータに代えて該第2のプロトコルデータを適用する適用工程と
を有することを特徴とする。
さらに、上記課題を解決するため、本発明に係るプログラムは、
第1のプロトコルデータに準拠して通信するように構成された複数の装置からなるシステム内のコンピュータに、
他装置間で第2のプロトコルデータにより相互運用性が確保されている場合に、該他装置間の通信データを収集する収集手順と、
前記通信データを解析して前記第2のプロトコルデータを取得し、前記他装置との通信に用いる自装置のプロトコルデータとして、前記第1のプロトコルデータに代えて該第2のプロトコルデータを適用する適用手順と
を実行させることを特徴とする。
さらにまた、上記課題を解決するため、本発明に係る記憶媒体は、上記プログラムを格納したことを特徴とする。
本発明によれば、プロトコルの違いにより相互運用性が確保されていない場合に、他装置のプロトコルを自装置に反映させてシステム内の相互運用性を高めることができる。
特に、プロトコル仕様のあいまいさによりベンダー間の解釈の違いが発生して相互運用性が確保されていない場合に、事実上の標準として相互運用性が確保されているプロトコルを自装置に反映させてシステム内の相互運用性を高めることができる。
以下、図面を参照して、本発明の一実施形態について説明する。以下では、具体的な一実施形態について記載しているが、本発明はこの具体的な一実施形態だけに限定されるものではない。
図1は、本発明の一実施形態に係るネットワークシステム全体の構成図である。図1に示すように、本ネットワークシステムには、デジタルカメラ100、デジタルビデオカメラ101、プリンタ102、スキャナ103、プロジェクタ104が、ネットワーク105を介して互いに接続している。尚、本実施形態では、5種類のデバイスがネットワーク105に接続している例を挙げているが、この種類だけのデバイスに限定されるものではない。
図2は、本発明の従来技術に係るネットワークシステム構成の概要を説明するための図である。図2に示す従来のネットワークシステムでは、ネットワークシステム200は、機器制御用プロトコルAに準拠して構成されている複数の機器制御装置からなる。図2では、機器制御プロトコルAに準拠している機器制御装置である機器制御装置A(201)、機器制御装置B(202)、機器制御装置C(203)が接続している。そして、機器制御装置B(202)と機器制御装置C(203)が、機器制御用プロトコルAの仕様のあいまいさにより生じた誤解により機器制御用プロトコルAには厳密に準拠していない機器制御用プロトコルA’により相互運用性が確保されている。すなわち、この3台の装置から構成されるネットワーク環境下では、機器制御用プロトコルA’がローカルルールになっている。このような場合に、機器制御装置B(202)と機器制御装置C(203)の間の通信(205)は成功する。しかし、機器制御装置A(201)と機器制御装置B(202)の間の通信(204)と、機器制御装置A(201)と機器制御装置C(203)の間の通信(206)は失敗する。したがって、このようなネットワークシステムでは、3台での相互運用性が確保できていないこととなる。
例えば、機器制御用プロトコルAを「HTTP/1.1」(RFC2616 R.Fielding他、 http://www.ietf.org/rfc/rfc2616.txt、June、1999)として説明する。具体的には、「HTTP/1.1」において、図4(a)に示すメッセージを機器制御用プロトコルA、図4(c)のメッセージを機器制御用プロトコルA’とする。この場合、機器制御装置A(201)と機器制御装置B(202)の間の通信(204)、及び機器制御装置A(201)と機器制御用装置C(203)の間の通信(206)は次のようになる。すなわち、図4(a)、(c)に示すように、1行目の文字列「GET」と「get」のような大文字と小文字の違いにより、図4(b)に示すエラーメッセージを返すため、失敗してしまう場合がある。
図4(a)は、標準に準拠した機器制御プロトコルAによる通信メッセージの一例を示す図である。また、図4(b)は、標準に準拠した機器制御プロトコルAによる通信に失敗した際の返信メッセージの一例を示す図である。さらに、図4(c)は、仕様のあいまいさ等の理由により、厳密にはトリビアルA’による通信メッセージの一例を示す図である。図4(d)は、仕様のあいまいさ等の理由により、厳密には標準に準拠していない機器制御用プロトコルA’による通信に成功した際の返信メッセージの一例を示す図である。
一方、図3は、本発明の一実施形態に係るネットワークシステム構成の概要を説明するための図である。図3では、ネットワークシステム300は、機器制御用プロトコルAに準拠している複数の機器制御装置から構成されている。システム内の装置として、機器制御プロトコルAに準拠している機器制御装置である機器制御装置A(301)、機器制御装置B(302)、機器制御装置C(303)が接続している。そして、機器制御装置B(302)と機器制御装置C(303)は、機器制御用プロトコルAの仕様のあいまいさにより生じた誤解により、機器制御用プロトコルAには厳密に準拠していない機器制御用プロトコルA‘により相互運用性が確保されている。
このような場合に、機器制御装置A(301)は、機器制御装置B(302)から受信するメッセージ(304)と機器制御装置C(303)から受信するメッセージ(306)を監視する。また、機器制御装置A(301)は、機器制御装置B(302)と機器制御装置C(303)の間で通信されるメッセージ(305)を監視する。
具体的には、機器制御装置A(301)のネットワークインタフェースをプロミスキャスモード(Promiscuous mode)で動作させ、ネットワーク200上に流れる全パケットを受信して通信データを収集する。そして、収集した通信データを解析し、機器制御用プロトコルAと機器制御用プロトコルA’の差分を抽出し、機器制御用装置A(301)が使用できる機器制御用プロトコルに適用する。その結果、機器制御装置A(301)は、ローカルルールである機器制御用プロトコルA’を使用して機器制御装置B(302)との通信(307)と機器制御装置C(303)との通信(308)が可能となり、3台での相互運用性を確保することが可能となる。
例えば、機器制御用プロトコルAを「HTTP/1.1」とする。すなわち、図4(a)に示すメッセージを機器制御用プロトコルA、図4(c)に示すメッセージを機器制御用プロトコルA’とする。この場合、機器制御装置A(301)と機器制御装置B(302)の間の通信(304)、及び機器制御装置A(301)と機器制御用装置C(303)の間の通信(306)は、次のようになる。すなわち、1行目の文字列「GET」と「get」のような大文字と小文字の違いにより、図4(b)に示すエラーメッセージを返すこととなる。そのため、通信に失敗した場合には、機器制御装置A(301)は、機器制御装置B(302)から受信するメッセージ(304)と機器制御装置C(303)から受信するメッセージ(306)を監視して通信データを収集する。また、機器制御装置A(301)は、機器制御装置B(302)と機器制御装置C(303)の間で通信されるメッセージ(305)を監視して通信データを収集する。
そして、収集した通信データを解析し、機器制御用プロトコルAと機器制御用プロトコルA’の差分(例えば、図4(a)と図4(c)の1行目の文字列「GET」と「get」の違い)を抽出する。そして、機器制御装置A(301)は、その差分を機器制御用装置A(301)が使用できる機器制御用プロトコルに適用する。その結果、機器制御装置A(301)は、ローカルルールである機器制御用プロトコルA’(図4(c))を使用して機器制御装置B(302)との通信(307)及び機器制御装置C(303)との通信(308)が可能となる。尚、通信が可能な場合には、リターン値として、図4(d)に示すメッセージが返却される。これによって、3台での相互運用性を確保することが可能となる。
次に、本発明の一実施形態に係るネットワークシステムに接続している機器制御装置について説明する。図5は、本発明の一実施形態に係るネットワークシステム内の機器制御装置をPC(パーソナルコンピュータ)を使用して実現した場合のブロック図である。尚、機器制御装置としては、PC以外に、ワークステーション、ノートブックPC、パームトップPC等でも実現可能である。また、コンピュータを内蔵したテレビ等の各種家電製品、通信機能を有するゲーム機、電話、FAX、携帯電話、PHS、電子手帳、等を含む他の機器制御装置と通信するための通信機能を有する端末、又は、これらの組合せによっても実施可能である。
図5において、501は、システムの制御を司る中央演算装置(CPU)である。502は、ランダムアクセスメモリ(RAM)であり、CPU501の主メモリとして、及び実行プログラムの領域や当該プログラムの実行エリア並びにデータエリアとして機能する。
503は、CPU501の動作処理手順を記録しているリードオンリーメモリー(ROM)である。ROM503には、システムの機器制御を行うシステムプログラムである基本ソフト(OS)を記録したプログラムROMとシステムを稼動するために必要な情報等が記録されたデータROMがある。ROM503の代わりに、後述のHDD509を用いる場合もある。
504は、ネットワークインタフェース(NETIF)であり、ネットワークを介してシステム間のデータ転送を行うための制御や接続状況の診断を行う。505は、ビデオRAM(VRAM)であり、システムの稼動状態を示す後述するCRT506の画面に表示される画像を展開し、その表示の制御を行う。506は、表示装置であって、例えば、ディスプレイである。本実施形態では、CRTと記す。
507は、後述する外部入力装置508からの入力信号を制御するコントローラである。508は、システムの利用者がシステムに対して行う操作を受け付けるための外部入力装置であり、例えば、キーボード等である。
509は、記憶装置を示し、例えば、ハードディスク等である。アプリケーションプログラムや、画像情報等のデータ保存用に用いられる。本実施形態におけるアプリケーションプログラムとは、本実施形態を構成する各種機器制御手段を実行するソフトウェアプログラム等である。
510は、外部入出力装置であって、例えばフロッピー(登録商標)ディスクドライブ、CD−ROMドライブ等のリムーバブル記憶装置を入出力するものであり、上述したアプリケーションプログラムの媒体からの読み出し等に用いられる。以下では、FDDと記す。尚、HDD509に格納するアプリケーションプログラムやデータをFDD510に格納して使用することも可能である。
そして、図5において、500は、上述した各ユニット間の接続するための入出力バス(アドレスバス、データバス、及び制御バス)である。
図6は、本発明の一実施形態に係る機器制御装置で実行されるアプリケーションモジュール構成を説明するための図である。
図6に示すように、機器制御装置は、機器制御アプリケーション600、機器制御機能提供部601、機器制御機能実行部602、メッセージ送受信部603を有する。まず、機器制御機能提供部601は、プロファイル情報表現部601a、プロファイル情報操作部601b、機器集合情報操作部601cを含む構成である。また、機器制御機能実行部602は、プロトコル制御部602a、相互運用性判定部602b、プロトコルデータ収集部602c、差分抽出部602d、差分適用部602eを含む構成である。さらに、メッセージ送受信部603は、メッセージ送信部603a、メッセージ受信部603bを含む構成である。
図7は、本発明の一実施形態に係る機器制御装置における処理を説明するためのフローチャートである。
まず、機器制御機能提供部601が、機器制御アプリケーション600から処理要求を受信する(ステップS700)。次に、機器制御機能提供部601は、制御内容を決定し、プロトコル制御部602aに対してコマンドを発行する(ステップS701)。そして、プロトコル制御部602aは、メッセージ送信部603aから制御対象機器制御装置に対して送信する(ステップS702)。尚、メッセージ送信部407aから送信される際には、インターネットプロトコル(IP)が用いられる。この場合IPのバージョンは、IPv4とIPv6の双方が使用可能である。また、実際に通信経路として使用される媒体は、有線或いは無線を用いることができる。機器制御用プロトコルによっては、さらにTCP、UDP、HTTP、SMTP、SNMP、FTP等の通信プロトコルが用いられる場合もある。そして、相互運用性判定部602bは、メッセージの送信が成功したかどうかを判定する(ステップS703)。
ステップS703の判定結果から、メッセージ送信成功と判定された場合(Yes)は、相互運用性が確保されているため、ステップS707の処理に移行する。一方、ステップS703において、メッセージ送信失敗と判定された場合(No)は、相互運用性が確保されていないため、ステップS704に移行する。
ステップS704では、プロトコルデータ処理部602c及び差分抽出部602dは、データ収集及び差分抽出処理を実施する。尚、ステップS704における処理の詳細については図8を用いて後述する。
ステップS704においてデータ収集及び差分抽出処理が終了した後、差分抽出が成功したかどうかを判定する(ステップS705)。その結果、差分抽出に成功したと判定された場合(Yes)は、差分適用部602eは、図9に示したような抽出された差分情報をプロトコル制御部602aに適用する(ステップS706)。すなわち、図9は、抽出された差分情報を記憶したテーブルの一例を示す図である。
その後、アプリケーションを終了するかどうかを判定する(ステップS707)。その結果、アプリケーションをまだ継続すると判定された場合(No)は、ステップS700の処理に移行する。一方、ステップS707において、終了と判定された場合(Yes)は、本処理を終了する。
尚、図7に示すフローチャートでは、メッセージを送信した機器制御装置が、メッセージ送信失敗と判定した場合に(ステップS703でNoの場合)、データ収集及び差分抽出処理を実施する形態(ステップS704)を説明した。これ以外に、例えば、メッセージを受信した機器制御装置が、受信メッセージを解釈できずにエラーメッセージを送信する場合に、データ収集及び差分抽出処理を実施するようにしてもよい。
図8は、図7に示すフローチャートにおけるデータ収集及び差分抽出処理(ステップS707)を詳細に説明するためのフローチャートである。
まず、プロトコルデータ収集部602cは、ネットワーク上に流れる全パケットを受信するために、メッセージ送受信部603に対して自身が管理するネットワークインターフェースをプロミスキャスモードで動作させるよう依頼する(ステップS800)。そして、ネットワーク上に流れているメッセージをメッセージ受信部603bにおいて受信する(ステップS801)。尚、メッセージ受信部603bで受信する際には、インターネットプロトコル(IP)が用いられる。この場合のIPのバージョンは、IPv4とIPv6の双方が使用可能である。また、実際に通信経路として使用される媒体は、有線或いは無線を用いることができる。機器制御用プロトコルによっては、さらにTCP、UDP、HTTP、SMTP、SNMP、FTP等の通信プロトコルが用いられる場合もある。
次いで、プロトコルデータ収集部602cは、ステップS801において受信したメッセージを解析する(ステップS802)。さらに、差分抽出部602dは、プロトコル制御部602aが制御している機器制御用プロトコルとステップS802においてプロトコルデータ収集部602cが解析したデータとの差分情報を抽出する(ステップS803)。このときに抽出される差分情報としては、例えば、機器制御用プロトコルが「HTTP/1.1」の場合は、図4(a)と図4(c)の1行目の文字列「GET」と「get」のようなトリビアルな(些細な)差分を抽出する。また、抽出された差分情報は、図9に示すようなテーブルの形態で記録される。
そして、差分情報の抽出に成功したかどうかを判定する(ステップS804)。その結果、差分情報の抽出に成功したと判定された場合(Yes)は、本処理を終了し、図7のステップS705の処理に移行する。一方、差分情報の抽出に失敗したと判定された場合(No)は、ステップS805の処理に移行する。ステップS805では、データ収集及び差分抽出処理を継続するかどうかを判定する。尚、ステップS805において用いられる判定基準としては、例えば、収集時間や収集回数等がある。また、判定基準はこの2つに限定されるものではなく、任意の判定基準を適用することが可能である。
ステップS805において、データ収集及び差分抽出処理を継続すると判定された場合(Yes)は、ステップS801の処理に移行する。一方、ステップS805において、データ収集及び差分抽出処理を終了すると判定された場合(No)は、本処理を終了し、図7のステップS705の処理に移行する。
例えば、制御コマンド「GET」を送信してエラーメッセージを受信した場合は、送信した「GET」を所定の関係を有するメッセージを収集する。例えば、「GET」と大文字/小文字の文字の種別の異なるコマンド「get」を収集する。そして、この差分(大文字小文字の文字種別の差)の抽出に成功すると(ステップS705)、「GET」の代わりに「get」を送信する。
また、コマンドに付加されたパラメータが原因でエラーになった場合には、以下のようになる。すなわち、例えば、受信側は、「GET」コマンドに付加されるパラメータとして、HTTPのGETメソッドとして使用されるHOST(インターネットホストとポート番号)とAccept−Language(レスポンスとして望む言語)を必須としている。しかし、これにもかかわらず、送信側が、HOSTのみ(Accept−Languageが付加されない)がパラメータとして付加された「GET」コマンドを送信し、エラーになった場合は以下のようになる。
この場合、送信側は、送信エラーになった「GET」コマンドと所定の関係を有するコマンドを収集する(ステップS704)。ここでは、送信エラーになった「GET」コマンドとは、付加されるパラメータの異なる「GET」コマンドが収集される。すなわち、パラメータとして「HOST」と「Accept−Language」が付加された「GET」コマンドが収集される。このパラメータの差分の抽出に成功すると、「HOST」のみが付加された「GET」コマンドの代わりに、「HOST」と「Accept−Language」が付加された「GET」コマンドとすることができる。
「Accept−Language」として何を要求するかは、送信側に予め設定された「Accept−Language」を要求するようにすればよい。また、収集した「GET」コマンドに付加された「Accept−Language」の内容を表示し、その中から、使用者が所望の「Accept−Language」を選択するようにしてもよい。
尚、送信側は、受信側で要求されているパラメータ(例えば、「Accept−Language」)を自装置が有するか判断する。そして、自装置が有さないパラメータであると判断すると、受信側が使用しているプロトコルは許容できないとして、受信側へのメッセージの送信を中止する。また、コマンドの大文字/小文字と、コマンドに付加されたパラメータの両方に差異がある場合も、同様に、対応することができる。
以上説明したように本実施形態によれば、特定の機器制御用プロトコルを用いてネットワークを通じた制御が可能な複数の機器制御装置から構成されるネットワークにおいて、好適に相互接続性(相互運用性)を確保することが可能となる。具体的には、同一の機器制御用プロトコルを使用しているにもかかわらず、仕様のあいまいさ等の理由により生じた実装上の誤解により、相互接続性が確保されない場合がある。すなわち、このような仕様のあいまいさがあると、ベンダー間の解釈の違いが発生し、相互運用性が確保されていない場合が起こり得る。このような場合に、自機器制御装置が使用している機器制御用プロトコルと、接続しているネットワークで有効である機器制御用プロトコルとの差分を抽出し、自機器制御装置の機器制御用プロトコルに反映させて修正する。これによって、当該ネットワーク下において、修正後の機器制御用プロトコルが事実上の標準となり、ローカルルールにより相互運用性を高めることができる。
また、上記処理に併せて、自機器制御装置の機器制御用プロトコルと、接続しているネットワーク上で使用されている機器制御用プロトコルとに相互運用性があるかを判定することができる。さらに、本来であれば同一であるはずであるが、仕様の解釈の違い等の理由で相互運用性がないかを判定することも可能である。
さらに、自機器制御装置が使用している機器制御用プロトコルとネットワーク上で使用されている他の機器制御用プロトコルとの間に相互運用性がないと判定された場合に、仕様の解釈の違い等の相互運用性を阻害している原因を突き止めることが可能となる。
以上、実施形態例を詳述したが、本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体(記録媒体)等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム(実施形態では図に示すフローチャートに対応したプログラム)を、システムあるいは装置に直接あるいは遠隔から供給する。そして、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であっても良い。
プログラムを供給するための記録媒体としては、例えば、以下のようなものがある。フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)。
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページからハードディスク等の記録媒体にダウンロードすることによっても供給できる。すなわち、ホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをダウンロードする。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布する。そして、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他にも、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後にも前述した実施形態の機能が実現される。すなわち、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行うことによっても前述した実施形態の機能が実現される。
本発明の一実施形態に係るネットワークシステム全体の構成図である。 本発明の従来技術に係るネットワークシステム構成の概要を説明するための図である。 本発明の一実施形態に係るネットワークシステム構成の概要を説明するための図である。 (a)は、標準に準拠した機器制御プロトコルAによる通信メッセージの一例を示す図である。(b)は、標準に準拠した機器制御プロトコルAによる通信に失敗した際の返信メッセージの一例を示す図である。(c)は、仕様のあいまいさ等の理由により、厳密にはトリビアルA’による通信メッセージの一例を示す図である。(d)は、仕様のあいまいさ等の理由により、厳密には標準に準拠していない機器制御用プロトコルA’による通信に成功した際の返信メッセージの一例を示す図である。 本発明の一実施形態に係るネットワークシステム内の機器制御装置をPC(パーソナルコンピュータ)を使用して実現した場合のブロック図である。 本発明の一実施形態に係る機器制御装置で実行されるアプリケーションモジュール構成を説明するための図である。 本発明の一実施形態に係る機器制御装置における処理を説明するためのフローチャートである。 図7に示すフローチャートにおけるデータ収集及び差分抽出処理(ステップS707)を詳細に説明するためのフローチャートである。 抽出された差分情報を記憶したテーブルの一例を示す図である。
符号の説明
301 機器制御装置A
302 機器制御装置B
303 機器制御装置C
304、305、306、307、308 通信
600 機器制御アプリケーション
601 機器制御機能提供部
601a プロファイル情報表現部
601b プロファイル情報操作部
601c 機器集合情報操作部
602 機器制御機能実行部
602a プロトコル制御部
602b 相互運用性判定部
602c プロトコルデータ収集部
602d 差分抽出部
602e 差分適用部
603 メッセージ送受信部
603a メッセージ送信部
603b メッセージ受信部

Claims (10)

  1. 第1のプロトコルデータに準拠して通信するように構成された複数の装置からなるシステムにおいて、他装置間で第2のプロトコルデータにより相互運用性が確保されている場合に、該他装置間の通信データを収集する収集手段と、
    前記通信データを解析して前記第2のプロトコルデータを取得し、前記他装置との通信に用いる自装置のプロトコルデータとして、前記第1のプロトコルデータに代えて該第2のプロトコルデータを適用する適用手段と
    を備えることを特徴とする制御装置。
  2. 前記適用手段が、
    前記通信データを解析して前記第1のプロトコルデータと前記第2のプロトコルデータとの差分データを抽出する抽出手段と、
    前記差分データを用いて自装置が使用する前記第1のプロトコルデータを前記第2のプロトコルデータに修正する修正手段と
    を備えることを特徴とする請求項1に記載の制御装置。
  3. 前記抽出手段による前記差分データの抽出が成功したか否かを判定する抽出判定手段をさらに備え、
    前記修正手段は、前記抽出判定手段によって前記差分データの抽出が成功したと判定されたことを条件として、該差分データを用いて前記第1のプロトコルデータを前記第2のプロトコルデータに修正する
    ことを特徴とする請求項2に記載の制御装置。
  4. 前記他装置間で相互運用性が確保されている前記第2のプロトコルの使用を前記自装置が許容することができるかどうかを判定する許容判定手段をさらに備えることを特徴とする請求項1に記載の制御装置。
  5. 自装置が使用する前記第1のプロトコルデータによって前記他装置との間で相互運用性が確保されているか否かを判定する運用性判定手段をさらに備え、
    前記収集手段は、前記運用性判定手段によって前記他装置との間で相互運用性が確保されていないと判定されたことを条件として、該他装置間の通信データを収集する
    ことを特徴とする請求項1に記載の制御装置。
  6. 前記第2のプロトコルデータが前記第1のプロトコルデータの仕様のあいまいさのために解釈の違いが発生した結果に基づくプロトコルデータであることを特徴とする請求項1から5までのいずれか1項に記載の制御装置。
  7. 前記収集手段が、自装置のネットワークインタフェースをプロミスキャスモードで動作させ、前記他装置間で通信される全パケットを受信して前記通信データを収集することを特徴とする請求項1から6までのいずれか1項に記載の制御装置。
  8. 第1のプロトコルデータに準拠して通信するように構成された複数の装置からなるシステム内の装置の制御方法であって、
    他装置間で第2のプロトコルデータにより相互運用性が確保されている場合に、該他装置間の通信データを収集する収集工程と、
    前記通信データを解析して前記第2のプロトコルデータを取得し、前記他装置との通信に用いる自装置のプロトコルデータとして、前記第1のプロトコルデータに代えて該第2のプロトコルデータを適用する適用工程と
    を有することを特徴とする制御方法。
  9. 第1のプロトコルデータに準拠して通信するように構成された複数の装置からなるシステム内のコンピュータに、
    他装置間で第2のプロトコルデータにより相互運用性が確保されている場合に、該他装置間の通信データを収集する収集手順と、
    前記通信データを解析して前記第2のプロトコルデータを取得し、前記他装置との通信に用いる自装置のプロトコルデータとして、前記第1のプロトコルデータに代えて該第2のプロトコルデータを適用する適用手順と
    を実行させるためのプログラム。
  10. 請求項9に記載のプログラムを格納したことを特徴とするコンピュータ読み取り可能な記憶媒体。
JP2005233336A 2005-08-11 2005-08-11 制御装置、制御方法及びプログラム Expired - Fee Related JP4541994B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005233336A JP4541994B2 (ja) 2005-08-11 2005-08-11 制御装置、制御方法及びプログラム
US11/497,389 US7549010B2 (en) 2005-08-11 2006-08-02 Communication apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005233336A JP4541994B2 (ja) 2005-08-11 2005-08-11 制御装置、制御方法及びプログラム

Publications (3)

Publication Number Publication Date
JP2007048137A true JP2007048137A (ja) 2007-02-22
JP2007048137A5 JP2007048137A5 (ja) 2008-08-28
JP4541994B2 JP4541994B2 (ja) 2010-09-08

Family

ID=37743817

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005233336A Expired - Fee Related JP4541994B2 (ja) 2005-08-11 2005-08-11 制御装置、制御方法及びプログラム

Country Status (2)

Country Link
US (1) US7549010B2 (ja)
JP (1) JP4541994B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009264770A (ja) * 2008-04-22 2009-11-12 Sii Ido Tsushin Kk 車両診断システム、車両診断端末、情報サーバ装置および車両診断方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4154364B2 (ja) * 2004-04-22 2008-09-24 キヤノン株式会社 通知方法
JP4829563B2 (ja) * 2005-08-03 2011-12-07 キヤノン株式会社 制御方法及び制御装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11234277A (ja) * 1998-02-19 1999-08-27 Mitsubishi Electric Corp 管理システム
JP2002514797A (ja) * 1998-05-07 2002-05-21 サムスン エレクトロニクス カンパニー リミテッド ネットワークで汎用的にアクセスする命令及び制御情報のための方法及び装置
JP2002228551A (ja) * 2001-01-31 2002-08-14 Haruo Morita 車両診断システム
JP2002300226A (ja) * 2001-03-30 2002-10-11 Digital Electronics Corp 通信プログラム作成装置、通信プログラムの作成プログラム、およびこれを記録したコンピュータ読み取り可能な記録媒体

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5651050U (ja) * 1979-09-27 1981-05-07
US4377807A (en) * 1981-09-10 1983-03-22 The United States Of America As Represented By The Secretary Of The Navy Coarse/fine digital pattern combiner for high accuracy
US4829519A (en) * 1987-06-09 1989-05-09 Scotton Geoffrey R Automatic cell transfer system with error rate assessment
JP3431693B2 (ja) 1994-09-19 2003-07-28 Kddi株式会社 インテリジェント通信プロトコルモニタ装置
US6078785A (en) * 1996-10-15 2000-06-20 Bush; E. William Demand reporting of electricity consumption by radio in relays to a base station, and demand relays wattmeters so reporting over a wide area
US5809016A (en) * 1997-03-31 1998-09-15 Motorola, Inc. Selective call receiver and method of processing diversity messages
US6006254A (en) * 1997-08-29 1999-12-21 Mitsubishi Electric Information Technology Center America, Inc. System for the reliable, fast, low-latency communication of object state updates over a computer network by combining lossy and lossless communications
US6381241B1 (en) * 1997-09-30 2002-04-30 Wireless Access Duplicate message detection and mending of garbled messages
US6209111B1 (en) * 1998-11-09 2001-03-27 Microsoft Corporation Error correction on a mobile device
JP2005284600A (ja) * 2004-03-29 2005-10-13 Toshiba Corp タイムスタンプ補正装置及びタイムスタンプ補正システム
JP4829563B2 (ja) 2005-08-03 2011-12-07 キヤノン株式会社 制御方法及び制御装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11234277A (ja) * 1998-02-19 1999-08-27 Mitsubishi Electric Corp 管理システム
JP2002514797A (ja) * 1998-05-07 2002-05-21 サムスン エレクトロニクス カンパニー リミテッド ネットワークで汎用的にアクセスする命令及び制御情報のための方法及び装置
JP2002228551A (ja) * 2001-01-31 2002-08-14 Haruo Morita 車両診断システム
JP2002300226A (ja) * 2001-03-30 2002-10-11 Digital Electronics Corp 通信プログラム作成装置、通信プログラムの作成プログラム、およびこれを記録したコンピュータ読み取り可能な記録媒体

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009264770A (ja) * 2008-04-22 2009-11-12 Sii Ido Tsushin Kk 車両診断システム、車両診断端末、情報サーバ装置および車両診断方法

Also Published As

Publication number Publication date
US20070038695A1 (en) 2007-02-15
JP4541994B2 (ja) 2010-09-08
US7549010B2 (en) 2009-06-16

Similar Documents

Publication Publication Date Title
JP4829563B2 (ja) 制御方法及び制御装置
US8832089B2 (en) Information processing device, method and server for determining type of electric appliance
US7751428B2 (en) System and method for accessing SMASH-CLP commands as a web service
US7809845B2 (en) Apparatus and method for transmitting command
CN1934844B (zh) 服务器设备、客户机设备以及网络系统
US20070159650A1 (en) Printing apparatus, and firmware updating method therefor
US20020046268A1 (en) Method of performing a network management transaction using a web-capable agent
JP2005151142A (ja) 情報通信システムおよび方法、情報処理装置および方法、プログラム並びに記録媒体
US7975054B2 (en) Network device and control method of the same
US20050286435A1 (en) Remote management system
JP2005196559A (ja) Webサーバ組み込みビジネス機器
JP2008225911A (ja) Itリソース構成の変更検知方法
JP4541994B2 (ja) 制御装置、制御方法及びプログラム
JP2006203731A (ja) ネットワーク中継装置、ネットワーク接続情報閲覧システム、及びネットワーク接続情報通知方法
CN101527725A (zh) 信息提供服务器、程序、信息提供方法以及信息提供系统
JP7147264B2 (ja) デバイス管理システム、デバイス管理装置、中継管理装置、デバイス管理方法、デバイス管理プログラム、および中継管理プログラム
JP5441927B2 (ja) Ruiプロファイリングのためのネットワークシステムおよび方法
JP2005158017A (ja) ネットワーク機器により提供されるサービス要請装置及び方法
JP2005174303A (ja) デバイス管理装置及びその制御方法、並びに制御プログラム
JP2006146298A (ja) アプリケーションのタイムアウト時間調整システムおよび方法ならびにサーバ装置およびそのプログラム
JP5228081B2 (ja) 宅内機器管理システム及び宅内機器管理方法
JP2007179119A (ja) 計算機システム
JP2005101741A (ja) 通信装置、方法、機器制御装置、方法、及び、プログラム
JP2006072910A (ja) クライアント、サービス利用プログラム及び記録媒体
JP5194670B2 (ja) ウェブサービスシステム、ウェブサービス提供装置およびプログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080715

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080715

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100201

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100402

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100618

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100624

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130702

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees