标题: 基于P4 Switch的动态负载平衡和壅塞避免演算法
Dynamic Load Balancing and Congestion Avoidance Based on P4 Switch
作者: 刘学慈
林宝树
Liu, Hsueh-Tzu
Lin, Bao-Shuh
网路工程研究所
关键字: 负载平衡;壅塞控制;P4 交换机;ONOS;load balance;congestion control;P4 switch;ONOS
公开日期: 2017
摘要: 近年来,网路的快速发展,为了使网路资源有效配置以及利用,一个良好的负载平衡演算法是必要的。 在RFC2991中提到三种分配路径的方法,分别为随机(Random)、轮询(Round-Robin, RR)、Hash。 Random与RR这两个方法是Packet-based的,因此对于相同Flow的数个封包可能会走不同的路径,导致到达目的地的顺序不同,这样的情况可能会造成严重的封包重组,故此论文使用Hash方法。
然而,只使用负载平衡并不足够,因为他缺乏公平性且无法达到最佳的资源利用度。 基于此原因,我提出了结合负载平衡以及壅塞避免的演算法。 首先,根据link的重叠程度或频宽,给该link相对应的权重。 其次,根据RFC2991中提到的Hash方法,实做并利用该方法配置link的权重,且此hash function可以避免产生的值过度集中,也就是减少碰撞发生的机率。 如此,在多重路径的流量分配以及资源的使用度都会达到最好。 另外,我们也提出动态调整权重的方法,能够随时依拓朴的状态给予相对应link的权重。在此论文中,我们使用P4 software switch 当作资料层的交换器,在控制层我们则是用ONOS去和各交换器沟通,像是取得整体拓墣资讯或是下指令给交换器。
Nowadays, data center networks have volume and dynamic traffic. In such network, in order to effectively manage the traffic distribution, it's essential to employ effective load balancing schemes and congestion avoidance method. In RFC2991, it mentioned three methods which are Random, Round-Robin and Hash to allocate multiple paths. For Random and Round-Robin are packet-based, the packet with the same flow may be assigned to different path. Both of them will lead to re-ordering seriously. Thus, we use Hash method.
However, only using load balancing techniques is not enough. It's without fairness and cannot reach optimal resource utilization. For the reason mentioned above, we propose an algorithm which combined load balance and congestion avoidance to solve the problem. First, we implement a better load balance and congestion avoidance method. By giving each link weight according to the overlap degree or bandwidth of the link. Second, according to the method RFC2991 mentioned, we implement Hash Threshold method with better hash function which can avoid over-concentration of the value and reduce the probability of collision occurred effectively and use this method to allocate the link's weight. Third, we propose a method to set the flow rules dynamically. As a result, we can modified our flow rules based on the current condition of the topology flexibly.
We use the BMv2 which is the reference P4 software switch as the data plane switch. In the control plane, We employ ONOS controller to communicate with switches, such as get the topology information from switches or order the flow rules to switches.
URI: http://etd.lib.nctu.edu.tw/cdrfb3/record/nctu/#GT070456547
http://hdl.handle.net/11536/141634
显示于类别:Thesis