嘗試在我的家庭網路上實現更快的檔案傳輸速率

嘗試在我的家庭網路上實現更快的檔案傳輸速率

我試著自己解決這個問題,但我已經到了需要你的幫助和/或鼓勵的地步。

我設定了一個小型家庭網路。主要組成部分是

  1. 2 台運行 OS X Yosemite (10.10.4) 的 Mac
    • 1 iMac 有一個千兆乙太網路端口
    • 1 MBP 具有可作為千兆位元乙太網路運作的 Thunderbolt 乙太網路適配器
    • 兩台 Mac 還配有運行 802.11n 的無線網卡
  2. 1 FiOS網關(光纖網路)/路由器/無線路由器
    • 乙太網路連接埠為千兆位,但 Verizon 的韌體將每個連接埠限制為最大 1500 MTU 的封包
    • WiFi為雙頻2.4GHz/5GHz天線; 5GHz 可以處理 802.11ac
  3. 1 Synology DS1010+ 設定為 RAID 6
    • NAS 有兩個 1Gb 乙太網路端口,可設定用於巨型資料包
    • 所有 5 個驅動器均為 7200RPM
    • 它提供大型媒體文件,例如原始數位檔案、電影、iTunes 媒體庫等。
  4. 乙太網路連接的印表機和各種無線設備並沒有真正考慮到這個問題,因為我最關心的是 NAS 和 Mac 之間的連接和效能。
  5. 所有乙太網路連接均採用短距離 Cat 6A 電纜(最長為 6 或 8 英尺,大多數為 3 英尺),這應該可以輕鬆處理頻寬。

當 NAS 和 2 台 Mac 連接到路由器上的乙太網路連接埠時,我發現效能非常差。有趣的是,在最好的情況下,我認為我沒有見過超過 10MB/s 的傳輸速率,而且很多時候它可以在 100 KB 的範圍內運行。 NAS 效能監視器上的記憶體讀數看起來並不太費力,因此這不應該成為問題。在Google 上快速搜尋5 磁碟RAID 6 的平均效能,可以看到Tom's Hardware 的一份報告,該報告顯示5 磁碟RAID 6 陣列的平均讀取傳輸率基準約為220MB/s,儘管這與我的設置不同。

我希望嘗試透過將 MTU 設定為 9000 來使用 Jumbo 封包,看看是否可以提高傳輸速率,但由於 FiOS 閘道將 MTU 限制為 1500,儘管我可以將 MTU 設定為 9000 Mac 和DS1010+ 上,它會導致正常網路流量出現問題,且因MTU 不符而導致封包遺失。

由於我只有 25Mb 上行/下行互聯網,我認為如果我讓 Mac 與 FiOS 網關進行無線通信,並嘗試找到一種使用以太網的解決方案,讓 Mac 和 NAS 進行通信,我不會犧牲任何明顯的性能直接給對方。如果它成為網路流量的瓶頸,我想我可以利用 Thunderbolt 並添加兩個 Thunderbolt 到乙太網路適配器,並保留我現在用於常規流量的乙太網路連接,以嚴格為純無線設備保留無線頻寬。

我的想法是購買一台 Netgear ProSAFE GS108Tv2 千兆位元智慧交換機,看看是否可以將 Mac 和 NAS 作為 VLAN 連接(我不太確定該怎麼做),將連接埠設定為 1000baseT 和 MTU 9000,然後透過交換機上的該VLAN 路由所有磁碟I/O。我認為我可以將三個設備上的乙太網路 IP 位址設定到不同的子網,然後透過使用設定為 9000 MTU 的連接埠的靜態 IP 進行安裝來連接到 NAS 磁碟區。但現在我對自己進行了事後反思,我不確定這是否可行或繼續進行的方式。

這是我想了解的內容

  1. 有誰認為這個想法可能可行,並且我可以看到 NAS 和 Mac 之間的磁碟 I/O 有所改進,或者如果我只是不明白這些東西如何組合在一起?
  2. 是否有更好的解決方案,而不必選擇非常昂貴的選擇?
    • 我目前對該解決方案的預算幾乎已經用完,我想嘗試找到一個適合我當前硬體的解決方案。我已經有了開關,因此將其納入計算中。
  3. 我想看看是否有辦法讓交換器有一個到路由器的上行鏈路,以便Mac 和NAS 可以向路由器發送1500 MTU 封包以進行網路I/O,並在彼此之間發送9000 MTU 封包以用於磁碟透過同一連接埠進行 I/O,或者是否必須使用單獨的連接埠來隔離流量?
    • 如果我使用額外的Thunderbolt 至乙太網路適配器,我是否可以讓所有六個連接埠(每台Mac 2 個,NAS 上的2 個)都通過交換機,將3 個連接埠設定為9000 MTU 子網,將3 個連接埠設定為1500 MTU子網,然後將路由器上行連結到交換機,以便所有流量都可以流經交換機,即使有不同大小的封包通過它?

目前,我幾乎超出了我對網路知識的限制,我不確定什麼是可能的,什麼是不可能的,以及如果可能的話,如何實施。我不怕捲起袖子調整系統設定;我已經在電腦上設定了靜態租用 DHCP、靜態 IP,並且還實現了 MAC 位址過濾,但此時我不確定我認為應該做的實際上是否可行。此時任何建議將不勝感激。

謝謝

更新

這是使用 iperf3.0.11 測試的運行結果。它直接透過網關路由器連接埠運作。我還沒有設定交換機,因此按原樣在網路上運行測試會更容易。

192.168.1.100$ iperf3 -s -p 5201
192.168.1.102$ iperf3 -c 192.168.1.100 -i 1 -t 20 -w 2M -p 5201
-----------------------------------------------------------
Server listening on 5201
-----------------------------------------------------------
Accepted connection from 192.168.1.102, port 59693
[  5] local 192.168.1.100 port 5201 connected to 192.168.1.102 port 59694
[ ID] Interval           Transfer     Bandwidth
[  5]   0.00-1.00   sec   111 MBytes   932 Mbits/sec                  
[  5]   1.00-2.00   sec   111 MBytes   934 Mbits/sec                  
[  5]   2.00-3.00   sec   111 MBytes   935 Mbits/sec                  
[  5]   3.00-4.00   sec   111 MBytes   935 Mbits/sec                  
[  5]   4.00-5.00   sec   111 MBytes   935 Mbits/sec                  
[  5]   5.00-6.00   sec   111 MBytes   935 Mbits/sec                  
[  5]   6.00-7.00   sec   111 MBytes   935 Mbits/sec                  
[  5]   7.00-8.00   sec   112 MBytes   937 Mbits/sec                  
[  5]   8.00-9.00   sec   111 MBytes   935 Mbits/sec                  
[  5]   9.00-10.00  sec   111 MBytes   935 Mbits/sec                  
[  5]  10.00-11.00  sec   111 MBytes   935 Mbits/sec                  
[  5]  11.00-12.00  sec   111 MBytes   934 Mbits/sec                  
[  5]  12.00-13.00  sec   112 MBytes   937 Mbits/sec                  
[  5]  13.00-14.00  sec   111 MBytes   935 Mbits/sec                  
[  5]  14.00-15.00  sec   111 MBytes   935 Mbits/sec                  
[  5]  15.00-16.00  sec   112 MBytes   936 Mbits/sec                  
[  5]  16.00-17.00  sec   112 MBytes   937 Mbits/sec                  
[  5]  17.00-18.00  sec   111 MBytes   935 Mbits/sec                  
[  5]  18.00-19.00  sec   111 MBytes   935 Mbits/sec                  
[  5]  19.00-20.00  sec   111 MBytes   935 Mbits/sec                  
[  5]  20.00-20.01  sec   872 KBytes   954 Mbits/sec                  
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bandwidth
[  5]   0.00-20.01  sec  2.18 GBytes   935 Mbits/sec                  sender
[  5]   0.00-20.01  sec  2.18 GBytes   935 Mbits/sec                  receiver
-----------------------------------------------------------
Server listening on 5201
-----------------------------------------------------------

這樣斯皮夫據說,瓶頸可能不是乙太網路。因此,這使得NAS 成為可能的罪魁禍首......當然,他們的支援頁面基本上歸咎於網路流量,並沒有真正解決如何從伺服器中獲得更好的效能或殺死所有不必要運行的垃圾進程並佔用記憶體。或者它可能是 WD Green 驅動器......仍然沒有解決方案,但至少它可能不是以太網。

更新2

以下是上述設定的一些附加測試資訊。創建了 2GB 測試文件,並使用透過以下方式安裝的驅動器從命令列執行文件傳輸中小企業並使用以下命令登入 NAS文件傳輸協定

Using smb

Load to NAS
$ mkfile -n 2g largetestfile
$ mv -v largetestfile /Volumes/network_attached_storage 2.15GB file
- 336s  Averaged Transfer Rate: 6.4MB/s or 51.2Mbps

Download from NAS
mv -v /Volumes/network_attached_storage/largetestfile ./Downloads/ 2.15GB file
- 40s Average Transfer Rate: 53.75MB/s or 430Mbps

Using ftp

Load to NAS
$ mkfile -n 2g largetestfile
ftp> bin
ftp> hash
ftp> put largetestfile
2147483648 bytes sent in 01:06 (30.74 MiB/s) or ~246Mbps

Download from NAS
Test 1 (forgot to enter bin command prior to download)
ftp> get largetestfile
2147483648 bytes received in 00:42 (48.01 MiB/s) or 384.08Mbps

Test 2 (Using bin command)
ftp> bin
ftp> get largetestfile
2147483648 bytes received in 00:21 (93.97 MiB/s) or 751.73Mbps

儘管中小企業下載速率足夠,上傳速率還有很多不足之處。我認為這可能與資料寫入 RAID 的方式有關,但是當您透過 FTP 上傳時,速度快了 7 倍以上,但仍然比下載速度慢一點。

答案1

將您的 Mac 插入千兆位元交換器(路由器上的 LAN 連接埠應該沒問題)。在兩者之間運行 IPerf 2.0.x,看看您會得到什麼。無需真正嘗試,它應該達到 930+ 兆位元/秒。

如果您確實獲得了該範圍內的 IPerf TCP 吞吐量,則表示問題出在乙太網路層級之上。問題可能是您正在使用的檔案傳輸協定(或遠端檔案系統協定),或者該協定的用戶端或伺服器程式碼實作不佳。

Apple 表示 SMB2(以及後來的…現在的 v3.x)是未來。確保您的 NAS 支援該協議,並透過該協議安裝它(不是 AFP 或舊版 SMB)。

相關內容