2024/02/17 2024/02/18
前回、とりあえずWindows PCとProxmox NASに10GBASE-SRレシーバーを付けてファイバー接続をしたものの、通信スピードが6 ~7Gbps位で思ったよりスピードが出ない状況でした。
その後色々試した結果、スピード改善したのでメモになります。
とりあえず間のスイッチが悪さをしていないかの切り分けの為、PCとNASのファイバーを直結してみました。
昔のクロスケーブル的な考え方がいるのかがよく分からずに試した方が早いとやってみた所、ちゃんと接続でできました。
ただ、iperf3の結果は変化無し…
次はジャンボフレーム(MTU)のせいかなーと、PC側とNAS側両方に定義を設定。
PC側はデバイスマネージャーからMellanoxのアダプタのプロパティを開き、詳細設定から「Jumbo Packet」を「9000」に。
NAS側は/etc/network/interfacesのNICインターフェースと仮想ブリッジに対して「mtu 9000」を記述。
auto lo
iface lo inet loopback
iface enp1s0 inet manual
mtu 9000
iface wlp4s0 inet manual
iface enp4s0 inet manual
auto vmbr0
iface vmbr0 inet static
mtu 9000
address xxx.xxx.xxx.xxx/xx
gateway xxx.xxx.xxx.xxx
bridge-ports enp1s0
bridge-stp off
bridge-fd 0
source /etc/network/interfaces.d/*
これで改善を期待していたのですが、結果変わらず…
あとはドライバーか…と思ったのですが、NAS側はLinuxなのでまぁ古くはないだろうと思いつつ、Windows 側はドライバーが古い&新しいのが出てないという状況で無理だなーと思いつつ、カードが古いのでファーム上げてみるかとやってみました。
Mellanox自体はNVIDIAに買収されたみたいで、公開はNVIDIAのこちらでされていました。
一番新しいバージョンはfw-ConnectX3-rel-2_42_5000-MCX311A-XCA_Ax-FlexBoot-3.4.752だったのでこれをダウンロード。
zipだったので解凍したものをNASへ転送。
NAS側では、ファームウェアアップデートツールをインストール。
# apt install mstflint
Proxmoxはaptで入れられました。
次にアップデートに必要なデバイスのPCI アドレスを確認。
# lspci | grep Mellanox
01:00.0 Ethernet controller: Mellanox Technologies MT27500 Family [ConnectX-3]
先頭の数字がPCIアドレスになります。
次に現在のファームバージョンを確認。
# mstflint -d 01:00.0 query
Image type: FS2
FW Version: 2.33.5220
FW Release Date: 29.3.2015
Product Version: 02.33.52.20
Rom Info: type=PXE version=3.4.467
Device ID: 4099
Description: Node Port1 Port2 Sys image
GUIDs: xxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxx
MACs: xxxxxxxxxxxx xxxxxxxxxxxx
VSD:
PSID: xxxxxxxxxxxxx
「FW Version」がファームバージョンになりますが、やっぱり古かったです。
更新をかけます。
# mstflint -d 01:00.0 -i fw-ConnectX3-rel-2_42_5000-MCX311A-XCA_Ax-FlexBoot-3.4.752.bin burn
Current FW version on flash: 2.33.5220
New FW version: 2.42.5000
Burn process will not be failsafe. No checks will be performed.
ALL flash, including the Invariant Sector will be overwritten.
If this process fails, computer may remain in an inoperable state.
Do you want to continue ? (y/n) [n] : y
Burning FS2 FW image without signatures - OK
Restoring signature - OK
こんな感じで進めていくと更新がかけられました。
WindowsPC側はWindows側のツールで更新…と思い、ここにあったMFTを使ってみたのですがNICを認識せず…
諦めてNASに一時的に挿してNAS側で上記手順で更新かけました。
これで変わってくれないかなーと思いましたが、iperf3の結果は変わらず…
ほぼほぼこれで手がないなーと思い、もう諦めてたのですがふと通信に絡むもの他に無いよなぁ…と思ったときに浮かんできたのがFirewall。
NAS側はそもそもFirewallを動かしておらずなのでPC側だけの話になりますが、このPCはComodo Firewallを入れています。
こいつが通過はさせるが通信負荷をかけるケースもあるのかもと思い、Comodo Firewall 自体を一時停止して試行。
iperf3の結果は変わらず…
うーん、もうお手上げ…と思いつつ、本当にComodo Firewall止まってるのか?と思って、Windowsセキュリティの「プロバイダーの管理」を確認。
やっぱComodoは無効になってるなぁ…、もうお手上げや…
と思って少し視線を下に降ろすと…
ん!? なんで有効? アンチウイルス系と同様でComodoが入ったら勝手にWindowsファイアウォールは無効化されるとばっかり思ってたのですが…
Comodoが自分が無効にされたから有効化した!?
試しにComodoを改めて有効化したら両方とも有効になりました。二重Firewall…。おかしいやないかい!!
これが原因じゃ…と思い、一旦両方無効化した状態でiperf3やってみました。
Connecting to host 192.168.1.xxx, port 5201
[ 4] local 192.168.1.xxx port 60614 connected to 192.168.1.xxx port 5201
[ ID] Interval Transfer Bandwidth
[ 4] 0.00-1.00 sec 1.09 GBytes 9.39 Gbits/sec
[ 4] 1.00-2.00 sec 1.09 GBytes 9.34 Gbits/sec
[ 4] 2.00-3.00 sec 1.11 GBytes 9.57 Gbits/sec
[ 4] 3.00-4.00 sec 1.11 GBytes 9.55 Gbits/sec
[ 4] 4.00-5.00 sec 1.11 GBytes 9.49 Gbits/sec
[ 4] 5.00-6.00 sec 1.11 GBytes 9.56 Gbits/sec
[ 4] 6.00-7.00 sec 1.11 GBytes 9.55 Gbits/sec
[ 4] 7.00-8.00 sec 1.11 GBytes 9.57 Gbits/sec
[ 4] 8.00-9.00 sec 1.11 GBytes 9.55 Gbits/sec
[ 4] 9.00-10.00 sec 1.10 GBytes 9.48 Gbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth
[ 4] 0.00-10.00 sec 11.1 GBytes 9.50 Gbits/sec sender
[ 4] 0.00-10.00 sec 11.1 GBytes 9.50 Gbits/sec receiver
iperf Done.
キター!!!!!!!!!!
次にComodoだけ有効化した状態で改めて実施。
Connecting to host 192.168.1.xxx, port 5201
[ 4] local 192.168.1.xxx port 55336 connected to 192.168.1.xxx port 5201
[ ID] Interval Transfer Bandwidth
[ 4] 0.00-1.00 sec 1.06 GBytes 9.14 Gbits/sec
[ 4] 1.00-2.00 sec 1.09 GBytes 9.37 Gbits/sec
[ 4] 2.00-3.00 sec 1.09 GBytes 9.38 Gbits/sec
[ 4] 3.00-4.00 sec 1.10 GBytes 9.42 Gbits/sec
[ 4] 4.00-5.00 sec 1.10 GBytes 9.43 Gbits/sec
[ 4] 5.00-6.00 sec 1.09 GBytes 9.34 Gbits/sec
[ 4] 6.00-7.00 sec 1.10 GBytes 9.45 Gbits/sec
[ 4] 7.00-8.00 sec 1.09 GBytes 9.33 Gbits/sec
[ 4] 8.00-9.00 sec 1.08 GBytes 9.27 Gbits/sec
[ 4] 9.00-10.00 sec 1.10 GBytes 9.44 Gbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth
[ 4] 0.00-10.00 sec 10.9 GBytes 9.36 Gbits/sec sender
[ 4] 0.00-10.00 sec 10.9 GBytes 9.36 Gbits/sec receiver
iperf Done.
ちょっとだけ落ちましたが誤差レベル。素晴らしい!! (ToT)
改めてNASに向けたCrystalDiskMarkもやってみました。
こちらもイケイケな数値を叩き出しました。
さすがSSD + RAIDZ。ストレージI/Oのパフォーマンスもイケイケのようです。
これでモヤモヤしてたものが解決しました。よかったよかった。
コメントとトラックバック
コメントはありません