算法原理
ECP,Equal-CostMultipathRouting,等价多路径,是一个逐跳的基于流的负载均衡策略,OSPF、ISIS、EIGRP、BGP等协议均支持ECMP算法。
当设备支持ECMP时,从不同源ip请求到同一目的ip存在多条路径时可以通过不同路径进行负载均衡,实现增加带宽和多链路动态备份效果。
与传统路由技术比较
如果是传统的路由技术,发往该目的ip的数据包只能利用其中的一条链路,其它链路处于备份状态或无效状态,并且在动态路由环境下相互的切换需要一定的时间。而ECMP协议可以在该网络环境下同时使用多条链路,不仅增加了传输带宽,并且可以无时延无丢包地备份失效链路的数据传输。
ECMP多路径选择策略
哈希,例如根据源IP地址的哈希为流选择路径。
轮询,各个流在多条路径之间轮询传输。
基于路径权重,根据路径的权重分配流,权重大的路径分配的流数量更多。
应用场景
CDN业务中,一般都用LVS做四层负载均衡,传统LVS是一主一备,即同一时刻只有单台LVS在服务,性能减半,另外主备切换也需要时间。
最新应用是在交换机和LVS之间启用OSPF互联,同时开启ECMP功能,实现交换机到多台LVS之间多路径转发,一方面实现多台LVS负载均衡,同时实现网络层面互备,提供服务性能和稳定性