CN104704760B - 多信源动态网络编码的方法及装置 - Google Patents

多信源动态网络编码的方法及装置 Download PDF

Info

Publication number
CN104704760B
CN104704760B CN201280075605.6A CN201280075605A CN104704760B CN 104704760 B CN104704760 B CN 104704760B CN 201280075605 A CN201280075605 A CN 201280075605A CN 104704760 B CN104704760 B CN 104704760B
Authority
CN
China
Prior art keywords
path
node
coding
information source
source node
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
Application number
CN201280075605.6A
Other languages
English (en)
Other versions
CN104704760A (zh
Inventor
李挥
侯韩旭
冯俊秋
张华宇
朱兵
韩元波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SHENZHEN SEWISE TECHNOLOGIES Co Ltd
Peking University Shenzhen Graduate School
Original Assignee
SHENZHEN SEWISE TECHNOLOGIES Co Ltd
Peking University Shenzhen Graduate School
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SHENZHEN SEWISE TECHNOLOGIES Co Ltd, Peking University Shenzhen Graduate School filed Critical SHENZHEN SEWISE TECHNOLOGIES Co Ltd
Publication of CN104704760A publication Critical patent/CN104704760A/zh
Application granted granted Critical
Publication of CN104704760B publication Critical patent/CN104704760B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0076Distributed coding, e.g. network coding, involving channel coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及构造一种多信源动态网络编码的方法,包括如下步骤:对一个所述对话所涉及的信源节点、接收节点及中间节点进行预处理;所述信源节点在当前对其请求数据的一个接收节点的所有路径上发送相同的数据包;依次判断所述路径中各链路上传输的、来自不同会话的数据包数量,设置编码路径并通知所述编码路径所涉及的信源节点;所述信源节点依据其收到的编码路径数据,选择一个或多个数据包分别在其到所述接收节点的多条路径上传输;所述中间节点将其接收到的数据包进行编码。本发明还涉及一种实现上述方法的装置。实施本发明的多信源动态网络编码的方法及装置,具有以下有益效果:其编码的复杂程度较低且不会降低数据吞吐量。

Description

多信源动态网络编码的方法及装置
技术领域
本发明涉及网络编码领域,更具体地说,涉及一种多信源动态网络编码的方法及装置。
背景技术
2000年诞生的网络编码(NC,Network Coding)提出了通信网络中单信源对多个接收点组播或广播时,如何达到由“最大流最小割定理”确定的网络通信容量极限的一个思路。
传统通信网络节点上的路由交换机只完成“存储-转发”功能,将信息看作“货物”,因而认为信息是不可叠加的。而这一认知上的局限导致网络难以达到最大流传输。NC指出如果允许路由交换机对输入的多条信息流编码后再发送,则可以使得网络通信可以达到最大流传输。这种类型的网络编码称为会话内(intra-session)网络编码,对于这种类型的网络编码,中间节点输出的数据为输入数据的线性组合。当接收节点收到足够多的相互独立的编码包时即可解码。但是在网络中对多个信源使用网络编码一直是个挑战,这种类型的网络编码称为多信源网络编码问题(multi-source network coding),也称为多会话(multi-session)网络编码问题或会话间(inter-session)网络编码问题。
当在网络中传输多个组播会话(session)时,一种简单实用的方法是为每个会话分配网络容量的一个子集。如果每个会话分配的子容量满足最大流最小割条件,则会话内网络编码可以达到该网络最大流的极限。然而对于一般的多信源网络编码问题,会话间网络编码才有可能达到网络吞吐量的最大值。一般而言,会话间网络编码比会话内网络编码更复杂,为了保证每个接收节点都能解码,编码时要更小心,不能简单的线性组合收到的数据包,因为接收节点很有可能没有足够的输入容量以解出编码包。
目前对于一般的多信源网络编码问题,还没有实用的吞吐量最佳的网络编码方法。文献[N.Ratnakar,R.Koetter and T.Ho,“Linear flow equations for networkcoding in the multiple unicast case,”in Proc.DIMACS Working Group NetworkCoding,Jan.2005.]介绍了用于多个单播会话的毒药-解药PA(poison-antidote)方法。文献[S.Katti,H.Rahul,W.Hu,D.Katabi,M.Medard,and J.Crowcroft,”XORs in the air:Practical wireless network coding,”in Proc.ACM SIGCOMM,Sep.2006.]介绍了应用在无线网络中的机会异或编码OXC(opportunistic XOR coding)方法。随后,文献[M.Kim,M.Medard,U.O’Reilly,and D.Traskov,“An evolutionary approach to inter-sessionnetwork coding,”in Proc.IEEE INFOCOM,Brazil,Apr.2009.]提出了选择随机线性编码(SRLC:Selective Random Linear Coding)方法,在该方法中,中间节点使用选择随机线性编码,而编码算法是由基因算法控制的。文献[Abdallah Khreishah,Chih-Chun Wang andNess B.Shroff,“Rate Control With Pairwise Intersession Network Coding”,inIEEE/ACM Trans.Networking,JUNE 2010.]提出了两个会话间网络编码算法PINC(pairwise inter-session network coding),PINC只允许对两个数据包进行编码,编码使用了随机线性网络编码。但是以上文章均没有考虑网络的动态改变。
对于上述的毒药-解药PA(poison-antidote)方法——PA跟踪所有的会话,当有节点对数据包编码时,把编码包称为毒药,而用于解码的数据包称为解药。每产生一个毒药,就必须马上发送一个解药;PA使用异或编码方法。PA的缺点是复杂度很高,其复杂度至少为O(mk|E||V|),其中m为会话的个数,k为允许编码的会话个数,并且没有考虑网络的动态改变。
对于上述的选择随机线性编码SRLC:中间节点使用选择随机线性编码,而编码系数是由基因算法控制的。其缺点是基因算法会随着会话数量的增大而变得很复杂,使得SRLC算法的复杂度很高,并且没有考虑网络的动态改变。
而对于上述的两个会话间网络编码算法PINC:PINC只允许对两个数据包进行编码,编码使用了随机线性网络编码。其缺点是复杂度较高,同时只允许在两个会话之间编码,吞吐量有一定降低。
此外,对于上述的机会异或编码OXC而言,其使用异或编码方法,计算复杂度较低。其缺点是编码节点的邻居节点需要马上解码,吞吐量有所降低,并且只适合应用在无线网络。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述编码复杂程度较高、可能会降低数据吞吐量的缺陷,提供一种复杂程度较低、不会降低数据吞吐量的多信源动态网络编码的方法及装置。
本发明解决其技术问题所采用的技术方案是:构造一种多信源动态网络编码的方法,包括如下步骤:
A)针对当前网络上存在的多个会话,分别对一个所述对话所涉及的信源节点、接收节点及中间节点进行预处理,使所述会话所涉及的信源节点得到当前该会话的路径参数,并使所述会话所涉及的多个链路的尾节点得到其链路参数;
B)所述信源节点在当前对其请求数据的一个接收节点的所有路径上发送相同的数据包;
C)依次判断所述路径中各链路上传输的、来自不同会话的数据包数量,如只有一个数据包,则设置该会话中涉及所述链路的路径为非编码路径;如所述链路上传输来自不同会话的数据包数量为|R(e)|个,其中,|R(e)|>1,则对于一个接收节点而言,设置该接收节点涉及的不同会话中的|R(e)|-1个路径为编码路径,剩余一个路径为非编码路径,并通知所述编码路径所涉及的信源节点;
D)所述信源节点依据其收到的编码路径数据,选择一个或多个数据包分别在其到所述接收节点的多条路径上传输;
E)所述中间节点将其接收到的不同信源节点发出的数据包进行编码并传输到所述接收节点。
更进一步地,所述步骤A)进一步包括:
A1)依据所述接收节点向所述信源节点提出的数据请求,分别查找由所述信源节点到所述接收节点的数据传输路径;并在所述信源节点上存储查找到的路径集合;
A2)依据得到的路径,依次由所述接收节点向所述信源节点逆向路由,得到每条路径中包括的多个链路,并在所述链路的尾节点上存储该链路参数;所述链路参数包括:涉及的信源节点、接收节点、路径数量和该链路所在路径编号。
更进一步地,所述步骤A)进一步包括:
A3)设置所有路径为非编码路径。
更进一步地,所述步骤C)进一步包括:
C1)判断所述链路收到的、来自不同信源节点且传输到同一个接收节点的数据包个数|R(e)|是否大于1,如是,执行步骤C3);否则,执行步骤C2);
C2)设置所述链路所在的、由所述信源节点到所述接收节点的路径为非编码路径,跳转到步骤C4);
C3)设置所述链路所在的、由不同信源节点到所述接收节点的路径中的|R(e)|-1个为编码路径,剩余一个为非编码路径,通知所述信源节点,并执行步骤C4);
C4)判断该会话中由所述信源节点到所述接收节点的所有路径是否完成设置,如是,执行步骤D);否则,对剩余的中间节点重复步骤C1)-C4)。
更进一步地,所述步骤D)中进一步包括:如所述信源节点到所述接收节点的所有路径中没有编码路径,则所述信源节点在所有路径上发送相同的数据包;如所述信源节点到所述接收节点的所有路径中存在pi,j个编码路径,且该信源节点到该接收节点的路径数大于所述编码路径数时,则所述信源节点在所有的|Ri,j|个路径上分别同时发送(|Ri,j|-pi,j)个数据包。
更进一步地,如所述会话发生变化,则对变化后的接收节点及其请求数据的信源节点执行所述步骤A)-E)。
更进一步地,所述中间节点对来自不同信源节点的数据包进行异或编码并将编码后的数据包在该链路上传输。
本发明还涉及一种实现上述方法的装置,包括:
预处理单元:用于针对当前网络上存在的多个会话,分别对一个所述对话所涉及的信源节点、接收节点及中间节点进行预处理,使所述会话所涉及的信源节点得到当前该会话的路径参数,并使所述会话所涉及的多个链路的尾节点得到其链路参数;
初始阶段数据包发送单元:用于在所述信源节点当前对其请求数据的一个接收节点的所有路径上发送相同的数据包;
编码路径设置单元:用于依次判断所述路径中各链路上传输的、来自不同会话的数据包数量,如只有一个数据包,则设置该会话中涉及所述链路的路径为非编码路径;如所述链路上传输来自不同会话的数据包数量为|R(e)|个,其中,|R(e)|>1,则对于一个接收节点而言,设置该接收节点涉及的不同会话中的|R(e)|-1个路径为编码路径,剩余一个路径为非编码路径,并通知所述编码路径所涉及的信源节点;
数据包发送单元:用于使所述信源节点依据其收到的编码路径数据,选择一个或多个数据包分别在其到所述接收节点的多条路径上传输;
编码单元:用于使所述中间节点将其接收到的不同信源节点发出的数据包进行编码并传输到所述接收节点。
更进一步地,所述预处理单元进一步包括:
正向路径查找模块:用于依据所述接收节点向所述信源节点提出的数据请求,分别查找由所述信源节点到所述接收节点的数据传输路径;并在所述信源节点上存储查找到的路径集合;
逆向路径查找模块:用于依据得到的路径,依次由所述接收节点向所述信源节点逆向路由,得到每条路径中包括的多个链路,并在所述链路的尾节点上存储该链路参数;所述链路参数包括:涉及的信源节点、接收节点、路径数量和该链路所在路径编号;
初始路径设置模块:用于在开始时设置所有路径为非编码路径。
更进一步地,所述编码路径设置单元进一步包括:
链路接收数据包判断模块:用于判断所述链路收到的、来自不同信源节点且传输到同一个接收节点的数据包个数|R(e)|是否大于1;
非编码路径设置模块:用于在链路接收到的数据包为1时,设置所述链路所在的、由所述信源节点到所述接收节点的路径为非编码路径;
编码路径设置模块:用于设置所述链路所在的、由不同信源节点到所述接收节点的路径中的|R(e)|-1个为编码路径,剩余一个为非编码路径,通知所述信源节点;
设置完成判断模块:用于判断该会话中由所述信源节点到所述接收节点的所有路径是否完成设置。
实施本发明的多信源动态网络编码的方法及装置,具有以下有益效果:并不是将节点所有的输入数据进行网络编码而是只对需要的数据执行网络编码且使用异或编码方法,因此其编码的复杂程度较低且不会降低数据吞吐量。
附图说明
图1是本发明多信源动态网络编码的方法及装置实施例中的方法流程图;
图2是所述实施例中预处理步骤的具体流程图;
图3是所述实施例中编码路径设置流程图;
图4是所述实施例中多信源动态网络编码方法与现有编码技术的性能比较示意图;
图5是所述实施例中一种拓扑结构情况示意图;
图6是所述实施例中另一种拓扑结构情况示意图;
图7是所述实施例中的装置结构示意图;
具体实施方式
下面将结合附图对本发明实施例作进一步说明。
如图1所示,在本发明多信源动态网络编码的方法及装置实施例中,该多信源动态网络编码的方法包括如下步骤:
步骤S11依据当前的数据请求,分别对各信源节点和接收节点之间的路径进行预处理:为了之后的描述较为方便,有必要就本实施例中的网络环境做出一个较为详细的说明,在本实施例中,用有向网络图G=(V,E)表示通信网络,其中V表示有向图中的节点集,E为有向图G的链路集。设G中的所有链路的容量为单位1。设有向网络中信源节点的集合为{s1,s2,...,sh},接收节点的集合为{t1,t2,...,tn}。信源节点si的数据包的接收节点集合为Ti,i=1,2,...,h,该组播会话表示为(si,Ti)。在图G中共有h个组播会话,i=1,2,...,h。将每个组播会话(si,Ti)用|Ti|个单播会话(si,tj)表示,tj∈Ti,j=1,2,...,|Ti|。而每个会话(si,tj)都是由若干个路径组成的,用Ri,j表示会话(si,tj)的路径集合, |Ri,j|为集合Ri,j的元素个数,|Ri,j|也是会话(si,tj)的最大流。为Ri,j的第k个路径,路径为从起始点si到终点tj的一条有向链接,表示为每个接收节点tj由三个参数描述(S(tj),L(tj),Rj)。其中,S(tj)为接收节点tj请求的信源节点集合,从信源集合S(tj)到接收节点tj的路径集合用Rj表示,1≤j≤n。接收节点tj在接收信源时使用的链路集合为L(tj)。正在使用链路e的接收节点集合用Te表示。tail(e)表示有向链路e的尾节点,链路e传输的会话的个数表示为R(e)。因为所有链路的容量为单位容量,所以任何链路在单位时间内或者没有传输数据或者传输了一个数据量。
每个中间节点记录一些标识信息,这些标识信息为信源节点使用其下行链路的信息以及接收节点请求的信源使用其链路的信息。所有的中间节点只需要根据这些标识信息为其下行链路分配合适的编码包。信源节点只需要统计从中间节点反馈的编码信息并在其路径上分配数据包。
由上面的描述可知,网络上存在多个会话,这些会话可以是一个或多个组播中的,在本步骤中,针对当前网络上存在的多个会话,分别对一个对话所涉及的信源节点、接收节点及中间节点进行预处理,使该会话所涉及的信源节点得到当前该会话的路径参数,并使该会话所涉及的多个链路的尾节点得到其链路参数。值得一提的是,在本实施例中,对于每个会话都会按照步骤S11-步骤S15的方法进行处理,但为了描述方便,不再逐一重复。
步骤S12信源节点在到接收节点的各路径上发送相同的数据包:在本步骤中,由于在上述预处理步骤中每个信源节点都得到能够到达向其发送数据请求的接收节点的路径,所以,一个信源节点在当前对其请求数据的一个接收节点的所有路径上发送相同的数据包;同样地,每个信源节点在本步骤中都分别在能够到达向其发送数据请求的接收节点的路径上发送相同的数据包。
步骤S13路径上的中间节点依据其接收到的数据包参数,设置编码路径,并上报信源节点:在本实施例中,编码路径数是路径集合Ri,j中编码路径的数量为编码路径数,用pi,j表示。表示路径是否为编码路径,表示路径为编码路径,相反则表示为非编码路径。由路径的中间节点确定,而路径集合Ri,j的编码路径数是由信源节点si统计的,默认为0。链路e若有|R(e)|>1个数据包参与编码,则分别为每个接收节点Te选择(|R(e)|-1)个路径为编码路径,另一个为非编码路径,并把编码路径数反馈给相应的信源节点。对于接收节点,该编码包有|R(e)|个数据包参与编码,所以需要另外|R(e)|-1个与其线性不相关的编码包才可以解出该编码包。在本实施例中,中间节点选择(|R(e)|-1)个路径为编码路径是并反馈给相应的信源节点,然后由信源节点为收到该编码包的接收节点分配(|R(e)|-1)个线性不相关的编码包,这样接收节点才可以解码。这也是本实施例的主要思想。对于每个接收节点tj∈Te,假设在链路e参与编码属于接收节点tj的|R(e)|个路径为ri,i=1,2,...,|R(e)|,则选择min(Ri,j)为非编码路径,i=1,2,...,|R(e)|,tj∈Te,其他的为编码路径。
也就是说,在本步骤中,依次判断上述路径中各链路上传输的、来自不同会话的数据包数量,如只有一个数据包,则设置该会话中涉及所述链路的路径为非编码路径;如所述链路上传输来自不同会话的数据包数量为|R(e)|个,其中,|R(e)|>1,则对于一个接收节点而言,设置该接收节点涉及的不同会话中的|R(e)|-1个路径为编码路径,剩余一个路径为非编码路径,并通知该编码路径所涉及的信源节点;基本上来讲,在本步骤中,编码路径的设置是与一个接收节点和发送数据到该接收节点的多个信源节点相关的。
在本步骤中,中间节点通知其信源节点它所属于的路径是否为编码路径,信源节点统计编码路径数。编码路径数可以帮助信源节点在其路径上分配数据速率使得接收节点的吞吐量达到最大。
步骤S14信源节点依据编码路径参数,发送一个或分别发送多个数据包:在本步骤中,一个信源节点依据其收到的编码路径数据,选择一个或多个数据包分别在该信源节点到一个接收节点的多条路径上传输;实际上,在本实施例中,一个信源节点可能需要针对不同的接收节点发送相同或不同的数据包,所以,在本步骤中,同样地,上述一个信源节点可能会分别对于不同的接收节点重复上述操作。在本实施例中,当会话(si,tj)拥有|Ri,j|个路径,其中有pi,j个编码路径时,为了使得接收节点能够解码出编码路径中传输的编码包,信源节点si为每个编码路径选择一个非编码路径,在编码路径和非编码路径中发送相同的数据包。所以最多能在|Ri,j|个路径中传输(|Ri,j|-pi,j)个不同的数据包。
步骤S15在编码路径上对数据包编码并传输:在本步骤中,每个中间节点将其接收到的不同信源节点发出的数据包进行编码并通过其所在的链路及该链路所在的、在上述步骤中得到的路径传输到所述接收节点。
值得一提的是,在本实施例中,上述接收节点对信源节点的数据要求并不是一成不变的,在一些情况下,例如,新增加了数据请求或之前的数据请求已经完成,则会使得上述网络的路径情况出现变化,在这种情况下,只需要针对变化的部分进行上述步骤即可,并不需要将仍然存在的路径及其上的信源节点、接收节点及中间节点中的数据或参数清除后重新取得。这使得当网络变化时可以使用较小的代价或开销,再次达到网络吞吐量的最大化。
如图2所示,在本实施例中,上述预处理步骤进一步包括如下步骤:
步骤S21正向路径查找:在本步骤中,首先进行当前所有会话的路径查找,即依据每个接收节点向一个或多个信源节点提出的数据请求,分别查找由该个(多个信源节点的情况下需要分别逐个进行)信源节点到该接收节点的数据传输路径;并在该信源节点上存储查找到的路径集合。
步骤S22依据查找到的路径逐条进行逆向路由:在本步骤中,依据上述步骤中得到的路径,依次由一个接收节点向上述述信源节点逆向路由,得到每条路径中包括的多个链路,并在上述每个链路的尾节点上存储该链路参数;其中,链路参数包括:涉及的信元节点、接收节点、路径数量和该链路所在路径编号。在本步骤中,如果网络包括多个接收节点(或有多个提出数据请求的接收节点),则每个接收节点将分别执行本步骤。
步骤S23设置所有路径的初始状态:在本步骤中,由于初始化的需求,设置上述会话中的所有路径均为非编码路径。
在预处理中,其得到输出是会话(si,tj)在中间节点的标记信息。基本上而言,在本实施例中,从信源si开始按照有向图进行信息路由,遍历si所能达到的所有的节点和链路,所经过的节点都标记为si。从接收节点tj按照上一节点被标为si的信息分别对每一个连接到接收节点tj的链路进行逆向路由到信源节点si,并在所经过的所有的链路e的tail(e)为每个链路e标记为e(si,tj,|Ri,j|,k),1≤k≤|Ri,j|。在节点tail(e)为每个链路e标记为e(si,tj,|Ri,j|,k),1≤k≤|Ri,j|,表示信源si要传输到接收节点tj的路径共有|Ri,j|个,链路e属于路径集Ri,j的第k条路径。
在本实施例中,把接收节点tj的全体路径Rj分成三个部分:第一部分为离散路径集合,用xj表示其路径集合。第二部分为非离散路径集合并且所有的接收节点都可以解码,用dj表示其路径集合。第三部分则是非离散路径集合且不满足所有的接收节点可以解码,称这部分路径集合为不可解码路径集,用nj表示该路径集合。对于第一部分的路径集合,非编码的方法即可达到其吞吐量的最佳;网络编码可以达到第二部分路径集吞吐量的最佳;而对于第三部分路径集,编码并不能提高吞吐量,在本实施例中,使用非编码的路由策略来处理这部分路径集合,因为网络编码不仅不能提高吞吐量而且会产生大量的时延。
如图3所示,在本实施例中,编码路径的设置进一步包括如下步骤:
步骤S31链路收到的数据包数量是否大于1,如是,执行步骤S32;如否,执行步骤S33;也就是说,在本步骤中,判断一个链路收到的、来自不同信源节点且传输到同一个接收节点的数据包个数|R(e)|是否大于1,如是,执行步骤S32;否则,执行步骤S33;当存在多个链路时,多个链路将分别执行上述操作内容。
步骤S32设置该链路所在的、由不同信源节点到当前接收节点的路径中的一个为非编码路径,其余为编码路径:在本步骤中,设置该链路所在的、由不同信源节点到该接收节点的路径(这些路径总共有|R(e)|个)中的|R(e)|-1个为编码路径,剩余一个为非编码路径,执行本步骤后执行步骤S34。
步骤S33设置该链路所在的路径为非编码路径:在本步骤中,由于在该链路上只有一个数据包,不需要对数据包进行编码,所以设置该链路所在的路径为非编码路径。执行本步骤后,执行步骤S35。
步骤S34发送编码路径的信息到信源节点:在本步骤中,将在上述步骤S32中设置的编码节点的信息发送到相关的信源节点,也就是发送数据包并通过该链路传输到上述的接收节点的信源节点。
步骤S35所有链路所在路径均已设置:在本步骤中,判断是否所有的链路(当然,是与当前数据传输相关的链路)是否均与经过上述判断并设置过了,如是,跳转到步骤S14继续执行;否则,执行步骤S36。
步骤S36准备对下一个链路进行判断:在本步骤中,准备对下一个未设置的链路进行判断并设置,在执行完本步骤中之后,返回步骤S31。
总之,在本实施例中,网络编码采用异或操作而不是随机网络编码。在多信源网络编码中,参与编码的数据包均来自于不同的信源节点,同一个接收节点收到相同的编码包的概率极小,所以不考虑系数的相关性。即使接收节点收到了两个相同的编码包,编码节点只需要在参与编码的数据中添加一个比特再异或编码即可保证收到的两个编码包数是不相关的。比如两个数据包a1(a1,1a1,2...a1,B)和a2(a2,1 a2,2 ... a2,B),数据包的长度为B比特。若接收节点收到的一个编码包为a1⊕a2,则另一个编码包的编码过程如下:分别在数据包a1的头部和a2的尾部添加比特‘0’,得到数据包(0a1,1a1,2...a1,B)和(a2,1 a2,2 ...a2,B0)并对这两个数据包异或编码。而两个编码包a1⊕a2和(0a1,1a1,2...a1,B)⊕(a2,1 a2,2 ... a2,B0)是相互独立的,可以解码出数据包a1和a2
在本实施例中,首先需要为每一对会话(si,tj)启动预处理。信源节点根据其路径集合中的编码路径数,在其路径|Ri,j|中传输(|Ri,j|-pi,j)个不同数据包,而中间节点则根据接收节点请求的信源信息选择合适的数据包并使用异或编码,然后为每个接收节点Te选择(R(e)-1)个路径为编码路径,另一个为非编码路径,最后把编码信息反馈给相应的信源节点。这样网络中的信源节点和中间节点便构成了相互影响的动态的多信源网络编码算法。表格1给出了本实施例中符号代表的意义。
表格1.符号含义。
此外,当由节点本身的角度来描述其在编码过程中的动作时,可以看到的是,对于接受节点而言,该接收节点主要进行的步骤为:
Step 1:接收节点tj请求信源节点S(tj)的数据包,j=1,2,...,n。
Step 2:为每一对会话(si,tj)启动预处理,j=1,2,...,n,
而对于信源节点而言,可以大致将其划分为初始化阶段和递归阶段,其中初始化阶段的动作为:对会话(si,tj),j=1,2,...,n,令pi,j=0,在每个会话(si,tj)的所有路径上传输相同的数据包。而递归阶段的动作为:如果|Ri,j|>pi,j,在|Rij|个路径上传输(|Rij|-pi,j)个数据包,并在会话(si,tj)的编码路径和一个非编码路径上传输相同的数据包;如果|Ri,j|=pi,j,在|Rij|个路径上传输相同的数据包,并令一个编码路径为非编码路径,在该路径上只传输原始数据包。
对于中间节点而言,同样可以大致将其划分为初始化阶段和递归阶段,其中初始化阶段的动作为:
Step 1:For(k=1;k<|Ri,j|+1;k++)For(k=1;k<K;k++) (链路vkvk+1收到的数据包集合与链路vkvk+1的接收节点集合请求的数据包的交集)
Step 2:为每个接收节点Te选择(|R(vkvk+1)|-1)个路径为编码路径另外一个路径设置为非编码路径
而中间节点的递归阶段的动作为:
Step 2:为每个接收节点Te选择(|R(vkvk+1)|-1)个路径为编码路径另外一个路径设置为非编码路径如果路径为编码路径,则把节点vk收到的原始数据包通知给节点v1,v2,...vk-1中的编码节点。
所以,当中间节点vk所属于的路径为编码路径且vk有多个输入链路时,把vk收到的数据包sq通知给该编码路径的编码节点,编码节点可以对数据包sq编码且不增加编码路径数,因为编码包中的数据包sq可以在中间节点vk解出。
在初始化阶段,信源节点si在其路径中传输的数据包一样,这样可以确保接收节点能立刻解码。而在递归阶段,则根据编码路径数pi,j传输(|Ri,j|-pi,j)个不同的数据包。中间节点选择对收到的数据包进行异或编码,为接收节点请求的相同的信源集合。而为在初始阶段中链路vkvk+1上需要传输的数据包。如果|R(vkvk+1)|=1,则R(vkvk+1)为原始数据。相反,则对使用异或编码操作并在链路vkvk+1中传输编码包。为节点vd收到的原始数据包集合,所以在节点vd的上行链路可以对编码,而且不增加编码路径数。当会话(si,tj)的路径数等于编码路径数时,即使在所有的路径上传输的数据包是一样的,在接收节点也不能解码,所以只能减少1个编码路径数,这样既能充分利用网络资源又能使得接收节点收到编码包后马上解码,减少时延。
在实际的网络中,接收节点请求的会话会随着时间的推进而变化。对于本实施例,只需要把请求有改变的接收节点进入初始化阶段,一个传输间隔后,本实施例即可进入迭代阶段。注意,在本实施例中,迭代阶段就是最佳阶段。而PA和SRLC均需要很多的迭代次数才能进入最佳阶段,甚至在合理的时间内不能进入最佳阶段。
在本实施例中,会根据网络中路径的编码情况调整信源数据包的发送个数,也就是发送速率。所以本实施例是动态的自适应的。在本实施例中将编码算法分布在各个中间节点,减轻了信源节点的负担,是一种分布式多信源网络编码算法,本算法的很低的复杂度主要是以中间节点的空间和计算能力换取的。在本实施例中,提出了GMNC(general multi-source network coding)一般的多信源网络编码算法。GMNC并不是将节点所有的输入数据进行网络编码而是只对需要的数据执行网络编码。GMNC使用异或编码方法,而传统的异或编码可能会降低吞吐量,本实施例提出的一种异或编码方法使得所有的异或编码包都是线性无关的。
在本实施例中,所有的接收节点收到的编码包均是可解的。因为对于任意的接收节点tj,若其收到了一个编码包a1+a2+...+ag,来自于g个不同的信源节点s1,s2,...,sg,根据GMNC算法,在编码节点会选择g-1个路径为编码路径,比如信源s1,s2,...,sg-1的路径,相应的g-1个信源节点会在(si,tj),i=1,2,...,g-1中个选择一个路径,分别发送数据包a1,a2,...,ag-1。则接收节点tj能够同时能够收到数据包a1,a2,...,ag-1。所以对于任意的的接收节点tj,其收到的任意的编码包a1⊕a2⊕...⊕ag均是可解的。也就是说GMNC能够保证所有的接收节点收到的所有的编码包都能够解码。注意,在有限域GF(2)中传统的异或运算有可能会降低网络的吞吐量,但是GMNC使用改进的异或编码方法使得每个编码包都是相互独立的。比如,对于数据包a1=(a1,1a1,2...a1,B)和a2=(a2,1a2,2...a2,B),分别把比特‘0’添加到a1和a2的头部和尾部,为(0a1,1a1,2...a1,B)和(a2,1a2,2...a2,B0),然后对其异或编码,该编码包与传统的异或编码包a1⊕a2是相互独立的。
中间节点需要为其下行链路记录标记信息e(si,tj,|Ri,j|,k)。在网络中最多含有hn个会话,并且每个会话内的所有路径是离散的,所以每个链路e最多会被hn个路径使用。整个网络最多需要存储hn|E|个标记信息。
图4给出了各种编码策略在不同网络中的消耗。对于毒药-解药方法,我们评估了k=3时的消耗。而对于选择随机线性网络编码,每个染色体是由所有的编码向量组成的,所以其消耗至少为(din·dout·R·|V|·n·h)。在我们评估的网络中,网络的节点数为|N|,其中有|N|/8个信源节点,|N|/8个接收节点,每个节点均有5个上行链路和5个下行链路。从图4中可以得到,GMNC在消耗性能中优于PA方法和SRLC,即使是在很大的网络中。
对于SRLC,包头需要存储编码系数gm,gm为有限域GF(2q)中的元素。在有限域GF(2q)中,随机线性网络编码的错误概率为1-(1-d/2q)v,其中v为网络中路径的链路最大数。在SRLC中,每个编码包最多是由h个原始数据包编码而成,所以SRLC的包头为hq比特。
对于传统的异或编码包,由h个数据包异或编码的包头大小为h。对于的g个数据包(a1,a2,...,ag,g≤h),为了获得两个线性独立的编码包,需要在原始数据包中添加一个比特‘0’。一个编码包为a1⊕a2⊕...⊕ag,另一个编码包的编码方法如下:分别把比特‘0’添加到一个数据包的头部和g-1个数据包的尾部,然后异或这g个新的数据包。得到的这两个编码包是相互独立的。对于第二个编码包,添加的冗余比特为g,再加上h比特的编码系数,所以总的包头为(g+h)。
图5是本实施例中一种网络的拓扑结构,在图5中,信源s1和s2均组播到接收节点t1和t2。接收节点t1有两个会话(s1,t1)和(s2,t1),会话(s1,t1)有两个路径s1t1和s1v1v2t1,|R1,1|=2,而会话(s2,t1)只有一个路径s2v1v2t1,|R2,1|=1。同样的,接收节点t2的两个会话(s1,t2)和(s2,t2)也分别有一个路径和两个路径,|R1,2|=1,|R2,2|=2。对于接收节点t1来说,链路v1v2属于不同会话的两个路径,所以需要在链路v1v2执行网络编码操作。对于接收节点t1,令路径s1v1v2t1为编码路径,另外一个路径s2v1v2t1为非编码路径。编码路径数分别为p1,1=1以及p2,1=0。类似的对于接收节点t2,编码路径数分别为p2,2=1和p1,2=0。
图6是本实施例中另一种拓扑结构,在图6中,三个信源节点s1、s2和s3分别组播到t1、t2、t3,组播到t1、t2,t3,单播到t1。即,接收节点t1,t2和t3请求的信源集合分别为S(t1)={s1,s2,s3},S(t2)={s1,s2},S(t3)={s1,s2}。接收节点t1到信源节点s1、s2、s3的容量为3,接收节点t2到信源节点s1、s2的容量为2,接收节点t3到信源节点s1、s2的容量为2。所以理论上接收节点t1,t2和t3在单位传输时间内可以分别收到请求的信源数据包3个,2个,2个。
根据GMNC算法,首先寻找各自会话的离散路径,R1,1={s1t1,s1v1v3v4t1},R2,1={s2v3v4t1},R3,1={s3v2v3v4t1,s3v5v6t1},R1,2={s1t2,s1v1v3v4v5v6t2},R2,2={s2v3v4v5v6t2},R1,3={s1v1v3v4v5v6t3},R2,3={s2v3v4v5v6t3,s2v2t3}。根据标记信息,中间节点可以对收到的数据包进行编码并使得所有的接收节点均能解码。在初始化阶段,所有的信源节点在其路径上均发送相同的数据包,中间节点选择合适的数据包编码。在初始阶段,中间节点v3收到了三个数据包a1,b1,c1,而R(v3v4)={a1,b1}。所以,链路v3v4传输的编码包为a1⊕b1并分别为接收节点t1,t2,t3选择路径s1v1v3v4t1,s1v1v3v4v5v6t2,s2v3v4v5v6t3为编码路径。而当进入迭代阶段后,中间节点v3收到了三个数据包a1,b1,c1,而R(v3v4)={a2,b2,c2}。所以,链路v3v4传输的编码包为a2⊕b2⊕c2。其它的节点同样发送合适的数据包。信源s1、s2和s3的数据包分别用a、b和c表示,图6中用a、b、c分别表示信源节点s1,s2和s3的数据包。中间节点的标记信息如表2。
表2.中间节点的所有标记信息.
表3.图3的吞吐量。
表3给出了图6中不同的编码策略在吞吐量性能的比较。在PINC中,会话间网络编码被限制在两个单播会话之间的特例,所以在链路v3v4上只能对来自于信源节点s1和s2或者s2和s3的数据包进行编码。若链路v3v4传输a和b的编码包,则接收节点t1不能收到信源s3的数据包只能收到信源s1和s2的两个数据包,网络的总吞吐量为6;若链路v3v4传输b和c的编码包,则接收节点t3只能收到数据包b,网络的总吞吐量为6。所以文[5][10]最多能达到的总吞吐量为6。会话内的网络编码算法是为每个信源分配子树,每个信源节点根据自己的子树传输相应的数据包,会话内的网络编码算法的吞吐量同样为6。
在图6中,当信源s1单播到接收节点t3,信源s2单播到接收节点t2,信源s3单播到接收节点t1时。很显然,GMNC算法可以使得三个接收节点各自收到一个相应的信源数据包,而PINC则在满足t1和t2的请求时不能同时满足t3的请求,也就是说,他们不能使得三个接收节点同时收到相应的一个请求的信源数据包。因此,相对于先前的研究,GMNC算法在总吞吐量和同时满足不同接收节点的请求上是有很大的优势的。
如图7所示,在本实施例中,还涉及一种实现上述编码方法的装置,该装置包括:预处理单元71、初始阶段数据包发送单元72、编码路径设置单元73、数据包发送单元74和编码单元75;其中预处理单元71用于针对当前网络上存在的多个会话,分别对一个对话所涉及的信源节点、接收节点及中间节点进行预处理,使该会话所涉及的信源节点得到当前该会话的路径参数,并使该会话所涉及的多个链路的尾节点得到其链路参数;初始阶段数据包发送单元72用于在上述信源节点当前对其请求数据的一个接收节点的所有路径上发送相同的数据包;编码路径设置单元73用于依次判断上述路径中各链路上传输的、来自不同会话的数据包数量,如只有一个数据包,则设置该会话中涉及所述链路的路径为非编码路径;如所述链路上传输来自不同会话的数据包数量为|R(e)|个,其中,|R(e)|>1,则对于一个接收节点而言,设置该接收节点涉及的不同会话中的|R(e)|-1个路径为编码路径,剩余一个路径为非编码路径,并通知上述编码路径所涉及的信源节点;数据包发送单元74用于使上述信源节点依据其收到的编码路径数据,选择一个或多个数据包分别在其到上述接收节点的多条路径上传输;编码单元75用于使所述中间节点将其接收到的不同信源节点发出的数据包进行编码并传输到上述接收节点。
在本实施例中,预处理单元71进一步包括正向路径查找模块711、逆向路径查找模块712和初始路径设置模块713;其中,正向路径查找模块711用于依据所述接收节点向所述信源节点提出的数据请求,分别查找由所述信源节点到所述接收节点的数据传输路径;并在所述信源节点上存储查找到的路径集合;逆向路径查找模块712用于依据得到的路径,依次由所述接收节点向所述信源节点逆向路由,得到每条路径中包括的多个链路,并在所述链路的尾节点上存储该链路参数;所述链路参数包括:涉及的信源节点、接收节点、路径数量和该链路所在路径编号;初始路径设置模块713用于在开始时设置所有路径为非编码路径。同时,在本实施例中,编码路径设置单元73进一步包括链路接收数据包判断模块731、非编码路径设置模块732、编码路径设置模块733以及设置完成判断模块734;其中,链路接收数据包判断模块731用于判断所述链路收到的、来自不同信源节点且传输到同一个接收节点的数据包个数|R(e)|是否大于1;非编码路径设置模块732用于在链路接收到的数据包为1时,设置所述链路所在的、由所述信源节点到所述接收节点的路径为非编码路径;编码路径设置模块733用于设置所述链路所在的、由不同信源节点到所述接收节点的路径中的|R(e)|-1个为编码路径,剩余一个为非编码路径,通知所述信源节点;设置完成判断模块734用于判断该会话中由所述信源节点到所述接收节点的所有路径是否完成设置。
值得一提的是,在本实施例中,上述装置中的各单元和模块可以设置在相同的物理载体上,也可以设置在不同的物理载体上。例如,在本实施例中,上述编码路径设置单元是设置在中间节点上的,而预处理单元是设置在信源节点上的。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种多信源动态网络编码的方法,其特征在于,包括如下步骤:
A)针对当前网络上存在的多个会话,分别对一个所述会话所涉及的信源节点、接收节点及中间节点进行预处理,使所述会话所涉及的信源节点得到当前该会话的路径参数,并使所述会话所涉及的多个链路的尾节点得到其链路参数;
B)所述信源节点在当前对其请求数据的一个接收节点的所有路径上发送相同的数据包;
C)依次判断所述路径中各链路上传输的、来自不同会话的数据包数量,如只有一个数据包,则设置该会话中涉及所述链路的路径为非编码路径;如所述链路上传输来自不同会话的数据包数量为|R(e)|个,其中,|R(e)|>1,则对于其所有接收节点而言,设置该接收节点涉及的不同会话中的|R(e)|-1个路径为编码路径,剩余一个路径为非编码路径,并通知所述编码路径所涉及的信源节点;
D)所述信源节点依据其收到的编码路径数据,选择一个或多个数据包分别在其到所述接收节点的多条路径上传输;其中,该信源节点为所述编码路径数据中的每个编码路径选择一个非编码路径,在该编码路径和该非编码路径中发送相同的数据包;
E)所述中间节点将其接收到的不同信源节点发出的数据包进行编码并传输到所述接收节点。
2.根据权利要求1所述的多信源动态网络编码的方法,其特征在于,所述步骤A)进一步包括:
A1)依据所述接收节点向所述信源节点提出的数据请求,分别查找由所述信源节点到所述接收节点的数据传输路径;并在所述信源节点上存储查找到的路径集合;
A2)依据得到的路径,依次由所述接收节点向所述信源节点逆向路由,得到每条路径中包括的多个链路,并在所述链路的尾节点上存储该链路参数;所述链路参数包括:涉及的信源节点、接收节点、路径数量和该链路所在路径编号。
3.根据权利要求2所述的多信源动态网络编码的方法,其特征在于,所述步骤A)进一步包括:
A3)设置所有路径为非编码路径。
4.根据权利要求3所述的多信源动态网络编码的方法,其特征在于,所述步骤C)进一步包括:
C1)判断所述链路收到的、来自不同信源节点且传输到同一个接收节点的数据包个数|R(e)|是否大于1,如是,执行步骤C3);否则,执行步骤C2);
C2)设置所述链路所在的、由所述信源节点到所述接收节点的路径为非编码路径,跳转到步骤C4);
C3)设置所述链路所在的、由不同信源节点到所述接收节点的路径中的|R(e)|-1个为编码路径,剩余一个为非编码路径,通知所述信源节点,并执行步骤C4);
C4)判断该会话中由所述信源节点到所述接收节点的所有路径是否完成设置,如是,执行步骤D);否则,对剩余的中间节点重复步骤C1)-C4)。
5.根据权利要求4所述的多信源动态网络编码的方法,其特征在于,所述步骤D)中进一步包括:如所述信源节点到所述接收节点的所有路径中没有编码路径,则所述信源节点在所有路径上发送相同的数据包;如所述信源节点到所述接收节点的所有路径中存在pi,j个编码路径,且该信源节点到该接收节点的路径数大于所述编码路径数时,则所述信源节点在所有的|Ri,j|个路径上分别同时发送(|Ri,j|-pi,j)个数据包。
6.根据权利要求1-5任意一项所述的多信源动态网络编码的方法,其特征在于,如所述会话发生变化,则对变化后的接收节点及其请求数据的信源节点执行所述步骤A)-E)。
7.根据权利要求1-5任意一项所述的多信源动态网络编码的方法,其特征在于,所述中间节点对来自不同信源节点的数据包进行异或编码并将编码后的数据包在该链路上传输。
8.一种实现如权利要求1所述的多信源动态网络编码方法的装置,其特征在于,包括:
预处理单元:用于针对当前网络上存在的多个会话,分别对一个所述会话所涉及的信源节点、接收节点及中间节点进行预处理,使所述会话所涉及的信源节点得到当前该会话的路径参数,并使所述会话所涉及的多个链路的尾节点得到其链路参数;
初始阶段数据包发送单元:用于在所述信源节点当前对其请求数据的一个接收节点的所有路径上发送相同的数据包;
编码路径设置单元:用于依次判断所述路径中各链路上传输的、来自不同会话的数据包数量,如只有一个数据包,则设置该会话中涉及所述链路的路径为非编码路径;如所述链路上传输来自不同会话的数据包数量为|R(e)|个,其中,|R(e)|>1,则对于其所有接收节点而言,设置该接收节点涉及的不同会话中的|R(e)|-1个路径为编码路径,剩余一个路径为非编码路径,并通知所述编码路径所涉及的信源节点;
数据包发送单元:用于使所述信源节点依据其收到的编码路径数据,选择一个或多个数据包分别在其到所述接收节点的多条路径上传输;其中,该信源节点为所述编码路径数据中的每个编码路径选择一个非编码路径,在该编码路径和该非编码路径中发送相同的数据包;
编码单元:用于使所述中间节点将其接收到的不同信源节点发出的数据包进行编码并传输到所述接收节点。
9.根据权利要求8所述的装置,其特征在于,所述预处理单元进一步包括:
正向路径查找模块:用于依据所述接收节点向所述信源节点提出的数据请求,分别查找由所述信源节点到所述接收节点的数据传输路径;并在所述信源节点上存储查找到的路径集合;
逆向路径查找模块:用于依据得到的路径,依次由所述接收节点向所述信源节点逆向路由,得到每条路径中包括的多个链路,并在所述链路的尾节点上存储该链路参数;所述链路参数包括:涉及的信源节点、接收节点、路径数量和该链路所在路径编号;
初始路径设置模块:用于在开始时设置所有路径为非编码路径。
10.根据权利要求9所述的装置,其特征在于,所述编码路径设置单元进一步包括:
链路接收数据包判断模块:用于判断所述链路收到的、来自不同信源节点且传输到同一个接收节点的数据包个数|R(e)|是否大于1;
非编码路径设置模块:用于在链路接收到的数据包为1时,设置所述链路所在的、由所述信源节点到所述接收节点的路径为非编码路径;
编码路径设置模块:用于设置所述链路所在的、由不同信源节点到所述接收节点的路径中的|R(e)|-1个为编码路径,剩余一个为非编码路径,通知所述信源节点;
设置完成判断模块:用于判断该会话中由所述信源节点到所述接收节点的所有路径是否完成设置。
CN201280075605.6A 2012-09-24 2012-09-24 多信源动态网络编码的方法及装置 Expired - Fee Related CN104704760B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2012/081820 WO2014043908A1 (zh) 2012-09-24 2012-09-24 多信源动态网络编码的方法及装置

Publications (2)

Publication Number Publication Date
CN104704760A CN104704760A (zh) 2015-06-10
CN104704760B true CN104704760B (zh) 2018-01-05

Family

ID=50340560

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280075605.6A Expired - Fee Related CN104704760B (zh) 2012-09-24 2012-09-24 多信源动态网络编码的方法及装置

Country Status (2)

Country Link
CN (1) CN104704760B (zh)
WO (1) WO2014043908A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105515728B (zh) * 2015-11-24 2018-07-31 湖北经济学院 一种基于滑动窗口的网络编码方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2106073A1 (en) * 2008-03-28 2009-09-30 NTT DoCoMo, Inc. Method and apparatus for increasing throughput in a communication network
CN101695056A (zh) * 2009-10-09 2010-04-14 魏昕 水声通信网络中基于会话间网络编码的路由方法
CN101917334A (zh) * 2010-08-03 2010-12-15 浙江大学 一种部分节点进行网络编码的传输网络生成方法
CN102118228A (zh) * 2011-01-19 2011-07-06 中国科学技术大学 一种基于压缩前传的多源单中继协作方法
CN102148664A (zh) * 2011-04-21 2011-08-10 上海大学 应用于多源多汇网络的组播间网络编码控制方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2106073A1 (en) * 2008-03-28 2009-09-30 NTT DoCoMo, Inc. Method and apparatus for increasing throughput in a communication network
CN101695056A (zh) * 2009-10-09 2010-04-14 魏昕 水声通信网络中基于会话间网络编码的路由方法
CN101917334A (zh) * 2010-08-03 2010-12-15 浙江大学 一种部分节点进行网络编码的传输网络生成方法
CN102118228A (zh) * 2011-01-19 2011-07-06 中国科学技术大学 一种基于压缩前传的多源单中继协作方法
CN102148664A (zh) * 2011-04-21 2011-08-10 上海大学 应用于多源多汇网络的组播间网络编码控制方法

Also Published As

Publication number Publication date
WO2014043908A1 (zh) 2014-03-27
CN104704760A (zh) 2015-06-10

Similar Documents

Publication Publication Date Title
Zhu et al. Practical network coding technologies and softwarization in wireless networks
Cui et al. Energy efficient opportunistic network coding for wireless networks
Kiskani et al. Throughput analysis of decentralized coded content caching in cellular networks
Liu et al. Data dissemination with network coding in two-way vehicle-to-vehicle networks
CN105791169A (zh) 软件定义网络中交换机转发控制、转发方法及相关设备
Milosavljevic et al. Efficient algorithms for the data exchange problem
Bayat et al. Coded caching over multicast routing networks
Ji et al. Fundamental limits of distributed caching in multihop D2D wireless networks
Vivekananda et al. Efficient video transmission technique using clustering and optimisation algorithms in MANETs
Li et al. On multi-hop short-packet communications: Recoding or end-to-end fountain coding?
Teo et al. Performance analysis of enhanced genetic algorithm based network coding in wireless networks
Shariatpanahi et al. On multi-server coded caching in the low memory regime
CN104704760B (zh) 多信源动态网络编码的方法及装置
Kim et al. An evolutionary approach to inter-session network coding
Xia et al. xURLLC-Aware Service Provisioning in Vehicular Networks: A Semantic Communication Perspective
ParandehGheibi et al. Optimal reverse carpooling over wireless networks-a distributed optimization approach
Wang et al. On the optimal linear network coding design for information theoretically secure unicast streaming
Mehta et al. Survey on multimedia transmission using network coding over wireless networks
Teo et al. Exploration of genetic algorithm in network coding for wireless sensor networks
Xing et al. Device-aware routing and scheduling in multi-hop Device-to-Device networks
Nemoianu et al. A framework for joint multiple description coding and network coding over wireless ad-hoc networks
Wu et al. On optimizing effective rate for random linear network coding over burst-erasure relay links
Marcano et al. On the overhead of telescopic codes in network coded cooperation
Sun et al. On file-based content distribution over wireless networks via multiple paths: Coding and delay trade-off
Parrinello Fundamental limits of shared-cache networks

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180105

Termination date: 20210924

CF01 Termination of patent right due to non-payment of annual fee