“Скорость FC вдвое(вчетверо) быстрее iSCSI”. Так ли это?
Давайте рассмотрим подробно.
И для начала давайте разберем что такое “скорость”.
В применении к интерфейсу передачи данных “скорость” это скорость передачи электрического сигнала в меди или оптического сигнала в оптоволокне.
Парадоксально, но факт, скорость передачи сигнала что в оптическом FC, что в медном iSCSI близка до такой степени, что мы можем разницу скорости передачи электрического сигнала на физическом уровне проигнорировать. Тем более, что существует также и “медный” FC и оптический Ethernet (например 1000Base-FX).
Таким образом на физическом уровне скорость передачи сигналов для обоих интерфейсов близка и несущественна для нашей задачи. Более того, иногда скорость сигнала в оптическом кабеле может быть меньше скорости в медном.
Где же кроется разница?
“Скоростью” принято неправильно называть “пропускную способность”, производительность интерфейса по передаче байт, то есть не “скорость потока”, а “ширину трубы”. Это прискорбная путаница в понятиях настолько широко распространена, что уже прямо воспринимается как данность.
И если скорость измеряется в метрах в секунду, то пропускная способность в байтах (литрах, килограммах) в секунду. А это несколько иной предмет, даже несмотря на то, что в “хакерском” жаргоне и закрепилось слово “метр” для “мегабайта”. Но не будем следовать этому прискорбному обычаю.
Итак, что же с пропускной способностью?
Давайте рассмотрим нашу проблему на примере аналогии.
У нас имеется точка А и точка Б. Расстояние между ними для упрощения вычислений – 60 км.
Скорость транспорта на дороге – 60 км/ч.
У нас в наличии имеется два автобуса, ПАЗик на 20 человек и Икарус на 40.
В точку А прибывают пассажиры, которых надо доставить в точку Б.
Если количество пассажиров оказывается, например, 40, то для доставки их из точки А в точку Б нужно одна поездка Икаруса или две поездки ПАЗика. То есть Икарус в данном случае оказывается вдвое эффективнее.
Однако если пассажиров в точке А всего 20 или менее, то неважно что за автобус мы используем, в обоих случаях мы перевезем пассажиров за одно и то же время.
При этом “скорость” будет в обеих случаях 60 км/ч, то есть оба автобуса потратят один и тот же час на перевозку человекобайта из точки А в точку Б.
Конечно процесс передачи данных по интерфейсу непрерывен и более похож не на автобусы, а на транспортер или эскалатор, а разница в его ширине, в том, сколько человек может встать на ступеньку: один или два.
Но и в этом случае, если производительности меньшего транспортера достаточно для перевозки пассажиропотока (пассажиры не скапливаются на посадке), то разницы в “скорости” перемещения “пассажиров”-байт между ним и более “широким” транспортером не будет. Ведь при этом, как и прежде, скорость этих транспортеров равна.
Таким образом становится очевиден парадоксальный вывод:
“Скорость” интерфейса передачи данных зависит прежде всего от приложения, с ним работающего, а вовсе не от его “пропускной способности” в гигабайтах в секунду, до тех пор, пока мы не достигаем предела производительности интерфейса.
Если приложение не обеспечивает на одном конце интерфейса количество данных, превышающее по объему 1 гигабит в секунду (и, соответственно, не потребляет их с такой скоростью), то разница для этого приложения между FC и iSCSI будет только в цене.
Примечание для экспертов: Я намеренно сейчас уклоняюсь от залезания в дебри обсуждения задержек, initiator и target queues, форматов пакетов, скорости обработки процессорами интерфейсов, “и прочая и прочая”. Цель – ухватить суть проблемы и увидеть лес за деревьями.
Создает ли ваше приложение такой траффик к системе хранения данных вы сможете и сами, просто оцените в Windows Perfmon параметр Logical Disk – Disk Reads(Writes) Bytes/sec и Disk Queue для того, чтобы понять, не возникает ли у вас “очередь” на входе на “эскалатор”.
Подробнее о измерении производительности средствами perfmon я писал ранее.
Примечания:
Цитаты:
1. “Refractive Index – все оптически прозрачные материалы имеют коэффициент преломления, равный отношению скорости света в вакууме к скорости света в мат
ериале. Для оптоволокна он равен 1,45-1,50, т.е. скорость света в ВОЛС около 200000 км/с” (тут)
2. “Скорость распространения сигнала по кабелю [Twisted Pair EIA/TIA 568] или, обратный параметр – задержка сигнала на метр длины кабеля. … Типичные величины скорости распространения сигнала – от 0,6 до 0,8 от скорости распространения света в вакууме.” (тут)
Romx
человекобайта 🙂
p.s. Хорошая статья.