CN107332769A - 数据转发方法及装置 - Google Patents
数据转发方法及装置 Download PDFInfo
- Publication number
- CN107332769A CN107332769A CN201710347186.1A CN201710347186A CN107332769A CN 107332769 A CN107332769 A CN 107332769A CN 201710347186 A CN201710347186 A CN 201710347186A CN 107332769 A CN107332769 A CN 107332769A
- Authority
- CN
- China
- Prior art keywords
- node
- forward node
- data
- preference
- neighbours
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/70—Routing based on monitoring results
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/20—Hop count for routing purposes, e.g. TTL
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明提供一种数据转发方法及装置,属于通信技术领域。方法包括:对于车辆自组织网络中获取到兴趣包的任一节点,将任一节点作为转发节点,当转发节点的本地缓存中未存储兴趣包所请求的数据,并查询转发节点的内容偏好表中是否存储有数据的数据名称;当内容偏好表存储有数据名称时,从转发节点的邻居协助节点集合中,选取内容偏好表中数据名称对应的邻居协助节点,并作为转发节点的下一跳节点,由转发节点将兴趣包转发至下一跳节点。由于可从基于构建的内容偏好表,从内容偏好表中选取转发节点的邻居协助节点,以实现数据转发,而不用通过广播兴趣包的方式来转发数据。因此,不会造成数据泛洪而导致网络瘫痪。
Description
技术领域
本发明涉及通信技术领域,更具体地,涉及一种数据转发方法及装置。
背景技术
随着移动终端设备在数量上的迅速增长,无线通信技术迅速发展。实时流媒体服务作为未来互联网的关键业务,在学术界和工业界被广泛地研究,尤其在车辆自组织网(VANETs)中。在车辆自组织网中,车辆之间可以相互通信并分享数据。其中,流媒体数据的共享是车辆自组织网的关键服务。然而,IP协议不能有效支持由于车辆自组织网络拓扑频繁变化,导致在移动性环境下流媒体的传输效率显著降低。信息中心网络以一个全新的范式出现,将内容作为网络基元取代传统IP地址的地位,以开拓的方式重构了未来网络。
基于这个设计思想,信息中心网络通过网络缓存和名称路由,来实现内容存储。一般而言,信息中心网络中数据传递的过程主要是先由数据消费者发出对特定名称数据的请求,信息中心网络路由请求并定位一组候选数据提供者,被请求的数据按路由相反的方法回传给数据消费者。不失一般性,数据的请求在信息中心网络架构的术语中被称为兴趣包。由于流媒体是一种延时灵敏的应用场景,兴趣包需尽可能快的路由到潜在的数据提供者,来确保用户需求的时效性。在以信息中心网为基础车辆自组织网络中,用户同时扮演数据请求者和数据提供者的双重角色,数据副本分散在网络的各个角落。因此,如何转发兴趣包来定位用户请求的数据成为信息中心网络中的一个重要研究问题。
目前的数据转发方法主要是由数据请求用户对应节点通过网络接口广播兴趣包,即将兴趣包转发至所有单跳邻居节点。接收到该兴趣包的节点会重复这一过程直到兴趣包抵达数据提供者,从而这些数据提供者会将数据包返回至数据请求用户。
在实现本发明的过程中,发现现有技术至少存在以下问题:由于会持续向邻居节点广播兴趣包,直到找到兴趣包对应的数据提供者,从而会造成数据泛洪,导致网络瘫痪。
发明内容
现有技术中是由数据请求用户对应节点通过网络接口广播兴趣包,即将兴趣包转发至所有单跳邻居节点。接收到该兴趣包的节点会重复这一过程直到兴趣包抵达数据提供者,从而这些数据提供者会将数据包返回至数据请求用户。由于会持续向邻居节点广播兴趣包,直到找到兴趣包对应的数据提供者,从而会造成数据泛洪,导致网络瘫痪。为了解决上述问题,本发明提供一种克服上述问题或者至少部分地解决上述问题的数据转发方法及装置。
根据本发明的第一方面,提供了一种数据转发方法,该方法包括:
步骤1,对于车辆自组织网络中获取到兴趣包的任一节点,将任一节点作为转发节点,当转发节点的本地缓存中未存储兴趣包所请求的数据,并查询转发节点的内容偏好表中是否存储有数据的数据名称;
步骤2,当内容偏好表存储有数据名称时,从转发节点的邻居协助节点集合中,选取内容偏好表中数据名称对应的邻居协助节点,并作为转发节点的下一跳节点,由转发节点将兴趣包转发至下一跳节点。
本发明提供的方法,对于车辆自组织网络中获取到兴趣包的任一节点,通过将任一节点作为转发节点,当转发节点的本地缓存中未存储兴趣包所请求的数据,并查询转发节点的内容偏好表中是否存储有数据的数据名称。当内容偏好表存储有数据名称时,从转发节点的邻居协助节点集合中,选取内容偏好表中数据名称对应的邻居协助节点,并作为转发节点的下一跳节点,由转发节点将兴趣包转发至下一跳节点。由于可从基于构建的内容偏好表,从内容偏好表中选取转发节点的邻居协助节点,以实现数据转发,而不用通过广播兴趣包的方式来转发数据。因此,不会造成数据泛洪而导致网络瘫痪。
结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,步骤1中查询转发节点的内容偏好表中是否存储有数据的数据名称之后,还包括:
当内容偏好表未存储数据名称时,查询转发节点的转发信息表中是否存储有数据名称和相应的下一跳节点;
当转发信息表中未存储数据名称或相应的下一跳节点时,从邻居协助节点集合中选取具有最高跳转能力的邻居协助节点,由转发节点将兴趣包转发至具有最高跳转能力的邻居协助节点。
结合第一方面的第一种或第二种可能的实现方式,在第三种可能的实现方式中,步骤2之前还包括:
基于转发节点的速度矢量信息及历史播放行为信息,确定转发节点的邻居协助节点集合。
结合第一方面的第三种可能的实现方式,在第四种可能的实现方式中,基于转发节点的速度矢量信息及历史播放行为信息,确定转发节点的邻居协助节点集合,包括:
基于转发节点的速度矢量信息,确定转发节点的协作节点集合;
基于转发节点的历史播放行为信息,对协作节点集合进行筛选,得到转发节点的邻居协助节点集合。
结合第一方面的第四种可能的实现方式,在第五种可能的实现方式中,基于转发节点的速度矢量信息,确定转发节点的协作节点集合,包括:
基于转发节点的速度矢量信息,计算转发节点与每一相邻节点之间的余弦相似性值;
选取余弦相似性值大于预设阈值的相邻节点作为转发节点的协作节点,得到转发节点的协作节点集合。
结合第一方面的第四种可能的实现方式,在第六种可能的实现方式中,基于转发节点的历史播放行为信息,对协作节点集合进行筛选,得到转发节点的邻居协助节点集合,包括:
基于转发节点的历史播放行为信息,构建转发节点的偏好程度向量;
根据转发节点的偏好程度向量及每一协作节点的偏好程度向量,对协作节点集合进行筛选,得到转发节点的邻居协助节点集合。
结合第一方面的第六种可能的实现方式,在第七种可能的实现方式中,基于转发节点的历史播放行为信息,构建转发节点的偏好程度向量,包括:
基于转发节点的历史播放行为信息,确定转发节点对每一视频类型的偏好程度值;
根据转发节点对每一视频类型的偏好程度值,得到转发节点的偏好程度向量。
结合第一方面的第六种可能的实现方式,在第八种可能的实现方式中,根据转发节点的偏好程度向量及每一协作节点的偏好程度向量,对协作节点集合进行筛选,得到转发节点的邻居协助节点集合,包括:
根据转发节点的偏好程度向量及每一协作节点的偏好程度向量,计算转发节点与每一协作节点之间的偏好程度相似值;
按照从大到小的顺序对每一协作节点对应的偏好程度相似值进行排列,选取前预设数量个协作节点作为转发节点的邻居协助节点集合。
结合第一方面的第一种可能的实现方式,在第九种可能的实现方式中,步骤1之前还包括:
对于车辆自组织网络中每一节点,基于兴趣交互包在每一节点之间的传递过程,构建每一节点的内容偏好表。
根据本发明的第一方面,提供了一种数据转发装置,该装置包括:
第一查询模块,用于对于车辆自组织网络中获取到兴趣包的任一节点,将任一节点作为转发节点,当转发节点的本地缓存中未存储兴趣包所请求的数据,并查询转发节点的内容偏好表中是否存储有数据的数据名称;
第一转发模块,用于当内容偏好表存储有数据名称时,从转发节点的邻居协助节点集合中,选取内容偏好表中数据名称对应的邻居协助节点,并作为转发节点的下一跳节点,由转发节点将兴趣包转发至下一跳节点。
应当理解的是,以上的一般描述和后文的细节描述是示例性和解释性的,并不能限制本发明。
附图说明
图1为本发明实施例的一种数据转发方法的流程示意图;
图2为本发明实施例的一种数据转发方法的流程示意图;
图3为本发明实施例的一种兴趣包的快速转发示意图;
图4为本发明实施例的一种数据转发装置的结构示意图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
随着移动终端设备在数量上***式的增长,无线通信技术迅速发展。实时流媒体服务作为未来互联网的关键业务,在学术界和工业界被广泛的研究。尤其在车辆自组网(VANETs)中,车辆之间可以相互通信并分享数据。其中,流媒体数据的共享是该领域的关键服务。不幸的是,IP协议不能有效支持由于车辆自组织网络拓扑的频繁变化,导致在移动性环境下流媒体的传输效率显著降低。信息中心网络以一个全新的范式出现,将内容作为网络基元取代传统IP地址的地位,以开拓的方式重构了未来网络。基于这个设计思想,信息中心网络通过网络缓存和名称路由,来完成无处不在的内容存储和与生俱来的移动支持性,从而在车辆自组织网络领域迅速发展。
一般而言,信息中心网络中数据传递的过程主要是先由数据消费者发出对特定名称数据的请求,信息中心网络路由请求并定位一组候选数据提供者,被请求的数据按路由相反的方法回传给数据消费者。不失一般性,数据的请求在信息中心网络架构的术语中被称为兴趣包。由于流媒体是一种延时灵敏的应用场景,兴趣包需尽可能快的路由到潜在的数据提供者,来确保用户需求的时效性。在以信息中心网为基础车辆自组织网络中,用户同时扮演数据请求者和数据提供者的双重角色,数据副本分散在网络的各个角落。因此,如何转发兴趣包来定位用户请求的数据成为信息中心网络中的一个重要研究问题。
目前的数据转发方法主要是由数据请求用户对应节点通过网络接口广播兴趣包,即将兴趣包转发至所有单跳邻居节点。接收到该兴趣包的节点会重复这一过程直到兴趣包抵达数据提供者,从而这些数据提供者会将数据包返回至数据请求用户。
在实现本发明的过程中,发现现有技术至少存在以下问题:由于会持续向邻居节点广播兴趣包,直到找到兴趣包对应的数据提供者,从而会造成数据泛洪,导致网络瘫痪。
针对现有技术中的问题,本发明实施例提供了一种数据转发方法。参见图1,该方法包括:101,对于车辆自组织网络中获取到兴趣包的任一节点,将任一节点作为转发节点,当转发节点的本地缓存中未存储兴趣包所请求的数据,并查询转发节点的内容偏好表中是否存储有数据的数据名称;102,当内容偏好表存储有数据名称时,从转发节点的邻居协助节点集合中,选取内容偏好表中数据名称对应的邻居协助节点,并作为转发节点的下一跳节点,由转发节点将兴趣包转发至下一跳节点。
本发明实施例提供的方法,对于车辆自组织网络中获取到兴趣包的任一节点,通过将任一节点作为转发节点,当转发节点的本地缓存中未存储兴趣包所请求的数据,并查询转发节点的内容偏好表中是否存储有数据的数据名称。当内容偏好表存储有数据名称时,从转发节点的邻居协助节点集合中,选取内容偏好表中数据名称对应的邻居协助节点,并作为转发节点的下一跳节点,由转发节点将兴趣包转发至下一跳节点。由于可从基于构建的内容偏好表,从内容偏好表中选取转发节点的邻居协助节点,以实现数据转发,而不用通过广播兴趣包的方式来转发数据。因此,不会造成数据泛洪而导致网络瘫痪。
作为一种可选实施例,步骤101中查询转发节点的内容偏好表中是否存储有数据的数据名称之后,还包括:
当内容偏好表未存储数据名称时,查询转发节点的转发信息表中是否存储有数据名称和相应的下一跳节点;
当转发信息表中未存储数据名称或相应的下一跳节点时,从邻居协助节点集合中选取具有最高跳转能力的邻居协助节点,由转发节点将兴趣包转发至具有最高跳转能力的邻居协助节点。
作为一种可选实施例,步骤102之前还包括:
基于转发节点的速度矢量信息及历史播放行为信息,确定转发节点的邻居协助节点集合。
作为一种可选实施例,基于转发节点的速度矢量信息及历史播放行为信息,确定转发节点的邻居协助节点集合,包括:
基于转发节点的速度矢量信息,确定转发节点的协作节点集合;
基于转发节点的历史播放行为信息,对协作节点集合进行筛选,得到转发节点的邻居协助节点集合。
作为一种可选实施例,基于转发节点的速度矢量信息,确定转发节点的协作节点集合,包括:
基于转发节点的速度矢量信息,计算转发节点与每一相邻节点之间的余弦相似性值;
选取余弦相似性值大于预设阈值的相邻节点作为转发节点的协作节点,得到转发节点的协作节点集合。
作为一种可选实施例,基于转发节点的历史播放行为信息,对协作节点集合进行筛选,得到转发节点的邻居协助节点集合,包括:
基于转发节点的历史播放行为信息,构建转发节点的偏好程度向量;
根据转发节点的偏好程度向量及每一协作节点的偏好程度向量,对协作节点集合进行筛选,得到转发节点的邻居协助节点集合。
作为一种可选实施例,基于转发节点的历史播放行为信息,构建转发节点的偏好程度向量,包括:
基于转发节点的历史播放行为信息,确定转发节点对每一视频类型的偏好程度值;
根据转发节点对每一视频类型的偏好程度值,得到转发节点的偏好程度向量。
作为一种可选实施例,根据转发节点的偏好程度向量及每一协作节点的偏好程度向量,对协作节点集合进行筛选,得到转发节点的邻居协助节点集合,包括:
根据转发节点的偏好程度向量及每一协作节点的偏好程度向量,计算转发节点与每一协作节点之间的偏好程度相似值;
按照从大到小的顺序对每一协作节点对应的偏好程度相似值进行排列,选取前预设数量个协作节点作为转发节点的邻居协助节点集合。
作为一种可选实施例,步骤101之前还包括:
对于车辆自组织网络中每一节点,基于兴趣交互包在每一节点之间的传递过程,构建每一节点的内容偏好表。
上述所有可选技术方案,可以采用任意结合形成本发明的可选实施例,在此不再一一赘述。
基于上述图1对应实施例的内容,本发明实施例提供了一种数据转发方法。参见图2,该方法包括:201、对于车辆自组织网络中每一节点,基于兴趣交互包在每一节点之间的传递过程,构建每一节点的内容偏好表;202、对于车辆自组织网络中获取到兴趣包的任一节点,将任一节点作为转发节点,当转发节点的本地缓存中未存储兴趣包所请求的数据,并查询转发节点的内容偏好表中是否存储有数据的数据名称;203、当内容偏好表存储有数据名称时,从转发节点的邻居协助节点集合中,选取内容偏好表中数据名称对应的邻居协助节点,并作为转发节点的下一跳节点,由转发节点将兴趣包转发至下一跳节点。
其中,步骤201、对于车辆自组织网络中每一节点,基于兴趣交互包在每一节点之间的传递过程,构建每一节点的内容偏好表。
由于后续需要根据内容偏好表转发兴趣包,从而在本步骤中可先构建每一节点的内容偏好表。其中,对于任一节点,其内容偏好表中的每一条目主要用来存储携带兴趣包所请求数据的节点(节点id)、从该节点到兴趣包所请求数据的节点之间的距离(跳数),从该节点所跳至下一跳节点以及该条目的更新时间(时间戳)。其中,内容偏好表的内容可参考表1。
表1
考虑到VANETs的自组织性,从而可通过完全分布式的方法构建内容偏好表。基于上述原理,可先构建一种特殊的兴趣交互包。该兴趣交互包主要由内容偏好表的主体内容和内容名称组成,具体形式如下所示:“/HPCT/user name/time stamp/”。
其中,“/HPCT”是所有兴趣交互包的公共前缀,“/user name”指的是内容偏好表的归属节点,“/time stamp”代表兴趣交互包的生成时间。相应地,本发明实施例不对基于兴趣交互包在每一节点之间的传递过程,构建每一节点的内容偏好表的方式作具体限定,包括但不限于:对于车辆自组织网络中任一节点,当任一节点接收到上一跳节点转发的兴趣交互包时,检测任一节点的内容偏好表中是否包含兴趣交互包中的数据名称或节点;基于兴趣交互包在任一节点的内容偏好表中增加相应的数据,以对任一节点的内容偏好表进行更新。
具体地,兴趣交互包可周期性地在邻居协助节点间相互交换,并且每个节点可根据收到的兴趣交互包更新自身本地的内容偏好表。例如,若节点x接收到一个来自节点y的兴趣交互包,且节点y的兴趣交互包中包含节点x的内容偏好表所不含的数据名称或数据提供者的名称(节点id),则在节点x的内容偏好表中可基于数据名称和数据提供者的名称,在内容偏好表中添加相应的新条目。其中,新条目的下一跳将会被设置为节点y,跳数等于节点y到数据携带者的跳数加一,时间戳将被设置为接收到兴趣交互包的时刻。
反之,若兴趣交互包中不包含任何节点x的内容偏好表所不含的数据名称或者数据携带者名称,则x仅仅根据节点y的兴趣交互包更新本存储的内容偏好表中对应条目的值。相应地,更新的内容偏好表将会在下一个周期发送给节点x的所有邻居协助节点。经过几轮更新,所有协助节点的缓存状态将被记录在节点x在本地存储的内容偏好表中。通过上述过程,可构建每一节点的内容偏好表。需要说明的是,上述过程可在没有任何集中控制或者远端信息交换的条件下为节点获得远端协助节点的缓存情况。
另外,考虑到兴趣包转发的成功率依赖于内容偏好表内容的准确性。现考虑两种导致内容偏好表中条目失效的情形:
1、邻居协助节点中缓存发生替换;
2、下一跳的邻居协助节点移动出单跳范围。
对于上述第一种情形,不同于其它移动设备,由于车辆拥有较强的缓存能力,从而视频内容可以被永久保存。因此,上述过程中提出的周期***换兴趣交互包可解决缓存替换导致的失效。
对于上述第二种情形,节点可首先删除下一跳中已离开的节点条目,并且立刻发送更新信息到所有邻居协助节点。接收节点更新内容偏好表,且与其它的邻居协助节点在下一个周期交换更新后的内容偏好表。除此之外,当路由失败发生时,路由路径的终端节点将返回ACK告知路由失败。在路径上的节点在接收到ACK之后,可删除在内容偏好表中导致路由失败的条目。
在上述过程中,还可先基于转发节点的速度矢量信息及历史播放行为信息,确定转发节点的邻居协助节点集合。本发明实施例不对基于转发节点的速度矢量信息及历史播放行为信息,确定转发节点的邻居协助节点集合的方式作具体限定,包括但不限于:基于转发节点的速度矢量信息,确定转发节点的协作节点集合;基于转发节点的历史播放行为信息,对协作节点集合进行筛选,得到转发节点的邻居协助节点集合。
由于节点在运动时存在移动相似性,如马路上的汽车作为节点时在马路上移动存在移动相似性,从而可基于节点的速度矢量信息,确定转发节点的协作节点集合。本发明实施例不对基于转发节点的速度矢量信息,确定转发节点的协作节点集合的方式作具体限定,包括但不限于:基于转发节点的速度矢量信息,计算转发节点与每一相邻节点之间的余弦相似性值;选取余弦相似性值大于预设阈值的相邻节点作为转发节点的协作节点,得到转发节点的协作节点集合。
其中,以转发节点x为例,其速度矢量信息可以为一个二维矢量sx=(x1,x2)。在计算余弦相似性值时,可参考如下公式(1):
在上述公式(1)中,R(sx,sy)是sx和sy的余弦相似性。R(sx,sy)的值越大,表明节点x和节点y的移动行为比较一致。拥有更高R(sx,sy)的相邻节点y将会相应的在x单跳范围内停留更久时间。基于公式(1),可选择出R(sx,sy)>θ1的邻居节点作为候选的协作节点。其中,θ1为可调节的预设阈值。
通过上述过程在得到协作节点集合后,可对协作节点集合进行筛选,得到转发节点的邻居协助节点集合。本发明实施例不对得到转发节点的邻居协助节点集合的方式作具体限定,包括但不限于:基于转发节点的历史播放行为信息,构建转发节点的偏好程度向量;根据转发节点的偏好程度向量及每一协作节点的偏好程度向量,对协作节点集合进行筛选,得到转发节点的邻居协助节点集合。
其中,节点的历史播放行为信息指的是转发节点x对应用户相应的视频播放记录,如播放过视频的播放时长等。由于用户的历史播放行为可表明用户对不同视频类型的偏好程度,不同用户可能喜欢同一个或者多个视频类型,从而可基于转发节点的历史播放行为信息,构建转发节点的偏好程度向量。本发明实施例不对构建转发节点的偏好程度向量的方式作具体限定,包括但不限于:基于转发节点的历史播放行为信息,确定转发节点对每一视频类型的偏好程度值;根据转发节点对每一视频类型的偏好程度值,得到转发节点的偏好程度向量。
具体地,结合用户对视频的偏好相似性,基于Gossip-like方法,可进一步地筛选协作节点。为预测视频偏好相似性,本发明实施例为每个节点配置如下所示的记录用户历史播放行为数据结构:
<视频名称,类型,播放时间>。
其中,视频名称是被观看视频的分层目录名称,类型代表视频的分类,播放时间为用户在相应视频上花费的时间。本发明实施例定义一个非负的参数作为用户x对于视频类型i的偏好程度。可参考如下公式(2):
在上述公式(2)中,Vx代表用户x所观看的所有视频集合。px(vj)和ptotal(vj)分别代表在历史播放行为中,对应视频播放的时间和完整视频vj的时间。Ii(vj)是一个指示器方程,可参考如下公式(3):
在公式(3)中,Ti表示i类型的视频集合。值更高表示用户x花费更多的时间在类型i的视频上。同时,也表明该用户更可能对i类型的视频感兴趣。依据用户对不同视频类型对应的偏好程度值,可构建转发节点x对应的k维向量Px:
在上述公式(4)中,Px为转发节点x的偏好程度向量。是标准化后的值,计算过程可参考如下公式(5):
通过上述过程,可得到转发节点的偏好程度向量。基于同样的原理,可得到转发节点的协作节点集合中每一协作节点的偏好程度向量。在得到节点的偏好程度向量后,可对协作节点集合进行筛选,得到转发节点的邻居协助节点集合。本发明实施例不对得到转发节点的邻居协助节点集合的方式作具体限定,包括但不限于:根据转发节点的偏好程度向量及每一协作节点的偏好程度向量,计算转发节点与每一协作节点之间的偏好程度相似值;按照从大到小的顺序对每一协作节点对应的偏好程度相似值进行排列,选取前预设数量个协作节点作为转发节点的邻居协助节点集合。
具体地,可计算转发节点与协作节点之间偏好程度向量的欧式距离,即将Px作为欧几里得空间内的一个点,并通过如下公式(6)计算转发节点x和协作节点y之间的偏好程度相似性:
在计算得到转发节点与每一协作节点之间的偏好程度相似性之后,可按照相似性值的大小对协作节点进行排序,从而选取前预设数量个协作节点作为转发节点的邻居协助节点集合。
其中,上述得到转接节点的邻居协助节点集合的过程可参考如下伪代码(单跳邻居协助节点发现算法):
1:输入:转接节点x的单跳邻居节点集合Nx;
2:输出:节点x的输出候选协助节点集合Cx和协助节点集合Ax;
3:for y∈Nx
4:根据公式(1)计算R(sx,sy);
5:if R(sx,sy)≥θ1
6:将y添加到Cx集合中;
7:end if
8:end for
9:for y∈Cx
10:根据公式(6)给出的d2(Px,Py)计算公式得到偏好相似度;
11:end for
12:根据偏好程度相似性对集合Cx中的点进行分类;
13:for(j=1,j≤h,j++)
14:Ax[j]=Cx[j];
15:end for
16:return Ax[j]和Cx[j];
基于上述过程基于已发掘的单跳协助节点,结合Gossip-like思想,让每个节点利用协作节点表记录协作节点信息,并通过在MAC层的信标信息周期性的交换协作节点表。最后,每个节点通过接收到的协作节点表更新自身的协作节点表。经过几次迭代之后,节点x的协作节点表中将会包含网络中所有具有相似移动性和视频偏好性的协作节点。
其中,步骤202,对于车辆自组织网络中获取到兴趣包的任一节点,将任一节点作为转发节点,当转发节点的本地缓存中未存储兴趣包所请求的数据,并查询转发节点的内容偏好表中是否存储有数据的数据名称。
在本步骤中,转发节点可先检查本地缓存是否存储有兴趣包所请求的数据。如果本地缓存中存储有兴趣包所请求的数据,则将请求数据的视频通过兴趣包的进入端口直接发送回上游节点。当转发节点的本地缓存中未存储兴趣包所请求的数据时,可在转发节点的待定请求表中存储兴趣包对应的请求信息,并检查转发节点的待定请求表。如果转发节点的待定请求表中已包含请求内容的入口,转发节点可将进入端口加入到自身的待定请求表中,然后丢弃兴趣包,并等待数据的到来。否则,如果转发节点待定请求表中没有包含请求内容的入口,则可在该待定请求表中创建一个新的请求数据记录,该记录主要包含数据名称及进入接口。在执行完上述过程后,可查询转发节点的内容偏好表中是否存储有数据的数据名称。
其中,步骤203、当内容偏好表存储有数据名称时,从转发节点的邻居协助节点集合中,选取内容偏好表中数据名称对应的邻居协助节点,并作为转发节点的下一跳节点,由转发节点将兴趣包转发至下一跳节点。
在本步骤中,内容偏好表中数据名称对应的邻居协助节点,即为所请求内容的内容提供者节点。当内容偏好表中存在多个内容提供者时,转发节点可选择距离最近的内容提供者节点以作为下一跳节点,并将兴趣包转发至该下一跳节点。
在查询转发节点的内容偏好表中是否存储有数据的数据名称之后,当内容偏好表未存储数据名称时,可查询转发节点的转发信息表中是否存储有数据名称和相应的下一跳节点;当转发信息表中未存储数据名称或相应的下一跳节点时,从邻居协助节点集合中选取具有最高跳转能力的邻居协助节点,由转发节点将兴趣包转发至具有最高跳转能力的邻居协助节点。
本发明实施例主要是对兴趣转发过程进行说明,其中,内容偏好表维系了关于数据名称和数据载体的映射信息,从而能够支持基于单播的兴趣转发。如果请求的数据不在内容偏好表中,可简单选择一个下一跳节点作为转发者。在这种情况下,本发明可从具有相似移动模式和相似内容偏好的相邻协助节点集合中选择一个节点作为下一跳转发节点。
具体地,可先利用如下的公式(7)计算每个邻居协助节点y关于请求数据vh的兴趣度:
在上述公式(7)中,和Ij(vh)分别是和指示器方程(3)的组成部分。进一步地,可对进行标准化,标准化过程可参考如下公式(8):
在上述公式(8)中,和分别表示转接节点x的邻居协助节点的最大值和最小值。
基于上述公式(1)及公式(8),可计算每一邻居协助节点的跳转能力值,并选择具有最高跳转能力的候选节点作为下一跳节点,具体过程可参考如下公式(9):
在选取具有最高跳转能力的下一跳节点之后,可由转发节点将兴趣包转发给下一跳节点。
图3中所示的是兴趣包转发的一个示例。移动车辆x1在转发平面上收到一个请求视频内容V1的兴趣包,先检查本地缓存,并且在待定请求表中记录缺失的缓存事件。接着,查找内容偏好表,若该表中没有相关的任何匹配,则根据转发V1的兴趣包到下一跳x2。节点x2发现它的内容偏好表中可以检索到V1,V1的内容来自于节点x5。然后,节点x2可将兴趣包转发至下一跳x4。根据内容偏好表中的信息,x4可直接将请求转发至内容提供者x5。最后,x5将数据包沿着反向路径返回至请求节点。至此,借助内容偏好表完成了基于偏好感知的快速兴趣转发。
本发明实施例提供的方法,对于车辆自组织网络中获取到兴趣包的任一节点,通过将任一节点作为转发节点,当转发节点的本地缓存中未存储兴趣包所请求的数据,并查询转发节点的内容偏好表中是否存储有数据的数据名称。当内容偏好表存储有数据名称时,从转发节点的邻居协助节点集合中,选取内容偏好表中数据名称对应的邻居协助节点,并作为转发节点的下一跳节点,由转发节点将兴趣包转发至下一跳节点。由于可从基于构建的内容偏好表,从内容偏好表中选取转发节点的邻居协助节点,以实现数据转发,而不用通过广播兴趣包的方式来转发数据。因此,不会造成数据泛洪而导致网络瘫痪。
另外,当转发信息表中未存储数据名称或相应的下一跳节点时,由于可根据转发节点的邻居协助节点集合中每一邻居协助节点的跳转能力值,选取最高跳转能力的邻居协助节点作为下一跳节点以实现数据的转发,而不用通过广播兴趣包的方式来转发数据,从而不会造成数据泛洪而导致网络瘫痪。
最后,由于可在每个节点构建并维护视频偏好及移动相似性的信息,并将信息存储在内容偏好表中,每个节点根据内容偏好表上的信息决定转发的下一跳,从而消费者可以有效地转发兴趣包,以使快速高效地定位并地获取视频内容。
本发明实施例提供了一种数据转发装置,该装置用于执行上述图1或图2对应的实施例中所提供的数据转发方法。参见图4,该装置包括:
第一查询模块401,用于对于车辆自组织网络中获取到兴趣包的任一节点,将任一节点作为转发节点,当转发节点的本地缓存中未存储兴趣包所请求的数据,并查询转发节点的内容偏好表中是否存储有数据的数据名称;
第一转发模块402,用于当内容偏好表存储有数据名称时,从转发节点的邻居协助节点集合中,选取内容偏好表中数据名称对应的邻居协助节点,并作为转发节点的下一跳节点,由转发节点将兴趣包转发至下一跳节点。
作为一种可选实施例,该装置还包括:
第二查询模块,用于当内容偏好表未存储数据名称时,查询转发节点的转发信息表中是否存储有数据名称和相应的下一跳节点;
第二转发模块,用于当转发信息表中未存储数据名称或相应的下一跳节点时,从邻居协助节点集合中选取具有最高跳转能力的邻居协助节点,由转发节点将兴趣包转发至具有最高跳转能力的邻居协助节点。
作为一种可选实施例,该装置还包括:
确定模块,用于基于转发节点的速度矢量信息及历史播放行为信息,确定转发节点的邻居协助节点集合。
作为一种可选实施例,确定模块,包括:
确定单元,用于基于转发节点的速度矢量信息,确定转发节点的协作节点集合;
筛选单元,用于基于转发节点的历史播放行为信息,对协作节点集合进行筛选,得到转发节点的邻居协助节点集合。
作为一种可选实施例,确定单元,用于基于转发节点的速度矢量信息,计算转发节点与每一相邻节点之间的余弦相似性值;选取余弦相似性值大于预设阈值的相邻节点作为转发节点的协作节点,得到转发节点的协作节点集合。
作为一种可选实施例,筛选单元,包括:
构建子单元,用于基于转发节点的历史播放行为信息,构建转发节点的偏好程度向量;
筛选子单元,用于根据转发节点的偏好程度向量及每一协作节点的偏好程度向量,对协作节点集合进行筛选,得到转发节点的邻居协助节点集合。
作为一种可选实施例,构建子单元,用于基于转发节点的历史播放行为信息,确定转发节点对每一视频类型的偏好程度值;根据转发节点对每一视频类型的偏好程度值,得到转发节点的偏好程度向量。
作为一种可选实施例,筛选子单元,用于根据转发节点的偏好程度向量及每一协作节点的偏好程度向量,计算转发节点与每一协作节点之间的偏好程度相似值;按照从大到小的顺序对每一协作节点对应的偏好程度相似值进行排列,选取前预设数量个协作节点作为转发节点的邻居协助节点集合。
作为一种可选实施例,该装置还包括:
构建模块,用于对于车辆自组织网络中每一节点,基于兴趣交互包在每一节点之间的传递过程,构建每一节点的内容偏好表。
本发明实施例提供的装置,对于车辆自组织网络中获取到兴趣包的任一节点,通过将任一节点作为转发节点,当转发节点的本地缓存中未存储兴趣包所请求的数据,并查询转发节点的内容偏好表中是否存储有数据的数据名称。当内容偏好表存储有数据名称时,从转发节点的邻居协助节点集合中,选取内容偏好表中数据名称对应的邻居协助节点,并作为转发节点的下一跳节点,由转发节点将兴趣包转发至下一跳节点。由于可从基于构建的内容偏好表,从内容偏好表中选取转发节点的邻居协助节点,以实现数据转发,而不用通过广播兴趣包的方式来转发数据。因此,不会造成数据泛洪而导致网络瘫痪。
另外,当转发信息表中未存储数据名称或相应的下一跳节点时,由于可根据转发节点的邻居协助节点集合中每一邻居协助节点的跳转能力值,选取最高跳转能力的邻居协助节点作为下一跳节点以实现数据的转发,而不用通过广播兴趣包的方式来转发数据,从而不会造成数据泛洪而导致网络瘫痪。
最后,由于可在每个节点构建并维护视频偏好及移动相似性的信息,并将信息存储在内容偏好表中,每个节点根据内容偏好表上的信息决定转发的下一跳,从而消费者可以有效地转发兴趣包,以使快速高效地定位并地获取视频内容。
最后,本申请的方法仅为较佳的实施方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种数据转发方法,其特征在于,包括:
步骤1,对于车辆自组织网络中获取到兴趣包的任一节点,将所述任一节点作为转发节点,当所述转发节点的本地缓存中未存储所述兴趣包所请求的数据,并查询所述转发节点的内容偏好表中是否存储有所述数据的数据名称;
步骤2,当所述内容偏好表存储有所述数据名称时,从所述转发节点的邻居协助节点集合中,选取所述内容偏好表中所述数据名称对应的邻居协助节点,并作为所述转发节点的下一跳节点,由所述转发节点将所述兴趣包转发至所述下一跳节点。
2.根据权利要求1所述的方法,其特征在于,所述步骤1中查询所述转发节点的内容偏好表中是否存储有所述数据的数据名称之后,还包括:
当所述内容偏好表未存储所述数据名称时,查询所述转发节点的转发信息表中是否存储有所述数据名称和相应的下一跳节点;
当所述转发信息表中未存储所述数据名称或相应的下一跳节点时,从所述邻居协助节点集合中选取具有最高跳转能力的邻居协助节点,由所述转发节点将所述兴趣包转发至具有最高跳转能力的邻居协助节点。
3.根据权利要求1或2所述的方法,其特征在于,所述步骤2之前还包括:
基于所述转发节点的速度矢量信息及历史播放行为信息,确定所述转发节点的邻居协助节点集合。
4.根据权利要求3所述的方法,其特征在于,所述基于所述转发节点的速度矢量信息及历史播放行为信息,确定所述转发节点的邻居协助节点集合,包括:
基于所述转发节点的速度矢量信息,确定所述转发节点的协作节点集合;
基于所述转发节点的历史播放行为信息,对所述协作节点集合进行筛选,得到所述转发节点的邻居协助节点集合。
5.根据权利要求4所述的方法,其特征在于,所述基于所述转发节点的速度矢量信息,确定所述转发节点的协作节点集合,包括:
基于所述转发节点的速度矢量信息,计算所述转发节点与每一相邻节点之间的余弦相似性值;
选取余弦相似性值大于预设阈值的相邻节点作为所述转发节点的协作节点,得到所述转发节点的协作节点集合。
6.根据权利要求4所述的方法,其特征在于,所述基于所述转发节点的历史播放行为信息,对所述协作节点集合进行筛选,得到所述转发节点的邻居协助节点集合,包括:
基于所述转发节点的历史播放行为信息,构建所述转发节点的偏好程度向量;
根据所述转发节点的偏好程度向量及每一协作节点的偏好程度向量,对所述协作节点集合进行筛选,得到所述转发节点的邻居协助节点集合。
7.根据权利要求6所述的方法,其特征在于,所述基于所述转发节点的历史播放行为信息,构建所述转发节点的偏好程度向量,包括:
基于所述转发节点的历史播放行为信息,确定所述转发节点对每一视频类型的偏好程度值;
根据所述转发节点对每一视频类型的偏好程度值,得到所述转发节点的偏好程度向量。
8.根据权利要求6所述的方法,其特征在于,所述根据所述转发节点的偏好程度向量及每一协作节点的偏好程度向量,对所述协作节点集合进行筛选,得到所述转发节点的邻居协助节点集合,包括:
根据所述转发节点的偏好程度向量及每一协作节点的偏好程度向量,计算所述转发节点与每一协作节点之间的偏好程度相似值;
按照从大到小的顺序对每一协作节点对应的偏好程度相似值进行排列,选取前预设数量个协作节点作为所述转发节点的邻居协助节点集合。
9.根据权利要求1所述的方法,其特征在于,所述步骤1之前还包括:
对于所述车辆自组织网络中每一节点,基于兴趣交互包在每一节点之间的传递过程,构建每一节点的内容偏好表。
10.一种数据转发装置,其特征在于,包括:
第一查询模块,用于对于车辆自组织网络中获取到兴趣包的任一节点,将所述任一节点作为转发节点,当所述转发节点的本地缓存中未存储所述兴趣包所请求的数据,并查询所述转发节点的内容偏好表中是否存储有所述数据的数据名称;
第一转发模块,用于当所述内容偏好表存储有所述数据名称时,从所述转发节点的邻居协助节点集合中,选取所述内容偏好表中所述数据名称对应的邻居协助节点,并作为所述转发节点的下一跳节点,由所述转发节点将所述兴趣包转发至所述下一跳节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710347186.1A CN107332769B (zh) | 2017-05-16 | 2017-05-16 | 数据转发方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710347186.1A CN107332769B (zh) | 2017-05-16 | 2017-05-16 | 数据转发方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107332769A true CN107332769A (zh) | 2017-11-07 |
CN107332769B CN107332769B (zh) | 2019-12-24 |
Family
ID=60193928
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710347186.1A Active CN107332769B (zh) | 2017-05-16 | 2017-05-16 | 数据转发方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107332769B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110581802A (zh) * | 2019-08-27 | 2019-12-17 | 北京邮电大学 | 基于深度信念网络的全自主智能路由方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103841018A (zh) * | 2012-11-26 | 2014-06-04 | 华为技术有限公司 | 一种基于内容网多端口的转发方法及路由器 |
CN103945277A (zh) * | 2013-12-02 | 2014-07-23 | 三星电子(中国)研发中心 | 实现移动终端视频分享的方法、***和装置 |
WO2016015764A1 (en) * | 2014-07-30 | 2016-02-04 | Nec Europe Ltd. | Information dissemination in a multi-technology communication network |
CN105682046A (zh) * | 2016-03-10 | 2016-06-15 | 重庆邮电大学 | 车载命名数据网络中基于数据属性的兴趣包转发方法 |
CN103236971B (zh) * | 2013-05-13 | 2016-08-10 | 北京科技大学 | 一种内容互联网的路由转发方法 |
-
2017
- 2017-05-16 CN CN201710347186.1A patent/CN107332769B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103841018A (zh) * | 2012-11-26 | 2014-06-04 | 华为技术有限公司 | 一种基于内容网多端口的转发方法及路由器 |
CN103236971B (zh) * | 2013-05-13 | 2016-08-10 | 北京科技大学 | 一种内容互联网的路由转发方法 |
CN103945277A (zh) * | 2013-12-02 | 2014-07-23 | 三星电子(中国)研发中心 | 实现移动终端视频分享的方法、***和装置 |
WO2016015764A1 (en) * | 2014-07-30 | 2016-02-04 | Nec Europe Ltd. | Information dissemination in a multi-technology communication network |
CN105682046A (zh) * | 2016-03-10 | 2016-06-15 | 重庆邮电大学 | 车载命名数据网络中基于数据属性的兴趣包转发方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110581802A (zh) * | 2019-08-27 | 2019-12-17 | 北京邮电大学 | 基于深度信念网络的全自主智能路由方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN107332769B (zh) | 2019-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Meddeb et al. | AFIRM: Adaptive forwarding based link recovery for mobility support in NDN/IoT networks | |
CN102045252B (zh) | 用于内容连网的自适应多接口使用 | |
CN107295600B (zh) | 一种车载网络中的数据传输方法 | |
JP2004507159A (ja) | コンピュータ・ネットワークにおける意味的記述ラベルを有するデータ・パケットの高性能アドレス指定および経路指定の方法 | |
CN104661275B (zh) | 一种机会网络中数据传输方法 | |
Kumar et al. | SCalable object-tracking through unattended techniques (SCOUT) | |
Chau et al. | Inter-domain routing for mobile ad hoc networks | |
Bastos et al. | A diversity-based search-and-routing approach for named-data networking | |
Woodrow et al. | SPIN-IT: a data centric routing protocol for image retrieval in wireless networks | |
CN105262833A (zh) | 一种内容中心网络的跨层缓存方法及其节点 | |
Rehan et al. | ZGLS: a novel flat quorum-based and reliable location management protocol for VANETs | |
CN109379288A (zh) | 一种基于宽带载波路由动态维护方法和*** | |
Dimokas et al. | Cache consistency in wireless multimedia sensor networks | |
Al-Omaisi et al. | Towards vanet-ndn: A framework for an efficient data dissemination design scheme | |
CN107332769A (zh) | 数据转发方法及装置 | |
Hsiao et al. | Bristle: A mobile structured peer-to-peer architecture | |
CN115865844B (zh) | 基于sdn与ndn的虚实结合动态流量调度方法及装置 | |
Sabir et al. | Connected vehicles using NDN for intelligent transportation systems | |
Zhu et al. | Parking backbone: toward efficient overlay routing in VANETs | |
Gulati et al. | Software-defined content dissemination scheme for Internet of healthcare vehicles in COVID-like scenarios | |
Fourati et al. | ICN clustering-based approach for VANETs | |
Kniess et al. | Service discovery with time constraints in mobile ad hoc networks | |
Chandrashekar et al. | Service oriented internet | |
Wang et al. | Content-centric framework over the internet environments | |
Morris et al. | Context dissemination for dynamic urban-scale applications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
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 |