ECMP でのバランシングの精度


物理的冗長構成にてルーティング的にECMP(Equal Cost Multi Path)を構成していても、実際流れるトラフィック量は 50:50 にはならない。

結局、forwarding でどっちの nexthop を採用するかに依存する。特別意識せずに設定していれば per-flow で処理されるはずだけどその決定方法はメーカによって違う。そのパラメータをメーカごとにまとめると、

  • Cisco: source/destination address, Hash関数
  • Juniper: source/destination address, Hash関数
  • Foundry
    • BI4000: destination address
    • MG8:source/destination address, Hash関数

Hashが絡むので、予測は不可能。。。結局、均等にならない理由は説明できても精度の幅は説明できない状態。

なぜ均等分散されないのか?という問い合わせにツボを抑えて説明するのが難しい・・・