CN112968959A - 一种资源请求方法及终端 - Google Patents

一种资源请求方法及终端 Download PDF

Info

Publication number
CN112968959A
CN112968959A CN202110193382.4A CN202110193382A CN112968959A CN 112968959 A CN112968959 A CN 112968959A CN 202110193382 A CN202110193382 A CN 202110193382A CN 112968959 A CN112968959 A CN 112968959A
Authority
CN
China
Prior art keywords
resource
edge node
terminal
edge
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110193382.4A
Other languages
English (en)
Other versions
CN112968959B (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.)
Wangsu Science and Technology Co Ltd
Original Assignee
Wangsu Science and Technology Co Ltd
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 Wangsu Science and Technology Co Ltd filed Critical Wangsu Science and Technology Co Ltd
Priority to CN202110193382.4A priority Critical patent/CN112968959B/zh
Priority to PCT/CN2021/098480 priority patent/WO2022174534A1/zh
Priority to EP21867920.7A priority patent/EP4075691B1/en
Publication of CN112968959A publication Critical patent/CN112968959A/zh
Priority to US17/656,808 priority patent/US11785075B2/en
Application granted granted Critical
Publication of CN112968959B publication Critical patent/CN112968959B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • 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
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources

Landscapes

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

Abstract

本申请公开一种资源请求方法及终端,终端向各第一边缘节点分别发送针对目标资源的第一资源获取请求;终端基于各第一边缘节点各自对目标资源的第一返回量,确定各第二边缘节点;终端向各第二边缘节点发送针对目标资源的第二资源获取请求。通过该方式,可以有效地减少终端对第一边缘节点的使用数量;进一步的,由于终端可通过向一些优质的边缘节点去集中请求数据,且每个优质的边缘节点向终端返回的针对目标资源的返回量较大,而避免继续向一些服务效果不太好的边缘节点请求数据,从而可以克服边缘节点I/O性能出现瓶颈的技术问题,并可以提升边缘节点的数据预读性能。

Description

一种资源请求方法及终端
技术领域
本申请实施例涉及流媒体点播技术领域,尤其涉及一种资源请求方法及终端。
背景技术
目前的视频点播***,为了实现低成本的视频播放效果,通常采用P2SP(Peer toServer&Peer,点对服务器和点)***,该***中客户端请求的媒体资源部分从CDN(ContentDelivery Network,内容分发网络)节点下载,部分从位于P2P网络内的边缘节点下载,参见如下步骤:
首先,客户端在接收到用户对一条视频流的播放请求时,会将整条视频流切成若干个小切片,后续下载任务都是基于小切片为最小单位进行调度分配数据下载的。
然后,为了不造成视频流首屏播放的卡顿现象,每条视频流在启播阶段都会先向CDN节点请求一定数据量的小切片数据。
接着,在客户端对视频流的缓存达到一定数据量后,将开启P2P下载任务。其中,由于边缘节点的稳定性和传输速率较CDN节点略低,故一条视频流会部署在多个边缘节点上。P2P下载任务用于表示客户端将于同一时刻向不同的边缘节点请求不同切片的数据段,以提高并发数据下载速率。
此外,整个下载任务会有一个CDN滑动窗口,当P2P数据下载速率小于这个窗口推进速度时,就会进入CDN补片。
在以上过程中,客户端由于会将视频流切分成多个小切片,且粒度较小,从而客户端在执行P2P下载任务时,向每个存储有该视频流的边缘节点请求的数据都将是不连续的,容易造成边缘节点I/O性能出现瓶颈,而无法提供更好的服务。
综上,目前亟需一种高效的数据下载方法。
发明内容
本申请提供一种资源请求方法及终端,用于解决使用P2SP***对视频流下载时,边缘节点容易出现I/O性能瓶颈的技术问题。
第一方面,本申请实施例提供一种资源请求方法,该方法包括:终端向各第一边缘节点分别发送针对目标资源的第一资源获取请求;所述终端基于所述各第一边缘节点各自对所述目标资源的第一返回量,确定各第二边缘节点;所述终端向所述各第二边缘节点发送针对所述目标资源的第二资源获取请求。
基于该方案,视频点播场景下,终端通过向各第一边缘节点发送针对目标资源的第一资源获取请求,而后可根据各第一边缘节点对目标资源的第一返回量来确定各第二边缘节点,最后终端即可向各第二边缘节点发送针对目标资源的第二资源获取请求,而无须再向各第一边缘节点发送资源获取请求了。通过该方式,可以有效地减少终端对第一边缘节点的使用数量;进一步的,由于终端可通过向一些优质的边缘节点去集中请求数据,且每个优质的边缘节点向终端返回的针对目标资源的返回量较大,而避免继续向一些服务效果不太好的边缘节点请求数据,从而可以克服边缘节点I/O性能出现瓶颈的技术问题,并可以提升边缘节点的数据预读性能。
在一种可能实现的方法中,所述终端基于所述各第一边缘节点各自对所述目标资源的第一返回量,确定各第二边缘节点,包括:针对任一个第一边缘节点,所述终端根据所述第一边缘节点对所述目标资源的第一返回量,确定所述第一边缘节点的传输速率;所述终端若确定对所述目标资源的缓存总量满足第一设定条件,则根据所述各第一边缘节点的传输速率,确定出各第二边缘节点。
基于该方案,在终端从各第一边缘节点中确定各第二边缘节点时,针对任一个第一边缘节点,终端是根据它向自己返回针对目标资源的第一返回量,首先确定了该第一边缘节点的传输速率;接着,终端如果确定自身对目标资源的缓存总量满足了第一设定条件,该第一设定条件用于表示缓存总量满足缓存播放的最低要求,那么终端将可以依据各第一边缘节点的传输速率来确定各第二边缘节点。通过该方式,终端可以灵活地对当前所需要使用到的边缘节点进行确定。
在一种可能实现的方法中,所述终端向所述各第二边缘节点发送针对所述目标资源的第二资源获取请求之后,还包括:所述终端基于所述各第二边缘节点对所述目标资源的第二返回量,确定所述目标资源的缓存总量满足第二设定条件时,停止向边缘节点发送资源获取请求。
基于该方案,当终端从各第一边缘节点中确定出各第二边缘节点,并在向各第二边缘节点发送第二资源获取请求后,各第二边缘节点可向终端返回第二返回量(任意两个第二返回量可以相同,也可以不同)的针对目标资源的资源,从而终端若确定自身对目标资源的缓存总量满足了第二设定条件时,该第二设定条件用于表示缓存总量满足缓存播放的最高要求,那么终端将可以暂时停止向存储有目标资源的边缘节点发送资源获取请求了。通过该方式,终端确定自身对目标资源的缓存总量在满足用户提出的播放流畅要求的条件下,还可以有效保证终端自身对目标资源的缓存总量不至于太多,从而的话,在发生用户停止对目标资源的观看行为的状况时,所造成的资源损失将可以被控制在一个合理范围内。
在一种可能实现的方法中,所述终端向各第一边缘节点分别发送针对目标资源的第一资源获取请求之前,还包括:所述终端接收用户触发的资源播放指令;所述资源播放指令用于指示所述终端播放所述目标资源;所述终端向内容分发网络CDN节点发送针对所述目标资源的第三资源获取请求;所述终端接收第三返回量的所述目标资源;所述第三返回量用于标识所述缓存总量满足所述第一设定条件。
基于该方案,视频点播场景下,终端可在接收到用户触发的对一目标资源进行播放的资源播放指令后,通过服务器获取存储有该目标资源的CDN节点以及存储有该目标资源的边缘节点分别为哪些的信息,以便于终端可以从对应的CDN节点和边缘节点获取目标资源以实现播放;进一步的,在首屏播放阶段,终端为了可以满足用户提出的播放流畅要求,则可以首先向CDN节点发送针对该目标资源的第三资源获取请求,以使得CDN节点向终端所返回的第三返回量的资源可以用于实现终端自身对目标资源的缓存总量满足第一设定条件。
在一种可能实现的方法中,所述终端向内容分发网络CDN节点发送针对所述目标资源的第三资源获取请求之后,还包括:所述终端在确定所述缓存总量满足所述第一设定条件后,向存储有所述目标资源的各边缘节点发送分别发送第四资源获取请求;所述第四资源获取请求用于指示各边缘节点向所述终端返回相同数量的第四返回量。
基于该方案,当终端接收到的来自于CDN节点的第三返回量的目标资源可以用于实现自身对目标资源的缓存总量满足第一设定条件后,终端将可以向环境中存储有目标资源的各边缘节点分别发送第四资源获取请求,该第四资源获取请求可以用于指示各边缘节点向终端返回相同数量的第四返回量的目标资源,且该相同数量为一最小单位的目标资源,如此,终端便可以较快地从各边缘节点中确定出在一个资源返回周期中所需要被使用到边缘节点分别为哪些了,从而可以克服边缘节点I/O性能出现瓶颈的技术问题以及还可以提升边缘节点的数据预读性能。
在一种可能实现的方法中,所述终端基于所述各第一边缘节点各自对所述目标资源的第一返回量,确定各第二边缘节点,包括:所述终端基于所述各第一边缘节点各自对所述目标资源的第一返回量,确定各第二边缘节点及各第二边缘节点各自对应的对所述目标资源的第二返回量;所述各第二边缘节点的第二返回量不完全相同。
基于该方案,在终端接收到各第一边缘节点向自己返回第一返回量的目标资源时,且在确定下一个资源返回周期中自身对目标资源的缓存总量满足第一设定条件时,终端将可以基于各第一边缘节点在本次返回目标资源的状态数据来确定在下一个资源返回周期中所需要被使用到的边缘节点分别为各第一边缘节点中的哪些边缘节点,也即可以确定出各第二边缘节点;且同时还可以确定出各第二边缘节点向终端返回的第二返回量,其中不同的第二边缘节点,它们的第二返回量可能相同,也可能不同。
在一种可能实现的方法中,所述终端与第三边缘节点建立心跳机制;所述心跳机制用于所述终端确定所述第三边缘节点的服务状态,所述第三边缘节点为所述各第一边缘节点中除去所述各第二边缘节点之外的边缘节点。
基于该方案,在终端使用第二边缘节点向自己返回目标资源的过程中,为了防止该过程中的一个或者一些第二边缘节点有波动或者变得不可用时,此时终端则可以使用第一边缘节点中除去第二边缘节点之外的边缘节点来为自己提供资源下载服务,即终端可控制第三边缘节点向自己返回目标资源。该方式中,为了实现第三边缘节点可高效地对终端提供资源下载服务,可在终端与第三边缘节点之间建立心跳机制,以保证第三边缘节点始终处于可服务状态。
在一种可能实现的方法中,所述终端向所述各第二边缘节点发送针对所述目标资源的第二资源获取请求之后,还包括:所述终端若确定存在处于不可服务状态的第二边缘节点,则根据所述第三边缘节点的传输速率,确定出用于替代所述处于不可服务状态的第二边缘节点的边缘节点。
基于该方案,在终端确定第二边缘节点中存在有不可提供数据下载服务的一个或者一些第二边缘节点时,终端可从第三边缘节点中确定出可用于替换该个/些不可服务的第二边缘节点的边缘节点,即替换边缘节点;其中,终端可通过第三边缘节点的传输速率来确定替换边缘节点究竟可分别是哪些边缘节点,如此将实现终端始终可以对用户提供可流畅播放的目标资源。
在一种可能实现的方法中,所述根据所述各第一边缘节点的传输速率,确定出各第二边缘节点,包括:在历史最近的一个资源返回周期中,针对所述各第一边缘节点中的任一个第一边缘节点,所述终端根据所述第一边缘节点的传输速率确定所述第一边缘节点对所述目标资源的第二返回量;所述终端从所述各第一边缘节点中确定出N个第一边缘节点;其中,所述N个第一边缘节点各自对所述目标资源的第二返回量的总量用于实现所述缓存总量满足所述第二设定条件;所述终端将所述N个第一边缘节点作为所述各第二边缘节点。
基于该方案,在终端从各第一边缘节点中来确定各第二边缘节点时,终端可根据第一边缘节点的传输速率来确定第二边缘节点,具体又可以包括:针对各第一边缘节点中的任一个第一边缘节点,终端可以根据它在历史最近的一个资源返回周期中的传输速率,来确定它在下一个资源返回周期(即当前的资源返回周期)中可向终端返回目标资源的数据量(即确定第二返回量),从而的话,终端将可以从各第一边缘节点中选择出N个第一边缘节点,由于该N个第一边缘节点在下一个资源返回周期中向终端返回的资源总数据量可以用于实现缓存总量满足第二设定条件,从而终端将可以认为该N个第二边缘节点是各第二边缘节点。该方式具有灵活确定当前所需要使用到的边缘节点的特点。
在一种可能实现的方法中,所述各第一边缘节点的数量为M;所述终端从所述各第一边缘节点中确定出N个第一边缘节点,包括:所述终端将M个第一边缘节点的传输速率从高到低进行排序;所述终端在确定前N个第一边缘节点对应的第二返回量的总量用于实现所述缓存总量满足所述第二设定条件,但前N-1个第一边缘节点对应的第二返回量的总量无法用于实现所述缓存总量满足所述第二设定条件时,将所述N个第一边缘节点作为所述各第二边缘节点。
基于该方案,在终端从M个第一边缘节点中确定第二边缘节点的过程中,可以优先选择一些传输速率较大的边缘节点,以使该些传输速率较大的边缘节点在下一个资源返回周期中向终端就目标资源进行返回,该过程中,通过将M个第一边缘节点的传输速率按照从高到低的顺序依次进行排序,若终端确定前N-1个第一边缘节点对应的第二返回量的总量无法用于实现缓存总量满足第二设定条件,但前N个第一边缘节点对应的第二返回量的总量刚好可以用于实现缓存总量满足第二设定条件,那么终端可以将这前N个第一边缘节点确定为各第二边缘节点。通过该方式,终端可以实现集中地向优质的若干个边缘节点请求目标资源,而无须向环境中所存在的、且存储有目标资源的全部边缘节点请求数据。
第二方面,本申请实施例提供一种终端,所述终端包括:资源获取请求发送单元,用于向各第一边缘节点分别发送针对目标资源的第一资源获取请求;确定单元,用于基于所述各第一边缘节点各自对所述目标资源的第一返回量,确定各第二边缘节点;资源获取请求发送单元,还用于向所述各第二边缘节点发送针对所述目标资源的第二资源获取请求。
基于该方案,视频点播场景下,终端通过向各第一边缘节点发送针对目标资源的第一资源获取请求,而后可根据各第一边缘节点对目标资源的第一返回量来确定各第二边缘节点,最后终端即可向各第二边缘节点发送针对目标资源的第二资源获取请求,而无须再向各第一边缘节点发送资源获取请求了。通过该方式,可以有效地减少终端对第一边缘节点的使用数量;进一步的,由于终端可通过向一些优质的边缘节点去集中请求数据,且每个优质的边缘节点向终端返回的针对目标资源的返回量较大,而避免继续向一些服务效果不太好的边缘节点请求数据,从而可以克服边缘节点I/O性能出现瓶颈的技术问题,并可以提升边缘节点的数据预读性能。
在一种可能实现的方法中,所述确定单元,具体用于:针对任一个第一边缘节点,根据所述第一边缘节点对所述目标资源的第一返回量,确定所述第一边缘节点的传输速率;若确定对所述目标资源的缓存总量满足第一设定条件,则根据所述各第一边缘节点的传输速率,确定出各第二边缘节点。
基于该方案,在终端从各第一边缘节点中确定各第二边缘节点时,针对任一个第一边缘节点,终端是根据它向自己返回针对目标资源的第一返回量,首先确定了该第一边缘节点的传输速率;接着,终端如果确定自身对目标资源的缓存总量满足了第一设定条件,该第一设定条件用于表示缓存总量满足缓存播放的最低要求,那么终端将可以依据各第一边缘节点的传输速率来确定各第二边缘节点。通过该方式,终端可以灵活地对当前所需要使用到的边缘节点进行确定。
在一种可能实现的方法中,所述资源获取请求发送单元,还用于:基于所述各第二边缘节点对所述目标资源的第二返回量,确定所述目标资源的缓存总量满足第二设定条件时,停止向边缘节点发送资源获取请求。
基于该方案,当终端从各第一边缘节点中确定出各第二边缘节点,并在向各第二边缘节点发送第二资源获取请求后,各第二边缘节点可向终端返回第二返回量(任意两个第二返回量可以相同,也可以不同)的针对目标资源的资源,从而终端若确定自身对目标资源的缓存总量满足了第二设定条件时,该第二设定条件用于表示缓存总量满足缓存播放的最高要求,那么终端将可以暂时停止向存储有目标资源的边缘节点发送资源获取请求了。通过该方式,终端确定自身对目标资源的缓存总量在满足用户提出的播放流畅要求的条件下,还可以有效保证终端自身对目标资源的缓存总量不至于太多,从而的话,在发生用户停止对目标资源的观看行为的状况时,所造成的资源损失将可以被控制在一个合理范围内。
在一种可能实现的方法中,所述资源获取请求发送单元,还用于:接收用户触发的资源播放指令;所述资源播放指令用于指示所述终端播放所述目标资源;向内容分发网络CDN节点发送针对所述目标资源的第三资源获取请求;接收第三返回量的所述目标资源;所述第三返回量用于标识所述缓存总量满足所述第一设定条件。
基于该方案,视频点播场景下,终端可在接收到用户触发的对一目标资源进行播放的资源播放指令后,通过服务器获取存储有该目标资源的CDN节点以及存储有该目标资源的边缘节点分别为哪些的信息,以便于终端可以从对应的CDN节点和边缘节点获取目标资源以实现播放;进一步的,在首屏播放阶段,终端为了可以满足用户提出的播放流畅要求,则可以首先向CDN节点发送针对该目标资源的第三资源获取请求,以使得CDN节点向终端所返回的第三返回量的资源可以用于实现终端自身对目标资源的缓存总量满足第一设定条件。
在一种可能实现的方法中,所述资源获取请求发送单元,还用于:在确定所述缓存总量满足所述第一设定条件后,向存储有所述目标资源的各边缘节点发送分别发送第四资源获取请求;所述第四资源获取请求用于指示各边缘节点向所述终端返回相同数量的第四返回量。
基于该方案,当终端接收到的来自于CDN节点的第三返回量的目标资源可以用于实现自身对目标资源的缓存总量满足第一设定条件后,终端将可以向环境中存储有目标资源的各边缘节点分别发送第四资源获取请求,该第四资源获取请求可以用于指示各边缘节点向终端返回相同数量的第四返回量的目标资源,且该相同数量为一最小单位的目标资源,如此,终端便可以较快地从各边缘节点中确定出在一个资源返回周期中所需要被使用到边缘节点分别为哪些了,从而可以克服边缘节点I/O性能出现瓶颈的技术问题以及还可以提升边缘节点的数据预读性能。
在一种可能实现的方法中,所述确定单元,具体用于:基于所述各第一边缘节点各自对所述目标资源的第一返回量,确定各第二边缘节点及各第二边缘节点各自对应的对所述目标资源的第二返回量;所述各第二边缘节点的第二返回量不完全相同。
基于该方案,在终端接收到各第一边缘节点向自己返回第一返回量的目标资源时,且在确定下一个资源返回周期中自身对目标资源的缓存总量满足第一设定条件时,终端将可以基于各第一边缘节点在本次返回目标资源的状态数据来确定在下一个资源返回周期中所需要被使用到的边缘节点分别为各第一边缘节点中的哪些边缘节点,也即可以确定出各第二边缘节点;且同时还可以确定出各第二边缘节点向终端返回的第二返回量,其中不同的第二边缘节点,它们的第二返回量可能相同,也可能不同。
在一种可能实现的方法中,所述终端还包括边缘节点保活单元;所述边缘节点保活单元,用于:与第三边缘节点建立心跳机制;所述心跳机制用于所述终端确定所述第三边缘节点的服务状态,所述第三边缘节点为所述各第一边缘节点中除去所述各第二边缘节点之外的边缘节点。
基于该方案,在终端使用第二边缘节点向自己返回目标资源的过程中,为了防止该过程中的一个或者一些第二边缘节点有波动或者变得不可用时,此时终端则可以使用第一边缘节点中除去第二边缘节点之外的边缘节点来为自己提供资源下载服务,即终端可控制第三边缘节点向自己返回目标资源。该方式中,为了实现第三边缘节点可高效地对终端提供资源下载服务,可在终端与第三边缘节点之间建立心跳机制,以保证第三边缘节点始终处于可服务状态。
在一种可能实现的方法中,所述资源获取请求发送单元,还用于:若确定存在处于不可服务状态的第二边缘节点,则根据所述第三边缘节点的传输速率,确定出用于替代所述处于不可服务状态的第二边缘节点的边缘节点。
基于该方案,在终端确定第二边缘节点中存在有不可提供数据下载服务的一个或者一些第二边缘节点时,终端可从第三边缘节点中确定出可用于替换该个/些不可服务的第二边缘节点的边缘节点,即替换边缘节点;其中,终端可通过第三边缘节点的传输速率来确定替换边缘节点究竟可分别是哪些边缘节点,如此将实现终端始终可以对用户提供可流畅播放的目标资源。
在一种可能实现的方法中,所述确定单元,具体用于:在历史最近的一个资源返回周期中,针对所述各第一边缘节点中的任一个第一边缘节点,根据所述第一边缘节点的传输速率确定所述第一边缘节点对所述目标资源的第二返回量;从所述各第一边缘节点中确定出N个第一边缘节点;其中,所述N个第一边缘节点各自对所述目标资源的第二返回量的总量用于实现所述缓存总量满足所述第二设定条件;将所述N个第一边缘节点作为所述各第二边缘节点。
基于该方案,在终端从各第一边缘节点中来确定各第二边缘节点时,终端可根据第一边缘节点的传输速率来确定第二边缘节点,具体又可以包括:针对各第一边缘节点中的任一个第一边缘节点,终端可以根据它在历史最近的一个资源返回周期中的传输速率,来确定它在下一个资源返回周期(即当前的资源返回周期)中可向终端返回目标资源的数据量(即确定第二返回量),从而的话,终端将可以从各第一边缘节点中选择出N个第一边缘节点,由于该N个第一边缘节点在下一个资源返回周期中向终端返回的资源总数据量可以用于实现缓存总量满足第二设定条件,从而终端将可以认为该N个第二边缘节点是各第二边缘节点。该方式具有灵活确定当前所需要使用到的边缘节点的特点。
在一种可能实现的方法中,所述各第一边缘节点的数量为M;所述确定单元,具体用于:将M个第一边缘节点的传输速率从高到低进行排序;在确定前N个第一边缘节点对应的第二返回量的总量用于实现所述缓存总量满足所述第二设定条件,但前N-1个第一边缘节点对应的第二返回量的总量无法用于实现所述缓存总量满足所述第二设定条件时,将所述N个第一边缘节点作为所述各第二边缘节点。
基于该方案,在终端从M个第一边缘节点中确定第二边缘节点的过程中,可以优先选择一些传输速率较大的边缘节点,以使该些传输速率较大的边缘节点在下一个资源返回周期中向终端就目标资源进行返回,该过程中,通过将M个第一边缘节点的传输速率按照从高到低的顺序依次进行排序,若终端确定前N-1个第一边缘节点对应的第二返回量的总量无法用于实现缓存总量满足第二设定条件,但前N个第一边缘节点对应的第二返回量的总量刚好可以用于实现缓存总量满足第二设定条件,那么终端可以将这前N个第一边缘节点确定为各第二边缘节点。通过该方式,终端可以实现集中地向优质的若干个边缘节点请求目标资源,而无须向环境中所存在的、且存储有目标资源的全部边缘节点请求数据。
第三方面,本申请实施例提供了一种计算设备,包括:
存储器,用于存储计算机程序;
处理器,用于调用所述存储器中存储的计算机程序,按照获得的程序执行如第一方面任一所述的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序用于使计算机执行如第一方面任一所述的方法。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种可能的***架构示意图;
图2为本申请实施例提供的一种资源请求方法;
图3为本申请实施例提供的一种终端。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
如图1所示,为本申请实施例提供的一种可能的***架构,在该***架构中,可包括终端110,至少一个CDN节点120(图1中仅以一个CDN节点示意),至少一个边缘节点130(例如图1中示出的边缘节点1301,边缘节点1302和边缘节点1303)。可选的,该***架构中还包括服务器140。
终端110可为智能手机、电脑、电视等智能设备;进一步的,终端110中可安装有视频播放器。在用户想要对终端110中一视频播放器中的一视频资源进行观看时,用户可以对该视频资源对应的图标进行点击,从而终端110可以接收到用户触发的资源播放指令。在终端110接收到用户触发的资源播放指令时,终端110可以向服务器140发送一可服务节点确定请求,该可服务节点确定请求中包括用户本次想要观看的视频资源的资源标识,以使服务器140向自身(即终端110)返回可服务节点信息,该可服务节点信息用于指示本次可向终端110提供视频资源下载服务的CDN节点的信息以及边缘节点的信息,换句话说,该可服务节点信息用于告知终端110,本次它可以向哪一个/些CDN节点以及哪一些边缘节点发送视频资源获取请求,也即该可服务节点信息中所包括的CDN节点以及边缘节点均存储有本次用户想要观看的视频资源,其中,边缘节点位于P2P网络内。
服务器140可用于接收终端110发送的可服务节点确定请求,并在接收到可服务节点确定请求后,基于该可服务节点确定请求中包括的资源标识,确定出本次可服务于终端110的CDN节点以及边缘节点,并在确定出可服务的CDN节点的信息以及边缘节点的信息后,向终端110返回可服务节点信息。
终端110还可用于,在接收到服务器140返回的可服务节点信息后,基于该可服务节点信息中的CDN节点的信息(如包括CDN节点120),而向CDN节点120发送用于首屏播放的视频资源的资源获取请求。该过程中,由于较于边缘节点,CDN节点具有带宽大、性能稳定的特点,因此,终端110最开始在对一视频资源进行播放的过程中,为了实现自身对视频资源进行缓存的缓存(总)量可以用于满足用户提出的流畅播放的要求,从而终端110可通过向CDN节点发送资源获取请求,而非向边缘节点发送资源获取请求。
其中,在终端110向CDN节点发送用于首屏播放的视频资源的资源获取请求之前,终端110还可用于对本次用户想要观看的视频资源进行切分,如将视频资源按照时间从前往后的顺序、均匀切分成P个资源分片,并且为每一个资源分片打上唯一的分片标识,从而,终端110后续可以依据被切分而产生的分片标识来控制CDN节点或者边缘节点向自己返回指定的视频资源。
说明的是,终端110对本次用户想要观看的视频资源进行切分,属于一种预操作,实际并未发生。
因此,终端110可以向CDN节点120发送用于首屏播放的视频资源的资源获取请求,该资源获取请求中所请求的视频资源的数据量可以用于满足用户提出的播放流畅的要求。如资源获取请求中可以包括Q个资源分片(Q小于P),且该Q个资源分片为P个资源分片中的前Q个。
CDN节点120在接收到终端110发送的用于首屏播放的视频资源的资源获取请求时,则可以将本地存储的Q个资源分片传输至终端110。
终端110还可用于,在接收到CDN节点120返回的Q个资源分片时,首先可对其进行解析,从而获取到用户本次想要观看的视频资源对应的平均码率,如设平均码率以B(以Kbps为单位)进行标识。接着,终端110一方面可以向用户展示用户想要观看的视频资源,即开启首屏播放;另一方面,由于终端110自身对视频资源进行缓存的缓存总量已经满足了首屏播放流畅的要求,此时终端110为了可以减轻CDN节点的服务压力,它可以基于所接收到的可服务节点信息中的边缘节点的信息,而向该些边缘节点(全部或者部分的边缘节点)分别发送同一大小的资源获取请求,以使该些边缘节点来向自己提供服务,即返回后续的视频资源。其中,同一大小的资源获取请求表示终端110向该些边缘节点中的每一个边缘节点发送同一大小、但分片标识不同的资源获取请求,该方式可以提升边缘节点向终端110返回视频资源时的并发能力,以使得终端110在短期内可更多地接收到后续的视频资源。
说明的是,在对平均码率B进行解析时,并非一定要求终端110在对Q个资源分片全部接收后才可执行;本申请实施例中,由于平均码率B可被编辑在视频资源对应的文件的前几个Kb中,因此,终端110可在未全部接收到Q个资源分片时,即可获取到平均码率B。
继续说明的是,此时由于终端110为首次向边缘节点请求资源,即表示终端110尚且无法获知可服务节点信息中的每一个边缘节点的传输速率,因此,为了使得终端110可以较为快速地获取到每一个边缘节点的传输速率,终端110可同时向每一个边缘节点分别发送同一大小的资源获取请求,且该同一大小仅为一个资源分片数据量尺度。
边缘节点130可以用于基于终端110发送的资源获取请求,利用本地预先存储的、且为本次用户想要观看的视频资源,而向终端110传输资源获取请求中所要求返回的资源分片。针对终端110同时向多个边缘节点分别发送资源获取请求的过程,即在同一个资源返回周期中,不同的边缘节点向终端110返回的资源分片不相同(指资源内容),但资源分片的数量可以相同,也可以不同,其中资源分片的数量是由终端110根据各个边缘节点的传输速率确定的。
在一种场景下:若终端110在同一个资源返回周期中向各个边缘节点分别发送了同一大小的资源获取请求,则终端110还可用于,根据各个边缘节点向其传输同一大小的资源时的传输速率,来确定在下一个资源返回周期中,它可以向该些边缘节点中的哪些边缘节点发送新一轮的资源获取请求,以获取后续的视频资源。其中,在新一轮的资源获取请求中,被终端110所选中的那些边缘节点中的各个边缘节点向终端110传输的资源分片的数量可以相同,也可以不同,其中,资源分片的数量是由终端110根据所选中的各个边缘节点各自在上一个资源返回周期中的返回量确定的,更进一步的,可以是根据所选中的各个边缘节点各自的传输速率确定的。该过程中,需控制被终端110所选中的那些边缘节点向终端110返回的资源总数据量满足一定的预设条件,即需要控制终端110对视频资源的缓存总量满足预设的缓存播放的最高要求,其中,该缓存播放的最高要求为流畅播放条件下、用户最大可以观看到的视频资源总量,该缓存播放的最高要求可以由技术人员根据实际经验进行确定,其目的是为了避免用户中途不想继续观看而退出正在播放的视频,若此时边缘节点返回的视频资源过多(即终端110本地实际缓存的视频资源总量过大),则很容易带来网络资源浪费以及占用终端110的内存资源的问题。
在又一种场景下:若终端110在同一个资源返回周期中向各个边缘节点分别发送了并非为同一大小的资源获取请求,则终端110还可用于,根据各个边缘节点向其传输对应大小的资源时的传输时长,来确定各个边缘节点各自的传输速率,进而可以确定在下一个资源返回周期中,它可以向该些边缘节点中的哪些边缘节点发送新一轮的资源获取请求,以获取后续的视频资源。其中,在新一轮的资源获取请求中,被终端110所选中的那些边缘节点中的各个边缘节点向终端110传输的资源分片的数量可以相同,也可以不同,其中,资源分片的数量是由终端110根据所选中的各个边缘节点各自在上一个资源返回周期中的返回量确定,更进一步的,可以是根据所选中的那些边缘节点各自的传输速率确定的。该过程中,需控制被终端110所选中的那些边缘节点向终端110返回的资源总数据量满足一定的预设条件,即需要控制终端110对视频资源的缓存总量满足预设的缓存播放的最高要求,其中,该缓存播放的最高要求为流畅播放条件下、用户最大可以观看到的视频资源总量,该缓存播放的最高要求可以由技术人员根据实际经验进行确定,其目的是为了避免用户中途不想继续观看而退出正在播放的视频,若此时边缘节点返回的视频资源过多(即终端110本地实际缓存的视频资源总量过大),则很容易带来网络资源浪费以及占用终端110的内存资源的问题。
说明的是,上述例子中终端110可根据各个边缘节点各自的传输速率来确定在新一轮的资源获取请求中指示各个边缘节点需要返回的资源分片的数量,其中,资源分片的数量可以通过以下方式进行确定:
方式1、针对一个传输速率,预先设置好对应于它的资源分片的数量,其中,传输速率越大,资源分片的数量也越大。如传输速率为5Kbps时,则确定资源分片的数量为2,如传输速率为8Kbps时,则确定资源分片的数量为3,如传输速率为15Kbps时,则确定资源分片的数量为4。
方式2、针对一定区间范围的传输速率,预先设置好属于该区间范围的任一传输速率均对应同一个资源分片的数量,其中,传输速率越大。资源分片的数量也越大。如传输速率处于0-5Kbps时,则确定资源分片的数量为2,如传输速率为10-15Kbps时,则确定资源分片的数量为4。
基于上述技术***架构,本申请实施例提供一种资源请求方法,该方法由图1中的终端执行,如图2所示,该方法包括以下步骤:
步骤201,终端向各第一边缘节点分别发送针对目标资源的第一资源获取请求。
在本步骤中,各第一边缘节点的本地分别预先存储有目标资源。各第一边缘节点可以为存储有目标资源的各边缘节点中的部分边缘节点或者全部边缘节点。
可选的,所述终端向各第一边缘节点分别发送针对目标资源的第一资源获取请求之前,还包括:所述终端接收用户触发的资源播放指令;所述资源播放指令用于指示所述终端播放所述目标资源;所述终端向内容分发网络CDN节点发送针对所述目标资源的第三资源获取请求;所述终端接收第三返回量的所述目标资源;所述第三返回量用于标识所述缓存总量满足所述第一设定条件。
例如,视频点播场景下,若用户当前想对一视频资源进行观看,则用户可以通过点击终端的视频软件中该视频资源对应的图标来实现。其中,终端所接收到的用户的点击操作,可以用于表示终端接收到一资源播放指令,该视频资源即为目标资源。此时,一方面,终端可从服务器处获取预先存储有该视频资源的CDN节点的信息以及存储有该视频资源的边缘节点的信息。另一方面,终端可对该视频资源进行预划分的操作,形成一个个的资源分片,且任意两个资源分片的数据量相同,也即规定后续CDN节点以及边缘节点最小可以以多大的数据量向自己返回视频资源;换言之,终端可根据该视频资源的总数据量,以及依据从资源头到资源尾的顺序(即时间的先后顺序),对其进行P等份,每一份的视频资源称为一个资源分片,且每一份的资源分片具有自己唯一的分片标识,那么后续CDN节点或者边缘节点将可以以一个资源分片的正整数倍(即1,2,3……)的数据量向终端返回视频资源,其中,CDN节点或者边缘节点每次向终端返回的资源分片的数量是由终端进行确定的。
如,设用户想要观看的一视频资源的大小为600M,此时终端若以1M的大小为单位、并按照从资源头到资源尾的顺序对该视频资源进行等分操作,则可以得到600个资源分片;进一步的,可依据从资源头到资源尾的顺序,将得到的这600个资源分片逐一令为:第1分片,第2分片,第3分片……第600分片。同时,终端通过向服务器发送可服务节点确定请求,并设服务器返回的可服务节点信息包括CDN1节点,及边缘节点1,边缘节点2,边缘节点3,边缘节点4和边缘节点5,那么可以说明对于本次用户想要观看的该视频资源,终端可以向CDN1节点及边缘节点1,边缘节点2,边缘节点3,边缘节点4和边缘节点5发送资源获取请求,以由该些节点向自己返回视频资源、供用户进行观看。
由于CDN节点的服务质量普遍高于任一边缘节点的服务质量,因此,在视频资源的初始播放阶段,终端为了可以使得对视频资源的播放能够快速达到播放流畅的要求,即终端确定自身对视频资源的缓存总量满足第一设定条件,其中第一设定条件为缓存播放的最低要求,那么终端最开始可以向CDN节点发送资源获取请求(即第三资源获取请求),该第三资源获取请求用于指示CDN节点向终端返回的视频资源的数据量(即第三返回量)在扣除掉终端用于实时播放的视频资源的数据量后而得到的缓存总量满足第一设定条件。比如,终端可以向CDN1节点发送自资源头开始的、连续若干个资源分片的资源获取请求(即第三资源获取请求),如终端可以向CDN1节点请求第1分片、第2分片、第3分片……第Q分片,共Q个资源分片的资源获取请求,其中Q小于P。进一步的,终端还可以从CDN1节点返回的前几个资源分片(自资源头开始,但位于第Q分片之前的若干个资源分片)中解析出本次视频资源的平均码率B。
可选的,所述终端向内容分发网络CDN节点发送针对所述目标资源的第三资源获取请求之后,还包括:所述终端在确定所述缓存总量满足所述第一设定条件后,向存储有所述目标资源的各边缘节点发送分别发送第四资源获取请求;所述第四资源获取请求用于指示各边缘节点向所述终端返回相同数量的第四返回量。
接着上述的可服务节点信息包括CDN1节点、边缘节点1,边缘节点2,边缘节点3,边缘节点4和边缘节点5的例子,例如,终端在确定CDN1节点向自己返回的第三返回量的视频资源能够用于实现本地的缓存总量满足第一设定条件,则终端将可以暂时不再向CDN1节点继续发送资源获取请求,而是向存储有该视频资源的边缘节点发送资源获取请求,如此将可以减轻CDN1节点的工作压力。在终端向存储有该视频资源的边缘节点发送资源获取请求的过程中,为了提升并发性能,也即终端在发送完一次资源获取请求后,在与之对应的资源返回周期中将可以接收到边缘节点返回大量的视频资源,那么终端可以向存储有该视频资源的全部边缘节点发送资源获取请求,如终端可以同时向边缘节点1,边缘节点2,边缘节点3,边缘节点4和边缘节点5分别发送一资源获取请求,其中,该资源获取请求即为第四资源获取请求。进一步的,终端在向存储有该视频资源的各个边缘节点分别发送第四资源获取请求时,终端为了可以较快地获取到各个边缘节点的传输速率,那么终端将可以向各个边缘节点请求相同数量的视频资源,且该相同数量为一个资源分片;其中,任意两个被请求的资源分片的内容不相同。
步骤202,所述终端基于所述各第一边缘节点各自对所述目标资源的第一返回量,确定各第二边缘节点。
在本步骤中,在终端接收到各第一边缘节点向自己返回第一返回量的目标资源时,终端将可以基于各第一边缘节点在返回第一返回量的目标资源时的状态数据(包括资源数据量和传输时长),来确定自己下一次可以向其中的哪些边缘节点发送资源获取请求,其中,由终端所确定出来的该些边缘节点即为各第二边缘节点。通过该方式,终端将可以逐步地实现向一些比较优质的边缘节点集中请求目标资源,从而可以克服边缘节点I/O性能出现瓶颈的技术问题以及还可以提升边缘节点的数据预读性能。
可选的,所述终端基于所述各第一边缘节点各自对所述目标资源的第一返回量,确定各第二边缘节点,包括:针对任一个第一边缘节点,所述终端根据所述第一边缘节点对所述目标资源的第一返回量,确定所述第一边缘节点的传输速率;所述终端若确定对所述目标资源的缓存总量满足第一设定条件,则根据所述各第一边缘节点的传输速率,确定出各第二边缘节点。
其中,本申请实施例中第一设定条件可以使用以时间为单位(如以s为单位)的滑动窗口来表示,也可以使用以资源的数据量为单位(如以bit为单位)的滑动窗口来表示,对此本申请不做具体限定。第一设定条件用于表示缓存播放的最低要求。比如,前述例子中,终端在开启首屏播放时需向CDN1节点请求第1分片、第2分片、第3分片……第Q分片,一共Q个资源分片的资源,这里的以Q个资源分片的资源数据量进行滑动的窗口可称为第一设定条件,如本申请实施例中将第一设定条件令为c1;又或者,通过对这Q个资源分片的资源总数据量与平均码率B进行计算,则可以确定出以时间为单位的滑动窗口所表示的第一设定条件。
接着上述的可服务节点信息包括CDN1节点、边缘节点1,边缘节点2,边缘节点3,边缘节点4和边缘节点5的例子,可以包括如下场景:
一种可能的场景A是:设在T1时刻,CDN1节点向终端返回了第Q个资源分片,此时终端可以基于下面两个原因,而将边缘节点1,边缘节点2,边缘节点3,边缘节点4和边缘节点5作为各第一边缘节点,包括:
原因1:为了提升并发性能;
原因2:当前为终端首次向存储有目标资源的边缘节点发送资源获取请求的时间节点,即表示终端尚且还无法获知边缘节点1,边缘节点2,边缘节点3,边缘节点4和边缘节点5中的每一个边缘节点的服务效果。
因此,基于上述两个原因,在当前的资源获取请求发送节点下,终端可以向边缘节点1,边缘节点2,边缘节点3,边缘节点4和边缘节点5分别发送一资源获取请求,此时该资源获取请求即为第一资源获取请求,从而在当前的资源返回周期中,终端将可以根据各个第一边缘节点(指边缘节点1,边缘节点2,边缘节点3,边缘节点4和边缘节点5)返回第一资源获取请求中所指定的资源时的状态数据(状态数据包括资源的数据量和边缘节点返回该资源时所耗费的传输时长),来确定各个第一边缘节点的传输速率。其中,终端向各第一边缘节点分别发送的第一资源获取请求所指示的资源的资源总数据量,须用于实现终端对目标资源的缓存总量满足第一设定条件。
说明的是,这里的第一资源获取请求与前述例子的第四资源获取请求等价。
因此,在当前的资源返回周期中,终端可获取到各第一边缘节点(指边缘节点1,边缘节点2,边缘节点3,边缘节点4和边缘节点5)各自的传输速率;进一步地,终端将可以根据各第一边缘节点的传输速率,从各第一边缘节点中确定出下一个资源返回周期中需要被使用到的边缘节点分别可以为哪些,其中,该些被确定出来进行使用的边缘节点即为各第二边缘节点。
可选的,所述终端基于所述各第一边缘节点各自对所述目标资源的第一返回量,确定各第二边缘节点,包括:所述终端基于所述各第一边缘节点各自对所述目标资源的第一返回量,确定各第二边缘节点及各第二边缘节点各自对应的对所述目标资源的第二返回量;所述各第二边缘节点的第二返回量不完全相同。
例如,前述例子中,终端在获取到各第一边缘节点(指边缘节点1,边缘节点2,边缘节点3,边缘节点4和边缘节点5)各自的传输速率后,那么终端可依据预设的传输速率与资源数据量之间的对应关系,确定各个第一边缘节点在下一个资源返回周期中能够向终端返回的资源的大小。其中,资源数据量与传输速率之间呈正相关,也即,传输速率越大,则资源数据量也相对较大。此外,传输速率与资源数据量之间的对应关系可以为传输速率与资源数据量一一对应,也可以为属于一定区间范围的多个传输速率,将对应于同一个资源数据量,本申请对传输速率与资源数据量之间的对应关系的建立不做具体限定。
可选的,所述根据所述各第一边缘节点的传输速率,确定出各第二边缘节点,包括:在历史最近的一个资源返回周期中,针对所述各第一边缘节点中的任一个第一边缘节点,所述终端根据所述第一边缘节点的传输速率确定所述第一边缘节点对所述目标资源的第二返回量;所述终端从所述各第一边缘节点中确定出N个第一边缘节点;其中,所述N个第一边缘节点各自对所述目标资源的第二返回量的总量用于实现所述缓存总量满足所述第二设定条件;所述终端将所述N个第一边缘节点作为所述各第二边缘节点。
例如,前述例子中,终端在确定边缘节点1,边缘节点2,边缘节点3,边缘节点4和边缘节点5分别在下一个资源返回周期中所能够返回的资源数据量后,那么针对位于当前资源返回周期之后的第一个资源返回周期(即当前资源返回周期的下一个资源返回周期),终端接下来将可基于各第一边缘节点的传输速率,确定各第一边缘节点在返回各自能够传输的资源数据量时,所需要耗费的传输时长。
进一步地,终端通过计算,可确定出在下一个资源返回周期中最少需要使用到多少个边缘节点来为自己提供资源下载服务,并使得该些被确定出来的边缘节点所返回的资源总量对终端本地的缓存总量能够满足第二设定条件。其中,第二设定条件可为本领域技术人员根据用户数据进行确定的,参考对第一设定条件的说明,本申请实施例中第二设定条件可以使用以时间为单位(如以s为单位)的滑动窗口进行表示,也可以使用资源的数据量为单位(如以bit为单位)的滑动窗口进行表示,对此本申请不做具体限定。第二设定条件用于表示缓存播放的最高要求,比如,本申请实施例所设置的该第二设定条件可被解释为:控制终端本地缓存一个设定时长/设定资源总量的资源(设定时长/设定资源总量可基于时间而滑动),从而在满足用户对视频资源进行流畅观看的需求时,且若发生用户中途选择不继续观看视频资源的突发状况时,此时所造成的网络资源浪费以及终端内存资源的浪费处于一个可承受的范围。如本申请实施例中将第一设定条件令为c2
可选的,所述各第一边缘节点的数量为M;所述终端从所述各第一边缘节点中确定出N个第一边缘节点,包括:所述终端将M个第一边缘节点的传输速率从高到低进行排序;所述终端在确定前N个第一边缘节点对应的第二返回量的总量用于实现所述缓存总量满足所述第二设定条件,但前N-1个第一边缘节点对应的第二返回量的总量无法用于实现所述缓存总量满足所述第二设定条件时,将所述N个第一边缘节点作为所述各第二边缘节点。
接着前述的例子,在终端确定最少需要多少个边缘节点才可使得该些边缘节点所返回的资源总量可以用于实现缓存总量满足第二设定条件时,终端可以对各第一边缘节点——边缘节点1,边缘节点2,边缘节点3,边缘节点4和边缘节点5,共5个第一边缘节点,按照传输速率从高到低的顺序进行排序,然后,以传输速率最高的第一边缘节点作为计算起点,计算在下一个资源返回周期中,究竟需要使用到传输速率由高到低的这5个边缘节点中的前几个边缘节点。可以参见如下计算公式:
Figure BDA0002945239390000231
其中,ni表示经排序后的第i个第一边缘节点在下一个资源返回周期中可以返回的资源分片的数量,si表示经排序后的第i个第一边缘节点的传输速率(本申请实施例中以Kbps为单位),a表示每一个资源分片的数据量(本申请实施例中以Byte为单位),c2表示第二设定条件(本申请实施例中以s为单位),数字8为(bit与Byte之间的)转换系数。本申请实施例中,由于具有5个第一边缘节点,因此i最大值可以取5。
通过该方式,在下一个资源返回周期中,可以实现由传输速率较高的若干个边缘节点来为终端提供服务,而非必须用到全部的边缘节点;此外,每一个提供服务的边缘节点向终端返回的资源分片的数据量是根据该边缘节点在历史资源返回周期中的传输速率进行确定的,传输速率大则资源分片的个数也相对较多,从而可以极大地减少每一个提供服务的边缘节点的I/O资源消耗及内存占用问题。
可选的,所述终端向所述各第二边缘节点发送针对所述目标资源的第二资源获取请求之后,还包括:所述终端基于所述各第二边缘节点对所述目标资源的第二返回量,确定所述目标资源的缓存总量满足第二设定条件时,停止向边缘节点发送资源获取请求。
如,终端通过计算确定出各第二边缘节点向终端返回的第二返回量的总量可以用于实现终端本地的缓存总量满足第二设定条件时,终端将不再向任一边缘节点发送资源获取请求,以及也不会向CDN1节点发送资源获取请求。
步骤203,所述终端向所述各第二边缘节点发送针对所述目标资源的第二资源获取请求。
在本步骤中,在终端中从第一边缘节点中确定出了第二边缘节点后,终端则可以向第二边缘节点发送第二资源获取请求。
基于该方案,视频点播场景下,终端通过向各第一边缘节点发送针对目标资源的第一资源获取请求,而后可根据各第一边缘节点对目标资源的第一返回量来确定各第二边缘节点,最后终端即可向各第二边缘节点发送针对目标资源的第二资源获取请求,而无须再向各第一边缘节点发送资源获取请求了。通过该方式,可以有效地减少终端对第一边缘节点的使用数量;进一步的,由于终端可通过向一些优质的边缘节点去集中请求数据,且每个优质的边缘节点向终端返回的针对目标资源的返回量较大,而避免继续向一些服务效果不太好的边缘节点请求数据,从而可以克服边缘节点I/O性能出现瓶颈的技术问题,并可以提升边缘节点的数据预读性能。
在本申请的某些实施中,所述终端向所述各第二边缘节点发送针对所述目标资源的第二资源获取请求之后,所述方法还包括:所述终端在确定所述缓存总量不满足所述第一设定条件后,向所述CDN节点发送第五资源获取请求。
例如,设在T2时刻,终端确定本地实际已缓存的资源总量并不满足第一设定条件,也即终端缓存的资源总量不满足播放流畅的要求了,那么此时为了可以尽快对终端本地实际缓存的资源进行补充,终端可向CDN1节点发送第五资源获取请求,从而基于CDN1节点向终端返回的第五返回量的视频资源,终端本地实际缓存的资源总量将又可再次地满足播放流畅的要求。
在本申请的某些实施中,所述终端与第三边缘节点建立心跳机制;所述心跳机制用于所述终端确定所述第三边缘节点的服务状态,所述第三边缘节点为所述各第一边缘节点中除去所述各第二边缘节点之外的边缘节点。
在前述例子中,若终端通过计算,确定传输速率由高到低的边缘节点依次为边缘节点1,边缘节点2,边缘节点3,边缘节点4和边缘节点5;进一步的,终端通过计算发现,在下一个资源返回周期中,只需要控制边缘节点1,边缘节点2和边缘节点3向自己返回资源,即可以使得本地实际缓存的资源总量满足第二设定条件,因此本申请实施例中的边缘节点1,边缘节点2和边缘节点3可称为第二边缘节点,边缘节点4和边缘节点5可称为第三边缘节点。从而,在终端分别向边缘节点1,边缘节点2和边缘节点3发送资源获取请求的同时,终端还将与边缘节点4和边缘节点5分别建立心跳机制。比如终端通过向边缘节点4和边缘节点5分别发送心跳消息,然后在边缘节点4和边缘节点5接收到心跳消息时,各自向终端返回心跳确认消息,从而可保证边缘节点4和边缘节点5始终与终端之间存在有效通讯。
可选的,所述终端向所述各第二边缘节点发送针对所述目标资源的第二资源获取请求之后,还包括:所述终端若确定存在处于不可服务状态的第二边缘节点,则根据所述第三边缘节点的传输速率,确定出用于替代所述处于不可服务状态的第二边缘节点的边缘节点。
如前述的例子,在终端控制传输速率较快的边缘节点1,边缘节点2和边缘节点3向自己返回视频资源时,若终端在预设时长(此预设时长可略大于终端为各个第二边缘节点分别确定的在新一轮的资源返回周期内的传输时长,其中,第二边缘节点不同,对应于该第二边缘节点的预设时长也随之改变)内并未接收到其中的一个或者多个第二边缘节点返回的视频资源,例如终端在对应于边缘节点3的预设时长内,并未接收到边缘节点3返回的视频资源,则表示边缘节点3这一第二边缘节点处于不可服务状态,则终端为了实现本地实际缓存的资源总量满足第二设定条件,那么终端可以从边缘节点4和边缘节点5这两个第三边缘节点中确定出可以用于替换边缘节点3的边缘节点。具体来说,可以通过以下两种方式实现对边缘节点3的替换:
方式1:终端可以使用本地已经存储的边缘节点4和边缘节点5这两个第三边缘节点在历史最近一次的资源返回周期中为终端提供服务时的传输速率,从边缘节点4和边缘节点5中确定出可用于替换边缘节点3的边缘节点,包括确定仅使用边缘节点4来为终端提供资源下载服务,还是确定需同时使用边缘节点4和边缘节点5来为终端提供资源下载服务。
方式2:终端为了避免边缘节点4和边缘节点5这两个第三边缘节点在未被使用的这段相对闲置时间中,两者的传输速率发生了变动,也即终端原先确定并存储的、有关于这两个第三边缘节点在历史最近一次的资源返回周期中向终端提供服务时的传输速率,并不能准确地用来表示它们在当前时刻的传输速率,为此,终端可以向边缘节点4和边缘节点5分别发送一个资源获取请求,以重新获取它们在当前时刻的传输速率。其中,终端向边缘节点4和边缘节点5分别发送的资源获取请求中所要求获取的资源数据量可以相同,也可以不同,本申请不做具体限定。
说明的是,本申请实施例中的资源请求方法在具有播放功能的设备中均可应用,不限于PC或者移动终端。具体的,可通过将数据下载模块封装成SDK(SoftwareDevelopment Kit,软件开发工具包)的形式,而嵌入到移动终端的播放器中。从而,在移动终端接收到用户触发的一资源播放指令时,更具体的,是移动终端中的播放器接收到该资源播放指令,则播放器可通过调用数据下载模块所对应的SDK的相应接口,将该资源播放指令所指示的视频资源的资源标识传入到数据下载模块,然后数据下载模块开启数据下载,并将下载完成的数据发送给播放器,以由播放器进行播放。
基于同样的构思,本申请实施例还提供一种终端,如图3所示,该终端包括:
资源获取请求发送单元301,用于向各第一边缘节点分别发送针对目标资源的第一资源获取请求。
确定单元302,用于基于所述各第一边缘节点各自对所述目标资源的第一返回量,确定各第二边缘节点。
资源获取请求发送单元301,还用于向所述各第二边缘节点发送针对所述目标资源的第二资源获取请求。
进一步地,对于该终端,确定单元302,具体用于:针对任一个第一边缘节点,根据所述第一边缘节点对所述目标资源的第一返回量,确定所述第一边缘节点的传输速率;若确定对所述目标资源的缓存总量满足第一设定条件,则根据所述各第一边缘节点的传输速率,确定出各第二边缘节点。
进一步地,对于该终端,资源获取请求发送单元301,还用于:基于所述各第二边缘节点对所述目标资源的第二返回量,确定所述目标资源的缓存总量满足第二设定条件时,停止向边缘节点发送资源获取请求。
进一步地,对于该终端,资源获取请求发送单元301,还用于:接收用户触发的资源播放指令;所述资源播放指令用于指示所述终端播放所述目标资源;向内容分发网络CDN节点发送针对所述目标资源的第三资源获取请求;接收第三返回量的所述目标资源;所述第三返回量用于标识所述缓存总量满足所述第一设定条件。
进一步地,对于该终端,资源获取请求发送单元301,还用于:在确定所述缓存总量满足所述第一设定条件后,向存储有所述目标资源的各边缘节点发送分别发送第四资源获取请求;所述第四资源获取请求用于指示各边缘节点向所述终端返回相同数量的第四返回量。
进一步地,对于该终端,确定单元302,具体用于:基于所述各第一边缘节点各自对所述目标资源的第一返回量,确定各第二边缘节点及各第二边缘节点各自对应的对所述目标资源的第二返回量;所述各第二边缘节点的第二返回量不完全相同。
进一步地,对于该终端,还包括边缘节点保活单元303;边缘节点保活单元303,用于:与第三边缘节点建立心跳机制;所述心跳机制用于所述终端确定所述第三边缘节点的服务状态,所述第三边缘节点为所述各第一边缘节点中除去所述各第二边缘节点之外的边缘节点。
进一步地,对于该终端,资源获取请求发送单元301,还用于:若确定存在处于不可服务状态的第二边缘节点,则根据所述第三边缘节点的传输速率,确定出用于替代所述处于不可服务状态的第二边缘节点的边缘节点。
进一步地,对于该终端,确定单元302,具体用于:在历史最近的一个资源返回周期中,针对所述各第一边缘节点中的任一个第一边缘节点,根据所述第一边缘节点的传输速率确定所述第一边缘节点对所述目标资源的第二返回量;从所述各第一边缘节点中确定出N个第一边缘节点;其中,所述N个第一边缘节点各自对所述目标资源的第二返回量的总量用于实现所述缓存总量满足所述第二设定条件;将所述N个第一边缘节点作为所述各第二边缘节点。
进一步地,对于该终端,所述各第一边缘节点的数量为M;确定单元302,具体用于:将M个第一边缘节点的传输速率从高到低进行排序;在确定前N个第一边缘节点对应的第二返回量的总量用于实现所述缓存总量满足所述第二设定条件,但前N-1个第一边缘节点对应的第二返回量的总量无法用于实现所述缓存总量满足所述第二设定条件时,将所述N个第一边缘节点作为所述各第二边缘节点。
本申请实施例提供了一种计算设备,该计算设备具体可以为桌面计算机、便携式计算机、智能手机、平板电脑、个人数字助理(Personal Digital Assistant,PDA)等。该计算设备可以包括中央处理器(Center Processing Unit,CPU)、存储器、输入/输出设备等,输入设备可以包括键盘、鼠标、触摸屏等,输出设备可以包括显示设备,如液晶显示器(Liquid Crystal Display,LCD)、阴极射线管(Cathode Ray Tube,CRT)等。
存储器,可以包括只读存储器(ROM)和随机存取存储器(RAM),并向处理器提供存储器中存储的程序指令和数据。在本申请实施例中,存储器可以用于存储资源请求方法的程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行资源请求方法。
本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行资源请求方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (13)

1.一种资源请求方法,其特征在于,包括:
终端向各第一边缘节点分别发送针对目标资源的第一资源获取请求;
所述终端基于所述各第一边缘节点各自对所述目标资源的第一返回量,确定各第二边缘节点;
所述终端向所述各第二边缘节点发送针对所述目标资源的第二资源获取请求。
2.如权利要求1所述的方法,其特征在于,
所述终端基于所述各第一边缘节点各自对所述目标资源的第一返回量,确定各第二边缘节点,包括:
针对任一个第一边缘节点,所述终端根据所述第一边缘节点对所述目标资源的第一返回量,确定所述第一边缘节点的传输速率;
所述终端若确定对所述目标资源的缓存总量满足第一设定条件,则根据所述各第一边缘节点的传输速率,确定出各第二边缘节点。
3.如权利要求1所述的方法,其特征在于,
所述终端向所述各第二边缘节点发送针对所述目标资源的第二资源获取请求之后,还包括:
所述终端基于所述各第二边缘节点对所述目标资源的第二返回量,确定所述目标资源的缓存总量满足第二设定条件时,停止向边缘节点发送资源获取请求。
4.如权利要求1所述的方法,其特征在于,
所述终端向各第一边缘节点分别发送针对目标资源的第一资源获取请求之前,还包括:
所述终端接收用户触发的资源播放指令;所述资源播放指令用于指示所述终端播放所述目标资源;
所述终端向内容分发网络CDN节点发送针对所述目标资源的第三资源获取请求;
所述终端接收第三返回量的所述目标资源;所述第三返回量用于标识所述缓存总量满足所述第一设定条件。
5.如权利要求4所述的方法,其特征在于,
所述终端向内容分发网络CDN节点发送针对所述目标资源的第三资源获取请求之后,还包括:
所述终端在确定所述缓存总量满足所述第一设定条件后,向存储有所述目标资源的各边缘节点发送分别发送第四资源获取请求;所述第四资源获取请求用于指示各边缘节点向所述终端返回相同数量的第四返回量。
6.如权利要求1-5任一项所述的方法,其特征在于,
所述终端基于所述各第一边缘节点各自对所述目标资源的第一返回量,确定各第二边缘节点,包括:
所述终端基于所述各第一边缘节点各自对所述目标资源的第一返回量,确定各第二边缘节点及各第二边缘节点各自对应的对所述目标资源的第二返回量;所述各第二边缘节点的第二返回量不完全相同。
7.如权利要求6所述的方法,其特征在于,
所述方法还包括:
所述终端与第三边缘节点建立心跳机制;所述心跳机制用于所述终端确定所述第三边缘节点的服务状态,所述第三边缘节点为所述各第一边缘节点中除去所述各第二边缘节点之外的边缘节点。
8.如权利要求7所述的方法,其特征在于,
所述终端向所述各第二边缘节点发送针对所述目标资源的第二资源获取请求之后,还包括:
所述终端若确定存在处于不可服务状态的第二边缘节点,则根据所述第三边缘节点的传输速率,确定出用于替代所述处于不可服务状态的第二边缘节点的边缘节点。
9.如权利要求2-5任一项所述的方法,其特征在于,
所述根据所述各第一边缘节点的传输速率,确定出各第二边缘节点,包括:
在历史最近的一个资源返回周期中,针对所述各第一边缘节点中的任一个第一边缘节点,所述终端根据所述第一边缘节点的传输速率确定所述第一边缘节点对所述目标资源的第二返回量;
所述终端从所述各第一边缘节点中确定出N个第一边缘节点;其中,所述N个第一边缘节点各自对所述目标资源的第二返回量的总量用于实现所述缓存总量满足所述第二设定条件;
所述终端将所述N个第一边缘节点作为所述各第二边缘节点。
10.如权利要求9所述的方法,其特征在于,所述各第一边缘节点的数量为M;
所述终端从所述各第一边缘节点中确定出N个第一边缘节点,包括:
所述终端将M个第一边缘节点的传输速率从高到低进行排序;
所述终端在确定前N个第一边缘节点对应的第二返回量的总量用于实现所述缓存总量满足所述第二设定条件,但前N-1个第一边缘节点对应的第二返回量的总量无法用于实现所述缓存总量满足所述第二设定条件时,将所述N个第一边缘节点作为所述各第二边缘节点。
11.一种终端,其特征在于,包括:
资源获取请求发送单元,用于向各第一边缘节点分别发送针对目标资源的第一资源获取请求;
确定单元,用于基于所述各第一边缘节点各自对所述目标资源的第一返回量,确定各第二边缘节点;
资源获取请求发送单元,还用于向所述各第二边缘节点发送针对所述目标资源的第二资源获取请求。
12.一种计算机设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于调用所述存储器中存储的计算机程序,按照获得的程序执行如权利要求1-10任一项所述的方法。
13.一种计算机可读存储介质,其特征在于,所述存储介质存储有程序,当所述程序在计算机上运行时,使得计算机实现执行如权利要求1-10任一项所述的方法。
CN202110193382.4A 2021-02-20 2021-02-20 一种资源请求方法及终端 Active CN112968959B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN202110193382.4A CN112968959B (zh) 2021-02-20 2021-02-20 一种资源请求方法及终端
PCT/CN2021/098480 WO2022174534A1 (zh) 2021-02-20 2021-06-04 一种资源请求方法及终端
EP21867920.7A EP4075691B1 (en) 2021-02-20 2021-06-04 Resource requesting method and terminal
US17/656,808 US11785075B2 (en) 2021-02-20 2022-03-28 Method for requesting resources and terminal

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110193382.4A CN112968959B (zh) 2021-02-20 2021-02-20 一种资源请求方法及终端

Publications (2)

Publication Number Publication Date
CN112968959A true CN112968959A (zh) 2021-06-15
CN112968959B CN112968959B (zh) 2022-11-04

Family

ID=76285275

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110193382.4A Active CN112968959B (zh) 2021-02-20 2021-02-20 一种资源请求方法及终端

Country Status (2)

Country Link
CN (1) CN112968959B (zh)
WO (1) WO2022174534A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113726847A (zh) * 2021-07-15 2021-11-30 阿里巴巴新加坡控股有限公司 网络***、网络切分***、网络切分方法及电子设备
CN113824689A (zh) * 2021-08-24 2021-12-21 北京百度网讯科技有限公司 边缘计算网络、数据传输方法、装置、设备和存储介质
CN114071173A (zh) * 2021-11-15 2022-02-18 北京百度网讯科技有限公司 直播调度方法及装置、***、电子设备和介质
WO2024082688A1 (zh) * 2022-10-20 2024-04-25 上海哔哩哔哩科技有限公司 礼物特效资源播放方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108415775A (zh) * 2018-03-06 2018-08-17 曲阜师范大学 一种基于服务质量的资源确定方法及***
CN108848530A (zh) * 2018-07-10 2018-11-20 网宿科技股份有限公司 一种获取网络资源的方法、装置及调度服务器
CN109298949A (zh) * 2018-12-04 2019-02-01 国网辽宁省电力有限公司大连供电公司 一种分布式文件***的资源调度***
CN109889569A (zh) * 2019-01-03 2019-06-14 网宿科技股份有限公司 Cdn服务调度方法及***
CN110213327A (zh) * 2019-04-23 2019-09-06 广东省智能制造研究所 一种基于边缘计算的资源调度方法、装置及***
CN110392094A (zh) * 2019-06-03 2019-10-29 网宿科技股份有限公司 一种获取业务数据的方法及融合cdn***

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102547395B (zh) * 2011-12-31 2014-02-26 上海聚力传媒技术有限公司 一种用于确定网络播放器的视频数据源的方法与设备
CN108259542B (zh) * 2016-12-29 2020-02-07 腾讯科技(深圳)有限公司 资源的传输方法和装置
CN106790689B (zh) * 2017-02-20 2020-08-04 网宿科技股份有限公司 基于对等网络的节点推荐方法、服务器和客户端
CN109347968B (zh) * 2018-11-07 2021-09-24 网宿科技股份有限公司 一种下载资源文件的数据块的方法、设备和***
CN109862065B (zh) * 2018-12-06 2021-09-14 北京字节跳动网络技术有限公司 文件下载方法、装置和电子设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108415775A (zh) * 2018-03-06 2018-08-17 曲阜师范大学 一种基于服务质量的资源确定方法及***
CN108848530A (zh) * 2018-07-10 2018-11-20 网宿科技股份有限公司 一种获取网络资源的方法、装置及调度服务器
CN109298949A (zh) * 2018-12-04 2019-02-01 国网辽宁省电力有限公司大连供电公司 一种分布式文件***的资源调度***
CN109889569A (zh) * 2019-01-03 2019-06-14 网宿科技股份有限公司 Cdn服务调度方法及***
CN110213327A (zh) * 2019-04-23 2019-09-06 广东省智能制造研究所 一种基于边缘计算的资源调度方法、装置及***
CN110392094A (zh) * 2019-06-03 2019-10-29 网宿科技股份有限公司 一种获取业务数据的方法及融合cdn***

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113726847A (zh) * 2021-07-15 2021-11-30 阿里巴巴新加坡控股有限公司 网络***、网络切分***、网络切分方法及电子设备
CN113726847B (zh) * 2021-07-15 2024-05-28 阿里巴巴创新公司 网络***、网络切分***、网络切分方法及电子设备
CN113824689A (zh) * 2021-08-24 2021-12-21 北京百度网讯科技有限公司 边缘计算网络、数据传输方法、装置、设备和存储介质
CN114071173A (zh) * 2021-11-15 2022-02-18 北京百度网讯科技有限公司 直播调度方法及装置、***、电子设备和介质
WO2024082688A1 (zh) * 2022-10-20 2024-04-25 上海哔哩哔哩科技有限公司 礼物特效资源播放方法及装置

Also Published As

Publication number Publication date
CN112968959B (zh) 2022-11-04
WO2022174534A1 (zh) 2022-08-25

Similar Documents

Publication Publication Date Title
CN112968959B (zh) 一种资源请求方法及终端
US8838823B2 (en) Performance aware peer-to-peer content-on-demand
US10271112B2 (en) System and method for dynamic adaptive video streaming using model predictive control
US10659832B1 (en) Dynamic bitrate selection for streaming media
CN109982159B (zh) 在线播放流媒体的方法和终端
US8078729B2 (en) Media streaming with online caching and peer-to-peer forwarding
US9521178B1 (en) Dynamic bandwidth thresholds
CN110933517B (zh) 码率切换方法、客户端和计算机可读存储介质
CN101473651B (zh) 用于性能知晓对等视频点播的接纳控制
CN106576198A (zh) 自适应比特率流送的***和方法
Jiang et al. Q-FDBA: improving QoE fairness for video streaming
CN115834556B (zh) 数据传输方法、***、设备、存储介质及程序产品
Zhao et al. Popularity-based and version-aware caching scheme at edge servers for multi-version VoD systems
CN101605242B (zh) 用于实现视频点播服务的方法、装置和***
CN111617466A (zh) 编码格式的确定方法、装置及云游戏的实现方法
EP4013006A1 (en) Method for playing on a player of a client device a content streamed in a network
CN112350998B (zh) 一种基于边缘计算的视频流传输方法
Nguyen et al. An adaptive streaming method of 360 videos over HTTP/2 protocol
CN111225243B (zh) 一种视频块调度方法及***
CN102821316A (zh) 一种基于对等计算核心算法改进的视频点播传输方法
Hlavacs et al. Hierarchical video patching with optimal server bandwidth
EP4075691B1 (en) Resource requesting method and terminal
CN114244843A (zh) 流媒体下载方法、电子设备及存储介质
Khan et al. Bandwidth Estimation Techniques for Relative'Fair'Sharing in DASH
CN117389711B (zh) 终端资源的调度方法、装置、终端及计算机可读存储介质

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