CN116095006A - 一种视频直播服务的动态流控方法和系统 - Google Patents
一种视频直播服务的动态流控方法和系统 Download PDFInfo
- Publication number
- CN116095006A CN116095006A CN202211358942.8A CN202211358942A CN116095006A CN 116095006 A CN116095006 A CN 116095006A CN 202211358942 A CN202211358942 A CN 202211358942A CN 116095006 A CN116095006 A CN 116095006A
- Authority
- CN
- China
- Prior art keywords
- flow control
- service
- barrel
- tokens
- requests
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2187—Live feed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/478—Supplemental services, e.g. displaying phone caller identification, shopping application
- H04N21/4788—Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开一种视频直播服务的动态流控方法及方法,其动态流控方法包括:创建多级流量控制策略;每一级的流量控制策略对应多个处理优先级,所述处理优先级是根据预设的业务分级规则对服务节点内部的业务请求进行分级而得到,每个处理优先级具有对应的优先级标识;实时监控服务节点的运行状态,根据服务节点的运行状态选择对应流量控制策略,并按照服务节点内部的业务请求的优先级标识从高优先级到低优先级的顺序依次执行对应的业务请求。本发明通过上述方案,针对视频直播大流量业务,智能化动态流控方法,能够根据请求的类型、机器的运行状态、视频直播服务的业务流量特点,对进入服务节点的流量进行动态调控和差异化处理。
Description
技术领域
本发明属于视频直播技术及云原生技术领域,具体涉及一种视频直播服务的动态流控方法和系统。
背景技术
近来,随着互联网技术的迅猛发展,视频直播服务已成为当今潮流。其中,“网络直播”大致分两类,一类是在网上提供电视信号的观看,例如各类体育比赛和文艺活动的直播,这类直播原理是将电视(模拟)信号通过采集,转换为数字信号输入电脑,实时上传网站供人观看,相当于“网络电视”;另一类是人们所了解的“网络直播”:在现场架设独立的信号采集设备(音频+视频)导入导播端(导播设备或平台),再通过网络上传至服务器,发布至网址供人观看。本专利特指第二类直播,即事件式直播。
视频直播服务一般在观众端以直播间页面的方式呈现,除了观看IP视频流外,一般还具备观众权限鉴权管理、直播间信息呈现(如直播活动场次的介绍、事件计划单等等)、直播间互动(如签到、问卷、聊天、点赞等)等业务功能,日益增长的直播流量以及不断丰富的用户需求,对视频直播服务带来了巨大的负载压力。视频直播服务一般采取前后端分离、后端各微服务云化部署(分布式、集群)的方式,是典型的用户高并发的云原生业务。
流量控制是微服务架构中的重要技术,流量控制的核心作用是限制流出某一网络的某一连接的流量与突发,使这类报文以比较均匀的速度流动发送,达到保护系统相对稳定的目的。几乎所有的服务治理中间件(如SpringCloud、SpringCloudAlibaba、K8S)和一些独立的流控软件(如Sentinel)都提供了流量控制功能(简称流控)。但目前主流的流控算法大多基于预定义、静态参数以及固定的阈值限定流程,不区分请求类型,当集群规模、业务连接数和业务流量较大时,流控效率较低。另一方面,也没有充分结合视频直播服务的特点进行量身定制,视频直播服务具备用户分级、业务分级、突发流量集中等特点,在设计流控算法时,可结合以上特点建立动态模型,从而提升流控效率。
发明内容
在下文中给出了关于本发明实施例的简要概述,以便提供关于本发明的某些方面的基本理解。应当理解,以下概述并不是关于本发明的穷举性概述。它并不是意图确定本发明的关键或重要部分,也不是意图限定本发明的范围。其目的仅仅是以简化的形式给出某些概念,以此作为稍后论述的更详细描述的前序。
根据本申请的一个方面,提供一种视频直播服务的动态流控系统,其包括:
动态流控调度模块,用于创建多级流量控制策略,并实时监控服务节点的运行状态,根据服务节点的运行状态选择对应流量控制策略;
流量标识模块,用于对根据预设的业务分级规则对服务节点内部的业务请求进行分级而得到不同的处理优先级,每个处理优先级具有对应的优先级标识;每一级的流量控制策略对应多个处理优先级;
流量控制模块,用于执行动态流控调度模块选择的流量控制策略,并按照服务节点内部的业务请求的优先级标识从高优先级到低优先级的顺序依次执行对应的业务请求。
具体实现时,流量控制模块用于实现限流功能并执行对应的流量控制策略,流量控制策略由所述动态流控调度模块确定。
进一步的,为缩减整个动态流控方法的运算难度以实现流畅的流量控制方案,所述流量控制策略分为三个流控等级。进一步的,根据服务节点的运行状态选择对应流量控制策略,具体是根据服务节点的机器负载指标数据来选择,所述机器负载指标数据包括CPU占用率、内存占用率和节点的TPS(系统吞吐量)等等。
其中,根据预设的业务分级规则对服务节点内部的业务请求进行分级,具体是根据服务节点内部的流量请求类型对任务进行分级,以确定出该流量请求对应的业务级别,并对业务级别进行优先级标识,从而将任务划分为不同处理优先级,便于进行差异性处理。优选的,根据预设的业务分级规则对服务节点内部的业务请求进行分级,具体是分为三级:低优先级、中优先级和高优先级,并将不同处理优先级的请求标记成不同颜色,使低优先级、中优先级和高优先级分别对应红色、黄色和绿色(当然,也可以是其他对应颜色),并将颜色标记信息存储到该业务请求的报文头中。预设的业务分级规则,具体是根据业务请求的重要性分类以及视频直播业务特点来分级,首先根据请求方法的分类方式划分,将所有GET方式的请求均视为查询操作,将所有PUT、POST、DELETE方式操作均视为修改操作,然后根据请求参数区分业务分级,将高权限或核心资源的请求判定为相对高优先级。
进一步的,流量控制模块采用改进的trTCM双速双桶算法实现,采用RFC2698定义的双速三色标记器trTCM(A Two Rate Three Color Marker)算法对流量进行测评,根据评估结果为报文打颜色标记,即绿色、黄色和红色,关注速率上的突发。本发明对该算法的参数和使用规则进行改进,以适应不同的流控模式;可以根据系统资源的实际动态使用情况进行参数导入,进行动态流控等级的设定;更好的适应于视频直播这类流量突发型业务。
其中,该trTCM双速双桶算法具有4种流量参数:
CIR(Committed Information Rate)承诺信息速率:以表示向C桶中投放令牌的速率,即C桶允许传输或转发报文的平均速率;
PIR(Peak information rate)峰值信息速率:峰值信息速率,单位是bit/s,表示向P桶中投放令牌的速率,即P桶允许传输或转发报文的峰值速率,PIR大于CIR;
CBS(Committed Burst Size)承诺突发尺寸:单位为bit,表示C桶的容量,即C桶瞬间能够通过的承诺突发流量。用来定义在部分流量速率超过CIR之前的最大突发流量尺寸,承诺突发尺寸必须不小于报文的最大长度;
PBS(Peak Burst Size)超额突发尺寸,单位为bit,表示P桶的容量,即P桶瞬间能够通过的峰值突发流量,用来定义每次突发所允许的最大的流量尺寸。
进一步的,所述动态流控调度模块的流量控制策略包括一级流控等级、二级流控等级和三级流控等级;一级流控等级中,系统负载较低,所有流量请求均可执行,所述流量控制模块在该等级下不工作,直接透传所有业务流量;二级流控等级中:该等级下,系统负载逐渐上升,少数业务流量请求无法立刻响应,此时开启轻度限流模式,分别以CIR0和PIR0的速度向C桶和P桶中添加令牌,C桶和P桶的大小分别为CBS和PBS,当桶中令牌满后,新产生的令牌直接丢弃。当被标识的流量请求到达本模块时,按以下规则处理:
被标记为绿色的请求具有高优先级,系统直接处理该请求,同时扣减P桶和C桶的令牌数;
被标记成黄色的请求具有中优先级,先尝试从P桶中获取令牌,若令牌数足够,则处理该任务并扣减P桶中的令牌;若P桶中的令牌数不够但C桶中的令牌数充足,则处理该任务并扣减C桶中的令牌数,否则采取延迟处理的策略,将该任务加入等待队列中延迟处理。
被标记为红色的请求具有低优先级,先尝试从P桶中获取令牌,若桶中令牌数足够,则处理该任务并扣减P桶中的令牌,否则直接丢弃该请求。
三级流控等级:该等级下,系统负载压力严重,处理性能下降,大量任务堆积不能及时处理,此时开启重度限流模式。设定C桶和P桶的令牌下发速率分别为CIR1和PIR1,按以下规则处理达到的标识流量:
被标识为绿色的请求,先从P桶中获取令牌,若令牌数足够,则直接处理该任务并扣减P桶的令牌数,若P桶中令牌数不够,则从C桶中获取令牌,若C桶中令牌数重组,则处理该任务并扣减C桶中令牌数,否则将该任务添加到等待队列中进行延迟处理。此流程如附图五所示。
被标记为黄色的请求:从P桶中获取令牌,若令牌数足够,则直接处理该请求并扣减P桶中的令牌数,否则直接丢弃该请求。此流程如附图六所示。
被标记为红色的请求:先判断P桶中剩余令牌数是否大于指定的阈值,若大于,则直接处理该任务并扣减P桶中的令牌数,否则直接丢弃该请求。此流程如附图七所示。
流量控制模块能实现流量的细粒度控制和差异化处理,在实现限流功能的同时,保证核心请求的正常处理。
根据本申请的另一方面,提供一种视频直播服务的动态流控方法,其包括:
创建多级流量控制策略;每一级的流量控制策略对应多个处理优先级,所述处理优先级是根据预设的业务分级规则对服务节点内部的业务请求进行分级而得到,每个处理优先级具有对应的优先级标识;
实时监控服务节点的运行状态,根据服务节点的运行状态选择对应流量控制策略,并按照服务节点内部的业务请求的优先级标识从高优先级到低优先级的顺序依次执行对应的业务请求。
进一步的,所述流量控制策略分为三个流控等级。
进一步的,根据服务节点的运行状态选择对应流量控制策略,具体是根据服务节点的机器负载指标数据来选择,所述机器负载指标数据包括CPU占用率、内存占用率和节点的TPS。
进一步的,根据预设的业务分级规则对服务节点内部的业务请求进行分级,具体是根据服务节点内部的流量请求类型对任务进行分级,以确定出该流量请求对应的业务级别,并将任务划分为低优先级、中优先级和高优先级;对业务级别进行优先级标识,将不同处理优先级的请求标记成不同颜色,使低优先级、中优先级和高优先级分别对应红色、黄色和绿色,并将颜色标记信息存储到该业务请求的报文头中。
本发明通过上述方案,针对视频直播大流量业务,智能化动态流控方法,能够根据请求的类型、机器的运行状态、视频直播服务的业务流量特点,对进入服务节点的流量进行动态调控和差异化处理。可实现不同请求并发量下,系统的两项负载指标数据发生改变,根据负载指标数值的增减情况,对流控等级进行动态升降,达到不同的程度的控制效果。经测试,同样规模同样配置的环境下,采用该方法,服务客户数和流量能有效提升。
附图说明
本发明可以通过参考下文中结合附图所给出的描述而得到更好的理解,其中在所有附图中使用了相同或相似的附图标记来表示相同或者相似的部件。所述附图连同下面的详细说明一起包含在本说明书中并且形成本说明书的一部分,而且用来进一步举例说明本发明的优选实施例和解释本发明的原理和优点。在附图中:
图1为本发明实施例的系统组成图;
图2为本发明实施例的流量优先级标识流程图;
图3为本发明实施例的二级流控下黄色请求处理流程图;
图4为本发明实施例的二级流控下红色请求处理流程图;
图5为本发明实施例的三级流控下绿色请求处理流程图;
图6为本发明实施例的三级流控下黄色请求处理流程图;
图7为本发明实施例的三级流控下红色请求处理流程图;
图8为本发明实施例的流控等级确定与动态调整流程图。
具体实施方式
下面将参照附图来说明本发明的实施例。在本发明的一个附图或一种实施方式中描述的元素和特征可以与一个或更多个其它附图或实施方式中示出的元素和特征相结合。应当注意,为了清楚的目的,附图和说明中省略了与本发明无关的、本领域普通技术人员已知的部件和处理的表示和描述。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
种视频直播服务的动态流控方法和系统。
本发明在微服务架构下,针对视频直播大流量业务实现一种智能化的动态流控方法,能够根据请求的类型、机器的运行状态、视频直播服务的业务流量特点,对进入服务节点的流量进行动态调控和差异化处理,经测试,同样规模同样配置的环境下,采用该方法,服务客户数和流量能有效提升。
本发明实施例提供一种视频直播服务的动态流控系统,参见图1,其主要包含三个模块:流量标识模块、动态流控调度模块和流量控制模块。视频直播观众流量经过全局负载均衡模块进入后端服务集群,后端服务集群包括多个微服务节点,每个微服务节点包括服务网关和后端服务,服务网关设置有流量标识模块、动态流控调度模块和流量控制模块,流量标识模块和流量控制模块均与动态流控调度模块连接。
其中,参见图2,流量标识模块用于对进入节点内部的流量请求进行优先级标识,根据请求的类型将任务划分为不同处理优先级,便于流量控制模块进行差异性处理。流量标识模块采取三级等级体系:低优先级、中优先级和高优先级,并将不同优先级的请求标记成不同颜色,分别对应红、黄、绿,将颜色标记信息存储到该请求的报文头中。标识优先级的方法同时考虑通用请求的重要性分类,以及视频直播业务特点,首先根据请求方法的分类方式划分,将所有GET方式的请求均视为查询操作,将所有PUT、POST、DELETE方式操作均视为修改操作,然后根据请求参数区分业务分级,将高权限或核心资源的请求判定为相对高优先级,具体三级等级优先级的判定流程如附图2所示。
流量控制模块用于实现限流功能并执行限流策略,本流量控制模块工作在三个不同流控等级下,流控等级由动态流控调度模块确定并传输到本流量控制模块。本流量控制模块基于通用trTCM算法进行改造:
一级流控等级:该等级下,系统负载较低,所有流量请求均可执行,流量控制模块在该等级下不工作,直接透传所有业务流量;
二级流控等级:该等级下,系统负载逐渐上升,少数业务流量请求无法立刻响应,此时开启轻度限流模式,分别以CIR0和PIR0的速度向C桶和P桶中添加令牌,C桶和P桶的大小分别为CBS和PBS,当桶中令牌满后,新产生的令牌直接丢弃。当被标识的流量请求到达本模块时,按以下规则处理:
被标记为绿色的请求具有高优先级,系统直接处理该请求,同时扣减P桶和C桶的令牌数;
被标记成黄色的请求具有中优先级,先尝试从P桶中获取令牌,若令牌数足够,则处理该任务并扣减P桶中的令牌;若P桶中的令牌数不够但C桶中的令牌数充足,则处理该任务并扣减C桶中的令牌数,否则采取延迟处理的策略,将该任务加入等待队列中延迟处理。此流程如附图3所示。
被标记为红色的请求具有低优先级,先尝试从P桶中获取令牌,若桶中令牌数足够,则处理该任务并扣减P桶中的令牌,否则直接丢弃该请求,此流程如附图4所示。
三级流控等级:该等级下,系统负载压力严重,处理性能下降,大量任务堆积不能及时处理,此时开启重度限流模式。设定C桶和P桶的令牌下发速率分别为CIR1和PIR1,按以下规则处理达到的标识流量:
被标识为绿色的请求,先从P桶中获取令牌,若令牌数足够,则直接处理该任务并扣减P桶的令牌数,若P桶中令牌数不够,则从C桶中获取令牌,若C桶中令牌数重组,则处理该任务并扣减C桶中令牌数,否则将该任务添加到等待队列中进行延迟处理。此流程如附图5所示。
被标记为黄色的请求:从P桶中获取令牌,若令牌数足够,则直接处理该请求并扣减P桶中的令牌数,否则直接丢弃该请求。此流程如附图6所示。
被标记为红色的请求:先判断P桶中剩余令牌数是否大于指定的阈值,若大于,则直接处理该任务并扣减P桶中的令牌数,否则直接丢弃该请求。此流程如附图7所示。
流量控制模块能实现流量的细粒度控制和差异化处理,在实现限流功能的同时,保证核心请求的正常处理。
参见图8,动态流控调度模块用于监控服务节点的运行状态,实现动态实时流量控制。通过采集服务节点的负载指标数据,包含CPU占用率Rcpu,内存占用率Rmem,节点的TPS,实行三级流控等级调节。
一级流控等级:机器负载较轻,系统资源充足,此时关闭流量控制模块。
二级流控等级:机器负载占用率较高,少数业务流量请求无法立刻响应,此时需要开启流控操作,对部分请求进行限制,保证系统稳定性。
三级流控等级:该等级下,系统负载压力严重,处理性能下降,大量任务堆积不能及时处理,此时开启重度限流模式,保证核心请求任务的处理,保证系统可用性。
各等级按附图8中的流程进行动态调整确认,并执行相应的升降操作。
系统初始运行时,先将流控等级设定为一级,同时开启节点的负载信息采集功能,将Rcpu低于65%且Rmem低于70%视为节点健康状态,将Rcpu高于90%或Rmem高于90%视为节点高负荷运行状态,其他为中间状态。不同请求并发量下,系统的两项负载指标数据发生改变,根据负载指标数值的增减情况,对流控等级进行动态升降,达到不同的程度的控制效果。
本发明实施例还提供一种视频直播服务的动态流控方法,其包括:
创建多级流量控制策略;每一级的流量控制策略对应多个处理优先级,所述处理优先级是根据预设的业务分级规则对服务节点内部的业务请求进行分级而得到,每个处理优先级具有对应的优先级标识;
实时监控服务节点的运行状态,根据服务节点的运行状态选择对应流量控制策略,并按照服务节点内部的业务请求的优先级标识从高优先级到低优先级的顺序依次执行对应的业务请求。
下面通过具体的实施例来阐述本发明的应用:系统初始状态,经数据采集监控,CPU占用率Rcpu在65%以下且内存占用率Rmem在80%以下,此时动态流控调度模块确定该节点为一级流控状态,流量控制模块不使能,视频直播的流量请求均得到处理满足;
随着观看直播的观众并发量上升,Rcpu经监测升至65%以上,此时流控等级升为二级,对于已认证的登录用户,在发起评论等写操作时,流量请求标识为绿色,系统直接处理该请求,同时扣减P桶和C桶的令牌数,对于非认证普通用户,在发起查询操作时,流量请求标识为红色,在进行P桶令牌判断后,如令牌数不够,则该请求将丢弃;
并发量继续上升的情况下,Rcpu经监测升至90%以上,此时流控等级升为三级,上述被标识为绿色的请求,先从P桶中获取令牌,若令牌数足够,则直接处理该任务并扣减P桶的令牌数,若P桶中令牌数不够,则从C桶中获取令牌,若C桶中令牌数重组,则处理该任务并扣减C桶中令牌数,否则将该任务添加到等待队列中进行延迟处理。上述被标记为红色的请求:先判断P桶中剩余令牌数是否大于指定的阈值,若大于,则直接处理该任务并扣减P桶中的令牌数,否则直接丢弃该请求。
随着直播的进行,陆续有观众进入和离开直播间,直播流量峰值区间过去,Rcpu经监测降至80%以下,且Rmem经监测降至80%以下,流控等级调至二级流控,随着Rcpu降至65%以下,且Rmem降至70以下,流控等级重新回归一级流控,以上两类等级的流控,对于不同颜色标识的直播流量请求,仍然按照上述对应的流量控制模块流程进行处理。
应该强调,术语“包括/包含”在本文使用时指特征、要素、步骤或组件的存在,但并不排除一个或更多个其它特征、要素、步骤或组件的存在或附加。
此外,本发明的方法不限于按照说明书中描述的时间顺序来执行,也可以按照其他的时间顺序地、并行地或独立地执行。因此,本说明书中描述的方法的执行顺序不对本发明的技术范围构成限制。
尽管上面已经通过对本发明的具体实施例的描述对本发明进行了披露,但是,应该理解,上述的所有实施例和示例均是示例性的,而非限制性的。本领域的技术人员可在所附权利要求的精神和范围内设计对本发明的各种修改、改进或者等同物。这些修改、改进或者等同物也应当被认为包括在本发明的保护范围内。
Claims (11)
1.一种视频直播服务的动态流控系统,其特征在于,包括:
动态流控调度模块,用于创建多级流量控制策略,并实时监控服务节点的运行状态,根据服务节点的运行状态选择对应流量控制策略;
流量标识模块,用于对根据预设的业务分级规则对服务节点内部的业务请求进行分级而得到不同的处理优先级,每个处理优先级具有对应的优先级标识;每一级的流量控制策略对应多个处理优先级;
流量控制模块,用于执行动态流控调度模块选择的流量控制策略,并按照服务节点内部的业务请求的优先级标识从高优先级到低优先级的顺序依次执行对应的业务请求。
2.根据权利要求1所述的动态流控系统,其特征在于,所述动态流控调度模块的流量控制策略分为三个流控等级。
3.根据权利要求1所述的动态流控系统,其特征在于,所述动态流控调度模块根据服务节点的运行状态选择对应流量控制策略,具体是根据服务节点的机器负载指标数据来选择,所述机器负载指标数据包括CPU占用率、内存占用率和节点的TPS。
4.根据权利要求1所述的动态流控系统,其特征在于,所述流量标识模块根据预设的业务分级规则对服务节点内部的业务请求进行分级,具体是根据服务节点内部的流量请求类型对任务进行分级,以确定出该流量请求对应的业务级别,并将任务划分为低优先级、中优先级和高优先级;对业务级别进行优先级标识,将不同处理优先级的请求标记成不同颜色,使低优先级、中优先级和高优先级分别对应红色、黄色和绿色,并将颜色标记信息存储到该业务请求的报文头中。
5.根据权利要求4所述的动态流控系统,其特征在于,所述预设的业务分级规则,具体是根据业务请求的重要性分类以及视频直播业务特点来分级,首先根据请求方法的分类方式划分,将所有GET方式的请求均视为查询操作,将所有PUT、POST、DELETE方式操作均视为修改操作,然后根据请求参数区分业务分级,将高权限或核心资源的请求判定为相对高优先级。
6.根据权利要求1所述的动态流控系统,其特征在于,所述流量控制模块采用改进的trTCM双速双桶算法实现,采用RFC2698定义的双速三色标记器trTCM算法对流量进行测评,根据评估结果为报文打上绿色、黄色或者红色的颜色标记;其中,该trTCM双速双桶算法具有4种流量参数:
CIR承诺信息速率:以表示向C桶中投放令牌的速率,即C桶允许传输或转发报文的平均速率;
PIR峰值信息速率:峰值信息速率,单位是bit/s,表示向P桶中投放令牌的速率,即P桶允许传输或转发报文的峰值速率,PIR大于CIR;CBS承诺突发尺寸:单位为bit,表示C桶的容量,即C桶瞬间能够通过的承诺突发流量;用来定义在部分流量速率超过CIR之前的最大突发流量尺寸,承诺突发尺寸必须不小于报文的最大长度;
PBS超额突发尺寸,单位为bit,表示P桶的容量,即P桶瞬间能够通过的峰值突发流量,用来定义每次突发所允许的最大的流量尺寸。
7.根据权利要求6所述的动态流控系统,其特征在于,所述动态流控调度模块的流量控制策略包括一级流控等级、二级流控等级和三级流控等级;
一级流控等级中,系统负载较低,所有流量请求均可执行,所述流量控制模块在该等级下不工作,直接透传所有业务流量;
二级流控等级中:该等级下,系统负载逐渐上升,少数业务流量请求无法立刻响应,此时开启轻度限流模式,分别以CIR0和PIR0的速度向C桶和P桶中添加令牌,C桶和P桶的大小分别为CBS和PBS;当桶中令牌满后,新产生的令牌直接丢弃;当被标识的流量请求到达本动态流控调度模块时,按以下规则处理:
被标记为绿色的请求具有高优先级,系统直接处理该请求,同时扣减P桶和C桶的令牌数;
被标记成黄色的请求具有中优先级,先尝试从P桶中获取令牌,若令牌数足够,则处理该任务并扣减P桶中的令牌;若P桶中的令牌数不够但C桶中的令牌数充足,则处理该任务并扣减C桶中的令牌数,否则采取延迟处理的策略,将该任务加入等待队列中延迟处理;
被标记为红色的请求具有低优先级,先尝试从P桶中获取令牌,若桶中令牌数足够,则处理该任务并扣减P桶中的令牌,否则直接丢弃该请求;三级流控等级:该等级下,系统负载压力严重,处理性能下降,大量任务堆积不能及时处理,此时开启重度限流模式;设定C桶和P桶的令牌下发速率分别为CIR1和PIR1,按以下规则处理达到的标识流量:被标识为绿色的请求,先从P桶中获取令牌,若令牌数足够,则直接处理该任务并扣减P桶的令牌数,若P桶中令牌数不够,则从C桶中获取令牌,若C桶中令牌数重组,则处理该任务并扣减C桶中令牌数,否则将该任务添加到等待队列中进行延迟处理;
被标记为黄色的请求:从P桶中获取令牌,若令牌数足够,则直接处理该请求并扣减P桶中的令牌数,否则直接丢弃该请求;
被标记为红色的请求:先判断P桶中剩余令牌数是否大于指定的阈值,若大于,则直接处理该任务并扣减P桶中的令牌数,否则直接丢弃该请求。
8.一种视频直播服务的动态流控方法,其特征在于,包括:
创建多级流量控制策略;每一级的流量控制策略对应多个处理优先级,所述处理优先级是根据预设的业务分级规则对服务节点内部的业务请求进行分级而得到,每个处理优先级具有对应的优先级标识;
实时监控服务节点的运行状态,根据服务节点的运行状态选择对应流量控制策略,并按照服务节点内部的业务请求的优先级标识从高优先级到低优先级的顺序依次执行对应的业务请求。
9.根据权利要求8所述的动态流控方法,其特征在于,所述流量控制策略分为三个流控等级。
10.根据权利要求8所述的动态流控方法,其特征在于,根据服务节点的运行状态选择对应流量控制策略,具体是根据服务节点的机器负载指标数据来选择,所述机器负载指标数据包括CPU占用率、内存占用率和节点的TPS。
11.根据权利要求8所述的动态流控方法,其特征在于,根据预设的业务分级规则对服务节点内部的业务请求进行分级,具体是根据服务节点内部的流量请求类型对任务进行分级,以确定出该流量请求对应的业务级别,并将任务划分为低优先级、中优先级和高优先级;对业务级别进行优先级标识,将不同处理优先级的请求标记成不同颜色,使低优先级、中优先级和高优先级分别对应红色、黄色和绿色,并将颜色标记信息存储到该业务请求的报文头中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211358942.8A CN116095006A (zh) | 2022-11-01 | 2022-11-01 | 一种视频直播服务的动态流控方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211358942.8A CN116095006A (zh) | 2022-11-01 | 2022-11-01 | 一种视频直播服务的动态流控方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116095006A true CN116095006A (zh) | 2023-05-09 |
Family
ID=86201311
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211358942.8A Pending CN116095006A (zh) | 2022-11-01 | 2022-11-01 | 一种视频直播服务的动态流控方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116095006A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116719630A (zh) * | 2023-08-11 | 2023-09-08 | 中邮消费金融有限公司 | 案件调度方法、设备、存储介质及装置 |
-
2022
- 2022-11-01 CN CN202211358942.8A patent/CN116095006A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116719630A (zh) * | 2023-08-11 | 2023-09-08 | 中邮消费金融有限公司 | 案件调度方法、设备、存储介质及装置 |
CN116719630B (zh) * | 2023-08-11 | 2024-03-15 | 中邮消费金融有限公司 | 案件调度方法、设备、存储介质及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6308148B1 (en) | Network flow data export | |
US7042848B2 (en) | System and method for hierarchical policing of flows and subflows of a data stream | |
CN108259367B (zh) | 一种基于软件定义网络的服务感知的流策略定制方法 | |
US7509408B2 (en) | System analysis apparatus and method | |
CN1278524C (zh) | 多级警管逻辑的分组处理器 | |
US7206284B2 (en) | Method and apparatus for automatic congestion avoidance for differentiated service flows | |
US9614755B2 (en) | Combined hardware/software forwarding mechanism and method | |
CN108833279B (zh) | 软件定义网络中基于业务分类的多约束QoS路由的方法 | |
DE60034353T2 (de) | Regelbasierte ip datenverarbeitung | |
CN104102700A (zh) | 一种面向因特网不平衡应用流的分类方法 | |
CN101919226A (zh) | 服务质量控制方法和网络设备 | |
CN108900374A (zh) | 一种应用于dpi设备的数据处理方法和装置 | |
CN116095006A (zh) | 一种视频直播服务的动态流控方法和系统 | |
CN101232462A (zh) | 实时业务的服务质量调整方法及装置 | |
US8532331B2 (en) | Method for monitoring a picture or multimedia video pictures in a communication system | |
CN1750517A (zh) | 一种实现业务带宽保证的方法 | |
Krishnamoorthi et al. | Slow but steady: Cap-based client-network interaction for improved streaming experience | |
CN110417675A (zh) | 一种soc下高性能探针的网络分流方法、装置及系统 | |
Aureli et al. | Going beyond diffserv in ip traffic classification | |
CN103368868A (zh) | 一种网络流量带宽的控制方法、装置及系统 | |
CN100544321C (zh) | 支持动态带宽分割的带宽管理方法和装置 | |
Zhao et al. | BCTCP: A feedback-based congestion control method | |
CN102075418B (zh) | 一种网络数据流量控制设备及方法 | |
Çakmak et al. | A Review: Active queue management algorithms in mobile communication | |
CN113873001A (zh) | 一种基于http请求分类的负载均衡优化方法 |
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 |