CN115604190A - 聚合链路的数据流调度方法、系统、电子设备及存储介质 - Google Patents
聚合链路的数据流调度方法、系统、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115604190A CN115604190A CN202211214109.6A CN202211214109A CN115604190A CN 115604190 A CN115604190 A CN 115604190A CN 202211214109 A CN202211214109 A CN 202211214109A CN 115604190 A CN115604190 A CN 115604190A
- Authority
- CN
- China
- Prior art keywords
- link
- available
- links
- target
- fault
- 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/127—Avoiding congestion; Recovering from congestion by using congestion prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0668—Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供一种聚合链路的数据流调度方法、系统、电子设备及存储介质,应用于SDN架构中的控制器,当检测到待分配的数据流时,获取聚合链路中每条链路的剩余可用带宽,并根据每条链路的剩余可用带宽计算每条链路的被选概率;针对每条链路而言,根据链路的被选概率和各个其他链路的被选概率计算链路的累积被选概率;根据各个链路的累积被选概率,从各个链路中确定目标待分配链路,并将待分配的数据流分配给目标待分配链路;实时检测聚合链路的各个链路中是否存在故障链路;当检测到聚合链路的各个链路中存在故障链路时,从各个可用链路中筛选出目标可用链路,并将故障链路上的数据流转发到目标可用链路上。
Description
技术领域
本发明涉及计算机技术领域,更具体地说,涉及一种聚合链路的数据流调度方法、系统、电子设备及存储介质。
背景技术
随着计算机技术的不断发展,可以将同一对网络设备的多条链路聚合成一条逻辑链路,生成聚合链路。当存在新的数据流时,可以将数据流分配给聚合链路中的某条链路,或者当其中一条链路发生故障时,可以将发生故障的链路上的数据流转移到其他链路上传输。
现有的聚合链路的数据流调度方式,通过采用哈希、轮询、随机等策略为数据流选择合适的链路;其中,该数据流可以为新的数据流,或者为发生故障的链路上的数据流。
但是,现有的聚合链路的数据流调度方式没有考虑当前选择的链路的链路负载,有可能会选择到负载较高的链路,这样会导致链路堵塞;并且还需要人工配置,无法快速部署,以及存储不同厂商的设备间难以兼容的问题。
发明内容
有鉴于此,本发明提供一种聚合链路的数据流调度方法、系统、电子设备及存储介质,以解决现有技术中没有考虑当前选择的链路的链路负载,有可能会选择到负载较高的链路,这样会导致链路堵塞;并且还需要人工配置,无法快速部署,以及存储不同厂商的设备间难以兼容的问题。
本发明第一方面公开一种聚合链路的数据流调度方法,应用于SDN架构中的控制器,所述方法包括:
当检测到待分配的数据流时,获取聚合链路中每条链路的剩余可用带宽,并根据每条所述链路的剩余可用带宽计算每条链路的被选概率;
针对每条所述链路而言,根据所述链路的被选概率和各个其他链路的被选概率计算所述链路的累积被选概率;
根据各个所述链路的累积被选概率,从各个所述链路中确定目标待分配链路,并将所述待分配的数据流分配给所述目标待分配链路;
实时检测所述聚合链路的各个所述链路中是否存在故障链路;
当检测到所述聚合链路的各个所述链路中存在故障链路时,从各个可用链路中筛选出目标可用链路,并将所述故障链路上的数据流转发到所述目标可用链路上;其中,所述可用链路为所述聚合链路中为未发生故障的链路。
可选的,若所述故障链路为拥塞链路,当检测到所述聚合链路的各个所述链路中存在故障链路时,从各个可用链路中筛选出目标可用链路,并将所述故障链路上的数据流转发到所述目标可用链路上,包括:
当检测到所述聚合链路的各个所述链路中存在故障链路,获取所述故障链路上的每条数据流的采样数据包占比;
根据各个所述故障链路的采样数据包占比,从各个所述故障链路中筛选出至少一个候选大象流;
针对每个所述候选大象流,获取所述候选大象流对应的预先设置的流表项信息,并根据所述流表项信息确定所述候选大象流的传输速率;
针对每个所述候选大象流,若所述候选大象流的传输速率大于预设传输速率,确定所述候选大象流为大象流;
从各个可用链路中筛选出目标可用链路,并将所述故障链路上的数据流转发到所述目标可用链路上;其中,所述目标可用链路未所述聚合链路上的各个可用链路中剩余可用带宽最大的可用链路。
可选的,所述实时检测所述聚合链路的各个所述链路中是否存在故障链路,包括:
针对所述聚合链路上的每条所述链路,实时检测所述链路的链路负载;
判断所述链路的链路负载是否大于预设链路负载;
若所述链路的链路负载大于所述预设链路负载,确定所述链路为故障链路,且所述故障链路为拥塞链路;
若所述链路的链路负载不大于所述预设链路负载,确定所述链路未发生拥塞。
可选的,所述实时检测所述聚合链路的各个所述链路中是否存在故障链路,包括;
针对所述聚合链路上的每条所述链路,获取所述链路的当前占用带宽;
判断所述链路的当前占用带宽是否大于预设链路拥塞门限带宽;
若所述链路的当前占用带宽大于所述预设链路拥塞门限带宽,确定所述链路为故障链路,且所述故障链路为拥塞链路;
若所述链路的当前占用带宽不大于所述预设链路拥塞门限带宽,确定所述链路未发生拥塞。
可选的,若所述故障链路为无效链路,所述当检测到所述聚合链路的各个所述链路中存在故障链路时,从各个可用链路中筛选出目标可用链路,并将所述故障链路上的数据流转发到所述目标可用链路上,包括:
当检测到所述聚合链路的各个所述链路中存在故障链路时,向所述故障链路两端对应的交换机发送OFPMP_FLOW请求,以获取所述故障链路上的各个数据流;
从所述聚合链路的各个可用链路中确定目标可用链路,并将各个所述数据流发送给所述目标可用链路;
在成功将各个所述数据流发送给所述目标可用链路后,将所述无效链路从所述聚合链路中删除。
本发明第二方面公开一种聚合链路的数据流调度系统,应用于SDN架构中的控制器,所述系统包括:
被选概率计算单元,用于当检测到待分配的数据流时,获取聚合链路中每条链路的剩余可用带宽,并根据每条所述链路的剩余可用带宽计算每条链路的被选概率;
累积被选概率计算单元,用于针对每条所述链路而言,根据所述链路的被选概率和各个其他链路的被选概率计算所述链路的累积被选概率;
分配单元,用于根据各个所述链路的累积被选概率,从各个所述链路中确定目标待分配链路,并将所述待分配的数据流分配给所述目标待分配链路;
实时检测单元,用于实时检测所述聚合链路的各个所述链路中是否存在故障链路;
转发单元,用于当检测到所述聚合链路的各个所述链路中存在故障链路时,从各个可用链路中筛选出目标可用链路,并将所述故障链路上的数据流转发到所述目标可用链路上;其中,所述可用链路为所述聚合链路中为未发生故障的链路。
可选的,若所述故障链路为拥塞链路,所述转发单元,包括:
采样数据包占比获取单元,用于当检测到所述聚合链路的各个所述链路中存在故障链路,获取所述故障链路上的每条数据流的采样数据包占比;
候选大象流筛选单元,用于根据各个所述故障链路的采样数据包占比,从各个所述故障链路中筛选出至少一个候选大象流;
所述候选大象流的传输速率确定单元,用于针对每个所述候选大象流,获取所述候选大象流对应的预先设置的流表项信息,并根据所述流表项信息确定所述候选大象流的传输速率;
大象流确定单元,用于针对每个所述候选大象流,若所述候选大象流的传输速率大于预设传输速率,确定所述候选大象流为大象流;
第一转发子单元,用于从各个可用链路中筛选出目标可用链路,并将所述故障链路上的数据流转发到所述目标可用链路上;其中,所述目标可用链路未所述聚合链路上的各个可用链路中剩余可用带宽最大的可用链路。
可选的,所述实时检测单元,包括:
链路负载检测单元,用于针对所述聚合链路上的每条所述链路,实时检测所述链路的链路负载;
第一判断单元,用于判断所述链路的链路负载是否大于预设链路负载;
第一确定单元,用于若所述链路的链路负载大于所述预设链路负载,确定所述链路为故障链路,且所述故障链路为拥塞链路;
第二确定单元,用于若所述链路的链路负载不大于所述预设链路负载,确定所述链路未发生拥塞。
本发明第三方面公开一种电子设备,包括:处理器以及存储器,所述处理器以及存储器通过通信总线相连;其中,所述处理器,用于调用并执行所述存储器中存储的程序;所述存储器,用于存储程序,所述程序用于实现如上述本发明第一方面公开的聚合链路的数据流调度方法。
本发明第四方面公开一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行如上述本发明第一方面公开的聚合链路的数据流调度方法。
本发明提供一种聚合链路的数据流调度方法、系统、电子设备及存储介质,应用于SDN架构中的控制器,通过控制器实时检测当前是否存在待分配的数据流,当检测到待分配的数据流时,通过获取聚合链路中每条链路的剩余可用带宽,并根据每条所述链路的剩余可用带宽计算每条链路的被选概率;针对每条所述链路而言,根据所述链路的被选概率和各个其他链路的被选概率计算所述链路的累积被选概率;根据各个所述链路的累积被选概率,从各个所述链路中确定目标待分配链路,并将所述待分配的数据流分配给所述目标待分配链路;并且,当检测到所述聚合链路的各个所述链路中存在故障链路时,从各个可用链路中筛选出目标可用链路,并将所述故障链路上的数据流转发到所述目标可用链路上。本发明通过根据各个链路的剩余可用带宽,从各个链路中选择合适的链路,这样可以避免选到负载较高的链路,从而避免链路堵塞,并且通过SDN架构中的控制器自动实现数据流调度,无需人工配置,能够快速部署,同时还解决了不同厂商的设备间难以兼容的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的一种聚合链路的数据流调度方法的流程示意图;
图2为本发明实施例提供的一种SDN架构的控制器的结构图;
图3为本发明实施例提供的一种聚合链路中的链路确定图;
图4为本发明实施例提供的一种聚合链路的数据流调度系统的结构示意图;
图5为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
需要注意,本发明公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本发明公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
为了更好的理解本申请涉及的技术术语,下面进行相应的解释:
聚合链路:由连接同一对网络设备的多条数据链路聚合而成的一条逻辑链路。
SDN架构:(Software Defined Network,软件定义网络),一种新型网络架构,将网络设备的控制功能和转发功能分离,实现更精确的网络控制和高速的数据转发。其典型架构包括三层:应用层,控制层和基础设施层。应用层包含实现各种业务功能的网络应用;控制层通常指SDN架构的控制器,能够控制网络设备的行为、监测网络设备的网络状态;基础设施层由网络中的数据转发设备组成,将数据流转发至目的地。
OpenFlow协议:SDN中常用的网络协议之一,将控制功能全部集中到控制器上完成,OpenFlow交换机只负责转发数据。
数据流:网络中具有相同特征的数据包的集合,例如有相同的源ip和目的ip的数据包可视作一条数据流。
流表:OpenFlow交换机处理数据包时所依据的规则的集合,其中一条规则又可称为流表项。流表项中规定了匹配的数据包特征和对应的处理方式,并计数存在期间匹配到的数据包和字节等。
大象流:一般指占用带宽大的数据流,数量占比较小,但是却承载着网络中绝大部分的数据量,对网络吞吐量和带宽有较高要求。与之相对的老鼠流一般指占用带宽小的数据流,数量占比大,但是只占据网络中的小部分流量。
参见图1,示出了本发明实施例提供的一种聚合链路的数据流调度方法的流程示意图,该聚合链路的数据流调度方法应用于SDN架构的控制器,该控制器包括网络状态监控模块和流量调度模块,其中,网络状态监控模块包括拓扑感知单元、链路负载监测单元和大象流监测单元,流量调度模块包括转发链路决策和数据流重调度,如图2所示,该聚合链路的数据流调度方法具体包括以下步骤:
S101:当检测到待分配的数据流时,获取聚合链路中每条链路的剩余可用带宽,并根据每条链路的剩余可用带宽计算每条链路的被选概率。
在本申请实施例中,参见图3,通过控制器中的拓扑感知单元将LLDP数据包封装在预先设置的Packet-out消息中,并将该Packet-out消息分别发送给各个OpenFlow交换机;针对每个OpenFlow交换机,根据接收到的Packet-out消息中的指定动作,通过对应的端口,将接收到的Packet-out消息中的LLDP数据包发送给相邻的OpenFlow交换机,以便相邻的OpenFlow交换机将接收到的LLDP消息和该OpenFlow交换机与相邻的OpenFlow交换机的交换机名称和对应的端口信息封装在相应的Packet-in消息中,得到目标Packet-in消息,并将目标Packet-in消息发送给控制器,以使控制器根据目标Packet-in消息确定OpenFlow交换机与相邻的OpenFlow交换机之间的链路,进而可以根据所确定的各个链路生成相应的聚合链路。
其中,各个OpenFlow交换机包括交换机s1和交换机s2。
在具体执行步骤S101的过程中,通过控制器的流量调度模块中的转发决策链路决策单元实时检测当前是否存在待分配的数据流,当检测到当前存在待分配的数据流时,可以获取聚合链路中的每条链路的剩余可用带宽;针对每条链路而言,可以根据该链路的剩余可用带宽计算该链路的被选概率。
例如:假设聚合链路中共有m条成员链路,则成员链路集合可以为L=={l1,l2,l3,...,lm},bi为第i条链路的剩余可用带宽,取第i条链路的剩余可用带宽相对于聚合链路中总的剩余可用带宽的归一化值作为被选概率Pi,即第i条链路被选中的被选概率如公式(1)所示。
S102:针对每条链路而言,根据链路的被选概率和各个其他链路的被选概率计算链路的累积被选概率。
在具体执行步骤S102的过程中,针对每个链路而言,在计算出该链路的被选概率后,可以通过控制器的流量调度模块中的转发决策链路决策单元根据该链路和各个其他链路的被选概率计算该链路的累积被选概率。
其中,根据该链路和各个其他链路的被选概率计算该链路的累积被选概率的具体方式如公式(2)所示。
其中,概率Pi为第i条链路的被选概率,CPi为第i条链路的累积被选概率,Pj为第j条链路的被选概率。
S103:根据各个链路的累积被选概率,从各个链路中确定目标待分配链路,并将待分配的数据流分配给目标待分配链路。
在具体执行步骤S103的过程中,针对每个链路而言,通过控制器的流量调度模块中的转发决策链路决策单元判断该链路的累积被选概率和该链路的前一条链路的累积被选概率是否满足预设公式,若该链路满足预设公式,则可以将给待分配的数据流分配给目标待分配链路。
需要说明的是,预设公式可以为CPi-1≤R<CPi,其中,R可以为[0,1)范围内的一个随机数。CP0等于0。
S104:实时检测聚合链路的各个链路中是否存在故障链路。
作为本申请的一种优选方式,可以通过控制器的流量调度模块中的数据流重调度单元实时检测聚合链路的各个链路中是否存在无效链路;如果聚合链路的各个链路中存在无效链路,可以将该无效链路确定为故障链路。
作为本申请实施例的另一种优选方式,针对聚合链路上的每条链路,通过控制器的链路负载监测单元实时检测链路的链路负载;判断链路的链路负载是否大于预设链路负载;若链路的链路负载大于预设链路负载,确定链路为故障链路,且故障链路为拥塞链路;若链路的链路负载不大于预设链路负载,确定链路未发生拥塞。
例如,针对聚合链路上的每条链路,可以通过控制器的链路负载监测单元基于OpenFlow协议向该链路对应的交换机发送OFPPortStatsRequest请求,以便交换机根据接收到的OFPPortStatsRequest请求告知控制器对应端口的已发送的字节数和端口活动时间,并根据已发送的字节数和端口活动时间计算该链路的链路负载,如公式(3)所示;判断链路的链路负载是否大于预设链路负载;若链路的链路负载大于预设链路负载,确定链路为故障链路,且故障链路为拥塞链路;若链路的链路负载不大于预设链路负载,确定链路未发生拥塞。
其中,Bt为第t次响应时的已发送字节数,Bt+1为第t+1次响应时的已发送字节数,Dt为第t次响应时端口活动时间,Dt+1为第t次响应时端口活动时间。
作为本申请实施例的另一种优选方式,针对聚合链路上的每条链路,通过控制器的数据流重调度单元获取链路的当前占用带宽;判断链路的当前占用带宽是否大于预设链路拥塞门限带宽;若链路的当前占用带宽大于预设链路拥塞门限带宽,确定链路为故障链路,且故障链路为拥塞链路;若链路的当前占用带宽不大于预设链路拥塞门限带宽,确定链路未发生拥塞。
S105:当检测到聚合链路的各个链路中存在故障链路时,从各个可用链路中筛选出目标可用链路,并将故障链路上的数据流转发到目标可用链路上。
作为本申请实施例的一种优选方式,若故障链路为拥塞链路,流表项信息确定候选大象流的传输速率;针对每个候选大象流,若候选大象流的传输速率大于预设传输速率,确定候选大象流为大象流;从各个可用链路中筛选出目标可用链路,并将故障链路上的数据流转发到目标可用链路上;其中,目标可用链路未聚合链路上的各个可用链路中剩余可用带宽最大的可用链路。
例如,假设链路聚合组中共有m条成员链路,其中,lcong为拥塞链路,已用带宽为Bcurr;其余为空闲链路,空闲链路集合为L={l1,l2,l3,…,lm},若空闲链路li的拥塞门限带宽为已用带宽为bi。拥塞链路lcong上有n条大象流,则大象流集合为EF={f1,f2,…,fn},集合中的大象流已按照传输速率降序排列,对应的速率分别为v1,v2,…,vn,从k=1开始,如果那么能够转移到空闲链路上,目标可用链路即当前空闲链路中剩余可用带宽最大的链路。随后,更新目标可用链路的剩余可用带宽值和拥塞链路上的已用带宽。如果那么fk不转移。
当拥塞链路上更新后的已用带宽Bcurr<Bth,或k=n时,转移流程结束。否则,k的值增加1后继续判断fk能否转移。
作为本申请实施例的另一种优选方式,若故障链路为无效链路,当检测到聚合链路的各个链路中存在故障链路时,向故障链路两端对应的交换机发送OFPMP_FLOW请求,以获取故障链路上的各个数据流;从聚合链路的各个可用链路中确定目标可用链路,并将各个数据流发送给目标可用链路;在成功将各个数据流发送给目标可用链路后,将无效链路从聚合链路中删除。
本发明提供一种聚合链路的数据流调度方法,应用于SDN架构中的控制器,通过控制器实时检测当前是否存在待分配的数据流,当检测到待分配的数据流时,通过获取聚合链路中每条链路的剩余可用带宽,并根据每条链路的剩余可用带宽计算每条链路的被选概率;针对每条链路而言,根据链路的被选概率和各个其他链路的被选概率计算链路的累积被选概率;根据各个链路的累积被选概率,从各个链路中确定目标待分配链路,并将待分配的数据流分配给目标待分配链路;并且,当检测到聚合链路的各个链路中存在故障链路时,从各个可用链路中筛选出目标可用链路,并将故障链路上的数据流转发到目标可用链路上。本发明通过根据各个链路的剩余可用带宽,从各个链路中选择合适的链路,这样可以避免选到负载较高的链路,从而避免链路堵塞,并且通过SDN架构中的控制器自动实现数据流调度,无需人工配置,能够快速部署,同时还解决了不同厂商的设备间难以兼容的问题。
基于本发明实施例公开的聚合链路的数据流调度方法,本发明实施例还对应公开一种聚合链路的数据流调度系统,如图4所示,该聚合链路的数据流调度系统应用于SDN架构中的控制器,该聚合链路的数据流调度包括:
被选概率计算单元41,用于当检测到待分配的数据流时,获取聚合链路中每条链路的剩余可用带宽,并根据每条链路的剩余可用带宽计算每条链路的被选概率;
累积被选概率计算单元42,用于针对每条链路而言,根据链路的被选概率和各个其他链路的被选概率计算链路的累积被选概率;
分配单元43,用于根据各个链路的累积被选概率,从各个链路中确定目标待分配链路,并将待分配的数据流分配给目标待分配链路;
实时检测单元44,用于实时检测聚合链路的各个链路中是否存在故障链路;
转发单元45,用于当检测到聚合链路的各个链路中存在故障链路时,从各个可用链路中筛选出目标可用链路,并将故障链路上的数据流转发到目标可用链路上;其中,可用链路为聚合链路中为未发生故障的链路。
上述本发明实施例公开的聚合链路的数据流调度系统中各个单元具体的原理和执行过程,与上述本发明实施例公开的聚合链路的数据流调度方法相同,可参见上述本发明实施例公开的聚合链路的数据流调度方法中相应的部分,这里不再进行赘述。
本发明提供一种聚合链路的数据流调度系统,应用于SDN架构中的控制器,通过控制器实时检测当前是否存在待分配的数据流,当检测到待分配的数据流时,通过获取聚合链路中每条链路的剩余可用带宽,并根据每条链路的剩余可用带宽计算每条链路的被选概率;针对每条链路而言,根据链路的被选概率和各个其他链路的被选概率计算链路的累积被选概率;根据各个链路的累积被选概率,从各个链路中确定目标待分配链路,并将待分配的数据流分配给目标待分配链路;并且,当检测到聚合链路的各个链路中存在故障链路时,从各个可用链路中筛选出目标可用链路,并将故障链路上的数据流转发到目标可用链路上。本发明通过根据各个链路的剩余可用带宽,从各个链路中选择合适的链路,这样可以避免选到负载较高的链路,从而避免链路堵塞,并且通过SDN架构中的控制器自动实现数据流调度,无需人工配置,能够快速部署,同时还解决了不同厂商的设备间难以兼容的问题。
可选的,若故障链路为拥塞链路,转发单元,包括:
采样数据包占比获取单元,用于当检测到聚合链路的各个链路中存在故障链路,获取故障链路上的每条数据流的采样数据包占比;
候选大象流筛选单元,用于根据各个故障链路的采样数据包占比,从各个故障链路中筛选出至少一个候选大象流;
候选大象流的传输速率确定单元,用于针对每个候选大象流,获取候选大象流对应的预先设置的流表项信息,并根据流表项信息确定候选大象流的传输速率;
大象流确定单元,用于针对每个候选大象流,若候选大象流的传输速率大于预设传输速率,确定候选大象流为大象流;
第一转发子单元,用于从各个可用链路中筛选出目标可用链路,并将故障链路上的数据流转发到目标可用链路上;其中,目标可用链路未聚合链路上的各个可用链路中剩余可用带宽最大的可用链路。
可选的,实时检测单元,包括:
链路负载检测单元,用于针对聚合链路上的每条链路,实时检测链路的链路负载;
第一判断单元,用于判断链路的链路负载是否大于预设链路负载;
第一确定单元,用于若链路的链路负载大于预设链路负载,确定链路为故障链路,且故障链路为拥塞链路;
第二确定单元,用于若链路的链路负载不大于预设链路负载,确定链路未发生拥塞。
可选的,实时检测单元,包括:
链路的当前占用带宽获取单元,用于针对聚合链路上的每条链路,获取链路的当前占用带宽;
第二判断单元,用于判断链路的当前占用带宽是否大于预设链路拥塞门限带宽;
第三确定单元,用于若链路的当前占用带宽大于预设链路拥塞门限带宽,确定链路为故障链路,且故障链路为拥塞链路;
第四确定单元,用于若链路的当前占用带宽不大于预设链路拥塞门限带宽,确定链路未发生拥塞。
可选的,转发单元,包括:
数据流获取单元,用于当检测到聚合链路的各个链路中存在故障链路时,向故障链路两端对应的交换机发送OFPMP_FLOW请求,以获取故障链路上的各个数据流;
第二转发子单元,用于从聚合链路的各个可用链路中确定目标可用链路,并将各个数据流发送给目标可用链路;
删除单元,用于在成功将各个数据流发送给目标可用链路后,将无效链路从聚合链路中删除。
本申请实施例提供了一种电子设备,如图5所示,电子设备包括处理器501和存储器502,存储器502用于存储模聚合链路的数据流调度的程序代码和数据,处理器501用于调用存储器中的程序指令执行实现如上述实施例中聚合链路的数据流调度方法所示的步骤。
本申请实施例提供了一种存储介质,存储介质包括存储程序,其中,在程序运行时控制存储介质所在设备执行上述实施例示出的聚合链路的数据流调度方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
以上仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种聚合链路的数据流调度方法,其特征在于,应用于SDN架构中的控制器,所述方法包括:
当检测到待分配的数据流时,获取聚合链路中每条链路的剩余可用带宽,并根据每条所述链路的剩余可用带宽计算每条链路的被选概率;
针对每条所述链路而言,根据所述链路的被选概率和各个其他链路的被选概率计算所述链路的累积被选概率;
根据各个所述链路的累积被选概率,从各个所述链路中确定目标待分配链路,并将所述待分配的数据流分配给所述目标待分配链路;
实时检测所述聚合链路的各个所述链路中是否存在故障链路;
当检测到所述聚合链路的各个所述链路中存在故障链路时,从各个可用链路中筛选出目标可用链路,并将所述故障链路上的数据流转发到所述目标可用链路上;其中,所述可用链路为所述聚合链路中为未发生故障的链路。
2.根据权利要求1所述的方法,其特征在于,若所述故障链路为拥塞链路,当检测到所述聚合链路的各个所述链路中存在故障链路时,从各个可用链路中筛选出目标可用链路,并将所述故障链路上的数据流转发到所述目标可用链路上,包括:
当检测到所述聚合链路的各个所述链路中存在故障链路,获取所述故障链路上的每条数据流的采样数据包占比;
根据各个所述故障链路的采样数据包占比,从各个所述故障链路中筛选出至少一个候选大象流;
针对每个所述候选大象流,获取所述候选大象流对应的预先设置的流表项信息,并根据所述流表项信息确定所述候选大象流的传输速率;
针对每个所述候选大象流,若所述候选大象流的传输速率大于预设传输速率,确定所述候选大象流为大象流;
从各个可用链路中筛选出目标可用链路,并将所述故障链路上的数据流转发到所述目标可用链路上;其中,所述目标可用链路未所述聚合链路上的各个可用链路中剩余可用带宽最大的可用链路。
3.根据权利要求1所述的方法,其特征在于,所述实时检测所述聚合链路的各个所述链路中是否存在故障链路,包括:
针对所述聚合链路上的每条所述链路,实时检测所述链路的链路负载;
判断所述链路的链路负载是否大于预设链路负载;
若所述链路的链路负载大于所述预设链路负载,确定所述链路为故障链路,且所述故障链路为拥塞链路;
若所述链路的链路负载不大于所述预设链路负载,确定所述链路未发生拥塞。
4.根据权利要求1所述的方法,其特征在于,所述实时检测所述聚合链路的各个所述链路中是否存在故障链路,包括;
针对所述聚合链路上的每条所述链路,获取所述链路的当前占用带宽;
判断所述链路的当前占用带宽是否大于预设链路拥塞门限带宽;
若所述链路的当前占用带宽大于所述预设链路拥塞门限带宽,确定所述链路为故障链路,且所述故障链路为拥塞链路;
若所述链路的当前占用带宽不大于所述预设链路拥塞门限带宽,确定所述链路未发生拥塞。
5.根据权利要求1所述的方法,其特征在于,若所述故障链路为无效链路,所述当检测到所述聚合链路的各个所述链路中存在故障链路时,从各个可用链路中筛选出目标可用链路,并将所述故障链路上的数据流转发到所述目标可用链路上,包括:
当检测到所述聚合链路的各个所述链路中存在故障链路时,向所述故障链路两端对应的交换机发送OFPMP_FLOW请求,以获取所述故障链路上的各个数据流;
从所述聚合链路的各个可用链路中确定目标可用链路,并将各个所述数据流发送给所述目标可用链路;
在成功将各个所述数据流发送给所述目标可用链路后,将所述无效链路从所述聚合链路中删除。
6.一种聚合链路的数据流调度系统,其特征在于,应用于SDN架构中的控制器,所述系统包括:
被选概率计算单元,用于当检测到待分配的数据流时,获取聚合链路中每条链路的剩余可用带宽,并根据每条所述链路的剩余可用带宽计算每条链路的被选概率;
累积被选概率计算单元,用于针对每条所述链路而言,根据所述链路的被选概率和各个其他链路的被选概率计算所述链路的累积被选概率;
分配单元,用于根据各个所述链路的累积被选概率,从各个所述链路中确定目标待分配链路,并将所述待分配的数据流分配给所述目标待分配链路;
实时检测单元,用于实时检测所述聚合链路的各个所述链路中是否存在故障链路;
转发单元,用于当检测到所述聚合链路的各个所述链路中存在故障链路时,从各个可用链路中筛选出目标可用链路,并将所述故障链路上的数据流转发到所述目标可用链路上;其中,所述可用链路为所述聚合链路中为未发生故障的链路。
7.根据权利要求6所述的系统,其特征在于,若所述故障链路为拥塞链路,所述转发单元,包括:
采样数据包占比获取单元,用于当检测到所述聚合链路的各个所述链路中存在故障链路,获取所述故障链路上的每条数据流的采样数据包占比;
候选大象流筛选单元,用于根据各个所述故障链路的采样数据包占比,从各个所述故障链路中筛选出至少一个候选大象流;
所述候选大象流的传输速率确定单元,用于针对每个所述候选大象流,获取所述候选大象流对应的预先设置的流表项信息,并根据所述流表项信息确定所述候选大象流的传输速率;
大象流确定单元,用于针对每个所述候选大象流,若所述候选大象流的传输速率大于预设传输速率,确定所述候选大象流为大象流;
第一转发子单元,用于从各个可用链路中筛选出目标可用链路,并将所述故障链路上的数据流转发到所述目标可用链路上;其中,所述目标可用链路未所述聚合链路上的各个可用链路中剩余可用带宽最大的可用链路。
8.根据权利要求6所述的系统,其特征在于,所述实时检测单元,包括:
链路负载检测单元,用于针对所述聚合链路上的每条所述链路,实时检测所述链路的链路负载;
第一判断单元,用于判断所述链路的链路负载是否大于预设链路负载;
第一确定单元,用于若所述链路的链路负载大于所述预设链路负载,确定所述链路为故障链路,且所述故障链路为拥塞链路;
第二确定单元,用于若所述链路的链路负载不大于所述预设链路负载,确定所述链路未发生拥塞。
9.一种电子设备,其特征在于,包括:处理器以及存储器,所述处理器以及存储器通过通信总线相连;其中,所述处理器,用于调用并执行所述存储器中存储的程序;所述存储器,用于存储程序,所述程序用于实现如权利要求1-5任一项所述的聚合链路的数据流调度方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行如权利要求1-5任一项所述的聚合链路的数据流调度方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211214109.6A CN115604190A (zh) | 2022-09-30 | 2022-09-30 | 聚合链路的数据流调度方法、系统、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211214109.6A CN115604190A (zh) | 2022-09-30 | 2022-09-30 | 聚合链路的数据流调度方法、系统、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115604190A true CN115604190A (zh) | 2023-01-13 |
Family
ID=84845581
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211214109.6A Pending CN115604190A (zh) | 2022-09-30 | 2022-09-30 | 聚合链路的数据流调度方法、系统、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115604190A (zh) |
-
2022
- 2022-09-30 CN CN202211214109.6A patent/CN115604190A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107347198B (zh) | 一种限速方法、限速控制节点和限速设备 | |
EP2720418B1 (en) | Lacp link switching and data transmission method and device | |
US8072888B2 (en) | Controlling congestion in a packet switched data network | |
CN101588298B (zh) | 一种堆叠系统中流量切换的方法和堆叠系统 | |
CN102263697B (zh) | 一种聚合链路流量分担方法和装置 | |
CN112671495B (zh) | 一种调整确定性时延的方法和系统 | |
CN101854284A (zh) | 动态分配的环路保护和恢复技术中的带宽保留再使用 | |
CN103716208A (zh) | 支持大象流的网络管理方法、系统、交换机和网络 | |
EP2915299A1 (en) | A method for dynamic load balancing of network flows on lag interfaces | |
CN101350765B (zh) | 一种网络流量控制方法 | |
US20130315071A1 (en) | Apparatus and method for controlling a transmission interval of maintenance packets in a communication network | |
CN104601488A (zh) | 一种软件定义网络中流量控制方法和装置 | |
CN101841424B (zh) | 基于socks代理连接的ems网管系统和方法 | |
CN114513467B (zh) | 一种数据中心的网络流量负载均衡方法及装置 | |
US12052607B2 (en) | Communication apparatus, communication method, and program | |
CN107018018A (zh) | 一种基于sdn的服务器增量在线升级方法及系统 | |
CN109088822A (zh) | 数据流量转发方法、装置、系统、计算机设备及存储介质 | |
CN103108354A (zh) | 控制数据传输 | |
CN102316483A (zh) | 一种EVDO系统中保证应用业务QoS的方法及装置 | |
EP2561646B1 (en) | Apparatuses and methods for registering transmission capacities in a broadband access network | |
KR20200015303A (ko) | 패킷 보고 방법과 시스템 | |
CN100401691C (zh) | 用于确定网络中可用性的方法和系统 | |
CN115604190A (zh) | 聚合链路的数据流调度方法、系统、电子设备及存储介质 | |
CN108282406B (zh) | 一种数据传输方法、堆叠设备及堆叠系统 | |
CN101854396B (zh) | Mlppp组带宽容量的处理方法和装置 |
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 |