■Linuxでの検証結果!
理想的な環境で調査できなくて困っていたところ、幸いにも 関西地方の大学の情報センターの方から、Linuxでの実効速度調査のレポートを頂きました。どうもありがとうございました。了承を得て掲載させて頂きます。こちらも、Nulデバイスへのコピーとなっています。
【環境】サーバ/クライアント共通
MEM:1G
NIC: Intel PRO/1000 Network Connection
Hub:CISCO Catalyst3550
ケーブル:カテゴリ6
OS:Debian Linux (2.4.17-686)
Driver:e1000
【調査方法と結果】
サーバ側FTPデーモンはProFTPD 1.2.0pre10。サーバ側に100MBのファイルを作成。メモリは1GBあるので100MBは楽にキャッシュ内に収まります。まず、以下のように実行。
(マシンAのメモリ内に100Mfileのキャッシュ)
次に、クライアントから以下のようにftpを起動してファイルをgetする。
ftp> bin
ftp> get 100Mfile /dev/null
local: /dev/null remote: 100Mfile
200 PORT command successful.
150 Opening BINARY mode data connection for 100Mfile (100000000 bytes).
226 Transfer complete.
100000000 bytes received in 1.27 secs (76732.3 kB/s)
同様に何度か実行。
100000000 bytes received in 1.06 secs
100000000 bytes received in 1.46 secs
100000000 bytes received in 1.24 secs
100000000 bytes received in 1.02 secs
100000000 bytes received in 1.27 secs
100000000 bytes received in 1.20 secs
以上の結果を、1M=1024kbyteとして計算すると以下のようになる。
719.8Mbps
522.6Mbps
615.3Mbps
748.0Mbps
600.7Mbps
635.8Mbps
多少ばらつきがありますが、現在他のサービスもしているマシンですのでその影響があったものと思われます。それでも最低500Mbpsは出しています。Linuxは余ったメモリをディスクキャッシュに用います。従ってサーバ側でcat 100Mfile > /dev/null とすれば、データはすべてメモリに入ってしまいます。
さぁ、どうでしょうか?一般にWindowsよりLinuxの方がネットワークにおける負荷が少ないと言われています。そのため、Linuxは高負荷のサーバマシンのOSとしてよく利用されています。 また、サーバ側のマシンにメモリが1Gも装着されているので、読み出し側のハードディスクによる負荷も無視することができます。くしくも、1000BASE-Tの実効速度はLinuxでより正確に計測できたと言えるでしょう。
ずいぶん長いレポートになってしまいましたが、この詳しい考察は、次回のガイド記事で行いたいと思います。
【お勧めリンク】
今回の記事にも取り上げたLinuxを扱う専門サイトLinuxです。オープンソース界では無類のLinux。セキュリティ動向を鋭くウォッチします。
【関連リンク】
1000BASE-Tハブの試用記(1)
1000BASE-Tの展望
1000BASE-Tの実効速度
1000BASE-Tの紹介と外観