JP2015100109A - ノード及びその通信方法並びにコンピュータ読出可能記録媒体 - Google Patents
ノード及びその通信方法並びにコンピュータ読出可能記録媒体 Download PDFInfo
- Publication number
- JP2015100109A JP2015100109A JP2014231900A JP2014231900A JP2015100109A JP 2015100109 A JP2015100109 A JP 2015100109A JP 2014231900 A JP2014231900 A JP 2014231900A JP 2014231900 A JP2014231900 A JP 2014231900A JP 2015100109 A JP2015100109 A JP 2015100109A
- Authority
- JP
- Japan
- Prior art keywords
- node
- packets
- requested
- packet
- network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1863—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast comprising mechanisms for improved reliability, e.g. status reports
- H04L12/1868—Measures taken after transmission, e.g. acknowledgments
- H04L12/1872—Measures taken after transmission, e.g. acknowledgments avoiding ACK or NACK implosion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0076—Distributed coding, e.g. network coding, involving channel coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
- H04L1/1628—List acknowledgements, i.e. the acknowledgement message consisting of a list of identifiers, e.g. of sequence numbers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
- H04L1/1671—Details of the supervisory signal the supervisory signal being transmitted together with control information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1863—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast comprising mechanisms for improved reliability, e.g. status reports
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
- H04L1/1621—Group acknowledgement, i.e. the acknowledgement message defining a range of identifiers, e.g. of sequence numbers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
- H04L1/1635—Cumulative acknowledgement, i.e. the acknowledgement message applying to all previous messages
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
- H04L1/1642—Formats specially adapted for sequence numbers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/189—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast in combination with wireless systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L2001/0092—Error control systems characterised by the topology of the transmission link
- H04L2001/0093—Point-to-multipoint
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5603—Access techniques
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
【解決手段】ネットワーク内のノードによって行われ、ネットワーク内の他のノードからパケット受信に対する他のノードのメッセージを受信するステップと、他のノードが要求するパケット数とノードが要求するパケット数とを比較するステップと、ノードが要求するパケット数が他のノードが要求するパケット数に比べて大きい場合、ノードのメッセージを送信するステップとを有し、他のノードのメッセージは、他のノードが要求するパケット数を示す情報を含み、ノードのメッセージは、ノードが要求するパケット数を示す情報を含む。
【選択図】 図1
Description
したがって、マルチキャストでパケットが送信される場合にパケットの損失が発生することがあるという問題がある。
また、コンテンツを所有する送信ノードは、コンテンツを複数のパケットとして送信してもよい。
送信ノードがマルチキャストで複数のパケットを送信する場合、送信中にコンテンツを構成するパケットが損失することがあるという問題がある。
第1の方法として、マルチキャストでパケットを送信する送信ノードは、受信ノードがパケットを受信したか否かを確認する方式である。
パケットを受信した受信ノードは、パケットを受信したことを示すACK(acknowledgement)メッセージを送信ノードに伝達する。
送信ノードは、ACKメッセージが送信されない場合、受信ノードへのパケット送信は失敗し、パケットが損失されたと判断する。送信ノードは損失されたパケットを再送信することによって、受信ノードが損失されたパケットを受信可能にする。
受信ノードは、ACKメッセージの代わりにNACK(Negative ACK)メッセージを送信する。
NACKメッセージは、受信ノードがパケットを受信できなかったことを示すメッセージであってもよい。
送信ノードから送信された1つ以上のパケットを受信するステップをさらに有し、前記ノードが要求するパケット数は、前記受信された1つ以上のパケットに対する復号化を行うために追加的に要求される最小のパケット数であることが好ましい。
前記受信された1つ以上のパケットは、マルチキャストで前記送信ノードから前記ノードに送信されることが好ましい。
前記受信された1つ以上のパケットそれぞれは、同一の識別子を含むことが好ましい。
前記受信された1つ以上のパケットは、ネットワークコーディングによって符号化され、前記ノードによって要求されるパケット数は、前記ネットワークコーディングによって符号化された1つ以上の受信された第1パケットを復号化するために追加的に要求される最小個数のパケットであることが好ましい。
前記受信された1つ以上のパケットは、ネットワークコーディングによって符号化され、前記ノードが要求するパケット数は、前記ネットワークコーディングによって符号化された前記受信された1つ以上のパケットをデコード化するために、追加的に要求される前記ネットワークコーディングによって符号化された他の1つ以上のパケット数であることが好ましい。
前記受信された1つ以上のパケットのそれぞれは、前記受信された1つ以上のパケットを復号化するために要求される最小のパケット数を示す情報を含むことが好ましい。
前記他のノードによって要求されるパケット数が前記最大パケット数の値よりも大きい場合、前記最大パケット数の値を前記他のノードが要求するパケット数の値に更新するステップをさらに有し、前記1つ以上の第1パケット数は、前記更新する前の他のノードが要求するパケット数と前記最大パケット数との差であることが好ましい。
1つ以上の受信ノードに1つ以上の第2パケットを送信するステップをさらに有し、前記他のノードは前記1つ以上の受信ノードの内の1つのノードであり、前記他のノードが要求するパケット数は、前記1つ以上の第2パケットに加えて、前記1つ以上の第2パケットのうち前記他のノードが受信した1つ以上の第3パケットを復号化するために追加的に要求されるパケット数であることが好ましい。
前記1つ以上の第2パケットは、マルチキャストによって前記ノードから前記1つ以上の受信ノードに送信されることが好ましい。
前記1つ以上の第1パケットそれぞれ、及び前記1つ以上の第2パケットそれぞれは、同一の識別子を含むことが好ましい。
前記1つ以上の第1パケット及び前記1つ以上の第2パケットは、ネットワークコーディングによって符号化されることが好ましい。
前記1つ以上の第1パケットのそれぞれは、前記1つ以上の第1パケットを復号化するために要求される最小のパケット数を示す情報を含み、前記1つ以上の第2パケットのそれぞれは、前記1つ以上の第3パケットを復号化するために要求される最小のパケット数を示す情報を含むことが好ましい。
前記通信部は、前記ネットワークで送信ノードから少なくとも1つの第1パケットを受信し、前記ノードによって追加的に要求されるパケット数は、前記少なくとも1つの第1パケットを復号化するために要求される追加的なパケット数であることが好ましい。
前記少なくとも1つの第1パケットは、オリジナルパケットの集合をネットワークコーディングして取得した第1パケットの集合の一部であり、前記第1パケットの集合での第1パケットの数は、前記オリジナルパケットの集合でのオリジナルパケットの数よりも大きく、前記通信部によって受信された少なくとも1つの第1パケットのうち、第1パケットの数に加えて、前記少なくとも1つの第1パケットを復号化するために要求される追加的なパケット数は、第1パケットの集合での第1パケットの数よりも小さいことが好ましい。
前記最大パケット数は、前記通信部によって受信された少なくとも1つのフィードバックメッセージに応答して、前記通信部によって以前に送信された追加的なパケットの総個数であることが好ましい。
前記通信部によって送信される、決定された追加的なパケット数を含むように前記最大パケット数を更新することが好ましい。
各図面に提示された同一の参照符号は同一の部材を示す。
例えば、「フレームの送信」及び「パケットの送信」は互いに代替されてもよく、「フレームの損失」及び「パケットの損失」は互いに代替されてもよい。「コード化されたパケット」は、「コード化されたフレーム」または「コード化されたフレームのデータを含むパケット」を意味する。
オリジナルコンテンツ110を所有する送信ノードは、オリジナルコンテンツ110をリクエストする受信ノードにコンテンツを送信する。送信ノードはコンテンツソースノードであってもよい。
オリジナルコンテンツ110は、1つ以上のオリジナルフレームを含んでもよい。図1に示すコンテンツは、4個のオリジナルフレームを含む。
コード化されたコンテンツは、1つ以上のコード化されたフレーム120を含んでもよい。
符号化は、ネットワークコーディングであってもよい。ネットワークコーディングは、行列ネットワークコーディング(Matrix Networking Coding;MNC)であってもよい。
入力情報はオリジナルフレームであり、出力情報はコード化されたフレームである。また、フレームがパケットとして送信される場合、入力情報はオリジナルパケットであり、出力情報はコード化されたパケットである。
言い換えれば、ネットワークコーディングによってオリジナルフレームに比べて多い数のコード化されたフレームが生成されてもよい。
送信ノードは、コード化されたフレームを受信ノードに送信する。
例えば、図1に示す受信ノードは、受信したコード化されたフレーム120を用いてオリジナルコンテンツ130を復元する。
受信ノードは、コード化されたフレームに対する復号化を行うことによって、オリジナルコンテンツ130を復元する。
コンテンツは、1つ以上のブロックから構成されてもよい。言い換えれば、コンテンツは、1つ以上のブロックを含んでもよい。
上述したオリジナルフレームは、コンテンツの1つのブロックのフレームであってもよい。
オリジナルコンテンツ110及び復元されたオリジナルコンテンツ130は、コンテンツの1つのブロックを示し得る。コンテンツ全体のオリジナルフレームは、ブロックごとに1つ以上のオリジナルフレームに区分してもよい。
1つ以上のコード化されたフレームは、コンテンツの1つのブロックのフレームが符号化されることによって生成されたフレームである。
識別子は、ブロック単位で付与されるブロック識別子であってもよい。
識別子は、コード化されたフレームが属するブロックを識別するために用いられるデータであってもよい。例えば、ネットワークコーディングによってコード化されたフレームが生成されれば、生成されたフレームは、生成されたフレームが属するブロックを識別できる識別子を含んでもよい。
1つのブロックのコード化されたフレームの共通した識別子は、対応するブロックを示すデータを含んでもよい。
対応するブロックを示すデータは、ブロックの順番であってもよい。
または、ブロックを示すデータは順次減少してもよい。例えば、特定ブロックの識別子は、特定ブロックのコンテンツ内での順序を示す。
受信ノードは、ブロック単位でコード化されたフレームの内の最小に要求される個数のコード化されたフレームを受信してもよく、受信したコード化されたフレームを用いてブロックを構成するオリジナルフレームを復元する。前記最小に要求される個数はオリジナルフレーム数以上であってもよい。
パケットは、コンテンツのフレームを含んでもよい。
コンテンツのフレームは、パケットとしてノード間で送信される。
コンテンツのフレームは、送信中に損失することがある。
以下の実施形態で、パケットの損失に対する早い復旧を提供する方法について説明する。
フレームが損失されたと判断した受信ノードは、送信ノードに他の対応するフレームの送信をリクエストする。
ここで、リクエストされる対応するフレームは、損失したパケットのフレームと同一の識別子を有するフレームである。パケットまたはフレーム再送信リクエストは、フレームの識別子に基づく。
再送信リクエストが識別子に基づくため、オリジナルフレームを送信した送信ノードの他にも、コンテンツ又は対応するフレームを有する無線ネットワーク内の他の受信ノードについても対応するフレームを送信してもよい。
例えば、受信ノードの損失したパケットのタイプは互いに異なってもよく、受信ノードのパケットの損失率は互いに異なってもよい。このような場合、受信ノードのそれぞれが識別子に基づいた再送信をリクエストすると、ソースノードだけではなく、周辺の受信ノードからもフレームが提供され得る。受信ノード間の相互補完が作用する。
例えば、識別子は、無線ネットワークのサービスに対するデータを含んでもよい。
無線ネットワークのサービスに対するデータは、TCP(Transmission Control Protocol)ポート又はUDP(User Datagram Protocol)ポートを示すデータを含んでもよい。
無線ネットワークでコンテンツの名前ベース(base on name)のネットワークプロトコルが用いられる場合、識別子はコンテンツの名前を含んでもよい。
以下の実施形態は、様々な識別子ベースネットワークプロトコルに適用され得る。
コンテンツブロックは、1つ以上のオリジナルフレームを含んでもよい。
図2に示すオリジナルブロック210は、10個のオリジナルフレーム220を含んで示す。オリジナルフレーム220は、「f1」〜「f10」で表示する。
図2に示す送信ノードは、10個のオリジナルフレーム220にネットワークコーディング(MNC)を適用することによって、20個のコード化されたフレーム230を生成するものとして示している。図2に示すコード化されたフレーム230は、「#f1」〜「#f20」で示す。
または、コード化されたフレーム230は送信用コード化されたフレーム及び格納用コード化されたフレームを含んでもよい。
図2に示す送信用コード化されたフレームは「#f1」〜「#f15」で示し、格納用コード化されたフレームは「#f16」〜「#f20」で示す。図2に示す実施形態のように、送信用コード化されたフレーム及び格納用コード化されたフレームは互いに異なってもよい。
コード化されたフレーム230のそれぞれはパケットとして送信される。
コード化されたフレーム230の生成及び送信は、ブロック単位からなり得る。受信ノードに送信するフレームは、コード化されたフレーム230の内の送信用コード化されたフレームに制限してもよい。
図2に示すように、20個のコード化されたフレーム230のうち、最初のコード化されたフレーム「#f1」、2番目のコード化されたフレーム「#f2」、4番目のコード化されたフレーム「#f4」、5番目のコード化されたフレーム「#f5」、及び15番目のコード化されたフレーム「#f15」のみが受信ノードに受信され、「X」で表示した残りのフレームは損失したものとして示している。
例えば、図2に示す受信ノードは、コード化されたフレーム230のうち10個のフレームのみを用いて10個のオリジナルフレーム220を復元してもよい。
オリジナルフレーム220を復元するために要求される最小限のコード化されたフレーム230の数は「10」である。
受信ノードは、各ブロック当たり10個のコード化されたフレーム230を受信すると、受信したコード化されたフレーム240を用いることによって復元されたブロック250を生成する。
前述したように、ネットワークコーディングを用いることによってパケット送信の成功率が向上する。
したがって、受信ノードがオリジナルフレームの復元のために要求される最小限の個数のコード化されたフレームを受信できない場合もある。
図2に示す受信ノードは、20個のコード化されたフレーム230のうち5個のみを受信するものとして示している。言い換えれば、受信されたフレーム240は、「#f1」、「#f2」、「#f4」、「#f5」及び「#f15」を含む。
ブロック又はオリジナルフレームを復元するために、受信ノードは追加的なコード化されたフレームを取得しなければならない場合がある。
追加的なコード化されたフレームの取得のために、受信ノードは送信ノードにコード化されたフレームの再送信をリクエストする。
「再送信リクエスト」は、「再送信リクエストのための損失情報メッセージの送信」に代替されてもよい。
損失情報メッセージは、コード化されたフレームの送信に対する受信ノードのフィードバックであってもよい。
損失情報メッセージは、受信ノードがブロック又はオリジナルフレームを復元するために追加的に要求されるコード化されたフレーム数を含んでもよい。
または、損失情報メッセージは、受信ノードが損失したフレーム数を含んでもよい。
識別子によって送信ノードは、損失情報メッセージの損失情報がどのようなブロックのコード化されたフレームに関する情報であるかを識別する。
図2に示す損失情報メッセージ260は、ブロックの識別子及び受信したコード化されたフレーム240の個数を含むものとして示している。
一方、ネットワークコーディングによって生成されたコード化されたフレームの損失を復旧するためには、損失したコード化されたフレームそのものではない他のコード化されたフレームを用いてもよい。
受信ノードは、すでに送信されたコード化されたフレーム及びさらに送信されたコード化されたフレームを用いることによって、ブロック又はオリジナルフレームを復元してもよい。
言い換えれば、他のコード化されたフレームが損失したコード化されたフレームに代替する。この代替によって、再送信のメカニズムが簡単になり、コード化されたフレームに対する再送信リクエストは減少する。
応答は、追加的なコード化されたフレームの送信であってもよい。
図2に示す応答(符号270)は、(n+α)個の追加的なコード化されたフレームを含むものとして示している。
前述したように、損失情報メッセージ260は受信ノードがブロック又はオリジナルフレーム220を復元するために追加的に要求されるコード化されたフレーム数を含んでもよい。
送信ノードは、追加的に要求されるコード化されたフレーム数よりも多い個数のコード化されたフレームを受信ノードに送信してもよい。または、送信ノードは、損失したフレーム数よりも多い個数の追加的なコード化されたフレームを受信ノードに送信してもよい。
応答(符号270)において、「n」はブロック又はオリジナルフレーム220を復元するために追加的に要求されるコード化されたフレーム数を示す。
「α」は、損失を考慮して送信ノードが追加したコード化されたフレーム数を示す。
上記格納は一時的な格納であってもよい。送信ノードは、コード化されたフレームの全てを一時的に格納してもよく、格納されたコード化されたフレームを時間の経過に応じて減少させてもよい。
例えば、送信ノードは、受信ノードから損失情報メッセージを受信した後には最小のコード化されたフレームのみを格納してもよい。または、送信ノードは、受信ノードから損失情報メッセージを受信するものと予測される時点では最小のコード化されたフレームのみを格納してもよい。
受信ノードがすでに取得したコード化されたフレームが再送信されても、ブロックの復元には影響を与えないためである。
言い換えれば、成功裏に送信されたコード化されたフレームが再送信されることを防止しなければならない。
送信ノードは、初めてコード化されたフレーム230を送信するときには送信用コード化されたフレームのみを受信ノードに送信し、再送信リクエストに応答するときには格納用コード化されたフレームを受信ノードに送信する。
したがって、再送信リクエスト時に追加的に送信されるコード化されたフレームと受信ノードがすでに受信したコード化されたフレームとが互いに異なることが保障される。
送信ノードは、オリジナルフレームにネットワークコーディングを適用することによって新しいコード化されたフレームを生成してもよい。
新しいコード化されたフレームは、従来のコード化されたフレームと互いに異なってもよい。図2に示すように、新しいコード化されたフレーム235として、コード化されたフレーム「*f1」〜「*f15」を示す。
送信ノードは、新しいコード化されたフレーム235を再送信リクエストの応答のために送信される追加的なコード化されたフレーム230として用いてもよい。
コンテンツが含む1つ以上のブロックに対して、送信ノードは1つ以上のブロックそれぞれのコード化されたフレーム230を格納する。
例えば、送信ノードは、より後で送信されたブロックに対して、さらに多い個数のコード化されたフレーム230を格納してもよい。
最小限のフレームのみを格納することによって、送信ノードは、最大限多くのブロックのコード化されたフレームを格納してもよく、最大限多くのブロックに対する損失を復旧することができる。
例えば、平均的に12個のパケットのうち2個のパケットが送信中に損失するとすれば、送信ノードは20個のコード化されたフレームのうち12個のみを受信ノードに送信し、残りの8個のコード化されたフレームを再送信リクエストに対する応答のために格納する。
又は、送信ノードは、20個のコード化されたフレームのうち、15個のみを受信ノードに送信し、残りの5個のコード化されたフレームは格納してもよい。
損失率が60%である場合、受信ノードは6個のコード化されたフレームのみを受信し。送信ノードは、再送信リクエストに対する応答として、格納された残りの5個のコード化されたフレームを受信ノードに送信する。
すなわち、パケットの損失率が大きいほど、送信ノードが格納するコード化されたフレーム数は大きくなる。
送信ノードは、再送信リクエストに対して直ちに応答できないことがある。
送信ノードは、再送信リクエストに対する応答を所定の条件に応じて遅延させてもよい。受信ノードが1つ以上である場合、1つ以上の受信ノードから再送信リクエストが送信される。応答を遅延することによって、複数の再送信リクエストに対する集合が形成され得る。
また、送信ノードは、1つ以上の受信ノードから再送信リクエストが送信されるとき、再送信の後に一定時間の間は重複送信を行わない。
送信ノード又は受信ノードは、コード化されたフレームの識別子を活用することによって、パケット損失の復旧に要求する作業を行うことができる。
ネックワークは、1つ以上のノードを含んでもよい。
パケットを受信する受信ノードは1つ以上であってもよい。言い換えれば、送信ノードは、コンテンツブロックのコード化されたフレームを1つ以上の受信ノードに送信してもよい。例えば、マルチキャストの対象である受信ノードは複数であってもよい。
第1コンテンツ要請者320及び第2コンテンツ要請者330は、1つ以上の受信ノードに対応する。
1つ以上の受信ノードのそれぞれは、図1及び図2を参照して上述した受信ノードに対応する。
送信ノードは、複数の受信ノードから損失情報メッセージを受信してもよい。
図3に示すコンテンツソース310は、第1コンテンツ要請者320及び第2コンテンツ要請者330のそれぞれから損失情報メッセージを受信する。
受信ノードは、再送信リクエスト、例えば、損失情報メッセージを送信ノードに送信する。
上記送信は、マルチキャスト又はユニキャストを用いて行われ得る。再送信リクエストがマルチキャストによって送信される場合、送信ノードだけではなく、他の受信ノード、受信ノードの隣接ノードなどのようなネットワーク内の他のノードも再送信リクエストを受信する。
再送信リクエストがユニキャストを用いて送信される場合、他のノードもオーバヒアリング(overhearing)によって再送信リクエストを受信する。
言い換えれば、他のノードは、再送信リクエストの指定された受信者ではなくても、ネットワーク内における送受信に対するオーバヒアリングを行うことによって再送信リクエストを受信してもよい。
言い換えれば、他のノードも追加的なコード化されたフレームを受信ノードに送信してもよい。
送信ノード及び他のノードがそれぞれ異なる行列を用いるネットワークコーディングによって生成されたコード化されたフレームを送信すると、受信ノードのオリジナルフレームの復元成功率は向上する。
図3で、オリジナルフレームを復元するために要求されるコード化されたフレーム数は「2」であり、第1コンテンツ要請者320が格納するコード化されたフレーム数は「1」である。
受信ノードの第1コンテンツ要請者320は、送信ノードのコンテンツソース310に再送信リクエストを送信する。マルチキャスト又はオーバヒアリングによって再送信リクエストを受信した第2コンテンツ要請者330は、損失の復旧のために要求されるコード化されたフレームを第1コンテンツ要請者320に送信してもよい。
図3に示す損失復旧フレームは、他の受信ノードの第2コンテンツ要請者330から再送信リクエストを送信した第1コンテンツ要請者320に送信されるコード化されたフレームを示す。
例えば、送信ノードは、再送信リクエストが所定の時間内に送信された場合、重複する再送信を防止するために再送信リクエストに対して直ちに応答することなく、応答を所定の構成によって遅延させる。
受信した第1損失情報メッセージが示す損失したコード化されたフレーム数が以前に受信した第2損失情報メッセージが示す損失したコード化されたフレーム数よりも多ければ、送信ノードは、追加的なコード化されたフレームを送信してもよい。
言い換えれば、送信ノードは、第1損失メッセージに対応して送信するコード化されたフレーム数を決定することにおいて、以前に受信した第2損失メッセージに対応してすでに送信されたコード化されたフレーム数を考慮する。送信ノードは、今回の損失情報メッセージでリクエストされたコード化されたフレーム数から、以前の損失情報メッセージに対応して送信されたコード化されたフレーム数を引いた値を、送信するコード化されたフレーム数として決定してもよい。
所定の時間は、ルーティングトリップ(trip)時間に基づいた重複送信を防止するための時間であってもよい。
例えば、受信ノードがマルチキャストトラフィックを持続して受信できない場合についても、送信ノードは、損失したコード化されたフレームの復旧を提供することができる。
応答の遅延は、アプリケーション、コンテンツ、オリジナルフレーム、及びコード化されたフレームのタイプ、又は属性に応じて相違して行われてもよい。
ネットワーク内でファイルを送信するためのマルチキャストが行われる場合、送信ノードは、ファイルの全体又はファイル全てのブロックの送信が完了した後、再送信リクエストに対する応答を行う。送信ノードは、ファイルの全体又はファイル全てのブロックの送信が完了した後まで応答が遅延されるように設定される。
送信ノードは、所定の条件が満足するまで応答が遅延されるように設定される。
例えば、送信ノードは、再送信が間欠的に行われるように設定してもよい。
送信ノードは、所定の周期により応答を遅延させる。
言い換えれば、送信ノードは、所定の周期により再送信リクエストに対する応答を行う。また、送信ノードは、ネットワーク内のトラフィックが所定の閾値以下になるまで応答を遅延させる。
上述した応答の遅延によって、送信ノードはパケット損失を復旧するための再送信を一括的に行う。一括的に実行することによって、マルチキャストの効果が向上される。
図3を参照して上述したように、送信ノードの他にも1つ以上の受信ノードのそれぞれも送信されたコード化されたフレームの一部を格納してもよい。
ネットワーク内のノードは、送信されたコード化されたフレームの全て又は一部を他のノードに提供するために格納してもよい。
上記格納は、一時的なキャッシュであってもよい。
1つ以上のコンテンツ要請者などとして、第1コンテンツ要請者420、第2コンテンツ要請者430、及び第3コンテンツ要請者440を示す。
また、図4に示すように、後でネットワークに追加された遅延到着者(latecomer)450を示す。
コンテンツソース410は、図1〜図3を参照して上述した送信ノードに対応する。
第1コンテンツ要請者420、第2コンテンツ要請者430、第3コンテンツ要請者440、及び遅延到着者450のそれぞれは、図1〜図3を参照して上述した受信ノードに対応する。
前記格納は、キャッシュであってもよい。例えば、受信ノードは、時間の流れにより格納され、長く格納されたコード化されたフレーム又はリクエストされて長く格納されたコード化されたフレームを除去し、新しいコード化されたフレームを格納してもよい。
上記格納は、ブロックごとに行われてもよい。受信ノードは、特定ブロックのコード化されたフレームの全て又は一部を格納してもよい。
又は、1つ以上の受信ノードは、所定の条件により一部のコード化されたフレームを選択してもよい。所定の条件は、1つ以上の受信ノード間のコード化されたフレームの格納における重複を防止したり、重複を減少させるための条件であってもよい。
例えば、受信ノードは、受信ノードの識別子によりコード化されたフレームのうち一部のコード化されたフレームを選択する。又は、1つ以上の受信ノードは、プロトコルにより1つ以上の受信ノードのそれぞれが格納する一部のコード化されたフレームを選択してもよい。
再送信リクエストが送信される場合、1つの受信ノードが再送信をリクエストするとき、送信ノードだけではなく、再送信リクエストを受信した隣接する他の受信ノードも格納されたコード化されたフレームを、再送信をリクエストした受信ノードに送信してもよい。
再送信リクエストは、マルチキャストによって他の受信ノードに送信されてもよい。又は、他の受信ノードは、ユニキャストによって行われる再送信リクエストをオーバヒアリングしてもよい。
コード化されたフレームの分散した格納及び分散した送信によって、送信性能を向上することができる。
また、遅延到着者450は、コンテンツソース410と共に、1つ以上のコンテンツ要請者からも再送信リクエストに対する追加的なコード化されたフレームを受信する。
図5に示すオリジナルコンテンツ510は、1つ以上のオリジナルフレームで構成される。
オリジナルコンテンツ510は、1つ以上のオリジナルフレームを含んでもよい。
コード化されたコンテンツ520は、1つ以上のコード化されたフレームを含んでもよい。
言い換えれば、図5において、受信ノードは、多重ソースからのコード化されたフレーム530を用いてオリジナルコンテンツ540を復元する。
多重ソースは、送信ノードを含んでもよい。
したがって、多重ソースは、ネットワーク内の1つ以上の他の受信ノードを含んでもよい。また、多重ソースは、ネットワーク内のコード化されたフレームを有する1つ以上の他のノードを含んでもよい。
例えば、図5において、多重ソースからのコード化されたフレーム530を用いてオリジナルコンテンツ540を復元する。
受信ノードは、多重ソースからのコード化されたフレーム530に対する復号化を行うことによってオリジナルコンテンツ540を復元する。
図1から図5を参照して上述したように、再送信リクエストは、損失情報メッセージを用いて送信されてもよい。
また、損失情報メッセージは1つのブロックに対応してもよく、対応するブロックの識別子を含んでもよい。
図6に示す集合された損失情報メッセージ600は、「S_MAC」フィールド610、「D_MAC」フィールド620、1つ以上のブロック識別子(ID)フィールド630、及び1つ以上のカウントフィールド640を含み得る。
「D_MAC」フィールド620は、目的地のMACアドレスを示す。目的地は、図1〜図5を参照して上述した受信ノードであってもよい。
ブロック識別子(ID)フィールドは、ブロックの識別子を示す。
カウントフィールド640は、追加的に要求されるコード化されたフレーム数を示す。
上記集合によって、ネットワーク内で発生するトラフィックが減少し得る。
言い換えれば、集合された損失情報メッセージは、受信ノードによって集合された1つ以上のブロックに対する損失情報を含む損失マップ(map)であってもよい。
また、集合された損失情報メッセージは、1つ以上のブロックの各ブロックに対して受信ノードがブロック又はオリジナルフレームを復元するために追加的に要求されるコード化されたフレーム数を含む。
又は、集合された損失情報メッセージは、1つ以上のブロックの各ブロックに対して受信ノードが損失したフレーム数を含んでもよい。
ブロック識別子によって、送信ノードは、損失情報メッセージの損失情報がどのようなブロックのコード化されたフレームに関する情報であるかを識別する。
コード化されたフレームのカウンタは、(1)受信ノードが実際に受信した各ブロックのコード化されたフレーム数、(2)受信ノードが各ブロックを復元するために追加的に要求される各ブロックのコード化されたフレーム数、又は、(3)各ブロックのコード化されたフレームのうち受信ノードが損失したフレーム数であってもよい。
例えば、コンテンツがファイルである場合、コンテンツ全体のブロックに対して損失情報を集合されてもよい。
受信ノードは、ファイルの全てが送信された後集合された損失情報メッセージを生成及び送信する。
コード化されたフレームの送信と集合された損失情報メッセージの送信とを時間的に分離することによって、受信ノードはコード化されたフレームのマルチキャストを通した送信が、再送信リクエストの送信及び再送信リクエストによる追加的なコード化されたフレームの送信による妨害を受けないようにする。
ここで、妨害とは、競合、衝突、及び干渉の内の1つ以上であり得る。
集合の範囲は、集合された損失情報メッセージのブロックの送信時点に基づいて決定されてもよい。
例えば、集合された損失情報メッセージが順次的な複数のブロックに対する損失情報を含む場合、集合の範囲は所定の時間間隔内で送信される複数のブロックを含むように決定されてもよい。
ノード700は、図1〜図6を参照して上述したネットワーク内のノード、送信ノード、及び受信ノードにそれぞれに対応する。
言い換えれば、図1〜図6を参照して上述したノード、送信ノード、及び受信ノードに対する説明は、ノード700にも適用される。
図1〜図6を参照して上述したネットワーク内のノードは、それぞれ通信部、処理部、及び格納部を含み得る。
例えば、通信部710は、他のノードにコード化されたフレーム及び再送信リクエストを送信する。
また、通信部710は、他のノードからコード化されたフレーム及び再送信リクエストを受信する。
例えば、処理部720は、コード化されたフレーム及び損失情報メッセージを生成し、コード化されたフレームに対する復号化を行うことによって、オリジナルコンテンツを復元する。
例えば、格納部730は、コンテンツ、オリジナルフレーム、生成されたコード化されたフレーム、受信したコード化されたフレーム、追加的なコード化されたフレーム、損失情報メッセージなどを格納する。
下記の実施形態では、受信ノードの通信方法を説明する。下記で説明される受信ノード及び他のノードは、それぞれ図7を参照して上述したノード700に対応する。
また、他のノード及び受信ノードは、送信ノードからコード化されたフレームを受信してもよい。
以下では、他のノードからのフィードバックメッセージは第1フィードバックメッセージと示し、受信ノードからのフィードバックメッセージは第2フィードバックメッセージと示す。
少なくとも1つの第1パケットは、図1〜図7を参照して上述したコード化されたフレームに対応する。
1つ以上の第1パケットは、マルチキャストで送信ノードから受信ノードに送信される。
マルチキャストによって追加的なパケットが送信される場合、又は、追加的なパケットの送信がオーバヒアリングされる場合、受信ノード自身がパケットをリクエストせずにネットワーク内の他のノードがパケットをリクエストした場合にも、受信ノードは追加的なパケットを共に受信してもよい。したがって、場合に応じて受信ノードは再送信リクエストを延期してもよい。
延期時間は、受信ノードがフィードバックメッセージを送信する前に待機する時間である。
受信ノードが要求するパケット数は、受信した1つ以上のパケットに対する復号化を行うために追加的に要求される最小パケット数を示す。
パケットエラー率(PER)は、送信ノードにパケット送信におけるエラー率を提供する。
送信ノードは、パケットエラー率を参照して受信ノードから要求された個数のパケット以外の追加的なパケットを送信する。
したがって、復号化は、受信された1つ以上の第1パケットに適用されたネットワークコーディングに対する復号化である。
言い換えれば、受信ノードの処理部は、延期時間が満了するまで受信ノードの第2フィードバックメッセージの送信を遅延させてもよい。
ステップS810の実行前に、延期時間は所定の値にセットされる。
延期時間が0以下である場合、ステップS855を実行する。
第1フィードバックメッセージのオーバヒアリングは、ネットワーク内で送信される他のノードの第1フィードバックを受信する。
例えば、第1フィードバックメッセージがマルチキャストによって他のノードから送信ノードに送信される場合、又は、受信ノードが他のノードの第1フィードバックメッセージをオーバヒアリングする場合、受信ノードも第1フィードバックメッセージを取得する。
第1フィードバックメッセージは、他のノードが要求するパケット数を示す情報を含んでもよい。
要求するパケット数を示す情報は、損失情報に対応する。
フィードバックメッセージが成功裏にオーバヒアリングされていない場合、ステップS810に戻り、後続工程を繰り返す。
受信ノードのNFDは、受信ノードが要求するパケット数を示す。
オーバヒアリングされたNFDは、オーバヒアリングされた第1フィードバックメッセージを送信した受信ノードが要求するパケット数を示す。
言い換えれば、受信ノードの処理部は、他のノードが要求するパケット数と受信ノードが要求するパケット数とを比較する。
また、他のノードは、オーバヒアリングされたNFDだけのパケットを追加的に受信すると、追加的に受信したパケットに対して復号化することによって、コンテンツ、ブロック、又はオリジナルフレームを復元する。
受信ノードのNFDがオーバヒアリングされたNFD以下である場合、手続を終了する。
受信ノードが第1フィードバックメッセージをオーバヒアリングしたことは、他のノードが送信ノードに第1フィードバックメッセージを送信したことを意味する。
他のノードから送信された第1フィードバックメッセージは、他のノードが要求するパケット数を示す情報を含み得る。したがって、送信ノードは少なくとも他のノードが要求する、受信ノードによって要求されたパケット数よりも大きいか、同じ個数だけのパケットを他のノード及び受信ノードなどに送信する。この送信は、マルチキャストによって行われ得る。したがって、受信ノードは、重複して第2フィードバックメッセージを送信する必要がない。
第2フィードバックメッセージは、マルチキャスティング又はオーバヒアリングによってネットワーク内の他のノードにも送信される。
上述したように、第2フィードバックメッセージは、受信ノードが要求するパケット数を示す情報を含む。
したがって、ステップS820及びステップS830における第1フィードバックメッセージのオーバヒアリングは、NFDに基づいたオーバヒアリングであってもよい。
第2フィードバックメッセージは、マルチキャスティング又はオーバヒアリングによってネットワーク内の他のノードにも送信される。
所定の時間は、ステップS810で説明した延期時間の初期値であってもよい。
処理部は、受信した異なるノードの第1フィードバックメッセージを分析した結果、自身が最も多いパケットを要求するため自身のフィードバックメッセージを送信する必要がある場合のみ、自身の第2フィードバックメッセージを送信する。
言い換えれば、受信ノードのフィードバックは、NFDに基づいて抑制(suppression)する。上記抑制は、ブロック単位からなる。
言い換えれば、上記抑制は、同一の識別子を有するパケット又は同一のブロック識別子を有するコード化されたフレームに対して行われる。
コード化されたフレームは、自身がいずれかのブロックに対するフレームであるかを示すためにブロック識別子を有する。また、受信ノードが受信した1つ以上の第1パケットは、同一の識別子を含む。同一の識別子は、パケットをブロックごとに区分するブロック識別子であってもよい。
識別子によって、受信されたパケットは、ブロック単位で区分される。
前記区分によって、受信ノードの処理部は、ブロックごとに上述したフィードバックを抑制する。
処理部は、要求される最小のパケット数から実際に受信された1つ以上の第1パケット数を差し引くことによって、受信ノードが要求するパケット数を算出してもよい。
以下の実施形態では、送信ノードの通信方法を説明する。
以下で説明する送信ノード及び他のノードは、それぞれ図7を参照して前述したノード700に対応する。
言い換えれば、ノード700の通信部710、処理部720、及び格納部730は、送信ノードの通信部、処理部、及び格納部にそれぞれに対応し、ノード700の通信部710、処理部720、及び格納部730は、他のノードの通信部、処理部、及び格納部にそれぞれに対応する。
また、他のノードは、送信ノードからコード化されたフレームを受信し得る。
他のノードは、図1〜図8を参照して上述した受信ノードであってもよい。
パケットは、図1〜図8を参照して上述したコード化されたフレームに対応する。
追加的なパケットがマルチキャストに送信される場合、又は、追加的なパケットがオーバヒアリングされる場合、再送信リクエストを送信した受信ノード以外の他のノードも追加的なパケットを受信する。
したがって、送信ノードは、特定の時間の間に再送信リクエストに対する応答を直ちに送信せず、複数の受信ノードからの再送信リクエストを受信する。
再送信リクエストの受信後、送信ノードは、最も多い個数の追加的なパケットを要求するリクエストに応じて決定された個数のみの追加的なパケットを受信ノードに送信する。
この送信は、マルチキャストによって行われる。
ステップS905で送信された1つ以上のパケットを第1パケットと命名する。
1つ以上の第1パケットは、マルチキャストによって送信ノードから1つ以上の受信ノードに送信される。
遅延された応答時間は、送信ノードが追加的なパケットを最終的に送信する前の残った待機時間であってもよい。
ステップS910の実行前に、遅延された応答時間は所定の値にセットされる。
遅延された応答時間が「0」よりも大きいことは、送信ノードが最終的な追加的なパケット送信前にさらに待機しなければならないことを意味する。
遅延された応答時間が「0」以下である場合、ステップS970を実行する。
他のノードは、ステップS905の1つ以上の受信ノードのうち1つのノードであってもよい。
フィードバックメッセージは、ユニキャスト又はマルチキャストによって送信ノードに送信される。
フィードバックメッセージは、他のノードが要求するパケット数を示す情報を含んでもよい。
他のノードから送信されたフィードバックメッセージが受信されていないと判断された場合、ステップS910に戻り、工程を繰り返す。
言い換えれば、送信ノードの処理部及び通信部は、所定の時間の間、他のノードからフィードバックメッセージを待機する。
そして、ステップS940において、送信ノードの処理部は、現在NFDが最大NFDよりも大きいか否かを判断する。
最大NFDは、所定の期間の間に以前に受信したフィードバックメッセージから他の全てのノードによって要求するパケット数の最大値である。
言い換えれば、処理部は、他のノードが要求するパケット数と最大パケット数とを比較する。
他のノードが要求するパケット数は、他のノードが受信した1つ以上の第3パケットに対する復号化を行うために、少なくとも1つの第2パケットに加えて追加的に要求されるパケット数であってもよい。
言い換えれば、ステップS920及びステップS930の反復的な実行により、1つ以上のフィードバックメッセージを1つ以上の他のノードからそれぞれ受信する。
1つ以上のフィードバックメッセージは、フィードバックメッセージを送信した1つ以上の他のノードが要求するパケット数をそれぞれ示す。
最大NFDは、前記1つ以上の異なる全てのノードが要求するパケット数のうち最大値である。
所定の値は「0」であってもよい。
最大NFDは、前記1つ以上の他のノードが要求するパケット数及び前記所定の値の内の最大値であってもよい。
他の一例として、所定の値が「4」として設定され、2つの互いに異なるノードによって要求されるパケット数を示す2つのフィードバックメッセージ「1」及び「3」が他のノードから受信されれば、最大パケット数は「4」である。
最大パケット数は、所定期間の間に送信ノードにすでに送信された追加的なパケット数である。又は、最大パケット数は、送信ノードが追加的なパケットを送信するか否かを決定するために用いられる閾値であってもよい。
他のノードが要求するパケット数が、最大パケット数以下である場合、ステップS910に戻り、工程を繰り返す。
他のノードが要求するパケット数が最大パケット数以下であることは、他のノードが要求するパケットよりも多い追加的なパケットがすでに(マルチキャストによって)1つ以上の受信ノードに送信されたことを意味する。したがって、これ以上追加的なパケットが送信される必要はない。
ステップS950で、送信される1つ以上の追加的なパケットを1つ以上の第3パケットとして命名する。
又は、送信される追加されるパケット数は、他のノードが要求するパケット数と最大パケット数との差以上であってもよい。
処理部は、(1)他のノードが要求するパケット数と最大パケット数との差、(2)ネットワークのパケット損失率、及び(3)所定の値などを考慮して追加的なパケット数を決定してもよい。
更新された最大NFDの値は、送信ノードによって送信された追加的なパケットの総個数である。
又は、処理部は、最大パケット数の値を他のノードが要求するパケット数の値に更新してもよい。
上述したステップS910〜ステップS960によって、送信ノードは所定の期間の間、他のノードのフィードバックメッセージを待機する。
ステップS970において、送信された1つ以上の追加的なパケットを第4パケットとして命名する。
1つ以上の追加的なパケット数は、最大パケット数と同一であり得る。
例えば、ステップS910の実行前にすでに送信ノードの通信部が受信ノードからフィードバックメッセージを受信し、受信ノードが要求するパケット数が最大パケット数の初期値として設定されてもよい。
又は、図9で説明したものと異なって、例えば、最大パケット数の初期値が「0」である場合、ステップS970は実行されないまま手続を終了する。
送信ノードは、以前に送信された追加的なパケット又は遅延された応答時間の経過後に送信される追加的なパケット数を考慮し、受信ノードのリクエストに応じて他の追加的なパケットをさらに送信する必要があるか否かを判断する。
言い換えれば、送信ノードの応答はNFDに基づいて除去されてもよい。この除去は、ブロック単位からなってもよい。言い換えれば、この除去は、同一の識別子を有するパケット又は同一のブロック識別子を有するコード化されたフレームに対して行われ得る。
コード化されたフレームは、自身があるブロックに対するフレームであるか否かを示すためにブロック識別子を有する。
また、受信ノードがステップS905で受信する1つ以上の第1パケット、ステップS950で受信する1つ以上の第3パケット、及びステップS970で受信する1つ以上の第4パケットは同一の識別子を含み得る。
同一の識別子は、ブロック識別子であってもよい。識別子によって受信されたパケットは、ブロック単位に区分される。この区分により受信ノードの処理部は、ブロックごとにオリジナルパケット又はオリジナルフレームを復元することができる。
また、1つ以上の第1パケットは、1つ以上の第1パケットが復号化されるため、要求される最小のパケット数を示す情報を含み得る。これは、1つ以上の第2パケット、1つ以上の第3パケット、及び1つ以上の第4パケットにも共通する。
例えば、1つ以上の第2パケットは、1つ以上の第2パケットが復号化されるため、要求される最小のパケット数を示す情報を含み得る。
コンピュータ読取可能記録媒体は、プログラム命令、データファイル、データ構造などの内の1つ又はその組み合わせを含み得る。記録媒体に記録されるプログラム命令は、本発明の目的のために特別に設計されて構成されたものでもよく、コンピュータソフトウェア分野の技術を有する当業者にとって公知のものであり、使用可能なものであってもよい。
プログラム命令の例には、コンパイラによって作られるような機械語コードだけでなく、インタープリタなどを用いてコンピュータによって実行できる高級言語コードも含まれる。
上記したハードウェア装置は、本発明の動作を行うために1つ以上のソフトウェアモジュールとして作動するように構成されてもよく、その逆も同様である。
710 通信部
720 処理部
730 格納部
Claims (28)
- ネットワーク内のノードによって行われ、
前記ネットワーク内の他のノードからパケット受信に対する前記他のノードのメッセージを受信するステップと、
前記他のノードが要求するパケット数と前記ノードが要求するパケット数とを比較するステップと、
前記ノードが要求するパケット数が前記他のノードが要求するパケット数に比べて大きい場合、前記ノードのメッセージを送信するステップとを有し、
前記他のノードのメッセージは、前記他のノードが要求するパケット数を示す情報を含み、
前記ノードのメッセージは、前記ノードが要求するパケット数を示す情報を含むことを特徴とする通信方法。 - 所定の期間の間、メッセージを待機するステップと、
前記所定の期間の間に前記他のノードのメッセージが受信されなければ、前記ノードのメッセージを送信するステップとをさらに有することを特徴とする請求項1に記載の通信方法。 - 送信ノードから送信された1つ以上のパケットを受信するステップをさらに有し、
前記ノードが要求するパケット数は、前記受信された1つ以上のパケットに対する復号化を行うために追加的に要求される最小のパケット数であることを特徴とする請求項1に記載の通信方法。 - 前記受信された1つ以上のパケットは、マルチキャストで前記送信ノードから前記ノードに送信されることを特徴とする請求項3に記載の通信方法。
- 前記受信された1つ以上のパケットそれぞれは、同一の識別子を含むことを特徴とする請求項3に記載の通信方法。
- 前記受信された1つ以上のパケットは、ネットワークコーディングによって符号化され、
前記ノードによって要求されるパケット数は、前記ネットワークコーディングによって符号化された1つ以上の受信されたパケットを復号化するために追加的に要求される最小個数のパケットであることを特徴とする請求項3に記載の通信方法。 - 前記受信された1つ以上のパケットは、ネットワークコーディングによって符号化され、
前記ノードが要求するパケット数は、前記ネットワークコーディングによって符号化された前記受信された1つ以上のパケットをデコード化するために、追加的に要求される前記ネットワークコーディングによって符号化された他の1つ以上のパケット数であることを特徴とする請求項3に記載の通信方法。 - 前記受信された1つ以上のパケットのそれぞれは、前記受信された1つ以上のパケットを復号化するために要求される最小のパケット数を示す情報を含むことを特徴とする請求項3に記載の通信方法。
- 請求項1乃至請求項8のいずれか一項に記載の通信方法を実行するプログラムを収録したことを特徴とするコンピュータ読出可能記録媒体。
- ネットワーク内のノードであって、
前記ネットワーク内の他のノードからパケット受信に対する前記他のノードのメッセージを受信する通信部と、
前記他のノードが要求するパケット数及び前記ノードが要求するパケット数を比較する処理部とを備え、
前記他のノードのメッセージは、前記他のノードが要求するパケット数を示す情報を含み、
前記ノードのメッセージは、前記ノードが要求するパケット数を示す情報を含み、
前記通信部は、前記ノードが要求するパケット数が前記他のノードが要求するパケット数に比べて大きい場合、前記ノードのメッセージを送信することを特徴とするノード。 - ネットワークでノードによって行われる通信方法であって、
ネットワーク内の他のノードから前記フィードバックメッセージを受信するステップと、
前記他のノードが要求するパケット数と最大パケット数とを比較するステップと、
前記他のノードが要求するパケット数が前記最大パケット数に比べて大きい場合、1つ以上の第1パケットを送信するステップとを有し、
前記フィードバックメッセージは、前記他のノードが要求するパケット数を示す情報を含むことを特徴とする通信方法。 - 所定の期間の間、フィードバックメッセージを待機するステップと、
前記所定の期間の間に前記フィードバックメッセージが受信されなければ、1つ以上の第1パケットを送信するステップとをさらに有することを特徴とする請求項11に記載の通信方法。 - 前記他のノードによって要求されるパケット数が前記最大パケット数の値よりも大きい場合、前記最大パケット数の値を前記他のノードが要求するパケット数の値に更新するステップをさらに有し、
前記1つ以上の第1パケット数は、前記更新する前の他のノードが要求するパケット数と前記最大パケット数との差であることを特徴とする請求項11に記載の通信方法。 - 1つ以上の受信ノードに1つ以上の第2パケットを送信するステップをさらに有し、
前記他のノードは前記1つ以上の受信ノードの内の1つのノードであり、
前記他のノードが要求するパケット数は、前記1つ以上の第2パケットに加えて、前記1つ以上の第2パケットのうち前記他のノードが受信した1つ以上の第3パケットを復号化するために追加的に要求されるパケット数であることを特徴とする請求項11に記載の通信方法。 - 前記1つ以上の第2パケットは、マルチキャストによって前記ノードから前記1つ以上の受信ノードに送信されることを特徴とする請求項14に記載の通信方法。
- 前記1つ以上の第1パケットそれぞれ、及び前記1つ以上の第2パケットそれぞれは、同一の識別子を含むことを特徴とする請求項14に記載の通信方法。
- 前記1つ以上の第1パケット及び前記1つ以上の第2パケットは、ネットワークコーディングによって符号化されることを特徴とする請求項14に記載の通信方法。
- 前記1つ以上の第1パケットのそれぞれは、前記1つ以上の第1パケットを復号化するために要求される最小のパケット数を示す情報を含み、前記1つ以上の第2パケットのそれぞれは、前記1つ以上の第3パケットを復号化するために要求される最小のパケット数を示す情報を含むことを特徴とする請求項14に記載の通信方法。
- 請求項11乃至請求項18のいずれか一項に記載の通信方法を実行するプログラムを収録したことを特徴とするコンピュータ読出可能記録媒体。
- ネットワーク内のノードであって、
前記ネットワーク内の他のノードから、前記他のノードが要求するパケット数を示す情報を含むフィードバックメッセージを受信する通信部と、
前記他のノードが要求するパケット数と最大パケット数とを比較する処理部とを備え、
前記通信部は、前記他のノードが要求するパケット数が前記最大パケット数に比べて大きい場合、1つ以上の第1パケットを送信することを特徴とするノード。 - ネットワーク内のノードであって、
前記ネットワークで他のノードによって送信された追加的なパケットをリクエストする任意の第1フィードバックメッセージを受信する通信部と、
前記通信部が前記ノードによって要求される追加的なパケット数よりも大きいか又は同一の追加的なパケット数を要求する任意の第1フィードバックメッセージを受信できない場合、前記ノードによって要求される追加的なパケット数の要求をする第2フィードバックメッセージを生成するプロセッサとを備え、
前記通信部は、第2フィードバックメッセージを送信することを特徴とするノード。 - 前記プロセッサは、所定の期間の間、前記第1フィードバックメッセージが受信されたか否かに基づいて第2フィードバックメッセージを生成し、
前記通信部は、前記所定の期間が経過した後に、前記第2フィードバックメッセージを送信することを特徴とする請求項21に記載のノード。 - 前記通信部は、前記ネットワークで送信ノードから少なくとも1つの第1パケットを受信し、
前記ノードによって追加的に要求されるパケット数は、前記少なくとも1つの第1パケットを復号化するために要求される追加的なパケット数であることを特徴とする請求項21に記載のノード。 - 前記少なくとも1つの第1パケットは、オリジナルパケットの集合をネットワークコーディングして取得した第1パケットの集合の一部であり、
前記第1パケットの集合での第1パケットの数は、前記オリジナルパケットの集合でのオリジナルパケットの数よりも大きく、
前記通信部によって受信された少なくとも1つの第1パケットのうち、第1パケットの数に加えて、前記少なくとも1つの第1パケットを復号化するために要求される追加的なパケット数は、第1パケットの集合での第1パケットの数よりも小さいことを特徴とする請求項23に記載のノード。 - ネットワーク内のノードであって、
前記ネットワークで他のノードによって送信された、追加パケットを要求する所定のフィードバックメッセージを受信する通信部と、
最大パケット数を超過する前記通信部によって受信されたフィードバックメッセージによってリクエストされた追加的なパケット数に応答して送信される追加的なパケット数を決定するプロセッサとを備え、
前記通信部は、前記決定された送信される追加的なパケット数を送信することを特徴とするノード。 - 前記プロセッサは、所定の期間の間、前記通信部によって受信された任意のフィードバックメッセージに基づいて送信される追加的なパケット数を決定し、
前記通信部は、前記所定の期間が経過した後に前記送信される追加的なパケット数を送信することを特徴とする請求項25に記載のノード。 - 前記最大パケット数は、前記通信部によって受信された少なくとも1つのフィードバックメッセージに応答して、前記通信部によって以前に送信された追加的なパケットの総個数であることを特徴とする請求項25に記載のノード。
- 前記通信部によって送信される、決定された追加的なパケット数を含むように前記最大パケット数を更新することを特徴とする請求項25に記載のノード。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020130140580A KR102235671B1 (ko) | 2013-11-19 | 2013-11-19 | 통신 방법 및 장치 |
| KR10-2013-0140580 | 2013-11-19 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2015100109A true JP2015100109A (ja) | 2015-05-28 |
| JP6448320B2 JP6448320B2 (ja) | 2019-01-09 |
Family
ID=51982394
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2014231900A Active JP6448320B2 (ja) | 2013-11-19 | 2014-11-14 | ノード及びその通信方法並びにコンピュータ読出可能記録媒体 |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US20150139227A1 (ja) |
| EP (1) | EP2876832B1 (ja) |
| JP (1) | JP6448320B2 (ja) |
| KR (1) | KR102235671B1 (ja) |
| CN (1) | CN104660381B (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2022511616A (ja) * | 2019-01-29 | 2022-02-01 | ▲騰▼▲訊▼科技(深▲セン▼)有限公司 | ブロックチェーンシステムに基づく業務処理方法、装置、電子機器及びコンピュータプログラム |
| JPWO2024224697A1 (ja) * | 2023-04-24 | 2024-10-31 |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR102248911B1 (ko) * | 2014-10-13 | 2021-05-06 | 삼성전자주식회사 | 전자 장치 및 전자 장치에서 데이터를 처리하는 방법 |
| CN108667559B (zh) * | 2017-03-31 | 2020-12-15 | 华为技术有限公司 | 一种通信方法及设备 |
| US11777647B2 (en) | 2021-06-30 | 2023-10-03 | Electronics And Telecommunications Research Institute | Method and apparatus for traffic transmission in communication system |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH11136220A (ja) * | 1997-06-04 | 1999-05-21 | Toshiba Corp | 符号伝送方法、送信装置、受信装置および通信システム |
| WO2013179269A1 (en) * | 2012-06-01 | 2013-12-05 | Renesas Mobile Corporation | Method and apparatus for use in multicasting |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN100553358C (zh) * | 2003-10-08 | 2009-10-21 | 高通股份有限公司 | 在无线通信系统中用于反馈报告的方法和装置 |
| US7924761B1 (en) * | 2006-09-28 | 2011-04-12 | Rockwell Collins, Inc. | Method and apparatus for multihop network FEC encoding |
| EP2173054A1 (en) * | 2008-10-06 | 2010-04-07 | Thomson Licensing | Method for receiving and transmitting data blocks |
| WO2010117646A1 (en) * | 2009-04-09 | 2010-10-14 | Motorola, Inc. | Retransmission technique for a communication network |
| GB2482991B (en) * | 2011-08-24 | 2012-09-12 | Renesas Mobile Corp | Methods and apparatus for multicast transmission |
| US9369255B2 (en) * | 2012-10-18 | 2016-06-14 | Massachusetts Institute Of Technology | Method and apparatus for reducing feedback and enhancing message dissemination efficiency in a multicast network |
-
2013
- 2013-11-19 KR KR1020130140580A patent/KR102235671B1/ko active Active
-
2014
- 2014-09-23 US US14/494,344 patent/US20150139227A1/en not_active Abandoned
- 2014-11-14 JP JP2014231900A patent/JP6448320B2/ja active Active
- 2014-11-17 EP EP14193411.7A patent/EP2876832B1/en active Active
- 2014-11-17 CN CN201410652796.9A patent/CN104660381B/zh active Active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH11136220A (ja) * | 1997-06-04 | 1999-05-21 | Toshiba Corp | 符号伝送方法、送信装置、受信装置および通信システム |
| WO2013179269A1 (en) * | 2012-06-01 | 2013-12-05 | Renesas Mobile Corporation | Method and apparatus for use in multicasting |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2022511616A (ja) * | 2019-01-29 | 2022-02-01 | ▲騰▼▲訊▼科技(深▲セン▼)有限公司 | ブロックチェーンシステムに基づく業務処理方法、装置、電子機器及びコンピュータプログラム |
| JPWO2024224697A1 (ja) * | 2023-04-24 | 2024-10-31 | ||
| WO2024224697A1 (ja) * | 2023-04-24 | 2024-10-31 | 三菱電機株式会社 | コンテンツ配信システム、コンテンツ配信方法、及びコンテンツ配信プログラム |
| WO2024224441A1 (ja) * | 2023-04-24 | 2024-10-31 | 三菱電機株式会社 | コンテンツ配信システム、コンテンツ配信方法、及びコンテンツ配信プログラム |
| JP7657388B2 (ja) | 2023-04-24 | 2025-04-04 | 三菱電機株式会社 | コンテンツ配信システム、コンテンツ配信方法、及びコンテンツ配信プログラム |
Also Published As
| Publication number | Publication date |
|---|---|
| CN104660381A (zh) | 2015-05-27 |
| EP2876832A2 (en) | 2015-05-27 |
| KR102235671B1 (ko) | 2021-04-02 |
| JP6448320B2 (ja) | 2019-01-09 |
| US20150139227A1 (en) | 2015-05-21 |
| KR20150057347A (ko) | 2015-05-28 |
| EP2876832B1 (en) | 2020-10-07 |
| EP2876832A3 (en) | 2016-03-30 |
| CN104660381B (zh) | 2019-08-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN111740808B (zh) | 一种数据传输方法及装置 | |
| JP6448320B2 (ja) | ノード及びその通信方法並びにコンピュータ読出可能記録媒体 | |
| US8867510B2 (en) | Methods and apparatus to utilize network coding in a wireless network | |
| EP3531631A1 (en) | Data transmission method and apparatus | |
| US20110164621A1 (en) | Communication method for relay node and next node of the relay node for network coding | |
| JP2020502832A (ja) | データストリーミングの前方誤り訂正 | |
| CN105162706B (zh) | 组播传输方法、装置及系统 | |
| JP2014501059A (ja) | データ再送方法、データ再送装置、およびデータ再送システム | |
| CN103546258B (zh) | 一种数据传输方法及装置 | |
| CN108616334A (zh) | 报文传输方法及装置、系统、存储介质、电子装置 | |
| CN104768081A (zh) | 一种实现流量控制的丢包重传方法 | |
| CN101860423A (zh) | 一种协议分组传输的重传方法和装置 | |
| Dong et al. | In-packet network coding for effective packet wash and packet enrichment | |
| CN103546245B (zh) | 一种基于网络编码的数据包重传方法 | |
| JPWO2010064421A1 (ja) | 通信装置、通信方法 | |
| CN102986156B (zh) | 编码方法及设备、解码方法及设备、编解码系统 | |
| JP5220340B2 (ja) | 通信装置、通信システム、通信制御方法及び通信制御プログラム | |
| US11363125B2 (en) | Systems and methods for increasing reliability for media data distribution | |
| Phung et al. | Enhancing REST HTTP with random linear network coding in dynamic edge computing environments | |
| WO2025118559A1 (zh) | 数据确认传输方法、网络设备及存储介质 | |
| JP2009273094A (ja) | データ通信システム、データ通信端末、データ通信方法、およびプログラム | |
| CN118679723A (zh) | 选择重传连接的高效重路由 | |
| KR20160128149A (ko) | 데이터를 송수신하는 방법 및 단말기 | |
| KR20150053036A (ko) | 컨텐츠 송신기 및 컨텐츠 수신기와, 컨텐츠 송신 방법 및 컨텐츠 수신 방법 | |
| CN110166185A (zh) | 音频数据的处理方法、装置、存储介质和处理器 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170331 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180309 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180417 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180717 |
|
| 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: 20181113 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20181204 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6448320 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 |