在基于DHT的结构化P2P系统中,DHT的使用以及节点处理能力的不同导致系统中节点的负载不均衡.现有的负载均衡算法存在两个不足:①负载的转移没有考虑节点之间的链路延迟;②算法依赖于系统中固定位置的某些节点.提出了分布式负载均衡算法:每个节点周期性的收集系统局部负载信息,然后选择链路延迟较小的节点进行负载转移.算法依赖于系统中的所有节点,解决了单点失败问题.同时,负载的转移是在链路延迟较小的节点之间进行的.仿真实验表明,①对于各种系统利用率,该算法都可以获得理想的负载均衡效果;②算法可以使负载转移开销减少45%以上.
In DHT-based P2P systems, DHT and the heterogeneity of node capacities can cause a load imbalance problem. Existing load balancing approaches have two limitations. First, they do not take the link latency into account when moving loads. Second, they heavily rely on some nodes of fixed locations in the system. A distributed load balancing algorithm is presented in this paper. Every node gathers local load balancing information periodically, and chooses a physically close node close to transfer the load. This algorithm relies on all the nodes in the system to solve a single-point failure problem. Meanwhile, loads are moved between the nodes with smaller link latency. Simulation experiments show that the algorithm can achieve a good load balance in terms of different system utilization and the load movement cost reduction rate is above 45 %