CN112073745A - 一种基于卡顿率的线路分配方法、装置及电子设备 - Google Patents

一种基于卡顿率的线路分配方法、装置及电子设备 Download PDF

Info

Publication number
CN112073745A
CN112073745A CN202010934829.4A CN202010934829A CN112073745A CN 112073745 A CN112073745 A CN 112073745A CN 202010934829 A CN202010934829 A CN 202010934829A CN 112073745 A CN112073745 A CN 112073745A
Authority
CN
China
Prior art keywords
line
rate
node
current
historical
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
CN202010934829.4A
Other languages
English (en)
Other versions
CN112073745B (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.)
Beijing Yiyi Education Information Consulting Co ltd
Original Assignee
Beijing Yiyi Education Information Consulting 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 Beijing Yiyi Education Information Consulting Co ltd filed Critical Beijing Yiyi Education Information Consulting Co ltd
Priority to CN202010934829.4A priority Critical patent/CN112073745B/zh
Publication of CN112073745A publication Critical patent/CN112073745A/zh
Application granted granted Critical
Publication of CN112073745B publication Critical patent/CN112073745B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management 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/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25808Management of client data
    • H04N21/25841Management of client data involving the geographical location of the client
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management 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/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25891Management of end-user data being end-user preferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/64Addressing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/64322IP
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring 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)
  • Databases & Information Systems (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Graphics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供了一种基于卡顿率的线路分配方法、装置及电子设备,其中,该方法包括:获取多个历史客户端上传的历史打点数据;根据历史IP地址确定历史客户端所属的地理位置信息,并建立卡顿率树;确定卡顿率树中相应节点的每条线路的卡顿率;获取当前客户端的当前IP地址,根据目标节点以及目标节点一跳和/或多跳的父节点的每条线路的卡顿率确定当前客户端在每条线路的当前卡顿率。通过本发明实施例提供的基于卡顿率的线路分配方法、装置及电子设备,基于卡顿率树和每个节点在每条线路的卡顿率,方便快速准确地确定当前客户端在每条线路的卡顿率。将最小的当前卡顿率所对应的线路作为当前客户端的首位线路,从而能有效保证第一条线路小概率卡顿。

Description

一种基于卡顿率的线路分配方法、装置及电子设备
技术领域
本发明涉及线路分配技术领域,具体而言,涉及一种基于卡顿率的线路分配方法、装置、电子设备及计算机可读存储介质。
背景技术
在线教育企业为用户提供在线直播课程,为了保证用户的直播质量,为用户提供了多条直播线路,以备某一线路出现卡顿,可以切到其它线路继续观看直播。多条线路是作为一个列表推送给客户端的,客户端会根据列表上的线路从头开始使用如果客户端检测到目前使用的线路出现了卡顿,会自动的切换到第二条线路,依次类推。因此,哪条线路作为第一条线路就尤为重要。
目前一般随机向客户端分配第一条线路,或者根据客户端上次使用的线路来设置本次的第一条线路。传统方案不能保证第一条线路出现卡顿的概率小,分配效果可能较差,易导致用户在观看直播过程中出现卡顿,影响用户体验。
发明内容
为解决现有方案不能保证第一条线路出现卡顿的概率小的技术问题,本发明实施例提供一种基于卡顿率的线路分配方法、装置、电子设备及计算机可读存储介质。
第一方面,本发明实施例提供了一种基于卡顿率的线路分配方法,包括:
获取多个历史客户端上传的历史打点数据,所述历史打点数据包括历史IP地址、线路标识、直播分片时长和卡顿标识;其中,每个线路标识对应唯一的线路;
根据所述历史IP地址确定所述历史客户端所属的地理位置信息,并根据所述地理位置信息的层级属性建立卡顿率树;所述卡顿率树的叶子节点对应所述历史IP地址;
根据与所述卡顿率树的节点相关的所述历史打点数据中的所述线路标识、直播分片时长和卡顿标识,确定所述卡顿率树中相应节点的每条线路的卡顿率;
获取当前客户端的当前IP地址,并将所述卡顿率树中与所述当前IP地址所属的地理位置信息相对应的节点作为目标节点,根据所述目标节点以及所述目标节点一跳和/或多跳的父节点的每条线路的卡顿率确定所述当前客户端在每条线路的当前卡顿率,并将最小的所述当前卡顿率所对应的线路作为所述当前客户端的首位线路。
第二方面,本发明实施例还提供了一种基于卡顿率的线路分配装置,包括:
获取模块,用于获取多个历史客户端上传的历史打点数据,所述历史打点数据包括历史IP地址、线路标识、直播分片时长和卡顿标识;其中,每个线路标识对应唯一的线路;
卡顿率树生成模块,用于根据所述历史IP地址确定所述历史客户端所属的地理位置信息,并根据所述地理位置信息的层级属性建立卡顿率树;所述卡顿率树的叶子节点对应所述历史IP地址;
卡顿率计算模块,用于根据与所述卡顿率树的节点相关的所述历史打点数据中的所述线路标识、直播分片时长和卡顿标识,确定所述卡顿率树中相应节点的每条线路的卡顿率;
当前处理模块,用于获取当前客户端的当前IP地址,并将所述卡顿率树中与所述当前IP地址所属的地理位置信息相对应的节点作为目标节点,根据所述目标节点以及所述目标节点一跳和/或多跳的父节点的每条线路的卡顿率确定所述当前客户端在每条线路的当前卡顿率,并将最小的所述当前卡顿率所对应的线路作为所述当前客户端的首位线路。
第三方面,本发明实施例提供了一种电子设备,包括总线、收发器、存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述收发器、所述存储器和所述处理器通过所述总线相连,所述计算机程序被所述处理器执行时实现上述任意一项所述的基于卡顿率的线路分配方法中的步骤。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的基于卡顿率的线路分配方法中的步骤。
本发明实施例提供的基于卡顿率的线路分配方法、装置、电子设备及计算机可读存储介质,基于地理位置相近的IP地址在同一线路上卡顿率相近的特性,能够生成卡顿率树,并基于历史打点数据确定每个节点在每条线路的卡顿率,方便快速准确地确定当前客户端在每条线路的卡顿率。在确定所有线路的当前卡顿率之后,即可确定哪条线路的卡顿率最小,并将最小的当前卡顿率所对应的线路作为当前客户端的首位线路,使得当前客户端接入服务器时可以优先使用该首位线路,即卡顿率最小的线路,从而能有效保证分配至该当前客户端的第一条线路出现卡顿的概率小,有效避免直播过程中出现卡顿。
附图说明
为了更清楚地说明本发明实施例或背景技术中的技术方案,下面将对本发明实施例或背景技术中所需要使用的附图进行说明。
图1示出了本发明实施例所提供的一种基于卡顿率的线路分配方法的流程图;
图2示出了本发明实施例所提供的基于卡顿率的线路分配方法中,卡顿率树的一种结构示意图;
图3示出了本发明实施例所提供的一种基于卡顿率的线路分配装置的结构示意图;
图4示出了本发明实施例所提供的一种用于执行基于卡顿率的线路分配方法的电子设备的结构示意图。
具体实施方式
在本发明实施例的描述中,所属技术领域的技术人员应当知道,本发明实施例可以实现为方法、装置、电子设备及计算机可读存储介质。因此,本发明实施例可以具体实现为以下形式:完全的硬件、完全的软件(包括固件、驻留软件、微代码等)、硬件和软件结合的形式。此外,在一些实施例中,本发明实施例还可以实现为在一个或多个计算机可读存储介质中的计算机程序产品的形式,该计算机可读存储介质中包含计算机程序代码。
上述计算机可读存储介质可以采用一个或多个计算机可读存储介质的任意组合。计算机可读存储介质包括:电、磁、光、电磁、红外或半导体的系统、装置或器件,或者以上任意的组合。计算机可读存储介质更具体的例子包括:便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)、闪存(Flash Memory)、光纤、光盘只读存储器(CD-ROM)、光存储器件、磁存储器件或以上任意组合。在本发明实施例中,计算机可读存储介质可以是任意包含或存储程序的有形介质,该程序可以被指令执行系统、装置、器件使用或与其结合使用。
上述计算机可读存储介质包含的计算机程序代码可以用任意适当的介质传输,包括:无线、电线、光缆、射频(Radio Frequency,RF)或者以上任意合适的组合。
可以以汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、集成电路配置数据或以一种或多种程序设计语言或其组合来编写用于执行本发明实施例操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言,例如:Java、Smalltalk、C++,还包括常规的过程式程序设计语言,例如:C语言或类似的程序设计语言。计算机程序代码可以完全的在用户计算机上执行、部分的在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行以及完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括:局域网(LAN)或广域网(WAN),可以连接到用户计算机,也可以连接到外部计算机。
本发明实施例通过流程图和/或方框图描述所提供的方法、装置、电子设备。
应当理解,流程图和/或方框图的每个方框以及流程图和/或方框图中各方框的组合,都可以由计算机可读程序指令实现。这些计算机可读程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,从而生产出一种机器,这些计算机可读程序指令通过计算机或其他可编程数据处理装置执行,产生了实现流程图和/或方框图中的方框规定的功能/操作的装置。
也可以将这些计算机可读程序指令存储在能使得计算机或其他可编程数据处理装置以特定方式工作的计算机可读存储介质中。这样,存储在计算机可读存储介质中的指令就产生出一个包括实现流程图和/或方框图中的方框规定的功能/操作的指令装置产品。
也可以将计算机可读程序指令加载到计算机、其他可编程数据处理装置或其他设备上,使得在计算机、其他可编程数据处理装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机或其他可编程数据处理装置上执行的指令能够提供实现流程图和/或方框图中的方框规定的功能/操作的过程。
下面结合本发明实施例中的附图对本发明实施例进行描述。
图1示出了本发明实施例所提供的一种基于卡顿率的线路分配方法的流程图。该线路分配方法可以由推流服务器等服务器执行,如图1所示,该方法包括:
步骤101:获取多个历史客户端上传的历史打点数据,历史打点数据包括历史IP地址、线路标识、直播分片时长和卡顿标识;其中,每个线路标识对应唯一的线路。
本发明实施例中,客户端在观看直播视频流时,客户端会定期往服务端上报打点数据,该打点数据具体包括IP地址、当前时间、线路标识、当前的直播时长(单位一般为毫秒)、是否卡顿等,本实施例中基于打点数据中的线路标识、直播时长和卡顿标识进行后续处理。其中,客户端可以每隔一段时间周期性上传打点数据,或者当客户端在卡顿与不卡顿之间切换时上传打点数据,使得该打点数据为分片数据,打点数据中的直播时长也为直播分片时长。
例如,一种打点数据的格式可以为:{“ip”:“10.200.241.119”,“line”:“ws”,“duration”:3451,“lag”:0…}。其中,ip为客户端的IP地址;line为客户端当前正在使用的线路,即客户端正在使用线路ws,“ws”即为该线路的线路标识;duration为客户端当前的直播时长分片大小,单位为毫秒,其也可以表示当前分片的大小,即用户从起始时间开始观看了这些时长的视频;lag字段表示是否卡顿,如果为0代表流畅,如果为1代表卡顿,此时的duration也可以表示卡顿或者流畅的分片时长。在用户观看直播的过程中,如果用户的客户端(主动或者被动)切换了线路,那么该客户端后续上传的打点数据中,线路“line”对应的值会根据线路切换情况相应改变,如从线路ws切换至线路tx。
本发明实施例中,历史客户端为之前上传打点数据的客户端,相应地,历史客户端上传的历史打点数据也包含IP地址、线路标识、直播分片时长和卡顿标识等,其中的IP地址即为上述的历史IP地址。每个历史客户端可以向服务器上传一条或多条打点数据。
步骤102:根据历史IP地址确定历史客户端所属的地理位置信息,并根据地理位置信息的层级属性建立卡顿率树;卡顿率树的叶子节点对应历史IP地址。
本发明实施例中,历史IP地址可以一定程度上表示历史客户端的地理位置;例如,可以根据现有的IP库查询每个历史IP地址的地理位置,从而可以确定相应的地理位置信息。同时,在实现本发明创造的过程中,申请人发现,由于公用的网段多,则网络情况更加相近;而地理位置上相近的两个IP公用的网段多,二者在同一条线路上的卡顿率相近。因此,可以根据地理位置信息可以对所有的历史IP地址进行分组,且由于地理位置信息具有层级属性,可以对所有的历史IP地址进行多层级分组,并以树状结构表示。具体地,地理位置信息的层级属性指的是按照行政区域划分对地理位置信息进行分层级后所确定的属性,例如“中国北京市顺义区”可以依次分为三个层级:“中国”、“北京市”和“顺义区”。因此,可以以树状结构表示地理位置信息,本实施例中将该树状结构称为卡顿率树;同时,将历史IP地址作为该卡顿率树的叶子节点,使得该卡顿率树可以细化到每个IP地址。
此外可选地,上述步骤“根据地理位置信息的层级属性建立卡顿率树”具体可以包括:
步骤A1:根据所述历史IP地址确定历史客户端所属的运营商。
步骤A2:根据地理位置信息的层级属性和历史客户端所属的运营商建立卡顿率树,且运营商对应的节点为叶子节点的父节点。
本发明实施例中,由于地理位置相近的同一运营商的两个IP地址的卡顿率也相近,故也可以将运营商作为卡顿率树的一层;而不同地理位置的同一运营商的两个IP地址的卡顿率之间并无关联关系,故本实施例中将运营商作为卡顿率树的倒数第二层级,即运营商对应的节点为叶子节点的父节点,使得对运营商这一节点进行统计时,是在同一个地理位置这一条件下进行的。
卡顿率树的一种结构可参见图2所示,以中国国内的客户端为例,图2中卡顿率树的根节点为“中国”,叶子节点为所有历史IP地址,倒数第二层为运营商层,包括移动、联通、电信等,剩下的所有层均为基于地理位置信息确定的地理区域。此外,由于每个历史IP地址可以使用多个线路,例如线路ws、tx、bs等,图2中的ws、tx、bs所在的层并不表示其为卡顿率树的一个层级,其只是表示该历史IP节点涉及ws、tx、bs多条线路,且需要确定ws、tx、bs每条线路的卡顿率;此外,卡顿率树中每个节点也均涉及如ws、tx、bs等多个线路,只是图2中未示出。
步骤103:根据与卡顿率树的节点相关的历史打点数据中的线路标识、直播分片时长和卡顿标识,确定卡顿率树中相应节点的每条线路的卡顿率。
本发明实施例中,由于历史客户端在观看直播的过程中,会上传多个历史打点数据,故卡顿率树中每个节点均涉及多个历史打点数据;此时对于一个节点,根据历史打点数据的线路标识进行分类,可以确定每条线路对应的历史打点数据,进而基于直播分片时长和卡顿标识可以确定相应线路的卡顿率。其中,“与卡顿率树的节点相关的历史打点数据”指的是地理位置信息与从卡顿率树的根节点到该节点的路径相匹配的历史打点数据。如图2所示,在计算节点“海阳”每条线路的卡顿率时,地理位置信息中包含“中国烟台海阳”的所有历史打点数据均为与该节点相关的历史打点数据,如“中国烟台海阳移动”、“中国烟台海阳联通”等,进而可以确定该节点“海阳”在ws、tx、bs等线路上的卡顿率。
步骤104:获取当前客户端的当前IP地址,并将卡顿率树中与当前IP地址所属的地理位置信息相对应的节点作为目标节点,根据目标节点以及目标节点一跳和/或多跳的父节点的每条线路的卡顿率确定当前客户端在每条线路的当前卡顿率,并将最小的当前卡顿率所对应的线路作为当前客户端的首位线路。
本发明实施例中,如上述所述,卡顿率树中每个节点均记录有相应线路的卡顿率。若某客户端需要接入服务器时,则可基于该卡顿率树来确定该客户端的卡顿率,本实施例中将当前需要接入服务器的客户端称为当前客户端。具体地,当前客户端在发起接入请求时,可以上传自己的IP地址,即当前IP地址;或者当前客户端也可上传包含IP地址的打点数据,本实施例对获取当前IP地址的方式不做限定。在获取到当前IP地址之后,即可基于IP地址库等确定该当前IP地址所属的地理位置信息,进而可以确定卡顿率树中与该当前客户端相对应的节点,为方便后续描述,本实施例中将该节点称为目标节点。其中,由于该当前IP地址可以对应卡顿率树中的多个节点,本实施例中其对应的最底层的节点作为目标节点。如图2所示,若当前IP地址为IP3,则目标节点即为节点“IP3”;若当前IP地址为卡顿率树中不存在的IP7,当其地理位置信息为“山东烟台海阳移动”,则该IP7的目标节点为图2中所示路径“山东烟台海阳移动”中的节点“移动”。
同时,在确定当前客户端的卡顿率(即当前卡顿率)时,为了提高准确率,本实施例基于目标节点的卡顿率和目标节点的父节点的卡顿率进行计算。该目标节点的父节点指的是目标节点一跳或多跳的父节点;其中,目标节点n跳的父节点指的是与该目标节点之间的路径距离为n的父节点,即与目标节点相邻的父节点,如图2中,“IP3”的一跳父节点为“移动”,二跳父节点为该一跳父节点的相邻的父节点,即“海阳”,三跳父节点为“烟台”,以此类推。
在确定所有线路的当前卡顿率之后,即可确定哪条线路的卡顿率最小,并将最小的当前卡顿率所对应的线路作为当前客户端的首位线路,使得当前客户端接入服务器时可以优先使用该首位线路,即卡顿率最小的线路,从而能有效保证分配至该当前客户端的第一条线路(即首位线路)出现卡顿的概率小,有效避免直播过程中出现卡顿。
可选地,上述步骤“将最小的当前卡顿率所对应的线路作为当前客户端的首位线路”包括:根据当前客户端在每条线路的当前卡顿率按照从小到大的顺序进行排序,确定相应的线路顺序,并将线路顺序推送至当前客户端;线路顺序的第一位线路为首位线路。本实施例中,在向当前客户端推送首位线路的同时,还可以将次位线路、第三位线路等形成线路顺序,并将线路顺序一并推送到当前客户端,供当前客户端切换使用。例如当前存在三条线路ws、tx、bs,若线路tx的卡顿率最小,ws次之,bs卡顿率最大,则线路顺序为tx、ws、bs,其中的线路tx即为首位线路。
可选地,上述步骤“根据目标节点以及目标节点一跳和/或多跳的父节点的每条线路的卡顿率确定当前客户端在每条线路的当前卡顿率”包括:
步骤B1:确定目标节点每条线路的卡顿率,以及目标节点的父节点每条线路的的卡顿率,目标节点的父节点包括目标节点一跳和/或多跳的父节点。
步骤B2:对目标节点每条线路的卡顿率以及目标节点的父节点相应线路的卡顿率进行加权求和处理,确定相应线路的当前卡顿率。
本发明实施例中,在确定目标节点以及相应父节点的卡顿率之后,以加权求和的方式确定每条线路的卡顿率。如图2所示,若目标节点为“IP3”,所有节点均涉及ws、tx、bs三条线路;假设节点“IP3”三条线路的卡顿率分别为0.123、0.102、0.204,以数组表示为[0.123,0.102,0.204];其一跳节点“移动”三条线路的卡顿率数组为[0.112,0.136,0.184],二跳父节点“海阳”三条线路的卡顿率数组为[0.131,0.126,0.144]。加权求和处理过程即为:a×[0.123,0.102,0.204]+b×[0.112,0.136,0.184]+c×[0.131,0.126,0.144],从而可以确定每条线路的当前卡顿率。其中,为了a、b、c为预设的权重值,且a+b+c=1;一般情况下,距离目标节点越近的节点,其权重值越大,即a>b>c,如a=0.7,b=0.2,c=0.1。
本发明实施例提供的一种基于卡顿率的线路分配方法,基于地理位置相近的IP地址在同一线路上卡顿率相近的特性,能够生成卡顿率树,并基于历史打点数据确定每个节点在每条线路的卡顿率,方便快速准确地确定当前客户端在每条线路的卡顿率。在确定所有线路的当前卡顿率之后,即可确定哪条线路的卡顿率最小,并将最小的当前卡顿率所对应的线路作为当前客户端的首位线路,使得当前客户端接入服务器时可以优先使用该首位线路,即卡顿率最小的线路,从而能有效保证分配至该当前客户端的第一条线路出现卡顿的概率小,有效避免直播过程中出现卡顿。
在上述实施例的基础上,步骤103“根据与卡顿率树的节点相关的历史打点数据中的线路标识、直播分片时长和卡顿标识,确定卡顿率树中相应节点的每条线路的卡顿率”具体包括:
步骤C1:将与卡顿率树的待定节点相关的历史打点数据作为目标打点数据。
本发明实施例中,待定节点指的是需要确定卡顿率的节点,目标打点数据指的是与该待定节点相关的历史打点数据。具体地,若某历史打点数据的地理位置信息与从卡顿率树的根节点到该待定节点的路径相匹配,则该历史打点数据即可作为该待定节点的目标打点数据。
步骤C2:根据目标打点数据的线路标识、直播分片时长和卡顿标识确定待定节点的每条线路的卡顿时长比和/或卡顿次数比,并根据卡顿时长比和/或卡顿次数比确定待定节点的每条线路的卡顿率。
其中,第k条线路的卡顿次数比xk为:
Figure BDA0002671563350000111
mk表示与第k条线路的线路标识对应的、卡顿标识表示卡顿的所有目标打点数据的数量,nk表示与第k条线路的线路标识对应的所有目标打点数据的数量。
第k条线路的卡顿时长比yk为:
Figure BDA0002671563350000112
其中,
Figure BDA0002671563350000113
表示与第k条线路的线路标识对应的、卡顿标识表示卡顿的所有目标打点数据中,第j个目标打点数据的直播分片时长;Dk,i表示与第k条线路的线路标识对应的所有目标打点数据中,第i个目标打点数据的直播分片时长。
本发明实施例中,每个待定节点对应多条线路,每条线路均具有相应的卡顿率,本实施例预先确定每条线路的卡顿时长比和/或卡顿次数比,基于该卡顿时长比和/或卡顿次数比来确定相应线路的卡顿率。例如,可以将卡顿时长比yk直接作为相应线路的卡顿率,或者,将卡顿次数比xk直接作为相应线路的卡顿率,或者把卡顿时长比yk和卡顿次数比xk的加权求和结果作为相应线路的卡顿率。由于卡顿率树中的每个节点均可作为待定节点,基于上述过程可以确定卡顿率树中每个节点每条线路的卡顿率。
本发明实施例中,由于目标打点数据本质上仍然是一个历史打点数据,其包含线路标识、直播分片时长和卡顿标识等,故在确定每条线路的卡顿率时,需要基于线路标识对目标打点数据进行分类,进而基于每条线路的线路标识对应的所有目标打点数据来确定相应线路的卡顿次数比、卡顿时长比。
具体地,该待定节点的目标打点数据中,共有nk个与第k条线路的线路标识对应的目标打点数据;在这nk个目标打点数据中,共有mk个目标打点数据的卡顿标识表示卡顿,即lag=1。此时,对于该第k条线路,其卡顿次数比xk为:
Figure BDA0002671563350000121
此外,在上述的nk个目标打点数据中,每个目标打点数据均包含直播分片时长,本实施例以Dk,i表示其中第i个目标打点数据的直播分片时长,故该nk个直播分片时长之和可以
Figure BDA0002671563350000122
表示直播总时长。同样的,上述的mk个卡顿的目标打点数据中,第j个目标打点数据的直播分片时长用
Figure BDA0002671563350000123
表示,mk个上述的直播分片时长之和
Figure BDA0002671563350000124
即可表示卡顿的总时长,二者的比值即可作为卡顿时长比yk
在上述实施例的基础上,该方法还包括:
步骤D1:获取当前客户端上传的当前打点数据,当前打点数据包括当前线路标识、当前直播分片时长和当前卡顿标识。
本发明实施例中,当前客户端在观看直播时,也会上传打点数据,即当前打点数据,其包含线路标识、直播分片时长和卡顿标识等,即当前线路标识、当前直播分片时长和当前卡顿标识。其中,该步骤D1可以在步骤“获取当前客户端的当前IP地址”之后执行。
步骤D2:根据当前直播分片时长和当前卡顿标识,更新目标节点和目标节点的所有父节点中与当前线路标识对应的线路的卡顿率。
本发明实施例中,在获取到当前客户端的当前打点数据之后,即可将该当前打点数据也作为一种历史打点数据,基于该当前打点数据来更新相应节点的卡顿率。此外,由于当前节点只涉及卡顿率树中的部分节点,即上述的目标节点以及该目标节点的所有父节点,此时只对部分节点进行更新即可。如图2所示,若当前客户端的IP地址为IP3,其目标节点为“IP3”,此时可以根据该当前客户端上传的当前打点数据更新节点“IP3”、“移动”、“海阳”、“烟台”、“中国”的卡顿率。其中,具体可按照上述步骤C1-C2的过程来更新卡顿率。
本发明实施例提供的一种基于卡顿率的线路分配方法,基于地理位置相近的IP地址在同一线路上卡顿率相近的特性,能够生成卡顿率树,并基于历史打点数据确定每个节点在每条线路的卡顿率,方便快速准确地确定当前客户端在每条线路的卡顿率。在确定所有线路的当前卡顿率之后,即可确定哪条线路的卡顿率最小,并将最小的当前卡顿率所对应的线路作为当前客户端的首位线路,使得当前客户端接入服务器时可以优先使用该首位线路,即卡顿率最小的线路,从而能有效保证分配至该当前客户端的第一条线路出现卡顿的概率小,有效避免直播过程中出现卡顿。基于目标打点数据可以快速确定待定节点每条线路的卡顿时长比、卡顿次数比,进而可以快速确定相应的卡顿率。同时基于当前客户端上传的当前打点数据更新相应节点的卡顿率,使得卡顿率树中记录的卡顿率能够实时更新。
上文详细描述了本发明实施例提供的基于卡顿率的线路分配方法,该方法也可以通过相应的装置实现,下面详细描述本发明实施例提供的基于卡顿率的线路分配装置。
图3示出了本发明实施例所提供的一种基于卡顿率的线路分配装置的结构示意图。如图3所示,该基于卡顿率的线路分配装置包括:
获取模块31,用于获取多个历史客户端上传的历史打点数据,所述历史打点数据包括历史IP地址、线路标识、直播分片时长和卡顿标识;其中,每个线路标识对应唯一的线路;
卡顿率树生成模块32,用于根据所述历史IP地址确定所述历史客户端所属的地理位置信息,并根据所述地理位置信息的层级属性建立卡顿率树;所述卡顿率树的叶子节点对应所述历史IP地址;
卡顿率计算模块33,用于根据与所述卡顿率树的节点相关的所述历史打点数据中的所述线路标识、直播分片时长和卡顿标识,确定所述卡顿率树中相应节点的每条线路的卡顿率;
当前处理模块34,用于获取当前客户端的当前IP地址,并将所述卡顿率树中与所述当前IP地址所属的地理位置信息相对应的节点作为目标节点,根据所述目标节点以及所述目标节点一跳和/或多跳的父节点的每条线路的卡顿率确定所述当前客户端在每条线路的当前卡顿率,并将最小的所述当前卡顿率所对应的线路作为所述当前客户端的首位线路。
在上述实施例的基础上,所述卡顿率树生成模块32根据所述地理位置信息的层级属性建立卡顿率树包括:
根据所述历史IP地址确定所述历史客户端所属的运营商;
根据所述地理位置信息的层级属性和所述历史客户端所属的运营商建立卡顿率树,且所述运营商对应的节点为所述叶子节点的父节点。
在上述实施例的基础上,所述卡顿率计算模块33根据与所述卡顿率树的节点相关的所述历史打点数据中的所述线路标识、直播分片时长和卡顿标识,确定所述卡顿率树中相应节点的每条线路的卡顿率,包括:
将与所述卡顿率树的待定节点相关的所述历史打点数据作为目标打点数据;
根据所述目标打点数据的所述线路标识、直播分片时长和卡顿标识确定所述待定节点的每条线路的卡顿时长比和/或卡顿次数比,并根据所述卡顿时长比和/或所述卡顿次数比确定所述待定节点的每条线路的卡顿率;
其中,第k条线路的所述卡顿次数比xk为:
Figure BDA0002671563350000141
mk表示与第k条线路的所述线路标识对应的、所述卡顿标识表示卡顿的所有所述目标打点数据的数量,nk表示与第k条线路的所述线路标识对应的所有所述目标打点数据的数量;
第k条线路的所述卡顿时长比yk为:
Figure BDA0002671563350000151
其中,
Figure BDA0002671563350000152
表示与第k条线路的所述线路标识对应的、所述卡顿标识表示卡顿的所有所述目标打点数据中,第j个所述目标打点数据的直播分片时长;Dk,i表示与第k条线路的所述线路标识对应的所有所述目标打点数据中,第i个所述目标打点数据的直播分片时长。
在上述实施例的基础上,所述当前处理模块34根据所述目标节点以及所述目标节点一跳和/或多跳的父节点的每条线路的卡顿率确定所述当前客户端在每条线路的当前卡顿率,包括:
确定所述目标节点每条线路的卡顿率,以及所述目标节点的父节点每条线路的的卡顿率,所述目标节点的父节点包括所述目标节点一跳和/或多跳的父节点;
对所述目标节点每条线路的卡顿率以及所述目标节点的父节点相应线路的卡顿率进行加权求和处理,确定相应线路的当前卡顿率。
在上述实施例的基础上,该装置还包括:更新模块;所述更新模块用于:
获取当前客户端上传的当前打点数据,所述当前打点数据包括当前线路标识、当前直播分片时长和当前卡顿标识;
根据所述当前直播分片时长和所述当前卡顿标识,更新所述目标节点和所述目标节点的所有父节点中与所述当前线路标识对应的线路的卡顿率。
在上述实施例的基础上,所述当前处理模块34将最小的所述当前卡顿率所对应的线路作为所述当前客户端的首位线路,包括:
根据所述当前客户端在每条线路的当前卡顿率按照从小到大的顺序进行排序,确定相应的线路顺序,并将所述线路顺序推送至所述当前客户端;所述线路顺序的第一位线路为所述首位线路。
本发明实施例提供的一种基于卡顿率的线路分配装置,基于地理位置相近的IP地址在同一线路上卡顿率相近的特性,能够生成卡顿率树,并基于历史打点数据确定每个节点在每条线路的卡顿率,方便快速准确地确定当前客户端在每条线路的卡顿率。在确定所有线路的当前卡顿率之后,即可确定哪条线路的卡顿率最小,并将最小的当前卡顿率所对应的线路作为当前客户端的首位线路,使得当前客户端接入服务器时可以优先使用该首位线路,即卡顿率最小的线路,从而能有效保证分配至该当前客户端的第一条线路出现卡顿的概率小,有效避免直播过程中出现卡顿。基于目标打点数据可以快速确定待定节点每条线路的卡顿时长比、卡顿次数比,进而可以快速确定相应的卡顿率。同时基于当前客户端上传的当前打点数据更新相应节点的卡顿率,使得卡顿率树中记录的卡顿率能够实时更新。
此外,本发明实施例还提供了一种电子设备,包括总线、收发器、存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,该收发器、该存储器和处理器分别通过总线相连,计算机程序被处理器执行时实现上述基于卡顿率的线路分配方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
具体的,参见图4所示,本发明实施例还提供了一种电子设备,该电子设备包括总线1110、处理器1120、收发器1130、总线接口1140、存储器1150和用户接口1160。
在本发明实施例中,该电子设备还包括:存储在存储器1150上并可在处理器1120上运行的计算机程序,计算机程序被处理器1120执行时实现上述基于卡顿率的线路分配方法实施例的各个过程。
收发器1130,用于在处理器1120的控制下接收和发送数据。
本发明实施例中,总线架构(用总线1110来代表),总线1110可以包括任意数量互联的总线和桥,总线1110将包括由处理器1120代表的一个或多个处理器与存储器1150代表的存储器的各种电路连接在一起。
总线1110表示若干类型的总线结构中的任何一种总线结构中的一个或多个,包括存储器总线以及存储器控制器、外围总线、加速图形端口(Accelerate Graphical Port,AGP)、处理器或使用各种总线体系结构中的任意总线结构的局域总线。作为示例而非限制,这样的体系结构包括:工业标准体系结构(Industry Standard Architecture,ISA)总线、微通道体系结构(Micro Channel Architecture,MCA)总线、扩展ISA(Enhanced ISA,EISA)总线、视频电子标准协会(Video Electronics Standards Association,VESA)、外围部件互连(Peripheral Component Interconnect,PCI)总线。
处理器1120可以是一种集成电路芯片,具有信号处理能力。在实现过程中,上述方法实施例的各步骤可以通过处理器中硬件的集成逻辑电路或软件形式的指令完成。上述的处理器包括:通用处理器、中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(FieldProgrammable Gate Array,FPGA)、复杂可编程逻辑器件(Complex Programmable LogicDevice,CPLD)、可编程逻辑阵列(Programmable Logic Array,PLA)、微控制单元(Microcontroller Unit,MCU)或其他可编程逻辑器件、分立门、晶体管逻辑器件、分立硬件组件。可以实现或执行本发明实施例中公开的各方法、步骤及逻辑框图。例如,处理器可以是单核处理器或多核处理器,处理器可以集成于单颗芯片或位于多颗不同的芯片。
处理器1120可以是微处理器或任何常规的处理器。结合本发明实施例所公开的方法步骤可以直接由硬件译码处理器执行完成,或者由译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存取存储器(Random Access Memory,RAM)、闪存(FlashMemory)、只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、寄存器等本领域公知的可读存储介质中。所述可读存储介质位于存储器中,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
总线1110还可以将,例如外围设备、稳压器或功率管理电路等各种其他电路连接在一起,总线接口1140在总线1110和收发器1130之间提供接口,这些都是本领域所公知的。因此,本发明实施例不再对其进行进一步描述。
收发器1130可以是一个元件,也可以是多个元件,例如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。例如:收发器1130从其他设备接收外部数据,收发器1130用于将处理器1120处理后的数据发送给其他设备。取决于计算机系统的性质,还可以提供用户接口1160,例如:触摸屏、物理键盘、显示器、鼠标、扬声器、麦克风、轨迹球、操纵杆、触控笔。
应理解,在本发明实施例中,存储器1150可进一步包括相对于处理器1120远程设置的存储器,这些远程设置的存储器可以通过网络连接至服务器。上述网络的一个或多个部分可以是自组织网络(ad hoc network)、内联网(intranet)、外联网(extranet)、虚拟专用网(VPN)、局域网(LAN)、无线局域网(WLAN)、广域网(WAN)、无线广域网(WWAN)、城域网(MAN)、互联网(Internet)、公共交换电话网(PSTN)、普通老式电话业务网(POTS)、蜂窝电话网、无线网络、无线保真(Wi-Fi)网络以及两个或更多个上述网络的组合。例如,蜂窝电话网和无线网络可以是全球移动通信(GSM)系统、码分多址(CDMA)系统、全球微波互联接入(WiMAX)系统、通用分组无线业务(GPRS)系统、宽带码分多址(WCDMA)系统、长期演进(LTE)系统、LTE频分双工(FDD)系统、LTE时分双工(TDD)系统、先进长期演进(LTE-A)系统、通用移动通信(UMTS)系统、增强移动宽带(Enhance Mobile Broadband,eMBB)系统、海量机器类通信(massive Machine Type of Communication,mMTC)系统、超可靠低时延通信(UltraReliable Low Latency Communications,uRLLC)系统等。
应理解,本发明实施例中的存储器1150可以是易失性存储器或非易失性存储器,或可包括易失性存储器和非易失性存储器两者。其中,非易失性存储器包括:只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存(Flash Memory)。
易失性存储器包括:随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如:静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data RateSDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(DirectRambus RAM,DRRAM)。本发明实施例描述的电子设备的存储器1150包括但不限于上述和任意其他适合类型的存储器。
在本发明实施例中,存储器1150存储了操作系统1151和应用程序1152的如下元素:可执行模块、数据结构,或者其子集,或者其扩展集。
具体而言,操作系统1151包含各种系统程序,例如:框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序1152包含各种应用程序,例如:媒体播放器(Media Player)、浏览器(Browser),用于实现各种应用业务。实现本发明实施例方法的程序可以包含在应用程序1152中。应用程序1152包括:小程序、对象、组件、逻辑、数据结构以及其他执行特定任务或实现特定抽象数据类型的计算机系统可执行指令。
此外,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述基于卡顿率的线路分配方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
计算机可读存储介质包括:永久性和非永久性、可移动和非可移动媒体,是可以保留和存储供指令执行设备所使用指令的有形设备。计算机可读存储介质包括:电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备以及上述任意合适的组合。计算机可读存储介质包括:相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带存储、磁带磁盘存储或其他磁性存储设备、记忆棒、机械编码装置(例如在其上记录有指令的凹槽中的穿孔卡或凸起结构)或任何其他非传输介质、可用于存储可以被计算设备访问的信息。按照本发明实施例中的界定,计算机可读存储介质不包括暂时信号本身,例如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如穿过光纤电缆的光脉冲)或通过导线传输的电信号。
在本申请所提供的几个实施例中,应该理解到,所披露的装置、电子设备和方法,可以通过其他的方式实现。例如,以上描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的、机械的或其他的形式连接。
所述作为分离部件说明的单元可以是或也可以不是物理上分开的,作为单元显示的部件可以是或也可以不是物理单元,既可以位于一个位置,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或全部单元来解决本发明实施例方案要解决的问题。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术作出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(包括:个人计算机、服务器、数据中心或其他网络设备)执行本发明各个实施例所述方法的全部或部分步骤。而上述存储介质包括如前述所列举的各种可以存储程序代码的介质。
以上所述,仅为本发明实施例的具体实施方式,但本发明实施例的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明实施例披露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明实施例的保护范围之内。因此,本发明实施例的保护范围应以权利要求的保护范围为准。

Claims (10)

1.一种基于卡顿率的线路分配方法,其特征在于,包括:
获取多个历史客户端上传的历史打点数据,所述历史打点数据包括历史IP地址、线路标识、直播分片时长和卡顿标识;其中,每个线路标识对应唯一的线路;
根据所述历史IP地址确定所述历史客户端所属的地理位置信息,并根据所述地理位置信息的层级属性建立卡顿率树;所述卡顿率树的叶子节点对应所述历史IP地址;
根据与所述卡顿率树的节点相关的所述历史打点数据中的所述线路标识、直播分片时长和卡顿标识,确定所述卡顿率树中相应节点的每条线路的卡顿率;
获取当前客户端的当前IP地址,并将所述卡顿率树中与所述当前IP地址所属的地理位置信息相对应的节点作为目标节点,根据所述目标节点以及所述目标节点一跳和/或多跳的父节点的每条线路的卡顿率确定所述当前客户端在每条线路的当前卡顿率,并将最小的所述当前卡顿率所对应的线路作为所述当前客户端的首位线路。
2.根据权利要求1所述的方法,其特征在于,所述根据所述地理位置信息的层级属性建立卡顿率树包括:
根据所述历史IP地址确定所述历史客户端所属的运营商;
根据所述地理位置信息的层级属性和所述历史客户端所属的运营商建立卡顿率树,且所述运营商对应的节点为所述叶子节点的父节点。
3.根据权利要求1所述的方法,其特征在于,所述根据与所述卡顿率树的节点相关的所述历史打点数据中的所述线路标识、直播分片时长和卡顿标识,确定所述卡顿率树中相应节点的每条线路的卡顿率,包括:
将与所述卡顿率树的待定节点相关的所述历史打点数据作为目标打点数据;
根据所述目标打点数据的所述线路标识、直播分片时长和卡顿标识确定所述待定节点的每条线路的卡顿时长比和/或卡顿次数比,并根据所述卡顿时长比和/或所述卡顿次数比确定所述待定节点的每条线路的卡顿率;
其中,第k条线路的所述卡顿次数比xk为:
Figure FDA0002671563340000021
mk表示与第k条线路的所述线路标识对应的、所述卡顿标识表示卡顿的所有所述目标打点数据的数量,nk表示与第k条线路的所述线路标识对应的所有所述目标打点数据的数量;
第k条线路的所述卡顿时长比yk为:
Figure FDA0002671563340000022
其中,
Figure FDA0002671563340000023
表示与第k条线路的所述线路标识对应的、所述卡顿标识表示卡顿的所有所述目标打点数据中,第j个所述目标打点数据的直播分片时长;Dk,i表示与第k条线路的所述线路标识对应的所有所述目标打点数据中,第i个所述目标打点数据的直播分片时长。
4.根据权利要求1所述的方法,其特征在于,所述根据所述目标节点以及所述目标节点一跳和/或多跳的父节点的每条线路的卡顿率确定所述当前客户端在每条线路的当前卡顿率,包括:
确定所述目标节点每条线路的卡顿率,以及所述目标节点的父节点每条线路的的卡顿率,所述目标节点的父节点包括所述目标节点一跳和/或多跳的父节点;
对所述目标节点每条线路的卡顿率以及所述目标节点的父节点相应线路的卡顿率进行加权求和处理,确定相应线路的当前卡顿率。
5.根据权利要求1-4任意一项所述的方法,其特征在于,还包括:
获取当前客户端上传的当前打点数据,所述当前打点数据包括当前线路标识、当前直播分片时长和当前卡顿标识;
根据所述当前直播分片时长和所述当前卡顿标识,更新所述目标节点和所述目标节点的所有父节点中与所述当前线路标识对应的线路的卡顿率。
6.根据权利要求1所述的方法,其特征在于,所述将最小的所述当前卡顿率所对应的线路作为所述当前客户端的首位线路,包括:
根据所述当前客户端在每条线路的当前卡顿率按照从小到大的顺序进行排序,确定相应的线路顺序,并将所述线路顺序推送至所述当前客户端;所述线路顺序的第一位线路为所述首位线路。
7.一种基于卡顿率的线路分配装置,其特征在于,包括:
获取模块,用于获取多个历史客户端上传的历史打点数据,所述历史打点数据包括历史IP地址、线路标识、直播分片时长和卡顿标识;其中,每个线路标识对应唯一的线路;
卡顿率树生成模块,用于根据所述历史IP地址确定所述历史客户端所属的地理位置信息,并根据所述地理位置信息的层级属性建立卡顿率树;所述卡顿率树的叶子节点对应所述历史IP地址;
卡顿率计算模块,用于根据与所述卡顿率树的节点相关的所述历史打点数据中的所述线路标识、直播分片时长和卡顿标识,确定所述卡顿率树中相应节点的每条线路的卡顿率;
当前处理模块,用于获取当前客户端的当前IP地址,并将所述卡顿率树中与所述当前IP地址所属的地理位置信息相对应的节点作为目标节点,根据所述目标节点以及所述目标节点一跳和/或多跳的父节点的每条线路的卡顿率确定所述当前客户端在每条线路的当前卡顿率,并将最小的所述当前卡顿率所对应的线路作为所述当前客户端的首位线路。
8.根据权利要求7所述的装置,其特征在于,所述卡顿率树生成模块根据所述地理位置信息的层级属性建立卡顿率树包括:
根据所述历史IP地址确定所述历史客户端所属的运营商;
根据所述地理位置信息的层级属性和所述历史客户端所属的运营商建立卡顿率树,且所述运营商对应的节点为所述叶子节点的父节点。
9.一种电子设备,包括总线、收发器、存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述收发器、所述存储器和所述处理器通过所述总线相连,其特征在于,所述计算机程序被所述处理器执行时实现如权利要求1至6中任一项所述的基于卡顿率的线路分配方法中的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6中任一项所述的基于卡顿率的线路分配方法中的步骤。
CN202010934829.4A 2020-09-08 2020-09-08 一种基于卡顿率的线路分配方法、装置及电子设备 Active CN112073745B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010934829.4A CN112073745B (zh) 2020-09-08 2020-09-08 一种基于卡顿率的线路分配方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010934829.4A CN112073745B (zh) 2020-09-08 2020-09-08 一种基于卡顿率的线路分配方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN112073745A true CN112073745A (zh) 2020-12-11
CN112073745B CN112073745B (zh) 2022-05-27

Family

ID=73664312

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010934829.4A Active CN112073745B (zh) 2020-09-08 2020-09-08 一种基于卡顿率的线路分配方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN112073745B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113840157A (zh) * 2021-09-23 2021-12-24 上海哔哩哔哩科技有限公司 访问检测方法、系统及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030206720A1 (en) * 1992-02-07 2003-11-06 Max Abecassis Video-on-demand purchasing and escrowing system
CN105847875A (zh) * 2016-05-13 2016-08-10 武汉斗鱼网络科技有限公司 一种视频直播平台的观看线路智能选择方法及系统
CN107105309A (zh) * 2017-04-25 2017-08-29 北京潘达互娱科技有限公司 直播调度方法及装置
CN107682271A (zh) * 2017-09-28 2018-02-09 北京奇安信科技有限公司 一种路由线路的生成方法及装置
CN108540352A (zh) * 2018-05-02 2018-09-14 上海妙克信息科技有限公司 一种用于在线教育系统用户通道自动匹配的优化扩展方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030206720A1 (en) * 1992-02-07 2003-11-06 Max Abecassis Video-on-demand purchasing and escrowing system
CN105847875A (zh) * 2016-05-13 2016-08-10 武汉斗鱼网络科技有限公司 一种视频直播平台的观看线路智能选择方法及系统
CN107105309A (zh) * 2017-04-25 2017-08-29 北京潘达互娱科技有限公司 直播调度方法及装置
CN107682271A (zh) * 2017-09-28 2018-02-09 北京奇安信科技有限公司 一种路由线路的生成方法及装置
CN108540352A (zh) * 2018-05-02 2018-09-14 上海妙克信息科技有限公司 一种用于在线教育系统用户通道自动匹配的优化扩展方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113840157A (zh) * 2021-09-23 2021-12-24 上海哔哩哔哩科技有限公司 访问检测方法、系统及装置

Also Published As

Publication number Publication date
CN112073745B (zh) 2022-05-27

Similar Documents

Publication Publication Date Title
EP3272144B1 (en) Connection technology-based wireless coverage verification
US20190281408A1 (en) System and Method for Energy Efficient Geofencing Implementation and Management
EP3419353A1 (en) Method for positioning terminal, and network device
CN110166943B (zh) 终端位置信息的处理方法
US20180137772A1 (en) Empirical expert determination and question routing system and method
CN104468327B (zh) 一种群组加入方法、装置及系统
RU2681647C1 (ru) Дифференцированное позиционирование
EP3833122A1 (en) Method and apparatus for positioning and generating offline fingerprint database
Leonardi et al. Implicit coordination of caches in small cell networks under unknown popularity profiles
CN108133001B (zh) Mr室内外分离方法、装置及介质
CN108271157B (zh) 一种伪基站识别方法及装置
CN112073745B (zh) 一种基于卡顿率的线路分配方法、装置及电子设备
CN105517148B (zh) 一种定位方法及装置
US10271218B2 (en) Enable access point availability prediction
CN105657652A (zh) 提供流式地理定位信息
CN110070652A (zh) 一种门禁控制方法、系统、电子设备及存储介质
CN114531302A (zh) 数据加密方法、装置及存储介质
CN110933690B (zh) 一种移动终端室分判别方法、装置、服务器和存储介质
WO2023109950A1 (zh) 一种跟踪区边界信息的处理方法、装置、电子设备和可读介质
CN113342424A (zh) 一种加载h5资源的方法、装置及电子设备
SubbaRayudu et al. A study on user mobility in device to device (D2D) networks through distrubted catching
CN110461015A (zh) 一种进行网络切换的方法及设备
KR102253118B1 (ko) 와이파이 핑거프린트 기반 위치인식용 라디오맵 자동 업데이트 방법
CN111328013B (zh) 移动终端定位方法及系统
Xia et al. Location prediction based on variable-order markov model and user's spatio-temporal rule

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