一般のご家庭に25GbEネットワークを導入する

一般のご家庭に25GbEネットワークを導入する

師走と言えば大掃除。 一般のご家庭に溜まる可燃ゴミの掃除はもちろんのこと、デジタルデータに溢れる令和の時代は、データ掃除も入念に行う必要があります。 PCやiPadやNASなど、いたるところに散らばるデータの掃除には、高速ネットワーク環境を家庭内に構築しないと始まりませんよね。 そこで高速なネットワーク環境を導入し始めました。

そう、25GbEの敷設です!

目次

Open 目次

  1. 25GbE導入の経緯
    1. 平成末期に幾度ものNASの移行
    2. 10GbEでも十分だったNASの移行
    3. NASの高機能化と10GbEの限界
    4. 10GbEを超えるイーサネット通信規格
    5. 25GbE元年となった2020年
    6. 不安定になるNAS
  2. 機材購入
    1. 25GbEカードの購入
    2. 移行先のNASの購入
  3. Mellanox ConnectX®-4 Lx Ethernet Adapter Card
  4. セットアップ
    1. 構成
    2. 25GbE NICの接続と認識
      1. QNAP TVS-672XT
      2. Synology DS1621+
  5. 検証
    1. 検証環境
    2. 検証内容
      1. ネットワーク通信速度
      2. データ転送速度
    3. 結果
      1. ネットワーク通信速度 TVS-672XTがクライアント
      2. ネットワーク通信速度 DS1621+がクライアント
      3. データ転送速度
  6. まとめ

25GbE導入の経緯

平成末期に幾度ものNASの移行

2016年、自分でNASを構築する楽しみを感じていたこともあり、NAS4FreeやRockstor、そしてOpenMediaVaultと、OSSのNAS用ディストリビューションをとっかえひっかえしていました。

NAS用OSにRockstorという選択 NAS用OSにRockstorという選択

みなさんはNASのOSとして何を使っていますか? FreeNAS、OpenMediaVault、巷にはいくつもOSSのNAS用OSがあります。 なにを選んだらいいのでしょう?少し前までは非力なAtomサーバ機にNAS4Freeを入れて使っていましたが、PCでゲームをすることが ほとんどなくなったので、GameStreamサーバ(旧メインサーバー)を解体してNASとして稼働させることにしました。...

ストレージプールの復元に失敗してデータを失うことが何度かあったものの、ずっと構築を続けられるんじゃないかと感じたくらい楽しかったのを覚えています。 しかし2018年のある日、突然考え方に変化が起こりました。

この時を境に、構築と失敗を繰り返し数TBもの消失したデータに想いを馳せ、「安定したアプライアンスとして提供されているNASを購入した方がしあわせになれるかもしれない」と考えが変わってしまったのです。

そしてその年の末に、当時の家庭向け6ベイ最上位モデルとも言えるQNAPのTVS-672XTを購入し、自作NASマイブームの終焉を迎えました。

Amazon | QNAP(キューナップ) TVS-672XT 10GbE、Thunderbolt 3、M.2 PCIe NVMe SSDスロット対応 6ベイ Intel NASサーバー。 | QNAP(キューナップ) | パソコン・周辺機器 通販

10GbEでも十分だったNASの移行

2016年に10GbE NICを導入したのも、NASの移行を頻繁に行なっていたことが理由でした。

1万円台の格安Intel X540-T2 10GbEを買ってみた 1万円台の格安Intel X540-T2 10GbEを買ってみた

事の発端はこちらのツイートこの低価格NICはずっと気になっていて、ほしいものリストにもずっと突っ込んでありました。突っ込んだ当時の価格からずいぶんと安くなり、2016/07/04時点で2万円を切っていたので、以下のような煽りも受けたついでに2枚買ってみました。買って挙動を確かめてみたレポートです。Amazon.co.jp: intel X540-T2: パソコン・周辺機器...

当時のNASはHDDを4つ積んでRAID5相当で組んだシンプルなストレージ構成ではあったものの、1 GbEでは通信速度が頭打ちとなってしまってストレージのスピードを発揮し切れていなかったのです。 10GbEの導入でディスクをフルスピードで稼働させ、快適なデータ転送を行えるようになりました。

もちろん、QNAPのNASにも10GbEで爆速の移行を成し遂げたものです。 当時はこれで十分でした。当時は。

NASの高機能化と10GbEの限界

数年前から市販されているNASは高速化のため、SSDを搭載できるようなものが増えてきました。 とりわけハイエンド向けのものとなると、NVMeのPCI Express 3.0 x4接続に対応しており、そのスピードは従来のHDDのみで構成されたNASとは桁違いの速さを誇ります。 QNAP TVS-672XTも例に漏れずNVMe SSDに対応しており、NAS上で行ったベンチマークテストでは3.0GB/sを超えるスピードを叩き出しました。

nvme-speedtest.png

そう、10Gbpsを凌ぐストレージスピードを出すほどにNASは進化しているのです。10GbEは遅いのです。

この時、次のNAS移行時には10GbEを超える通信環境の必要性を確信しました。

10GbEを超えるイーサネット通信規格

5GやWi-Fi 6など高速無線通信が当たり前となりつつあるこの時代。有線LANも妥協の見られるマルチギガビットの広まりとともに、10ギガビットが一般に普及し始めている段階です。

10GbEより高速なイーサネット通信は、25GbE40GbE (56GbE)、100GbEとラインナップが並んでいます。 これらは普及価格帯にまだ遠く、25GbEを例にとっても代表的なIntel XXV710搭載の25GbEネットワークカードは1枚5万円を超え、ケーブル含め双方向通信を構築するだけでも10万円以上の予算が必要になってきます。 これにスイッチングハブやルーターなどの導入を考えるともう一桁上がり、逸般の誤家庭でも25GbEネットワーク構築には大きな勇気が必須となります。

まだ「やっと10GbEが一般のご家庭に広まりつつある時代」に、10GbEよりさらに高速なイーサネット通信機器を構築しようとしているので、なまじ安価に揃えられるはずがありません。

一般的には高速ストレージ間通信にはイーサネットではなく、Fibre ChannelInfiniBandなどのインターコネクトが用いられます。 それらを用いることも考えたものの、TCP/IPとイーサネット通信を前提とした家庭内のネットワークにおいては、(IPoIBなどあれど)NASにはイーサネットを選択した方が賢い。そんな思いから25GbE導入にこだわり始めました。

25GbE元年となった2020年

今年の初め、QNAPから自社NAS向けの25GbEネットワークカードがリリースされました。

QNAPは、iSERサポートともにMellanox ConnectX-4 Lx SmartNICを搭載したNASとPC用の新しい25GbE NICを発表 | QNAP

Intelより比較的安価なMellanox製ではあるものの、QNAPアクセサリーストアに掲載の品はIntelのそれの約半額という、破格の価格設定に驚きました。 このリリースは、一般家庭へも10万円足らずで手軽に25GbEを導入できる時代になった瞬間とも言えます。25GbE元年と言っても過言ではないでしょう。

product-page.png

情報引用元: Dual-port SFP28 25GbE network expansion card; low-profile form factor; PCIe Gen3 x8

不安定になるNAS

これでいつNASが不安定になっても遅い10GbEにイライラすることなく、高速にNASの移行が行えると安堵していた矢先に、待ってましたと言わんばかりにQNAPのNASが不安定になってきたのです。

QNAPのNASに搭載されるOSであるQTS上で、ファイルの移動を行うと失敗するようになり、それだけならまだしも移動に失敗したファイルが消失するなんてことが起きるようになりました。 他にも謎のバックグラウンドタスクがI/OやCPUを占有する事象もあり、ファームウェア初期化でも改善しませんでした。

買い替え時だな

こうして、25GbEの導入を決めたのでした。

(完)

機材購入

25GbEカードの購入

NASを買い替え、移行する目的で25GbE通信環境を構築するので、25GbEスイッチングハブや25GbEルーターは今回は導入しません。 25GbEネットワークカードとDAC(Direct Attached Copper)ケーブルを調達するのみです。

QNAPアクセサリーストアーから25GbEカード2枚とSFP28のDACケーブル1本を購入しました。

お値段はというと、US$ 247が2つとUS$ 118が1本で合計US$ 612(送料無料)。 QNAPアクセサリーストアは台湾からの発送にもかかわらず、日本へ無料配送してくれるのはとてもありがたいですね(受け取り時に輸入消費税+手数料で約4,000円ほどの支払いあり)。

25g-nic-arrived.jpg

翌日発送で注文6日後に受け取りました。

移行先のNASの購入

25GbEカードと同時期に注文しておいたSynologyのDS1621+に移行します。

Amazon | 【NASキット】Synology DiskStation DS1621+ [6ベイ / クアッドコアCPU搭載 / 4GBメモリ搭載] 大容量6ベイ高性能NAS 正規国内代理店サポート対応 | Synology | パソコン・周辺機器 通販

Mellanox ConnectX®-4 Lx Ethernet Adapter Card

25g-nic.jpg

今回購入した25GbEカードのQXG-25G2SF-CX4には、Mellanox ConnectX®-4 Lxネットワークコントローラーが搭載されています。

ConnectX®-4 Lx EN Cards | NVIDIA

そしてこのコントローラーを搭載したカードの詳細仕様は、以下のPDFに書かれています。

pb-connectx-4-lx-en-card.pdf

抜粋すると、以下のようなスペックを誇ります。

  • ネットワーク速度: 最大25GbE/10GbE/1GbE
  • ネットワークポート数: 2
  • ネットワークインターフェース: SFP28
  • ホストインターフェース: PCIe 3.0 x8

ネットワークインターフェースは一般的なRJ45やSFP+ではなく、SFP28です。 SFP28コネクタはSFP+と互換があり、コントローラーが対応していればSFP28ケーブルを既設のご家庭の10GbEネットワークに接続し、10GbE通信を確立することができます。 実際に購入したカードとSFP28ケーブルで既設ネットワークのSFP+ポートに接続することで、10GbEでの通信の確立ができました。

参考資料: SFP vs SFP+、SFP28 vs SFP+、QSFP vs QSFP28の違い | FSコミュニティ

十分にスピードを出すにはホストインターフェースにPCIe Gen 3.0 x8が必要なようですが、Gen 2.0やx4でも動作すると書かれています。

compatibility.png

引用元: pb-connectx-4-lx-en-card.pdf

セットアップ

構成

さて、機材は揃ったので環境構築をしていきます。 今回移行するNASの構成は下表の通りです。

型番QNAP TVS-672XTSynology DS1621+
CPUIntel Core i3-8100TAMD Ryzen Embedded V1500B
RAMDDR4-2666 64GBDDR4-2666 32GB
PCIePCI Express 3.0 x4PCI Express 3.0 x4
SSD 1Samsung 960 EVO 500GBAGI AGI512G16AI198 512GB
SSD 2Samsung 970 EVO 500GBCrucial P1 500GB
OSQTS 4.5.1DSM 7.0 Beta

25GbE NICのQXG-25G2SF-CX4とはどちらもPCIe 3.0 x4での接続となるので、少しパフォーマンスは落ちる見込みです。

25GbE NICの接続と認識

hello-25gbe-nic.jpg

それぞれのNASに25GbEカードを取り付け、SFP28ケーブルで接続し通信できる状態を準備します。

QNAP TVS-672XT

TVS-672XT-25G.png

移行元のTVS-672XTは、この25GbEカードと互換性があり、取り付けるだけで認識しました。

Synology DS1621+

DS1621plus-25G.png

移行先のDS1621+ですが、これには互換性情報が見つかりませんでした。 しかしSynologyの他のモデルにはConnectX-4 Lx ENのカードと互換性があるとの情報があったので、淡い期待と共に接続状態を見ると、25000Mbpsでリンクアップしていました。 DSM 6.2でもDSM 7.0 Betaでも、両方ともリンクアップしていたので、DS1621+も取り付けるだけで動作するようです

検証

ただ導入して高速にNASの移行を済ますだけではもったいないので、通信速度の実測値が期待通りか検証します。

検証環境

2台のNASを1本のSFP28ケーブルで繋いだ構成で、各NASの25GbEポートに以下のIPアドレスを割り当てました。

  • TVS-672XT: 10.0.1.1/16
  • DS1621+: 10.0.1.2/16

デフォルトMTU 1500では小さすぎるので、それぞれのNASでMTUを9000に変更しました。

検証内容

ネットワーク通信速度とデータ転送速度の計測を行います。

ネットワーク通信速度

ネットワーク通信速度の計測にはiperf3を用います。 利用するバージョンは3.9(iperf-3.9.tar.gz)で、Debian上でStatic linkで(./configure --enable-static-bin)ビルドしたバイナリを各NASに配置します。 追加の計測オプションは無しでサーバー(iperf3 -s)とクライアント(iperf3 -c)を交代し、交互に各5回測定して結果を示します。

データ転送速度

データ転送速度の計測は、SMB 3を用いたファイル転送時の転送レートを見ます。 各NASのOSに標準搭載されたSMBの機能を利用し、DS1621+のDSM 7.0 BetaでTVS-672XTをマウントし、マウントしたTVS-672XTからDS1621+へとファイルを転送します。 読み込みキャッシュをクリアしてしまったため、転送するファイルはTVS-672XT上のSSD上に配置されているものとし、DS1621+ではSSD読み書きキャッシュを有効にします。

結果

ネットワーク通信速度 TVS-672XTがクライアント

iperf-tvs672xt-25g.png

転送量ビットレート再送回数
26.2 GBytes22.5 Gbits/sec0
26.1 GBytes22.5 Gbits/sec0
25.9 GBytes22.3 Gbits/sec0
26.2 GBytes22.5 Gbits/sec0
26.1 GBytes22.4 Gbits/sec0

期待通りの転送速度を発揮していました。Blu-rayディスクのデータが10秒足らずで転送できることを考えると興奮しますね。

ネットワーク通信速度 DS1621+がクライアント

iperf-ds1621plus-25g.png

転送量ビットレート再送回数
18.4 GBytes15.8 Gbits/sec37
16.6 GBytes14.3 Gbits/sec76
16.4 GBytes14.1 Gbits/sec93
21.3 GBytes18.3 Gbits/sec17
19.0 GBytes16.4 Gbits/sec80

期待を大きく下回る速度となってしまいました。 再送が発生しているのが結果からわかります。 2つあるSFP28ポートのもう一つに差し込んでみても同様の結果となっているので、ポートが悪いというわけではないようです。

調査してみたところ、iperf3サーバーとして動かしているTVS-672XTのCPU利用率が、iperf3で通信をすると90%を超えることがわかりました。 DS1621+の方はというと、サーバー・クライアント共に15%前後の利用率に留まっていました。

直接的に何がCPUを利用しているのかを調査しそびれましたが、TVS-672XTの再起動とバックグラウンドアプリケーションの停止をして解決を図りました。 相変わらず通信開始でCPU利用率は跳ね上がるものの、40%前後で落ち着くようになりました。

その状態で再計測しました。

iperf-ds1621plus-25g2.png

転送量ビットレート再送回数
25.1 GBytes21.5 Gbits/sec60
26.8 GBytes23.0 Gbits/sec545
26.8 GBytes23.0 Gbits/sec194
25.2 GBytes21.7 Gbits/sec497
27.2 GBytes23.4 Gbits/sec87

相変わらず再送は多いですが、期待通りの結果が得られました。 再送がなぜ起きるのかは、今後の調査課題とします。

データ転送速度

Synology DSM 7.0 BetaのFile Stationを用いて、大小様々なファイルの含まれるフォルダを転送しました。

transfer-file-on-file-station.png

ピーク時で約1.8Gbpsと、遅すぎる結果となりました。 大きな単一ファイルの転送では改善するものの、終始2Gbps台と振るわない結果でした。

リソースモニタを確認すると、どうやらDS1621+のディスク書き込み速度で頭打ちとなっているようでした。 SSDの書き込みキャッシュ機能がうまく効いていないようです。悲しい。 SSDキャッシュは利用を進めていくことで学習していくようなので、今後に期待するとします。

SSDキャッシュが最大限に効いた場合のファイル転送速度を想定して、SMB 3でマウントしているディレクトリに含まれる単一ファイルを/dev/nullに吐き出したものを参考値として計測してみました。

transfer-file-to-devnull.png

SMB 3のオーバーヘッドがあれど、1.4GB/sと11.2GbpsのパフォーマンスがSMB 3転送で期待できる結果となりました。 10GbEから25GbEに乗り換えた甲斐があったと実感させられます。

まとめ

25GbEはいいものです。帯域が豊かになります。 いい感じにSSDキャッシュが熟してきたら、VMイメージをNAS上に置いてハイパフォーマンスマシンから25GbE越しに起動する、なんてこともしてみたいです。

時代は5Gでも10Gでもなく、25Gです。

Related Posts

debianでiscsi target/initiator動作させるメモ

Linux上でのiSCSIパケット収集のためにVirtual Boxで作成した、Debian 7.0.0にiSCSI initiatorとtargetを入れたときのメモを起こしておきます。今回iS...

read more
1万円台の格安Intel X540-T2 10GbEを買ってみた

1万円台の格安Intel X540-T2 10GbEを買ってみた

事の発端はこちらのツイートこの低価格NICはずっと気になっていて、ほしいものリストにもずっと突っ込んでありました。突っ込んだ当時の価格からずいぶんと安くなり、2016/07/04時点で2万...

read more
一般のご家庭向けEAP-SIM認証Wi-Fi

一般のご家庭向けEAP-SIM認証Wi-Fi

ご家庭のWi-Fi、まだパスワード認証ですか?こんにちは。陽炎型航洋直接教育艦 晴風の艦長、岬明乃です。 昨日開催された カーネル/VM探検隊 で、晴風の艦内無線LANの構築をした話をしてきました...

read more
DIALというネットワークプロトコル

DIALというネットワークプロトコル

家庭のネットワークの監視システムからDIALなるプロトコルが暴れていてアラートが飛んできたので調査しました。...

read more
中華10GbEスイッチNetcore GS6を運用して1ヶ月たったレビュー

中華10GbEスイッチNetcore GS6を運用して1ヶ月たったレビュー

春に新居に越してからベストエフォートで10Gbpsのインターネット回線を引き込み利用している。 リビングに光コンセントを設置し、ONUに自作ルーターにNASやら母艦やらを集中してリビングに設置していた...

read more