CN110536179B - 一种内容分发***和方法 - Google Patents
一种内容分发***和方法 Download PDFInfo
- Publication number
- CN110536179B CN110536179B CN201910962775.XA CN201910962775A CN110536179B CN 110536179 B CN110536179 B CN 110536179B CN 201910962775 A CN201910962775 A CN 201910962775A CN 110536179 B CN110536179 B CN 110536179B
- Authority
- CN
- China
- Prior art keywords
- file
- server
- requested
- video
- edge server
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 71
- 230000005540 biological transmission Effects 0.000 claims abstract description 75
- 238000006243 chemical reaction Methods 0.000 claims description 27
- 230000008569 process Effects 0.000 claims description 21
- 230000004044 response Effects 0.000 claims description 14
- 239000003795 chemical substances by application Substances 0.000 claims description 13
- 239000012634 fragment Substances 0.000 claims description 10
- 238000012545 processing Methods 0.000 claims description 10
- 238000011084 recovery Methods 0.000 claims description 10
- 238000010801 machine learning Methods 0.000 claims description 9
- 239000000872 buffer Substances 0.000 claims description 5
- 230000001932 seasonal effect Effects 0.000 claims description 5
- 230000003442 weekly effect Effects 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 19
- 238000005516 engineering process Methods 0.000 description 15
- 230000003044 adaptive effect Effects 0.000 description 8
- 230000003139 buffering effect Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000002354 daily effect Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000004576 sand Substances 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
- H04N21/23106—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/611—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/222—Secondary servers, e.g. proxy server, cable television Head-end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
- H04N21/23103—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion using load balancing strategies, e.g. by placing or distributing content on different disks, different memories or different servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/232—Content retrieval operation locally within server, e.g. reading video streams from disk arrays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/239—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
- H04N21/2393—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
- H04N21/2402—Monitoring of the downstream path of the transmission network, e.g. bandwidth available
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
- H04N21/2408—Monitoring of the upstream path of the transmission network, e.g. client requests
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
- H04N21/2662—Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/27—Server based end-user applications
- H04N21/274—Storing end-user multimedia data in response to end-user request, e.g. network recorder
- H04N21/2747—Remote storage of video programs received via the downstream path, e.g. from the server
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network 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/61—Network physical structure; Signal processing
- H04N21/6106—Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
- H04N21/6131—Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via a mobile phone network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network 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/63—Control 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/64—Addressing
- H04N21/6405—Multicasting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network 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/63—Control 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/64—Addressing
- H04N21/6408—Unicasting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请公开了一种内容分发***,包括:内容服务器、中心服务器、边缘服务器和用户终端,所述内容服务器用于存储可供用户终端访问的视频文件;所述中心服务器用于根据各个用户终端请求视频文件的记录统计得到视频文件的热度排名信息,并在网络链路传输的波谷时段,根据视频文件的热度排名信息从内容服务器获取热度最高的若干视频文件的部分内容发送给边缘服务器预先缓存;所述边缘服务器用于将用户终端所请求的视频文件发送给所述用户终端。本申请还公开了一种对应的内容分发方法。应用本申请公开的技术方案,能够减少视频数据传输过程中的码率,减轻服务器处数据链路的负载。
Description
技术领域
本申请涉及数据通信技术领域,特别涉及一种内容分发***和方法。
背景技术
近些年来,全球互联网流量急剧增长。视频是这一增长的主要贡献者,并将继续主导网络流量。这一趋势是智能手机、平板电脑、游戏设备和智能电视等设备用于访问视频内容的普及的结果。根据Cisco公司的预测,未来的网络流量将呈指数增长态势,到2021年全球上网用户将达到46亿,网络接入设备将达到271亿,视频数据的访问占用比例将提升到82%,每月产生的数据量将突破190EB(1EB等于230GB)。
大量智能终端设备的联网,给骨干网络带来了前所未有的压力,特别是高清视频、比赛直播、AR/VR等应用会消耗大量计算、网络和存储资源,尤其是在海量用户过于集中、爆发式的访问服务的时段,将对服务器、通信网络和数据传输***产生巨大的压力。
当前多数OTT(Over The Top)业务的视频传输方式一般采用单播传输(Unicastdelivery)。单播传输是指:在客户端与媒体服务器之间建立一个单独的数据通道,从一台服务器送出的每个数据包只能传送给一个客户端。每个用户必须分别向媒体服务器发送单独的查询,而媒体服务器必须向每个用户单独发送其所申请的数据包。
单播传输通常会占用较大的网络带宽。例如,如果有一百万个观众并发使用运营商的网络以2Mbps的速度观看同一个视频源,则服务器必须将内容流式传输到每个用户,使网络负载处于2Tbps边缘。这种巨大冗余不仅造成了服务器沉重的负担,响应需要很长时间,甚至可能导致视频停止播放;而且,也迫使内容提供商不得不购买更好的硬件和更大的带宽来保证一定的服务质量,使得运营和维护成本急剧上升。
而视频请求表现出很高的时间变化特征,即在网络链路访问高峰时段会产生网络拥塞,而网络链路访问低谷时段网络利用率则不足。针对这一现象的常见做法是在网络上对请求内容进行预先缓存(Proactive Caching)。例如,在网络链路访问的低谷时段用户终端预先存储该用户经常访问的内容至本地缓存,这样用户之后的数据请求可以从本地缓存中得到响应,从而减少高峰时段网络链路的负载。
为了缓解视频传输的带宽压力,目前常用的方法是在终端用户附近部署缓存服务器,构成视频缓存***。本申请的发明人发现:传统的视频缓存***通常只按照单个用户的请求进行数据发送,这种数据传输方式单一,没有利用网络缓存和网络编码可能组合的优点,这导致每个传输的对象或文件的代价并不理想,因此,仍存在进一步优化的空间。
发明内容
本申请提供了一种内容分发***和方法,以减少视频数据传输过程中的码率,减轻服务器处数据链路的负载,优化用户获取视频资源的时延,提升用户终端的服务质量和体验质量。
本申请公开了一种内容分发***,包括:内容服务器、中心服务器、边缘服务器和用户终端,其中:
所述内容服务器,用于存储可供用户终端访问的视频文件,所述视频文件按照不同的码率、分辨率、时间划分为不同的分片;
所述中心服务器,用于根据各个用户终端请求视频文件的记录统计得到视频文件的热度排名信息,并在网络链路传输的波谷时段,根据所述视频文件的热度排名信息从内容服务器获取热度最高的若干视频文件的部分内容发送给边缘服务器;
所述边缘服务器是所述用户终端的文件缓存服务器和移动边缘计算服务器,用于缓存所述热度最高的若干视频文件的部分内容,并将用户终端所请求的视频文件发送给所述用户终端;
所述用户终端连接所述边缘服务器,向边缘服务器进行视频文件请求并接收边缘服务器发送的视频文件。
较佳的,所述中心服务器还用于在用户终端请求视频文件时,根据用户终端所请求视频文件的不同,通过组播ABR或者编码缓存的方式将用户终端所请求的文件发送给边缘服务器。
较佳的,所述中心服务器具体包括控制单元和转换单元,其中:
所述控制单元,用于根据各个用户终端请求视频文件的记录统计得到视频文件的热度排名信息,并在网络链路传输的波谷时段,根据所述视频文件的热度排名信息从所述内容服务器获取热度最高的若干视频文件的部分内容发送给所述边缘服务器;并用于对不同用户请求的文件进行记录,当多个用户终端发送文件请求时,根据文件请求记录,判断所述多个用户终端请求的是同一文件还是不同的文件,并将判断结果通知转换单元;
所述转换单元,用于在用户终端请求视频文件时,根据用户终端所请求视频文件的不同,通过组播ABR或者编码缓存的方式将用户终端所请求的文件发送给所述边缘服务器。
较佳的,所述控制单元中具体包括:分析器模块、机器学习模块和调度模块,其中:
所述分析器模块,用于对边缘服务器上报的辅助信息进行解析,将解析得到的数据交由机器学习模块进行处理;
所述机器学习模块,用于根据输入的数据统计得到用户终端所请求视频文件的热度排名信息;
所述调度模块,用于根据所述视频文件的热度排名信息,优先随机选取热度排名靠前的视频文件的部分内容,在网络链路访问的波谷时段发送给边缘服务器进行预先缓存;其中,所述进行预先缓存的时间间隔根据不同的网络和视频文件的访问量进行设置,包括每天、每周或者其他设定间隔。
较佳的,所述转换单元具体用于:
当多个用户终端请求相同的视频文件时,从内容服务器获取所述相同的视频文件,并采用组播ABR方式将所述相同的视频文件发送给所述多个用户终端所对应的边缘服务器;
当多个用户终端请求的视频文件不同时,如果所述多个用户终端所对应的边缘服务器中预先存储了所请求视频文件的部分内容,且所请求视频文件的其它部分内容存储在除本边缘服务器之外的其它边缘服务器的缓存中,则从内容服务器获取所述多个用户终端请求的视频文件,并对所述多个用户终端请求的视频文件进行编码后得到编码文件,将所述编码文件发送给所述多个用户终端所对应的边缘服务器。
较佳的,所述边缘服务器具体包括:代理单元、缓存单元和数据恢复单元,其中:
所述代理单元收集并向中心服务器报告辅助信息,包括:视频文件访问量、视频文件ID、视频文件名称、视频文件分类、视频文件访问时长、终端用户喜好、带宽情况、代理单元ID、当前缓存状态、用户终端位置、季节频道;
所述缓存单元用于将获取到的视频文件进行缓存;
所述数据恢复单元,用于在接收到编码文件时,根据所述缓存单元缓存的视频文件对所述编码文件进行解码,得到原始文件。
较佳的,所述转换单元,用于对所述多个用户终端请求的视频文件进行按位异或的操作得到编码文件。
较佳的,所述中心服务器发送给所述边缘服务器的文件的包头信息中包含以下信息的至少一种:
包头长度:表示包头的字节数;
文件标识ID:表示传输的有效载荷中的文件块所在的具体文件的编号;
文件块ID:表示传输的有效载荷中的文件块在原始文件中的编号;
文件块长度:表示传输的每个文件块的长度。
本申请还公开了一种内容分发方法,包括:
中心服务器根据各个用户终端请求视频文件的记录统计得到视频文件的热度排名信息,并在网络链路传输的波谷时段,根据所述视频文件的热度排名信息将热度最高的若干视频文件的部分内容预先缓存至用户终端所连接的边缘服务器;
在用户终端请求视频文件时,中心服务器根据用户终端所请求视频文件的不同,通过组播ABR或者编码缓存的方式将用户终端所请求的文件发送给边缘服务器。
较佳的,如果多个用户终端请求相同的视频文件,则采用组播ABR方式将所述相同的视频文件发送给所述多个用户终端所对应的边缘服务器;
如果多个用户终端请求的视频文件不同,如果所述多个用户终端所对应的边缘服务器中预先存储了所请求视频文件的部分内容,且所请求视频文件的其它部分内容存储在除本边缘服务器之外的其它边缘服务器的缓存中,则采用编码缓存的方式将所述多个用户终端请求的视频文件发送给对应的边缘服务器。
较佳的,所述采用组播ABR方式将所述相同的视频文件发送给所述多个用户终端所对应的边缘服务器具体包括:
Step 1.多个用户终端根据当前网络带宽状况,计算请求文件的码率、分辨率,发送视频文件请求消息,分别向多个边缘服务器请求同一个视频文件;
Step 2.多个边缘服务器分别向中心服务器发送文件请求消息;
Step 3.中心服务器向内容服务器发送文件请求消息;
Step 4.内容服务器用单播ABR的方式将请求的文件发送至中心服务器;
Step 5.中心服务器将文件通过共享链路以组播ABR的方式发送给边缘服务器;
Step 6.边缘服务器将文件进行缓存;
Step 7.边缘服务器将请求的文件发送给用户终端;
Step 8.用户终端接收边缘服务器发送的文件。
较佳的,所述采用编码缓存的方式将所述多个用户终端请求的视频文件发送给对应的边缘服务器具体包括:
Step 1.用户终端根据当前网络带宽状况,计算请求文件的码率、分辨率,发送文件请求消息;
Step 2.用户终端对应的边缘服务器处理文件请求消息,边缘服务器首先查找本地缓存中是否有请求的文件;如果有,则转到Step 14;否则,转到Step 3;
Step 3.边缘服务器向附近的其它边缘服务器广播文件请求消息,并启动消息应答定时器;
Step 4.其它边缘服务器查询本服务器缓存中是否有请求的文件,如果有请求的文件,则转到Step 5;否则,转到Step 8;
Step 5.其它边缘服务器将请求的文件发送给发送请求消息的边缘服务器;
Step 6.发送请求消息的边缘服务器判断消息应答定时器是否超时,如果超时,转到Step 8;否则,转到Step 7;
Step 7.发送请求消息的边缘服务器接收文件并进行缓存,转到Step 14;
Step 8.边缘服务器向中心服务器发送文件请求消息;
Step 9.中心服务器向内容服务器发送文件请求消息;
Step 10.内容服务器用单播的方式将请求的文件发送至中心服务器;
Step 11.中心服务器根据接收到的内容服务器发送的文件,以及边缘服务器本地缓存预先存储的部分文件,对需要传输的文件进行编码操作得到编码文件,并将编码文件通过共享链路以组播的方式发送给边缘服务器;
Step 12.边缘服务器根据本地预先缓存的文件的部分内容,以及从中心服务器得到的编码文件进行解码,进而得到请求的文件内容;
Step 13.边缘服务器将得到的请求的文件进行缓存;
Step 14.边缘服务器将请求的文件发送给用户终端;
Step 15.用户终端接收边缘服务器发送的文件。
较佳的,所述中心服务器发送给所述边缘服务器的文件的包头信息中包含以下信息的至少一种:
包头长度:表示包头的字节数;
文件标识ID:表示传输的有效载荷中的文件块所在的具体文件的编号;
文件块ID:表示传输的有效载荷中的文件块在原始文件中的编号;
文件块长度:表示传输的每个文件块的长度。
由上述技术方案可见,本申请提供的内容分发***和方法,采用将编码缓存和组播自适应码流相结合的方式,有效减少了数据传输过程中的数据流量,减轻了服务器处数据链路的负载,降低了网络传输的网络延迟,提升了整个网络的性能,从而提高了用户的服务质量和用户的体验质量。
附图说明
图1是本发明基于编码缓存和组播自适应码流的内容分发***的框架图;
图2是本发明缓存阶段的处理流程示意图;
图3是本发明实施例一中心服务器控制单元的实现示意图;
图4是本发明实施例一网络数据访问量和时间变化关系图;
图5是本发明实施例一中的编码缓存方法示意图;
图6是现有非缓存编码方法示意图;
图7是本发明实施例二中基于编码缓存和组播自适应码流的内容分发方法的流程图;
图8是本发明实施例二中***以组播ABR方式发送用户终端所请求文件的示意图;
图9是本发明实施例三中基于编码缓存和组播自适应码流的内容分发方法的流程图;
图10是本发明实施例三中***以编码缓存方式发送用户终端所请求文件的示意图;
图11是本申请实施例四中***中其他边缘服务器发送用户终端所请求文件的示意图;
图12是本申请实施例五中包头信息中所包含的字段示意图;
图13是本申请实施例五中的内容分发***示意图。
具体实施方式
为使本申请的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本申请作进一步详细说明。
为解决现有技术所存在的问题,本发明提供了一种内容分发***,该***基于编码缓存和组播自适应码流技术,该***的组成结构如图1所示,主要包括:内容服务器、中心服务器、边缘服务器和用户终端,其中:
内容服务器:内容服务器上预先存储可供用户终端访问的多个视频文件,存储的文件按照视频不同的码率、分辨率、时间等参数划分为不同的分片,文件大小不受限制,可以相同,也可以不同;内容服务器将用户终端请求的文件以单播ABR的方式发送给中心服务器。
中心服务器:中心服务器是数据处理中心,在***中有一个或者多个。中心服务器负责内容服务器和边缘服务器之间的文件传输和命令交互,用于根据各个用户终端请求视频文件的记录统计得到视频文件的热度排名信息,并在网络链路传输的波谷时段,根据所述视频文件的热度排名信息从内容服务器获取热度最高的若干视频文件的部分内容发送给边缘服务器。具体而言,中心服务器包含控制单元和转换单元,其中:
(1)控制单元根据各个用户终端请求视频文件的记录进行统计,从而生成视频文件的热度排名信息。在网络链路传输的波谷时段,控制单元视频根据文件的热度排名信息随机选择若干视频文件的部分内容发送给边缘服务器进行预先缓存。同时,控制单元对不同用户请求的文件进行记录,当多个用户终端发送文件请求时,控制单元根据之前的文件请求记录,判断多个用户终端请求的是同一文件还是不同的文件,并将判断结果通知转换单元。
(2)转换单元在多个用户终端请求文件时负责确定文件的分发方式,根据用户终端请求文件的不同,通过组播ABR或者编码缓存的方式来传输用户终端请求的文件。具体的说,如果多个用户终端请求相同的文件,则转换单元采用组播ABR方式进行文件传输,以减少传输码率,提高传输效率;如果用户终端请求的视频文件热度下降,多个用户终端各自请求不同的文件,则转换单元将组播ABR无缝转换为编码缓存方式,同时根据内容服务器发送的文件以及边缘服务器本地缓存预存储的文件,将多个用户终端请求的不同文件进行编码,从而充分利用缓存编码技术,来减少传输码率,提高传输效率。转换单元将编码后的文件通过共享链路以组播ABR的方式发送给边缘服务器。
边缘服务器:边缘服务器是用户终端的文件缓存服务器和移动边缘计算服务器,用于缓存所述热度最高的若干视频文件的部分内容。边缘服务器中具体包括代理单元、恢复单元和缓存单元,其中:
(1)代理单元收集并向中心服务器中的控制单元报告辅助信息,辅助信息包括但不限于文件访问量、文件ID、文件名称、文件分类、文件访问时长、终端用户喜好、带宽情况、代理单元ID、当前缓存状态、用户终端位置、季节频道等信息,中心服务器的控制单元根据这些信息来进行文件热度排名的统计以及缓存编码等操作;
(2)恢复单元根据接收到的编码后的文件和自身缓存中已有的文件,对编码后的文件进行解码进而得到请求的文件;
(3)缓存单元负责用户终端请求文件的缓存,并将文件发送给用户终端,比如电视机顶盒、个人计算机、平板电脑、手机或者其它终端设备。
用户终端:用户终端连接边缘服务器,使用标准ABR协议进行文件请求并接收边缘服务器发送的文件。
基于上述内容分发***,本发明还提供一种内容分发方法,该方法基于编码缓存技术,具体包括两个阶段:缓存阶段和传输阶段。
(1)缓存阶段
在网络链路访问的波谷时段,根据内容服务器存放文件的热度排名信息,中心服务器从内容服务器随机选择多个文件的部分内容,预先缓存这部分文件的内容至边缘服务器的本地缓存。
优选的,由于在网络链路访问的波谷时段用户请求量低,数据链路空闲,因此被用来进行缓存文件的传输,所述的边缘服务器预先缓存内容服务器中文件的部分内容。所述的边缘服务器比作为数据源的内容服务器更加靠近用户终端,因此可以更快速地响应和服务用户终端的文件请求。
优选的,所述边缘服务器预存储的数据量受到其物理缓存容量的限制,根据内容服务器存储文件的访问热度排名信息,所述边缘服务器优先缓存热度高的文件。更进一步的,随机缓存多个文件的部分内容可以提高传输阶段进行编码组播传输的机会,从而减少传输文件过程中的码率。
(2)传输阶段
传输阶段根据用户终端请求文件的不同具体分为两种方法:
1)在传输阶段,如果不同的用户终端各自请求相同的文件,则***采用组播ABR方式进行用户终端请求文件的传输,具体步骤如下:
Step 1.多个用户终端根据当前网络带宽状况,计算请求文件的码率、分辨率等参数,发送视频文件请求消息,分别向多个边缘服务器请求同一个视频文件;
Step 2.多个边缘服务器分别向中心服务器发送文件请求消息;
Step 3.中心服务器向内容服务器发送文件请求消息;
Step 4.内容服务器用单播ABR的方式将请求的文件发送至中心服务器;
Step 5.中心服务器将文件通过共享链路以组播ABR的方式发送给边缘服务器;
Step 6.边缘服务器将文件进行缓存;
Step 7.边缘服务器将请求的文件发送给用户终端;
Step 8.用户终端接收边缘服务器发送的文件。
优选的,在第4步中,由于所有用户终端请求相同的文件,因此适合组播ABR传输方式。所述内容服务器只需要向中心服务器发送一次用户终端请求的文件,所述中心服务器以组播的方式向边缘服务器发送文件,从而减少了文件传输的码率。
2)在传输阶段,如果不同的用户终端各自请求不同的文件,则***将多个用户终端请求的不同文件利用编码缓存进行传输,具体步骤如下:
Step 1.用户终端根据当前网络带宽状况,计算请求文件的码率、分辨率等参数,发送文件请求消息;
Step 2.用户终端对应的边缘服务器处理文件请求消息,边缘服务器首先查找本地缓存中是否有请求的文件;如果有,则转步骤14;否则,转步骤3;
Step 3.边缘服务器向附近的其它边缘服务器广播文件请求消息,并启动消息应答定时器;
Step 4.其它边缘服务器查询本服务器缓存中是否有请求的文件,如果有请求的文件,则转步骤5;否则,转步骤8;
Step 5.其它边缘服务器将请求的文件发送给发送请求消息的边缘服务器;
Step 6.发送请求的边缘服务器判断消息应答定时器是否超时,如果超时,转步骤8;否则,转步骤7;
Step 7.发送请求消息的边缘服务器接收文件并进行缓存,转步骤14;
Step 8.边缘服务器向中心服务器发送文件请求消息;
Step 9.中心服务器向内容服务器发送文件请求消息;
Step 10.内容服务器用单播的方式将请求的文件发送至中心服务器;
Step 11.中心服务器根据接收到的内容服务器发送的文件,以及边缘服务器本地缓存预先存储的部分文件,对需要传输的文件进行编码操作,并将编码后的文件通过共享链路以组播的方式发送给边缘服务器;
Step 12.边缘服务器根据本地预先缓存文件部分内容,以及通过从中心服务器得到的编码后的文件进行解码,进而得到请求的文件内容;
Step 13.边缘服务器将文件进行缓存;
Step 14.边缘服务器将请求的文件发送给用户终端;
Step 15.用户终端接收边缘服务器发送的文件。
优选的,第3步中,为减少网络传输延迟,所述的边缘服务器在处理用户终端的文件请求时,在向内容服务器发送文件请求消息之前,优先的向附近的其他边缘服务器广播请求消息。相比内容服务器,所述的其他边缘服务器可能更加靠近发送广播请求的边缘服务器,因此这种情况下从所述的其他边缘服务器获取数据请求的延迟更小。更进一步的,所述发送广播请求的边缘服务器在发送广播请求消息时,启动消息应答定时器,所述定时器的时间间隔根据传输网络的延迟设定,所述发送广播请求的边缘服务器丢弃超时的广播请求答复消息。
优选的,第11步中,中心服务器发送编码后的文件内容至边缘服务器,其中具体编码的方法为:边缘服务器中预先存储了待请求文件的部分内容,边缘服务器待请求文件的其它部分内容存储在除本边缘服务器之外的其它边缘服务器的缓存中,边缘服务器待请求文件的这部分内容即待编码的内容。将所有边缘服务器请求的待编码文件进行按位异或的编码操作,这一过程称为编码过程。
优选的,第11步中,所述的中心服务器将编码后的文件以组播的形式发送给请求文件的边缘服务器。
优选的,第12步中,所述的边缘服务器可以从本地缓存处直接获取预存储的请求文件的部分内容,同时接收到中心服务器传输的编码后的文件,结合本地缓存预存取存储的其他文件的部分内容进行解码,从而得到本地缓存未预存取的请求文件的内容。
为便于对本发明技术方案的理解,下面将结合附图以具体实施例为例做进一步的解释说明,以下实施例并不构成对本发明保护范围的限定。
实施例一
图1为本发明实施例一提供的一种基于编码缓存和组播自适应码流的内容分发***的组成结构示意图,该***包括:内容服务器、中心服务器、边缘服务器和用户终端,下面对各个组成部分分别予以详细说明:
(1)内容服务器:内容服务器上存储可供用户终端访问的多个视频文件,这些视频文件的大小可以相同,也可以不同。
本实施例中,内容服务器是一个MPEG-DASH服务器。
基于HTTP协议的自适应传输流技术(DASH:Dynamic Adaptive Streaming overHTTP)是在2011年底由MPEG和ISO共同制定的标准,是互联网视频中流行的可变码率流媒体技术(ABR,Adaptive Bit Rate streaming)的一种。ABR是视频流在HTTP上传输的一种方法,首先将源内容编码成多个码率的流;每个不同码率的流都切分成很小的多秒片段;客户端播放器能通过每个流的清单文件识别不同码率的有效流。本实施例中,DASH使用HTTP作为通讯协议,通过实时检测用户的带宽和CPU能力来相应地调整视频流的质量。DASH技术的优点为:缓冲很少、启动快、能为高端和低端连接提供优质体验,可使高品质影音内容通过网络传送到联网电视、机顶盒及移动终端设备。
在本实施例中,内容服务器预先将多个视频文件切分成多个时间长度相等的分片(Segments,也可称为“切片”)进行存储,每个分片被编码为不同的码率和分辨率,每个分片文件的大小不固定。
(2)中心服务器:中心服务器是***中的一个数据处理中心,可以有一个或者多个,负责边缘服务器和内容服务器之间的数据传输和命令交互。中心服务器中包含控制单元和转换单元,其中:
控制单元用于完成对文件的缓存。目前常用的主动缓存方法包括:
1.假设内容的流行度或者用户请求偏好已知,则主动在流量低谷期在节点对高流行度内容进行缓存。
2.运营商在业务高峰期通过流量的价格高低来激励缓存,使用博弈论中的斯坦克伯格模型,不考虑用户终端网络,而是强调运营商和内容提供商之间的价格以及小小区中的缓存容量限制。
3.通过对缓存进行分组来避免同一个分组内相似度较高的用户缓存重复的文件,同时对用户体验指标进行优化等方法。
本实施例采取上述第1种主动缓存方法进行缓存,该方法的主要思想是:预先放置用户以较高概率访问的视频的文件块,这些文件块是该用户在该边缘服务器内最可能下载的视频文件块。
根据上述第1种方法,控制单元基于不同用户请求视频文件的记录,统计得到视频文件的热度排名信息,然后根据视频文件的热度排名信息优先随机选取热度排名靠前的视频文件的部分内容,在网络链路访问的波谷时段发送给边缘服务器进行预先缓存。
本实施例采用缓存编码的方式来减轻服务器处数据链路的负载,处理过程大致可以分为缓存和传输这两个阶段。其中,控制单元主要用于缓存阶段,本实施例缓存阶段的处理流程如图2所示。大量研究结论表明:视频文件内容的访问热度分布符合Zipf定律,约20%的视频文件内容被超过80%的用户请求访问,因此,在本实施例中,控制单元首先根据边缘服务器代理单元发送的辅助信息,分析网络中用户每天对视频文件的请求,对视频文件的热度从高到低进行排名得到视频文件的热度排名信息;然后,再根据视频文件的热度排名信息优先随机选取热度排名靠前的视频文件的部分内容,在网络链路访问的波谷时段发送给边缘服务器进行预先缓存。
参照图3所示的本实施例中控制单元的实现示意图,所述的辅助信息包括但不限于:视频文件访问量、视频文件ID、视频文件名称、视频文件分类、视频文件访问时长、终端用户喜好、带宽情况、代理单元ID、当前缓存状态、用户终端位置、季节频道(如世界杯、***)等信息。
控制单元具体包括:分析器模块、机器学习模块和调度模块,其中:
分析器模块对边缘服务器代理单元上报的辅助信息进行解析,将解析得到的数据交由机器学习模块进行处理;
机器学习模块根据输入的数据来进行视频文件的热度信息统计和生成;
调度模块根据视频文件热度信息,优先随机选取热度排名靠前的视频文件的部分内容,在网络链路访问的波谷时段发送给边缘服务器进行预先缓存。缓存的时间间隔根据不同的网络和视频文件的访问量可以选择每天、每周或者其他间隔。
参照图4所示的本实施例中网络数据访问量和时间变化关系图,为了充分利用网络带宽,在本实施例中,中心服务器选择每天凌晨6:00的网络访问波谷时段,随机选取热度排名靠前的视频文件的部分内容,发送给边缘服务器进行预先缓存。由于在网络链路访问的波谷时段用户请求量低,数据链路空闲,因此被本实施例用来进行缓存文件的传输,这能够有效地利用闲置的网络带宽。
转换单元在用户终端请求视频文件时负责确定对应的分发方式,具体的:根据用户终端请求文件的不同,通过组播ABR,或者编码缓存的方式来传输用户终端请求的视频文件。
组播自适应码率流(M-ABR:Multicast Adaptive Bit Rate streaming)是一种基于组播的ABR技术,相比单播ABR,组播ABR在流媒体传输过程中能够更加节约带宽。编码缓存(Coded Caching)是一种内容缓存和分发技术,根据用户当前请求的数据和客户端设备已经缓存的数据,将多个用户所请求的数据进行编码后得到一个数据流进行传输,从而减少网络传输量。具体的说,根据用户所请求视频文件的不同情况,转换单元可以采用如下两种方式进行相应视频文件的分发:
方法一:如果多个用户终端在某个时间节点请求相同的视频文件,则转换单元在对应的时段采用组播ABR方式发送所述多个用户终端所请求的视频文件,这种情形下可以立即减少传输码率,提高传输效率。例如,在某一时刻,用户终端T1、T2和T3请求的文件均为A,令文件A的大小为F,则利用组播ABR技术,内容服务器只需要向中心服务器传输一次文件A即可,传输的码率Rs=F;而如果按照现有技术采用单播方式传输,则需要分别传输3次文件A,传输的码率则为Rs=3F,因此,本实施例在这种情况下采用组播ABR进行传输,大大节省了传输的码率。
方法二:如果在某些时间节点用户终端请求的视频文件热度下降,多个用户终端开始请求不同的视频文件,则转换单元将组播ABR无缝转换为编码缓存方式,这种情形下,转换单元将多个用户终端请求的不同文件进行编码,并利用缓存编码技术(也可称为编码缓存技术),同样可以减少传输码率,提高传输效率。具体的说,在本实施例中,参照如图5所示的编码缓存示意图,转换单元负责对边缘服务器请求的文件进行编码,这里编码采取对文件进行按位异或(XOR,eXclusive OR)的操作。具体的:
在本实施例中,内容服务器上预先存储A、B、C三个大小相同的文件,且将文件A划分为A=(A1,A2),将文件B划分为B=(B1,B2),将文件C划分为C=(C1,C2),为便于说明,本实施例假设所划分文件的大小相同。本实施例***中部署S1、S2和S3三个边缘服务器,其中:
边缘服务器S1预先缓存的文件是(A2,B2,C2),边缘服务器S2预先缓存的文件是(A1,B1,C2),边缘服务器S3预先缓存的文件是(A1,B2,C1);
边缘服务器S1、S2和S3对应的用户终端分别是T1、T2和T3;
在某一时刻,用户终端T1、T2和T3请求的文件分别为A1、B2和C2,此时这些用户终端所请求的文件有进行编码传输的机会,也就是说,这种情况下,可以采用本实施例所提供的方案对这些用户终端所请求的不同的文件进行编码传输,从而达到降低传输码率的目的。
在本实施例中,具体编码的方法是将待编码的三个文件A1、B2和C2进行按位异或的操作,从而得到编码后的内容Fs,使用公式表示即为:Fs=A1⊕B2⊕C2。本实施例所提供的这种各边缘服务器预先缓存若干文件的一部分,并在多个用户终端分别请求所述若干文件的其他部分时,将所述若干文件的其他部分进行编码并传输给边缘服务器的方式,称为缓存编码传输方式,本实施例所采取的缓存编码传输方式可以有效减少传输文件的码率,现证明如下:
若令文件A、B和C的大小均为F(即:图中的file),则A1、B2和C2的大小为1/2F,因此,编码后传输的码率为Rs=1/2F。作为对比,参考图6所示的现有未编码传输的示意图,现有未编码的传输方式需要分别传输文件A1、B2和C2给S1~S3,令传输文件A1的码率为Rs1,传输文件B2的码率为Rs2,传输文件C2的码率为Rs3,则Rs1=1/2F,Rs2=1/2F,Rs3=1/2F,因此,需要传输的码率为Rs=Rs1+Rs2+Rs3=3/2F,而本实施例使用编码缓存后,传输的码率Rs=1/2F,可见本实施例所提供的编码缓存方法使得传输的码率大幅减少。
参见图5,转换单元将编码后的文件Fs以组播的方式发送给连接的边缘服务器S1、S2和S3。
(3)边缘服务器:边缘服务器提供视频文件缓存功能。如果用户终端距离边缘服务器较远,则流媒体传输过程中的延迟、抖动、带宽、丢包率等指标将不确定,无法保证QoS。因此,为了快速响应用户的文件请求,最大程度地降低延迟,边缘服务器的部署位置一般靠近用户终端,实际上是一个用户终端的文件缓存服务器。边缘服务器同时提供移动边缘计算(MEC,Mobile Edge Computing)功能。MEC由欧洲电信标准协会于2014年率先提出,其定义为:在移动网边缘提供IT服务环境和云计算能力。MEC强调靠近用户终端,以减少网络操作和服务交付的时延,提高用户体验。MEC***允许设备将计算任务卸载到网络边缘节点,如基站、无线接入点等,既满足了终端设备计算能力的扩展需求,同时弥补了云计算时延较长的缺点。MEC迅速成为5G的一项关键技术,有助于达到5G业务超低时延、超高能效、超高可靠性等关键技术指标。由于边缘服务器具有强大的计算能力,可以实时感知网络链路状态并根据网络链路状态对视频进行在线分析和处理,从而保障视频的流畅性,实现智能视频加速。另外,边缘服务器还可以负责本区域用户终端的空口资源的分配和回收,从而增加网络资源的利用率。边缘服务器可在一个城市或地区中部署多个,例如在某写字楼中,用户较多,为减少处理延迟,则可在该写字楼附近部署一个边缘服务器。在本实施例中,参见图1,边缘服务器包括代理单元、缓存单元和数据恢复单元。其中:
1)代理单元收集并向中心服务器报告辅助信息,包括但不限于视频文件访问量、视频文件ID、视频文件名称、视频文件分类、视频文件访问时长、终端用户喜好、带宽情况、代理单元ID、当前缓存状态、用户终端位置、季节频道(如世界杯、***)等辅助信息,如前所述,中心服务器的控制单元将根据上述辅助信息进行视频文件访问量的统计,生成视频文件热度排名信息。然后,中心服务器将根据统计的视频文件热度排名信息,在网络链路传输的波谷时段随机选择视频文件的部分内容发送给边缘服务器,从而起到在边缘服务器中对视频文件进行预先缓存的作用。事实证明,在一个具有良好时间局部性的缓存***中,被引用过一次的内容很可能在不远的将来会继续被多次引用。在一个具有良好空间局部性的缓存***,如果一个内容被引用了一次,那么缓存***很可能在不远的将来引用与该内容相似的其他内容。缓存文件发送和更新的频次可以根据视频文件热度的时间变化而定,可以为每天、每周或者其它时间长度,在本实施例中,缓存文件发送的频次选择为每天。
2)数据恢复单元根据接收到的编码文件(即:编码后的文件)和自身缓存中已有的文件的部分内容,解码得到用户终端请求的原始文件。具体的说,在本实施例中,参照如图5所示的编码缓存示意图,以用户终端T1为例进行说明:
用户终端T1请求文件A,边缘服务器S1已存储有A2,因此,向中心服务器请求A1。如前所述,中心服务器将把边缘服务器S1~S3所请求的文件进行按位异或后得到编码文件Fs=A1⊕B2⊕C2,然后将编码文件Fs发送给边缘服务器S1~S3。边缘服务器S1在接收到中心服务器发送的编码文件Fs=A1⊕B2⊕C2之后,结合自身缓存中的文件B2和C2进行解码,从而得到请求的文件A1;然后,边缘服务器S1将缓存中预先存储的文件A2和解码后得到的文件A1相结合,从而得到整个文件A。边缘服务器S2和边缘服务器S3的解码过程与上述过程类似,可以参照边缘服务器S1的解码过程。
3)缓存单元将得到的视频文件进行缓存。大量研究和统计表明,视频请求内容具有集中性,并且流行度较高的视频内容会在不同时间被大量重复请求。因此,利用缓存技术将流行度高的视频内容缓存到边缘服务器侧,能够减少视频下载时延,并减轻网络回传链路的负担。为进一步满足5G中的超低时延需求,将缓存技术与移动边缘计算技术相结合,当有多个用户请求相同的计算任务时,通过在边缘服务器缓存的数据与服务,可有效地降低任务处理时延。
边缘服务器将用户终端请求的文件发送给用户终端,比如电视机顶盒、个人计算机、平板电脑、手机或其它终端设备。
(4)用户终端:用户终端接入边缘服务器,向边缘服务器进行文件请求并接收边缘服务器发送的文件。这里,用户终端可基于网络情况和自身设备配置情况,选择接入4G网络的演进型基站(eNodeB),或者接入5G网络的下一代演进型基站(gNodeB),从而使得eNodeB通过长期演进(LTE,Long Term Evolution)接入网与边缘服务器连接,使得gNodeB通过下一代接入网(NG-RAN,Next Generation-Radio Access Network)与边缘服务器连接。本实施例中的流媒体传输是基于MPEG-DASH协议的,内容服务器上预先存储不同分辨率和码率的视频文件分片,用户终端的播放器使用标准的Web/Internet数据请求协议,并不需要关心***中边缘服务器和中心服务器对视频文件的处理。
用户终端可以通过HTTP GET请求下载视频文件分片,用户终端通过评估自身设备的性能和网络带宽情况,下载相应码率和分辨率的分片。当用户终端自身带宽较好时,在下载下一个分片时,就可以请求对应码率的较高分辨率的分片;而当带宽变差时,在当前分片下载完成后,可以下载码率和分辨率较低的下一个分片。由于不同质量的分片在时间上都是对齐的,因此,在不同质量的分片之间切换时,是自然流畅的。为减少传输中的码率,***可以在一个视频文件播放时在单播ABR与组播ABR之间动态切换,但是对用户终端播放器来讲是透明的。
实施例二
参照如图7和图8所示的示意图,本实施例提供一种基于编码缓存的内容分发方法的实施方法,具体包括如下步骤:
Step 1.用户1使用电视终端观看电影视频,电视机顶盒终端发送视频文件请求消息给边缘服务器,本实施例中将电视机顶盒终端称为“用户终端1”,将该边缘服务器命名为node1,即图中所示“边缘服务器1”。
Step 2.电视机顶盒终端对应的边缘服务器node1处理视频文件请求消息,边缘服务器node1首先查找自身缓存中是否有电视机顶盒终端所请求的视频文件,当发现本服务器缓存中并没有缓存所请求的视频文件时,执行Step3。
Step 3.边缘服务器node1向中心服务器发送视频文件请求消息。
Step 4.与用户终端1类似,此时用户终端2使用电视终端请求与用户终端1相同的视频文件,用户终端2对应的边缘服务器node2也向中心服务器发送对相同视频文件的请求消息。
Step 5.中心服务器向内容服务器发送视频文件请求消息。
Step 6.内容服务器用单播ABR的方式将视频文件发送给中心服务器。
Step 7.中心服务器处理内容服务器发送的视频文件;中心服务器的转换单元将接收到的视频文件以组播ABR的方式发送给边缘服务器node1和node2。
Step 8.边缘服务器node1和node2分别处理中心服务器发送的视频文件;边缘服务器node1和node2的缓存单元分别缓存视频文件。
Step 9.边缘服务器node1和node2分别将视频文件发送给用户终端1和用户终端2。
Step 10.用户终端1和用户终端2各自播放得到的视频文件。
实施例三
参照如图9和图10所示的示意图,本发明实施例提供一种基于编码缓存的内容分发方法的实施方法,具体包括如下步骤:
Step 1.用户使用电视终端观看电影视频《national treasure》,电视机顶盒终端(即图10所示用户终端)发送视频文件请求消息给边缘服务器,本实施例中以将该边缘服务器命名为node1,如图所示的边缘服务器1。
Step 2.电视机顶盒对应的边缘服务器node1处理视频文件请求消息,边缘服务器node1首先查找自身缓存中是否有请求的视频文件,当发现本服务器缓存中并没有缓存请求的视频文件时,执行步骤3。
Step 3.边缘服务器node1向附近其他边缘服务器发送广播消息,查询其它边缘服务器中是否有用户终端所请求的视频文件,并启动消息应答定时器T,定时器的时间间隔根据网络状况而定。在本实施例中广播消息请求命令如下:
其中:
message_type字段规定消息类型,request表明是文件请求消息;
request_node字段规定发送消息的服务器名称,这里是名字为node1的边缘服务器在进行视频文件请求的广播;
request_file字段规定所请求视频文件的名称,这里是在请求影片《nationaltreasure》;
request_cache字段规定当前需要请求视频文件中的缓存块编号,这里的缓存块编号是205;
request_bandwidth、request_width、request_height和request_framerate字段规定所请求视频文件的视频编码参数。
Step 4.其它边缘服务器在接收到广播消息后,查询本边缘服务器的缓存中是否有请求的视频文件,在本实施例中,其它边缘服务器的缓存中都没有node1请求的视频文件。
Step 5.边缘服务器node1的消息应答计时器T超时,因此,向中心服务器发送视频文件请求消息。
Step 6.中心服务器向内容服务器发送视频文件请求消息。
Step 7.内容服务器用单播的方式将视频文件发送给中心服务器。
Step 8.中心服务器处理内容服务器发送的视频文件;中心服务器的转换单元将接收到的视频文件进行缓存编码,并将编码后的视频文件发送给边缘服务器node1。
Step 9.边缘服务器node1处理中心服务器发送的视频文件;边缘服务器node1的数据恢复单元根据接收到的编码后的视频文件和自身缓存中已缓存的视频文件部分内容,解码得到请求的视频文件;边缘服务器node1的缓存单元缓存解码后得到的视频文件。
Step 10.边缘服务器node1将视频文件发送给电视机顶盒;
Step 11.电视机顶盒播放请求的视频文件。
实施例四
参照如图9和图11所示的示意图,本实施例提供基于编码缓存的内容分发方法的另外一种实施方法,需要说明的是,本申请实施例是基于5G***架构实现的数据处理方法,具体包括如下步骤:
Step 1.用户使用手机终端观看视频《troy》,手机终端发送视频文件请求消息给边缘服务器,本实施例中以将该边缘服务器命名为node1。
Step 2.手机终端对应的边缘服务器node1处理视频文件请求消息,边缘服务器node1首先查找自身缓存中是否有请求的视频文件,发现缓存中没有缓存请求的视频文件,则执行步骤3。
Step 3.边缘服务器node1向其他边缘服务器发送广播消息,查询其它边缘服务器缓存中是否有请求的视频文件,并启动消息应答定时器T,定时器的时间间隔根据网络状况而定。在本实施例中将消息请求命令规定如下:
其中:
message_type字段规定消息类型,request表明是视频文件请求消息;
request_node字段规定发送消息的服务器名称,这里是名字为node1的边缘服务器在进行视频文件请求广播;
request_file字段规定请求视频文件的名称,这里是在请求影片《troy》;
request_cache字段规定当前需要请求视频文件中的缓存块编号,这里的缓存块编号是156;
request_bandwidth、request_width、request_height和request_framerate字段规定请求视频文件的视频编码参数。
Step 4.其它边缘服务器在接收到视频文件广播请求消息后,查询本服务器缓存中是否有请求的视频文件,在本实施例中,名称为node2的边缘服务器中缓存有node1请求的视频文件,边缘服务器node2将视频文件发送给边缘服务器node1,在本实施例中将消息答复命令规定如下:
其中:
message_type字段规定消息类型,response表明视频文件答复消息;
response_node字段规定发送消息的节点名称,这里是名字为node2的边缘服务器在进行消息回复;
response_file字段规定请求视频文件的名称,这里为视频文件《troy》;
response_cache字段规定当前需要请求视频文件中具体的缓存块号编号,这里是156;
response_data后的是发送的视频文件内容。
Step 5.边缘服务器node1在设定的超时时间T内,接收边缘服务器node2的发送的视频文件,并在缓存模块中进行缓存。
Step 6.边缘服务器node1将对应的视频文件发送给用户手机终端;
Step 7.用户手机终端播放请求的视频文件。
实施例五
本实施例提供基于编码缓存的内容分发方法的一种具体实施方法,现将该实施方法的具体实施步骤阐述如下:
参照图13所示的***示意图。在该***中,内容服务器存储3个相同大小的原始文件,分别记做文件A、文件B和文件C。在进行缓存编码之前,需要对文件进行分割并存储,本实施采取的文件分割方法为:将每个原始文件分别划分为大小相同的两个文件块。为便于说明分割方法,本实施例中设原始文件的大小为1024字节,则分割文件时,将每个文件的第1~第512字节的内容分割为第一个文件块,将文件的第513~1024字节的内容分割为第二个文件块,分别记做:A=(A1,A2),B=(B1,B2),C=(C1,C2)。
在缓存阶段,边缘服务器S1缓存文件块(A1,B2,C2),边缘服务器S2缓存文件块(A2,B1,C2),边缘服务器S3缓存文件块(A2,B2,C1);同时,中心服务器记录各个边缘服务器缓存的文件块信息。在本实施例中,中心服务器采用缓存记录表格的形式来进行记录,参照图13中的中心服务器的缓存记录表,由该表可以得出当前的边缘服务器缓存记录如下:
边缘服务器S1缓存文件块(A1,B2,C2);
边缘服务器S2缓存文件块(A2,B1,C2);
边缘服务器S3缓存文件块(A2,B2,C1)。
在传输阶段,对多个文件块异或编码后的数据进行组播传输。由于组播传输的是多个文件块编码后的内容,为了保证各个边缘服务器能够正确解码出本边缘服务器所需的文件块,需要在传输协议的包头中附带边缘服务器解码所需要的基本信息。参照图12所示的示意图,在本实施例中,包头中所附带的边缘服务器解码所需要的信息的具体字段包括:
(1)包头长度,4个字节:这是包头的第一个字段,表示整个包头的字节数;
(2)文件ID,1个字节:表示传输的有效载荷中的文件块所在的具体文件的编号,在本实施例中,具体的文件编号分别为A,B和C;
(3)文件块ID,1个字节:表示传输的有效载荷中的文件块在原始文件中的编号,在本实施例中,文件块的编号分别为A2,B2和C2;
(4)文件块长度:表示传输的每个文件块的长度,在本实施例中,文件块长度分别为512,512和512;
(5)CRC,4个字节:循环冗余校验码,用于检测传输过程中是否有数据错误。
包头的后面是有效载荷,在本实施例中有效载荷是文件块采用异或编码后的组播传输的数据。
边缘服务器的解码过程处理如下:边缘服务器接收包头信息,并按照图12中本实施例的协议规范对包头进行解析。在包头信息的解析过程中,如果CRC检测到错误,则边缘服务器丢弃整个编码包;否则,边缘服务器检查该编码包中是否有所需要的文件块。如果是,则基于边缘服务器中的缓存数据和包头信息中的文件ID和文件块ID等信息,边缘服务器解码出该文件块;反之,如果数据包中不含有边缘服务器所需的文件块,则边缘服务器将该数据包被丢弃,等待接收下一个数据包。
具体在本实施例中,以边缘服务器S1的解析过程为例进行说明。边缘服务器S1在缓存阶段对文件块A1进行缓存,在传输阶段,为得到原始文件A,边缘服务器S1等待中心服务器传输包含文件块A2的编码包。边缘服务器接收到包头信息后,解析包头信息中的文件ID和文件块ID信息可知该包中包含文件块A2,因此边缘服务器S1继续解析有效载荷A2⊕B2⊕C2,并根据缓存数据中的文件块A1,B2和C2,通过以下方法进行解码:
解码文件块=(组播有效载荷)⊕(缓存文件块)。
本实施例中是按照:A2=(A2⊕B2⊕C2)⊕(B2⊕C2)得到文件A2,并结合缓存文件块A1,最终得到原始文件A。
边缘服务器S2和边缘服务器S3的解码过程同边缘服务器S1的解码过程类似,在此不再赘述。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (10)
1.一种内容分发***,应用于Over The Top业务,其特征在于,包括:内容服务器、中心服务器、边缘服务器和用户终端,其中:
所述内容服务器,用于存储可供用户终端访问的视频文件,所述视频文件按照不同的码率、分辨率、时间划分为不同的分片;
所述中心服务器,用于根据各个用户终端请求视频文件的记录统计得到视频文件的热度排名信息,并在网络链路传输的波谷时段,根据所述视频文件的热度排名信息从内容服务器获取热度最高的若干视频文件的部分内容发送给边缘服务器;
所述边缘服务器是所述用户终端的文件缓存服务器和移动边缘计算服务器,用于缓存所述热度最高的若干视频文件的部分内容,并将用户终端所请求的视频文件发送给所述用户终端;
所述用户终端连接所述边缘服务器,向边缘服务器进行视频文件请求并接收边缘服务器发送的视频文件;
所述中心服务器还用于在用户终端请求视频文件时,根据用户终端所请求视频文件的不同,通过组播ABR或者编码缓存的方式将用户终端所请求的文件发送给边缘服务器;其中,所述中心服务器具体包括转换单元,所述转换单元具体用于:
当多个用户终端请求相同的视频文件时,从内容服务器获取所述相同的视频文件,并采用组播ABR方式将所述相同的视频文件发送给所述多个用户终端所对应的边缘服务器;
当多个用户终端请求的视频文件不同时,如果所述多个用户终端所对应的边缘服务器中预先存储了所请求视频文件的部分内容,且所请求视频文件的其它部分内容存储在除本边缘服务器之外的其它边缘服务器的缓存中,则从内容服务器获取所述多个用户终端请求的视频文件,并对所述多个用户终端请求的视频文件进行编码后得到编码文件,将所述编码文件发送给所述多个用户终端所对应的边缘服务器。
2.根据权利要求1所述的***,其特征在于,所述中心服务器还包括控制单元,其中:
所述控制单元,用于根据各个用户终端请求视频文件的记录统计得到视频文件的热度排名信息,并在网络链路传输的波谷时段,根据所述视频文件的热度排名信息从所述内容服务器获取热度最高的若干视频文件的部分内容发送给所述边缘服务器;并用于对不同用户请求的文件进行记录,当多个用户终端发送文件请求时,根据文件请求记录,判断所述多个用户终端请求的是同一文件还是不同的文件,并将判断结果通知转换单元。
3.根据权利要求2所述的***,其特征在于,所述控制单元中具体包括:分析器模块、机器学习模块和调度模块,其中:
所述分析器模块,用于对边缘服务器上报的辅助信息进行解析,将解析得到的数据交由机器学习模块进行处理;
所述机器学习模块,用于根据输入的数据统计得到用户终端所请求视频文件的热度排名信息;
所述调度模块,用于根据所述视频文件的热度排名信息,优先随机选取热度排名靠前的视频文件的部分内容,在网络链路访问的波谷时段发送给边缘服务器进行预先缓存;其中,所述进行预先缓存的时间间隔根据不同的网络和视频文件的访问量进行设置,包括每天、每周或者其他设定间隔。
4.根据权利要求1至3任一项所述的***,其特征在于,所述边缘服务器具体包括:代理单元、缓存单元和数据恢复单元,其中:
所述代理单元收集并向中心服务器报告辅助信息,包括:视频文件访问量、视频文件ID、视频文件名称、视频文件分类、视频文件访问时长、终端用户喜好、带宽情况、代理单元ID、当前缓存状态、用户终端位置、季节频道;
所述缓存单元用于将获取到的视频文件进行缓存;
所述数据恢复单元,用于在接收到编码文件时,根据所述缓存单元缓存的视频文件对所述编码文件进行解码,得到原始文件。
5.根据权利要求1至3任一项所述的***,其特征在于:
所述转换单元,用于对所述多个用户终端请求的视频文件进行按位异或的操作得到编码文件。
6.根据权利要求1至3任一项所述的***,其特征在于:
所述中心服务器发送给所述边缘服务器的文件的包头信息中包含以下信息的至少一种:
包头长度:表示包头的字节数;
文件标识ID:表示传输的有效载荷中的文件块所在的具体文件的编号;
文件块ID:表示传输的有效载荷中的文件块在原始文件中的编号;
文件块长度:表示传输的每个文件块的长度。
7.一种内容分发方法,其特征在于,应用于Over The Top业务,包括:
中心服务器根据各个用户终端请求视频文件的记录统计得到视频文件的热度排名信息,并在网络链路传输的波谷时段,根据所述视频文件的热度排名信息将热度最高的若干视频文件的部分内容预先缓存至用户终端所连接的边缘服务器;
在用户终端请求视频文件时,中心服务器根据用户终端所请求视频文件的不同,通过组播ABR或者编码缓存的方式将用户终端所请求的文件发送给边缘服务器;其中:
如果多个用户终端请求相同的视频文件,则采用组播ABR方式将所述相同的视频文件发送给所述多个用户终端所对应的边缘服务器;
如果多个用户终端请求的视频文件不同,如果所述多个用户终端所对应的边缘服务器中预先存储了所请求视频文件的部分内容,且所请求视频文件的其它部分内容存储在除本边缘服务器之外的其它边缘服务器的缓存中,则采用编码缓存的方式将所述多个用户终端请求的视频文件发送给对应的边缘服务器。
8.根据权利要求7所述的方法,其特征在于,所述采用组播ABR方式将所述相同的视频文件发送给所述多个用户终端所对应的边缘服务器具体包括:
Step 1.多个用户终端根据当前网络带宽状况,计算请求文件的码率、分辨率,发送视频文件请求消息,分别向多个边缘服务器请求同一个视频文件;
Step 2.多个边缘服务器分别向中心服务器发送文件请求消息;
Step 3.中心服务器向内容服务器发送文件请求消息;
Step 4.内容服务器用单播ABR的方式将请求的文件发送至中心服务器;
Step 5.中心服务器将文件通过共享链路以组播ABR的方式发送给边缘服务器;
Step 6.边缘服务器将文件进行缓存;
Step 7.边缘服务器将请求的文件发送给用户终端;
Step 8.用户终端接收边缘服务器发送的文件。
9.根据权利要求7所述的方法,其特征在于,所述采用编码缓存的方式将所述多个用户终端请求的视频文件发送给对应的边缘服务器具体包括:
Step 1.用户终端根据当前网络带宽状况,计算请求文件的码率、分辨率,发送文件请求消息;
Step 2.用户终端对应的边缘服务器处理文件请求消息,边缘服务器首先查找本地缓存中是否有请求的文件;如果有,则转到Step 14;否则,转到Step 3;
Step 3.边缘服务器向附近的其它边缘服务器广播文件请求消息,并启动消息应答定时器;
Step 4.其它边缘服务器查询本服务器缓存中是否有请求的文件,如果有请求的文件,则转到Step 5;否则,转到Step 8;
Step 5.其它边缘服务器将请求的文件发送给发送请求消息的边缘服务器;
Step 6.发送请求消息的边缘服务器判断消息应答定时器是否超时,如果超时,转到Step 8;否则,转到Step 7;
Step 7.发送请求消息的边缘服务器接收文件并进行缓存,转到Step 14;
Step 8.边缘服务器向中心服务器发送文件请求消息;
Step 9.中心服务器向内容服务器发送文件请求消息;
Step 10.内容服务器用单播的方式将请求的文件发送至中心服务器;
Step 11.中心服务器根据接收到的内容服务器发送的文件,以及边缘服务器本地缓存预先存储的部分文件,对需要传输的文件进行编码操作得到编码文件,并将编码文件通过共享链路以组播的方式发送给边缘服务器;
Step 12.边缘服务器根据本地预先缓存的文件的部分内容,以及从中心服务器得到的编码文件进行解码,进而得到请求的文件内容;
Step 13.边缘服务器将得到的请求的文件进行缓存;
Step 14.边缘服务器将请求的文件发送给用户终端;
Step 15.用户终端接收边缘服务器发送的文件。
10.根据权利要求7至9任一项所述的方法,其特征在于:
所述中心服务器发送给所述边缘服务器的文件的包头信息中包含以下信息的至少一种:
包头长度:表示包头的字节数;
文件标识ID:表示传输的有效载荷中的文件块所在的具体文件的编号;
文件块ID:表示传输的有效载荷中的文件块在原始文件中的编号;
文件块长度:表示传输的每个文件块的长度。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/KR2020/008382 WO2020263024A1 (en) | 2019-06-28 | 2020-06-26 | Content distribution server and method |
EP20832104.2A EP3970383A4 (en) | 2019-06-28 | 2020-06-26 | CONTENT DISTRIBUTION SERVERS AND METHOD |
US17/554,308 US20220109713A1 (en) | 2019-06-28 | 2021-12-17 | Content distribution server and method |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910577876.5A CN110177310A (zh) | 2019-06-28 | 2019-06-28 | 一种内容分发***和方法 |
CN2019105778765 | 2019-06-28 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110536179A CN110536179A (zh) | 2019-12-03 |
CN110536179B true CN110536179B (zh) | 2021-11-26 |
Family
ID=67699390
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910577876.5A Pending CN110177310A (zh) | 2019-06-28 | 2019-06-28 | 一种内容分发***和方法 |
CN201910962775.XA Active CN110536179B (zh) | 2019-06-28 | 2019-10-11 | 一种内容分发***和方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910577876.5A Pending CN110177310A (zh) | 2019-06-28 | 2019-06-28 | 一种内容分发***和方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20220109713A1 (zh) |
EP (1) | EP3970383A4 (zh) |
CN (2) | CN110177310A (zh) |
WO (1) | WO2020263024A1 (zh) |
Families Citing this family (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110708293B (zh) * | 2019-09-11 | 2021-11-19 | 中国联合网络通信集团有限公司 | 多媒体业务的分流方法和装置 |
CN110677684B (zh) * | 2019-09-30 | 2022-06-03 | 北京奇艺世纪科技有限公司 | 视频处理、视频访问方法及分布式存储、视频访问*** |
CN110901693B (zh) * | 2019-10-15 | 2021-04-13 | 北京交通大学 | 基于5g和云计算技术的列车运行控制*** |
CN112764071B (zh) * | 2019-10-21 | 2024-04-09 | 中移智行网络科技有限公司 | 一种差分定位***、方法、装置、存储介质和服务器 |
CN110740374B (zh) * | 2019-10-31 | 2022-03-11 | 广州市网星信息技术有限公司 | 一种多媒体数据的处理方法、装置、计算机设备和存储介质 |
CN110620828A (zh) * | 2019-10-31 | 2019-12-27 | 北京奇艺世纪科技有限公司 | 一种文件推送方法、***、装置、电子设备及介质 |
CN112911344B (zh) * | 2019-11-19 | 2024-05-24 | 中兴通讯股份有限公司 | 一种发送方法、存储介质和电子装置 |
CN112953746A (zh) * | 2019-12-11 | 2021-06-11 | 国家广播电视总局广播电视科学研究院 | 一种边缘网络节点优化方法、装置及边缘节点设备 |
CN113038254B (zh) * | 2019-12-25 | 2023-03-31 | ***通信有限公司研究院 | 一种视频播放方法、装置和存储介质 |
CN111654711A (zh) * | 2020-06-17 | 2020-09-11 | 三星电子(中国)研发中心 | 视频播放控制方法、视频播放方法及其装置 |
CN111866601B (zh) * | 2020-07-21 | 2021-10-22 | 中国科学技术大学 | 一种基于合作博弈的移动边缘场景中的视频码率决策方法 |
CN112347941B (zh) * | 2020-11-09 | 2021-06-08 | 南京紫金体育产业股份有限公司 | 基于5g mec的运动视频集锦智能生成和分发方法 |
CN112423125A (zh) * | 2020-11-20 | 2021-02-26 | 上海哔哩哔哩科技有限公司 | 视频加载方法及装置 |
CN112543357B (zh) * | 2020-11-26 | 2023-09-08 | 郑州铁路职业技术学院 | 一种基于dash协议的流媒体数据传输方法 |
CN112803982A (zh) * | 2021-02-03 | 2021-05-14 | 南通先进通信技术研究院有限公司 | 一种基于cdn缓存技术的卫星组播分发***及其工作方法 |
CN112202932B (zh) * | 2020-12-07 | 2021-04-09 | 北京欣博电子科技有限公司 | 一种基于边缘计算的对视频进行结构化分析的方法及装置 |
CN113163446B (zh) * | 2020-12-29 | 2022-07-26 | 杭州电子科技大学 | 一种多中继无线网络下编码缓存与信道编码的联合优化方法 |
CN112954383B (zh) * | 2021-03-02 | 2023-05-16 | 山东省计算中心(国家超级计算济南中心) | 视频点播方法、视频点播代理服务器、基站及存储介质 |
CN113132466B (zh) * | 2021-03-18 | 2022-03-15 | 中山大学 | 基于编码缓存的多接入通信方法、装置、设备及介质 |
US20220329664A1 (en) * | 2021-04-09 | 2022-10-13 | Apple Inc. | Secure data caching for edge networks |
CN115250368A (zh) * | 2021-04-26 | 2022-10-28 | 北京字跳网络技术有限公司 | 一种视频预热方法、装置、设备和存储介质 |
CN113315825A (zh) * | 2021-05-24 | 2021-08-27 | 康键信息技术(深圳)有限公司 | 分布式请求的处理方法、装置、设备及存储介质 |
US11863805B2 (en) * | 2021-06-16 | 2024-01-02 | Meta Platforms Technologies, Llc | Systems and methods for preserving video stream quality |
CN113360465A (zh) * | 2021-06-23 | 2021-09-07 | 东南大学 | 非均匀文件流行度下的两用户、四文件的编码缓存方法 |
CN113504986A (zh) * | 2021-06-30 | 2021-10-15 | 广州大学 | 基于缓存的边缘计算***卸载方法、装置、设备及介质 |
CN113824689B (zh) * | 2021-08-24 | 2022-11-29 | 北京百度网讯科技有限公司 | 边缘计算网络、数据传输方法、装置、设备和存储介质 |
CN113905258B (zh) * | 2021-09-08 | 2023-11-03 | 鹏城实验室 | 视频播放方法、网络设备以及存储介质 |
CN114095501B (zh) * | 2021-11-18 | 2024-02-27 | 艾斯芸防伪科技(福建)有限公司 | 跨区域高可用防伪数据查询方法、***、设备及介质 |
CN114513514B (zh) * | 2022-01-24 | 2023-07-21 | 重庆邮电大学 | 一种面向车辆用户的边缘网络内容缓存与预缓存方法 |
CN114640861B (zh) * | 2022-03-14 | 2023-12-12 | 上海小潮缇姆信息科技有限公司 | 一种基于视频流行度先验预测的边缘缓存优化方法 |
CN114630183B (zh) * | 2022-03-17 | 2024-03-26 | 东南大学 | 一种基于可伸缩性编码的边缘设备缓存方法及评估方法 |
CN114979089B (zh) * | 2022-04-25 | 2023-03-24 | 北京邮电大学 | 一种实时传输全景视频的***和方法 |
CN115002132B (zh) * | 2022-05-23 | 2024-05-28 | 苏州思萃工业互联网技术研究所有限公司 | 一种用于pcdn网络预缓存资源的分发方法、***及计算机设备 |
CN115174955B (zh) * | 2022-05-25 | 2023-11-17 | 楼培德 | 基于未来网络的数字电影全国高速发行*** |
CN115278290B (zh) * | 2022-06-30 | 2024-04-19 | 华中科技大学 | 一种基于边缘节点的虚拟现实视频缓存方法及装置 |
CN115189998B (zh) * | 2022-07-11 | 2024-05-17 | 北京蔚领时代科技有限公司 | 基于PaaS平台进行服务器维护的方法与***以及设备 |
CN115510006A (zh) * | 2022-10-13 | 2022-12-23 | 中国人民解放军国防科技大学 | 使用不可靠边缘资源的去重数据缓存方法和*** |
CN116774949B (zh) * | 2023-08-22 | 2023-12-08 | 荣耀终端有限公司 | 一种资源包的存储方法及服务器 |
CN116828226B (zh) * | 2023-08-28 | 2023-11-10 | 南京邮电大学 | 基于区块链的云边端协同视频流缓存*** |
CN116866995B (zh) * | 2023-09-05 | 2023-12-01 | 江西师范大学 | 一种基于移动车辆的内容分层边缘缓存策略 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102404648A (zh) * | 2011-12-05 | 2012-04-04 | 深圳市同洲视讯传媒有限公司 | 一种内容分发***及方法 |
CN103348691A (zh) * | 2011-11-29 | 2013-10-09 | 华为技术有限公司 | 分发直播内容的方法、设备和*** |
KR20140031442A (ko) * | 2012-08-29 | 2014-03-13 | 에스케이텔레콤 주식회사 | 컨텐츠 전송 서비스 시스템, 그의 장치 및 컨텐츠 전송 서비스 지원 방법 |
CN104284201A (zh) * | 2014-09-26 | 2015-01-14 | 北京奇艺世纪科技有限公司 | 一种视频内容的处理方法和装置 |
CN105228027A (zh) * | 2014-06-24 | 2016-01-06 | 北京三星通信技术研究有限公司 | 多媒体内容的传输方法和***及相应的方法、用户终端和装置 |
US9241174B1 (en) * | 2014-11-18 | 2016-01-19 | Concurrent Computer Corporation | Demand-based edge caching video content system and methods |
CN105578308A (zh) * | 2015-12-29 | 2016-05-11 | 武汉市烽视威科技有限公司 | 一种rtp组播直播与hls单播时移相结合的实现方法 |
JP2017139687A (ja) * | 2016-02-05 | 2017-08-10 | 日本電信電話株式会社 | リアルタイムコンテンツ配信システム及び方法 |
CN107277561A (zh) * | 2016-04-08 | 2017-10-20 | 北京优朋普乐科技有限公司 | 内容分发网络 |
US9942577B1 (en) * | 2016-02-23 | 2018-04-10 | Amazon Technologies, Inc. | Dynamic objects caching for media content playback |
CN109788319A (zh) * | 2017-11-14 | 2019-05-21 | 中国科学院声学研究所 | 一种数据缓存方法 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7484103B2 (en) * | 2002-01-12 | 2009-01-27 | Je-Hak Woo | Method and system for the information protection of digital content |
US7143170B2 (en) * | 2003-04-30 | 2006-11-28 | Akamai Technologies, Inc. | Automatic migration of data via a distributed computer network |
US8166499B2 (en) * | 2003-09-18 | 2012-04-24 | General Instrument Corporation | Method, apparatus and set-top device for transmitting content to a receiver |
US9167049B2 (en) * | 2012-02-02 | 2015-10-20 | Comcast Cable Communications, Llc | Content distribution network supporting popularity-based caching |
CN104811740B (zh) * | 2015-04-29 | 2019-01-08 | 北京奇艺世纪科技有限公司 | 一种视频文件的分发方法、***及装置 |
WO2017117266A1 (en) * | 2015-12-29 | 2017-07-06 | Echostar Technologies L.L.C | Dynamic content delivery routing and related methods and systems |
US20170339242A1 (en) * | 2016-05-20 | 2017-11-23 | Futurewei Technologies, Inc. | Content Placements for Coded Caching of Video Streams |
US11252454B2 (en) * | 2017-06-28 | 2022-02-15 | Telefonaktiebolaget L M Ericsson (Publ) | System, devices and methods for providing stream privacy in an ABR OTT media network |
CN107889160B (zh) * | 2017-11-15 | 2020-03-17 | 北京邮电大学 | 一种考虑用户时延的小小区网络边缘部分缓存方法 |
US10819767B2 (en) * | 2018-08-08 | 2020-10-27 | Intel Corporation | Information centric network for content data networks |
US20190190971A1 (en) * | 2019-02-22 | 2019-06-20 | Akamai Technologies Inc. | Reducing latency in multicast delivery of content |
-
2019
- 2019-06-28 CN CN201910577876.5A patent/CN110177310A/zh active Pending
- 2019-10-11 CN CN201910962775.XA patent/CN110536179B/zh active Active
-
2020
- 2020-06-26 WO PCT/KR2020/008382 patent/WO2020263024A1/en unknown
- 2020-06-26 EP EP20832104.2A patent/EP3970383A4/en active Pending
-
2021
- 2021-12-17 US US17/554,308 patent/US20220109713A1/en active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103348691A (zh) * | 2011-11-29 | 2013-10-09 | 华为技术有限公司 | 分发直播内容的方法、设备和*** |
CN102404648A (zh) * | 2011-12-05 | 2012-04-04 | 深圳市同洲视讯传媒有限公司 | 一种内容分发***及方法 |
KR20140031442A (ko) * | 2012-08-29 | 2014-03-13 | 에스케이텔레콤 주식회사 | 컨텐츠 전송 서비스 시스템, 그의 장치 및 컨텐츠 전송 서비스 지원 방법 |
CN105228027A (zh) * | 2014-06-24 | 2016-01-06 | 北京三星通信技术研究有限公司 | 多媒体内容的传输方法和***及相应的方法、用户终端和装置 |
CN104284201A (zh) * | 2014-09-26 | 2015-01-14 | 北京奇艺世纪科技有限公司 | 一种视频内容的处理方法和装置 |
US9241174B1 (en) * | 2014-11-18 | 2016-01-19 | Concurrent Computer Corporation | Demand-based edge caching video content system and methods |
CN105578308A (zh) * | 2015-12-29 | 2016-05-11 | 武汉市烽视威科技有限公司 | 一种rtp组播直播与hls单播时移相结合的实现方法 |
JP2017139687A (ja) * | 2016-02-05 | 2017-08-10 | 日本電信電話株式会社 | リアルタイムコンテンツ配信システム及び方法 |
US9942577B1 (en) * | 2016-02-23 | 2018-04-10 | Amazon Technologies, Inc. | Dynamic objects caching for media content playback |
CN107277561A (zh) * | 2016-04-08 | 2017-10-20 | 北京优朋普乐科技有限公司 | 内容分发网络 |
CN109788319A (zh) * | 2017-11-14 | 2019-05-21 | 中国科学院声学研究所 | 一种数据缓存方法 |
Also Published As
Publication number | Publication date |
---|---|
EP3970383A4 (en) | 2022-07-20 |
CN110177310A (zh) | 2019-08-27 |
US20220109713A1 (en) | 2022-04-07 |
EP3970383A1 (en) | 2022-03-23 |
CN110536179A (zh) | 2019-12-03 |
WO2020263024A1 (en) | 2020-12-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110536179B (zh) | 一种内容分发***和方法 | |
US10455404B2 (en) | Quality of experience aware multimedia adaptive streaming | |
US11038944B2 (en) | Client/server signaling commands for dash | |
US9432436B2 (en) | Processing method, distribution server, client, and system for streaming media | |
CN107210993B (zh) | 无线网络中的多媒体内容流的动态速率调整的方法与*** | |
US9125073B2 (en) | Quality-aware adaptive streaming over hypertext transfer protocol using quality attributes in manifest file | |
US6757735B2 (en) | Method for distributing multiple description streams on servers in fixed and mobile streaming media systems | |
US9894421B2 (en) | Systems and methods for data representation and transportation | |
US9398337B2 (en) | Method and apparatus for assigning video bitrate in mobile communication system | |
US20140095593A1 (en) | Method and apparatus for transmitting data file to client | |
US10834161B2 (en) | Dash representations adaptations in network | |
WO2015076705A1 (ru) | Управление передачей потока видеоданных по сети на сетевое пользовательское устройство | |
Gatimu et al. | Experimental study of low-latency HD VoD streaming using flexible dual TCP-UDP streaming protocol | |
CN111405617B (zh) | 基于ap请求代理的ndn无线局域网流媒体传输方法及*** | |
KR102237900B1 (ko) | 클라이언트 단말에 의해 멀티미디어 콘텐츠의 콘텐츠 부분을 검색하기 위한 방법 | |
Abdelsalam et al. | Evaluation of DASH algorithms on dynamic satellite-enhanced hybrid networks | |
Ma et al. | Access point centric scheduling for dash streaming in multirate 802.11 wireless network | |
WO2019120532A1 (en) | Method and apparatus for adaptive bit rate control in a communication network | |
US20240223832A1 (en) | Video stream bitrate adjustment method and apparatus, computer device, and storage medium | |
CN116132746A (zh) | 一种动态码率自适应网络视频传输方法及终端设备 | |
CN115484505A (zh) | 视频传输方法、装置、设备、***以及计算机存储介质 | |
Shen | Traffic optimization with redundancy elimination on mobile and wireless networks |
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 |