(57)【要約】【課題】コンテンツを１つ以上のセグメントに分割して配信し、通信装置は受信したセグメントをその後の配信のために保持できるコンテンツ配信システムにおいて、効果的に保持するセグメントを選択する。【解決手段】通信装置は、配信要求メッセージを転送したことの応答としてセグメントを受信すると、受信したセグメントを配信要求メッセージの送信元に向けて転送する通信手段と、受信したセグメントを保持手段に保持させるか否かを判定する判定手段と、を備えており、判定手段は、セグメントを示す配信要求メッセージを転送してから、当該配信要求メッセージを転送したことの応答として当該セグメントを受信するまでの時間である当該セグメントのラウンドトリップ時間を、当該セグメントを保持手段に保持させるか否かの判定に使用する。【選択図】図２
2015108959.tif 000002
【特許請求の範囲】
【請求項１】
コンテンツを１つ以上のセグメントに分割して配信するコンテンツ配信システムの通信装置であって、
セグメントを保持する保持手段と、
保持していないコンテンツのセグメントを示す配信要求メッセージを受信すると、前記受信した配信要求メッセージを所定の判断基準に従い転送し、前記配信要求メッセージを転送したことの応答としてセグメントを受信すると、前記受信したセグメントを前記配信要求メッセージの送信元に向けて転送する通信手段と、
前記受信したセグメントを前記保持手段に保持させるか否かを判定する判定手段と、
を備えており、
前記判定手段は、セグメントを示す配信要求メッセージを転送してから、当該配信要求メッセージを転送したことの応答として当該セグメントを受信するまでの時間である当該セグメントのラウンドトリップ時間を、当該セグメントを前記保持手段に保持させるか否かの判定に使用することを特徴とする通信装置。
【請求項２】
前記判定手段は、セグメントのラウンドトリップ時間が閾値より大きいことを、当該セグメントを前記保持手段に保持させると判定する条件の１つとすることを特徴とする請求項１に記載の通信装置。
【請求項３】
前記判定手段は、セグメントのラウンドトリップ時間が閾値以下であることを、当該セグメントを前記保持手段に保持させないと判定する条件の１つとすることを特徴とする請求項１に記載の通信装置。
【請求項４】
前記判定手段は、セグメントのラウンドトリップ時間と、受信した当該セグメントを含む信号の判定フィールドの設定値に基づく値との差を、当該セグメントを前記保持手段に保持させるか否かの判定に使用することを特徴とする請求項１に記載の通信装置。
【請求項５】
前記判定手段は、受信したセグメントに関する前記差が閾値より大きいことを、当該セグメントを前記保持手段に保持させると判定する条件の１つとすることを特徴とする請求項４に記載の通信装置。
【請求項６】
前記判定手段は、受信したセグメントに関する前記差が閾値以下であることを、当該セグメントを前記保持手段に保持させないと判定する条件の１つとすることを特徴とする請求項４に記載の通信装置。
【請求項７】
前記受信したセグメントを含む信号の判定フィールドの設定値に基づく値は、前記通信装置の上流側において当該セグメントの転送を行った際に当該セグメントを保持した１つ以上の他の通信装置が存在する場合、当該１つ以上の他の通信装置のうち前記通信装置に最も近い位置にある通信装置での前記ラウンドトリップ時間を示すことを特徴とする請求項４から６のいずれか１項に記載の通信装置。
【請求項８】
前記判定手段が、前記配信要求メッセージを転送したことの応答として受信したセグメントを前記保持手段に保持させると判定すると、前記通信手段は、前記受信したセグメントを前記配信要求メッセージの送信元に向けて転送する際、前記受信したセグメントを含む信号の判定フィールドに、前記ラウンドトリップ時間に対応する値を設定することを特徴とする請求項４から７のいずれか１項に記載の通信装置。
【請求項９】
前記判定手段が、前記配信要求メッセージを転送したことの応答として受信したセグメントを前記保持手段に保持させないと判定すると、前記通信手段は、前記受信したセグメントを前記配信要求メッセージの送信元に向けて転送する際、前記受信したセグメントを含む信号の判定フィールドの設定値を変更しないことを特徴とする請求項４から８のいずれか１項に記載の通信装置。
【請求項１０】
前記通信手段は、保持しているコンテンツのセグメントを示す配信要求メッセージを受信すると、当該セグメントを含む信号の判定フィールドにラウンドトリップ時間が０であることを示す値を設定して前記配信要求メッセージの送信元に向けて送信することを特徴とする請求項４から９のいずれか１項に記載の通信装置。
【請求項１１】
請求項１から１０のいずれか１項に記載の通信装置としてコンピュータを機能させることを特徴とするプログラム。
【請求項１２】
コンテンツを１つ以上のセグメントに分割して配信するコンテンツ配信システムのサーバ装置であって、
セグメントを保持する保持手段と、
前記保持手段が保持するセグメントを示す配信要求メッセージを受信すると、当該セグメントを含む信号の判定フィールドに０を示す値を設定して前記配信要求メッセージの送信元に向けて送信する通信手段と、
を備えており、
前記判定フィールドは、セグメントの転送を行う通信装置が当該セグメントを保持する際に、当該通信装置が当該セグメントを示す配信要求メッセージを転送してから、当該配信要求メッセージを転送したことの応答として当該セグメントを受信するまでのラウンドトリップ時間を示す値を設定するために使用されることを特徴とするサーバ装置。
【請求項１３】
請求項１２に記載のサーバ装置としてコンピュータを機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、コンテンツ配信システムにおいて、コンテンツを転送した通信装置における当該コンテンツのキャッシュ技術に関する。
【背景技術】
【０００２】
取得するコンテンツがどのサーバ装置に保存されているかを、コンテンツを取得するクライアント装置が意識することなく、コンテンツ名に基づき、コンテンツの配信要求メッセージのパケットのルーティングや、コンテンツの配信を行うネットワークが提案されている。特許文献１及び非特許文献１は、その様なネットワークの１つであるコンテンツ・セントリック・ネットワーク（ＣＣＮ：Ｃｏｎｔｅｎｔ  Ｃｅｎｔｒｉｃ  Ｎｅｔｗｏｒｋｉｎｇ）を開示している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−２７７２３４号公報
【非特許文献】
【０００４】
【非特許文献１】Ｖ．Ｊａｃｏｂｓｏｎ，ｅｔ  ａｌ．，"Ｎｅｔｗｏｒｋｉｎｇ  Ｎａｍｅｄ  Ｃｏｎｔｅｎｔ"，ｉｎ  Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ＡＣＭ  ＣｏＮＥＸＴ  ２００９，２００９年１２月
【発明の概要】
【発明が解決しようとする課題】
【０００５】
コンテンツ・セントリック・ネットワークにおいて、コンテンツを公開するサーバ装置は当該コンテンツを１つ以上のセグメントに分割し、クライアント装置はセグメント単位でコンテンツを取得する。また、コンテンツ・セントリック・ネットワークにおいて、クライアント装置へのセグメントの転送を行った通信装置（以下、中間装置と呼ぶ。）は、当該セグメントを保存でき、この中間装置は、自装置が保持しているセグメントの配信要求メッセージをクライアント装置から受信すると、当該配信要求メッセージをサーバ装置に転送することなく、自装置が保持するセグメントを、当該配信要求メッセージの送信元のクライアント装置に向けて送信できる。
【０００６】
中間装置がセグメントを保持することで、クライアント装置がセグメントを受信するまでの時間が短くなり、かつ、セグメントの転送のために消費するネットワークの帯域を少なくすることができる。このクライアント装置へのセグメントの配信時間を短くし、セグメントの転送のために消費するネットワークの帯域をできるだけ少なくするためには、各中間装置が様々なコンテンツの様々なセグメントを保持することが望ましい。しかしながら、中間装置がセグメントを保持するために使用できる記憶容量には上限があり、中間装置が保持できるセグメント数はこの記憶容量により制限される。したがって、セグメントの配信に関わった総ての中間装置が同じセグメントを保持するのではなく、何らかの基準により保持するセグメントを選択することが望ましい。しかしながら、特許文献１及び非特許文献１は、中間装置がどの様に保持するセグメントを決定するかについては何ら開示していない。
【０００７】
本発明は、コンテンツを１つ以上のセグメントに分割して配信し、通信装置は転送したセグメントをその後の配信のため保持できるコンテンツ配信システムにおいて、効果的に保持するセグメントを選択する通信装置、当該コンテンツ配信システムでコンテンツの配信を行うサーバ装置及びプログラムを提供するものである。
【課題を解決するための手段】
【０００８】
本発明の一側面によると、コンテンツを１つ以上のセグメントに分割して配信するコンテンツ配信システムの通信装置であって、セグメントを保持する保持手段と、保持していないコンテンツのセグメントを示す配信要求メッセージを受信すると、前記受信した配信要求メッセージを所定の判断基準に従い転送し、前記配信要求メッセージを転送したことの応答としてセグメントを受信すると、前記受信したセグメントを前記配信要求メッセージの送信元に向けて転送する通信手段と、前記受信したセグメントを前記保持手段に保持させるか否かを判定する判定手段と、を備えており、前記判定手段は、セグメントを示す配信要求メッセージを転送してから、当該配信要求メッセージを転送したことの応答として当該セグメントを受信するまでの時間である当該セグメントのラウンドトリップ時間を、当該セグメントを前記保持手段に保持させるか否かの判定に使用することを特徴とする通信装置。
【発明の効果】
【０００９】
通信装置は、効果的に保持するセグメントを選択することができる。
【図面の簡単な説明】
【００１０】
【図１】コンテンツ・セントリック・ネットワークの説明図。
【図２】一実施形態による中間装置の概略的な構成図。
【図３】一実施形態による中間装置が保持するデータを示す図。
【図４】一実施形態による判定フィールドに設定される値を示す図。
【図５】一実施形態によるサーバ装置の概略的な構成図。
【発明を実施するための形態】
【００１１】
以下、本発明の例示的な実施形態について図面を参照して説明する。なお、以下の各図においては実施形態の説明に必要ではない構成要素については図から省略する。また、以下の実施形態は例示であり本発明を実施形態の内容に限定するものではない。
【００１２】
＜第一実施形態＞
まず、図１を用いてコンテンツ・セントリック・ネットワークの概略を説明する。コンテンツを公開したいユーザは、サーバ装置１に当該コンテンツを保存する。サーバ装置１は、保持している公開用のコンテンツをそれぞれ１つ以上のセグメントに分割すると共に、保持しているコンテンツ名を他の装置に報知する。コンテンツの転送を担う中間装置２１及び２２は、サーバ装置１が報知するコンテンツ名から、コンテンツ名に基づくルーティング・テーブルを作成する。例えば、クライアント装置３１のユーザが取得したいコンテンツが、サーバ装置１に保持されているものとする。このとき、クライアント装置３１のユーザが、取得したいコンテンツ名をクライアント装置３１に入力すると、クライアント装置３１は、入力されたコンテンツ名を含むインタレスト・パケット（配信要求メッセージ）を中間装置２１に向けて送信する。なお、クライアント装置３１は、入力されたコンテンツ名に対応するコンテンツのいずれのセグメントもまだ受信していないため、クライアント装置３１は、このインタレスト・パケットにセグメント番号"０１"も含める。
【００１３】
中間装置２１は、ルーティング・テーブルから、クライアント装置３１から受信したインタレスト・パケットに含まれるコンテンツ名に対応するコンテンツをサーバ装置１が保持していると認識し、このインタレスト・パケットをサーバ装置１に転送する。クライアント装置３１からのインタレスト・パケットを受信したサーバ装置１は、受信したインタレスト・パケットで指定されたコンテンツの１番目のセグメントを中間装置２１に送信し、中間装置２１は、サーバ装置１から受信したセグメントをクライアント装置３１に送信する。ここで、中間装置２１は、転送したセグメントを保存することができ、本例では保存したものとする。
【００１４】
クライアント装置３１は、セグメント番号を１ずつ増加させながら、入力されたコンテンツ名を含むインタレスト・パケットを中間装置２１に転送し、上述したのと同様に、サーバ装置１から、入力されたコンテンツ名の残りのセグメントを受信する。なお、最後のセグメントには、最後のセグメントであることを示す情報が含まれており、クライアント装置３１は、この情報によりコンテンツの総てのセグメントを受信したことを認識する。また、本例では、中間装置２１は、クライアント装置３１が要求したコンテンツの総てのセグメントを保持したものとする。
【００１５】
その後、例えば、クライアント装置３２が、クライアント装置３１が取得したのと同じコンテンツについてのインタレスト・パケット（セグメント番号は"０１"を含む）を中間装置２２に送信すると、中間装置２２は、ルーティング・テーブルに基づき、このインタレスト・パケットを中間装置２１に転送する。中間装置２１は、受信したインタレスト・パケットが示すコンテンツの番号１のセグメントを保持しているため、受信したインタレスト・パケットをサーバ装置１に転送することなく、自装置が保持している当該コンテンツの番号１のセグメントを中間装置２２に送信し、中間装置２２は、受信したコンテンツをクライアント装置３２に送信する。また、本例では、中間装置２２は、転送したコンテンツのセグメントを保存するものとする。以後、残りのセグメントも同様に処理され、よってクライアント装置３２へのコンテンツの配信により、中間装置２２も当該コンテンツの総てのセグメントを保持することになる。その後、クライアント装置３３が、クライアント装置３１及び３２が取得したのと同じコンテンツの取得を要求すると、クライアント装置３３は、中間装置２２が保持するコンテンツを中間装置２２から受信する。
【００１６】
図２は、一実施形態による中間装置２１の構成図である。なお、中間装置２２の構成も中間装置２１と同様である。通信部２１１は、複数の通信インタフェースを有し、他の装置（クライアント装置又は他の中間装置）からコンテンツのセグメントを示す配信要求メッセージを受信すると、その判定部２１２は、受信した配信要求メッセージが示すセグメントを保持部２１０が保持しているかを判定する。ここで、保持部２１０が当該セグメントを保持している場合、通信部２１１は、当該セグメントを保持部２１０から読み出して配信要求メッセージの送信元の装置に向けて送信する。
【００１７】
一方、保持部２１０が当該セグメントを保持していない場合、通信部２１１は、所定の判断基準に従い受信した配信要求メッセージをサーバ装置１に向けて転送する。なお、所定の判断基準とは、本実施形態では、ルーティング・テーブル２１３が示す基準である。また、このとき通信部２１１は、保持部２１０の未処理テーブルに、転送した配信要求メッセージについて、配信要求メッセージで指定されているセグメントを示す値と、配信要求メッセージの応答を送信するインタフェースと、配信要求メッセージの転送時刻を示す情報を追加する。図３（Ｂ）は、未処理テーブルの例である。図３（Ｂ）においては、"Ｎａｍｅ２"という名のコンテンツの２番目及び３番目のセグメントを要求する配信要求メッセージをそれぞれ時刻ｔａ及びｔｂにサーバ装置１に向けて転送したことと、当該配信要求メッセージの応答として、サーバ装置１又は他の中間装置からセグメントを受信すると、受信したセグメントを配信要求メッセージの送信元の装置に配信するために、インタフェースＩＦ１に出力することが示されている。
【００１８】
なお、サーバ装置１に向けて転送した配信要求メッセージと同じセグメントを指定する配信要求メッセージを、既に転送した配信要求メッセージの応答として当該セグメントを受信する前に受信した場合、通信部２１１は、保持部２１０の未処理テーブルに後から受信した配信要求メッセージに関する情報を追加はするが、サーバ装置１に向けての転送は行わない。なお、この場合、配信要求メッセージの転送は行わないため、未処理テーブルの転送時刻フィールドは、ヌル値のままとするか、転送していないことを示す値を設定する。さらに、転送先インタフェースには、複数の値を設定できる様にしておき、サーバ装置１に向けて転送した配信要求メッセージと同じセグメントを指定する配信要求メッセージを、既に転送した配信要求メッセージの応答として当該セグメントを受信する前に受信した場合、後から受信した配信要求メッセージに対する転送先インタフェースを、未処理テーブルの当該セグメントに対するエントリに追加する構成とすることもできる。具体的には、図３（Ｂ）の状態で、"Ｎａｍｅ２"の２番目のセグメントを要求する配信要求メッセージを受信し、この配信要求メッセージに対する転送先インタフェースがＩＦ２である場合、"Ｎａｍｅ２"の２番目のセグメントに対応するエントリの転送先インタフェースにＩＦ２を追加する形態であっても良い。
【００１９】
通信部２１１は、サーバ装置１に向けて転送した配信要求メッセージの応答としてセグメントを受信すると、未処理テーブルに従いセグメントを転送すると共に、転送済となったセグメントに関する未処理テーブルのエントリを削除する。また、判定部２１２は、受信したセグメントのラウンドトリップ時間と閾値を比較し、ラウンドトリップ時間が閾値以内であると、当該セグメントを保持しないと判定する。ここで、ラウンドトリップ時間とは、未処理テーブルの配信要求メッセージの転送時刻と、当該配信要求メッセージの応答として当該セグメントを受け取った時刻の差である。一方、判定部２１２は、受信したセグメントのラウンドトリップ時間が閾値より大きい場合、保持部２１０に当該セグメントを保持するための空き容量があれば、当該セグメントを保持部２１０に保持させる。
【００２０】
クライアント装置があるセグメントをある通信装置（サーバ装置又は中間装置）から取得する場合を基準とした、クライアント装置と当該通信装置との間の経路上に位置する中間装置が当該セグメントを保持している場合の取得時間の削減量は、当該中間装置における当該セグメントのラウンドトリップ時間に等しくなる。したがって、ラウンドトリップ時間の小さいセグメントを保持しても、クラインアント装置におけるセグメントの取得時間の削減効果は小さい。一方、ラウンドトリップ時間の大きいセグメントを保持することで、クラインアント装置におけるセグメントの取得時間を大きく削減できる。したがって、本実施形態においては、ラウンドトリップ時間と閾値を比較することで、セグメントを保存対象とするか否を判定する。
【００２１】
しかしながら、受信したセグメントのラウンドトリップ時間が閾値より大きくても、保持部２１０に当該セグメントを保持するための空き容量が存在しない場合もある。この場合、判定部２１２は、受信したセグメントを保存することなく廃棄するか、保持部２１０が保持しているセグメントのいずれかを廃棄して、受信したセグメントを保持するかを決定する。この決定のため、保持部２１０は、一例として、保持しているセグメントを管理する図３（Ａ）に示す様な管理テーブルを保持することができる。図３（Ａ）に示す様に、本例において、管理テーブルは、保持部２１０が保持しているセグメント名を示す情報と、当該セグメントのラウンドトリップ時間を含んでいる。なお、管理テーブルは、例えば、セグメントの保存位置を示す図示しない情報等も含むものとすることができる。
【００２２】
判定部２１２は、受信したセグメントのラウンドトリップ時間が閾値より大きいが、当該セグメント保持するための空き容量が保持部２１０にない場合、既に保持部２１０に保持しているセグメントと新たに受信したセグメントから廃棄順位を算出し、廃棄順位の最も高いものを廃棄すると決定する。つまり、廃棄順位の最も高いセグメントが既に保持部２１０に保持されているものである場合、通信部２１１は、廃棄順位の最も高いセグメントを保持部２１０から削除して新たに受信したセグメントを保持部２１０に保持させる。また、廃棄順位の最も高いセグメントが新たに受信したものである場合、通信部２１１は、受信したセグメントを転送後に廃棄する。なお、判定部２１２は、保持部２１０に保持させるセグメントを追加、変更すると、管理テーブルもそれに応じて更新する。
【００２３】
例えば、この廃棄順位は、各セグメントのラウンドトリップ時間に基づき算出することができる。なお、この場合、廃棄順位は、ラウンドトリップ時間の短いものほど高くする。クライアント装置があるセグメントをある中間装置から取得する場合を基準とした、当該中間装置が当該セグメントを保持していなかった場合の取得時間の変動量は、当該中間装置における当該セグメントのラウンドトリップ時間に等しくなる。したがって、ラウンドトリップ時間の小さいセグメントは、削除したとしてもクラインアント装置におけるセグメントの取得にかかる時間への影響は小さい。
【００２４】
さらに、セグメントのラウンドトリップ時間が長いことは、その中間装置の次に当該セグメントを保持している中間装置又はサーバ装置までの距離が長いことを意味し、これは、多くの伝送区間を経由している可能性が高いことを意味する。したがって、セグメントのラウンドトリップ時間が長いセグメントを削除すると、当該セグメントを示す配信要求メッセージをその後に受信した場合、配信要求メッセージの転送及びその後のセグメントの受信によりネットワークの多くの資源を消費することになる。したがって、ラウンドトリップ時間の小さいセグメントから先に削除することで、ネットワークの使用効率を高めることができる。
【００２５】
なお、各セグメントのラウンドトリップ時間に加え、或いは、代えて、セグメントの要求頻度を考慮して廃棄順位を算出することもできる。この場合、ランドトリップ時間が小さい程、廃棄順位は高く、かつ、コンテンツの要求頻度が小さい程、廃棄順位は高くなる。例えば、ラウンドトリップ時間とコンテンツの要求頻度を乗じた値に基づき廃棄順位を算出することができる。なお、要求頻度は、過去所定期間の要求数や、セグメントを保持してからの累積要求数や、所定期間毎の要求数の平均値とすることができる。また、現在時点から、過去に要求された時までの時間が長い程小さくなる重み係数で重みづけすることもできる。なお、新たに受信したセグメントの要求頻度は０又は小さい値であるため、要求頻度を使用する場合には、新たに受信したセグメントは廃棄順位算出の対象外として常に保存することができる。さらに、新たに受信したセグメントの要求頻度を０以外の所定値、例えば、既に保持されているセグメントの要求頻度に基づく値、例えば、平均値、最小値、最大値とすることができる。
【００２６】
以上、各中間装置は、セグメントのラウンドトリップ時間を判定し、ラウンドトリップ時間と閾値を比較することで、当該セグメントが保存対象であるか否かを判定する。この構成により、クライアント装置１への配信にかかる時間を短くしつつ、同じセグメントが無駄に多くの中間装置で保持されることを防ぐことができる。なお、閾値の決め方としては、中間装置の管理者があらかじめ値を設定しておくことができる。また、管理テーブルが示す、保持部２１０が保持する総てのセグメントのラウンドトリップ時間の平均値、中央値、最小値、最大値等を使用して算出する値とすることができる。さらに、保持部２１０が保持するセグメントではなく、直近に転送した所定個数のセグメントのラウンドトリップ時間の平均値、中央値、最小値、最大値等を使用して算出する値とすることもできる。
【００２７】
なお、上記実施形態では、ラウンドトリップ時間が閾値以下であると、保存しないと判定していたが、他の条件と組み合わせて判定することもできる。つまり、ラウンドトリップ時間が閾値以下であることは、保存しないと判定するための条件の１つであり、ラウンドトリップ時間が閾値以下であり、かつ、他の条件を満たす場合に保存しないと判定し、それ以外は保存対象とすると判定する構成であっても良い。また、上記実施形態では、ラウンドトリップ時間が閾値より大きいと、保持対象であると判定し、保持部２１０に空き容量があれば保持部２１０に保持させていた。しかしながら、ラウンドトリップ時間以外の他の条件を組み合わせて使用することもできる。つまり、ラウンドトリップ時間が閾値より大きいことは、保存すると判定するための条件の１つであり、ラウンドトリップ時間が閾値より大きく、かつ、他の条件を満たす場合に、保存対象であると判定し、それ以外は保存しないと判定する構成であっても良い。
【００２８】
＜第二実施形態＞
続いて、第二実施形態について第一実施形態との相違点を中心に説明する。例えば、セグメントの転送に多くの中間装置が関わり、保存するか否かを判定する閾値が総ての中間装置で同じである場合、第一実施形態の構成では、セグメントの転送に関わった中間装置の内、ある中間装置からクライアント装置側にある総ての中間装置は、当該セグメントを保存対象とする。つまり、ある中間装置からクライアント装置側にある総ての中間装置が当該セグメントを保持できる場合、当該総ての中間装置は同じセグメントを保持することになる。本実施形態はこの様な状態を防ぐものである。
【００２９】
このため、本実施形態では、配信するセグメントを含む信号のヘッダ領域に判定フィールドを設ける。そして、保存しているセグメントをクライアント装置に向けて送信するサーバ装置又は中間装置は、この判定フィールドに値"０"を設定してセグメントを送信する。また、受信したセグメントを転送する中間装置は、受信したセグメントを保存しないのであれば、判定フィールドの値を変更することなく、受信したセグメントを転送する。一方、転送するセグメントを保存する場合、中間装置は、判定フィールドに自装置での当該セグメントのラウンドトリップ時間を設定して転送する。
【００３０】
以下、図４を用いて本実施形態における処理を説明する。図４において、クライアント装置３１が要求したセグメントを保持しているのは中間装置２４のみであり、中間装置２４が、要求されたセグメントを送信し、このセグメントは、中間装置２３、２２、２１の順で転送されてクライアント装置３１に配信されるものとする。また、各装置間の転送遅延は簡単のため"ｔ"とし、各装置内での処理時間は無視できるものとする。したがって、中間装置２１、２２、２３での当該セグメントのラウンドトリップ時間は、図４の対応する装置の下に示す様に、"６ｔ"、"４ｔ"、"２ｔ"となる。また、セグメントを保存対象とするか否かの判定に使用する閾値を各中間装置共に"３ｔ"とする。
【００３１】
中間装置２４は、判定フィールドに値"０"を設定してセグメントを中間装置２３に送信する。なお、図４において、装置間の矢印の数字は、判定フィールドに設定される値を示している。中間装置２３は、当該セグメントのラウンドトリップ時間から、判定フィールドに設定された値を減じ、その値が閾値以下であると、受信したセグメントを保存しないと判定する。中間装置２３におけるラウンドトリップ時間から判定フィールドの値を減じた値は"２ｔ"であり、閾値"３ｔ"以下であるため、中間装置２３は、受信したセグメントを保存しないと判定する。中間装置２３は、受信したセグメントを保存しないため、判定フィールドを変更することなく、受信したセグメントを中間装置２２に転送する。
【００３２】
中間装置２２におけるラウンドトリップ時間から判定フィールドの値を減じた値は"４ｔ"であり、閾値"３ｔ"より大きい。したがって、中間装置２２は、受信したセグメントを保存対象であると判定し、保持部２１０に空き容量があると受信したセグメントを保存する。ここで、中間装置２２は、受信したセグメントを保存したものとする。この場合、中間装置２２は、判定フィールドに、自装置でのラウンドトリップ時間である"４ｔ"を設定して、受信したセグメントを転送する。なお、保持部２１０に空き容量が無い等の理由により受信したセグメントを保存しなかった場合には、判定フィールドを変更することなく受信したセグメントを転送する。
【００３３】
中間装置２１におけるラウンドトリップ時間から判定フィールドの値を減じた値は"２ｔ"であり、閾値である"３ｔ"以下である。したがって、中間装置２１は、受信したセグメントを保存しないと判定する。
【００３４】
図５は、本実施形態によるサーバ装置の構成図である。保持部１１０は、配信対象のコンテンツを１つ以上のセグメントに分割して保持している。通信部１１１は、コンテンツのセグメントを示す配信要求メッセージを受信すると、当該セグメントを含む信号の判定フィールドに０を示す値を設定し、当該配信要求メッセージの送信元に向けて送信する。なお、中間装置の構成は、図２の通りであり、本実施形態では、判定部２１２が上述した方法によりセグメントを保存するか否かを決定し、保存する場合、通信部２１１は、転送するセグメントを含む信号の判定フィールドに、当該中間装置での当該セグメントのラウンドトリップ時間を設定する。なお、保存しない場合、通信部２１１は、転送するセグメントを含む信号の判定フィールドの値を変更しない。なお、上記実施形態では、判定フィールドにラウンドトリップ時間を設定するとしたが、ラウンドトリップ時間を示す、或いは、ラウンドトリップ時間を計算できる値を設定する形態であっても良い。
【００３５】
以上の構成により、同じセグメントがネットワークにおいて互いに近い位置にある中間装置において重複して保存されることを防ぎ、よって、クライアント装置がセグメントを受信するまでの時間の短縮と、セグメントの転送のために消費するネットワークの帯域の削減を実現することができる。
【００３６】
なお、本発明による中間装置２１及びサーバ装置１は、それぞれ、コンピュータを上記中間装置２１及びサーバ装置１として動作させるプログラムにより実現することができる。これらコンピュータプログラムは、コンピュータが読み取り可能な記憶媒体に記憶されて、又は、ネットワーク経由で配布が可能なものである。
【図１】
2015108959.tif 000003
【図２】
2015108959.tif 000004
【図３】
2015108959.tif 000005
【図４】
2015108959.tif 000006
【図５】
2015108959.tif 000007