Hard: Broadcom NetXtreme/NetXtremeII Server Adapter.
Задача: обеспечить высокий уровень надёжности передачи данных через сетевые адаптеры "Broadcom NetXtreme Server" для сервера под управлением "Microsoft Windows 2003" вкупе с увеличением пропускной способности каналов в соответствии со спецификацией IEEE 802.3ad (LACP).
Как я уже упоминал в предыдущей заметке о настройке "Network Teaming" с помощью "HP Network Configuration Utility", Microsoft не поддерживает агрегирование каналов передачи данных на уровне системы, полагая (видимо), что проще отдать разработку таких решений тем, кто сможет и захочет это сделать, снимая с себя ответственность за потенциально нестабильную работу на массе оборудования, протестировать которое весьма и весьма трудоёмкая задача.
У всех "брендовых" производителей серверов есть свои оболочки для установки и настройки сетевого аппаратного и программного обеспечения. Но, подавляющее большинство производителей современных серверов устанавливают сетевые адаптеры, основанные на наборе микросхем компаний "Broadcom" и "Intel" (на моей практике все "не домашние" серверы "Hewlett-Packard" и "Fujitsu-Siemens" были оборудованы такими адаптерами), дорабатывая драйверы и попутно их переименовывая. Таким образом, если получить сервер с предустановленной операционной системой или устанавливать её "не глядя" с инсталляционного пакета, идущего в комплекте с сервером, то выяснить после, какое именно сетевое оборудование установленно бывает не так просто.
Как бы то ни было, у нас на борту сетевая карта "Broadcom NetXtreme Server" и мы хотели ли бы установить оригинальные драйверы, а так же специализированное программное обеспечение, позволяющее настроить агрегирование каналов.
Для начала идём на сайт производителя и скачиваем драйверы и программное обеспечение:
Broadcom Ethernet NIC NetXtreme Server Driver
Broadcom Advanced Control Suite (Broadcom Management Applications Installer)
Broadcom Advanced Control Suite (Broadcom Management Applications Installer)
Устанавливаем драйверы и проводим предварительную подготовку сетевых адаптеров. Прежде всего, для всех сетевых интерфейсов, задействованных в объединении, необходимо установить единые значения для ряда параметров. Следует в явном виде указать скорость и режим передачи данных, например: "100 Mb & Full" (естественно, на стороне коммутатора необходимо заранее обеспечить работу интерфейсов в аналогичном режиме). Далее следует отключить поддержку "Checksum Offload", "Receive Side Scaling" и "NetDMA" (всё это - функционал "Scalable Networking Pack", предназначенный для оптимизации обработки "прямых" потоков данных). Суть операций и метод применения изложены достаточно подробно в предыдущей заметке и не вижу смысла здесь повторяться.
Далее устанавливаем "Broadcom Advanced Control Suite", программное обеспечение, предназначенное для настройки сетевых адаптеров Broadcom:
Network Teaming. Broadcom. Microsoft Windows 2003: Инсталлируем BACS3.
Запускаем утилиту "Broadcom Advanced Control Suite", переходим в раздел управления групповыми подключениями и создаём новое групповое подключение:
882x651 • Network Teaming. Broadcom. Microsoft Windows 2003. BASC: Инициируем создание группового сетевого интерфейса.
Выбираем произвольное говорящее имя для создаваемого виртуального сетевого интерфейса:
953x441 • Network Teaming. Broadcom. Microsoft Windows 2003. BASC: Задаём имя виртуального сетевого интерфейса.
Выбираем тип агрегирования, в нашем случае это 802.3ad (LACP):
954x441 • Network Teaming. Broadcom. Microsoft Windows 2003. BASC: Выбираем тип агрегирования.
Явно указываем, какие именно сетевые адаптеры будут объеденены:
954x441 • Network Teaming. Broadcom. Microsoft Windows 2003. BASC: Явно выбираем интерфейсы для агрегирования.
Ознакомимся со схемой и сохраним изменения:
954x441 • Network Teaming. Broadcom. Microsoft Windows 2003. BASC: Сохраняем изменения.
В самом простом случае - это всё. После нажатия кнопки "Finish" будет создан новый виртуальный групповой интерфейс и сброшены TCP/IP параметры подчинённых интерфейсов. Если в сети налажен DHCP, то групповой интерфейс получит параметры автоматически (IP, mask, gayeway, DNS), в противном случае - настраиваем его вручную. Естественно, с момента инициирования создания нового группового соединения (с сопутствующим сбросом TCP настроек задействованных сетевых интерфейсов) и до момента настройки TCP/IP на новом виртуальном интерфейсе сетевое взаимодействие будут невозможным. Кроме того, как это водится, операционная система Microsoft Windows запросит перезагрузку, обнаружив "новое устройство".
Ясно, что необходимо обеспечить поддержку LACP на всех сторонах сетевого взаимодействия. Как это сделать для Cisco Catalyst я писал здесь. После того, как поддержка LACP обеспечена на обеих взаимодействующих сторонах, можно подключать второй сетевой линк (или третий, если будет угодно). Чем больше линков сгруппируем, тем большую надёжность и суммарную пропускную способность получим:
Network Teaming. Broadcom. Microsoft Windows 2003: Состояние агрегированного сетевого интерфейса.