ECMP, to‘liq nomi Equal-Cost Multi-Path — bir manzilga bir xil marshrut xarajatiga ega bir nechta nexthopdan parallel foydalanish usulidir. Routing protokoli teng yo‘llarni topadi, router esa ularni forwarding jadvaliga o‘rnatib trafikni taqsimlaydi. ECMP o‘tkazuvchanlik va link nosozligiga chidamlilikni oshirishi mumkin.
Yo‘llarning tanlanishi
OSPF yoki IS-ISda bir xil yig‘indi costli yo‘llar SPF natijasida hosil bo‘ladi. BGP multipath esa AS_PATH, local preference va boshqa atributlar bo‘yicha yetarli darajada teng yo‘llarni parallel o‘rnatishi mumkin; uning mezonlari IGP ECMP bilan bir xil emas. Platforma maksimal nechta nexthopni qabul qilishini cheklaydi.
Control plane teng yo‘llarni topgani ularning hammasi hardware FIBga o‘rnatildi degani emas. Line card imkoniyati, recursion, tunnel va platforma litsenziyasi sonni cheklashi mumkin. Diagnostikada routing table va forwarding table ikkalasi tekshiriladi.
Hash asosida taqsimlash
Router odatda har paketni navbat bilan turli yo‘lga yubormaydi. Per-flow hashing source va destination IP, protokol hamda transport portlari kabi maydonlardan hash hosil qilib, oqimni bitta nexthopga bog‘laydi. Bu TCP paketlarining tartibi buzilishini kamaytiradi.
Faqat IP manzillar asosidagi hash kam sonli yirik oqimda notekis taqsimot berishi mumkin. Layer 4 portlarini qo‘shish ko‘proq xilma-xillik yaratadi. Fragment, shifrlangan tunnel yoki NAT sabab barcha kerakli maydon ko‘rinmasligi mumkin. Ayrim qurilmalar resilient hashing yoki flowlet switching kabi rivojlangan usullarni qo‘llaydi.
Notekis yuklanish
Equal cost teng trafik degani emas. Bitta katta backup oqimi bir linkni to‘ldirib, ko‘plab kichik oqimlar boshqa linkda qolishi mumkin. Hash statistik jihatdan ko‘p mustaqil oqim bo‘lganda yaxshiroq muvozanatlanadi. Elephant flowlar mavjud data centerda transport yoki application darajasidagi qo‘shimcha taqsimlash kerak bo‘lishi mumkin.
Interfeys hisoblagichlari, flow telemetry va queue drop ko‘rsatkichlari har nexthop bo‘yicha kuzatiladi. Faqat aggregate trafikni ko‘rish bitta a’zodagi congestionni yashiradi. Hash seedni o‘zgartirish mavjud oqimlarning yo‘lini almashtirishi mumkin va ehtiyotkor bajariladi.
Nosozlik va qayta taqsimlash
Bir link yoki nexthop ishlamay qolsa, u ECMP guruhidan chiqariladi. Oqimlar qolgan yo‘llarga qayta hash qilinadi. Klassik modulo hashingda bitta a’zo ketishi ko‘plab oqimni siljitadi. Resilient hashing faqat zararlangan a’zoga biriktirilgan oqimlarning ko‘pini ko‘chirishga intiladi.
Failure detection tezligi routing adjacency, BFD yoki fizik link signaliga bog‘liq. Control plane konvergentsiyasidan oldin fast reroute vaqtinchalik backup yo‘lni ishlatishi mumkin. Barcha parallel linklar bitta kanal, switch yoki quvvat manbasini bo‘lishsa, ECMP yagona nosozlik nuqtasini bartaraf etmaydi.
Tarmoq dizaynidagi o‘rni
Leaf–spine data center topologiyasida har leaf bir nechta spine orqali teng uzunlikdagi yo‘lga ega bo‘ladi va ECMP asosiy masshtablash mexanizmiga aylanadi. WANda teng cost sun’iy belgilanishi mumkin, lekin linklarning latency, bandwidth va yo‘qotish xususiyatlari keskin farq qilsa, bir xil metric amaliy sifatni bermaydi.
Unequal-cost load balancing boshqa protokol yoki vendor mexanizmi orqali bajariladi va ECMPdan farq qiladi. ECMP dizaynida MTU, ACL, QoS va return path barcha a’zolarda mos bo‘lishi kerak; aks holda ayrim hash guruhlari ishlaydi, boshqalari esa uziladi.
ECMP guruhi o‘zgarganda kuzatuv tizimi nexthoplar soni, hash taqsimoti va oqim ko‘chishini birga qayd etadi. Bu qisqa packet lossni routing hodisasi bilan bog‘lashga yordam beradi.