Примеры

Ethernet

На интерфейсах Ethernet для связывания каналов требуется помощь как коммутатора Ethernet, так и операционной системы главного компьютера , которая должна «чередовать» доставку кадров через сетевые интерфейсы таким же образом, как ввод-вывод распределяется по дискам в массиве RAID 0. . По этой причине некоторые обсуждения связывания каналов также относятся к избыточному массиву недорогих узлов (RAIN) или к «избыточному массиву независимых сетевых интерфейсов».

Модемы

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

DOCSIS

Согласно спецификациям DOCSIS 3.0 и 3.1 для систем передачи данных по кабельному телевидению (CATV) несколько каналов могут быть связаны. В соответствии с DOCSIS 3.0 можно связать до 32 нисходящих и 8 восходящих каналов. Обычно они имеют ширину 6 или 8 МГц. DOCSIS 3.1 определяет более сложные схемы, включающие агрегирование на уровне поднесущих и более крупных условных каналов.

Беспроводной широкополосный

связывание — это тип связывания каналов, который относится к объединению нескольких каналов на уровнях OSI на уровне четыре или выше. Связанные каналы могут быть проводными линиями, такими как линия T-1 или DSL . Кроме того, можно связать несколько сотовых каналов связи для объединенного беспроводного связанного канала.

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

Коммерческие реализации широкополосного связывания каналов включают:

  • Технология U-образного соединения Wistron AiEdge Corporation
  • Служба широкополосного соединения Mushroom Networks
  • Connectify Speedify Fast Bonding VPN — программное приложение для нескольких платформ: ПК, Mac, iOS и Android
  • Технология склеивания SpeedFusion от Peplink
  • Многоканальная технология соединения VPN от Viprinet
  • Многоканальный безопасный канал передачи данных Elsight
  • Технология интернет-соединения Natiply от Synopi

Вай фай

  • В 802.11 (Wi-Fi) связывание каналов используется в технологии Super G , называемой 108 Мбит / с. Он связывает два канала стандарта 802.11g со скоростью передачи данных 54 Мбит / с .
  • В IEEE 802.11n указан режим с шириной канала 40 МГц. Это не связывание каналов, а одиночный канал с двойной шириной более старого канала 20 МГц, то есть с использованием двух соседних полос по 20 МГц. Это позволяет напрямую удвоить скорость передачи данных PHY из одного канала 20 МГц, но MAC и пропускная способность на уровне пользователя также зависят от других факторов, поэтому не могут удваиваться.

Балансировка каналов

Балансировка каналов связи (load balancing) – это распределение нагрузки между каналами.

В самом простом варианте осуществляется балансировка по кругу: каждый следующий пакет отправляется в новый канал передачи данных. Чтобы не нарушать логику работы клиентских/серверных приложений, трафик можно маркировать. В результате запрос на один и тот же сервер будет уходить всегда через один канал (интерфейс).

Однако у балансировки по кругу есть существенный минус. В случае снижения скорости передачи данных в одном из каналов, алгоритм все так же продолжает отправлять в него пакеты. И за счет одного медленного соединения общая скорость сбалансированного канала снижается.

Более сложный вариант балансировки включает в себя подсчет метрик, например, с использованием ICMP-пакетов. Поскольку мы измеряем только суммарное время отправки и получения пакета, такой способ не является полностью объективным из-за разницы в скорости исходящего и входящего соединения. Однако с его помощью можно более эффективно распределять трафик, снижая задержки передачи данных через медленный канал.

Балансировка хороша при решении задачи распределения множества запросов и множества клиентов. Как пример: создание Wi-Fi точки доступа в общественных местах. Для организации простого доступа в интернет балансировки, как правило, достаточно.

Основная задача промышленных роутеров с балансировкой iRZ серии R4 – обеспечивать быстрый проводной интернет с резервированием через беспроводной канал. Модели с двумя GSM-модулями обладают функциями горячего резерва и объединения каналов связи для повышения скорости соединения.

Роутеры с балансировкой iRZ серии R4

Настройка агрегации каналов(bonding) на Mikrotik

Fri, 01/10/2020 — 11:51 — Yuriy Kanakov

Bonding- объединение нескольких линков с целью увеличения пропускной способности канала, а так же с целью резервирования. Например, объединить 2 WAN порта по 100 Мбит/c в один bonding канал и получить скорость 200 Мбит/c.

LACP (англ. link aggregation control protocol) — открытый стандартный протокол агрегирования каналов, описанный в документах IEEE 802.3ad и IEEE 802.1aq. Многие производители для своих продуктов используют не стандарт, а патентованные или закрытые технологии, например, Cisco применяет технологию EtherChannel (разработанную в начале 1990-х годов компанией Kalpana), а также нестандартный протокол PAgP.

Главное преимущество агрегирования каналов в том, что потенциально повышается полоса пропускания: в идеальных условиях полоса может достичь суммы полос пропускания объединённых каналов. Другое преимущество — «горячее» резервирование линий связи: в случае отказа одного из агрегируемых каналов трафик без прерывания сервиса посылается через оставшиеся, а после восстановления отказавшего канала он автоматически включается в работу.

Настройка bonding интерфейса

Подключаемся через winbox к маршрутизатору Mikrotik. Заходим в меню interfaces и открываем вкладку bonding. Нажимаем «+», добавить.

В поле Name вписываем название создаваемого канала. Переходим на вкладку «Bonding»

Slaves –Выбираем интерфейсы которые мы хотим объединить в бондинг. Если нужно добавить больше портов, нажмите на треугольник с левой стороны.

Mode – режим работы принимает следующие значения:

Balance rr – балансировка round-robin, пакеты отправляются по очереди с первого порта и до последнего по кругу, при выходе одного из интерфейсов из строя, оставшиеся продолжают работать, таким образом обеспечивается отказоустойчивость, если порты подключены к разным коммутаторам требуется их настройка.

802.3ad – агрегирование интерфейсов, создается группа интерфейсов, при приеме и передаче используются все линки, таким образом, увеличивается пропускная способность канала. Требуется поддержка коммутатора и его дополнительная настройка.

Active backup – активный-резервный, при такой политике один линк активный и пакеты отправляются через него, остальные в это время не работают, при выходе из строя активного интерфейса, в работу вступает один из резервных. При таком режиме дополнительной настройки от коммутатора не требуется.

Balance tlb — Политика адаптивной балансировки нагрузки передачи. Исходящий трафик распределяется в зависимости от загруженности каждого порта (определяется скоростью загрузки). Не требует дополнительной настройки на коммутаторе. Входящий трафик приходит на активный линк. Если он выходит из строя, то другой порт берёт себе MAC адрес вышедшего из строя. Недостатком этого режима является то, что поддерживается только мониторинг каналов mii

balance-alb — политика в основном такой же, как balance-tlb, но входящий трафик также сбалансирован.

balance-xor — Этот режим уравновешивает исходящий трафик через активные линки на основе хешированной информации заголовка протокола и принимает входящий трафик от любого активного линка. Режим очень похож на LACP, за исключением того, что он не стандартизован и работает с хеш-политикой layer-3-and-4.

broadcast — Все пакеты передаются на все линки. Политика обеспечивает отказоустойчивость. Это политика не обеспечивает балансировку нагрузки.
Остальные настройки оставляем как есть , если только не выбран политика Active backup, если выбрали этот режим то в поле Primary выберите активный интерфейс.
После выбора нужного режима работы, переходим к следующему шагу

Настройка ip адреса на интерфейсе bonding

Следующим шагом нам необходимо настроить ip адрес на созданном интерфейсе. Переходим в меню ip-addresses и жмем кнопку добавить.

В открывшемся окне в поле Address прописываем наш ip адрес, а в поле Interfaces выбираем созданный канал bonding1, нажимаем кнопку «ОК». На этом настройка агрегации каналов на Микротике закончена.

Собственная агрегация ссылок

В дополнение к субстандартам агрегации каналов IEEE существует ряд запатентованных схем агрегации, включая Cisco EtherChannel и протокол агрегации портов , агрегированный Ethernet Juniper, многоканальный транкинг AVAYA , раздельный многоканальный транкинг , маршрутизируемый раздельный многоканальный транкинг и распределенный раздельный канал. Multi-Link Trunking , SmartGroup компании ZTE, Huawei, Eth-магистральные и Connectify «S Speedify. Большинство высокопроизводительных сетевых устройств поддерживают некоторую форму агрегации каналов. Программные реализации, такие как пакет * BSD lagg , драйвер связывания Linux , Solaris dladm aggr и т. Д., Существуют для многих операционных систем.

Поддержка агрегации и совместимость между изделиями разных фирм

Большинство решений для гигабитной агрегации основывается на стандарте IEEE 802.3ad, принятом в 2000-м году. Однако нестандартизованные протоколы других фирм существовали ещё до принятия этого стандарта. Некоторые из них используются до сих пор. Примеры таких протоколов: Cisco EtherChannel trunking, Adaptec’s Duralink trunking, Nortel MLT MultiLink trunking. Эти протоколы в большинстве своём работают исключительно с продукцией одной компании или продукцией одной линии.

В настоящее время большинство производителей выпускают сетевые устройства с поддержкой стандарта IEEE 802.3ad, что в теории должно обеспечивать возможность совместной работы устройств различных марок. На практике же такие сочетания могут быть неработоспособны, поэтому рекомендуется заранее уточнять о возможности совместной работы тех или иных устройств.

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

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

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

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

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

Агрегация сетевых адаптеров

Агрегация каналов используется не только в коммутаторах. К сетевым адаптерам также можно применять агрегацию каналов.

В операционной системе Линукс использование в параллель нескольких Ethernet -адаптеров выглядит следующим образом. Допустим, есть два адаптера Ethernet: eth0 и eth1. Их можно объединить в псевдо-Ethernet-адаптер bond0.
На bond0
можно настроить один IP-адрес . Для программ нет никакой разницы между eth0 (eth1) и bond0 (исключая немногие служебные утилиты, которые как раз и предназначены для операций непосредственно с адаптерами).

Агрегирование каналов между коммутатором и сервером

Агрегирование каналов
(англ. link aggregation

) — технологии объединения нескольких параллельных каналов передачи данных в сетях Ethernet в один логический, позволяющие увеличить пропускную способность и повысить надёжность. В различных конкретных реализациях агрегирования используются альтернативные наименования: транкинг портов
(англ. port trunking

), связывание каналов
(link bundling

), склейка адаптеров
(NIC bonding

), сопряжение адаптеров
(NIC teaming

).

Главное преимущество агрегирования каналов в том, что потенциально повышается полоса пропускания: в идеальных условиях полоса может достичь суммы полос пропускания объединённых каналов. Другое преимущество — «горячее» резервирование линий связи: в случае отказа одного из агрегируемых каналов трафик без прерывания сервиса посылается через оставшиеся, а после восстановления отказавшего канала он автоматически включается в работу .

Маршрутизатор R1

Сначала берем второй белый IP в дата-центре. У меня CHR находился за Edge в облаке VMware, так что обязательно пробрасываем порты на Edge UDP 1701, 500 и 4500 NAT-T – IPSec Network Address Translator Traversal. Также делаем разрешающее правило в межсетевом экране Edge. 

Добавляем в таблицу firewall filter разрешающее правило доступа к маршрутизатору извне для портов UDP 1701, 500 и 4500

Если у вас белые IP непосредственно на маршрутизаторе без пробросов через Edge, галочку NAT Traversal НУЖНО СНЯТЬ!
Проверяем дефолтный IPsec-профиль:

Создаем профиль для L2TP-туннелей:

и настраиваем учетные записи:

Активируем L2TP-сервер и включаем шифрование IPsec:

Поднимаем два EoIP-туннеля поверх L2TP/IPsec-туннелей:

Обязательно указываем минимальный keepalive timeout равным 1 секунде и для каждого EoIP-туннеля указываем уникальный ID.

Настраиваем bonding и назначаем на него IP-адрес:

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

Остальные значения устанавливаем, как на картинке.

Конфигурирование 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-сервера к ПК также возможна, однако на практике этот вариант довольно сложен, как мы выяснили далее.

Преимущества

Устройства данной серии предназначены для эксплуатации на сетях крупных предприятий и предприятий сегмента малого и среднего бизнеса при организации высокоскоростной связи между подразделениями. Также их можно использовать в операторских сетях как коммутаторы уровня агрегации и транспортные коммутаторы, в ЦОН – в качестве Top-of-Rack коммутаторов.

Высокий запас по производительности обеспечивается за счет универсальных интерфейсов, работающих на скорости 1 Гбит/с или 10 Гбит/с.

Агрегирующие коммутаторы от «ЭЛТЕКС» имеют развитые функции L2, поддержку статической и динамической маршрутизации. При необходимости можно стекировать до восьми устройств. Коммутаторы позволяют резервировать источники питания с возможностью горячей замены. Для эффективного охлаждения устройств предусмотрена схема Front-to-back вентиляции.

Высокая производительность вкупе с надёжностью исполнения и разумной ценой делают коммутаторы агрегации «ЭЛТЕКС» оптимальным решением для широкого числа заказчиков.

Что
делать, если одного соединения пропускной способности в 100M/1G/10G/100G недостаточно для ваших нужд? Теоретическим, мы можем соединить оборудование несколькими линками, но без агрегирования мы получим только петлю на оборудовании, в результате чего положим сеть, если, конечно, не будет включен протокол Spanning Tree, который воспримет эти соединения как петли и не выключит лишние линки. Почему образуется петля? Это связано с работой коммутаторов, подробнее можно прочитать

Давайте рассмотрим, что такое агрегация и агрегированные порты и зачем это надо.

В терминологии CISCO это Etherchannel, Brocade — LAG, Extreme — sharing… Стандартизированное решение — LACP(Link Aggregation Control Protocol) — протокол, который не зависит от вендора (производителя) оборудования. Все реализации объединения/агрегирования портов выполняют одну функцию, а именно, объединение физических портов в 1 логический с суммарной пропускной способностью.

рис 1

В данное время практически все провайдеры, цоды, дата-центры, контент-генераторы использую агрегацию для увеличения пропускной способности линии,так как ее плюсы очевидны: увеличение пропускной способности и резервирование линков (при падении одного, трафик равномерно распределяется между другими). Однако, находятся и те, которые не используют лаг, например, всем известная социальная сеть Вконтакте. Если вам придется с ними работать, то, возможно, вас удивит их заявление, что они не агрегируют линки. Вконтакте заставят вас настроить протокол динамической маршрутизации через каждый линк (BGP), будь у вас там их хоть 16.

Qedr Summa

Начали с мониторинга метрик операторов сотовой связи (уровень сигнала, тип сети, ошибки сети и т. д.) Нужно отметить, что модемы выбирались как раз исходя из того, как хорошо они могут отдавать метрики операторов. Мы выбрали модем SIM7100 производства компании Simcom. Все интересующие нас метрики отдаются через обращение в последовательный порт. Этот же модем также отдает GPS/ГЛОНАСС-координаты с хорошей точностью. Также необходимо отслеживать статус метрик компьютера (температуру CPU, SSD, свободное количество оперативной памяти и дискового пространства, S.M.A.R.T. показатели SSD). Отдельно модуль мониторит статистику сетевых интерфейсов (наличие ошибок на прием и отправку, длина очереди на отправку, количество переданных байтов). Поскольку производительность устройства крайне ограничена и пакет передаваемых данных должен быть минимален, а также учитывая простоту мониторинга этих метрик под Linux через /proc/sys, вся подсистема мониторинга также была разработана с нуля.

После того как модуль мониторинга метрик был готов, приступили к сетевой части: программной агрегации каналов. К сожалению, детальный алгоритм — коммерческая тайна, опубликовать его я не могу. Всё же опишу в общих чертах, как работает модуль агрегации, установленный в транспорте:

  1. При запуске читает конфиг в формате JSON, в котором описаны настройки виртуальных интерфейсов. Адреса серверов агрегации подтягиваются из центральной системы динамически. Это обеспечивает балансинг нагрузки на серверную часть и условно бесшовный хендовер при сбое любого сервера агрегации.
  2. На основе прочитанных данных создает L3-тоннели до серверов агрегации. Настраивает маршрутизацию. Тоннель опционально может иметь сжатие данных и шифрование.
  3. На основе данных от модуля мониторинга присваивает каждому тоннелю свой «вес». Чем больше вес, тем больше трафика пойдет именно через этот тоннель. Вес каждого тоннеля актуализируется каждую секунду
  4. Статистика работы устройства, геопозиция и метрики бизнес-логики накапливаются в течение 10 минут, формируется транзакция. Транзакции хранятся в локальной базе Tarantool и отправляются в «голову» нативным механизмом репликации данных СУБД «Тarantool», за что отдельное спасибо разработчикам и активному комьюнити этой СУБД.

Серверная часть агрегации работает радикально проще. При старте модуль агрегации обращается к серверу настроек, получает конфигурацию в JSON-формате и на ее основе запускает L3-интерфейсы. В целом всё тривиально.

Отдельно стоит описать систему сбора и визуализации всех метрик проекта. Она поделена на две большие части. Первая часть — мониторинг систем жизнеобеспечения клиентского и серверного оборудования. Вторая — мониторинг бизнес-метрик работы проекта.

Стек технологий проекта стандартный. Визуализация: Grafana, OpenStreetMap, сервер приложений на клиентской и серверной стороне: Go, СУБД Tarantool.

Протокол LACP

Рассмотрим, как работает агрегация на примере протокола LACP.

LACP -(англ. Link Aggregation Control Protocol) отсылает пакеты, которые называются LACPDU, через все интерфейсы устройства, на которых он включен. На основании этих пакетов оборудование определяет принадлежность физических портов к тому или иному логическому каналу. Протокол может работать в двух режимах:

1. Пассивный режим, при котором оборудование ждет от соседа LACPDU пакеты и только тогда начинает высылать свои.

2. Активный режим, при котором оборудование постоянно шлет LACPDU пакеты.

Для того, чтобы LACP заработал, требуется одинаковая скорость и емкость каналов.

В результате установления работы протокола LACP коммутаторы обмениваются:

System Identifier (priority + MAC)
Port Identifier (priority + номер порта)
Operational Key (параметры порта)

Это требуется для того, чтобы лаг не собрался как-нибудь не так, например как показано на рисунке 2.

Архитектура

Сетевые архитекторы могут реализовать агрегирование на любом из трех нижних уровней модели OSI . Примеры агрегации на уровне 1 ( физический уровень ) включают в себя сетевые устройства линии электропередачи (например, IEEE 1901 ) и беспроводные (например, IEEE 802.11), которые объединяют несколько диапазонов частот. Уровень 2 OSI ( уровень канала передачи данных , например, кадр Ethernet в локальных сетях или в глобальных сетях, MAC-адрес Ethernet ) обычно происходит через порты коммутатора, которые могут быть либо физическими, либо виртуальными, управляемыми операционной системой. Агрегация на уровне 3 ( сетевой уровень ) в модели OSI может использовать , хеш-значения, вычисленные из полей в заголовке пакета, или комбинацию этих двух методов.

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

Объединение может происходить так, что несколько интерфейсов совместно используют один логический адрес (т. Е. IP) или один физический адрес (т. Е. MAC-адрес), или позволяет каждому интерфейсу иметь свой собственный адрес. Первый требует, чтобы на обоих концах канала использовался один и тот же метод агрегирования, но имеет преимущество в производительности по сравнению со вторым.

Связывание каналов отличается от балансировки нагрузки тем, что балансировка нагрузки разделяет трафик между сетевыми интерфейсами по каждому сетевому сокету (уровень 4), в то время как связывание каналов подразумевает разделение трафика между физическими интерфейсами на более низком уровне, либо по пакетам (уровень 3), либо канал передачи данных (уровень 2).

от admin

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *