Удваиваем скорость домашней сети: практические испытания технологии агрегирования каналов

04.04.2017

Уже много лет LAN-кабель не пересекает гигабитную границу. Мы покажем, как достичь двойной скорости и что необходимо для получения десятикратной скорости передачи данных.

Раньше люди особо не задумывались о скорости кабельных подключений в домашней сети. Они всегда обеспечивали достаточную скорость и надежность, что в любом случае доказано их использованием миллионы раз. Однако в наши дни технология подошла к своему пределу: во все большее число компьютеров устанавливаются твердотельные накопители, скорость которых как минимум впятеро превышает 1 Гбит/с. А новые стандарты беспроводной сети 802.11 «ac» и «ad» значительно превышают гигабитную скорость Ethernet.

Разумеется, существуют кабельные технологии, обеспечивающие скорость до 10 Гбит/с, однако они предназначены для профессиональных вычислительных центров и являются довольно дорогими. Но есть и другая возможность обеспечения более высокой скорости. Она состоит в объединении нескольких гигабитных сетей. В подобной схеме, т.н. «агрегации каналов», соединяются два обычных гигабитных LAN-кабеля и тем самым обеспечивается отличная интеграция в существующую сеть. Однако для реализации простого принципа «2×1 Гбит = 2 Гбит» на практике существуют некоторые препятствия, которые мы обнаружили в ходе наших тестов.

Агрегация каналов: сетевые коммутаторы от 2500 руб

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

Эту возможность обеспечивают только современные маршрутизаторы топ-класса, такие, как ASUS RT-AC5300 или Netgear Nighthawk X10 (цена каждого — от 20 000 рублей). Однако всего за 2500 рублей доступны LAN-коммутаторы с 8 портами и возможностью агрегации каналов (например, TP-Link TL-SG108E или Netgear Gs108E), которые можно переключать между маршрутизатором и объединяемыми в сеть устройствами (см. схему справа).

Принципиальная особенность: коммутатор должен быть управляемым (т. е. требуется веб-интерфейс для его настройки, а установленная в нем прошивка должна обеспечивать возможность соединения портов). Указанием на это является один из терминов «Link Aggregation», «Port Trunking», «LACP» или «802.3ad» в техническом описании.

Компьютеры или устройства, которые должны подключаться со скоростью в несколько Гбит/с, должны иметь соответствующее число LAN-портов, а также возможность настройки на программном уровне. Мы протестировали два сценария, используя коммутатор Netgear GS110TP. В первом сетевой накопитель NAS соединен с коммутатором через два LAN-порта, таким образом каждый из двух ПК может загружать данные из NAS-хранилища с полной гигабитной скоростью.

Этот вариант представляет собой целевое применение агрегации каналов и работает относительно беспроблемно. При втором варианте мы сконфигурировали ПК с двумя LAN-портами так, что данные можно было загружать из NAS со скоростью 2 Гбит/с. Этот довольно сложный способ предполагает совершенно определенные виды передачи данных и часто (но не всегда) обеспечивает удвоенную скорость.

Структура и конфигурирование коммутатора

В любом случае сначала необходимо запустить коммутатор: к электрической сети он подключается через собственный блок питания; один из его портов соединяется с маршрутизатором (мы использовали последний порт № 8). Примерно через минуту он загрузится, его LAN-порты заработают, а веб-интерфейс станет доступен для всех компьютеров, подключенных к коммутатору (или маршрутизатору) по кабельной или беспроводной сети.

IP-адрес коммутатора можно узнать в настройках вашего маршрутизатора, предварительно установленный пароль указан в руководстве пользователя. В первую очередь необходимо произвести поиск обновлений на сайте производителя; у нашего коммутатора Netgear нам было необходимо загрузить новую прошивку в меню «Maintenance | Download | HTTP File Download».

В веб-интерфейсе коммутатора Netgear производится конфигурирование групп агрегации каналов, а также подключаемых портов

Конфигурирование агрегации каналов может производиться до подключения соответствующих устройств. В веб-интерфейсе коммутатора Netgear в поле «Switching | LAG» нажмите на пункт «LAG1» (группа агрегации каналов) и установите галочку в пункте «PORT» у номеров портов, которые вы хотите задействовать. Каждая группа служит для подключения одного устройства: на схеме сверху справа LAG1 — это NAS-хранилище, подключенное к портам 1 и 2, LAG2 — это ПК на портах 5 и 6. В разделе «LAG Configuration» мы оставили настройки по умолчанию, лишь изменили параметр «LAG Type» на «LACP».

Скорость портов, не относящихся ни к одной группе, остается на обычном уровне 1 Гбит (на схеме — это 3, 4 и 8). Подключите устройства в соответствии с LAG-идентификацией. Сначала активно только простое кабельное соединение с физическим первым интерфейсом конечного устройства; агрегацию каналов также необходимо активировать на конечных устройствах. Как это сделать, читайте далее.

Конфигурирование NAS для двухканального режима

Для наших тестов мы использовали QNAP TS-231P, оснащенный двумя LAN-портами и обеспечивающий высокую пропускную способность. Мы измерили скорости передачи данных по FTP, причем и в NAS-накопителе, и в целевом ПК были установлены быстрые SSD-накопители SATA. Настройки сети в веб-интерфейсе QNAP находятся в разделе «Панель управления | Системные настройки | Сеть».

Здесь в разделе «Интерфейсы» показаны оба Ethernet-порта. Щелкните раздел «Группирование портов | Добавить» и установите флажок для каждого интерфейса. Единственный режим, который надежно работал с коммутатором Netgear в ходе тестирования и привел к требуемым результатам, был «Balance-rr», при котором для передачи данных используются оба кабеля поочередно.

После щелчка на кнопке «Применить» NAS-накопитель на короткое время переходит в режим оффлайн для применения новых параметров. Если установлен режим, который не поддерживается, NAS будет недоступен; в этом случае необходимо нажать и удерживать в течение 3 секунд кнопку на задней стороне устройства. Это приведет к сбросу пароля и возврату параметров сети к значениям по умолчанию.

В теории базовый режим агрегации каналов с помощью двух компьютеров, подключенных к простым портам коммутатора Netgear, должен позволять одновременно скачать с NAS-диска два файла со скоростью 1 Гбит/с каждый. Но загрузка и закачка с двух ПК немного выбивает систему из ритма: при загрузке на сетевой накопитель скорость примерно на 25% ниже максимальной теоретически возможной.

Так как подобная конфигурация является относительно доступной и легко реализуемой, она, безусловно, подходит для домашних сетей, в которых доступ к NAS-накопителю осуществляется с нескольких компьютеров. Однако стоит обратить внимание на следующее: в то время, как параллельная передача данных помогает исчерпать возможности обеих сетевых линий, она же предъявляет повышенные требования к накопителям, установленным в NAS-устройстве. Желательно использоваться SSD-диски.

Удвоенная скорость передачи данных от NAS-сервера к ПК также возможна, однако на практике этот вариант довольно сложен, как мы выяснили далее.

Настройка агрегации каналов на ПК

То, что выполняется на NAS-накопителе с помощью пары кликов, должно быть так же просто реализовать на ПК. Во всяком случае, так считают. С точки зрения аппаратных средств существуют многочисленные материнские платы с двумя LAN-портами, или платы с возможностью установки второй сетевой карты со скоростью 1 Гбит/с за небольшие деньги. С точки зрения программного обеспечения это становится сложнее: изначально эта функция поддерживалась в Windows 10. Но после обновления осенью 2015 года, утилиты для этого хотя и существуют, однако больше не работают. Это также относится к сетевым драйверам Intel, с помощью которых агрегация каналов может быть настроена альтернативным способом.

Поэтому мы установили на игровом ПК с процессором Skylake и двумя сетевыми разъемами ОС Ubuntu, в которой может быть настроена агрегация, в мире Linux называемая «Port Trunking». Для этого мы сначала деактивировали менеджер сетей Ubuntu, а потом настроили агрегацию портов с помощью файла конфигурации Linux («/etc/network/interfaces»). По правде говоря, мы испытывали разные варианты из Интернета, до тех пор, пока технология не заработала на нашем тестовом ПК, поскольку документация по теме довольно скудна и зачастую противоречива.

Наша успешная комбинация состоит из четырех определений интерфейсов, каждый из которых начинается с «auto…»: сначала указывается важное для системы устройство закольцовывания, в котором нельзя ничего изменить. В этом случае определяются, но не активируются, оба физических LAN-порта. Это происходит только в определении «bond0» указанного интерфейса агрегации каналов. Большинство записей предназначены для конфигурирования IP-настроек в ручном режиме, режим подключения указывается с помощью строки «bond-mode». Режим 4 предназначен для соединения по стандарту «802.3ad» и обеспечивает максимальную скорость до 1628 Мбит/с.

Альтернативным образом работает режим 0 («Balance-rr», то есть тот же самый режим, что и в NAS-накопителе), однако только со скоростью 1202 Мбит/с. Для сравнения: скорость передачи данных по отдельной гигабитной линии составляет 912 Мбит/с. Отказоустойчивость является положительным сопутствующим эффектом: во время передачи данных можно отключить один из двух разъемов — связь не обрывается, лишь вдвое падает скорость.

Однако есть как минимум одна загвоздка: обе линии используются только в том случае, если по FTP одновременно передаются два файла (в меню настроек Filezilla: «Передачи | Максимум одновременных передач: 2»). При повышении этого значения скорость очень быстро уменьшается. Кроме того, необходимо обращать внимание на то, чтобы между ПК и NAS-сервером отсутствовала любая другая связь (например, открытый веб-интерфейс NAS, SSH-соединение), так как даже минимальная загрузка линии приводит к тому, что обе передачи данных осуществляются только по одной линии вместо двух.

Дополнительное разочарование: скорость в ходе экспериментов с SMB-протоколом, который использует Windows для удаленного доступа к файлам, была значительно медленнее, чем по одной гигабитной линии. Все это демонстрирует малую вероятность того, что режим агрегации каналов в Windows мог бы функционировать быстро и без проблем, так как система Microsoft сохраняет контрольные и иные соединения.

Наш вывод в отношении агрегации каналов: процесс хорошо подходит для эффективного соединения NAS-сервера с несколькими гигабитными клиентами. В качестве быстрого соединения NAS с клиентом он является трудоемким и имеет много подводных камней. Для этого потребовалась бы принципиально более быстрая сетевая технология.

SFP+ как новый 10-гигабитный стандарт
Маршрутизатор Netgear Nighthawk X10 оснащен интерфейсом SFP+, таким образом, к нему можно подключить устройство со скоростью передачи данных 10 Гбит/с. Два его гигабитных LAN-порта объединяются посредством агрегации каналов.

Ethernet 10 Гбит и SFP+

В профессиональной области 10-гигабитный стандарт уже более десяти лет образует основу инфраструктуры в вычислительных центрах. Вариант с медными кабелями под названием «10GBase-T» делает ставку на те же самые разъемы RJ-45, как и гигабитная локальная сеть LAN, однако для него требуются экранированные (как минимум Cat. 6) кабели и дорогое оборудование: сетевая карта, например, Intel X540-T1 стоит около 22 000 руб., самый дешевый коммутатор с двумя портами 10GBase-T (ASUS XG-U2008) примерно столько же. NAS-накопители с поддержкой данного стандарта стоят от 50 000 руб.

Профессиональная карта
Благодаря сетевой карте HP NC523SFP компьютер дополнительно оснащается двумя интерфейсами SFP+

Более доступным является стандарт «SFP+». Он описывает компактное модульное приемо-передающее устройство, используемое в кабельных сетях и рассчитан как на медные, так и гораздо более дорогие оптоволоконные кабели. Оба варианта обеспечивают передачу данных со скоростью 10 Гбит/с: медные кабели на расстояние 50-100 метров, оптоволокно — до нескольких километров. Маршрутизатор Netgear Nighthawk X10 оснащен одним портом SFP+. С помощью модуля SFP+ Direct Attach Copper Cable (около 2500 руб.) к нему можно подключить NAS-накопитель.

Самой дешевой моделью SFP+ является QNAP TS-531X-2G (от 48 000 руб.). Сетевые карты PCIe, поддерживающие SFP+, доступны по цене от 15 000 руб. (Внимание! Большинство из них работают только с драйверами серверной версии Windows!) Впрочем, как показывает маршрутизатор Netgear, складывается ситуация, что SFP+ может проникнуть на массовый рынок и «взорвать» гигабитную границу.

ФОТО: Компании-производители; CHIP Studios

Узнайте скорость своего интернета