CN108989239A - 过载保护方法及装置、控制器及存储介质 - Google Patents

过载保护方法及装置、控制器及存储介质 Download PDF

Info

Publication number
CN108989239A
CN108989239A CN201710409437.4A CN201710409437A CN108989239A CN 108989239 A CN108989239 A CN 108989239A CN 201710409437 A CN201710409437 A CN 201710409437A CN 108989239 A CN108989239 A CN 108989239A
Authority
CN
China
Prior art keywords
input information
preservation tactics
overload protection
processing capability
capability value
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
CN201710409437.4A
Other languages
English (en)
Other versions
CN108989239B (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.)
ZTE Corp
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN201710409437.4A priority Critical patent/CN108989239B/zh
Publication of CN108989239A publication Critical patent/CN108989239A/zh
Application granted granted Critical
Publication of CN108989239B publication Critical patent/CN108989239B/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
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/20Traffic policing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/215Flow control; Congestion control using token-bucket

Landscapes

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

Abstract

本发明提供了一种用于控制器的过载保护方法及装置、控制器及存储介质,该方法在监控到第一输入信息时,获取第一输入信息对应的保护策略,根据保护策略,对第一输入信息进行管理操作,实现了对输入信息的管理,而不是和现有技术那样一味地接收,就可以在解决输入信息过载保护,解决了现有技术中控制器因为来自交换设备的输入信息导致设备过载的问题。

Description

过载保护方法及装置、控制器及存储介质
技术领域
本发明涉及SDN(Software Defined Network,软件定义网络)领域,尤其涉及一种用于控制器的过载保护方法及装置、控制器及存储介质。
背景技术
SDN是一种新型的网络创新架构,其核心思想是网络设备的控制面与转发面分离开来,从而提高网络的灵活性;交换设备只专注于转发报文,控制表项的学习均由SDN控制器实现,然后再下发到交换机上。
根据OpenFlow(开放流)协议,SDN控制器主要用于packetIn(即本发明涉及的输入消息)处理。根据OpenFlow协议,交换设备会有各种各样的packetIn报文上送给控制器,这些packetIn请求主要用于申请ip地址、arp请求下流表等,而且这类packetIn请求要是控制器处理不成功,交换机会重复发送,会导致系统性能方面过载。
发明内容
本发明实施例提供了一种用于控制器的过载保护方法及装置、控制器及存储介质,以至少解决现有技术中控制器因为来自交换设备的输入信息导致设备过载的问题。
本发明一方面,提供了一种过载保护方法,包括:
监控来自交换设备的第一输入信息;
在监控到第一输入信息时,获取第一输入信息对应的保护策略;
根据保护策略,对第一输入信息进行管理操作。
本发明一方面,提供了一种过载保护装置,包括:
监控模块,用于监控来自交换设备的第一输入信息;
控制模块,用于在监控到第一输入信息时,获取第一输入信息对应的保护策略;
管理模块,用于根据保护策略,对第一输入信息进行管理操作。
本发明一方面,提供了一种控制器,包括处理器、存储器及通信总线;通信总线用于实现处理器和存储器之间的连接通信;处理器用于执行存储器中存储的过载保护程序,以实现上述的过载保护方法所包含的步骤。
本发明另一方面,提供了一种计算机可读存储介质,计算机可读存储介质存储有一个或者多个程序组成的过载保护程序,过载保护程序被执行,以实现上述的过载保护方法。
本发明实施例的有益效果:
本发明实施例提供了一种用于控制器的过载保护方法及装置、控制器及存储介质,该方法在监控到第一输入信息时,获取第一输入信息对应的保护策略,根据保护策略,对第一输入信息进行管理操作,实现了对输入信息的管理,而不是和现有技术那样一味地接收,就可以在解决输入信息过载保护,解决了现有技术中控制器因为来自交换设备的输入信息导致设备过载的问题。
附图说明
图1为本发明第一实施例提供的过载保护装置的结构框图;
图2为本发明第一实施例提供的过载保护方法的流程图;
图3为本发明第一实施例提供的控制器的结构图;
图4为本发明第二实施例涉及的令牌桶方法的流程图;
图5为本发明第二实施例涉及的阈值更新方法的流程图;
图6为本发明第二实施例提供的过载保护方法的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例只是本发明中一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
现通过具体实施方式结合附图的方式对本发明做出进一步的诠释说明。
第一实施例:
图1为本发明第一实施例提供的过载保护装置的结构框图,由图1可知,本实施例提供的过载保护装置包括:
监控模块11,用于监控来自交换设备的第一输入信息;
控制模块12,用于在监控到第一输入信息时,获取第一输入信息对应的保护策略;
管理模块13,用于根据保护策略,对第一输入信息进行管理操作。
在一些实施例中,保护策略包括单交换设备的单机流控策略;上述实施例中的控制模块12用于:
确定第一输入信息的来源交换设备;
查找来自来源交换设备的第二输入信息,第二输入信息为来源交换设备发送的与第一输入信息最近的输入信息;
计算第一输入信息与第二输入信息的接收时间差;
计算接收时间差内,为来源交换设备分配的第一输入信息处理能力值;
当第一输入信息处理能力值满足第一输入信息处理需求时,保护策略为处理第一输入信息;
当第一输入信息处理能力值不满足第一输入信息处理需求时,保护策略为丢弃第一输入信息。
在一些实施例中,上述实施例中的控制模块12用于:
调用来源交换设备对应的令牌桶计算规则;
根据令牌桶计算规则及接收时间差,计算第一输入信息处理能力值。
在实际应用中,为了实现交换设备的差异化处理,可以为不同的交换设备配置不同的令牌桶计算规则,如下表1所示:
交换设备标识 令牌桶计算规则 交换设备标识 令牌桶计算规则
1 1条/秒 4 0.5KB字节/秒
2 1KB字节/秒 5 1.5KB字节/秒
3 0.5条/秒 6 10条/分
…… …… …… ……
表1
在表1中,针对交换设备1,对应的令牌桶计算规则为1条/秒,即1秒为该交换设备1增加1条输入信息处理能力值,针对交换设备2,对应的令牌桶计算规则为1KB字节/秒,即1秒为该交换设备2增加1KB字节的输入信息处理能力值。
在表1的基础上,上述实施例中的调用来源交换设备对应的令牌桶计算规则为查找表1,根据来源交换设备的设备标识,确定对应的令牌桶计算规则,然后根据接收时间差,计算输入信息处理能力值。具体的,例如:
针对交换设备1,对应的令牌桶计算规则为1条/秒,即1秒为该交换设备1增加1条输入信息处理能力值,接收时间差为0.5秒,那么,对应的第一输入信息处理能力值为0.5条,而第一输入信息处理需求为1条输入信息处理能力值,此时,第一输入信息处理能力值不满足第一输入信息处理需求,需要进行流控处理,丢弃第一输入信息;
针对交换设备2,对应的令牌桶计算规则为1KB字节/秒,即1秒为该交换设备2增加1KB字节的输入信息处理能力值,接收时间差为0.5秒,那么,对应的第一输入信息处理能力值为0.5KB字节,而第一输入信息处理需求为消息0.2KB字节的输入信息处理能力值,此时,第一输入信息处理能力值满足第一输入信息处理需求,不需要进行流控处理,直接处理第一输入信息。
在一些实施例中,保护策略包括全局交换设备的全局流控策略;上述实施例中的控制模块12用于:
查找第三输入信息,第三输入信息为监控到的与第一输入信息最近的输入信息;
计算第一输入信息与第三输入信息的接收时间差;
调用全局流控策略,计算接收时间差内,为所有交换设备分配的第二输入信息处理能力值;
当第二输入信息处理能力值满足第一输入信息处理需求时,保护策略为处理第一输入信息;
当第二输入信息处理能力值不满足第一输入信息处理需求时,保护策略为随机拒绝或者随机接受第一输入信息。
在一些实施例中,上述实施例中的控制模块12用于:
查找全局流控策略最后一次的更新时刻值;
计算第一输入信息与更新时刻值的时间差值;
在时间差值大于更新阈值时,检测待处理消息积压参数,根据待处理消息积压参数,更新全局流控策略;
在时间差值小于更新阈值时,不更新全局流控策略。
在实际应用中,待处理消息积压越多,代表了控制器处于越严重的过载状态,需要进行过载保护,那么,待处理消息积压参数与全局流控策略的映射关系可以如下表2所示:
积压参数 全局流控策略 积压参数 全局流控策略
0 100条/秒 20条 80条/秒
10条 90条/秒 30条 70条/秒
20KB 10KB/秒 1000KB 0
…… …… …… ……
表2
在表2中,针对积压参数为0时,对应的全局流控策略为100条/秒,即1秒为所有交换设备增加100条输入信息处理能力值(所有交互设备共用),针对积压参数为20KB时,对应的全局流控策略为10KB/秒,即1秒为所有交换设备增加10KB字节的输入信息处理能力值(所有交互设备共用)。
本实施例提供了一种用于控制器的过载保护装置,在监控到第一输入信息时,获取第一输入信息对应的保护策略,根据保护策略,对第一输入信息进行管理操作,实现了对输入信息的管理,而不是和现有技术那样一味地接收,就可以在解决输入信息过载保护,解决了现有技术中控制器因为来自交换设备的输入信息导致设备过载的问题。
图2为本发明第一实施例提供的过载保护方法的流程图,由图2可知,本实施例提供的过载保护方法包括:
S201:监控来自交换设备的第一输入信息;
S202:在监控到第一输入信息时,获取第一输入信息对应的保护策略;
S203:根据保护策略,对第一输入信息进行管理操作。
在一些实施例中,保护策略包括单交换设备的单机流控策略;上述实施例中的获取第一输入信息对应的保护策略包括:
确定第一输入信息的来源交换设备;
查找来自来源交换设备的第二输入信息,第二输入信息为来源交换设备发送的与第一输入信息最近的输入信息;
计算第一输入信息与第二输入信息的接收时间差;
计算接收时间差内,为来源交换设备分配的第一输入信息处理能力值;
当第一输入信息处理能力值满足第一输入信息处理需求时,保护策略为处理第一输入信息;
当第一输入信息处理能力值不满足第一输入信息处理需求时,保护策略为丢弃第一输入信息。
在一些实施例中,上述实施例中的计算接收时间差内,为来源交换设备分配的输入信息处理能力值包括:
调用来源交换设备对应的令牌桶计算规则;
根据令牌桶计算规则及接收时间差,计算第一输入信息处理能力值。
在一些实施例中,保护策略包括全局交换设备的全局流控策略;上述实施例中的获取第一输入信息对应的保护策略包括:
查找第三输入信息,第三输入信息为监控到的与第一输入信息最近的输入信息;
计算第一输入信息与第三输入信息的接收时间差;
调用全局流控策略,计算接收时间差内,为所有交换设备分配的第二输入信息处理能力值;
当第二输入信息处理能力值满足第一输入信息处理需求时,保护策略为处理第一输入信息;
当第二输入信息处理能力值不满足第一输入信息处理需求时,保护策略为随机拒绝或者随机接受第一输入信息。
在一些实施例中,上述实施例中的信息分享方法,在调用全局流控策略之前,还包括:
查找全局流控策略最后一次的更新时刻值;
计算第一输入信息与更新时刻值的时间差值;
在时间差值大于更新阈值时,检测待处理消息积压参数,根据待处理消息积压参数,更新全局流控策略;
在时间差值小于更新阈值时,不更新全局流控策略。
本实施例提供了一种用于控制器的过载保护方法,该方法在监控到第一输入信息时,获取第一输入信息对应的保护策略,根据保护策略,对第一输入信息进行管理操作,实现了对输入信息的管理,而不是和现有技术那样一味地接收,就可以在解决输入信息过载保护,解决了现有技术中控制器因为来自交换设备的输入信息导致设备过载的问题。
图3为本发明第一实施例提供的控制器的结构图;由图3可知,本实施例提供的控制器包括:处理器31、存储器32及通信总线33;其中,
通信总线33用于实现处理器和存储器之间的连接通信;
处理器31用于执行存储器32中存储的过载保护程序,以实现以下步骤:
监控来自交换设备的第一输入信息;
在监控到第一输入信息时,获取第一输入信息对应的保护策略;
根据保护策略,对第一输入信息进行管理操作。
在一些实施例中,保护策略包括单交换设备的单机流控策略;上述实施例中的处理器31还用于执行计算机程序,以实现以下步骤:
确定第一输入信息的来源交换设备;
查找来自来源交换设备的第二输入信息,第二输入信息为来源交换设备发送的与第一输入信息最近的输入信息;
计算第一输入信息与第二输入信息的接收时间差;
计算接收时间差内,为来源交换设备分配的第一输入信息处理能力值;
当第一输入信息处理能力值满足第一输入信息处理需求时,保护策略为处理第一输入信息;
当第一输入信息处理能力值不满足第一输入信息处理需求时,保护策略为丢弃第一输入信息。
在一些实施例中,上述实施例中的处理器31还用于执行计算机程序,以实现以下步骤:
调用来源交换设备对应的令牌桶计算规则;
根据令牌桶计算规则及接收时间差,计算第一输入信息处理能力值。
在一些实施例中,保护策略包括全局交换设备的全局流控策略;上述实施例中的处理器31还用于执行计算机程序,以实现以下步骤:
查找第三输入信息,第三输入信息为监控到的与第一输入信息最近的输入信息;
计算第一输入信息与第三输入信息的接收时间差;
调用全局流控策略,计算接收时间差内,为所有交换设备分配的第二输入信息处理能力值;
当第二输入信息处理能力值满足第一输入信息处理需求时,保护策略为处理第一输入信息;
当第二输入信息处理能力值不满足第一输入信息处理需求时,保护策略为随机拒绝或者随机接受第一输入信息。
在一些实施例中,上述实施例中的处理器31还用于执行计算机程序,以实现以下步骤:
在调用全局流控策略之前,查找全局流控策略最后一次的更新时刻值;
计算第一输入信息与更新时刻值的时间差值;
在时间差值大于更新阈值时,检测待处理消息积压参数,根据待处理消息积压参数,更新全局流控策略;
在时间差值小于更新阈值时,不更新全局流控策略。
本实施例提供了一种控制器,在监控到第一输入信息时,获取第一输入信息对应的保护策略,根据保护策略,对第一输入信息进行管理操作,实现了对输入信息的管理,而不是和现有技术那样一味地接收,就可以在解决输入信息过载保护,解决了现有技术中控制器因为来自交换设备的输入信息导致设备过载的问题。
在一些实施例中,本发明还提供了一种计算机可读存储介质,计算机可读存储介质存储有一个或者多个程序组成的过载保护程序,过载保护程序被执行,以实现以下步骤:
监控来自交换设备的第一输入信息;
在监控到第一输入信息时,获取第一输入信息对应的保护策略;
根据保护策略,对第一输入信息进行管理操作。
在一些实施例中,上述实施例中的过载保护程序被执行,以实现以下步骤:
确定第一输入信息的来源交换设备;
查找来自来源交换设备的第二输入信息,第二输入信息为来源交换设备发送的与第一输入信息最近的输入信息;
计算第一输入信息与第二输入信息的接收时间差;
计算接收时间差内,为来源交换设备分配的第一输入信息处理能力值;
当第一输入信息处理能力值满足第一输入信息处理需求时,保护策略为处理第一输入信息;
当第一输入信息处理能力值不满足第一输入信息处理需求时,保护策略为丢弃第一输入信息。
在一些实施例中,上述实施例中的过载保护程序被执行,以实现以下步骤:
调用来源交换设备对应的令牌桶计算规则;
根据令牌桶计算规则及接收时间差,计算第一输入信息处理能力值。
在一些实施例中,上述实施例中的过载保护程序被执行,以实现以下步骤:
查找第三输入信息,第三输入信息为监控到的与第一输入信息最近的输入信息;
计算第一输入信息与第三输入信息的接收时间差;
调用全局流控策略,计算接收时间差内,为所有交换设备分配的第二输入信息处理能力值;
当第二输入信息处理能力值满足第一输入信息处理需求时,保护策略为处理第一输入信息;
当第二输入信息处理能力值不满足第一输入信息处理需求时,保护策略为随机拒绝或者随机接受第一输入信息。
在一些实施例中,上述实施例中的过载保护程序被执行,以实现以下步骤:
在调用全局流控策略之前,查找全局流控策略最后一次的更新时刻值;
计算第一输入信息与更新时刻值的时间差值;
在时间差值大于更新阈值时,检测待处理消息积压参数,根据待处理消息积压参数,更新全局流控策略;
在时间差值小于更新阈值时,不更新全局流控策略。
本实施例提供了一种计算机可读存储介质,其内存储的计算机程序在被执行时,在监控到第一输入信息时,获取第一输入信息对应的保护策略,根据保护策略,对第一输入信息进行管理操作,实现了对输入信息的管理,而不是和现有技术那样一味地接收,就可以在解决输入信息过载保护,解决了现有技术中控制器因为来自交换设备的输入信息导致设备过载的问题。
第二实施例:
现结合具体应用场景,对本发明做进一步的诠释说明。
本实施例属于SDN控制器网络通信技术,更确切地说,是为了防止基于openflow协议的控制器的南向过载,对南向上送的packetIn做限速控制,从而起到对控制器过载保护的作用。
每个系统,都有自己的最大处理能力。如果没有过载保护,可能会造成非常严重的后果。比如我们的家庭用电,也会有熔断器这样的过载保护,即当家庭的用电量达到一定负荷时候,便将电力系统关闭掉。同样一个软件系统也有它的处理能力极限,也需要过载保护。此外,当一个软件系统一直处于过载的状态下,会导致请求响应变慢。由于处理超时,导致用户请求增多,此时这种过载的状况就像雪球一样越滚越大,情况变得越来越糟。而且某些系统,由于架构或是代码的原因,极端情况下过载还会导致系统处理能力变弱。因此,过载保护对大部分高并发的软件系统非常必要。
每一种软件系统处理的业务不一样,都有其特点,过载保护的方式也不一样。比如大型的互联网后台服务系统,可以利用前端系统对请求首先做一层有效性过滤,单用户的请求速率也做一定限制。在后台方面,可以使用对请求适当拒绝,将请求引流到其他集群系统等手段做过载保护。SDN作为一种新型的网络架构,也有其不同的业务,因此过载保护有其独特的方法。
SDN是一种新型的网络创新架构,其核心思想是网络设备的控制面与转发面分离开来,从而提高网络的灵活性。交换设备只专注于转发报文,控制表项的学习均由SDN控制器实现,然后再下发到交换机上。OpenFlow协议起源于斯坦福大学的Clean Slate项目组,由ONF标准化,它已成为SDN名义上的南向标准。本发明是基于OpenFlow协议的SDN控制器系统南向过载保护,应用于单控制器节点上。
根据OpenFlow协议,SDN控制器系统中过载保护主要涉及packetIn限速,本实施例着重描述packetIn的过载保护。根据OpenFlow协议,交换设备会有各种各样的packetIn报文上送给控制器,这些packetIn请求主要用于申请ip地址、arp请求下流表等。而且这类packetIn请求要是控制器处理不成功,交换机会重复发送。因此,必须对packetIn的请求做限速。packetIn请求应答是控制器南向性能的直接表现,若不加限速会导致系统性能方面过载。
本实施例的目的在于,提供一种南向过载保护手段,保证基于OpenFlow协议的SDN控制器系统不超出其处理能力。
本实施例主要涉及到以下及部分:
1、令牌桶算法;
2、自适应packetIn请求分级限速;
3、packetIn限速整体方案。
利用本实施例进行SDN控制器南向过载保护,主要的技术方案如下:
令牌桶算法;
因为系统多处需要限速,因此编写一个通用的流控算法,便于复用。为了提升准确性,本发明的令牌桶算法采用请求触发去投放令牌。实现步骤如下:
步骤一:请求发生时,记录本次请求发生的时间;
步骤二:根据当前请求发生时间和上次请求发生时间差,投放令牌;
步骤三:判断是否达到了流控门限,若达到门限则请求进行限制策略。(不同业务限制方法不一样,有些随见丢弃请求,有些全部丢)若没有达到门限值,则不限制请求。
本实施例的packetIn限速方案分为两类限制:(1)单交换设备的限速控制;(2)全局的所有交换设备的限速。控制器管理的交换设备种类繁多,难免出现单台设备向控制器发packetIn攻击。此外,环境中出现环路,都会从单台设备上送大量的packetIn报文给控制器。因此,需要对单交换设备做限速控制。限速的方案便是使用以上的令牌桶算法,若单交换设备的packetIn请求达到一定门限时,则丢弃此请求。
自适应packetIn请求分级限速;
若所有设备都按最大的限制速率上送packetIn,会超出系统的整体性能极限。所以需要对全局packetIn做限速。全局方面借鉴了tcp的拥塞控制策略,根据负载情况调节流控门限的大小。本发明是消息驱动系统,因此选择了消息队列积压情况作为负载轻重的标准。即当系统的消息队列积压增加到一定程度,即将流控的门限调小。反之,将流控的门限调大。这种自适应的方法,能够更好的保护系统。本发明的全局分级流控的阈值设置方案步骤如下:
步骤一:请求发生时,检测距离上次阈值设置时间超过检测周期(由于查询消息队列积压情况,较耗时,因此当超过检测周期时才对流控阈值做设置)。若不超过检测周期,则不设置全局流控的阈值;
步骤二:若此次请求时间和上次设置阈值时间之差超过检测周期,则查询全局以及核心组件的消息队列积压情况。根据最大的积压情况,设置全局流控阈值的大小。
单交换机packetIn请求限速;
根据以上的分析,本实施例整体packetIn流控的方案步骤如下:
步骤一:请求发生时,根据消息积压情况设置全局流控阈值。可能设置,也可能不设置;
步骤二:单交换设备packetIn流控,若超过流控阈值,则拒绝请求,流控流程结束;
步骤三:若不超过单交换设备packetIn流控阈值,则进行全局packetIn流控;
步骤四:若超过全局packetIn流控,则随机拒绝或接受请求。反之,系统接受请求。
本实施例涉及的令牌桶方法是系统中通用的算法,使用之时需要设置限速的阈值,比如设置请求的最大阈值为xTPS,具体的,如图4所示:
S401-S402:在一个请求发生时,先计算出当前时间t1,上一次请求的时间t2。那么这段时间令牌的投放量为y=(t1-t2)*x,假如之前的令牌值为z,则新的令牌值z’=z+y;
S403-S405:使用新的令牌值z’减去新请求需要消耗的令牌值,得到z”,如果z”z’小于等于0,则执行请求限制,可能是直接拒绝请求,也可能随机拒绝请求。根据场景而定;若z”大于0,则接受请求,并消耗令牌,若每个请求消耗c,则z”=z’-c。
本实施例涉及的自适应分级流控阈值设置的自适应调节标准可根据系统而定,本实施例中采用消息队列的积压情况作为标准,由于查询消息积压情况较耗时,设定一定的检测周期t;如图5所示:
S501:请求发生时,记录当前的时间t1,假如上一次设置流控阈值的时间为t2;
S502-S505:假如t1-t2<t,则不设置流控阈值;若t1-t2>=t,则先记录本次设置阈值的时间,t2’=t1,并根据当前的消息队列积压情况,设置流控阈值。设置流控阈值的策略根据系统而定。
在积压的前期,比如积压每增加10%,阈值除以5。当积压到一定程度,超过80%,则将阈值设置为0。类似这样的策略,需要根据系统的测试情况而定。
为了提升性能,针对packetIn请求限速,本实施例将单交换机的流控和全局的流控放在一个大流程中。如图6所示:
S601-S602:请求发生时,根据消息积压情况设置全局流控阈值;
S603-S609:进行单交换设备packetIn流控:若超过流控阈值,则拒绝请求,流控流程结束;若不超过单交换设备packetIn流控阈值,则进行全局packetIn流控;若超过全局packetIn流控,则随机拒绝或接受请求,反之,系统接受请求。
在实际应用中,全局packetIn的默认限速阈值,分级设置阈值的策略,都是在系统测试的基础上确定的。在熟悉系统性能的基础上,做过载保护,对系统将起到更大的作用。
综上可知,通过本发明实施例的实施,至少存在以下有益效果:
本发明实施例提供了一种用于控制器的过载保护方法及装置、控制器及存储介质,该方法在监控到第一输入信息时,获取第一输入信息对应的保护策略,根据保护策略,对第一输入信息进行管理操作,实现了对输入信息的管理,而不是和现有技术那样一味地接收,就可以在解决输入信息过载保护,解决了现有技术中控制器因为来自交换设备的输入信息导致设备过载的问题。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上仅是本发明的具体实施方式而已,并非对本发明做任何形式上的限制,凡是依据本发明的技术实质对以上实施方式所做的任意简单修改、等同变化、结合或修饰,均仍属于本发明技术方案的保护范围。

Claims (10)

1.一种过载保护方法,包括:
监控来自交换设备的第一输入信息;
在监控到所述第一输入信息时,获取所述第一输入信息对应的保护策略;
根据所述保护策略,对所述第一输入信息进行管理操作。
2.如权利要求1所述的过载保护方法,其特征在于,所述保护策略包括单交换设备的单机流控策略;所述获取所述第一输入信息对应的保护策略包括:
确定所述第一输入信息的来源交换设备;
查找来自所述来源交换设备的第二输入信息,所述第二输入信息为所述来源交换设备发送的与所述第一输入信息最近的输入信息;
计算所述第一输入信息与所述第二输入信息的接收时间差;
计算所述接收时间差内,为所述来源交换设备分配的第一输入信息处理能力值;
当所述第一输入信息处理能力值满足所述第一输入信息处理需求时,所述保护策略为处理所述第一输入信息;
当所述第一输入信息处理能力值不满足所述第一输入信息处理需求时,所述保护策略为丢弃所述第一输入信息。
3.如权利要求2所述的信息分享方法,其特征在于,所述计算所述接收时间差内,为所述来源交换设备分配的输入信息处理能力值包括:
调用所述来源交换设备对应的令牌桶计算规则;
根据所述令牌桶计算规则及所述接收时间差,计算所述第一输入信息处理能力值。
4.如权利要求1至3任一项所述的过载保护方法,其特征在于,所述保护策略包括全局交换设备的全局流控策略;所述获取所述第一输入信息对应的保护策略包括:
查找第三输入信息,所述第三输入信息为监控到的与所述第一输入信息最近的输入信息;
计算所述第一输入信息与所述第三输入信息的接收时间差;
调用全局流控策略,计算所述接收时间差内,为所有交换设备分配的第二输入信息处理能力值;
当所述第二输入信息处理能力值满足所述第一输入信息处理需求时,所述保护策略为处理所述第一输入信息;
当所述第二输入信息处理能力值不满足所述第一输入信息处理需求时,所述保护策略为随机拒绝或者随机接受所述第一输入信息。
5.如权利要求4所述的信息分享方法,其特征在于,在调用所述全局流控策略之前,还包括:
查找所述全局流控策略最后一次的更新时刻值;
计算所述第一输入信息与所述更新时刻值的时间差值;
在所述时间差值大于更新阈值时,检测待处理消息积压参数,根据所述待处理消息积压参数,更新所述全局流控策略;
在所述时间差值小于更新阈值时,不更新所述全局流控策略。
6.一种过载保护装置,包括:
监控模块,用于监控来自交换设备的第一输入信息;
控制模块,用于在监控到所述第一输入信息时,获取所述第一输入信息对应的保护策略;
管理模块,用于根据所述保护策略,对所述第一输入信息进行管理操作。
7.如权利要求6所述的过载保护装置,其特征在于,所述保护策略包括单交换设备的单机流控策略;所述控制模块用于:
确定所述第一输入信息的来源交换设备;
查找来自所述来源交换设备的第二输入信息,所述第二输入信息为所述来源交换设备发送的与所述第一输入信息最近的输入信息;
计算所述第一输入信息与所述第二输入信息的接收时间差;
计算所述接收时间差内,为所述来源交换设备分配的第一输入信息处理能力值;
当所述第一输入信息处理能力值满足所述第一输入信息处理需求时,所述保护策略为处理所述第一输入信息;
当所述第一输入信息处理能力值不满足所述第一输入信息处理需求时,所述保护策略为丢弃所述第一输入信息。
8.如权利要求6或7所述的过载保护装置,其特征在于,所述保护策略包括全局交换设备的全局流控策略;所述控制模块用于:
查找第三输入信息,所述第三输入信息为监控到的与所述第一输入信息最近的输入信息;
计算所述第一输入信息与所述第三输入信息的接收时间差;
调用全局流控策略,计算所述接收时间差内,为所有交换设备分配的第二输入信息处理能力值;
当所述第二输入信息处理能力值满足所述第一输入信息处理需求时,所述保护策略为处理所述第一输入信息;
当所述第二输入信息处理能力值不满足所述第一输入信息处理需求时,所述保护策略为随机拒绝或者随机接受所述第一输入信息。
9.一种控制器,包括处理器、存储器及通信总线;所述通信总线用于实现处理器和存储器之间的连接通信;所述处理器用于执行存储器中存储的过载保护程序,以实现如权利要求1至5任一项所述的过载保护方法所包含的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序组成的过载保护程序,所述过载保护程序被执行,以实现如权利要求1至5任一项所述的过载保护方法。
CN201710409437.4A 2017-06-02 2017-06-02 过载保护方法及装置、控制器及存储介质 Active CN108989239B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710409437.4A CN108989239B (zh) 2017-06-02 2017-06-02 过载保护方法及装置、控制器及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710409437.4A CN108989239B (zh) 2017-06-02 2017-06-02 过载保护方法及装置、控制器及存储介质

Publications (2)

Publication Number Publication Date
CN108989239A true CN108989239A (zh) 2018-12-11
CN108989239B CN108989239B (zh) 2023-10-13

Family

ID=64502702

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710409437.4A Active CN108989239B (zh) 2017-06-02 2017-06-02 过载保护方法及装置、控制器及存储介质

Country Status (1)

Country Link
CN (1) CN108989239B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114501351A (zh) * 2022-01-28 2022-05-13 阿里巴巴(中国)有限公司 流量控制方法、设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005006678A1 (en) * 2003-06-27 2005-01-20 Cisco Technology, Inc. Methods and devices for flexible bandwidth allocation
US20080205442A1 (en) * 2007-02-26 2008-08-28 Canon Kabushiki Kaisha Method of allocation of resources for transmission of a data content, corresponding computer program product, storage means and device
US20110096674A1 (en) * 2009-10-23 2011-04-28 Cisco Technology, Inc. Aggregate policing applying max-min fairness for each data source based on probabilistic filtering
US20110292792A1 (en) * 2010-05-31 2011-12-01 Microsoft Corporation Applying Policies to Schedule Network Bandwidth Among Virtual Machines
CN102315956A (zh) * 2010-07-02 2012-01-11 中兴通讯股份有限公司 一种流量监管方法和装置
US20120150964A1 (en) * 2010-12-08 2012-06-14 Microsoft Corporation Using E-Mail Message Characteristics for Prioritization
CN104980367A (zh) * 2014-04-03 2015-10-14 深圳市中兴微电子技术有限公司 一种令牌桶限速方法和装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005006678A1 (en) * 2003-06-27 2005-01-20 Cisco Technology, Inc. Methods and devices for flexible bandwidth allocation
US20080205442A1 (en) * 2007-02-26 2008-08-28 Canon Kabushiki Kaisha Method of allocation of resources for transmission of a data content, corresponding computer program product, storage means and device
US20110096674A1 (en) * 2009-10-23 2011-04-28 Cisco Technology, Inc. Aggregate policing applying max-min fairness for each data source based on probabilistic filtering
US20110292792A1 (en) * 2010-05-31 2011-12-01 Microsoft Corporation Applying Policies to Schedule Network Bandwidth Among Virtual Machines
CN102315956A (zh) * 2010-07-02 2012-01-11 中兴通讯股份有限公司 一种流量监管方法和装置
US20120150964A1 (en) * 2010-12-08 2012-06-14 Microsoft Corporation Using E-Mail Message Characteristics for Prioritization
CN104980367A (zh) * 2014-04-03 2015-10-14 深圳市中兴微电子技术有限公司 一种令牌桶限速方法和装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114501351A (zh) * 2022-01-28 2022-05-13 阿里巴巴(中国)有限公司 流量控制方法、设备及存储介质
WO2023143276A1 (zh) * 2022-01-28 2023-08-03 阿里巴巴(中国)有限公司 流量控制方法、设备及存储介质
CN114501351B (zh) * 2022-01-28 2024-04-26 阿里巴巴(中国)有限公司 流量控制方法、设备及存储介质

Also Published As

Publication number Publication date
CN108989239B (zh) 2023-10-13

Similar Documents

Publication Publication Date Title
CN108495195B (zh) 一种网络直播排行榜生成方法、装置、设备及存储介质
CN105554102A (zh) 基于容器集群的弹性伸缩方法及其应用系统
CN100459589C (zh) 流量监管方法及流量监管设备
CN106302616A (zh) 网络唤醒方法、远程服务器和网络交换设备
CN103178989A (zh) 访问热度统计方法及装置
CN105450964B (zh) 对录像数据进行云存储的方法、系统及管理节点
CN110647392A (zh) 一种基于容器集群的智能弹性伸缩方法
CN109800204A (zh) 数据分配方法及相关产品
CN110275873A (zh) 文件存储方法、装置、存储管理设备及存储介质
CN108028828A (zh) 一种分布式拒绝服务DDoS攻击检测方法及相关设备
CN108566344B (zh) 一种报文处理方法和装置
CN106201839A (zh) 一种业务对象的信息加载方法和装置
CN107196949A (zh) 限制同一用户账号登录终端数量的系统
CN105656978B (zh) 一种资源共享方法及装置
CN103595736B (zh) 视频监控系统中的访问请求处理方法和装置
CN109982034A (zh) 视频监控系统中的访问请求处理方法及装置
CN105208654A (zh) 一种通知消息发送方法及装置
CN104780118A (zh) 一种基于令牌的流控方法及装置
CN110611937B (zh) 数据分流方法、装置、边缘数据中心和可读存储介质
CN108989239A (zh) 过载保护方法及装置、控制器及存储介质
CN117793583A (zh) 报文转发方法、装置、电子设备及计算机可读存储介质
CN110347518B (zh) 消息处理方法及装置
CN113835905B (zh) 一种消息队列负载均衡方法、装置、电子设备及介质
CN104717258B (zh) 一种数据发送方法及系统
CN109981726A (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