JP2022135642A - Transfer device for content distribution network and program - Google Patents
Transfer device for content distribution network and program Download PDFInfo
- Publication number
- JP2022135642A JP2022135642A JP2021035583A JP2021035583A JP2022135642A JP 2022135642 A JP2022135642 A JP 2022135642A JP 2021035583 A JP2021035583 A JP 2021035583A JP 2021035583 A JP2021035583 A JP 2021035583A JP 2022135642 A JP2022135642 A JP 2022135642A
- Authority
- JP
- Japan
- Prior art keywords
- transfer device
- content
- chunks
- request packets
- packets
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000012546 transfer Methods 0.000 title claims abstract description 112
- 238000012545 processing Methods 0.000 claims abstract description 79
- 230000005540 biological transmission Effects 0.000 claims abstract description 58
- 238000000034 method Methods 0.000 claims abstract description 25
- 238000004891 communication Methods 0.000 claims description 11
- 238000009434 installation Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
Description
本発明は、コンテンツを分割して配信するコンテンツ配信ネットワークの転送装置及びプログラムに関する。 The present invention relates to a transfer device and program for a content distribution network that divides and distributes content.
コンテンツを示す名前に基づきコンテンツの配信を行うネットワークが提案されている。以下、その様なネットワークの1つであるコンテンツ・セントリック・ネットワーク(CCN:Content Centric Networking)の概略について説明する。 Networks have been proposed that distribute content based on names that indicate the content. An outline of a content centric network (CCN: Content Centric Networking), which is one of such networks, will be described below.
CCNにおいて、コンテンツを公開するサーバ装置は、当該コンテンツを1つ以上のチャンク又はオブジェクトと呼ばれるデータ部分に分割し、クライアント装置は、チャンク単位でコンテンツを取得する。また、CCNにおいて、チャンクの転送を行った通信装置(以下、転送装置と呼ぶ。)は、当該チャンクを保持(キャッシュ)できる。この転送装置は、自装置がキャッシュしているチャンクを要求するインタレスト・パケット(要求パケット)をクライアント装置から受信すると、当該インタレスト・パケットをサーバ装置に向けて転送することなく、自装置が保持するチャンクを含むデータ・パケットを、当該インタレスト・パケットの送信元のクライアント装置に向けて送信できる。 In CCN, a server device that publishes content divides the content into one or more chunks or data portions called objects, and a client device acquires the content in units of chunks. Also, in CCN, a communication device that has transferred a chunk (hereinafter referred to as a transfer device) can hold (cache) the chunk. When this transfer device receives an interest packet (request packet) requesting a chunk cached by the device from the client device, the transfer device does not transfer the interest packet to the server device, but holds the interest packet. A data packet containing the chunk can be sent towards the client device from which the Interest packet was sent.
以下、転送装置の動作の一例を説明する。転送装置は、CS(Contents Store)と、FIB(Forwarding Information Base)と、PIT(PIT:Pending Interest Table)を管理する。CSは、自装置がキャッシュしているチャンクを示す情報である。FIBは、インタレスト・パケットと、当該インタレスト・パケットを転送すべきインタフェースとの関係を示す情報である。PITは、転送したインタレスト・パケットが要求するチャンクと、当該転送したインタレスト・パケットを受信したインタフェースとの関係を示す情報である。PITは、インタレスト・パケットを転送し、当該転送したインタレスト・パケットが要求するチャンクの受信待ちであることを示す情報でもある。 An example of the operation of the transfer device will be described below. The transfer device manages CS (Contents Store), FIB (Forwarding Information Base), and PIT (PIT: Pending Interest Table). CS is information indicating chunks cached by the device itself. The FIB is information indicating the relationship between an Interest packet and an interface to which the Interest packet should be transferred. The PIT is information indicating the relationship between the chunk requested by the forwarded Interest packet and the interface that received the forwarded Interest packet. The PIT is also information indicating that an Interest packet has been transferred and that a chunk requested by the transferred Interest packet is waiting to be received.
転送装置は、インタレスト・パケットを受信すると、CSを検索し、当該インタレスト・パケットが要求するチャンクをキャッシュしているか否かを判定する。キャッシュしている場合には、自装置がキャッシュしているチャンクを含むデータ・パケットを、当該インタレスト・パケットの送信元のクライアント装置に向けて送信する。一方、受信したインタレスト・パケットが要求するチャンクをキャッシュしていない場合、転送装置は、PITを検索して、当該インタレスト・パケットと同じチャンクを要求するインタレスト・パケットを既に転送し、当該チャンクの受信待ちの状態であるかを判定する。受信待ちの状態であると、転送装置は、受信したインタレスト・パケットを転送せず、当該インタレスト・パケットの受信インタフェースを、当該インタレスト・パケットが要求するチャンクに関連付ける様にしてPITを更新する。一方、受信したインタレスト・パケットが要求するチャンクの受信待ちでない場合、転送装置は、FIBに基づき判定したインタフェースから当該インタレスト・パケットを転送すると共にPITを更新する。また、転送装置は、チャンクを含むデータ・パケットを受信すると、当該データ・パケットの転送先インタフェースをPIT及び当該データ・パケットに含まれるチャンクに基づき判定し、判定したインタフェースから当該データ・パケットを送信すると共に、当該チャンクに関する情報をPITから削除する。また、転送装置は、転送したデータ・パケットに含まれるチャンクをキャッシュするとCSを更新する。 When a forwarding device receives an Interest packet, it searches the CS to determine whether it caches the chunk requested by the Interest packet. If it is cached, it transmits a data packet containing the chunk cached by its own device to the client device that sent the interest packet. On the other hand, if the chunk requested by the received Interest packet is not cached, the forwarding device searches the PIT, forwards an Interest packet requesting the same chunk as the Interest packet, and receives the chunk. Determine whether it is in a waiting state. In the state of waiting for reception, the transfer device does not transfer the received Interest packet, and updates the PIT by associating the receiving interface of the Interest packet with the chunk requested by the Interest packet. On the other hand, if the received interest packet is not waiting for the requested chunk, the transfer device transfers the interest packet from the interface determined based on the FIB and updates the PIT. Further, upon receiving a data packet including a chunk, the transfer device determines the transfer destination interface of the data packet based on the PIT and the chunk included in the data packet, and transmits the data packet from the determined interface. At the same time, the information about the chunk is deleted from the PIT. Also, the transfer device updates the CS when it caches the chunks included in the transferred data packets.
特許文献1は、クライアント装置によるコンテンツの取得時間を短縮するための構成を開示している。特許文献1によると、CCN内に境界転送装置を設ける。境界転送装置は、遅延の大きいリンク(以下、長距離リンク)に接続される。境界転送装置は、同じコンテンツ(要求コンテンツ)のチャンクを要求し、かつ、長距離リンクに転送される複数のインタレスト・パケットが所定条件を満たす場合、要求コンテンツの"事前取得処理"を開始する。要求コンテンツの"事前取得処理"とは、要求コンテンツのチャンクの内、受信して転送した複数のインタレスト・パケットが要求しているチャンクより時間的に後の複数のチャンクを、クライアント装置からインタレスト・パケットを受信する前に予め取得する動作を意味する。
特許文献1は、事前取得処理により、クライアント装置が将来的に要求する可能性の高い複数のチャンクを事前に取得することで、クライアント装置によるコンテンツの取得時間を短縮させている。しかしながら、事前取得処理において境界転送装置が多数のインタレスト・パケットを生成して送信することは輻輳の原因となり得る。
本発明は、事前取得処理において輻輳を抑える技術を提供するものである。 The present invention provides techniques for reducing congestion in pre-acquisition processing.
本発明の一態様によると、コンテンツを1つ以上のチャンクに分割して配信するコンテンツ配信ネットワークの転送装置は、クライアント装置から要求コンテンツのチャンクを要求する複数の第1要求パケットを受信すると、前記複数の第1要求パケットに基づき前記要求コンテンツの事前取得処理を行うか否かを判定する判定手段と、前記要求コンテンツの事前取得処理を行うと判定すると、前記要求コンテンツのチャンクの内、前記複数の第1要求パケットが要求するチャンクとは異なるチャンクをそれぞれが要求する複数の第2要求パケットを生成して送信する送信手段と、を備え、前記送信手段は、前記クライアント装置との間のラウンドトリップ遅延に基づき前記複数の第2要求パケットの送信間隔を制御することを特徴とする。 According to one aspect of the present invention, when a transfer device of a content distribution network that distributes content by dividing it into one or more chunks receives a plurality of first request packets requesting chunks of requested content from a client device, determining means for determining whether or not to perform pre-acquisition processing of the requested content based on a plurality of first request packets; a transmission means for generating and transmitting a plurality of second request packets each requesting a chunk different from the chunk requested by the first request packet of the transmission means, wherein the transmission means makes a round with the client device The transmission interval of the plurality of second request packets is controlled based on the trip delay.
本発明によると、事前取得処理において輻輳を抑えることができる。 According to the present invention, congestion can be suppressed in pre-acquisition processing.
以下、添付図面を参照して実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものでなく、また実施形態で説明されている特徴の組み合わせの全てが発明に必須のものとは限らない。実施形態で説明されている複数の特徴のうち二つ以上の特徴が任意に組み合わされてもよい。また、同一若しくは同様の構成には同一の参照番号を付し、重複した説明は省略する。 Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. It should be noted that the following embodiments do not limit the invention according to the claims, and not all combinations of features described in the embodiments are essential to the invention. Two or more of the features described in the embodiments may be combined arbitrarily. Also, the same or similar configurations are denoted by the same reference numerals, and redundant explanations are omitted.
図1は、本実施形態によるコンテンツ配信ネットワークの構成図である。以下では、コンテンツ配信ネットワークがCCNであるものとして本実施形態の説明を行う。しかしながら、本発明は、CCNに限定されず、コンテンツを1つ以上に分割し、分割により得られた各データ部分を単位としてコンテンツの配信が行われ、かつ、転送したデータ部分を転送装置がキャッシュできる任意のコンテンツ配信ネットワークに対して適用することができる。また、以下の説明では、コンテンツを分割した各データ部分を、CCNに従い"チャンク"と表記する。しかしながら、1つのコンテンツを分割して得られる各データ部分の名前は任意である。 FIG. 1 is a configuration diagram of a content distribution network according to this embodiment. In the following, the present embodiment will be described assuming that the content distribution network is CCN. However, the present invention is not limited to the CCN, but divides the content into one or more pieces, distributes the content in units of each data portion obtained by the division, and caches the transferred data portion in the transfer device. It can be applied to any content delivery network capable. Also, in the following description, each data portion obtained by dividing the content is referred to as a "chunk" according to CCN. However, the name of each data part obtained by dividing one content is arbitrary.
図1に示す様に、コンテンツ配信ネットワークは、コンテンツを公開するサーバ装置3と、CCNに従いコンテンツを取得するクライアント装置11及び12と、境界転送装置2と、を備えている。クライアント装置11及び12、並びに、境界転送装置2は、上述したCCNの通常の転送装置で構成されるローカルネットワーク4に接続されている。図1において、クライアント装置11及び12、境界転送装置2並びにローカルネットワーク4は、日本国内に設けられている。一方、サーバ装置3は国外、例えば、イギリスに設けられている。なお、境界転送装置2とサーバ装置3とは、通常の転送装置や本実施形態による境界転送装置2で構成されるグローバルネットワークを介して通信可能な様に構成されている。また、コンテンツ配信ネットワークは、日本国内に設けられたサーバ装置も有するが、本実施形態の説明には関係ないため省略している。また、コンテンツ配信ネットワークは、サーバ装置3以外にも、日本以外の様々な国に設置されたサーバ装置を有するが、説明の簡略化のために省略している。
As shown in FIG. 1, the content distribution network includes a
本実施形態において、日本国内に設置されたクライアント装置11及び12等のクライアント装置が、日本以外の国に設置されたサーバ装置3等のサーバ装置が公開するコンテンツを取得する際、日本国内のクライアント装置が送信するインタレスト・パケットは、境界転送装置2に転送される様に、ローカルネットワーク4の転送装置のFIBは設定されている。なお、本実施形態においては、説明の簡略化のため、1つの境界転送装置2のみが日本に設置されているものとするが、複数の境界転送装置2を日本に設置する構成とすることもできる。例えば、東京及び大阪に境界転送装置2を設置し、サーバ装置3が公開するコンテンツを要求するインタレスト・パケットのうち、東日本のクライアント装置が送信したインタレスト・パケットについては東京に設置された境界転送装置2に転送され、西日本のクライアント装置が送信したインタレスト・パケットについては大阪に設置された境界転送装置2に転送される様に、ローカルネットワーク4の転送装置のFIBを設定する構成とすることもできる。
In this embodiment, when a client device such as the
クライアント装置11及び12は、ウィンドウ・サイズWと、送信したインタレスト・パケットのうち、その応答としてデータ・パケットを受信していないインタレスト・パケットの数Uを管理する。ウィンドウ・サイズWは、数Uの最大許容値を規定する。例えば、ウィンドウ・サイズW=4であると、クライアント装置11及び12は、まず、4つのインタレスト・パケットまで連続して送信することができる。そして、4つのインタレスト・パケットを送信すると、当該4つのインタレスト・パケットのいずれかのインタレスト・パケットの応答としてのデータ・パケットを受信するまで、クライアント装置11及び12は、新たなインタレスト・パケットを送信することができない。また、当該4つのインタレスト・パケットのうちの1つのインタレスト・パケットの応答としてのデータ・パケットを受信すると、クライアント装置11及び12は、新たに1つのインタレスト・パケットを送信することがでる。
The
また、クライアント装置11及び12は、送信したインタレスト・パケットの応答として所定期間内にデータ・パケットを受信したか否かに応じてウィンドウ・サイズWを増減させる。例えば、ウィンドウ・サイズWの初期値を4とする。この場合、クライアント装置11及び12は、4つのインタレスト・パケットを送信した後、その総てに対するデータ・パケットを所定期間内に受信すると、ウィンドウ・サイズWを倍の8にする。ウィンドウ・サイズW=8であるため、クライアント装置11及び12は、8つのインタレスト・パケットを連続して送信することができる。クライアント装置11及び12は、8つのインタレスト・パケットを送信した後、その総てに対するデータ・パケットを所定期間内に受信すると、ウィンドウ・サイズWを倍の16にする。この様に、本実施形態において、クライアント装置11及び12は、送信したインタレスト・パケットの総ての応答を所定期間内に受信すると、ウィンドウ・サイズWを倍にするものとする。つまり、クライアント装置11及び12は、コンテンツ配信ネットワークのトラフィック量が少なく、送信したインタレスト・パケットの応答を所定期間内に受信すると、ウィンドウ・サイズWを、4、8、16、32、64、128、256・・と増加させることができる。一方、クライアント装置11及び12は、送信したインタレスト・パケットの少なくとも1つの応答を所定期間内に受信しないと、ウィンドウ・サイズWを半分にするものとする。この様に、ウィンドウ・サイズWを段階的に徐々に増加させることで、コンテンツ配信ネットワークのトラフィック状況に応じて適切に送信するインタレスト・パケットの量を制御することができる。なお、ウィンドウ・サイズWの制御方法は、上述した方法以外にも様々な方法があるが、クライアント装置11及び12におけるウィンドウ・サイズの制御方法の具体的な内容に拘わらず、本発明を適用することができる。
In addition, the
例えば、クライアント装置11がサーバ装置3からあるコンテンツを取得するものとする。なお、クライアント装置11からサーバ装置3までの間の総ての転送装置(境界転送装置2を含む)において、当該コンテンツのチャンクはキャッシュされていないものとする。つまり、クライアント装置11が送信する当該コンテンツのチャンクを要求する総てのインタレスト・パケットは、サーバ装置3まで転送され、総てのチャンクが、サーバ装置3から配信されるものとする。また、クライアント装置11とサーバ装置3との間の総てのリンクの物理回線は十分に大きく、かつ、クライアント装置11とサーバ装置3との間の総てのリンクのトラフィック量は十分に小さいものとする。この場合、クライアント装置11は、ウィンドウ・サイズWを順に増加させることができるが、日本とイギリスとの距離が大きいため、クライアント装置11とサーバ装置3との間のリンクに輻輳が生じていない場合においてもラウンドトリップ遅延(RTT)は、凡そ200msになる。つまり、クライアント装置11は、ウィンドウ・サイズWを凡そ200ms毎にしか増加させることができない。この様に、RTTが大きいと、ウィンドウ・サイズWを、サーバ装置3との間の可能なスループットに対応するサイズに増加させるまでの時間が長くなり、コンテンツの取得に要する時間が長くなる。なお、サーバ装置3が日本国内に設置されているものとすると、RTTは凡そ数ms~数十msであり、クライアント装置11は、ウィンドウ・サイズWをサーバ装置3までの可能なスループットに対応するサイズに短時間で増加させることができる。
For example, assume that the
図2は、境界転送装置2の構成図である。処理部22は、複数のインタフェースを有し、基本的には、通常の転送装置と同じ動作を行う。つまり、処理部22は、FIB、PIT、CSを管理し、インタレスト・パケット及びデータ・パケットの転送を行う。また、データ・パケットを受信して転送した場合、当該データ・パケットが格納するチャンクを、所定の基準に従いキャッシュする。処理部22は、通常の転送装置と同じ動作に加えて、あるインタレスト・パケットを転送する場合、当該インタレスト・パケットが要求するチャンクのチャンク名に基づき、当該インタレスト・パケットが事前取得部21での処理対象であるかを判定する。なお、事前取得部21での処理対象の場合、処理部22は、当該インタレスト・パケットを事前取得部21に送信する。なお、事前取得部21にインタレスト・パケットを送信する場合、当該インタレスト・パケットを事前取得部21のみに送信するのではなく、当該インタレスト・パケットをFIBに基づき判定されるインタフェースから転送すると共に、同じインタレスト・パケットを事前取得部21に送信する。
FIG. 2 is a block diagram of the
本実施形態において、チャンク名は、階層構造であり、その階層構造の最上位は国名を示すものとする。例えば、日本国内のサーバ装置が公開するコンテンツの名前は、日本を示すjpで始まり、名前が"A"であるコンテンツの番号1のチャンク名は、例えば、"/jp/・・・/A/1"である。同様に、イギリスのサーバ装置3が公開するコンテンツの名前は、イギリスを示すukで始まり、名前が"A"であるコンテンツの番号1のチャンク名は、例えば、"/uk/・・・/A/1"である。また、htmlファイルの様に、そのサイズが1つのチャンクの最大許容サイズ以下であるコンテンツは、コンテンツ名とチャンク名が等しいものとする。例えば、イギリスのサーバ装置3が公開する、その名前が"/uk/・・・/AAA.html"であるコンテンツは、チャンク名も"/uk/・・・/AAA.html"であるものとする。処理部22は、転送するインタレスト・パケットのうち、要求するチャンク名が外国を示し、かつ、チャンクの番号を有するもの、つまり、複数のチャンクに分割されているコンテンツの内の1つのチャンクを要求するインタレスト・パケットを、事前取得部21の処理対象と判定する。
In this embodiment, the chunk name has a hierarchical structure, and the highest level of the hierarchical structure indicates the country name. For example, the name of the content published by the server device in Japan starts with jp indicating Japan, and the chunk name of
図3は、処理部22におけるインタレスト・パケット受信時の処理フローである。処理部22は、S10で、インタレスト・パケットを受信するまで待機する。インタレスト・パケットを受信すると、処理部22は、S11で、当該インタレスト・パケットがFIBに基づき転送を行うべきものであるか否かを判定する。例えば、キャッシュしているチャンクを要求するインタレスト・パケットや、PITに示されているチャンクを要求するインタレスト・パケットを受信した場合、S11はNoになる。インタレスト・パケットがFIBに基づき転送を行うべきものではないと、処理部22は、S10から処理を繰り返す。一方、インタレスト・パケットがFIBに基づき転送を行うべきものであると、処理部22は、S12で、インタレスト・パケットが、事前取得部21による処理対象であるか否かを判定する。事前取得部21による処理対象であるか否かは、インタレスト・パケットが要求するチャンクのチャンク名に基づき、上述した様に判定する。インタレスト・パケットが、事前取得部21による処理対象ではないと、処理部22は、S10から処理を繰り返す。一方、インタレスト・パケットが事前取得部21による処理対象であると、処理部22は、S13で、インタレスト・パケットを事前取得部21に送信する。なお、処理部22は、図3に示す処理に加えて、通常の転送装置と同じ処理をインタレスト・パケットに対して行う。
FIG. 3 is a processing flow when the
図4は、事前取得部21におけるキュー管理処理のフローチャートである。S20で、事前取得部21は、処理部22からインタレスト・パケットを受信するまで待機する。処理部22からインタレスト・パケットを受信すると、事前取得部21は、S21で、受信したインタレスト・パケットが要求するチャンクのコンテンツに対応するキューが存在するか否かを管理する。インタレスト・パケットが要求するチャンクのコンテンツに対応するキューが存在しないと、事前取得部21は、S22で、当該インタレスト・パケットが要求するチャンクの番号(以下、RNと呼ぶ。)が閾値以下であるかを判定する。RNが閾値より大きいと、事前取得部21は、S20から処理を繰り返す。一方、RNが閾値以下であると、事前取得部21は、S23で、当該コンテンツに対応するキューを作成し、RNをキューに対応付けて保存する。そして、事前取得部21は、S24で、作成したキューに対応するタイマのカウントを開始する。
FIG. 4 is a flowchart of queue management processing in the
一方、S21において、インタレスト・パケットが要求するチャンクのコンテンツに対応するキューが存在すると、事前取得部21は、S25で、受信したインタレスト・パケットの要求チャンクの番号が、当該コンテンツのキューに対応するRNより大きいかを判定する。受信したインタレスト・パケットの要求チャンクの番号が、当該コンテンツのキューに対応するRNより大きいと、事前取得部21は、当該コンテンツのキューに対応するRNを、受信したインタレスト・パケットの要求チャンクの番号に更新する。一方、受信したインタレスト・パケットの要求チャンクの番号が、当該コンテンツのキューに対応するRN以下であると、事前取得部21は、当該コンテンツのキューに対応するRNを変更しない。
On the other hand, if there is a queue corresponding to the content of the chunk requested by the interest packet in S21, the
図5は、事前取得部21におけるインタレスト・パケット送信処理のフローチャートである。S30で、事前取得部21は、タイマのカウント値が所定値に達したキューが存在するかを判定する。タイマのカウント値が所定値に達したキューが存在していないと、事前取得部21は、S30から処理を繰り返す。タイマのカウント値が所定値に達したキューが存在すると、事前取得部21は、S31で、当該キューに対応するRNの値が閾値以下であるかを判定する。なお、本実施形態において、S31で使用する閾値は、図4のS22で使用する閾値と同じとする。しかしながら、S31で使用する閾値と、図4のS22で使用する閾値とを別の値とすることもできる。キューに対応するRNの値が閾値より大きいと、事前取得部21は、S33で、当該キューを廃棄してS30から処理を繰り返す。一方、キューに対応するRNの値が閾値以下であると、事前取得部21は、当該キューに対応するコンテンツのチャンクであって、その番号が、当該キューに対応するRNの値より1だけ大きい値から、所定の値Xだけ大きい値までのチャンクを要求するインタレスト・パケットを生成して、処理部22に送信する。その後、S33で、事前取得部21は、当該キューを廃棄して、S30から処理を繰り返す。
FIG. 5 is a flowchart of interest packet transmission processing in the
なお、処理部22は、事前取得部21から受信するインタレスト・パケットについては、転送処理のみを行い、図3で説明した処理については行わない。また、処理部22は、クライアント装置1から受信したインタレスト・パケットの応答として受信したチャンク(データ・パケット)については、通常の転送装置と同じ転送処理を行う。一方、処理部22は、事前取得部21から受信したインタレスト・パケットの応答として受信したチャンクについてはキャッシュを行い、事前取得部21に転送しない。なお、事前取得部21から受信したインタレスト・パケットの応答として受信したチャンクの総てをキャッシュする容量が無い場合には、チャンクを受信してからの時間が短い程、優先的にキャッシュする。
It should be noted that the
以下、クライアント装置11が、"uk/aaa/videoA.mp4"とのコンテンツ名のコンテンツを取得する場合について説明する。なお、当該コンテンツは10000個のチャンクに分割され、そのチャンク名は、"uk/aaa/videoA.mp4/1"~"uk/aaa/videoA.mp4/10000"であるものとする。また、クライアント装置11は、それまで、コンテンツの取得を行っておらず、ウィンドウ・サイズWは非常に小さい初期値、例えば、4であるものとする。また、事前取得部21が保持する閾値は300であり、所定値Xは150であるものとする。また、初期状態において、クライアント装置11からサーバ装置3までに存在する総ての転送装置は"uk/aaa/videoA.mp4"のいずれのチャンクもキャッシュしていないものとする。
A case where the
ウィンドウ・サイズW=4であるため、クライアント装置11は、"uk/aaa/videoA.mp4/1"~"uk/aaa/videoA.mp4/4"を要求する4つのインタレスト・パケットを連続して送信する。各インタレスト・パケットは、境界転送装置2における転送対象、かつ、事前取得部21での処理対象であるため(図3のS11及びS12)、事前取得部21に送信される。
Since the window size W=4, the
事前取得部21は、いずれのキューも管理していないため、閾値より小さい番号のチャンクである"uk/aaa/videoA.mp4/1"を要求するインタレスト・パケットを受信すると、図4のS23でキューを作成し、当該キューに対応づけてRN=1を保持し、図4のS24で当該キューに対応するタイマのカウントを開始する。続いて、事前取得部21は、"uk/aaa/videoA.mp4/2"を要求するインタレスト・パケットを受信すると、図4のS25で、コンテンツ"uk/aaa/videoA.mp4"のキューに対応するRNを2に更新する。同様に、"uk/aaa/videoA.mp4/3"及び"uk/aaa/videoA.mp4/4"を要求するインタレスト・パケットの受信により、コンテンツ"uk/aaa/videoA.mp4"のキューに対応するRNは4に更新される。
Since the
コンテンツ"uk/aaa/videoA.mp4"に対応するキューのタイマのカウント値が所定値に達すると(図5のS30)、事前取得部21は、S31で、当該キューに対応するRNが閾値である300以下かどうかを判定する。本例では、RN=4と、閾値である300以下であるため、事前取得部21は、S32で、コンテンツ"uk/aaa/videoA.mp4"の番号が5から154のチャンクを要求するインタレスト・パケットを生成して処理部22に送信する。つまり、事前取得部21は、"uk/aaa/videoA.mp4/5"から"uk/aaa/videoA.mp4/154"を要求するインタレスト・パケットを生成して処理部22に送信する。
When the count value of the timer of the queue corresponding to the content "uk/aaa/videoA.mp4" reaches a predetermined value (S30 in FIG. 5), the
これにより、境界転送装置2は、"uk/aaa/videoA.mp4/1"から"uk/aaa/videoA.mp4/154"を要求するインタレスト・パケットをサーバ装置3に向けて送信したことになる。なお、このうち、"uk/aaa/videoA.mp4/1"から"uk/aaa/videoA.mp4/4"は、クライアント装置11が送信したものであり、境界転送装置2は、これらのインタレスト・パケットの応答として受信するデータ・パケットについては通常通り転送する。一方、"uk/aaa/videoA.mp4/5"から"uk/aaa/videoA.mp4/154"を要求するインタレスト・パケットは、事前取得部21が生成したものであるため、処理部22は、これらのインタレスト・パケットの応答として受信する"uk/aaa/videoA.mp4/4"から"uk/aaa/videoA.mp4/154"をキャッシュする。
As a result, the
クライアント装置11は、"uk/aaa/videoA.mp4/1"から"uk/aaa/videoA.mp4/4"を受信すると、ウィンドウ・サイズWを倍の8に設定し、"uk/aaa/videoA.mp4/5"から"uk/aaa/videoA.mp4/12"を要求するインタレスト・パケットを送信するが、これらは境界転送装置2にキャッシュされているため、境界転送装置2は直ちにこれらチャンクをクライアント装置11に送信できる。その後、クライアント装置11は、ウィンドウ・サイズWを倍の16に設定し、"uk/aaa/videoA.mp4/13"から"uk/aaa/videoA.mp4/28"を要求するインタレスト・パケットを送信するが、これらは境界転送装置2にキャッシュされているため、境界転送装置2は直ちにこれらチャンクをクライアント装置11に送信できる。
When the
その後、クライアント装置11が、"uk/aaa/videoA.mp4/155"を要求するインタレスト・パケットを送信すると、境界転送装置2では、コンテンツ"uk/aaa/videoA.mp4"に対応するキューが新たに作成される。例えば、このとき、クライアント装置11のウィンドウ・サイズWが128であると、新たに作成したキューに対応するタイマのカウント値が所定値に達するまでに、事前取得部21は、"uk/aaa/videoA.mp4/252"までを要求するインタレスト・パケットを受信することになる。したがって、境界転送装置2は、図5のS32で、"uk/aaa/videoA.mp4/253"~"uk/aaa/videoA.mp4/402"を要求するインタレスト・パケットを生成して送信する。よって、境界転送装置2は、"uk/aaa/videoA.mp4/253"~"uk/aaa/videoA.mp4/402"を先取りしてキャッシュすることができ、クライアント装置11は、"uk/aaa/videoA.mp4/253"~"uk/aaa/videoA.mp4/402"を短い時間で取得することができる。
After that, when the
この様に、ウィンドウ・サイズWが閾値より小さいとき、クライアント装置11が取得しているコンテンツを境界転送装置2が先取りしてキャッシュしておくことで、クライアント装置11のウィンドウ・サイズWを素早く増加させることができ、よって、クライアント装置11によるコンテンツのダウンロード時間を短縮することができる。なお、その後、クライアント装置11が、"uk/aaa/videoA.mp4/403"を要求するインタレスト・パケットを送信した際には、図4のS22はNoとなり、キューは作成されない。
In this way, when the window size W is smaller than the threshold, the
続いて、クライアント装置11が、"uk/aaa/video.html"とのコンテンツ名のコンテンツを取得する場合について説明する。当該コンテンツのサイズは、1つのチャンクの最大データ量以下であるため、チャンク名は、コンテンツ名に等しく、チャンク番号を有さない。この場合、クライアント装置11は、"uk/aaa/video.html"を要求するインタレスト・パケットを送信するが、チャンク番号がないことより、事前取得部21での処理対象ではない(図3のS12)。したがって、当該インタレスト・パケットは、事前取得部21に送信されない。
Next, a case where the
続いて、クライアント装置12が、"uk/aaa/videoB.mp4"とのコンテンツ名のコンテンツを取得する場合について説明する。なお、当該コンテンツは10000個のチャンクに分割され、そのチャンク名は、"uk/aaa/videoB.mp4/1"~"uk/aaa/videoB.mp4/10000"であるものとする。また、クライアント装置12は、それまでにも他のコンテンツの取得を行っており、ウィンドウ・サイズWは、それまでのコンテンツの取得のスループットに応じた値、例えば、1024であるものとする。また、事前取得部21が保持する閾値は300であり、所定値Xは150であるものとする。また、初期状態において、クライアント装置12からサーバ装置3までに存在する総ての転送装置は"uk/aaa/videoB.mp4"のいずれのチャンクもキャッシュしていないものとする。
Next, a case where the
ウィンドウ・サイズW=1024であるため、クライアント装置12は、"uk/aaa/videoB.mp4/1"~"uk/aaa/videoB.mp4/1024"を要求する1024個のインタレスト・パケットを連続して送信する。各インタレスト・パケットは、境界転送装置2における転送対象、かつ、事前取得部12での処理対象であるため、事前取得部21に送信される。事前取得部21は、"uk/aaa/videoB.mp4/1"を要求するインタレスト・パケットを受信すると、図4のS23でキューを作成し、当該キューに対応づけてRN=1を記録し、図4のS24で当該キューに対応するタイマのカウントを開始する。続いて、事前取得部21は、"uk/aaa/videoB.mp4/2"を要求するインタレスト・パケットを受信すると、図4のS25で、コンテンツ"uk/aaa/videoB.mp4"のキューに対応するRNを2に更新する。同様に、"uk/aaa/videoB.mp4/3"~"uk/aaa/videoB.mp4/1024"を要求するインタレスト・パケットの受信により、コンテンツ"uk/aaa/videoB.mp4"のキューに対応するRNは1024に更新される。
Since the window size W=1024, the
コンテンツ"uk/aaa/videoB.mp4"のキューに対応するタイマのカウント値が所定値に達すると(図5のS30)、事前取得部21は、S31で、当該キューのRNが閾値である300以下かどうかを判定する。本例では、RN=1024と、閾値である300より大きいため、事前取得部21は、S33で、コンテンツ"uk/aaa/videoB.mp4"のキューを廃棄する。つまり、事前取得部21は、コンテンツ"uk/aaa/videoB.mp4"のチャンクを要求するインタレスト・パケットを生成して送信しない。この様に、クライアント装置12のウィンドウ・サイズWが十分に大きい場合(閾値より大きい場合)、境界転送装置2による先取りの効果は少ないため、境界転送装置2は、チャンクの先取りを行わない。
When the count value of the timer corresponding to the queue of the content "uk/aaa/videoB.mp4" reaches a predetermined value (S30 in FIG. 5), the
続いて、クライアント装置12が、"uk/aaa/videoC.mp4"とのコンテンツ名のコンテンツを取得する場合について説明する。なお、当該コンテンツは10000個のチャンクに分割され、そのチャンク名は、"uk/aaa/videoC.mp4/1"~"uk/aaa/videoC.mp4/10000"であるものとする。また、"uk/aaa/videoC.mp4/1"~"uk/aaa/videoC.mp4/4000"は、ローカルネットワーク4内の転送装置にキャッシュされており、クライアント装置12は、"uk/aaa/videoC.mp4/1"~"uk/aaa/videoC.mp4/4000"をローカルネットワーク4から取得済であるものとする。また、これにより、クライアント装置12のウィンドウ・サイズWは、それまでのコンテンツの取得のスループットに応じた値、例えば、1024であるものとする。なお、クライアント装置12からサーバ装置3までに存在する総ての転送装置は"uk/aaa/videoC.mp4/4001"~"uk/aaa/videoC.mp4/10000"のいずれもキャッシュしていないものとする。さらに、事前取得部21が保持する閾値は300であり、所定値Xは150であるものとする。
Next, a case where the
ウィンドウ・サイズW=1024であるため、クライアント装置12は、"uk/aaa/videoC.mp4/4001"~"uk/aaa/videoC.mp4/5024"を要求する1024個のインタレスト・パケットを連続して送信する。各インタレスト・パケットは、境界転送装置2における転送対象、かつ、事前取得部21での処理対象であるため、事前取得部21に送信される。事前取得部21は、"uk/aaa/videoC.mp4/4001"を要求するインタレスト・パケットを受信するが、要求しているチャンクの番号が1001と、閾値である300より大きいため、キューは作成されない(S22)。この様に、閾値より大きいチャンクを要求するクライアント装置のウィンドウ・サイズWは、通常、十分に大きく、よって、境界転送装置2による先取りの効果は少ないため、境界転送装置2は、チャンクの先取りを行わない。
Since the window size W=1024, the
上記の通り、境界転送装置2は、事前取得処理により多数のインタレスト・パケット(上記例では、X=150のインタレスト・パケット)を送信する。境界転送装置2が、この多数のインタレスト・パケットを連続して送信し、その応答として、サーバ装置3が多数のデータ・パケットを送信すると、サーバ装置3から境界転送装置2に至る区間において輻輳を生じさせ得る。したがって、事前取得部21は、サーバ装置3から境界転送装置2に至る区間において輻輳を生じさせない様に、事前取得処理により送信するインタレスト・パケットの送信タイミングを制御する。なお、インタレスト・パケットのサイズは、データ・パケットのサイズと比較して非常に小さいため、サーバ装置3から境界転送装置2に至る区間において多数のデータ・パケットによる輻輳を生じさせない様にすれば、境界転送装置2からサーバ装置3に至る区間において多数のインタレスト・パケットによる輻輳も生じない。
As described above, the
以下、事前取得部21によるインタレスト・パケットの送信タイミングの制御について説明する。図6は、事前取得処理のシーケンスの概略を示している。上述した様に、事前取得部21には、事前取得処理で送信するインタレスト・パケットの最大数X(上記例では150)が設定されている。また、クライアント装置11及び12は、通常、ウィンドウ・サイズWに従い、複数のインタレスト・パケットを連続して、つまり、バースト的に送信する。以下では、クライアント装置11及び12が、ウィンドウ・サイズWに従い複数のインタレスト・パケットをバースト的に送信することを、インタレスト・パケットの"バースト送信"と表記する。
The control of the transmission timing of the interest packet by the
例えば、ウィンドウ・サイズWが初期値の4であるクライアント装置11が、あるコンテンツの取得を開始する場合、クライアント装置11は、まず、番号1~4のチャンクを要求するインタレスト・パケットをバースト送信する。これにより、上述した様に、境界転送装置2は、当該コンテンツの番号5~154のチャンクを事前取得処理で取得してキャッシュする。
For example, when the
クライアント装置11は、バースト送信したインタレスト・パケットの応答としてのデータ・パケットを受信すると、上述した様に、ウィンドウ・サイズWを増加させながらインタレスト・パケットのバースト送信を繰り返す。上記例において、クライアント装置11は、ウィンドウ・サイズWを、8、16、32、64、128・・・と増加させながらインタレスト・パケットのバースト送信を行う。なお、ウィンドウ・サイズW=8のときのインタレスト・パケットのバースト送信により、クライアント装置11は、番号5~12のチャンクを取得する。また、ウィンドウ・サイズW=16のときのインタレスト・パケットのバースト送信により、クライアント装置11は、番号13~28のチャンクを取得する。さらに、ウィンドウ・サイズW=32のときのインタレスト・パケットのバースト送信により、クライアント装置11は、番号29~60のチャンクを取得する。さらに、ウィンドウ・サイズW=64のときのインタレスト・パケットのバースト送信により、クライアント装置11は、番号61~124のチャンクを取得する。さらに、ウィンドウ・サイズW=128のときのインタレスト・パケットのバースト送信により、クライアント装置11は、番号125~252のチャンクを取得する。なお、この内、番号125~154のチャンクは、事前取得処理で取得されたものである。
When the
この様に、上記例において、クライアント装置11は、インタレスト・パケットのバースト送信を5回行うことで、境界転送装置2が事前取得処理で取得した番号5~154のチャンクを取得する。
In this way, in the above example, the
図6は、上記内容を一般化したシーケンス図である。なお、クライアント装置11と境界転送装置2との間のラウンドトリップ遅延をt1とし、境界転送装置2とサーバ装置3との間のラウンドトリップ遅延をt2とする。S1(時刻0)で、クライアント装置11は、インタレスト・パケットのバースト送信を行う。これらのインタレスト・パケットは、時刻t1/2において境界転送装置2により受信され、これをトリガとして、境界転送装置2は、事前取得処理を開始する。なお、図4及び図5で説明した様に、境界転送装置2は、実際には、時刻t1/2からタイマのカウント値が所定値に達するまで待って事前取得処理を開始するが、この期間はラウンドトリップ遅延より十分小さいため無視できる。クライアント装置11がS1でバースト送信したインタレスト・パケットは、S2で境界転送装置2からサーバ装置3に転送される。サーバ装置3は、S2で受信したインタレスト・パケットのバースト送信の応答として、S3で複数のデータ・パケットを送信する。境界転送装置2は、S4で、この複数のデータ・パケットをクライアント装置11に転送する。クライアント装置11は、時刻t2+t1において、これらのデータ・パケットを受信する。
FIG. 6 is a sequence diagram generalizing the above contents. The round-trip delay between the
その後、クライアント装置11は、ウィンドウ・サイズWを増加させながら、インタレスト・パケットのバースト送信を繰り返す(S5~S6)。なお、境界転送装置2は、事前取得処理によりチャンクを先取りしているため、クライアント装置11は、S5からは境界転送装置2がキャッシュしているチャンクを取得することになる。したがって、S5(1回目)におけるインタレスト・パケットのバースト送信の応答としてのデータ・パケットをクライアント装置11は、時刻t2+2t1において受信する。同様に、S6(m回目)におけるインタレスト・パケットのバースト送信の応答としてのデータ・パケットをクライアント装置11は、時刻t2+(m+1)t1において受信する。
Thereafter, the
例えば、時刻t1/2で開始する事前取得処理において、境界転送装置2は、クライアント装置11によるインタレスト・パケットのm回(S5~S6)のバースト送信の応答として送信するX個のチャンクを取得するものとする。なお、X及びm(整数)の値は予め境界転送装置2に設定されているものとする。この場合、境界転送装置2は、時刻t2+mt1+t1/2までにX個のチャンクを取得すれば良い。ここで、境界転送装置2とサーバ装置3との間のラウンドトリップ遅延はt2である。したがって、境界転送装置2は、事前取得処理のためのX個のインタレスト・パケットを、時刻(mt1+t1/2)までに送信すれば良いことになる。事前取得処理の開始時刻はt1/2であるため、境界転送装置2が、時刻t1/2から時刻(mt1+t1/2)の間において、インタレスト・パケットを略等しい間隔で送信することで、データ・パケットの送信がバースト的となることによる輻輳の発生を抑えることができる。
For example, in the pre-acquisition process starting at time t 1 /2, the
つまり、境界転送装置2は、期間(mt1+t1/2-t1/2)=mt1で求められる送信期間の間に、X個のインタレスト・パケットを平均的に送信する。言い換えると、境界転送装置2は、X個のインタレストを、mt1/Xの周期で送信する。なお、境界転送装置2は、クライアント装置とのラウンドトリップ遅延を事前に測定しているものとする。
That is, the
なお、サーバ装置3から境界転送装置2に至る経路において利用可能な伝送速度S(スループットの上限値)に基づき、事前取得処理で取得するチャンクの数Xを制御する構成とすることもできる。まず、チャンクのサイズが一定であり、よって、データ・パケットのサイズがDで一定であるものとする。また、境界転送装置2が事前取得処理で取得するチャンクの基準数(初期数)をX0とする。事前取得処理によりX0個のインタレスト・パケットを送信するものとすると、境界転送装置2がその応答として取得するデータ・パケットの総サイズはX0×Dとなる。このデータ・パケットを、期間mt1で受信する場合、サーバ装置3から境界転送装置2に至る経路においては、平均的にX0×D/mt1の伝送速度のトラフィックが事前取得によって発生する。境界転送装置2は、SとX0×D/mt1と、を比較し、S≧X0×D/mt1であれば、事前取得処理によりX0個のインタレスト・パケットを送信する。一方、S<X0×D/mt1の場合、事前取得処理により送信するインタレスト・パケットの数を減少させる。減少後の数Xは、S≧X×D/mt1を満たすもの、例えば、X≦S×mt1/Dを満たすXの最大値とすることができる。
Note that the number X of chunks acquired in the pre-acquisition process may be controlled based on the transmission speed S (upper limit of throughput) available on the route from the
以上の構成により、事前取得処理による輻輳の発生を抑えることができる。 With the above configuration, it is possible to suppress the occurrence of congestion due to pre-acquisition processing.
なお、本実施形態において、処理部22は、インタレスト・パケットが要求するチャンク名に基づき事前取得部21での処理対象であるか否かを判定した。より詳しくは、インタレスト・パケットが要求するチャンク名が、外国を示していることを事前取得部21での処理対象とするための条件の1つとした。しかしながら、国名ではなく、ある所定の地域を示す名前であることを事前取得部21での処理対象とするための条件の1つとすることもできる。また、チャンク名ではなく、FIBが示す転送先のインタフェースが、所定のインタフェースであることを、事前取得部21での処理対象とするための条件の1つとすることもできる。この所定のインタフェースは、例えば、伝送遅延が所定値以上の通信リンクに接続するインタフェースである。
In this embodiment, the
また、転送装置として動作する処理部22と、事前取得処理を行う事前取得部21とを、個別の装置として実現することもできる。
Also, the
図7は、本実施形態による境界転送装置の別の構成図である。転送部23は、通常の転送装置と同様に、FIB、PIT、CSを管理し、インタレスト・パケット及びデータ・パケットの転送と、キャッシュを管理する。
FIG. 7 is another configuration diagram of the boundary transfer device according to this embodiment. The
判定部24は、クライアント装置から受信するインタレスト・パケット(以下、要求パケット)を監視する。そして、判定部24は、クライアント装置から同じ要求コンテンツのチャンクを要求する複数の第1要求パケットを受信すると、複数の第1要求パケットに基づき要求コンテンツの事前取得処理を行うか否かを判定する。
The
例えば、判定部24は、複数の第1要求パケットが転送されるものであり、かつ、要求コンテンツを公開しているサーバ装置3の設置場所が所定の場所(所定の国または地域)であることを、要求コンテンツの事前取得処理を行うと判定するための条件の1つとすることができる。なお、サーバ装置3の設置場所は、複数の第1要求パケットが要求しているチャンク名に基づき判定することができる。
For example, the
また、判定部24は、複数の第1要求パケットの転送先の通信リンクが、境界転送装置2に接続される複数の通信リンクのうちの所定の通信リンクであることを、要求コンテンツの事前取得処理を行うと判定するための条件の1つとすることができる。所定の通信リンクは、例えば、伝送遅延が所定値以上、つまり、所定の長さ以上の通信リンクであり得る。
In addition, the
また、判定部24は、所定期間に受信した複数の第1要求パケットの数が所定値より少ないことを、要求コンテンツの事前取得処理を行うと判定するための条件の1つとすることができる。なお、所定期間は、タイマを開始してからタイマのカウント値が所定値に達する時間に対応する(図5のS30)。所定期間に受信した複数の第1要求パケットの数が所定値より少ないことは、クライアント装置のウィンドウ・サイズが小さいことを意味しているため、事前取得処理によりクライアント装置のウィンドウ・サイズを素早く大きくすることができる。
Further, the
さらに、判定部24は、所定期間に受信した複数の第1要求パケットが要求するチャンクの番号の最大値が、閾値より小さいことを、要求コンテンツの事前取得処理を行うと判定するための条件の1つとすることができる。
Further, the
判定部24が要求コンテンツの事前取得処理を行うと判定すると、送信処理部26は、要求コンテンツのチャンクの内、複数の第1要求パケットが要求するチャンクとは異なるチャンクをそれぞれが要求する複数の第2要求パケットを生成し、転送部23を介して送信する。複数の第2要求パケットの数X0は、送信処理部26に事前設定されている。なお、このとき、送信処理部26は、複数の第1要求パケットを送信したクライアント装置との間のラウンドトリップ遅延t1に基づき複数の第2要求パケットの送信間隔を制御する。例えば、送信処理部26は、ラウンドトリップ遅延t1に基づき送信期間を求め、この送信期間に渡り複数の第2要求パケットを周期的に送信する。送信期間は、例えば、ラウンドトリップ遅延t1を整数倍(m倍)した期間とすることができる。なお、mの値は、送信処理部26に事前設定されている。
When the
また、送信処理部26は、複数の第2要求パケットの数を可変とすることができる。この場合、送信処理部26に、各データ・パケットのサイズDと、スループットの上限値Sとを事前設定しておく。送信処理部26は、例えば、S<X0×D/mt1の場合、複数の第2要求パケットの数をX0から減少させる。減少後の数Xは、S≧X×D/mt1を満たすもの、例えば、X≦S×mt1/Dを満たすXの最大値とすることができる。この構成により、事前取得処理による輻輳の発生を抑えることができる。なお、スループットの上限値Sを境界転送装置2が測定により取得する構成とすることもできる。
Also, the
なお、複数の第2要求パケットについては、複数の第1要求パケットが要求するチャンクの番号の最大値より大きい番号のチャンク、つまり、複数の第1要求パケットが要求するチャンクより時間的に後のチャンクを要求するものとする。例えば、複数の第2要求パケットが要求するチャンクは、複数の第1要求パケットが要求するチャンクの番号の最大値に1を加えた番号から複数の第2要求パケットの数を加えた番号までのチャンクとすることができる。 Note that, regarding the plurality of second request packets, chunks with numbers larger than the maximum number of chunks requested by the plurality of first request packets, that is, chunks later in time than the chunks requested by the plurality of first request packets. shall request chunks. For example, chunks requested by a plurality of second request packets range from a number obtained by adding 1 to the maximum number of chunks requested by a plurality of first request packets to a number obtained by adding the number of the plurality of second request packets. Can be chunked.
また、本発明による境界転送装置2は、1つ以上のプロセッサを有する装置・コンピュータの当該1つ以上のプロセッサで実行されると、当該装置・コンピュータを上記境界転送装置2として動作・機能させるプログラムにより実現することができる。これらコンピュータプログラムは、コンピュータが読み取り可能な記憶媒体に記憶されて、又は、ネットワーク経由で配布が可能なものである。
Further, the
上記構成により、事前取得処理において輻輳を抑えることができる。よって、国連が主導する持続可能な開発目標(SDGs)の目標9「レジリエントなインフラを整備し、持続可能な産業化を推進するとともに、イノベーションの拡大を図る」に貢献することが可能となる。 With the above configuration, congestion can be suppressed in the pre-acquisition process. Therefore, it will be possible to contribute to Goal 9 of the Sustainable Development Goals (SDGs) led by the United Nations, "Build resilient infrastructure, promote sustainable industrialization, and foster innovation."
24:判定部、26:送信処理部 24: determination unit, 26: transmission processing unit
Claims (13)
クライアント装置から要求コンテンツのチャンクを要求する複数の第1要求パケットを受信すると、前記複数の第1要求パケットに基づき前記要求コンテンツの事前取得処理を行うか否かを判定する判定手段と、
前記要求コンテンツの事前取得処理を行うと判定すると、前記要求コンテンツのチャンクの内、前記複数の第1要求パケットが要求するチャンクとは異なるチャンクをそれぞれが要求する複数の第2要求パケットを生成して送信する送信手段と、
を備え、
前記送信手段は、前記クライアント装置との間のラウンドトリップ遅延に基づき前記複数の第2要求パケットの送信間隔を制御することを特徴とする転送装置。 A transfer device for a content distribution network that distributes content by dividing it into one or more chunks,
determining means for determining, when receiving a plurality of first request packets requesting chunks of requested content from a client device, whether or not to perform pre-acquisition processing of the requested content based on the plurality of first request packets;
when determining to perform pre-acquisition processing of the requested content, generating a plurality of second request packets each requesting a chunk different from chunks requested by the plurality of first request packets, among chunks of the requested content. a transmission means for transmitting the
with
The transfer device, wherein the transmission means controls transmission intervals of the plurality of second request packets based on a round-trip delay with the client device.
前記判定手段は、前記所定期間に受信した前記複数の第1要求パケットが要求するチャンクの番号の最大値が、閾値より小さいことを、前記要求コンテンツの事前取得処理を行うと判定するための条件の1つとすることを特徴とする請求項10に記載の転送装置。 The chunk name of each of the one or more chunks into which the content is divided has a chunk number,
A condition for determining that the pre-acquisition process of the requested content is to be performed when the maximum value of the number of chunks requested by the plurality of first request packets received in the predetermined period is smaller than a threshold value. 11. The transfer device according to claim 10, wherein the transfer device is one of:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021035583A JP7460569B2 (en) | 2021-03-05 | 2021-03-05 | Content distribution network transfer device and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021035583A JP7460569B2 (en) | 2021-03-05 | 2021-03-05 | Content distribution network transfer device and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2022135642A true JP2022135642A (en) | 2022-09-15 |
JP7460569B2 JP7460569B2 (en) | 2024-04-02 |
Family
ID=83232004
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021035583A Active JP7460569B2 (en) | 2021-03-05 | 2021-03-05 | Content distribution network transfer device and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7460569B2 (en) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4126928B2 (en) | 2002-02-28 | 2008-07-30 | 日本電気株式会社 | Proxy server and proxy control program |
JP6187780B2 (en) | 2012-10-24 | 2017-08-30 | パナソニックIpマネジメント株式会社 | COMMUNICATION SYSTEM, RECEPTION TERMINAL, TRANSMISSION TERMINAL, AND FLOW CONTROL METHOD |
JP7022030B2 (en) | 2018-08-08 | 2022-02-17 | Kddi株式会社 | Content delivery network transporter |
JP7028811B2 (en) | 2019-01-29 | 2022-03-02 | Kddi株式会社 | Content delivery network transporter |
-
2021
- 2021-03-05 JP JP2021035583A patent/JP7460569B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP7460569B2 (en) | 2024-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8320916B2 (en) | Method and apparatus for pre-fetching data in a mobile network environment using edge data storage | |
US11483231B2 (en) | Context-aware path computation and selection | |
US11770430B2 (en) | Methods and apparatus for delivering content | |
US9571407B2 (en) | Strategically scheduling TCP stream transmissions | |
KR20130093813A (en) | A communication method of node prefetching segments of contents in a content centric network and the node | |
CN110856007B (en) | Content distribution network, storage optimization method thereof, electronic device, and storage medium | |
RU2011141861A (en) | METHOD, DEVICE AND SYSTEM FOR SENDING A DATA PACKAGE | |
WO2020096879A1 (en) | Methods and apparatuses for content delivery over mobile networks with multi-access edge computing (mec) control and user plane separation (cups) | |
US11212359B2 (en) | Transfer apparatus for content distribution network | |
JP2022135642A (en) | Transfer device for content distribution network and program | |
JP6223151B2 (en) | Distribution server distribution system, distribution server management device, and reception device | |
JP7028811B2 (en) | Content delivery network transporter | |
KR20140145716A (en) | Apparatus and method for delivering and receiving data in mobile content network | |
WO2021073000A1 (en) | Method, plug-in, and device for data scheduling, and scheduling server | |
JP2017037411A (en) | Transfer device for content distribution network, server device, and program | |
JP6348377B2 (en) | Communication device and program for content distribution network | |
JP2016115210A (en) | Communication apparatus of content distribution network and program | |
KR20230044079A (en) | Control method of node included in information centric network, and system | |
JP5366256B2 (en) | Transmission control method and system | |
WO2019070017A1 (en) | Data communication device, communication system, data communication method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230302 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20240129 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240209 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240226 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20240311 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240321 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7460569 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |