JP5587735B2 - Data transmission method and network node - Google Patents
Data transmission method and network node Download PDFInfo
- Publication number
- JP5587735B2 JP5587735B2 JP2010240701A JP2010240701A JP5587735B2 JP 5587735 B2 JP5587735 B2 JP 5587735B2 JP 2010240701 A JP2010240701 A JP 2010240701A JP 2010240701 A JP2010240701 A JP 2010240701A JP 5587735 B2 JP5587735 B2 JP 5587735B2
- Authority
- JP
- Japan
- Prior art keywords
- coding coefficient
- network
- seed
- network coding
- data
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Error Detection And Correction (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Transfer Between Computers (AREA)
Description
本発明は、ネットワーク符号化技術に関し、特に、ネットワーク符号化ベースのデータ伝送方法およびネットワークノードに関する。 The present invention relates to a network coding technique, and more particularly to a network coding-based data transmission method and a network node.
ネットワーク符号化技術は、ネットワーク層でデータパケットに対して符号化を行う技術である。該技術において、ネットワーク内のノードが、受信されたパケットを符号化して、新たなパケットを生成してから転送することが認められている。現在、ネットワーク符号化技術の応用は、主に大規模なファイル配信、即ち、ソースノードまたはサーバから大量な情報をネットワーク内の他のノードに配信するサービス、例えば、ポイントツーポイント(P2P)ファイル伝送サービス、または、P2Pストリーミングサービスに集中している。 The network encoding technique is a technique for encoding data packets in a network layer. In the technique, it is recognized that a node in a network encodes a received packet, generates a new packet, and then forwards it. Currently, network coding technology is mainly applied to large-scale file distribution, that is, a service that distributes a large amount of information from a source node or server to other nodes in the network, for example, point-to-point (P2P) file transmission. Concentrate on services or P2P streaming services.
図1は、ネットワーク符号化の簡単な実例を示している。大規模なファイル配信の応用において、ソースノードによって配信されるファイルが大きすぎる一方、伝送帯域幅が有限であるため、ファイルの伝送前、ソースノードはまず元のファイルをn個の元の情報セグメント(Segment)S1,S2,S3,…,Snに分割し、次にこのn個の元の情報セグメントに対して線形符号化を行って、新たな情報セグメントE1,E2,…,を生成して、その対応する係数もつけてネットワークで転送する。従って、Eiは全て元の情報セグメントS1,S2,S3,…,Snの線形結合であり、その長さが元の情報セグメントと同じであり、区別としては、Eiの各々に一部または全部の元の情報セグメントの情報が付けられていることである。図1において、
は、ガロア体(Galois field)からランダムに選択した係数であり、それらをそれぞれ元の情報セグメントS1,S2,S3,…,Snと乗算して得られる積を加算した後、E1を得る。即ち、
である。E2の生成方式は類似している。本例において、ネットワークノードAはファイル配信のソースノードから新たな情報セグメントE1とその対応する係数を受信した後、ネットワーク内の他のノードに新たな情報セグメントをブロードキャストまたはマルチキャストする。ネットワークノードAのキャッシュに情報セグメントE2が既に記憶されているため、ネットワークノードAは情報セグメントE1と情報セグメントE2に対して線形符号化を行い、新たな情報セグメントE3を得た後、ブロードキャストまたはマルチキャストする。ここで、ネットワークノードAが情報セグメントE3を生成する手順は以下の通りである。ネットワークノードAはガロア体から係数c1およびc2をランダムに選択し、次にそれらをそれぞれE1およびE2と乗算し、得られる積を加算して、E3を得る。E1、E2が両方とも元の情報セグメントS1,S2,S3,…,Snの線形符号であるため、E3もこのn個の元の情報セグメントの線形符号となる。説明すべきものとして、ネットワークノードAは新たなセグメントE3をブロードキャストまたはマルチキャストすると共に、E3に対応する係数ベクトル
および
もブロードキャストまたはマルチキャストする。ネットワーク内の各ネットワークノードは新たな情報セグメントを受信した後、類似の処理を行う。このようにして、各ネットワークノードは、n個の相関のない情報セグメントおよびその係数を受信しさえすれば、元のファイルを復元することができる。
FIG. 1 shows a simple example of network coding. In large file distribution applications, the file delivered by the source node is too large, but the transmission bandwidth is finite, so before the file is transmitted, the source node first converts the original file into n original information segments. (segment) S 1, S 2 ,
Is a coefficient selected at random from the Galois (Galois field), which each source of information segments S 1, S 2, S 3 , ..., after adding the product obtained by multiplying the S n, E1 Get. That is,
It is. The generation method of E2 is similar. In this example, the network node A receives the new information segment E1 and its corresponding coefficient from the file distribution source node, and then broadcasts or multicasts the new information segment to other nodes in the network. Since the information segment E2 is already stored in the cache of the network node A, the network node A performs linear encoding on the information segment E1 and the information segment E2, obtains a new information segment E3, and then performs broadcast or multicast. To do. Here, the procedure in which the network node A generates the information segment E3 is as follows. Network node A randomly selects coefficients c1 and c2 from the Galois field, then multiplies them by E1 and E2, respectively, and adds the resulting products to obtain E3. E1, E2
and
Also broadcast or multicast. Each network node in the network performs a similar process after receiving a new information segment. In this way, each network node can restore the original file as long as it receives n uncorrelated information segments and their coefficients.
当業者であれば理解できるものとして、ネットワーク符号化を採用しない場合、ある元の情報セグメント(例えば、ファイルの先頭部分)は、ネットワーク上で、既に多くのネットワークノードに持たれた可能性があって、つまり、比較的高い人気度を有する一方、ある元の情報セグメント(ファイルの末尾部分)は、ネットワーク上で、非常に希少であって、つまり、比較的低い人気度を有する。この場合、ネットワークノードは、自身が既に受信した情報セグメントにより、どの情報セグメントを先に受信するかを判断する必要がある。例えば、希少資源を持つネットワークノードが動的に離れることによるファイルダウンロード失敗を避けるために、ネットワークノードは、一般的に、比較的低い人気度を有する元の情報セグメントを先にダウンロードすることを、選択する。でも、ネットワーク符号化を採用した後、ネットワークにおいて伝播される情報セグメントは、いずれも元の情報セグメントの線形結合であるため、すべての情報セグメントは、同じ人気度を有する。この場合、ネットワークノードは、どの情報セグメントを先に受信する必要があるかを判断する必要がない。それとともに、希少資源の問題もなくなる。このようにして、ネットワークノードが動的に参加しまたは離れることによるほかのネットワークノードへの影響も低減させる。 As one skilled in the art understands, if network coding is not employed, an original information segment (eg, the beginning of a file) may have already been held by many network nodes on the network. That is, while having a relatively high degree of popularity, some original information segment (the tail portion of the file) is very rare on the network, that is, has a relatively low degree of popularity. In this case, the network node needs to determine which information segment is received first based on the information segment already received by the network node. For example, to avoid a file download failure due to a network node with scarce resources dynamically leaving, the network node generally downloads the original information segment with a relatively low popularity first. select. However, after employing network coding, all information segments propagated in the network are linear combinations of the original information segments, so all information segments have the same popularity. In this case, the network node does not need to determine which information segment needs to be received first. At the same time, the problem of scarce resources is eliminated. In this way, the impact on other network nodes due to the dynamic joining or leaving of the network node is also reduced.
上記方法において、ネットワークノードは、十分に多くのネットワーク符号化された情報セグメントを受信したことを待って初めて、復号化してファイル全体を得る。従って、上記方法は、ダウンロードしながら視聴する必要があるP2Pストリーミングサービスに適用されない。そのため、P2Pストリーミングサービスに適用されるネットワーク符号化方法が提供されている。 In the above method, the network node only decodes to obtain the entire file after waiting for a sufficiently large number of network encoded information segments. Therefore, the above method is not applied to a P2P streaming service that requires viewing while downloading. Therefore, a network encoding method applied to the P2P streaming service is provided.
該方法において、各情報セグメントは、さらに複数の情報ブロック(block)に分割されている。P2Pストリーミングサービスに参加するシード(seed)は、データの転送前、まず、1つの情報セグメント内の情報ブロック間で、ネットワーク符号化を行う。このようにして、ピア(Peer)は、十分に多くのネットワーク符号化された情報ブロックを受信した後、復号化して情報セグメントを得ることができる。このように情報セグメント内の情報ブロック間でネットワーク符号化を行う方法は、複数のシードが同時に1つのピアに、ある情報セグメントを送信することをサポートできる。これにより、ある情報セグメントを伝送する時間を短縮させ、ピアユーザの視聴待ち時間を低減させる。 In this method, each information segment is further divided into a plurality of information blocks. A seed participating in the P2P streaming service first performs network coding between information blocks in one information segment before data transfer. In this way, a peer can receive a sufficiently large number of network-encoded information blocks and then decode them to obtain information segments. Thus, the method of performing network coding between information blocks in an information segment can support a plurality of seeds transmitting an information segment to one peer at the same time. Thereby, the time for transmitting a certain information segment is shortened, and the viewing waiting time of the peer user is reduced.
しかしながら、上記2つの方法において、情報セグメントまたは情報ブロックのいずれであるかにかかわらず、その符号化係数は、ランダムに選択されるもの、即ち、ランダムに生成されるものである(このような方法はランダムネットワーク符号化と呼ばれる)。また、ピアで復号化できるために、生成された符号化係数は、情報セグメントまたは情報ブロックと一緒に、伝送しなれけばならない。従って、比較的高い制御オーバヘッド(COH:Control Overhead)を有する。通常、上記方法における制御オーバヘッドの大きさは、下記の数式1によって、算出することができる。
[数式1]
ここで、qは有限体(GF)の大きさを表し、nは、1つのファイルの分割された情報セグメント数、または、1つの情報セグメントにおける情報ブロック数を表する。例えば、GFの大きさが256であって、1つの情報セグメントに128個の情報ブロックが含まれる場合、1つの情報セグメントの送信に必要な制御オーバヘッドは、16.384Kbytesに達することになる。
However, in the above two methods, regardless of whether it is an information segment or an information block, the coding coefficient is randomly selected, that is, randomly generated (such a method). Is called random network coding). Also, in order to be able to be decoded at the peer, the generated coding coefficients must be transmitted together with the information segment or information block. Therefore, it has a relatively high control overhead (COH: Control Overhead). Usually, the size of the control overhead in the above method can be calculated by the following
[Formula 1]
Here, q represents the size of a finite field (GF), and n represents the number of information segments divided in one file or the number of information blocks in one information segment. For example, if the size of GF is 256 and one information segment includes 128 information blocks, the control overhead required for transmission of one information segment will reach 16.384 Kbytes.
また、ランダムネットワーク符号化の符号化係数がランダムに生成されるものであるため、生成された符号化係数は互いに線形独立であることを、100パーセント保証できない。従って、たとえピアは既にn個の情報セグメントまたは情報ブロックを受信したとしても、正確に復号化できるとは限らない。即ち、復号化失敗の場合がある。上記ネットワーク符号化方法の復号化失敗確率は、下記の数式2によって、算出することができる。
[数式2]
ここで、qは有限体(GF)の大きさを表し、nは、1つのファイルの分割された情報セグメント数、または、1つの情報セグメントにおける情報ブロック数を表する。数式2から分かるように、有限体の大きさが、復号化失敗確率の決定的な要素である。例えば、有限体の大きさを128にする場合、復号化失敗確率は10−2オーダーとなる。
In addition, since the coding coefficients of random network coding are generated randomly, it is not possible to guarantee 100% that the generated coding coefficients are linearly independent from each other. Thus, even if a peer has already received n information segments or information blocks, it cannot always be correctly decoded. That is, there is a case where decoding fails. The decoding failure probability of the network encoding method can be calculated by the following
[Formula 2]
Here, q represents the size of a finite field (GF), and n represents the number of information segments divided in one file or the number of information blocks in one information segment. As can be seen from
上記の技術的課題を解決するために、本発明は、データ伝送方法およびネットワークノードを提供している。これにより、制御オーバーヘッドを減少させることができる一方、復号化失敗確率を低減させることもできる。 In order to solve the above technical problem, the present invention provides a data transmission method and a network node. As a result, the control overhead can be reduced, while the decoding failure probability can be reduced.
本発明の実施例に係るデータ伝送方法において、ピアとシードはそれぞれ、任意のn個(nは、伝送対象データから分割されたデータ単位の数を表す)の列ベクトルが互いに線形独立であるネットワーク符号化係数テーブルを生成し、ピアは、全てのシードをトラッカーから知った後、要求されるダウンロード対象データIDとネットワーク符号化係数IDとが含まれるダウンロード要求を各シードにそれぞれ送信し、各シードは、受信されたダウンロード要求に付けられた符号化係数IDにより、自身で生成したネットワーク符号化係数テーブルから、相応の列ベクトルを取得して、ネットワーク符号化係数とし、各シードは、取得されたネットワーク符号化係数により、ダウンロード要求に付けられたデータIDにより指示されたデータに含まれるデータ単位に対して、ネットワーク符号化を行って、符号化されたデータ単位をピアに送信し、ピアは、各シードからのネットワーク符号化されたデータ単位をそれぞれ受信して、n個のデータ単位を受信した後、復号化を行って、ダウンロード対象データを得る、ことを含む。 In the data transmission method according to the embodiment of the present invention, each of peers and seeds is a network in which any n column vectors (n represents the number of data units divided from transmission target data) are linearly independent from each other. After generating the coding coefficient table and the peer knows all seeds from the tracker, each peer sends a download request including the requested download target data ID and network coding coefficient ID to each seed. Obtains the corresponding column vector from the network coding coefficient table generated by itself according to the coding coefficient ID attached to the received download request, and sets it as a network coding coefficient. Data indicated by the data ID attached to the download request by the network coding coefficient Network encoding is performed on the included data units and the encoded data units are transmitted to the peer, and each peer receives network encoded data units from each seed, and n After receiving the data unit, decryption is performed to obtain download target data.
ここで、上記ピアとシードがそれぞれネットワーク符号化係数テーブルを生成することは、ピアとシードがそれぞれ、基数がn以上である行列を生成して、前記ネットワーク符号化係数テーブルとする、ことを含む。好ましくは、行列の基数が2nである。本明細書では、基数がn以上である行列を生成する例、即ち、ヴァンデルモンド行列を構成する例が提供されている。 Here, generating the network coding coefficient table for each of the peer and the seed includes generating a matrix in which the peer and the seed each have a radix of n or more to form the network coding coefficient table. . Preferably, the matrix radix is 2n. In the present specification, an example of generating a matrix whose radix is n or more, that is, an example of constructing a Vandermonde matrix is provided.
上記ピアとシードがそれぞれネットワーク符号化係数テーブルを生成することは、前記ピアとシードが、異なる基数を有してかつ基数がn以上である少なくとも2つの行列を生成して、nの大きさにより、1つの行列を選択して、ネットワーク符号化係数テーブルとする、ことを含む。 Each of the peer and the seed generates a network coding coefficient table by generating at least two matrices in which the peer and the seed have different radixes and the radix is not less than n, depending on the size of n. Including selecting one matrix to be a network coding coefficient table.
具体的に、前記ピアとシードがそれぞれ、基数が64、128、256、および512である4つの行列を生成し、ダウンロード対象データに含まれるデータ単位の数が32以下である場合、基数が64である行列を選択して、ネットワーク符号化係数テーブルとし、ダウンロード対象データに含まれるデータ単位の数が32より大きくかつ64以下である場合、基数が128である行列を選択して、ネットワーク符号化係数テーブルとし、ダウンロード対象データに含まれるデータ単位の数が64より大きくかつ128以下である場合、基数が256である行列を選択して、ネットワーク符号化係数テーブルとし、ダウンロード対象データに含まれるデータ単位の数が128より大きくかつ256以下である場合、基数が512である行列を選択して、ネットワーク符号化係数テーブルとする、ことを含んでよい。 Specifically, when the peer and the seed respectively generate four matrices having radixes of 64, 128, 256, and 512, and the number of data units included in the download target data is 32 or less, the radix is 64. Is selected as a network coding coefficient table, and when the number of data units included in the data to be downloaded is greater than 32 and less than or equal to 64, a matrix having a radix of 128 is selected and network coding is performed. When the number of data units included in the download target data is greater than 64 and less than or equal to 128 as a coefficient table, a matrix having a radix of 256 is selected to form a network coding coefficient table, and data included in the download target data Matrix with radix 512 if the number of units is greater than 128 and less than or equal to 256 Select, and network coding coefficient table may involve.
上記ピアが全てのシードをトラッカーから知ることは、ピアが、シードリスト要求メッセージをトラッカーへ送信することにより、データを提供できる全てのシードの情報をトラッカーへ要求し、トラッカーが、シードリスト要求メッセージを受信した後、全てのシードIDを含むシードIDリストをピアへリターンし、ピアが、トラッカーからリターンされたシードIDリストにより、データを提供する全てのシードを知る、ことを含む。 When the peer knows all seeds from the tracker, the peer sends a seed list request message to the tracker, requesting the tracker for information on all seeds that can provide data, and the tracker requests the seed list request message. , The process returns to the peer a seed ID list including all seed IDs, and the peer knows all seeds providing data by the seed ID list returned from the tracker.
上記ネットワーク符号化係数IDは、符号化係数モジュロ値および符号化係数インデックスを含み、各シードは、受信されたダウンロード要求に付けられた符号化係数IDにより、自身で生成したネットワーク符号化係数テーブルから、相応の列ベクトルを取得して、ネットワーク符号化係数とすることは、各シードが、下記の計算式i=x×k+yによって、符号化係数として選択される列ベクトルの、ネットワーク符号化係数テーブルにおける番号を算出する、ことを含み、ここで、iはネットワーク符号化係数テーブルにおける列ベクトルの番号であり、xは符号化係数モジュロ値であり、yは符号化係数インデックスであり、kは非負整数である。 The network coding coefficient ID includes a coding coefficient modulo value and a coding coefficient index, and each seed is generated from the network coding coefficient table generated by itself according to the coding coefficient ID attached to the received download request. , Acquiring a corresponding column vector and setting it as a network coding coefficient means that each seed is a network coding coefficient table of a column vector selected as a coding coefficient by the following calculation formula i = x × k + y. Where i is the column vector number in the network coding coefficient table, x is the coding coefficient modulo value, y is the coding coefficient index, and k is non-negative. It is an integer.
ここで、ピアから各シードに送信されたダウンロード要求に付けられた符号化係数モジュロ値は同じであるが、符号化係数インデックスは同じではない。 Here, although the encoding coefficient modulo value attached to the download request transmitted from the peer to each seed is the same, the encoding coefficient index is not the same.
上記ピアが、各シードからのネットワーク符号化されたデータ単位をそれぞれ受信して、n個のデータ単位を受信した後、復号化を行うことは、ピアが、各シードに送信されたダウンロード要求に付けられたネットワーク符号化係数IDにより、自身で生成したネットワーク符号化係数テーブルから、相応の列ベクトルを取得して、各シードの符号化係数としてから、各シードの符号化係数により、それぞれ各シードからのn個のデータ単位に対して、復号化を行う、ことを含む。 The peer receives each network encoded data unit from each seed, and after receiving n data units, the decoding is performed by the peer in the download request sent to each seed. The corresponding column vector is acquired from the network coding coefficient table generated by the network coding coefficient ID generated by itself and used as the coding coefficient of each seed. Then, each seed is coded according to the coding coefficient of each seed. Decoding for n data units from.
上記ネットワーク符号化係数IDは、符号化係数モジュロ値および符号化係数インデックスを含み、ピアが、各シードに送信されたダウンロード要求に付けられたネットワーク符号化係数IDにより、自身で生成したネットワーク符号化係数テーブルから、相応の列ベクトルを取得して、各シードの符号化係数とすることは、ピアが、下記の計算式i=x×k+yによって、各シードで符号化係数として選択される列ベクトルの、ネットワーク符号化係数テーブルにおける番号をそれぞれ算出する、ことを含み、ここで、iはネットワーク符号化係数テーブルにおける列ベクトルの番号であり、xとyは1つのシードの符号化係数モジュロ値と符号化係数インデックスであり、kは非負整数である。 The network coding coefficient ID includes a coding coefficient modulo value and a coding coefficient index, and the network coding coefficient generated by the peer itself by the network coding coefficient ID attached to the download request transmitted to each seed. Obtaining a corresponding column vector from the coefficient table and using it as the encoding coefficient of each seed means that the peer is selected as an encoding coefficient in each seed by the following formula i = x × k + y. Respectively, wherein i is a column vector number in the network coding coefficient table, x and y are coding coefficients modulo values of one seed, and It is a coding coefficient index, and k is a non-negative integer.
上記データは、1つのファイルであり、前記データ単位は前記ファイルを分割して得られた少なくとも1つの情報セグメントである。あるいは、上記データは、1つのファイルを分割して得られた複数の情報セグメントのうちの1つであり、前記データ単位は、該データセグメントに含まれる少なくとも1つのデータブロックである。 The data is one file, and the data unit is at least one information segment obtained by dividing the file. Alternatively, the data is one of a plurality of information segments obtained by dividing one file, and the data unit is at least one data block included in the data segment.
本発明の実施例により提供されているネットワークノードは、任意のn列(nは、伝送対象データから分割されたデータ単位の数を表す)がいずれも線形独立であるネットワーク符号化係数テーブルを生成するネットワーク符号化係数テーブル生成手段と、データを提供する全てのシードをトラッカーから取得するシード情報取得手段と、各シードのそれぞれに対して、要求されるダウンロード対象データIDとネットワーク符号化係数IDとが少なくとも含まれるダウンロード要求を生成して、ダウンロード要求を相応のシードに送信するダウンロード要求生成手段と、各シードのそれぞれに対して、生成したダウンロード要求におけるネットワーク符号化係数IDにより、自身で生成したネットワーク符号化係数テーブルから、相応の列ベクトルを取得して、各シードのネットワーク符号化係数とする符号化係数生成手段と、ネットワーク符号化されたデータ単位を各シードから受信して、n個のデータ単位を受信した後、各シードのネットワーク符号化係数により、復号化を行って、ダウンロード対象データを得るデータ受信・復号化手段と、を含む。 The network node provided by the embodiment of the present invention generates a network coding coefficient table in which any n columns (n represents the number of data units divided from transmission target data) are all linearly independent. Network coding coefficient table generating means, seed information obtaining means for obtaining all seeds for providing data from the tracker, and a required download target data ID and network coding coefficient ID for each seed. A download request generation means for generating a download request including at least a download request and transmitting the download request to a corresponding seed, and for each seed, the network encoding coefficient ID in the generated download request is generated by itself. Corresponding column from network coding coefficient table After obtaining the vector data, the coding coefficient generation means for obtaining the network and obtaining the network coding coefficient of each seed, and receiving the network-encoded data unit from each seed, and receiving the n data units, Data receiving / decoding means for performing decoding using network coding coefficients to obtain download target data.
ここで、上記ネットワーク符号化係数テーブル生成手段は、異なる基数を有してかつ基数がn以上である少なくとも1つの行列を生成するネットワーク符号化係数行列生成モジュールと、nの大きさにより、生成した少なくとも1つの行列の中から、1つを選択して、ネットワーク符号化係数テーブルとするネットワーク符号化係数テーブル選択モジュールと、を含む。 Here, the network coding coefficient table generating means generates a network coding coefficient matrix generation module that generates at least one matrix having a different radix and having a radix of n or more, and the size of n A network coding coefficient table selection module that selects one of at least one matrix to be a network coding coefficient table.
本発明の実施例により提供されているほかのネットワークノードは、任意のn列(nは、伝送対象データから分割されたデータ単位の数を表す)がいずれも線形独立であるネットワーク符号化係数テーブルを生成するネットワーク符号化係数テーブル生成手段と、ピアからのダウンロード要求を受信するダウンロード要求受信手段と、受信されたダウンロード要求に付けられたネットワーク符号化係数IDにより、自身で生成したネットワーク符号化係数テーブルから、相応の列ベクトルを取得して、ネットワーク符号化係数とする符号化係数生成手段と、取得されたネットワーク符号化係数により、自身に記憶された、ダウンロード要求に付けられたデータIDにより指示されたデータに含まれるデータ単位に対して、ネットワーク符号化を行って、符号化されたデータ単位をピアに送信するネットワーク符号化手段と、を含む。 The other network nodes provided by the embodiments of the present invention include a network coding coefficient table in which any n columns (n represents the number of data units divided from transmission target data) are all linearly independent. Network coding coefficient table generating means for generating a download request receiving means for receiving a download request from a peer, and a network coding coefficient generated by the network coding coefficient ID attached to the received download request The corresponding column vector is obtained from the table and designated as a coding coefficient generating means to be used as a network coding coefficient, and the data ID attached to the download request stored in itself by the obtained network coding coefficient. Network coding for data units included in the encoded data Go and comprises a network coding means for transmitting the encoded data units to a peer, a.
ここで、上記ネットワーク符号化係数テーブル生成手段は、異なる基数を有してかつ基数がn以上である少なくとも1つの行列を生成するネットワーク符号化係数行列生成モジュールと、nの大きさにより、生成した少なくとも1つの行列の中から、1つを選択して、ネットワーク符号化係数テーブルとするネットワーク符号化係数テーブル選択モジュールと、を含む。 Here, the network coding coefficient table generating means generates a network coding coefficient matrix generation module that generates at least one matrix having a different radix and having a radix of n or more, and the size of n A network coding coefficient table selection module that selects one of at least one matrix to be a network coding coefficient table.
上記データ伝送の過程において、各シードは、符号化係数を、ランダムに選択せず、ピアから送信されたダウンロード要求に付けられた符号化係数モジュロ値および符号化係数インデックスにより選択する。従って、各シードは、ネットワーク符号化されたデータ単位をピアに送信する際、符号化係数をピアに報告する必要がない。これにより、上記データ伝送の過程における制御オーバヘッドを大幅に低減させることができる。 In the data transmission process, each seed does not select a coding coefficient randomly, but selects a coding coefficient by a coding coefficient modulo value and a coding coefficient index attached to a download request transmitted from a peer. Thus, each seed does not need to report the coding coefficient to the peer when sending the network encoded data unit to the peer. As a result, the control overhead in the data transmission process can be greatly reduced.
また、各ネットワークノードで生成したネットワーク符号化係数テ―ブルにおける任意のn個の列ベクトルがいずれも線形独立であるため、ネットワーク符号化されたデータ単位も線形独立である。このようにして、ピアは、どのシードからデータを受信しても、n個のデータ単位を正確に受信しさえすれば、成功的に復号化して、伝送対象データを得ることができる。 In addition, since any n column vectors in the network coding coefficient table generated at each network node are all linearly independent, the network encoded data unit is also linearly independent. In this way, the peer can successfully decode and obtain the data to be transmitted as long as it correctly receives n data units, no matter what seed it receives.
上記の課題を解決するために、本発明の実施例は、ネットワーク符号化ベースのデータ伝送方法を提供している。図2に示すように、該方法は、主に以下のステップを含む。 In order to solve the above problems, an embodiment of the present invention provides a network coding based data transmission method. As shown in FIG. 2, the method mainly includes the following steps.
ステップ101で、ネットワークにおける各ネットワークノードは、それぞれネットワーク符号化係数テーブル(Network Coding Table)を生成する。
In
ここで、上記の各ノードは、データを提供するためのシードと、データのダウンロードを必要とするピアと、を含む。 Here, each of the above nodes includes a seed for providing data and a peer that requires data download.
上記ネットワーク符号化係数テーブルは、ネットワーク符号化係数の範囲を限定するものである。各ノードは、ネットワーク符号化係数テーブルにおける少なくとも1つの列ベクトルを選択して、伝送対象データの符号化係数とする。説明すべきものとして、異なるネットワークノードから送信された、ネットワーク符号化されたデータの間が冗長にならないように、各ネットワークノードで生成したネットワーク符号化係数テーブルは、下記の条件を満たす必要がある。即ち、ネットワーク符号化係数テーブルにおける任意のn個の列ベクトルは、互いに線形独立であり、ここで、nは、伝送対象データから分割されたデータ単位の数、つまり、ネットワーク符号化を行う必要があるデータ単位の数、例えば、P2Pファイル伝送サービスにおけるダウンロード対象ファイルの分割された情報セグメント数、あるいは、P2Pストリーミングサービスにおける各情報セグメント内に含まれる情報ブロック数など、を表す。 The network coding coefficient table limits the range of network coding coefficients. Each node selects at least one column vector in the network coding coefficient table as a coding coefficient of transmission target data. As a matter of explanation, the network coding coefficient table generated at each network node needs to satisfy the following conditions so that the network coded data transmitted from different network nodes does not become redundant. That is, arbitrary n column vectors in the network coding coefficient table are linearly independent from each other, where n is the number of data units divided from the transmission target data, that is, network coding needs to be performed. It represents the number of a certain data unit, for example, the number of information segments obtained by dividing a file to be downloaded in the P2P file transmission service, or the number of information blocks included in each information segment in the P2P streaming service.
上記方法がP2Pのアプリケーションに応用される場合、各ネットワークノード(データを提供するためのシードと、データのダウンロードを必要とするピアと、を含む)では、P2Pアプリケーションソフトウェアをインストールする時、同時にネットワーク符号化係数テーブルを生成することができる。 When the above method is applied to a P2P application, each network node (including a seed for providing data and a peer that requires data download) simultaneously installs the network when installing the P2P application software. An encoding coefficient table can be generated.
ステップ102で、ピア(Peer)は、トラッカー(Tracker)から、全てのシード(seed)を知った後、ダウンロード要求を各シードにそれぞれ送信する。該ダウンロード要求には、要求されるダウンロード対象データIDとネットワーク符号化係数IDとが少なくとも含まれる。
In
具体的に、本ステップにおいて、ピアは、まず、シードリスト要求メッセージをトラッカーへ送信することにより、データを提供できる全てのシードの情報をトラッカーへ要求し、トラッカーは、シードリスト要求メッセージを受信した後、全てのシードのIDを含むシードIDリストをピアへリターンし、ピアは、トラッカーからリターンされたシードIDリストにより、データを提供する全てのシードを知る。 Specifically, in this step, the peer first requests the information of all seeds that can provide data by sending a seed list request message to the tracker, and the tracker receives the seed list request message. Thereafter, a seed ID list including IDs of all seeds is returned to the peer, and the peer knows all seeds providing data by the seed ID list returned from the tracker.
本ステップにおいて、前記ダウンロード対象データは、1つのファイルであってよく、1つのファイルを分割して得られた複数の情報セグメントのうちの1つであってよい。 In this step, the download target data may be one file or one of a plurality of information segments obtained by dividing one file.
また、本ステップにおいて、ダウンロード要求に含まれるネットワーク符号化係数IDは、1つのシードがネットワーク符号化を行う際に使用した符号化係数の、ネットワーク符号化係数テーブルにおける位置を指示するものである。好ましくは、ネットワーク符号化係数IDが、符号化係数モジュロ値と符号化係数インデックスとを含んでよい。この場合、各シードで符号化係数として選択される列ベクトルの番号iは、下記の計算式i=x×k+yによって、算出することができる。ここで、xは符号化係数モジュロ値であり、yは符号化係数インデックスであり、kは非負整数(0と正整数とを含む)である。各シードで選択される符号化係数が異なることを保証するために、好ましくは、ピアから各シードに送信されたダウンロード要求に付けられた符号化係数モジュロ値が同じである一方、符号化係数インデックスが同じではない。 In this step, the network coding coefficient ID included in the download request indicates the position in the network coding coefficient table of the coding coefficient used when one seed performs network coding. Preferably, the network coding coefficient ID may include a coding coefficient modulo value and a coding coefficient index. In this case, the column vector number i selected as an encoding coefficient in each seed can be calculated by the following calculation formula i = x × k + y. Here, x is a coding coefficient modulo value, y is a coding coefficient index, and k is a non-negative integer (including 0 and a positive integer). In order to ensure that the coding coefficient selected for each seed is different, preferably the coding coefficient modulo value attached to the download request sent from the peer to each seed is the same while the coding coefficient index Are not the same.
ステップ103で、各シードは、受信されたダウンロード要求に付けられた符号化係数IDにより、自身で生成したネットワーク符号化係数テーブルから、相応の列ベクトルを取得して、ネットワーク符号化係数とする。
In
上記のように、本ステップにおいて、ネットワーク符号化係数IDが、符号化係数モジュロ値と符号化係数インデックスとを含む場合、各シードは、下記の計算式i=x×k+yによって、自分のネットワーク符号化係数ベクトルを算出する。ここで、xは符号化係数モジュロ値であり、yは符号化係数インデックスであり、kは非負整数(0と正整数とを含む)である。 As described above, in this step, when the network coding coefficient ID includes a coding coefficient modulo value and a coding coefficient index, each seed is calculated according to the following formula i = xx × k + y according to its own network code. A quantization coefficient vector is calculated. Here, x is a coding coefficient modulo value, y is a coding coefficient index, and k is a non-negative integer (including 0 and a positive integer).
ステップ104で、各シードは、取得されたネットワーク符号化係数により、ダウンロード要求に付けられたデータIDにより指示されたデータに含まれるデータ単位に対して、ネットワーク符号化を行って、符号化されたデータ単位をピアに送信する。
In
本ステップにおいて、上記データが1つのファイルである場合、上記データ単位は、該ファイルを分割して得られた少なくとも1つの情報セグメントである。上記データが、1つのファイルを分割して得られた複数の情報セグメントのうちの1つである場合、上記データ単位は、該データセグメントに含まれる少なくとも1つのデータブロックである。 In this step, when the data is one file, the data unit is at least one information segment obtained by dividing the file. When the data is one of a plurality of information segments obtained by dividing one file, the data unit is at least one data block included in the data segment.
ステップ105で、ピアは、各シードからのネットワーク符号化されたデータ単位をそれぞれ受信して、n個のデータ単位を受信した後、復号化を行って、ダウンロード対象データを得る。
In
本ステップにおいても、ピアは、まず、各シードに送信されたダウンロード要求に付けられたネットワーク符号化係数IDにより、自身で生成したネットワーク符号化係数テーブルから、相応の列ベクトルを取得して、各シードの符号化係数としてから、各シードの符号化係数により、それぞれ各シードからのデータ単位に対して、復号化を行うことで、ダウンロード対象データを得る。具体的に、ネットワーク符号化係数IDが、符号化係数モジュロ値と符号化係数インデックスとを含む場合、ピアは、下記の計算式i=x×k+yによって、各シードで符号化係数として選択される列ベクトルの、ネットワーク符号化係数テーブルにおける番号を、それぞれ計算する。ここで、iはネットワーク符号化係数テーブルにおける列ベクトルの番号であり、xとyはそれぞれ、1つのシードの符号化係数モジュロ値と符号化係数インデックスであり、kは非負整数である。 Also in this step, the peer first obtains a corresponding column vector from the network coding coefficient table generated by itself by the network coding coefficient ID attached to the download request transmitted to each seed, The data to be downloaded is obtained by performing decoding on the data unit from each seed using the coding coefficient of each seed after the coding coefficient of the seed. Specifically, when the network coding coefficient ID includes a coding coefficient modulo value and a coding coefficient index, a peer is selected as a coding coefficient at each seed according to the following calculation formula i = x × k + y. The numbers of the column vectors in the network coding coefficient table are respectively calculated. Here, i is the column vector number in the network coding coefficient table, x and y are the coding coefficient modulo value and coding coefficient index of one seed, respectively, and k is a non-negative integer.
ここから分かるように、上記方法で使用される符号化係数は、ランダムに生成されたものでもなく、予め固定されたものでもない。従って、上記方法で使用されるネットワーク符号化方法は、半静的ネットワーク符号化と呼ばれてもよい。 As can be seen, the coding coefficients used in the above method are neither randomly generated nor fixed in advance. Therefore, the network coding method used in the above method may be called semi-static network coding.
上記のデータ伝送の過程において、各シードは、符号化係数を、ランダムに選択せず、ピアから送信されたダウンロード要求に付けられた符号化係数モジュロ値および符号化係数インデックスにより選択する。従って、各シードは、ネットワーク符号化されたデータ単位(情報セグメントあるいは情報ブロック)をピアに送信する際、符号化係数をピアに報告する必要がない。これにより、上記のデータ伝送の過程における制御オーバヘッドを大幅に低減させることができる。 In the above data transmission process, each seed does not select a coding coefficient at random, but selects a coding coefficient according to a coding coefficient modulo value and a coding coefficient index attached to a download request transmitted from a peer. Thus, each seed does not need to report the coding coefficients to the peer when transmitting a network encoded data unit (information segment or information block) to the peer. As a result, the control overhead in the data transmission process can be greatly reduced.
また、各ネットワークノードで生成したネットワーク符号化係数テーブルにおける任意のn個の列ベクトルがいずれも線形独立であるため、ネットワーク符号化されたデータ単位(情報セグメントあるいは情報ブロック)も線形独立である。このようにして、ピアは、どのシードからデータを受信しても、n個のデータ単位(情報セグメントあるいは情報ブロック)を正確に受信しさえすれば、成功的に復号化して、伝送対象データを得ることができる。 Also, since any n column vectors in the network coding coefficient table generated at each network node are all linearly independent, the network-encoded data unit (information segment or information block) is also linearly independent. In this way, a peer can successfully decode and transmit data to be transmitted as long as it correctly receives n data units (information segments or information blocks), no matter which seed it receives data from. Can be obtained.
以下、具体的な例を参照しながら、ネットワーク符号化係数テーブルの生成方法を詳細に説明する。 Hereinafter, a method for generating a network coding coefficient table will be described in detail with reference to a specific example.
上記のように、異なるシードから送信された、ネットワーク符号化されたデータの間が冗長にならないように、ネットワーク符号化係数テーブルは、下記の条件を満たす必要がある。即ち、ネットワーク符号化係数テーブルにおける任意のn個の列ベクトルはいずれも線形独立であり、ここで、nは、伝送対象データに含まれるデータ単位の数、例えば、1つのファイルに含まれる情報セグメント数、あるいは、1つの情報セグメントに含まれる情報ブロック数、を表す。通常、1つの情報セグメントに含まれる情報ブロック数は32〜256の間にある。従って、32≦n≦256と仮定してもよい。ネットワーク符号化係数テーブルは、下記の数式3に示す行列Aの形式を採用してもよい。
[数式3]
As described above, the network coding coefficient table needs to satisfy the following condition so that the network coded data transmitted from different seeds does not become redundant. That is, any n column vectors in the network coding coefficient table are all linearly independent, where n is the number of data units included in the transmission target data, for example, information segments included in one file Or the number of information blocks included in one information segment. Usually, the number of information blocks included in one information segment is between 32 and 256. Therefore, it may be assumed that 32 ≦ n ≦ 256. The network coding coefficient table may adopt the form of matrix A shown in
[Formula 3]
上記のように、行列Aにおける任意のn列がいずれも線形独立であれば、即ち、行列Aの基数(cardinality)がnであれば、行列Aにおける列ベクトルを符号化係数として得られたデータ単位(情報セグメントあるいは情報ブロック)の間は、冗長情報を含むことがない。この場合、ピアは、どのシードからデータを受信しても、n個のデータ単位を正確に受信しさえすれば、必ず成功的に復号化して、元のデータを得ることができる。つまり、行列Aの基数がn以上であることを保証しさえすれば、復号化失敗確率を大幅に低減させることができる。好ましくは、ネットワークノードが動的に離れることや、リンクエラーなどの要因を考慮して、Aの基数をnより大きいように設定すべきである。好ましくは、Aの基数を2nに設定してもよい。例えば、nが256である場合、Aの基数を512に設定してもよい。 As described above, if any n columns in the matrix A are linearly independent, that is, if the cardinality of the matrix A is n, the data obtained by using the column vector in the matrix A as an encoding coefficient Redundant information is not included between units (information segments or information blocks). In this case, even if the peer receives data from any seed, as long as it correctly receives n data units, it can always successfully decode and obtain the original data. That is, as long as it is ensured that the base of the matrix A is n or more, the decoding failure probability can be greatly reduced. Preferably, the radix of A should be set to be larger than n in consideration of factors such as the dynamic separation of network nodes and link errors. Preferably, the radix of A may be set to 2n. For example, when n is 256, the radix of A may be set to 512.
数学解析により分かるように、Aの基数がnであることを保証するための十分な条件は、有限体(GF)の大きさがnである、ということである。本明細書では、基数がnである行列Aを構成する一例が提供されている。 As can be seen from the mathematical analysis, a sufficient condition to ensure that the radix of A is n is that the size of the finite field (GF) is n. In the present specification, an example of constructing the matrix A whose radix is n is provided.
ヴァンデルモンド(Vandermonde)行列は、典型的な特徴を有する行列であり、下記の数式4で表すことができる。
[数式4]
The Vandermonde matrix is a matrix having typical characteristics, and can be expressed by the following
[Formula 4]
該行列は、下記の特性
を満足する。つまり、αi≠αjさえあれば、有限体(GF)の大きさがnである場合、ヴァンデルモンド行列から構成されたAは、基数がnであることを満足でき、即ち、任意のn列の線形独立を満足できる。
The matrix has the following properties:
Satisfied. That is, as long as α i ≠ α j, if the size of the finite field (GF) is n, A constructed from the Vandermonde matrix can satisfy that the radix is n, that is, any n Satisfy the linear independence of the columns.
実際の応用では、ダウンロード対象データに含まれるデータ単位の数により、有限体の大きさ、即ち、行列Aの基数を決定してから、任意のn個の列ベクトルが互いに線形独立である条件を満足する行列Aを、上記ヴァンデルモンド行列から構成する。具体的に、各ネットワークノードは、基数がn以上である行列をそれぞれ生成して、上記ネットワーク符号化係数テーブルとすることができる。 In actual application, after determining the size of the finite field, that is, the radix of the matrix A, according to the number of data units included in the download target data, the condition that any n column vectors are linearly independent from each other is set. A satisfied matrix A is constructed from the above Vandermonde matrix. Specifically, each network node can generate a matrix having a radix of n or more to form the network coding coefficient table.
以下、例を挙げて、本発明の実施例を詳細に説明する。図3は、ネットワーク符号化係数テーブル、および、各シードがネットワーク符号化係数を選択することを示す図である。 Examples of the present invention will be described below in detail with examples. FIG. 3 is a diagram illustrating a network coding coefficient table and each seed selecting a network coding coefficient.
まず、ネットワークにおける各ネットワークシードは、図3に示すようなネットワーク符号化係数テーブルを生成する。Peerは、あるデータをダウンロードする際、まず、トラッカーからフィードバックされたSeedIDリストにより、適当なシードを選択する。該適当なシードは、Seed1、Seed2、Seed3およびSeed4を含む。次に、Peerは、各Seedに対して、符号化係数モジュロ値Modと符号化係数インデックスIndexをそれぞれ選択する。例えば、Seed1に対して選択されたModが8であって、Indexが1であり、Seed2に対して選択されたModが8であって、Indexが2であり、Seed3に対して選択されたModが8であって、Indexが3であり、Seed4に対して選択されたModが8であって、Indexが4である。次に、Peerは、選択された符号化係数モジュロ値および符号化係数インデックスを相応のシードに送信する。その後、Seed1、Seed2、Seed3およびSeed4は、この2つの情報により、それぞれ符号化係数を選択してから、1つのファイルの情報セグメント、あるいは、1つの情報セグメントに含まれる情報ブロックに対して、符号化を行うことができる。例えば、Seed1は、ネットワーク符号化係数テーブルにおいて、(番号 MOD 8)が1である列ベクトルを選択して、符号化係数とする(例えば、第1,9,17...列)。Seed2は、ネットワーク符号化係数テーブルにおいて、(番号 MOD 8)が2である列ベクトルを選択して、符号化係数とする(例えば、第2,10,18...列)。Seed3は、ネットワーク符号化係数テーブルにおいて、(番号 MOD 8)が3である列ベクトルを選択して、符号化係数とする(例えば、第3,11,19...列)。Seed4は、ネットワーク符号化係数テーブルにおいて、(番号 MOD 8)が4である列ベクトルを選択して、符号化係数とする(例えば、第4,12,20...列)。上記の規則により符号化係数を選択すると、各Seedが同じ符号化係数を使用することなく、かつ、各Seedで使用される符号化係数が線形独立であると保証できる。
First, each network seed in the network generates a network coding coefficient table as shown in FIG. When downloading certain data, Peer first selects an appropriate seed from the SeedID list fed back from the tracker. Suitable seeds include Seed1, Seed2, Seed3, and Seed4. Next, Peer selects a coding coefficient modulo value Mod and a coding coefficient index Index for each Seed. For example, the Mod selected for Seed1 is 8, the Index is 1, the Mod selected for Seed2 is 8, the Index is 2, and the Mod selected for Seed3. Is 8, the Index is 3, the Mod selected for
ネットワークノードの演算量をできるだけ減少して、上記方法の性能をさらに最適化するために、ダウンロード対象データに含まれるデータ単位の数により、ネットワーク符号化係数行列の基数、つまり、有限体(GF)の大きさを調整し、さらに、生成したネットワーク符号化係数テーブルの大きさを動的に調整してもよい。例えば、ダウンロード対象データに含まれるデータ単位が比較的少ない場合、基数が比較的小さい行列を生成して、ネットワーク符号化係数テーブルとしてもよい。実際の応用では、ネットワークノードは、異なる基数を有してかつ基数がn以上である複数の行列を予め生成して、候補のネットワーク符号化係数テーブルとし、ダウンロード対象データに含まれるデータ単位の数により、全ての候補のネットワーク符号化係数テーブルから、1つの適当なネットワーク符号化係数テーブルを選択してもよい。それから、選択されたネットワーク符号化係数テーブルにより、符号化係数を得る。例えば、ネットワークにおける各ノードは、基数が64、128、256、および512である4つの行列をそれぞれ生成する。唯一違うのは、この4つの行列の有限体の大きさが、それぞれGF(64)、GF(128)、GF(256)、およびGF(512)である、という点である。シードは、ピアからのダウンロード要求を受信した後、ダウンロード対象データに含まれるデータ単位の数が32以下である場合、基数が64である行列を選択してネットワーク符号化係数テーブルとし、ダウンロード対象データに含まれるデータ単位の数が32より大きくかつ64以下である場合、基数が128である行列を選択してネットワーク符号化係数テーブルとし、ダウンロード対象データに含まれるデータ単位の数が64より大きくかつ128以下である場合、基数が256である行列を選択してネットワーク符号化係数テーブルとし、ダウンロード対象データに含まれるデータ単位の数が128より大きくかつ256以下である場合、基数が512である行列を選択してネットワーク符号化係数テーブルとする。当業者であれば理解できるものとして、上記方法において、ダウンロード対象データに含まれるデータ単位の数が比較的少ない場合、ネットワークノードの演算量をさらに低減させることができる。これにより、ネットワークノードの性能を最適化する目的を達成できる。
In order to further reduce the amount of computation of the network node and further optimize the performance of the above method, the radix of the network coding coefficient matrix, that is, the finite field (GF), depends on the number of data units included in the download target data. In addition, the size of the generated network coding coefficient table may be dynamically adjusted. For example, when the data unit included in the download target data is relatively small, a matrix having a relatively small radix may be generated and used as the network coding coefficient table. In an actual application, the network node generates in advance a plurality of matrices having different radixes and the radix is n or more to obtain a candidate network coding coefficient table, and the number of data units included in the download target data Thus, one appropriate network coding coefficient table may be selected from all candidate network coding coefficient tables. Then, the coding coefficient is obtained from the selected network coding coefficient table. For example, each node in the network generates four matrices with
上記方法以外、本発明は、また、ピアであるネットワークノードと、シードであるネットワークノードとの内部構成を提供している。 In addition to the above method, the present invention also provides an internal configuration of a network node that is a peer and a network node that is a seed.
ここで、図4は、ピアであるネットワークノードの内部構成を示す。図4に示すように、該ネットワークノードは、主に、任意のn列(nは、伝送対象データから分割されたデータ単位の数を表す)がいずれも線形独立であるネットワーク符号化係数テーブルを作成する伝送対象ネットワーク符号化係数テーブル生成手段と、データを提供する全てのシードをトラッカーから取得するシード情報取得手段と、各シードのそれぞれに対して、要求されるダウンロード対象データIDとネットワーク符号化係数IDとが少なくとも含まれるダウンロード要求を生成して、ダウンロード要求を相応のシードに送信するダウンロード対象ダウンロード要求生成手段と、各シードのそれぞれに対して、生成したダウンロード要求におけるネットワーク符号化係数IDにより、自身で生成したネットワーク符号化係数テーブルから、相応の列ベクトルを取得して、各シードのネットワーク符号化係数とする符号化係数生成手段と、ネットワーク符号化されたデータ単位を各シードから受信して、n個のデータ単位を受信した後、各シードのネットワーク符号化係数により、復号化を行って、ダウンロード対象データを得るデータ受信・復号化手段と、を含む。 Here, FIG. 4 shows an internal configuration of a network node as a peer. As shown in FIG. 4, the network node mainly has a network coding coefficient table in which any n columns (n represents the number of data units divided from transmission target data) are linearly independent. Transmission target network coding coefficient table generating means to be created, seed information obtaining means for obtaining all seeds providing data from the tracker, and required download target data ID and network coding for each seed A download target download request generating means for generating a download request including at least a coefficient ID and transmitting the download request to a corresponding seed, and for each of the seeds, according to the network encoding coefficient ID in the generated download request Network coding coefficient table generated by itself From which the corresponding column vector is obtained, and the coding coefficient generating means to obtain the network coding coefficient of each seed, and the network encoded data unit is received from each seed, and n data units are received. And data receiving / decoding means for performing decoding by using the network coding coefficient of each seed to obtain download target data.
さらに、上記ネットワーク符号化係数テーブル生成手段は、異なる基数を有してかつ基数がn以上である少なくとも1つの行列を生成するネットワーク符号化係数行列生成モジュールと、nの大きさにより、生成した少なくとも1つの行列の中から、1つを選択して、ネットワーク符号化係数テーブルとするネットワーク符号化係数テーブル選択モジュールと、を含んでよい。 Further, the network coding coefficient table generation means includes a network coding coefficient matrix generation module that generates at least one matrix having a different radix and a radix of n or more, and at least generated by the size of n. And a network coding coefficient table selection module that selects one from one matrix to be a network coding coefficient table.
図5は、シードであるネットワークノードの内部構成を示す。図5に示すように、該ネットワークノードは、主に、任意のn列(nは、伝送対象データから分割されたデータ単位の数を表す)がいずれも線形独立であるネットワーク符号化係数テーブルを作成するネットワーク符号化係数テーブル生成手段と、ピアからのダウンロード要求を受信するダウンロード要求受信手段と、受信されたダウンロード要求に付けられたネットワーク符号化係数IDにより、自身で生成したネットワーク符号化係数テーブルから、相応の列ベクトルを取得して、ネットワーク符号化係数とする符号化係数生成手段と、取得されたネットワーク符号化係数により、自身に記憶された、ダウンロード要求に付けられたデータIDにより指示されたデータに含まれるデータ単位に対して、ネットワーク符号化を行って、符号化されたデータ単位をピアに送信するネットワーク符号化手段と、を含む。 FIG. 5 shows an internal configuration of a network node as a seed. As shown in FIG. 5, the network node mainly has a network coding coefficient table in which any n columns (n represents the number of data units divided from transmission target data) are linearly independent. A network coding coefficient table generated by the network coding coefficient table generating means to be created, a download request receiving means for receiving a download request from a peer, and a network coding coefficient ID attached to the received download request From the coding coefficient generation means that obtains a corresponding column vector as a network coding coefficient and the acquired network coding coefficient, it is indicated by the data ID attached to the download request stored in itself. Network coding is applied to the data unit included in Comprising a network coding section for transmitted data units to a peer, a.
さらに、上記ネットワーク符号化係数テーブル生成手段は、異なる基数を有してかつ基数がn以上である少なくとも1つの行列を生成するネットワーク符号化係数行列生成モジュールと、nの大きさにより、生成した少なくとも1つの行列の中から、1つを選択して、ネットワーク符号化係数テーブルとするネットワーク符号化係数テーブル選択モジュールと、を含んでもよい。 Further, the network coding coefficient table generation means includes a network coding coefficient matrix generation module that generates at least one matrix having a different radix and a radix of n or more, and at least generated by the size of n. A network coding coefficient table selection module that selects one from one matrix to be a network coding coefficient table may be included.
以下、シミュレーションにより、本発明に係る方法と従来のランダムネットワーク符号化方法とを比較する。仮に、ネットワークにおけるネットワークノードの数は250であり、ダウンロード対象ファイルは50〜200個の情報セグメントを含み、各情報セグメントは32〜256個の情報ブロックを含むと仮定する。P2Pストリーミングサービスを応用して、ビデオファイルを視聴する際、各ネットワークノードは、20個の情報セグメントをバッファリングする必要がある。トラッカーは多くとも8個のピアのアクセスを許容し、各ネットワークノードは多くとも4個のピアのアクセスを許容し、各ネットワークノードは多くとも4個のピアのシードになることを許容する。上記の場合で、図6は、本発明の実施例に係る方法および従来のランダムネットワーク符号化方法を採用するとき、制御オーバヘッドが、各情報セグメントに含まれる情報ブロック数につれて変化する曲線である。図7は、本発明の実施例に係る方法および従来のランダムネットワーク符号化方法を採用するとき、制御オーバヘッドが、ダウンロード対象ファイルに含まれる情報セグメント数につれて変化する曲線である。図6と図7において、四角印の曲線は、本発明の実施例に係る方法を採用するときの制御オーバヘッドの変化曲線であるが、丸印の曲線は、従来のランダムネットワーク符号化を採用するときの制御オーバヘッドの変化曲線である。上記の曲線から分かるように、従来のランダムネットワーク符号化方法と比べて、本発明の実施例に係る方法は、制御オーバヘッドを大幅に低減させる。例えば、ランダムネットワーク符号化方法によれば、制御パケットのオーバヘッドは10%前後であるが、本発明の実施例に係る方法によれば、制御パケットのオーバヘッドは0.1%未満になる。 Hereinafter, the method according to the present invention and the conventional random network coding method are compared by simulation. Assume that the number of network nodes in the network is 250, the file to be downloaded includes 50 to 200 information segments, and each information segment includes 32 to 256 information blocks. When viewing a video file using a P2P streaming service, each network node needs to buffer 20 information segments. The tracker allows access of at most 8 peers, each network node allows access of at most 4 peers, and each network node allows seeding of at most 4 peers. In the above case, FIG. 6 is a curve in which the control overhead varies with the number of information blocks included in each information segment when the method according to the embodiment of the present invention and the conventional random network coding method are employed. FIG. 7 is a curve in which the control overhead varies with the number of information segments included in the file to be downloaded when the method according to the embodiment of the present invention and the conventional random network encoding method are employed. In FIGS. 6 and 7, the square curve is a change curve of control overhead when the method according to the embodiment of the present invention is adopted, but the circle curve adopts the conventional random network coding. It is a change curve of the control overhead at the time. As can be seen from the above curve, the method according to the embodiment of the present invention significantly reduces the control overhead compared to the conventional random network coding method. For example, according to the random network coding method, the overhead of the control packet is around 10%, but according to the method according to the embodiment of the present invention, the overhead of the control packet is less than 0.1%.
また、上記のように、本発明の実施例で生成したネットワーク符号化係数テーブルの任意のn列がいずれも線形独立であるため、ピアは、どのシードからデータを受信しても、n個のデータ単位を正確に受信しさえすれば、必ず成功的に復号化して、元のデータを得ることができる。これにより、復号化失敗確率を大幅に低減させる。 In addition, as described above, since any n columns of the network coding coefficient table generated in the embodiment of the present invention are all linearly independent, a peer can receive n data from any seed. As long as the data unit is received correctly, the original data can be obtained without fail. This greatly reduces the decoding failure probability.
上記は、本発明の好ましい実施例にすぎず、本発明の保護範囲を限定するものではない。本発明の精神と原則内で行われる種々の修正、均等置換え、改善などは全て本発明の保護範囲内に含まれるべきである。 The above are only preferred embodiments of the present invention and do not limit the protection scope of the present invention. Various modifications, equivalent replacements, improvements and the like made within the spirit and principle of the present invention should all be included in the protection scope of the present invention.
Claims (16)
ピアとシードはそれぞれ、任意のn個(nは、伝送対象データから分割されたデータ単位の数を表す)の列ベクトルが互いに線形独立であるネットワーク符号化係数テーブルを生成し、
ピアは、全てのシードをトラッカーから知った後、要求されるダウンロード対象データIDとネットワーク符号化係数IDとが含まれるダウンロード要求を各シードにそれぞれ送信し、
各シードは、受信されたダウンロード要求に付けられた符号化係数IDにより、自身で生成したネットワーク符号化係数テーブルから、相応の列ベクトルを取得して、ネットワーク符号化係数とし、
各シードは、取得されたネットワーク符号化係数により、ダウンロード要求に付けられたデータIDにより指示されたデータに含まれるデータ単位に対して、ネットワーク符号化を行って、符号化されたデータ単位をピアに送信し、
ピアは、各シードからのネットワーク符号化されたデータ単位をそれぞれ受信して、n個のデータ単位を受信した後、復号化を行って、ダウンロード対象データを得る、
ことを含むことを特徴とする方法。 A data transmission method comprising:
Each of the peer and the seed generates a network coding coefficient table in which arbitrary n number of column vectors (where n represents the number of data units divided from transmission target data) are linearly independent from each other,
After knowing all seeds from the tracker, the peer sends a download request including the requested download target data ID and network coding coefficient ID to each seed.
Each seed obtains a corresponding column vector from the network coding coefficient table generated by itself according to the coding coefficient ID attached to the received download request, and makes it a network coding coefficient.
Each seed performs network encoding on the data unit included in the data indicated by the data ID attached to the download request by the acquired network encoding coefficient, and the encoded data unit is peered. To
Each peer receives network encoded data units from each seed, receives n data units, and performs decoding to obtain download target data.
A method comprising:
ピアとシードがそれぞれ、基数がn以上である行列を生成して、前記ネットワーク符号化係数テーブルとする、
ことを含むことを特徴とする請求項1に記載の方法。 The peer and seed each generate a network coding coefficient table,
Each of the peer and the seed generates a matrix whose radix is n or more, and forms the network coding coefficient table.
The method of claim 1, comprising:
前記ピアとシードが、異なる基数を有してかつ基数がn以上である少なくとも2つの行列を生成して、nの大きさにより、1つの行列を選択して、ネットワーク符号化係数テーブルとする、
ことを含むことを特徴とする請求項1に記載の方法。 The peer and seed each generate a network coding coefficient table,
The peer and the seed generate at least two matrices having different radixes and the radix is not less than n, and select one matrix according to the size of n to form a network coding coefficient table;
The method of claim 1, comprising:
前記ピアとシードがそれぞれ、基数が64、128、256、および512である4つの行列を生成し、
ダウンロード対象データに含まれるデータ単位の数が32以下である場合、基数が64である行列を選択して、ネットワーク符号化係数テーブルとし、
ダウンロード対象データに含まれるデータ単位の数が32より大きくかつ64以下である場合、基数が128である行列を選択して、ネットワーク符号化係数テーブルとし、
ダウンロード対象データに含まれるデータ単位の数が64より大きくかつ128以下である場合、基数が256である行列を選択して、ネットワーク符号化係数テーブルとし、
ダウンロード対象データに含まれるデータ単位の数が128より大きくかつ256以下である場合、基数が512である行列を選択して、ネットワーク符号化係数テーブルとする、
ことを含むことを特徴とする請求項4に記載の方法。 The peer and the seed generate at least two matrices having different radixes and the radix is not less than n, and select one matrix according to the size of n to form a network coding coefficient table. Is
The peer and seed generate four matrices with radix 64, 128, 256, and 512 respectively;
When the number of data units included in the download target data is 32 or less, a matrix having a radix of 64 is selected as a network coding coefficient table,
When the number of data units included in the download target data is greater than 32 and less than or equal to 64, a matrix having a radix of 128 is selected as a network coding coefficient table,
When the number of data units included in the download target data is greater than 64 and less than or equal to 128, a matrix having a radix of 256 is selected as a network coding coefficient table,
When the number of data units included in the download target data is greater than 128 and less than or equal to 256, a matrix having a radix of 512 is selected to form a network coding coefficient table.
The method according to claim 4, further comprising:
ピアが、シードリスト要求メッセージをトラッカーへ送信することにより、データを提供できる全てのシードの情報をトラッカーへ要求し、
トラッカーが、シードリスト要求メッセージを受信した後、全てのシードIDを含むシードIDリストをピアへリターンし、
ピアが、トラッカーからリターンされたシードIDリストにより、データを提供する全てのシードを知る、
ことを含むことを特徴とする請求項1に記載の方法。 The peer knows all seeds from the tracker
The peer requests the tracker for information on all seeds that can provide data by sending a seedlist request message to the tracker,
After the tracker receives the seed list request message, it returns a seed ID list including all seed IDs to the peer,
Peer knows all seeds that provide data from the list of seed IDs returned from the tracker.
The method of claim 1, comprising:
各シードが、受信されたダウンロード要求に付けられた符号化係数IDにより、自身で生成したネットワーク符号化係数テーブルから、相応の列ベクトルを取得して、ネットワーク符号化係数とすることは、
各シードが、下記の計算式i=x×k+yによって、符号化係数として選択される列ベクトルの、ネットワーク符号化係数テーブルにおける番号を算出する、ことを含み、
ここで、iはネットワーク符号化係数テーブルにおける列ベクトルの番号であり、xは符号化係数モジュロ値であり、yは符号化係数インデックスであり、kは非負整数である、
ことを特徴とする請求項1に記載の方法。 The network coding coefficient ID includes a coding coefficient modulo value and a coding coefficient index;
Each seed obtains a corresponding column vector from the network coding coefficient table generated by itself according to the coding coefficient ID attached to the received download request, and makes it a network coding coefficient.
Each seed calculates a number in a network coding coefficient table of a column vector selected as a coding coefficient by the following formula i = xx × k + y:
Here, i is a column vector number in the network coding coefficient table, x is a coding coefficient modulo value, y is a coding coefficient index, and k is a non-negative integer.
The method according to claim 1.
ことを特徴とする請求項7に記載の方法。 The coding coefficient modulo value attached to the download request sent from the peer to each seed is the same, but the coding coefficient index is not the same,
The method according to claim 7.
ピアが、各シードに送信されたダウンロード要求に付けられたネットワーク符号化係数IDにより、自身で生成したネットワーク符号化係数テーブルから、相応の列ベクトルを取得して、各シードの符号化係数としてから、各シードの符号化係数により、それぞれ各シードからのn個のデータ単位に対して、復号化を行う、
ことを含むことを特徴とする請求項1に記載の方法。 The peer receives network encoded data units from each seed, respectively, receives n data units, and then performs decoding,
The peer obtains a corresponding column vector from the network coding coefficient table generated by itself by using the network coding coefficient ID attached to the download request transmitted to each seed, and uses it as the coding coefficient of each seed. Decoding for each of n data units from each seed, with the coding coefficient of each seed,
The method of claim 1, comprising:
ピアが、各シードに送信されたダウンロード要求に付けられたネットワーク符号化係数IDにより、自身で生成したネットワーク符号化係数テーブルから、相応の列ベクトルを取得して、各シードの符号化係数とすることは、
ピアが、下記の計算式i=x×k+yによって、各シードで符号化係数として選択される列ベクトルの、ネットワーク符号化係数テーブルにおける番号をそれぞれ算出する、ことを含み、
ここで、iはネットワーク符号化係数テーブルにおける列ベクトルの番号であり、xとyは1つのシードの符号化係数モジュロ値と符号化係数インデックスであり、kは非負整数である、
ことを特徴とする請求項9に記載の方法。 The network coding coefficient ID includes a coding coefficient modulo value and a coding coefficient index;
The peer obtains a corresponding column vector from the network coding coefficient table generated by itself by using the network coding coefficient ID attached to the download request transmitted to each seed, and sets it as the coding coefficient of each seed. That is
Each of the peers calculates a number in the network coding coefficient table of a column vector selected as a coding coefficient in each seed by the following formula i = xx × k + y:
Here, i is a column vector number in the network coding coefficient table, x and y are one seed coding coefficient modulo value and coding coefficient index, and k is a non-negative integer.
The method of claim 9.
ことを特徴とする請求項1〜10のいずれか1項に記載の方法。 The data is one of a plurality of information segments obtained by dividing one file, and the data unit is at least one data block included in the data segment.
11. The method according to any one of claims 1 to 10, wherein:
任意のn列(nは、伝送対象データから分割されたデータ単位の数を表す)がいずれも線形独立であるネットワーク符号化係数テーブルを生成するネットワーク符号化係数テーブル生成手段と、
データを提供する全てのシードをトラッカーから取得するシード情報取得手段と、
各シードのそれぞれに対して、要求されるダウンロード対象データIDとネットワーク符号化係数IDとが少なくとも含まれるダウンロード要求を生成して、ダウンロード要求を相応のシードに送信するダウンロード要求生成手段と、
各シードのそれぞれに対して、生成したダウンロード要求におけるネットワーク符号化係数IDにより、自身で生成したネットワーク符号化係数テーブルから、相応の列ベクトルを取得して、各シードのネットワーク符号化係数とする符号化係数生成手段と、
ネットワーク符号化されたデータ単位を各シードから受信して、n個のデータ単位を受信した後、各シードのネットワーク符号化係数により、復号化を行って、ダウンロード対象データを得るデータ受信・復号化手段と、
を含むことを特徴とするネットワークノード。 A network node,
Network coding coefficient table generating means for generating a network coding coefficient table in which any n columns (n represents the number of data units divided from transmission target data) are linearly independent;
Seed information acquisition means for acquiring all seeds providing data from the tracker;
Download request generating means for generating a download request including at least a download target data ID and a network coding coefficient ID required for each seed, and transmitting the download request to a corresponding seed;
For each seed, a code that obtains a corresponding column vector from the network coding coefficient table generated by itself using the network coding coefficient ID in the generated download request, and uses it as a network coding coefficient for each seed A coefficient generation means;
Data reception / decoding that receives network-encoded data units from each seed, receives n data units, and then performs decoding using the network encoding coefficient of each seed to obtain download target data Means,
A network node characterized by including:
異なる基数を有してかつ基数がn以上である少なくとも1つの行列を生成するネットワーク符号化係数行列生成モジュールと、
nの大きさにより、生成した少なくとも1つの行列の中から、1つを選択して、ネットワーク符号化係数テーブルとするネットワーク符号化係数テーブル選択モジュールと、
を含むことを特徴とする請求項13に記載のネットワークノード。 The network coding coefficient table generating means includes
A network coding coefficient matrix generation module for generating at least one matrix having a different radix and having a radix greater than or equal to n;
a network coding coefficient table selection module which selects one of the generated at least one matrix according to the size of n and sets it as a network coding coefficient table;
The network node according to claim 13, comprising:
任意のn列(nは、伝送対象データから分割されたデータ単位の数を表す)がいずれも線形独立であるネットワーク符号化係数テーブルを生成するネットワーク符号化係数テーブル生成手段と、
ピアからのダウンロード要求を受信するダウンロード要求受信手段と、
受信されたダウンロード要求に付けられたネットワーク符号化係数IDにより、自身で生成したネットワーク符号化係数テーブルから、相応の列ベクトルを取得して、ネットワーク符号化係数とする符号化係数生成手段と、
取得されたネットワーク符号化係数により、自身に記憶された、ダウンロード要求に付けられたデータIDにより指示されたデータに含まれるデータ単位に対して、ネットワーク符号化を行って、符号化されたデータ単位をピアに送信するネットワーク符号化手段と、
を含むことを特徴とするネットワークノード。 A network node,
Network coding coefficient table generating means for generating a network coding coefficient table in which any n columns (n represents the number of data units divided from transmission target data) are linearly independent;
Download request receiving means for receiving a download request from a peer;
Coding coefficient generation means for acquiring a corresponding column vector from the network coding coefficient table generated by itself using the network coding coefficient ID attached to the received download request, and making it a network coding coefficient;
A data unit encoded by performing network encoding on the data unit included in the data indicated by the data ID attached to the download request stored in itself by the acquired network encoding coefficient Network encoding means for transmitting to the peer;
A network node characterized by including:
異なる基数を有してかつ基数がn以上である少なくとも1つの行列を生成するネットワーク符号化係数行列生成モジュールと、
nの大きさにより、生成した少なくとも1つの行列の中から、1つを選択して、ネットワーク符号化係数テーブルとするネットワーク符号化係数テーブル選択モジュールと、
を含むことを特徴とする請求項15に記載のネットワークノード。 The network coding coefficient table generating means includes
A network coding coefficient matrix generation module for generating at least one matrix having a different radix and having a radix greater than or equal to n;
a network coding coefficient table selection module which selects one of the generated at least one matrix according to the size of n and sets it as a network coding coefficient table;
The network node according to claim 15, comprising:
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN200910251379.2 | 2009-12-03 | ||
| CN200910251379.2A CN102088331B (en) | 2009-12-03 | 2009-12-03 | Data transmission method and network node |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2011120227A JP2011120227A (en) | 2011-06-16 |
| JP5587735B2 true JP5587735B2 (en) | 2014-09-10 |
Family
ID=44099957
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2010240701A Expired - Fee Related JP5587735B2 (en) | 2009-12-03 | 2010-10-27 | Data transmission method and network node |
Country Status (2)
| Country | Link |
|---|---|
| JP (1) | JP5587735B2 (en) |
| CN (1) | CN102088331B (en) |
Families Citing this family (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102291202A (en) * | 2011-09-02 | 2011-12-21 | 北京大学深圳研究生院 | Compression method for network coding packet header |
| CN105979284B (en) * | 2016-05-10 | 2019-07-19 | 杨�远 | Mobile terminal video sharing method |
| US11108705B2 (en) * | 2019-04-30 | 2021-08-31 | Code On Network Coding, Llc | Linear network coding with pre-determined coefficient generation through parameter initialization and reuse |
| CN112217820B (en) * | 2020-09-27 | 2022-08-09 | 伍仁勇 | Network transmission method and system, and local coding core generation method and system |
| CN114679256A (en) * | 2020-12-24 | 2022-06-28 | 科大国盾量子技术股份有限公司 | Multipath key relay method, device and related equipment |
| CN114615014B (en) * | 2022-01-29 | 2023-03-17 | 北京航空航天大学 | Data transmission method and system for multilayer distributed network |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR101170629B1 (en) * | 2003-10-06 | 2012-08-02 | 디지털 파운튼, 인크. | Error-correcting multi-stage code generator and decoder for communication systems having single transmitters or multiple transmitters |
| US9178535B2 (en) * | 2006-06-09 | 2015-11-03 | Digital Fountain, Inc. | Dynamic stream interleaving and sub-stream based delivery |
| CN101174955B (en) * | 2006-10-30 | 2010-04-21 | 华为技术有限公司 | Shared content transmission method and system, content source and content receiver |
| CN101207552B (en) * | 2006-12-19 | 2012-01-11 | 株式会社Ntt都科摩 | Method for scheduling of data block and network node |
| JP2008172617A (en) * | 2007-01-12 | 2008-07-24 | Fujitsu Ltd | Encoding device, decoding device, encoding program, decoding program, data transfer system |
-
2009
- 2009-12-03 CN CN200910251379.2A patent/CN102088331B/en not_active Expired - Fee Related
-
2010
- 2010-10-27 JP JP2010240701A patent/JP5587735B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| CN102088331B (en) | 2015-01-14 |
| CN102088331A (en) | 2011-06-08 |
| JP2011120227A (en) | 2011-06-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP5788988B2 (en) | General file delivery method for providing non-uniform error protection and batch file delivery services | |
| US9350488B2 (en) | Content delivery system with allocation of source data and repair data among HTTP servers | |
| JP5587735B2 (en) | Data transmission method and network node | |
| JP5795446B2 (en) | Content delivery system with allocation of source data and repair data between HTTP servers | |
| US20060224760A1 (en) | Method and system for providing streaming content in a peer-to-peer network with network coding | |
| US9894421B2 (en) | Systems and methods for data representation and transportation | |
| CN105960767B (en) | Broadcast receiving device and operating method thereof | |
| JP2008048398A (en) | Method and system for delivering streaming media to fixed client or mobile client with multiple description bitstreams | |
| Saltarin et al. | NetCodCCN: A network coding approach for content-centric networks | |
| WO2016172875A1 (en) | Information transmission method, network device and terminal device | |
| JP2004180092A (en) | Information processing apparatus, information processing method, and computer program | |
| CN101540778B (en) | Method, device and system for transmitting data | |
| JP5814710B2 (en) | Data transmission method and apparatus based on network coding | |
| CN107995502B (en) | Method, equipment and system for realizing self-adaptive streaming media | |
| Gasiba et al. | Reliable and efficient download delivery with Raptor codes | |
| CN100452713C (en) | A network data assembly transmission method based on distributed coding storage | |
| JP2023549779A (en) | METHODS AND SYSTEM FOR CUSTOMIZED AUDIO AND/OR VIDEO CONTENT DELIVERY | |
| Liu et al. | Network coding for p2p live media streaming | |
| CN103168457B (en) | Generic file delivery method for unequal error protection and bundled file delivery services | |
| CN119211223A (en) | A real-time data broadcasting method based on dynamic adjustment of transmission rate | |
| KR20150000333A (en) | Data broadcasting method, and relay node and multiple node network using the same | |
| Tong et al. | Multisource FEC interleaving for mobile P2P streaming | |
| KR20190039490A (en) | Apparatus and method for transmitting and receiving packet in broadcasting and communication system | |
| de Fez et al. | Evaluation of adaptive LDPC AL-FEC codes for content download services | |
| WO2008055519A1 (en) | Method of supplying streams of data |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20131003 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140626 |
|
| 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: 20140708 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140724 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 5587735 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| LAPS | Cancellation because of no payment of annual fees |