Применение концепции IP-storage для создания распределенных систем хранения данных высокой степени готовности

Применение концепции IP-storage для создания распределенных систем хранения данных высокой

степени готовности.

Фадеев А.Ю.

Московский физико-технический институт

1. Введение

Несмотря на прогресс, достигнутый в последние годы в решении целого ряда задач, связанных с распределенными системами хранения данных, проблема создания высокопроизводительной и в то же время высоконадежной распределенной системы хранения данных продолжает оставаться сложной. Предложенные до настоящего времени методы решения, хоть и снимают некоторые аспекты данной проблемы, имеют ряд существенных недостатков, ограничивающих их область применения. Рассматриваемый в настоящей статье метод основан на использовании концепции IP-Storage, технологии RAID и журналируемой файловой системы. Высокая эффективность и низкая стоимость данного решения позволяет рассматривать этот подход в качестве эффективного средства для построения распределенных систем хранения данных.

1.1. Проблема надежности

Как известно, не бывает абсолютно надежных систем. Так же ни для кого не секрет, что час простоя сервера, обслуживающего несколько тысяч пользователей, может исчисляться сотнями тысяч долларов. Согласно исследованию, проведенному International Data Corp. (IDC) среди компаний из числа Fortune 1000, в 1998 году простои обходились в среднем в 78 000 долларов в час, что составляет свыше 1 млн. долларов в год [Рубер 1998]. С ростом объемов хранимой и обрабатываемой информации стоимость простоя только возрастает. Это заставляет искать методы обеспечивающие снижение вероятности сбоя и уменьшению времени восстановления после сбоя. Высоконадежные системы принято разделять на несколько классов:

High Availability

- степень готовности - 99,9%

- простой не превышает 5 часов в год. Fault Resiliency

- степень готовности - 99,99%

- простой не превышает 1 часа в год Fault Tolerance

- степень готовности - 99,999%

- простой не превышает 5 минут в год Continuous Availability

- степень готовности - выше 99,999%

- простой не допускается

- производительность при сбое не падает Disaster Tolerance

- система территориально распределена

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

сервера обслуживающего банковские операции и корпоративного WWW - сервера стоят разных денег. Отсюда и разный подход к решению проблемы надежности - банковский сервер должен быть настолько надежен, насколько это позволяет нынешнее развитие отказоустойчивых систем и то, что система будет на порядок-два дороже традиционной ни кого не шокирует. Какие методы используются для решения этой задачи? Во-первых, для Internet серверов используются различные технологии балансировки нагрузки, которые кроме собственно равномерного распределения нагрузки по серверам, обеспечивают некоторую отказоустойчивость. Балансировка нагрузки обеспечивается либо средствами DNS [Bestavros & Mehrotra 2001], либо специальными средствами на самих серверах [Aversa & Bestavros 1999]. Недостатками такого подхода являются узкая возможная область применения и невысокая обеспечиваемая надежность. Еще одним традиционным решением являются кластеры. Классический кластер, состоящий из нескольких узлов, имеющих общую дисковую систему, обеспечивает степень готовности 99,9%. Среди недостатков можно отметить ограниченную распределенность системы в случае использования традиционных протоколов SAN (Fibre Channel). Это не позволяет строить Disaster Tolerance системы, востребованные крупными компаниями - события 11 сентября 2001 года в США показали, что при проектировании современных систем хранения данных следует учитывать даже такие маловероятные события, как террористические акты.

1.2. Современные технологии распределенного хранения данных

В последние годы рост Интернет и расширяющееся применение Интранет привело к возникновению проблемы высоконадежного хранения данных и обеспечения удаленного высокоскоростного доступа к ним. Причем, масштабы Интранет сетей достигли таких размеров, что зачастую такие сети уже не отличаются по своим характеристикам от Интернет. Таким образом, проблемы хранения информации и обеспечения доступа к ней в Интернет и Интранет сетях приобрели одинаковый характер и требуют единого подхода к их решению. В то же время существующие технологии построения распределенных сетей хранения данных предлагают различный по своей сути подход - в Интранет это технологии использующие архитектуру SAN (Storage Area Network), а Интернет - NAS (Network Attached Storage).

1.3. Классическая SAN

Представляя собой дальнейшее развитие модели DAS (Direct Attached Storage) SAN предлагает доступ к файлам на уровне блочного устройства. Если для DAS характерны ограниченная масштабируемость, сложность управления и повышенная опасность возникновения узких мест на серверах и в локальных сетях, то классическая SAN обеспечивает резервные пути между клиентами и устройством хранения, а также удаленное зеркалирование на случай сбоев и резервное копирование, не снижающее производительность работы серверов приложений и базовой сети. Кроме того, в SAN системах можно консолидировать хранилища, упростив таким образом управление ими. Централизованное управление объединенным пулом хранилищ зачастую более эффективно, чем отдельными напрямую подключенными подсистемами хранения. По мере необходимости можно легко выделять место в объединенном пуле, что упрощает администрирование и позволяет оптимизировать хранение данных. Основное преимущество такой модели хранения - максимальная производительность и эффективность использования ресурсов путем их объединения и централизованного управления данными и ресурсами хранения.

Стандартом де-факто для SAN стала технология Fibre Channel [Jürgens 1995], обеспечивающая достижение производительности порядка 200 Мбайт/сек и позволяющая

строить распределенные хранилища данных масштаба предприятия. Используя принцип инкапсуляции протокола SCSI в Fibre Channel, данная технология нашла широкое применение благодаря большому количеству инсталлированных SCSI устройств. Отчеты IDC [Borovick et al. 2001] и ITcentrix [ITcentrix 1999] показывали радужную картину роста объемов продаж оборудования SAN. К сожалению, Fibre Channel не лишен недостатков. В первую очередь это ограничения, накладываемые на максимальный размер сети на базе Fibre Channel (10 км), ограничивающие область применения SAN границами

кампусной инфраструктуры, не позволяя строить более распределенные сети SAN, даже масштаба города, не говоря уже о трансконтинентальных сетях. Кроме того, ожидаемого удешевления оборудования Fibre Channel так и не произошло и в настоящий момент данная технология не обеспечивает требуемого соотношения цена/качество.

1.4. Классический NAS

Использование IP для организации доступа к данным не ново. На протяжении многих лет для доступа к хранимым данным применялись такие протоколы, как CIFS (Common Internet File System) и NFS (Network File System). Основной особенностью, характерной для этих протоколов, является представление доступа к файлам на уровне файловой системы. Файловый сервер или NAS-устройство (различие между ними весьма условно и состоит в том, что NAS-устройство обычно представляет собой специализированный компьютер со встроенной операционной системой) предоставляет клиентам доступ к файлам. Достоинствами такого решения является отсутствие ограничений на размеры системы, хорошее отношение цена/качество и отличная поддержка со стороны вендоров. Недостатком является собственно основная особенность - представление доступа на уровне файловой системы.

1.5. NAS vs. SAN

Обе архитектуры имеют свои достоинства и недостатки, но общим недостатком можно считать невозможность использования ни одной из них для решения проблемы распределенного хранения данных в современных условиях, когда с одной стороны масштабы Интранет сетей сопоставимы с Интернет, характеристики каналов и протоколы, применяемые в них, так же соответствуют применяемым в Интернет, а с другой стороны, требования, предъявляемые к характеристикам систем, остаются характерными для Интранет (характер приложений, требования к производительности и тд.). Для NAS архитектур характерно предоставление доступа к ресурсам на уровне файловой системы и использование протокола TCP/IP. Для SAN архитектур характерно предоставление доступа к ресурсам на уровне устройства. Оба этих подхода имеют свои плюсы и минусы. Одним из минусов представления ресурса на уровне файловой системы является тот факт, что такие аспекты как обеспечение надежности хранения данных, возможности по восстановлению после сбоев, управление доступом к файлам обеспечивается самой файловой системой. Как будет показано в дальнейшем, ни одна из существующих распределенных файловых систем не удовлетворяет современным требованиям ни по функциональности в плане надежности хранения данных, ни по возможностям в плане масштабирования производительности. Предоставление доступа на уровне устройства лишено многих проблем свойственных распределенным файловым системам, в частности позволяет строить классические RAID системы, использовать любые файловые системы (например, любую из существующих журналируемых файловых систем). Главной проблемой было то, что SAN системы не были ориентированы на использование протокола TCP/IP и требовали строить специализированные сети хранения данных, которые мало того, что стоят существенно дороже по сравнению с обычными сетями передачи данных общего назначения, так и обладают рядом существенных ограничений (в

частности на размеры сети). До недавнего времени, несмотря на все отмеченные недостатки, развивался первый подход, подразумевающий эволюционное развитие распределенных файловых систем добавляющий все больше и больше функций, выполняемых файловой системой, таких как поддержка распределенного хранения данных на нескольких узлах - либо с использованием модели RAID [Patterson et al. 1987] -- такие как SWIFT [Long et al. 1994], Zebra [Hartman 1995], xFS [Wang & Anderson 1993], либо используя оригинальные разработки - например системы с регулируемой избыточностью [Тормасов и др. 2001]. Но широкого распространения ни одна из таких систем не получили. Либо они оказывались недостаточно надежны, в виду того, что представляли собой просто глубокую модернизацию NFS [Marzullo & Schmuck 1987], либо оказывались слишком громоздки и сложны в эксплуатации [Satyanarayanan et al. 1990]. Второй подход начал развиваться не так давно, и пока представлен небольшим числом проектов (NBD [Breuer et al. 2000], Fiber over IP, Fiver backbone, iSCSI [Palekar & Russel 2001]), но iSCSI уже получил поддержку индустрии и скоро будет стандартизирован, а значит, найдет широкое применение на практике.

1.6. Концепция IP-Storage

Для решения проблемы построения распределенных систем хранения данных предлагается использовать концепцию IP-Storage. Данная концепция включает:

- Использование протокола IP для организации доступа к данным;

- Неограниченная распределенность системы;

- Виртуализация хранилищ данных;

- Представление доступа на уровне блочных устройств;

- Централизация управления;

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

- iSCSI предложенный Internet Engineering Task Force;

- Fibre Channel over IP, предложенный IETF и ANSI;

- Fibre Channel Backbone, предложенный ANSI.

Проекты Fibre Channel over IP и Fibre Channel Backbone, предусматривают инкапсуляцию фреймов Fibre Channel в IP. Стандарты на эти протоколы еще не приняты, но производители уже предлагают оборудование. Область применения - связь удаленных SAN на Fibre Channel через IP. Обязательное наличие сети SAN на Fibre Channel является недостатком, которого iSCSI лишен.

Спецификация интерфейса Internet Small Computer Systems Interface (iSCSI) в настоящее время разрабатывается iSCSI Group - подкомитетом Internet Engineering Task Force (IETF). В группу входят Intel, IBM, EMC Corp., Hewlett-Packard Co. и Cisco Systems Inc. iSCSI Group надеется выпустить проект стандарта версии 1.0 уже в этом году, чтобы IETF утвердила спецификацию к первому кварталу 2003 года.

Технология iSCSI [Palekar & Russel 2001] использует принцип инкапсуляции протокола SCSI в IP. В качестве основного физического интерфейса предлагается использовать Gigabit Ethernet, а впоследствии осуществить переход на 10 Gigabit Ethernet. Таким образом, по соотношению цена/качество сети iSCSI существенно выигрывают у традиционных SAN на базе Fibre Channel. Индустрия хорошо приняла iSCSI, что немаловажно для продвижения этого стандарта. Несмотря на то, что до сих пор не утвержден окончательный вариант протокола, о поддержке iSCSI уже объявили такие известные производители, как Cisco (маршрутизатор Cisco SN 5420 Storage Router), Intel (Intel PRO/1000 T IP Storage Adapter), IBM (дисковые массивы семейства Total Storage), Adaptec и др. Причем для ускорения выхода готовых продуктов были совершены

значительные покупки: Cisco приобрела в начале 2001 года компанию NuSpeed Internet Systems за 500 млн. долларов, компания Adaptec приобрела Platys Communications за 150 млн. долларов. В настоящий момент кроме перечисленных компаний, продукты, использующие iSCSI, предлагают фирмы Emulex Corp. и Alacritehc Inc.

2. Модель

Для решения проблемы высокопроизводительного и в тоже время отказоустойчивого доступа к информации предлагается использовать подход, основанный на концепции IP-storage и применении RAID. Для увеличения эффективности RAID, предлагается использовать журналируемую файловую систему. Клиент может выбирать схему RAID, файловую систему исходя из своих представлений о требуемых характеристиках системы.

Одним из предположений модели является независимость каналов от клиента к каждому IP-storage. Данные каналы характеризуются такими параметрами, как битовая скорость Vb, межкадровая задержка T, максимальный размер кадра M , показатель качества п,

определяемый как отношение полного размера кадра к полезной нагрузке пакета. Для сети Fast Ethernet эти параметры имеют значения: Vb =100 Мбит/с=104857600 бит/с, T =0,96

мкс, M =1518 байт= 12144 бит, п =1518/1500=1,012 .

Для описания такой системы мы будем исходить из модели IP-storage и модели RAID. Так как наиболее распространенными на данный момент являются RAID-0, RAID-1 и RAID-5, они и будут рассмотрены.

2.1. Модель IP-storage

Можно было бы начать наше исследование с классической модели жесткого диска [Stodolsky et al. 1993], вводя такие понятия, как access delay, seek delay, rotation delay, heads-switch delay и др. Но дело в том, что современный жесткий диск представляет собой слишком сложную конструкцию, логическое представление которого в терминах числа головок, числа цилиндров и др. имеет мало общего с реальной конструкцией диска. Сегодня диски имеют буферы, размеры которых измеряются несколькими мегабайтами. Все это приводит к тому, что выводы, которые можно было бы извлечь из модели такого диска, будь она даже построена, были бы весьма сомнительны, так как слишком многое зависит сейчас от эффективности буферизации и предсказаний, осуществляемых контроллером диска.

В нашей модели предполагается, что IP-storage обладает такими характеристиками, как время доступа (что включает в себя задержки в контроллере, время поиска и позиционирования и любые другие необходимые задержки) и время передачи информации.

Таким образом, время необходимое на чтение блока информации с такого объекта равно

t = t +1 ,

a t

где t - время доступа, t - время передачи блока.

tt определяется как максимум из времени передачи данных с физического носителя по

внутренней шине (IDE, SCSI) и времени передачи по шине, связывающей IP-storage с контроллером. В нашем случае (и это будет показано в следующем разделе, где будет рассматриваться прототип системы) tt будет полностью определяться второй

компонентой. Случай, когда tt будет определяться первой компонентой, не

рассматривается в данной работе, поскольку в таком случае задача вырождается в случай

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

В случае с сетью типа Ethernet, время передачи блока данных по сети можно определить как

t = £ t V '

где S - размер передаваемого блока, а V - скорость, на которой он передается. В сети Ethernet, пакеты передаются не строго один за другим, а через интервал, равный в случае Fast Ethernet 0,96 мкс. Это обусловлено моделью доступа к разделяемой среде и необходимо для работы механизма определения коллизий. Как известно, кадры в сети Fast Ethernet передаются с битовой скоростью 100 Мбит/сек, но эффективная битовая скорость ниже, из-за конечных размеров пакетов (максимум 1518 байт вместе с заголовком и завершителем Ethernet). Ее можно определить так 1

V

V + tTM

b

где T - минимальная задержка между кадрами Ethernet, M - максимальный размер кадра, Vb - битовая скорость.

При выбранных для Fast Ethernet значений T и M , при передаче данных кадрами в 500 байт, получим эффективную битовую скорость в 50 Мбит/сек. Именно поэтому приложения, требовательные к пропускной способности, передают данные кадрами максимального размера. Таким образом, для tполучим

t = S

t

1

V +VM

b

Ту

\

Вспомнив, что здесь у нас S - это биты на уровне кадров Ethernet, запишем, С \

tt =YnS

1

V

+

Ту

M

где

Y - коэффициент эффективности протоколов передачи данных, учитывающий overhead IP, транспортных протоколов (TCP или UDP), вышележащих протоколов (например, iSCSI), определяемый как отношение полной переданной информации к полезной информации. Заметим, что, вообще говоря, у зависит от параметра MTU

(Maximum Transfer Unit) в данной сети. Для сетей Ethernet, Fast Ethernet MTU=1500, для других сетей MTU будет меньше или больше, таким образом, у не

является полностью независимым от сети параметром.

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

УП

1

V

+

Т

M

t

+ a,

Таким образом, мы получили формулу, позволяющую вычислить производительность IP-storage, зная две ключевые характеристики: t - время доступа и у - коэффициент

эффективности. В данной модели накопителя считается, что сеть полнодуплексная, таким образом, различий между записью на накопитель информации и чтении с него информации нет. Единственно возможное отличие - параметр t для записи и чтения

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

сети и не накладывает своих ограничений. Но именно это предположение мы и ввели в

) &

самом начале. Заметив, что величина п \у + T/m зависит только от характеристик

V/ b %

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

/а

эффективной канальной скоростью).

с \

имеет размерность скорости передачи информации и по смыслу является

а =п

1

+

/

M

Для сети Fast Ethernet, а = 9,84 • 10 9 c/бит. «КПД» Fast Ethernet оказывается равным а Vb « 0,97

2.2. Модель RAID-0

Рассмотрим теперь в рамках нашей модели IP-storage модель массива RAID-0. Пусть в нашем массиве N дисков, тогда мы можем записать ожидаемые характеристики чтения и записи для такого массива.

Так как чтение и запись в таком массиве ведется параллельно на все диски массива, и на каждый диск записывается SN бит, мы можем записать

tt =^а t = ta Ум-

V =

N

уа + Nta

где а = п

1

л

V + T/M

У

единственно заметив, что ? может различаться для чтения и записи.

2.3. Модель RAID-1

Модель КАГО-1 характерна тем, что чтение в такой схеме также ведется параллельно со всех дисков, более того, за счет оптимизации очередности обращений к дискам массива можно добиться более высокой производительности. Запись данных ведется на один диск, на дублирующий диск записываются те же данные, но это не приводит к росту производительности. Таким образом, для чтения,

tt =уа

S,

N

t = &а S/N ,

N

V

t

-, где а =п

A+TM

V/ ь

уа + ц^ у^

где ц - коэффициент эффективности алгоритма распределения запросов, чем меньше ц тем эффективней чтение.

Скорость на запись равна скорости записи на одиночный носитель 1

V=

w

t

уа + a'

где а = п

X+tM л

V/ ь

r

2.4. Модель RAID-5

В схеме КАГО-5 чтение также ведется со всех дисков массива, соответственно скорость чтения определяется аналогично КАГО-0

N

V=

r

t

уа + N

С записью дело обстоит сложнее. При каждой операции записи, выполняется операция read-modify-write для распределенной parity массива. Parity вычисляется так

pnew = dnew  dold  pold

Для записываемого блока данных размером S, размер parity будет

Это означает необходимость выполнить дополнительно две операции чтения (старые dold данные и старую parity pold ) и одну дополнительную операцию для записи новой parity

pnew. Таким образом, вместо одной операции записи выполняется две операции чтения и

две операции записи, таким образом, мы получим для t

t

S

tar + уа —

N

+

чтение старой информации

S

S

taw + уа —

N

запись новой

+

+

tar + уа

N2

чтение старой parity

t = 2

tar + taw

+ уа£

+

N +1'

tar + уа

S

N 2

запись новой

N

отсюда скорость записи

N

2

Vw =

уа

N +1

N

+ N

tar + taw

S

где а = п

V

+

T

M

Как видим, запись - слабое место RAID-5. 2.5. Анализ модели

Исследования модели проводилось на прототипе системы. Использовалась реализация iSCSI для Linux [Palekar et al. 2001]. Для измерения производительности использовался адаптированный вариант теста Skippy [Talagala et al. 2000]. При исследовании одиночного IP-storage были определены параметры модели у =1,75, tar =0,027 с и taw =0,0025 с. На

рис.1 приведены графики зависимости скорости записи на массивы с одинаковой эффективной емкостью (два диска) RAID-0 (N=2), RAID-1 (N=4) и RAID-5 (N=3) при данных параметрах модели.

16

14

12

« 10 m

IL 8

з о

RAID-0 RAID-1 RAID-5

200

400 600 800

Block size, kbytes

1000

1200

Рис.1. Зависимость скорости записи V w для RAID-0, RAID-1 и RAID-5 от размера блока. у =1,75, tar =0,027 с. и taw =0,0025 с.

Как видим, RAID-5 обеспечивает наихудшую скорость записи, особенно сильно это выражено для блоков небольших размеров (менее 200 кбайт). При больших блоках отставание в скорости от RAID-1 (фактически - от скорости одиночного IP-storage) не столь велико, если не вспоминать о том, что задействовано три диска. При дальнейшем увеличении числа дисков в RAID-5 его производительность растет. При N=4 она сравнивается с RAID-1. При больших значениях N становится выгоднее (с точки зрения производительности и стоимости) использовать RAID-5, правда скорость записи небольших блоков все равно остается низкой. Кроме того, проводилось сравнительное тестирование iSCSI, NBD и NFS. Результаты [Фадеев 2002] позволяют утверждать, что iSCSI достаточно эффективный протокол для реализации IP-storage.

3. Заключение

На модельной системе было продемонстрировано создание распределенной системы хранения данных с использованием TCP/IP по технологии RAID. Применение протокола iSCSI позволило создать RAID систему без ограничений классических протоколов (SCSI, Fiber Channel) на распределенность системы и другим свойственных

6

4

2

0

0

классическим технологиям SAN недостатков. Применение технологии RAID позволило решить проблемы, возникающие в классических NAS системах. В частности значительно упростилась процедура восстановления после сбоев за счет применения механизма восстановления на ходу и журналируемой файловой системы. Благодаря сочетанию высокой эффективности и низкой стоимости, предложенный метод может найти применение в коммерческих системах. Фактически, используя преимущества моделей SAN и NAS, данный подход может существенно изменить представления о том, как должны быть организованы распределенные системы хранения данных в наши дни.

СПИСОК ЛИТЕРАТУРЫ

Aversa L., Bestavros A., (1999), Load Balancing a Cluster of Web Servers using Distributed Packet Rewriting, Tech. Rep. 1999-001, Boston University, Computer Science Department, http://www.cs.bu.edu/techreports/1999-001-dpr-cluster-load-balancing.pdf Bestavros A., Mehrotra S., (2001), DNS-based Internet Client Clustering and Characterization, Tech. Rep. 2001-012, Boston University, Computer Science Department, http://www.cs.bu.edu/techreports/2001-012-dns-clustering.ps.Z Borovick L., Gray R., Sheppard E., Strauss P., Turner V., (2001), Reweaving SAN Fabrics: Worldwide Open Systems SAN Interconnect Fabric Forecast and Analysis, 2001-2005, Rep. 25016, IDC, http://www.gii.co.jp/english/id7922_reweaving_san.html Breuer P.T., Lopez A.M., Ares A.G., (2000), The Network Block Device, Linux Journal, №73,

http://www2.linuxjournal.com/lj-issues/issue73/3778.html Hartman J.H., (1995), The Zebra Striped Network File System, Tech. Rep. CSD-95-867, University of California Berkeley, Computer Science Division, ftp://sunsite.berkeley.edu/pub/techreps/CSD-95-867.html

ITcentrix (1999), Storage Networks: On the Road to Virtual Consolidation, ITcentrix,

http://www.itcentrix.com/Press/1999/pr991004.htm Jurgens C., (1995), Fibre Channel: A Connection to the Future. IEEE Computer, 28(8), August 1995, pages 88-90

Long D.D.E., Montague B.R., Cabrera L., (1994), SWIFT/RAID: A Distributed RAID System, Tech. Rep. UCSC-CRL-94-06, University of California at Santa Cruz, ftp://ftp.cse.ucsc.edu/pub/tr/ucsc-crl-94-06.ps.Z Marzullo K., Schmuck F.B., (1987), Supplying High Availability with a Standard Network File System, Tech. Rep. 87-888, Cornell University, Department of Computer Science, http://historical.ncstrl.org/tr/ps/cornellcs/TR87-888.ps Palekar A.A., Ganapathy N., Chadda, A., Russel, R.D., (2001), Design and Implementation of a Linux SCSI Target for Storage Area Networks, Proceedings of the 5th Annual Linux Showcase & Conference, Oakland, California, USA November 5-10, 2001, ftp://ftp.iol.unh.edu/pub/iscsi/LinuxConfPaper.pdf Palekar A.A., Russel R.D., (2001), Design and Implementation of a SCSI Target for Storage Area

Networks, IETF, ftp://ftp.iol.unh.edu/pub/iscsi/tr0101.pdf Patterson D.A., Gibson G.A., Katz R.H., (1987), A Case for Redundant Arrays of Inexpensive Disks (RAID), Tech. Rep. CSD-87-391, University of California Berkeley, Computer Science Division, ftp://sunsite.berkeley.edu/pub/techreps/CSD-87-391.html Satyanarayanan M., Kistler J. J., Kumar P., Okasak M.E., Siegel E.H., Steere D.C., (1990) Coda a highly available file system for a distributed workstation environment, IEEE Trans. on Computers 39,4 (Apr. 1990), pages 447-459 Stodolsky D., Holland M., Courtright W.V.II, Gibson G.A., (1993), A Redundant Disk Array Architecture for Efficient Small Writes, Tech. Rep. CMU-CS-93-200, School of Computer Science, Carnegie Mellon University, http://historical.ncstrl.org/tr/ps/cmucs/CMU-CS-93-200.ps Talagala N., Arpaci-Dusseau R., Patterson D., (2000), Micro-Benchmark Based Extraction of Local and Global Disk Characteristics, University of California Berkeley, Computer Science Division,

Tech. Rep. CSD-99-1063, University of California Berkeley, Computer Science Division, ftp://sunsite.berkeley.edu/pub/techreps/CSD-99-1063.html Wang R.Y., Anderson T.E., (1993), xFS: A Wide Area Mass Storage File System, University of California, Berkeley, Computer Science Division, In Proceedings of the Fourth Workshop on Workstation Operating Systems, October 1993, pages 71-78, ftp://sunsite.berkeley.edu/pub/techreps/CSD-93-783.html Рубер П., (1998), Какая отказоустойчивость достаточна?, LAN/ЖУРНАЛ СЕТЕВЫХ РЕШЕНИЙ

#12/98, http://www.osp.ru/lan/1998/12/32.htm Тормасов А.Г., Хасин М.А., Пахомов Ю.И., (2001), Модель распределенного хранения данных с регулируемой избыточностью, электронный журнал "ИССЛЕДОВАНО В РОССИИ" 355 http://zhurnal.ape.relarn.ru/articles/2001/035.pdf Фадеев А.Ю., (2002), Распределенные системы хранения данных на основе TCP/IP, Обработка информации и моделирование, сборник научных трудов МФТИ, 2002, стр. 339-345