(57)【特許請求の範囲】
【請求項１】
コンテンツ指向ネットワークに接続し、前記コンテンツ指向ネットワークを介して受信した第１のデータを一時的に保存するメモリを備える第１の通信装置における通信方法であって、
前記第１の通信装置が提供するとともに前記第１のデータとは異なる第２のデータを要求するリクエストパケットを第２の通信装置から受信し、
前記メモリに保存されている前記第１のデータが、要求された前記第２のデータに関連しているか否かを判断し、
前記リクエストパケットで要求された前記第２のデータを取得するとともに、関連していると判断された前記第１のデータを関連データとして取得し、
取得された前記第２のデータと前記関連データとを前記第２の通信装置へ送信し、
前記第１のデータは、前記コンテンツ指向ネットワークに接続された第３の通信装置によって過去に提供され、
取得された前記第２のデータと前記関連データとを連続して前記第２の通信装置へ送信し、
前記第２のデータは、前記第１の通信装置の位置を表す位置情報を含み、
前記第１のデータは、前記第３の通信装置の位置を表す位置情報を含み、
前記第２のデータに含まれる前記位置情報と、前記第１のデータに含まれる前記位置情報とを用いて、前記第１の通信装置と前記第３の通信装置との物理距離が閾値より短いか否かを判断し、前記第１の通信装置と前記第３の通信装置との物理距離が閾値より短いと判断した場合に、前記第１のデータが前記第２のデータに関連していると判断する、
通信方法。
【請求項２】
コンテンツ指向ネットワークに接続し、前記コンテンツ指向ネットワークを介して受信した第１のデータを一時的に保存するメモリを備える第１の通信装置における通信方法であって、
前記第１の通信装置が提供するとともに前記第１のデータとは異なる第２のデータを要求するリクエストパケットを第２の通信装置から受信し、
前記メモリに保存されている前記第１のデータが、要求された前記第２のデータに関連しているか否かを判断し、
前記リクエストパケットで要求された前記第２のデータを取得するとともに、関連していると判断された前記第１のデータを関連データとして取得し、
取得された前記第２のデータと前記関連データとを前記第２の通信装置へ送信し、
前記第１のデータは、前記コンテンツ指向ネットワークに接続された第３の通信装置によって過去に提供され、
取得された前記第２のデータと前記関連データとを統合した一つのデータパケットを生成し、生成した前記データパケットを前記第２の通信装置へ送信し、
前記第２のデータは、前記第１の通信装置の位置を表す位置情報を含み、
前記第１のデータは、前記第３の通信装置の位置を表す位置情報を含み、
前記第２のデータに含まれる前記位置情報と、前記第１のデータに含まれる前記位置情報とを用いて、前記第１の通信装置と前記第３の通信装置との物理距離が閾値より短いか否かを判断し、前記第１の通信装置と前記第３の通信装置との物理距離が閾値より短いと判断した場合に、前記第１のデータが前記第２のデータに関連していると判断する、
通信方法。
【請求項３】
コンテンツ指向ネットワークに接続し、前記コンテンツ指向ネットワークを介して受信した第１のデータを一時的に保存するメモリを備える第１の通信装置における通信方法であって、
前記第１の通信装置が提供するとともに前記第１のデータとは異なる第２のデータを要求するリクエストパケットを第２の通信装置から受信し、
前記メモリに保存されている前記第１のデータが、要求された前記第２のデータに関連しているか否かを判断し、
前記リクエストパケットで要求された前記第２のデータを取得するとともに、関連していると判断された前記第１のデータを関連データとして取得し、
取得された前記第２のデータと前記関連データとを前記第２の通信装置へ送信し、
前記第１のデータは、前記コンテンツ指向ネットワークに接続された第３の通信装置によって過去に提供され、
取得された前記第２のデータと前記関連データとを連続して前記第２の通信装置へ送信し、
前記第１のデータは、時刻を表す時刻情報を含み、
前記第１のデータに含まれる前記時刻情報が示す時刻が現在時刻から所定時間以内であるか否かを判断し、前記時刻が現在時刻から所定時間以内であると判断した場合に、前記第１のデータが前記第２のデータに関連していると判断する、
通信方法。
【請求項４】
コンテンツ指向ネットワークに接続し、前記コンテンツ指向ネットワークを介して受信した第１のデータを一時的に保存するメモリを備える第１の通信装置における通信方法であって、
前記第１の通信装置が提供するとともに前記第１のデータとは異なる第２のデータを要求するリクエストパケットを第２の通信装置から受信し、
前記メモリに保存されている前記第１のデータが、要求された前記第２のデータに関連しているか否かを判断し、
前記リクエストパケットで要求された前記第２のデータを取得するとともに、関連していると判断された前記第１のデータを関連データとして取得し、
取得された前記第２のデータと前記関連データとを前記第２の通信装置へ送信し、
前記第１のデータは、前記コンテンツ指向ネットワークに接続された第３の通信装置によって過去に提供され、
取得された前記第２のデータと前記関連データとを統合した一つのデータパケットを生成し、生成した前記データパケットを前記第２の通信装置へ送信し、
前記第１のデータは、時刻を表す時刻情報を含み、
前記第１のデータに含まれる前記時刻情報が示す時刻が現在時刻から所定時間以内であるか否かを判断し、前記時刻が現在時刻から所定時間以内であると判断した場合に、前記第１のデータが前記第２のデータに関連していると判断する、
通信方法。
【請求項５】
前記第１のデータは、前記第３の通信装置の位置を表す位置情報をさらに含み、
前記時刻情報は、前記位置情報が取得された時刻を表し、
前記第１のデータに含まれる前記時刻情報が示す時刻が現在時刻から所定時間以内であるか否かを判断し、前記時刻が現在時刻から所定時間以内ではないと判断した場合に、前記第１のデータに含まれる前記位置情報と、前記第１のデータよりも前に受信された他の第１のデータに含まれる位置情報とに基づいて前記第３の通信装置が静止しているか否かを判断し、前記第３の通信装置が静止していると判断した場合に、前記第１のデータが前記第２のデータに関連していると判断し、前記第３の通信装置が静止していないと判断した場合に、前記第１のデータが前記第２のデータに関連していないと判断する、
請求項３又は４記載の通信方法。
【請求項６】
前記第１のデータは、前記第３の通信装置の位置を表す位置情報をさらに含み、
前記時刻情報は、前記位置情報が取得された時刻を表し、
前記第１のデータに含まれる前記時刻情報が示す時刻が現在時刻から所定時間以内であるか否かを判断し、前記時刻情報が示す時刻が現在時刻から所定時間以内ではないと判断した場合に、前記第１のデータに含まれる前記位置情報と、前記第１のデータよりも前に受信された他の第１のデータに含まれる位置情報とに基づいて前記第３の通信装置の最新の位置を推定し、推定した前記位置を関連データとして取得する、
請求項３又は４記載の通信方法。
【請求項７】
コンテンツ指向ネットワークに接続し、前記コンテンツ指向ネットワークを介して受信した第１のデータを一時的に保存するメモリを備える第１の通信装置における通信方法であって、
前記第１の通信装置が提供するとともに前記第１のデータとは異なる第２のデータを要求するリクエストパケットを第２の通信装置から受信し、
前記メモリに保存されている前記第１のデータが、要求された前記第２のデータに関連しているか否かを判断し、
前記リクエストパケットで要求された前記第２のデータを取得するとともに、関連していると判断された前記第１のデータを関連データとして取得し、
取得された前記第２のデータと前記関連データとを前記第２の通信装置へ送信し、
前記第１のデータは、前記コンテンツ指向ネットワークに接続された第３の通信装置によって過去に提供され、
取得された前記第２のデータと前記関連データとを連続して前記第２の通信装置へ送信し、
前記メモリに保存されている前記第１のデータの名前が、前記リクエストパケットの名前と一致せず、且つ、前記第１のデータの前記名前に含まれる拡張子が、前記リクエストパケットの前記名前に含まれる拡張子と同じ場合に、前記第１のデータが前記第２のデータに関連していると判断する、
通信方法。
【請求項８】
コンテンツ指向ネットワークに接続し、前記コンテンツ指向ネットワークを介して受信した第１のデータを一時的に保存するメモリを備える第１の通信装置における通信方法であって、
前記第１の通信装置が提供するとともに前記第１のデータとは異なる第２のデータを要求するリクエストパケットを第２の通信装置から受信し、
前記メモリに保存されている前記第１のデータが、要求された前記第２のデータに関連しているか否かを判断し、
前記リクエストパケットで要求された前記第２のデータを取得するとともに、関連していると判断された前記第１のデータを関連データとして取得し、
取得された前記第２のデータと前記関連データとを前記第２の通信装置へ送信し、
前記第１のデータは、前記コンテンツ指向ネットワークに接続された第３の通信装置によって過去に提供され、
取得された前記第２のデータと前記関連データとを統合した一つのデータパケットを生成し、生成した前記データパケットを前記第２の通信装置へ送信し、
前記メモリに保存されている前記第１のデータの名前が、前記リクエストパケットの名前と一致せず、且つ、前記第１のデータの前記名前に含まれる拡張子が、前記リクエストパケットの前記名前に含まれる拡張子と同じ場合に、前記第１のデータが前記第２のデータに関連していると判断する、
通信方法。
【請求項９】
コンテンツ指向ネットワークに接続し、前記コンテンツ指向ネットワークを介して受信した第１のデータを一時的に保存するメモリを備える第１の通信装置における通信方法であって、
前記第１の通信装置が提供するとともに前記第１のデータとは異なる第２のデータを要求するリクエストパケットを第２の通信装置から受信し、
前記メモリに保存されている前記第１のデータが、要求された前記第２のデータに関連しているか否かを判断し、
前記リクエストパケットで要求された前記第２のデータを取得するとともに、関連していると判断された前記第１のデータを関連データとして取得し、
取得された前記第２のデータと前記関連データとを前記第２の通信装置へ送信し、
前記第１のデータは、前記コンテンツ指向ネットワークに接続された第３の通信装置によって過去に提供され、
取得された前記第２のデータと前記関連データとを連続して前記第２の通信装置へ送信し、
前記メモリに保存されている前記第１のデータの名前に含まれる拡張子が、予め前記第１の通信装置に保持されている所定の拡張子と同じ場合に、前記第１のデータが前記第２のデータに関連していると判断する、
通信方法。
【請求項１０】
コンテンツ指向ネットワークに接続し、前記コンテンツ指向ネットワークを介して受信した第１のデータを一時的に保存するメモリを備える第１の通信装置における通信方法であって、
前記第１の通信装置が提供するとともに前記第１のデータとは異なる第２のデータを要求するリクエストパケットを第２の通信装置から受信し、
前記メモリに保存されている前記第１のデータが、要求された前記第２のデータに関連しているか否かを判断し、
前記リクエストパケットで要求された前記第２のデータを取得するとともに、関連していると判断された前記第１のデータを関連データとして取得し、
取得された前記第２のデータと前記関連データとを前記第２の通信装置へ送信し、
前記第１のデータは、前記コンテンツ指向ネットワークに接続された第３の通信装置によって過去に提供され、
取得された前記第２のデータと前記関連データとを統合した一つのデータパケットを生成し、生成した前記データパケットを前記第２の通信装置へ送信し、
前記メモリに保存されている前記第１のデータの名前に含まれる拡張子が、予め前記第１の通信装置に保持されている所定の拡張子と同じ場合に、前記第１のデータが前記第２のデータに関連していると判断する、
通信方法。
【請求項１１】
コンテンツ指向ネットワークに接続し、前記コンテンツ指向ネットワークを介して受信した第１のデータを一時的に保存するメモリを備える第１の通信装置における通信方法であって、
前記第１の通信装置が提供するとともに前記第１のデータとは異なる第２のデータを要求するリクエストパケットを第２の通信装置から受信し、
前記メモリに保存されている前記第１のデータが、要求された前記第２のデータに関連しているか否かを判断し、
前記リクエストパケットで要求された前記第２のデータを取得するとともに、関連していると判断された前記第１のデータを関連データとして取得し、
取得された前記第２のデータと前記関連データとを前記第２の通信装置へ送信し、
前記第１のデータは、前記コンテンツ指向ネットワークに接続された第３の通信装置によって過去に提供され、
取得された前記第２のデータと前記関連データとを連続して前記第２の通信装置へ送信し、
前記第１のデータが前記第３の通信装置から前記第１の通信装置に到達するまでに通過する通信装置の数を示すホップ数が閾値より小さいか否かを判断し、前記ホップ数が閾値より小さいと判断した場合に、前記第１のデータが前記第２のデータに関連していると判断する、
通信方法。
【請求項１２】
コンテンツ指向ネットワークに接続し、前記コンテンツ指向ネットワークを介して受信した第１のデータを一時的に保存するメモリを備える第１の通信装置における通信方法であって、
前記第１の通信装置が提供するとともに前記第１のデータとは異なる第２のデータを要求するリクエストパケットを第２の通信装置から受信し、
前記メモリに保存されている前記第１のデータが、要求された前記第２のデータに関連しているか否かを判断し、
前記リクエストパケットで要求された前記第２のデータを取得するとともに、関連していると判断された前記第１のデータを関連データとして取得し、
取得された前記第２のデータと前記関連データとを前記第２の通信装置へ送信し、
前記第１のデータは、前記コンテンツ指向ネットワークに接続された第３の通信装置によって過去に提供され、
取得された前記第２のデータと前記関連データとを統合した一つのデータパケットを生成し、生成した前記データパケットを前記第２の通信装置へ送信し、
前記第１のデータが前記第３の通信装置から前記第１の通信装置に到達するまでに通過する通信装置の数を示すホップ数が閾値より小さいか否かを判断し、前記ホップ数が閾値より小さいと判断した場合に、前記第１のデータが前記第２のデータに関連していると判断する、
通信方法。
【請求項１３】
コンテンツ指向ネットワークに接続する通信装置であって、
前記コンテンツ指向ネットワークを介して受信した第１のデータを一時的に保存するメモリと、
前記通信装置が提供するとともに前記第１のデータとは異なる第２のデータを要求するリクエストパケットを第２の通信装置から受信するリクエスト受信部と、
前記メモリに保存されている前記第１のデータが、要求された前記第２のデータに関連しているか否かを判断する関連性判断部と、
前記リクエストパケットで要求された前記第２のデータを取得するとともに、関連していると判断された前記第１のデータを関連データとして取得する取得部と、
取得された前記第２のデータと前記関連データとを前記第２の通信装置へ送信するデータ送信部と、
を備え、
前記第１のデータは、前記コンテンツ指向ネットワークに接続された第３の通信装置によって過去に提供され、
前記第２のデータは、前記通信装置の位置を表す位置情報を含み、
前記第１のデータは、前記第３の通信装置の位置を表す位置情報を含み、
前記データ送信部は、取得された前記第２のデータと前記関連データとを連続して前記第２の通信装置へ送信し、
前記関連性判断部は、前記第２のデータに含まれる前記位置情報と、前記第１のデータに含まれる前記位置情報とを用いて、前記通信装置と前記第３の通信装置との物理距離が閾値より短いか否かを判断し、前記通信装置と前記第３の通信装置との物理距離が閾値より短いと判断した場合に、前記第１のデータが前記第２のデータに関連していると判断する、
通信装置。
【請求項１４】
コンテンツ指向ネットワークに接続する通信装置であって、
前記コンテンツ指向ネットワークを介して受信した第１のデータを一時的に保存するメモリと、
前記通信装置が提供するとともに前記第１のデータとは異なる第２のデータを要求するリクエストパケットを第２の通信装置から受信するリクエスト受信部と、
前記メモリに保存されている前記第１のデータが、要求された前記第２のデータに関連しているか否かを判断する関連性判断部と、
前記リクエストパケットで要求された前記第２のデータを取得するとともに、関連していると判断された前記第１のデータを関連データとして取得する取得部と、
取得された前記第２のデータと前記関連データとを前記第２の通信装置へ送信するデータ送信部と、
を備え、
前記第１のデータは、前記コンテンツ指向ネットワークに接続された第３の通信装置によって過去に提供され、
前記第２のデータは、前記通信装置の位置を表す位置情報を含み、
前記第１のデータは、前記第３の通信装置の位置を表す位置情報を含み、
前記データ送信部は、取得された前記第２のデータと前記関連データとを統合した一つのデータパケットを生成し、生成した前記データパケットを前記第２の通信装置へ送信し、
前記関連性判断部は、前記第２のデータに含まれる前記位置情報と、前記第１のデータに含まれる前記位置情報とを用いて、前記通信装置と前記第３の通信装置との物理距離が閾値より短いか否かを判断し、前記通信装置と前記第３の通信装置との物理距離が閾値より短いと判断した場合に、前記第１のデータが前記第２のデータに関連していると判断する、
通信装置。
【請求項１５】
コンテンツ指向ネットワークに接続する通信装置であって、
前記コンテンツ指向ネットワークを介して受信した第１のデータを一時的に保存するメモリと、
前記通信装置が提供するとともに前記第１のデータとは異なる第２のデータを要求するリクエストパケットを第２の通信装置から受信するリクエスト受信部と、
前記メモリに保存されている前記第１のデータが、要求された前記第２のデータに関連しているか否かを判断する関連性判断部と、
前記リクエストパケットで要求された前記第２のデータを取得するとともに、関連していると判断された前記第１のデータを関連データとして取得する取得部と、
取得された前記第２のデータと前記関連データとを前記第２の通信装置へ送信するデータ送信部と、
を備え、
前記第１のデータは、前記コンテンツ指向ネットワークに接続された第３の通信装置によって過去に提供され、
前記第１のデータは、時刻を表す時刻情報を含み、
前記データ送信部は、取得された前記第２のデータと前記関連データとを連続して前記第２の通信装置へ送信し、
前記関連性判断部は、前記第１のデータに含まれる前記時刻情報が示す時刻が現在時刻から所定時間以内であるか否かを判断し、前記時刻が現在時刻から所定時間以内であると判断した場合に、前記第１のデータが前記第２のデータに関連していると判断する、
通信装置。
【請求項１６】
コンテンツ指向ネットワークに接続する通信装置であって、
前記コンテンツ指向ネットワークを介して受信した第１のデータを一時的に保存するメモリと、
前記通信装置が提供するとともに前記第１のデータとは異なる第２のデータを要求するリクエストパケットを第２の通信装置から受信するリクエスト受信部と、
前記メモリに保存されている前記第１のデータが、要求された前記第２のデータに関連しているか否かを判断する関連性判断部と、
前記リクエストパケットで要求された前記第２のデータを取得するとともに、関連していると判断された前記第１のデータを関連データとして取得する取得部と、
取得された前記第２のデータと前記関連データとを前記第２の通信装置へ送信するデータ送信部と、
を備え、
前記第１のデータは、前記コンテンツ指向ネットワークに接続された第３の通信装置によって過去に提供され、
前記第１のデータは、時刻を表す時刻情報を含み、
前記データ送信部は、取得された前記第２のデータと前記関連データとを統合した一つのデータパケットを生成し、生成した前記データパケットを前記第２の通信装置へ送信し、
前記関連性判断部は、前記第１のデータに含まれる前記時刻情報が示す時刻が現在時刻から所定時間以内であるか否かを判断し、前記時刻が現在時刻から所定時間以内であると判断した場合に、前記第１のデータが前記第２のデータに関連していると判断する、
通信装置。
【請求項１７】
コンテンツ指向ネットワークに接続する通信装置であって、
前記コンテンツ指向ネットワークを介して受信した第１のデータを一時的に保存するメモリと、
前記通信装置が提供するとともに前記第１のデータとは異なる第２のデータを要求するリクエストパケットを第２の通信装置から受信するリクエスト受信部と、
前記メモリに保存されている前記第１のデータが、要求された前記第２のデータに関連しているか否かを判断する関連性判断部と、
前記リクエストパケットで要求された前記第２のデータを取得するとともに、関連していると判断された前記第１のデータを関連データとして取得する取得部と、
取得された前記第２のデータと前記関連データとを前記第２の通信装置へ送信するデータ送信部と、
を備え、
前記第１のデータは、前記コンテンツ指向ネットワークに接続された第３の通信装置によって過去に提供され、
前記データ送信部は、取得された前記第２のデータと前記関連データとを連続して前記第２の通信装置へ送信し、
前記関連性判断部は、前記メモリに保存されている前記第１のデータの名前が、前記リクエストパケットの名前と一致せず、且つ、前記第１のデータの前記名前に含まれる拡張子が、前記リクエストパケットの前記名前に含まれる拡張子と同じ場合に、前記第１のデータが前記第２のデータに関連していると判断する、
通信装置。
【請求項１８】
コンテンツ指向ネットワークに接続する通信装置であって、
前記コンテンツ指向ネットワークを介して受信した第１のデータを一時的に保存するメモリと、
前記通信装置が提供するとともに前記第１のデータとは異なる第２のデータを要求するリクエストパケットを第２の通信装置から受信するリクエスト受信部と、
前記メモリに保存されている前記第１のデータが、要求された前記第２のデータに関連しているか否かを判断する関連性判断部と、
前記リクエストパケットで要求された前記第２のデータを取得するとともに、関連していると判断された前記第１のデータを関連データとして取得する取得部と、
取得された前記第２のデータと前記関連データとを前記第２の通信装置へ送信するデータ送信部と、
を備え、
前記第１のデータは、前記コンテンツ指向ネットワークに接続された第３の通信装置によって過去に提供され、
前記データ送信部は、取得された前記第２のデータと前記関連データとを統合した一つのデータパケットを生成し、生成した前記データパケットを前記第２の通信装置へ送信し、
前記関連性判断部は、前記メモリに保存されている前記第１のデータの名前が、前記リクエストパケットの名前と一致せず、且つ、前記第１のデータの前記名前に含まれる拡張子が、前記リクエストパケットの前記名前に含まれる拡張子と同じ場合に、前記第１のデータが前記第２のデータに関連していると判断する、
通信装置。
【請求項１９】
コンテンツ指向ネットワークに接続する通信装置であって、
前記コンテンツ指向ネットワークを介して受信した第１のデータを一時的に保存するメモリと、
前記通信装置が提供するとともに前記第１のデータとは異なる第２のデータを要求するリクエストパケットを第２の通信装置から受信するリクエスト受信部と、
前記メモリに保存されている前記第１のデータが、要求された前記第２のデータに関連しているか否かを判断する関連性判断部と、
前記リクエストパケットで要求された前記第２のデータを取得するとともに、関連していると判断された前記第１のデータを関連データとして取得する取得部と、
取得された前記第２のデータと前記関連データとを前記第２の通信装置へ送信するデータ送信部と、
を備え、
前記第１のデータは、前記コンテンツ指向ネットワークに接続された第３の通信装置によって過去に提供され、
前記データ送信部は、取得された前記第２のデータと前記関連データとを連続して前記第２の通信装置へ送信し、
前記関連性判断部は、前記メモリに保存されている前記第１のデータの名前に含まれる拡張子が、予め前記通信装置に保持されている所定の拡張子と同じ場合に、前記第１のデータが前記第２のデータに関連していると判断する、
通信装置。
【請求項２０】
コンテンツ指向ネットワークに接続する通信装置であって、
前記コンテンツ指向ネットワークを介して受信した第１のデータを一時的に保存するメモリと、
前記通信装置が提供するとともに前記第１のデータとは異なる第２のデータを要求するリクエストパケットを第２の通信装置から受信するリクエスト受信部と、
前記メモリに保存されている前記第１のデータが、要求された前記第２のデータに関連しているか否かを判断する関連性判断部と、
前記リクエストパケットで要求された前記第２のデータを取得するとともに、関連していると判断された前記第１のデータを関連データとして取得する取得部と、
取得された前記第２のデータと前記関連データとを前記第２の通信装置へ送信するデータ送信部と、
を備え、
前記第１のデータは、前記コンテンツ指向ネットワークに接続された第３の通信装置によって過去に提供され、
前記データ送信部は、取得された前記第２のデータと前記関連データとを統合した一つのデータパケットを生成し、生成した前記データパケットを前記第２の通信装置へ送信し、
前記関連性判断部は、前記メモリに保存されている前記第１のデータの名前に含まれる拡張子が、予め前記通信装置に保持されている所定の拡張子と同じ場合に、前記第１のデータが前記第２のデータに関連していると判断する、
通信装置。
【請求項２１】
コンテンツ指向ネットワークに接続する通信装置であって、
前記コンテンツ指向ネットワークを介して受信した第１のデータを一時的に保存するメモリと、
前記通信装置が提供するとともに前記第１のデータとは異なる第２のデータを要求するリクエストパケットを第２の通信装置から受信するリクエスト受信部と、
前記メモリに保存されている前記第１のデータが、要求された前記第２のデータに関連しているか否かを判断する関連性判断部と、
前記リクエストパケットで要求された前記第２のデータを取得するとともに、関連していると判断された前記第１のデータを関連データとして取得する取得部と、
取得された前記第２のデータと前記関連データとを前記第２の通信装置へ送信するデータ送信部と、
を備え、
前記第１のデータは、前記コンテンツ指向ネットワークに接続された第３の通信装置によって過去に提供され、
前記データ送信部は、取得された前記第２のデータと前記関連データとを連続して前記第２の通信装置へ送信し、
前記関連性判断部は、前記第１のデータが前記第３の通信装置から前記通信装置に到達するまでに通過する通信装置の数を示すホップ数が閾値より小さいか否かを判断し、前記ホップ数が閾値より小さいと判断した場合に、前記第１のデータが前記第２のデータに関連していると判断する、
通信装置。
【請求項２２】
コンテンツ指向ネットワークに接続する通信装置であって、
前記コンテンツ指向ネットワークを介して受信した第１のデータを一時的に保存するメモリと、
前記通信装置が提供するとともに前記第１のデータとは異なる第２のデータを要求するリクエストパケットを第２の通信装置から受信するリクエスト受信部と、
前記メモリに保存されている前記第１のデータが、要求された前記第２のデータに関連しているか否かを判断する関連性判断部と、
前記リクエストパケットで要求された前記第２のデータを取得するとともに、関連していると判断された前記第１のデータを関連データとして取得する取得部と、
取得された前記第２のデータと前記関連データとを前記第２の通信装置へ送信するデータ送信部と、
を備え、
前記第１のデータは、前記コンテンツ指向ネットワークに接続された第３の通信装置によって過去に提供され、
前記データ送信部は、取得された前記第２のデータと前記関連データとを統合した一つのデータパケットを生成し、生成した前記データパケットを前記第２の通信装置へ送信し、
前記関連性判断部は、前記第１のデータが前記第３の通信装置から前記通信装置に到達するまでに通過する通信装置の数を示すホップ数が閾値より小さいか否かを判断し、前記ホップ数が閾値より小さいと判断した場合に、前記第１のデータが前記第２のデータに関連していると判断する、
通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、データの名前を指定したリクエストパケットが送出されるとともに前記リクエストパケットの名前に対応するデータが送出されるコンテンツ指向ネットワークに接続する通信装置における通信方法、及び当該通信装置に関する。
【背景技術】
【０００２】
近年、コンテンツデータが存在する場所ではなく、コンテンツデータ自体の名前を指定することにより、コンテンツデータを取得することができる例えばＩＣＮ（Ｉｎｆｏｒｍａｔｉｏｎ  Ｃｅｎｔｒｉｃ  Ｎｅｔｗｏｒｋｉｎｇ）などのコンテンツ指向ネットワーク技術が提案されている。
【０００３】
例えば、特許文献１及び非特許文献１には、ＩＣＮを代表する技術としてＣＣＮ（Ｃｏｎｔｅｎｔ  Ｃｅｎｔｒｉｃ  Ｎｅｔｗｏｒｋｉｎｇ）が提案されている。
【０００４】
ＣＣＮを含むＩＣＮでは、ユーザの端末装置は、コンテンツデータを取得するために、コンテンツデータが存在する場所ではなく、コンテンツデータ自体の名前を指定したリクエストパケットをネットワークに送出する。そして、コンテンツデータを提供するコンテンツ提供元は、リクエストパケットを受信すると、リクエストパケットの名前に対応するコンテンツデータのデータパケットを送出する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】米国特許第８３８６６２２号明細書
【非特許文献】
【０００６】
【非特許文献１】Ｖａｎ  Ｊａｃｏｂｓｏｎ、Ｄｉａｎａ  Ｋ．  Ｓｍｅｔｔｅｒｓ、Ｊａｍｅｓ  Ｄ．  Ｔｈｏｒｎｔｏｎ、Ｍｉｃｈａｅｌ  Ｆ．  Ｐｌａｓｓ、Ｎｉｃｈｏｌａｓ  Ｈ．  Ｂｒｉｇｇｓ、Ｒｅｂｅｃｃａ  Ｌ．  Ｂｒａｙｎａｒｄ、「Ｎｅｔｗｏｒｋｉｎｇ  Ｎａｍｅｄ  Ｃｏｎｔｅｎｔ」、ＡＣＭ  ＣｏＮＥＸＴ、２００９
【発明の概要】
【発明が解決しようとする課題】
【０００７】
例えば、無人飛行機などの移動体が、集団で映像を撮影して地域を監視するといった特定の目的のために集団で行動する際には、各移動体は、お互いの位置情報を共有する必要がある。ＣＣＮを用いたシステムでは、自律的な情報交換が容易に可能となる。しかしながら、従来のＣＣＮを用いたシステムでは、各移動体がお互いの情報を共有するために、各移動体がコンテンツデータ（位置情報）を要求するためのリクエストパケットを他の全ノード（移動体）に対して送信する必要がある。そのため、リクエストパケットの送信頻度が高くなり、更なる改善が必要とされていた。
【課題を解決するための手段】
【０００８】
本開示の一態様に係る通信方法は、コンテンツ指向ネットワークに接続し、前記コンテンツ指向ネットワークを介して受信した第１のデータを一時的に保存するメモリを備える第１の通信装置における通信方法であって、前記第１の通信装置が提供するとともに前記第１のデータとは異なる第２のデータを要求するリクエストパケットを第２の通信装置から受信し、前記メモリに保存されている前記第１のデータが、要求された前記第２のデータに関連しているか否かを判断し、前記リクエストパケットで要求された前記第２のデータを取得するとともに、関連していると判断された前記第１のデータを関連データとして取得し、取得された前記第２のデータと前記関連データとを前記第２の通信装置へ送信する。
【発明の効果】
【０００９】
本開示によれば、通信装置が送信したリクエストパケットによって要求されたデータ以外に通信装置が必要とする関連データが、要求されたデータと一緒に送信されるため、リクエストパケットの送信頻度を下げることができるとともに、通信帯域の利用効率を改善することができる。
【図面の簡単な説明】
【００１０】
【図１】本実施の形態におけるコンテンツ指向ネットワークシステムの構成の一例を示す図である。
【図２】本実施の形態における通信装置の詳細構成の一例を示す図である。
【図３】本実施の形態における通信装置の動作の一例を示すフローチャートである。
【図４】本実施の形態における通信装置のデータ生成部が生成するコンテンツデータの一例を示す図である。
【図５】本実施の形態における通信装置の関連性判断部の動作の一例を示すフローチャートである。
【図６】本実施の形態における通信装置の関連性判断部の動作の他の例を示すフローチャートである。
【図７】本実施の形態におけるリクエストパケットの名前の一例を示す図である。
【図８】本実施の形態の変形例におけるコンテンツ指向ネットワークシステムの構成の一例を示す図である。
【発明を実施するための形態】
【００１１】
（本開示の基礎となった知見）
以下、本開示の基礎となった知見について説明する。
【００１２】
ＣＣＮでは、ユーザデバイスがコンテンツデータを取得するために、コンテンツデータが存在する場所ではなく、コンテンツデータ自体の名前を指定したリクエストパケットをネットワークに送出する。そして、コンテンツデータを提供するコンテンツ提供装置は、リクエストパケットを受信すると、リクエストパケットの名前に対応するコンテンツデータのデータパケットを送出する。
【００１３】
リクエストパケットを中継する中継装置は、ＦＩＢ（Ｆｏｒｗａｒｄｉｎｇ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｂａｓｅ）と呼ばれる経路情報を記憶し、この経路情報に従って、ユーザデバイス又は他の中継装置から送信されるリクエストパケットをコンテンツ提供装置に転送する。また、中継装置は、ＰＩＴ（Ｐｅｎｄｉｎｇ  Ｉｎｔｅｒｅｓｔ  Ｔａｂｌｅ）と呼ばれるリクエスト記憶部と、Ｃｏｎｔｅｎｔ  Ｓｔｏｒｅと呼ばれるデータ記憶部とを備える。中継装置は、コンテンツ提供装置又は他の中継装置から送信されるデータパケットを、リクエストパケットを送信したユーザデバイスに転送する。
【００１４】
ここで、中継装置は、リクエストパケットを受信したとき、データ記憶部（Ｃｏｎｔｅｎｔ  Ｓｔｏｒｅ）に上記リクエストパケットに記載された名前を含むデータパケットが存在する場合、上記リクエストパケットを受信したインタフェースから上記データパケットを送信する。そして、中継装置は、上記リクエストパケットをコンテンツ提供装置又は他の中継装置に転送しない。
【００１５】
一方、中継装置は、データ記憶部（Ｃｏｎｔｅｎｔ  Ｓｔｏｒｅ）に、受信したリクエストパケットに記載された名前を含むデータパケットが存在しない場合であり、かつ上記リクエストパケットに記載された名前と同一の名前に対するリクエストパケットに関する情報がリクエスト記憶部（ＰＩＴ）に存在しない場合にのみ、リクエスト記憶部（ＰＩＴ）に上記リクエストパケットに記載された名前と、上記リクエストパケットを受信したインタフェースに関する情報とを記憶する。そして、中継装置は、受信したリクエストパケットを、経路情報に従い、コンテンツ提供装置又は他の中継装置に転送する。また、中継装置は、上記リクエストパケットに記載された名前と同一の名前に対するリクエストパケットに関する情報がリクエスト記憶部（ＰＩＴ）に既に存在する場合、上記リクエストパケットを転送せず、上記リクエストパケットを受信したインタフェースに関する情報のみを記憶する。
【００１６】
また、中継装置は、データパケットを受信すると、受信したデータパケットをデータ記憶部（Ｃｏｎｔｅｎｔ  Ｓｔｏｒｅ）に記憶する。ただし、データ記憶部（Ｃｏｎｔｅｎｔ  Ｓｔｏｒｅ）に新たなデータパケットを記憶する領域がない場合、中継装置は、データ記憶部（Ｃｏｎｔｅｎｔ  Ｓｔｏｒｅ）に記憶した時刻から所定時間が経過したデータパケットをデータ記憶部（Ｃｏｎｔｅｎｔ  Ｓｔｏｒｅ）から消去する。
【００１７】
そして、中継装置は、リクエスト記憶部（ＰＩＴ）の情報に従い、上記データパケットの名前と同一の名前が記載された複数のリクエストパケットを受信した１つ以上のインタフェースに応じてデータパケットを複製して、複製したデータパケットを１つ以上のインタフェースを介して転送する。その後、中継装置は、上記データパケットの名前と、データパケットの名前に一致するリクエストパケットを受信したインタフェースに関する情報とをリクエスト記憶部（ＰＩＴ）から消去する。
【００１８】
このように、ＣＣＮでは、中継装置にリクエスト記憶部（ＰＩＴ）とデータ記憶部（Ｃｏｎｔｅｎｔ  Ｓｔｏｒｅ）とを最大限に活用させることにより、コンテンツデータを配信することができる。
【００１９】
しかしながら、上記の特許文献１及び非特許文献１では、一度のリクエストで取得できるコンテンツデータはリクエストパケットに記載された名前と同一の名前を持つコンテンツデータだけである。そのため、複数のユーザデバイスが持っているコンテンツデータを一のユーザデバイスが収集する場合には、同様のリクエストをユーザデバイスの数だけ繰り返す必要がある。したがって、ＣＣＮを用いたシステムでは、お互いの情報を共有するために、各ユーザデバイスがリクエストパケットを他の全ノード（ユーザデバイス）に対して送信する必要があり、リクエストパケットの送信頻度が高くなり、通信帯域の浪費と遅延時間の増大とを引きおこす。
【００２０】
このような問題を解決するために、本開示の一態様に係る通信方法は、コンテンツ指向ネットワークに接続し、前記コンテンツ指向ネットワークを介して受信した第１のデータを一時的に保存するメモリを備える第１の通信装置における通信方法であって、前記第１の通信装置が提供するとともに前記第１のデータとは異なる第２のデータを要求するリクエストパケットを第２の通信装置から受信し、前記メモリに保存されている前記第１のデータが、要求された前記第２のデータに関連しているか否かを判断し、前記リクエストパケットで要求された前記第２のデータを取得するとともに、関連していると判断された前記第１のデータを関連データとして取得し、取得された前記第２のデータと前記関連データとを前記第２の通信装置へ送信する。
【００２１】
この構成によれば、第１の通信装置は、コンテンツ指向ネットワークに接続し、コンテンツ指向ネットワークを介して受信した第１のデータを一時的に保存するメモリを備える。第１の通信装置が提供するとともに第１のデータとは異なる第２のデータを要求するリクエストパケットが第２の通信装置から受信される。メモリに保存されている第１のデータが、要求された第２のデータに関連しているか否かが判断される。リクエストパケットで要求された第２のデータが取得されるとともに、関連していると判断された第１のデータが関連データとして取得される。取得された第２のデータと関連データとが第２の通信装置へ送信される。
【００２２】
したがって、第２の通信装置が送信したリクエストパケットに対して、要求されたデータとともに、第２の通信装置が必要とする関連データが一緒に送信されるため、リクエストパケットの送信頻度を下げることができ、通信帯域の利用効率を改善することができ、遅延時間を抑制することができる。
【００２３】
また、上記の通信方法において、前記第１のデータは、前記コンテンツ指向ネットワークに接続された第３の通信装置によって過去に提供され、取得された前記第２のデータと前記関連データとを連続して前記第２の通信装置へ送信してもよい。
【００２４】
この構成によれば、取得された第２のデータと関連データとが連続して第２の通信装置へ送信されるので、第２のデータと関連データとを遅延することなく送信することができる。
【００２５】
また、上記の通信方法において、前記第１のデータは、前記コンテンツ指向ネットワークに接続された第３の通信装置によって過去に提供され、取得された前記第２のデータと前記関連データとを統合した一つのデータパケットを生成し、生成した前記データパケットを前記第２の通信装置へ送信してもよい。
【００２６】
この構成によれば、取得された第２のデータと関連データとを統合した一つのデータパケットが生成され、生成されたデータパケットが第２の通信装置へ送信されるので、第２のデータと関連データとを一括して送信することができる。
【００２７】
また、上記の通信方法において、前記第２のデータは、前記第１の通信装置の位置を表す位置情報を含み、前記第１のデータは、前記第３の通信装置の位置を表す位置情報を含み、前記第２のデータに含まれる前記位置情報と、前記第１のデータに含まれる前記位置情報とを用いて、前記第１の通信装置と前記第３の通信装置との物理距離が閾値より短いか否かを判断し、前記第１の通信装置と前記第３の通信装置との物理距離が閾値より短いと判断した場合に、前記第１のデータが前記第２のデータに関連していると判断してもよい。
【００２８】
この構成によれば、第２のデータは、第１の通信装置の位置を表す位置情報を含む。第１のデータは、第３の通信装置の位置を表す位置情報を含む。第２のデータに含まれる位置情報と、第１のデータに含まれる位置情報とを用いて、第１の通信装置と第３の通信装置との物理距離が閾値より短いか否かが判断される。第１の通信装置と第３の通信装置との物理距離が閾値より短いと判断された場合に、第１のデータが第２のデータに関連していると判断される。
【００２９】
したがって、第１の通信装置と第３の通信装置との物理距離が閾値より短いと判断された場合に、第１のデータが第２のデータに関連していると判断されるので、第１の通信装置と第３の通信装置とが互いの情報を共有する装置であることを容易に判断することができる。
【００３０】
また、上記の通信方法において、前記第１のデータは、時刻を表す時刻情報を含み、前記第１のデータに含まれる前記時刻情報が示す時刻が現在時刻から所定時間以内であるか否かを判断し、前記時刻が現在時刻から所定時間以内であると判断した場合に、前記第１のデータが前記第２のデータに関連していると判断してもよい。
【００３１】
この構成によれば、第１のデータは、時刻を表す時刻情報を含む。第１のデータに含まれる時刻情報が示す時刻が現在時刻から所定時間以内であるか否かが判断され、時刻が現在時刻から所定時間以内であると判断された場合に、第１のデータが第２のデータに関連していると判断される。
【００３２】
したがって、時刻が現在時刻から所定時間以内であると判断された場合に、第１のデータが第２のデータに関連していると判断されるので、第１の通信装置と第３の通信装置とが互いの情報を共有する装置であることを容易に判断することができる。また、第１の通信装置は、最新の情報を共有することができる。
【００３３】
また、上記の通信方法において、前記第１のデータは、前記第３の通信装置の位置を表す位置情報をさらに含み、前記時刻情報は、前記位置情報が取得された時刻を表し、前記第１のデータに含まれる前記時刻情報が示す時刻が現在時刻から所定時間以内であるか否かを判断し、前記時刻が現在時刻から所定時間以内ではないと判断した場合に、前記第１のデータに含まれる前記位置情報と、前記第１のデータよりも前に受信された他の第１のデータに含まれる位置情報とに基づいて前記第３の通信装置が静止しているか否かを判断し、前記第３の通信装置が静止していると判断した場合に、前記第１のデータが前記第２のデータに関連していると判断し、前記第３の通信装置が静止していないと判断した場合に、前記第１のデータが前記第２のデータに関連していないと判断してもよい。
【００３４】
この構成によれば、第１のデータは、第３の通信装置の位置を表す位置情報をさらに含む。時刻情報は、位置情報が取得された時刻を表す。第１のデータに含まれる時刻情報が示す時刻が現在時刻から所定時間以内であるか否かが判断される。時刻が現在時刻から所定時間以内ではないと判断された場合に、第１のデータに含まれる位置情報と、第１のデータよりも前に受信された他の第１のデータに含まれる位置情報とに基づいて第３の通信装置が静止しているか否かが判断される。第３の通信装置が静止していると判断された場合に、第１のデータが第２のデータに関連していると判断される。第３の通信装置が静止していないと判断された場合に、第１のデータが第２のデータに関連していないと判断される。
【００３５】
したがって、第３の通信装置が静止していた場合は、現在も静止している可能性が高いため、時間的に古い位置情報であっても利用することができ、第１のデータが第２のデータに関連しているか否かを判断することができる。
【００３６】
また、上記の通信方法において、前記第１のデータは、前記第３の通信装置の位置を表す位置情報をさらに含み、前記時刻情報は、前記位置情報が取得された時刻を表し、前記第１のデータに含まれる前記時刻情報が示す時刻が現在時刻から所定時間以内であるか否かを判断し、前記時刻情報が示す時刻が現在時刻から所定時間以内ではないと判断した場合に、前記第１のデータに含まれる前記位置情報と、前記第１のデータよりも前に受信された他の第１のデータに含まれる位置情報とに基づいて前記第３の通信装置の最新の位置を推定し、推定した前記位置を関連データとして取得してもよい。
【００３７】
この構成によれば、第１のデータは、第３の通信装置の位置を表す位置情報をさらに含む。時刻情報は、位置情報が取得された時刻を表す。第１のデータに含まれる時刻情報が示す時刻が現在時刻から所定時間以内であるか否かが判断される。時刻情報が示す時刻が現在時刻から所定時間以内ではないと判断された場合に、第１のデータに含まれる位置情報と、第１のデータよりも前に受信された他の第１のデータに含まれる位置情報とに基づいて第３の通信装置の最新の位置が推定され、推定された位置が関連データとして取得される。
【００３８】
したがって、時間的に古い位置情報を用いて第３の通信装置の最新の位置を推定することができる。
【００３９】
また、上記の通信方法において、前記メモリに保存されている前記第１のデータの名前が、前記リクエストパケットの名前と一致せず、且つ、前記第１のデータの前記名前に含まれるファイル名が、前記リクエストパケットの前記名前に含まれるファイル名と同じ場合に、前記第１のデータが前記第２のデータに関連していると判断してもよい。
【００４０】
この構成によれば、メモリに保存されている第１のデータの名前が、リクエストパケットの名前と一致せず、且つ、第１のデータの名前に含まれるファイル名が、リクエストパケットの名前に含まれるファイル名と同じ場合に、第１のデータが第２のデータに関連していると判断される。
【００４１】
したがって、第１のデータの名前に含まれるファイル名と、リクエストパケットの名前に含まれるファイル名とを比較することで、第１のデータが第２のデータに関連しているか否かを容易に判断することができる。
【００４２】
また、上記の通信方法において、前記メモリに保存されている前記第１のデータの名前が、前記リクエストパケットの名前と一致せず、且つ、前記第１のデータの前記名前に含まれる拡張子が、前記リクエストパケットの前記名前に含まれる拡張子と同じ場合に、前記第１のデータが前記第２のデータに関連していると判断してもよい。
【００４３】
この構成によれば、メモリに保存されている第１のデータの名前が、リクエストパケットの名前と一致せず、且つ、第１のデータの名前に含まれる拡張子が、リクエストパケットの名前に含まれる拡張子と同じ場合に、第１のデータが第２のデータに関連していると判断される。
【００４４】
したがって、第１のデータの名前に含まれる拡張子と、リクエストパケットの名前に含まれる拡張子とを比較することで、第１のデータが第２のデータに関連しているか否かを容易に判断することができる。
【００４５】
また、上記の通信方法において、前記メモリに保存されている前記第１のデータの名前に含まれる拡張子が、予め前記第１の通信装置に保持されている所定の拡張子と同じ場合に、前記第１のデータが前記第２のデータに関連していると判断してもよい。
【００４６】
この構成によれば、メモリに保存されている第１のデータの名前に含まれる拡張子が、予め第１の通信装置に保持されている所定の拡張子と同じ場合に、第１のデータが第２のデータに関連していると判断される。
【００４７】
したがって、第１のデータの名前に含まれる拡張子と、予め第１の通信装置に保持されている所定の拡張子とを比較することで、第１のデータが第２のデータに関連しているか否かを容易に判断することができる。
【００４８】
また、上記の通信方法において、前記第１のデータは、前記第１のデータの属性を示す属性データを含み、前記メモリに保存されている前記第１のデータに含まれる前記属性データが示す属性が、前記リクエストパケットの名前が示す属性と同じ場合に、前記第１のデータが前記第２のデータに関連していると判断してもよい。
【００４９】
この構成によれば、第１のデータは、第１のデータの属性を示す属性データを含む。メモリに保存されている第１のデータに含まれる属性データが示す属性が、リクエストパケットの名前が示す属性と同じ場合に、第１のデータが第２のデータに関連していると判断される。
【００５０】
したがって、第１のデータに含まれる属性データが示す属性と、リクエストパケットの名前が示す属性とを比較することで、第１のデータが第２のデータに関連しているか否かを容易に判断することができる。
【００５１】
また、上記の通信方法において、前記第１のデータが前記第３の通信装置から前記第１の通信装置に到達するまでに通過する通信装置の数を示すホップ数が閾値より小さいか否かを判断し、前記ホップ数が閾値より小さいと判断した場合に、前記第１のデータが前記第２のデータに関連していると判断してもよい。
【００５２】
この構成によれば、第１のデータが第３の通信装置から第１の通信装置に到達するまでに通過する通信装置の数を示すホップ数が閾値より小さいか否かが判断される。ホップ数が閾値より小さいと判断した場合に、第１のデータが第２のデータに関連していると判断される。
【００５３】
したがって、第１のデータのホップ数が小さければ、第１の通信装置と第３の通信装置との物理距離も短いと判断することができるので、第１のデータのホップ数が閾値より小さいか否かを判断することで、第１のデータが第２のデータに関連しているか否かを容易に判断することができる。
【００５４】
また、本開示の一態様にかかる通信装置は、コンテンツ指向ネットワークに接続する通信装置であって、前記コンテンツ指向ネットワークを介して受信した第１のデータを一時的に保存するメモリと、前記通信装置が提供するとともに前記第１のデータとは異なる第２のデータを要求するリクエストパケットを他の通信装置から受信するリクエスト受信部と、前記メモリに保存されている前記第１のデータが、要求された前記第２のデータに関連しているか否かを判断する関連性判断部と、前記リクエストパケットで要求された前記第２のデータを取得するとともに、関連していると判断された前記第１のデータを関連データとして取得する取得部と、取得された前記第２のデータと前記関連データとを前記他の通信装置へ送信するデータ送信部と、を備える。
【００５５】
この構成によれば、メモリは、コンテンツ指向ネットワークを介して受信した第１のデータを一時的に保存する。第１の通信装置が提供するとともに第１のデータとは異なる第２のデータを要求するリクエストパケットが第２の通信装置から受信される。メモリに保存されている第１のデータが、要求された第２のデータに関連しているか否かが判断される。リクエストパケットで要求された第２のデータが取得されるとともに、関連していると判断された第１のデータが関連データとして取得される。取得された第２のデータと関連データとが第２の通信装置へ送信される。
【００５６】
したがって、第２の通信装置が送信したリクエストパケットに対して、要求されたデータとともに、第２の通信装置が必要とする関連データが一緒に送信されるため、リクエストパケットの送信頻度を下げることができ、通信帯域の利用効率を改善することができ、遅延時間を抑制することができる。
【００５７】
以下、本開示の実施の形態について、図面を参照しながら具体的に説明する。なお、以下の実施の形態は、本開示を具体化した一例であって、本開示の技術的範囲を限定するものではない。
【００５８】
また、これらの全般的または具体的な態様は、システム、方法、集積回路、コンピュータプログラムまたはＣＤ−ＲＯＭ等のコンピュータ読み取り可能な記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラムまたは記録媒体の任意な組み合わせで実現されてもよい。
【００５９】
（実施の形態）
［システムの構成］
図１は、本実施の形態におけるコンテンツ指向ネットワークシステムの構成の一例を示す図である。図１に示すコンテンツ指向ネットワークシステムは複数の通信装置１１ａ〜１１ｅを備える。複数の通信装置１１ａ〜１１ｅは、ＣＣＮ（Ｃｏｎｔｅｎｔ  Ｃｅｎｔｒｉｃ  Ｎｅｔｗｏｒｋｉｎｇ）網１０を介して接続されている。ＣＣＮ網１０は、コンテンツ指向ネットワークの一例である。コンテンツ指向ネットワークは、データの名前を指定したリクエストパケットが送出されるとともにリクエストパケットの名前に対応するデータが送出される。通信装置１１ａ〜１１ｅは、ＣＣＮ網１０を介してそれぞれ接続され、例えば、端末装置または中継装置に接続されてもよい。通信装置１１ａ〜１１ｅは、ＣＣＮ網１０を介して、コンテンツデータの名前を記載したリクエストパケットを送信し、コンテンツデータを含むデータパケットを受信する。なお、以下では、コンテンツデータを単にデータと記載する場合もある。
【００６０】
また、図１に示すコンテンツ指向ネットワークシステムでは、５台の通信装置１１ａ〜１１ｅがＣＣＮ網１０に接続されている。しかしながら、本開示は特にこれに限定されず、２〜４台の通信装置がＣＣＮ網１０に接続されてもよく、６台以上の通信装置がＣＣＮ網１０に接続されてもよい。
【００６１】
また、本実施の形態における通信装置１１ａ〜１１ｅは、例えば無人飛行機である。しかしながら、本開示は特にこれに限定されず、通信装置１１ａ〜１１ｅは、車両などの移動体であってもよい。
【００６２】
［通信装置の構成］
図２は、本実施の形態における通信装置の詳細構成の一例を示す図である。なお、図２に示す通信装置１１は、通信装置１１ａ〜１１ｅを総称するものであり、各通信装置１１ａ〜１１ｅは、同じ構成である。
【００６３】
図２に示す通信装置（第１の通信装置）１１は、ＣＣＮ網１０に接続され、１つ以上のインタフェース１１１（図２ではインタフェース１１１ａ，１１１ｂ）と、データ送信部１１２と、リクエスト受信部１１３と、リクエスト送信部１１４と、データ処理部１１５と、関連性判断部１１６と、データ蓄積部１１７と、データ生成部１１８と、経路情報処理部１１９とを備える。
【００６４】
インタフェース１１１は、ＣＣＮ網１０に接続するためのインタフェースである。なお、通信装置１１は、２つのインタフェース１１１ａ，１１１ｂだけでなく、複数のネットワークに応じた複数のインタフェースを備えてもよい。
【００６５】
リクエスト送信部１１４は、通信装置１１が一定の時間周期ごとに他の通信装置の情報を取得するためのリクエストパケットを送信する。リクエストパケットは、インタフェース１１１を介してＣＣＮ網１０へ送信される。
【００６６】
データ生成部１１８は、コンテンツデータを生成して、データ蓄積部１１７に蓄積する。ここで、データ生成部１１８によって生成されるコンテンツデータは、例えば、デバイス名、位置情報及び時刻情報を含む。デバイス名は、通信装置を識別するための情報である。位置情報は、通信装置１１の位置を示す。データ生成部１１８は、例えばＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）受信機を含み、通信装置１１の位置は、ＧＰＳ受信機から取得される緯度及び経度で表される。時刻情報は、位置情報を取得した時刻を示す。
【００６７】
データ蓄積部１１７は、例えばメモリであり、データ生成部１１８によって生成されたコンテンツデータを蓄積する。また、データ蓄積部１１７は、ＣＣＮ網１０を介して他の通信装置（第３の通信装置）から受信したコンテンツデータ（データパケット）（第１のデータ）をキャッシュデータとして一時的に保存する。
【００６８】
リクエスト受信部１１３は、通信装置１１が提供するコンテンツデータ（第１のデータとは異なる第２のデータ）を要求するリクエストパケットを他の通信装置（第２の通信装置）から受信する。リクエスト受信部１１３は、リクエストパケットを受信すると、要求されたコンテンツデータがデータ蓄積部１１７に存在するか否かを判断する。リクエスト受信部１１３は、要求されたコンテンツデータがデータ蓄積部１１７に存在する場合にはリクエストパケットを関連性判断部１１６に通知する。
【００６９】
関連性判断部１１６は、事前に設定されたルールに基づき、リクエスト受信部１１３で受信したリクエストパケットで要求されたコンテンツデータと、データ蓄積部１１７に存在するコンテンツデータとの関連性を判断し、関連データを特定する。関連性判断部１１６は、データ蓄積部１１７に保存されているコンテンツデータが、要求されたコンテンツデータに関連しているか否かを判断する。関連性判断部１１６は、関連性の判断結果を、リクエスト受信部１１３に通知する。
【００７０】
リクエスト受信部１１３は、関連性判断部１１６から関連性の判断結果を受け取り、データ処理部１１５に通知する。リクエスト受信部１１３は、要求されたコンテンツデータがデータ蓄積部１１７に存在しない場合にはリクエストパケットを経路情報処理部１１９に通知する。
【００７１】
データ処理部１１５は、リクエストパケットで要求されたコンテンツデータ（要求データ）と、関連性判断部１１６が特定した関連データとをデータ蓄積部１１７から読み出す。データ処理部１１５は、リクエストパケットで要求されたコンテンツデータを要求データとしてデータ蓄積部１１７から取得するとともに、関連していると判断されたコンテンツデータを関連データとしてデータ蓄積部１１７から取得する。データ処理部１１５は、要求データと関連データとを統合した１つのデータパケットを生成し、生成したデータパケットをデータ送信部１１２に渡す。
【００７２】
なお、関連データは、コンテンツ指向ネットワークに接続された他の通信装置（第３の通信装置）によって過去に提供されたデータである。
【００７３】
データ送信部１１２は、受け取った要求データと関連データとを統合したデータパケットを、インタフェース１１１を介してＣＣＮ網１０に送信する。データ送信部１１２は、取得された要求データと関連データとを、リクエストパケットを送信した他の通信装置へ送信する。
【００７４】
経路情報処理部１１９は、受信したリクエストパケットを、経路情報に従い、他の通信装置（コンテンツ提供装置）又は中継装置に転送するために、インタフェース１１１を介してＣＣＮ網１０へ送信する。
【００７５】
なお、データ処理部１１５は、要求データと関連データとをデータ送信部１１２に通知し、データ送信部１１２は、要求データと関連データとを連続するデータパケットとして送信してもよい。すなわち、データ送信部１１２は、要求データと関連データとを連続して送信してもよい。
【００７６】
［通信装置の動作］
次に、上記のように構成された通信装置１１の動作について説明する。
【００７７】
図３は、本実施の形態における通信装置１１の動作の一例を示すフローチャートである。図３における通信装置１１は、ＣＣＮ網１０に接続された中継装置であって、リクエストパケットを受信した際の中継動作について説明する。
【００７８】
まず、通信装置１１のリクエスト受信部１１３は、インタフェース１１１を介して、リクエストパケットを受信する（ステップＳ１）。
【００７９】
次に、リクエスト受信部１１３は、ステップＳ１において受信したリクエストパケットにより要求されたデータが、データ蓄積部１１７に存在するか否かを判断する（ステップＳ２）。
【００８０】
ステップＳ１において受信したリクエストパケットにより要求されたデータが、データ蓄積部１１７に存在すると判断された場合（ステップＳ２でＹＥＳ）、リクエスト受信部１１３は、関連性判断部１１６にリクエストパケットを通知して、ステップＳ４の処理に移行する。
【００８１】
一方、要求されたデータがデータ蓄積部１１７に存在しないと判断された場合（ステップＳ２でＮＯ）、リクエスト受信部１１３は、経路情報処理部１１９にリクエストパケットを通知して、ステップＳ３の処理に移行する。経路情報処理部１１９は、経路情報に基づき、受信したリクエストパケットを、他の通信装置又は中継装置に転送する（ステップＳ３）。
【００８２】
次に、関連性判断部１１６は、リクエスト受信部１１３からリクエストパケットを受け取り、リクエストパケットで要求されたデータの名前と事前に用意された関連性の判断ルールとに基づいて、要求されたデータに関連するデータがデータ蓄積部１１７に存在するか否かを判断する（ステップＳ４）。
【００８３】
関連性判断部１１６は、関連性の判断結果を、リクエスト受信部１１３に通知する。要求されたデータに関連するデータがデータ蓄積部１１７に存在する場合、関連性判断部１１６は、要求されたデータに関連していると判断されたデータを関連データとして特定し、要求されたデータに関連するデータがデータ蓄積部１１７に存在することを示す情報と、特定した関連データを示す情報とを関連性の判断結果として出力する。一方、要求されたデータに関連するデータがデータ蓄積部１１７に存在されていない場合、関連性判断部１１６は、要求されたデータに関連するデータがデータ蓄積部１１７に存在しないことを示す情報を関連性の判断結果として出力する。リクエスト受信部１１３は、関連性判断部１１６から関連性の判断結果を受け取り、データ処理部１１５に通知する。関連性判断部１１６による判断処理については、図５及び図６を用いて、後で詳細を説明する。
【００８４】
要求されたデータに関連するデータがデータ蓄積部１１７に存在すると判断された場合（ステップＳ４でＹＥＳ）、データ処理部１１５は、リクエストパケットにより要求されたデータ（要求データ）と、関連性判断部１１６によって特定された関連データとをデータ蓄積部１１７から取得する（ステップＳ５）。
【００８５】
次に、データ処理部１１５は、取得した要求データと関連データとを統合したデータパケットを生成する（ステップＳ６）。データ処理部１１５は、生成したデータパケットをデータ送信部１１２に通知する。
【００８６】
次に、データ送信部１１２は、受け取ったデータパケットを、リクエストパケットを送信した通信装置へＣＣＮ網を介して送信する（ステップＳ７）。
【００８７】
一方、要求されたデータに関連するデータがデータ蓄積部１１７に存在しないと判断された場合（ステップＳ４でＮＯ）、データ処理部１１５は、リクエストパケットにより要求されたデータ（要求データ）をデータ蓄積部１１７から取得する（ステップＳ８）。
【００８８】
次に、データ送信部１１２は、要求データのみのデータパケットを、リクエストパケットを送信した通信装置へＣＣＮ網を介して送信する（ステップＳ７）。
【００８９】
図４は、本実施の形態における通信装置１１のデータ生成部１１８が生成するコンテンツデータの一例を示す図である。各通信装置は、相互に共有するコンテンツデータを生成する。コンテンツデータは、デバイス名、位置情報及び時刻情報を含む。時刻情報は、位置情報を取得した時刻を示す。通信装置１１は、一定時間周期ごとにコンテンツデータを生成（更新）する。例えば、通信装置１１は、無人飛行機などの移動体である。複数の移動体は、特定の目的のために、集団で行動してタスクを実行する。タスクを実行するために、各移動体は、互いの位置情報を共有する必要がある。ここでのタスクとは、例えば、特定エリアの映像による監視又は目的物の探索などである。
【００９０】
次に、関連性判断部１１６による判断処理の詳細について説明する。関連性判断部１１６は、リクエストパケットで要求されたコンテンツデータに含まれる位置情報と、コンテンツ指向ネットワークを介して受信した他の通信装置から提供されたコンテンツデータに含まれる位置情報とを用いて、自通信装置１１と他の通信装置との物理距離が閾値より短いか否かを判断する。そして、自通信装置１１と他の通信装置との物理距離が閾値より短いと判断した場合に、関連性判断部１１６は、過去に受信したコンテンツデータが、要求されたコンテンツデータに関連していると判断する。
【００９１】
図５は、本実施の形態における通信装置１１の関連性判断部１１６の動作の一例を示すフローチャートである。図５に示す判断処理は、図３のステップＳ４の詳細な処理を示している。ここでは、データの関連性の有無を通信装置間で共有される位置情報から判断している。具体的には、データ（コンテンツデータ）は、デバイス名、位置情報及び時刻情報を含んでおり、一定時間周期ごとに生成される（図４）。なお、本実施の形態では、コンテンツデータは、デバイス名及び位置情報のみを含み、時刻情報を含んでいなくてもよい。
【００９２】
まず、関連性判断部１１６は、集団で行動している通信装置１１を管理するデバイスリストを取得する（ステップＳ１１）。デバイスリストは、コンテンツデータを共有する所定のグループに属している複数の通信装置のデバイス名の一覧であり、予めデータ蓄積部１１７に記憶されている。関連性判断部１１６は、デバイスリストに含まれるデバイス名の先頭から順に、コンテンツデータの関連性を判断する。
【００９３】
次に、関連性判断部１１６は、デバイスリストに含まれるデバイス名に対応するキャッシュデータ（コンテンツデータ）が存在する場合には、当該コンテンツデータに含まれる位置情報を取得する（ステップＳ１２）。
【００９４】
次に、関連性判断部１１６は、自通信装置１１の位置情報と、判断対象の通信装置の位置情報とを用いて、自通信装置１１と判断対象の通信装置との物理距離が閾値より短いか否かを判断する（ステップＳ１３）。ここで、自通信装置１１と判断対象の通信装置との物理距離が閾値より短いと判断した場合（ステップＳ１３でＹＥＳ）、関連性判断部１１６は、データ蓄積部１１７に記憶されているコンテンツデータが、リクエストパケットで要求されたコンテンツデータに関連していると判断する（ステップＳ１４）。
【００９５】
一方、自通信装置１１と判断対象の通信装置との物理距離が閾値以上であると判断した場合（ステップＳ１３でＮＯ）、関連性判断部１１６は、データ蓄積部１１７に記憶されているコンテンツデータが、リクエストパケットで要求されたコンテンツデータに関連していないと判断する（ステップＳ１５）。
【００９６】
次に、関連性判断部１１６は、デバイスリストに含まれる全てのデバイス名に対する判断処理が完了したか否かを判断する（ステップＳ１６）。ここで、デバイスリストに含まれる全てのデバイス名に対する判断処理が完了したと判断された場合（ステップＳ１６でＹＥＳ）、関連性判断部１１６は、処理を終了し、関連していると判断されたコンテンツデータを特定する。一方、デバイスリストに含まれる全てのデバイス名に対する判断処理が完了していないと判断された場合（ステップＳ１６でＮＯ）、ステップＳ１２の処理に戻り、関連性判断部１１６は、デバイスリストに含まれる次のデバイス名に対応するキャッシュデータ（コンテンツデータ）が存在する場合には、当該コンテンツデータに含まれる位置情報を取得する。
【００９７】
続いて、関連性判断部１１６による判断処理の他の例について説明する。関連性判断部１１６は、コンテンツ指向ネットワークを介して受信した他の通信装置から提供されたコンテンツデータに含まれる時刻情報が示す時刻が現在時刻から所定時間以内であるか否かを判断する。時刻が現在時刻から所定時間以内であると判断した場合に、関連性判断部１１６は、過去に受信したコンテンツデータが、要求されたコンテンツデータに関連していると判断する。また、時刻が現在時刻から所定時間以内ではないと判断した場合に、関連性判断部１１６は、過去に受信したコンテンツデータに含まれる位置情報と、当該コンテンツデータよりも前に受信された他のコンテンツデータに含まれる位置情報とに基づいて、判断対象の他の通信装置が静止しているか否かを判断する。他の通信装置が静止していると判断した場合に、関連性判断部１１６は、過去に受信したコンテンツデータが、要求されたコンテンツデータに関連していると判断する。他の通信装置が静止していないと判断した場合に、関連性判断部１１６は、過去に受信したコンテンツデータが、要求されたコンテンツデータに関連していないと判断する。
【００９８】
図６は、本実施の形態における通信装置１１の関連性判断部１１６の動作の他の例を示すフローチャートである。図６に示す判断処理は、図３のステップＳ４の詳細な処理を示している。ここでは、データの関連性の有無を通信装置が有する位置情報の更新時刻と位置情報の更新履歴とから判断している。具体的には、データ（コンテンツデータ）は、デバイス名、位置情報及び時刻情報を含んでおり、一定時間周期ごとに生成される（図４）。
【００９９】
まず、関連性判断部１１６は、集団で行動している通信装置１１を管理するデバイスリストを取得する（ステップＳ２１）。デバイスリストは、コンテンツデータを共有する所定のグループに属している複数の通信装置のデバイス名の一覧であり、予めデータ蓄積部１１７に記憶されている。関連性判断部１１６は、デバイスリストに含まれるデバイス名の先頭から順に、コンテンツデータの関連性を判断する。
【０１００】
次に、関連性判断部１１６は、デバイスリストに含まれるデバイス名に対応するキャッシュデータ（コンテンツデータ）が存在する場合には、当該コンテンツデータに含まれる時刻情報を取得する（ステップＳ２２）。
【０１０１】
次に、関連性判断部１１６は、取得した時刻情報で示される時刻が、現在時刻から所定時間以内であるか否かを判断する（ステップＳ２３）。ここで、時刻情報で示される時刻が、現在時刻から所定時間以内であると判断した場合（ステップＳ２３でＹＥＳ）、関連性判断部１１６は、データ蓄積部１１７に記憶されているコンテンツデータが、リクエストパケットで要求されたコンテンツデータに関連していると判断する（ステップＳ２４）。
【０１０２】
一方、時刻情報で示される時刻が、現在時刻から所定時間以内ではないと判断した場合（ステップＳ２３でＮＯ）、関連性判断部１１６は、判断対象の通信装置が所定期間内に静止しているか否かを判断する（ステップＳ２５）。このとき、関連性判断部１１６は、判断対象の通信装置に対応する複数のキャッシュデータ（コンテンツデータ）がデータ蓄積部１１７に記憶されている場合、取得した時刻の異なる複数の位置情報から移動履歴を抽出する。所定期間内の通信装置の移動距離の合計値が閾値より大きい場合、関連性判断部１１６は、判断対象の通信装置が所定期間内に静止していない（移動している）と判断する。一方、所定期間内の通信装置の移動距離の合計値が閾値以下である場合、関連性判断部１１６は、判断対象の通信装置が所定期間内に静止している（移動していない）と判断する。
【０１０３】
通信装置が静止状態に近い場合、位置情報の取得時刻が古くても最新の通信装置の位置は位置情報から判断できる。そのため、判断対象の通信装置が所定期間内に静止していると判断した場合（ステップＳ２５でＹＥＳ）、関連性判断部１１６は、データ蓄積部１１７に記憶されているコンテンツデータが、リクエストパケットで要求されたコンテンツデータに関連していると判断する（ステップＳ２６）。
【０１０４】
一方、通信装置が頻繁に移動している場合、最新の通信装置の位置は位置情報から判断できない。そのため、判断対象の通信装置が所定期間内に静止していないと判断した場合（ステップＳ２５でＮＯ）、関連性判断部１１６は、データ蓄積部１１７に記憶されているコンテンツデータが、リクエストパケットで要求されたコンテンツデータに関連していないと判断する（ステップＳ２７）。
【０１０５】
なお、判断対象の通信装置に対応するキャッシュデータ（コンテンツデータ）が１つのみデータ蓄積部１１７に記憶されている場合、判断対象の通信装置が静止しているか否かを判断するのは困難である。そのため、時刻情報で示される時刻が、現在時刻から所定時間以内ではないと判断した場合（ステップＳ２３でＮＯ）、関連性判断部１１６は、判断対象の通信装置に対応する複数のキャッシュデータ（コンテンツデータ）がデータ蓄積部１１７に記憶されているか否かを判断してもよい。そして、判断対象の通信装置に対応する複数のキャッシュデータ（コンテンツデータ）がデータ蓄積部１１７に記憶されていると判断した場合、関連性判断部１１６は、判断対象の通信装置が所定期間内に静止しているか否かを判断してもよい。一方、判断対象の通信装置に対応する複数のキャッシュデータ（コンテンツデータ）がデータ蓄積部１１７に記憶されていない、すなわち、判断対象の通信装置に対応する１つのキャッシュデータ（コンテンツデータ）のみがデータ蓄積部１１７に記憶されていると判断した場合、関連性判断部１１６は、データ蓄積部１１７に記憶されているコンテンツデータが、リクエストパケットで要求されたコンテンツデータに関連していると判断してもよい。なお、判断対象の通信装置に対応する複数のキャッシュデータ（コンテンツデータ）がデータ蓄積部１１７に記憶されていないと判断した場合、関連性判断部１１６は、データ蓄積部１１７に記憶されているコンテンツデータが、リクエストパケットで要求されたコンテンツデータに関連していないと判断してもよい。
【０１０６】
次に、関連性判断部１１６は、デバイスリストに含まれる全てのデバイス名に対する判断処理が完了したか否かを判断する（ステップＳ２８）。ここで、デバイスリストに含まれる全てのデバイス名に対する判断処理が完了したと判断された場合（ステップＳ２８でＹＥＳ）、関連性判断部１１６は、処理を終了し、関連していると判断されたコンテンツデータを特定する。一方、デバイスリストに含まれる全てのデバイス名に対する判断処理が完了していないと判断された場合（ステップＳ２８でＮＯ）、ステップＳ２２の処理に戻り、関連性判断部１１６は、デバイスリストに含まれる次のデバイス名に対応するキャッシュデータ（コンテンツデータ）が存在する場合には、当該コンテンツデータに含まれる位置情報を取得する。
【０１０７】
なお、ステップＳ２３において、関連性判断部１１６は、時刻情報が示す時刻が現在時刻から所定時間以内ではないと判断した場合に、過去に受信したコンテンツデータに含まれる位置情報と、当該コンテンツデータよりも前に受信された他のコンテンツデータに含まれる位置情報とに基づいて他の通信装置の最新の位置を推定し、推定した位置を関連データとして取得してもよい。すなわち、時刻情報が示す時刻が現在時刻から所定時間以内ではない２つのコンテンツデータがデータ蓄積部１１７に記憶されている場合、関連性判断部１１６は、２つのコンテンツデータの位置情報及び時刻情報に基づいて他の通信装置の現在の位置を推定することができる。例えば、関連性判断部１１６は、２つのコンテンツデータの位置情報から他の通信装置の移動方向を推定することができる。また、関連性判断部１１６は、２つのコンテンツデータの位置情報及び時刻情報から他の通信装置の移動速度を推定することができる。また、関連性判断部１１６は、コンテンツデータが取得された時刻から現在の時刻までの経過時間と移動速度とに基づいて移動距離を推定することができる。そのため、関連性判断部１１６は、他の通信装置の移動方向と移動距離とに基づいて、他の通信装置の現在の位置を推定することができ推定した現在の位置を示す位置情報を含むコンテンツデータを関連データとして算出してもよい。
【０１０８】
また、図６に示す判断処理では、時刻情報で示される時刻が、現在時刻から所定時間以内ではないと判断した場合（ステップＳ２３でＮＯ）、ステップＳ２５において、関連性判断部１１６は、判断対象の通信装置が所定期間内に静止しているか否かを判断している。しかしながら、本開示は特にこれに限定されず、時刻情報で示される時刻が、現在時刻から所定時間以内ではないと判断した場合（ステップＳ２３でＮＯ）、関連性判断部１１６は、データ蓄積部１１７に記憶されているコンテンツデータが、リクエストパケットで要求されたコンテンツデータに関連していないと判断し、ステップＳ２８の処理に移行してもよい。
【０１０９】
［実施の形態の変形例］
（１）本実施の形態では、関連性判断部１１６は、位置情報及び／又は時刻情報に基づいて、データ蓄積部１１７に記憶されているコンテンツデータが、リクエストパケットで要求されたコンテンツデータに関連しているか否かを判断しているが、本開示は特にこれに限定されない。関連性判断部１１６は、データ蓄積部１１７に保存されている過去に受信したコンテンツデータ（第１のデータ）の名前が、リクエストパケットの名前と一致せず、且つ、過去に受信したコンテンツデータの名前に含まれるファイル名が、リクエストパケットの名前に含まれるファイル名と同じ場合に、データ蓄積部１１７に記憶されているコンテンツデータ（第１のデータ）が、リクエストパケットで要求されたコンテンツデータ（第２のデータ）に関連していると判断してもよい。
【０１１０】
図７は、本実施の形態におけるリクエストパケットの名前の一例を示す図である。図７において、“／ａｂｃ．ｃｏｍ／ｎｏｄｅＡ／ｄａｔａ．ｐｏｓ”は、リクエストパケットの名前を示す。また、リクエストパケットの名前のうち、“ｄａｔａ．ｐｏｓ”は、ファイル名を示す。さらに、リクエストパケットの名前のうち、“ｐｏｓ”は、拡張子を示す。図７に示すリクエストパケットは、“ｎｏｄｅＡ”という通信装置に対し、“ｄａｔａ．ｐｏｓ”というファイル名で表されるデータを要求するためのリクエストパケットである。なお、コンテンツデータ（データパケット）の名前は、リクエストパケットの名前と同じである。
【０１１１】
例えば、“ｎｏｄｅＢ”という通信装置Ｂによって送信された、名前が“／ａｂｃ．ｃｏｍ／ｎｏｄｅＢ／ｄａｔａ．ｐｏｓ”であるコンテンツデータを、“ｎｏｄｅＡ”という通信装置Ａが記憶している場合、通信装置Ａは、名前が“／ａｂｃ．ｃｏｍ／ｎｏｄｅＡ／ｄａｔａ．ｐｏｓ”であるリクエストパケットを受信すると、名前が“／ａｂｃ．ｃｏｍ／ｎｏｄｅＡ／ｄａｔａ．ｐｏｓ”であるコンテンツデータを取得する。このとき、通信装置Ａの関連性判断部１１６は、データ蓄積部１１７に保存されている過去に受信したコンテンツデータの名前が、リクエストパケットの名前と一致せず、且つ、過去に受信したコンテンツデータの名前に含まれるファイル名が、リクエストパケットの名前に含まれるファイル名と同じであるか否かを判断する。“／ａｂｃ．ｃｏｍ／ｎｏｄｅＢ／ｄａｔａ．ｐｏｓ”と、“／ａｂｃ．ｃｏｍ／ｎｏｄｅＡ／ｄａｔａ．ｐｏｓ”とを比較すると、名前が異なっているが、ファイル名が同じである。そのため、関連性判断部１１６は、データ蓄積部１１７に記憶されているコンテンツデータが、リクエストパケットで要求されたコンテンツデータに関連していると判断し、名前が“／ａｂｃ．ｃｏｍ／ｎｏｄｅＢ／ｄａｔａ．ｐｏｓ”であるコンテンツデータを取得する。そして、通信装置Ａのデータ送信部１１２は、名前が“／ａｂｃ．ｃｏｍ／ｎｏｄｅＡ／ｄａｔａ．ｐｏｓ”であるコンテンツデータ（要求データ）と、名前が“／ａｂｃ．ｃｏｍ／ｎｏｄｅＢ／ｄａｔａ．ｐｏｓ”であるコンテンツデータ（関連データ）とを送信する。
【０１１２】
（２）関連性判断部１１６は、データ蓄積部１１７に保存されている過去に受信したコンテンツデータ（第１のデータ）の名前が、リクエストパケットの名前と一致せず、且つ、過去に受信したコンテンツデータの名前に含まれる拡張子が、リクエストパケットの名前に含まれる拡張子と同じ場合に、データ蓄積部１１７に記憶されているコンテンツデータ（第１のデータ）が、リクエストパケットで要求されたコンテンツデータ（第２のデータ）に関連していると判断してもよい。以下、この変形例について、図７を参照して説明する。
【０１１３】
例えば、“ｎｏｄｅＢ”という通信装置Ｂによって送信された、名前が“／ａｂｃ．ｃｏｍ／ｎｏｄｅＢ／ｄａｔａ．ｐｏｓ”であるコンテンツデータを、“ｎｏｄｅＡ”という通信装置Ａが記憶している場合、通信装置Ａは、名前が“／ａｂｃ．ｃｏｍ／ｎｏｄｅＡ／ｄａｔａ．ｐｏｓ”であるリクエストパケットを受信すると、名前が“／ａｂｃ．ｃｏｍ／ｎｏｄｅＡ／ｄａｔａ．ｐｏｓ”であるコンテンツデータを取得する。このとき、通信装置Ａの関連性判断部１１６は、データ蓄積部１１７に保存されている過去に受信したコンテンツデータの名前が、リクエストパケットの名前と一致せず、且つ、過去に受信したコンテンツデータの名前に含まれる拡張子が、リクエストパケットの名前に含まれる拡張子と同じであるか否かを判断する。“／ａｂｃ．ｃｏｍ／ｎｏｄｅＢ／ｄａｔａ．ｐｏｓ”と、“／ａｂｃ．ｃｏｍ／ｎｏｄｅＡ／ｄａｔａ．ｐｏｓ”とを比較すると、名前が異なっているが、拡張子が同じである。そのため、関連性判断部１１６は、データ蓄積部１１７に記憶されているコンテンツデータが、リクエストパケットで要求されたコンテンツデータに関連していると判断し、名前が“／ａｂｃ．ｃｏｍ／ｎｏｄｅＢ／ｄａｔａ．ｐｏｓ”であるコンテンツデータを取得する。そして、通信装置Ａのデータ送信部１１２は、名前が“／ａｂｃ．ｃｏｍ／ｎｏｄｅＡ／ｄａｔａ．ｐｏｓ”であるコンテンツデータ（要求データ）と、名前が“／ａｂｃ．ｃｏｍ／ｎｏｄｅＢ／ｄａｔａ．ｐｏｓ”であるコンテンツデータ（関連データ）とを送信する。
【０１１４】
また、データ蓄積部１１７が、名前が“／ａｂｃ．ｃｏｍ／ｎｏｄｅＡ／ｄａｔａ＿ｏｌｄ．ｐｏｓ”であるコンテンツデータと、名前が“／ａｂｃ．ｃｏｍ／ｎｏｄｅＢ／ｄａｔａ＿ｏｌｄ．ｐｏｓ”であるコンテンツデータとを記憶している場合、関連性判断部１１６は、リクエストパケットの拡張子と、これら２つのコンテンツデータの拡張子とが同じであると判断し、これら２つのコンテンツデータを関連データとして取得する。このように、コンテンツデータのファイル名がリクエストパケットのファイル名と異なっていたとしても、コンテンツデータの拡張子がリクエストパケットの拡張子と同じであれば、関連性判断部１１６は、データ蓄積部１１７に記憶されているコンテンツデータが、リクエストパケットで要求されたコンテンツデータに関連していると判断する。
【０１１５】
（３）関連性判断部１１６は、データ蓄積部１１７に保存されている過去に受信したコンテンツデータ（第１のデータ）の名前に含まれる拡張子が、予め通信装置に保持されている所定の拡張子と同じ場合に、データ蓄積部１１７に記憶されているコンテンツデータ（第１のデータ）が、リクエストパケットで要求されたコンテンツデータ（第２のデータ）に関連していると判断してもよい。以下、この変形例について、図７を参照して説明する。
【０１１６】
例えば、“ｎｏｄｅＢ”という通信装置Ｂによって送信された、名前が“／ａｂｃ．ｃｏｍ／ｎｏｄｅＢ／ｄａｔａ．ｐｏｓ”であるコンテンツデータを、“ｎｏｄｅＡ”という通信装置Ａが記憶しており、“ｐｏｓ”という拡張子を予め保持している場合、通信装置Ａは、名前が“／ａｂｃ．ｃｏｍ／ｎｏｄｅＡ／ｄａｔａ．ｐｏｓ”であるリクエストパケットを受信すると、名前が“／ａｂｃ．ｃｏｍ／ｎｏｄｅＡ／ｄａｔａ．ｐｏｓ”であるコンテンツデータを取得する。このとき、通信装置Ａの関連性判断部１１６は、データ蓄積部１１７に保存されている過去に受信したコンテンツデータの名前に含まれる拡張子が、予め通信装置Ａに保持されている所定の拡張子“ｐｏｓ”と同じであるか否かを判断する。“／ａｂｃ．ｃｏｍ／ｎｏｄｅＢ／ｄａｔａ．ｐｏｓ”の拡張子は、予め通信装置Ａに保持されている所定の拡張子“ｐｏｓ”と同じである。そのため、関連性判断部１１６は、データ蓄積部１１７に記憶されているコンテンツデータが、リクエストパケットで要求されたコンテンツデータに関連していると判断し、名前が“／ａｂｃ．ｃｏｍ／ｎｏｄｅＢ／ｄａｔａ．ｐｏｓ”であるコンテンツデータを取得する。そして、通信装置Ａのデータ送信部１１２は、名前が“／ａｂｃ．ｃｏｍ／ｎｏｄｅＡ／ｄａｔａ．ｐｏｓ”であるコンテンツデータ（要求データ）と、名前が“／ａｂｃ．ｃｏｍ／ｎｏｄｅＢ／ｄａｔａ．ｐｏｓ”であるコンテンツデータ（関連データ）とを送信する。
【０１１７】
また、データ蓄積部１１７が、名前が“／ａｂｃ．ｃｏｍ／ｎｏｄｅＢ／ｄａｔａ＿ｏｌｄ．ｐｏｓ”であるコンテンツデータを記憶している場合、関連性判断部１１６は、当該コンテンツデータの拡張子が、予め通信装置Ａに保持されている所定の拡張子“ｐｏｓ”と同じであると判断し、当該コンテンツデータを関連データとして取得する。このように、コンテンツデータのファイル名がリクエストパケットのファイル名と異なっていたとしても、コンテンツデータの拡張子が、予め通信装置に保持されている所定の拡張子と同じであれば、関連性判断部１１６は、データ蓄積部１１７に記憶されているコンテンツデータが、リクエストパケットで要求されたコンテンツデータに関連していると判断する。
【０１１８】
なお、通信装置１１は、リクエストパケットの名前に含まれる第１の拡張子と、第１の拡張子とは異なる第２の拡張子とを関連付けた関連性リストを予め保持してもよい。このとき、関連性判断部１１６は、受信したリクエストパケットの名前に第１の拡張子が含まれている場合、当該第１の拡張子に関連付けられている第２の拡張子を含む名前のコンテンツデータを関連データとして取得してもよい。
【０１１９】
（４）コンテンツデータは、コンテンツデータの属性を示す属性データを含んでもよい。関連性判断部１１６は、データ蓄積部１１７に保存されている過去に受信したコンテンツデータ（第１のデータ）に含まれる属性データが示す属性が、リクエストパケットの名前が示す属性と同じ場合に、データ蓄積部１１７に記憶されているコンテンツデータ（第１のデータ）が、リクエストパケットで要求されたコンテンツデータ（第２のデータ）に関連していると判断してもよい。
【０１２０】
例えば、コンテンツデータが位置情報を含む場合、コンテンツデータは、位置を示す属性データを含んでもよい。この場合、リクエストパケットの名前は、属性を含んでもよい。例えば、リクエストパケットの名前が“／ａｂｃ．ｃｏｍ／ｎｏｄｅＡ／ｐｏｓｉｔｉｏｎ／ｄａｔａ．ｐｏｓ”である場合、名前に含まれる“ｐｏｓｉｔｉｏｎ”は、位置という属性を示している。
【０１２１】
（５）関連性判断部１１６は、データ蓄積部１１７に保存されている過去に他の通信装置から受信したコンテンツデータ（第１のデータ）が他の通信装置から自通信装置に到達するまでに通過する通信装置の数を示すホップ数が閾値より小さいか否かを判断してもよい。コンテンツデータは、ホップ数を含む。関連性判断部１１６は、ホップ数が閾値より小さいと判断した場合に、データ蓄積部１１７に記憶されているコンテンツデータ（第１のデータ）が、リクエストパケットで要求されたコンテンツデータ（第２のデータ）に関連していると判断してもよい。
【０１２２】
（６）本実施の形態では、複数の移動体（通信装置）が位置情報を共有する例について説明している。しかしながら、本開示は特にこれに限定されず、本実施の形態は、端末装置が複数のルータを介して複数のカメラから映像データを取得する場合にも適用することができる。
【０１２３】
図８は、本実施の形態の変形例におけるコンテンツ指向ネットワークシステムの構成の一例を示す図である。
【０１２４】
図８に示すコンテンツ指向ネットワークシステムは、端末装置１０１、複数のルータ１０２ａ〜１０２ｆ及び複数のカメラ１０３ａ〜１０３ｃを備える。端末装置１０１は、ＣＣＮ網１００を介して複数のカメラ１０３ａ〜１０３ｃと通信可能に接続されている。端末装置１０１は、例えば、パーソナルコンピュータ、タブレット型コンピュータ、又はスマートフォンなどである。端末装置１０１は、複数のカメラ１０３ａ〜１０３ｃから映像データを取得する。
【０１２５】
複数のルータ１０２ａ〜１０２ｆは、中継装置である。端末装置１０１は、ルータ１０２ａ、１０２ｂ、１０２ｃ、１０２ｅを経由してカメラ１０３ａと接続されている。端末装置１０１は、ルータ１０２ａ、１０２ｂ、１０２ｃ、１０２ｆを経由してカメラ１０３ｂと接続されている。端末装置１０１は、ルータ１０２ａ、１０２ｂ、１０２ｄを経由してカメラ１０３ｃと接続されている。
【０１２６】
複数のカメラ１０３ａ〜１０３ｃは、撮影した映像データを端末装置１０１へ送信する。端末装置１０１は、ＣＣＮ網１００を介して、コンテンツデータ（映像データ）を要求するためのリクエストパケットを送信し、コンテンツデータ（映像データ）を含むデータパケットを受信する。このとき、ルータ１０２ｂは、複数のカメラ１０３ａ〜１０３ｃから送信された各映像データをキャッシュデータとして記憶している。
【０１２７】
従来、端末装置１０１が複数のカメラ１０３ａ〜１０３ｃから映像データを取得する場合、端末装置１０１は、複数のカメラ１０３ａ〜１０３ｃのそれぞれに対してリクエストパケットを送信する必要がある。ルータ１０２ｂは、複数のカメラ１０３ａ〜１０３ｃから送信された各映像データをキャッシュデータとして記憶している。そのため、ルータ１０２ｂは、カメラ１０３ａに対するリクエストパケットを端末装置１０１から受信した場合、記憶しているカメラ１０３ａの映像データを端末装置１０１へ送信する。また、ルータ１０２ｂは、カメラ１０３ｂに対するリクエストパケットを端末装置１０１から受信した場合、記憶しているカメラ１０３ｂの映像データを端末装置１０１へ送信する。さらに、ルータ１０２ｂは、カメラ１０３ｃに対するリクエストパケットを端末装置１０１から受信した場合、記憶しているカメラ１０３ｃの映像データを端末装置１０１へ送信する。
【０１２８】
このように、従来、端末装置１０１が複数のカメラ１０３ａ〜１０３ｃから映像データを取得する場合、リクエストパケットを３回送信する必要がある。
【０１２９】
一方、本実施の形態では、端末装置１０１が複数のカメラ１０３ａ〜１０３ｃから映像データを取得する場合、端末装置１０１は、カメラ１０３ａに対してリクエストパケットを送信する。ルータ１０２ｂは、複数のカメラ１０３ａ〜１０３ｃから送信された各映像データをキャッシュデータとして記憶している。そのため、ルータ１０２ｂは、カメラ１０３ａに対するリクエストパケットを端末装置１０１から受信した場合、記憶しているカメラ１０３ａの映像データを取得するとともに、記憶しているカメラ１０３ｂの映像データ及びカメラ１０３ｃの映像データを関連データとして取得する。そして、ルータ１０２ｂは、取得したカメラ１０３ａの映像データ、カメラ１０３ｂの映像データ及びカメラ１０３ｃの映像データを端末装置１０１へ送信する。
【０１３０】
このように、本実施の形態では、端末装置１０１がカメラ１０３ａから映像データを取得する場合、ルータ１０２ｂが、カメラ１０３ａの映像データだけでなく、カメラ１０３ｂの映像データ及びカメラ１０３ｃの映像データも送信するので、１回のみリクエストパケットを送信するだけで３つの映像データを取得することができる。したがって、リクエストパケットの送信を３回から１回に削減することができ、ルータ１０２ａとルータ１０２ｂとの間のデータ転送効率を向上させることができる。
【０１３１】
なお、図８に示すコンテンツ指向ネットワークシステムでは、端末装置１０１は、複数のカメラ１０３ａ〜１０３ｃから映像データを取得している。しかしながら、本開示は特にこれに限定されず、端末装置１０１は、複数のセンサからセンシングデータを取得してもよい。この場合、センサは、例えば温度センサ又は湿度センサであり、センシングデータは、例えば温度データ又は湿度データである。
【０１３２】
［実施の形態の効果］
以上のように、本実施の形態によれば、第１の通信装置は、第２の通信装置が送信したリクエストパケットに対して、リクエストパケットで要求されたコンテンツデータだけでなく、第２の通信装置が必要とする関連データを一緒に送信する。そのため、リクエストパケットの送信頻度を下げることができる。これにより、通信帯域の利用効率を改善することができるとともに、遅延時間を抑制することができる。例えば、通信装置１１ａが通信装置１１ｂに対して最新の位置情報を問い合わせた場合に、通信装置１１ｂは、通信装置１１ｃ及び通信装置１１ｄの位置情報をキャッシュデータとして記憶しているので、通信装置１１ｂ、通信装置１１ｃ及び通信装置１１ｄの位置情報がまとめて通信装置１１ａに転送される。その結果、通信装置１１ａは、通信装置１１ｃ及び通信装置１１ｄに位置情報を問い合わせる必要がなくなるため、リクエストパケットの送信頻度を下げることができる。
【産業上の利用可能性】
【０１３３】
本開示に係る通信方法及び通信装置は、リクエストパケットの送信頻度を下げることができるとともに、通信帯域の利用効率を改善することができ、コンテンツ指向ネットワークに接続する通信装置における通信方法及び当該通信装置に有用である。
【符号の説明】
【０１３４】
１０    ＣＣＮ網
１１，１１ａ，１１ｂ，１１ｃ，１１ｄ，１１ｅ    通信装置
１１１    インタフェース
１１２    データ送信部
１１３    リクエスト受信部
１１４    リクエスト送信部
１１５    データ処理部
１１６    関連性判断部
１１７    データ蓄積部
１１８    データ生成部
１１９    経路情報処理部
【図１】
0006649015.tif 000002
【図２】
0006649015.tif 000003
【図３】
0006649015.tif 000004
【図４】
0006649015.tif 000005
【図５】
0006649015.tif 000006
【図６】
0006649015.tif 000007
【図７】
0006649015.tif 000008
【図８】
0006649015.tif 000009