Як побудувати швидку локальну мережу


35

Я працюю у виробництві фільмів і мені ДУЖЕ швидкий доступ до дуже великих сирих файлів кадрів. Зараз я використовую дошки eSATA 6Gbps для внутрішніх жорстких дисків, які працюють так само швидко, як і диск.

Якби я використовував сервер і підключався до своїх робочих станцій через мережу, яка (відносно доступна) технологія дозволить мені дістатися десь поблизу або перевищити швидкість приводу?


12
Ефірна мережа 10 Гбіт / с є цілком доступною для цих днів. Однак 8 або 16 Гбіт / с SAN (мережа області зберігання даних - ака-волоконний канал) може бути краще підходить для конкретного використання?
Ecnerwal

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

3
Просто хочу перевірити - чи використовуєте ви SSD? Якщо ні, то це суттєве оновлення.
trpt4him

1
Я не бачу додаткової вартості SAN в порівнянні з більш простим і дешевим NAS тут.
jiggunjer

3
Щоб правильно відповісти на це, потрібна додаткова інформація: який обсяг даних потрібно зберігати, скільки одночасних користувачів, звідки доступ до даних (яка машина)? Мережа потужністю 100 Гб не допоможе, якщо отримати доступ з 2 або 3 машини з мережевим адаптером 1 Гб.
JFL

Відповіді:


31

Тут на початку 2017 року, судячи з інформації, легко доступної в Інтернеті, схоже, що найшвидші HDD-диски SATA мають максимум близько 220 мегабайт / сек, що становить 1,760 гігабіт / сек.

Отже, якщо ви просто намагаєтеся перемогти швидкість одного диска, і ви обмежені жорсткими дисками з огляду на ціну на терабайт для величезних відеофайлів, то 10 гігабітних Ethernet - це багато.


Зауважте, що Thunderbolt Networking також становить 10 гігабіт / с, тому якщо у вас вже є порти Thunderbolt, ви можете експериментувати з цим. Можливо, це може перемогти ваші порти 6 gigabit eSATA 3, хоча я не впевнений у цьому, оскільки eSATA дуже специфічний для зберігання даних, тоді як зберігання через Ethernet має більше витрат. Також зауважте, що Thunderbolt - це настільна шина; він досягає лише декількох метрів, а не 100 м, з якими може працювати 10-гігабітний Ethernet. Тому, хоча Thunderbolt може бути цікавим для експериментів та складання прототипів, коли ви зважуєте свої параметри, це, мабуть, не правильне довгострокове рішення для вас, якщо ви не хочете тримати всі робочі станції та диски підключеними спиною до спини навколо великого столу.


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

У такому випадку ви можете поглянути на щось швидше, ніж 10 гігабітний Ethernet, але, оглядаючись в Інтернеті, схоже, що ціни досить різко підскочать за межі 10 гігабітних Ethernet. Таким чином, ви можете поглянути на те, як робити агрегацію посилань через декілька посилань на 10 Гбігабіт. Також я бачив деякі анекдоти в Інтернеті, які використовували мережеве обладнання, наприклад, використані речі InfiniBand 40 Гбіт / с, можна придбати на eBay для забруднення дешево, якщо ви не заперечуєте проти клопотів, які виникають із покупкою вживаних передач на eBay.


1
А як щодо декількох 10Gbit NIC + зв’язок?
Андре Борі

2
зв'язку дозволяють мати окремі потоки, використовуючи різні фізичні зв’язки, але для одного потоку буде використовуватися лише один NIC. Тож це буде корисно, коли декілька файлів подаються різним людям одночасно, але не збільшуватимуть пропускну здатність для одного доступу до файлів.
JFL

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

1
@JFL Ethernet зв'язок (IEEE 802.3ad агрегація посилань) розподіляє навантаження пакет по пакету, а не за потоком. Оскільки мережеві технології, як правило, розроблені в дискретних шарах, Ethernet (шар 2, шар зв'язку даних) не має уявлення про протоколи над ним, такі як IP або TCP, тому він не має уявлення про потоки.
Spiff

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

5

Якщо ви дотримуєтесь SATA-дисків, реалізація Ethernet 10Gb та побудова RAID10 на сервері розумного розміру призведе до того, що ви помітно збільшите продуктивність, ніж на одному SATA-диску. Це буде гідною інвестицією, оскільки ви можете поділитися сервером на стільки робочих станцій, скільки вам потрібно, і в майбутньому додавати комутатори. Вам потрібно буде запустити кабель Ethernet 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

Напевно, варто відзначити, що, хоча ваше перше речення є правдивим для одного користувача, 10Gb, що має спільну пропускну здатність, означає, що для декількох користувачів, які намагаються отримати доступ до спільної доступу одночасно, пропускна здатність, яку кожен отримує, з часом знизиться нижче рівня SATA одного користувача.
Ден Нелі

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

@jiggunjer Дуже правда, але більшість, хто створив би ПК із Samba, називав би це файловим сервером, а не NAS. Я просто граю на техніці, щоб мати на увазі пристрій спеціального призначення. Також дуже вірно щодо SAN, тому я визнав їх зайвими.
Гарграварр

@DanNeely так, оскільки більше клієнтів додаються при одночасному доступі, швидкість роботи кожної робочої станції зменшиться, але загальна швидкість даних, що виходять із сервера, повинна залишатися дуже високою. Розширення з кешем SSD може компенсувати більшу частину цього.
Гарграварр

3

Ніщо не перемагає 10 гбіт гнучкості та простоти конфігурації, але SAS напрочуд спрацьовує все самостійно:

Для невеликої кількості робочих станцій (n <8), де обсяги не потрібно записувати з декількох комп'ютерів одночасно, SAS чудово працює. За допомогою Tyan JBOD (1500 доларів) та LSI HBA (400 доларів) ми отримуємо тривалі передачі на SSD 3400 Мбіт / с (27 Gbps). JBOD має внутрішній перемикач з 3 посиланнями до HBA, але SAS-комутатори доступні для більш високої кількості портів.

Ось тест на швидкість одного з наших томів:

CDM5, що показує 2862 МБ / с послідовним зчитуванням з 32 іопами в черзі.  4 к однопотокове випадкове зчитування 29 Мб / с

Внутрішньо ми використовуємо це рішення з кластерним Windows Server, на якому розміщені простори пам’яті , які розповсюджуються на клієнтів з 10 Гб.

Кластеризовані сервери Windows


2

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

По-перше, M.2 SSD, який дав правильну материнську плату, може досягати 2 ГБ-4 ГБ / с, а можливо і вище. РАЙДУЙТЕ декілька з них разом, і ваша швидкість ще вище.

Об'єднання декількох 10gb NIC може наблизити до нашої швидкості.

Що-небудь більше 10 г - це набагато більше грошей.

40-гігабітний NIC https://www.serversupply.com/products/part_search/pid_lookup.asp?pid=263133&gclid=Cj0KEQiA9P7FBRCtoO33_LGUtPQBEiQAU_tBgIU2jZrJKf0kXFy96p07_0A007_0k07_0k07_0x07_0k07_0k07_0k07_0k07_0k07_0k07_0x07_0k07) -0x07_0k07k07_0k07_0k07_0k07_0k07)


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

2
@rackandboneman: Ось чому у вас розумні NIC. 10Gb / s Ethernet - це швидкість в режимі необмеженої кількості. Заголовки Ethernet, IP та TCP можуть оброблятися NIC, залишаючи процесор для обробки лише реальних даних.
MSalters

Якщо ці механізми розвантаження працюють в поєднанні з вашим сценарієм застосування - і, хоча вони скорочують використання процесора, вони не зменшать об'єм даних ТАКОГО істотно, якщо в першу чергу багато цього трафіку не буде сміттям ...
rackandboneman

@rackandboneman PCIe 3.0 x16 існує, тому швидкість може бути вдвічі більшою.
кібернард

10gbe може бути набагато дешевше, ніж це: Mellanox nic за 180 доларів, а 25gbe - близько Mellanox 25gbe за 300 доларів . Що вбиває вас - це вартість порту на комутаторах, але eBay або повноцінна сітка змушує цю проблему піти назовні.
Мітч

0

Використовуйте волоконно-мережеву карту з волоконним перемикачем, в ідеалі багатомодовий або одномодовий з накладками. Якщо у вас є бюджет, ви можете зробити все це 10gbps, якщо ви використовуєте агрегацію посилань з подвійною волоконною карткою порту, ви можете отримати 20gbps. Оскільки термін "відносно доступний" змінюється залежно від вашого бюджету, корисні будуть фактичні цифри щодо того, що ви готові витратити.


0

Найдешевшим способом було б використання агрегації ланок (IE, що працює з N кабелів, як правило, 2) замість одного.

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

Очевидно, це означає, що вам потрібно щонайменше 4 порти для одного клієнтського сервера.


і клієнту потрібні два порти ... Чи працюють з цим прості комутатори? чи це повинно бути прямим зв’язком?
jiggunjer

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

це збігання те саме, що зв’язок, згаданий у коментарях відповіді від @Spiff? У такому випадку пропускна здатність не збільшується для доступу до одного файлу ...
jiggunjer

@jiggunjer Це дійсно зводиться до того, як ви робите налаштування, тому я не можу реально відповісти.
Анци

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