CN106357776B - 一种流数据的传输资源的选取方法和装置 - Google Patents

一种流数据的传输资源的选取方法和装置 Download PDF

Info

Publication number
CN106357776B
CN106357776B CN201610849666.3A CN201610849666A CN106357776B CN 106357776 B CN106357776 B CN 106357776B CN 201610849666 A CN201610849666 A CN 201610849666A CN 106357776 B CN106357776 B CN 106357776B
Authority
CN
China
Prior art keywords
mobile client
speed
transmission node
transmission
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.)
Active
Application number
CN201610849666.3A
Other languages
English (en)
Other versions
CN106357776A (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 Qihoo Technology Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing 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 Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201610849666.3A priority Critical patent/CN106357776B/zh
Publication of CN106357776A publication Critical patent/CN106357776A/zh
Application granted granted Critical
Publication of CN106357776B publication Critical patent/CN106357776B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/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
    • 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/52Network services specially adapted for the location of the user terminal

Abstract

本发明公开了一种流数据的传输资源的选取方法和装置。所述方法包括:接收移动客户端对当前流数据的传输资源的调度请求,获取所述移动客户端所处位置的信息,选取所述移动客户端所处位置的信息的对应区域的传输资源,根据移动客户端所处的位置选取传输资源。由于所处位置可以准确获取,相比于根据网络地址选取的方式,提高了选取传输资源的准确度,可以避免域名劫持导致的基于域名解析的传输资源调度不准确的问题,保障了传输的速度和稳定性。

Description

一种流数据的传输资源的选取方法和装置
技术领域
本发明涉及通信技术领域,具体涉及一种流数据的传输资源的选取方法,以及和一种流数据的传输资源的选取装置。
背景技术
流数据为可以采用流式传输的方式在网络上传输的数据,大型网站系统经常依赖于内容分发网络(Content Delivery Network,CDN)对流数据进行传输,内容分发网络是通过在现有的网络中增加一层新的网络结构,使用户可以将数据传输到对应的节点上或从对应的节点获取所需的数据。在内容分发网络中,部署有传输节点,用于缓冲流数据,就近给用户提供服务,由于目前选取传输节点主要是基于静态域名解析或者网络地址,而域名劫持或网络地址显示为异地的情况经常发生,导致选取的传输节点不准确,影响了传输的速度和稳定性。
尤其是在视频直播应用或远程摄像头应用中,由于传输节点选取错误会导致视频上传或下载时卡顿,丢帧等现象。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种流数据的传输资源的选取方法和相应的装置。
依据本发明的一个方面,提供了一种流数据的传输资源的选取方法,包括:
接收移动客户端对当前流数据的传输资源的调度请求;
获取所述移动客户端所处位置的信息;
选取所述移动客户端所处位置的信息的对应区域的传输资源。
可选地,所述获取所述移动客户端所处位置的信息包括:
根据所述移动客户端的至少一种位置指示信息确定所述移动客户端所处位置的信息。
可选地,所述位置指示信息包括所述移动客户端的网络地址信息,所述移动客户端所处位置的信息包括所述移动客户端所处地理区域的信息,所述根据所述移动客户端的至少一种位置指示信息确定所述移动客户端所处位置的信息包括:
从所述调度请求中提取所述移动客户端的网络地址信息;
查找所述网络地址信息对应指示的所述移动客户端所处地理区域的信息。
可选地,所述位置指示信息包括所述移动客户端的定位信息,所述移动客户端所处位置的信息包括所述移动客户端所处地理区域的信息,所述根据所述移动客户端的至少一种位置指示信息确定所述移动客户端所处位置的信息包括:
接收所述移动客户端调用位置定位程序获取的定位信息;
通过访问操作系统的地理区域信息获取接口获得的所述定位信息指示的所述移动客户端所处地理区域的信息。
可选地,所述传输资源包括根据所述移动客户端所处位置的信息选取的多个传输资源,每一传输资源包括传输节点集群,所述方法还包括:
从各传输节点集群选取多个候选传输节点。
可选地,所述方法还包括:
分别检测所选取的各个候选传输节点的传输速度;
从多个候选传输节点中选取传输速度符合设定要求的目标传输节点以用于传输所述流数据。
可选地,所述分别检测所选取的各个候选传输节点的传输速度包括:
根据所述移动客户端对当前流数据的传输资源的调度请求,确定对应的测速类型;
向所述移动客户端发送针对所述测速类型设置的测速策略,并接收反馈的传输速度。
可选地,所述根据所述移动客户端对当前流数据的传输资源的调度请求,确定对应的测速类型包括:
若所述调度请求对应请求上行传输资源,则所述测速类型为上行测速;
所述测速策略包括:
向各个传输节点发送携带第一数据包的测速请求,根据所述传输节点针对所述第一数据包反馈的第二数据包进行测速,所述第一数据包大于第一设定数据量。
可选地,所述根据所述移动客户端对当前流数据的传输资源的调度请求,确定对应的测速类型包括:
若所述调度请求对应请求下行传输资源,则所述测速类型为下行测速;
所述测速策略包括:
向各个传输节点发送携带第一数据包的测速请求,根据所述传输节点针对所述第一数据包反馈的第二数据包进行测速,所述第二数据包大于第一设定数据量。
可选地,所述根据所述移动客户端对当前流数据的传输资源的调度请求,确定对应的测速类型包括:
若所述调度请求对应请求数据通信,则所述测速类型为网络连通检测;
所述测速策略包括:
向各个传输节点发送携带第一数据包的测速请求,根据所述传输节点针对所述第一数据包反馈的第二数据包进行测速,所述第一数据包和第二数据包均小于第二设定数据量。
可选地,所述方法还包括:
根据预先获取的所选取传输节点的当前负载,预估所述传输节点应对调度节点集群的实际负载;
根据所述实际负载修正所选取的传输节点。
可选地,所述根据预先获取的所选取传输节点的当前负载,预估所述传输节点应对调度节点集群的实际负载包括:
预估所述当前流数据被分配至所述传输节点后导致所述传输节点增加的第一负载增量;
根据所述第一负载增量,预估所述调度节点集群调度所述传输节点后导致所述传输节点增加的第二负载增量;
以所述调度节点集群导致所述传输节点增加的第二负载增量与所述当前负载之和,作为所述传输节点应对所述调度节点集群的实际负载。
可选地,所述根据所述第一负载增量,预估所述调度节点集群调度所述传输节点后导致所述传输节点增加的第二负载增量包括:
以所述第一负载增量与设定负载倍数的乘积,作为所述调度节点集群调度所述传输节点后导致所述传输节点增加的第二负载增量,所述设定负载倍数表征所述调度节点集群对所述传输节点的调度次数。
可选地,所述根据所述实际负载修正所选取的传输节点包括:
若所述实际负载超出所述传输节点的负载性能参数的值,则将所述传输节点替换为所述传输节点负载性能的值超出实际负载的另一传输节点。
可选地,所述方法还包括:
检测所述移动客户端所连接网络归属的网络运营商。
可选地,所述检测所述移动客户端所连接网络归属的网络运营商包括:
根据从所述调度请求中提取的网络地址,识别所述移动客户端所连接网络归属的网络运营商。
可选地,所述选取所述移动客户端所处位置的信息的对应区域的传输资源包括:
选取与所述移动客户端所处位置的信息指示的地理区域属于同一区域且与所述移动客户端所连接网络属于同一网络运营商的传输资源。
根据本发明的另一方面,提供了一种流数据的传输资源的选取装置,包括:
调度请求接收模块,用于接收移动客户端对当前流数据的传输资源的调度请求;
位置获取模块,用于获取所述移动客户端所处位置的信息;
传输资源选取模块,用于选取所述移动客户端所处位置的信息的对应区域的传输资源。
可选地,所述位置获取模块,具体用于根据所述移动客户端的至少一种位置指示信息确定所述移动客户端所处位置信息。
可选地,所述位置指示信息包括所述移动客户端的网络地址信息,所述移动客户端所处位置的信息包括所述移动客户端所处地理区域的信息,所述位置获取模块包括:
网络地址提取子模块,用于从所述调度请求中提取所述移动客户端的网络地址信息;
地理区域查找子模块,用于查找所述网络地址信息对应指示的所述移动客户端所处地理区域的信息。
可选地,所述位置指示信息包括所述移动客户端的定位信息,所述移动客户端所处位置的信息包括所述移动客户端所处地理区域的信息,所述位置获取模块包括:
定位信息接收子模块,用于接收所述移动客户端调用位置定位程序获取的定位信息;
地理区域获取子模块,用于通过访问操作系统的地理区域信息获取接口获得的所述定位信息指示的所述移动客户端所处地理区域的信息。
可选地,所述传输资源包括根据所述移动客户端所处位置的信息选取的多个传输资源,每一传输资源包括传输节点集群,所述装置还包括:
选取模块,用于从各传输节点集群选取多个候选传输节点。
可选地,所述装置还包括:
传输速度检测模块,用于分别检测所选取的各个候选传输节点的传输速度;
传输节点选取模块,用于从多个候选传输节点中选取传输速度符合设定要求的目标传输节点以用于传输所述流数据。
可选地,所述传输速度检测模块包括:
测速类型确定子模块,用于根据所述移动客户端对当前流数据的传输资源的调度请求,确定对应的测速类型;
传输速度接收子模块,用于向所述移动客户端发送针对所述测速类型设置的测速策略,并接收反馈的传输速度。
可选地,所述测速类型确定子模块,具体用于若所述调度请求对应请求上行传输资源,则所述测速类型为上行测速;
所述测速策略包括:
向各个传输节点发送携带第一数据包的测速请求,根据所述传输节点针对所述第一数据包反馈的第二数据包进行测速,所述第一数据包大于第一设定数据量。
可选地,所述测速类型确定子模块,具体用于若所述调度请求对应请求下行传输资源,则所述测速类型为下行测速;
所述测速策略包括:
向各个传输节点发送携带第一数据包的测速请求,根据所述传输节点针对所述第一数据包反馈的第二数据包进行测速,所述第二数据包大于第一设定数据量。
可选地,所述测速类型确定子模块,具体用于若所述调度请求对应请求数据通信,则所述测速类型为网络连通检测;
所述测速策略包括:
向各个传输节点发送携带第一数据包的测速请求,根据所述传输节点针对所述第一数据包反馈的第二数据包进行测速,所述第一数据包和第二数据包均小于第二设定数据量。
可选地,所述装置还包括:
负载预估模块,用于根据预先获取的所选取传输节点的当前负载,预估所述传输节点应对调度节点集群的实际负载;
传输节点修正模块,用于根据所述实际负载修正所选取的传输节点。
可选地,所述负载预估模块包括:
第一负载增量预估子模块,用于预估所述当前流数据被分配至所述传输节点后导致所述传输节点增加的第一负载增量;
第二负载增量预估子模块,用于根据所述第一负载增量,预估所述调度节点集群调度所述传输节点后导致所述传输节点增加的第二负载增量;
实际负载子模块,用于以所述调度节点集群导致所述传输节点增加的第二负载增量与所述当前负载之和,作为所述传输节点应对所述调度节点集群的实际负载。
可选地,所述第二负载增量预估子模块,具体用于以所述第一负载增量与设定负载倍数的乘积,作为所述调度节点集群调度所述传输节点后导致所述传输节点增加的第二负载增量,所述设定负载倍数表征所述调度节点集群对所述传输节点的调度次数。
可选地,所述传输节点修正模块,具体用于若所述实际负载超出所述传输节点的负载性能参数的值,则将所述传输节点替换为所述传输节点负载性能的值超出实际负载的另一传输节点。
可选地,所述装置还包括:
网络运营商检测模块,用于检测所述移动客户端所连接网络归属的网络运营商。
可选地,所述网络运营商检测模块,具体用于根据从所述调度请求中提取的网络地址,识别所述移动客户端所连接网络归属的网络运营商。
可选地,所述传输资源选取模块,具体用于选取与所述移动客户端所处位置的信息指示的地理区域属于同一区域且与所述移动客户端所连接网络属于同一网络运营商的传输资源。
根据本发明的一种流数据的传输资源的选取方法和装置可以通过接收移动客户端对当前流数据的传输资源的调度请求,获取所述移动客户端所处位置的信息,选取所述移动客户端所处位置的信息的对应区域的传输资源,根据移动客户端所处的位置选取传输资源,由于所处位置可以准确获取,相比于根据网络地址选取的方式,提高了选取传输资源的准确度,可以避免域名劫持导致的基于域名解析的传输资源调度不准确的问题,保障了传输的速度和稳定性。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明实施例一的流数据的传输资源的选取方法的步骤流程示意图;
图2示出了根据本发明实施例二的流数据的传输资源的选取方法的步骤流程示意图;
图3示出了根据本发明实施例三的流数据的传输资源的选取方法的步骤流程示意图;
图4示出了根据本发明实施例四的流数据的传输资源的选取装置的结构框图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
参照图1,示出了根据本发明实施例一的流数据的传输资源的选取方法的步骤流程示意图,具体可以包括如下步骤:
步骤101,接收移动客户端对当前流数据的传输资源的调度请求。
在本发明实施例中,流数据为可以采用流式传输的方式在网络上传输的数据,传输资源是指传输当前流数据的至少一个传输节点,具体可以是传输节点或传输节点集群,传输节点集群是指由至少一个传输节点组成的传输节点集群,调度节点可以选择传输节点集群中的至少一个传输节点作为当前流数据的传输节点。在具体实现中,流数据的传输大多存在于内容分发网络中,组建内容分发网络会分地区部署传输资源,因为一个传输节点无法承受很高的并发量,内容分发网络中通常存在多个传输节点,由调度节点分配流数据传输的传输节点。
移动客户端向调度节点发送调度请求,请求当前流数据的传输资源,调度节点接收调度请求。
调度节点在多种应用场景下均可以为流数据的传输选择至少一个传输节点,具体而言,在视频直播应用场景中,调度节点为视频直播客户端的流数据传输选取至少一个传输节点,视频直播客户端把录制的视频以流式传输方式传送到至少一个传输节点,以使视频流数据可以传送到内容分发网络上的各个节点,从而让其他客户端能够获取,也就是流数据从传输节点传送到需要的客户端上;在远程摄像头应用场景中,调度节点为远程摄像头客户端的流数据传输选取至少一个传输节点,远程摄像头客户端把录制的视频以流式传输方式传送到至少一个传输节点,以使视频流数据可以传送到内容分发网络上的各个节点,从而让其他客户端能够获取,也就是流数据从传输节点传送到需要的客户端上。
步骤102,获取所述移动客户端所处位置的信息。
在本发明实施例中,所处位置可以是地理区域,也可以是地理上的一个定位点,还可以是其他精度或是表述方式的信息,所处位置的信息可以是该位置的标识、具体内容、还可以是该位置的其他维度的信息,以所处位置为地理区域为例,所处位置的信息可以是该区域的实际内容、该区域的区域标识、该区域内的人群信息等。调度节点可以用各种方式获取移动客户端所处位置的信息,本发明对此不作限制,例如从接收到的调度请求中提取出移动客户端所处位置的信息、或在接收到调度请求后,向移动客户端发送位置获取请求,移动客户端将所处位置的信息反馈给调度节点。
步骤103,选取所述移动客户端所处位置的信息的对应区域的传输资源。
在本发明实施例中,调度节点获取移动客户端所处位置的信息后,根据获取的所处位置的信息,查找信息指示的位置所属的区域,选取该区域中至少一个传输资源,例如移动客户端所处位置信息是北京市海淀区中关村,属于北京市海淀区,则选取处于北京市海淀区的传输资源。在具体实现中,组建内容分发网络会分地区部署传输资源,例如会在北京市海淀区部署传输节点或传输节点集群。
具体而言,调度节点可以根据获取的移动客户端所处位置的一个信息选取多个传输资源,也可以根据获取的移动客户端所处位置的多个信息选取多个传输资源,其中根据每个信息选取一个或多个传输资源。
综上所述,依据本发明实施例,通过接收移动客户端对当前流数据的传输资源的调度请求,获取所述移动客户端所处位置信息,选取与所述移动客户端所处位置的信息对应区域的传输资源,根据移动客户端的所处位置选取传输资源,由于所处位置可以准确获取,相比于根据网络地址选取的方式,提高了选取传输资源的准确度,可以避免域名劫持导致的基于域名解析的传输资源调度不准确的问题,保障了传输的速度和稳定性。
在本发明实施例中,优选地,所述获取所述移动客户端所处位置信息的一种实现方式为,根据所述移动客户端的至少一种位置指示信息确定所述移动客户端所处位置的信息。
具体而言,位置指示信息至少有一种,具体可以包括网络地址、定位信息等,在获取到移动客户端的至少一种位置指示信息后,可以根据获取的每一种位置指示信息判定该种位置指示信息所对应的位置,也可以结合获取的多种位置指示信息,共同判定多种位置指示信息所对应的位置。
在本发明实施例中,优选地,所述根据所述移动客户端的至少一种位置指示信息确定所述移动客户端所处位置的信息的一种实现方式为,从所述调度请求中提取所述移动客户端的网络地址信息;查找所述网络地址信息对应指示的所述移动客户端所处地理区域的信息。具体而言,移动客户端向调度节点发送调度请求,调度请求中携带有移动客户端的网络地址信息,调度节点从调度请求中提取出该网络地址;调度节点可以调用到网络地址数据库,从网络地址数据库中查询提取的网络地址对应的地理区域信息,也就是得到了移动客户端所处地理区域信息,例如北京市海淀区。
在本发明实施例中,优选地,所述根据所述移动客户端的至少一种位置指示信息确定所述移动客户端所处位置的信息的另一种实现方式为,接收所述移动客户端调用位置定位程序获取的定位信息,通过访问操作系统的地理区域信息获取接口获得的所述定位信息指示的所述移动客户端所处地理区域的信息。具体而言,定位信息是指经纬度信息,调度节点向移动客户端发送地理区域的获取请求,移动客户端接收到请求后,开启位置定位程序,获取当前的经纬度信息,例如获取GPS(全称:Global Positioning System,中文名:全球定位系统)芯片反馈的经纬度信息,访问操作系统的地理区域信息获取接口,获得所述定位信息指示的所述移动客户端所处地理区域的信息。其中,操作系统的地理区域信息获取接口可以根据经纬度信息得到对应的地理区域。由于通过位置定位程序获取的定位信息,不会受到域名劫持或者网络地址错误的影响,提高了获取移动客户端位置信息的准确性。
参照图2,示出了根据本发明实施例二的流数据的传输资源的选取方法的步骤流程示意图,具体可以包括如下步骤:
步骤201,接收移动客户端对当前流数据的传输资源的调度请求。
步骤202,获取所述移动客户端所处位置的信息。
步骤203,检测所述移动客户端所连接网络归属的网络运营商。
在本发明实施例中,调度节点可以用各种方式检测移动客户端所连接网络归属的网络运营商,本发明对此不作限制,例如从接收到的调度请求中提取出所连接网络归属的网络运营商信息、或在接收到调度请求后,向移动客户端发送位置信息获取请求,移动客户端所连接网络归属的网络运营商信息反馈给调度节点。
相比实施例一增加的步骤203为优选的步骤,而且步骤202和步骤203的先后顺序可以调整,本发明对此不作限定。
在本发明实施例中,优选地,所述检测所述移动客户端所连接网络归属的网络运营商的一种实现方式可以是,根据从所述调度请求中提取的网络地址,识别所述移动客户端所连接网络归属的网络运营商。
具体而言,移动客户端向调度节点的发送的调度请求中携带有网络地址,调度节点将该网络地址提取出来,并根据该网络地址,识别出网络地址对应的网络运营商,例如调度节点可以调用网络地址数据库,从网络地址数据库中获取网络运营商信息,也就是移动客户端所连接网络归属的网络运营商。
步骤204,选取与所述移动客户端所处位置的信息指示的地理区域属于同一区域且与所述移动客户端所连接网络属于同一网络运营商的传输资源。
在本发明实施例中,调度节点获取移动客户端所处位置的信息和所连接网络归属的网络运营商后,根据获取的所处位置的信息,查找信息指示的位置所属的区域,再根据所属的网络运营商,选取所属区域中和所述移动客户端所连接网络属于同一网络运营商的至少一个传输资源,例如移动客户端所处位置信息是北京市海淀区中关村,属于北京市海淀区,移动客户端的网络运营商为中国联通,则选取处于北京市海淀区中国联通网络中的传输资源。在具体实现中,组建内容分发网络会分地区部署传输资源,例如会在北京市海淀区中国联通网络中部署传输节点或传输节点集群。
具体而言,调度节点可以根据获取的移动客户端所处位置的一个信息选取多个传输资源,也可以根据获取的移动客户端所处位置的多个信息选取多个传输资源,其中根据每个信息选取一个或多个传输资源。
综上所述,依据本发明实施例,通过接收移动客户端对当前流数据的传输资源的调度请求,获取所述移动客户端所处位置的信息,检测所述移动客户端所连接网络归属的网络运营商,选取与所述移动客户端所处位置的信息指示的地理区域属于同一区域且与所述移动客户端所连接网络属于同一网络运营商的传输资源,根据移动客户端所处的位置和所属的网络运营商选取出传输资源,由于所处位置和所属网络运营商可以准确获取,相比于根据网络地址选取的方式,提高了选取传输资源的准确度,可以避免域名劫持导致的基于域名解析的传输资源调度不准确的问题,保障了传输的速度和稳定性。
参照图3,示出了根据本发明实施例三的流数据的传输资源的选取方法的步骤流程示意图,具体可以包括如下步骤:
步骤301,接收移动客户端对当前流数据的传输资源的调度请求。
步骤302,获取所述移动客户端所处位置信息。
步骤303,选取所述移动客户端所处位置的信息的对应区域的传输资源。
步骤304,从各传输节点集群选取多个候选传输节点。
在本发明实施例中,根据所述移动客户端所处位置的信息选取的多个传输资源,每一传输资源包括传输节点集群,具体而言,调度节点可以根据获取的移动客户端所处位置的一个信息选取多个传输节点集群,也可以根据获取的移动客户端所处位置的多个信息选取多个传输节点集群,其中根据每个信息选取一个或多个传输节点集群。传输节点集群是指由至少一个传输节点组成的传输节点集群,调度节点可以选择传输节点集群中的多个传输节点作为当前流数据的候选传输节点。相比其他实施例步骤304为优选的步骤。
在本发明实施例中,调度节点可以根据流数据传输请求为流数据的传输在传输节点集群中选择至少一个传输节点,具体可以依据调度节点可以调度的所有传输节点的负载情况等至少一种因素进行选择。
调度节点用于根据流数据传输请求为流数据的传输选择至少一个传输节点,可以依据流数据传输请求的发出端所在的网络位置和/或调度节点可以调度的所有传输节点的负载情况进行选择,还可以选择历史记录中为当前流数据选取的传输节点。
从每个传输节点集群选取至少一个传输节点的一种优选的实现方式具体可以分为以下几个子步骤:
子步骤1,定期获取当前传输节点集群中所有传输节点的当前负载。
在本发明实施例中,由于实时的从所有传输节点获取当前负载将产生大量的输入输出需求,出于整体效率的考虑,调度节点集群的各调度节点分别定期获取所有传输节点的当前负载,可以是所有传输节点将当前负载分别发送给各个调度节点,也可以是所有传输节点将当前负载发送至一个用于维护传输节点状态的管理节点,再由调度节点定期从该管理节点获取所有传输节点的当前负载。
实际应用中,内容分发网络中传输节点可以将当前负载发送至一个管理节点,管理节点将传输节点的当前负载发送至一个存储节点中,调度节点定期从所述存储节点获取各个传输节点的当前负载。
子步骤2,按照各个传输节点的负载性能参数为各个传输节点构建对应的负载区间。
在本发明实施例中,负载性能参数是指描述传输节点最大负载能力的参数,例如最大活动连接数、最大负载量、最大网络带宽等,各个传输节点的最大负载能力各不相同,负载区间是指在划定的数值范围中为各个传输节点分配一定的区间,使得所有传输节点的区间的合集可以占满整个数值范围,并且各区间无交集且边界点连续,也就是说分配给任意两个传输节点的区间相互没有共同的部分,并且一个区间的两个边界点一定是两个相邻区间的边界点。调度节点为各个传输节点构建对应的负载区间,以用于后续通过计算当前流数据归属的负载区间选取出当前流数据的传输节点。
其中一种优选的实现方式可以是划定一个以各个传输节点的负载性能参数的值的总和为最大值,以零为最小值的数值范围,在这个数值范围内根据各个传输节点的负载性能参数的值分配一定的负载区间,使得所有传输节点的区间的合集可以占满整个数值范围,其中根据各个传输节点的负载性能参数分配一定的负载区间的具体分配方式可以不作限定,可以根据实际需要设定比例,然后按照设定的比例进行分配。
将一个传输节点的负载性能参数的值到上一个传输节点的负载性能参数的值,且不包括上一个传输节点的负载性能参数的值之间的区间作为该传输节点的负载区间
实际应用中,优选地,可以是使用任何合适的哈希函数来产生各个传输节点的负载性能参数的值对应的哈希值,然后按照各个传输节点的负载性能参数对应的哈希值为各个传输节点构建对应的负载区间,由于传输节点的负载性能参数的值对应的字符串可能是不规范的,用哈希函数可以将任意长度的负载性能参数变换成固定长度的哈希值。
在本发明实施例中,优选地,各个传输节点的负载区间的宽度与其负载性能参数的值成正比,所述按照各个传输节点的负载性能参数为各个传输节点构建对应的负载区间的一种实现方式可以是,以各个负载性能参数的值为负载区间的宽度为各个传输节点构建负载区间。从而使得传输节点的负载性能参数的值和传输节点的负载区间成正比,以实现选取传输节点的概率与传输节点的最大负载能力成正比,优化了传输节点分配效率,更大限度地利用了不同最大负载能力的传输节点的负载。
具体而言,各个传输节点的负载区间的宽度与其负载性能参数的值成正比,一种实现方式可以是划定一个以各个传输节点的负载性能参数的值的总和为最大值,以零为最小值的数值范围,在构建一个传输节点的负载区间时,可以以上个负载区间的终点为起始点,以该传输节点的负载性能参数的值为区间宽度,得到当前负载区间的终点,其中第一个负载区间的起始点为零,两个数值上相邻的负载区间相交的边界点可以归属于前一个负载区间,也可以归属于后一个负载区间。例如,一共有三个传输节点,其中第一个传输节点的负载性能参数为10,第二个传输节点的负载性能参数为30,第三个传输节点的负载性能参数为20,划定一个以60为最大值,以0为最小值的数值范围,第一个传输节点的负载区间为从0到10,第二个传输节点的负载区间为从10到40,第四个传输节点的负载区间为从40到60。
子步骤3,根据所述当前流数据的数据标识查找所述当前流数据归属的负载区间。
在本发明实施例中,当前流数据的数据标识,用来唯一的标识流数据。将当前流数据的数据标识映射到所有传输节点的负载区间所处的数值范围内,数据标识映射到负载区间就是所述当前流数据归属的负载区间,具体计算方式在本发明实施例中不作限定。
在本发明实施例中,优选地,所述根据所述当前流数据的数据标识查找所述当前流数据归属的负载区间的一种实现方式可以是,计算所述数据标识对应的整数值;利用所述数据标识的整数值与所有传输节点的负载性能参数的值的总和做取余运算;查找取余结果对应的负载区间作为所述当前流数据归属的负载区间。计算所述数据属性与所有传输节点的负载性能参数的总和做取余运算;查找取余结果归属的负载区间。
数据标识可以是任意的字符串,用任意可行的方法将该字符串转换成一个整数值,本发明对具体采用的方法不作限制,例如可以采用CRC32算法(全称循环冗余校验32算法)将数据标识转换为一个整数值。
所划定的数值范围以所有传输节点的负载性能参数的值的总和为最大值时,可以用数据标识的整数值除以所有传输节点的负载性能参数的值的总和,得到的余数一定小于所有传输节点的负载性能参数的值的总和,所以得到取余结果一定落入所述数值范围内,而且余数在数值范围中所在的区间就是取余结果对应的负载区间,也就是所述当前流数据归属的负载区间。由于数据标识具有随机性,取余结果可以分散到各个负载区间,使得为当前流数据选取的至少一个传输节点具有随机性,由于传输节点的负载区间的宽度和传输节点的负载性能参数的值成正比,所以每个传输节点被选取的概率和该传输节点的负载性能参数的值成正比,负载性能比较高的选中概率更大,实现了各个传输节点的负载均衡。
实际应用中,优选地,调度节点用任意适用的哈希函数得到当前流数据的数据标识对应的哈希值,用该哈希值除以所创建的数值范围的最大值,取余数,所得余数在数值范围中所在的区间就是当前流数据归属的负载区间。
具体而言,可以任何合适的哈希函数来产生当前流数据的数据标识对应的哈希值。例如,可以使用MD5摘要函数(MD5,全称Message Digest Algorithm MD5,中文名消息摘要算法第五版),并且可以取MD5摘要函数结果的前八个字节来用作哈希值。可替换地,可以取MD5摘要函数结果的前四个字节来用作哈希值。可替换地,可以在仅需保证该哈希结果的充分唯一性的条件下使用更少、更多或不同的字节。根据当前流数据的数据标识对应的哈希值计算出当前流数据归属的负载区间。
在本发明实施例中,优选地,所述数据标识包括客户端预设字段、客户端标识、时间戳信息、随机数、流数据唯一标识中至少一种。
当前流数据的数据标识,用来唯一的标识流数据,例如可以包括客户端预设字段、客户端标识、时间戳信息、随机数、流数据唯一标识中至少一种。其中,客户端预设字段可以是专门为区分流数据按照统一的规则设置的字段、客户端标识是指客户端的机器标识或其他网络标识、时间戳信息是指字符串或编码信息用于辨识流数据的时间日期、随机数是指随机生成的数字、流数据唯一标识是指可以唯一标识流数据的标识信息,例如MD5值(MD5,全称Message Digest Algorithm MD5,中文名消息摘要算法第五版)。
子步骤4,从所述当前传输节点集群中选取所归属的负载区间对应的传输节点。
在本发明实施例中,调度节点根据当前流数据归属的负载区间,从所述当前传输节点集群中选取所归属的负载区间对应的传输节点。
步骤305,根据预先获取的所选取传输节点的当前负载,预估所述传输节点应对调度节点集群的实际负载。
在本发明实施例中,调度节点可以预先获取该调度节点所能调度的所有传输节点的当前负载,当前负载反映传输节点的负载情况,具体可以包括当前活动连接数、当前负载量、带宽使用情况等。调度节点集群中的调度节点分别根据流数据传输请求为流数据的传输选择至少一个传输节点,而且调度节点间相互没有联系,也就是一个调度节点为一个流数据的传输选择了一个传输节点,其他调度节点不能实时的得知该传输节点因新增传输而增加的负载。
调度节点在为一个流数据的传输选取一个传输节点时,预估出因该流数据的传输而为该传输节点新增的负载,同时根据调度节点集群中调度节点的数量估算出调度节点集群中所有调度节点为该传输节点新增的负载,再以估算出的调度节点集群为该传输节点新增的负载和当前负载的总和作为预估的实际负载。
其中,实际负载是调度节点估算出的传输节点的负载,不一定是传输节点此时准确的负载。具体而言,以预先设定的每个调度节点对应增加至该传输节点的负载的总和,或者以所述当前流数据对应增加至所述传输节点的负载与设定负载倍数的乘积,作为所述调度节点集群增加至所述传输节点的负载。
在具体实现中,内容分发网络中传输节点可以将当前负载发送至一个管理节点,管理节点将各个传输节点的当前负载发送至一个存储节点中,调度节点定期从所述存储节点获取各个传输节点的当前负载。
其中一种优选的实现方式可以是,首先,预估所述当前流数据被分配至所述传输节点后导致所述传输节点增加的第一负载增量。
在本发明实施例中,第一负载增量是指调度节点选取传输节点后,可以根据当前流数据占用的计算资源、网络带宽资源等信息和该传输节点的当前活动连接数、当前负载量、当前网络带宽使用情况等信息,估算出当前流数据被分配至该传输节点后导致该传输节点增加的负载。
其次,根据所述第一负载增量,预估所述调度节点集群调度所述传输节点后导致所述传输节点增加的第二负载增量。
在本发明实施例中,以预先设定的调度节点集群调度传输节点导致所述传输节点增加的负载增量,或者以所述当前流数据被分配至所述传输节点后导致所述传输节点增加的第一负载增量与设定负载倍数的乘积,作为调度节点集群调度所述传输节点后导致所述传输节点增加的第二负载增量。
在本发明实施例中,优选地,所述根据所述第一负载增量,预估所述调度节点集群调度所述传输节点后导致所述传输节点增加的第二负载增量的一种实现方式可以是,以所述第一负载增量与设定负载倍数的乘积,作为所述调度节点集群调度所述传输节点后导致所述传输节点增加的第二负载增量,所述设定负载倍数表征所述调度节点集群对所述传输节点的调度次数。
具体而言,调度节点集群中的调度节点分别根据流数据传输请求为流数据的传输选择至少一个传输节点,而且调度节点间相互没有联系,也就是一个调度节点为一个流数据的传输选择了一个传输节点,其他调度节点不能实时的得知该传输节点因新增传输而增加的负载,设定负载倍数表征所述调度节点集群对所述传输节点的调度次数。以所述当前流数据被分配至所述传输节点后导致所述传输节点增加的第一负载增量与设定负载倍数的乘积,作为所述调度节点集群调度所述传输节点后导致所述传输节点增加的第二负载增量。其中设定负载倍数可以根据调度节点集群中调度节点的数量确定,调度节点集群中调度节点的数量越大,设定负载倍数越大,但设定负载倍数小于调度节点集群中调度节点的数量,实际应用中,设定负载倍数可以根据实际使用情况进行调试,本发明对此不作限制,例如,调度节点集群中有5个调度节点,那么设定负载倍数可以设置为3.5。
其次,以所述调度节点集群导致所述传输节点增加的第二负载与所述当前负载之和,作为所述传输节点应对所述调度节点集群的实际负载。
在本发明实施例中,以调度节点集群导致所述传输节点增加的第二负载和当前负载求和,得到传输节点应对所述调度节点集群的实际负载,其中实际负载并不一定是该传输节点此时的实际负载,而是调度节点估算出的该传输节点的负载。
步骤306,根据所述实际负载修正所选取的传输节点。
在本发明实施例中,调度节点通过比较传输节点的实际负载和该传输节点的负载性能参数,判定是否需要修正所选取的传输节点,其中,负载性能参数是指描述传输节点最大负载能力的参数,例如最大活动连接数、最大负载量、最大网络带宽等。具体而言,所选取的传输节点的实际负载超过了该传输节点的负载性能参数,则调度节点为当前流数据选取其他没有超过负载性能参数的传输节点。
一种修正所选取的传输节点的实现方式可以是,调度节点可以随机或者按设定顺序在其他传输节点中进行选取,通过比较新选取的传输节点的实际负载和最大负载,判定是否需要修正新选取的传输节点。
实际应用中,调度节点中维护有预先获取的所选取传输节点的当前负载,调度节点每次选取该传输节点时,以预估的所述传输节点应对所述调度节点集群的实际负载更新当前负载,直到调度节点再次获取到传输节点的当前负载,以最新获取的当前负载更新调度节点中记录的当前负载。
在本发明实施例中,优选地,所述根据所述实际负载修正所选取的传输节点的一种实现方式可以是,若所述实际负载超出所述传输节点的负载性能参数的值,则将所述传输节点替换为所述传输节点负载性能的值超出实际负载的另一传输节点。
在本发明实施例中,如果调度节点估算的传输节点的实际负载超过该传输节点的负载性能参数的值,那么调度节点选择所述传输节点负载性能的值超出实际负载的另一传输节点,具体而言,其中一种方式可以是选取负载区间中的下一个传输节点,估算出该传输节点的实际负载,如果估算出的下一个传输节点的实际负载超过该传输节点的负载性能参数,则再选取负载区间中的下一个传输节点,直到寻找到实际负载未超出所述传输节点负载性能的传输节点。
步骤307,分别检测所选取的各个候选传输节点的传输速度。
在本发明实施例中,传输速度是指移动客户端与传输节点之间传输数据的速度,可以通过移动客户端和传输节点相互发送数据包,并得到发送数据包所用的时间,由数据包的大小和发送用时,得到传输速度。各个候选传输节点为修正后所选取的传输节点。调度节点可以基于不同方式获取到移动终端的多种所处位置的信息,基于不同方式的检测精度的不同,不同所处位置的信息实际所指向的位置可能是相同的,也可能是不同的。因此,进一步根据不同的位置选取不同的多个候选传输节点。相比其他实施例步骤307为优选的步骤。
具体而言,调度节点可以根据当前流数据的传输是上行传输还是下行传输,决定检测移动客户端到传输节点的上行传输速度还是下行传输速度,或者还可以根据实际需要同时检测移动客户端到传输节点的上行传输速度和下行传输速度。
在本发明实施例中,优选地,所述分别检测所选取的各个候选传输节点的传输速度的一种实现方式可以是,根据所述移动客户端对当前流数据的传输资源的调度请求,确定对应的测速类型;向所述移动客户端发送针对所述测速类型设置的测速策略,并接收反馈的传输速度。
具体而言,调度节点根据移动客户端对当前流数据的传输资源的调度请求,确定当前需要的测速类型,例如上行测速、下行测速,将该测速类型发送给移动客户端,移动客户端根据测速类型进行测速,并将测速的测速结果反馈给调度节点,从而实现了依据当前流数据的传输需求,确定进行何种测速。
在本发明实施例中,优选地,所述根据所述移动客户端对当前流数据的传输资源的调度请求,确定对应的测速类型的一种实现方式可以是,若所述调度请求对应请求上行传输资源,则所述测速类型为上行测速。所述测速策略包括:向各个传输节点发送携带第一数据包的测速请求,根据所述传输节点针对所述第一数据包反馈的第二数据包进行测速,所述第一数据包大于第一设定数据量。
具体而言,第一设定数据量是指用于检测传输速度所需的最小数据量,移动客户端向各传输节点分别发送测速请求,测速请求中携带有第一数据包,传输节点在接收到测速请求后,开始接收第一数据包,第一数据包接收完毕后,传输节点向移动客户端发送第二数据包,移动客户端通过计算开始发送第一数据包和开始接收第二数据包之间的时间,得到传输第一数据包的传输速度,也就是得到从移动客户端到传输节点的上行速度。通常在检测上行速度时,第二数据包小于第一数据包的数据量,减少了不必要的网络传输,进一步第二数据包最好小于第二设定数据量,其中,第二设定数据量是指用于检测网络连通性的最小数据量。
在本发明实施例中,优选地,所述根据所述移动客户端对当前流数据的传输资源的调度请求,确定对应的测速类型的另一种实现方式可以是,若所述调度请求对应请求下行传输资源,则所述测速类型为下行测速。所述测速策略包括:向各个传输节点发送携带第一数据包的测速请求,根据所述传输节点针对所述第一数据包反馈的第二数据包进行测速,所述第二数据包大于第一设定数据量。
具体而言,第一设定数据量是指用于检测传输速度所需的最小数据量,移动客户端向各传输节点分别发送测速请求,测速请求中携带有第一数据包,传输节点在接收到测速请求后,开始接收第一数据包,第一数据包接收完毕后,传输节点向移动客户端发送第二数据包,移动客户端通过计算开始发送第一数据包和完成接收第二数据包之间的时间,得到传输第二数据包的传输速度,也就是得到从移动客户端到传输节点的下行速度。通常在检测下行速度时,第一数据包小于第二数据包的数据量,减少了不必要的网络传输,进一步第一数据包最好小于第二设定数据量,其中,第二设定数据量是指用于检测网络连通性的最小数据量。
在本发明实施例中,优选地,所述根据所述移动客户端对当前流数据的传输资源的调度请求,确定对应的测速类型的另一种实现方式可以是,若所述调度请求对应请求上下行传输资源,则所述测速类型为上行测速和下行测速。所述测速策略包括:向各个传输节点发送携带第一数据包的测速请求,根据所述传输节点针对所述第一数据包反馈的第二数据包进行测速,所述第一数据包和第二数据包均大于第一设定数据量。
具体而言,第一设定数据量是指用于检测传输速度所需的最小数据量,移动客户端向各传输节点分别发送测速请求,测速请求中携带有第一数据包,传输节点在接收到测速请求后,开始接收第一数据包,第一数据包接收完毕后,传输节点向移动客户端发送第二数据包,移动客户端通过计算开始发送第一数据包和传输节点完成接收第一数据包之间的时间,得到传输第一数据包的传输速度,也就是得到从移动客户端到传输节点的上行速度,再通过计算开始发送第二数据包和移动客户端完成接收第二数据包之间的时间,得到传输第二数据包的传输速度,也就是得到从移动客户端到传输节点的下行速度。
在本发明实施例中,优选地,所述根据所述移动客户端对当前流数据的传输资源的调度请求,确定对应的测速类型的另一种实现方式可以是,若所述调度请求对应请求数据通信,则所述测速类型为网络连通检测。所述测速策略包括:向各个传输节点发送携带第一数据包的测速请求,根据所述传输节点针对所述第一数据包反馈的第二数据包进行测速,所述第一数据包和第二数据包均小于第二设定数据量。
具体而言,第二设定数据量是指用于检测网络连通性的最小数据量,移动客户端向各传输节点分别发送测速请求,测速请求中携带有第一数据包,传输节点在接收到测速请求后,开始接收第一数据包,第一数据包接收完毕后,传输节点向移动客户端发送第二数据包,从而完成了对网络连通性的检测。由于所述第一数据包和第二数据包均小于第二设定数据量,减少了不必要的网络传输,使检测网络连通性更具及时性。
步骤308,从多个候选传输节点中选取传输速度符合设定要求的目标传输节点以用于传输所述流数据。
在本发明实施例中,传输速度符合设定要求是指可以满足传输需要的传输速度要求,具体设定要求可以根据实际需要进行设定,本发明实施例对此不作限定,调度节点检测到选取的多个候选传输节点的传输速度后,选取出其中符合设定要求的目标传输节点。
综上所述,依据本发明实施例,通过接收移动客户端对当前流数据的传输资源的调度请求,获取所述移动客户端所处位置信息,选取所述移动客户端所处位置的信息的对应区域的传输资源,根据移动客户端所述的位置选取传输资源,由于所处位置可以准确获取,相比于根据网络地址选取的方式,提高了选取传输资源的准确度,可以避免域名劫持导致的基于域名解析的传输资源调度不准确的问题,保障了传输的速度和稳定性。
其次,从各传输节点集群选取多个候选传输节点,根据预先获取的所选取传输节点的当前负载,预估所述传输节点应对调度节点集群的实际负载,根据所述实际负载修正所选取的传输节点,由于当前负载不能反映传输节点实时的负载情况,而且存在多个调度节点可以同时为流数据的传输分配传输节点,各个调度节点可以预估传输节点的实际负载,将实际负载过大的传输节点修正为负载没有过大的传输节点,避免了调度节点集群中的调度节点同时为流数据的传输选取传输节点导致的单个传输节点负载过大的问题。
最后,分别检测所选取的各个候选传输节点的传输速度,从多个候选传输节点中选取传输速度符合设定要求的目标传输节点以用于传输所述流数据,选取出不同的传输节点集群,再从中选取出多个传输节点,选取出传输速度满足需要的传输节点,实现对上传或下载速度相对较快的传输节点的优先选择。
参照图4,示出了根据本发明实施例四的流数据的传输资源的选取装置的结构框图,具体可以包括如下模块:
调度请求接收模块401,用于接收移动客户端对当前流数据的传输资源的调度请求;
位置获取模块402,用于获取所述移动客户端所处位置的信息;
传输资源选取模块403,用于选取所述移动客户端所处位置的信息的对应区域的传输资源。
优选地,所述位置获取模块,具体用于根据所述移动客户端的至少一种位置指示信息确定所述移动客户端所处位置信息。
优选地,所述位置指示信息包括所述移动客户端的网络地址信息,所述移动客户端所处位置的信息包括所述移动客户端所处地理区域的信息,所述位置获取模块包括:
网络地址提取子模块,用于从所述调度请求中提取所述移动客户端的网络地址信息;
地理区域查找子模块,用于查找所述网络地址信息对应指示的所述移动客户端所处地理区域的信息。
优选地,所述位置指示信息包括所述移动客户端的定位信息,所述移动客户端所处位置的信息包括所述移动客户端所处地理区域的信息,所述位置获取模块包括:
定位信息接收子模块,用于接收所述移动客户端调用位置定位程序获取的定位信息;
地理区域获取子模块,用于通过访问操作系统的地理区域信息获取接口获得的所述定位信息指示的所述移动客户端所处地理区域的信息。
优选地,所述传输资源包括根据所述移动客户端所处位置的信息选取的多个传输资源,每一传输资源包括传输节点集群,所述装置还包括:
选取模块,用于从各传输节点集群选取多个候选传输节点。
优选地,所述装置还包括:
传输速度检测模块,用于分别检测所选取的各个候选传输节点的传输速度;
传输节点选取模块,用于从多个候选传输节点中选取传输速度符合设定要求的目标传输节点以用于传输所述流数据。
优选地,所述传输速度检测模块包括:
测速类型确定子模块,用于根据所述移动客户端对当前流数据的传输资源的调度请求,确定对应的测速类型;
传输速度接收子模块,用于向所述移动客户端发送针对所述测速类型设置的测速策略,并接收反馈的传输速度。
优选地,所述测速类型确定子模块,具体用于若所述调度请求对应请求上行传输资源,则所述测速类型为上行测速;
所述测速策略包括:
向各个传输节点发送携带第一数据包的测速请求,根据所述传输节点针对所述第一数据包反馈的第二数据包进行测速,所述第一数据包大于第一设定数据量。
优选地,所述测速类型确定子模块,具体用于若所述调度请求对应请求下行传输资源,则所述测速类型为下行测速;
所述测速策略包括:
向各个传输节点发送携带第一数据包的测速请求,根据所述传输节点针对所述第一数据包反馈的第二数据包进行测速,所述第二数据包大于第一设定数据量。
优选地,所述测速类型确定子模块,具体用于若所述调度请求对应请求数据通信,则所述测速类型为网络连通检测;
所述测速策略包括:
向各个传输节点发送携带第一数据包的测速请求,根据所述传输节点针对所述第一数据包反馈的第二数据包进行测速,所述第一数据包和第二数据包均小于第二设定数据量。
优选地,所述装置还包括:
负载预估模块,用于根据预先获取的所选取传输节点的当前负载,预估所述传输节点应对调度节点集群的实际负载;
传输节点修正模块,用于根据所述实际负载修正所选取的传输节点。
优选地,所述负载预估模块包括:
第一负载增量预估子模块,用于预估所述当前流数据被分配至所述传输节点后导致所述传输节点增加的第一负载增量;
第二负载增量预估子模块,用于根据所述第一负载增量,预估所述调度节点集群调度所述传输节点后导致所述传输节点增加的第二负载增量;
实际负载子模块,用于以所述调度节点集群导致所述传输节点增加的第二负载增量与所述当前负载之和,作为所述传输节点应对所述调度节点集群的实际负载。
优选地,所述第二负载增量预估子模块,具体用于以所述第一负载增量与设定负载倍数的乘积,作为所述调度节点集群调度所述传输节点后导致所述传输节点增加的第二负载增量,所述设定负载倍数表征所述调度节点集群对所述传输节点的调度次数。
优选地,所述传输节点修正模块,具体用于若所述实际负载超出所述传输节点的负载性能参数的值,则将所述传输节点替换为所述传输节点负载性能的值超出实际负载的另一传输节点。
优选地,所述装置还包括:
网络运营商检测模块,用于检测所述移动客户端所连接网络归属的网络运营商。
优选地,所述网络运营商检测模块,具体用于根据从所述调度请求中提取的网络地址,识别所述移动客户端所连接网络归属的网络运营商。
优选地,所述传输资源选取模块,具体用于选取与所述移动客户端所处位置的信息指示的地理区域属于同一区域且与所述移动客户端所连接网络属于同一网络运营商的传输资源。
综上所述,依据本发明实施例,通过接收移动客户端对当前流数据的传输资源的调度请求,获取所述移动客户端所处位置信息,选取与所述移动客户端所处位置的信息对应区域的传输资源,根据移动客户端的所处位置选取传输资源,由于所处位置可以准确获取,相比于根据网络地址选取的方式,提高了选取传输资源的准确度,可以避免域名劫持导致的基于域名解析的传输资源调度不准确的问题,保障了传输的速度和稳定性。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的一种流数据的传输资源的选取方法和装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

Claims (28)

1.一种流数据的传输资源的选取方法,包括:
接收移动客户端对当前流数据的传输资源的调度请求;
获取所述移动客户端所处位置的信息;
选取所述移动客户端所处位置的信息的对应区域的传输资源;
其中,所述传输资源包括根据所述移动客户端所处位置的信息选取的多个传输资源,每一传输资源包括传输节点集群,所述方法还包括:
从各传输节点集群选取多个候选传输节点;
根据预先获取的所选取传输节点的当前负载,预估所述传输节点应对调度节点集群的实际负载;
根据所述实际负载修正所选取的传输节点;
其中,所述根据预先获取的所选取传输节点的当前负载,预估所述传输节点应对调度节点集群的实际负载包括:
预估所述当前流数据被分配至所述传输节点后导致所述传输节点增加的第一负载增量;
根据所述第一负载增量,预估所述调度节点集群调度所述传输节点后导致所述传输节点增加的第二负载增量;
以所述调度节点集群导致所述传输节点增加的第二负载增量与所述当前负载之和,作为所述传输节点应对所述调度节点集群的实际负载。
2.根据权利要求1所述的方法,其中,所述获取所述移动客户端所处位置的信息包括:
根据所述移动客户端的至少一种位置指示信息确定所述移动客户端所处位置的信息。
3.根据权利要求2所述的方法,其中,所述位置指示信息包括所述移动客户端的网络地址信息,所述移动客户端所处位置的信息包括所述移动客户端所处地理区域的信息,所述根据所述移动客户端的至少一种位置指示信息确定所述移动客户端所处位置的信息包括:
从所述调度请求中提取所述移动客户端的网络地址信息;
查找所述网络地址信息对应指示的所述移动客户端所处地理区域的信息。
4.根据权利要求2所述的方法,其中,所述位置指示信息包括所述移动客户端的定位信息,所述移动客户端所处位置的信息包括所述移动客户端所处地理区域的信息,所述根据所述移动客户端的至少一种位置指示信息确定所述移动客户端所处位置的信息包括:
接收所述移动客户端调用位置定位程序获取的定位信息;
通过访问操作系统的地理区域信息获取接口获得的所述定位信息指示的所述移动客户端所处地理区域的信息。
5.根据权利要求1所述的方法,其中,所述方法还包括:
分别检测所选取的各个候选传输节点的传输速度;
从多个候选传输节点中选取传输速度符合设定要求的目标传输节点以用于传输所述流数据。
6.根据权利要求5所述的方法,其中,所述分别检测所选取的各个候选传输节点的传输速度包括:
根据所述移动客户端对当前流数据的传输资源的调度请求,确定对应的测速类型;
向所述移动客户端发送针对所述测速类型设置的测速策略,并接收反馈的传输速度。
7.根据权利要求6所述的方法,其中,所述根据所述移动客户端对当前流数据的传输资源的调度请求,确定对应的测速类型包括:
若所述调度请求对应请求上行传输资源,则所述测速类型为上行测速;
所述测速策略包括:
向各个传输节点发送携带第一数据包的测速请求,根据所述传输节点针对所述第一数据包反馈的第二数据包进行测速,所述第一数据包大于第一设定数据量。
8.根据权利要求6所述的方法,其中,所述根据所述移动客户端对当前流数据的传输资源的调度请求,确定对应的测速类型包括:
若所述调度请求对应请求下行传输资源,则所述测速类型为下行测速;
所述测速策略包括:
向各个传输节点发送携带第一数据包的测速请求,根据所述传输节点针对所述第一数据包反馈的第二数据包进行测速,所述第二数据包大于第一设定数据量。
9.根据权利要求6所述的方法,其中,所述根据所述移动客户端对当前流数据的传输资源的调度请求,确定对应的测速类型包括:
若所述调度请求对应请求数据通信,则所述测速类型为网络连通检测;
所述测速策略包括:
向各个传输节点发送携带第一数据包的测速请求,根据所述传输节点针对所述第一数据包反馈的第二数据包进行测速,所述第一数据包和第二数据包均小于第二设定数据量。
10.根据权利要求1所述的方法,其中,所述根据所述第一负载增量,预估所述调度节点集群调度所述传输节点后导致所述传输节点增加的第二负载增量包括:
以所述第一负载增量与设定负载倍数的乘积,作为所述调度节点集群调度所述传输节点后导致所述传输节点增加的第二负载增量,所述设定负载倍数表征所述调度节点集群对所述传输节点的调度次数。
11.根据权利要求1所述的方法,其中,所述根据所述实际负载修正所选取的传输节点包括:
若所述实际负载超出所述传输节点的负载性能参数的值,则将所述传输节点替换为所述传输节点负载性能的值超出实际负载的另一传输节点。
12.根据权利要求1-11中任一项所述的方法,其中,所述方法还包括:
检测所述移动客户端所连接网络归属的网络运营商。
13.根据权利要求12所述的方法,其中,所述检测所述移动客户端所连接网络归属的网络运营商包括:
根据从所述调度请求中提取的网络地址,识别所述移动客户端所连接网络归属的网络运营商。
14.根据权利要求12所述的方法,其中,所述选取所述移动客户端所处位置的信息的对应区域的传输资源包括:
选取与所述移动客户端所处位置的信息指示的地理区域属于同一区域且与所述移动客户端所连接网络属于同一网络运营商的传输资源。
15.一种流数据的传输资源的选取装置,包括:
调度请求接收模块,用于接收移动客户端对当前流数据的传输资源的调度请求;
位置获取模块,用于获取所述移动客户端所处位置的信息;
传输资源选取模块,用于选取所述移动客户端所处位置的信息的对应区域的传输资源;
其中,所述传输资源包括根据所述移动客户端所处位置的信息选取的多个传输资源,每一传输资源包括传输节点集群,所述装置还包括:
选取模块,用于从各传输节点集群选取多个候选传输节点;
所述装置还包括:
负载预估模块,用于根据预先获取的所选取传输节点的当前负载,预估所述传输节点应对调度节点集群的实际负载;
传输节点修正模块,用于根据所述实际负载修正所选取的传输节点;
其中,所述负载预估模块包括:
第一负载增量预估子模块,用于预估所述当前流数据被分配至所述传输节点后导致所述传输节点增加的第一负载增量;
第二负载增量预估子模块,用于根据所述第一负载增量,预估所述调度节点集群调度所述传输节点后导致所述传输节点增加的第二负载增量;
实际负载子模块,用于以所述调度节点集群导致所述传输节点增加的第二负载增量与所述当前负载之和,作为所述传输节点应对所述调度节点集群的实际负载。
16.根据权利要求15所述的装置,其中,所述位置获取模块,具体用于根据所述移动客户端的至少一种位置指示信息确定所述移动客户端所处位置信息。
17.根据权利要求16所述的装置,其中,所述位置指示信息包括所述移动客户端的网络地址信息,所述移动客户端所处位置的信息包括所述移动客户端所处地理区域的信息,所述位置获取模块包括:
网络地址提取子模块,用于从所述调度请求中提取所述移动客户端的网络地址信息;
地理区域查找子模块,用于查找所述网络地址信息对应指示的所述移动客户端所处地理区域的信息。
18.根据权利要求16所述的装置,其中,所述位置指示信息包括所述移动客户端的定位信息,所述移动客户端所处位置的信息包括所述移动客户端所处地理区域的信息,所述位置获取模块包括:
定位信息接收子模块,用于接收所述移动客户端调用位置定位程序获取的定位信息;
地理区域获取子模块,用于通过访问操作系统的地理区域信息获取接口获得的所述定位信息指示的所述移动客户端所处地理区域的信息。
19.根据权利要求15所述的装置,其中,所述装置还包括:
传输速度检测模块,用于分别检测所选取的各个候选传输节点的传输速度;
传输节点选取模块,用于从多个候选传输节点中选取传输速度符合设定要求的目标传输节点以用于传输所述流数据。
20.根据权利要求19所述的装置,其中,所述传输速度检测模块包括:
测速类型确定子模块,用于根据所述移动客户端对当前流数据的传输资源的调度请求,确定对应的测速类型;
传输速度接收子模块,用于向所述移动客户端发送针对所述测速类型设置的测速策略,并接收反馈的传输速度。
21.根据权利要求20所述的装置,其中,所述测速类型确定子模块,具体用于若所述调度请求对应请求上行传输资源,则所述测速类型为上行测速;
所述测速策略包括:
向各个传输节点发送携带第一数据包的测速请求,根据所述传输节点针对所述第一数据包反馈的第二数据包进行测速,所述第一数据包大于第一设定数据量。
22.根据权利要求20所述的装置,其中,所述测速类型确定子模块,具体用于若所述调度请求对应请求下行传输资源,则所述测速类型为下行测速;
所述测速策略包括:
向各个传输节点发送携带第一数据包的测速请求,根据所述传输节点针对所述第一数据包反馈的第二数据包进行测速,所述第二数据包大于第一设定数据量。
23.根据权利要求20所述的装置,其中,所述测速类型确定子模块,具体用于若所述调度请求对应请求数据通信,则所述测速类型为网络连通检测;
所述测速策略包括:
向各个传输节点发送携带第一数据包的测速请求,根据所述传输节点针对所述第一数据包反馈的第二数据包进行测速,所述第一数据包和第二数据包均小于第二设定数据量。
24.根据权利要求15所述的装置,其中,所述第二负载增量预估子模块,具体用于以所述第一负载增量与设定负载倍数的乘积,作为所述调度节点集群调度所述传输节点后导致所述传输节点增加的第二负载增量,所述设定负载倍数表征所述调度节点集群对所述传输节点的调度次数。
25.根据权利要求15所述的装置,其中,所述传输节点修正模块,具体用于若所述实际负载超出所述传输节点的负载性能参数的值,则将所述传输节点替换为所述传输节点负载性能的值超出实际负载的另一传输节点。
26.根据权利要求15-25中任一项所述的装置,其中,所述装置还包括:
网络运营商检测模块,用于检测所述移动客户端所连接网络归属的网络运营商。
27.根据权利要求26所述的装置,其中,所述网络运营商检测模块,具体用于根据从所述调度请求中提取的网络地址,识别所述移动客户端所连接网络归属的网络运营商。
28.根据权利要求26所述的装置,其中,所述传输资源选取模块,具体用于选取与所述移动客户端所处位置的信息指示的地理区域属于同一区域且与所述移动客户端所连接网络属于同一网络运营商的传输资源。
CN201610849666.3A 2016-09-23 2016-09-23 一种流数据的传输资源的选取方法和装置 Active CN106357776B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610849666.3A CN106357776B (zh) 2016-09-23 2016-09-23 一种流数据的传输资源的选取方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610849666.3A CN106357776B (zh) 2016-09-23 2016-09-23 一种流数据的传输资源的选取方法和装置

Publications (2)

Publication Number Publication Date
CN106357776A CN106357776A (zh) 2017-01-25
CN106357776B true CN106357776B (zh) 2019-06-28

Family

ID=57859871

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610849666.3A Active CN106357776B (zh) 2016-09-23 2016-09-23 一种流数据的传输资源的选取方法和装置

Country Status (1)

Country Link
CN (1) CN106357776B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108462949B (zh) * 2018-01-16 2019-04-16 深圳职业技术学院 一种基于群组的业务传输方法
CN109168092A (zh) * 2018-09-17 2019-01-08 深圳市网心科技有限公司 流媒体数据传输状态判定方法、节点、系统及存储介质
CN109347869B (zh) * 2018-11-28 2021-07-06 京东数字科技控股有限公司 集群间通信安全因子的生成方法、装置、介质及电子设备
CN110661879B (zh) * 2019-10-12 2023-03-24 北京奇艺世纪科技有限公司 节点调度方法、装置、系统、调度服务器及终端设备
CN113660352A (zh) * 2021-10-21 2021-11-16 炫我云计算技术(北京)有限公司 一种服务器调度的方法、装置、电子设备及可读存储介质
CN114221785B (zh) * 2021-11-17 2023-11-24 佛山市宏图数据有限公司 一种无感边界数据交换方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100426399B1 (ko) * 2001-04-06 2004-04-08 니트젠테크놀러지스 주식회사 무선망을 통한 씨디엔 서비스 방법 및 시스템
CN101764747A (zh) * 2009-12-24 2010-06-30 北京世纪互联宽带数据中心有限公司 内容分发网络流量智能调度方法、装置及系统
US8423667B2 (en) * 2008-11-17 2013-04-16 Amazon Technologies, Inc. Updating routing information based on client location
CN103581299A (zh) * 2013-10-08 2014-02-12 华为软件技术有限公司 服务调度方法、装置及系统
CN104580012A (zh) * 2013-10-14 2015-04-29 深圳市腾讯计算机系统有限公司 一种内容分发网络节点的选择方法及装置
CN105100152A (zh) * 2014-05-14 2015-11-25 腾讯科技(深圳)有限公司 应用服务器的选取方法和系统、应用客户端

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100426399B1 (ko) * 2001-04-06 2004-04-08 니트젠테크놀러지스 주식회사 무선망을 통한 씨디엔 서비스 방법 및 시스템
US8423667B2 (en) * 2008-11-17 2013-04-16 Amazon Technologies, Inc. Updating routing information based on client location
CN101764747A (zh) * 2009-12-24 2010-06-30 北京世纪互联宽带数据中心有限公司 内容分发网络流量智能调度方法、装置及系统
CN103581299A (zh) * 2013-10-08 2014-02-12 华为软件技术有限公司 服务调度方法、装置及系统
CN104580012A (zh) * 2013-10-14 2015-04-29 深圳市腾讯计算机系统有限公司 一种内容分发网络节点的选择方法及装置
CN105100152A (zh) * 2014-05-14 2015-11-25 腾讯科技(深圳)有限公司 应用服务器的选取方法和系统、应用客户端

Also Published As

Publication number Publication date
CN106357776A (zh) 2017-01-25

Similar Documents

Publication Publication Date Title
CN106357776B (zh) 一种流数据的传输资源的选取方法和装置
CN106453122B (zh) 一种流数据传输节点的选取方法和装置
Calderoni et al. Location-aware mobile services for a smart city: Design, implementation and deployment
US9867011B2 (en) Identifying proximity history of computer devices
US8543586B2 (en) Determining points of interest using intelligent agents and semantic data
JP6222680B2 (ja) 位置情報サービスを実施するための方法、装置、およびシステム
JP6689515B2 (ja) ユーザ地理的ロケーションのタイプを識別するための方法および装置
CN111177222B (zh) 模型测试方法、装置及计算设备、存储介质
CN106341471A (zh) 用于位置服务的周边目标地理信息获取和搜索方法
US9832614B2 (en) Method, server and terminal for information interaction
JP2016512620A (ja) 携帯端末の位置データを利用してipの地理的位置を特定する方法及びサーバ
US10187747B1 (en) Location search using dynamic regions generated based on service data
US20110161005A1 (en) Systems and methods for end-to-end location and media content tracking
US20070005558A1 (en) Asset management system
CN111935820B (zh) 基于无线网络的定位实现方法及相关设备
US20130141612A1 (en) Adjusting Time Metadata of Digital Media Items
CN106534246A (zh) 基于位置服务的周边企业搜索系统
CN111325428A (zh) 一种工单推送方法、装置及存储介质
US11818622B1 (en) System and method of using spatial and temporal signals to identify and prevent attacks
CN107590083A (zh) 一种基于owga内存缓存的海量遥感瓦片数据快速发布方法
CN110460958A (zh) 物联网广播方法、装置、广播站及存储介质
CN111859187B (zh) 基于分布式图数据库的poi查询方法、装置、设备及介质
JP2011086066A (ja) 振り分け処理装置、計算機システム及びリクエスト振り分け方法
US7395257B2 (en) Automated method and system to calculate the surface distance between two geographical locations, and to filter a data set based on the calculation
US9529855B2 (en) Systems and methods for point of interest data ingestion

Legal Events

Date Code Title Description
C06 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
TR01 Transfer of patent right

Effective date of registration: 20220713

Address after: Room 801, 8th floor, No. 104, floors 1-19, building 2, yard 6, Jiuxianqiao Road, Chaoyang District, Beijing 100015

Patentee after: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Address before: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park)

Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Patentee before: Qizhi software (Beijing) Co.,Ltd.

TR01 Transfer of patent right