(57)【要約】  管理用ネットワークにおける複数の移動体（１１）の密度が過密となった場合にのみ通信制御を行うことにより、アプリケーションレベルのサービス品質の低下を最小限に抑える。通信制御装置（１００）は、コンテンツサーバ（１４）からコンテンツデータ（１４１）を取得する複数の移動体（１１）の各々に搭載される。複数の移動体（１１）は、互いに通信する管理用ネットワークを構成する。管理部（１１０）は、管理用ネットワークにおける複数の移動体（１１）の密度に基づいて、コンテンツデータ（１４１）を取得する際の通信制御を行うか否かを判定する。
2019142337.tif 000002
【特許請求の範囲】
【請求項１】
コンテンツサーバからコンテンツデータを取得する複数の移動体であって、互いに通信する管理用ネットワークを構成する複数の移動体の各々に搭載された通信制御装置において、
前記管理用ネットワークにおける前記複数の移動体の密度に基づいて、前記コンテンツデータを取得する際の通信制御を行うか否かを判定する管理部を備えた通信制御装置。
【請求項２】
前記管理部は、
前記複数の移動体の数を前記複数の移動体の密度として、前記通信制御を行うか否かを判定する請求項１に記載の通信制御装置。
【請求項３】
前記通信制御には、前記複数の移動体の間の排他制御が含まれており、
前記通信制御装置は、
前記複数の移動体の間の排他制御に用いられるセマフォを記憶する記憶部と、
前記通信制御を行うと判定されると、前記記憶部に記憶されているセマフォを用いて、前記コンテンツサーバに前記コンテンツデータの配信を要求する配信要求を送信する送信権を取得し、前記配信要求を送信することにより前記コンテンツデータを取得し、前記コンテンツデータの取得後、前記記憶部に記憶されているセマフォを用いて前記送信権を返却する制御部と
を備えた請求項１または２に記載の通信制御装置。
【請求項４】
前記通信制御には、前記コンテンツデータの配信を要求する配信要求の送信制御が含まれており、
前記記憶部は、
前記配信要求の送信を待機する待機時間であって前記配信要求の送信制御に用いられる待機時間を記憶し、
前記制御部は、
前記管理部により前記通信制御を行うと判定された後、前記待機時間の経過後に、前記送信権を取得する請求項３に記載の通信制御装置。
【請求項５】
前記通信制御には、前記コンテンツデータの取得を行う処理時間の時間制御が含まれており、
前記記憶部は、
前記コンテンツデータの取得を行う処理時間の最大時間である最大通信時間であって前記処理時間の時間制御に用いられる最大通信時間を記憶し、
前記制御部は、
前記管理部により前記通信制御を行うと判定されると、前記最大通信時間の範囲内で前記コンテンツデータの取得を行う請求項４に記載の通信制御装置。
【請求項６】
前記記憶部は、
前記コンテンツデータを取得する優先度と前記待機時間と前記最大通信時間とを対応付けた通信管理テーブルを記憶し、
前記制御部は、
前記コンテンツサーバから取得するコンテンツデータの特徴を表すメタデータに基づいて、優先度を算出し、算出された優先度に対応する前記待機時間の経過後に前記送信権を取得し、算出された優先度に対応する前記最大通信時間の範囲内で前記コンテンツデータの取得を行う請求項５に記載の通信制御装置。
【請求項７】
前記制御部は、
前記送信権を取得した際、あるいは、前記送信権を返却した際に、前記記憶部に記憶されているセマフォを他の移動体に送信し、
前記管理部は、
他の移動体から受信したセマフォにより前記記憶部に記憶されているセマフォを更新する請求項３から６のいずれか１項に記載の通信制御装置。
【請求項８】
前記管理部は、
前記コンテンツサーバへの接続要求を受け取ると、前記管理用ネットワークに参加する参加処理を実行し、前記管理用ネットワークへの参加が成功すると、前記複数の移動体の密度に基づいて、前記通信制御を行うか否かを判定する請求項１から７のいずれか１項に記載の通信制御装置。
【請求項９】
前記管理部は、
前記管理用ネットワークへの参加が成功すると、前記セマフォと前記通信管理テーブルとを含む共有データを他の移動体から取得する共有データ取得処理を実行し、他の移動体から共有データを取得できなかった場合は、新たに共有データを生成し、新たに生成した共有データを他の移動体に送信する請求項６に記載の通信制御装置。
【請求項１０】
前記管理部は、
前記複数の移動体の間の通信トラフィックを監視し、監視結果に基づいて前記待機時間および前記最大通信時間を設定する請求項６に記載の通信制御装置。
【請求項１１】
前記制御部は、
前記管理部により前記排他制御を用いると判定された後、前記待機時間にランダム値を加算した時間の経過後に、前記送信権を取得する請求項４から６のいずれか１項に記載の通信制御装置。
【請求項１２】
前記共有データは、前記管理用ネットワークに参加する移動体を認証するための認証情報を含み、
前記管理部は、
前記共有データに含まれる認証情報を用いて、前記管理用ネットワークに新たに参加する移動体を認証する請求項９に記載の通信制御装置。
【請求項１３】
前記通信制御装置は、
前記メタデータから前記コンテンツデータのファイル名を取得し、前記ファイル名を用いて前記複数の移動体からキャッシュファイルを検索するキャッシュ管理部を備えた請求項６に記載の通信制御装置。
【請求項１４】
前記キャッシュ管理部は、
前記複数の移動体の少なくともいずれかの移動体からキャッシュファイルを取得できなかった場合、前記コンテンツサーバから取得したコンテンツデータをキャッシュデータとして前記複数の移動体に公開する請求項１３に記載の通信制御装置。
【請求項１５】
前記キャッシュ管理部は、
前記管理用ネットワークの消滅時にキャッシュデータを一時的に基地局あるいは路側機に退避させ、前記管理用ネットワークの再構成時にキャッシュデータを基地局あるいは路側機から受け取り、再公開する請求項１３または１４に記載の通信制御装置。
【請求項１６】
前記管理用ネットワークは、アドホックネットワーク、インターネット、携帯電話網、あるいは広域無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）を含む請求項１から１５のいずれか１項に記載の通信制御装置。
【請求項１７】
前記複数の移動体の各々は、複数のコンテンツサーバのうち接続可能なコンテンツサーバのＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスが特定されている請求項１から１６のいずれか１項に記載の通信制御装置。
【請求項１８】
コンテンツサーバからコンテンツデータを取得する複数の移動体であって、互いに通信する管理用ネットワークを構成する複数の移動体の各々に搭載された通信制御装置の通信制御方法において、
管理部が、前記管理用ネットワークにおける前記複数の移動体の密度に基づいて、前記コンテンツデータを取得する際の通信制御を行うか否かを判定する通信制御方法。
【請求項１９】
コンテンツサーバからコンテンツデータを取得する複数の移動体であって、互いに通信する管理用ネットワークを構成する複数の移動体の各々に搭載された通信制御装置の通信制御プログラムにおいて、
前記管理用ネットワークにおける前記複数の移動体の密度に基づいて、前記コンテンツデータを取得する際の通信制御を行うか否かを判定する通信制御処理をコンピュータに実行させる通信制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信制御装置、通信制御方法および通信制御プログラムに関する。
【背景技術】
【０００２】
特許文献１には、移動体向けのデータ配信システムが開示されている。特許文献１には、送信端末が通信網を介して受信端末の受信状態を取得し、受信状態に基づいて配信動作を制御しているデータ配信システムが開示されている。このデータ配信システムでは、配信の順序付けとして、パケットドロップ率を利用している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−０３３５４８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１の移動体向けのデータ配信システムは、常に受信状態を収集する必要がある。このため、通信制御が不必要な状況においても通信制御処理が実施される。よって、制御に伴うオーバヘッドが高い。また、受信端末が増加すると、送信端末に負荷が集中し、サービス品質が低下する虞がある。【０００５】
本発明では、通信制御を必要とする移動体が過密となった場合にのみ、移動体間で送信タイミングを調整する通信制御装置を提供する。本発明は、この通信制御装置により、アプリケーションレベルのサービス品質の低下を最小限に抑えることを目的とする。
【課題を解決するための手段】
【０００６】
本発明に係る通信制御装置は、コンテンツサーバからコンテンツデータを取得する複数の移動体であって、互いに通信する管理用ネットワークを構成する複数の移動体の各々に搭載された通信制御装置において、
前記管理用ネットワークにおける前記複数の移動体の密度に基づいて、前記コンテンツデータを取得する際の通信制御を行うか否かを判定する管理部を備えた。
【発明の効果】
【０００７】
本発明に係る通信制御装置は、移動体に搭載されている。そして、管理部が、管理用ネットワークにおける複数の移動体の密度に基づいて、コンテンツデータを取得する際の通信制御を行うか否かを判定する。よって、本発明に係る通信制御装置によれば、複数の移動体が過密なった場合のみ通信制御を行うので、アプリケーションレベルのサービス品質の低下を最小限に抑えることができる。
【図面の簡単な説明】
【０００８】
【図１】実施の形態１に係る通信制御システムの概念図。
【図２】実施の形態１に係る通信制御装置の構成図。
【図３】実施の形態１に係る通信管理テーブルの構成図。
【図４】実施の形態１に係る通信制御装置による通信制御処理の全体フロー図。
【図５】実施の形態１に係る管理処理のフロー図。
【図６】実施の形態１に係るメタデータ取得処理のフロー図。
【図７】実施の形態１に係る制御処理のフロー図。
【図８】実施の形態１に係る変形例に係る通信制御装置の構成図。
【図９】実施の形態２に係る通信制御装置の構成図。
【図１０】実施の形態２に係る制御処理のフロー図。
【図１１】実施の形態２に係るキャッシュ管理処理のフロー図。
【発明を実施するための形態】
【０００９】
以下、本発明の実施の形態について、図を用いて説明する。なお、各図中、同一または相当する部分には、同一符号を付している。実施の形態の説明において、同一または相当する部分については、説明を適宜省略または簡略化する。
【００１０】
実施の形態１．
＊＊＊構成の説明＊＊＊
図１を用いて、本実施の形態に係る通信制御システム５００の概念について説明する。
通信制御システム５００は、複数の移動体１１を有する。複数の移動体１１の各移動体１１は、コンテンツサーバ１４からコンテンツデータ１４１を取得する。通信制御装置１００は、複数の移動体１１の各移動体１１に搭載されている。
【００１１】
管理用ネットワーク１０は、複数の移動体１１により構成される。管理用ネットワーク１０は、複数の移動体１１の間で通信制御に必要な制御データを交換するＰ２Ｐ（ｐｅｅｒ−ｔｏ−ｐｅｅｒ）といった技術により構成された論理的なネットワークである。管理用ネットワーク１０を構成する物理的なネットワークは、アドホックネットワーク１２である。
アドホックネットワーク１２は、移動体１１が持つ中継機能を利用して一時的に相互接続される複数の移動体１１で構成されるネットワークである。
一方、移動体１１は、広域網１３上に設置されたコンテンツサーバ１４からコンテンツデータを取得するために、基地局１５とも通信を行う。
広域網１３は、インターネット、公衆網、あるいは専用網といったネットワークを指す。
コンテンツサーバ１４は、動画、ＨＴＭＬ（ＨｙｐｅｒＴｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）文書、あるいはプログラムといったコンテンツデータ１４１を配信する既設のサーバである。
基地局１５は、携帯電話基地局あるいは広域無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）アクセスポイントといった接続点である。基地局１５は、移動体１１がコンテンツデータ１４１を得るための最初の接続点である。
【００１２】
図２を用いて、本実施の形態に係る通信制御装置１００の構成を説明する。
図２に示すように、移動体１１は、通信制御装置１００を有する。
通信制御装置１００は、コンピュータである。通信制御装置１００は、プロセッサ９１０を備えるとともに、記憶装置９２０および通信装置９５０といった他のハードウェアを備える。記憶装置９２０は、メモリと補助記憶装置を備える。プロセッサ９１０は、信号線を介して他のハードウェアと接続され、これら他のハードウェアを制御する。
【００１３】
通信制御装置１００は、機能要素として、管理部１１０と、メタデータ取得部１２０と、制御部１３０と、外部通信部１４０と、記憶部１５０とを備える。記憶部１５０には、共有データ１５１が記憶されている。共有データ１５１には、セマフォ５１２と通信管理テーブル５１１が含まれる。
【００１４】
管理部１１０とメタデータ取得部１２０と制御部１３０の機能は、ソフトウェアにより実現される。
外部通信部１４０は、通信装置９５０に備えられる。
記憶部１５０は、記憶装置９２０に備えられる。
【００１５】
プロセッサ９１０は、通信制御プログラムを実行する装置である。通信制御プログラムは、管理部１１０とメタデータ取得部１２０と制御部１３０の機能を実現するプログラムである。
プロセッサ９１０は、演算処理を行うＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）である。プロセッサ９１０の具体例は、ＣＰＵ、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）、ＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）である。
【００１６】
メモリは、データを一時的に記憶する記憶装置である。メモリの具体例は、ＳＲＡＭ（Ｓｔａｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、あるいはＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）である。
補助記憶装置は、データを保管する記憶装置である。補助記憶装置の具体例は、ＨＤＤである。また、補助記憶装置は、ＳＤ（登録商標）メモリカード、ＣＦ、ＮＡＮＤフラッシュ、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ（登録商標）ディスク、ＤＶＤといった可搬記憶媒体であってもよい。なお、ＨＤＤは、Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅの略語である。ＳＤ（登録商標）は、Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌの略語である。ＣＦは、ＣｏｍｐａｃｔＦｌａｓｈ（登録商標）の略語である。ＤＶＤは、Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋの略語である。
【００１７】
通信装置９５０は、ネットワークを介して他の装置と通信する。通信装置９５０は、レシーバとトランスミッタを有する。通信装置９５０は、無線で、ＬＡＮ、インターネット、あるいは電話回線といった通信網に接続している。通信装置９５０は、具体的には、通信チップまたはＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）である。通信制御装置１００は、通信装置９５０を介して、コンテンツサーバ１４とのメッセージの送受信を行う。
【００１８】
通信制御プログラムは、プロセッサ９１０に読み込まれ、プロセッサ９１０によって実行される。メモリには、通信制御プログラムだけでなく、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）も記憶されている。プロセッサ９１０は、ＯＳを実行しながら、通信制御プログラムを実行する。通信制御プログラムおよびＯＳは、補助記憶装置に記憶されていてもよい。補助記憶装置に記憶されている通信制御プログラムおよびＯＳは、メモリにロードされ、プロセッサ９１０によって実行される。なお、通信制御プログラムの一部または全部がＯＳに組み込まれていてもよい。
【００１９】
通信制御装置１００は、プロセッサ９１０を代替する複数のプロセッサを備えていてもよい。これら複数のプロセッサは、通信制御プログラムの実行を分担する。それぞれのプロセッサは、プロセッサ９１０と同じように、通信制御プログラムを実行する装置である。
【００２０】
通信制御プログラムにより利用、処理または出力されるデータ、情報、信号値および変数値は、メモリ、補助記憶装置、または、プロセッサ９１０内のレジスタあるいはキャッシュメモリに記憶される。
【００２１】
管理部１１０とメタデータ取得部１２０と制御部１３０の各部の「部」を「処理」、「手順」あるいは「工程」に読み替えてもよい。
通信制御プログラムは、上記の各部の「部」を「処理」、「手順」あるいは「工程」に読み替えた各処理、各手順あるいは各工程を、コンピュータに実行させる。また、通信制御方法は、通信制御装置１００が通信制御プログラムを実行することにより行われる方法である。
通信制御プログラムは、コンピュータ読取可能な記録媒体に格納されて提供されてもよい。また、通信制御プログラムは、プログラムプロダクトとして提供されてもよい。
【００２２】
なお、移動体１１は、利用者にサービスを提供するアプリケーションプログラムを実行するアプリケーション実行部を備える。本実施の形態では、アプリケーション実行部は、通信制御装置１００の外部に存在する。なお、アプリケーション実行部が通信制御装置１００の内部に存在していても構わない。
【００２３】
＊＊＊構成要素の機能の概略説明＊＊＊
管理部１１０は、管理用ネットワーク１０への参加および離脱、ならびに、共有データ１５１の取得、更新、および通知を行う。管理部１１０は、管理用ネットワーク管理部ともいう。
共有データ１５１は、移動体１１間で共有すべきデータである。共有データ１５１には、通信管理テーブル５１１およびセマフォ５１２といった情報が含まれる。共有データ１５１は、制御部１３０による通信制御に用いられる。通信制御には、複数の移動体の間の排他制御が含まれる。また、通信制御には、コンテンツデータの配信を要求する配信要求の送信制御が含まれる。また、通信制御には、コンテンツデータの取得を行う処理時間の時間制御が含まれる。セマフォ５１２は、複数の移動体の各々がコンテンツデータ１４１を取得する際に行われる排他制御に用いられる。通信管理テーブル５１１は、配信要求の送信制御、および、処理時間の時間制御に用いられる。
【００２４】
図３を用いて、本実施の形態に係る通信管理テーブル５１１について説明する。
通信管理テーブル５１１では、コンテンツデータを取得する優先度５１５と、待機時間５１６と、最大通信時間５１７とが対応付けられている。優先度５１５は、データ通信の要求の度合いを表す。優先度５１５は、データ通信要求度ともいう。
待機時間は、Ｘｎ≦・・・≦Ｘ１とする。最大通信時間は、Ｙ１≦・・・≦Ｙｎとする。このように待機時間と最大通信時間を設定することにより、優先度５１５が高い移動体が送信権を得やすくなる。また、優先度５１５が高い移動体のデータダウンロードスループットを高くすることができる。また、最大通信時間はダウンロードデータ量でもよい。
【００２５】
メタデータ取得部１２０は、コンテンツサーバ１４との通信が必要なアプリケーション実行部からメタデータを取得する。メタデータは、コンテンツサーバから取得するコンテンツデータの特徴を表す情報である。メタデータの具体例は、動画であればバッファ済データ量、あるいは、地図データであれば地図データを使用するまでの残時間といった情報である。これらの情報は、推定値でもよい。メタデータ取得部１２０は、データパケットのプロトコルからメタデータを判断してもよい。
図３では、コンテンツデータが動画の場合の具体例を示している。メタデータとして、先読みデータ量が取得される。先読みデータ量とは、再生箇所を起点としたダウンロード済データ量である。図３の具体例では、この先読みデータ量を基準に通信管理テーブル５１１が設定されている。
【００２６】
制御部１３０は、コンテンツサーバ１４からコンテンツデータをダウンロードするタイミングと通信時間を制御する。制御部１３０は通信制御部ともいう。
制御部１３０は、管理部１１０により通信制御を行うと判定されると、記憶部１５０に記憶されているセマフォ５１２を用いて、コンテンツサーバ１４にコンテンツデータの配信を要求する配信要求を送信する送信権を取得する。制御部１３０は、配信要求を送信することによりコンテンツデータを取得する。制御部１３０は、コンテンツデータの取得後、記憶部１５０に記憶されているセマフォ５１２を用いて送信権を返却する。制御部１３０は、送信権を取得した際、あるいは、送信権を返却した際に、記憶部１５０に記憶されているセマフォ５１２を他の移動体１１に送信する。
【００２７】
外部通信部１４０は、通信データをネットワーク上で交換するために必要な符号化および復号を実行する。また、外部通信部１４０は、制御データを交換するために、アドホックネットワーク１２を使用して他の移動体１１と通信する。また、外部通信部１４０は、コンテンツサーバ１４からコンテンツデータをダウンロードするために基地局１５と通信する。
【００２８】
記憶部１５０は、排他制御のために用いられるセマフォ５１２を記憶する。また、記憶部１５０は、配信要求の送信を待機する待機時間５１６を記憶するとともに、コンテンツデータの取得を行う処理時間の最大時間である最大通信時間５１７を記憶する。本実施の形態では、記憶部１５０は、コンテンツデータを取得する優先度５１５と待機時間５１６と最大通信時間５１７とを対応付けた通信管理テーブル５１１を記憶する。
【００２９】
＊＊＊動作の説明＊＊＊
図４を用いて、本実施の形態に係る通信制御装置１００による通信制御処理Ｓ１００の全体フローの概要について説明する。
【００３０】
＜管理処理：ステップＳ１１０，Ｓ１１１，Ｓ１１２，Ｓ１１６＞
ステップＳ１１０において、管理部１１０は、コンテンツサーバ１４への接続要求を受け取ると、アドホックネットワーク１２に参加する参加処理を実行する。具体的には、管理部１１０は、アプリケーション実行部からコンテンツサーバ１４への接続要求が発生した時に参加処理を実行する。このとき、既に管理用ネットワーク１０を構成している移動体群が他の移動体となる。他の移動体は互いに通信する管理用ネットワーク１０、具体的にはアドホックネットワーク１２を構成している。
【００３１】
管理部１１０は、管理用ネットワーク１０における複数の移動体１１の密度に基づいて、コンテンツデータを取得する際の通信制御を行うか否かを判定する。管理部１１０は、複数の移動体１１の数を複数の移動体１１の密度として、通信制御を行うか否かを判定する。すなわち、管理部１１０は、アドホックネットワーク１２への参加が成功した場合に、複数の移動体１１の数に基づいて、通信制御を行うか否かを判定する。通信制御を行うか否かの判定は、複数の移動体１１の数、すなわち、複数の移動体１１が高密度であるか否かにより判定される。
ステップＳ１１１において、管理部１１０は、参加に成功し、かつ、管理用ネットワーク１０に参加している移動体数が予め定められた閾値以上かを判定する。ここで、管理用ネットワーク１０に参加している移動体を参加移動体という。参加に失敗するか、あるいは、参加移動体数が閾値を下回る場合は、管理部１１０は、通信制御処理を終了する。
参加移動体数が閾値を下回る場合は、移動体１１は、通常の処理でコンテンツデータをダウンロードする。この場合は、通信制御が不要であることを意味するので、移動体１１は、通信制御処理を解除し、直接コンテンツサーバ１４へ接続する。移動体１１は、コンテンツデータをダウンロード後、管理用ネットワーク１０に参加している場合は、離脱する。
参加に成功し、かつ、参加移動体数が閾値以上であれば、排他制御を用いて通信制御を行うために、ステップＳ１１２に進む。参加移動体数が閾値以上である状態を「移動体が高密度である」ともいう。
【００３２】
ステップＳ１１２において、管理部１１０は、共有データの取得を実行する。管理部１１０は、アドホックネットワーク１２への参加が成功すると、セマフォ５１２と通信管理テーブル５１１と含む共有データ１５１を他の移動体から取得する共有データ取得処理を実行する。管理部１１０は、他の移動体から共有データを取得できなかった場合は、共有データを生成し、セマフォ５１２と通信管理テーブル５１１を予め定められた値で初期化する。ステップＳ１１２の処理の詳細については後述する。
【００３３】
＜メタデータ取得処理：ステップＳ１１３＞
ステップＳ１１３において、メタデータ取得部１２０は、通信データのメタデータを取得する。
【００３４】
＜制御処理：ステップＳ１１４，Ｓ１１５＞
ステップＳ１１４において、制御部１３０は、通信制御を実行する。
ステップＳ１１５において、制御部１３０は、管理用ネットワーク１０上で制御データが交換できないか、あるいは、コンテンツ配信要求がなくなったかを判定する。管理用ネットワーク１０上で制御データが交換できないとは、具体的には、アドホック通信の品質が低下した場合である。管理用ネットワーク１０上で制御データが交換できない、あるいは、コンテンツ配信要求がなくなった場合は、ステップＳ１１６に進む。管理用ネットワーク１０上で制御データが交換でき、かつ、コンテンツ配信要求がある場合は、ステップＳ１１２に戻り、処理を繰り返す。
【００３５】
ステップＳ１１６において、管理部１１０は、管理用ネットワーク１０からの離脱処理を実行し、通信制御処理を終了する。
【００３６】
図５を用いて、本実施の形態に係る管理処理について詳細に説明する。
ステップＳ０１０において、管理部１１０は、図４のステップＳ１１０による参加要求があるかを判定する。参加要求があれば、ステップＳ０１１に進む。参加要求がなければ、ステップＳ０１６に進む。
ステップＳ０１１において、管理部１１０は、管理用ネットワーク１０への参加処理を実行する。
ステップＳ１１１において、管理部１１０は、参加に成功し、かつ、参加移動体数が予め定められた閾値以上かを判定する。ステップＳ１１１の処理は図４のステップＳ１１１と同様である。
ステップＳ１１２において、管理部１１０は、管理用ネットワーク１０におけるいずれかの参加移動体から、共有データ１５１の取得を試みる。ステップＳ１１２の処理は図４のステップＳ１１２と同様である。
【００３７】
ステップＳ０１２において、管理部１１０は、共有データの取得に失敗したか否かを判定する。いずれの参加移動体も共有データ１５１を保有しておらず、共有データの取得に失敗した場合、管理部１１０は、ステップＳ０１３に進む。共有データの取得に成功した場合は、ステップＳ０１４に進む。なお、共有データを他の移動体から取得できない場合は、以下の２パターンが考えられる。１つ目は、他の移動体が管理用ネットワークには参加済であるがコンテンツサーバと１度も通信していないパターンである。２つ目は、自移動体が管理用ネットワークの参加移動体であり、最初にコンテンツサーバと通信を行う場合である。どちらの場合も、共有データが生成されていないので生成が必要である。
【００３８】
ステップＳ０１３において、管理部１１０は、共有データ１５１を新たに生成する。この時生成する共有データ１５１は、通信管理テーブル５１１およびセマフォ５１２を予め定められた値に初期化したものである。
【００３９】
ステップＳ０１４において、管理部１１０は、取得、あるいは、生成した共有データ１５１を記憶部１５０に保存する。
ステップＳ０１５において、管理部１１０は、共有データ１５１を記憶部１５０に保存したことを制御部１３０へ通知する。
【００４０】
ステップＳ０１６において、管理部１１０は、制御部１３０から離脱要求があるかを判定する。離脱要求がある場合、ステップＳ０１７に進む。離脱要求がない場合、ステップＳ０１８に進む。
ステップＳ０１７において、管理部１１０は、管理用ネットワーク１０からの離脱処理を実行する。
【００４１】
ステップＳ０１８において、管理部１１０は、制御部１３０から通知要求があるかを判定する。通知要求がある場合、ステップＳ０１９に進む。通知要求がない場合、ステップＳ０１１２に進む。ここで、通知要求とは、制御部１３０のセマフォＰ操作、および、セマフォＶ操作による共有データ１５１の通知要請のことである。セマフォＰ操作とは、共有データ１５１のセマフォをデクリメントし、送信権を取得することである。セマフォＶ操作とは、共有データ１５１のセマフォをインクリメントし、送信権を返却することである。
ステップＳ０１９において、管理部１１０は、全ての参加移動体の共有データ１５１をロックする。管理部１１０は、共有データ１５１をすぐにロックできない場合は、ロックできるまで待つ。
ステップＳ０１１０において、管理部１１０は、参加移動体へ共有データ１５１を送信する。
その後、ステップＳ０１１１において、管理部１１０は、全ての参加移動体の共有データ１５１をアンロックする。
なお、他の移動体からステップＳ１１２の共有データ１５１の取得要求を受信した場合、この取得要求に対する応答処理も同様の処理で対応する。ただし、取得あるいは生成した共有データの送付先は、取得要求元の移動体のみとなる。
【００４２】
ステップＳ０１１２において、各移動体の管理部１１０は、共有データ１５１の更新か否かを判定する。各移動体の管理部１１０は、他の移動体におけるステップＳ０１１０で送信された共有データ１５１を受信すると、共有データ１５１の更新であると判定する。共有データ１５１の更新であると判定すると、ステップＳ０１１３に進む。共有データ１５１の更新でない場合は、処理を終了する。
ステップＳ０１１３において、管理部１１０は、他の移動体から送信された共有データを受信する。
ステップＳ０１１４において、管理部１１０は、受信した共有データを記憶部１５０に保存する。すなわち、管理部１１０は、他の移動体から受信したセマフォにより記憶部１５０に記憶されているセマフォ５１２を更新する。
ただし、参加移動体数が１の場合、管理部１１０は、通信管理テーブル５１１を生成した後、制御部１３０の通信制御のセマフォ操作を実行せずにコンテンツサーバ１４との通信を行う。参加移動体数が２以上の場合は、セマフォ操作を行う。制御部１３０の通信制御のセマフォ操作とは、図７のステップＳ３０２およびステップＳ３０４の処理のことである。
【００４３】
次に、図６を用いて、本実施の形態に係るメタデータ取得処理について詳細に説明する。
ステップＳ２０１において、制御部１３０からメタデータ取得要求があると、メタデータ取得部１２０は、アプリケーション実行部からメタデータを抽出する。
ステップＳ２０２において、メタデータ取得部１２０は、アプリケーション実行部から抽出されたメタデータを制御部１３０へ通知する。
【００４４】
次に、図７を用いて、本実施の形態に係る制御処理について詳細に説明する。
ステップＳ３００において、制御部１３０は、メタデータ取得部１２０からメタデータを取得する。制御部１３０は、メタデータに基づいて優先度５１５を算出する。
ステップＳ３０１において、制御部１３０は、優先度５１５に対応する通信管理テーブル５１１の待機時間を参照し、その時間分待機する。具体例としては、優先度５１５が２の場合、待機時間はＸ２となる。制御部１３０は、管理部１１０により排他制御を用いると判定された後、待機時間の経過後に、ステップＳ３０２において送信権を取得する。
【００４５】
ステップＳ３０２において、制御部１３０は、共有データ１５１のセマフォをデクリメントし、送信権を取得するセマフォＰ操作を行う。管理部１１０の共有データ通知処理、すなわち図５のステップＳ０１８を管理用ネットワーク１０内の参加移動体（他の移動体）に対し実行する。共有データ通知処理によって共有データ１５１を受信した各参加移動体は、管理部１１０の共有データ更新処理（ステップＳ０１１２）を実行する。そして、各参加移動体は、自身の共有データ１５１を受信した共有データに置換する。セマフォＰ操作に成功した場合、ステップＳ３０３に進む。セマフォＰ操作に失敗した場合、ステップＳ３０５に進む。
【００４６】
ステップＳ３０３において、制御部１３０は、算出された優先度に対応する最大通信時間の範囲内でコンテンツデータの取得を行う。具体的には、制御部１３０は、通信管理テーブル５１１からステップＳ３００で得た優先度５１５に対応する最大通信時間を参照する。そして、制御部１３０は、最大通信時間を上限とする時間だけコンテンツサーバ１４からコンテンツデータをダウンロードする。具体例としては、優先度５１５が２の場合、最大通信時間はＹ２となる。
【００４７】
ダウンロード後、ステップＳ３０４において、制御部１３０は、共有データ１５１のセマフォをインクリメントし、送信権を返却するセマフォＶ操作を行う。管理部１１０の共有データ通知処理、すなわち図５のステップＳ０１８を管理用ネットワーク１０内の参加移動体（他の移動体）に対し実行する。共有データ通知処理によって共有データ１５１を受信した各参加移動体は、管理部１１０の共有データ更新処理（ステップＳ０１１２）を実行する。そして、各参加移動体は、自身の共有データ１５１を受信した共有データに置換する。セマフォＶ操作に成功した場合、ステップＳ１１５に進む。セマフォＶ操作に失敗した場合、ステップＳ３０５に進む。
【００４８】
ステップＳ１１５の処理は、図４のステップＳ１１５の処理である。
ステップＳ３０５において、制御部１３０は、セマフォＶ操作に成功し、かつ、アプリケーション実行部からのコンテンツ配信要求がないか、セマフォＰあるいはＶ操作に失敗した場合、管理部１１０に離脱処理を依頼する。セマフォＰ操作に成功し、かつ、アプリケーション実行部からのコンテンツ配信要求が継続してある場合は、ステップＳ３００から処理を再実行する。
【００４９】
＊＊＊本実施の形態の効果の説明＊＊＊
本実施の形態に係る通信制御装置１００では、近接の移動体同士でアドホックネットワークを構築し、自律的にコンテンツサーバへの接続タイミングとダウンロード量を調整する。よって、本実施の形態に係る通信制御装置１００によれば、アプリケーションレベルのサービス品質の低下を最小限に抑えることができる。
【００５０】
本実施の形態に係る通信制御装置１００では、送信権取得の前に優先度に準じた待機時間だけ待機する。よって、本実施の形態に係る通信制御装置１００によれば、コンテンツ配信要求度の高い移動体が送信権を得やすくなる。
【００５１】
本実施の形態に係る通信制御装置１００では、同時にコンテンツ配信要求を送信できる移動体数、すなわち送信権の発行上限をセマフォといった分散トランザクションを利用して制限する。よって、本実施の形態に係る通信制御装置１００によれば、使用可能なネットワーク帯域に適応した通信制御をすることができる。
【００５２】
本実施の形態に係る通信制御装置１００では、アドホックネットワークの構築可否または参加移動体数の閾値から通信制御の必要可否を判定する。よって、本実施の形態に係る通信制御装置１００によれば、通信制御が必要なエリアに対してのみ制御を実行でき、処理負荷が軽減する。
【００５３】
本実施の形態に係る通信制御装置１００によれば、原理上、センターサーバの設置が不要となるので、メンテナンスコストおよびランニングコストが低減する。
【００５４】
＊＊＊他の構成＊＊＊
＜変形例１＞
本実施の形態では、通信制御が必要なエリアにのみ通信制御を実施するようにした。しかし、セマフォの初期値あるいは通信管理テーブルの記載内容を、通信トラフィックの監視結果を基に動的に調整してもよい。すなわち、管理部は、複数の移動体の間の通信トラフィックを監視する。そして、管理部は、監視結果に基づいて動的に待機時間および最大通信時間を設定してもよい。
これにより、基地局の通信状況に応じた、適応性の高い通信制御が可能となる。
【００５５】
＜変形例２＞
本実施の形態では、通信制御が必要なエリアにのみ通信制御を実施するようにした。しかし、送信権取得時の移動体間の同期を防ぐため、通信管理テーブルに設定された待機時間にランダム値を加えてもよい。すなわち、制御部は、管理部により排他制御を用いると判定された後、待機時間にランダム値を加算した時間の経過後に、送信権を取得するようにしてもよい。具体的には、図７の制御処理のステップＳ３０１において、制御部１３０は、待機時間に０＜δ＜１なるランダム値δを加算して、δ加算後の待機時間分待機してもよい。
これにより、移動体間の待機時間にばらつきを持たせることができ、移動体間の送信権取得時の同期を防ぐことができる。よって、図７の制御処理のステップＳ３０２のセマフォＰ操作のロック待ち時間を軽減することができる。
【００５６】
＜変形例３＞
本実施の形態では、通信制御が必要なエリアにのみ通信制御を実施するようにした。しかし、共有データに、管理用ネットワークに参加する移動体を認証するための認証情報を含んでもよい。そして、管理部は、共有データに含まれる認証情報を用いて、管理用ネットワークに新たに参加する移動体を認証してもよい。具体的には、共有データに移動体の認証に必要な認証情報を記載し、アドホックネットワークへの参加時に新規に参加する移動体を認証する。移動体の認証に必要な認証情報とは、具体的には、通信する移動体の相互のディジタル証明書、あるいはユーザ名とパスワードのハッシュ値のリストといったデータである。
これにより、認証された移動体だけがサービスを利用することができ、不正利用を防止することができる。
【００５７】
＜変形例４＞
本実施の形態では、通信制御が必要なエリアにのみ通信制御を実施するようにした。しかし、各移動体が接続するコンテンツサーバを絞ってもよい。各移動体が接続するコンテンツサーバを絞るとは、複数の移動体の各々が、複数のコンテンツサーバのうち接続可能なコンテンツサーバのＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスが特定されていることをいう。通常、移動体の通信先のコンテンツサーバはそれぞれ異なる場合がある。しかし、通信先を特定のコンテンツサーバに絞ることで、通常はコンテンツサーバで実施する最大同時接続数を上限とした接続の振り分け処理を移動体側で実施していることと等価になる。通信先を特定のコンテンツサーバに絞るとは、通信先を同一のＩＰアドレスを持つサーバに限定することである。また、接続の振り分け処理では、負荷分散あるいは接続優先度制御が行われている。よって、本来ならばコンテンツサーバで実施していた負荷分散処理あるいは最大接続数の制御を移動体側で実施することができる。
これにより、コンテンツサーバへのコンテンツデータの要求タイミングが分散されるので、コンテンツサーバの負荷を平準化でき、要求されるピーク性能を低減することができ、コンテンツサーバのコストダウンが見込める。
【００５８】
＜変形例５＞
通信制御装置１００は、入力インタフェースおよび出力インタフェースを備えていてもよい。入力インタフェースは、マウス、キーボード、あるいはタッチパネルといった入力装置と接続されるポートである。入力インタフェースは、具体的には、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）端子である。なお、入力インタフェースは、ＬＡＮと接続されるポートであってもよい。
出力インタフェースは、ディスプレイといった出力機器のケーブルが接続されるポートである。出力インタフェースは、具体的には、ＵＳＢ端子またはＨＤＭＩ（登録商標）（Ｈｉｇｈ  Ｄｅｆｉｎｉｔｉｏｎ  Ｍｕｌｔｉｍｅｄｉａ  Ｉｎｔｅｒｆａｃｅ）端子である。ディスプレイは、具体的には、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）である。
【００５９】
＜変形例６＞
本実施の形態では、管理部１１０とメタデータ取得部１２０と制御部１３０の機能がソフトウェアで実現される。変形例として、管理部１１０とメタデータ取得部１２０と制御部１３０の機能がハードウェアで実現されてもよい。
【００６０】
図８は、本実施の形態の変形例に係る通信制御装置１００の構成を示す図である。
通信制御装置１００は、電子回路９０９、記憶装置９２０、および通信装置９５０を備える。
【００６１】
電子回路９０９は、管理部１１０とメタデータ取得部１２０と制御部１３０の機能を実現する専用の電子回路である。
電子回路９０９は、具体的には、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ロジックＩＣ、ＧＡ、ＡＳＩＣ、または、ＦＰＧＡである。ＧＡは、Ｇａｔｅ  Ａｒｒａｙの略語である。ＡＳＩＣは、Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔの略語である。ＦＰＧＡは、Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙの略語である。
管理部１１０とメタデータ取得部１２０と制御部１３０の機能は、１つの電子回路で実現されてもよいし、複数の電子回路に分散して実現されてもよい。
別の変形例として、管理部１１０とメタデータ取得部１２０と制御部１３０の一部の機能が電子回路で実現され、残りの機能がソフトウェアで実現されてもよい。
また、共有データ１５１についても、記憶装置９２０のメモリあるいは補助記憶装置に記憶してもよいし、専用のハードウェアで記憶してもよい。
【００６２】
プロセッサと電子回路の各々は、プロセッシングサーキットリとも呼ばれる。つまり、通信制御装置１００において、管理部１１０とメタデータ取得部１２０と制御部１３０の機能は、プロセッシングサーキットリにより実現される。
【００６３】
通信制御装置１００において、管理部とメタデータ取得部と制御部と記憶部の「部」を「工程」あるいは「処理」に読み替えてもよい。また、管理処理とデータ取得処理と制御処理と記憶処理の「処理」を「プログラム」、「プログラムプロダクト」または「プログラムを記録したコンピュータ読取可能な記憶媒体」に読み替えてもよい。
【００６４】
実施の形態２．
本実施の形態では、実施の形態１と異なる点について説明する。
なお、本実施の形態において、実施の形態１と同様の構成には同一の符号を付し、その説明を省略する。
本実施の形態では、管理用ネットワーク１０をコンテンツデータのキャッシングに使用する場合の形態について説明する。
【００６５】
＊＊＊構成の説明＊＊＊
図９を用いて、本実施の形態に係る通信制御装置１００ａの構成を説明する。
通信制御装置１００ａでは、図２で説明した通信制御装置１００の機能要素に加え、キャッシュ管理部１６０を備える。実施の形態１と同様に、キャッシュ管理部１６０は、プロセッサ９１０で実行してもよいし、専用のハードウェアで実行してもよい。
【００６６】
キャッシュ管理部１６０は、メタデータからコンテンツデータのファイル名を取得し、ファイル名を用いて複数の移動体からキャッシュファイルを検索する。また、キャッシュ管理部１６０は、複数の移動体の少なくともいずれかの移動体からキャッシュファイルを取得できなかった場合、コンテンツサーバから取得したコンテンツデータをキャッシュデータとして複数の移動体に公開する。キャッシュ管理部１６０は、制御部１３０からの要求に基づき、キャッシュデータを検索あるいは取得する。また、キャッシュ管理部１６０は、コンテンツサーバ１４からダウンロードしたファイルのうち公開可能なものについては、キャッシュデータとして公開する。すなわち、キャッシュ管理部１６０は、キャッシュデータについて、他の移動体からの検索あるいは取得を許可する。
【００６７】
＊＊＊動作の説明＊＊＊
図１０は、本実施の形態に係る制御処理を示すフロー図である。図１１は、本実施の形態に係るキャッシュ管理処理を示すフロー図である。図１０では、説明の都合上、実施の形態１で説明した図７の制御処理との差分のみを示す。
【００６８】
ステップＳ３０６およびステップＳ３０７は、図７の制御処理におけるステップＳ３００の前に実行する処理である。ステップＳ３０６において、制御部１３０は、メタデータ取得部１２０からメタデータを取得し、メタデータからダウンロードするファイル名を取得する。
ステップＳ３０７において、制御部１３０は、取得したダウンロードするファイル名を基にキャッシュデータのダウンロードを行うキャッシュダウンロード処理をキャッシュ管理部１６０に要請する。
ステップＳ３０８において、キャッシュデータのダウンロードに成功したか否かを判定する。
キャッシュデータのダウンロードに成功すると、制御部１３０は、図７の制御処理のステップＳ１１５におけるコンテンツ配信要求の有無のチェックから再実行する。キャッシュデータのダウンロードに失敗した場合は、制御部１３０は、図７の制御処理のステップＳ３００からステップＳ３０４を実行し、コンテンツサーバ１４からコンテンツデータ、またはその一部をダウンロードする。
その後、ステップＳ３０９において、制御部１３０は、キャッシュ管理部１６０にコンテンツデータをキャッシュデータとして公開するキャッシュ公開処理を要請する。そして、制御部１３０は、図７の制御処理のステップＳ１１５におけるコンテンツ配信要求の有無のチェックから再実行する。
【００６９】
次に、図１１を用いて、本実施の形態に係るキャッシュ管理処理について詳細に説明する。キャッシュ管理部１６０によるキャッシュ管理処理は、キャッシュダウンロード処理とキャッシュ公開処理とを有する。
【００７０】
＜キャッシュダウンロード処理＞
ステップＳ４００において、キャッシュ管理部１６０は、制御部１３０からキャッシュデータのダウンロード要請を受ける。
ステップＳ４０１において、キャッシュ管理部１６０は、管理用ネットワーク１０上の参加移動体に対してキャッシュファイルの検索を実行する。
ステップＳ４０２において、キャッシュ管理部１６０は、キャッシュファイルを持つ移動体が存在するかを判定する。キャッシュファイルを持つ移動体が存在すれば、ステップＳ４０３に進む。キャッシュファイルを持つ移動体が存在しない場合は、処理を終了する。
ステップＳ４０３において、キャッシュ管理部１６０は、キャッシュファイルをダウンロードし、処理を終了する。
【００７１】
＜キャッシュ公開処理＞
ステップＳ４０４において、キャッシュ管理部１６０は、制御部１３０からキャッシュデータの公開要請を受ける。
ステップＳ４０５において、キャッシュ管理部１６０は、キャッシュデータが公開可能かを判定する。公開可能であれば、ステップＳ４０６に進む。公開可能でなければ、処理を終了する。
ステップＳ４０６において、キャッシュ管理部１６０は、管理用ネットワーク１０上の参加移動体にキャッシュデータを公開する。
【００７２】
公開可否の判定には、個人情報が含まれているか、著作権で保護されているか、あるいは、公開が制限されているかといった判断基準が用いられる。なお、キャッシュデータを公開するタイミングでその都度ユーザにポップアップを用いて公開するかどうか問い合わせてもよい。
また、公開とは、「他の移動体からダウンロード可能にする状態」を指す。コンテンツデータがほしい移動体は、所望のコンテンツデータのインデックス情報を用いて、他の参加移動体に問合せを行う。所望のコンテンツデータを保持している参加移動体が存在した場合、コンテンツデータがほしい移動体は、アドホックネットワークを用いてその参加移動体と直接通信を行い、コンテンツデータをダウンロードする。インデックス情報には、コンテンツデータの識別子、あるいはコンテンツデータのファイル名といった情報がある。
【００７３】
＊＊＊本実施の形態の効果の説明＊＊＊
本実施の形態に係る通信制御装置１００ａでは、近接の移動体同士でコンテンツデータのキャッシングを行う。よって、本実施の形態に係る通信制御装置１００ａによれば、コンテンツサーバからコンテンツデータあるいはその一部をダウンロードする手間を省くことができる。特に、情報の拡散を目的とするファームウェア更新、および、地図データあるいは広告データといったデータの配信については、コンテンツサーバの負荷を軽減でき、かつ、高速なダウンロードが可能となる。さらに、キャッシュデータとして公開する基準を適切に設定することで、セキュリティとキャッシングを両立することが可能となる。
【００７４】
＊＊＊他の構成＊＊＊
＜変形例７＞
本実施の形態では、近接の移動体同士でコンテンツデータのキャッシングを実施するようにした。通常、管理用ネットワークであるアドホックネットワークが消滅すると、キャッシュデータも消える。しかし、キャッシュ管理部は、管理用ネットワークの消滅時にキャッシュデータを一時的に基地局あるいは路側機に退避させてもよい。そして、キャッシュ管理部は、管理用ネットワークの再構成時にキャッシュデータを基地局あるいは路側機から受け取り、再公開してもよい。
これにより、キャッシュヒットの確率を上げることができる。
【００７５】
＜変形例８＞
以上の実施の形態１および２では、管理用ネットワークにアドホックネットワークを使用した。しかし、一時的あるいは恒久的を問わず、管理用ネットワークにインターネット、携帯電話網、あるいは広域無線ＬＡＮといったネットワークを使用してもよい。
これにより、アドホックネットワーク特有の一時的な通信品質の揺らぎによる通信制御システムの破たんを防止することができる。
【００７６】
以上の実施の形態１および２では、通信制御装置の各部を独立した機能ブロックとして説明した。しかし、通信制御装置の構成は、上述した実施の形態のような構成でなくてもよい。通信制御装置の機能ブロックは、上述した実施の形態で説明した機能を実現することができれば、どのような構成でもよい。
【００７７】
以上の実施の形態１および２のうち、複数の部分を組み合わせて実施しても構わない。あるいは、これらの実施の形態のうち、１つの部分を実施しても構わない。その他、これらの実施の形態を、全体としてあるいは部分的に、どのように組み合わせて実施しても構わない。
なお、上述した実施の形態は、本質的に好ましい例示であって、本発明の範囲、本発明の適用物の範囲、および本発明の用途の範囲を制限することを意図するものではない。上述した実施の形態は、必要に応じて種々の変更が可能である。
【符号の説明】
【００７８】
１０  管理用ネットワーク、１１  移動体、１２  アドホックネットワーク、１３  広域網、１４  コンテンツサーバ、１５  基地局、１４１  コンテンツデータ、１００，１００ａ  通信制御装置、１１０  管理部、１２０  メタデータ取得部、１３０  制御部、１４０  外部通信部、１５０  記憶部、１５１  共有データ、５１１  通信管理テーブル、５１２  セマフォ、５１５  優先度、５１６  待機時間、５１７  最大通信時間、５００  通信制御システム、１６０  キャッシュ管理部、９０９  電子回路、９１０  プロセッサ、９２０  記憶装置、９５０  通信装置、Ｓ１００  通信制御処理。
【図１】
2019142337.tif 000003
【図２】
2019142337.tif 000004
【図３】
2019142337.tif 000005
【図４】
2019142337.tif 000006
【図５】
2019142337.tif 000007
【図６】
2019142337.tif 000008
【図７】
2019142337.tif 000009
【図８】
2019142337.tif 000010
【図９】
2019142337.tif 000011
【図１０】
2019142337.tif 000012
【図１１】
2019142337.tif 000013
【手続補正書】
【提出日】令和2年2月14日(2020.2.14)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンテンツサーバからコンテンツデータを取得する複数の移動体であって、互いに通信する管理用ネットワークを構成する複数の移動体の各々に搭載された通信制御装置において、
前記管理用ネットワークにおける前記複数の移動体の密度に基づいて、前記コンテンツデータを取得する際の通信制御を行うか否かを判定する管理部を備え、
前記通信制御には、前記複数の移動体の間の排他制御が含まれており、
前記通信制御装置は、
前記複数の移動体の間の排他制御に用いられるセマフォを記憶する記憶部と、
前記通信制御を行うと判定されると、前記記憶部に記憶されているセマフォを用いて、前記コンテンツサーバに前記コンテンツデータの配信を要求する配信要求を送信する送信権を取得し、前記配信要求を送信することにより前記コンテンツデータを取得し、前記コンテンツデータの取得後、前記記憶部に記憶されているセマフォを用いて前記送信権を返却する制御部と
を備えた通信制御装置。
【請求項２】
前記通信制御には、前記コンテンツデータの配信を要求する配信要求の送信制御が含まれており、
前記記憶部は、
前記配信要求の送信を待機する待機時間であって前記配信要求の送信制御に用いられる待機時間を記憶し、
前記制御部は、
前記管理部により前記通信制御を行うと判定された後、前記待機時間の経過後に、前記送信権を取得する請求項１に記載の通信制御装置。
【請求項３】
前記通信制御には、前記コンテンツデータの取得を行う処理時間の時間制御が含まれており、
前記記憶部は、
前記コンテンツデータの取得を行う処理時間の最大時間である最大通信時間であって前記処理時間の時間制御に用いられる最大通信時間を記憶し、
前記制御部は、
前記管理部により前記通信制御を行うと判定されると、前記最大通信時間の範囲内で前記コンテンツデータの取得を行う請求項１または請求項２に記載の通信制御装置。
【請求項４】
前記記憶部は、
前記コンテンツデータを取得する優先度と、前記配信要求の送信を待機する待機時間であって前記配信要求の送信制御に用いられる前記待機時間と、前記最大通信時間とを対応付けた通信管理テーブルを記憶し、
前記制御部は、
前記コンテンツサーバから取得するコンテンツデータの特徴を表すメタデータに基づいて、優先度を算出し、算出された優先度に対応する前記待機時間の経過後に前記送信権を取得し、算出された優先度に対応する前記最大通信時間の範囲内で前記コンテンツデータの取得を行う請求項３に記載の通信制御装置。
【請求項５】
前記制御部は、
前記送信権を取得した際、あるいは、前記送信権を返却した際に、前記記憶部に記憶されているセマフォを他の移動体に送信し、
前記管理部は、
他の移動体から受信したセマフォにより前記記憶部に記憶されているセマフォを更新する請求項１から請求項４のいずれか１項に記載の通信制御装置。
【請求項６】
前記管理部は、
前記コンテンツサーバへの接続要求を受け取ると、前記管理用ネットワークに参加する参加処理を実行し、前記管理用ネットワークへの参加が成功すると、前記複数の移動体の密度に基づいて、前記通信制御を行うか否かを判定する請求項１から請求項５のいずれか１項に記載の通信制御装置。
【請求項７】
前記管理部は、
前記複数の移動体の数を前記複数の移動体の密度として、前記通信制御を行うか否かを判定する請求項１から請求項６のいずれか１項に記載の通信制御装置。
【請求項８】
前記管理部は、
前記管理用ネットワークへの参加が成功すると、前記セマフォと前記通信管理テーブルとを含む共有データを他の移動体から取得する共有データ取得処理を実行し、他の移動体から共有データを取得できなかった場合は、新たに共有データを生成し、新たに生成した共有データを他の移動体に送信する請求項４に記載の通信制御装置。
【請求項９】
前記管理部は、
前記複数の移動体の間の通信トラフィックを監視し、監視結果に基づいて前記待機時間および前記最大通信時間を設定する請求項４に記載の通信制御装置。
【請求項１０】
前記制御部は、
前記管理部により前記排他制御を用いると判定された後、前記配信要求の送信を待機する待機時間であって前記配信要求の送信制御に用いられる前記待機時間にランダム値を加算した時間の経過後に、前記送信権を取得する請求項２から請求項４のいずれか１項に記載の通信制御装置。
【請求項１１】
前記共有データは、前記管理用ネットワークに参加する移動体を認証するための認証情報を含み、
前記管理部は、
前記共有データに含まれる認証情報を用いて、前記管理用ネットワークに新たに参加する移動体を認証する請求項８に記載の通信制御装置。
【請求項１２】
前記通信制御装置は、
前記メタデータから前記コンテンツデータのファイル名を取得し、前記ファイル名を用いて前記複数の移動体からキャッシュファイルを検索するキャッシュ管理部を備えた請求項４に記載の通信制御装置。
【請求項１３】
前記キャッシュ管理部は、
前記複数の移動体の少なくともいずれかの移動体からキャッシュファイルを取得できなかった場合、前記コンテンツサーバから取得したコンテンツデータをキャッシュデータとして前記複数の移動体に公開する請求項１２に記載の通信制御装置。
【請求項１４】
前記キャッシュ管理部は、
前記管理用ネットワークの消滅時にキャッシュデータを一時的に基地局あるいは路側機に退避させ、前記管理用ネットワークの再構成時にキャッシュデータを基地局あるいは路側機から受け取り、再公開する請求項１２または請求項１３に記載の通信制御装置。
【請求項１５】
前記管理用ネットワークは、アドホックネットワーク、インターネット、携帯電話網、あるいは広域無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）を含む請求項１から請求項１４のいずれか１項に記載の通信制御装置。
【請求項１６】
前記複数の移動体の各々は、複数のコンテンツサーバのうち接続可能なコンテンツサーバのＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスが特定されている請求項１から請求項１５のいずれか１項に記載の通信制御装置。
【請求項１７】
コンテンツサーバからコンテンツデータを取得する複数の移動体であって、互いに通信する管理用ネットワークを構成する複数の移動体の各々に搭載された通信制御装置の通信制御方法において、
管理部が、前記管理用ネットワークにおける前記複数の移動体の密度に基づいて、前記コンテンツデータを取得する際の通信制御を行うか否かを判定する通信制御方法であって、
前記通信制御には、前記複数の移動体の間の排他制御が含まれており、
記憶部が、前記複数の移動体の間の排他制御に用いられるセマフォを記憶し、
制御部が、前記通信制御を行うと判定されると、前記記憶部に記憶されているセマフォを用いて、前記コンテンツサーバに前記コンテンツデータの配信を要求する配信要求を送信する送信権を取得し、前記配信要求を送信することにより前記コンテンツデータを取得し、前記コンテンツデータの取得後、前記記憶部に記憶されているセマフォを用いて前記送信権を返却する通信制御方法。
【請求項１８】
コンテンツサーバからコンテンツデータを取得する複数の移動体であって、互いに通信する管理用ネットワークを構成する複数の移動体の各々に搭載された通信制御装置の通信制御プログラムにおいて、
前記管理用ネットワークにおける前記複数の移動体の密度に基づいて、前記コンテンツデータを取得する際の通信制御を行うか否かを判定する通信制御処理をコンピュータに実行させる通信制御プログラムであって、
前記通信制御には、前記複数の移動体の間の排他制御が含まれており、
前記通信制御処理は、
前記複数の移動体の間の排他制御に用いられるセマフォを記憶する記憶処理と、
前記通信制御を行うと判定されると、前記記憶処理により記憶されているセマフォを用いて、前記コンテンツサーバに前記コンテンツデータの配信を要求する配信要求を送信する送信権を取得し、前記配信要求を送信することにより前記コンテンツデータを取得し、前記コンテンツデータの取得後、前記記憶処理に記憶されているセマフォを用いて前記送信権を返却する制御処理と
を備えた通信制御プログラム。
【国際調査報告】
2019142337.tif 000014
2019142337.tif 000015