Przez długie lata standardem w każdym routerze, laptopie oraz komputerze PC był gigabitowy port Ethernet. Taka prędkość sieci wystarczała, by z sukcesem cieszyć się szybkim połączeniem z internetem, przenosić pliki czy grać w sieci lokalnej ze znajomymi (co dla niektórych może dziś brzmieć jak egzotyka).
Jednak z czasem charakterystyka urządzeń podłączanych do domowych sieci lokalnych oraz tych biurowych zaczęła się zmieniać. Na popularności zyskały serwery NAS, a coraz więcej osób zaczęło budować na ich podstawie własne centra danych, gdzie na wieloterabajtowych dyskach przechowywano całe cyfrowe życie. Mimo to, nie motywowało to nikogo do zwiększenia przepustowości portów Ethernet. Choć pojedynczy dysk HDD potrafił już wysycić przepustowość gigabitowego portu, mało kto dostrzegał to jako realny problem.
Problem gigabitowego Ethernetu stawał się coraz bardziej widoczny wraz ze wzrostem wydajności samych systemów przechowywania danych. Już macierze składające się z kilku dysków HDD potrafiły przekraczać możliwości 1 GbE, a upowszechnienie SSD oraz nośników NVMe tylko pogłębiło tę dysproporcję. Wzrost prędkości Wi-Fi szedł w parze z potrzebą przewodowych uplinków przekraczających 1 Gb/s.
Dziś wiele NAS-ów wyposażonych jest w dedykowane sloty NVMe, które umożliwiają stworzenie szybkiej pamięci podręcznej dla HDD, znacząco przyspieszając operacje na danych. Aby skutecznie skorzystać z tej technologii, potrzebowaliśmy szybszych interfejsów Ethernet, ponieważ łączenie kilku łączy gigabitowych było znacznie bardziej skomplikowane i nie gwarantowało wyższej przepustowości pojedynczego połączenia.

Okazało się, że w wielu przypadkach obecna infrastruktura umożliwia zwiększenie prędkości do 2,5 GbE. Takie transfery były osiągalne nawet na przewodach Cat 5E, które montowane były już od dłuższego czasu. Z kolei okablowanie kategorii 6 pozwalało na osiągnięcie nawet 10 GbE przy typowych długościach przewodów w domach.
Na co to w ogóle komu?
Apetyt rośnie w miarę jedzenia. Im więcej danych przechowujemy na naszych domowych urządzeniach, tym szybszy dostęp do nich wydaje się niezbędny. Nie ma to dużego znaczenia przy kolekcjach zdjęć w formacie JPG czy archiwalnych dokumentach. W przypadku jednak wideo, dużych kolekcji gier czy pracy profesjonalnej, prędkość 10 Gb/s może mieć kluczowe znaczenie. Taka prędkość pozwala zewnętrznemu urządzeniu osiągnąć transfery zbliżone do lokalnych nośników, co umożliwia szybkie wykonanie backupu całego komputera lub przeniesienie kilkudziesięciu bądź nawet kilkuset gigabajtów danych w krótkim czasie.
Ma to również ogromne znaczenie podczas montażu wideo, obróbki zdjęć czy pracy z grafiką, zwłaszcza gdy z tych samych zasobów korzysta kilka osób. Centralny serwer może przechowywać wszystkie materiały bez konieczności każdorazowego kopiowania całego projektu na komputer użytkownika. Warto zaznaczyć, że taki komputer ma ograniczoną pojemność – szczególnie w dobie, gdy ceny pamięci NAND wystrzeliły w górę.
To także doskonała baza do budowy domowego homelabu. Nie dlatego, że Docker czy maszyny wirtualne wymagają aż takiej przepustowości, ale dlatego, że szybka sieć zdecydowanie ułatwia korzystanie ze współdzielonego magazynu, wykonywanie backupów, migrację maszyn wirtualnych czy przetwarzanie dużych zbiorów danych na innym komputerze lub serwerze.
Oczywiście nie twierdzę, że w sieci 1- lub 2,5-gigabitowej nie da się tego zrobić. Po prostu prędkość 10 GbE znacznie przyspiesza wiele procesów (i zajmuje mniej czasu).
Wąskie gardła, czyli na co uważać
Kluczowy jest oczywiście sprzęt, z którego korzystamy. Wszystkie elementy znajdujące się pomiędzy urządzeniami, które mają komunikować się z prędkością 10 Gb/s, muszą wspierać ten standard. Dotyczy to głównie kart sieciowych w komputerze i NAS-ie oraz switcha, do którego są podłączone.
Nie ma przy tym konieczności, aby cała domowa sieć działała w systemie 10-gigabitowym. W większości przypadków wystarczy, by tak szybkie połączenie uzyskały jedynie te urządzenia, które naprawdę go potrzebują. Może to być na przykład komputer roboczy oraz NAS. Router nie zawsze musi być częścią tej układanki. Jeżeli komputer i NAS znajdują się w tej samej sieci lokalnej i komunikują się przez ten sam switch, ich ruch nie przechodzi przez router. Można zatem pozostawić w nim porty 1 lub 2,5 GbE, zwłaszcza, że nasze połączenie z internetem i tak jest wolniejsze.
Równie ważne jest samo okablowanie. W przypadku 10GBASE-T bezpiecznym minimum jest przewód kategorii 6, który na typowych dla domu, krótszych dystansach powinien bez problemu poradzić sobie z takim transferem. Dla nowych instalacji i dłuższych odcinków lepszym wyborem będzie Cat 6A, zaprojektowane do obsługi 10 GbE na dystansie do 100 metrów. Na krótkich odcinkach 10 Gb/s może działać również na dobrej jakości Cat 5e, chociaż nie jest to gwarantowane rozwiązanie.
Jednak to jeszcze nie koniec wymagań. Sam fakt, że dwa urządzenia negocjują połączenie 10 Gb/s, nie oznacza, że podczas kopiowania plików osiągniemy transfer na poziomie 1,25 GB/s.
Pierwszym poważnym wąskim gardłem zazwyczaj okaże się magazyn danych. Cały transfer będzie odbywał się z szybkością najwolniejszego elementu tego łańcucha. Jeśli znajdzie się w nim pojedynczy mechaniczny dysk HDD, nie będzie on w stanie wykorzystać pełnych możliwości 10 GbE. Podobnie rzecz ma się z pojedynczym SSD podłączonym przez SATA, którego transfer sekwencyjny ogranicza sam interfejs. Dopiero macierz składająca się z kilku szybkich dysków lub nośnik NVMe pozwoli zbliżyć się do wydolności sieci 10-gigabitowej.
Kolejnym czynnikiem jest wydajność samych urządzeń. Obsługa ruchu o przepustowości 10 Gb/s wymaga już wyraźnych zasobów procesora. Dotyczy to szczególnie słabszych NAS-ów, starszych komputerów oraz sytuacji, w których dochodzą dodatkowe operacje, takie jak szyfrowanie, kompresja czy obsługa wielu równoczesnych połączeń.
Istotna jest także konfiguracja stosu sieciowego. W przypadku transferów SMB warto sprawdzić obsługę SMB Multichannel zarówno po stronie klienta, jak i serwera. Ta funkcja może utworzyć kilka równoległych połączeń i, przy odpowiedniej karcie sieciowej wspierającej RSS, rozłożyć ich obsługę pomiędzy wieloma rdzeniami procesora.
W praktyce, aby sprawdzić, czy to właśnie sieć jest naszym ograniczeniem, warto odseparować ją od magazynu danych. Zamiast kopiować pliki, możemy przeprowadzić test za pomocą narzędzia iperf3. Jeśli pomiędzy dwoma urządzeniami osiągamy w nim wynik zbliżony do maksymalnej przepustowości łącza, a kopiowanie danych odbywa się z prędkością 300 czy 500 MB/s, jasne jest, że problem należy szukać gdzie indziej.
Jak to wygląda u mnie?
W moim mieszkaniu przewody poprowadzone w ścianach to kategoria 5E. W efekcie komputer w gabinecie komunikuje się z routerem w salonie w standardzie 2,5 GbE. Moje 10 gigabitów działa zatem wyłącznie w obrębie jednego pomieszczenia.
Sercem całej mojej infrastruktury jest niezarządzalny switch TP-LINK TL-SX105. Wcześniej używałem MikroTik CRS304, który jednak nie współpracował zbyt dobrze z kontrolerem Marvell AQC113CS na płycie głównej komputera. To prowadziło do losowego zrywania połączenia. Sam switch miał interesującą ofertę pod kątem zarządzania – system RouterOS oferował ogromne możliwości konfiguracji, diagnostyki oraz zarządzania siecią. Ostatecznie okazało się to dla mnie bardziej ciekawostką niż realną korzyścią – nie znalazłem na niego zastosowania. TP-LINK jest mniej konfigurowalny, ale za to posiada wszystkie 5 portów w standardzie 10 GbE i działa stabilnie.
Serwerem NAS jest UGREEN DXP 6800 Pro, który dysponuje dwoma złączami 10 GbE (wykorzystuję w tej chwili tylko jedno z nich). Nie bez powodu nazwałem go „Pieszczoszkiem”. Odzwierciedla to wysiłek, który włożyłem w jego dostosowanie zaraz po zakupie. Zainstalowałem system Unraid, wymieniłem zasilacz na mocniejszy, aby działał ciszej i chłodniej, oraz wymieniłem fabryczne wentylatory na nowe marki Noctua. Rozebrałem również urządzenie, aby wyszlifować papierem ściernym powierzchnię radiatora CPU i zastąpić fabryczną pastę termoprzewodzącą pastą Honeywell PTM 7950.
Całości dopełnia karta graficzna w slocie PCIe – Nvidia RTX A2000 12GB, zakupiona jeszcze w czasach rozsądnych cen. Karta ta nie wymaga zewnętrznego zasilania, co czyni ją idealną do tego typu zastosowań. Problematyczna była natomiast jej grubość, gdyż to model 2-slotowy. Rozwiązałem ten problem, zamawiając na n3rdware.com niestandardowy cooler, co jednocześnie pozwoliło wymienić termopady w samej karcie.
Uprzedzając pytania – główną motywacją było uruchamianie małych modeli LLM oraz ich integracja z moimi automatyzacjami w n8n oraz Home Assistant (który obsługuje smart home w mieszkaniu – ale to już temat na osobny artykuł). Choć taka karta doskonale sprawdza się również przy transkodowaniu multimediów.
NAS ma dwa dyski Seagate FireCuda 510 o pojemności 2 TB, spięte w mirror ZFS. To właśnie na nich zainstalowane są kontenery Dockera oraz dane, do których potrzebuję szybkiego dostępu. Na ten pool w pierwszej kolejności trafiają również przesyłane przez sieć pliki.
Dopiero później dane mogą trafić na główny magazyn, który składa się z kilku dysków WD Red Pro o pojemnościach od 4 do 8 TB. Tutaj wykorzystuję jedną z największych zalet Unraida – możliwość łączenia w jednej macierzy dysków o różnych pojemnościach i stosunkowo łatwego dokładania kolejnych nośników.
Taki podział ma jednak konkretne konsekwencje dla wydajności. Główna macierz Unraida nie działa jak klasyczny RAID, w którym dane pojedynczego pliku są rozkładane pomiędzy kilka dysków w celu zwiększenia szybkości. Plik znajduje się na jednym konkretnym HDD, więc podczas jego odczytu ogranicza mnie wydajność tego pojedynczego nośnika. Nawet mając połączenie 10 GbE, z jednego WD Red Pro nie uzyskam nagle transferu przekraczającego 1 GB/s.
Za to sytuacja wygląda zupełnie inaczej w przypadku puli NVMe. Jej wydajność jest znacznie większa od możliwości samego interfejsu 10 GbE. Dzięki temu pliki przesyłane z komputera mogą najpierw trafiać tam z bardzo dużą prędkością, a dopiero później Unraid co jakiś czas przenosi je na właściwe dyski HDD.
Ile z tych 10 gigabitów faktycznie wykorzystuję?
Najpierw sprawdziłem samą sieć, wykorzystując iperf3, uruchamiając serwer na NAS-ie i klienta na komputerze z Windowsem. Rezultat był prawie idealny. Zarówno przy transmisji w jedną, jak i w drugą stronę, pojedynczy strumień TCP osiągał około 9,49 Gb/s. Oznacza to około 1,19 GB/s przesyłanych danych. Innymi słowy: karty sieciowe, switch i sam stos TCP nie stanowią w tym przypadku istotnego ograniczenia. Fizyczna infrastruktura wykorzystuje praktycznie całą dostępną przepustowość 10 GbE.
Co ciekawe, osiągnąłem taki rezultat przy standardowym MTU 1500. Nie było potrzeby włączania Jumbo Frames ani stosowania innych powszechnych „optymalizacji” dla sieci 10-gigabitowej. Jeżeli standardowa konfiguracja już saturuje łącze, komplikowanie jej dla kilku dodatkowych promili wydajności nie ma większego sensu.
Prawdziwe różnice pojawiły się, gdy zamiast syntetycznego ruchu sieciowego zacząłem przesyłać prawdziwy plik. Do testów wykorzystałem plik o wielkości 50 GB i standardowe Robocopy z wyłączonym buforowaniem I/O. Najpierw skierowałem go bezpośrednio na główną macierz HDD Unraida.
Tu doświadczyłem brutalnego zderzenia teorii z rzeczywistością. Zapis bezpośrednio na HDD odbywał się z prędkością zaledwie około 78 MB/s. To niecałe 0,63 Gb/s, co oznacza, że nawet nie osiągam wydajności klasycznego gigabitowego Ethernetu. W tym przypadku wąskim gardłem okazała się sama macierz. Unraid, zapisując do chronionego obszaru, musi uwzględniać dane parzystości, co prowadzi do dodatkowych operacji na dyskach i może ograniczać szybkość zapisu. Odczyt tego samego pliku odbył się już znacznie lepiej, osiągając prędkość około 196 MB/s, co odpowiada 1,57 Gb/s. W tym przypadku nie trzeba aktualizować parzystości, dlatego głównym ograniczeniem jest po prostu wydajność pojedynczego mechanicznego dysku.
To jednocześnie doskonale ilustruje, dlaczego nawet 2,5 GbE potrafi mieć sens przy zwykłym NAS-ie z HDD. Pojedynczy szybki dysk mechaniczny już może przekroczyć możliwości gigabitowego Ethernetu, chociaż do wykorzystania pełnego potencjału 10 GbE jeszcze daleko.
W przypadku SSD sytuacja wygląda inaczej. Zapis pliku na lustrze składającym się z dwóch dysków Seagate FireCuda 510 osiągnął około 570 MB/s, co odpowiada mniej więcej 4,56 Gb/s. W tym przypadku sieć 2,5 GbE byłaby już wyraźnym ograniczeniem, ponieważ jej teoretyczne maksimum wynosi tylko 312,5 MB/s, a realny transfer byłby jeszcze niższy. Podczas odczytu natomiast transfer wzrósł do około 1,15 GB/s. To wynik bardzo bliski temu, co chwilę wcześniej pokazał iperf3. Oznacza to, że przy odpowiednio szybkim magazynie danych SMB w mojej konfiguracji jest w stanie wykorzystać niemal całą dostępną przepustowość 10 GbE.
Warto tu zaznaczyć, że ZFS wykorzystuje pamięć RAM jako ARC, więc część danych podczas odczytu mogła zostać obsłużona z pamięci. NAS posiada jednak 32 GB RAM, podczas gdy testowany plik zajmował 50 GB, więc cały transfer nie mógł pochodzić wyłącznie z pamięci cache.
| Test | Transfer | Wykorzystanie 10 GbE |
|---|---|---|
iperf3 |
~1186 MB/s | ~95% |
| NVMe ZFS → PC | 1149 MB/s | ~92% |
| PC → NVMe ZFS | 570 MB/s | ~46% |
| HDD → PC | 196 MB/s | ~16% |
| PC → HDD array | 78 MB/s | ~6% |
Czy 10 GbE jest potrzebne w każdym domu?
Oczywiście, że nie.
Jeśli głównym zastosowaniem domowej sieci jest dostęp do internetu, oglądanie filmów, granie czy zarządzanie inteligentnym domem, nawet 1 GbE pozostaje bardzo szybkim standardem (a w praktyce większość osób po prostu korzysta z Wi-Fi, zamiast bawić się w okablowanie). W przypadkach, gdzie przetwarzane są większe paczki danych, rozsądniejszym krokiem będzie dziś 2,5 GbE, szczególnie że działa na istniejącym okablowaniu Cat 5e, a coraz częściej pojawia się w routerach, płytach głównych czy NAS-ach.
Jednak gdy regularnie przenosimy dziesiątki lub setki gigabajtów, wykonujemy duże backupy, montujemy materiały wideo bezpośrednio z NAS-a, korzystamy ze współdzielonego magazynu lub budujemy zaawansowany homelab, różnica na korzyść 10 GbE staje się bardzo wyraźna.
