Оптимизация маршрутизации для Azure ExpressRoute
При наличии нескольких каналов ExpressRoute к сети Майкрософт можно подключиться по нескольким маршрутам. Это может привести к неоптимальной маршрутизации, когда трафик занимает более длинный путь, увеличивая задержку и влияя на производительность приложения и взаимодействие с пользователем. В этой статье объясняется, как оптимизировать маршрутизацию с помощью стандартных технологий маршрутизации.
Выбор пути для пиринга Майкрософт
Чтобы обеспечить потоки трафика через нужный путь с несколькими каналами ExpressRoute, необходимо управлять путями к Интернету с помощью Internet Exchange (IX) или поставщика услуг Интернета (ISP). BGP использует лучший алгоритм выбора пути на основе таких факторов, как самый длинный совпадение префикса (LPM). Чтобы обеспечить трафик, предназначенный для Azure через Корпорацию Майкрософт, использует путь ExpressRoute, реализуйте атрибут локального предпочтения . Этот параметр гарантирует, что путь всегда предпочтителен в ExpressRoute.
Примечание.
Локальный параметр по умолчанию обычно равен 100. Более предпочтительны более высокие местные предпочтения.
Рассмотрим следующий сценарий в качестве примера:
Чтобы предпочесть пути ExpressRoute, настройте локальные предпочтения следующим образом:
Конфигурация Cisco IOS-XE с точки зрения R1:
R1(config)#route-map prefer-ExR permit 10
R1(config-route-map)#set local-preference 150
R1(config)#router BGP 345
R1(config-router)#neighbor 1.1.1.2 remote-as 12076
R1(config-router)#neighbor 1.1.1.2 activate
R1(config-router)#neighbor 1.1.1.2 route-map prefer-ExR in
Конфигурация Junos с точки зрения R1:
user@R1# set protocols bgp group ibgp type internal
user@R1# set protocols bgp group ibgp local-preference 150
Неоптимальная маршрутизация от клиента к Майкрософт
Представьте себе, что у вас есть два офиса в США, один в Лос-Анджелесе и один в Нью-йорке, подключенный через глобальную сеть. У вас есть два канала ExpressRoute, один на западе США и один на востоке США, оба подключены к глобальной сети. Вы намерены подключиться к Azure "Западная часть США" и "Нью-йорк" пользователям Azure на востоке США. Однако, не зная, какой префикс является из какого региона, глобальная сеть может направлять трафик обоих офисов в канал "Восточная часть США", вызывая неоптимальную маршрутизацию для пользователей Лос-Анджелеса.
Решение. Использование сообщества BGP
Чтобы оптимизировать маршрутизацию, используйте значения сообщества BGP для идентификации префиксов из каждого региона Azure. Например, 12076:51004
для восточной части США и 12076:51006
западной части США. Настройте более высокие значения локальных предпочтений для соответствующих префиксов в каждом регионе, чтобы обеспечить оптимальный путь трафика.
Примечание.
Тот же метод можно применить к маршрутизации от клиента в виртуальную сеть Azure с помощью частного пиринга. Настройте маршрутизаторы, чтобы предпочитать один канал ExpressRoute другим на основе развертываний виртуальной сети.
Неоптимальная маршрутизация от Майкрософт к клиенту
В этом сценарии подключения Майкрософт занимают более длинный путь для доступа к сети. Например, подключения Exchange Online к локальным серверам могут направляться через неправильный канал ExpressRoute. Без подсказок корпорация Майкрософт не может определить, какой локальный префикс ближе к каналу.
Решение. Использование атрибута AS PATH
Рекламируйте локальные префиксы в соответствующих каналах ExpressRoute или используйте предустановку AS PATH для влияния на маршрутизацию. Продлите AS PATH для префиксов в менее предпочтительном регионе, чтобы гарантировать, что корпорация Майкрософт предпочитает оптимальный путь.
Внимание
Мы удаляем частные номера AS в AS PATH для префиксов, полученных в пирингах Майкрософт при использовании частного номера AS. Пиринг с общедоступным AS и добавление общедоступных номеров AS в AS PATH, чтобы повлиять на маршрутизацию для пиринга Майкрософт.
Неоптимальная маршрутизация виртуальных сетей
С помощью ExpressRoute можно включить связь между виртуальными сетями, связав их с каналом ExpressRoute. Неоптимальная маршрутизация может возникать, когда виртуальные сети связаны с несколькими каналами. Например, виртуальные сети на западе США и востоке США могут направлять трафик через удаленный канал из-за маршрутизации ECMP.
Решение. Назначение высокого веса для локального подключения
Назначьте более высокий вес локальному подключению, чтобы убедиться, что виртуальные сети предпочитают оптимальный путь. Эта конфигурация гарантирует, что трафик занимает самый короткий путь между виртуальными сетями.
Примечание.
Вы также можете повлиять на маршрутизацию из виртуальной сети в локальную сеть, настроив вес подключения вместо предварительной настройки AS PATH. Вес подключения учитывается перед длиной пути AS при выборе способа отправки трафика.