scsi driver что это
Живучий SCSI
Раз уж мы начали рассматривать историю хранения данных — познакомимся поближе с одной из технологий, которую мы в прошлой статье упомянули только вскользь. Удивительно в этой технологии то, что, появившись в самом начале 80-х, она с разными изменениями дожила до современности, и не собирается уступать позиции. Речь пойдет о SCSI.
«Отцами-основателями» SCSI можно считать компанию Shugart Associates, стандарт из которого родился впоследствии SCSI изначально носил слегка неблагозвучное для русского уха название SASI (Shugart Associates System Interface). Компания эта, ныне не так широко известная, в конце 70-х практически доминировала на рынке дисководов, и именно эта компания предложила популярный формат 5¼ дюймов. Контроллеры SASI обычно были размером в половину диска и подключались 50-пиновым плоским кабелем, который впоследствии стал коннектором SCSI-1.
За переименованием стандарта стоял ANSI, к 1982 году разработавший стандарт этого интерфейса. Дело в том, что политика ANSI не разрешает использовать названия компаний названии стандартов, поэтому SASI был переименован в «Small Computer System Interface», что и дало знакомую нам аббревиатуру. «Отец» стандарта Ларри Бушер (Larry Boucher) хотел, чтоб эта аббревиатура читалась как «сэкси», но прочтение от Дал Аллана (Dal Allan) «сказзи» прижилось больше.
Несмотря на то, что в основном SCSI ассоциируется с жесткими дисками, этот стандарт позволяет создавать практически любые устройства, подключаемые по данному интерфейсу. Со SCSI выпускалась масса устройств: жесткие диски, магнитооптические накопители, CD и DVD приводы, стриммеры, принтеры и даже сканеры (LPT порт был слишком медленным для работы цветных сканеров высокого разрешения).
Несмотря на то, что в большинстве «простых компьютеров» SCSI как интерфейс не встречается, набор команд этого стандарта широко используется. Например, набор команд SCSI программно реализован в едином стеке Windows для поддержки устройств хранения данных. Так же, практически стандартом стала реализация команд SCSI поверх IDA/ATA и SATA интерфейсов, используемых для работы с CD/DVD и BlueRay, названная ATAPI. Так же эта система команд, реализованная поверх USB, стала частью стандарта Mass Storage Device, что позволяет использовать любые внешние USB хранилища данных.
Исторически, первым интерфейсом стал Parallel SCSI, использующий коннекторы на 50, 68 и 80 пин, расположенные на плоском кабеле, часто экранированном. Этот стандарт развивался на протяжении многих лет, пройдя путь от 40 МБит/с в SCSI-I до 5120 МБит/с в Ultra-640 SCSI. Несмотря на этот прогресс, данный интерфейс уже признан устаревшим, и заменяется более продвинутым решением в виде Serial Attached SCSI (SAS), но про SAS — немного позже. Пока давайте посмотрим, какие еще интерфейсы кабелей использовались в SCSI.
Реализация протокола SCSI по оптическим волоконным каналам, получившая название FCP (Fibre Channel Protocol или FC), позволяет добиваться высоких скоростей и использовать соединительные провода большой длины (до десятков километров с использованием одномодовой оптики). Из-за высокой стоимости используется в больших сетях обработки данных. Сегодня FC используется только для так называемого «фронт-энда», то есть для подключения компьютеров (в основном серверов) к системам хранения данных.
iSCSI, как понятно из первой буквы в названии — служит для обработки SCSI комманд через Интернет, но чаще всего используются все-таки в локальных IP-сетях компаний. Так как этот стандарт, в отличие от FCP, не требует дорогостоящего оборудования, он часто выступает в роли более дешевой замены «оптики». Основные два сценария применения данного стандарта — консолидация хранения данных (данные вместо разрозненных сетевых хранилищ собираются в одном месте, чаще всего в датацентрах) и защита от сбоев (iSCSI позволяет прозрачно для потребителей перемещать дисковые массивы по глобальной сети). iSCSI сильно зависит от физического и канального уровней сетевой модели, определяющих скорость и максимальные задержки в среде. Так, iSCSI на 1Gb/s Ethernet позволял передать всего лишь до 100МБ/с. Гораздо лучше дела обстоят в сетях 10GE, но технологии 10GE только сейчас отвоевывают себе значительные сегменты в корпоративных сетях.
SCSI RDMA Protocol (часто сокращаемый до remote SCSI) позволяет одному компьютеру подключиться к ресурсам другого, используя протокол удаленного прямого доступа к памяти. Так как RDMA отличается низкой латентностью и высокой пропускной способностью — наибольшее применение он получил в кластерах.
USB Attached SCSI — тоже понятно из названия. Реализует подключение SCSI через USB-интерфейс. В теории способен обеспечивать скорость до 3200 МБит/с.
Serial Attached SCSI — наиболее распространенный сейчас вид интерфейса, вытесняющий старый параллельный вариант. Обеспечивает скорость до 6 Гбит/с (вариант на 12 Гбит/с находится в активной разработке и будет выпущен летом 2013 года). Этот протокол является «ближайшим родственником» используемого сейчас повсеместно SATA, более того — SATA устройства можно подключать к SAS контроллерам. В обратную сторону, правда, это не работает, и даже разъем SAS сконструирован так, чтоб не дать это сделать (разве что сборщик системы будет ну очень сильным).
В отличие от старого параллельного SCSI, SAS системы обладают следующими достоинствами:
— меньшее количество сигнальных линий, поэтому более компактные провода;
— использование соединения точка-точка, в отличии от P-SCSI, использовавшего шину, из-за чего одновременно с контроллером могло работать только одно устройство;
— SAS не нуждается в специальной насадке-терминаторе на кабель;
— новый протокол не страдает от проблемы не одновременного прохождения сигнала по разным проводам в шине;
— разительно выросло количество одновременно поддерживаемых устройств, старые SCSI поддерживали от 8 до 32, новые — более 16384;
— SAS дает более высокую пропускную способность, а что особенно хорошо — эта пропускная способность эффективно используется между каждым инициатором и целевым устройством, в то время как на параллельном SCSI пропускная способность шины делилась поровну между всеми устройствами;
— совместимость с устройствами SATA
Неразрывно с историей хранения данных, SCSI и SAS связанна и история компании LSI. Будучи одной из первых в мире компанией, внедривших устройства ASIC (Application Specific Integrated Circuit) — специализированные микросхемы, направленные на выполнение выделенных задач, LSI не могла пройти мимо настолько бурно развивающейся области. Для LSI история SCSI началась с приобретения в 1998 году подразделения Symbios, в свое время бывшей частью NCR, AT&T и Hyundai. Это подразделение было основано в NCR в 1971 году и на момент приобретения было производителем SCSI-адаптеров. Спектр устройств, выпущенных LSI, начинается с микросхемы LSI53C825AE, позволявшей пропустить до 20MB/s данных и соответствовала стандарту Fast Wide SCSI. В процессе развития была разработана так называемая архитектура Fusion-MPT (Message Passing Technology), позволяющая максимально «облегчить» драйвер устройства в операционной системе и ускорить процесс общения между компонентами подсистемы ввода-вывода. Эта технология дожила и до сегодняшних устройств SAS-3 (12Gbit/s), более чем на три порядка превосходящих по скорости первые чипы SCSI. Кроме контроллеров, для SCSI LSI также производила и другие микросхемы, такие как хост-адаптеры и конвертеры (расширители) SCSI.
Нельзя не упомянуть и еще один интересный факт. Совсем недавно компания Seagate анонсировала выпуск двухмиллиардного жесткого диска. Жесткий диск – это очень высокотехнологичное устройство, содержащее большое количество различных компонентов. LSI выпускала и продолжает выпускать довольно много микросхем для жестких дисков. Традиционно это был «Read Channel», сейчас для этого есть так называемые SOCs (System on Chip).
Еще одним крупным игроком на рынке SCSI была компания Adaptec. В отличие от LSI, всегда плотно работавшей с OEM-каналом, компания Adaptec в основном ориентировалась на готовые продукты, и поэтому более известна в мире IT под собственным именем. Около двух лет назад компания была приобретена производителем полупроводниковых устройств PMC и сейчас продукция компании носит название Adaptec by PMC. Компания также успешно пережила все поколения SCSI и теперь выпускает устройства для SAS.
История Parallel SCSI была долгой и бурной, но, в конце концов, закончилась. Уже более двух лет адаптеры P-SCSI не выпускаются, уступив технологии SAS, уже насчитывающей 2 поколения.
Надеемся, что наше знакомство с миром SCSI устройств было вам интересно, и в следующей статье мы продолжим его, рассмотрев SAS более подробно и в деталях.
SCSI — быстрый и необычный интерфейс
Из этой статьи вы узнаете самое необходимое о SCSI что это такое, где и зачем используется, сколько поколений вышло с момента появления и как реализуется на практике.
Прочитайте — вдруг, SCSI пригодится и вам?
Что означает SCSI?
Это набор заглавных букв от фразы Small Computer Systems Interface. На русском языке он звучит как «скази», а расшифровка — системный интерфейс для малых компьютеров.
Данный стандарт создан для объединения компьютерных комплектующих различного назначения на одной шине: винчестеров, дисководов, сканеров, принтеров и пр. Зачем? Чтобы обеспечить им одинаково высокую скорость работы в качестве единого, но в то же время делимого механизма. Вдобавок благодаря SCSI можно использовать один девайс на нескольких компах сразу.
Другие возможности
Помимо простого подключения железа, технология позволяет обмениваться данными и определяет набор команд, который получил широкое распространение. К примеру, в Windows он применяется в едином стеке для устройств хранения информации.
Чаще всего применяются такие команды как запись, чтение, проверка устройств, запрос их характеристик, установка для них новых параметров или возврат предыдущих и т. д.
Также бывает реализация команд поверх проводов и контроллеров других стандартов. Если речь идет о IDE, ATA или SATA, она называется ATAPI — ATA Packet Interface; если сверху протокола USB — Mass Storage device. Таким образом, вы можете, к примеру, подключить выносной жесткий диск через обычный USB и для него будет использоваться имеющийся в операционке драйвер SCSI.
Где востребован SCSI?
На серверах и рабочих станциях высокой производительности. На серверах, относящихся к низкой ценовой категории, и тем более в домашних условиях, этот интерфейс встречается крайне редко; в таких случаях оптимальным вариантом является привычный для нас SATA.
Но естественно никто вам не запрещает ставить такие скази устройства в свой домашний компьютер. Или например в домашний сервер.
Технология на практике
Все устройства, которые вы хотите подсоединить к одной шине, работают через специальный адаптер, который, в свою очередь, вставляется в свободный слот на материнской плате. Контроллер имеет собственный биос, посредством которого вы можете управлять девайсами. Операционная система распознает и связывается с ними, как обычно, с помощью драйверов.
Наличие у SCSI адаптера означает то, что с центрального процессора снимается часть нагрузки, следовательно, железо работает быстрее.
Так как данная технология является последовательной, то и девайсы следует подключать соответственно. Причем каждый должен иметь уникальный ID, и все они — одинаковый интерфейс.
История появления
Я хочу вам поведать историю создания интерфейса не из своего занудства, а потому что через нее вы сможете больше понять о предмете нашего разговора.
Итак, в 1979 году изобретатель 8-дюймовых дискет и производитель магнитных накопителей Алан Шугарт поставил перед собой задачу сделать для своей продукции универсальный интерфейс, который не терял бы своих позиций с учетом развития технологий.
И ему удалось ее решить путем создания стандарта, поддерживающей логическую и практическую (головка, цилиндр, сектор) адресацию. Она основывалась на протоколах 8-битной параллельной отправки информации по пути, включающему в себя несколько линий.
Новшество получило не очень благозвучное для русскоязычного населения название SASI (Shugart Associates Systems Interface), то есть связующий системный интерфейс, именованный в честь отца-основателя.
Через 2 года он поделился своей разработкой с комитетом ANSI (American National Standarts Institute — Национальный Институт Стандартизации США) — то же самое, что и ГОСТ в нашей стране. На базе этого изобретения специалисты ANSI создали SCSI.
Поколения интерфейса
Примечательно, что технология создана почти полстолетия назад, а говорим мы о ней до сих пор. Все потому, что она постоянно преображалась. С момента появления вышло 10 версий. Не буду забивать вам голову подробностями о каждой из них. Расскажу только, что было изначально, и что мы имеем теперь.
SCSI-1
Ultra-640 SCSI
Serial Attached SCSI (SAS)
Электрика
Есть 3 способа передачи информации относительно электрики:
Нагрузка на интерфейс распределяется при помощи терминаторов, расположенных с обоих концов шины. Согласно электрическим характеристикам они разделяются на:
Чаще всего используется 2-я модель.
Конкурентоспособность SCSI
Стандарт SCSI прошел испытание временем и пользуется популярностью по сей день. Почему?
Все же на долю таких накопителей приходится всего около 30 % современного рынка, так как есть у SCSI и недостатки:
Для чего нужен интерфейс SCSI
Прежде чем переходить к тестированию, наверное, стоит остановиться и поговорить немного подробнее об интерфейсе SCSI. Он довольно редко встречается в домашних компьютерах, хотя и обладает рядом достоинств. Главным из них является возможность одновременного подключения и работы до 15 устройств. По мере своего развития интерфейс SCSI претерпел ряд изменений. Если первый был 8-разрядным, то затем произошел переход на 16-разрядный. Теоретически в особом случае максимальная длина кабеля может составлять до 25 м. По скорости передачи данных также наблюдался плавный прогресс от 20 Мбайт/с в UltraSCSI к 40 Мбайт в Ultra WideSCSI и к 80 Мбайт в Ultra2SCSI. Самый новый интерфейс Ultra160/m SCSI обеспечивает передачу данных со скоростью до 160 Мбайт/c. В случае использования дифференциального подключения в низковольтном варианте LVD (Low Voltage Differential) допустимая длина кабеля составляет 15 м. Причиной редкого использования интерфейса SCSI дома является, как правило, достаточность интерфейса IDE с его 4 потенциальными возможными устройствами, а также такой серьезный фактор, как значительно более высокая цена SCSI-устройств.
Что такое Fibre Channel
SCSI-контроллер
Условия тестирования
Тестирование жесткого диска Quantum Atlas 10K объемом 9,1 Гбайт происходило в следующей конфигурации:
Сам тестируемый диск размечен одним разделом FAT32.
В качестве операционной системы использовалась Windows 98. Тестирование проводилось тестовым пакетом Ziff Davis WinBench 99 ver. 1.1.
Результаты тестирования
Полученные результаты по тесту WinBench 99:
Scsi driver что это
Теоретически возможен выпуск устройства любого типа на шине SCSI.
После стандартизации в 1986 году SCSI начал широко применяться в компьютерах Sun Microsystems. В компьютерах, совместимых с IBM PC, SCSI не пользуется такой популярностью в связи со своей сложностью и сравнительно высокой стоимостью и применяется преимущественно в серверах.
SCSI широко применяется на серверах, высокопроизводительных рабочих станциях; RAID-массивы на серверах часто строятся на жёстких дисках со SCSI-интерфейсом (однако, в серверах нижнего ценового диапазона всё чаще применяются RAID-массивы на основе SATA). В настоящее время устройства на шине SAS постепенно вытесняют устаревшую шину SCSI.
Система команд SCSI на уровне программного обеспечения употребляется в единых стеках поддержки устройств хранения данных в ряде операционных систем, таких, как Microsoft Windows.
Существует реализация системы команд SCSI поверх оборудования (контроллеров и кабелей) IDE/ATA/SATA, называемая ATAPI — ATA Packet Interface. Все используемые в компьютерной технике подключаемые по IDE/ATA/SATA приводы CD/DVD/Blu-Ray используют эту технологию.
Содержание
Стандарты
Для передачи команд протокола SCSI по IP-сетям используется сетевой протокол iSCSI, утверждённый IETF как стандартный в 2003 году.
Параллельный интерфейс SCSI
Параллельный интерфейс SCSI является исторически первым и самым известным. Существует три стандарта электрической организации параллельного интерфейса SCSI:
SE (англ. single-ended ) — асимметричный SCSI, для передачи каждого сигнала используется отдельный проводник.
LVD (англ. low-voltage-differential ) — интерфейс дифференциальной шины низкого напряжения, сигналы положительной и отрицательной полярности идут по разным физическим проводам — витой паре. На один сигнал приходится по одной витой паре проводников. Используемое напряжение при передаче сигналов ±1,8 В.
HVD (англ. high-voltage-differential ) — интерфейс дифференциальной шины высокого напряжения, отличается от LVD повышенным напряжением и специальными приемопередатчиками.
Первый стандарт SCSI имеет 50-контактный неэкранированный разъем для внутрисистемных соединений и аналогичный экранированный разъем типа Centronics (Alternative 2) для внешних подключений. Передача сигналов осуществляется 50 контактным кабелем типа — A-50 на 8 разрядной (битной) шине. Но надо иметь в виду, что до появления SCSI, имевшего 50-контактный разъём, и даже одновременно с ним был более старый SCSI, имевший 25-контактный разъём, почти такой, как разъём LPT (например, в теперь уже почти вышедшем из употребления сканере Mustek 1200 FS есть одновременно три разъёма: OPTION на 26 контактов, SCSI на 25 контактов, SCSI на 50 контактов).
В стандарте SCSI-2 для 8 битной шины предусматривался кабель типа A, который как и в SCSI-1 поддерживал 50-контактными разъемами типа D с уменьшенным шагом выводов (Alternative 1). Разъемы типа Centronics (Alternative 2) в SCSI-2 построены 8 и 16 битной шине. Передача информации осуществляется по 68-контактным кабелям типа — A-68 и P-68(Wide). Для 32 битной версии шины был предусмотрен тип кабеля B, который должен был параллельно подключаться одновременно с кабелем A в одно устройство. Однако кабель B не получил широкого признания и из стандарта SCSI-3 исключен.
В стандарте SCSI-3 кабели A-68 и P-68 поддерживались экранированными, либо неэкранированными разъемами типа D. Кабели в SCSI-3 снабжены фиксаторами-защелками, а не проволочными кольцами, как разъемы Centronics. Начиная с этой версии SCSI в массивах накопителей используется 80-контактный разъем, называемый Alternative 4. Накопители с таким разъемом поддерживают «горячее» подключение устройств, то есть устройства SCSI можно подключать и отключать при включенном питании.
Основные реализации параллельного интерфейса SCSI (в хронологическом порядке):
Наименование | Разрядность шины | Частота шины | Пропускная способность | Максимальная длина кабеля | Максимальное количество устройств |
---|---|---|---|---|---|
SCSI | 8 бит | 5 МГц | 5 МБайт/сек | 6 м (25 м с HVD) | 8 |
Fast SCSI | 8 бит | 10 МГц | 10 МБайт/сек | 3 м (25 м с HVD) | 8 |
Wide SCSI | 16 бит | 10 МГц | 20 МБайт/сек | 3 м (25 м с HVD) | 16 |
Ultra SCSI | 8 бит | 20 МГц | 20 МБайт/сек | 1,5—3 м (25 м с HVD) | 4—8 |
Ultra Wide SCSI | 16 бит | 20 МГц | 40 МБайт/сек | 1,5—3 м (25 м с HVD) | 4—16 |
Ultra2 SCSI | 8 бит | 40 МГц | 40 МБайт/сек | 12 м (25 м с HVD) | 8 |
Ultra2 Wide SCSI | 16 бит | 40 МГц | 80 МБайт/сек | 12 м (25 м с HVD) | 16 |
Ultra3 SCSI | 16 бит | 40 МГц DDR | 160 МБайт/сек | 12 м | 16 |
Ultra-320 SCSI | 16 бит | 80 МГц DDR | 320 МБайт/сек | 12 м | 16 |
Ultra-640 SCSI | 16 бит | 160 МГц DDR | 640 МБайт/сек | 10 м | 16 |
SCSI-1
Стандартизован ANSI в 1986 г.
SCSI-2
Этот стандарт был предложен в 1989 году и существовал в двух вариантах — Fast SCSI и Wide SCSI.
Fast SCSI характеризуется удвоенной пропускной способностью (до 10 МБайт/сек).
Wide SCSI в дополнение к этому имеет удвоенную разрядность шины (16 бит), что позволяет достичь скорости передачи до 20 МБ/сек.
При этом максимальная длина кабеля ограничивалась тремя метрами.
Также в этом стандарте была предусмотрена 32-х битная версия Wide SCSI, которая позволяла использовать два шестнадцатибитных кабеля на одной шине, но эта версия не получила распространения.
SCSI-3
Также известен под названием Ultra SCSI.
Пропускная способность шины составила 20 МБайт/сек для восьмибитной шины и 40 МБайт/сек — для шестнадцатибитной. Максимальная длина кабеля так и осталась равной трём метрам.
Устройства, отвечающие этому стандарту, известны своей чувствительностью к качеству элементов системы (кабель, терминаторы).
Ultra-2 SCSI
Использует LVDS. Максимальная длина кабеля — 12 метров, пропускная способность — до 80 МБайт/сек.
Ultra-3 SCSI
Также известен под названием Ultra-160 SCSI.
Имеет удвоенную пропускную способность (по сравнению с Ultra-2 SCSI), которая составила 160 МБайт/сек. Увеличения пропускной способности удалось достичь за счёт одновременного использования фронтов и срезов импульсов.
В этот стандарт было добавлено использование CRC (Cyclic Redundancy Check), предупреждение ошибок.
Ultra-320 SCSI
Также известен под названием Fast Ultra-320.
Развитие интерфейса Ultra-3 с удвоенной скоростью передачи данных (до 320 МБайт/сек).
Ultra-640 SCSI
Предложен в начале 2003 года.
Удвоенная пропускная способность (640 МБайт/сек). В связи с резким сокращением максимальной длины кабеля неудобен для использования с более чем двумя устройствами, поэтому не получил широкого распространения.
Протокол команд SCSI
В терминологии SCSI взаимодействие идёт между инициатором и целевым устройством. Инициатор посылает команду целевому устройству, которое затем отправляет ответ инициатору.
Команды SCSI посылаются в виде блоков описания команды (англ. Command Descriptor Block, CDB ). Длина каждого блока может составлять 6, 10, 12, 16 или 32 байта. В последних версиях SCSI блок может иметь переменную длину. Блок состоит из однобайтового кода команды и параметров команды.
После получения команды целевое устройство возвращает значение 00h в случае успешного получения, 02h в случае ошибки или 08h в случае, если устройство занято. В случае, если устройство вернуло ошибку, инициатор обычно посылает команду запроса состояния. Устройство возвращает Key Code Qualifier (KCQ).
Все команды SCSI делятся на четыре категории: N (non-data), W (запись данных от инициатора целевым устройством), R (чтение данных) и B (двусторонний обмен данными). Всего существует порядка 60 различных команд SCSI, из которых наиболее часто используются:
Каждое устройство на SCSI-шине имеет как минимум один номер логического устройства (LUN — англ. Logical Unit Number ). В некоторых более сложных случаях одно физическое устройство может представляться набором LUN.
Для возможности работы нескольких независимых целевых устройств SCSI, в UNIX-подобных операционных системах применяется адресация из произвольно назначаемого драйвером идентификатора целевого устройства (SCSI target id) и номера LUN, сконфигурированного на нём.
Для устройств типа приводов CD/DVD/Blu-Ray, в том числе их разновидностей с возможностью записи, разработан MMC — Multimedia Command Set. Некоторые приводы, например, производства Asus и Pioneer, используют конкурирующий стандарт Mt. Fuji, отличающийся от MMC в некоторых нюансах.
Терминирование
Параллельные шины SCSI всегда должны терминироваться с обеих сторон для обеспечения нормального функционирования. Подавляющее большинство контроллеров и многие устройства имеют возможность автотерминирования — использования встроенного терминатора.