The invention discloses a method and device for the queue level dynamic load sharing. The method includes: taking out the port set in the dynamic load sharing group, reading the port flow state table of all ports in the port set and the queue traffic state table of all ports, and getting the message according to the forwarding priority of the message. The forwarding queue on each port in the port set consists of a load sharing queue set to calculate the comprehensive load quantized value of each queue in the load sharing queue set, and select the port corresponding to the queue with the smallest comprehensive load quantized value as the exit port of the current message. According to the priority of the forwarding message and the traffic load of each queue on the port, the present invention selects the optimal queue that is forwarded by the message, and realizes the deployment dynamic sharing, and ensures the high priority message to select the optimal path forwarding.
【技术实现步骤摘要】
一种队列级的动态负载分担的实现方法及装置
本专利技术涉及一种动态负载分担技术,尤其是涉及一种队列级的动态负载分担的实现方法及装置。
技术介绍
目前实现动态负载分担一般基于出端口为调度单位,然而,在出端口选择时,却不能考虑所需转发报文的优先级。上述基于端口的动态负载分担,由于只考虑端口的总速率,因此,在部署动态负载分担时,无法保证高优先级的报文在负载分担的端口集合中选择最优的可用端口。
技术实现思路
本专利技术的目的在于克服现有技术的缺陷,提供一种基于报文的转发优先级,结合端口上每一个队列的流量负载情况实现队列级的动态负载分担的方法及装置。为实现上述目的,本专利技术提出如下技术方案:一种队列级的动态负载分担的实现方法,包括:S1,取出动态负载分担组里的端口集合;S2,读取所述端口集合中所有端口的端口流量状态表及所有端口的队列流量状态表;S3,根据报文的转发优先级,得到报文在所述端口集合中的每个端口上的转发队列,组成一负载分担队列集合;S4,根据所述端口流量状态表和队列流量状态表,计算所述负载分担队列集合中每个转发队列的综合负载量化值,选择所述综合负载量化值最小的队列对应的端口作为当前报文转发的出端口。优选地,所述方法还包括:S5,当报文从所述负载分担队列集合中调度出端口时,通知当前报文的长度,将当前报文的长度写入端口流量状态表和队列流量状态表中,用于队列负载和端口负载的统计和测量。优选地,S3中,所述报文的转发优先级获取过程包括:根据报文的优先级字段,得到报文的所述转发优先级。优选地,S2中,所述端口流量状态表包括多个端口和每个端口对应的端口负载量化值,其中,不 ...
【技术保护点】
1.一种队列级的动态负载分担的实现方法,其特征在于,包括:S1,取出动态负载分担组里的端口集合;S2,读取所述端口集合中所有端口的端口流量状态表及所有端口的队列流量状态表;S3,根据报文的转发优先级,得到报文在所述端口集合中的每个端口上的转发队列,组成一负载分担队列集合;S4,根据所述端口流量状态表和队列流量状态表,计算所述负载分担队列集合中每个转发队列的综合负载量化值,选择所述综合负载量化值最小的队列对应的端口作为当前报文转发的出端口。
【技术特征摘要】
1.一种队列级的动态负载分担的实现方法,其特征在于,包括:S1,取出动态负载分担组里的端口集合;S2,读取所述端口集合中所有端口的端口流量状态表及所有端口的队列流量状态表;S3,根据报文的转发优先级,得到报文在所述端口集合中的每个端口上的转发队列,组成一负载分担队列集合;S4,根据所述端口流量状态表和队列流量状态表,计算所述负载分担队列集合中每个转发队列的综合负载量化值,选择所述综合负载量化值最小的队列对应的端口作为当前报文转发的出端口。2.根据权利要求1所述的队列级的动态负载分担的实现方法,其特征在于,所述方法还包括:S5,当报文从所述负载分担队列集合中调度出端口时,通知当前报文的长度,将当前报文的长度写入端口流量状态表和队列流量状态表中,用于队列负载和端口负载的统计和测量。3.根据权利要求1所述的队列级的动态负载分担的实现方法,其特征在于,S3中,所述报文的转发优先级是根据报文的优先级字段,映射得到。4.根据权利要求1所述的队列级的动态负载分担的实现方法,其特征在于,S2中,所述端口流量状态表包括多个端口和每个端口对应的端口负载量化值,其中,不同的端口用不同的端口ID区分;每个端口的所述端口负载量化值表示端口的带宽的利用率,是通过负载量化算法根据端口的历史和瞬时流量统计值计算后得到的量化值,其中,所述端口的历史流量统计值为端口一个观察周期内的流量统计值,所述端口的瞬时流量统计值为端口最近的流量负荷。5.根据权利要求4所述的队列级的动态负载分担的实现方法,其特征在于,S2中,所述队列流量状态表包括多个队列和每个队列对应的队列负载量化值,其中,不同的队列用不同的队列ID区分;每个队列的队列负载量化值表示队列的带宽的利用率,是通过负载量化算法根据队列的历史和瞬时流量统计值计算后得到的量化值,其中,所述队列的历史流量统计值为队列一个观察周期内的流量统计值,所述队列的瞬时流量统计值为队列最近的流量负荷。6.根据权利要求5所述的队列级的动态负载分担的实现方法,其特征在于,S4中,所述综合负载量化值的计算表达式为:队列负载量化值×队列负载权重+端口负载量化值×端口负载权重,其中,所述队列负载权重配置为0~1之间的任意值,所述端口负载权重配置为0~1之间的任意值。7.一种队列级的动态负载分担的实现装置,其特征在于,包括:流量状态表和与流量状态表相连的动态负载分担队列选择模块...
【专利技术属性】
技术研发人员:杨曙军,
申请(专利权)人:盛科网络苏州有限公司,
类型:发明
国别省市:江苏,32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。