Как построить быструю локальную сеть


35

Я работаю в кинопроизводстве и мне нужен ОЧЕНЬ быстрый доступ к очень большим необработанным материалам. В настоящее время я использую док-станции eSATA 6 Гбит / с для внутренних жестких дисков, которые работают так же быстро, как и диск.

Если бы я использовал сервер и подключился к своим рабочим станциям через сеть, какая (относительно доступная) технология позволила бы мне приблизиться к скорости диска или превысить ее?


12
10 Гбит / с Ethernet в наши дни вполне приемлемы. Тем не менее, 8 или 16 Гбит / с SAN (сеть хранения данных - или волоконно-оптический канал) может быть лучше подходит для конкретного использования?
Ecnerwal

3
Он специально разработан / оптимизирован для сетей хранения.
Ecnerwal

3
Просто хочу проверить - используете ли вы SSD? Если нет, то это существенное обновление.
trpt4him

1
Я не вижу никакой дополнительной ценности SAN по сравнению с более простым и более дешевым NAS здесь.
jiggunjer

3
Чтобы правильно ответить на этот вопрос, нужно больше информации: какой объем данных должен храниться, сколько пользователей одновременно, откуда данные доступны (с какого компьютера)? Сеть 100 Гбит / с не поможет при доступе с 2 или 3 компьютеров с сетевым адаптером 1 Гбит / с.
JFL

Ответы:


31

Здесь, в начале 2017 года, судя по информации, легко доступной в Интернете, максимальная скорость жестких дисков SATA составляет около 220 мегабайт / с, что составляет 1,760 гигабит / с.

Так что, если вы просто пытаетесь превзойти скорость одного диска и ограничены жесткими дисками из соображений стоимости за терабайт для больших видеофайлов, тогда 10 Gigabit Ethernet вполне достаточно.


Кроме того, обратите внимание, что сеть Thunderbolt Networking также имеет скорость 10 Гбит / с, поэтому, если у вас уже есть порты Thunderbolt, вы можете поэкспериментировать с этим. Возможно, он может превзойти ваши 6-гигабитные порты eSATA 3, хотя я не уверен в этом, поскольку eSATA очень специфичен для хранилища, тогда как хранение через Ethernet требует больше ресурсов. Также обратите внимание, что Thunderbolt - это настольная шина; он достигает всего нескольких метров, а не 100 метров, с которыми может работать 10 Gigabit Ethernet. Таким образом, хотя Thunderbolt может быть интересен для экспериментов и создания прототипов, пока вы взвешиваете свои варианты, это, вероятно, не является правильным долгосрочным решением для вас, если вы не хотите, чтобы все ваши рабочие станции и диски были соединены вплотную за большим столом.


Так что это было для одиночных жестких дисков. Но если вы объедините эти диски вместе, чтобы каждое чтение или запись распределялось по нескольким дискам, вы можете получить гораздо лучшую производительность, чем производительность одного диска. Кроме того, в зависимости от вашего бюджета, вы можете поместить твердотельные накопители PCIe / M.2 NVME в ПК в качестве сервера / NAS, и вы сможете добиться невероятно высокой производительности хранилища (около 3,4 гигабайта / сек == 27 гигабит / сек) в секунду. привод.

В этом случае вы, возможно, захотите взглянуть на что-то более быстрое, чем 10-гигабитный Ethernet, но если взглянуть онлайн, то похоже, что цены значительно превышают 10-гигабитный Ethernet. Таким образом, вы можете посмотреть на агрегацию ссылок по нескольким 10-гигабитным ссылкам. Я также видел в Интернете некоторые анекдоты о том, что использованное сетевое оборудование, такое как использованный контент InfiniBand со скоростью 40 Гбит / с, можно купить на eBay по очень низкой цене, если вы не возражаете против хлопот, связанных с покупкой подержанного оборудования на eBay.


1
А как насчет нескольких 10Gbit сетевых карт + связь?
Андре Бори

2
связывание позволяет отдельным потокам использовать разные физические ссылки, но один поток будет использовать только один сетевой адаптер. Так что это будет полезно, когда несколько файлов обслуживаются разными людьми одновременно, но не увеличит пропускную способность для доступа к одному файлу.
JFL

4
@JohnU Нет, Ethernet эффективнее на 94% со стандартными 1500-байтовыми кадрами, а еще лучше с большими кадрами. Я обычно вижу пропускную способность 930+ Мбит / с, даже не пытаясь. Gigabit Ethernet не позволяет использовать концентраторы, только коммутаторы, поэтому он всегда дуплексный и, следовательно, никогда не имеет коллизий.
Spiff

1
@JFL Ethernet-соединение (агрегация каналов IEEE 802.3ad) распределяет нагрузку по пакетам, а не по потокам. Поскольку сетевые технологии обычно разрабатываются на отдельных уровнях, Ethernet (уровень 2, уровень канала передачи данных) не имеет представления о протоколах над ним, таких как IP или TCP, поэтому не имеет представления о потоках.
Spiff

2
@JFL Агрегация Linux, безусловно, может использовать некоторую информацию layer3 + (Linux может делать много необычных вещей), помните, что вам действительно нужно, чтобы обе стороны поддерживали один и тот же метод соединения, чтобы быть полезным. Если вы подключаетесь к коммутатору, то вы действительно можете использовать то, что поддерживает коммутатор.
Зоредаче

5

Если вы будете использовать диски SATA, внедрение 10 Гбит Ethernet и создание разумного размера RAID10 на сервере принесет вам заметное увеличение производительности по сравнению с одним диском SATA. Это будет достойным капиталовложением, поскольку вы можете разделить сервер на столько рабочих станций, сколько вам нужно, и добавить в будущем, добавив коммутаторы. Вам нужно будет использовать сетевой кабель Cat-6, так как Cat-5E его не обрежет - не забудьте добавить эти расходы в свои расчеты. Вы также можете добавить SSD в качестве кеша, чтобы ускорить работу системы; так как вы работаете с видеоматериалами, я предполагаю, что вам нужно огромное количество места для хранения, которое было бы чрезвычайно дорого создавать исключительно с помощью SSD.

Вы можете купить готовый сервер для монтажа в стойку у Dell или HP и использовать аппаратную карту RAID, или, если вы более склонны к аппаратному обеспечению, вы можете купить более дешевое шасси у Supermicro и собрать машину для хранения самостоятельно, используя программный RAID в либо Windows, либо Linux. Аппаратный RAID часто быстрее, когда задействован RAID1, так как программное обеспечение должно записывать на каждый диск по очереди и ждать завершения записи, прежде чем перейти к следующей операции; Карта RAID обычно может выполнять запись на оба диска параллельно и кэшировать операцию записи, немедленно возвращая управление ОС. Однако обратите внимание, что хотя RAID0 будет еще быстрее, у вас нет избыточности, и отказ одного диска приведет к полной потере данных; никогда не используйте RAID0, если у вас есть данные, которые вы хотите сохранить.

На верхнем уровне масштаба у вас есть сети хранения данных (SAN), но они предназначены для параллельной работы множества операций от большого числа отдельных клиентов; Преимущество этого состоит в том, что пропускная способность очень мала для небольшого числа подключенных машин, но, вероятно, излишня для ваших нужд и очень дорогая. На начальном этапе у вас есть устройства с сетевым хранилищем (NAS), о которых упоминали другие, но, хотя они намного проще, чем полноценный сервер, я не рекомендую их, поскольку NAS часто является черным ящиком; они предназначены для большинства пользователей по принципу «подключи и работай», и в результате у вас мало контроля над ОС - мне просто нужно было отослать назад небольшой NAS, который я купил для офиса клиента, так как он стал нестабильным после рабочего дня.

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


3
«программное обеспечение должно записывать на каждый диск по очереди и ждать завершения записи, прежде чем перейти к следующей операции». Это не было правдой в течение нескольких десятилетий; в настоящее время даже несерверные диски поддерживают очереди команд. И, строго говоря, с программным обеспечением DMA ждать не нужно. Это поддерживается настольными компьютерами с 1998 года или около того.
MSalters

Вероятно, стоит отметить, что, хотя ваше первое предложение верно для одного пользователя, общая пропускная способность 10 ГБ означает, что при одновременном доступе нескольких пользователей к общему ресурсу пропускная способность каждого из них в конечном итоге упадет ниже уровня SATA для одного пользователя.
Дэн Нили,

2
NAS по определению не является каким-то особым устройством, вы можете иметь обычный ПК с Linux с samba или NFS и называть его NAS. Ключевым отличием является совместное использование на уровне файлов и на уровне блоков. Блочное устройство может одновременно использоваться только одним клиентом. Также SAN более дороги и требуют больше / больше знаний для настройки.
Jiggunjer

@jiggunjer Совершенно верно, но большинство тех, кто собирает ПК с Samba, называют его файловым сервером, а не NAS. Я просто играю по техническим причинам, чтобы обозначить устройство специального назначения. Также очень верно в отношении SAN, поэтому я отнес их к категории излишних.
Gargravarr

@DanNeely да, так как все больше клиентов добавляются с одновременным доступом, скорость на каждую рабочую станцию ​​будет снижаться, но общая скорость передачи данных с сервера должна оставаться очень высокой. Дополнение кешем SSD может компенсировать большую часть этого.
Гарграварр

3

Ничто не сравнится с гибкостью и простотой настройки 10gbe, но SAS на удивление способен работать в сети самостоятельно:

Для небольшого количества рабочих станций (n <8), где тома не нужно записывать с нескольких компьютеров одновременно, SAS отлично работает. С Tyan JBOD (1500 долларов США) и LSI HBA (400 долларов США) мы получаем 3400 МБ / с (27 Гбит / с) устойчивых передач в SSD. JBOD имеет внутренний коммутатор с 3 восходящими каналами к HBA, но коммутаторы SAS доступны для большего количества портов.

Вот тест скорости одного из наших томов:

CDM5, показывающий 2 862 МБ / с последовательного чтения с 32 iops в очереди.  Однопоточное случайное чтение 4 КБ 29 МБ / с

Внутренне мы используем это решение с кластеризованным Windows Server, на котором работают дисковые пространства , которые распределяются по клиентам с 10gbe.

Кластерные серверы Windows


2

https://www.newegg.com/Product/Product.aspx?Item=N82E16820147593&cm_re=samsung_m.2- -20-147-593- -Продукт

Во-первых, SSD M.2 с правильной материнской платой может достигать 2-4 Гбит / с и, возможно, выше. RAID несколько из них вместе, и ваши скорости еще выше.

Объединение нескольких сетевых адаптеров по 10 ГБ может приблизить вас к родной скорости.

Что-нибудь больше чем 10 г - намного больше денег.

40 гигабитный NIC https://www.serversupply.com/products/part_search/pid_lookup.asp?pid=263133&gclid=Cj0KEQiA9P7FBRCtoO33_LGUtPQBEiQAU_tBgIU2jZrJKf0kXFy96roOllcRkp7j-VoubG_n7xb0_pgaAnaT8P8HAQ


Превышение 10 ГБ также может ограничить скорость локальной шины в качестве ограничивающего фактора :) Слот PCI-Express 2.0 x16 теоретически равен 64 Гбит / с - но накладные расходы со всех сторон (шина в память, драйверы в память, загрузка процессора) ...) будет грызть это довольно близко к тому месту, где вы сможете порадоваться, если ваш 10GBe будет работать на скорости линии ...
rackandboneman

2
@rackandboneman: Вот почему у вас есть умные NIC. Ethernet 10 Гбит / с - это грубая скорость. Сетевые адаптеры могут обрабатывать заголовки Ethernet, IP и TCP, что позволяет центральному процессору обрабатывать только реальные данные.
MSalters

ЕСЛИ эти механизмы разгрузки работают в сочетании с вашим сценарием приложения - и хотя они сокращают использование ЦП, они не уменьшат объем данных ТО значительно, если большая часть этого трафика не является мусором, во-первых ...
rackandboneman

@rackandboneman PCIe 3.0 x16 существует, поэтому скорость может быть в два раза выше.
Кибернард

10gbe может быть намного дешевле, чем Mellanox за 180 долларов, а 25gbe близок к Mellanox 25gbe за 300 долларов . Что убивает вас, так это стоимость портов на коммутаторах, но eBay или полная сетка устраняют эту проблему.
Митч

0

Используйте оптоволоконную карту Ethernet с оптоволоконным коммутатором, в идеале многомодовый или одномодовый с пэдами. Если у вас есть бюджет, вы можете сделать все это 10 Гбит / с, если вы используете агрегацию каналов с двухпортовой оптоволоконной картой, вы можете получить 20 Гбит / с. Поскольку термин «относительно доступный» меняется в зависимости от того, какой у вас бюджет, было бы полезно узнать реальные цифры того, что вы готовы потратить.


0

Самый дешевый способ - использовать агрегацию каналов (IE запускает N кабелей, обычно 2) вместо одного.

Таким образом, дешевая ссылка 1Gb станет ссылкой 2Gb.

Очевидно, это означает, что вам нужно как минимум 4 порта для одного клиентского сервера.


а клиенту нужны 2 порта ... Работают ли с этим простые коммутаторы? или это должна быть прямая ссылка?
jiggunjer

Для этого можно использовать простой переключатель @jiggunjer, но вам нужна специальная конфигурация на всех компьютерах / серверах, которые используют эту схему
Antzi

Является ли эта агрегация такой же, как склеивание, упомянутое в комментариях ответа @Spiff? В этом случае пропускная способность не увеличивается для доступа к одному файлу ...
jiggunjer

@jiggunjer Это действительно сводится к тому, как вы делаете настройку, поэтому я не могу ответить.
Анци

1
@FlorianCastellane последний дешевый, который я купил, не был. Зависит от спецификации
Antzi
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.