Nexus TCAM: защо регионът за потискане на ARP се нуждае от два слайса
Логическите записи са само половината от бюджета. Функция, отделена с двойна ширина, се нуждае от чифт слайсове и един свободен слайс на грешно място няма да свърши работа.
Оразмерявате регион за потискане на ARP, броите записите, които дизайнът изисква, намирате регион с повече свободен капацитет от това и промяната все още не се побира. Нищо не е било преброено грешно. Бюджетът, който четяхте, се измерва в слайсове, а функция, отделена с двойна ширина, се нуждае от два от тях, преди да бъде разгледан какъвто и да е запис.
Третирайте разпределението като проблем на оформлението с фиксиран брой единици и аритметиката започва да се държи правилно.
Регионът притежава слайсове, а не записи
TCAM на тези платформи е разделена на слайсове и всеки слайс принадлежи точно на един регион. Регионите се оразмеряват в слайсове, а ширината на функцията определя колко слайса тя консумира като минимум. Функция с единична ширина може да живее в един слайс; функция с двойна ширина се нуждае от съседен чифт.
| Concept | What it means when you plan |
|---|---|
| Slice | The indivisible unit; it belongs to one region and cannot be shared |
| Feature width | Single or double; a double-width feature must have two slices available |
| Logical entries | What the feature wants to store, which only matters after the slices are allocated |
Така че свободният слайс не е автоматично използваем капацитет. Два региона с единична ширина на отделни слайсове не се комбинират в чифта, който нов регион с двойна ширина изисква, а таблицата, показваща много неизползвано място общо, ви говори за пул, който не можете да похарчите.
Запишете базовото състояние, преди да отделяте
Съберете точния хардуерен модел, версията на NX-OS, текущите ширини и размери на регионите и функциите, които консумират всеки регион. Направете това преди всяка промяна, защото след презареждане предишното състояние е спомен, а не факт.
show version
show hardware capacity
show running-config | include hardware profile
Имената на командите варират според платформата и версията и ръководството за отделяне посочва тези, които се отнасят за неговия собствен хардуер. Четете изхода, който действително получавате, вместо да предполагате, че команда от различен модел дава същата таблица.
След това запишете за какво служи всеки регион. Регионът VACL е филтриращ капацитет с причина, а регионът QoS съществува, защото някой го е оразмерил за политика, която все още е в сила. План, който третира тези области като възстановимо място без проверка, е план за тихо премахване на функции. Определете собственик за всеки регион, който смятате да свиете, и дайте на този собственик новия размер преди прозореца.
Вземете предвид и посоката. Когато платформата свързва разпределението на входящия и изходящия трафик, промяна от едната страна може да консумира бюджет от другата, а план, който брои само входящата таблица, ще изглежда правилен и ще се провали при презареждане.
Какво не прави освобождаването на един голям слайс
Свиването на голям регион с единична ширина освобождава един слайс. Ако целевият ви регион се нуждае от чифт, този единствен слайс може да е безполезен, освен ако не е съседен на друг свободен слайс, а съседството е свойство на оформлението, а не на общата сума.
Това е моментът, в който хората заключават, че платформата е счупена или че документацията е грешна. Нито едното не е вярно. Моделът на разпределение прави точно това, което казва, а грешката беше да се брои свободно място вместо свободни слайсове на правилните позиции. След като нарисувате оформлението на хартия, наличният чифт или съществува, или не, и това е много по-лесен разговор със собственика на платформата от спор за общите числа.
Има и капан с версиите, който си струва да бъде назован. Ръководството на Cisco за отделяне описва конкретно поколение хардуер и ясно заявява, че неговият модел не е нито Cloud Scale, нито Silicon One. Имената на регионите, размерите по подразбиране и дори кои функции са с двойна ширина се различават другаде, така че предупреждението за конкретен регион на една платформа е доказателство за тази платформа и версия, а не универсална рецепта.
Промяната на регион е промяна на функция
Всяко отделяне е размяна на капацитет. Свиването на регион, за да се освободи място за потискане на ARP намалява това, което този регион е защитавал, и последствието може да се появи едва когато политиката, която се нуждае от мястото, бъде приложена отново.
Вземете писмено съгласие от собственика на всяка засегната функция преди прозореца. Това не е бюрокрация: човекът, който първоначално е оразмерил региона VACL, знае какво филтрира, а човекът, който освобождава място, обикновено не знае.
Очаквайте презареждане за промени, които променят хардуерното оформление. Някои платформи го изискват, а други не, но планирането без прозорец за поддръжка, когато презареждането е възможно, е начинът, по който промяна в маршрутизацията се превръща в прекъсване. Планирайте прозореца около презареждането, а не около командата, и дръжте текста на предишния профил някъде, където можете да го прочетете от конзола, загубила сесията си за управление.
Приложете и проверете спрямо базовото състояние
Приложете плана чрез поддържания процес на платформата, след което проверете функциите, които сте запазили, а не само тази, която сте добавили. Новоотделен регион, който работи, докато филтрирането тихо е спряло да съвпада, е по-лош резултат от първоначалния отказ.
Прочетете отново изхода за капацитета и го сравнете с базовото състояние, което записахте, след което тествайте функцията, която мотивира промяната. Ръководството за отделяне на Nexus TCAM е референцията за модела на ширината и слайсовете, описан тук, включително кое хардуерно поколение покрива.