(57)【要約】【課題】デバイスが送信するデータを一時的に保存し、保存したデータをデバイスの要求に応じて送信するキャッシュサーバは、通信の設定をコンフィギュレーションツールから取得する。このため、キャッシュサーバがコンフィギュレーションツールに依存するため、単体で動作することができなかった。本発明は、単体で動作することができるキャッシュサーバおよびこのキャッシュサーバを備えたシステムを提供することを目的とする。【解決手段】キャッシュサーバがネットワークに接続されると存在要請メッセージを送信し、デバイスは存在応答メッセージを送信して自身のアドレスを通知する。キャッシュサーバは応答のあったデバイスにセッション情報要求メッセージを送信し、デバイスはこのメッセージの応じてセッション情報を送信する。また、デバイスは定期通知メッセージを定期的にキャッシュサーバに送信し、セッション情報の変更を通知する。キャッシュサーバはコンフィギュレーションツールに依存せず、単体で動作できる。【選択図】図３
2010245824.tif 000002
【特許請求の範囲】
【請求項１】
データを送信し、また送信されたデータを受信するデバイスと、このデバイスが送信したデータを一時的に保存し、データ取得要求があったときに保存されたデータを送信するキャッシュサーバが接続されたサーバシステムにおいて、
前記デバイスは、
キャッシュサーバの要請に応じてセッション情報を送信し、またセッション情報を具備した定期通知メッセージを定期的に送信し、
前記キャッシュサーバは、
接続されたときに存在要請メッセージを送信するかセッション情報を受信してエントリを作成し、定期通知メッセージを受信してこのエントリを更新すると共に、デバイスから送信されたデータを保存することを特徴とするサーバシステム。
【請求項２】
前記デバイスは、存在要請メッセージを受信すると自身のアドレスを含んだ存在応答メッセージを送信し、また前記キャッシュサーバが送信したセッション情報要求メッセージを受信するとセッション情報を含んだセッション情報応答メッセージを送信し、
前記キャッシュサーバは、存在応答メッセージを受信すると、この存在応答メッセージに含まれるアドレスにセッション情報要求メッセージを出力し、送られてきたセッション情報に基づいてエントリを作成するようにしたことを特徴とする請求項１記載のサーバシステム。
【請求項３】
前記エントリには、少なくとも送信元アドレス、送信先アドレス、送信先ポート番号が含まれていることを特徴とする請求項１若しくは請求項２記載のサーバシステム。
【請求項４】
前記キャッシュサーバは、受信した保存すべきデータが含まれているメッセージを、メッセージごと保存するようにしたことを特徴とする請求項１乃至請求項３いずれかに記載のサーバシステム。
【請求項５】
前記キャッシュサーバは、受信した保存すべきデータが含まれているメッセージからデータを抜き出し、データのみ保存するようにしたことを特徴とする請求項１乃至請求項３いずれかに記載のサーバシステム。
【請求項６】
前記キャッシュサーバは通信のプロトコルとメッセージ中のデータ位置の対応テーブルを保持し、この対応テーブルを参照してメッセージからデータを抜き出すようにしたことを特徴とする請求項５記載のサーバシステム。
【請求項７】
前記キャッシュサーバは、セッション情報を送信したデバイスに制御パケットフォーマット要求メッセージを送信し、この制御パケットフォーマット要求メッセージに応答して送られてくる制御パケットフォーマット応答メッセージに基づいてデータの位置を取得し、
前記デバイスは、制御パケットフォーマット要求メッセージを受信したときに、プロトコル名とデータフォーマットおよびサイズのデータを含んだ制御パケットフォーマット応答メッセージを前記キャッシュサーバに送信するようにしたことを特徴とする請求項６記載のサーバシステム。
【請求項８】
設定情報が格納される設定情報格納部と、
前記設定情報格納部に、受信した設定に関する情報を格納する設定部と、
受信したデータを格納する受信データ格納部と、
前記設定部によって起動され、受信したデータを前記受信データ格納部に保存するデータ保存部と、
デバイスと通信を行い、設定情報を取得してこの取得した設定情報を前記設定情報格納部に格納する設定情報自動取得部と、
データ送信要求があったときに、前記受信データ格納部に格納されたデータを読み出し、要求元に送信するデータ読み込み部と、
を具備したことを特徴とするキャッシュサーバ。
【請求項９】
プロトコルとメッセージ中のデータ位置の対応テーブルが格納されたデータ位置格納部を具備し、
前記設定情報自動取得部はデバイスにパケットフォーマットを要求してこのパケットフォーマットを用いてプロトコルとデータ位置の対応テーブルを作成して前記データ位置格納部に格納し、
前記データ保存部は、前記データ位置格納部に格納されたプロトコルとデータ位置の対応テーブルを参照して受信したメッセージからデータを取り出し、前記受信データ格納部に格納するようにしたことを特徴とする請求項８記載のキャッシュサーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークに送信されたデータを一時的に保存するキャッシュサーバおよびこれを具備したサーバシステムに関し、特に制御システムに用いて好適なキャッシュサーバおよびこれを具備したサーバシステムに関するものである。
【背景技術】
【０００２】
制御システムでは、制御ネットワーク上に設置されたバブリッシャ(publisher)とサブスクライバ(subscriber)間で定期的に制御通信が行われている。この制御通信では、マルチキャストを用いてパブリッシャからサブスクライバに制御データが送信される。この制御データはプラントなどを制御する上で非常に重要なので、数世代に渡ってキャッシュサーバに保存することが行われている。
【０００３】
図１７に、制御通信のデータを保存するシステムの構成およびその動作を示す。図１７において、コンフィギュレーションツール１０は制御通信の設定情報をパブリッシャ１１、サブスクライバ１２、キャッシュサーバ１３に送信するツールである。なお、パブリッシャ１１、サブスクライバ１２は通常複数台存在するが、図１７では各１台のみ記載している。
【０００４】
図１７において、（Ａ）でコンフィギュレーションツール１０は制御通信の設定情報をパブリッシャ１１、サブスクライバ１２に送信する。パブリッシャ１１、サブスクライバ１２はこの設定情報に基づいて、自身を設定する。また、コンフィギュレーションツール１０はキャッシュサーバ１３にも同じ設定情報を通知する。これによってキャッシュサーバ１３はサブスクライバとして動作し、サブスクライバ１２が受信する制御通信を受信することができる。
【０００５】
（Ｂ）で、パブリッシャ１１はマルチキャストで制御通信を送信する。この制御通信はサブスクライバ１２とキャッシュサーバ１３で受信される。キャッシュサーバ１３は受信した制御通信のデータを保存する。
【０００６】
（Ｃ）でもパブリッシャ１１はマルチキャストでサブスクライバ１２とキャッシュサーバ１３に制御通信を送信する。キャッシュサーバ１３はこの制御通信を受信してそのデータを保存するが、何らかの理由でサブスクライバ１２は制御通信を受信できない。
【０００７】
サブスクライバ１２は定時の制御通信を受信できなかったので、（Ｄ）でキャッシュサーバ１３に制御通信の有無を問い合わせる。キャッシュサーバ１３は、問い合わせに対応する制御通信のデータをサブスクライバ１２に送信する。このようにすることにより、何らかの原因でサブスクライバ１２が制御通信を受信できなくても、送られてきた制御通信のデータを得ることができる。
【０００８】
図１８にキャッシュサーバの構成を示す。キャッシュサーバ２０は受信インターフェイス部２１、設定部２２、設定情報格納部２３、データ保存部２４、データ格納部２５、データ読み込み部２６、送信インターフェイス部２７で構成される。
【０００９】
受信インターフェイス部２１は、コンフィギュレーションツール１０から送信された設定情報を受信すると、この設定情報を設定部２２に出力する。設定部２２は、入力した設定情報を設定情報格納部２３に格納すると共に、この設定情報に基づいてキャッシュサーバ２０の設定を行う。
【００１０】
設定情報に基づいた設定が行われデータ保存部２４が起動すると、キャッシュサーバ２０は設定情報格納部２３に格納された設定情報の範囲で、制御通信のマルチキャストグループに参加することができる。マルチキャストグループの参加に関しては、ＲＦＣ(Request for Comments)で定められるＭＬＤ(Multicast Listener Discovery Protocol)やマルチキャスト経路制御機能、MLD Snooping Switch機能が正しく動作していることが前提になるが、本発明とは直接関係がないので、説明を省略する。
【００１１】
制御通信を受信すると、受信インターフェイス部２１は制御通信のデータをデータ保存部２４に出力する。データ保存部２４はこの制御通信のデータをデータ格納部２５に保存する。
【００１２】
制御通信を受信できなかったサブスクライバから送信されたデータ取得要求を受信すると、受信インターフェイス部２１はこのデータ取得要求をデータ読み込み部２６に出力する。データ読み込み部２６は、データ取得要求に合致したセッションの制御通信のデータをデータ格納部２５から読み込み、この読み込んだデータを送信インターフェイス部２７に出力する。送信インターフェイス部２７は、データ取得要求を送信したサブスクライバにこのデータを送信する。
【００１３】
設定情報格納部２３に保存される設定情報の一例を図１９に示す。設定情報格納部２３には、受信した設定情報に対応して、複数のエントリが格納される。各エントリはセッション識別子、送信元アドレス、送信先アドレス、送信先ポート番号、送信間隔その他の設定値で構成される。キャッシュサーバ２０は、これらのエントリに合致した制御通信のデータを保存する。
【００１４】
パブリッシャ１１、サブスクライバ１２の構成を図２０に示す。なお、パブリッシャとサブスクライバをデバイスと総称する。図２０において、３０はデバイスであり、通信部３１、固有機能ブロック部３２、スケジュール管理部３３で構成される。デバイス３０は通信部３１によって他のデバイスと通信する。
【００１５】
通信部３１は他のデバイスと通信を行い、制御データを交換する。固有機能ブロック部３２は機能ブロックの固有情報を具備し、用途によってファジィ推論のようなＡＩ(Artificial Intelligence)、ＰＩＤ、ＡＯ(Analog Out)等の機能を実現する。スケジュール管理部３３はスケジュール情報を具備し、デバイスのスケジュール動作を管理する。
【００１６】
通信部３１がコンフィギュレーションツールから設定情報を受信すると、この設定情報に基づいて、固有機能ブロック部３２、スケジュール管理部３３の情報が更新される。これにより、デバイスはマルチキャストグループに参加し、制御データを送受信することができる。
【先行技術文献】
【特許文献】
【００１７】
特開２００２−３２２６０号公報
【発明の概要】
【発明が解決しようとする課題】
【００１８】
しかしながら、このようなキャッシュサーバはコンフィギュレーションツールから送られてくる設定情報を受信しないと動作を開始することができない。このため、キャッシュサーバ単体では動作できず、その動作はコンフィギュレーションツールに依存してしまうという課題があった。
【００１９】
制御通信に用いられる送信マルチキャストアドレスが取り得る範囲の全てのマルチキャストグループに参加して、これらのグループ内のデバイスがマルチキャストで送信する全ての制御データを受信して保存するようにすると、コンフィギュレーションツールに依存せず単体で動作することはできる。
【００２０】
しかし、実際に制御ネットワークで使用されていないマルチキャストグループに参加できるようにするためには、キャッシュサーバが接続するスイッチやルータに不用なマルチキャストフォワーディングテーブルを作成しなければならないので、スイッチやルータのリソースを必要以上に消費してしまうという課題もあった。
【００２１】
本発明の目的は、キャッシュサーバ自身がデバイス間で通信されるマルチキャスト制御通信の情報を自動的に取得できるようにすることにより、不用なリソースを消費することなく単体で動作可能なキャッシュサーバを実現することにある。
【課題を解決するための手段】
【００２２】
このような課題を達成するために、本発明のうち請求項１記載の発明は、
データを送信し、また送信されたデータを受信するデバイスと、このデバイスが送信したデータを一時的に保存し、データ取得要求があったときに保存されたデータを送信するキャッシュサーバが接続されたサーバシステムにおいて、
前記デバイスは、
キャッシュサーバの要請に応じてセッション情報を送信し、またセッション情報を具備した定期通知メッセージを定期的に送信し、
前記キャッシュサーバは、
接続されたときに存在要請メッセージを送信するかセッション情報を受信してエントリを作成し、定期通知メッセージを受信してこのエントリを更新すると共に、デバイスから送信されたデータを保存することを特徴とするものである。キャッシュサーバはコンフィギュレーションツールに依存せず、単体で動作できる。
【００２３】
請求項２記載の発明は、請求項１記載の発明において、
前記デバイスは、存在要請メッセージを受信すると自身のアドレスを含んだ存在応答メッセージを送信し、また前記キャッシュサーバが送信したセッション情報要求メッセージを受信するとセッション情報を含んだセッション情報応答メッセージを送信し、
前記キャッシュサーバは、存在応答メッセージを受信すると、この存在応答メッセージに含まれるアドレスにセッション情報要求メッセージを出力し、送られてきたセッション情報に基づいてエントリを作成するようにしたものである。キャッシュサーバが自律的に情報を収集して動作できる。
【００２４】
請求項３記載の発明は、請求項１若しくは請求項２記載の発明において、
前記エントリに、少なくとも送信元アドレス、送信先アドレス、送信先ポート番号が含めるようにした。エントリを参照することによって、送信先の宛先がわかる。
【００２５】
請求項４記載の発明は、請求項１乃至請求項３いずれかに記載の発明において、
前記キャッシュサーバは、受信した保存すべきデータが含まれているメッセージを、メッセージごと保存するようにしたものである。保存および送信の処理が簡単になる。
【００２６】
請求項５記載の発明は、請求項１乃至請求項３いずれかに記載の発明において、
前記キャッシュサーバは、受信した保存すべきデータが含まれているメッセージからデータを抜き出し、データのみ保存するようにしたものである。データ処理機のような、デバイス以外の機器の要求にも応じることができる。
【００２７】
請求項６記載の発明は、請求項５記載の発明において、
前記キャッシュサーバは通信のプロトコルとメッセージ中のデータ位置の対応テーブルを保持し、この対応テーブルを参照してメッセージからデータを抜き出すようにしたものである。簡単にメッセージからデータを抜き出すことができる。
【００２８】
請求項７記載の発明は、請求項６記載の発明において、
前記キャッシュサーバは、セッション情報を送信したデバイスに制御パケットフォーマット要求メッセージを送信し、この制御パケットフォーマット要求メッセージに応答して送られてくる制御パケットフォーマット応答メッセージに基づいてデータの位置を取得し、
前記デバイスは、制御パケットフォーマット要求メッセージを受信したときに、プロトコル名とデータフォーマットおよびサイズのデータを含んだ制御パケットフォーマット応答メッセージを前記キャッシュサーバに送信するようにしたものである。プロトコルとデータ位置の対応テーブルを作成することができる。
【００２９】
請求項８記載の発明は、
設定情報が格納される設定情報格納部と、
前記設定情報格納部に、受信した設定に関する情報を格納する設定部と、
受信したデータを格納する受信データ格納部と、
前記設定部によって起動され、受信したデータを前記受信データ格納部に保存するデータ保存部と、
デバイスと通信を行い、設定情報を取得してこの取得した設定情報を前記設定情報格納部に格納する設定情報自動取得部と、
データ送信要求があったときに、前記受信データ格納部に格納されたデータを読み出し、要求元に送信するデータ読み込み部と、
を具備したものである。コンフィギュレーションツールに依存せず、単体で動作できる。
【００３０】
請求項９記載の発明は、請求項８記載の発明において、
プロトコルとメッセージ中のデータ位置の対応テーブルが格納されたデータ位置格納部を具備し、
前記設定情報自動取得部はデバイスにパケットフォーマットを要求してこのパケットフォーマットを用いてプロトコルとデータ位置の対応テーブルを作成して前記データ位置格納部に格納し、
前記データ保存部は、前記データ位置格納部に格納されたプロトコルとデータ位置の対応テーブルを参照して受信したメッセージからデータを取り出し、前記受信データ格納部に格納するようにしたものである。データ処理機のような、デバイス以外の機器の要求にも応じることができる。
【発明の効果】
【００３１】
本発明によれば以下のような効果がある。
請求項１、２、３、４、５、６、７、８、９の発明によれば、キャッシュサーバの要請に応じてセッション情報を送信し、またセッション情報が含まれた定期通知メッセージを定期的に送信するデバイスと、デバイスが送信したセッション情報を受信してエントリを作成し、また定期通知メッセージを受信してエントリを更新すると共に、デバイスが送信したデータを一時的に保存するキャッシュサーバを具備した。
【００３２】
キャッシュサーバ自体がデバイスの情報を収集するので、コンフィギュレーションツールに依存することなく、単体で動作が可能であるという効果がある。
【００３３】
また、キャッシュサーバが自律的にデータ収集に必要なマルチキャストグループに参加することができるので、効率的にデータを収集、保存することができるという効果もある。また、不要なマルチキャストグループに参加しなくてもよいので、スイッチやルータのリソースを必要以上に消費することがなくなるという効果がある。
【００３４】
また、自律的にセッション情報を収集してデータを取得するので、キャッシュサーバの設定が不要になり、コンフィギュレーションツールを操作する作業員の負担が軽減されるという効果もある。また接続されると自動的にデータ収集を開始するプラグアンドプレイが可能になるという効果もある。
【００３５】
また、デバイスが送信する定期通知メッセージを受信して設定の変更を行うので、ネットワークの構成が変更された場合でも、柔軟に対応することができるという効果もある。
【００３６】
さらに、メッセージからデータを抜き出してデータのみ保存するようにすることにより、通信のプロトコルに依存しないデータの保存が可能になるという効果もある。
【図面の簡単な説明】
【００３７】
【図１】本発明に係るキャッシュサーバの構成図である。
【図２】本発明に係るデバイスの構成図である。
【図３】メッセージ授受の手順を示した図である。
【図４】本発明の一実施例を示すフローチャートである。
【図５】エントリの構成図である。
【図６】存在要請メッセージの構成図である。
【図７】存在応答メッセージの構成図である。
【図８】定期通知メッセージの構成図である。
【図９】定期通知メッセージの構成図である。
【図１０】セッション情報要求メッセージの構成図である。
【図１１】セッション情報応答メッセージの構成図である。
【図１２】セッション情報応答メッセージの構成図である。
【図１３】本発明による他のキャッシュサーバの構成図である。
【図１４】制御パケットフォーマット要求メッセージの構成図である。
【図１５】制御パケットフォーマット応答メッセージの構成図である。
【図１６】エントリの構成図である。
【図１７】従来のキャッシュサーバを有するシステムのメッセージ授受の手順を示した図である。
【図１８】従来のキャッシュサーバの構成図である。
【図１９】エントリの構成図である。
【図２０】従来のデバイスの構成図である。
【発明を実施するための形態】
【００３８】
以下本発明を、図面を用いて詳細に説明する。図１は本発明に係るキャッシュサーバの一実施例を示した構成図である。なお、図１８と同じ要素には同一符号を付し、説明を省略する。
【００３９】
このキャッシュサーバは、キャッシュサーバ自身がデバイス間のセッション情報を取得し、この取得したセッション情報を用いて制御通信で使用されているマルチキャストグループに参加してデータを保存することが可能なものである。これによって、コンフィギュレーションツールに依存せず、単体動作が可能になる。また、ネットワークの構成が変更されても柔軟に対応でき、操作作業員の負担を軽減することもできる。
【００４０】
セッション情報は通信を行うために必要な情報であり、送信元アドレス、送信先アドレス、送信先ポート番号などの情報が含まれる。
【００４１】
図１において、４０はキャッシュサーバであり、受信インターフェイス部２１、設定部２２、設定情報格納部２３、データ保存部４２、メッセージ格納部４３、データ読み込み部２６、送信インターフェイス部２７、および設定情報自動取得部４１で構成される。メッセージ格納部４３は受信データ格納部に相当する。
【００４２】
受信インターフェイス部２１が受信した設定情報は設定部２２に入力される。設定部２２は入力された設定情報を設定情報格納部２３に格納すると共に、この設定情報に基づいて設定を行い、データ保存部４２を起動する。
【００４３】
受信インターフェイス部２１を介して受信された制御通信のメッセージは、データ保存部４２に出力される。データ保存部４２は、入力されたメッセージをメッセージ格納部４３に保存する。
【００４４】
受信インターフェイス部２１を介して受信されたデータ取得要求は、データ読み込み部２６に入力される。データ読み込み部２６はデータ取得要求に合致したセッションのメッセージをメッセージ格納部４３から読み込み、送信インターフェイス部２７を介してこの読み込んだメッセージを、データ取得要求を送信したデバイスに送信する。
【００４５】
設定情報自動取得部４１は、受信インターフェイス部２１が受信したセッション自動取得のメッセージを用いて保存対象になる制御通信のエントリを作成し、このエントリを設定情報格納部２３に登録する。
【００４６】
図２に、キャッシュサーバ４０と同じネットワークに接続される、パブリッシャとサブスクライバであるデバイスの構成を示す。
【００４７】
図２において、５０はデバイスであり、セッション自動取得部５１、スケジュール管理部５５、固有機能ブロック部５６、通信部５７で構成される。セッション自動取得部５１は、メッセージ処理部５２、セッション情報格納部５３、セッション情報取得部５４で構成される。
【００４８】
セッション自動取得部５１は、キャッシュサーバが送信するセッション情報要求に応答し、またセッション情報を定期的に外部に通知する機能を有している。
【００４９】
メッセージ処理部５２はキャッシュサーバから送信されたメッセージを解析し、応答先アドレスをセッション情報格納部５３に格納する。また、セッション情報格納部５３から応答先アドレスを含む応答に必要な情報を取得し、デバイスに送信するメッセージを作成する。定期通知メッセージのようなセッション情報を設定する必要があるメッセージを作成するときは、セッション情報取得部５４にその旨を通知して必要な情報を取得し、メッセージを作成する。
【００５０】
セッション情報格納部５３には、キャッシュサーバと通信するための応答先アドレスと要求用マルチキャストアドレス、要求用ポート番号、通知用マルチキャストアドレス、通知用ポート番号、応答用ポート番号等の情報が格納される。
【００５１】
セッション情報取得部５４は、メッセージ処理部５２から要求があったときに、スケジュール管理部５５からセッション情報を取得する。例えば、ＦＦ−ＨＳＥ（Foundation fieldbus-High Speed Ethernet）ではスケジュール管理部５５からSessionEndpointEntryの情報を取得し、この取得した情報から送信元アドレス、送信先アドレス、送信先ポート番号を取得してメッセージ処理部５２にこれらの情報を渡す。
【００５２】
次に、図３を用いてコンフィギュレーションツール、パブリッシャ、サブスクライバ、キャッシュサーバ間の通信について説明する。図３において、６０〜６３はそれぞれコンフィギュレーションツール、パブリッシャ、サブスクライバ、キャッシュサーバである。
パブリッシャ６１、サブスクライバ６２はデバイス５０と同様の構成を有し、キャッシュサーバ６３はキャッシュサーバ４０と同じ構成を有している。通常パブリッシャ６１、サブスクライバ６２は複数第存在するが、この図では各１台としている。
【００５３】
先ず、（Ａ）で制御通信の設定をデバイスに反映させるために、コンフィギュレーションツール６０はパブリッシャ６１、サブスクライバ６２に設定情報を送信する。パブリッシャ６１、サブスクライバ６２はこの設定情報に基づいて自身を設定する。
【００５４】
次に、キャッシュサーバ６３がネットワークに接続される。（Ｂ）に示すように、キャッシュサーバ６３はネットワークに接続されているデバイスの情報を取得するために、存在要請メッセージをマルチキャストでパブリッシャ６１、サブスクライバ６２に送信する。キャッシュサーバ６３がネットワークに接続するタイミングはデバイスの設定が完了する前後いずれでもよいが、存在要請メッセージはキャッシュサーバ６３がネットワークに接続された直後に送信する。
【００５５】
存在要請メッセージを受信したデバイスは、（Ｃ）に示すように存在応答メッセージをキャッシュサーバ６３に送信する。存在応答メッセージを受信したキャッシュサーバ６３内の受信インターフェイス部２１は、この存在応答メッセージを設定情報自動取得部４１に出力する。
【００５６】
設定情報自動取得部４１は、入力された存在応答メッセージをトリガーとして、設定情報を取得する。存在応答メッセージにはメッセージを送信したデバイスのアドレスが格納されているので、このアドレスを用いて送信元のデバイスと通信を行うことにより、設定情報格納部２３に設定情報のエントリを作成するための情報を収集する。（Ｄ）はデバイスと通信して設定情報を取得し、エントリを作成する工程を示している。この工程の詳細は後述する。
【００５７】
コンフィギュレーションツール６０によってデバイス（パブリッシャ６１、サブスクライバ６２）の制御通信の設定が変更されたときは、（Ｅ）に示すように、コンフィギュレーションツール６０はデバイスに設定変更情報を通知する。設定変更情報を受信したデバイスは、この設定変更情報に基づいて、制御通信の設定を変更する。
【００５８】
（Ｆ）に示すように、デバイスは一定間隔で定期通知メッセージをキャッシュサーバ６３に送信している。制御通信の設定が変更されたときは、デバイスは定期通知メッセージにそのデバイスが現在参加しているセッションのセッション情報を格納して送信する。
【００５９】
キャッシュサーバ６３が受信した定期通知メッセージは、設定情報自動取得部４１に入力される。前述したように、定期通知メッセージには参加しているセッションのセッション情報が含まれているので、このセッション情報を参照することにより、制御通信の設定が変更されたことを知ることができる。
【００６０】
設定情報自動取得部４１は入力された定期通知メッセージにセッション情報が格納されているかをチェックする。セッション情報が格納されていると設定情報格納部２３に同じセッション情報があるかどうかを確認し、あればエントリのタイマを再起動してメッセージを破棄し、設定情報が更新されていると設定情報格納部２３に格納されている設定情報を更新してタイマを設定する。
【００６１】
キャッシュサーバ６３が制御通信を受信すると、この制御通信のメッセージをメッセージ格納部４３に保存する。キャッシュサーバ４０は、セッション毎に過去のメッセージを保存する。
【００６２】
制御データ格納部４３に保存するメッセージは、例えばデバイス毎に過去５メッセージのみを保存し、それより古いメッセージは順に上書きして消去する。どの程度過去のメッセージを残しておくかは、デバイスがどの程度過去のメッセージを要求するかを想定して決定する。より過去のメッセージを保存しておくとデバイスの要求により対応できるが、メッセージ格納部４３の記憶領域をより多く取らなければならない。
【００６３】
図４は、キャッシュサーバ６３がデバイスと通信を行い、設定情報を取得する手順を示すフローチャートである。図４において、工程（Ｐ４−１）でキャッシュサーバ６３は、存在応答メッセージを返信したデバイスに対して、セッション情報要求メッセージを送信する。
【００６４】
工程（Ｐ４−２）で、デバイス内の通信部５７はこのセッション情報要求メッセージを受信すると、このメッセージをメッセージ処理部５２に出力する。工程（Ｐ４−３）でメッセージ処理部５２はセッション情報要求メッセージから応答先のアドレスを抽出し、このアドレスをセッション情報格納部６３に格納し、その後セッション情報取得部５４にこのメッセージを転送する。
【００６５】
工程（Ｐ４−４）で、セッション情報取得部５４はスケジュール管理部５５から送信元アドレス、送信先アドレス、送信先ポート番号を取得し、これらの情報をメッセージ処理部５２に出力する。
【００６６】
工程（Ｐ４−５）で、メッセージ処理部５２はセッション情報取得部５４から入力されたアドレスなどの情報と、セッション情報格納部５３に格納された送信先アドレスを用いてセッション情報応答メッセージを作成し、通信部５７に出力する。通信部５７は、工程（Ｐ４−６）でこのセッション情報応答メッセージをキャッシュサーバ６３に送信する。
【００６７】
キャッシュサーバ６３内の受信インターフェイス部２１は、受信したセッション情報応答メッセージを設定情報自動取得部４１に出力する。設定情報自動取得部４１は、入力されたセッション情報応答メッセージから制御通信取得対象のエントリを作成し、設定情報格納部２３に登録する。その際、エントリにタイマを設定する。このタイマはエントリの有効期間を定めるものであり、タイマが０になるとエントリは削除される。
【００６８】
また、設定情報格納部２３に登録する際に既登録のエントリをチェックし、同じ値を有するエントリが既に登録されているときは登録を行わず、既登録のエントリのタイマを再起動させる。
【００６９】
設定情報自動取得部４１は、受信したセッション情報応答メッセージから送信元アドレス、送信先アドレス（マルチキャストアドレス）、送信先ポート番号（ＵＤＰの送信先ポート番号）の情報を取得する。エントリを作成するためには、送信元アドレス、送信先アドレス、送信ポート番号は最低限必要なので、これらの情報は重要な要素になる。エントリの他の登録項目として、例えばマクロサイクル等がある。
【００７０】
設定情報格納部２３にエントリが登録されるとデータ保存部４２が起動し、エントリの送信先マルチキャストアドレスグループに参加することができる。設定情報自動取得部４１は保存対象になるエントリを作成すると、適宜設定情報格納部２３に登録する。
【００７１】
図５に、キャッシュサーバ６３内の設定情報格納部２３に登録されるエントリの構成例を示す。設定情報格納部２３には複数のエントリが格納される。また、各エントリには、送信元アドレス、送信先アドレス、送信先ポート番号、有効期限を規定するタイマ等の情報が格納される。
【００７２】
図６〜図１２に、メッセージのフォーマットを示す。なお、通知用マルチキャストアドレス、要求用マルチキャストアドレス、応答用ポート番号、通知用ポート番号、要求用ポート番号は、デバイスに予め設定されている。また、ポート番号のＡＮＹは任意のポート番号を使用することを表している。
【００７３】
メッセージにはＩＰヘッダ、ＵＤＰヘッダ、ペイロードに分かれている。ＩＰヘッダには送信元／送信先のアドレス情報が格納され、ＵＤＰヘッダには使用するポートの情報が格納される。また、ペイロードにはメッセージのタイプやセッション情報等が格納される。
【００７４】
図６は、キャッシュサーバがネットワークに接続されたときに、デバイスの存在を確認するために送信する存在要請メッセージのフォーマットである。このメッセージは要求用マルチキャストアドレスに送信される。また、送信先ポートは要求用ポート番号とする。ぺイロードに格納する応答先アドレスは返信する宛先であり、キャッシュサーバ自身とする。
【００７５】
図７は存在要請メッセージを受信したときに、デバイスが返信する存在応答メッセージのフォーマットである。この存在応答メッセージは、パブリッシャが返信するものと、サブスクライバが返信するものがある。この存在応答メッセージの送信先は、存在要請メッセージの応答先アドレスフィールドに格納されたアドレスとする。また、デバイスアドレスは存在応答メッセージを送信したデバイスのアドレスが格納される。
【００７６】
図８に、パブリッシャが一定間隔で定期的に送信する定期通知メッセージのフォーマットを示す。この定期通知メッセージのペイロードには、パブリッシャが通信しているセッション情報が格納される。セッション情報の送信元アドレスには、送信元であるパブリッシャのアドレスが、送信先アドレスにはサブスクライバのマルチキャストアドレスが格納される。また、送信先ポート番号には、セッションのポート番号が格納される。なお、サブスクライバが送信する定期通知も、同様の構成を有している。
【００７７】
図９に、定期通知メッセージの他のフォーマットを示す。この定期通知メッセージはサブスクライバが送信するものであるが、セッション情報が格納されておらず、ｎｕｌｌになっている。制御通信の設定が変更されないときは、セッション情報は送信されない。
【００７８】
図１０に、キャッシュサーバがセッション情報の自動取得を開始する際に、存在要請メッセージで応答のあったデバイスに送信するセッション情報要求メッセージのフォーマットを示す。ペイロードには応答を返すアドレスとしてキャッシュサーバ自身のアドレスが格納される。
【００７９】
図１１はセッション情報要求メッセージを受信したときに返信されるセッション情報応答メッセージのフォーマットであり、定期通知メッセージと同様のフォーマットを有している。セッション情報応答メッセージは、セッション情報要求メッセージの応答先アドレスフィールドに格納されたアドレスに送信される。ペイロードにはセッション情報が格納され、その送信元アドレスフィールドにはセッションの送信元アドレスが格納され、送信先アドレスフィールドにはセッションの送信先アドレスが、送信先ポート番号にはセッションの送信先アドレスが格納される。図１２は同じセッション情報応答メッセージであるが、セッション情報は格納されておらず、ｎｕｌｌになっている。
【００８０】
キャッシュサーバ６３は、受信したメッセージをそのままの形でメッセージ格納部４３に保存し、要求があったときにメッセージ格納部４３に格納されたメッセージをそのまま要求先に送信する。図３で説明したように、キャッシュサーバ６３が保存したデータを送信する先はパブリッシャ６１あるいはサブスクライバ６２であり、送信するメッセージはもともとこれらのデバイス宛に送信したものなので、受信したメッセージをそのまま返信しても、これらのデバイスが処理できるためである。
【００８１】
しかし、制御データを解析するデータ解析機のようなデバイス以外の機器に送信する場合は、受信したメッセージをそのまま送信しても、これらの機器はメッセージを処理することができない。
【００８２】
デバイス以外の機器がメッセージを処理するためには、メッセージのフォーマットに関する情報を知る必要がある。そのためにデバイス以外の機器にメッセージフォーマットを持たせることが考えられるが、プロトコルに依存しないようにするという観点から望ましい方法ではない。
【００８３】
以上の観点から、キャッシュサーバがメッセージから制御データを抜き出し、制御データのみ保存するようにすると、機器にプロトコル依存性を持たせないようにすることができる。
【００８４】
図１３に、このようなメッセージから制御データを抜き出し、保存することができるキャッシュサーバの構成を示す。なお、図１と同じ要素には同一符号を付し、説明を省略する。
【００８５】
図１３において、７０はキャッシュサーバであり、受信インターフェイス部２１、設定部２２、設定情報自動取得部７１、データ保存部７２、データ位置格納部７３、設定情報格納部７４、制御データ格納部７５、データ読み込み部７６、送信インターフェイス部２７で構成される。制御データ格納部７５は、受信データ格納部に相当する。
【００８６】
設定部２２は入力された設定情報を設定情報格納部７４に格納すると共に、この設定情報に基づいて設定を行い、データ保存部７２を起動する。設定情報自動取得部７１は、受信インターフェイス部２１が受信したセッション自動取得のメッセージを用いて保存対象になる制御通信のエントリを作成し、このエントリを設定情報格納部７４に登録する。
【００８７】
設定情報格納部７４に登録されているエントリにはプロトコル名が格納されており、データ位置格納部７３には、プロトコルとデータ位置の対応テーブルが格納されている。
【００８８】
設定情報自動取得部７４は、デバイスからセッション情報を受信したときに、設定情報格納部に受信したセッションのエントリが登録されているかをチェックする。エントリが登録されていないときは、設定情報自動取得部７１は制御パケットフォーマット要求メッセージを作成して、送信インターフェイス部２７を介して、送信元デバイスにこのメッセージを送信する。
【００８９】
デバイスは、この制御パケットフォーマット要求メッセージを受信すると、メッセージのセッション情報に格納されているセッションが対応しているプロトコル名とそのプロトコルのデータ部を構成するフィールドのサイズとデータタイプを設定し、制御パケットフォーマット応答メッセージを作成して、制御パケットフォーマット要求メッセージを送信したキャッシュサーバに送信する。
【００９０】
キャッシュサーバ７０はこの制御パケットフォーマット応答メッセージを受信し、このメッセージからプロトコル名と制御データ部の位置を求め、この対応テーブルをデータ位置格納部７３に格納する。
【００９１】
キャッシュサーバ７０が制御通信のメッセージを受信すると、設定情報格納部７４に格納されたエントリからプロトコル名を取得し、このプロトコル名を用いてデータ位置格納部７３から制御データのデータ位置を取得して制御データを抜き出し、制御データ格納部７５に格納する。
【００９２】
キャッシュサーバ７０がデータ取得メッセージを受信すると、データ読み込み部７６は制御データ格納部７５から要求された制御データを読み出し、送信インターフェイス部２７を介して要求元に送信する。
【００９３】
図１４に、制御パケットフォーマット要求メッセージのフォーマットを示す。ＩＰヘッダには送信元アドレスとしてキャッシュサーバのアドレスが、送信先アドレスとしてパケットフォーマットを要求するパブリッシャのアドレスが格納される。ペイロードのメッセージタイプは制御パケットフォーマットであり、またセッション情報が格納される。
【００９４】
図１５は制御パケットフォーマット応答メッセージのフォーマットである。ペイロードにはプロトコル名と制御データの全サイズ、および各制御データのデータタイプとサイズが格納される。この図では、全サイズは２０バイトであり、Ｓｔｒｉｎｇ型とＩｎｔｅｇｅｒ型のデータがあることがわかる。
【００９５】
図１６は設定情報格納部７４に格納されるエントリの構成を示した図である。各エントリには、送信元アドレス、送信先アドレス、送信先ポート番号、送信間隔、プロトコル名その他の情報が格納される。
【００９６】
なお、これらの実施例は制御システムについて説明したが、他のシステムに適用することもできる。また、各メッセージには、図示した情報だけでなく、他の情報を格納するようにしてもよい。
【符号の説明】
【００９７】
２１  受信インターフェイス部
２２  設定部
２３、７４  設定情報格納部
２６、７６  データ読み込み部
２７  送信インターフェイス部
４０、６３、７０  キャッシュサーバ
４１、７１  設定情報自動取得部
４２、７２  データ保存部
４３  メッセージ格納部
５０  デバイス
５１  セッション自動取得部
５２  メッセージ処理部
５３  セッション情報格納部
５４  セッション情報取得部
５５  スケジュール管理部
５６  固有機能ブロック部
５７  通信部
６０  コンフィギュレーションツール
６１  パブリッシャ
６２  サブスクライバ
７３  データ位置格納部
７５  制御データ格納部
【図１】
2010245824.tif 000003
【図２】
2010245824.tif 000004
【図３】
2010245824.tif 000005
【図４】
2010245824.tif 000006
【図５】
2010245824.tif 000007
【図６】
2010245824.tif 000008
【図７】
2010245824.tif 000009
【図８】
2010245824.tif 000010
【図９】
2010245824.tif 000011
【図１０】
2010245824.tif 000012
【図１１】
2010245824.tif 000013
【図１２】
2010245824.tif 000014
【図１３】
2010245824.tif 000015
【図１４】
2010245824.tif 000016
【図１５】
2010245824.tif 000017
【図１６】
2010245824.tif 000018
【図１７】
2010245824.tif 000019
【図１８】
2010245824.tif 000020
【図１９】
2010245824.tif 000021
【図２０】
2010245824.tif 000022