JP2022135642A - Transfer device for content distribution network and program - Google Patents

Transfer device for content distribution network and program Download PDF

Info

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
Application number
JP2021035583A
Other languages
Japanese (ja)
Other versions
JP7460569B2 (en
Inventor
一暁 植田
Kazuaki Ueda
敦士 田上
Atsushi Tagami
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
KDDI Corp
Original Assignee
KDDI Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by KDDI Corp filed Critical KDDI Corp
Priority to JP2021035583A priority Critical patent/JP7460569B2/en
Publication of JP2022135642A publication Critical patent/JP2022135642A/en
Application granted granted Critical
Publication of JP7460569B2 publication Critical patent/JP7460569B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

To provide a technique that prevents congestion in pre-acquisition processing.SOLUTION: A transfer device for a content distribution network divides a content into one or more chunks and distributes the chunks, and comprises: determination means that, when receiving a plurality of first request packets for requesting chunks of a request content from a client device, determines whether or not to perform pre-acquisition processing of the request content based on the plurality of first request packets; and transmission means that, when determining to perform the pre-acquisition processing of the request content, generates and transmits a plurality of second request packets for requesting chunks, of the chunks of the request content, which are different from the chunks requested by the plurality of first request packets. The transmission means controls the transmission interval between the plurality of second request packets based on the round-trip delay between the client device and the transmission means.SELECTED DRAWING: Figure 6

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内に境界転送装置を設ける。境界転送装置は、遅延の大きいリンク(以下、長距離リンク)に接続される。境界転送装置は、同じコンテンツ(要求コンテンツ)のチャンクを要求し、かつ、長距離リンクに転送される複数のインタレスト・パケットが所定条件を満たす場合、要求コンテンツの"事前取得処理"を開始する。要求コンテンツの"事前取得処理"とは、要求コンテンツのチャンクの内、受信して転送した複数のインタレスト・パケットが要求しているチャンクより時間的に後の複数のチャンクを、クライアント装置からインタレスト・パケットを受信する前に予め取得する動作を意味する。 Patent Literature 1 discloses a configuration for shortening the acquisition time of content by a client device. According to Patent Document 1, a boundary forwarding device is provided within a CCN. The edge forwarding device is connected to a link with a large delay (hereinafter referred to as a long distance link). A border forwarding device initiates a "pre-acquisition" of requested content when multiple interest packets requesting the same chunk of content (requested content) and being forwarded to the long-distance link meet a predetermined condition. The "pre-acquisition processing" of the requested content means that, among the chunks of the requested content, a plurality of chunks temporally later than the chunk requested by the received and transferred interest packets are received from the client device. It means the operation of acquiring in advance before receiving a packet.

特開2020-123776号公報JP 2020-123776 A

特許文献1は、事前取得処理により、クライアント装置が将来的に要求する可能性の高い複数のチャンクを事前に取得することで、クライアント装置によるコンテンツの取得時間を短縮させている。しかしながら、事前取得処理において境界転送装置が多数のインタレスト・パケットを生成して送信することは輻輳の原因となり得る。 Patent document 1 shortens the content acquisition time by the client device by acquiring in advance a plurality of chunks that are highly likely to be requested by the client device in the future through pre-acquisition processing. However, the generation and transmission of a large number of interest packets by the edge forwarding device in the pre-acquisition process can cause congestion.

本発明は、事前取得処理において輻輳を抑える技術を提供するものである。 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.

一実施形態によるコンテンツ配信ネットワークの構成図。1 is a block diagram of a content distribution network according to one embodiment; FIG. 一実施形態による境界転送装置の構成図。1 is a configuration diagram of a boundary transfer device according to an embodiment; FIG. 一実施形態による処理部における処理のフローチャート。4 is a flowchart of processing in a processing unit according to one embodiment; 一実施形態による事前取得部におけるキュー管理処理のフローチャート。4 is a flowchart of queue management processing in the pre-acquisition unit according to one embodiment; 一実施形態による事前取得部におけるインタレスト・パケット生成処理のフローチャート。4 is a flowchart of interest packet generation processing in the pre-acquisition unit according to one embodiment. 一実施形態による事前取得処理の概略を示すシーケンス図。4 is a sequence diagram showing an outline of pre-acquisition processing according to one embodiment; FIG. 一実施形態による境界転送装置の構成図。1 is a configuration diagram of a boundary transfer device according to an embodiment; FIG.

以下、添付図面を参照して実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものでなく、また実施形態で説明されている特徴の組み合わせの全てが発明に必須のものとは限らない。実施形態で説明されている複数の特徴のうち二つ以上の特徴が任意に組み合わされてもよい。また、同一若しくは同様の構成には同一の参照番号を付し、重複した説明は省略する。 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 server device 3 that publishes content, client devices 11 and 12 that acquire content according to CCN, and a border transfer device 2 . The client devices 11 and 12 and the border forwarding device 2 are connected to a local network 4 consisting of the usual forwarding devices of the CCN mentioned above. In FIG. 1, client devices 11 and 12, boundary transfer device 2 and local network 4 are provided in Japan. On the other hand, the server device 3 is provided outside the country, for example, in England. The boundary transfer device 2 and the server device 3 are configured to be able to communicate via a global network composed of normal transfer devices and the boundary transfer device 2 according to this embodiment. The content distribution network also has a server device provided in Japan, but it is omitted because it is not relevant to the description of the present embodiment. In addition to the server device 3, the content distribution network has server devices installed in various countries other than Japan, but they are omitted for the sake of simplification of explanation.

本実施形態において、日本国内に設置されたクライアント装置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 client devices 11 and 12 installed in Japan acquires content published by a server device such as the server device 3 installed in a country other than Japan, the client device in Japan The FIB of the forwarding device of the local network 4 is set so that the interest packet transmitted by the device is forwarded to the border forwarding device 2 . In this embodiment, to simplify the explanation, it is assumed that only one boundary transfer device 2 is installed in Japan, but a configuration in which multiple boundary transfer devices 2 are installed in Japan is also possible. can. For example, the boundary transfer device 2 is installed in Tokyo and Osaka, and among the interest packets requesting the content published by the server device 3, the interest packet sent by the client device in eastern Japan is sent by the boundary transfer device installed in Tokyo. 2, and the FIB of the transfer device of the local network 4 is set so that the interest packet sent by the client device in western Japan is transferred to the boundary transfer device 2 installed in Osaka. .

クライアント装置11及び12は、ウィンドウ・サイズWと、送信したインタレスト・パケットのうち、その応答としてデータ・パケットを受信していないインタレスト・パケットの数Uを管理する。ウィンドウ・サイズWは、数Uの最大許容値を規定する。例えば、ウィンドウ・サイズW=4であると、クライアント装置11及び12は、まず、4つのインタレスト・パケットまで連続して送信することができる。そして、4つのインタレスト・パケットを送信すると、当該4つのインタレスト・パケットのいずれかのインタレスト・パケットの応答としてのデータ・パケットを受信するまで、クライアント装置11及び12は、新たなインタレスト・パケットを送信することができない。また、当該4つのインタレスト・パケットのうちの1つのインタレスト・パケットの応答としてのデータ・パケットを受信すると、クライアント装置11及び12は、新たに1つのインタレスト・パケットを送信することがでる。 The client devices 11 and 12 manage the window size W and the number U of interest packets for which no data packet is received as a response among the transmitted interest packets. The window size W defines the maximum allowable value of number U. For example, with window size W=4, client devices 11 and 12 can initially send up to four interest packets in succession. Then, after transmitting the four Interest packets, the client devices 11 and 12 transmit new Interest packets until receiving a data packet in response to any of the four Interest packets. Can not do it. Also, upon receiving a data packet as a response to one of the four Interest packets, the client devices 11 and 12 can transmit one new Interest packet.

また、クライアント装置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 client devices 11 and 12 increase or decrease the window size W according to whether or not they have received data packets within a predetermined period as responses to the transmitted interest packets. For example, let the initial value of the window size W be four. In this case, the client devices 11 and 12 double the window size W to 8 after transmitting four interest packets and receiving data packets for all of them within a predetermined period of time. Since the window size W=8, client devices 11 and 12 are able to send 8 interest packets in succession. After sending eight interest packets, the client devices 11 and 12 double the window size W to 16 when they receive data packets for all of them within a predetermined period of time. Thus, in this embodiment, the client devices 11 and 12 double the window size W when all responses to the transmitted interest packets are received within a predetermined period of time. In other words, the client devices 11 and 12 set the window size W to 4, 8, 16, 32, 64, 128 when the amount of traffic on the content distribution network is small and the responses to the transmitted interest packets are received within a predetermined period. , 256 . On the other hand, the client devices 11 and 12 halve the window size W if they do not receive at least one response to the transmitted interest packet within a predetermined period. By gradually increasing the window size W step by step in this way, it is possible to appropriately control the amount of interest packets to be transmitted according to the traffic conditions of the content distribution network. There are various methods for controlling the window size W other than the method described above. be able to.

例えば、クライアント装置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 client device 11 acquires certain content from the server device 3 . It is assumed that none of the transfer devices (including the boundary transfer device 2) between the client device 11 and the server device 3 cache the chunk of the content. In other words, it is assumed that all interest packets requesting chunks of the content transmitted by the client device 11 are transferred to the server device 3 and all chunks are delivered from the server device 3 . Also, the physical lines of all links between the client device 11 and the server device 3 are sufficiently large, and the traffic volume of all links between the client device 11 and the server device 3 is sufficiently small. and In this case, the client device 11 can sequentially increase the window size W. However, since the distance between Japan and the United Kingdom is long, the link between the client device 11 and the server device 3 is not congested. The round-trip delay (RTT) is also around 200ms. In other words, the client device 11 can only increase the window size W approximately every 200 ms. Thus, when the RTT is large, it takes a long time to increase the window size W to a size corresponding to the possible throughput with the server device 3, and the time required to acquire the content becomes long. Assuming that the server device 3 is installed in Japan, the RTT is about several ms to several tens of ms, and the client device 11 sets the window size W to correspond to the possible throughput up to the server device 3. It can be increased in size in a short time.

図2は、境界転送装置2の構成図である。処理部22は、複数のインタフェースを有し、基本的には、通常の転送装置と同じ動作を行う。つまり、処理部22は、FIB、PIT、CSを管理し、インタレスト・パケット及びデータ・パケットの転送を行う。また、データ・パケットを受信して転送した場合、当該データ・パケットが格納するチャンクを、所定の基準に従いキャッシュする。処理部22は、通常の転送装置と同じ動作に加えて、あるインタレスト・パケットを転送する場合、当該インタレスト・パケットが要求するチャンクのチャンク名に基づき、当該インタレスト・パケットが事前取得部21での処理対象であるかを判定する。なお、事前取得部21での処理対象の場合、処理部22は、当該インタレスト・パケットを事前取得部21に送信する。なお、事前取得部21にインタレスト・パケットを送信する場合、当該インタレスト・パケットを事前取得部21のみに送信するのではなく、当該インタレスト・パケットをFIBに基づき判定されるインタフェースから転送すると共に、同じインタレスト・パケットを事前取得部21に送信する。 FIG. 2 is a block diagram of the boundary transfer device 2. As shown in FIG. The processing unit 22 has a plurality of interfaces and basically performs the same operation as a normal transfer device. That is, the processing unit 22 manages the FIB, PIT, and CS, and transfers interest packets and data packets. Also, when a data packet is received and transferred, the chunk stored in the data packet is cached according to a predetermined criterion. In addition to the same operation as a normal transfer device, the processing unit 22, when transferring a certain Interest packet, acquires the Interest packet based on the chunk name of the chunk requested by the Interest packet. Determine whether it is a processing target. Note that if the interest packet is to be processed by the pre-acquisition unit 21 , the processing unit 22 transmits the interest packet to the pre-acquisition unit 21 . Note that when transmitting an Interest packet to the pre-acquisition unit 21, the Interest packet is not transmitted only to the pre-acquisition unit 21, but is transferred from an interface determined based on the FIB. The interest packet is transmitted to the pre-acquisition unit 21 .

本実施形態において、チャンク名は、階層構造であり、その階層構造の最上位は国名を示すものとする。例えば、日本国内のサーバ装置が公開するコンテンツの名前は、日本を示す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 number 1 of the content whose name is "A" is, for example, "/jp/.../A/ 1". Similarly, the name of the content published by the server device 3 in England starts with uk indicating the United Kingdom, and the chunk name of number 1 of the content whose name is "A" is, for example, "/uk/.../A /1". Also, content whose size is equal to or less than the maximum allowable size of one chunk, such as an html file, is assumed to have the same content name and chunk name. For example, it is assumed that the content whose name is "/uk/.../AAA.html" published by the server device 3 in England also has a chunk name of "/uk/.../AAA.html". do. Among the interest packets to be transferred, the processing unit 22 requests a chunk whose requested chunk name indicates a foreign country and has a chunk number, that is, one chunk of the content divided into a plurality of chunks. interest packet is determined to be processed by the pre-acquisition unit 21 .

図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 processing unit 22 receives an interest packet. The processing unit 22 waits until an interest packet is received in S10. Upon receiving the interest packet, the processing unit 22 determines in S11 whether or not the interest packet should be forwarded based on the FIB. For example, S11 becomes No when an interest packet requesting a cached chunk or an interest packet requesting a chunk indicated in the PIT is received. If the interest packet should not be forwarded based on the FIB, the processing unit 22 repeats the processing from S10. On the other hand, if the interest packet should be forwarded based on the FIB, the processing unit 22 determines whether or not the interest packet is to be processed by the pre-acquisition unit 21 in S12. Whether or not the chunk is to be processed by the pre-acquisition unit 21 is determined as described above based on the chunk name of the chunk requested by the interest packet. If the interest packet is not to be processed by the pre-acquisition unit 21, the processing unit 22 repeats the processing from S10. On the other hand, if the interest packet is to be processed by the pre-acquisition unit 21, the processing unit 22 transmits the interest packet to the pre-acquisition unit 21 in S13. In addition to the processing shown in FIG. 3, the processing unit 22 performs the same processing as a normal transfer device on interest packets.

図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 pre-acquisition unit 21. As shown in FIG. In S<b>20 , the pre-acquisition unit 21 waits until an interest packet is received from the processing unit 22 . Upon receiving an interest packet from the processing unit 22, the pre-acquisition unit 21 manages in S21 whether or not there is a queue corresponding to the content of the chunk requested by the received interest packet. If there is no queue corresponding to the content of the chunk requested by the Interest packet, the pre-acquisition unit 21 determines in S22 that the number of the chunk requested by the Interest packet (hereinafter referred to as RN) is equal to or less than a threshold. determine whether If RN is greater than the threshold, the pre-acquisition unit 21 repeats the process from S20. On the other hand, if the RN is equal to or less than the threshold, the pre-acquisition unit 21 creates a queue corresponding to the content and stores the RN in association with the queue in S23. Then, in S24, the pre-acquisition unit 21 starts counting the timer corresponding to the created queue.

一方、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 pre-acquisition unit 21 determines in S25 that the request chunk number of the received interest packet corresponds to the queue of the content. Determine if it is greater than RN. If the number of the request chunk of the received Interest packet is greater than the RN corresponding to the content queue, the pre-acquisition unit 21 sets the RN corresponding to the content queue to the number of the request chunk of the received Interest packet. update to On the other hand, if the request chunk number of the received interest packet is less than or equal to the RN corresponding to the content queue, the pre-acquisition unit 21 does not change the RN corresponding to the content queue.

図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 pre-acquisition unit 21 . In S30, the pre-acquisition unit 21 determines whether or not there is a queue whose count value of the timer has reached a predetermined value. If there is no queue whose count value of the timer has reached the predetermined value, the pre-acquisition unit 21 repeats the processing from S30. If there is a queue whose timer count value has reached a predetermined value, the pre-acquisition unit 21 determines in S31 whether the RN value corresponding to the queue is equal to or less than a threshold value. In this embodiment, the threshold used in S31 is the same as the threshold used in S22 of FIG. However, the threshold used in S31 and the threshold used in S22 of FIG. 4 may be different values. If the RN value corresponding to the queue is greater than the threshold, the pre-acquisition unit 21 discards the queue in S33 and repeats the process from S30. On the other hand, if the value of the RN corresponding to the queue is equal to or less than the threshold, the pre-acquisition unit 21 selects a content chunk corresponding to the queue whose number is one greater than the value of the RN corresponding to the queue. An interest packet requesting chunks from the value to a value larger by a predetermined value X is generated and transmitted to the processing unit 22 . After that, in S33, the pre-acquisition unit 21 discards the queue and repeats the process from S30.

なお、処理部22は、事前取得部21から受信するインタレスト・パケットについては、転送処理のみを行い、図3で説明した処理については行わない。また、処理部22は、クライアント装置1から受信したインタレスト・パケットの応答として受信したチャンク(データ・パケット)については、通常の転送装置と同じ転送処理を行う。一方、処理部22は、事前取得部21から受信したインタレスト・パケットの応答として受信したチャンクについてはキャッシュを行い、事前取得部21に転送しない。なお、事前取得部21から受信したインタレスト・パケットの応答として受信したチャンクの総てをキャッシュする容量が無い場合には、チャンクを受信してからの時間が短い程、優先的にキャッシュする。 It should be noted that the processing unit 22 only performs transfer processing on the interest packets received from the pre-acquisition unit 21, and does not perform the processing described with reference to FIG. Also, the processing unit 22 performs the same transfer processing as a normal transfer device for chunks (data packets) received as a response to the interest packet received from the client device 1 . On the other hand, the processing unit 22 caches the chunk received as a response to the interest packet received from the pre-acquisition unit 21 and does not transfer it to the pre-acquisition unit 21 . If there is no capacity to cache all the chunks received as responses to the interest packets received from the pre-acquisition unit 21, the shorter the time after receiving the chunks, the more preferentially they are cached.

以下、クライアント装置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 client device 11 acquires content with a content name of "uk/aaa/videoA.mp4" will be described below. The content is divided into 10000 chunks, and the chunk names are "uk/aaa/videoA.mp4/1" to "uk/aaa/videoA.mp4/10000". It is also assumed that the client device 11 has not acquired any content so far and the window size W is a very small initial value, for example 4. It is also assumed that the threshold held by the pre-acquisition unit 21 is 300 and the predetermined value X is 150. In the initial state, none of the transfer devices existing from the client device 11 to the server device 3 cache any chunk of "uk/aaa/videoA.mp4".

ウィンドウ・サイズ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 client device 11 continuously sends four interest packets requesting "uk/aaa/videoA.mp4/1" to "uk/aaa/videoA.mp4/4". Send. Each interest packet is to be transferred by the boundary transfer device 2 and to be processed by the pre-acquisition unit 21 (S11 and S12 in FIG. 3), so it is transmitted to the pre-acquisition unit 21. FIG.

事前取得部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 pre-acquisition unit 21 does not manage any queue, when receiving an interest packet requesting "uk/aaa/videoA.mp4/1" which is a chunk with a number smaller than the threshold, in S23 of FIG. A queue is created, RN=1 is held in association with the queue, and the timer corresponding to the queue starts counting in S24 of FIG. Subsequently, when the pre-acquisition unit 21 receives an interest packet requesting "uk/aaa/videoA.mp4/2", in S25 of FIG. Update RN to 2. Similarly, by receiving interest packets requesting "uk/aaa/videoA.mp4/3" and "uk/aaa/videoA.mp4/4", the content "uk/aaa/videoA.mp4" is queued. RN is updated to 4.

コンテンツ"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 pre-acquisition unit 21, in S31, sets the RN corresponding to the queue to the threshold value. It is determined whether the number is less than or equal to 300. In this example, since RN=4 and the threshold value is 300 or less, the pre-acquisition unit 21, in S32, requests chunks with numbers 5 to 154 of the content "uk/aaa/videoA.mp4". A packet is generated and transmitted to the processing unit 22 . That is, the pre-acquisition unit 21 generates an interest packet requesting “uk/aaa/videoA.mp4/154” from “uk/aaa/videoA.mp4/5” and transmits it to the processing unit 22 .

これにより、境界転送装置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 edge transfer device 2 has transmitted an interest packet requesting "uk/aaa/videoA.mp4/154" from "uk/aaa/videoA.mp4/1" to the server device 3. . Of these, "uk/aaa/videoA.mp4/1" to "uk/aaa/videoA.mp4/4" were transmitted by the client device 11, and the boundary transfer device 2 Data packets received in response to packets are forwarded normally. On the other hand, since the interest packet requesting "uk/aaa/videoA.mp4/154" from "uk/aaa/videoA.mp4/5" was generated by the pre-acquisition unit 21, the processing unit 22 Cache "uk/aaa/videoA.mp4/4" through "uk/aaa/videoA.mp4/154" received as responses to these interest packets.

クライアント装置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 client device 11 receives "uk/aaa/videoA.mp4/4" from "uk/aaa/videoA.mp4/1", it doubles the window size W to 8, and "uk/aaa/videoA .mp4/5" to "uk/aaa/videoA.mp4/12", but since these are cached in border forwarding device 2, border forwarding device 2 immediately retrieves these chunks. It can be sent to the client device 11 . After that, the client device 11 doubles the window size W to 16 and transmits an interest packet requesting "uk/aaa/videoA.mp4/28" from "uk/aaa/videoA.mp4/13". However, since they are cached in the boundary transfer device 2, the boundary transfer device 2 can send these chunks to the client device 11 immediately.

その後、クライアント装置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 client device 11 transmits an interest packet requesting "uk/aaa/videoA.mp4/155", the boundary transfer device 2 creates a new queue corresponding to the content "uk/aaa/videoA.mp4". created in For example, at this time, if the window size W of the client device 11 is 128, the pre-acquisition unit 21 sets "uk/aaa/ will receive an Interest packet requesting up to videoA.mp4/252". Therefore, in S32 of FIG. 5, the border transfer device 2 generates and transmits an interest packet requesting "uk/aaa/videoA.mp4/253" to "uk/aaa/videoA.mp4/402". Therefore, the boundary transfer device 2 can prefetch and cache "uk/aaa/videoA.mp4/253" to "uk/aaa/videoA.mp4/402", and the client device 11 can cache "uk/aaa /videoA.mp4/253" to "uk/aaa/videoA.mp4/402" can be acquired in a short time.

この様に、ウィンドウ・サイズ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 boundary transfer device 2 prefetches and caches the content acquired by the client device 11, thereby quickly increasing the window size W of the client device 11. Therefore, the content download time by the client device 11 can be shortened. After that, when the client device 11 transmits an interest packet requesting "uk/aaa/videoA.mp4/403", S22 in FIG. 4 becomes No and no queue is created.

続いて、クライアント装置11が、"uk/aaa/video.html"とのコンテンツ名のコンテンツを取得する場合について説明する。当該コンテンツのサイズは、1つのチャンクの最大データ量以下であるため、チャンク名は、コンテンツ名に等しく、チャンク番号を有さない。この場合、クライアント装置11は、"uk/aaa/video.html"を要求するインタレスト・パケットを送信するが、チャンク番号がないことより、事前取得部21での処理対象ではない(図3のS12)。したがって、当該インタレスト・パケットは、事前取得部21に送信されない。 Next, a case where the client device 11 acquires content with a content name of "uk/aaa/video.html" will be described. Since the size of the content is less than or equal to the maximum amount of data in one chunk, the chunk name is equal to the content name and has no chunk number. In this case, the client device 11 transmits an interest packet requesting "uk/aaa/video.html", but since there is no chunk number, it is not subject to processing by the pre-acquisition unit 21 (S12 in FIG. 3). ). Therefore, the interest packet is not sent to the pre-acquisition unit 21 .

続いて、クライアント装置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 client device 12 acquires content with a content name of "uk/aaa/videoB.mp4" will be described. The content is divided into 10000 chunks, and the chunk names are "uk/aaa/videoB.mp4/1" to "uk/aaa/videoB.mp4/10000". It is also assumed that the client device 12 has already acquired other content, and the window size W is a value, for example, 1024, corresponding to the throughput of content acquisition up to that point. It is also assumed that the threshold held by the pre-acquisition unit 21 is 300 and the predetermined value X is 150. In the initial state, none of the transfer devices existing from the client device 12 to the server device 3 cache any chunk of "uk/aaa/videoB.mp4".

ウィンドウ・サイズ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 client device 12 continuously transmits 1024 interest packets requesting "uk/aaa/videoB.mp4/1" to "uk/aaa/videoB.mp4/1024". to send. Each interest packet is to be transferred by the boundary transfer device 2 and to be processed by the pre-acquisition unit 12 , so it is transmitted to the pre-acquisition unit 21 . Upon receiving the interest packet requesting "uk/aaa/videoB.mp4/1", the pre-acquisition unit 21 creates a queue in S23 of FIG. 4, records RN=1 in association with the queue, At S24 in FIG. 4, the timer corresponding to the queue starts counting. Subsequently, when the pre-acquisition unit 21 receives an interest packet requesting "uk/aaa/videoB.mp4/2", in S25 of FIG. Update RN to 2. Similarly, by receiving an interest packet requesting "uk/aaa/videoB.mp4/3" to "uk/aaa/videoB.mp4/1024", the content "uk/aaa/videoB.mp4" is queued. The corresponding RN is updated to 1024.

コンテンツ"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 pre-acquisition unit 21 determines in S31 that the RN of the queue is 300, which is the threshold. Determine if: In this example, since RN=1024, which is larger than the threshold value of 300, the pre-acquisition unit 21 discards the queue of the content "uk/aaa/videoB.mp4" in S33. That is, the pre-acquisition unit 21 does not generate and transmit an interest packet requesting chunks of the content "uk/aaa/videoB.mp4". Thus, when the window size W of the client device 12 is sufficiently large (larger than the threshold value), the boundary transfer device 2 does not prefetch chunks because the effect of prefetching by the boundary transfer device 2 is small.

続いて、クライアント装置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 client device 12 acquires content with a content name of "uk/aaa/videoC.mp4" will be described. The content is divided into 10000 chunks, and the chunk names are "uk/aaa/videoC.mp4/1" to "uk/aaa/videoC.mp4/10000". Also, "uk/aaa/videoC.mp4/1" to "uk/aaa/videoC.mp4/4000" are cached in the transfer device within the local network 4, and the client device 12 accesses "uk/aaa/ It is assumed that videoC.mp4/1" to "uk/aaa/videoC.mp4/4000" have already been obtained from the local network 4. Further, it is assumed that the window size W of the client device 12 is a value, for example, 1024, corresponding to the throughput of content acquisition up to that point. All the transfer devices existing from the client device 12 to the server device 3 do not cache any of "uk/aaa/videoC.mp4/4001" to "uk/aaa/videoC.mp4/10000". and Furthermore, it is assumed that the threshold held by the pre-acquisition unit 21 is 300 and the predetermined value X is 150.

ウィンドウ・サイズ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 client device 12 continuously transmits 1024 interest packets requesting "uk/aaa/videoC.mp4/4001" to "uk/aaa/videoC.mp4/5024". to send. Each interest packet is to be transferred by the boundary transfer device 2 and to be processed by the pre-acquisition unit 21 , so it is transmitted to the pre-acquisition unit 21 . The pre-acquisition unit 21 receives an interest packet requesting "uk/aaa/videoC.mp4/4001", but since the requested chunk number is 1001, which is greater than the threshold of 300, a queue is created. not (S22). Thus, the window size W of a client device requesting chunks larger than the threshold is usually large enough, and thus the effect of prefetching by the boundary forwarding device 2 is small, so that the boundary forwarding device 2 does not prefetch chunks. Not performed.

上記の通り、境界転送装置2は、事前取得処理により多数のインタレスト・パケット(上記例では、X=150のインタレスト・パケット)を送信する。境界転送装置2が、この多数のインタレスト・パケットを連続して送信し、その応答として、サーバ装置3が多数のデータ・パケットを送信すると、サーバ装置3から境界転送装置2に至る区間において輻輳を生じさせ得る。したがって、事前取得部21は、サーバ装置3から境界転送装置2に至る区間において輻輳を生じさせない様に、事前取得処理により送信するインタレスト・パケットの送信タイミングを制御する。なお、インタレスト・パケットのサイズは、データ・パケットのサイズと比較して非常に小さいため、サーバ装置3から境界転送装置2に至る区間において多数のデータ・パケットによる輻輳を生じさせない様にすれば、境界転送装置2からサーバ装置3に至る区間において多数のインタレスト・パケットによる輻輳も生じない。 As described above, the edge forwarding device 2 transmits a large number of Interest packets (X=150 Interest packets in the above example) through the pre-acquisition process. When the boundary transfer device 2 continuously transmits a large number of interest packets and the server device 3 transmits a large number of data packets in response, congestion occurs in the section from the server device 3 to the boundary transfer device 2. can give rise to Therefore, the pre-acquisition unit 21 controls the transmission timing of interest packets transmitted by the pre-acquisition process so as not to cause congestion in the section from the server device 3 to the boundary transfer device 2 . Since the size of an interest packet is very small compared to the size of a data packet, if congestion due to a large number of data packets is prevented from occurring in the section from the server device 3 to the border transfer device 2, Congestion due to a large number of interest packets does not occur in the section from the edge transfer device 2 to the server device 3 .

以下、事前取得部21によるインタレスト・パケットの送信タイミングの制御について説明する。図6は、事前取得処理のシーケンスの概略を示している。上述した様に、事前取得部21には、事前取得処理で送信するインタレスト・パケットの最大数X(上記例では150)が設定されている。また、クライアント装置11及び12は、通常、ウィンドウ・サイズWに従い、複数のインタレスト・パケットを連続して、つまり、バースト的に送信する。以下では、クライアント装置11及び12が、ウィンドウ・サイズWに従い複数のインタレスト・パケットをバースト的に送信することを、インタレスト・パケットの"バースト送信"と表記する。 The control of the transmission timing of the interest packet by the pre-acquisition unit 21 will be described below. FIG. 6 outlines the sequence of pre-acquisition processing. As described above, the maximum number X (150 in the above example) of interest packets to be transmitted in the pre-acquisition process is set in the pre-acquisition unit 21 . Also, the client devices 11 and 12 typically transmit multiple interest packets in succession, ie, in bursts, according to a window size W. FIG. Hereinafter, the burst transmission of a plurality of Interest packets by the client devices 11 and 12 according to the window size W will be referred to as "burst transmission" of Interest packets.

例えば、ウィンドウ・サイズWが初期値の4であるクライアント装置11が、あるコンテンツの取得を開始する場合、クライアント装置11は、まず、番号1~4のチャンクを要求するインタレスト・パケットをバースト送信する。これにより、上述した様に、境界転送装置2は、当該コンテンツの番号5~154のチャンクを事前取得処理で取得してキャッシュする。 For example, when the client device 11 whose window size W is the initial value of 4 starts acquiring certain content, the client device 11 first bursts an interest packet requesting chunks numbered 1 to 4. . As a result, as described above, the boundary transfer device 2 acquires and caches the chunks of numbers 5 to 154 of the content in the pre-acquisition process.

クライアント装置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 client device 11 receives a data packet as a response to the burst-transmitted interest packet, the client device 11 repeats the burst transmission of the interest packet while increasing the window size W as described above. In the above example, the client device 11 performs burst transmission of interest packets while increasing the window size W to 8, 16, 32, 64, 128, and so on. Note that the client device 11 acquires chunks numbered 5 to 12 by burst transmission of interest packets when the window size W=8. Also, the client device 11 acquires chunks numbered 13 to 28 by burst transmission of interest packets when the window size W=16. Further, the client device 11 acquires chunks numbered 29 to 60 by burst transmission of interest packets when the window size W=32. Furthermore, the client device 11 acquires chunks numbered 61 to 124 by burst transmission of interest packets when the window size W=64. Furthermore, the client device 11 obtains chunks numbered 125 to 252 by burst transmission of interest packets when the window size W=128. Among them, chunks numbered 125 to 154 are acquired by the pre-acquisition process.

この様に、上記例において、クライアント装置11は、インタレスト・パケットのバースト送信を5回行うことで、境界転送装置2が事前取得処理で取得した番号5~154のチャンクを取得する。 In this way, in the above example, the client device 11 performs burst transmission of interest packets five times, thereby acquiring chunks numbered 5 to 154 acquired by the boundary transfer device 2 in the pre-acquisition process.

図6は、上記内容を一般化したシーケンス図である。なお、クライアント装置11と境界転送装置2との間のラウンドトリップ遅延をtとし、境界転送装置2とサーバ装置3との間のラウンドトリップ遅延をtとする。S1(時刻0)で、クライアント装置11は、インタレスト・パケットのバースト送信を行う。これらのインタレスト・パケットは、時刻t/2において境界転送装置2により受信され、これをトリガとして、境界転送装置2は、事前取得処理を開始する。なお、図4及び図5で説明した様に、境界転送装置2は、実際には、時刻t/2からタイマのカウント値が所定値に達するまで待って事前取得処理を開始するが、この期間はラウンドトリップ遅延より十分小さいため無視できる。クライアント装置11がS1でバースト送信したインタレスト・パケットは、S2で境界転送装置2からサーバ装置3に転送される。サーバ装置3は、S2で受信したインタレスト・パケットのバースト送信の応答として、S3で複数のデータ・パケットを送信する。境界転送装置2は、S4で、この複数のデータ・パケットをクライアント装置11に転送する。クライアント装置11は、時刻t+tにおいて、これらのデータ・パケットを受信する。 FIG. 6 is a sequence diagram generalizing the above contents. The round-trip delay between the client device 11 and the border transfer device 2 is t1, and the round -trip delay between the border transfer device 2 and the server device 3 is t2. At S1 (time 0), the client device 11 performs burst transmission of interest packets. These interest packets are received by the edge forwarding device 2 at time t 1 /2 and trigger the edge forwarding device 2 to start the pre-acquisition process. As described with reference to FIGS. 4 and 5, the boundary transfer device 2 actually waits until the count value of the timer reaches a predetermined value from time t 1 /2 before starting pre-acquisition processing. The period is much smaller than the round-trip delay and can be ignored. The interest packet burst-transmitted by the client device 11 in S1 is transferred from the boundary transfer device 2 to the server device 3 in S2. The server device 3 transmits a plurality of data packets in S3 in response to the burst transmission of the interest packets received in S2. The border transfer device 2 forwards the plurality of data packets to the client device 11 at S4. Client device 11 receives these data packets at time t 2 +t 1 .

その後、クライアント装置11は、ウィンドウ・サイズWを増加させながら、インタレスト・パケットのバースト送信を繰り返す(S5~S6)。なお、境界転送装置2は、事前取得処理によりチャンクを先取りしているため、クライアント装置11は、S5からは境界転送装置2がキャッシュしているチャンクを取得することになる。したがって、S5(1回目)におけるインタレスト・パケットのバースト送信の応答としてのデータ・パケットをクライアント装置11は、時刻t+2tにおいて受信する。同様に、S6(m回目)におけるインタレスト・パケットのバースト送信の応答としてのデータ・パケットをクライアント装置11は、時刻t+(m+1)tにおいて受信する。 Thereafter, the client device 11 repeats burst transmission of interest packets while increasing the window size W (S5-S6). Since the boundary transfer device 2 prefetches the chunk by pre-acquisition processing, the client device 11 acquires the chunk cached by the boundary transfer device 2 from S5. Therefore, the client device 11 receives a data packet at time t 2 +2t 1 as a response to the burst transmission of the interest packet in S5 (first time). Similarly, the client device 11 receives a data packet at time t 2 +(m+1) t 1 as a response to the burst transmission of the Interest packet in S6 (m-th time).

例えば、時刻t/2で開始する事前取得処理において、境界転送装置2は、クライアント装置11によるインタレスト・パケットのm回(S5~S6)のバースト送信の応答として送信するX個のチャンクを取得するものとする。なお、X及びm(整数)の値は予め境界転送装置2に設定されているものとする。この場合、境界転送装置2は、時刻t+mt+t/2までにX個のチャンクを取得すれば良い。ここで、境界転送装置2とサーバ装置3との間のラウンドトリップ遅延はtである。したがって、境界転送装置2は、事前取得処理のためのX個のインタレスト・パケットを、時刻(mt+t/2)までに送信すれば良いことになる。事前取得処理の開始時刻はt/2であるため、境界転送装置2が、時刻t/2から時刻(mt+t/2)の間において、インタレスト・パケットを略等しい間隔で送信することで、データ・パケットの送信がバースト的となることによる輻輳の発生を抑えることができる。 For example, in the pre-acquisition process starting at time t 1 /2, the edge transfer device 2 acquires X chunks to be sent in response to m burst transmissions (S5-S6) of interest packets by the client device 11. It shall be. It is assumed that the values of X and m (integers) are set in the boundary transfer device 2 in advance. In this case, the boundary transfer device 2 should acquire X chunks by time t 2 +mt 1 +t 1 /2. Here, the round trip delay between the border transfer device 2 and the server device 3 is t2. Therefore, the edge forwarding device 2 should transmit X interest packets for pre-acquisition processing by time (mt 1 +t 1 /2). Since the start time of the pre-acquisition process is t 1 /2, the border forwarding device 2 transmits interest packets at approximately equal intervals between time t 1 /2 and time (mt 1 +t 1 /2). By doing so, it is possible to suppress the occurrence of congestion due to bursty transmission of data packets.

つまり、境界転送装置2は、期間(mt+t/2-t/2)=mtで求められる送信期間の間に、X個のインタレスト・パケットを平均的に送信する。言い換えると、境界転送装置2は、X個のインタレストを、mt/Xの周期で送信する。なお、境界転送装置2は、クライアント装置とのラウンドトリップ遅延を事前に測定しているものとする。 That is, the edge forwarding device 2 averagely transmits X interest packets during the transmission period obtained by the period (mt 1 +t 1 /2−t 1 /2)=mt 1 . In other words, the edge forwarding device 2 sends X Interests with a period of mt 1 /X. It is assumed that the boundary transfer device 2 measures the round-trip delay with the client device in advance.

なお、サーバ装置3から境界転送装置2に至る経路において利用可能な伝送速度S(スループットの上限値)に基づき、事前取得処理で取得するチャンクの数Xを制御する構成とすることもできる。まず、チャンクのサイズが一定であり、よって、データ・パケットのサイズがDで一定であるものとする。また、境界転送装置2が事前取得処理で取得するチャンクの基準数(初期数)をXとする。事前取得処理によりX個のインタレスト・パケットを送信するものとすると、境界転送装置2がその応答として取得するデータ・パケットの総サイズはX×Dとなる。このデータ・パケットを、期間mtで受信する場合、サーバ装置3から境界転送装置2に至る経路においては、平均的にX×D/mtの伝送速度のトラフィックが事前取得によって発生する。境界転送装置2は、SとX×D/mtと、を比較し、S≧X×D/mtであれば、事前取得処理によりX個のインタレスト・パケットを送信する。一方、S<X×D/mtの場合、事前取得処理により送信するインタレスト・パケットの数を減少させる。減少後の数Xは、S≧X×D/mtを満たすもの、例えば、X≦S×mt/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 server device 3 to the boundary transfer device 2 . First, assume that the size of the chunks is constant and thus the size of the data packets is constant at D. Also, let X0 be the reference number (initial number) of chunks that the boundary transfer device 2 acquires in the pre-acquisition process. Assuming that X 0 interest packets are transmitted by the pre-acquisition process, the total size of the data packets acquired by the boundary transfer device 2 in response is X 0 ×D. When this data packet is received in the period mt 1 , on the route from the server device 3 to the border transfer device 2, traffic with a transmission speed of X 0 ×D/mt 1 is generated on average by pre-acquisition. The edge forwarding device 2 compares S with X 0 ×D/mt 1 , and if S≧X 0 ×D/mt 1 , transmits X 0 interest packets by pre-acquisition processing. On the other hand, if S<X 0 ×D/mt 1 , the pre-acquisition process reduces the number of interest packets to be sent. The reduced number X may be one that satisfies S≧X×D/mt 1 , eg, the maximum value of X that satisfies X≦S×mt 1 /D.

以上の構成により、事前取得処理による輻輳の発生を抑えることができる。 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 processing unit 22 determines whether or not the chunk name requested by the interest packet is to be processed by the pre-acquisition unit 21 . More specifically, one of the conditions for processing by the pre-acquisition unit 21 is that the chunk name requested by the interest packet indicates a foreign country. However, it is also possible to make it one of the conditions for processing by the pre-acquisition unit 21 that the name is not a country name but a name that indicates a certain region. Alternatively, one of the conditions for processing by the pre-acquisition unit 21 may be that the transfer destination interface indicated by the FIB is a predetermined interface instead of the chunk name. This predetermined interface is, for example, an interface that connects to a communication link with a transmission delay equal to or greater than a predetermined value.

また、転送装置として動作する処理部22と、事前取得処理を行う事前取得部21とを、個別の装置として実現することもできる。 Also, the processing unit 22 that operates as a transfer device and the pre-acquisition unit 21 that performs pre-acquisition processing can be implemented as separate devices.

図7は、本実施形態による境界転送装置の別の構成図である。転送部23は、通常の転送装置と同様に、FIB、PIT、CSを管理し、インタレスト・パケット及びデータ・パケットの転送と、キャッシュを管理する。 FIG. 7 is another configuration diagram of the boundary transfer device according to this embodiment. The transfer unit 23 manages the FIB, PIT, and CS, transfers interest packets and data packets, and manages caches, like a normal transfer device.

判定部24は、クライアント装置から受信するインタレスト・パケット(以下、要求パケット)を監視する。そして、判定部24は、クライアント装置から同じ要求コンテンツのチャンクを要求する複数の第1要求パケットを受信すると、複数の第1要求パケットに基づき要求コンテンツの事前取得処理を行うか否かを判定する。 The determination unit 24 monitors interest packets (hereinafter referred to as request packets) received from the client device. Then, when receiving a plurality of first request packets requesting the same chunk of requested content from the client device, the determination unit 24 determines whether or not to perform pre-acquisition processing of the requested content based on the plurality of first request packets. .

例えば、判定部24は、複数の第1要求パケットが転送されるものであり、かつ、要求コンテンツを公開しているサーバ装置3の設置場所が所定の場所(所定の国または地域)であることを、要求コンテンツの事前取得処理を行うと判定するための条件の1つとすることができる。なお、サーバ装置3の設置場所は、複数の第1要求パケットが要求しているチャンク名に基づき判定することができる。 For example, the determination unit 24 determines that a plurality of first request packets are to be transferred and that the installation location of the server device 3 that publishes the requested content is a predetermined location (predetermined country or region). can be one of the conditions for determining that the pre-acquisition processing of the requested content is to be performed. The installation location of the server device 3 can be determined based on the chunk names requested by the plurality of first request packets.

また、判定部24は、複数の第1要求パケットの転送先の通信リンクが、境界転送装置2に接続される複数の通信リンクのうちの所定の通信リンクであることを、要求コンテンツの事前取得処理を行うと判定するための条件の1つとすることができる。所定の通信リンクは、例えば、伝送遅延が所定値以上、つまり、所定の長さ以上の通信リンクであり得る。 In addition, the determination unit 24 determines that the communication link to which the plurality of first request packets are transferred is a predetermined communication link among the plurality of communication links connected to the boundary transfer device 2. It can be one of the conditions for determining to perform processing. The predetermined communication link may be, for example, a communication link with a transmission delay equal to or greater than a predetermined value, that is, a communication link equal to or greater than a predetermined length.

また、判定部24は、所定期間に受信した複数の第1要求パケットの数が所定値より少ないことを、要求コンテンツの事前取得処理を行うと判定するための条件の1つとすることができる。なお、所定期間は、タイマを開始してからタイマのカウント値が所定値に達する時間に対応する(図5のS30)。所定期間に受信した複数の第1要求パケットの数が所定値より少ないことは、クライアント装置のウィンドウ・サイズが小さいことを意味しているため、事前取得処理によりクライアント装置のウィンドウ・サイズを素早く大きくすることができる。 Further, the determination unit 24 can set the fact that the number of the plurality of first request packets received in the predetermined period is less than a predetermined value as one of the conditions for determining that the pre-acquisition processing of the requested content is to be performed. The predetermined period corresponds to the time from when the timer is started until the count value of the timer reaches a predetermined value (S30 in FIG. 5). If the number of first request packets received in a predetermined period is less than a predetermined value, it means that the window size of the client device is small. can do.

さらに、判定部24は、所定期間に受信した複数の第1要求パケットが要求するチャンクの番号の最大値が、閾値より小さいことを、要求コンテンツの事前取得処理を行うと判定するための条件の1つとすることができる。 Further, the determination unit 24 determines that the maximum value of the chunk numbers requested by the plurality of first request packets received in the predetermined period is smaller than the threshold as a condition for determining that the pre-acquisition processing of the requested content is to be performed. can be one.

判定部24が要求コンテンツの事前取得処理を行うと判定すると、送信処理部26は、要求コンテンツのチャンクの内、複数の第1要求パケットが要求するチャンクとは異なるチャンクをそれぞれが要求する複数の第2要求パケットを生成し、転送部23を介して送信する。複数の第2要求パケットの数Xは、送信処理部26に事前設定されている。なお、このとき、送信処理部26は、複数の第1要求パケットを送信したクライアント装置との間のラウンドトリップ遅延tに基づき複数の第2要求パケットの送信間隔を制御する。例えば、送信処理部26は、ラウンドトリップ遅延tに基づき送信期間を求め、この送信期間に渡り複数の第2要求パケットを周期的に送信する。送信期間は、例えば、ラウンドトリップ遅延tを整数倍(m倍)した期間とすることができる。なお、mの値は、送信処理部26に事前設定されている。 When the determination unit 24 determines to perform the pre-acquisition processing of the requested content, the transmission processing unit 26 selects a plurality of chunks of the requested content, each requesting a chunk different from the chunk requested by the plurality of first request packets. A second request packet is generated and transmitted via the transfer unit 23 . The number X 0 of the plurality of second request packets is preset in the transmission processing unit 26 . At this time, the transmission processing unit 26 controls the transmission intervals of the plurality of second request packets based on the round -trip delay t1 with the client device that has transmitted the plurality of first request packets. For example, the transmission processing unit 26 obtains a transmission period based on the round -trip delay t1, and periodically transmits a plurality of second request packets over this transmission period. The transmission period can be, for example, a period obtained by multiplying the round -trip delay t1 by an integer (m times). Note that the value of m is preset in the transmission processing unit 26 .

また、送信処理部26は、複数の第2要求パケットの数を可変とすることができる。この場合、送信処理部26に、各データ・パケットのサイズDと、スループットの上限値Sとを事前設定しておく。送信処理部26は、例えば、S<X×D/mtの場合、複数の第2要求パケットの数をXから減少させる。減少後の数Xは、S≧X×D/mtを満たすもの、例えば、X≦S×mt/Dを満たすXの最大値とすることができる。この構成により、事前取得処理による輻輳の発生を抑えることができる。なお、スループットの上限値Sを境界転送装置2が測定により取得する構成とすることもできる。 Also, the transmission processing unit 26 can make the number of the plurality of second request packets variable. In this case, the size D of each data packet and the upper limit value S of throughput are preset in the transmission processing unit 26 . For example, when S<X 0 ×D/mt 1 , the transmission processing unit 26 reduces the number of multiple second request packets from X 0 . The reduced number X may be one that satisfies S≧X×D/mt 1 , eg, the maximum value of X that satisfies X≦S×mt 1 /D. With this configuration, it is possible to suppress the occurrence of congestion due to pre-acquisition processing. Note that the boundary transfer device 2 may acquire the upper limit value S of the throughput by measurement.

なお、複数の第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 boundary transfer device 2 according to the present invention is a program that, when executed by the one or more processors of a device/computer having one or more processors, causes the device/computer to operate and function as the boundary transfer device 2. It can be realized by These computer programs can be stored in a computer-readable storage medium or distributed via a network.

上記構成により、事前取得処理において輻輳を抑えることができる。よって、国連が主導する持続可能な開発目標(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要求パケットに基づき前記要求コンテンツの事前取得処理を行うか否かを判定する判定手段と、
前記要求コンテンツの事前取得処理を行うと判定すると、前記要求コンテンツのチャンクの内、前記複数の第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.
前記送信手段は、前記クライアント装置との間のラウンドトリップ遅延が大きくなる程、前記複数の第2要求パケットの送信間隔を大きくすることを特徴とする請求項1に記載の転送装置。 2. The transfer device according to claim 1, wherein said transmission means increases the transmission interval of said plurality of second request packets as the round-trip delay to said client device increases. 前記送信手段は、前記クライアント装置との間のラウンドトリップ遅延に基づき判定される送信期間に渡り前記複数の第2要求パケットを周期的に送信することを特徴とする請求項1又は2に記載の転送装置。 3. The transmitting means according to claim 1, wherein said transmission means periodically transmits said plurality of second request packets over a transmission period determined based on a round-trip delay with said client device. transfer device. 前記送信期間は、前記ラウンドトリップ遅延を整数倍した期間であることを特徴とする請求項3に記載の転送装置。 4. The transfer device according to claim 3, wherein said transmission period is a period obtained by multiplying said round-trip delay by an integer. 前記複数の第2要求パケットの数は所定値であることを特徴とする請求項1から4のいずれか1項に記載の転送装置。 5. The transfer device according to claim 1, wherein the number of said plurality of second request packets is a predetermined value. 前記送信手段は、前記複数の第2要求パケットを送信したことの応答として受信するデータ・パケットの総サイズを前記送信期間で除した値が上限値以下となる様に前記複数の第2要求パケットの数を決定することを特徴とする請求項3又は4に記載の転送装置。 The transmission means divides the total size of data packets received as a response to the transmission of the plurality of second request packets by the transmission period to be equal to or less than the upper limit value. 5. The transfer device according to claim 3, wherein the number of . 前記上限値は、前記要求コンテンツを公開しているサーバ装置から前記転送装置に至る区間におけるスループットの上限値であることを特徴とする請求項6に記載の転送装置。 7. The transfer device according to claim 6, wherein said upper limit value is an upper limit value of throughput in a section from a server device that publishes said requested content to said transfer device. 前記判定手段は、前記複数の第1要求パケットが転送されるものであり、かつ、前記要求コンテンツを公開しているサーバ装置の設置場所が所定の場所であることを、前記要求コンテンツの事前取得処理を行うと判定するための条件の1つとすることを特徴とする請求項1から6のいずれか1項に記載の転送装置。 The judging means determines in advance that the plurality of first request packets are to be transferred and that the installation location of the server apparatus disclosing the requested content is a predetermined location. 7. The transfer device according to any one of claims 1 to 6, wherein the transfer device is one of the conditions for determining to perform the processing. 前記判定手段は、前記複数の第1要求パケットの転送先の通信リンクが前記転送装置に接続される複数の通信リンクのうちの所定の通信リンクであることを、前記要求コンテンツの事前取得処理を行うと判定するための条件の1つとすることを特徴とする請求項1から6のいずれか1項に記載の転送装置。 The determination means determines that a communication link to which the plurality of first request packets are to be transferred is a predetermined communication link among a plurality of communication links connected to the transfer device, and performs the request content pre-acquisition process. 7. The transfer device according to any one of claims 1 to 6, wherein the transfer device is one of the conditions for determining to perform. 前記判定手段は、所定期間に受信した前記複数の第1要求パケットの数が所定値より少ないことを、前記要求コンテンツの事前取得処理を行うと判定するための条件の1つとすることを特徴とする請求項1から9のいずれか1項に記載の転送装置。 The determining means is characterized in that one of the conditions for determining that the pre-acquisition process of the requested content is to be performed is that the number of the plurality of first request packets received in a predetermined period is smaller than a predetermined value. 10. The transfer device according to any one of claims 1 to 9. コンテンツを分割した1つ以上のチャンクそれぞれのチャンク名はチャンクの番号を有し、
前記判定手段は、前記所定期間に受信した前記複数の第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:
前記複数の第2要求パケットは、前記複数の第1要求パケットが要求するチャンクの番号の最大値より大きい番号のチャンクを要求することを特徴とする請求項11に記載の転送装置。 12. The transfer device according to claim 11, wherein the plurality of second request packets request chunks having a larger number than the maximum number of chunks requested by the plurality of first request packets. 請求項1から12のいずれか1項に記載の転送装置としてコンピュータを機能させることを特徴とするプログラム。 A program that causes a computer to function as the transfer device according to any one of claims 1 to 12.
JP2021035583A 2021-03-05 2021-03-05 Content distribution network transfer device and program Active JP7460569B2 (en)

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)

* Cited by examiner, † Cited by third party
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

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