一种信息中心网络系统及视频传输方法与流程

文档序号:16901536发布日期:2019-02-19 18:02阅读:129来源:国知局
一种信息中心网络系统及视频传输方法与流程

本发明属于网络视频传输领域,更具体地,涉及一种信息中心网络系统及视频传输方法。



背景技术:

根据统计数据显示,2011至2017年间移动设备所产生的数据量增长了近25倍,其中视频流量的占比超过70%。此外,大量的网络视频设备(摄像头,监控设备等)所产生的海量视频数据对核心网络造成了巨大冲击,视频数据的广泛流行、用户(设备)数目的增加以及用户对于视频质量的要求提高都意味着核心网络需要更高的传输速率与之相匹配。然而,单纯增加链路带宽无法从根本上提升核心网络的数据承载能力。

信息中心网络(icn)作为一种基于信息内容实体(ndo)的新型网络架构,消除了ip地址的概念以及客户机—服务器的信息传输模式,网络中所有节点均具备存储与转发功能。信息中心网络利用节点本身的缓存功能,使得数据在任意网络节点可以进行复制、转发与缓存,从而实现网络数据的高效传输与快速获取。

动态自适应流媒体技术使得客户端可以根据网络带宽变化对所传输视频的清晰度进行实时调节,提升用户体验。信息中心网络与动态自适应流媒体技术都是基于用户驱动的应用,同时数据都是基于块传输,因此具有天生的良好匹配性。然而在信息中心网络中大规模应用动态自适应流媒体技术仍然存在很大的挑战。首先,系统需要同时应对内容流行度,用户请求以及链路状态的变化,同时进行数据推送、缓存更新以及编码速率的调节。所有这些功能都必须集成于网络中任意一个节点,因为信息中心网络已经移除了客户—服务器的信息传输架构。这增加了新网络架构设计的复杂度。其次,现有的路由和缓存协议与信息中心网络架构无法兼容。因此需要对信息推送以及缓存更新策略进行重新设计。



技术实现要素:

针对现有技术的缺陷和改进需求,本发明提供了及视频传输方法,其目的在于,在网络稳定域内最大化总的用户请求速率,以缓解海量数据对于核心网络的冲击,并减小网络流媒体的传输时延,提升用户体验。

为实现上述目的,按照本发明的第一方面,提供了一种信息中心网络系统,包括多个节点,每个节点都包括:控制层、传输层以及本地缓存;

本地缓存用于缓存多个视频块;

控制层包括:统计模块,以及与统计模块相连的控制模块;统计模块用于统计链路状态和请求信息;控制模块用于根据统计模块所统计的信息确定将实际兴趣请求包推送至下游节点的推送路径,以及确定更新当前节点本地缓存的更新策略;

传输层包括:视频块传输模块、请求包推送模块以及本地缓存更新模块;视频块传输模块用于在实际兴趣请求包所请求的视频块命中当前节点的本地缓存时,将所请求的视频块返回至上游节点,以响应实际兴趣请求包,或者在视频块被传输至当前节点时,将该视频块返回至上游节点;请求包推送模块用于按照先后顺序,根据推送路径,将未得到当前节点响应的实际兴趣请求包推送至下游节点;本地缓存更新模块用于以时隙为周期,定期根据更新策略更新当前节点的本地缓存;

其中,每一种实际兴趣请求包对应一种用户请求,且实际兴趣请求包封装有请求种类、所请求视频块的id以及视频清晰度,请求信息包括每一种到达当前节点的实际兴趣请求包的数量,上游节点为将实际兴趣请求包推送至当前节点的节点。

进一步地,统计模块统计请求信息,包括:

针对每一种用户请求分别创建一条虚拟兴趣请求包队列;

当实际兴趣请求包到达当前节点时,生成一个或多个对应的虚拟兴趣请求包,每一个虚拟兴趣请求包均保存有该实际兴趣请求包的请求种类、所请求视频块的id以及视频清晰度;将所生成的虚拟兴趣请求包加入对应的虚拟兴趣请求包队列;当实际兴趣请求包得到当前节点的响应或该实际兴趣请求包被推送至下游节点时,对应的虚拟兴趣请求包队列中减少一个或多个虚拟兴趣请求包;

对于任意一种实际兴趣请求包,获得对应虚拟兴趣请求包队列的长度以统计其数量;

其中,实际兴趣请求包达到当前节点时生成的虚拟兴趣请求包的数量,以及实际兴趣请求包得到当前节点的响应或该实际兴趣请求包被推送至下游节点时,对应的虚拟兴趣请求包队列中减少的虚拟兴趣请求包的数量,均可根据实际的应用需求进行调整,从而实现对虚拟兴趣请求包的生成速率和减少速率的控制,进而实现对用户请求速率的控制和优化,减小系统开销。

进一步地,控制模块根据统计模块所统计的信息确定用于将实际兴趣请求包推送至下游节点的推送路径,包括:

根据统计模块所统计的链路状态,获得与当前节点直接相连的节点;

对于任意一个与当前节点直接相连的节点b,分别计算节点b与当前节点之间的链路ab上每一种实际兴趣请求包的推送速率;

将推送速率最大的链路确定为将实际兴趣请求包推送至下游节点的推送路径;

在任意时隙t的开始时刻,任意请求n所对应的实际兴趣请求包在链路ab上的推送速率的计算公式如下:

其中,

为时隙t的开始时刻链路ab上与请求n相对应的实际兴趣请求包的推送速率,cab为链路ab的传输容量,z1为视频清晰度最低时实际兴趣请求包所请求视频块的大小,表示时隙t的开始时刻请求n所对应的实际兴趣请求包在链路ab上传输的权重差值,分别为当前节点和节点b上与请求n相对应的虚拟兴趣请求包的数量,ωn为请求n的归一化参数,n*(t)表示时隙t的开始时刻使得链路ab上传输权重差值最大的请求种类,为中间变量,表示定义为,()+表示取非负运算;

根据理论分析及实验结果,在任一时刻,位于推送队列最前端的实际兴趣请求包所对应的请求,极有可能就是请求数目积压较多的请求,因此,根据传输权重差值计算推送速率能够使得请求数目积压量较多的用户请求得到优先服务,确保用户请求的稳定,缓解拥塞,从而使网络中大多数用户的请求得到及时响应。

进一步地,请求包推送模块按照先后顺序,根据推送路径,将未得到当前节点响应的实际兴趣请求包推送至下游节点,包括:

维护一个推送队列,用于按先后顺序保存未得到当前节点响应且未推送至下游节点的实际兴趣请求包;

对于推送队列最前端的实际兴趣请求包,根据控制模块所确定的推送路径,将该实际兴趣请求包从推送队列中移除并推送至下游节点;重复此步骤,以持续推送推送队列中的实际兴趣请求包,与此同时,若到达当前节点的实际兴趣请求包未得到当前节点本地缓存的响应,则将该实际兴趣请求包加入推送队列。

进一步地,本发明所提供的信息中心网络系统还包括临时缓存,用于缓存当前时隙内到达当前节点的视频块;

并且控制模块根据统计模块所统计的信息确定更新当前节点本地缓存的更新策略,包括:

设置长度为t个时隙的滑动窗口,滑动窗口随着时间的推移而移动;

在任意时隙t,获得滑动窗口内与视频块相对应的虚拟兴趣请求包的数量作为对应视频块的流行度,并分别计算临时缓存和本地缓存中视频块的流行度和体积之比;将临时缓存和本地缓存中的视频块按照流行度和体积之比从大到小的顺序进行排序,并根据本地缓存的容量确定存入本地缓存的多个视频块,用于更新本地缓存,以保证本地缓存所缓存的多个视频块为流行度和体积之比最大的多个视频块。

进一步地,本地缓存更新模块以时隙为周期,定期根据更新策略更新该节点的本地缓存,包括:

在每一个时隙,将控制模块所确定的用于更新本地缓存的多个视频块存入本地缓存,以更新本地缓存,并在本地缓存更新完成后清空临时缓存。

按照本发明的第二方面,提供了一种基于本发明第一方面所提供的信息中心网络系统的视频传输方法,用于处理实际兴趣请求包,包括如下步骤:

(s1)在未响应该实际兴趣请求包的节点内,等待直至请求包推送模块开始推送该实际兴趣请求包,并转入步骤(s2);

(s2)控制模块根据统计模块所统计的信息确定将该实际兴趣请求包推送至下游节点的推送路径;

(s3)请求包推送模块根据推送路径,将该实际兴趣请求包推送至下游节点;

(s4)对于该实际兴趣请求包所到达的每一个节点,执行步骤(s1)~(s3),直至该实际兴趣请求包得到节点的响应;

(s5)响应节点的视频块传输模块沿推送路径将所请求的视频块反向传输至上游节点;

(s6)对于视频块所到达的每一个节点,其视频块传输模块沿推送路径将所请求的视频块反向传输至其上游节点,直至所请求的视频块到达发出请求的节点;

执行步骤(s1)~(s6)的同时,在每一个节点内,以时隙为周期,由控制模块定期根据统计模块所统计的信息确定更新本地缓存的更新策略,并由本地缓存更新模块根据更新策略更新该节点的本地缓存。

进一步地,多个实际兴趣请求包的处理可并行执行。

总体而言,通过本发明所构思的以上技术方案,能够取得以下有益效果:

(1)本发明所提供的信息中心网络系统,包括多个节点,每一个节点均包括控制层、传输层和本地缓存,控制层通过其内部的功能模块统计链路状态和请求信息,并根据所统计的信息确定推送实际兴趣请求包的推送路径和更新本地缓存的更新策略,传输层通过其内部的功能模块执行相应的推送策略和本地缓存更新策略,并传输视频块,由此实现了网络架构中控制与传输的分离,简化了网络架构设计的复杂性。

(2)本发明所提供的信息中心网络系统,其节点的控制层利用虚拟兴趣请求包统计过去以及当前的用户请求数目与所请求视频的清晰度,并基于这些统计信息确定实际兴趣请求包的推送路径和本地缓存更新策略,如此便可以通过控制虚拟兴趣请求包的生成速率和减少速率实现对用户请求速率的控制和优化,减小了系统开销。

(3)本发明所提供的信息中心网络系统,在节点的控制层根据统计模块所统计的信息确定用于将实际兴趣请求包推送至下游节点的推送路径时,会选择具有最大推送速率的链路作为推送路径,根据传输权重差值计算推送速率能够使得请求数目积压量较多的用户请求队列得到优先服务,确保用户请求队列的稳定,缓解拥塞,从而使网络中大多数用户的请求得到及时响应。

(4)本发明所提供的信息中心网络系统,对任意节点采用临时缓存加本地缓存的双缓存结构,并且在节点的控制层根据统计模块所统计的信息确定本地缓存的更新策略时,按照视频块的流行度和体积之比从达到的顺序选择存储至本地缓存的视频块,由于综合考虑了视频内容流行度与视频块的体积大小,避免由于高流行度、大体积的视频块占用过多缓存空间而造成部分用户请求长期得不到响应的情况发生,保证了网络不同用户请求被响应的公平性。

(5)本发明所提供的信息中心网络系统,在任意节点内,实际兴趣请求包的推送路径及本地缓存更新策略的确定均在该节点的控制层完成,节点之间无需进行通信交互,能够减小视频传输过程中的通信开销,节约网络资源,提升用户观看视频的体验度。

附图说明

图1为本发明实施例提供的信息中心网络系统示意图;

图2为本发明实施例提供的视频传输方法流程图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。

传统的网络流媒体技术都是基于ip架构,即视频文件对应的视频块都是存储在内容提供商所属的服务器或数据库中,用户向网络请求视频内容时需要明确获悉视频内容所在的服务器地址。因而诸如客户端pc与视频内容所在服务器之间物理距离长,网络拥塞等原因均会导致用户请求长时间得不到响应,出现视频播放顿卡,清晰度低等用户体验差的现象。

本发明提供了一种信息中心网络系统及视频传输方法,其整体思路是:每一个节点均包括控制层和传输层,控制层对链路状态和请求信息进行统计,并基于统计信息确定实际兴趣请求包的推送路径和本地缓存更新策略;传输层根据控制层确定的推送路径和本地缓存更新策略完成实际兴趣请求包的推送和节点本地缓存的更新,并在实际兴趣请求包得到响应时传输被请求的视频块。

本发明将动态自适应流媒体技术融合到信息中心网络架构中,实现了网络视频内容的高效分发和快速获取,减小了用户请求响应,提升了用户观看网络视频的体验。基于信息中心网络的架构,网络中所有节点均具有复制、存储和转发视频数据的功能,因此用户请求并非只有内容提供商所属的服务器才可以响应。凡是存有该视频块的网络节点均可以针对该用户请求进行响应,这大大缩短了用户请求的响应时间,因为所请求视频块很有可能被缓存于相邻或是有限传输跳数之内的网络节点中。

本发明所提供的信息中心网络系统,如图1所示,包括多个节点,每个节点均包括:控制层、传输层以及本地缓存;

本地缓存用于缓存多个视频块;

控制层包括:统计模块,以及与统计模块相连的控制模块;统计模块用于统计链路状态和请求信息;控制模块用于根据统计模块所统计的信息确定将实际兴趣请求包推送至下游节点的推送路径,以及确定更新当前节点本地缓存的更新策略;

传输层包括:视频块传输模块、请求包推送模块以及本地缓存更新模块;视频块传输模块用于在实际兴趣请求包所请求的视频块命中当前节点的本地缓存时,将所请求的视频块返回至上游节点,以响应实际兴趣请求包,或者在视频块被传输至当前节点时,将该视频块返回至上游节点;请求包推送模块用于按照先后顺序,根据推送路径,将未得到当前节点响应的实际兴趣请求包推送至下游节点;本地缓存更新模块用于以时隙为周期,定期根据更新策略更新当前节点的本地缓存;

其中,每一种实际兴趣请求包对应一种用户请求,且实际兴趣请求包封装有请求种类、所请求视频块的id以及视频清晰度,请求信息包括每一种到达当前节点的实际兴趣请求包的数量,上游节点为将实际兴趣请求包推送至当前节点的节点。

在一个可选的实施方式中,统计模块统计请求信息,包括:

针对每一种用户请求分别创建一条虚拟兴趣请求包队列;

当实际兴趣请求包到达当前节点时,生成一个或多个对应的虚拟兴趣请求包,每一个虚拟兴趣请求包均保存有该实际兴趣请求包的请求种类、所请求视频块的id以及视频清晰度;将所生成的虚拟兴趣请求包加入对应的虚拟兴趣请求包队列;当实际兴趣请求包得到当前节点的响应或该实际兴趣请求包被推送至下游节点时,对应的虚拟兴趣请求包队列中减少一个或多个虚拟兴趣请求包;随着用户请求的到来与变化,不同虚拟兴趣请求包的队列长度随着时间不停变化;

对于任意一种实际兴趣请求包,获得对应虚拟兴趣请求包队列的长度以统计其数量;

其中,实际兴趣请求包达到当前节点时生成的虚拟兴趣请求包的数量,以及实际兴趣请求包得到当前节点的响应或该实际兴趣请求包被推送至下游节点时,对应的虚拟兴趣请求包队列中减少的虚拟兴趣请求包的数量,均可根据实际的应用需求进行调整,从而实现对虚拟兴趣请求包的生成速率和减少速率的控制,进而实现对用户请求速率的控制和优化,减小系统开销;随着时间的推移,队列长度的变化可以反映出在某段时间内,用户比较喜欢看哪些视频内容,偏爱哪种清晰度,这些统计信息对于传输层的数据推送和本地缓存更新具有重要意义;在本实施例中,实际兴趣请求包达到当前节点时生成的虚拟兴趣请求包的数量,以及实际兴趣请求包得到当前节点的响应或该实际兴趣请求包被推送至下游节点时,对应的虚拟兴趣请求包队列中减少的虚拟兴趣请求包的数量均为1。

在一个可选的实施方式中,控制模块根据统计模块所统计的信息确定用于将实际兴趣请求包推送至下游节点的推送路径,包括:

根据统计模块所统计的链路状态,获得与当前节点直接相连的节点,记当前节点为节点a;

对于任意一个与当前节点直接相连的节点b,分别计算节点b与当前节点之间的链路ab上每一种实际兴趣请求包的推送速率;

将推送速率最大的链路确定为将实际兴趣请求包推送至下游节点的推送路径;由此能够保证实际兴趣请求包能够更快地被推送,从而更快地到达响应节点;值得注意的是随着时间的推移,不同链路上关于传输虚拟兴趣请求包的历史统计信息会发生变化,因此当前最适合推送实际兴趣请求包的链路也会发生相应的变化;

在任意时隙t的开始时刻,任意请求n所对应的实际兴趣请求包在链路ab上的推送速率的计算公式如下:

其中,

为时隙t的开始时刻链路ab上与请求n相对应的实际兴趣请求包的推送速率,cab为链路ab的传输容量,z1为视频清晰度最低时实际兴趣请求包所请求视频块的大小,表示t时刻请求n所对应的实际兴趣请求包在链路ab上传输的权重差值,分别为当前节点和节点b上与请求n相对应的虚拟兴趣请求包的数量,ωn为请求n的归一化参数,n*(t)表示t时刻使得链路ab上传输权重差值最大的请求种类,为中间变量,表示定义为,()+表示取非负运算;

根据理论分析及实验结果,在任一时刻,位于推送队列最前端的实际兴趣请求包所对应的请求,极有可能就是请求数目积压较多的请求,因此,根据传输权重差值计算推送速率能够使得请求数目积压量较多的用户请求得到优先服务,确保用户请求的稳定,缓解拥塞,从而使网络中大多数用户的请求得到及时响应。

在一个可选的实施方式中,请求包推送模块按照先后顺序,根据推送路径,将未得到当前节点响应的实际兴趣请求包推送至下游节点,包括:

维护一个推送队列,用于按先后顺序保存未得到当前节点响应且未推送至下游节点的实际兴趣请求包;

对于推送队列最前端的实际兴趣请求包,根据控制模块所确定的推送路径,将该实际兴趣请求包从推送队列中移除并推送至下游节点;重复此步骤,以持续推送推送队列中的实际兴趣请求包,与此同时,若到达当前节点的实际兴趣请求包未得到当前节点本地缓存的响应,则将该实际兴趣请求包加入推送队列。

在本实施例中,信息中心网络系统还包括临时缓存,用于缓存当前时隙内到达当前节点的视频块;

并且控制模块根据统计模块所统计的信息确定更新当前节点本地缓存的更新策略,包括:

设置长度为t个时隙的滑动窗口,滑动窗口随着时间的推移而移动;

在任意时隙t,获得滑动窗口内与视频块相对应的虚拟兴趣请求包的数量作为对应视频块的流行度,记为通过系统可以获知过去一段时间内,哪些视频内容比较流行,受用户喜爱;视频内容越流行,则对应的的值就越高;分别计算临时缓存和本地缓存中视频块的流行度和体积之比;将临时缓存和本地缓存中的视频块按照流行度和体积之比从大到小的顺序进行排序,并根据本地缓存的容量确定存入本地缓存的多个视频块,用于更新本地缓存,以保证本地缓存所缓存的多个视频块为流行度和体积之比最大的多个视频块;由于流行度越高的视频块被请求的概率越大也越频繁,按照流行度和体积之比从高到低的顺序对视频块进行缓存,能够保证流行度较高的视频被块较多的节点缓存,因此能够减少这些视频块的请求节点和响应节点之间的传输跳数,从而缩短用户请求的响应时间,提高用户观看视频的体验;同时,综合考虑了视频内容流行度与视频块的体积大小,即采用视频流行度与视频块体积的比值来确定视频块被存储的优先级,能够避免由于高流行度、大体积的视频块占用过多缓存空间而造成部分用户请求长期得不到响应的情况发生,保证了网络不同用户请求被响应的公平性。

在一个可选的实施方式中,本地缓存更新模块以时隙为周期,定期根据更新策略更新该节点的本地缓存,包括:

在每一个时隙,将控制模块所确定的用于更新本地缓存的多个视频块存入本地缓存,以更新本地缓存,并在本地缓存更新完成后清空临时缓存。

本发明还提供了一种基于图1所示的信息中心网络系统的视频传输方法,用于处理实际兴趣请求包,如图2所示,包括如下步骤:

(s1)在未响应该实际兴趣请求包的节点内,等待直至请求包推送模块开始推送该实际兴趣请求包,并转入步骤(s2);

(s2)控制模块根据统计模块所统计的信息确定将该实际兴趣请求包推送至下游节点的推送路径;

(s3)请求包推送模块根据推送路径,将该实际兴趣请求包推送至下游节点;

(s4)对于该实际兴趣请求包所到达的每一个节点,执行步骤(s1)~(s3),直至该实际兴趣请求包得到节点的响应;

(s5)响应节点的视频块传输模块沿推送路径将所请求的视频块反向传输至上游节点;

(s6)对于视频块所到达的每一个节点,其视频块传输模块沿推送路径将所请求的视频块反向传输至其上游节点,直至所请求的视频块到达发出请求的节点;

执行步骤(s1)~(s6)的同时,在每一个节点内,以时隙为周期,由控制模块定期根据统计模块所统计的信息确定更新本地缓存的更新策略,并由本地缓存更新模块根据更新策略更新该节点的本地缓存。

在一个可选的实施方式中,多个实际兴趣请求包的处理可并行执行。

在上述视频传输方法中,采用分布式的动态的实际兴趣请求包推送和本地缓存更新相互协同的方法处理实际兴趣请求包,可以保证在整个网络的稳定域内最大化用户的请求速率。

本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1