Методы коммутации

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

  • коммутация с промежуточным хранением (store-and-forward);
  • коммутация без буферизации (cut-through).

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

Рис. 6.4 Методы коммутации
Рис. 6.4 Методы коммутации

Метод коммутации с промежуточным хранением (store-and-forward) исторически появился первым. Он характеризуется тем, что коммутатор, прежде чем передать кадр, полностью копирует его в буфер и производит проверку на наличие ошибок. Если кадр содержит ошибки (не совпадает контрольная сумма, или кадр меньше 64 байт или больше 1518 байт), то он отбрасывается. Если кадр не содержит ошибок, то коммутатор находит МАС-адрес приемника в своей таблице коммутации и определяет выходной порт. Затем, если не определены никакие фильтры, коммутатор передает кадр через соответствующий порт устройству назначения.

Несмотря на то, что этот способ передачи связан с задержками (чем больше размер кадра, тем больше времени требуется на его прием и проверку на наличие ошибок), он обладает двумя существенными преимуществами:

  • коммутатор может быть оснащен портами, поддерживающими разные технологии и скорости передачи, например, 10/100 Мбит/с, 1000 Мбит/с и 10 Гбит/с;
  • коммутатор может проверять целостность кадра, благодаря чему поврежденные кадры не будут передаваться в соответствующие сегменты.

Коммутация без буферизации (cut-through) была реализована в первом коммутаторе Ethernet, разработанном фирмой Kalpana в 1990 г. При работе в этом режиме теоретически коммутатор копирует в буфер только МАС-адрес назначения (первые 6 байт после преамбулы) и сразу начинает передавать кадр, не дожидаясь его полного приема. Однако современные коммутаторы не всегда реализуют коммутацию без буферизации в классическом варианте. В зависимости от реализации коммутатор дожидается приема в буфер определенного количества байтов кадра и, если на порте не определены никакие фильтры, принимает решение о его передаче. Так как при работе в режиме cut-through коммутатор не дожидается приема всего кадра, то он не выполняет проверку кадров на наличие ошибок. Проверка кадра на наличие ошибок возлагается на принимающий узел. Однако, современная сетевая инфраструктура, включающая оборудование и кабельную систему позволяет свести вероятность возникновения ошибочных кадров к минимуму.

Основным преимуществом коммутации без буферизации по сравнению с коммутацией с промежуточным хранением является уменьшение времени передачи кадров большого размера. Например, если приложение использует Jumbo-фреймы (кадры размером до 10 000 байт), то коммутатор, работающий в режиме cut-through, будет передавать данные на несколько микро или миллисекунд (в зависимости от скорости портов коммутатора) быстрее коммутатора, использующего режим store-and-forward.

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

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

 

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

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

один + восемнадцать =