Бір VTEP-ке ECMP: VXLAN энтропиясы қайдан келеді
Қашықтағы VTEP-те бірдей құнды бірнеше келесі хоп болуы мүмкін, бірақ /32 оларды пайдалы етпейді. Бөлу сыртқы tuple-ға және бастапқы порттың хэшіне байланысты.
Бірдей құнды көпжолдылық хост маршруты үшін мағынасыз деген тұжырым шын сияқты естілетіндей жиі қайталанады. /32 межелік мекенжайды таңдайды және бұл таңдауда пакетті бір физикалық байланысқа шектейтін ештеңе жоқ. Меже қашықтағы VXLAN туннелінің соңғы нүктесі болса, бірнеше келесі хоп әртүрлі overlay ағындарын тасымалдай алады, ал олардың тасымалдауы форвардинг хэшіне нені көруге рұқсат етілгеніне байланысты. Қалғаны сыртқы тақырыптағы арифметика, префикстің қасиеті емес.
Маршрут қолжетімділікті шешеді; хэш бөлуді шешеді.
Аңыз: /32 бір жолды білдіреді
OSPF VTEP loopback-ке бірдей құнды қолжетімділікті хабарлай алады, ал форвардинг кестесі сол префикс үшін келесі хоптар тобын орнатады. Хаттама үміткерлерді береді; платформа олардың қайсысы жарамды және пакет қалай тағайындалатынын шешеді. Ешбір маршруттау хаттамасы әр капсулаланған кадр үшін жаңа хэш есептемейді. Дәл осы бөліну бірдей маршруттары бар екі маршрутизатордың трафикті әртүрлі бөлуінің себебі.
Тек маршрут көрінісіне емес, орнатылған форвардинг жазбасына қараңыз, өйткені аппараттық немесе саясат шектеулері басқару жазықтығы әлі жариялап жатқан үміткерлерді алып тастауы мүмкін.
Энтропия қайдан келуі керек
Екі VTEP арасында сыртқы бастапқы және межелік мекенжайлар өзгеріссіз қалады, ал UDP межелік порты әдеттегі орналастыруда 4789. Тек сол мәндерді оқитын хэш тұрақты кірісті көреді және тұрақты жолды қайтарады. Сыртқы тақырыпта бірдеңе өзгеруі керек, ал VTEP — мұны жасай алатын құрылғы.
RFC 7348 капсулаланған кадрдың ішіндегі өрістерден UDP бастапқы портын шығаруды ұсынады. Сонда әртүрлі ішкі әңгімелер әртүрлі сыртқы tuple жасайды, бұл қарапайым транспорт хэшіне жұмыс материалын береді.
Егер форвардинг аппаратурасы пакетке тереңірек қарай алса, оның хэш іске асырылуы қандай ішкі өрістерді қолдайтынын тексеріңіз. Бұл тереңдікті әрбір underlay құрылғысы үшін талап деп санауға болмайды, өйткені бастапқы порттың өзгергіштігі өзі пайдалы айырмашылықтарды көрсетеді.
Шын мәнінде алатын хэшті тексеріңіз
Болжам жасамай өлшеңіз. Капсулаланған трафиктің үлгісін алып, сыртқы бастапқы порттарды қараңыз, содан кейін нәтижені форвардинг жазбаларымен және әр байланыс бойынша санауыштармен салыстырыңыз.
show ip route 10.255.0.5/32 show ip cef 10.255.0.5 internal ip route show 10.255.0.5 tcpdump -ni eth0 -c 200 'udp port 4789' -vv
Бір бастапқы порт көптеген әртүрлі ішкі әңгімелерде көрінсе, VTEP өрісті өзгертпейді және underlay-ді кез келген реттеу жүктемені таратпайды. Бір қолданылып жатқан келесі хоппен бірге көптеген әртүрлі порттар керісінше форвардинг тобын көрсетеді.
Санауыштарды үлгіге дейін және кейін жазып алыңыз, және uplink-терді бөлісетін байланыссыз трафикті ескеріңіз, әйтпесе сандар хэш лайық болғаннан нашар көрінеді.
Біркелкі бөлу нені білдірмейді
Ағынға шаққандағы хэш бір әңгімені бір жолда ұстауға арналған, оның кірістері мен қолжетімді жолдар жиыны өзгермейінше. Сондықтан бір үлкен TCP тасымалы барлық uplink-терді біріктірмейді және байланыс қосу сол ағынды жылдамдатпайды. Бұл қалыпты мінез-құлық, ақау емес.
Бірнеше ағын кездейсоқ бір келесі хопта соқтығысуы мүмкін. Қысқа үлгі қатты қисық көрінуі мүмкін, ал хэш дәл өзі конфигурацияланғанды істеп жатады, және байланыс ақауы немесе жолдар жиынының өзгеруі қалыптасқан ағындарды тасымал ортасында жылжытуы мүмкін.
Бекітілген жоспар бойынша өкілдік мекенжай жұптарымен, тасымалдармен және жылдамдықтармен сынаңыз, және байланыс агрегациясы мүшелерін таңдауды маршрутталған көпжолды таңдаудан бөлек ұстаңыз, өйткені хэштеудің екі кезеңі өз үлгісін құрайды. Толтырылған келесі хоптар тобы және көрінетін сыртқы энтропия нәтижені түсіндіреді; префикс ұзындығы емес.