Sata dom что это

Обновлено: 07.07.2024

В этой статье мы рассмотрим современные модели серверных накопителей с точки зрения производительности и оптимальных областей применения.

На данный момент в серверах в основном используются устройства хранения данных двух типов — жесткие магнитные диски (HDD, hard disk drive) и твердотельные накопители (SSD, solid-state drive). Кроме того, используются также и такие устройства, как eUSB Flash Module и SATA DOM. Рассмотрим все эти типы более подробно.

Современные жесткие магнитные диски могут использовать один из двух интерфейсов — SATA (Serial Advanced Technology Attachment) и SAS (Serial Attached SCSI). Текущая версия интерфейса SATA обеспечивает пропускную способность 6 Гбит/с. Диски с этим интерфейсом преимущественно используются в сегменте настольных персональных компьютеров, но могут применяться и в серверах. В серверном сегменте такие диски имеют скорость вращения шпинделя 7'200 об/мин. В нашем тестировании из дисков этого типа будут принимать участие модели Seagate Constellation.2 ST91000640NS (SATA 7'200, 2.5") и Seagate Constellation ES ST1000NM0011 (SATA 7'200, 3.5").

Более надежный и производительный дисковый SAS-интерфейс предназначен для серверных решений и рабочих станций. Он также имеет пропускную способность до 6 Гбит/с, но уже в режиме полного дуплекса (Full Duplex), что означает возможность одновременной передачи данных в обеих направлениях со скоростью 6 Гбит/c. Диски с этим интерфейсом имеют больший показатель MTBF (Mean Time Between Failures, среднее время наработки на отказ). Более того, интерфейс SAS, в отличие от SATA, использует более мощный набор команд с длинной очередью и двухпортовое подключение для обеспечения отказоустойчивости. Важной особенностью SAS является более адаптированное подключение дисков с интерфейсом SAS к различным бэкплэйнам, корзинам, экспандерам, RAID и HBA контроллерам, системам хранения данных и другим устройствам как по внутренним, так и по внешним портам. Стандарт SAS использует механизм проверки правильности выполнения операций чтения/записи. В настоящее время в серверах применяются SAS-диски со скоростью вращения шпинделя 7'200, 10'000 и 15'000 об/мин.

Более надежный и производительный дисковый SAS-интерфейс предназначен для серверных решений и рабочих станций. Он также имеет пропускную способность до 6 Гбит/с, но уже в режиме полного дуплекса (Full Duplex), что означает возможность одновременной передачи данных в обеих направлениях со скоростью 6 Гбит/c. Диски с этим интерфейсом имеют больший показатель MTBF (Mean Time Between Failures, среднее время наработки на отказ). Более того, интерфейс SAS, в отличие от SATA, использует другой набор команд с поддержкой большей глубины очереди запросов (64 против 32, чем больше глубина очереди, тем лучше оптимизация очередности выполнения запросов) и двухпортовое подключение для возможного обеспечения отказоустойчивости. Важной особенностью SAS является более адаптированное подключение дисков с интерфейсом SAS к различным бэкплэйнам, корзинам, экспандерам, RAID и HBA контроллерам, системам хранения данных и другим устройствам как по внутренним, так и по внешним портам. В настоящее время в серверах применяются SAS-диски со скоростью вращения шпинделя 7’200, 10’000 и 15’000 об/мин.

Скорость 7'200 об/мин. поначалу была нетипична для серверного сегмента, однако производители жестких дисков в какой-то момент решили выпускать диски со скоростью вращения 7'200 об/мин не только с интерфейсом SATA, но и с интерфейсом SAS. В своей "механической" части эти диски совершенно одинаковы, они отличаются только способом подключения. Этот шаг повысил ценовую доступность SAS-дисков и предоставил серверному сегменту диски SAS большего объема. Основная область применения таких дисков — малобюджетные рабочие станции и сервера начального уровня. Тестируемые диски этого типа — Seagate Constellation.2 ST91000640NS (SAS 7'200, 2.5") и Seagate Constellation ES.3 ST1000NM0023 (SAS 7'200, 3.5").

SAS-диски со скоростью вращения шпинделя 10'000 об/мин — хорошее решение для мощных рабочих станций и недорогих серверных решений корпоративного класса. Тестируемый диск — Seagate Savvio 10K5 ST9900805SS (SAS 10000 2.5").

SAS-диски со скоростью вращения шпинделя 15.000 об/мин — лучший выбор для серверов корпоративного сектора, центров обработки данных (ЦОД) и систем хранения данных (СХД). Тестируемый диск — Seagate Cheetah 15K7 ST3300657SS (SAS 15000 3.5").

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


При одинаковых скорости вращения шпинделя и физическом размере пластин диски SAS быстрее дисков SATA, что объясняется большей линейной плотностью данных у дисков SAS по сравнению с дисками SATA.

С другой стороны, диск SAS 7’200, 3.5” и SAS 10’000, 2.5” показывают практически одинаковые результаты. Это объясняется тем, что преимущество в скорости вращения компенсируется меньшим физическим размером пластин диска 2.5”, в результате чего при одинаковой линейной плотности данных линейная скорость головок относительно пластин примерно одинакова.


В тесте на случайное чтение, который измеряет количество операций ввода/вывода в секунду (IOPS), результаты дисков 2.5” 7’200 об/мин лучше, чем у дисков форм-фактора 3.5” той же скорости, поскольку у «маленьких» дисков время перемещения головки к нужному сектору меньше. Диски SAS здесь показывают опять более высокий результат по сравнению с дисками SATA, теперь уже за счет лучшей оптимизации очередности выполнения случайных запросов благодаря поддержке большей глубины очереди (64 у SAS против 32 у SATA). Преимущество дисков SAS 10’000 и 15’000 об/мин обеспечивается не только высокой скоростью вращения шпинделя, но и тем, что они имеют более совершенный механизм позиционирования головок с меньшим временем доступа.

На операциях случайной записи SAS диски имеют такое же преимущество перед дисками SATA, как и на операциях чтения.

Твердотельные накопители, использующие энергонезависимую память NAND-Flash, обладают в сотни раз большей скоростью чтения и записи на случайных операциях, чем жесткие диски, поскольку в твердотельных накопителях не нужно перемещать магнитную головку. Кроме того, у SSD меньше энергопотребление и отсутствует шум при работе. Но у них есть и недостатки, а именно: высокая стоимость и сравнительно с HDD относительно маленький объем. В сегменте настольных ПК такие накопители используются совместно с HDD по схеме, когда на SSD устанавливаются операционная система и самые необходимые программы, а на HDD хранятся все остальные данные. Такой подход заметно повышает скорость работы компьютера, не сильно увеличивая его стоимость. Для тестирования мы выбрали накопитель Intel 520 Series 240GB. Данный накопитель рекомендован для использования в настольных компьютерах, ноутбуках и рабочих станциях.

В серверном сегменте ситуация с SSD значительно отличается. Размещать значительные по объему массивы данных на SSD довольно дорого. Зато их с успехом можно использовать для кэширования, когда SSD-кэш используется для размещения "горячих" данных, то есть данных, обращение к которым происходит наиболее часто. Это даёт огромный прирост в производительности дисковой подсистемы сервера, особенно на операциях случайного доступа. Тестируемый серверный SSD-накопитель — Intel DC S3700 100GB.


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


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

Накопители eUSB, как и SSD-накопители, тоже используют для хранения данных Flash-модули, но они устанавливаются непосредственно в USB-разъем на серверной системной плате. Такие накопители имеют ряд функциональных и других ограничений, обусловленных как раз использованием в качестве интерфейса порта USB. C такого накопителя не работает загрузка полноценной версии ОС Windows, а скорость интерфейса (480 Мбит/с) значительно ниже, чем у SATA (6 Гбит/с). Наиболее оптимальной областью их применения в серверах является использование в качестве загрузчика операционной системы небольшого размера, например, гипервизора VMware ESXi. В тонких клиентах такие накопители используются для хранения образа операционной системы Windows Embedded. Тестируемый накопитель — eUSB Transcend 4GB.

Накопители SATA DOM более функциональны, чем eUSB-накопители. Подключаются они так же, как и SSD-накопители, к разъему SATA, но при этом "выглядят" более похожими ни USB-накопитель, нежели на жесткий диск. Устанавливаются они непосредственно в разъемы SATA на материнской плате компьютера или сервера. Удобно, когда такой разъем имеет встроенное питание, иначе его приходится обеспечивать через дополнительный кабель. Учитывая, что эти накопители подключаются к стандартным SATA разъёмам, BIOS материнской платы работает с ними как с обычными накопителями HDD или SSD, что делает возможным установку на SATA DOM полноценной загрузочной версии операционной системы Windows. В сервере это освобождает место в корзине дисковой подсистемы, позволяя использовать его для диска RAID-массива. К тому же накопитель SATA DOM находится внутри серверной платформы, что исключает случайное изъятие диска с установленной ОС. Применять такие накопители можно в десктопном и серверном сегментах, а также в тонких клиентах, устанавливая любую операционную систему или гипервизор для виртуализации. Тестируемый накопитель — SATA DOM Innodisk 8 GB.


Результаты тестирования накопителей eUSB-Flash и SATA DOM соответствуют производительности их интерфейсов. По спецификации USB 2.0 регламентирована скорость 25 — 480 Мбит/с, а для SATA 3.0 — 6'000 Мбит/с, что уже склоняет выбор в пользу устройств с интерфейсом SATA. На графике мы видим превосходство в 2,5 раза при операциях последовательного чтении и записи SATA DOM Innodisk над eUSB-Flash.


В тесте операций случайного чтения ситуация не меняется, SATA DOM также лидирует. Случайная запись у обоих накопителей одинаково на очень низком уровне, но для этих операций они и не предназначены.

Данные производительности лучших представителей каждого типа накопителей из нашего тестирования приведены на следующих диаграммах. Явным лидером себя показывает твердотельный накопитель от Intel.



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

Измерения для HDD и SSD проводились на одном и том же контроллере Intel RS25DB080. Тестирование выполнялось при помощи программы IOmeter со следующими параметрами: кэш-память контроллера и дисков отключена, глубина очереди команд — 256, параметр Strip Size — 256KB, размер блока данных — 256KB для последовательных операций и 4KB для случайных операций. Скорость последовательных операций измерялась в MB/s, случайных — в IOPS (количество операций ввода/вывода в секунду).

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

С другой стороны, ситуация несколько сложнее, чем может показаться на первый взгляд. Надо заметить, что даже при еще больших ценах флэш-накопители все равно применялись во многих областях хозяйства, имея преимущества по потреблению энергии, компактности и меньшей восприимчивости к внешним условиям. Кроме того, далеко не всем требуются гигабайты емкости. Существуют операционные системы, специально ориентированные на работу «в тесноте»: Windows CE, QNX, из Linux, в конце-концов можно сделать нечто не обладающее сверхуниверсальностью, но решающее многие задачи, при этом требующее для размещения мегабайт сто-двести. А уровень цен на флэш-память уже достиг той границы, когда подобный накопитель можно использовать не только в дорогостоящих специализированных компьютерах, но и домашних или офисных машинах. Рассмотрим, по крайней мере, три сферы применения.

Терминальные решения

Рассказывать, что это такое и где применяется, не буду — достаточно почитать статьи раздела «Коммуникации». Операционная система «тонких клиентов» обычно во флэше и сидит — этот вариант оказывается самым удобным для данной области. Впрочем, применяемые в промышленности варианты решения «на коленке» обычно не реализуешь. Простой пример: K-Systems Termin основан на стандартной платформе VIA EPIA, но несколько модернизированной — вместо обычной микросхемы BIOS установлена флэшка на 32 Мбайта, где сидит и BIOS, и Windows CE, под управлением которой все и работает. А что делать тем, кто решил самостоятельно заняться превращением устаревших компьютеров в клиенты, благо большой мощности для этого не требуется? Оставлять винчестеры? Не всегда разумно — их объем избыточен для терминальной ОС. Да и старые винчестеры уже вполне могут дышать на ладан, а приобретать новые высокоскоростные и емкие лишь для того, чтобы один раз в день загрузить ОС… Неоправданно. А вот если бы иметь возможность установить флэш-накопитель небольшого объема не на саму плату, а с использованием стандартного интерфейса (IDE, например), это позволило бы создавать вполне работоспособные терминалы в «кустарных условиях».

Мультимедиа-комбайн

Идея переделки старого компьютера в «бытовой» проигрыватель не нова, и некоторые из вариантов ее реализации нами уже обсуждались. Однако большинство их рассчитано на загрузку с CD или другого накопителя, поскольку использовать винчестер очень не хочется — шумит, энергию потребляет, место занимает (последнее в случае самодельного корпуса может оказаться серьезным фактором). Небольшой флэш-накопитель с IDE-интерфейсом легко решил бы подобные проблемы.

Интернет-приставка

Иногда хочется просто побродить по сети в тишине. Но, при этом, хотелось сохранить и возможность работы с «тяжелой ОС» и оставить под рукой большой объем дискового пространства. Что ж — это тоже возможно. IDE-флэш небольшого объема, с живущей на нем специально обработанной Windows или Linux (полнофункциональный вариант для работы с Интернет — с установкой всех необходимых приложений, разумеется — занимает порядка 150 Мбайт), мультизагрузчик на нем и внешний винчестер с интерфейсом SerialATA (возможно и применение USB 2.0 или FireWire как только на них управление загрузчики ОС научатся передавать). Нужно побродить по сети? Отключаем внешний винчестер, загружаемся с флэшки и наслаждаемся тишиной. Нужно поработать с «тежеловесными» приложениями? Передаем загрузку на внешний винчестер (не забыв его подключить :)), и нас уже ничего не ограничивает.

Disk On Module

Есть спрос — есть и предложение. Причем вариантов даже несколько, но основаны они все на одном и том же факте — совместимость интерфейса карт CompactFlash со стандартным IDE. Со временем придется придумать что-то новое, однако пока Parallel ATA сдаваться не собирается, так что совместимость будет продолжать служить нам еще не один год. В результате, можно просто использовать CF-карту при помощи переходника, причем даже самодельного. Ну а для сокращения числа соединений и увеличения компактности готового изделия существуют специальные модули, устанавливаемые непосредственно на системную плату — прямо на гребенку интерфейса.

Поскольку у IDE-разъема есть два варианта, существуют и два варианта DOM: рассчитанные на 44-контактный «ноутбучный» разъем и на обычный с 40 контактами. Внутри отличий нет — разное число контактов в этих разъемах связано лишь с тем, что первый разъем позволяет и питание через себя же подводить, в то время как второй уже заставляет воспользоваться внешним кабелем.


С DOM мы будем знакомиться на примере Transcend TS128MDOM40V: 40-контактного модуля объемом 128 Мбайт. Эта линейка включает в себя модели от 16 до 256 Мбайт объема, похожие на них 44-контактные накопители серии 44V могут иметь и объем 512 Мбайт (впрочем, этот перекос наверняка скоро будет исправлен). Собственно, для тех целей, на которые рассчитаны DOM, вполне достаточно и четверти гигабайта максимум.

Внутри корпуса накопителей обеих линеек находится ничто иное, как «начинка» уже знакомых нам по старым тестированиям карт Transcend CF Ultra 25X. Сейчас доступны уже и 45Х карты, с которыми мы познакомимся в ближайшее время, однако для DOM сверхскоростные контроллеры не нужны — как мы уже убедились, в режиме TrueATA все контроллеры работают примерно одинаково и существенно медленнее, чем в родном режиме.


На корпусе устройства имеются два джампера. Первый из них скорее рудиментарный — Master/Slave. Почему рудиментарный? Устройство рассчитано на подключение непосредственно к разъему на плате в одиночестве, а не к кабелю, так что вряд ли кто станет возиться для того, чтобы повесить его на шлейф вместе с другим накопителем. А вот вторая перемычка может принести немалую пользу: с ее помощью включается защита от записи на модуль. Самое оно если вы делаете какое-либо «отчуждаемое» устройство: после настройки во многих случаях полезно запретить возможность изменения чего-либо пользователем.

Скорость работы

Как работают карты CompactFlash с стандартными IDE-контроллерами мы уже знаем, так что рекордов я и в этот раз не ждал. C другой стороны, если фиксировать только рекордные достижения, так 90% тестирований можно просто отменить. В общем, прогнал я HD Tach на DOM. Долго думал — с чем бы еще результаты сравнить. Вспомнил, что 25Х CF я уже тестировал (причем того же объема) на внешнем картоводе, добавил на диаграммы и эти результаты. Ну и прогнал тест на винчестере. Прямо тут результаты сравнивать тяжело, поскольку мой «старичок» все-таки имеет интерфейс Wide SCSI, но у нас вообще не сравнение однотипных устройств, так что для этих целей вполне подойдет. Конфигурацию компьютера я уже неоднократно давал, теперь просто ограничусь ссылкой на инфо в конференции — там все есть. С одним лишь исключением: результаты для CF получены на картоводе DataFab MDCF-FW, а не на используемом сейчас более быстром накопителе.

В тесте на время доступа флэш был заранее поставлен в невыгодные условия, причем и DOM, и карта: картовод от DataFab, как мы уже установили, сам по себе добавляет немалую толику к этому параметру для карт, да и конкурировать им пришлось со SCSI-винчестером на 10000 RPM (пусть и стареньким, но по времени доступа легко справляющимся и с достаточно современными IDE-моделями). Но это не помогло — в любом случае время доступа к полупроводниковым накопителям намного меньше, нежели к любому накопителю, использующему механику.

Тест на скорость чтения… Да — с винчестерами конкурировать пока никак. Но, во многом, из-за ограничений интерфейса, а не из-за особенностей самих микросхем флэш-памяти: тот же контроллер и те же микросхемы в других условиях легко продемонстрировали в два раза более высокую скорость. Впрочем, до винчестеров все равно далековато, ну так и контроллер-то не новый ;) На самом деле уже сейчас можно получить 6-6,5 мегабайт в секунду. Да — это еще не десятки у винчестеров, но для многих приложений более чем достаточно. Ну а для того, чтобы один раз загрузить ОС вполне хватит и той скорости, которая достигнута уже сейчас ;)

Скорость записи на винчестер не тестировалась — сравнил лишь DOM и карту памяти. Картина та же, что и в предыдущем случае: карту очень сильно ограничивает интерфейс.

Собственно, сейчас эту проблему уже начали решать — в CF II обещают поддержку DMA-режимов и прочее, так что если установить в DOM подобный контроллер, он должен показать куда лучший результат. Хотя я бы лично на месте создателей пошел бы немного другим путем: скоростные контроллеры USB-флэш уже вовсю применяются, внутренние разъемы USB 2.0 сейчас скорее правило, чем исключение, загружаться с USB-HDD современные материнские платы уже могут. Чем не вариант для замены 40-контактных модулей (в более консервативных промышленных компьютерах все равно используются 44-контактные)?

Итого

Небольшой объем и скорость работы современных DOM-модулей пока не позволяют им конкурировать с жесткими дисками в роли универсального средства хранения данных, однако в некоторых областях они уже вполне могут бросить вызов громыхающим и греющимся мастодонтам-винчестерам :) К трем вышеуказанным областям можно добавить и четвертую — хранение индексов базы данных на серверах. Если флэш-память продолжит дешеветь, то вскоре с подобных модулей можно будет загружать не только терминальную ОС в офисах, но и вполне нормальную — со всем набором приложений. Но если этот набор лишь медиа-плееры да набор для пользованья Сетью, это возможно уже сейчас. В общем, думайте — иногда это полезно ;)


В прошлой части цикла «Введение в SSD» мы рассказали про историю появления дисков. Вторая часть расскажет про интерфейсы взаимодействия с накопителями.

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

Интерфейс — совокупность средств, методов и правил взаимодействия между элементами системы.

Физическая реализация интерфейса влияет на следующие параметры:

  • пропускная способность канала связи;
  • максимальное количество одновременно подключенных устройств;
  • количество возникающих ошибок.

Параллельные и последовательные порты

По способу обмена данными порты ввода-вывода делятся на два типа:

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


Small Computer Systems Interface (SCSI) появился в далеком 1978 году и был изначально разработан, чтобы объединять устройства различного профиля в единую систему. Спецификация SCSI-1 предусматривала подключение до 8 устройств (вместе с контроллером), таких как:

  • сканеры;
  • ленточные накопители (стримеры);
  • оптические приводы;
  • дисковые накопители и прочие устройства.
Изначально SCSI имел название Shugart Associates System Interface (SASI), но стандартизирующий комитет не одобрил бы название в честь компании и после дня мозгового штурма появилось название Small Computer Systems Interface (SCSI). «Отец» SCSI, Ларри Баучер (Larry Boucher) подразумевал, что аббревиатура будет произноситься как «sexy», но Дал Аллан (Dal Allan) прочитал «sсuzzy» («скази»). Впоследствии произношение «скази» прочно закрепилось за этим стандартом.

В терминологии SCSI подключаемые устройства делятся на два типа:

Используемая топология «общая шина» накладывает ряд ограничений:

  • на концах шины необходимы специальные устройства — терминаторы;
  • пропускная способность шины делится между всеми устройствами;
  • максимальное количество одновременно подключенных устройств ограничено.


Устройства на шине идентифицируются по уникальному номеру, называемому SCSI Target ID. Каждый SCSI-юнит в системе представлен минимум одним логическим устройством, адресация которого происходит по уникальному в пределах физического устройства номеру Logical Unit Number (LUN).


Команды в SCSI отправляются в виде блоков описания команды (Command Descriptor Block, CDB), состоящих из кода операции и параметров команды. В стандарте описано более 200 команд, разделенных в четыре категории:

  • Mandatory — должны поддерживаться устройством;
  • Optional — могут быть реализованы;
  • Vendor-specific — используются конкретным производителем;
  • Obsolete — устаревшие команды.
  • TEST UNIT READY — проверка готовности устройства;
  • REQUEST SENSE — запрашивает код ошибки предыдущей команды;
  • INQUIRY — запрос основных характеристик устройства.

Дальнейшее усовершенствование SCSI (спецификации SCSI-2 и Ultra SCSI) расширило список используемых команд и увеличило количество подключаемых устройств до 16-ти, а скорость обмена данными по шине до 640 МБ/c. Так как SCSI — параллельный интерфейс, повышение частоты обмена данными было сопряжено с уменьшением максимальной длины кабеля и приводило к неудобству в использовании.

Начиная со стандарта Ultra-3 SCSI появилась поддержка «горячего подключения» — подключение устройств при включенном питании.

Первым известным SSD диском с интерфейсом SCSI можно считать M-Systems FFD-350, выпущенный в 1995 году. Диск имел высокую стоимость и не имел широкой распространенности.

В настоящее время параллельный SCSI не является популярным интерфейсом подключения дисков, но набор команд до сих пор активно используется в интерфейсах USB и SAS.

ATA / PATA


Интерфейс ATA (Advanced Technology Attachment), так же известный как PATA (Parallel ATA) был разработан компанией Western Digital в 1986 году. Маркетинговое название стандарта IDE (англ. Integrated Drive Electronics — «электроника, встроенная в привод») подчеркивало важное нововведение: контроллер привода был встроен в привод, а не на отдельной плате расширения.

Решение разместить контроллер внутри привода решило сразу несколько проблем. Во-первых, уменьшилось расстояние от накопителя до контроллера, что положительным образом повлияло на характеристики накопителя. Во-вторых, встроенный контроллер был «заточен» только под определенный тип привода и, соответственно, был дешевле.


ATA, как и SCSI, использует параллельный способ ввода-вывода, что отражается на используемых кабелях. Для подключения дисков с использованием интерфейса IDE необходимы 40-жильные кабели, также именуемые шлейфами. В более поздних спецификациях используются 80-жильные шлейфы: более половины из которых — заземления для уменьшения интерференции на высоких частотах.

На шлейфе ATA присутствует от двух до четырех разъемов, один из которых подключается в материнскую плату, а остальные — в накопители. При подключении двух устройств одним шлейфом, одно из них должно быть сконфигурировано как Master, а второе — как Slave. Третье устройство может быть подключено исключительно в режиме «только чтение».



Положение перемычки задает роль конкретного устройства. Термины Master и Slave по отношению к устройствам не совсем корректны, так как относительно контроллера все подключенные устройства — Slaves.

Особенным нововведением в ATA-3 считается появление Self-Monitoring, Analysis and Reporting Technology (S.M.A.R.T.). Пять компаний (IBM, Seagate, Quantum, Conner и Western Digital) объединили усилия и стандартизировали технологию оценки состояния накопителей.

Поддержка твердотельных накопителей появилась с четвертой версии стандарта, выпущенной в 1998 году. Эта версия стандарта обеспечивала скорость обмена данными до 33.3 МБ/с.

Стандарт выдвигает жесткие требования к шлейфам ATA:

  • шлейф обязательно должен быть плоским;
  • максимальная длина шлейфа 18 дюймов (45.7 сантиметров).


Стандарт Serial ATA (SATA) был представлен 7 января 2003 года и решал проблемы своего предшественника следующими изменениями:

  • параллельный порт заменен последовательным;
  • широкий 80-жильный шлейф заменен 7-жильным;
  • топология «общая шина» заменена на подключение «точка-точка».

Шестнадцать сигнальных линий для передачи данных в ATA были заменены на две витые пары: одна для передачи, вторая для приема. Коннекторы SATA спроектированы для большей устойчивости к множественным переподключениям, а спецификация SATA 1.0 сделала возможным «горячее подключение» (Hot Plug).

Некоторые пины на дисках короче, чем все остальные. Это сделано для поддержки «горячей замены» (Hot Swap). В процессе замены устройство «теряет» и «находит» линии в заранее определенном порядке.

Чуть более, чем через год, в апреле 2004-го, вышла вторая версия спецификации SATA. Помимо ускорения до 3 Гбит/с в SATA 2.0 ввели технологию Native Command Queuing (NCQ). Устройства с поддержкой NCQ способны самостоятельно организовывать порядок выполнения поступивших команд для достижения максимальной производительности.



Последующие три года SATA Working Group работала над улучшением существующей спецификации и в версии 2.6 появились компактные коннекторы Slimline и micro SATA (uSATA). Эти коннекторы являются уменьшенной копией оригинального коннектора SATA и разработаны для оптических приводов и маленьких дисков в ноутбуках.

Несмотря на то, что пропускной способности второго поколения SATA хватало для жестких дисков, твердотельные накопители требовали большего. В мае 2009 года вышла третья версия спецификации SATA с увеличенной до 6 Гбит/с пропускной способностью.



Особое внимание твердотельным накопителям уделили в редакции SATA 3.1. Появился коннектор Mini-SATA (mSATA), предназначенный для подключения твердотельных накопителей в ноутбуках. В отличие от Slimline и uSATA новый коннектор был похож на PCIe Mini, хотя и не был электрически совместим с PCIe. Помимо нового коннектора SATA 3.1 мог похвастаться возможностью ставить команды TRIM в очередь с командами чтения и записи.

Команда TRIM уведомляет твердотельный накопитель о блоках данных, которые не несут полезной нагрузки. До SATA 3.1 выполнение этой команды приводило к сбросу кэшей и приостановке операций ввода-вывода с последующим выполнением команды TRIM. Такой подход ухудшал производительность диска при операциях удаления.

Спецификация SATA не успевала за бурным ростом скорости доступа к твердотельным накопителям, что привело к появлению в 2013 году компромисса под названием SATA Express в стандарте SATA 3.2. Вместо того, чтобы снова удвоить пропускную способность SATA, разработчики задействовали широко распространенную шину PCIe, чья скорость превышает 6 Гбит/с. Диски с поддержкой SATA Express приобрели собственный форм-фактор под названием M.2.


«Конкурирующий» с ATA стандарт SCSI тоже не стоял на месте и всего через год после появления Serial ATA, в 2004, переродился в последовательный интерфейс. Имя новому интерфейсу — Serial Attached SCSI (SAS).

Несмотря на то, что SAS унаследовал набор команд SCSI, изменения были значительные:

  • последовательный интерфейс;
  • 29-ти жильный кабель с питанием;
  • подключение «точка-точка»

Максимальное количество одновременно подключенных устройств в SAS-домене по спецификации превышает 16 тысяч, а вместо SCSI ID для адресации используется идентификатор World-Wide Name (WWN).

WWN — уникальный идентификатор длиной 16 байт, аналог MAC-адреса для SAS-устройств.



Несмотря на схожесть разъемов SAS и SATA, эти стандарты не являются полностью совместимыми. Тем не менее, SATA-диск может быть подключен в SAS-коннектор, но не наоборот. Совместимость между SATA-дисками и SAS-доменом обеспечивается при помощи протокола SATA Tunneling Protocol (STP).

Первая версия стандарта SAS-1 имеет пропускную способность 3 Гбит/с, а самая современная, SAS-4, улучшила этот показатель в 7 раз: 22,5 Гбит/с.


Peripheral Component Interconnect Express (PCI Express, PCIe) — последовательный интерфейс для передачи данных, появившийся в 2002 году. Разработка была начата компанией Intel, а впоследствии передана специальной организации — PCI Special Interest Group.

Последовательный интерфейс PCIe не был исключением и стал логическим продолжением параллельного PCI, который предназначен для подключения карт расширения.

PCI Express значительно отличается от SATA и SAS. Интерфейс PCIe имеет переменное количество линий. Количество линий равно степеням двойки и колеблется в диапазоне от 1 до 16.

Термин «линия» в PCIe обозначает не конкретную сигнальную линию, а отдельный полнодуплексный канал связи, состоящий из следующих сигнальных линий:

  • прием+ и прием-;
  • передача+ и передача-;
  • четыре жилы заземления.


«Аппетиты» твердотельных накопителей растут очень быстро. И SATA, и SAS не успевают увеличивать свою пропускную способность, чтобы «угнаться» за SSD, что привело к появлению SSD-дисков с подключением по PCIe.

Хотя PCIe Add-In карты прикручиваются винтом, PCIe поддерживает «горячую замену». Короткие пины PRSNT (англ. present — присутствовать) позволяют удостовериться, что карта полностью установлена в слот.

Твердотельные накопители, подключаемые по PCIe регламентируются отдельным стандартом Non-Volatile Memory Host Controller Interface Specification и воплощены в множестве форм-факторов, но о них мы расскажем в следующей части.

Удаленные накопители

При создании больших хранилищ данных появилась потребность в протоколах, позволяющих подключить накопители, расположенные вне сервера. Первым решением в этой области был Internet SCSI (iSCSI), разработанный компаниями IBM и Cisco в 1998 году.

Идея протокола iSCSI проста: команды SCSI «оборачиваются» в пакеты TCP/IP и передаются в сеть. Несмотря на удаленное подключение, для клиентов создается иллюзия, что накопитель подключен локально. Сеть хранения данных (Storage Area Network, SAN), основанная на iSCSI, может быть построена на существующей сетевой инфраструктуре. Использование iSCSI значительно снижает затраты на организацию SAN.

У iSCSI существует «премиальный» вариант — Fibre Channel Protocol (FCP). SAN с использованием FCP строится на выделенных волоконно-оптических линиях связи. Такой подход требует дополнительного оптического сетевого оборудования, но отличается стабильностью и высокой пропускной способностью.

Существует множество протоколов для отправки команд SCSI по компьютерным сетям. Тем не менее, есть только один стандарт, решающий противоположную задачу и позволяющий отправлять IP-пакеты по шине SCSI — IP-over-SCSI.

Большинство протоколов для организации SAN используют набор команд SCSI для управления накопителями, но есть и исключения, например, простой ATA over Ethernet (AoE). Протокол AoE отправляет ATA-команды в Ethernet-пакетах, но в системе накопители отображаются как SCSI.

С появлением накопителей NVM Express протоколы iSCSI и FCP перестали удовлетворять быстро растущим требованиям твердотельных накопителей. Появилось два решения:

  • вынос шины PCI Express за пределы сервера;
  • создание протокола NVMe over Fabrics.

Протокол NVMe over Fabrics стал хорошей альтернативой iSCSI и FCP. В NVMe-oF используются волоконно-оптическая линии связи и набор команд NVM Express.


Стандарты iSCSI и NVMe-oF решают задачу подключения удаленных дисков как локальные, а компания Intel пошла другой дорогой и максимально приблизила локальный диск к процессору. Выбор пал на DIMM-слоты, в которые подключается оперативная память. Максимальная пропускная способность канала DDR4 составляет 25 ГБ/с, что значительно превышает скорость шины PCIe. Так появился твердотельный накопитель Intel® Optane™ DC Persistent Memory.

Для подключения накопителя в DIMM слоты был изобретен протокол DDR-T, физически и электрически совместимый с DDR4, но требующий специального контроллера, который видит разницу между планкой памяти и накопителем. Скорость доступа к накопителю меньше, чем к оперативной памяти, но больше, чем к NVMe.

Протокол DDR-T доступен только с процессорами Intel® поколения Cascade Lake или новее.

Заключение

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

Читайте также: