LoginSignup
6
1

More than 5 years have passed since last update.

格安10GBASE-Tでファイルサーバと直結してみた(1)

Last updated at Posted at 2018-08-28

10GBASE-Tを試してみる

10GBASE-T対応NIC

10GBASE-T対応のNICが安くなってきました。LR-LINK(Shenzhen Lianrui Electronics)のLREC6860BTは、Amazonで¥9,140(2018年8月27日現在)と1万円を割ってきています。一方、10GBASE-T対応のネットワークスイッチも4ポートで4万円台(価格コム調べ)の製品が出てきています。
LR-LINK_LREC6860BT.jpg
NETGEARで2万円のスイッチもありますが、2ポートなので、だったらMDI-Xでカテゴリ6Aのケーブルで直結するのと変わりないな、と思い、10GBASE-TでPCとファイルサーバを直結し、一番格安で10GBASE-Tを試してみました。

10GBASE-T対応LANケーブル

LANケーブルは、10GBASE-Tに対応したカテゴリ6Aのものにしました。エレコムの1mのLD-GPAYC/BU1 がAmazonで¥589(2018年8月27日現在)で安かったので選択。
LD-GPAYCBU1_02.jpg

Windows7のPCに10GBASE-T NICをセットアップ

LR-LINK LREC6860BT はPCI-Ex4なので、Windows7のPCの空いてるPCI-E x16のスロットに装着しました。
Windows7を起動して、デバイスマネージャーで見ると、不明なネットワークアダプタが表示されています。NICの製品パッケージにも小さいCD-ROMでドライバーファイルが付属していますが、ドライバは最新版にした方がいいので、LR-LINKのWebページからWindows用のドライバーをダウンロードしてきました。
- LR-LINK Driver Download
http://www.lr-link.com/support/driver.html
圧縮ファイルをローカル解凍して、デバイスマネージャーの不明なネットワークアダプタのプロパティを開いて、ドライバの更新で、先ほど解凍したディレクトリを指定するだけです。
10GBASE-T_driver.JPG
上記のように、正常にネットワークアダプターが認識されて、表示は「TN9710P 10GBase-T/NBASE-T Ethernet Adapter」と変わりました。この状態で1000BASE-Tのギガネット・イーサネットスイッチの空きポートと接続したところ、1000BASE-Tでリンクアップできました。

Linuxサーバに10GBASE-T NICをセットアップ

次にSAMBAでファイルサーバにしているLinux PCに、同じようにPCI-E x16のスロットにLR-LINK LREC6860BTを装着します。
一応サーバスペックは、

サーバ・スペック

  • CPU: AMD PhenomII X4 955 3.2GHz(4core/TDP95W)
  • M/B: ASRock 880G Pro3(SocketAM3+/880G+SB850)
  • RAM: DDR3 32GB(8GBx4) ● HDD: RAID-1(6TB 5400rpm HDDx2)
  • OS: CentOS 6.10(64bit)

という7年も前にリリースされたものです。LR-LINK LREC6860BTを装着して起動させてもdmesgに何も出てこないので、ドライバーのインストールが必要です。先ほどのLR-LINK LREC6860BTのダウンロードページからLinux用ドライバの圧縮ファイルを持ってきて解凍するとReadmeに、make all; make install しろと書いてあります。

# make all
Makefile:99: *** Aborting the build: Linux kernel /lib/modules/2.6.32-754.2.1.el6.x86_64/build source not found.  Stop.

あ、カーネルソースがいるんですね。では、気を取り直して

yum install kernel-devel

リンク貼り直したりしましたが、make通りました。

# make all
make -C /lib/modules/2.6.32-754.2.1.el6.x86_64/build M=/root/tn40xx-0.3.6.14 clean
make[1]: Entering directory `/usr/src/kernels/2.6.32-754.3.5.el6.x86_64'
make[1]: Leaving directory `/usr/src/kernels/2.6.32-754.3.5.el6.x86_64'
Building kernel 2.6.32-754.2.1.el6.x86_64 resume supported
make -C /lib/modules/2.6.32-754.2.1.el6.x86_64/build M=/root/tn40xx-0.3.6.14 modules
make[1]: Entering directory `/usr/src/kernels/2.6.32-754.3.5.el6.x86_64'
  CC [M]  /root/tn40xx-0.3.6.14/tn40.o
  CC [M]  /root/tn40xx-0.3.6.14/CX4.o
  CC [M]  /root/tn40xx-0.3.6.14/CX4_Linux.o
  CC [M]  /root/tn40xx-0.3.6.14/MV88X3120_phy.o
  CC [M]  /root/tn40xx-0.3.6.14/MV88X3120_phy_Linux.o
  CC [M]  /root/tn40xx-0.3.6.14/MV88X3310_phy.o
  CC [M]  /root/tn40xx-0.3.6.14/MV88X3310_phy_Linux.o
  CC [M]  /root/tn40xx-0.3.6.14/QT2025_phy.o
  CC [M]  /root/tn40xx-0.3.6.14/QT2025_phy_Linux.o
  CC [M]  /root/tn40xx-0.3.6.14/TLK10232_phy.o
  CC [M]  /root/tn40xx-0.3.6.14/TLK10232_phy_Linux.o
  CC [M]  /root/tn40xx-0.3.6.14/AQR105_phy.o
  CC [M]  /root/tn40xx-0.3.6.14/AQR105_phy_Linux.o
  LD [M]  /root/tn40xx-0.3.6.14/tn40xx.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC      /root/tn40xx-0.3.6.14/tn40xx.mod.o
  LD [M]  /root/tn40xx-0.3.6.14/tn40xx.ko.unsigned
  NO SIGN [M] /root/tn40xx-0.3.6.14/tn40xx.ko
make[1]: Leaving directory `/usr/src/kernels/2.6.32-754.3.5.el6.x86_64'

続いて、make installを実行

# make install
install -d /lib/modules/2.6.32-754.2.1.el6.x86_64/kernel/drivers/net
install -m 644 tn40xx.ko /lib/modules/2.6.32-754.2.1.el6.x86_64/kernel/drivers/net
depmod 2.6.32-754.2.1.el6.x86_64

modprobeで読み込みます。

modprobe tn40xx

dmesgで認識されたことを確認。

tn40xx: Tehuti Network Driver, 0.3.6.14
tn40xx: Supported phys : MV88X3120 MV88X3310 MV88E2010 QT2025 TLK10232 AQR105
tn40xx 0000:02:00.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18
tn40xx 0000:02:00.0: setting latency timer to 64
tn40xx: srom 0x0 HWver 16 build 0 lane# 4 max_pl 0x0 mrrs 0x2
tn40xx 0000:02:00.0: irq 32 for MSI/MSI-X
tn40xx: PHY detected on port 0 ID=2B09AB - MV88X3310 (A1) 10Gbps 10GBase-T
tn40xx: MV88X3310 firmware code is running
tn40xx: MV88X3310 FW version is 0.2.4.0
tn40xx: fw 0xe
tn40xx: eth3, Port A
tn40xx: 1 1fc9:4027:1fc9:3015
tn40xx: detected 1 cards, 1 loaded

udevでMACアドレスを確認

/etc/udev/rules.d/70-persistent-net.rules
# PCI device 0x1fc9:0x4027 (tn40xx)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="**************", ATTR{type}=="1", KERNEL=="eth*", NAME="eth3"

ifcfg-eth3を作成して、ifupしたところ無事立ち上がりました。先にセットアップしたWindows7のPCとCAT6Aケーブルを直結して、ping打って届きました。(パチパチ)

ギガNICと10G NICでベンチマーク

Windows7のPCからファイルサーバをマウントして、Crystal BenchmarkでGigabit Ethernet経由と10G直結でベンチマークを測定してみました。

GbE経由 10G経由
CD-M64-P-20180827-1.JPG CD-M64-U-20180827-2.JPG

シーケンシャルライトが2倍以上になってるけど、シーケンシャルリードはほとんど変わらない!ランダム・アクセスは良くなってるようです。

せっかく10Gにしたのに、これじゃ納得できないですよね。今週末には、サーバのストレージをSSDにして、ジャンボフレームを導入して再測定してみようと思います。

こちらが続編
■格安10GBASE-Tでファイルサーバと直結してみた(2)

6
1
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
1