Jak zbudować szybką sieć lokalną

35

Pracuję w produkcji filmowej i potrzebuję BARDZO szybkiego dostępu do bardzo dużych plików surowych nagrań. Obecnie używam stacji dokujących eSATA 6 Gb / s dla wewnętrznych dysków twardych, które działają tak szybko, jak dysk.

Gdybym miał użyć serwera i połączyć się ze swoimi stacjami roboczymi przez sieć, jaka (stosunkowo niedroga) technologia pozwoliłaby mi zbliżyć się do prędkości dysku lub ją przekroczyć?

Ben
źródło
12
Sieć Ethernet 10 Gb / s jest obecnie w zasięgu „niedrogiego, jeśli masz budżet”. Jednak 8 lub 16 Gb / s SAN (sieć pamięci masowej - znana również jako kanał światłowodowy) może być lepiej dostosowana do konkretnego zastosowania?
Ecnerwal
3
Jest specjalnie zaprojektowany / zoptymalizowany do sieci pamięci.
Ecnerwal
3
Chcesz tylko sprawdzić - czy używasz dysków SSD? Jeśli nie, jest to niezbędna aktualizacja.
trpt4him
1
Nie widzę tu żadnej wartości dodanej SAN w porównaniu z prostszym i tańszym NAS.
jiggunjer
3
Aby poprawnie odpowiedzieć na to pytanie, potrzeba więcej informacji: jaka ilość danych musi być przechowywana, ilu jednoczesnych użytkowników, skąd są dostępne dane (z jakiego rodzaju komputera)? Sieć 100 Gb / s nie pomoże, jeśli jest dostępna z komputera 2 lub 3 z kartą sieciową 1 Gb.
JFL

Odpowiedzi:

31

Tutaj na początku 2017 r., Sądząc z informacji łatwo dostępnych online, wygląda na to, że najszybsze dyski twarde SATA osiągają prędkość około 220 MegaBajtów / s, czyli 1,760 Gigabitów / s.

Jeśli więc próbujesz pobić prędkość pojedynczego napędu i ograniczasz się do dysków twardych ze względu na koszt za terabajt w przypadku dużych plików wideo, wtedy 10 Gigabit Ethernet jest wystarczający.


Nawiasem mówiąc, należy zauważyć, że Thunderbolt Networking ma również szybkość 10 Gigabit / s, więc jeśli masz już porty Thunderbolt, możesz z tym eksperymentować. Możliwe, że pobije twoje 6 gigabitowych portów eSATA 3, chociaż nie jestem tego pewien, ponieważ eSATA jest bardzo specyficzna dla pamięci, podczas gdy robienie pamięci przez Ethernet ma większy narzut. Zauważ też, że Thunderbolt jest magistralą stacjonarną; osiąga zaledwie kilka metrów, a nie 100 m, które może obsłużyć 10 Gigabit Ethernet. Podczas gdy Thunderbolt może być interesujący do eksperymentowania i tworzenia prototypów podczas ważenia opcji, prawdopodobnie nie jest to odpowiednie długoterminowe rozwiązanie, chyba że chcesz zachować wszystkie stacje robocze i dyski połączone ze sobą przy dużym stole.


Tak było w przypadku pojedynczych dysków twardych. Ale jeśli RAIDujesz te dyski razem, aby każdy odczyt lub zapis był rozłożony na wiele dysków, możesz uzyskać znacznie lepszą wydajność niż wydajność pojedynczego dysku. Ponadto, w zależności od budżetu, możesz umieścić dyski SSD PCIe / M.2 NVME w komputerze PC, aby działały jak serwer / NAS, i możesz uzyskać niesamowitą wydajność szybkiej pamięci masowej (około 3,4 GigaByte / s == 27 gigabit / s) na napęd.

W takim przypadku możesz spojrzeć na coś szybszego niż 10 Gigabit Ethernet, ale rozglądając się po Internecie, wygląda na to, że ceny znacznie przekraczają 10 Gigabit Ethernet. Warto więc przyjrzeć się agregacji linków w wielu łączach 10Gigabit. Widziałem także pewne anegdoty online, w których używany sprzęt sieciowy, taki jak zużyty sprzęt InfiniBand 40 Gb / s, można kupić na eBayu za tanie pieniądze, jeśli nie masz nic przeciwko kłopotom związanym z kupowaniem używanego sprzętu w serwisie eBay.

Spiff
źródło
1
Co powiesz na wiele kart sieciowych 10 Gb + wiązanie?
André Borie,
2
łączenie pozwala, aby osobne przepływy korzystały z różnych łączy fizycznych, ale pojedynczy przepływ użyje tylko jednej karty sieciowej. Przyda się to, gdy kilka plików jest udostępnianych różnym osobom jednocześnie, ale nie zwiększy przepustowości dla dostępu do jednego pliku.
JFL
4
@JohnU Nie, Ethernet jest 94% sprawny ze standardowymi ramkami 1500 bajtów, a jeszcze lepiej z ramkami jumbo. Rutynowo widzę przepustowość 930+ Mbps, nawet nie próbując. Gigabit Ethernet nie zezwala na koncentratory, tylko przełączniki, więc zawsze jest w trybie pełnego dupleksu, a zatem nigdy nie ma kolizji.
Spiff
1
@JFL Ethernet bonding (agregacja łączy IEEE 802.3ad) rozdziela obciążenie pakiet po pakiecie, a nie na przepływ. Ponieważ technologie sieciowe są zwykle projektowane w postaci dyskretnych warstw, Ethernet (warstwa 2, warstwa łącza danych) nie ma pojęcia o protokołach nad nimi, takich jak IP lub TCP, więc nie ma pojęcia o przepływach.
Spiff
2
Agregacja @JFL Linux z pewnością może wykorzystywać pewne informacje warstwy 3 + (Linux może robić wiele niezwykłych rzeczy), pamiętaj, że naprawdę potrzebujesz obu stron do obsługi tej samej metody łączenia, aby była użyteczna. Jeśli łączysz się z przełącznikiem, możesz naprawdę korzystać z tego, co obsługuje przełącznik.
Zoredache,
5

Jeśli pozostaniesz przy dyskach SATA, wdrożenie sieci Ethernet 10 Gb i zbudowanie rozsądnej wielkości macierzy RAID10 na serwerze da ci zauważalny wzrost wydajności w porównaniu do pojedynczego dysku SATA. Będzie to godna inwestycja, ponieważ możesz dzielić serwer z tyloma stacjami roboczymi, ile potrzebujesz, i dodać w przyszłości, dodając przełączniki. Musisz uruchomić kabel Ethernet Cat-6, ponieważ Cat-5E go nie przecina - nie zapomnij dodać tego kosztu do swoich obliczeń. Możesz także dodać dyski SSD jako pamięć podręczną, aby jeszcze bardziej przyspieszyć system; ponieważ pracujesz z materiałami wideo, zakładam, że potrzebujesz ogromnej ilości miejsca do przechowywania, którego zbudowanie przy użyciu samych dysków SSD byłoby bardzo drogie.

Możesz kupić wcześniej przygotowany serwer do montażu w szafie serwerowej od Dell lub HP i użyć sprzętowej karty RAID, a jeśli jesteś bardziej specjalistą od sprzętu, możesz kupić tańszą obudowę od Supermicro i samodzielnie zbudować urządzenie pamięci masowej, korzystając z oprogramowania RAID w Windows lub Linux. Sprzętowa macierz RAID jest często szybsza, gdy zaangażowana jest macierz RAID1, ponieważ oprogramowanie musi kolejno zapisywać na każdym dysku i czekać na zakończenie zapisu przed przejściem do następnej operacji; karta RAID może ogólnie zapisywać na obu dyskach równolegle i buforować operację zapisu, natychmiast przywracając kontrolę nad systemem operacyjnym. Należy jednak pamiętać, że chociaż RAID0 byłby jeszcze szybszy, nie ma nadmiarowości, a awaria jednego dysku spowoduje całkowitą utratę danych; nigdy nie używaj RAID0, gdy masz dane, które chcesz zachować.

Na najwyższym poziomie skali masz sieci pamięci masowej (SAN), ale są one zaprojektowane tak, aby umożliwić wiele operacji z ogromnej liczby oddzielnych klientów równolegle; Zaletą tego jest to, że przepustowość jest bardzo wysoka dla niewielkiej liczby podłączonych maszyn, ale prawdopodobnie jest nadmierna w stosunku do twoich potrzeb i bardzo droga. Na najniższym poziomie masz urządzenia Network Attached Storage (NAS), o których wspominali inni, ale chociaż znacznie prostsze niż pełny serwer, nie polecam ich, ponieważ NAS jest często czarną skrzynką; Zaprojektowano je tak, aby działały w trybie Plug & Play dla większości użytkowników, w wyniku czego masz niewielką kontrolę nad systemem operacyjnym - po prostu musiałem odesłać mały serwer NAS, który kupiłem do biura klienta, ponieważ stał się niestabilny po całym dniu użytkowania.

Kolejną zaletą budowania serwera jest to, że koncentrujesz cały materiał w jednym miejscu, co sprawia, że ​​praktyczne i względnie łatwe jest regularne tworzenie kopii zapasowych. Nigdy nie zaniedbuj strategii tworzenia kopii zapasowych; pewnego dnia będziesz musiał na tym polegać!

Gargravarr
źródło
3
„oprogramowanie musi kolejno zapisywać na każdym dysku i czekać na zakończenie zapisu przed przejściem do następnej operacji”. Nie było to prawdą przez kilka dziesięcioleci; nawet dyski niebędące serwerami obsługują obecnie kolejkowanie poleceń. I ściśle mówiąc, z oprogramowaniem DMA też nie trzeba było czekać. To jest obsługiwane w komputerach stacjonarnych od około 1998 roku.
MSalters
Prawdopodobnie warto zauważyć, że chociaż twoje pierwsze zdanie jest prawdziwe dla jednego użytkownika, współdzielenie przepustowości 10 Gb oznacza, że ​​przy wielu użytkownikach próbujących jednocześnie uzyskać dostęp do udziału, przepustowość każdego z nich ostatecznie spadnie poniżej poziomów SATA dla jednego użytkownika.
Dan Neely,
2
NAS z definicji nie jest jakimś specjalnym urządzeniem, możesz mieć normalny komputer z systemem Linux z sambą lub NFS i nazwać go NAS. Kluczową różnicą jest udostępnianie na poziomie plików vs. udostępnianie na poziomie bloków. Z urządzenia blokowego może korzystać jednocześnie tylko jeden klient. Również sieci SAN są droższe i wymagają dłuższej / większej wiedzy do skonfigurowania.
jiggunjer
@jiggunjer To prawda, ale większość, którzy zbudowaliby komputer z Sambą, nazwaliby to serwerem plików, a nie NAS. Po prostu gram technicznie, aby oznaczać urządzenie specjalnego przeznaczenia. Również bardzo prawdziwe o sieciach SAN, dlatego uznałem je za nadmiar.
Gargravarr
@DanOle tak, ponieważ więcej klientów jest dodawanych z jednoczesnym dostępem, prędkość do każdej stacji roboczej spadnie, ale całkowita szybkość danych wychodzących z serwera powinna pozostać bardzo wysoka. Zwiększanie pamięci podręcznej SSD może zrekompensować większość tego.
Gargravarr
3

Nic nie przebije elastyczności i łatwości konfiguracji 10 gbe, ale SAS sam w sobie jest zaskakująco łatwy w sieci:

W przypadku małej liczby stacji roboczych (n <8), w których woluminy nie muszą być zapisywane z wielu komputerów jednocześnie, SAS działa doskonale. Dzięki Tyan JBOD (1500 USD) i LSI HBA (400 USD) otrzymujemy 3400 MB / s (27 Gb / s) trwałych transferów na dysk SSD. JBOD ma wewnętrzny przełącznik z 3 łączami wstępującymi do kart HBA, ale przełączniki SAS są dostępne dla większej liczby portów.

Oto test prędkości jednego z naszych tomów:

CDM5 pokazuje sekwencyjny odczyt 2862 MB / s przy 32 kolejkach Iops w kolejce.  4k jednowątkowy losowy odczyt 29 MB / s

Wewnętrznie korzystamy z tego rozwiązania w klastrowanym systemie Windows Server z uruchomionymi miejscami do magazynowania, które są dystrybuowane do klientów z 10 gbe.

Klastry serwerów Windows

Mitch
źródło
2

https://www.newegg.com/Product/Product.aspx?Item=N82E16820147593&cm_re=samsung_m.2- -20-147-593- -product

Po pierwsze, dysk SSD M.2, który przy prawidłowej płycie głównej może osiągnąć 2 gb-4 gb / s, a być może nawet wyższy. Zrzuć kilka z nich razem, a twoje prędkości są jeszcze wyższe.

Połączenie wielu kart sieciowych 10 Gb może zbliżyć się do prędkości natywnych.

Coś więcej niż 10 g to znacznie więcej pieniędzy.

40 Gigabit NIC https://www.serversupply.com/products/part_search/pid_lookup.asp?pid=263133&gclid=Cj0KEQiA9P7FBRCtoO33_LGUtPQBEiQAU_tBgIU2jZrJKf0kXFy96roOllcRkp7j-VoubG_n7xb0_pgaAnaT8P8HAQ

cybernard
źródło
Zwiększenie prędkości powyżej 10 Gb może również ograniczyć szybkość magistrali lokalnej na scenie jako czynnik ograniczający :) Gniazdo PCI-express 2.0 x16 ma teoretycznie 64 GBit / s - ale narzuty ze wszystkich stron (magistrala do pamięci, oprogramowanie sterownika do pamięci, obciążenie procesora ...) ugryzie to dość blisko miejsca, w którym możesz się cieszyć, jeśli Twoje 10 GBe działa z prędkością linii ...
rackandboneman
2
@rackandboneman: Właśnie dlatego masz inteligentne karty sieciowe. Ethernet 10 Gb / s to czysta prędkość. NIC może obsługiwać nagłówki Ethernet, IP i TCP, dzięki czemu procesor zajmuje się tylko rzeczywistymi danymi.
MSalters
JEŻELI te mechanizmy odciążające działają w połączeniu ze scenariuszem aplikacji - i chociaż ograniczają użycie procesora, nie zmniejszą znacząco ilości danych, KTÓRE, chyba że znaczna część tego ruchu to śmieci, przede wszystkim ...
rackandboneman
@rackandboneman PCIe 3.0 x16 istnieje, więc prędkości mogą być dwukrotnie wyższe.
cybernard
10 gbe może być znacznie tańsze: nic Mellanox za 180 USD, a 25 gbe jest zbliżone Mellanox 25 gbe za 300 USD . To, co Cię zabija, to koszt portu na przełącznikach, ale eBay lub pełna siatka sprawia, że ​​problem zniknie.
Mitch,
0

Użyj karty ethernetowej z przełącznikiem światłowodowym, najlepiej w trybie wielomodowym lub w trybie pojedynczym z padem. Jeśli masz budżet, możesz uzyskać całość 10 Gb / s, jeśli używasz agregacji łączy z kartą światłowodową z dwoma portami, możesz uzyskać 20 Gb / s. Ponieważ termin „stosunkowo niedrogi” zmienia się w zależności od Twojego budżetu, pomocne byłyby rzeczywiste liczby, które chcesz wydać.

Słoneczny
źródło
0

Najtańszym sposobem byłoby użycie agregacji łączy (kable IE z obsługą N, zwykle 2) zamiast jednego.

W ten sposób tanie łącze 1 Gb stanie się łączem 2 Gb.

Oczywiście oznacza to, że potrzebujesz co najmniej 4 portów dla jednego serwera klienta.

Antzi
źródło
a klient potrzebuje 2 portów ... Czy proste przełączniki działają z tym? czy powinien to być bezpośredni link?
jiggunjer
W tym celu można użyć prostego przełącznika @jiggunjer, ale potrzebujesz specjalnej konfiguracji na wszystkich komputerach / serwerach korzystających z tego schematu
Antzi
czy ta agregacja jest taka sama jak łączenie, o którym mowa w komentarzach do odpowiedzi @Spiff? W takim przypadku przepustowość nie jest zwiększana dla dostępu do jednego pliku ...
jiggunjer,
@ jiggunjer To naprawdę sprowadza się do tego, jak przeprowadzasz konfigurację, więc nie mogę tak naprawdę odpowiedzieć.
Antzi
1
@FlorianCastellane najnowszy tani, który kupiłem, nie był. Zależy od specyfikacji
Antzi