CN106973303A - 一种基于网络编码的d2d视频分发和预缓存方法 - Google Patents

一种基于网络编码的d2d视频分发和预缓存方法 Download PDF

Info

Publication number
CN106973303A
CN106973303A CN201710166348.1A CN201710166348A CN106973303A CN 106973303 A CN106973303 A CN 106973303A CN 201710166348 A CN201710166348 A CN 201710166348A CN 106973303 A CN106973303 A CN 106973303A
Authority
CN
China
Prior art keywords
cache
video
node
data
neighbor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201710166348.1A
Other languages
English (en)
Other versions
CN106973303B (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.)
Chongqing University of Post and Telecommunications
Original Assignee
Chongqing University of Post and Telecommunications
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 Chongqing University of Post and Telecommunications filed Critical Chongqing University of Post and Telecommunications
Priority to CN201710166348.1A priority Critical patent/CN106973303B/zh
Publication of CN106973303A publication Critical patent/CN106973303A/zh
Application granted granted Critical
Publication of CN106973303B publication Critical patent/CN106973303B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64723Monitoring of network processes or resources, e.g. monitoring of network load
    • 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/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1078Resource delivery mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1078Resource delivery mechanisms
    • H04L67/108Resource delivery mechanisms characterised by resources being split in blocks or fragments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23106Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/632Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing using a connection between clients on a wide area network, e.g. setting up a peer-to-peer communication via Internet for retrieving video segments from the hard-disk of other client devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明请求保护一种基于网络编码的D2D视频分发和预缓存方法,首先组成多跳D2D网络,节点维持一个邻居缓存信息表,并且每个设备终端节点在一定范围内周期性洪泛自身缓存信息消息,附近设备接收到该消息后根据这个消息更新邻居缓存信息表;当用户节点欲获取某视频时,根据邻居缓存信息表向拥有该视频文件的所有种子节点发送视频索取请求,种子节点收到请求后向用户节点发送编码后的视频数据,并添加相关包头信息;视频编码数据VDData在网络中进行多跳传输和缓存,中间节点对其进行再编码、转发和预缓存操作,直到视频编码数据到达目的用户节点。本发明成功提高了D2D本地缓存命中率,最大程度地减轻了基站负载。

Description

一种基于网络编码的D2D视频分发和预缓存方法
技术领域
本发明属于多跳D2D网络的数据传输与缓存领域,尤其是一种无线移动多跳D2D网络中的视频数据分发和预缓存方法。
背景技术
移动流媒体业务的快速发展使得传统基于纯基站接入的流媒体架构模式难以满足日益增长的流媒体带宽需求,制约着移动流媒体业务的大规模应用推广,并严重影响了移动流媒体业务的服务质量与可靠性。为此人们提出了利用D2D通信技术卸载蜂窝流量,通过在网内D2D方式分享视频数据的方法,来缓解基站的压力。
为了提高移动用户在附近的终端缓存中找到感兴趣的视频文件并成功传输的概率,一个好的预缓存策略对于这样的移动缓存网络来说是非常重要的,即根据网络的具体状态确定是否决定缓存某段经过设备的视频数据。
预缓存策略在提高本地缓存命中率方面研究,学术界和业界对此都非常关注,在P2P和CCN网络中已有不少研究,其中也不乏基于网络编码的预缓存策略。Liu Wai-xi,YuS,Qing H等人在Multisource dissemination in contentcentric networking[C]中提出了一种CCN中基于网络编码的缓存策略,也就是CCN中的每个网络缓存节点缓存网络编码块,并在文章“网络编码改善CCN的缓存效率的研究[J]”中给出了数学分析和计算机仿真实验方式的验证,证明了网络编码其带来的增益。当该方法采用的是独立缓存的策略,所以对于缓存冗余度并没有很好的控制,在极端情况下有可能会大量换同类文件块的编码,从而大量浪费缓存空间导致缓存效果不太好。
目前针对D2D通信支持的预缓存策略已有研究,不过直接基于D2D的预缓存的研究较少。Jiang J,Zhang S,Li B,等人在Maximized Cellular Traffic Offloading viaDevice-to-Device Content Sharing[J]中提出了一种的D2D协作式预缓存策略,大概思想是每个设备维持一张邻居设备缓存表,用于记录邻居设备缓存的内容块信息,并采用流行度的方式对每个个消息块进行划分缓存优先级,优先缓存流行的视频消息块,在邻居设备组建的缓存空间内采用LFU替换方案。并且采用了传输干扰感知方法提高了缓存效果,但该方案只是针对于单跳的D2D网络,并没有考虑缓存冗余度的控制,且设备存储的数据块并没有经过编码,所以其在抗移动性方面并不是太好。
为了解决以上问题,本发明提出了一种具有抗移动性的多跳D2D场景下的分发和预缓存方法。可以有效的降低无线网络中缓存的冗余程度,并且拥有较好缓存命中率,同时适用于动态变化的实际场景。
发明内容
本发明旨在解决以上现有技术的问题。提出了一种有效地降低无线网络中缓存的冗余程度,在满足网络QoS下达到低内容中断概率的需求,提高网络的内容交付能力,同时适用于动态变化的实际场景的方法。本发明的技术方案如下:
一种基于网络编码的D2D视频分发和预缓存方法,其包括以下步骤:
1)首先设备终端组成多跳D2D网络,所述多跳D2D网络中每个设备终端节点维持一个邻居缓存信息表,并且每个设备终端节点在一定范围内周期性以洪泛的方式发送自身缓存信息消息到网络中,自身缓存信息消息,附近设备接收到该消息后根据这个消息更新邻居缓存信息表;
2)当用户节点欲获取某视频时,根据邻居缓存信息表向拥有该视频文件的所有种子节点发送视频索取请求,种子节点收到请求后向用户节点发送编码后的视频数据,并添加相关包头信息;
3)视频编码数据VDData在网络中进行多跳传输和缓存,中间节点对其进行再编码、转发和预缓存操作,直到视频编码数据到达目的用户节点。
进一步的,所述步骤1)每个设备终端节点在一定范围内周期性洪泛自身缓存信息消息为CacheInfo,该消息包含自身网络地址信息,自身缓存的视频数据信息。
进一步的,所述CacheInfo消息包至少包括如下字段:
[1]IP Addr:设备自身网络地址:
[2]CMList:描述设备缓存了哪些ID的编码块;
[3]CacheNums:描述CMList中缓存的每个ID编码块对应的数目。
进一步的,所述邻居设备收到CacheInfo消息后更新邻居缓存信息表,邻居
信息表包含邻居网络IP地址、缓存记录表和跳数信息。
进一步的,所述步骤2)根据邻居缓存信息表向拥有该视频文件的所有种子节点发送视频索取请求,种子节点收到请求后向用户节点发送编码后的视频数据,并添加相关包头信息具体包括:
21)某个设备想要请求某个视频文件,该设备首先查看自身内存和自己的邻居信息分布表,对于本地内存和邻居设备中没有或者不足的视频编码块,设备向基站获取,对于存于邻居设备的编码块,通过查询邻居缓存信息表,获取设备IP,向该设备发送数据请求REQ;
22)视频数据持有者设备受到请求后将VDData视频编码片数据上传至D2D网络,请求者设备从D2D网络下载编码数据,当收到足够的编码块后,即可恢复出对应消息ID编码块的原始数据,当恢复出所有消息ID原始数据块后,即可同过拼接恢复出原始视频文件。
进一步的,所述VDData视频编码片消息至少包含如下字段:
[1]dataID:所传输的视频缓存数据所在文件名和数据分组号的组合;
[2]dst_addr:目标节点ip地址;
[3]coef:所传输的视频缓存数据网络编码系数;
[4]NCData:ID为dataID数据块编码后的数据。
进一步的,所述步骤3)视频编码数据VDData在网络中进行多跳传输和缓存,中间节点对其进行再编码,转发和预缓存操作,直到视频编码数据到达目的用户节点具体包括步骤:
31)中继节点收到视频数据编码包后首先对编码块实行再编码操作,具体操作为:将收到的网络编码包与缓存中该dataID的编码包进行网络编码加运算,并生成一个临时网络编码数据包,并作为待转发的数据包;
32)数据经过中间节点的再编码操作后,执行转发处理操作,既根据一定的自身的路由标记信息决定是否继续转发,直到视频编码数据到达目的用户节点:
33)中继节点收到视频数据编码包后,根据一定的自身的缓存系数决和设备的邻居缓存信息表依照VDData消息缓存判定处理流程进行预缓存;
34)直到视频数据消息到达到达目的用户节点,一次分发缓存过程结束。
进一步的,所述步骤32)具体包括以下步骤:
321)中间转发节点收到视频数据包后,判断自己的IP是否与dstAddr相同。如果相同则说明数据包成功到达源节点,则对数据包进行缓存;如果不同则说明没有到达源节点,进入步骤322)完成中间节点对数据包的下一步转发操作;
322)解析编码包的目的IP地址,查询转发到下一跳节点。
进一步的,所述步骤33)VDData消息预缓存具体包括步骤:
331)中间节点收到VDData数据包后先解析出数据包包头信息中包含的视频编码块编号dataID;
332)根据视频编码块编号dataID查询邻居缓存信息表,取得该dataID编码数据包的权重w,如果该w=0,说明邻居节点和自身都没有缓存该数据编码块,若是w>W,其中W表示网络预设的缓存权重阀值,说明附近设备缓存的该编码快已经足够多,不需再缓存该编码块,否则若w<W,说明包括自己的附近设备缓存的该编码块没有达到稳定该编码块原文件恢复的条件,可以继续缓存,进而根据本地内存占用情况作如下判定:
3331)若内存缓存未满,则取出数据包中的视频缓存数据,将其保存到内存缓存,并进入步骤334);
3332)若内存缓存已满,使用LRU替换算法替换缓存,将内存缓存中最旧的视频数据块删除,然后将新的编码数据包存入缓存,并进入步骤314);
334)重新计算该dataID的编码块的权重,重新更新邻居缓存信息表。
本发明的优点及有益效果如下:
本发明提高了缓存命中率:将本专利所提的网络编码分片缓存和普通直接分块缓存情况的对比,由于网络编码恢复文件的无序性导致在有缓存冗余的情况下,即使部分节点电量耗尽或者是由于移动,移出了用户的通信可到达范围,节点只需利用剩余节点缓存的部分编码数据即可恢复出原始视频数据。例如这样的情形,假如一个文件由2个文件块组成,一个设备周围有5个邻居设备(N=5),每个设备的缓存空间为1,且每个设备各缓存了一块数据,这样的存储方式看起来比较有效,而事实上这5各设备可能都存储的是两个文件块中的同一个数据块,即使拥有5份缓存数据,也无法恢复出源文件,网络编码的情况下,由于每个设备存储的都是这两个文件块的线性组合,设备只需从这些设备中的任意2的设备通信即可进行解码,恢复出原始视频数据,也就是说任意3个设备离开设备通信可达范围,用户均可恢复出该视频数据,相比分块情况下而言,恢复成功的概率更高,这样提高了文件恢复成功率,在另一种角度上,也相当于提高了本地缓存命中率,减轻了基站负载。
提高了抗移动干扰性:如图5所示,用户周围有5个节点,用户获取的数据由4块组成,前4块分别存储于1,2,3,4四个节点中,节点5存储了4块中的任意一块,当节点1,2,3,4中任意一个节点离开用户的通信范围,若这个离开的用户缓存的数据与5的不同,用户都无法成功恢复出原始数据。这样的分块缓存方法显然效率不够高,但如果采用网络编码缓存的方式,5个设备存储的是者4块数据的线性组合。任意一个节点离开用户都能从剩余4个节点恢复出源文件。这样明显的系统的抗移动干扰性增强。
本文所提的基于网络编码的协作缓存策略主要包含以下几个创新点:
(1)考虑到传统的基于独立缓存的缓存策略缓存效果的高内容冗余和缓存低效性。本文所提缓存策略结合了局部节点协作缓存的想法,当一个新的数据需要缓存时,综合邻居设备内存空间的缓存情况决定是否缓存该数据,这样提高设备局部通信范围内设备缓存空间的利用率。
(2)考虑到移动网络环境下设备的移动性对于缓存策略带来的干扰,将网络编码和协作缓存巧妙的结合起来,也就是每个设备所缓存的数据是视频数据分块后的线性编码块,由于网络编码的容灾特性,用户能够从采用缓存网络编码块的方法减弱了设备移动对于缓存效果带来的影响。
(3)结合距离越远的设备,越容易离开设备通信范围,缓存的内容对于用户而言越不稳定的想法,提出了缓存权重的概念。也即是距离自己越近(跳数越小)的设备缓存的内容缓存权重系数越大,反之距离自己越远的设备缓存的内容权重系数越小。采用这种策略提高了缓存内容的稳定性。
附图说明
图1是本发明提供优选实施例实施例中设备接收CacheInfo消息的处理流程示意图;
图2是实施例中设备接收视频编码块的处理流程示意图;
图3是实施例中设备接收视频编码块的缓存判定处理流程示意图;
图4为实施例中具体节点分布图;
图5表示网络编码提高缓存效率的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、详细地描述。所描述的实施例仅仅是本发明的一部分实施例。
本发明解决上述技术问题的技术方案是:
首先介绍以下含义:
缓存权重表达式
W=n01n12n23n3
注:0<α3<α2<α1<1;
(1)W表示缓存权重,表示网络中缓存的有效缓存编码块数量,缓存权重越大,表示网络中已经缓存的该类编码块块越多,而缓存的可能性越小。n0表示本地内存缓存指定视频编码块的数目,n1表示一跳邻居节点缓存指定编码块的数目,n2表示两跳邻居节点缓存指定段编码块的数目,n3为三跳邻居节点缓存指定编码块的数目。
缓存权重表达式的含义:
距离自己越近的设备缓存的编码块越可靠,所其权重系数越大,既α1>α2>α3。η=W/k缓存冗余度;η表示缓存的冗余度,K为编码窗口。
下面结合附图和实施例对本发明作更进一步的说明。
如图1所示,为本发明的设备广告通知邻居节点自身缓存信息的流程图。CacheInfo缓存信息消息处理流程图。
网络中的每一个节点在一定范围内周期性地洪泛自身缓存信息消息CacheInfo至周围的邻居节点。
缓存信息CacheInfo至少包含以下字段:
设备自身网络地址:
描述设备缓存了哪些ID的编码块
描述CMList中缓存的每个ID编码块对应的数目。
设备收到一个CacheInfo消息之后,首先提取消息中的缓存信息,更新本地邻居缓存信息表。
邻居信息表包含邻居网络IP地址和缓存记录表和跳数信息,既包含了信息哪个源文件设备,距离自己几跳,缓存了哪些编码块,如网络地址ip1的设备距离自己2跳,缓存了2.avi_35编码块10块,2.avi_36编码块20块。
缓存信息表更新之后,继续设备对CacheInfo消息的处理。包括检查消息的TTL判断CacheInfo消息的生命周期是否结束。如果TTL0=0,表明CacheInfo信息生命周期结束,终止转发,否则如果TTL>0,继续如下步骤,对CacheInfo消息继续洪泛转发。
将CachInfo消息的TTL字段取出,并将消息该字段重新赋值为TTL-1。
将CacheInfo消息洪泛到上一跳节点除外的所有邻居节点。
下一跳收到CacheInfo消息的邻居节点继续执行以上操作。
如图2为本发明视频数据消息VDData消息传输过程中设备对该消息的处理流程图。消息处理过程包括再编码,转发和预缓存操作,具体过程如下:
31)中继节点收到视频数据编码包后首先对编码块实行再编码操作,具体操作为:
将收到的网络编码包与缓存中该dataID的编码包进行网络编码加运算,并生成一个临时网络编码数据包,并作为待转发的数据包。
32)数据经过中间节点的在编码操作后,执行转发处理操作,既根据一定的自身的路由标记信息决定是否继续转发,具体步骤如下:
321)中间转发节点收到视频数据包后,判断自己的IP是否与dstAddr相同。如果相同则说明数据包成功到达源节点。则进入步骤33),对数据包进行缓存。如果不同则说明没有到达源节点,进入步骤322)完成中间节点对数据包的下一步转发操作。
322)解析编码包的目的IP地址,查询转发路由表,转发给下一跳节点。直到到达目的节点。
33)中继节点收到视频数据编码包后,根据一定的自身的缓存系数和设备的邻居缓存信息表依照如图3所示的VDData消息缓存判定处理流程图进行预缓存,包含如下步骤:
331)中间节点收到VDData数据包后先解析出数据包包头信息中包含的视频编码块编号dataID;
332)根据视频编码块编号dataID查询邻居缓存信息表,取得该dataID编码数据包的权重w(权重表达式w=n0+a1*n1+a2*n2+a3*n3),如果该w=0,说明邻居节点和自身都没有缓存该数据编码块,若是w>W说明附近设备缓存的该编码快已经足够多,不需再缓存该编码块。否则若w<W,说明包括自己的附近设备缓存的该编码块没有达到稳定该编码块原文件恢复的条件,可以继续缓存,进而根据本地内存占用情况作如下判定:
3331)若内存缓存未满,则取出数据包中的视频缓存数据,将其保存到内存缓存,并进入步骤334);
3332)若内存缓存已满,使用LRU替换算法替换缓存,将内存缓存中最旧的视频数据块替换掉,并进入步骤314);
334)依据公式1重新计算该dataID的编码块的权重,重新更新邻居缓存信息表。
实施例1
如图4所示,图中有7个网络节点,矩形节点的为user用户节点,6个圆形节点网络中的其他设备节点,圆内的号码为节点标识,圆上方的数字为该节点缓存的user用户欲获取的某数据段的网络编码块数目。
假设预设网络编码窗口K=12,缓存权重表达式W=n0+0.8*n1+0.5n2;缓存阀值W0=12;
由于网络中的每个节点会周期性地交换自身的缓存信息,假设缓存信息洪泛的范围为两跳;所以对于网络中的每个节点,两跳范围内节点的缓存信息对该用户都是已知的。所以n0=0,n1=2+2+2=6,n2=4+4+4=12;
根据预设缓存权重公式目标内容分段数据的缓存权重为W=n0+0.8*n1+0.5n2=4.8+6=10.8<W0,说明局部网络缓存的网络编码数据还没有达到稳定状态,User用户接收到该段数据后还会缓存该段数据的编码块。直到用户User缓存的网络编码块的缓存权重达到W0的标准。
同样对于中继节点4,5,6。其对应的目标数据段的缓存权重w4,w5,w6也均小于缓存权重阀值W0;所以缓存过程中中继节点4,5,6也会缓存该分段的缓存编码数据块。
如图5所示,用户周围有5个节点,用户获取的数据由4块组成,前4块分别存储于1,2,3,4四个节点中,节点5存储了4块中的任意一块,当节点1,2,3,4中任意一个节点离开用户的通信范围,若这个离开的用户缓存的数据与5的不同,用户都无法成功恢复出原始数据。这样的分块缓存方法显然效率不够高,但如果采用网络编码缓存的方式,5个设备存储的是者4块数据的线性组合。任意一个节点用户都能从剩余4个节点恢复出源文件。这样明显的系统的抗移动干扰性增强。
以上这些实施例应理解为仅用于说明本发明而不用于限制本发明的保护范围。在阅读了本发明的记载的内容之后,技术人员可以对本发明作各种改动或修改,这些等效变化和修饰同样落入本发明权利要求所限定的范围。

Claims (9)

1.一种基于网络编码的D2D视频分发和预缓存方法,其特征在于,包括以下步骤:
1)首先设备终端组成多跳D2D网络,所述多跳D2D网络中每个设备终端节点维持一个邻居缓存信息表,并且每个设备终端节点在一定范围内周期性以洪泛的方式发送自身缓存信息消息到网络中,附近设备接收到该消息后根据这个消息更新邻居缓存信息表;
2)当用户节点欲获取某视频时,根据邻居缓存信息表向拥有该视频文件的所有种子节点发送视频索取请求,种子节点收到请求后向用户节点发送编码后的视频数据,并添加相关包头信息;
3)视频编码数据VDData在网络中进行多跳传输和缓存,中间节点对其进行再编码、转发和预缓存操作,直到视频编码数据到达目的用户节点。
2.根据权利要求1所述的基于网络编码的D2D视频分发和预缓存方法,其特征在于,所述步骤1)每个设备终端节点在一定范围内周期性洪泛自身缓存信息消息为CacheInfo,该消息包含自身网络地址信息,自身缓存的视频数据信息。
3.根据权利要求2所述的基于网络编码的D2D视频分发和预缓存方法,其特征在于,所述CacheInfo消息包至少包括如下字段:
[1]IP Addr:设备自身网络地址:
[2]CMList:描述设备缓存了哪些ID的编码块;
[3]CacheNums:描述CMList中缓存的每个ID编码块对应的数目。
4.根据权利要求2所述的基于网络编码的D2D视频分发和预缓存方法,其特征在于,所述邻居设备收到CacheInfo消息后更新邻居缓存信息表,邻居信息表包含邻居网络IP地址、缓存记录表和跳数信息。
5.根据权利要求2所述的基于网络编码的D2D视频分发和预缓存方法,其特征在于,所述步骤2)根据邻居缓存信息表向拥有该视频文件的所有种子节点发送视频索取请求,种子节点收到请求后向用户节点发送编码后的视频数据,并添加相关包头信息具体包括:
21)某个设备想要请求某个视频文件,该设备首先查看自身内存和自己的邻居信息分布表,对于本地内存和邻居设备中没有或者不足的视频编码块,设备向基站获取,对于存于邻居设备的编码块,通过查询邻居缓存信息表,获取设备IP,向该设备发送数据请求REQ;
22)视频数据持有者设备受到请求后将VDData视频编码片数据上传至D2D网络,请求者设备从D2D网络下载编码数据,当收到足够的编码块后,即可恢复出对应消息ID编码块的原始数据,当恢复出所有消息ID原始数据块后,即可同过拼接恢复出原始视频文件。
6.根据权利要求5所述的基于网络编码的D2D视频分发和预缓存方法,其特征在于,所述VDData视频编码片消息至少包含如下字段:
[1]dataID:所传输的视频缓存数据所在文件名和数据分组号的组合;
[2]dst_addr:目标节点ip地址;
[3]coef:所传输的视频缓存数据网络编码系数;
[4]NCData:ID为dataID数据块编码后的数据。
7.根据权利要求5所述的基于网络编码的D2D视频分发和预缓存方法,其特征在于,所述步骤3)视频编码数据VDData在网络中进行多跳传输和缓存,中间节点对其进行再编码,转发和预缓存操作,直到视频编码数据到达目的用户节点具体包括步骤:
31)中继节点收到视频数据编码包后首先对编码块实行再编码操作,具体操作为:将收到的网络编码包与缓存中该dataID的编码包进行网络编码加运算,并生成一个临时网络编码数据包,并作为待转发的数据包;
32)数据经过中间节点的再编码操作后,执行转发处理操作,既根据一定的自身的路由标记信息决定是否继续转发,直到视频编码数据到达目的用户节点:
33)中继节点收到视频数据编码包后,根据一定的自身的缓存系数决和设备的邻居缓存信息表依照VDData消息缓存判定处理流程进行预缓存;
34)直到视频数据消息到达到达目的用户节点,一次分发缓存过程结束。
8.根据权利要求7所述的基于网络编码的D2D视频分发和预缓存方法,其特征在于,所述步骤32)具体包括以下步骤:
321)中间转发节点收到视频数据包后,判断自己的IP是否与dstAddr相同。如果相同则说明数据包成功到达源节点,则对数据包进行缓存;如果不同则说明没有到达源节点,进入步骤322)完成中间节点对数据包的下一步转发操作;
322)解析编码包的目的IP地址,查询转发到下一跳节点。
9.根据权利要求7所述的基于网络编码的D2D视频分发和预缓存方法,其特征在于,所述步骤33)VDData消息预缓存具体包括步骤:
331)中间节点收到VDData数据包后先解析出数据包包头信息中包含的视频编码块编号dataID;
332)根据视频编码块编号dataID查询邻居缓存信息表,取得该dataID编码数据包的权重w,如果该w=0,说明邻居节点和自身都没有缓存该数据编码块,若是w>W,其中W表示网络预设的缓存权重阀值,说明附近设备缓存的该编码快已经足够多,不需再缓存该编码块,否则若w<W,说明包括自己的附近设备缓存的该编码块没有达到稳定该编码块原文件恢复的条件,可以继续缓存,进而根据本地内存占用情况作如下判定:
3331)若内存缓存未满,则取出数据包中的视频缓存数据,将其保存到内存缓存,并进入步骤334);
3332)若内存缓存已满,使用LRU替换算法替换缓存,将内存缓存中最旧的视频数据块删除,然后将新的编码数据包存入缓存,并进入步骤314);
334)重新计算该dataID的编码块的权重,重新更新邻居缓存信息表。
CN201710166348.1A 2017-03-20 2017-03-20 一种基于网络编码的d2d视频分发和预缓存方法 Active CN106973303B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710166348.1A CN106973303B (zh) 2017-03-20 2017-03-20 一种基于网络编码的d2d视频分发和预缓存方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710166348.1A CN106973303B (zh) 2017-03-20 2017-03-20 一种基于网络编码的d2d视频分发和预缓存方法

Publications (2)

Publication Number Publication Date
CN106973303A true CN106973303A (zh) 2017-07-21
CN106973303B CN106973303B (zh) 2020-03-17

Family

ID=59328567

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710166348.1A Active CN106973303B (zh) 2017-03-20 2017-03-20 一种基于网络编码的d2d视频分发和预缓存方法

Country Status (1)

Country Link
CN (1) CN106973303B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107623720A (zh) * 2017-08-18 2018-01-23 中国科学院上海微系统与信息技术研究所 一种基于合作缓存的数据选择性缓存方法
CN110062357A (zh) * 2019-03-20 2019-07-26 重庆邮电大学 一种基于强化学习的d2d辅助设备缓存系统及缓存方法
CN110677489A (zh) * 2019-09-30 2020-01-10 北京奇艺世纪科技有限公司 媒体资源处理方法、装置、系统及存储介质
CN111372096A (zh) * 2020-03-12 2020-07-03 重庆邮电大学 一种基于d2d辅助的视频质量自适应缓存方法和设备
CN112261626A (zh) * 2020-10-20 2021-01-22 东北大学 D2d辅助的以内容为中心多跳协作式路由方法
CN113259056A (zh) * 2021-06-16 2021-08-13 上海交通大学 一种基于缓存信道联合编码的编码缓存传输方法
CN117155940A (zh) * 2023-10-31 2023-12-01 上海时链节能科技有限公司 适用于中央空调系统负荷调峰场景的控制通信方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105228028A (zh) * 2015-09-18 2016-01-06 南京大学镇江高新技术研究院 一种基于udp广播的视频流媒体数据分发与预缓存方法
CN105491156A (zh) * 2016-01-08 2016-04-13 华中科技大学 一种基于sd-ran的全网协同内容缓存管理系统及方法
CN106028057A (zh) * 2016-05-05 2016-10-12 北京邮电大学 一种移动ccn中可伸缩编码的自适应流媒体内容的缓存方法
CN106034289A (zh) * 2015-03-10 2016-10-19 北京信威通信技术股份有限公司 一种d2d组播通信中的转发控制方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106034289A (zh) * 2015-03-10 2016-10-19 北京信威通信技术股份有限公司 一种d2d组播通信中的转发控制方法
CN105228028A (zh) * 2015-09-18 2016-01-06 南京大学镇江高新技术研究院 一种基于udp广播的视频流媒体数据分发与预缓存方法
CN105491156A (zh) * 2016-01-08 2016-04-13 华中科技大学 一种基于sd-ran的全网协同内容缓存管理系统及方法
CN106028057A (zh) * 2016-05-05 2016-10-12 北京邮电大学 一种移动ccn中可伸缩编码的自适应流媒体内容的缓存方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JIANG J等: "Maximized Cellular Traffic Offloading via Device-to-Device Content Sharing", 《IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS》 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107623720A (zh) * 2017-08-18 2018-01-23 中国科学院上海微系统与信息技术研究所 一种基于合作缓存的数据选择性缓存方法
CN107623720B (zh) * 2017-08-18 2021-02-05 中国科学院上海微系统与信息技术研究所 一种基于合作缓存的数据选择性缓存方法
CN110062357A (zh) * 2019-03-20 2019-07-26 重庆邮电大学 一种基于强化学习的d2d辅助设备缓存系统及缓存方法
CN110062357B (zh) * 2019-03-20 2022-02-11 重庆邮电大学 一种基于强化学习的d2d辅助设备缓存系统及缓存方法
CN110677489A (zh) * 2019-09-30 2020-01-10 北京奇艺世纪科技有限公司 媒体资源处理方法、装置、系统及存储介质
CN111372096A (zh) * 2020-03-12 2020-07-03 重庆邮电大学 一种基于d2d辅助的视频质量自适应缓存方法和设备
CN112261626A (zh) * 2020-10-20 2021-01-22 东北大学 D2d辅助的以内容为中心多跳协作式路由方法
CN112261626B (zh) * 2020-10-20 2021-11-09 东北大学 D2d辅助的以内容为中心多跳协作式路由方法
CN113259056A (zh) * 2021-06-16 2021-08-13 上海交通大学 一种基于缓存信道联合编码的编码缓存传输方法
CN117155940A (zh) * 2023-10-31 2023-12-01 上海时链节能科技有限公司 适用于中央空调系统负荷调峰场景的控制通信方法及装置
CN117155940B (zh) * 2023-10-31 2024-01-30 上海时链节能科技有限公司 适用于中央空调系统负荷调峰场景的控制通信方法及装置

Also Published As

Publication number Publication date
CN106973303B (zh) 2020-03-17

Similar Documents

Publication Publication Date Title
CN106973303A (zh) 一种基于网络编码的d2d视频分发和预缓存方法
CN102255807B (zh) 一种基于主从结构多跳网络的多路径分段路由方法
Pandey et al. Study of MANET routing protocols by GloMoSim simulator
CN103338207B (zh) 无线自组织网络中实时视频多跳中继方法
CN103931158A (zh) 用于在无线通信系统中进行内容和应用程序加速的系统和方法
CN102223683A (zh) 无线传感器网络中的数据传输方法、节点和系统
CN101667885A (zh) Dtn或icn网络上利用网络编码技术减少冗余消息的方法
CN101568164A (zh) 基于节点优先级的Ad hoc网络机会路由算法
CN103648144A (zh) 一种无线多跳网络中带多QoS约束的多路径生成方法
CN101686521B (zh) 基于网络编码的无线自组网路由查找方法
CN107846706A (zh) 一种拥塞避免的编码感知无线mesh网络多路径路由方法
CN103068002A (zh) 一种高效的HR-WPAN Mesh网络路由方法
CN103298057B (zh) 基于ZigBee技术的并发多径路由方法
CN108173903B (zh) 自治系统协作缓存策略在ccn中的应用方法
CN103297174A (zh) 基于动态网络编码的高速移动自组网数据传输方法
CN103560966B (zh) 基于网络编码和复制的机会网络混合路由方法
Wei et al. Cache management for adaptive scalable video streaming in vehicular content-centric network
CN101119307A (zh) 一种路由方法
Xia et al. An improved AODV routing protocol based on the congestion control and routing repair mechanism
CN106657181A (zh) 一种基于内容中心网络的数据推送方法
CN105228028A (zh) 一种基于udp广播的视频流媒体数据分发与预缓存方法
Wang et al. Research on routing protocols and simulation analysis for opportunistic networks
CN112910779A (zh) 一种基于Ad Hoc网络的跨层路由优化协议
Hong et al. Mobile agent based congestion control AODV routing protocol
Ren et al. Summary-Vector-Based effective and fast immunization for epidemic-based routing in opportunistic networks

Legal Events

Date Code Title Description
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant