Ещё немного про EVPN: в прошлый раз я вскользь упомянул проблему неэффективности выбора DF, рассказав, что существуют черновики стандартов, нацеленные на её исправление. Но пока умнейшие мира сего совещаются, Juniper реализовал достаточно простое «решение», которое позволяет описывать ES на уровне логического, а не физического, интерфейса. То есть, например, если раньше для instance типа virtual-switch (VLAN-bundle в терминах RFC 7432) в качестве DF выбирался один PE для всех принадлежащих этому instance VLAN, то теперь, распределив эти VLAN между логическими интерфейсами, можно получить несколько DF на разных PE для пары ES/virtual-switch. Такой трюк позволяет передавать BUM-трафик в рамках ES более «равномерно», платой за что будет выделение дополнительных логических интерфейсов (элегантным такое «решение» точно не назовёшь). На практике это реализуется простым увеличением количества маршрутов типов 1 и 4 (словно у вас много различных физических ES), что в общей массе маршрутов типа 2 скорее всего будет не так и значимо, чтобы создать видимые проблемы со скейлингом. Интересует другое. Помимо вопросов по взаимодействию с другими вендорами (которые, возможно, подтянутся), в RFC 7432 указаны различные типы ESI и способы их генерации (пункт 5). Например, для ESI типов 1 и 2 значение генерируется автоматически на основе данных протоколов LACP и MSTP, и будет одинаковое для всех логических интерфейсов. Не думаю, что вообще где-либо используется автоматическая генерация ESI, но всё таки это создаёт определённое противоречие с действующим стандартом. С другой стороны, всегда можно пойти дальше и отгрузить в оставшийся октет ESI, например, номер логического интерфейса, но это уже совершенно другая история.
P.S. Проверяя работу «логических» ES на vMX 17.2R1.13, заметил, что Juniper наконец-то реализовали выделение split-horizon метки для single-active сегментов, идут в ногу со стандартом :)
@blademd фу тебе за "возможно, подтянутся"