Сетевой коммутатор

18-портовый свитч
18-портовый свитч

Сетевой коммутатор или свитч (switch — переключатель) — устройство, предназначенное для соединения нескольких узлов компьютерной сети в пределах одного сегмента. В отличие от концентратора, который распространяет трафик от одного подключенного устройства ко всем остальным, коммутатор передаёт данные только непосредственно получателю, исключение составляет широковещательный трафик (на MAC-адрес FF:FF:FF:FF:FF:FF) всем узлам сети. Это повышает производительность и безопасность сети, избавляя остальные сегменты сети от необходимости (и возможности) обрабатывать данные, которые им не предназначались.
Коммутатор может стать неотъемлемой частью вашей домашней сети, особенно, если вы хотите включить в нее NMT-плеер.
Коммутатор работает на канальном уровне модели OSI, и потому в общем случае может только объединять узлы одной сети по их MAC-адресам. Коммутаторы были разработаны с использованием мостовых технологий и часто рассматриваются как многопортовые мосты. Для соединения нескольких сетей на основе сетевого уровня служат маршрутизаторы.

Существует три способа коммутации. Каждый из них — это комбинация таких параметров, как время ожидания и надёжность передачи.

  • С промежуточным хранением (Store and Forward). Коммутатор читает всю информацию в кадре, проверяет его на отсутствие ошибок, выбирает порт коммутации и после этого посылает в него кадр.
  • Сквозной (cut-through). Коммутатор считывает в кадре только адрес назначения и после выполняет коммутацию. Этот режим уменьшает задержки при передаче, но в нём нет метода обнаружения ошибок.
  • Бесфрагментный (fragment-free) или гибридный. Этот режим является модификацией сквозного режима. Передача осуществляется после фильтрации фрагментов коллизий (кадр размером 64 байта обрабатываются по технологии store-and-forward, остальные по технологии cut-through).

Латентность, связанная с «принятием коммутатором решения», добавляется к времени, которое требуется кадру для входа на порт коммутатора и выхода с него и вместе с ним определяет общую задержку коммутатора.
Коммутатор хранит в памяти таблицу коммутации (хранящуюся в ассоциативной памяти), в которой указывается соответствие MAC-адреса узла порту коммутатора. При включении коммутатора эта таблица пуста, и он работает в режиме обучения. В этом режиме поступающие на какой-либо порт данные передаются на все остальные порты коммутатора. При этом коммутатор анализирует кадры (фреймы) и, определив MAC-адрес хоста-отправителя, заносит его в таблицу. Впоследствии, если на один из портов коммутатора поступит кадр, предназначенный для хоста, MAC-адрес которого уже есть в таблице, то этот кадр будет передан только через порт, указанный в таблице. Если MAC-адрес хоста-получателя ещё не известен, то кадр будет продублирован на все интерфейсы. Со временем коммутатор строит полную таблицу для всех своих портов, и в результате трафик локализуется. Стоит отметить малую латентность и высокую скорость пересылки на каждом порту интерфейса.
Для временного хранения пакетов и последующей их отправки по нужному адресу коммутатор может использовать буферизацию. Буферизация может быть также использована в том случае, когда порт пункта назначения занят. Буфером называется область памяти, в которой коммутатор хранит передаваемые данные.

Буфер памяти может использовать два метода хранения и отправки пакетов — буферизация по портам и буферизация с общей памятью. При буферизации по портам, пакеты хранятся в очередях (queue), которые связаны с отдельными входными портами. Пакет передается на выходной порт только тогда, когда все пакеты, находившиеся впереди него в очереди, были успешно переданы. При этом возможна ситуация, когда один пакет задерживает всю очередь из-за занятости порта его пункта назначения. Эта задержка может происходить даже в том случае, когда остальные пакеты могут быть переданы на открытые порты их пунктов назначения.

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

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

Поскольку память буфера является общей, размер пакета ограничивается всем размером буфера, а не долей предназначенной для конкретного порта. Это означает, что крупные пакеты, могут быть переданы с меньшими потерями, что особенно важно при асимметричной коммутации, т. е. когда порт с шириной полосы пропускания 100 Мб/с должен отправлять пакеты на порт 10 Мб/с.
Коммутаторы подразделяются на управляемые и неуправляемые (наиболее простые). Более сложные коммутаторы позволяют управлять коммутацией на канальном (втором) и сетевом (третьем) уровне модели OSI. Обычно их именуют соответственно, например Layer 2 Switch или просто, сокращенно L2. Управление коммутатором может осуществляться посредством протокола Web-интерфейса, SNMP, RMON (протокол, разработанный Cisco) и т. п. Многие управляемые коммутаторы позволяют выполнять дополнительные функции: VLAN, QoS, агрегирование, зеркалирование. Сложные коммутаторы можно объединять в одно логическое устройство — стек, с целью увеличения числа портов (например, можно объединить 4 коммутатора с 24 портами и получить логический коммутатор с (4*24-4=92) портами, либо с 96-ю портами (если для стекирования используются специальные порты)).

А еще у нас есть про:

Сетевой коммутатор: 2 комментария

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

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