網路效能測試軟體
Linux 網路參數設定
echo "30000" > /proc/sys/net/ipv4/tcp_max_syn_backlog
預設為 1024,可增加 Server queue TCP SYN 的數量
echo "2000000" > /proc/sys/net/ipv4/tcp_max_tw_buckets
預設為 180000,增加 TIME-WAIT state 的數量
echo "50000" > /proc/sys/net/core/netdev_max_backlog
設定可以 queue 在IP層之下的 network core 之封包數目,可以使用較多的記憶體儲存進入的封包,預設 1000。
最好用的文件仍然是 Kernel source 中的 Documentation,設定 Kernel 參數可透過 sysctl, procfs
範例:
# sysctl -w kernel.shmmax=32
# sysctl -p /etc/sysctl.conf
# echo "32" > /proc/sys/kernel/shmmax
Linux kernel 2.6
/proc/sys/kernel/
thread-max: 系統中可允許的最大 thread 數目。
domainname
hostname
ostype
osrelease
version:Kernel version
real-root-dev:real root device partition
rtsig-max:最大的 real time signals
rtsig-nr:現在 queue 中的 real-time signals 數量
pid_max
/proc/sys/fs/
file-max: file descriptors 的最大數目
file-nr: file handles 的個數
super-max: 檔案系統的最大數目
/proc/sys/net/ipv4/
ip_no_pmtu_disc: 關閉 Path MTU discovery
/proc/sys/net/route/
max_size: routing cache 的最大 size
max_delay: flushing routing cache 的最大延遲時間
/proc/sys/net/conf/interface/
proxy_arp:
rp_filter: 需要驗證來源位址
/proc/sys/net/core
rmem_default: socket 的接收 buffer size
rmem_max: socket 的最大接收 buffer size
wmem_default: socket 的傳送 buffer size
wmem_max: socket 的最大傳送 buffer size
netdev_max_backlog: queued 封包的最大數目
參考文獻
1. Sandra K. Johnson, Performance Tuning for Linux Servers, IBM PRESS, 2005.
2. 劉怡芳、劉育銘,伺服器效能調校專家─以 Linux 為例,學貫,2005。