информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Атака на InternetСтрашный баг в Windows
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Microsoft обещает радикально усилить... 
 Ядро Linux избавляется от российских... 
 20 лет Ubuntu 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / hardware
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
Кстати о рейдах 17.05.05 17:24  Число просмотров: 2133
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка>
> включит софтварный RAID1 в винде, и пошлёт всех подальше...
> Слетит инфа на одном -- он его в мусорную корзину, пойдёт,
> купит ещё один, синхронизирует, и пойдёт пить пиво.

Вот меня смущает тупое зеркалирование. Причем за счет в утроения данных достигается минимальная защита. Тот же reed-solomon code при таких затратах (1024 бита инфы для восстановления на каждые 512 бит данных) места мог бы восстанавливать 512 бит ЛЮБЫХ ошибок. Хоть во всех трех секторах сразу.
<hardware>
Супер отказоустойчивый винчестер. Обсудим темочку? 17.05.05 15:09  
Автор: DPP <Dmitry P. Pimenov> Статус: The Elderman
Отредактировано 17.05.05 15:17  Количество правок: 7
<"чистая" ссылка>
В компах есть устройства, вероятность отказа которых черезвычайно мала, а срок службы велик. Это, как правило, электронные, маломощные компоненты - микросхемы на системной плате, оперативка, сюда можно отнести и процессоры.
Существуют также и узлы, которые очень часто выходят из строя. В серверах эти системы оснащаются датчиками и дублируются. А так же предусматривается их "горячая" замена. Это кулеры, блоки питания, винчестеры. Вот собственно на последних и хотелось сконцентрировать внимание, поскольку их надежность важна не только в серверах, но и в большинстве других компьютерах.
1. Винты летят часто - с этим мало кто поспорит.
2. Мало кто дома использует РАИДы, да и в маленьких организациях тоже.
3. Резервное копироваение так же редко кто делает.
4. Не так жалко потерять "железяку", как инфу, которая на ней хранится. Кулера, БП и пр. дешевле и на них нет ценной инфы.
Собственно и возникает вопрос "Как повысить отказоустойчивость винтов не вкладывая в это приличные деньги как в РАИД"?
В связи с этим у меня возникла мысль, про реализацию которой в современных винтах я пока не слышал. Суть ее вот в чем.
Сначала рассмотрим виды отказа винта.
У винта может погореть электроника. Причем интерфейсная микруха так, что все выходные транзисторы сплавятся в один кусок кремния. Но это вызовет отказ даже физического РАИДа, поскольку в большинстве своем все диски вешаются на общий интерфейс.
У винта может отказать любая другая электроника, но это случается значительно реже, чем отказ механики. Об этом я уже упоминал, когда писал о системных платах.
Наиболее часто у винта отказывает механика, головки и "блины". Мало того, если транзистор, в отличии от электронной вакуумной лампы, можно считать практически вечным элементом, если он работает в своем нормальном режиме (напряжение, ток, мощность и температура в пределах заявленных параметров), то механика в любом случае изнашивается. Это я о пожшипниках шпинделя блинов и поворота головок, что приводит к увеличению люфта и уменьшению точности позиционирования. Кроме того во время пуска/раскрутки дисков и их останова головки труться о поверхность, хоть и вне зоны данных, но они стираются. И еще, поскольку в гермозоне могут находится микроскопические абразивные пылинки, повреждение поверхности и головок возможно во время работы винта. Магнитный слой дисков тоже не вечен и небольшой брак может проявить себя сразу же после окончания гарантийного срока. Технология изготовления головок очень высока и при незначительном изменении ее аэродинамической формы или положения может произойти контакт с поверхностью блина, что приведет к ее "сгоранию" и повреждению магнитного слоя.
Избежать отказа винта, случившегося по причине поломки механики может помочь внутренний РАИД.
Внутри современных винтов обычно два или три блина, стало быть 4 - 6 поверхностей, которые можно рассмотреть как отдельные одноголовочные винты, состовляющие РАИД. То есть информация пишется на N-1 поверхностей, а на последнюю пишется код восстановления. Получим РАИД-5 внутри винта.
В этом случае результирующая емкость винта упадет на 1/4 - 1/6, его микрокод необходимо будет проапгрейдить до умения работать в этом режиме и, может быть, комплектовать более мощным микропроцессорным контроллером.
Если же мы захотим параллельно получить прирост в производительности (скорости считывания с поверхности), то придется модернизировать головочный тракт - вместо коммутатора головок и одного сигнального процессора поставить по процессору на каждую головку.
Собственно что об этом думают посетители форума? Насколько это реализуемо? Насколько это эффективно? Насколько полезность соизмериться с затратами на внедрение? Почему пока еще подобные винты не делают? Может я что не учел?

Работая когда-то в компьютерном сервисном центре имел счастье наблюдать приходивших по несколько человек в год с проблемой полетевшего винта. Причем почти все просили восстановить данные. Мы обещали только поменять по гарантии винт бесплатно, а клиенты говорили что им побарабану по гарантии или за винт придется заплатить - у них на винте бесценная инфа. Мы успокаивали, говорили что они могут восстановить инфу с бэкапа, но клиенты даже слово бэкап слышали впервые. Ну чем можно помочь людям, если головки срезали поверхность так, что внутри горстка стружки, а винт визжит как циркулятная пила при включении.
Сегодня на iXBT в железных новостях проскочила инфа про... 24.05.05 10:24  
Автор: DPP <Dmitry P. Pimenov> Статус: The Elderman
Отредактировано 24.05.05 10:25  Количество правок: 2
<"чистая" ссылка>
Сегодня на iXBT в железных новостях проскочила инфа про флэш_винчестеры, выпуск которых налаживает Самсунг.
Мне понравился на картинке 2.5" винт для буков. Энергопотребление 5% от обычных винтов, отсутствие шума, низкое тепловыделение, в два раза легче, в полтора раза быстрее по трансферу (я думаю по времени доступа быстрее в тысячу раз), более устойчив к вибрации.
Мое мнение - отсутствие механики даст огромную надежность, а для защиты от выпадающит битов надо бы не пожалеть и напаять девятую микросхему для ЕСС.
Мож тогда сразу вот это, за 40 килобаксов... 26.05.05 04:05  
Автор: Korsh <Мельников Михаил> Статус: Elderman
Отредактировано 26.05.05 04:06  Количество правок: 1
<"чистая" ссылка>


супер-винт
Пару таких фигофен найти и продать... на безбедную старость хватит 27.05.05 13:25  
Автор: Gruznov <Gruznov A. Mikhael> Статус: Member
<"чистая" ссылка>
А как у него со стоимостью? 24.05.05 11:38  
Автор: ZloyShaman <ZloyShaman> Статус: Elderman
<"чистая" ссылка>
Говорили, что где-то 800-900$ 26.05.05 01:05  
Автор: Gruznov <Gruznov A. Mikhael> Статус: Member
<"чистая" ссылка>
Появится в продаже через 3 месяца, тогда и посмотрим. Еще прогнозируют глобальное удешевление флэш памяти. 24.05.05 12:01  
Автор: DPP <Dmitry P. Pimenov> Статус: The Elderman
<"чистая" ссылка>
Почитал все мнения и в голову пришла идея как сделать похожее малой кровью: 17.05.05 21:41  
Автор: Den <Денис Т.> Статус: The Elderman
<"чистая" ссылка>
1. На разные контроллеры EIDE вешаем диски, одинакового размера.

2. Каждый диск разбивается на два раздела, но таким образом, чтобы кол-во секторов во втором разделе равнялось кол-во кластеров в файловой системе первого раздела.

3. В драйвер файловой системы вносится изменение таким образом, что при записи кластера, к примеру в первый раздел диска на первом контроллере, драйвер файловой системы расчитывал контрольную сумму 512 байтовых блоков записываемого кластера и помещал эту контрольную сумму в сектор второго раздела диска на втором контроллере так, что номер сектора в разделе соответствовал бы номеру кластера, записанного в первый раздел диска первого контроллера. Для первого раздела второго диска обеспечиваются такие же условия.

Так как 512-байтные блоки кластера физически будут писаться на диск с чередованием сторон/головок, а контрольная сумма этих 512-байтных блоков будет находиться на диске другого контроллера (для увеличения производительности), то будем иметь raid5 для блоков данных файловой системы.

К сожалению такой подход обеспечит целостность только блоков данных файловой системы, но не ее служебной информации. С другой стороны ничто не мешает внести в драйвер ФС такие изменения, которые позволят обеспечить избыточность и для служебной информации ФС.
Не пишутся они с чередованием секторов. Все как и на... 18.05.05 09:59  
Автор: DPP <Dmitry P. Pimenov> Статус: The Elderman
Отредактировано 18.05.05 10:00  Количество правок: 1
<"чистая" ссылка>
> ...
> Так как 512-байтные блоки кластера физически будут писаться
> на диск с чередованием сторон/головок, а контрольная сумма
> этих 512-байтных блоков будет находиться на диске другого
> контроллера (для увеличения производительности), то будем
> иметь raid5 для блоков данных файловой системы.

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

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

Если полетит одна голова на первом диске - теряем половину полезной инфы, а того, что записано на другом диске - по сектору на кластер маловато, чтоб восстановить ее.
Мда, об этом я как-то не подумал... Стормозил. 18.05.05 12:34  
Автор: Den <Денис Т.> Статус: The Elderman
<"чистая" ссылка>
> Не пишутся они с чередованием секторов на разные
> поверхности. Все как и на дискетке - сначала все 18
> секторов одной головкой, потом 18 секторов другой.

Мда, об этом я как-то не подумал... Стормозил.
Похоже без внесения изменений в сам HDD или, как минимум, в драйвер контроллера EIDE не обойтись.

> Только
> для винтов количество секторов на дорожке другое и
> количество секторов на треке уменьшается по мере
> расположения трека ближе к оси вращения.

Об этом я не забыл. :)

> Проблема связана с
> отсутствием многоканального головочного тракта и отсутствия
> возможности мгновенно переключать головки.

Можно подробнее на этом месте? Что такое мгновенное переключение головок?
Цепочка преобразования намагниченности поверхности в... 18.05.05 15:55  
Автор: DPP <Dmitry P. Pimenov> Статус: The Elderman
<"чистая" ссылка>
> > Проблема связана с
> > отсутствием многоканального головочного тракта и
> отсутствия
> > возможности мгновенно переключать головки.
>
> Можно подробнее на этом месте? Что такое мгновенное
> переключение головок?

Цепочка преобразования намагниченности поверхности в биттовую последовательность примерно такова: Если головка электромагнитная, то при перемещении под ней намагниченного материала разной степени и направленности намагниченности, в катушке будет наводится ЭДС индукции. Если головка магниторезистивная, то будет меняться ее сопротивление и, соответственно, ток, протекающий через нее при постоянном приложенном напряжении. Эти колебания напряжения/тока попадают на сигнальный процессор, который, грубо говоря, распознавая форму сигнала, преобразует ее в цифровой последовательный сигнал (последовательность бит). Эти битики, скорее всего "пачками" по 8 штук, попадают в определенное место оперативки на плате винта. интерфейсная микруха потом эту инфу передаст по интерфейсу.
Когда головок несколько, то применяют коммутатор аналоговых сигналов - это почти то же самое, что и мультиплексор для цифровых сигналов. На входы управления подается информация со стороны управляющего чипа какой из входов (головок) надо скомутировать с выходом при чтении и наоборот при записи. Сигнальные процессоры дороги, чтоб цеплять их к каждой головке, да и размеры у них не маленькие.
Предположим, что сразу же после прочтения сектора первой головой нужно читать сектор под второй. Межсекторное расстояние практически равно нулю в целях экономии площади поверхности диска. Этот маленький коммутатор будет переключаться намного дольше, чам проскочет под второй головой межсекторный промежуток. Можно включить чередование секторов - то есть второй головкой пишутся сектора со смещением, тогда будет потеря времени ожидания второй головой сектора. Да и зачем это надо, если всю дорожку можно прекрасно прочитать за один оборот одной головой. Надо читать двумя - надо ставить две микрухи-обработчика.
Согласен. И коммутаторов не потребуется. 18.05.05 17:02  
Автор: Den <Денис Т.> Статус: The Elderman
<"чистая" ссылка>
Den, за нас уже всё написали добрые дяди из M$. Вешай два, три винта на IDE, топай в "Управление дисками" в винде, и делай там софтварные RAID'ы какие хошь: 0, 1, 5. 18.05.05 08:48  
Автор: HandleX <Александр М.> Статус: The Elderman
<"чистая" ссылка>
Дорого и медленно. 18.05.05 12:35  
Автор: Den <Денис Т.> Статус: The Elderman
<"чистая" ссылка>
На данный момент это самое дешёвое решение тем, кому реально нужен RAID. Насчёт медлительности... У меня RAID1 стоит на серваке софтварный. Специально тестил на предмет загрузки проца. Разницы средствами Диспетчера задач не заметил. 18.05.05 13:26  
Автор: HandleX <Александр М.> Статус: The Elderman
<"чистая" ссылка>
Это потому, что время самого чтения сектора и передачи его по шине минимум порядка на 3 больше времени, необходимой на диспетчеризацию софтварного рейда 18.05.05 14:04  
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка>
Дык, если нет разницы с дорогим стиральным порошком, то... (C) ;-) 18.05.05 14:35  
Автор: HandleX <Александр М.> Статус: The Elderman
Отредактировано 18.05.05 14:37  Количество правок: 1
<"чистая" ссылка>
Вот именно. Я об этом самом и сказал :-) 18.05.05 15:24  
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка>
[UDP] насчет избыточности, надежности и цены 17.05.05 21:10  
Автор: Killer{R} <Dmitry> Статус: Elderman
Отредактировано 17.05.05 21:22  Количество правок: 1
<"чистая" ссылка>
В винтах и так инфа пишется с избыточностью. Обычно считается что юзается код Рида-Соломона с сизбыточностью 25%, хотя кто знает производителей винтов. Может и большая там избыточность по дефолту. Ничто не мешает просто аппаратно писать один сектор сразу на два блина - емкости не потеряется, избыточность останется (хотя можно ее немного и увеличить за счет емкости конечно) а надежность возрастет. Это одна сторона медали. Типа порадовались и приступим к другой стороне Ж) Подозреваю что для тех случаев для которых предполагается юзать такую штуку избыточность мало что даст. Те если там головка механически диск отформатирует на блине с инфой то никакая избыточность (кроме дублирования конечно) уже не спасет. А относительно простые сбои (электроника, даже сами головки сгоревшие) восстановить можно путем замены сгоревших железяк в соответствующих условиях (головки тож поменять чисто для восстановления инфы, если денег конечно дофига Ж)). Теперь насчет надежности и цены - вероятность убивания инфы на таком винте конечно будет намного меньше чем на обычном, но и больше чем на реальном рэйде. Врядли такая технология спасет винт юзера если изза полетевшего подшипника перекосятся все блины сразу и все головки благополучно нарежут там дорожки Ж). Вобщем это все надо досконально рассчитать чтобы соотношение (2*обычная_цена*вероятность_потери_инфы_рэйд)/(супер_цена*вероятность_потери_инфы_супервинт) было больше единицы. Если меньше - нет смысла. И то формула это приблизетельная, на самом деле надо учитывать еще цену восстановления инфы при различных неисправностях * вероятности этих неисправностей. Вотт Ж)

[upd]
И вообще имхо то что надежность винтов снижается говорит прежде всего о том что снижается потребность в ней. Все критичные коммерческие данные (базы данных, репозитории) храняться на рэйдах и никто никогда не будет использовать супервинт вместо рэйда (хотя пожалуй рэйд из винтов которые сами по себе маленькие рэйды вполне ничего так, но оно погоды не сделает). А обычным юзверям (сужу по своей домолокалке) супернадежность мало нужна. Бывают конечно единичные случаи типа диплома/свадебного фильма в единственном экзмпляре... Но дураки они всегда будут..
Ну чтож, можно и про стандартные методы применения кодов... 18.05.05 09:43  
Автор: DPP <Dmitry P. Pimenov> Статус: The Elderman
Отредактировано 18.05.05 09:47  Количество правок: 2
<"чистая" ссылка>
> В винтах и так инфа пишется с избыточностью. Обычно
> считается что юзается код Рида-Соломона с сизбыточностью
> 25%, хотя кто знает производителей винтов. Может и большая

Ну чтож, можно и про стандартные методы применения кодов обнаружения и коррекции ошибок поговорить.
Ну да, в погоне за емкостью и скоростью возникает проблема "некачественного" чтения. Мало того, я думаю что в самых современных винтах она имеет место быть при чтении каждого сектора или 99% чтений. Решать проблему начали давно - в конец сектора писали дополнительно 4-6 байт ЕСС, которых вполне хватит для обнаружения двойных и исправления одиночных ошибок. Однако инженеры идут дальше - есть возможность повысить плотность и скорость в два раза, но ошибок будет немерено (причины по запросу объясню отдельно), получите решение - в конец надо будет записать несколько десятков байт - погнали, делаем. Увеличение кода ЕСС до размеров данных не имеет смысла, так как потребуется читать вдвое больше, а при этом и увеличение скорости в два раза невелируется, как, впрочем и двухкратное увеличение плотности.
Все бы ничего, но код восстановления пишется рядом с самими данными. При повреждении участка поверхности накроется все. Хотя бы потому, что полностью живой код не восстановит полностью уничтоженные данные, если он меньше по размерам.

> там избыточность по дефолту. Ничто не мешает просто
> аппаратно писать один сектор сразу на два блина - емкости
> не потеряется, избыточность останется (хотя можно ее

Это зеркало получится - двухкратная потеря полезной емкости.

> немного и увеличить за счет емкости конечно) а надежность
> возрастет. Это одна сторона медали. Типа порадовались и

> приступим к другой стороне Ж) Подозреваю что для тех
> случаев для которых предполагается юзать такую штуку
> избыточность мало что даст. Те если там головка механически
> диск отформатирует на блине с инфой то никакая избыточность
> (кроме дублирования конечно) уже не спасет. А относительно
> простые сбои (электроника, даже сами головки сгоревшие)
> восстановить можно путем замены сгоревших железяк в
> соответствующих условиях (головки тож поменять чисто для
> восстановления инфы, если денег конечно дофига Ж)). Теперь

Теоретически, только сколько денег это будет стОить и кто возьмется. Может у нас в России есть такие лаборатории? Не " на коленках в подвале" ли специ там работают?

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

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

> рассчитать чтобы соотношение
> (2*обычная_цена*вероятность_потери_инфы_рэйд)/(супер_цена*в
> ероятность_потери_инфы_супервинт) было больше единицы. Если
> меньше - нет смысла. И то формула это приблизетельная, на
> самом деле надо учитывать еще цену восстановления инфы при
> различных неисправностях * вероятности этих неисправностей.
> Вотт Ж)

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

> [upd]
> И вообще имхо то что надежность винтов снижается говорит
> прежде всего о том что снижается потребность в ней. Все
> критичные коммерческие данные (базы данных, репозитории)
> храняться на рэйдах и никто никогда не будет использовать
> супервинт вместо рэйда (хотя пожалуй рэйд из винтов которые
> сами по себе маленькие рэйды вполне ничего так, но оно
> погоды не сделает). А обычным юзверям (сужу по своей
> домолокалке) супернадежность мало нужна. Бывают конечно
> единичные случаи типа диплома/свадебного фильма в
> единственном экзмпляре... Но дураки они всегда будут..

Вот это интересно сколько подобных случаев было и величина ущерба, когда про полетевшем винте не было резервной копии и было жаль потерянных данных.
1  |  2  |  3 >>  »  




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2024 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach