CN112751691B - 网络流量的限速方法、装置、中控设备和网关 - Google Patents

网络流量的限速方法、装置、中控设备和网关 Download PDF

Info

Publication number
CN112751691B
CN112751691B CN201911048394.7A CN201911048394A CN112751691B CN 112751691 B CN112751691 B CN 112751691B CN 201911048394 A CN201911048394 A CN 201911048394A CN 112751691 B CN112751691 B CN 112751691B
Authority
CN
China
Prior art keywords
bandwidth
gateway
target service
quota
real
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
CN201911048394.7A
Other languages
English (en)
Other versions
CN112751691A (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 Kingsoft Cloud Network Technology Co Ltd
Beijing Kingsoft Cloud Technology Co Ltd
Original Assignee
Beijing Kingsoft Cloud Network Technology Co Ltd
Beijing Kingsoft Cloud 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 Beijing Kingsoft Cloud Network Technology Co Ltd, Beijing Kingsoft Cloud Technology Co Ltd filed Critical Beijing Kingsoft Cloud Network Technology Co Ltd
Priority to CN201911048394.7A priority Critical patent/CN112751691B/zh
Priority to PCT/CN2020/124795 priority patent/WO2021083269A1/zh
Publication of CN112751691A publication Critical patent/CN112751691A/zh
Application granted granted Critical
Publication of CN112751691B publication Critical patent/CN112751691B/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
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0631Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0823Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/76Admission control; Resource allocation using dynamic resource allocation, e.g. in-call renegotiation requested by the user or requested by the network in response to changing network conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/78Architectures of resource allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0631Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
    • H04L41/0645Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis by additionally acting on or stimulating the network after receiving notifications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0894Packet rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring

Landscapes

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

Abstract

本发明提供了一种网络流量的限速方法、装置、中控设备和网关,其中,中控设备接收限速网关集群中第一网关发送的流量告警,然后获取该目标业务在限速网关集群中各个网关的实时带宽;再根据目标业务在第一网关的当前配额带宽、在各个网关的实时带宽,以及预存的目标业务的配额总带宽,更新目标业务在限速网关集群中各个网关的配额带宽。该方法中,限速网关集群中的任一网关的目标业务的实时带宽超出指定带宽后,及时向中控设备发送流量告警,中控设备根据各个网关对目标业务的实时带宽和该目标业务的配额总带宽,重新分配各个网关的配额带宽,以使各个网关的配额带宽与目标业务在各个网关的实时带宽相匹配,从而对目标业务的流量限速更加准确。

Description

网络流量的限速方法、装置、中控设备和网关
技术领域
本发明涉及信息技术领域,尤其是涉及一种网络流量的限速方法、装置、中控设备和网关。
背景技术
相关技术中,中控程序对限速网关集群中的限速网关统一分配配额带宽,在某个时间段内,限速网关按照被分配的配额带宽进行限速。在限速过程中,限速网关集群通常还会以租户业务为粒度进行限速,以使租户业务占用的带宽与租户购买的带宽相匹配。租户业务产生的网络流量通常会散列至一个或多个限速网关进行限速,但是如果租户业务某一时刻产生突发网络流量,如果限速网关的配额带宽与散列至该网关的流量相差较大,限速网关难以及时调整配额带宽以响应该突发网络流量,导致限速网关集群对租户业务的限速带宽与租户购买的带宽不匹配,带宽限速准确性较差。
发明内容
本发明的目的在于提供一种网络流量的限速方法、装置、中控设备和网关,当出现突发网络流量时,限速网关可以及时调整配额带宽,以使各个网关的配额带宽与目标业务在各个网关的实时带宽相匹配,从而对目标业务的流量限速更加准确。
第一方面,本发明提供的一种网络流量的限速方法,应用于中控设备,所述方法包括:接收限速网关集群中第一网关发送的流量告警;其中,所述流量告警用于指示:预设目标业务在第一网关的实时带宽超出当前配额带宽的预定比例;基于所述流量告警获取所述目标业务在所述限速网关集群中各个网关的实时带宽;根据所述目标业务在所述第一网关的当前配额带宽、所述目标业务在所述各个网关的实时带宽,以及预存的所述目标业务的配额总带宽,更新所述目标业务在所述限速网关集群中各个网关的配额带宽。
进一步的,所述流量告警至少包括:所述第一网关的编号、所述目标业务的编号、所述目标业务在所述第一网关的配额带宽,以及所述流量告警生成时所述目标业务在所述第一网关的实时带宽。
进一步的,所述基于所述流量告警获取所述目标业务在所述限速网关集群中各个网关的实时带宽,包括:在收到所述流量告警后,从所述流量告警中提取所述目标业务的编号;基于所述目标业务的编号向所述限速网关集群中,除所述第一网关以外的网关发送对所述目标业务的实时带宽的请求信息;接收除所述第一网关以外的网关返回的对所述目标业务的实时带宽。
进一步的,根据所述目标业务在所述第一网关的当前配额带宽、所述目标业务在所述各个网关的实时带宽,以及预存的所述目标业务的配额总带宽,更新所述目标业务在所述限速网关集群中各个网关的配额带宽的步骤,包括:从所述第一网关发送的流量告警中提取所述目标业务在所述第一网关的配额带宽;判断提取出的所述配额带宽是否大于零;根据配额带宽的判断结果、所述目标业务在所述各个网关的实时带宽、以及所述目标业务的配额总带宽,调整所述各个网关对所述目标业务的配额带宽。
进一步的,接收限速网关集群中第一网关发送的流量告警的步骤之后,所述方法还包括:基于所述流量告警获取所述目标业务在所述限速网关集群中各个网关的配额带宽;所述根据所述目标业务在所述第一网关的当前配额带宽、所述目标业务在所述各个网关的实时带宽,以及预存的所述目标业务的配额总带宽,更新所述目标业务在所述限速网关集群中各个网关的配额带宽的步骤,包括:如果所述目标业务在所述第一网关的配额带宽大于零,计算所述目标业务在所述各个网关的配额带宽的总和,得到所述限速网关集群对所述目标业务的配额总带宽;判断计算得到的配额总带宽是否大于预先存储在中控设备中的所述目标业务的配额总带宽;根据配额总带宽的判断结果,调整所述目标业务在所述限速网关集群中各个网关的配额带宽。
进一步的,根据配额总带宽的判断结果,调整所述目标业务在所述限速网关集群中各个网关的配额带宽的步骤,包括:如果计算得到的配额总带宽等于或小于存储的配额总带宽,计算所述目标业务在所述各个网关的实时带宽的总和,得到所述目标业务在所述限速网关集群的实时总带宽;针对所述限速网关集群中的每个网关,将所述目标业务在当前网关的配额带宽调整为:所述目标业务在所述当前网关的实时带宽与所述目标业务的实时总带宽的比值,乘以所述存储的配额总带宽。
进一步的,根据配额总带宽的判断结果,调整所述目标业务在所述限速网关集群中各个网关的配额带宽的步骤,包括:如果计算得到的配额总带宽大于存储的配额总带宽,计算所述目标业务在所述各个网关的实时带宽的总和,得到所述目标业务在所述限速网关集群的实时总带宽;针对所述限速网关集群中的每个网关,将所述目标业务在当前网关的配额带宽调整为:所述存储的配额总带宽的二倍与所述目标业务的实时总带宽的差值,乘以,所述目标业务在所述当前网关的实时带宽与所述目标业务的实时总带宽的比值。
进一步的,根据所述目标业务在所述第一网关的当前配额带宽、所述目标业务在所述各个网关的实时带宽,以及预存的所述目标业务的配额总带宽,更新所述目标业务在所述限速网关集群中各个网关的配额带宽的步骤,包括:如果所述目标业务在所述第一网关的配额带宽等于零,计算所述目标业务在所述各个网关的实时带宽的总和,得到所述限速网关集群对所述目标业务的实时总带宽;判断所述实时总带宽是否大于预先存储在中控设备中的所述目标业务的配额总带宽;如果大于,针对所述限速网关集群中的每个网关,将所述目标业务在当前网关的配额带宽调整为:所述目标业务在所述当前网关的实时带宽。
进一步的,接收限速网关集群中第一网关发送的流量告警之前,所述方法包括:根据所述目标业务的配额总带宽,为所述限速网关集群中的各个网关设置对所述目标业务的初始的配额带宽;其中,所述初始的配额带宽等于所述目标业务的配额总带宽与所述限速网关集群中的各个网关总数的比值。
第二方面,本发明提供的一种网络流量的限速方法,应用于网关,所述网关被配置为能够接收对目标业务的请求报文和/或发送所述目标业务发出的响应报文,所述网关基于存储的配额带宽对所述目标业务的流量进行限速,所述方法包括:在检测到目标业务的实时带宽超出当前配额带宽的预定比例时,生成流量告警;将所述流量告警发送至与所述网关通信连接的中控设备;接收所述中控设备返回的更新后的配额带宽,并按照更新后的配额带宽对所述目标业务的流量进行限速。
进一步的,所述网关基于存储的配额带宽对所述目标业务的流量进行限速,包括:如果所述配额宽带不为零,则在目标业务的实时带宽超出当前配额带宽的之后的时间段内,丢弃接收到的报文;如果所述配额带宽为零,则在目标业务的实时带宽超出当前配额带宽的之后的时间段内,不丢弃接收到的报文。
进一步的,所述方法还包括:如果接收到所述中控设备发送的对所述目标业务的实时带宽的请求信息,向所述中控设备返回对所述目标业务的实时带宽。
第三方面,本发明提供的一种网络流量的限速装置,应用于中控设备,所述装置包括:第一接收模块,用于接收限速网关集群中第一网关发送的流量告警;其中,所述流量告警用于指示:预设目标业务在第一网关的实时带宽超出当前配额带宽的预定比例;第一获取模块,用于基于所述流量告警获取所述目标业务在所述限速网关集群中各个网关的实时带宽;更新模块,用于根据所述目标业务在所述第一网关的当前配额带宽、所述目标业务在所述各个网关的实时带宽,以及预存的所述目标业务的配额总带宽,更新所述目标业务在所述限速网关集群中各个网关的配额带宽。
进一步的,所述流量告警至少包括:所述第一网关的编号、所述目标业务的编号、所述目标业务在所述第一网关的配额带宽,以及所述流量告警生成时所述目标业务在所述第一网关的实时带宽。
进一步的,所述第一获取模块还用于:在收到所述流量告警后,从所述流量告警中提取所述目标业务的编号;基于所述目标业务的编号向所述限速网关集群中,除所述第一网关以外的网关发送对所述目标业务的实时带宽的请求信息;接收除所述第一网关以外的网关返回的对所述目标业务的实时带宽。
进一步的,所述更新模块还用于:从所述第一网关发送的流量告警中提取所述目标业务在所述第一网关的配额带宽;判断提取出的所述配额带宽是否大于零;根据配额带宽的判断结果、所述目标业务在所述各个网关的实时带宽、以及所述目标业务的配额总带宽,调整所述各个网关对所述目标业务的配额带宽。
进一步的,所述装置还包括:第二获取模块,用于基于所述流量告警获取所述目标业务在所述限速网关集群中各个网关的配额带宽;所述更新模块还用于:如果所述目标业务在所述第一网关的配额带宽大于零,计算所述目标业务在所述各个网关的配额带宽的总和,得到所述限速网关集群对所述目标业务的配额总带宽;判断计算得到的配额总带宽是否大于预先存储在中控设备中的所述目标业务的配额总带宽;根据配额总带宽的判断结果,调整所述目标业务在所述限速网关集群中各个网关的配额带宽。
进一步的,所述更新模块还用于:如果计算得到的配额总带宽等于或小于存储的配额总带宽,计算所述目标业务在所述各个网关的实时带宽的总和,得到所述目标业务在所述限速网关集群的实时总带宽;针对所述限速网关集群中的每个网关,将所述目标业务在当前网关的配额带宽调整为:所述目标业务在所述当前网关的实时带宽与所述目标业务的实时总带宽的比值,乘以所述存储的配额总带宽。
进一步的,所述更新模块还用于:如果计算得到的配额总带宽大于存储的配额总带宽,计算所述目标业务在所述各个网关的实时带宽的总和,得到所述目标业务在所述限速网关集群的实时总带宽;针对所述限速网关集群中的每个网关,将所述目标业务在当前网关的配额带宽调整为:所述存储的配额总带宽的二倍与所述目标业务的实时总带宽的差值,乘以,所述目标业务在所述当前网关的实时带宽与所述目标业务的实时总带宽的比值。
进一步的,所述更新模块还用于:如果所述目标业务在所述第一网关的配额带宽等于零,计算所述目标业务在所述各个网关的实时带宽的总和,得到所述限速网关集群对所述目标业务的实时总带宽;判断所述实时总带宽是否大于预先存储在中控设备中的所述目标业务的配额总带宽;如果大于,针对所述限速网关集群中的每个网关,将所述目标业务在当前网关的配额带宽调整为:所述目标业务在所述当前网关的实时带宽。
进一步的,所述装置还包括:设置模块,用于根据所述目标业务的配额总带宽,为所述限速网关集群中的各个网关设置对所述目标业务的初始的配额带宽;其中,所述初始的配额带宽等于所述目标业务的配额总带宽与所述限速网关集群中的各个网关总数的比值。
第四方面,本发明提供的一种网络流量的限速装置,设置于网关,所述网关被配置为能够接收对目标业务的请求报文和/或发送所述目标业务发出的响应报文,所述网关基于存储的配额带宽对所述目标业务的流量进行限速,所述装置包括:生成模块,用于在检测到目标业务的实时带宽超出当前配额带宽的预定比例时,生成流量告警;发送模块,用于将所述流量告警发送至与所述网关通信连接的中控设备;第二接收模块,用于接收所述中控设备返回的更新后的配额带宽,并按照更新后的配额带宽对所述目标业务的流量进行限速。
进一步的,所述网关还用于:如果所述配额宽带不为零,则在目标业务的实时带宽超出当前配额带宽的之后的时间段内,丢弃接收到的报文;如果所述配额带宽为零,则在目标业务的实时带宽超出当前配额带宽的之后的时间段内,不丢弃接收到的报文。
进一步的,所述装置还包括:返回模块,用于如果接收到所述中控设备发送的对所述目标业务的实时带宽的请求信息,向所述中控设备返回对所述目标业务的实时带宽。
第五方面,本发明提供的一种中控设备,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器执行所述机器可执行指令以实现上述第一方面所述的网络流量的限速方法。
第六方面,本发明提供的一种网关,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器执行所述机器可执行指令以实现上述第二方面所述的网络流量的限速方法。
本发明提供的网络流量的限速方法、装置、中控设备和网关,首先,接收限速网关集群中第一网关发送的流量告警,该流量告警指示预设目标业务在第一网关的实时带宽超出当前配额带宽的预定比例,然后,基于该流量告警获取该目标业务在该限速网关集群中各个网关的实时带宽;最后,根据该目标业务在该第一网关的当前配额带宽、该目标业务在各个网关的实时带宽,以及预存的该目标业务的配额总带宽,更新该目标业务在该限速网关集群中各个网关的配额带宽,以通过各个网关按照调整后的配额带宽对目标业务的流量进行限速。该方法中,限速网关集群中的任一网关的目标业务的实时带宽超出指定带宽后,及时向中控设备发送流量告警,中控设备根据各个网关对目标业务的实时带宽和该目标业务的配额总带宽,重新分配各个网关的配额带宽,以使各个网关的配额带宽与目标业务在各个网关的实时带宽相匹配,从而对目标业务的流量限速更加准确。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种限速网关集群拓扑架构的示意图;
图2为本发明实施例提供的一种网络流量的限速方法的流程图;
图3为本发明实施例提供的一种限速网关集群的整体架构示意图;
图4为本发明实施例提供的另一种网络流量的限速方法的流程图;
图5为本发明实施例提供的另一种网络流量的限速方法的流程图;
图6为本发明实施例提供的第一网关、中控设备和其他网关的交互示意图;
图7为本发明实施例提供的限速网关集群中的流量示意图;
图8为本发明实施例提供的另一种网络流量的限速方法的流程图;
图9为本发明实施例提供的另一种网络流量的限速方法的流程图;
图10为本发明实施例提供的另一种网络流量的限速方法的流程图;
图11为本发明实施例提供的一种网络流量的限速装置的结构示意图;
图12为本发明实施例提供的另一种网络流量的限速装置的结构示意图;
图13为本发明实施例提供的一种中控设备或网关的结构示意图。
具体实施方式
下面将结合实施例对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在当前云计算网络架构中,限速是一项通用功能,其在保证服务质量(Quality ofService,简称QoS)的同时,还对租户的网络流量进行计费。限速功能通常以软件形式部署在网关服务器上,通过集中式部署,以集群方式工作。
参见图1所示的一种限速网关集群拓扑架构的示意图。该拓扑架构包括流量传控节点(Traffic Transaction,简称TC)、互联网数据中心机房(Internet Data Center,简称IDC)和公网。同一个区域(Region)的多个机房中的设备均通过该区域的流量传控节点与公网连接。一个流量传控节点包括限速服务网关(Serving GateWay,简称sgw)集群、多个上联交换机和多个下联交换机。当限速服务网关集群用于限速时,也可以称为限速网关集群,限速网关集群可以用sgw集群来表示,单个网关可以用sgw来表示,每个网关均连接在上联交换机和下联交换机之间,所有进出互联网数据中心机房的数据报文(即流量)都要经过限速网关集群。上联交换机和下联交换机会根据接收到的数据报文中的五元组将流量散列至限速网关集群,从而保障集群整体流量的负载均衡。其中,上述五元组通常是指数据报文的源IP地址、源端口、目的IP地址、目的端口和传输层协议。
购买了云计算服务的租户可通过云计算服务提供商的控制台创建业务,并为其业务配置一个弹性网络地址(elastic internet protocol,简称eip)或一个弹性网络地址组(eip group),在弹性网络地址组中,多个弹性网络地址共享一网络总带宽。对于某个业务的弹性网络地址或弹性网络地址组,为保证负载均衡性,该业务的出、入向流量会散列至多个限速网关进行限速处理,故需在集群内各个限速网关间做限速的协同处理,以保证集群各个限速网关限速总和不超过租户所购买带宽。
现有的限速网关集群通过中控(central control,简称cctl)程序来统一协调带宽配额分配策略。其中,中控程序部署在中控设备上,其方式为每隔一定时间T(例如,T为5秒),由中控设备通过中控程序向限速网关集群中的每个限速网关收集、重分配、推送所有带宽包。该方案主要存在以下问题:
问题一:中控程序带宽分配策略本身存在问题,导致租户流量超过所购限额,进而对双方(指的是租户和云服务提供商)造成不利及纠纷。具体体现为:限速网关丢弃报文的前提是当前可用令牌为0或当前分配带宽为0。若限速网关分配带宽为0,则在周期T内,对于该带宽组所有到来报文均采取丢弃策略,这样会导致短时间会极大损伤租户网络传输效率。因此,中控程序为避免中控设备冷启动情况下限速网关分配带宽为0,采取的策略为:设置单个限速网关分配带宽阈值下限为:该业务的总带宽/集群内限速网关数量(N)。此策略虽保证单个限速网关最低带宽下限,避免损伤租户网络传输效率,却易导致总体分配带宽超过该业务的总带宽,从而使得租户流量超过所购限额,超出部分的费用会对双方造成不利及纠纷。
问题二:在中控程序更新周期内,每个限速网关带宽配额为固定值,当出现突发性的流量时,限速网关不能根据流量实时情况动态的调整带宽配额,灵活性不佳。具体体现为:由于中控程序每隔时间T更新每个限速网关带宽配额,因此在周期T内,每个限速网关按照已分配带宽进行固定限速,如果在该周期内某租户出现突发性的网络流量,则会导致在该周期内散列至集群上的流量与当前集群分配带宽出入较大,造成限速不准。
问题三:随着出网带宽加大,限速网关集群会横向扩容,增加服务器数量;同时,随着租户增多、带宽组配置增多,集群的整体配置量也将增大。现有的中控程序周期性刷新带宽配额的方法,会面临着单次处理时延增大,每次拉取全量配置时延增大、管控流量所占用的带外资源增大的问题,因此,现有集群限速方式,在面向未来的扩展中不具有适用性。
基于上述,本发明实施例首先提供一种网络流量的限速方法、装置、中控设备和网关,该技术可以应用于中控设备的网络流量限速,也可以应用于网关设备的网络流量限速中。
首先,参见图2所示的一种网络流量的限速方法的流程图,该方法可以应用于中控设备;该中控设备可以是限速网关集群中的某一台网关,也可以是独立于限速网关集群中的网关以外的一台设备,上述图1中以该中控设备是独立于限速网关集群中的网关以外的一台设备为例进行说明;该方法包括以下步骤:
步骤S202,接收限速网关集群中第一网关发送的流量告警;其中,该流量告警用于指示:预设目标业务在第一网关的实时带宽超出当前配额带宽的预定比例。
上述目标业务可以理解为由目标租户指定的运行在IDC机房服务器集群中的一个或多个程序的集合。例如:A公司购买了云计算提供商B公司的服务,并将其开发的一款应用程序C部署在B公司的服务器集群中,其中,应用程序C包括C1、C2、C3共3个子程序,该应用程序C购买的总带宽为M。此案例中,目标租户为A,目标业务为C。
租户可以通过控制台创建目标业务,该控制台对应的设备可以与中控设备通信连接;租户为每个目标业务申请一个弹性网络地址或一个弹性网络地址组,并为该目标业务购买一定量带宽;然后,该目标业务的数据即可以实现与公网间的交互,在限速网关集群中,会以租户的目标业务为粒度进行限速。不同的目标业务之间,限速逻辑相对独立、互不影响。
对于任一目标业务,为保证流量最大化负载均衡,通常会将该目标业务的流量散列至限速网关集群中,限速网关集群中的多个网关中会分配有针对该目标业务的配额带宽,并以该配额带宽进行限速,多个网关中的该目标业务的配额带宽的总和即为所购买的该目标业务的带宽总额;每个网关中还会设定针对该目标业务的实时带宽超出当前配额带宽的预定比例,该预定比例可以根据租户需求进行设定,如90%。可以理解,当相应的网关中针对该目标业务的配额带宽为零时,则指定带宽为零。
上述第一网关可以是限速网关集群中的任一限速网关,当散列至集群中第一网关中的针对该目标业务的实时带宽超出当前配额带宽预定比例时,该第一网关生成上述流量告警,并发送至中控设备,其中,该流量告警至少可以包括第一网关的编号、目标业务的编号、目标业务在第一网关的配额带宽,以及流量告警生成时该目标业务在该第一网关的实时带宽;上述第一网关的编号可以理解为,限速网关集群中通常包括多个网关,为便于区分管理,为每个网关所设置的不同的编号;上述目标业务的编号可以理解为,为了对不同的目标业务进行区分管理,为不同的目标业务所设置的不同的编号;上述目标业务在第一网关的配额带宽可以理解为,租户为目标业务所购买带宽散列至限速网关集群中的多个网关,其中在第一网关所分配的带宽,即为目标业务在第一网关的配额带宽;上述目标业务在该第一网关的实时带宽可以理解为,该目标业务在第一网关中的实际流量所对应的带宽。
步骤S204,基于上述流量告警获取上述目标业务在上述限速网关集群中各个网关的实时带宽。
当中控设备接收到上述第一网关所发送的流量告警信息后,为了实现限速网关集群中各个网关针对该目标业务的重新配额,该中控设备发送指令以获取该目标业务在限速网关集群中其他网关的实时带宽。
步骤S206,根据上述目标业务在上述第一网关的当前配额带宽、该目标业务在上述各个网关的实时带宽,以及预存的该目标业务的配额总带宽,更新该目标业务在上述限速网关集群中各个网关的配额带宽。
其中,可以通过判断第一网关中的目标业务的当前配额带宽来确定第一网关是不是冷启动。具体地,当第一网关中的目标业务的当前配额带宽大于零,则第一网关为非冷启动状态;当第一网关中的目标业务的当前配额带宽等于零,则第一网关为冷启动状态。上述判断结果通常会影响后续目标业务在各个网关的配额带宽。上述目标业务在各个网关的实时带宽可以用于计算针对目标业务的实时总带宽,同时也会影响后续目标业务在各个网关的配额带宽。
上述目标业务的配额总带宽即租户为该目标业务所购买的带宽,用于与实时总带宽进行比较,以判断对目标业务的实时总带宽是否超额,该判断结果也可能影响后续目标业务在各个网关的配额带宽。中控设备根据接收到的限速网关集群中各个网关的实时带宽,可以按照一定的计算规则,调整限速网关集群中各个网关的配额带宽,并反馈给各个网关,各个网关根据接收到的调整后的配额带宽对目标业务的流量进行限速。
本发明实施例提供的一种网络流量的限速方法,首先接收限速网关集群中第一网关发送的流量告警,该流量告警指示预设目标业务在第一网关的实时带宽超出当前配额带宽的预定比例,然后,基于该流量告警获取该目标业务在该限速网关集群中各个网关的实时带宽;最后,根据该目标业务在该第一网关的当前配额带宽、该目标业务在各个网关的实时带宽,以及预存的该目标业务的配额总带宽,更新该目标业务在该限速网关集群中各个网关的配额带宽,以通过各个网关按照调整后的配额带宽对目标业务的流量进行限速。该方法中,限速网关集群中的任一网关的目标业务的实时带宽超出指定带宽后,及时向中控设备发送流量告警,中控设备根据各个网关对目标业务的实时带宽和该目标业务的配额总带宽,重新分配各个网关的配额带宽,以使各个网关的配额带宽与目标业务在各个网关的实时带宽相匹配,从而对目标业务的流量限速更加准确。
本发明实施例还提供另一种网络流量的限速方法,该方法在上述实施例所述方法的基础上实现;该方法重点描述基于流量告警获取目标业务在限速网关集群中各个网关的实时带宽的具体实现过程。
为了便于理解整体限速网关集群限速逻辑,提供了如图3所示的一种限速网关集群的整体架构;该整体架构为C/S(Client/Server,客户端/服务器)模式,运行在集群中每个网关上的客户端程序(也可以称为sgwagent程序)与中控设备中运行的中控程序中的服务器程序通信,用于接收控制面消息;该客户端程序还与部署在每台网关上的sgw数据面程序(包括图3中的监控程序、配置程序和处理程序)通信对其进行配置。上述中控程序可以部署在限速网关集群中的某一台网关上,也可以部署独立于限速网关集群的网关以外的一台服务器上。上述部署在网关上的sgw数据面程序包含四部分(线程),分别为:处理业务限速逻辑的处理程序(多线程并发),周期性为处理程序更新配额的配置程序,监控所有业务实时阈值超限的监控程序以及与中控程序带外管控通信的客户端程序;其中,处理程序可以用handler表示,配置程序可以用alloctor表示,监控程序可以用monitor表示,客户端程序可以用client表示。上述中控设备中与运行的中控程序通常包含两部分,分别为与网关带外管控通信的服务器程序以及负责计算配额的计算程序,其中,服务器程序可以用server表示,计算程序可以用calculator表示。
基于上述限速网关集群,如图4所示,该网络流量的限速方法包括如下步骤:
步骤S402,接收限速网关集群中第一网关发送的流量告警;其中,该流量告警用于指示:预设目标业务在第一网关的实时带宽超出当前配额带宽的预定比例。
为方便描述,目标业务用字母X表示,当租户通过控制台创建一个目标业务X,并为该目标业务购买带宽总额为M bps的带宽后,该控制台对应的服务器与安装有中控程序的中控设备进行通信,将目标业务及其带宽信息发送给该中控设备并进行存储,当租户变更总带宽时,也可以通过控制台对中控设备中所存储的带宽信息进行更新,该中控设备通过所安装的中控程序与限速网关集群中的每个网关进行通信,每个网关上均设置有sgwagent程序,用于接收控制端或中控程序发送的命令,以实现一对一配置相应的sgw网关数据面程序;为方便描述,限速网关集群中的网关总台数用N来表示,每个网关上的配额带宽可以表示为Qix,其中,i∈{1..N},表示不同网关的编号,各个网关均按照Qix对目标业务X中弹性网络地址数据包进行限速。
为了防止网关出现实际带宽达到配额带宽Qix时立即丢包的状况,需要提前进行反馈处理,故需要初始化一预定比例threshold%,该预定比例可以根据经验进行设定,如设定为90%,如果目标业务在第一网关中的配额带宽大于零,则需要设定一预定比例,以确保该目标业务在第一网关的实时带宽超出当前配额带宽预定比例时,第一网关可以发出流量告警;如果目标业务在第一网关中的配额带宽等于零,则无论预定比例设定为多少,只要该目标业务在第一网关的实时带宽大于零,第一网关都会发出流量告警。
在某一时刻T1,第一网关sgw(i)的monitor监控到X所对应的实时带宽Rix值超过Qix*threshold%,即生成流量告警,并通过C/S端上报至中控设备,该流量告警也可以称为report信息,包括该网关的编号i(i∈{1..N})、目标业务X、目标业务X在该网关的配额带宽以及目标业务X在该网关的实时带宽,即[i,X,Qix,Rix],也可以用[sgw_id,eip_group_id,alloc_quota,real_bandwidth]来表示。
步骤S404,在收到上述流量告警后,从该流量告警中提取上述目标业务的编号。
由于上述流量告警中已包含目标业务的编号,中控设备通过中控程序可以从接收到的上述流量告警中提取目标业务的编号X。
步骤S406,基于上述目标业务的编号向限速网关集群中,除第一网关以外的网关发送对该目标业务的实时带宽的请求信息。
中控设备接收到上述流量告警后,通过中控程序向限速网关集群中除第一网关之外的其他网关sgw(j)(j∈N&j≠i)发送对目标业务的编号对应的目标业务的实时带宽的请求信息,该请求信息也可以称为request信息,信息包括目标业务标识X(如上述目标业务的编号),以收集目标业务X的实时带宽。
步骤S408,接收除第一网关以外的网关返回的对该目标业务的实时带宽。
除第一网关之外的其他各个网关在接收到上述请求信息后,由网关中的监控程序读出X的实时带宽Rx,通过网关中的客户端程序与中控设备中的服务器程序之间的通信,将封装应答信息(reply信息)发回至中控设备,该信息包括X的实时带宽Rx。
步骤S410,根据上述目标业务在上述第一网关的当前配额带宽、该目标业务在各个网关的实时带宽,以及预存的该目标业务的配额总带宽,更新该目标业务在上述限速网关集群中各个网关的配额带宽。
本发明实施例提供的另一种网络流量的限速方法,详细描述了基于流量告警获取目标业务在限速网关集群中各个网关的实时带宽的过程,包括从第一网关发送的流量告警中提取目标业务的编号;基于该编号向限速网关集群中,除第一网关以外的网关发送对目标业务的实时带宽的请求信息;接收除第一网关以外的网关返回的对目标业务的实时带宽,最后根据该目标业务在该第一网关的当前配额带宽、该目标业务在各个网关的实时带宽,以及预存的该目标业务的配额总带宽,更新该目标业务在限速网关集群中各个网关的配额带宽,以通过各个网关按照调整后的配额带宽对目标业务的流量进行限速。该方法中,限速网关集群中的任一网关的目标业务的实时带宽超出指定带宽后,及时向中控设备发送流量告警,中控设备根据各个网关对目标业务的实时带宽和该目标业务的配额总带宽,重新分配各个网关的配额带宽,以使各个网关的配额带宽与目标业务在各个网关的实时带宽相匹配,从而对目标业务的流量限速更加准确。
本发明实施例还提供另一种网络流量的限速方法,该方法在上述实施例所述方法的基础上实现;该方法重点描述根据目标业务在第一网关的当前配额带宽、目标业务在各个网关的实时带宽,以及预存的目标业务的配额总带宽,更新目标业务在限速网关集群中各个网关的配额带宽的具体实现过程,如图5所示,该方法包括如下步骤:
步骤S502,接收限速网关集群中第一网关发送的流量告警;其中,该流量告警用于指示:预设目标业务在第一网关的实时带宽超出当前配额带宽的预定比例。
步骤S504,基于上述流量告警获取上述目标业务在上述限速网关集群中各个网关的配额带宽。
当中控设备接收到上述第一网关所发送的流量告警信息后,为了实现限速网关集群中各个网关针对该目标业务的重新配额,该中控设备发送指令以获取该目标业务在限速网关集群中其他网关的配额带宽。
步骤S506,基于上述流量告警获取上述目标业务在上述限速网关集群中各个网关的实时带宽。
步骤S508,从第一网关发送的流量告警中提取上述目标业务在该第一网关的配额带宽。
由于上述流量告警中已包含目标业务在第一网关的配额带宽,中控设备通过中控程序可以从接收到的上述流量告警中提取目标业务X在第一网关sgw(i)的配额带宽Qix。
步骤S510,判断提取出的配额带宽是否大于零;进而根据配额带宽的判断结果、目标业务在各个网关的实时带宽、以及目标业务的配额总带宽,调整各个网关对目标业务的配额带宽;如果提取出的配额带宽大于零,执行步骤S512;如果提取出的第一网关对目标业务的配额带宽等于零,执行步骤S524。
如果提取出的目标业务X在第一网关的配额带宽Qix等于零,表示该第一网关处于冷启动状态,该冷启动状态是指目标业务X在第一网关的当前配额带宽为零,对于“突发”到来的流量,现有方法中,即使目标业务X在集群中的实时带宽小于配额总带宽,该网关也将采取全部丢弃的策略,因而会造成租户业务数据的丢失。为了避免冷启动时租户业务数据丢失的问题,本实施例中当有目标任务X的业务流量到来时,立即向中控设备发送流量告警,并同时不采取丢包策略。
步骤S512,计算上述目标业务在各个网关的配额带宽的总和,得到限速网关集群对目标业务的配额总带宽。
除第一网关之外的其他各个网关在接收到中控设备所发出的请求信息后,由各网关中的监控程序读出目标业务X的配额带宽Qxi,通过网关中的客户端程序与中控设备中的服务器程序之间的通信,将封装应答信息(reply信息)发回至中控设备,该信息包括目标业务X的配额带宽Qxi。中控设备可以从应答信息中提取各个网关中对目标业务的配额带宽Qxi。然后,再计算目标业务X在各个网关的配额带宽的总和,得到限速网关集群对目标业务X的配额总带宽,在实际实现时,可以用ΣQxi来表示,其中,i∈{1..N}。
步骤S514,判断计算得到的配额总带宽是否大于预先存储在中控设备中的目标业务的配额总带宽;进而根据配额总带宽的判断结果,调整目标业务在限速网关集群中各个网关的配额带宽;如果计算得到的配额总带宽等于或小于存储的配额总带宽,执行步骤S516;如果计算得到的配额总带宽大于存储的配额总带宽,执行步骤S520。
预先存储在中控设备中的目标业务的配额总带宽即为租户为目标业务X所购买的带宽总额M bps,为方便描述,可以用Mx来表示,将上述步骤中所计算的ΣQxi与Mx进行比较,如果ΣQxi等于Mx,说明在上一轮接收到流量告警后的配额调整过程是按照Mx来调整并限速的;如果ΣQxi小于Mx,说明在上一轮接收到流量告警后的配额调整过程减少了配额总带宽,因此,此轮调整需要按照正常的Mx进行分配;如果ΣQxi大于Mx,说明在上一轮接收到流量告警后的配额调整过程透支过配额带宽,此轮调整需要减少配额总带宽作为补偿。
需要说明的是,上一轮接收到流量告警后,如果计算得到的实时带宽不超出配额总带宽,则上一轮的配额调整过程是按照Mx来进行限速;如果判断第一网关为非冷启动状态,且实时带宽超出配额总带宽,则上一轮的配额调整过程会减少配额总带宽;如果判断第一网关为冷启动状态,且实时带宽超出配额总带宽,则上一轮的配额调整过程会透支配额带宽。
步骤S516,计算上述目标业务在各个网关的实时带宽的总和,得到该目标业务在限速网关集群的实时总带宽。
计算各个网关对目标业务的实时带宽的总和,得到限速网关集群对目标业务X的实时总带宽,在实际实现时,该实时总带宽可以用Tx来表示,则Tx=ΣRix,i∈{1..N},其中Rix为限速网关集群中编号为i的网关对目标业务的实时带宽。
步骤S518,针对限速网关集群中的每个网关,将上述目标业务在当前网关的配额带宽调整为:该目标业务在该当前网关的实时带宽与该目标业务的实时总带宽的比值,乘以存储的配额总带宽。执行步骤S530。
中控设备接收到所有网关的应答信息后,由中控程序中的计算程序重新计算限速网关集群配额,通过中控设备中的服务器程序与网关中的客户端程序之间的通信,将封装响应信息(response信息),即每个网关的对应计算结果逐个发回至各个网关,信息包括网关的编号i(i∈{1..N})、目标业务X、该网关对目标业务X的重新计算后的配额带宽,即[i,X,Qix(new)]。
具体调整方式如下:针对限速网关集群中的每个网关,目标业务X在当前网关中的配额带宽调整为Qix(new)=Mx*(Rix/Tx),i∈{1..N},其中,Qix(new)表示编号为i的网关的新带宽配额,Rix为目标业务X在限速网关集群中编号为i的网关中的实时带宽,Tx为目标业务的实时总带宽。Mx为目标业务的配额总带宽。
上述公式Qix(new)=Mx*(Rix/Tx)也可以理解为,每个网关的配额带宽是按实时带宽占比而分配的。例如:针对目标业务X,存储在中控设备中的配额总带宽为Mx=300Mbps,限速网关集群中包括三台网关,编号分别为1、2、3,三台网关的配额带宽均为100Mbps,threshold%均设为90%,在某一时刻T,编号为1的网关的对目标业务的实时带宽为R1x=100Mbps,超过了该网关对目标业务的指定带宽,即100*90%=90Mbps,此时生成流量告警,编号为2和3的网关对目标业务的实时带宽均为R2x=R3x=50Mbps,则实时总带宽为Tx=100+50+50=200Mbps,该实时总带宽小于Mx,此轮调整需要按照正常的Mx进行分配,按照上述计算方式,经中控程序重新计算后,将编号为1的网关对目标业务X的配额带宽调整为Q1x(new)=300*(100/200)=150Mbps;将编号为2和3的网关对目标业务X的配额带宽均调整为Q2x(new)=Q3x(new)=300*(50/200)=75Mbps,调整后的配额总带宽=150+75+75=300Mbps,与Mx相同。
各个网关在收到响应消息后,由各个网关中的配置程序更新至相应网关中的各个处理程序。此后一段时间内,若X的Rix未到达阈值Qix(new)*threshold%,则由配置程序周期性按Qix(new)进行配额限速。
上述步骤S516和S518说明的是,当上述计算得到的配额总带宽等于或小于存储的配额总带宽时,配额带宽的调整方式;下述继续说明当计算得到的配额总带宽大于预先存储在中控设备中的目标业务的配额总带宽时,配额带宽的调整方式。
步骤S520,计算上述目标业务在各个网关的实时带宽的总和,得到该目标业务在限速网关集群的实时总带宽。
计算目标业务在各个网关的实时带宽的总和,得到限速网关集群对目标业务X的实时总带宽,在实际实现时,该实时总带宽可以用Tx来表示,则Tx=ΣRix,i∈{1..N},其中Rix为限速网关集群中编号为i的网关对目标业务的实时带宽。
步骤S522,针对限速网关集群中的每个网关,将上述目标业务在当前网关的配额带宽调整为:存储的配额总带宽的二倍与该目标业务的实时总带宽的差值,乘以,该目标业务在当前网关的实时带宽与该目标业务的实时总带宽的比值。执行步骤S530。
针对限速网关集群中的每台网关,将目标业务X在当前网关中的配额带宽调整为:Qix(new)=(2Mx-Tx)*(Rix/Tx),其中,Qix(new)表示编号为i的网关的新带宽配额;Rix为目标业务在限速网关集群中编号为i的网关中的实时带宽,Tx为目标业务的实时总带宽。Mx为目标业务的配额总带宽。
按照上述公式计算的各个网关的新配额加和后所得到的总带宽会少于Mx,所减少的额数与上一周期中超额的额数相同,相当于用该周期的带宽额数补偿了上一周期所超的带宽额数。
作为示例,针对目标业务X,存储在中控设备中的配额总带宽为Mx=300Mbps,限速网关集群中包括三台网关,编号分别为1、2、3,三台网关的配额带宽分别为0Mbps、150Mbps和150Mbps,threshold%均设为90%,在T时刻,三台网关的实时带宽分别为50Mbps、130Mbps和130Mbps,此时,编号为1的网关对目标业务的实时带宽超过了该网关对目标业务的指定带宽,即0Mbps,此时生成流量告警,在T时刻的实时总带宽为Tx=50+130+130=310Mbps,该实时总带宽大于Mx,所超额度为10Mbps,此轮调整需要减少配额总带宽作为补偿,按照上述计算方式,经中控程序重新计算后,将编号为1的网关对目标业务X的配额带宽调整为Q1x(new)=(2*300-310)*(50/310)=46.77Mbps;将编号为2和3的网关对目标业务X的配额带宽均调整为Q2x(new)=Q3x(new)=(2*300-310)*(130/310)=121.61Mbps;调整后的配额总带宽=289.99Mbps≈290Mbps,少于Mx,所减少的额数为10Mbps,与上一周期中超额的额数相同,即用该周期的带宽额数补偿了上一周期所超的带宽额数。
各个网关在收到响应消息后,由各个网关中的配置程序更新至相应网关中的各个处理程序。此后一段时间内,若X的Rix未到达阈值Qix(new)*threshold%,则由配置程序周期性按Qix(new)进行配额限速。
上述步骤S512至步骤S522说明的是,当从第一网关发送的流量告警中提取出的第一网关对目标业务配额带宽大于零时,配额带宽的调整方式;下述继续说明当从第一网关发送的流量告警中提取出的目标业务在第一网关的配额带宽等于零时,配额带宽的调整方式。
步骤S524,计算上述目标业务在各个网关的实时带宽的总和,得到限速网关集群对目标业务的实时总带宽。
计算目标业务在各个网关的实时带宽的总和,得到限速网关集群对目标业务X的实时总带宽,在实际实现时,该实时总带宽可以用Tx来表示,则Tx=ΣRix,i∈{1..N},其中Rix为目标业务在限速网关集群中编号为i的网关的实时带宽。
步骤S526,判断实时总带宽是否大于预先存储在中控设备中的目标业务的配额总带宽;如果大于,执行步骤S528;如果不大于,执行步骤S516。
步骤S528,针对限速网关集群中的每个网关,将上述目标业务在当前网关的配额带宽调整为:目标业务在当前网关的实时带宽。
当Tx>Mx时,则按照各个网关的实时带宽调整各个网关的配额带宽,在本流量告警对应的调整周期内,各个网关的配额总带宽是超额的;但是,能保证租户的突发流量能够顺利通过。
但是,在下一流量告警对应的调整周期内,比较Tx和Mx时,就会出现各个网关的配额总带宽超额的情况,此时会按照步骤S522中的公式调整网关的配额带宽,即减少配额总带宽,以对上一周期超额的带宽进行补偿,通过该透支方法,保证对于目标业务X的系统实时总带宽总是保持在Mx;对于配额0的冷启动处理采取透支下一时期配额方式,保证限速带宽在总体时间分布上保持为Mx。考虑到整体正向反馈过程较快完成(秒内),瞬时冷处理超额概率极低、影响很小。
步骤S530,通过各个网关按照调整后的配额带宽对目标业务的流量进行限速。
下面对采用上述网络流量的限速方法时的响应时间进行说明,如图6所示的第一网关、中控设备和其他网关的交互示意图;该交互过程包括如下步骤1-4:
步骤1:某一时刻T1,在限速网关集群中,当目标业务在第一网关中的实时带宽超出指定带宽时,第一网关向中控设备发送流量告警(也可以称为report信息);
步骤2:中控设备接收到上述流量告警后,通过中控程序向限速网关集群中除第一网关之外的其他网关发送对目标业务X的实时带宽和配额带宽的请求信息(也可以称为request信息)。
步骤3:其他网关在接收到中控设备所发出的请求信息后,由各网关中的监控程序读出X的配额带宽Qx,通过网关中的客户端程序与中控设备中的服务器程序之间的通信,将封装应答信息(也可以称为reply信息)发回至中控设备。
步骤4:中控设备接收到所有网关的应答信息后,由中控程序中的计算程序重新计算限速网关集群配额,通过中控设备中的服务器程序与网关中的客户端程序之间的通信,将封装响应信息(也可以称为response信息),即每个网关的对应计算结果逐个发回至各个网关。
其中,图6中所标注的各个步骤的时延和即为单次正向反馈响应时延。其中计算时延、更新时延均为若干步计算机指令,其时延可忽略不计;处理时延1、处理时延2中,均包含远程通信时延。图7所示为限速网关集群中的流量示意图;其中,限速网关集群中的各个网关与上联交换机和下联交换机之间通过的是租户的业务流量;网关与管理交换机及中控设备之间通过带外管理网口进行通信,该带外管理网口通信方式采用与业务数据信息不同的物理通道传送管理控制信息,两者相互独立,互不影响,因而网关与中控设备之间的通信时延亦可忽略不计。
对比而言,下面给出相关技术中的网络流量的限速方法,为应对冷启动,在中控设备周期性配额分配过程中,保证每个网关配额最低为M*(1/N)。以集群含有5台网关为例,若某时刻Ri为[M,0,0,0,0],则分配结果为[M,M/5,M/5,M/5,M/5],总带宽达到M*(9/5),超配至180%。意味着在其下一个周期内将以180%配额进行限速,直接造成不良后果。随着出网带宽加大,限速网关集群会横向扩容,增加服务器数量;同时,随着租户增多、带宽组配置增多,集群的整体配置量也将增大。原本中控设备周期性刷新配额方法,会面临着单次处理时延增大,每次拉取全量配置时延增大、管控流量所占用的带外资源增大。现有集群限速方式,在面向未来的扩展中不具有适用性。
而上述实施例中的方法,根据不同的条件,提出了三种不同的调整方式:在非冷启动的情况下,如果实时带宽超出配额总带宽,则此周期将减少配额总带宽,以补偿上一周期所超额的带宽;如果实时带宽不超出配额总带宽,则将配额总带宽根据实时带宽的占比进行分配,保证调整后的配额带宽与实时带宽匹配。在冷启动的情况下,如果实时带宽超出配额总带宽,则先透支下一周期的带宽配额,保证流量可以顺利通过;在下一流量告警周期时,再减少带宽配额以补偿上一周期的超额带宽;如果实时带宽不大于配额总带宽,则将配额总带宽根据实时带宽的占比进行分配,保证调整后的配额带宽与实时带宽匹配。
作为示例,针对目标业务X,存储在中控设备中的配额总带宽为Mx=300Mbps,限速网关集群中包括三台网关,编号分别为1、2、3,三台网关的配额带宽分别为0Mbps、150Mbps和150Mbps,threshold%均设为90%,在T时刻,三台网关的实时带宽分别为0Mbps、135Mbps和135Mbps,此时,目标业务X在编号为2和3的网关的实时带宽达到了该网关对目标业务的指定带宽,即150*90%=135Mbps,此时生成流量告警,在T时刻的实时总带宽为Tx=0+135+135=270Mbps,该实时总带宽小于Mx,此轮调整需要按照正常的Mx进行分配,按照上述步骤S516的计算方式,经中控程序重新计算后,将目标业务X在编号为1的网关的配额带宽调整为Q1x(new)=300*(0/270)=0Mbps;将目标业务X在编号为2和3的网关的配额带宽均调整为Q2x(new)=Q3x(new)=300*(135/270)=150Mbps,调整后的配额总带宽=0+150+150=300Mbps,与Mx相同。
本发明实施例提供的另一种网络流量的限速方法,详细描述了根据目标业务在限速网关集群中各个网关的带宽,调整目标业务在各个网关的配额带宽的步骤,根据不同的条件,提供了相应的调整配额带宽的具体计算方法。该方法可以使各个网关的配额带宽与目标业务在各个网关的实时带宽相匹配,从而对目标业务的流量限速更加准确。
本发明实施例还提供另一种网络流量的限速方法,该方法重点说明在创建目标业务后,对该目标业务的配额带宽的初始分配过程;如图8所示,该方法包括如下步骤:
步骤S802,根据目标业务的配额总带宽,为限速网关集群中的各个网关设置对目标业务的初始的配额带宽;其中,该初始的配额带宽等于目标业务的配额总带宽与限速网关集群中的各个网关总数的比值。
为方便描述,限速网关集群限速网关集群中网关的总台数用N来表示,通过每个网关上所部署的sgwagent程序,对目标业务X在相应的网关上的配额进行初始化,该初始化配额为均分值M/N bps。
步骤S804,接收限速网关集群中第一网关发送的流量告警;其中,该流量告警用于指示:预设目标业务在第一网关的实时带宽超出当前配额带宽的预定比例。
步骤S806,基于上述流量告警获取上述目标业务在限速网关集群中各个网关的实时带宽。
步骤S808,根据上述目标业务在上述第一网关的当前配额带宽、该目标业务在各个网关的实时带宽,以及预存的该目标业务的配额总带宽,更新该目标业务在限速网关集群中各个网关的配额带宽,以通过各个网关按照调整后的配额带宽对目标业务的流量进行限速。
本发明实施例提供的一种网络流量的限速方法,当租户创建新的目标业务,并为该目标业务购买带宽后,首先根据所购买的带宽及限速网关集群中网关的数量,为各个网关设置初始带宽配额,以使各个网关可以按照该初始带宽配额对目标业务中的弹性网络地址数据包进行限速,当接收到集群中第一网关发送的流量告警后,根据各个网关的带宽信息,调整各个网关对目标业务的配额带宽,以通过各个网关按照调整后的配额带宽对目标业务的流量进行限速。该方法中,限速网关集群中的任一网关的目标业务的实时带宽超出指定带宽后,及时反馈上报,根据该网关的反馈信息以及其他各个网关对该目标业务的相关信息,调整各个网关对目标业务的配额带宽,当出现突发网络流量时,通过该过程可以及时调整配额带宽,进而提高限速网关对带宽限速的准确性。
本发明实施例还提供另一种网络流量的限速方法,该方法可以应用于网关,该网关被配置为能够接收对目标业务的请求报文和/或发送该目标业务发出的响应报文,该网关基于存储的配额带宽对该目标业务的流量进行限速;如图9所示;该方法包括如下步骤:
步骤S902,在检测到目标业务的实时带宽超出当前配额带宽的预定比例时,生成流量告警。
目标业务的流量可以为出向流量,即从互联网数据中心机房发向公网,也可以是入向流量,即从公网发向互联网数据中心机房;具体的,当为出向流量时,目标业务流量从互联网数据中心机房通过下联交换机散列至限速网关集群,经集群限速后,再通过上联交换机发向公网;当为入向流量时,目标业务流量从公网通过上联交换机散列至限速网关集群,经集群限速后,再通过下联交换机发向互联网数据中心机房。
当检测目标业务的流量对应的实时带宽超出当前配额带宽的预定比例时,生成流量告警。
步骤S904,将上述流量告警发送至与上述网关通信连接的中控设备。
步骤S906,接收上述中控设备返回的更新后的配额带宽,并按照更新后的配额带宽对上述目标业务的流量进行限速。
其中,针对网关基于存储的配额带宽对该目标业务的流量进行限速的过程,可以采用以下步骤90-步骤91来实现:
步骤90,如果配额宽带不为零,则在目标业务的实时带宽超出当前配额带宽的之后的时间段内,丢弃接收到的报文。
如果目标业务在指定网关中的配额带宽不为零,当该目标业务的实时带宽超出该目标业务在该指定网关中的配额带宽时,在该周期内,该指定网关会丢弃所接收到的报文,以对目标业务进行限速,控制网络传输效率。
步骤91,如果配额带宽为零,则在目标业务的实时带宽超出当前配额带宽的之后的时间段内,不丢弃接收到的报文。
如果目标业务在指定网关中的配额带宽为零,当该目标业务的实时带宽超出该目标业务在该指定网关中的配额带宽时,在该周期内,该指定网关不会丢弃所接收到的报文,让目标业务的实时带宽对应的报文全部通过,并在下一轮的配额调整过程中,对超出的带宽进行补偿。
本发明实施例提供的一种网络流量的限速方法,当检测目标业务的流量对应的实时带宽是否超出当前配额带宽的预定比例时,生成流量告警,并将该流量告警发送至与网关通信连接的中控设备;接收中控设备返回的更新后的配额带宽,并按照更新后的配额带宽对目标业务的流量进行限速。该方法中,限速网关集群中的任一网关的目标业务的实时带宽超出指定带宽后,及时向中控设备发送流量告警,中控设备根据各个网关对目标业务的实时带宽和该目标业务的配额总带宽,重新分配各个网关的配额带宽,以使各个网关的配额带宽与目标业务在各个网关的实时带宽相匹配,从而对目标业务的流量限速更加准确。
本发明实施例还提供另一种网络流量的限速方法,该方法重点说明中控设备获取目标业务的实时带宽的过程,如图10所示,该方法包括如下步骤:
步骤S1002,在检测到目标业务的实时带宽超出当前配额带宽的预定比例时,生成流量告警。
在实际实现时,可以初始化一预定比例threshold%,该预定比例可以根据经验进行设定,如设定为90%,如果目标业务在网关中的配额带宽大于零,则需要设定一预定比例,以确保该目标业务在网关的实时带宽超出当前配额带宽预定比例时,网关可以发出流量告警;如果目标业务在网关中的配额带宽等于零,则无论预定比例设定为多少,只要该目标业务在网关的实时带宽大于零,网关都会发出流量告警。
步骤S1004,将上述流量告警发送至与上述网关通信连接的中控设备。步骤S1006,接收上述中控设备返回的更新后的配额带宽,并按照更新后的配额带宽对所述目标业务的流量进行限速。
步骤S1008,如果接收到中控设备发送的对目标业务的实时带宽的请求信息,向中控设备返回对目标业务的实时带宽。
当中控设备接收到网关的流量告警信息后,通常还需要限速网关集群中的其他网关对该目标业务的实时带宽信息,因而中控设备会通过中控程序向限速网关集群中除第一网关之外的其他网关发送对目标业务X的实时带宽的请求信息,该信息包括目标业务标识X,以收集目标业务X的实时带宽。
当限速网关集群内的其他各个网关接收到上述请求信息后,由网关中的监控程序读出X的实时带宽Rx,通过网关中的客户端程序与中控设备中的服务器程序之间的通信,将封装应答信息发回至中控设备,信息包括Rx。
本发明实施例提供的一种网络流量的限速方法,当检测目标业务的流量对应的实时带宽是否超出当前配额带宽的预定比例时,生成流量告警,并将该流量告警发送至与网关通信连接的中控设备;当接收到中控设备发送的对目标业务的实时带宽的请求信息时,向中控设备返回对目标业务的实时带宽,以通过中控设备调整该网关对目标业务的配额带宽;并按照调整后的配额带宽对目标业务的流量进行限速。该方法中,限速网关集群中的任一网关的目标业务的实时带宽超出指定带宽后,及时向中控设备发送流量告警,中控设备根据各个网关对目标业务的实时带宽和该目标业务的配额总带宽,重新分配各个网关的配额带宽,以使各个网关的配额带宽与目标业务在各个网关的实时带宽相匹配,从而对目标业务的流量限速更加准确。
对应于上述方法实施例,参见图11所示的一种网络流量的限速装置的结构示意图,该装置设置于中控设备,该装置包括:第一接收模块110,用于接收限速网关集群中第一网关发送的流量告警;其中,流量告警用于指示:预设目标业务在第一网关的实时带宽超出当前配额带宽的预定比例;第一获取模块111,用于基于流量告警获取目标业务在限速网关集群中各个网关的实时带宽;更新模块112,用于根据目标业务在第一网关的当前配额带宽、目标业务在各个网关的实时带宽,以及预存的目标业务的配额总带宽,更新目标业务在限速网关集群中各个网关的配额带宽。
上述网络流量的限速装置,首先接收限速网关集群中第一网关发送的流量告警,该流量告警指示预设目标业务在第一网关的实时带宽超出当前配额带宽的预定比例,然后,基于该流量告警获取该目标业务在该限速网关集群中各个网关的实时带宽;最后,根据该目标业务在该第一网关的当前配额带宽、该目标业务在各个网关的实时带宽,以及预存的该目标业务的配额总带宽,更新该目标业务在该限速网关集群中各个网关的配额带宽,以通过各个网关按照调整后的配额带宽对目标业务的流量进行限速。该方式中,限速网关集群中的任一网关的目标业务的实时带宽超出指定带宽后,及时向中控设备发送流量告警,中控设备根据各个网关对目标业务的实时带宽和该目标业务的配额总带宽,重新分配各个网关的配额带宽,以使各个网关的配额带宽与目标业务在各个网关的实时带宽相匹配,从而对目标业务的流量限速更加准确。
进一步的,流量告警至少包括:第一网关的编号、目标业务的编号、目标业务在第一网关的配额带宽,以及流量告警生成时目标业务在第一网关的实时带宽。
进一步的,第一获取模块111还用于:在收到流量告警后,从流量告警中提取目标业务的编号;基于目标业务的编号向限速网关集群中,除第一网关以外的网关发送对目标业务的实时带宽的请求信息;接收除第一网关以外的网关返回的对目标业务的实时带宽。
进一步的,更新模块112还用于:从第一网关发送的流量告警中提取目标业务在第一网关的配额带宽;判断提取出的配额带宽是否大于零;根据配额带宽的判断结果、目标业务在各个网关的实时带宽、以及目标业务的配额总带宽,调整各个网关对目标业务的配额带宽。
进一步的,该装置还包括:第二获取模块,用于基于流量告警获取目标业务在限速网关集群中各个网关的配额带宽;
上述更新模块112还用于:如果目标业务在第一网关的配额带宽大于零,计算目标业务在各个网关的配额带宽的总和,得到限速网关集群对目标业务的配额总带宽;判断计算得到的配额总带宽是否大于预先存储在中控设备中的目标业务的配额总带宽;根据配额总带宽的判断结果,调整目标业务在限速网关集群中各个网关的配额带宽。
进一步的,上述更新模块112还用于:如果计算得到的配额总带宽等于或小于存储的配额总带宽,计算目标业务在各个网关的实时带宽的总和,得到目标业务在限速网关集群的实时总带宽;针对限速网关集群中的每个网关,将目标业务在当前网关的配额带宽调整为:目标业务在当前网关的实时带宽与目标业务的实时总带宽的比值,乘以存储的配额总带宽。
进一步的,上述更新模块112还用于:如果计算得到的配额总带宽大于存储的配额总带宽,计算目标业务在各个网关的实时带宽的总和,得到目标业务在限速网关集群的实时总带宽;针对限速网关集群中的每个网关,将目标业务在当前网关的配额带宽调整为:存储的配额总带宽的二倍与目标业务的实时总带宽的差值,乘以,目标业务在当前网关的实时带宽与目标业务的实时总带宽的比值。
进一步的,上述更新模块112还用于:如果目标业务在第一网关的配额带宽等于零,计算目标业务在各个网关的实时带宽的总和,得到限速网关集群对目标业务的实时总带宽;判断实时总带宽是否大于预先存储在中控设备中的目标业务的配额总带宽;如果大于,针对限速网关集群中的每个网关,将目标业务在当前网关的配额带宽调整为:目标业务在当前网关的实时带宽。
进一步的,上述装置还包括:设置模块,用于根据目标业务的配额总带宽,为限速网关集群中的各个网关设置对目标业务的初始的配额带宽;其中,初始的配额带宽等于目标业务的配额总带宽与限速网关集群中的各个网关总数的比值。
参见图12所示的另一种网络流量的限速装置的结构示意图,该装置设置于网关,该网关被配置为能够接收对目标业务的请求报文和/或发送目标业务发出的响应报文,该网关基于存储的配额带宽对目标业务的流量进行限速,该装置包括:生成模块120,用于在检测到目标业务的实时带宽超出当前配额带宽的预定比例时,生成流量告警;发送模块121,用于将流量告警发送至与网关通信连接的中控设备;第二接收模块122,用于接收中控设备返回的更新后的配额带宽,并按照更新后的配额带宽对目标业务的流量进行限速。
上述网络流量的限速装置,当检测目标业务的流量对应的实时带宽是否超出当前配额带宽的预定比例时,生成流量告警,并将该流量告警发送至与网关通信连接的中控设备;接收中控设备返回的更新后的配额带宽,并按照更新后的配额带宽对目标业务的流量进行限速。该装置中,限速网关集群中的任一网关的目标业务的实时带宽超出指定带宽后,及时向中控设备发送流量告警,中控设备根据各个网关对目标业务的实时带宽和该目标业务的配额总带宽,重新分配各个网关的配额带宽,以使各个网关的配额带宽与目标业务在各个网关的实时带宽相匹配,从而对目标业务的流量限速更加准确。
进一步的,该网关还用于:如果配额宽带不为零,则在目标业务的实时带宽超出当前配额带宽的之后的时间段内,丢弃接收到的报文;如果配额带宽为零,则在目标业务的实时带宽超出当前配额带宽的之后的时间段内,不丢弃接收到的报文。
进一步的,上述装置还包括:返回模块,用于如果接收到中控设备发送的对目标业务的实时带宽的请求信息,向中控设备返回对目标业务的实时带宽。
本发明实施例还提供了一种中控设备或网关,参见图13所示,该中控设备或网关包括处理器130和存储器131,该存储器131存储有能够被处理器130执行的机器可执行指令,该处理器130执行机器可执行指令以实现上述网络流量的限速方法。
进一步地,图13所示的中控设备或网关还包括总线132和通信接口133,处理器130、通信接口133和存储器131通过总线132连接。
其中,存储器131可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口133(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。总线132可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图13中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
处理器130可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器130中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器130可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DigitalSignal Processor,简称DSP)、专用集成电路(Application Specific IntegratedCircuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器131,处理器130读取存储器131中的信息,结合其硬件完成前述实施例的方法的步骤。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (22)

1.一种网络流量的限速方法,其特征在于,应用于中控设备,所述方法包括:
接收限速网关集群中第一网关发送的流量告警;其中,所述流量告警用于指示:预设目标业务在第一网关的实时带宽超出当前配额带宽的预定比例;
基于所述流量告警获取所述目标业务在所述限速网关集群中各个网关的实时带宽;
根据所述目标业务在所述第一网关的当前配额带宽、所述目标业务在所述各个网关的实时带宽,以及预存的所述目标业务的配额总带宽,更新所述目标业务在所述限速网关集群中各个网关的配额带宽;
根据所述目标业务在所述第一网关的当前配额带宽、所述目标业务在所述各个网关的实时带宽,以及预存的所述目标业务的配额总带宽,更新所述目标业务在所述限速网关集群中各个网关的配额带宽的步骤,包括:
从所述第一网关发送的流量告警中提取所述目标业务在所述第一网关的配额带宽;
判断提取出的所述配额带宽是否大于零;
根据配额带宽的判断结果、所述目标业务在所述各个网关的实时带宽、以及所述目标业务的配额总带宽,调整所述各个网关对所述目标业务的配额带宽;
如果所述目标业务在所述第一网关的配额带宽等于零,计算所述目标业务在所述各个网关的实时带宽的总和,得到所述限速网关集群对所述目标业务的实时总带宽;
判断所述实时总带宽是否大于预先存储在中控设备中的所述目标业务的配额总带宽;
如果大于,针对所述限速网关集群中的每个网关,将所述目标业务在当前网关的配额带宽调整为:所述目标业务在所述当前网关的实时带宽。
2.根据权利要求1所述的方法,其特征在于,所述流量告警至少包括:所述第一网关的编号、所述目标业务的编号、所述目标业务在所述第一网关的配额带宽,以及所述流量告警生成时所述目标业务在所述第一网关的实时带宽。
3.根据权利要求1所述的方法,其特征在于,所述基于所述流量告警获取所述目标业务在所述限速网关集群中各个网关的实时带宽,包括:
在收到所述流量告警后,从所述流量告警中提取所述目标业务的编号;
基于所述目标业务的编号向所述限速网关集群中,除所述第一网关以外的网关发送对所述目标业务的实时带宽的请求信息;
接收除所述第一网关以外的网关返回的对所述目标业务的实时带宽。
4.根据权利要求1所述的方法,其特征在于,接收限速网关集群中第一网关发送的流量告警的步骤之后,所述方法还包括:基于所述流量告警获取所述目标业务在所述限速网关集群中各个网关的配额带宽;
所述根据所述目标业务在所述第一网关的当前配额带宽、所述目标业务在所述各个网关的实时带宽,以及预存的所述目标业务的配额总带宽,更新所述目标业务在所述限速网关集群中各个网关的配额带宽的步骤,包括:
如果所述目标业务在所述第一网关的配额带宽大于零,计算所述目标业务在所述各个网关的配额带宽的总和,得到所述限速网关集群对所述目标业务的配额总带宽;
判断计算得到的配额总带宽是否大于预先存储在中控设备中的所述目标业务的配额总带宽;
根据配额总带宽的判断结果,调整所述目标业务在所述限速网关集群中各个网关的配额带宽。
5.根据权利要求4所述的方法,其特征在于,根据配额总带宽的判断结果,调整所述目标业务在所述限速网关集群中各个网关的配额带宽的步骤,包括:
如果计算得到的配额总带宽等于或小于存储的配额总带宽,计算所述目标业务在所述各个网关的实时带宽的总和,得到所述目标业务在所述限速网关集群的实时总带宽;
针对所述限速网关集群中的每个网关,将所述目标业务在当前网关的配额带宽调整为:所述目标业务在所述当前网关的实时带宽与所述目标业务的实时总带宽的比值,乘以所述存储的配额总带宽。
6.根据权利要求4所述的方法,其特征在于,根据配额总带宽的判断结果,调整所述目标业务在所述限速网关集群中各个网关的配额带宽的步骤,包括:
如果计算得到的配额总带宽大于存储的配额总带宽,计算所述目标业务在所述各个网关的实时带宽的总和,得到所述目标业务在所述限速网关集群的实时总带宽;
针对所述限速网关集群中的每个网关,将所述目标业务在当前网关的配额带宽调整为:所述存储的配额总带宽的二倍与所述目标业务的实时总带宽的差值,乘以,所述目标业务在所述当前网关的实时带宽与所述目标业务的实时总带宽的比值。
7.根据权利要求1所述的方法,其特征在于,接收限速网关集群中第一网关发送的流量告警之前,所述方法包括:
根据所述目标业务的配额总带宽,为所述限速网关集群中的各个网关设置对所述目标业务的初始的配额带宽;其中,所述初始的配额带宽等于所述目标业务的配额总带宽与所述限速网关集群中的各个网关总数的比值。
8.一种网络流量的限速方法,其特征在于,应用于网关,所述网关被配置为能够接收对目标业务的请求报文和/或发送所述目标业务发出的响应报文,所述网关基于存储的配额带宽对所述目标业务的流量进行限速,所述方法包括:
在检测到目标业务的实时带宽超出当前配额带宽的预定比例时,生成流量告警;
将所述流量告警发送至与所述网关通信连接的中控设备;
接收所述中控设备返回的更新后的配额带宽,并按照更新后的配额带宽对所述目标业务的流量进行限速;其中,所述更新后的配额带宽由所述中控设备通过下述方式确定:基于所述流量告警获取所述目标业务在限速网关集群中各个网关的实时带宽;从第一网关发送的流量告警中提取所述目标业务在所述第一网关的配额带宽;判断提取出的所述配额带宽是否大于零;根据配额带宽的判断结果、所述目标业务在所述各个网关的实时带宽、以及所述目标业务的配额总带宽,调整所述各个网关对所述目标业务的配额带宽;如果所述目标业务在所述第一网关的配额带宽等于零,计算所述目标业务在所述各个网关的实时带宽的总和,得到所述限速网关集群对所述目标业务的实时总带宽;判断所述实时总带宽是否大于预先存储在中控设备中的所述目标业务的配额总带宽;如果大于,针对所述限速网关集群中的每个网关,将所述目标业务在当前网关的配额带宽调整为:所述目标业务在所述当前网关的实时带宽。
9.根据权利要求8所述的方法,其特征在于,所述网关基于存储的配额带宽对所述目标业务的流量进行限速,包括:
如果所述配额宽带不为零,则在目标业务的实时带宽超出当前配额带宽的之后的时间段内,丢弃接收到的报文;
如果所述配额带宽为零,则在目标业务的实时带宽超出当前配额带宽的之后的时间段内,不丢弃接收到的报文。
10.根据权利要求8所述的方法,其特征在于,所述方法还包括:
如果接收到所述中控设备发送的对所述目标业务的实时带宽的请求信息,向所述中控设备返回对所述目标业务的实时带宽。
11.一种网络流量的限速装置,其特征在于,应用于中控设备,所述装置包括:
第一接收模块,用于接收限速网关集群中第一网关发送的流量告警;其中,所述流量告警用于指示:预设目标业务在第一网关的实时带宽超出当前配额带宽的预定比例;
第一获取模块,用于基于所述流量告警获取所述目标业务在所述限速网关集群中各个网关的实时带宽;
更新模块,用于根据所述目标业务在所述第一网关的当前配额带宽、所述目标业务在所述各个网关的实时带宽,以及预存的所述目标业务的配额总带宽,更新所述目标业务在所述限速网关集群中各个网关的配额带宽;
所述更新模块还用于:
从所述第一网关发送的流量告警中提取所述目标业务在所述第一网关的配额带宽;
判断提取出的所述配额带宽是否大于零;
根据配额带宽的判断结果、所述目标业务在所述各个网关的实时带宽、以及所述目标业务的配额总带宽,调整所述各个网关对所述目标业务的配额带宽;
如果所述目标业务在所述第一网关的配额带宽等于零,计算所述目标业务在所述各个网关的实时带宽的总和,得到所述限速网关集群对所述目标业务的实时总带宽;
判断所述实时总带宽是否大于预先存储在中控设备中的所述目标业务的配额总带宽;
如果大于,针对所述限速网关集群中的每个网关,将所述目标业务在当前网关的配额带宽调整为:所述目标业务在所述当前网关的实时带宽。
12.根据权利要求11所述的装置,其特征在于,所述流量告警至少包括:所述第一网关的编号、所述目标业务的编号、所述目标业务在所述第一网关的配额带宽,以及所述流量告警生成时所述目标业务在所述第一网关的实时带宽。
13.根据权利要求11所述的装置,其特征在于,所述第一获取模块还用于:
在收到所述流量告警后,从所述流量告警中提取所述目标业务的编号;
基于所述目标业务的编号向所述限速网关集群中,除所述第一网关以外的网关发送对所述目标业务的实时带宽的请求信息;
接收除所述第一网关以外的网关返回的对所述目标业务的实时带宽。
14.根据权利要求11所述的装置,其特征在于,所述装置还包括:第二获取模块,用于基于所述流量告警获取所述目标业务在所述限速网关集群中各个网关的配额带宽;
所述更新模块还用于:
如果所述目标业务在所述第一网关的配额带宽大于零,计算所述目标业务在所述各个网关的配额带宽的总和,得到所述限速网关集群对所述目标业务的配额总带宽;
判断计算得到的配额总带宽是否大于预先存储在中控设备中的所述目标业务的配额总带宽;
根据配额总带宽的判断结果,调整所述目标业务在所述限速网关集群中各个网关的配额带宽。
15.根据权利要求14所述的装置,其特征在于,所述更新模块还用于:
如果计算得到的配额总带宽等于或小于存储的配额总带宽,
计算所述目标业务在所述各个网关的实时带宽的总和,得到所述目标业务在所述限速网关集群的实时总带宽;
针对所述限速网关集群中的每个网关,将所述目标业务在当前网关的配额带宽调整为:所述目标业务在所述当前网关的实时带宽与所述目标业务的实时总带宽的比值,乘以所述存储的配额总带宽。
16.根据权利要求14所述的装置,其特征在于,所述更新模块还用于:
如果计算得到的配额总带宽大于存储的配额总带宽,计算所述目标业务在所述各个网关的实时带宽的总和,得到所述目标业务在所述限速网关集群的实时总带宽;
针对所述限速网关集群中的每个网关,将所述目标业务在当前网关的配额带宽调整为:所述存储的配额总带宽的二倍与所述目标业务的实时总带宽的差值,乘以,所述目标业务在所述当前网关的实时带宽与所述目标业务的实时总带宽的比值。
17.根据权利要求11所述的装置,其特征在于,所述装置还包括:
设置模块,用于根据所述目标业务的配额总带宽,为所述限速网关集群中的各个网关设置对所述目标业务的初始的配额带宽;其中,所述初始的配额带宽等于所述目标业务的配额总带宽与所述限速网关集群中的各个网关总数的比值。
18.一种网络流量的限速装置,其特征在于,设置于网关,所述网关被配置为能够接收对目标业务的请求报文和/或发送所述目标业务发出的响应报文,所述网关基于存储的配额带宽对所述目标业务的流量进行限速,所述装置包括:
生成模块,用于在检测到目标业务的实时带宽超出当前配额带宽的预定比例时,生成流量告警;
发送模块,用于将所述流量告警发送至与所述网关通信连接的中控设备;
第二接收模块,用于接收所述中控设备返回的更新后的配额带宽,并按照更新后的配额带宽对所述目标业务的流量进行限速;其中,所述更新后的配额带宽由所述中控设备通过下述方式确定:基于所述流量告警获取所述目标业务在限速网关集群中各个网关的实时带宽;从第一网关发送的流量告警中提取所述目标业务在所述第一网关的配额带宽;判断提取出的所述配额带宽是否大于零;根据配额带宽的判断结果、所述目标业务在所述各个网关的实时带宽、以及所述目标业务的配额总带宽,调整所述各个网关对所述目标业务的配额带宽;如果所述目标业务在所述第一网关的配额带宽等于零,计算所述目标业务在所述各个网关的实时带宽的总和,得到所述限速网关集群对所述目标业务的实时总带宽;判断所述实时总带宽是否大于预先存储在中控设备中的所述目标业务的配额总带宽;如果大于,针对所述限速网关集群中的每个网关,将所述目标业务在当前网关的配额带宽调整为:所述目标业务在所述当前网关的实时带宽。
19.根据权利要求18所述的装置,其特征在于,所述网关还用于:
如果所述配额宽带不为零,则在目标业务的实时带宽超出当前配额带宽的之后的时间段内,丢弃接收到的报文;
如果所述配额带宽为零,则在目标业务的实时带宽超出当前配额带宽的之后的时间段内,不丢弃接收到的报文。
20.根据权利要求18所述的装置,其特征在于,所述装置还包括:
返回模块,用于如果接收到所述中控设备发送的对所述目标业务的实时带宽的请求信息,向所述中控设备返回对所述目标业务的实时带宽。
21.一种中控设备,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器执行所述机器可执行指令以实现权利要求1至7任一项所述的网络流量的限速方法。
22.一种网关,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器执行所述机器可执行指令以实现权利要求8至10任一项所述的网络流量的限速方法。
CN201911048394.7A 2019-10-29 2019-10-29 网络流量的限速方法、装置、中控设备和网关 Active CN112751691B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201911048394.7A CN112751691B (zh) 2019-10-29 2019-10-29 网络流量的限速方法、装置、中控设备和网关
PCT/CN2020/124795 WO2021083269A1 (zh) 2019-10-29 2020-10-29 网络流量的限速方法、装置、中控设备和网关

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911048394.7A CN112751691B (zh) 2019-10-29 2019-10-29 网络流量的限速方法、装置、中控设备和网关

Publications (2)

Publication Number Publication Date
CN112751691A CN112751691A (zh) 2021-05-04
CN112751691B true CN112751691B (zh) 2022-03-15

Family

ID=75641425

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911048394.7A Active CN112751691B (zh) 2019-10-29 2019-10-29 网络流量的限速方法、装置、中控设备和网关

Country Status (2)

Country Link
CN (1) CN112751691B (zh)
WO (1) WO2021083269A1 (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113572699B (zh) * 2021-07-01 2024-07-19 清华大学 云数据中心租户出口流量限速方法与系统
CN116321278A (zh) * 2021-12-10 2023-06-23 中兴通讯股份有限公司 拥塞控制方法、系统、电子设备和存储介质
CN114500381B (zh) * 2022-01-20 2024-10-22 北京奇艺世纪科技有限公司 网络带宽限制方法、系统、电子设备及可读存储介质
CN114598649B (zh) * 2022-03-17 2023-08-04 苏州浪潮智能科技有限公司 内核带宽管理方法、装置、存储设备及存储介质
CN114584490B (zh) * 2022-03-25 2024-04-09 阿里巴巴(中国)有限公司 数据传输检测方法以及装置
CN114745338B (zh) * 2022-03-30 2024-09-06 Oppo广东移动通信有限公司 流量控制方法、装置、存储介质以及服务器
CN115514649A (zh) * 2022-08-24 2022-12-23 中国电信股份有限公司 一种企业SDWAN hub-spoke组网中智能隧道调度的方法与系统
CN115378877B (zh) * 2022-08-25 2024-08-27 济南浪潮数据技术有限公司 一种控制流量的方法、装置、服务器及介质
CN115514708B (zh) * 2022-11-23 2023-03-21 江苏为是科技有限公司 拥塞控制方法及装置
CN116760785B (zh) * 2023-08-10 2023-10-17 腾讯科技(深圳)有限公司 带宽分配方法、装置、电子设备及存储介质
CN118337466A (zh) * 2024-04-25 2024-07-12 江苏派智信息科技有限公司 一种基于大数据的信息安全保护方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106254261A (zh) * 2016-08-09 2016-12-21 杭州华三通信技术有限公司 流量检测的方法和装置
CN106559349A (zh) * 2015-09-24 2017-04-05 阿里巴巴集团控股有限公司 业务传输速率的控制方法及装置、系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7773521B2 (en) * 2004-04-30 2010-08-10 Emc Corporation Storage switch traffic bandwidth control
CN107888428A (zh) * 2017-12-04 2018-04-06 郑州云海信息技术有限公司 一种带宽调整方法、装置、设备及可读存储介质
CN109951402A (zh) * 2017-12-21 2019-06-28 上海盛霄云计算技术有限公司 一种共享带宽的调整方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106559349A (zh) * 2015-09-24 2017-04-05 阿里巴巴集团控股有限公司 业务传输速率的控制方法及装置、系统
CN106254261A (zh) * 2016-08-09 2016-12-21 杭州华三通信技术有限公司 流量检测的方法和装置

Also Published As

Publication number Publication date
WO2021083269A1 (zh) 2021-05-06
CN112751691A (zh) 2021-05-04

Similar Documents

Publication Publication Date Title
CN112751691B (zh) 网络流量的限速方法、装置、中控设备和网关
US11316795B2 (en) Network flow control method and network device
CN112583735B (zh) 确定传输数据流的需求带宽的方法、设备和系统
WO2020022209A1 (ja) ネットワーク制御装置及びネットワーク制御方法
US9197516B2 (en) In-service throughput testing in distributed router/switch architectures
US11102273B2 (en) Uplink performance management
US9614777B2 (en) Flow control in a network
US20150236955A1 (en) Congestion Notification in a Network
WO2021238694A1 (zh) 确定传输业务流的带宽的方法、设备和系统
CN112787952B (zh) 一种业务流量调整方法及装置
US10050856B2 (en) Communication device, network available bandwidth estimation method in communication device, and storage medium on which network available bandwidth estimation program has been recorded
CN111510394A (zh) 一种报文调度方法、相关设备及计算机存储介质
US20230336486A1 (en) Service flow scheduling method and apparatus, and system
Park et al. Proportional bandwidth allocation in diffserv networks
US7843942B2 (en) Node and fair rate calculating method
US8792342B2 (en) Bandwidth guaranteeing apparatus and bandwidth guaranteeing method
CN112690016B (zh) 流量处理监视方法
Cobb Scalable quality of service across multiple domains
Susanto et al. Message passing delay in network congestion management
CN112118146A (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