Агрегирование каналов

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

В компьютерных сетях агрегирование каналов (англ. Link aggregation) — технологии объединения нескольких параллельных каналов передачи данных в один логический. Это позволяет увеличить пропускную способность каналов и повысить их надежность в случае отказа одного из каналов.

Далее в статье в настоящее время рассматривается только агрегирование каналов в сетях Ethernet, хотя принцип агрегирования каналов применяется и для других технологий (например: инверсное мультиплексирование, Multilink PPP).

Для сетей Ethernet существует открытый стандарт IEEE 802.3ad, IEEE 802.1aq однако многие компании ещё используют для своих продуктов патентованные или закрытые технологии.

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

Описание[править | править вики-текст]

Главное преимущество агрегирования каналов в том, что потенциально повышается полоса пропускания: в идеальных условиях полоса пропускания агрегированого канала может быть равна сумме полос пропускания всех объединённых в нём каналов. Также, в случае отказа одного из агрегируемых каналов трафик без прерывания сервиса посылается через оставшиеся. Если же канал вновь начинает работать, то через него опять посылают данные.[1]

Ранее чем стандарт 802.3ad был разработан так называемый EtherChannel (закрытая разработка Cisco). Его плюс был в том, что он поддерживает разные режимы посылки пакетов, тогда как 802.3ad поддерживает только стандартный.

Стандарт 802.3ad[править | править вики-текст]

Стандарт IEEE 802.3ad принят в 2000-ом году. Полное название — «802.3ad Link aggregation for parallel links».

Примером может служить сервер с 8 сетевыми 1000-мбитными карточками, соединённый 8-ю каналами с коммутатором.

Агрегирование 1-гигабитных каналов с помощью 802.3ad как правило дешевле чем одна 10-гигабитная плата, но имеет ограничения: 1) распределение трафика по каналам может быть неравномерным, вплоть до того, что весь трафик идет по одному каналу, а другие простаивают (зависит от трафика, возможностей и настроек оборудования), что в крайних случаях означает отсутствие выигрыша в пропускной способности по сравнению с единственным каналом; 2) объединять можно не более 8 каналов, что в случае гигабитных каналов дает теоретическую суммарную пропускную способность в 8 гигабит/сек.

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

Использование разных портов и скоростей[править | править вики-текст]

Обычно все порты при агрегировании должны быть одного типа. Например, все порты с медным покрытием (CAT-5E/CAT-6), все порты оптоволокна одномодового (SM) или все многомодового (MM).

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

Поддержка агрегирования и совместимость между изделиями разных фирм[править | править вики-текст]

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

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

Агрегирование сетевых адаптеров[править | править вики-текст]

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

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

Литература и ссылки[править | править вики-текст]

См. также[править | править вики-текст]

Примечания[править | править вики-текст]

  1. Олифер В. Г., Олифер Н. А. Глава 13. Коммутируемые сети Ethernet // Компьютерные сети. Принципы, технологии, протоколы. — 4-е изд. — СПб.:Питер, 2010. — С. 464. — 4500 экз. — ISBN 978-5-49807-389-7.