(57)【要約】【課題】  ＷｅｂＳｏｃｋｅｔをサポートするネットワーク制御装置において、複数の端末にリアルタイムデータを送信する。【解決手段】  Ｗｅｂサーバ２０は、端末１０とＷｅｂＳｏｃｋｅｔコネクションを形成するためのＷｅｂＳｏｃｋｅｔサーバ２１と、Ｗｅｂ上のデータ生成装置３０からデータを取得してＷｅｂＳｏｃｋｅｔサーバ２１に送信するデータ取得プログラム２２を有する。ＷｅｂＳｏｃｋｅｔサーバ２１は、データ取得プログラム２２から受信したデータを、端末が読み取り可能な形に変換し、ＷｅｂＳｏｃｋｅｔコネクションが確立されていて、かつ配信要求があった端末１０全てに送信する。【選択図】      図２
2014178964.tif 000002
【特許請求の範囲】
【請求項１】
複数のＷｅｂＳｏｃｋｅｔコネクションを確立可能な通信手段と、ウェブ上に置かれたデータ生成装置のデータを取得するデータ取得手段と、前記データの複製データを生成するデータ複製手段と、前記複製データを前記複数のＷｅｂＳｏｃｋｅｔコネクションに送信するデータ送信手段とを有するネットワーク制御装置。
【請求項２】
前記複製データを端末が読み取り可能なデータに変換するデータ変換手段を有することを特徴とする請求項１記載のネットワーク制御装置。
【請求項３】
前記データ生成装置が複数あった場合に、複数の前記データ生成装置が生成したデータを用いて合成データを生成するデータ合成手段を有していることを特徴とする請求項１または請求項２いずれか一項に記載のネットワーク制御装置。
【請求項４】
ネットワーク制御装置が複数の端末とＷｅｂＳｏｃｋｅｔコネクションを確立する工程と、前記ネットワーク制御装置がウェブ上からデータを取得する工程と、前記ネットワーク制御装置が前記データの複製データを生成する工程と、前記ネットワーク制御装置が前記複数の端末に前記複製データを送信する工程とを有することを特徴とするネットワーク制御方法。
【請求項５】
前記ネットワーク制御装置が前記複製データを配信用のデータに変換する工程を有することを特徴とする請求項５に記載のネットワーク制御方法。
【請求項６】
ネットワーク制御装置が複数の端末とＷｅｂＳｏｃｋｅｔコネクションを確立する工程と、前記ネットワーク制御装置が前記複数の端末の一つである第１の端末から第１のデータ配信要求を受信する工程と、前記ネットワーク制御装置がウェブ上からデータを取得する工程と、前記データを前記第１の端末に送信する工程と、前記ネットワーク制御装置が前記複数の端末の一つである第２の端末から第２のデータ配信要求を受信する工程と、前記ネットワーク制御装置が前記データの複製データを生成する工程と、前記ネットワーク制御装置が前記第１の端末と前記第２の端末に前記複製データを送信する工程とを有することを特徴とするネットワーク制御方法。
【請求項７】
複数の端末とＷｅｂＳｏｃｋｅｔコネクションが確立されたネットワーク制御装置上で動作するプログラムであって、Ｗｅｂ上のデータを取得するステップと、前記データを前記プログラムに複製するステップとを有することを特徴とするネットワーク制御プログラム。
【請求項８】
前記データを前記端末への配信用データに変換するステップを有することを特徴とする請求項７に記載のネットワーク制御プログラム
【請求項９】
前記配信用データを複数の前記端末に送信するステップを有することを特徴とする請求項８に記載のネットワーク制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク制御装置および制御方法および制御プログラムに関する。
【背景技術】
【０００２】
双方向通信のための新しい技術としてＷｅｂＳｏｃｋｅｔが注目されている。現在、データ通信のほとんどはＨＴＴＰプロトコルを用いて行われている。しかしながら、ＨＴＴＰで双方向通信を行うと幾つかの問題点がある。一つはリクエストとレスポンスがセットになっているため、送信先からのレスポンスが返ってこないと、次のリクエストが送信できないことである。このため、連続したデータを送信することが困難である。また一つは通信の度にヘッダを送信することである。このためネットワークリソースを多く消費する、通信が遅くなるなどの問題を生じる。一方ＷｅｂＳｏｃｋｅｔでは、最初にハンドシェイクという手順によってコネクションを確立すると、以降は任意のタイミングでの送受信が可能になる。このようなＷｅｂＳｏｃｋｅｔの特長を生かす用途として、リアルタイムでデータを送受信することが考えられる。（非特許文献１参照）
図５は、ＷｅｂＳｏｃｋｅｔを利用して、ネットワークに接続されたデータ生成装置１３０が生成したデータを、端末１１０がリアルタイムで受信するときの、一般的な技術を示すシーケンス図である。データ生成装置１３０はカメラやマイク、各種の計測器、センサーなどで、時々刻々変化するデータを生成するものである。なお、このようなデータ生成装置は、過酷な環境に置かれることや、できるだけ多くの場所に設置したいとの要求などから、個々の通信機能を最小限にし、通信ポートを一つしか持たないのが一般的である。ここでは仮に一つとして説明する。
【０００３】
以下、図５に沿って説明する。まず端末ａ１１０ａはＷｅｂＳｏｃｋｅｔサーバ１２１に対して、ＷｅｂＳｏｃｋｅｔハンドシェイク要求を送信する（Ｓ１０１）。これに対しＷｅｂＳｏｃｋｅｔサーバ１２１は、ＷｅｂＳｏｃｋｅｔハンドシェイク応答を返し（Ｓ１０２）、ＷｅｂＳｏｃｋｅｔコネクションが確立する（Ｓ１０３）。次に、端末ａ１１０ａはデータ生成装置１３０の生成するデータの取得要求をＷｅｂＳｏｃｋｅｔサーバ１２１に送信する（Ｓ１０４）。ＷｅｂＳｏｃｋｅｔサーバ１２１はこの要求を受けて、データ生成装置１３０にデータの送信を要求する（Ｓ１０５）。これに応答し、データ生成装置１３０はＷｅｂＳｏｃｋｅｔサーバ１２１にデータを送信する（Ｓ１０６）。次にＷｅｂＳｏｃｋｅｔサーバ１２１は端末ａ１１０ａにストリーミングデータを送信する（Ｓ１０７）。こうして端末ａ１１０ａは、データ生成装置１３０が生成するデータを、ＨＴＴＰを用いた場合よりも高速に、ほぼリアルタイムで受信することができる。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】羽田野 太巳他著「ＨＴＭＬ５ガイドブック  増補改訂版」  インプレスジャパン  ２０１２年
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところが、上記の一般的な技術では、ある端末にデータがストリーミング送信されていると、他の端末がデータにアクセスできないという問題点がある。このことを、図５を用いて説明する。まず端末ａ１１０ａがＷｅｂＳｏｃｋｅｔサーバ１２１とのＷｅｂＳｏｃｋｅｔコネクションを確立し、ストリーミングデータを受信していたとする（Ｓ１０１〜Ｓ１０７）。
【０００６】
ここで別の端末ｂ１１０ｂがデータ生成装置１３０のデータを受信しようとした場合を考える。端末ｂ１１０ｂは、まずＷｅｂＳｏｃｋｅｔサーバ１２１にＷｅｂＳｏｃｋｅｔハンドシェイク要求を送信する（Ｓ１０９）。ＷｅｂＳｏｃｋｅｔサーバ１２１はＷｅｂＳｏｃｋｅｔハンドシェイク応答を返し（Ｓ１１０）、ＷｅｂＳｏｃｋｅｔコネクションが確立する（Ｓ１１１）。次に端末ｂ１１０ｂがＷｅｂＳｏｃｋｅｔサーバ１２０にストリーミングデータ要求を送信する（Ｓ１１２）。ＷｅｂＳｏｃｋｅｔサーバ１２０はデータ生成装置１３０にデータ要求を送信する（Ｓ１１３）が、データ生成装置１３０が端末１１０ａにデータを送信しているため、この要求は受け付けられずデータの取得に失敗する（Ｓ１１４）。
【０００７】
以上のように、ＷｅｂＳｏｃｋｅｔを用いた一般的な技術では既にデータを受信している端末があると、次のデータ受信要求が受け付けられず、先のデータ送信が終了するまで待たされることになる。すなわち一度にアクセスできる端末は１台だけになるという問題点がある。また、上記の説明から明らかなように、仮にデータ生成装置１３０の通信ポートを増やすことができれば、データを受信できる端末は増加するが、通信ポートの数までに限られる。さらに、データ生成装置１３０の複雑化が必要であり、コストアップと故障する確率の増大を招く。さらにＷｅｂＳｏｃｋｅｔサーバ１２１とデータ生成装置１３０間のトラフィックが増大するため、通信速度が遅くなる。以上のように、上記の一般技術では、同時に多数の端末が同じデータを受信するという要求には応えられないという問題点があった。
【課題を解決するための手段】
【０００８】
上記の課題を解決するため本発明では、複数のＷｅｂＳｏｃｋｅｔコネクションを確立可能な通信手段と、ウェブ上に置かれたデータ生成装置のデータを取得するデータ取得手段と、前記データの複製データを生成するデータ複製手段と、前記複製データを前記複数のＷｅｂＳｏｃｋｅｔコネクションに送信するデータ送信手段を有するネットワーク制御装置を構成している。
【発明の効果】
【０００９】
本発明の効果は、ＷｅｂＳｏｃｋｅｔコネクションを用いて、複数の端末に同時にリアルタイムデータを送信できることである。
【図面の簡単な説明】
【００１０】
【図１】本発明第１の実施の形態を示すブロック図である。
【図２】本発明第１の実施の形態を示すシーケンス図である。
【図３】本発明第２の実施の形態を示すシーケンス図である。
【図４】本発明第３に実施の形態を示すブロック図である。
【図５】ＷｅｂＳｏｃｋｅｔを用いた一般的な配信技術を示すシーケンス図である。
【発明を実施するための形態】
【００１１】
次に、本発明の実施形態について図面を参照して説明する。
【００１２】
図１は本発明第１の実施の形態のシステム構成を示すブロック図である。本実施の形態ではデータ生成装置３０で生成されるデータを、Ｗｅｂサーバ２０を介して多数の端末１０がリアルタイムに受信する。
【００１３】
Ｗｅｂサーバ２０は、端末とＷｅｂＳｏｃｋｅｔコネクションを形成するためのＷｅｂＳｏｃｋｅｔサーバ２１と、データ生成装置３０からインターネット１などを介して形成されたコネクション２からデータを取得し、ＷｅｂＳｏｃｋｅｔサーバ２１に送信するデータ取得プログラム２２を有する。
【００１４】
データ生成装置３０は、時々刻々変化するデータを生成する。またインターネット１などのネットワークに接続され、データを送信する機能を有する。具体的には、カメラ、マイク、風速計や線量計などの計測機器、各種のセンサーなどである。これらの機器は主に監視、モニタリングなどに用いられるため、小型かつ安価であることが要求される。このため通信機能や情報処理機能などは最小限にとどめられ、通信ポートは一つであることがほとんどである。扱える情報量も最小限にとどめられる。
【００１５】
端末１０はユーザが情報を得る装置であり、具体的にはパソコン、携帯電話、インターネットテレビなどである。各端末１０はＷｅｂＳｏｃｋｅｔサーバ２１との間にＷｅｂＳｏｃｋｅｔコネクション３を確立して、任意のタイミングで双方向のデータ通信を行うことができる。図１では、端末ａ１０ａ、端末ｂ１０ｂ、端末ｃ１０ｃ、・・・からなる多数の端末がＷｅｂＳｏｃｋｅｔサーバ２０とＷｅｂＳｏｃｋｅｔコネクション３を確立している様子を示している。
【００１６】
図２は本実施の形態で複数の端末１０がデータ生成装置３０の生成するデータをリアルタイムに受信する流れを示すシーケンス図である。なお、図２では簡単のため端末が２つの例を示しているが、端末１０が３つ以上に増えても本実施の形態は同様に成立する。
【００１７】
以下、図２に従って流れを説明する。まず、１台目の端末ａ１０ａがＷｅｂＳｏｃｋｅｔサーバ２１にＷｅｂＳｏｃｋｅｔハンドシェイク要求を送信する（Ｓ１）。これに対しＷｅｂＳｏｃｋｅｔサーバ２１はＷｅｂＳｏｃｋｅｔハンドシェイク応答を送信し（Ｓ２）、ＷｅｂＳｏｃｋｅｔコネクション３が確立する（Ｓ３）。次に端末ａ１０ａがストリーミングデータ要求を送信する（Ｓ４）。ＷｅｂＳｏｃｋｅｔサーバ２１はデータ取得プログラム２２を呼び出す（Ｓ５）。次にデータ取得プログラム２２はデータ生成装置３０にデータ要求を送信する（Ｓ６）。これに対し、データ生成装置３０は、データ取得プログラム２２にデータを送信する（Ｓ７）。データ取得プログラム２２はＷｅｂＳｏｃｋｅｔサーバ２１にデータを送信する（Ｓ８）。ＷｅｂＳｏｃｋｅｔサーバ２１は、必要であればデータを端末１０が読み取り可能な形に変換し（Ｓ９）、ストリーミングデータとして端末ａに送信する（Ｓ１４）。
【００１８】
ここで、別の端末１０ｂが端末ａ１０ａと同じストリーミングデータを要求してきた場合について説明する。まず端末ｂ１０ｂがＷｅｂＳｏｃｋｅｔサーバとの間にＷｅｂＳｏｃｋｅｔコネクション３を確立する（Ｓ１０〜Ｓ１２）。なお、ＷｅｂＳｏｃｋｅｔコネクション３の確立は、端末１０ａ、端末１０ｂどちらが先であっても本実施の形態の動作に影響しないことは言うまでもない。次に、端末ｂ１０ｂがＷｅｂＳｏｃｋｅｔサーバ２１にストリーミングデータ要求を送信する（Ｓ１３）。ＷｅｂＳｏｃｋｅｔサーバ２１は保持しているストリーミングデータを端末ｂ１０ｂに送信する（Ｓ１５）。このようにして、端末ｂ１０ｂも端末ａ１０ａと同じストリーミングデータを受信することができる。図示はしていないが、以上の説明から明らかなように、端末が３つ以上に増えても、各端末は同時に同じストリーミングデータを受信することができる。
【００１９】
また、本実施の形態ではデータ生成装置３０とＷｅｂＳｏｃｋｅｔサーバ２１とのセッションが、データ取得プログラム２２を介した１本だけであるため、データ生成装置３０が高度な通信機能が持たなくても、高速な通信が可能である。
（第２の実施の形態）
図３は本発明第２の実施の形態を示すシーケンス図である。複数ある全ての端末１０はＷｅｂＳｏｃｋｅｔサーバ２１との間にＷｅｂＳｏｃｋｅｔコネクションを確立しているが、説明を簡略化するため図面からは省略している。
【００２０】
本実施の形態では、ストリーミングデータを要求している端末１０が1台であるときは、ＷｅｂＳｏｃｋｅｔサーバ２１はデータ生成装置３０に直接アクセスし、２台以上の端末１０からストリーミングデータ要求があった場合はデータ取得プログラム２２を呼び出すように動作する。
【００２１】
以下、図３に沿って動作を説明する。まず１つの端末１０ａからＷｅｂＳｏｃｋｅｔサーバ２１にストリーミングデータ要求が送信される（Ｓ２０１）。ＷｅｂＳｏｃｋｅｔサーバ２１はデータ生成装置３０にデータ要求を送信する（Ｓ２０２）。データ生成装置３０はＷｅｂＳｏｃｋｅｔサーバ２１にデータを送信する（Ｓ２０３）。必要があれば、ＷｅｂＳｏｃｋｅｔサーバ２１は受信したデータを端末１０ａが読み取り可能な形にデータを変換し（Ｓ２０４）、端末１０ａに送信する（ｓ２０５）。次に、別の端末１０ｂからストリーミングデータ要求がＷｅｂＳｏｃｋｅｔサーバ２１に送信される（Ｓ２０６）。２つ目のストリーミングデータ要求を受信すると、ＷｅｂＳｏｃｋｅｔサーバ２１はデータ取得プログラム２２を呼び出す（Ｓ２０７）。データ取得プログラムはデータ生成装置３０にデータ要求を送信する（Ｓ２０８）。これに応答しデータ生成装置３０はデータを送信する（Ｓ２０９）。次いで、データ取得プログラム２２はＷｅｂＳｏｃｋｅｔサーバ２１にデータを送信する（Ｓ２１０）。ＷｅｂＳｏｃｋｅｔサーバ２１は必要であればデータを変換する（Ｓ２１１）。
これらのプロセスの間にさらに別の端末１０ｃからストリーミングデータ要求がＷｅｂＳｏｃｋｅｔサーバ２１に送信されたとする（Ｓ２１２）。次にＷｅｂＳｏｃｋｅｔサーバ２１は、３つの端末１０ａ、１０ｂ、１０ｃにストリーミングデータを送信する（Ｓ２１３、Ｓ２１４、Ｓ２１５）。なお、ここでは端末１０が３台の例を示したが、端末１０が４台以上の場合にも同様にして、ストリーミングデータが送信される。本実施の形態においては、データ生成装置３０にアクセスする端末が１つの場合には、第１の実施の形態よりも高速なストリーミングデータ送信が可能である。
（第３の実施の形態）
第１および第２の実施の形態を用いることによって、様々なＷｅｂＳｏｃｋｅｔリアルタイムデータ配信システムを構築できる。図４はリアルタイム監視映像配信システム４０を構築した例である。データ生成装置３０の例として、Ｗｅｂカメラ５０、マイク６０、線量計７０をＷｅｂサーバ２０に接続している。ＷｅｂＳｏｃｋｅｔサーバ２１は各Ｗｅｂカメラ５０の映像をそのまま端末１０に配信することもできるし、複数のＷｅｂカメラ５０の映像から新たな画像データを合成して配信することもできる。また、時間ごとに配信するＷｅｂカメラ５０の映像を切り替えて配信しても良い。さらに、マイク６０で生成した音声データや、図４に例として示した線量計７０などのデータも加えれば、より有用な情報としてリアルタイムに配信することも可能である。なお、上記のＷｅｂカメラ５０やマイク６０等はあくまで一例であり、様々なデータ生成装置３０とデータの変換方法を組み合わせて、種々のリアルタイムデータ配信システムを構築することが可能である。
【符号の説明】
【００２２】
１    インターネット
２    コネクション
３    ＷｅｂＳｏｃｋｅｔコネクション
１０、１１０    端末
２０    Ｗｅｂサーバ
２１、１２１    ＷｅｂＳｏｃｋｅｔサーバ
２２    データ取得プログラム
３０、１３０    データ生成装置
４０    リアルタイム監視映像配信システム
５０    Ｗｅｂカメラ
６０    マイク
７０    線量計
【図１】
2014178964.tif 000003
【図２】
2014178964.tif 000004
【図３】
2014178964.tif 000005
【図４】
2014178964.tif 000006
【図５】
2014178964.tif 000007