どうも、はむばねです。
本日2回目の更新。
死ぬほど久々の、まともな情報系ネタ。
いやまぁ書こうと思えば書くことはたくさんあるわけですが、ぶっちゃけ超めんどいんだね!
というか基本的にググってすぐ出てくるようなネタについて書いても仕方ないわけで。
というわけで今回は、ちょっと気合い入れてググればすぐ出るけど「2秒で教えろやハゲ!」という時にはちょっぴり調べるのがめんどかったネットワークのスループットの測り方だよ!
とりあえず「Linuxってなーに?」という人には塵一つとして必要のない知識なのでスルーしてね!
また、私がてきとーに調べててきとーにやった範囲での話なので、あんまり本気にせず話半分で読んでね!
これは別に今回に限ったことでもないのですが、今回は特に調べ方のにわかっぷりがハンパないですからね。
とりあえず自分が使う分だけ調べればいいや、という感じ。
そういう事情もあり、今回紹介する範囲で難しいことは特にないと思われます。
というわけでいってみよう。
ちなみにCentOSです。
バージョンは4.4、4.5、5で、マシンによって若干の差あり。
さて。
Linuxでスループット測ろうと思うと、
・ttcp / nttcp / nuttcpt
・iperf
・netperf
・SmartBits
あたりが一般的だそうです(もちろんググった先の受け売りだよ!)。
んで、SmartBitsは商業用の有償らしいので除外。
とりあえずiperf使うのが普通なのかな? という感じですが、まずはnuttcpの方から。
なぜなら、そっちの方が先にググって出てきたからな!
・nuttcpのインストール方法
まずはこのあたり からソースをダウンロード(なんか今落ちてる? 後で確認します)。
今回使用したのはnuttcp-5.5.5.rat.bz2。
以下インストール手順。
#tar xjvf nuttcp-5.5.5.tar.bz2
#cd ./nuttcp-5.5.5
#cc -O3 -o nuttcp nuttcp-5.5.5.c
#install -m 555 nuttcp /usr/local/bin/
当たり前ですが、”/usr/local/bin/”は任意で結構。
どうせ実行ファイルが生成されるだけなので(-mオプションで権限設定)。
はい、これでインストールは完了です。
ね、簡単でしょう?
次、使い方。
先程指定したフォルダ内に実行ファイルが生成されていますので、該当フォルダに行き”./nuttcp”で実行しましょう。
オプション付けないと動かないので注意だよ。
”./nuttcp”で空撃ちするとオプション表示されるので、詳しくはそれを読みやがってください。
今回は、「とりあえず1回だけスループット測定する」方法です。
対象とするのは、ホスト名”azk1”と”azk2”の間のスループット。
まず、azk2(別にazk1でもどっちでもいいけど)にログインするなり遠隔コマンドなりで
#./nuttcp -S -1
を実行します。
”-S”はサーバモードでの実行(ようは向こうから来るのを待つ状態なんだね)、”-1”は「とりあえず1回だけやりまっせ」のオプション。
成功すれば、この時点では何も表示されず終了(終了してないけど)。
続きまして、同じようにazk1にて
#./nuttcp -t azk2
と実行。
”-t”はtransmitter(送信者)として実行の意、そのあとにホスト名。
本当は最も基本的な形は”-r(receiver)”との組み合わせみたいだけど、そんなの関係ねぇ。
送信のため若干の時間がかかりますが、(たぶん)別に止まっているわけではありません。
成功すればこんな感じです(パス名に名前が含まれるため、一部加工)。
んで、これでCentOS5の方は成功したのですが、ファックなことに4.台では(バージョンのせいか物理的なマシンのせいかは知りませんが)エラーが出やがったためそっちではIperfも入れてみました。
・Iperfのインストール方法
はい、まずはソースをダウンロード 。
# tar zxvf iperf-2.0.2.tar.gz
# cd iperf-2.0.2
# ./configure
# make
# make install
いつも通り。
余談ですが、tarのオプションが違うのは毎度違うサイトからコピペっているからです。
特にオプションを指定しなければ、/usr/下に生成されます。
ディレクトリを指定したい場合は、”./configure --prefix=”で指定してください。
これも、特に難しいことはないはず。
んで、使い方。
基本的にはnuttcpと似たようなもんです。
ホスト名もさっきと同じということで。
まずazk2にて、
#iperf -s
”-s”はサーバモードで起動。
待ち状態に入ります。
”-D”オプションでデーモンとして登録もできます(解除は”-R”)。
んで、azk1にて
#iperf -c azk2
”-c”はクライアントモード。
微妙にnuttcpと異なるので、一応注意。
しばらく待って、成功すればこんな画面に。
こっちならCent4.5でも動いた。
その他のオプションに関しては、今回も”-h”でhelp出すなりここ なり参考にしてください。
そんなもんかな。
ちなみにこれも今回に限ったことではありませんが、基本的にテーマ”情報系”は「私が(該当の情報を知らない状態で)このページにたどり着けば、ここだけで事足りる」をコンセプトに書いています。
よって、知識レベルが(上下問わず)私と大きく離れている人にはたぶん向かないよ!
一応、心なし初心者向けには書いてるつもりですけれど。
まぁ、あんまり真面目にやってこなかった情報系の学生が見る分にはちょうどいいくらいなんじゃねーの。
ふぅ……しかし、相変わらず”情報系”は書くのに時間がかかる。
本筋とは一ミリも関係ない作業に1時間半も費やしてしまったぜ……
ゼミ前にはよくあることである。
本日2回目の更新。
死ぬほど久々の、まともな情報系ネタ。
いやまぁ書こうと思えば書くことはたくさんあるわけですが、ぶっちゃけ超めんどいんだね!
というか基本的にググってすぐ出てくるようなネタについて書いても仕方ないわけで。
というわけで今回は、ちょっと気合い入れてググればすぐ出るけど「2秒で教えろやハゲ!」という時にはちょっぴり調べるのがめんどかったネットワークのスループットの測り方だよ!
とりあえず「Linuxってなーに?」という人には塵一つとして必要のない知識なのでスルーしてね!
また、私がてきとーに調べててきとーにやった範囲での話なので、あんまり本気にせず話半分で読んでね!
これは別に今回に限ったことでもないのですが、今回は特に調べ方のにわかっぷりがハンパないですからね。
とりあえず自分が使う分だけ調べればいいや、という感じ。
そういう事情もあり、今回紹介する範囲で難しいことは特にないと思われます。
というわけでいってみよう。
ちなみにCentOSです。
バージョンは4.4、4.5、5で、マシンによって若干の差あり。
さて。
Linuxでスループット測ろうと思うと、
・ttcp / nttcp / nuttcpt
・iperf
・netperf
・SmartBits
あたりが一般的だそうです(もちろんググった先の受け売りだよ!)。
んで、SmartBitsは商業用の有償らしいので除外。
とりあえずiperf使うのが普通なのかな? という感じですが、まずはnuttcpの方から。
なぜなら、そっちの方が先にググって出てきたからな!
・nuttcpのインストール方法
まずはこのあたり からソースをダウンロード(なんか今落ちてる? 後で確認します)。
今回使用したのはnuttcp-5.5.5.rat.bz2。
以下インストール手順。
#tar xjvf nuttcp-5.5.5.tar.bz2
#cd ./nuttcp-5.5.5
#cc -O3 -o nuttcp nuttcp-5.5.5.c
#install -m 555 nuttcp /usr/local/bin/
当たり前ですが、”/usr/local/bin/”は任意で結構。
どうせ実行ファイルが生成されるだけなので(-mオプションで権限設定)。
はい、これでインストールは完了です。
ね、簡単でしょう?
次、使い方。
先程指定したフォルダ内に実行ファイルが生成されていますので、該当フォルダに行き”./nuttcp”で実行しましょう。
オプション付けないと動かないので注意だよ。
”./nuttcp”で空撃ちするとオプション表示されるので、詳しくはそれを読みやがってください。
今回は、「とりあえず1回だけスループット測定する」方法です。
対象とするのは、ホスト名”azk1”と”azk2”の間のスループット。
まず、azk2(別にazk1でもどっちでもいいけど)にログインするなり遠隔コマンドなりで
#./nuttcp -S -1
を実行します。
”-S”はサーバモードでの実行(ようは向こうから来るのを待つ状態なんだね)、”-1”は「とりあえず1回だけやりまっせ」のオプション。
成功すれば、この時点では何も表示されず終了(終了してないけど)。
続きまして、同じようにazk1にて
#./nuttcp -t azk2
と実行。
”-t”はtransmitter(送信者)として実行の意、そのあとにホスト名。
本当は最も基本的な形は”-r(receiver)”との組み合わせみたいだけど、そんなの関係ねぇ。
送信のため若干の時間がかかりますが、(たぶん)別に止まっているわけではありません。
成功すればこんな感じです(パス名に名前が含まれるため、一部加工)。
んで、これでCentOS5の方は成功したのですが、ファックなことに4.台では(バージョンのせいか物理的なマシンのせいかは知りませんが)エラーが出やがったためそっちではIperfも入れてみました。
・Iperfのインストール方法
はい、まずはソースをダウンロード 。
# tar zxvf iperf-2.0.2.tar.gz
# cd iperf-2.0.2
# ./configure
# make
# make install
いつも通り。
余談ですが、tarのオプションが違うのは毎度違うサイトからコピペっているからです。
特にオプションを指定しなければ、/usr/下に生成されます。
ディレクトリを指定したい場合は、”./configure --prefix=”で指定してください。
これも、特に難しいことはないはず。
んで、使い方。
基本的にはnuttcpと似たようなもんです。
ホスト名もさっきと同じということで。
まずazk2にて、
#iperf -s
”-s”はサーバモードで起動。
待ち状態に入ります。
”-D”オプションでデーモンとして登録もできます(解除は”-R”)。
んで、azk1にて
#iperf -c azk2
”-c”はクライアントモード。
微妙にnuttcpと異なるので、一応注意。
しばらく待って、成功すればこんな画面に。
こっちならCent4.5でも動いた。
その他のオプションに関しては、今回も”-h”でhelp出すなりここ なり参考にしてください。
そんなもんかな。
ちなみにこれも今回に限ったことではありませんが、基本的にテーマ”情報系”は「私が(該当の情報を知らない状態で)このページにたどり着けば、ここだけで事足りる」をコンセプトに書いています。
よって、知識レベルが(上下問わず)私と大きく離れている人にはたぶん向かないよ!
一応、心なし初心者向けには書いてるつもりですけれど。
まぁ、あんまり真面目にやってこなかった情報系の学生が見る分にはちょうどいいくらいなんじゃねーの。
ふぅ……しかし、相変わらず”情報系”は書くのに時間がかかる。
本筋とは一ミリも関係ない作業に1時間半も費やしてしまったぜ……
ゼミ前にはよくあることである。