Когда Роутер Не Справляется С Нагрузкой

Поделюсь одним случаем из телекоммуникационной практики.

Имеем циску 26-й серии (2620ХМ).

Имеет около четырех десятков субинтерфейсов.

Большинство из них предназначены для местных абонентов, расположенных в одном здании, а также есть несколько ссылок на удаленные точки.

Среди них аэропорт, кирпичный завод, горнолыжный курорт и совхоз.

«Да, это непотребное старье», — скажете вы, и будете правы, но исторически сложилось так.

Однако дело не в этом.

А некоторое время назад оказалось, что нагрузка слишком велика.

Поначалу это проявлялось в некоторых задержках при работе в консоли.

Вы как будто набираете команду, но буквы появляются не сразу, а с небольшой задержкой.

Потом пинг до циски с удаленных точек стал периодически увеличиваться.

Следующий симптом - иногда отваливается интернет-канал (при этом маршрутизация внутри локальной сети работала без нареканий и потерь не было).

Между тем в логах жуткая картина очень активного использования процессора.

Загрузка процессора не опускается ниже 80%, но большую часть времени составляет 95-99%.

Теперь начал пропадать пинг, даже если вы находитесь в одной подсети.

Интернет хромает на обе ноги.

Было две проблемы: эта циска выполняла функции NAT, что очень сильно нагружает роутер, и наличие на борту всего одного интерфейса.

Такая схема подключения называется роутером на палке, поскольку от свитча к нему идет только один канал, а все подсети устанавливаются на субинтерфейсах.

Получается, что весь трафик, даже локальный внутри одного здания, проходит через один порт, а весь исходящий наружу трафик проходит через него.

Помимо этого циска еще и передавала голос с одной АТС на другую.

Так продолжаться не могло.

И наступил один чудесный момент, когда сеть просто пролежала большую часть дня.

Даже местное движение практически остановилось.

Это совпало с важной конференц-связью одного из абонентов (более половины звонков были сброшены из-за высокой нагрузки) и не менее важной презентацией другого.

Нужны были экстренные меры – если на следующий день все повторится, последствия будут просто непоправимыми – подошел срок сдачи финансовой отчетности.

Не только интернет еле движется, но и связь с серверами 1С и Галакси.

Покупка нового, более производительного роутера, скорее всего, не была бы одобрена, тем более, что на полке лежал 48-портовый катализатор и еще 26-портовая циска.

И он физически не успеет прийти.

Catalyst 3550 — это коммутатор L3, который достаточно хорошо справляется с маршрутизацией.

Кроме того, на нем можно настроить L3-интерфейсы, то есть не связывать их с VLAN, а присваивать им IP. Второй Cisco 26-й серии с двумя портами, что не позволит всему трафику проходить через одну дырку: к одному порту подключайте локальных абонентов, а второй выделяйте для аплинка на удаленную границу.

Решение в целом простое: 1) Переносим NAT на отдельный роутер.

(Он будет заниматься исключительно NAT и белой IP-маршрутизацией) 2) Переносим все сабинтерфейсы в катализатор (это облегчит передачу данных по локальной сети и разгрузит аплинк) 3) Старая циска остаётся только для транзита телефона.

На схеме это можно выразить примерно так:

Когда роутер не справляется с нагрузкой

Маршрут пакета, отправленного в Интернет, показан розовым цветом; по сиреневому пути следует внутренний пакет с адресатом из сети 172.16.0.0/16. Зеленый – путь телефонного звонка.

То есть, если пакет отправляется в сеть 172.16.0.0, то катализатор маршрутизирует его в соответствии со своей таблицей, а шлюзом по умолчанию является маршрутизатор, который выполняет именование, а если пакет не отправляется в 172-ю сеть , затем маршрутизируется на белый IP и отправляется по другому логическому каналу прямо на границу.

В этом случае второй роутер просто выполняет функцию практически голосового шлюза — принимает данные от АТС по E1 и отправляет их по Ethernet вместе с остальным локальным трафиком на другую Cisco. Схема не очень рациональна с точки зрения использования железа.

Но он все равно будет работать как временный.

Это значительно снизило нагрузку на оборудование — средняя загрузка процессора роутера для NAT составляет 20-30%, а для катализатора и того меньше.

Проблемы прекратились.

У такого подхода есть один существенный недостаток — Catalyst все-таки не является маршрутизатором в полном смысле этого слова.

Например, к логическому интерфейсу невозможно прикрепить ограничение скорости, а с физическим интерфейсом все сложно.

В лучшем случае можно будет ограничить скорость трафика, поступающего на интерфейс для конкретного acl, но кому это нужно? Поэтому, как бы красиво мы ни выходили из ситуации, нам нужно купить нормальный производительный роутер и построить классическую схему.

P.S. Если вас интересуют технические подробности реализации новой схемы или есть вопросы, добавлю их в тему.

Теги: #cisco #cisco #Системное администрирование #телекоммуникации #nat #телефония #PBX #3dsmax #catalyst

Вместе с данным постом часто просматривают: