web-dev-qa-db-ja.com

Sambaパフォーマンスをデバッグするためのヒント?

Sambaは同じ状況で24 MB /秒の読み取りと44 MB /秒の書き込みを提供しますが、ftpは97および112 MB /秒を提供します。

ドキュメント

一般に、Sambaはftpと同様に未加工の転送速度で動作することに気付くはずです。

私の場合、明らかにそうではありません。

Sambaのパフォーマンスをデバッグする方法に関するヒントはどこにありますか?

または、Sambaを他の何かに置き換えるための別のヒントはありますか? (残念ながら、rsync/rsnapshotで使用できるものが必要なので、ftpは使用できません。)

詳細:

  • 両方のコンピューターがUbuntu 10.10を実行しています(Macも持っているためSambaを使用しています)
  • Samba共有はローカルホームネットワーク上にあり、次のようにマウントされます。

    $ mount
    ...
    //server.local/share/ on /mnt/share type cifs (rw,mand)
    
  • Sambaのパフォーマンスは、手作業でタイミングと転送速度を計算するためにcpを使用して、共有との間で最大4GBの単一ファイルをコピー(time)することでテストされました。

  • ftpパフォーマンスは、同じファイルのget/putに対するftpクライアントからの数値です。
  • iperfは、ネットワーク速度を最大900 Mbits/sにします
  • bonnie++は、ブロック読み取りとブロック書き込みの両側で200 MB/sを超えるディスク速度を提供します
  • performance Tuning HOWTO (read/write raw、read size、socket options)で提案されているパラメーターを変更してみましたが、それらのほとんどはほとんど違いがありませんでした。 (違いを生じたものにより、書き込み速度が50%低下しました。)
8
j-g-faustus

実際、FTPのデータスループットは効率が非常に高くなります。速度を落とすオーバーヘッドは、最初にファイルをダウンロードすることにあります。これは、ここでSambaに問題がないと言っているわけではありません。ほぼ同じパフォーマンスを発揮するはずです。

正直に言うと、私はあなたがこれを修正しようとし始めるべき手掛かりの多くを持っていません。

理想的には、Sambaの参照インストール(Windowsなど)を使用して別のコンピューターをドロップし、Ubuntuマシンに対するクライアントとサーバーの両方としてテストできます。次に、どのマシンが問題であるかを知り、それが問題であったのがただ1つの方向だった場合、これに基づいてバグを報告したり、暫定的な回避策を見つけたりできます。

しばらく前に、Sambaの下で特定のネットワークハードウェアの不具合について何かを見ました。それはスイッチとネットワークアダプターの両方でしたが、私はそれについて何も見つけることができません。おそらく、このようなEdgeのケースだったため、検討する価値はありません。

私たちはSambaを回避しますか? FTPは機能しないかもしれませんが、 NFS についてはどうですか? (私の経験では)おそらく最高の転送速度であり、rsyncをうまく処理できるはずです。

FTPサーバーをFuseでマウントして、rsyncがそれをいじめることもできます。

3
Oli

Sshでrsyncを実行すると、どのようなパフォーマンスが得られますか?たぶん、sshでrsyncを実行してから、Mac間でデータを転送する必要がある場合にsambaを使用できますか?

1
Azendale

あなたはsmb.confでこれを試すことができます

socket options = SO_KEEPALIVE SO_REUSEADDR \
   SO_BROADCAST TCP_NODELAY IPTOS_LOWDELAY \
   IPTOS_THROUGHPUT SO_SNDBUF=8192 SO_RCVBUF=8192

oplocks = yes

write raw = yes
read raw = yes
1
jet