一种流量拥塞控制方法及装置与流程

文档序号:11292107阅读:185来源:国知局
一种流量拥塞控制方法及装置与流程

本发明涉及分组交换数据网,尤其涉及一种流量拥塞控制方法及装置。



背景技术:

交换系统是分组交换设备的关键组成部分,现有的交换系统结构示意图如图1所示,交换系统由交换接入装置和交换装置组成,交换接入装置是由源交换接入装置和目的交换接入装置组成;源交换接入装置将网络报文切割成信元,通过交换装置转发给目的交换接入装置。

交换网络是连接路由器输入端口和输出端口的桥梁,是实现分组报文转发的核心网络。在大容量高端路由器中,为满足超大信息量的交换容量需求,通常采用多级互联的交换网络,目前,三级clos(charlesclos)交换网络是最常用的一种多级互联交换网络。

随着交换网络容量的不断增大,交换网络中交换接入装置(si,switchinterface)与交换装置(se,switchelement)的数量不断增多,因此,影响交换网络流量均衡的因素也随之增多,如果不能有效的控制交换网络流量的动态平衡将会影响整个交换网络的性能。

目前交换网络的三级堆叠结构如图2所示,si为交换接入装置,se1为第一级交换装置,se2为第二级交换装置,se3为第三级交换装置,其中,第一级交换装置和第三级交换装置在同一个芯片上,两者之间有通道相连,可以互相通信,交换接入装置与交换装置以及交换装置之间均通过串行高速链路相连。目前大多数的交换网络都支持单播和组播两种通讯模式,以单播信元的传输方式为例,源交换接入装置将来自网络中的报文切割成信元,发给第一级交换装置,第一级交换装置将信元传输给第二级交换装置,第二级交换装置对输入的 信元进行路由查找后传输给第三级交换装置,最后,第三级交换装置对接收到的信元进行路由查找后传输给目的交换接入装置,目的交换接入装置将接收的信元经过报文重组返回到网络中。如图2所示,在正常情况下,该交换网络的流量能够实现动态平衡,各个交换接入装置向与其相连的第一级交换装置发送的流量均等;但是,如果第一级交换装置与第二级交换装置之间的某条链路突然断开,则必然引起该第一级交换装置的输入带宽大于输出带宽,信元在第一交换装置内部发生拥塞。



技术实现要素:

有鉴于此,本发明实施例期望提供一种流量拥塞控制方法及装置,能够解决由于链路状态发生变化或系统拓扑结构变化导致的芯片级拥塞问题,提高了交换系统的性能。

为达到上述目的,本发明的技术方案是这样实现的:

本发明实施例提供了一种流量拥塞控制方法,其特征在于,所述方法包括:

当交换装置之间的链路无效时,交换装置发送控制信元到源交换接入装置;源交换接入装置根据所述信元,调整发送至与自身相连的各个交换装置的数据流量。

上述方案中,所述交换装置之间的链路无效包括:第一级交换装置监测自身与第二级交换装置之间的链路的状态,当所述链路在预设时间内接收不到任何数据时,则确定所述链路无效,并通知第三级交换装置。

上述方案中,所述当交换装置之间的链路无效时,交换装置发送控制信元到源交换接入装置包括:

当第一级交换装置与第二级交换装置之间的链路无效时,第三级交换装置发送控制信元到源交换接入装置;

其中,所述控制信元中携带有所述发生链路无效的第一级交换装置标识以及所述第一级交换装置当前无效链路与原有效链路的比例。

上述方案中,所述源交换接入装置根据所述信元,调整发送至与自身相连 的各个交换装置的数据流量包括:

当源交换接入装置接收到的控制信元中指示某一第一级交换装置与第二级交换装置之间的链路无效时,根据所述第一级交换装置当前无效链路与原有效链路的比例,减小发送至所述发生链路无效的第一级交换装置的数据流量,增加发送至其他未发生链路无效的第一级交换装置的数据流量。

上述方案中,当某一第一级交换装置与第二级交换装置之间的链路全部无效时,所述源交换接入装置不向所述第一级交换装置发送数据流量。

上述方案中,所述方法还包括:

当所述第一级交换装置与第二级交换装置之间无效的链路恢复为有效时,恢复对所述第一级交换装置的数据流量的发送。

本发明实施例还提供了一种流量拥塞控制装置,所述装置包括:监测模块、信元发送模块、流量控制模块,其中,

所述监测模块,用于监测交换装置之间是否发生链路无效;

所述信元发送模块,用于当交换装置之间的链路无效时,发送控制信元到流量控制模块;

所述流量控制模块,用于根据所述信元,调整发送至与源交换接入装置相连的各个交换装置的数据流量。

上述方案中,所述监测模块具体用于:监测第一级交换装置与第二级交换装置之间的链路的状态,当所述链路在预设时间内接收不到任何数据时,则确定所述链路无效,并通知信元发送模块。

上述方案中,所述信元发送模块具体用于:

当第一级交换装置与第二级交换装置之间的链路无效时,发送控制信元到流量控制模块;

其中,所述控制信元中携带有所述发生链路无效的第一级交换装置标识以及所述第一级交换装置当前无效链路与原有效链路的比例。

上述方案中,所述流量控制模块具体用于:

当接收到的控制信元中指示某一第一级交换装置与第二级交换装置之间的 链路无效时,根据所述第一级交换装置当前无效链路与原有效链路的比例,减小发送至所述发生链路无效的第一级交换装置的数据流量,增加发送至其他未发生链路无效的第一级交换装置的数据流量;

当某一第一级交换装置与第二级交换装置之间的链路全部无效时,不向所述第一级交换装置发送数据流量。

当所述第一级交换装置与第二级交换装置之间无效的链路恢复为有效时,恢复对所述第一级交换装置的数据流量的发送。

本发明实施例所提供的流量拥塞控制方法及装置,当交换装置之间的链路无效时,交换装置发送控制信元到源交换接入装置;源交换接入装置根据所述信元,调整发送至与自身相连的各个交换装置的数据流量。如此,使源交换接入装置能够获知交换网络中出现无效链路,从而通过调整源交换接入装置向各个交换装置发送数据流的比例,解决了交换网中流量拥塞问题。

附图说明

图1为本发明交换系统结构示意图;

图2为本发明交换网络的三级堆叠结构示意图;

图3为本发明实施例流量拥塞控制方法流程示意图;

图4为本发明实施例数据流和控制信息走向示意图;

图5为本发明实施例流量拥塞控制装置结构示意图。

具体实施方式

本发明实施例中,当交换装置之间的链路无效时,交换装置发送控制信元到源交换接入装置;源交换接入装置根据所述信元,调整发送至与自身相连的各个交换装置的数据流量。

下面结合附图及具体实施例,对本发明技术方案的实施作进一步的详细描述。图3为本发明实施例流量拥塞控制方法流程示意图,如图3所示,本发明实施例流量拥塞控制包括以下步骤:

步骤301:当交换装置之间的链路无效时,交换装置发送控制信元到源交换接入装置;

本发明实施例中,所述交换装置之间的链路无效包括:第一级交换装置监测自身与第二级交换装置之间的链路的状态,当所述链路在预设时间内接收不到任何数据时,则确定所述链路无效,并通知第三级交换装置。

所述当交换装置之间的链路无效时,交换装置发送控制信元到源交换接入装置包括:当第一级交换装置与第二级交换装置之间的链路无效时,第三级交换装置发送控制信元到源交换接入装置;其中,所述控制信元中携带有所述发生链路无效的第一级交换装置标识以及所述第一级交换装置当前无效链路与原有效链路的比例。

具体的,可以通过修改所述第三级交换接入装置发送的控制信元中的某些字段,在这些字段中写入发生链路无效的第一级交换装置的标识和所述第一级交换装置无效链路与原来有效链路数量的比例。第三级交换装置周期性的向每个源交换接入装置发送控制信元,该控制信元携带上述发生链路无效的第一级交换交换装置的标识和所述第一级交换装置无效链路与原来有效链路数量的比例等信息。

步骤302:源交换接入装置根据所述信元,调整发送至与自身相连的各个交换装置的数据流量。

本发明实施例中,所述源交换接入装置根据所述信元,调整发送至与自身相连的各个交换装置的数据流量包括:源交换接入装置接收到所述携带有有效信息的控制信元后,提取所述控制信元相应字段内的信息,当源交换接入装置接收到的控制信元中指示某一第一级交换装置与第二级交换装置之间的链路无效时,根据所述第一级交换装置当前无效链路与原有效链路的比例,调整向与其相连的第一级交换装置发送的数据流量的比例,具体的:减小发送至所述发生链路无效的第一级交换装置的数据流量,增加发送至其他未发生链路无效的第一级交换装置的数据流量。

本发明实施例中,在极端情况下,当某一第一级交换装置与第二级交换装 置之间的链路全部无效时,与所述第一级交换装置相连的所有源交换接入装置均不向所述第一级交换装置发送任何数据流量。

本发明实施例中,所述方法还包括:当所述第一级交换装置与第二级交换装置之间的链路无效的链路恢复为有效时,与所述第一级交换装置相连的交换接入装置恢复对所述第一级交换装置的数据流量的发送。

下面结合具体应用场景,对本发明实施例所述流量拥塞控制方法进行进一步详细说明。

图4为本发明实施例数据流和控制信息走向示意图,其中,带箭头的实线为数据流的流向,带箭头的虚线为控制信元流向;带箭头的细线表示单条链路,带箭头的粗线表示m条链路,如图4所示,本发明实施例所述三级交换系统包括n个交换接入装置si,n个第一级交换装置se1,n个第二级交换装置se2和n个第三级交换装置se3;如图4所述场景,如果第一级交换装置se1与第二级交换装置se2之间有链路突然无效,那么第一级交换装置se1的输入带宽大于输出带宽,数据流量或信元在第一级交换装置se1内部极有可能出现拥塞,为解决这一问题,本发明实施例通过修改第三级交换装置se3向交换接入装置si发送控制信元的字段,使得所述字段包含发生链路无效的第一级交换装置se1的标识和以及所述第一级交换装置se1无效链路数量与原来有效链路数量的比例,使交换接入装置si调整向每个第一级交换装置发送信元数量的比例,从而实现整个交换网流量的动态平衡。

具体的,如图4所述场景,与第一个第一级交换装置#1se1相连的有n个交换接入装置#1si~#nsi,在交换接入装置si与交换装置se、以及各级交换装置se之间链路有效的情况下图4所述三级交换网流量均衡,每个源交换接入装置si给每个第一级交换装置se1发送的流量各占其发送总流量的1/n;

本发明实施例中,第一个第一级交换装置#1se1通过m条链路与n个第二级交换装置#1se2~#nse2相连,如果第一个第一级交换装置#1se1与第一个第 二级交换装置#1se2之间的某n(0<n<m)条链路变为无效,如图4中叉号“×”所示,那么第一个第一级交换装置#1se1的无效链路的数量与原来有效链路的数量的比例为n/m,由于第一级交换装置se1与第三级交换装置se3在同一块芯片上且有通道相连,因此,当第一个第一级交换装置#1se1与第一个第二级交换装置#1se2之间的n条链路无效时,第三级交换装置se3向源交换接入装置#1si~#nsi发送控制信元,所述控制信元中包括发生链路无效的第一级交换装置的标识以及所述第一级交换装置无效链路与原有效链路的比例;

源交换接入装置#1si~#nsi收到所述控制信元后,确定无效链路的数量大于0,且无效链路的数量与原来有效链路的数量的比例为n/m,所述源交换接入装置#1si~#nsi将发往第一个第一级交换装置#1se1的数据流量或信元数量减少为原来的n/m,即发往第一个第一级交换装置#1se1的数据流量或信元数量变为(1/n)*(1-n/m),同时,将发往其它第一级交换装置#2se1~#nse1的数据流量或信元数量增大为原来的(n/m)*1/(n-1);

以第一个源交换接入装置#1si为例,第一个源交换接入装置#1si发往其他第一级交换装置#2se1~#nse1的数据流量或信元数量变为(1/n)*(1+(n/m)*(1/(n-1)))。总的数据流量或信元数量百分比为:(1/n)*(1-n/m)+(1/n)*(1+(n/m)*(1/(n-1)))*(n-1)=100%;可见,进行数据流量调整后,并没有影响总数据流量或信元数量。其他源交换接入装置#2si~#nsi以此类推。

需要说明的是,上述n个交换接入装置和交换装置,m条有效链路和n条无效链路是为了清楚的描述本发明的方案而列举的,实际中并不限于上述几个装置和链路。

本发明实施例所述流量拥塞控制方法,用于处理交换网络三级堆叠结构中第一级交换装置与第二级交换装置之间的链路突然断开或系统拓扑结构发生变化导致的流量拥塞的问题。实时监测链路状态,并通过第三级交换装置向交换接入装置发送控制信元,所述控制信元携带有发生链路无效的第一级交换装置的标识和所述第一级交换装置无效链路与原来有效链路数量的比例,使得源交换接入装置接收到所述信元后,能够获知第一级交换装置和第二级交换装置之 间的可用链路减少,通过调整源交换接入装置向各个第一级交换装置发送数据流量或信元数量的比例,从而解决了交换网中发生链路无效时导致的流量拥塞问题,提高整个交换网络的性能。

本发明实施例不仅应用于以单播方式传输的场景中,也应用于以组播方式传输的场景中。

本发明所述的方法并不限于具体实施方式中所述的实施例,本领域技术人员根据本发明的技术方案得出其它的实施方式,同样属于本发明的技术创新范围。

本发明实施例还提供了一种流量拥塞控制装置,图5为本发明实施例流量拥塞控制装置结构示意图,如图5所示,所述装置包括:监测模块51、信元发送模块52、流量控制模块53,其中,所述监测模块51位于第一级交换装置,所述信元发送模块52位于第三级交换装置,所述流量控制模块53位于源交换接入装置,具体的,

所述监测模块51,用于监测交换装置之间是否发生链路无效;

本发明实施例中,所述监测模块51具体用于:监测第一级交换装置与第二级交换装置之间的链路的状态,当所述链路在预设时间内接收不到任何数据时,则确定所述链路无效,并通知信元发送模块52;

所述信元发送模块52,用于当交换装置之间的链路无效时,发送控制信元到流量控制模块;

本发明实施例中,所述信元发送模块52具体用于:当第一级交换装置与第二级交换装置之间的链路无效时,发送控制信元到流量控制模块53;其中,所述控制信元中携带有所述发生链路无效的第一级交换装置标识以及所述第一级交换装置当前无效链路与原有效链路的比例。

具体的,所述信元发送模块52可以通过修改所述第三级交换接入装置法搜名后的控制信元中的某些字段,在这些字段中写入发生链路无效的第一级交换装置的标识和所述第一级交换装置无效链路与原来有效链路数量的比例。所述信元发送模块52周期性的向每个源交换接入装置发送控制信元,该控制信元携 带上述发生链路无效的第一级交换交换装置的标识和所述第一级交换装置无效链路与原来有效链路数量的比例等信息。

所述流量控制模块53,用于根据所述信元,调整发送至与源交换接入装置相连的各个交换装置的数据流量。

本发明实施例中,所述流量控制模块具体用于:收到所述携带有有效信息的控制信元后,提取所述控制信元相应字段内的信息,当接收到的控制信元中指示某一第一级交换装置与第二级交换装置之间的链路无效时,根据所述第一级交换装置当前无效链路与原有效链路的比例,调整向与其相连的第一级交换装置发送的数据流量的比例,具体的:减小发送至所述发生链路无效的第一级交换装置的数据流量,增加发送至其他未发生链路无效的第一级交换装置的数据流量。

本发明实施例中,在极端情况下,所述流量控制模块53还用于:当某一第一级交换装置与第二级交换装置之间的链路全部无效时,与所述第一级交换装置相连的所有源交换接入装置中的流量控制模块53均不向所述第一级交换装置发送数据流量。

本发明实施例中,所述流量控制模块还用于:当所述第一级交换装置与第二级交换装置之间无效的链路恢复为有效时,所述第一级交换装置相连的交换接入装置中的流量控制模块53恢复对所述第一级交换装置的数据流量的发送。

图5中所示的流量拥塞控制装置中的各处理模块的实现功能,可参照前述流量拥塞控制方法的相关描述而理解。本领域技术人员应当理解,图5所示的流量拥塞控制装置中各处理模块的功能可通过运行于处理器上的程序而实现,也可通过具体的逻辑电路而实现,比如:可由中央处理器(cpu)、微处理器(mpu)、数字信号处理器(dsp)、或现场可编程门阵列(fpga)实现。

在本发明所提供的几个实施例中,应该理解到,所揭露的方法及装置,可以通过其他的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个模块或组件可以结合,或可以集成到另一个系统,或一些特征可以忽 略,或不执行。另外,所显示或讨论的各组成部分相互之间的通信连接可以是通过一些接口,设备或模块的间接耦合或通信连接,可以是电性的、机械的或其他形式的。

上述作为分离部件说明的模块可以是、或也可以不是物理上分开的,作为模块显示的部件可以是、或也可以不是物理模块,即可以位于一个地方,也可以分布到多个网络模块上;可以根据实际的需要选择其中的部分或全部模块来实现本实施例方案的目的。

另外,在本发明各实施例中的各功能模块可以全部集成在一个处理模块中,也可以是各模块分别单独作为一个模块,也可以两个或两个以上模块集成在一个模块中;上述集成的模块既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(rom,read-onlymemory)、磁碟或者光盘等各种可以存储程序代码的介质。

或者,本发明实施例上述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、rom、磁碟或者光盘等各种可以存储程序代码的介质。

本发明实施例中记载的流量拥塞控制方法、装置只以上述实施例为例,但不仅限于此,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换; 而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1