(57)【要約】【課題】ファイアウォール外の通信装置がファイアウォール内の情報処理装置の情報を取得できるようにする。【解決手段】通信システムは、ファイアウォールの外部の第１中継装置と内部の第２中継装置とを備える。第１中継装置は、第１受信部と第１送信部とを備える。第１受信部は、ファイアウォール内の情報処理装置に対する情報の取得要求を通信装置から受信し、取得された情報を第２中継装置から受信する。第１送信部は、記憶部に記憶された取得要求を第２中継装置に送信し、第２中継装置から受信した情報を通信装置に送信する。第２中継装置は、第２受信部と取得部と第２送信部とを備える。第２受信部は、第１中継装置から送信された取得要求を受信する。取得部は、取得要求により要求される情報を情報処理装置から取得する。第２送信部は、取得された情報を第１中継装置に送信する。【選択図】図１
2014096685.tif 000002
【特許請求の範囲】
【請求項１】
ファイアウォールの外に存在する第１中継装置と、前記ファイアウォール内に存在する第２中継装置と、を備える通信システムであって、
前記第１中継装置は、
前記ファイアウォール内の情報処理装置に対する情報の取得要求を通信装置から受信するとともに、前記情報処理装置から取得された前記情報を前記第２中継装置から受信する第１受信部と、
前記取得要求を記憶する記憶部と、
前記記憶部に記憶された前記取得要求を前記第２中継装置に送信するとともに、前記第２中継装置から受信した前記情報を前記通信装置に送信する第１送信部と、を備え、
前記第２中継装置は、
前記第１中継装置から送信された前記取得要求を受信する第２受信部と、
前記取得要求により要求される情報を、前記情報処理装置から取得する取得部と、
取得された情報を前記第１中継装置に送信する第２送信部と、を備える、
通信システム。
【請求項２】
前記第２中継装置は、
前記第１中継装置との通信を確立する確立部と、
前記通信を切断する切断部と、をさらに備え、
前記第２送信部は、さらに、前記通信が確立された後に、前記取得要求の送信要求を前記第１中継装置に送信し、
前記切断部は、前記送信要求に応じて前記第１中継装置から送信された前記取得要求を前記第２受信部が受信した後に、前記通信を切断する、
請求項１に記載の通信システム。
【請求項３】
前記第２中継装置は、
前記第１中継装置との通信を確立する確立部と、
前記通信を切断する切断部と、をさらに備え、
前記第２送信部は、前記通信が確立された後に、取得された情報を前記第１中継装置に送信し、
前記切断部は、取得された情報を送信した後に、前記通信を切断する、
請求項１に記載の通信システム。
【請求項４】
前記第１受信部は、さらに、前記情報を取得するタイミングを特定する特定情報を前記通信装置から受信し、
前記第１送信部は、さらに、前記特定情報を前記第２中継装置に送信し、
前記取得部は、前記特定情報で特定されるタイミングで、前記情報処理装置から情報を取得する、
請求項１に記載の通信システム。
【請求項５】
前記特定情報は、前記情報を取得する時間の間隔を特定する情報である、
請求項４に記載の通信システム。
【請求項６】
前記特定情報は、前記情報を取得する時刻を特定する情報である、
請求項４に記載の通信システム。
【請求項７】
前記第２中継装置は、
前記情報を取得するタイミングを推定する推定部をさらに備え、
前記取得部は、推定されたタイミングで、前記情報処理装置から情報を取得する、
請求項１に記載の通信システム。
【請求項８】
前記記憶部は、さらに、前記第２中継装置から受信した前記情報を記憶し、
前記第１中継装置は、
前記通信装置から前記情報処理装置に対する情報の取得要求が新たに受信されたときに、新たに受信された取得要求に対する応答として送信する情報を、前記記憶部に記憶された前記情報から生成する生成部をさらに備え、
前記第１送信部は、生成された情報を、新たに受信された取得要求に対する応答として前記通信装置に送信する、
請求項１に記載の通信システム。
【請求項９】
ファイアウォールの外に存在する第１中継装置と、前記ファイアウォール内に存在する第２中継装置と、を備える通信システムで実行される通信方法であって、
前記第１中継装置が、前記ファイアウォール内の情報処理装置に対する情報の取得要求を通信装置から受信する第１受信ステップと、
前記第１中継装置が、前記取得要求を記憶部に記憶する記憶ステップと、
前記第１中継装置が、前記記憶部に記憶された前記取得要求を前記第２中継装置に送信する第１送信ステップと、
前記第２中継装置が、前記第１中継装置から送信された前記取得要求を受信する第２受信ステップと、
前記第２中継装置が、前記取得要求により要求される情報を、前記情報処理装置から取得する取得ステップと、
前記第２中継装置が、取得された情報を前記第１中継装置に送信する第２送信ステップと、
前記第１中継装置が、前記情報処理装置から取得された前記情報を前記第２中継装置から受信する第３受信ステップと、
前記第１中継装置が、前記第２中継装置から受信した前記情報を前記通信装置に送信する第３送信ステップと、
を含む通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、通信システムおよび通信方法に関する。
【背景技術】
【０００２】
近年、世界最大のコンピュータネットワークであるインターネット（Internet）の利用が普及している。インターネットと接続して、公開された情報やサービスを利用すること、および、逆にインターネットを通してアクセスしてくる外部ユーザに対し、情報やサービスを提供することで、新たなコンピュータビジネスが開拓されている。またインターネット利用に関して、新たな技術開発、展開がなされている。
【０００３】
ビルや工場においてセンサやアクチュエータなどが接続されているネットワーク（制御ネットワーク）においても同様に、インターネットプロトコルを使用したネットワーク化（ＩＰ化）の流れは高まっている。例えば、このようなセンサなどに代表される低コストの組み込み機器をネットワークへ接続し、組み込み機器に関する様々な情報をネットワークを介して取得して活用する動きが高まっている。
【０００４】
そして、ＢＡＣｎｅｔ／ＷＳ（A  Data  Communication  Protocol  for  Building  Automation  and  Control  Networks／Web  Service）に代表されるように、設備系ネットワークにおいてもＷｅｂサービス技術が利用されるようになってきた。Ｗｅｂサービス技術は、既存の設備系ネットワークとＩＴシステムとの連動などに利用されることが期待されている。ＩＴシステムは、Ｗｅｂサービスを通して、設備機器情報を入手することができるようになる。
【０００５】
既存の設備機器は、直接Ｗｅｂサービスで通信することはできない。このため、途中に設備網のプロトコルを変換するためのゲートウェイを配置し、ＩＴ機器などは、このゲートウェイと通信することによって設備機器の情報を取得および設定する。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】Salman  A.  Baset,  Henning  Schulzrinne,  “An  Analysis  of  the  Skype  Peer-to-Peer  Internet  Telephony  Protocol”,  2004
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特に中小企業での利用を考えた場合、設備網がインターネットとの接続を行うために専用の回線を引くことは難しい。従って、例えば既存のＯＡ系ネットワークに相乗りするのがコスト的に望ましい。しかしＯＡ系ネットワークでは、一般的にはファイアウォール（またはＮＡＴ）が存在する。このため、インターネット側（ファイアウォールの外）に存在する、設備機器を管理するサーバからのアクセスを受けることが困難となっていた。また、利用するＯＡ系ネットワークの運用ポリシーはさまざまである。このため、多様な運用ポリシーそれぞれに対応することによるエンジニアリングコストの上昇が懸念されていた。
【課題を解決するための手段】
【０００８】
実施形態の通信システムは、ファイアウォールの外部の第１中継装置と内部の第２中継装置とを備える。第１中継装置は、第１受信部と第１送信部とを備える。第１受信部は、ファイアウォール内の情報処理装置に対する情報の取得要求を通信装置から受信し、取得された情報を第２中継装置から受信する。第１送信部は、記憶部に記憶された取得要求を第２中継装置に送信し、第２中継装置から受信した情報を通信装置に送信する。第２中継装置は、第２受信部と取得部と第２送信部とを備える。第２受信部は、第１中継装置から送信された取得要求を受信する。取得部は、取得要求により要求される情報を情報処理装置から取得する。第２送信部は、取得された情報を第１中継装置に送信する。
【図面の簡単な説明】
【０００９】
【図１】本実施形態にかかる通信システムのブロック図。
【図２】本実施形態のＣＳのブロック図。
【図３】本実施形態のＢＳのブロック図。
【図４】本実施形態のＦＧのブロック図。
【図５】本実施形態のＲＳのブロック図。
【図６】本実施形態における起動時処理のシーケンス図。
【図７】本実施形態におけるデータ収集処理のシーケンス図。
【図８】本実施形態におけるデータ収集処理のシーケンス図。
【図９】本実施形態におけるデータ収集処理のシーケンス図。
【図１０】本実施形態におけるデータ収集処理のシーケンス図。
【図１１】本実施形態にかかる通信システムのハードウェア構成図。
【発明を実施するための形態】
【００１０】
以下に添付図面を参照して、この発明にかかる通信システムの好適な実施形態を詳細に説明する。以下では、設備系ネットワークなどのように設備機器の情報を収集する通信システムを例に説明するが、適用可能なシステムはこれに限られるものではない。ファイアウォール内の情報処理装置（設備機器など）の情報を、ファイアウォール外から収集するシステムであればどのようなシステムにも適用できる。
【００１１】
本実施形態にかかる通信システムは、クローラサーバ（Crawler  Server（ＣＳ））および設備ゲートウェイ（Facility  Gateway（ＦＧ））の他に、第１中継装置として機能するブローカサーバ（Broker  Server（ＢＳ））と、第２中継装置として機能するリレーサーバ（Relay  Server（ＲＳ））とを備える。クローラサーバは、ファイアウォール内の情報処理装置（設備機器）から情報を収集する通信装置である。設備ゲートウェイは、設備機器が使用するプロトコルを変換する装置である。
【００１２】
ブローカサーバは、インターネット上（ファイアウォール外）に設置され、クローラサーバと第２中継装置との間のメッセージ交換を担保するサーバである。リレーサーバは、ファイアウォール内に設置され、設備ゲートウェイとブローカサーバとの間の通信を中継する。
【００１３】
以下では、クローラサーバ、設備ゲートウェイ、ブローカサーバ、および、リレーサーバを、それぞれＣＳ、ＦＧ、ＢＳ、および、ＲＳと表記する場合がある。
【００１４】
ＦＧがファイアウォール外部の装置と常時接続を希望する場合（常時接続が許される場合）には、ＲＳがＢＳに対して常時接続（longpoll）を行う。常時接続が許されない環境では、ＲＳがＢＳに対して定期的にポーリングを行う（間欠接続）。
【００１５】
ＢＳは、ＣＳの要求を一時的に預かり、ＲＳが接続しているときにこの要求をＲＳに渡す。ＲＳは、ＦＧとＢＳとの間のメッセージ交換を行う。
【００１６】
ＲＳおよびＣＳは、クローリング間隔などの接続情報を、ＢＳを介して交換し、情報を取得するタイミングを調整してもよい。間欠接続のＲＳは、ＣＳの過去の要求履歴から、必要だと予想される情報をＢＳへ定期的に渡してもよい。
【００１７】
以上のような構成により、ファイアウォール内に設置されるＲＳからファイアウォール外に設置されるＢＳにアクセスする形態とすることができる。従って、ファイアウォールが存在することによりインターネット側に存在する装置からのアクセスを受けることが困難となる問題を解消可能となる。また、ＣＳ側およびＦＧ側の両方で、既存のＷｅｂサービス技術の部分には手をいれずそのまま使うことが可能となる。
【００１８】
また、ＣＳと直接通信できるＦＧ、ファイアウォール内に設置されているが常時接続が許可されるＦＧ、および、ファイアウォール内に設置され間欠接続のみ許可する（例えば通常のＨＴＴＰ  ＧＥＴのみ許可する）ＦＧのそれぞれを、同じように扱うことが可能になる。すなわち、利用するネットワークの多様な運用ポリシーに容易に対応可能となる。また、パラメータ交換により情報を取得するタイミングなどを調整可能とすれば、より効率よいクローリングが可能となる。
【００１９】
図１は、本実施形態にかかる通信システム１の構成の一例を示すブロック図である。図１に示すように、通信システム１は、クローラサーバ（ＣＳ）１００と、ディスパッチサーバ（Dispatch  Server（ＤＳ））２００ａ〜２００ｃと、ブローカサーバ（ＢＳ）３００ａ〜３００ｃと、ファイアウォール（ＦＷ）４００と、設備ゲートウェイ（ＦＧ）５００と、リレーサーバ（ＲＳ）６００と、を備えている。
【００２０】
ＣＳ１００、ＤＳ２００ａ〜２００ｃ、および、ＢＳ３００ａ〜３００ｃは、ＦＷ４００の外に設置され、インターネット５０を介して接続される。ＦＧ５００およびＲＳ６００はＦＷ４００内に設置される。
【００２１】
ＣＳ１００は、ＦＷ４００内の設備機器等（図示せず）の情報を収集する通信装置である。なお、説明のため図１では１つのＣＳ１００のみを表示しているが、通信システム１が複数のＣＳ１００を備えてもよい。
【００２２】
ＦＧ５００は、ＦＷ４００内の網（ネットワーク）に存在し、設備機器の情報を管理する。ＦＧ５００は、Ｗｅｂサービスプロトコルで情報の提供と操作要求の受け付けを行う。ＦＧ５００には、提供するサービスを指し示すオリジナルエンドポイントリファレンス（ｏＥＰＲ）が割り当てられる。図１では１つのＦＧ５００のみを表示しているが、通信システム１が複数のＦＧ５００を備えてもよい。複数のＦＧ５００が提供するサービスは、例えばｏＥＰＲにより区別される。
【００２３】
ＢＳ３００ａ〜３００ｃは、ＦＧ５００（ＲＳ６００）とＣＳ１００との間の通信（典型的にはＳＯＡＰメッセージ）を中継するサーバである。なお、ＢＳ３００ａ〜３００ｃは同様の構成を備えるため、区別する必要がない場合は単にＢＳ３００という場合がある。図１では３つのＢＳ３００を例示しているが、ＢＳ３００の個数は３に限られるものではない。
【００２４】
ＢＳ３００には、それぞれリレーエンドポイントリファレンス（ｒＥＰＲ）が割り当てられる。また、ＢＳ３００のそれぞれは、記憶部として機能するメッセージキュー（ＭＱ）３５０およびステータスキュー（ＳＱ）３６０を備えている。
【００２５】
ＭＱ３５０は、ＢＳ３００が通信を中継するｏＥＰＲごとに１つ持つキューである。ＭＱ３５０は、ＦＧ５００とＣＳ１００との間で送受信されるメッセージを保持する。ＭＱ３５０には方向性が存在するため、実際にはＦＧ５００からＣＳ１００へのメッセージ、および、ＣＳ１００からＦＧ５００へのメッセージそれぞれを保存する２つのキューがＭＱ３５０に含まれる。
【００２６】
ただし、ＦＧ５００が読むキューは、ＣＳ１００からＦＧ５００へのメッセージが保存されているキュー（ＭＱ３５０−１とする）である。ＦＧ５００が書くキューはＦＧ５００からＣＳ１００へのメッセージが保存されているキュー（ＭＱ３５０−２とする）である。ＣＳ１００が読むキュー、および、ＣＳ１００が書くキューは、この逆であり、それぞれＭＱ３５０−２およびＭＱ３５０−１となる。また、ＭＱ３５０にはメッセージだけでなく、そのメッセージに付随する付加情報（例えば受信時刻など）もメッセージとともに保存してもよい。
【００２７】
ＳＱ３６０は、ＢＳ３００が通信を中継するｏＥＰＲごとに１つ持つキューである。ＳＱ３６０は、ＦＧ５００およびＣＳ１００のステータス（状態）を保存する。ＳＱ３６０には、ＦＧ５００のステータスを保存するキューと、ＣＳ１００のステータスを保存するキューの２つのキューが含まれる。
【００２８】
ただし、ＦＧ５００が読むキューはＣＳ１００のステータスが保存されているキュー（ＳＱ３６０−１とする）である。ＦＧ５００が書くキューはＦＧ５００のステータスが保存されているキュー（ＳＱ３６０−２とする）である。ＣＳ１００が読むキュー、および、ＣＳ１００が書くキューは、この逆であり、それぞれＳＱ３６０−２およびＳＱ３６０−１となる。
【００２９】
ＤＳ２００ａ〜２００ｃは、各ｏＥＰＲを担当するＢＳ３００を指示する機能を備える。ＤＳ２００ａ〜２００ｃは同様の機能を備えるため、区別する必要がない場合は単にＤＳ２００という場合がある。図１では３つのＤＳ２００を例示しているが、ＤＳ２００の個数は３に限られるものではない。
【００３０】
ＲＳ６００は、ＦＷ４００内の網（ネットワーク）に存在し、ＦＧ５００とＢＳ３００の間の通信を中継する。図１では１つのＲＳ６００のみを表示しているが、通信システム１が複数のＲＳ６００を備えてもよい。
【００３１】
ＦＷ４００は、一般的なインターネットで使用されているファイアウォールと同様の機能を備える。
【００３２】
次に、ＣＳ１００、ＢＳ３００、ＦＧ５００、および、ＲＳ６００の機能構成の例について説明する。図２は、ＣＳ１００の構成例を示すブロック図である。図２に示すように、ＣＳ１００は、送信部１０１と、受信部１０２と、を備えている。
【００３３】
送信部１０１は、ＤＳ２００およびＢＳ３００などの装置に対して各種情報を送信する。例えば、送信部１０１は、情報を収集する設備機器を管理するＦＧ５００のｏＥＰＲに対応するＢＳ３００を探索する要求を、ＤＳ２００に対して送信する。また、送信部１０１は、設備機器の情報の取得を要求する取得要求（以下、ＲＱともいう）を、ＢＳ３００に送信する。
【００３４】
受信部１０２は、ＤＳ２００およびＢＳ３００などの装置から各種情報を受信する。例えば、受信部１０２は、ｏＥＰＲに対応するＢＳ３００を特定する情報（ｒＥＰＲなど）をＤＳ２００から受信する。また、受信部１０２は、ＲＱに対する応答として送信された設備機器の情報（以下、ＲＰともいう）をＢＳ３００から受信する。
【００３５】
送信部１０１および受信部１０２は、例えば、ＣＰＵ（Central  Processing  Unit）などの処理装置にプログラムを実行させること、すなわち、ソフトウェアにより実現してもよいし、ＩＣ（Integrated  Circuit）などのハードウェアにより実現してもよいし、ソフトウェアおよびハードウェアを併用して実現してもよい。
【００３６】
図３は、ＢＳ３００の構成例を示すブロック図である。図３に示すように、ＢＳ３００は、送信部３０１と、受信部３０２と、生成部３０３と、メッセージキュー（ＭＱ）３５０と、ステータスキュー（ＳＱ）３６０と、を備えている。
【００３７】
送信部３０１は、ＣＳ１００およびＲＳ６００などの装置に対して各種情報を送信する（第１送信部）。例えば、送信部３０１は、ＣＳ１００から受信したＲＱをＲＳ６００に送信する。また、送信部３０１は、ＲＱの応答としてＲＳ６００から受信したＲＰをＣＳ１００に送信する。
【００３８】
受信部３０２は、ＣＳ１００およびＲＳ６００などの装置から各種情報を受信する（第１受信部）。例えば、受信部３０２は、ＣＳ１００からＲＱおよびステータスなどの情報を受信する。ＲＱはＭＱ３５０に保存され、ステータスはＳＱ３６０に保存される。また、受信部３０２は、ＲＱに対する応答であるＲＰをＲＳ６００から受信する。
【００３９】
生成部３０３は、ＣＳ１００から新たにＲＱを受信したときに、新たに受信したＲＱに対する応答（ＲＰ）として送信する情報を、ＭＱ３５０に既に記憶されている情報から生成する。
【００４０】
送信部３０１、受信部３０２、および、生成部３０３は、ソフトウェアにより実現してもよいし、ハードウェアにより実現してもよいし、ソフトウェアおよびハードウェアを併用して実現してもよい。
【００４１】
なお、ＭＱ３５０およびＳＱ３６０は、ＨＤＤ（Hard  Disk  Drive）、光ディスク、メモリカード、ＲＡＭ（Random  Access  Memory）などの一般的に利用されているあらゆる記憶媒体により構成することができる。
【００４２】
図４は、ＦＧ５００の構成例を示すブロック図である。図４に示すように、ＦＧ５００は、送信部５０１と、受信部５０２と、変換部５０３と、を備えている。
【００４３】
送信部５０１は、ＲＳ６００などの装置に対して各種情報を送信する。例えば、送信部５０１は、ＲＳ６００から送信されたＲＱに応じて取得された設備機器の情報（ＲＰ）をＲＳ６００に送信する。
【００４４】
受信部５０２は、ＲＳ６００などの装置から各種情報を受信する。例えば、受信部５０２は、ＲＱをＲＳ６００から受信する。
【００４５】
変換部５０３は、設備機器が接続されるネットワーク（設備網）のプロトコルを、インターネットからアクセスできるプロトコルに変換する。
【００４６】
送信部５０１、受信部５０２、および、変換部５０３は、ソフトウェアにより実現してもよいし、ハードウェアにより実現してもよいし、ソフトウェアおよびハードウェアを併用して実現してもよい。
【００４７】
図５は、ＲＳ６００の構成例を示すブロック図である。図５に示すように、ＲＳ６００は、送信部６０１と、受信部６０２と、取得部６０３と、確立部６０４と、切断部６０５と、推定部６０６と、を備える。
【００４８】
送信部６０１は、ＦＧ５００およびＢＳ３００などの装置に対して各種情報を送信する（第２送信部）。例えば、送信部６０１は、ＦＧ５００から受信したＲＰをＢＳ３００に送信する。
【００４９】
受信部６０２は、ＦＧ５００およびＢＳ３００などの装置から各種情報を受信する（第２受信部）。例えば、受信部６０２は、ＲＱをＢＳ３００から受信する。
【００５０】
取得部６０３は、ＲＱにより要求される情報（ＲＰ）を、ＦＧ５００を介して設備機器から取得する。例えば、取得部６０３は、送信部６０１を介してＲＱをＦＧ５００に送信し、送信したＲＱに対する応答として送信されたＲＰを受信部６０２を介して受信することにより、ＲＰを取得する。
【００５１】
確立部６０４は、ＢＳ３００との間の通信を確立する。切断部６０５は、ＢＳ３００との間で確立された通信を切断する。推定部６０６は、設備機器の情報を取得するタイミングを推定する。
【００５２】
送信部６０１、受信部６０２、取得部６０３、確立部６０４、切断部６０５、および、推定部６０６は、ソフトウェアにより実現してもよいし、ハードウェアにより実現してもよいし、ソフトウェアおよびハードウェアを併用して実現してもよい。
【００５３】
以下では、上記各装置が、以下のように他の装置の情報を知っていることを仮定する。
・ＲＳ６００は自分が管理するＦＧ５００を知っている。
・ＲＳ６００は１以上のＤＳ２００を知っている。
・ＣＳ１００は、ＣＳ１００がアクセスする可能性のあるＦＧ５００のｏＥＰＲを知っており、かつ、そのＦＧ５００がＦＷ４００の中にあるのか外にあるのかを知っている。
【００５４】
次に、このように構成された本実施形態にかかる通信システム１による各種処理の詳細について説明する。図６は、本実施形態における起動時処理の一例を示すシーケンス図である。起動時処理とは、ＲＳ６００が起動したときに実行される処理である。
【００５５】
ＲＳ６００は、ＤＳ２００に対してＢＳ探索を要求する（ステップＳ１０１）。このときＲＳ６００は、ＤＳ２００に対して自分の管理するＦＧ５００のｏＥＰＲを通知する。ＢＳ探索とは、接続対象となるＢＳ３００を探索または決定する処理である。ＤＳ２００は、ＲＳ６００からＢＳ探索の要求を受けると、適切なＢＳ３００を探し出して、そのＢＳ３００の持つｒＥＰＲを通知する（ステップＳ１０２）。このｒＥＰＲは、ＢＳ３００の探索の前に決定されていてもよい。また、ＢＳ３００の探索中に、ＢＳ３００自身がｒＥＰＲを決定してもよい。または、ＤＳ２００がｒＥＰＲを決定して、探索されたＢＳ３００に対して割り当ててもよい。
【００５６】
適切なＢＳ３００の探索方法としては以下のような方法を適用できる。
（１）ＤＨＴ（分散型ハッシュテーブル）などを用いて、対象となるＢＳ３００を決定して通知する。ハッシュ値を算出するための入力値としては例えばｏＥＰＲを用いる。
（２）ＢＳ３００は完全に独立しており、ＤＳ２００が条件をもとに特定のＢＳ３００を通知する。例えば、
・ＤＳ２００は各ＢＳ３００とＲＳ６００とのネットワーク的距離を推測し、ネットワーク的距離がＲＳ６００に最も近いＢＳ３００を特定して通知する。
・ＤＳ２００はＢＳ３００のステータス（例えば負荷）を管理し、ステータスが所定の条件を満たす（例えば最も負荷の低い）ＢＳ３００を特定して通知する。
・上記の両方（ネットワーク的距離、および、ステータス）を加味した結果からＢＳ３００を選択し、選択したＢＳ３００を通知する。
（３）ＢＳ３００とＤＳ２００とが同じノードで動作しており、ＢＳ３００の中でＤＨＴとしてルーティングした結果を通知する。
【００５７】
ＢＳ３００を探索したＤＳ２００、および、探索されたＢＳ３００は、探索されたＢＳ３００のｒＥＰＲと、探索を要求したＲＳ６００が管理するＦＧ５００のｏＥＰＲと、の対応を記憶する。ただし、ＦＷ４００の内部に存在するｏＥＰＲを自由に選択できる場合は、ｏＥＰＲはｒＥＰＲと必ず等しいものとしてもよい。例えば、探索されたｒＥＰＲと同一の値をｏＥＰＲとして用いるように構成してもよい。
【００５８】
また、ＲＳ６００は、ｏＥＰＲと実際のＦＧ５００へアクセスするためのアドレスとが異なる場合の対応表を事前に持っていてもよい。例えば、ＦＧ５００の実際のｏＥＰＲを「http://fg1.global.example.com/」とし、ＦＧ５００が実際にサービスを提供するＵＲＬを「http://fg1.local.example.com/」とする。この場合、ＲＳ６００は、このｏＥＰＲとＵＲＬとが対応していることを知っており、このｏＥＰＲへのアクセス要求を対応するＵＲＬ「http://fg1.local.example.com/」へと送信することができるものとしてもよい。
【００５９】
ｒＥＰＲをＢＳ３００に割り当てる方法としては、例えばＤｙｎａｍｉｃ  ＤＮＳ  Ｕｐｄａｔｅ（ＲＦＣ２１３６）などを使用することができる。
【００６０】
なお、通信システム１がＤＳ２００を備えないように構成してもよい。この場合は、例えばｏＥＰＲとｒＥＰＲとＢＳ３００との対応を事前に定めるように構成してもよい。
【００６１】
ＢＳ３００のｒＥＰＲを通知されたＲＳ６００は、通知されたＢＳ３００（ｒＥＰＲ）に対して、常時接続および間欠接続の２つの接続方法のうち、いずれかを選択して接続を行う（ステップＳ１０３）。なお、ＲＳ６００は、任意の時点で接続方法を切り替えてよい。
【００６２】
常時接続を選択する場合、ＲＳ６００は、ＢＳ３００に対してｏＥＰＲを通知し、ＢＳ３００との接続を維持する（ステップＳ１０４）。接続の維持には、例えばＣｏｍｅｔやＷｅｂＳｏｃｋｅｔ（ＲＦＣ６４５５）を使用することができる。ＲＳ６００は、ＢＳ３００との接続を維持し、もし接続が切断された場合には速やかに再接続する。ＲＳ６００は、常時接続がＦＷ４００などのポリシーによって許可されていない状況だと判断できた場合には、間欠接続へと切り替えてもよい。
【００６３】
間欠接続を選択する場合、ＲＳ６００は、確立部６０４によりＢＳ３００に接続した後（ステップＳ１０５）、送信部６０１によりＳＱ３６０に接続情報を残し（ステップＳ１０６）、切断部６０５により接続を切断する（ステップＳ１０７）。
【００６４】
接続情報としては、間欠接続に関する情報を用いることができる。例えば、次にＲＳ６００がＢＳ３００に接続する予定時刻、および、次に接続するまでの時間間隔などの、情報取得のタイミングを特定する特定情報を、接続情報として利用できる。
【００６５】
ＲＳ６００は、各キュー（ＭＱ３５０、ＳＱ３６０）に対するアクセス方法として、既存のプロトコルを用いてもよいし、独自のプロトコルを設計してもよい。例えばＢＡＣｎｅｔ／ＷＳの場合には、「/.sysinfo/H（oEPR）/SQ」および「/.sysinfo/H（oEPR）/MQ」というパスを使用して、このパスに対して「getValue（）」や「setValue（）」を行うことが考えられる。なお、Ｈ（ｘ）は、ｘのハッシュ値を表す。ハッシュ値を算出する方法としては、ＳＨＡ１などの従来から用いられているあらゆる方法を適用できる。
【００６６】
図７は、本実施形態におけるデータ収集処理の一例を示すシーケンス図である。図７のデータ収集処理は、ＲＳ６００がＢＳ３００に常時接続する場合の処理を表す。
【００６７】
なお、ＣＳ１００は、通信対象のＦＧ５００がＦＷ４００の外に存在する場合は、そのＦＧ５００のｏＥＰＲへ接続してＲＱを送信し、ＲＱの応答としてＲＰを得ることができる。ＦＷ４００の外に存在するか否かは、上記仮定のように事前に定めていてもよいし、接続を試みてタイムアウト等のエラーが発生した場合にＦＷ４００の内部に存在すると判断してもよい。通信対象のＦＧ５００がＦＷ４００の内部に存在する場合に図７の処理が実行される。
【００６８】
通信対象のＦＧ５００がＦＷ４００の中に存在する場合、ＣＳ１００は、そのＦＧ５００のｏＥＰＲに対するＢＳ３００を取得するためＤＳ２００に対してＢＳ３００の探索要求を送信する（ステップＳ２０１）。ＤＳ２００は、図６の処理などで事前に対応づけた情報等を参照し、ｏＥＰＲに対応するｒＥＰＲを特定し、ＣＳ１００に通知する（ステップＳ２０２）。
【００６９】
ＣＳ１００は、得られたＢＳ３００に対して、情報取得要求（ＲＱ）を送信する（ステップＳ２０３）。ＢＳ３００は、ＲＱを受信した時点で、ＲＱで要求されたｏＥＰＲに対応するＭＱ３５０へＲＱを保存する（ステップＳ２０４）。
【００７０】
図７は常時接続の例であるため、ＢＳ３００は、即時にこのＲＱをＭＱ３５０から読出す（ステップＳ２０５）。ＢＳ３００は、接続しているＲＳ６００へ、対象となっているｏＥＰＲの情報を加えてＲＱを送信し、ＲＰを待つ（ステップＳ２０６）。この時点ではＢＳ３００はＣＳ１００にＲＰを返さずに待機する。
【００７１】
ＲＳ６００は、ＲＱを受信すると、ＲＱを対象のｏＥＰＲを持つＦＧ５００へと送信し、ＲＰを待つ（ステップＳ２０７）。ＲＱを送信されたＦＧ５００は、このＲＱを処理し、ＲＰをＲＳ６００へ返す（ステップＳ２０８）。これによりＲＳ６００（取得部６０３）は、ＲＱにより要求される情報（ＲＰ）を取得することができる。
【００７２】
ＲＳ６００は、ＲＰを受信すると、対応するＢＳ３００のＭＱ３５０へ受信したＲＰを書込む（ステップＳ２０９）。ＢＳ３００は、ＭＱ３５０からＲＰを即座に読出し（ステップＳ２１０）、ＣＳ１００へ応答としてＲＰを渡す（ステップＳ２１１）。
【００７３】
図８は、本実施形態におけるデータ収集処理の他の例を示すシーケンス図である。図８のデータ収集処理は、ＲＳ６００がＢＳ３００に間欠接続する場合の処理を表す。ステップＳ３０１からステップＳ３０４までは、図７のステップＳ２０１からステップＳ２０４までと同様の処理なので説明を省略する。
【００７４】
間欠接続の場合、ＭＱ３５０にＲＱを保存した後（ステップＳ３０４）、応答ＲＰが存在しないことを示すエラーをＣＳ１００に通知する（ステップＳ３０５）。例えば、ＨＴＴＰを用いる場合、ＢＳ３００は、「504  GatewayTimeout」などをＣＳ１００に通知する。
【００７５】
間欠接続の場合、ＲＳ６００は、例えば定期的にＢＳ３００に接続して、ＭＱ３５０を確認する。すなわち、ＲＳ６００は、確立部６０４によりＢＳ３００との接続を確立し、送信部６０１によりＭＱ３５０からのＲＱの読出しを要求（送信要求）する（ステップＳ３０６）。このとき、ＲＳ６００は、次の接続予定時刻などの接続情報（特定情報）をＳＱ３６０に書込んでもよい。
【００７６】
ＢＳ３００は、要求されたＲＱをＭＱ３５０から読出し（ステップＳ３０７）、読出したＲＱをＲＳ６００に送信する（ステップＳ３０８）。なお、ＲＳ６００が直接ＭＱ３５０にアクセスして該当するＲＱを読出すように構成してもよい。また、ＲＳ６００が直接ＳＱ３６０にアクセスして接続情報を書き込むように構成してもよい。
【００７７】
ＲＳ６００は、通信対象のＦＧ５００に対して、受信したＲＱを送信する（ステップＳ３０９）。ＲＱを送信されたＦＧ５００は、このＲＱを処理し、ＲＰをＲＳ６００へ返す（ステップＳ３１０）。ＲＳ６００（取得部６０３）は、ＲＰを取得すると、確立部６０４によりＢＳ３００に再度接続し、送信部６０１によりＭＱ３５０にＲＰを書込む（ステップＳ３１１）。
【００７８】
間欠接続の場合、ＣＳ１００は以下の処理を行う。すなわち、ＣＳ１００は、例えば定期的にＢＳ３００に接続して、ＲＱを送信する（ステップＳ３１２）。ＢＳ３００は、受信したＲＱをＭＱ３５０に書込む（ステップＳ３１３）。ＢＳ３００は、ＭＱ３５０（ＦＧ５００からＣＳ１００宛のメッセージを書き込むキュー）の中に、メッセージが存在し、ＲＱに対する応答として適合するメッセージであれば、そのメッセージをＲＰとして読出す（ステップＳ３１４）。ＢＳ３００は、読出したＲＰをＣＳ１００に送信する（ステップＳ３１５）。ＢＳ３００は、読出したＲＰ（メッセージ）をＭＱ３５０から削除する。
【００７９】
この時点でも該当するメッセージがＭＱ３５０内に存在しなければ、ＢＳ３００は適切なエラーを返す（ステップＳ３０５と同様）。また、ＭＱ３５０に同じＲＱに対応するＲＰが複数存在した場合には、ＢＳ３００は、最も新しいＲＰをＣＳ１００に返却し、他のＲＰはＭＱ３５０から削除する。
【００８０】
図９は、本実施形態におけるデータ収集処理の他の例を示すシーケンス図である。図９のデータ収集処理は、ＲＳ６００がＢＳ３００に間欠接続し、さらに、間欠接続のための接続情報を調整可能とする場合の処理を表す。
【００８１】
例えば、ＣＳ１００は、ＳＱ３６０を読み、次にＲＳ６００がいつＢＳ３００に接続する予定かを知ってもよい。これにより、ＣＳ１００が、次にＲＱを送信する時刻を適切に設定し、間欠接続時でも適切なタイミングで応答を得ることができる。さらに、ＣＳ１００がＳＱ３６０に希望する更新間隔を入れてもよい。図９は、このような場合の処理の例を示す。なお、図９では、図８のステップＳ３０１、ステップＳ３０２を省略している。すなわち、ＣＳ１００は、ｏＥＰＲに対応するｒＥＰＲを既に知っているものとする。
【００８２】
ＣＳ１００は、ＢＳ３００に対して、情報取得要求（ＲＱ）とともに更新間隔ｔ１を送信する（ステップＳ４０１）。ＢＳ３００は、ＲＱで要求されたｏＥＰＲに対応するＭＱ３５０へＲＱを保存するとともに、更新間隔ｔ１を接続情報（特定情報）としてＳＱ３６０に保存する（ステップＳ４０２）。
【００８３】
ステップＳ４０３からステップＳ４０４までは、図８のステップＳ３０５からステップＳ３０６までと同様の処理なので説明を省略する。
【００８４】
ＢＳ３００は、要求されたＲＱをＭＱ３５０から読出すとともに、更新間隔ｔ１をＳＱ３６０から読出す（ステップＳ４０５）。ＢＳ３００は、読出したＲＱとｔ１とをＲＳ６００に送信する（ステップＳ４０６）。
【００８５】
ステップＳ４０７からステップＳ４１３までは、図８のステップＳ３０９からステップＳ３１５までと同様の処理なので説明を省略する。
【００８６】
図９の例では、ＳＱ３６０で更新間隔ｔ１が指定されているため、ＲＳ６００は、その時にＭＱ３５０に設定されているＲＱを内部の記憶部等（図示せず）に記憶する。ＲＳ６００は、更新間隔ｔ１で指定された時間間隔で、記憶したＲＱをＦＧ５００に送信し、ＦＧ５００から得られたＲＰをＢＳ３００のＭＱ３５０へ書込む（ステップＳ４１４〜ステップＳ４１６）。
【００８７】
なお、例えばＣＳ１００が更新間隔ｔ１に０を指定することで、定期的にＦＧ５００へＲＱを送信することを停止させるように構成してもよい。
【００８８】
ＣＳ１００が、更新間隔の代わりに更新時刻をＳＱ３６０に保存させるように構成してもよい。この場合には、ＲＳ６００は、間欠接続であった場合の通常の処理に加えて以下の処理を行う。
【００８９】
ＲＳ６００は、定期的にＢＳ３００に接続して、ＳＱ３６０を確認する。ＳＱ３６０で更新時刻が指定されている場合、その時（ＳＱ３６０を確認したとき）にＭＱ３５０に設定されているＲＱを記憶部等に記憶する。ＲＳ６００は、指定された更新時刻に、記憶したＲＱをＦＧ５００に送信し、ＦＧ５００から得られたＲＰをＢＳ３００のＭＱ３５０へ書込む。
【００９０】
なお、ＲＳ６００は、ＣＳ１００がＳＱ３６０に更新間隔または更新時刻のいずれも指定しない場合、更新間隔または更新時刻を推定するように構成してもよい。推定部６０６は、このように情報を取得するタイミングを推定する機能を備える。
【００９１】
推定部６０６は、例えばＲＱが送信される間隔の単純な移動平均により更新間隔を推定する。推定部６０６による推定方法はこれに限られるものではない。例えば、過去のＲＱの送信時刻などから統計的に推定する方法を用いてもよい。例えば、推定部６０６は、毎時０５分を中心に６０秒の幅で９５％の分布でＲＱが送信されるなどのパターンを統計的に分析し、分析結果に基づいてＲＱの送信間隔（例えば１時間）または送信時刻（例えば毎時０５分）を推定してもよい。
【００９２】
ＲＳ６００は、ＣＳ１００が定期的に同じＲＱを送信することが推定できた場合（例：毎正時にポイントＡの情報を要求する）には、ＲＳ６００が間欠接続であった場合の通常の処理に加えて以下の処理を行う。
【００９３】
ＲＳ６００は、ＣＳ１００が送信した、あるＲＱの送信時刻が推定できた場合、そのＲＱを記憶部等に記憶する。ＲＳ６００は、ＦＧ５００へＲＱを送信し、ＦＧ５００から得られたＲＰを取得してＢＳ３００のＭＱ３５０へ書込むまでの時間を定期的に計測する。ＲＳ６００は、計測した時間を記憶部等に記憶しておき、記憶した時間から、予想される処理時間を計算する。処理時間は、計測するたびに移動平均等により計算してもよいし、統計的に推定を行うことで計算してもよい。計算される時間を「FG-BS-RTT」とする。
【００９４】
ＲＳ６００は、ＣＳ１００の推定送信時刻から「FG-BS-RTT」を減算した時刻よりも前に、ＦＧ５００へＲＱを送信し、ＦＧ５００からＲＰを取得してＢＳ３００のＭＱ３５０へ書込む。これにより、ＣＳ１００がＢＳ３００へＲＱを送信した時点でＲＰがＭＱ３５０に存在するように構成できる。すなわち、ＢＳ３００は、ＲＱに対応するＲＰをＣＳ１００に対して返却することができる。
【００９５】
ＲＳ６００は、定期的にＭＱ３５０を確認し、送信時刻の推定による応答が使用されていることを確認してもよい。例えば、もし十分に長い間使用されてない場合には、推定は失敗したとして、ＲＳ６００がＭＱ３５０から該当するＲＰを削除してもよい。ＲＳ６００は、この後、再度推定を試みてもよい。
【００９６】
ＢＳ３００は、ＲＳ６００に代わってＣＳ１００の送信時刻の推定を行ってもよい。この場合、ＢＳ３００がＣＳ１００に代わって次回の希望する更新時刻をＳＱ３６０に記録してＲＳ６００へと伝える。
【００９７】
図１０は、本実施形態におけるデータ収集処理の他の例を示すシーケンス図である。図１０のデータ収集処理は、ＲＳ６００がＢＳ３００に間欠接続し、さらに、ＲＱに対する応答（ＲＰ）をＭＱ３５０に記憶された情報から生成可能とする場合の処理を表す。
【００９８】
例えば、ＣＳ１００からのＲＱが「ポイントＡの情報の取得」を要求する場合で、既にＭＱ３５０に存在するＲＰが、「ポイントＡとポイントＢの情報」であった場合、ＢＳ３００はポイントＡだけの結果を含むＲＰを生成し、これを返却してもよい。図１０は、このような場合の処理の例を示す。ポイントとは、例えば、ＦＧ５００が管理する設備機器の位置を特定する情報である。
【００９９】
ＣＳ１００は、ポイントＡとポイントＢの情報の取得を要求するＲＱ（以下、ＲＱ（Ａ，Ｂ）と表記する）をＢＳ３００に送信する（ステップＳ５０１）。ＢＳ３００は、ＭＱ３５０へＲＱ（Ａ，Ｂ）を保存する（ステップＳ５０２）。ＲＱ（Ａ，Ｂ）に対するＲＰ（以下、ＲＰ（Ａ，Ｂ）と表記する）が保存されていない場合、ＢＳ３００は、エラーをＣＳ１００に通知する（ステップＳ５０３）。
【０１００】
ステップＳ５０４からステップＳ５０９までは、図８のステップＳ３０６からステップＳ３１１までと同様の処理なので説明を省略する。
【０１０１】
ここで、ＣＳ１００が、ポイントＡの情報の取得を要求するＲＱ（Ａ）をＢＳ３００に送信したとする（ステップＳ５１０）。この場合、ＢＳ３００は、例えば、ＲＱで要求されたｏＥＰＲに対応するＭＱ３５０に既に保存されているＲＰ（この例ではＲＰ（Ａ，Ｂ））を読出す（ステップＳ５１１）。ＢＳ３００の生成部３０３は、読出したＲＰ（Ａ，Ｂ）から、ＲＰ（Ａ）を生成する（ステップＳ５１２）。例えば、ＲＰにいずれのポイントの情報であるかを特定する情報が含まれていれば、生成部３０３は、この情報を参照して、所望のポイントから取得された情報（ＲＰ）を抽出できる。
【０１０２】
ＢＳ３００は、生成されたＲＰ（Ａ）をＣＳ１００に送信する（ステップＳ５１３）。
【０１０３】
なお、ＣＳ１００が要求したＲＱが、既にＭＱ３５０に保存されているＲＰと完全一致ではないが、そのＲＰから一部分だけ生成可能である場合には、ＢＳ３００（生成部３０３）が、適切なＲＰをＭＱ３５０に保存されているＲＰから生成してもよい。例えば、ＣＳ１００からのＲＱが「ポイントＡとポイントＢの情報の取得」を要求する場合で、既にＭＱ３５０に保存されているＲＰが、「ポイントＡの情報」であった場合、ＢＳ３００はポイントＡの応答と、ポイントＢに対する適切な部分エラーを含むＲＰを生成し、これを返却してもよい。
【０１０４】
また、ＢＳ３００が、一定期間のＲＰの履歴を保存しており、その中にポイントＢの結果が入っている場合には、過去のポイントＢの情報の取得結果を使用してポイントＡの応答と、ポイントＢの過去の応答とを含むＲＰを生成し、これを返却してもよい。
【０１０５】
また、ＢＳ３００が、付加情報を正しく変更できる場合には、変更した付加情報を返却してもよい。例えば、ＣＳ１００からのＲＱの内容が、ポイントＡの情報、および、ポイントＡの情報の取得時間の現在時刻からの差（例えば何秒前に設備機器から取得したデータか）であったとする。いま仮にＦＧ５００が、ＲＳ６００からの要求に従って（キャッシュ等を行わず）設備機器からデータを取得して応答を変えた場合、ＲＳ６００からＢＳ３００への応答は（ポイントＡの情報、０秒）となる（ステップＳ５０９に相当）。ＢＳ３００は、この応答をＭＱに保存する。このとき、ＢＳ３００は、この応答の受信時刻を記憶しているものとする。仮にこの３０秒後にＣＳ１００が再度「ポイントＡの情報の取得時間の現在時刻からの差」を要求したとする（ステップＳ５１０に相当）。ＢＳ３００は、対応する応答の受信時刻から、取得時間の現在時刻からの差を０秒から３０秒に修正することができる。よって、このＢＳ３００は、ＭＱに保存してある応答（ポイントＡの情報、０秒）を修正し、（ポイントＡの情報、３０秒）としてＣＳ１００へ返却してもよい。
【０１０６】
このように、本実施形態にかかる通信システムでは、ファイアウォール内に設置される中継装置（ＲＳ）からファイアウォール外に設置される中継装置（ＢＳ）にアクセスする形態とすることができる。従って、インターネット側（ファイアウォール外）に存在する通信装置がファイアウォール内の装置の情報を取得することが可能となる。
【０１０７】
次に、本実施形態にかかる通信システムの各装置（ＣＳ、ＤＳ、ＢＳ、ＲＳ、ＦＧ）のハードウェア構成について図１１を用いて説明する。図１１は、本実施形態にかかる通信システムのハードウェア構成を示す説明図である。
【０１０８】
本実施形態にかかる通信システムの各装置は、ＣＰＵ（Central  Processing  Unit）５１などの制御装置と、ＲＯＭ（Read  Only  Memory）５２やＲＡＭ（Random  Access  Memory）５３などの記憶装置と、ネットワークに接続して通信を行う通信Ｉ／Ｆ５４と、各部を接続するバス６１を備えている。
【０１０９】
本実施形態にかかる通信システムの各装置で実行されるプログラムは、ＲＯＭ５２等に予め組み込まれて提供される。
【０１１０】
本実施形態にかかる通信システムの各装置で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ（Compact  Disk  Read  Only  Memory）、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ（Compact  Disk  Recordable）、ＤＶＤ（Digital  Versatile  Disk）等のコンピュータで読み取り可能な記録媒体に記録してコンピュータプログラムプロダクトとして提供されるように構成してもよい。
【０１１１】
さらに、本実施形態にかかる通信システムの各装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、本実施形態にかかる通信システムの各装置で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
【０１１２】
本実施形態にかかる通信システムの各装置で実行されるプログラムは、コンピュータを上述した各装置の各部として機能させうる。このコンピュータは、ＣＰＵ５１がコンピュータ読取可能な記憶媒体からプログラムを主記憶装置上に読出して実行することができる。
【０１１３】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１１４】
１  通信システム
５０  インターネット
１００  クローラサーバ（ＣＳ）
２００  ディスパッチサーバ（ＤＳ）
３００  ブローカサーバ（ＢＳ）
３５０  メッセージキュー（ＭＱ）
３６０  ステータスキュー（ＳＱ）
４００  ファイアウォール（ＦＷ）
５００  設備ゲートウェイ（ＦＧ）
６００  リレーサーバ（ＲＳ）
【図１】
2014096685.tif 000003
【図２】
2014096685.tif 000004
【図３】
2014096685.tif 000005
【図４】
2014096685.tif 000006
【図５】
2014096685.tif 000007
【図６】
2014096685.tif 000008
【図７】
2014096685.tif 000009
【図８】
2014096685.tif 000010
【図９】
2014096685.tif 000011
【図１０】
2014096685.tif 000012
【図１１】
2014096685.tif 000013