B. Samba Performance Tuning
2012-09-25 00:24
127 查看
http://oreilly.com/catalog/samba/chapter/book/appb_01.html
A Simple Benchmark
Samba Tuning
Sizing Samba Servers
This appendix discusses various ways of performance tuning and system sizing with Samba.
Performance tuning is the art of finding bottlenecks and adjusting to eliminate them.
Sizing is the practice of eliminating bottlenecks by spending money to avoid having them in the first place. Normally, you won't have to worry about either with Samba. On a completely untuned server, Samba will happily support a small
community of users. However, on a properly tuned server, Samba will support at least twice as many users. This chapter is devoted to outlining various performance-tuning and sizing techniques that you can use if you want to stretch your Samba server to the
limit.
Table B.1 shows the throughput, in kilobytes per second, of a pair of servers: a medium-size Sun SPARC Ultra and a small Linux Pentium server. Numbers are reported in kilobytes per second (KB/s).
Table B.1: Sample Benchmark Benchmarks
If you run the same tests on your server, you probably won't see the same numbers. However, you
should see similar ratios of Samba to FTP, probably in the range of 68 to 80 percent. It's not a good idea to base
all of Samba's throughput against FTP. The golden rule to remember is this: if Samba is much slower than FTP, it's time to tune it.
You might think that an equivalent test would be to compare Samba to NFS. In reality, however, it's much less useful to compare their speeds. Depending entirely on whose version of NFS you have and how well it's tuned, Samba can be slower or
faster than NFS. We usually find that Samba is faster, but watch out; NFS uses a different algorithm from Samba, so tuning options that are optimal for NFS may be detrimental for Samba. If you run Samba on a well-tuned NFS server, Samba may perform rather
badly.
A more popular benchmark is Ziff-Davis' NetBench,
a simulation of many users on client machines running word processors and accessing data on the SMB server. It's not a prefect measure (each NetBench client does about ten times the work of a normal user on our site), but it is a fair comparison of similar
servers. In tests performed by Jeremy Allison in November 1998, Samba 2.0 on a SGI multiprocessor outperformed NT Server 4.0 (Patch Level 2) on an equivalent high-end Compaq. This was confirmed and strengthened by a Sm@rt Reseller test of NT and Linux on identical
hardware in February 1999.
In April 1999, the Mindcraft test lab released a report about a test showing that Samba on a four-processor Linux machine was significantly slower than native file serving on the same machine running Windows NT. While the original report was
slammed by the Open Source community because it was commissioned by Microsoft and tuned the systems to favor Windows NT, a subsequent test was fairer and generally admitted to reveal some areas where Linux needed to improve its performance, especially on multiprocessors.
Little was said about Samba itself. Samba is known to scale well on multiprocessors, and exceeds 440MB/s on a four-processor SGI O200, beating Mindcraft's 310MB/s.
Relative performance will probably change as NT and PC hardware get faster, of course, but Samba is improving as well. For example, Samba 1.9.18 was faster only with more than 35 clients. Samba 2.0, however, is faster regardless of the number
of clients. In short, Samba is very competitive with the best networking software in the industry, and is only getting better.
As we went to press, Andrew Tridgell released the alpha-test version suite of benchmarking programs for Samba and SMB networks. Expect even more work on performance from the Samba team in the future.
Back to: Using Samba
B. Samba Performance Tuning
Contents:A Simple Benchmark
Samba Tuning
Sizing Samba Servers
This appendix discusses various ways of performance tuning and system sizing with Samba.
Performance tuning is the art of finding bottlenecks and adjusting to eliminate them.
Sizing is the practice of eliminating bottlenecks by spending money to avoid having them in the first place. Normally, you won't have to worry about either with Samba. On a completely untuned server, Samba will happily support a small
community of users. However, on a properly tuned server, Samba will support at least twice as many users. This chapter is devoted to outlining various performance-tuning and sizing techniques that you can use if you want to stretch your Samba server to the
limit.
B.1 A Simple Benchmark
How do you know if you're getting reasonable performance? A simple benchmark is to compare Samba with FTP.Table B.1 shows the throughput, in kilobytes per second, of a pair of servers: a medium-size Sun SPARC Ultra and a small Linux Pentium server. Numbers are reported in kilobytes per second (KB/s).
Command | FTP | Untuned Samba | Tuned Samba |
---|---|---|---|
Sparc get | 1014.5 | 645.3 | 866.7 |
Sparc put | 379.8 | 386.1 | 329.5 |
Pentium get | 973.27 | N/A | 725 |
Pentium put | 1014.5 | N/A | 1100 |
should see similar ratios of Samba to FTP, probably in the range of 68 to 80 percent. It's not a good idea to base
all of Samba's throughput against FTP. The golden rule to remember is this: if Samba is much slower than FTP, it's time to tune it.
You might think that an equivalent test would be to compare Samba to NFS. In reality, however, it's much less useful to compare their speeds. Depending entirely on whose version of NFS you have and how well it's tuned, Samba can be slower or
faster than NFS. We usually find that Samba is faster, but watch out; NFS uses a different algorithm from Samba, so tuning options that are optimal for NFS may be detrimental for Samba. If you run Samba on a well-tuned NFS server, Samba may perform rather
badly.
A more popular benchmark is Ziff-Davis' NetBench,
a simulation of many users on client machines running word processors and accessing data on the SMB server. It's not a prefect measure (each NetBench client does about ten times the work of a normal user on our site), but it is a fair comparison of similar
servers. In tests performed by Jeremy Allison in November 1998, Samba 2.0 on a SGI multiprocessor outperformed NT Server 4.0 (Patch Level 2) on an equivalent high-end Compaq. This was confirmed and strengthened by a Sm@rt Reseller test of NT and Linux on identical
hardware in February 1999.
In April 1999, the Mindcraft test lab released a report about a test showing that Samba on a four-processor Linux machine was significantly slower than native file serving on the same machine running Windows NT. While the original report was
slammed by the Open Source community because it was commissioned by Microsoft and tuned the systems to favor Windows NT, a subsequent test was fairer and generally admitted to reveal some areas where Linux needed to improve its performance, especially on multiprocessors.
Little was said about Samba itself. Samba is known to scale well on multiprocessors, and exceeds 440MB/s on a four-processor SGI O200, beating Mindcraft's 310MB/s.
Relative performance will probably change as NT and PC hardware get faster, of course, but Samba is improving as well. For example, Samba 1.9.18 was faster only with more than 35 clients. Samba 2.0, however, is faster regardless of the number
of clients. In short, Samba is very competitive with the best networking software in the industry, and is only getting better.
As we went to press, Andrew Tridgell released the alpha-test version suite of benchmarking programs for Samba and SMB networks. Expect even more work on performance from the Samba team in the future.
A.5 SSL Configuration Options | B.2 Samba Tuning |
相关文章推荐
- Performance Tuning for Linux(R) Servers
- Asp.net UI Performance tuning
- Struts Performance tuning
- 30 分钟快快乐乐学 SQL Performance Tuning
- Oracle Query Performance Tuning: 12–Step Program
- CHAPTER 1 SQL Query Performance Tuning
- KVM performance tuning
- Linux performance tuning tips for MySQL
- IBM HTTP Server Performance Tuning
- PostgreSQL Hardware Performance Tuning
- Performance Tuning Introduction drill 性能调优
- Nginx 性能调优 Tuning NGINX for Performance
- 25 Apache Performance Tuning Tips
- Performance Tuning Technique: 几个角度
- ORACLE SQL Performance Tuning
- Part 4 The Principles of Java Application Performance Tuning
- 2013-1-23 - 1-24 11gR2 "Performance Tuning Guide" page 142 - 151
- WebLogic JMS Performance Tuning Series, Part 3: Consumer-Side Message Pipelining
- ORACLE PERFORMANCE SQL TUNING
- Oracle Wait Interface: A Practical Guide to Performance Diagnostics & Tuning