kernel:Network tuning - 受信バッファ・メモリ ソケット用メモリ

  • TCP/IPネットワークにおいて、チューニング対象となるパラメータは以下の2つがある
    1. 受信バッファ・メモリを増やす
    2. ソケット用メモリを増やす
  • メモリを増設した場合や、Gigabit Ethernetに変更した場合等に調整すると効果が高い
  • 受信バッファ・メモリを増やす
    • 受信バッファ・メモリのサイズは"/proc/sys/net/ipv4/tcp_rmem"に設定されている

現在の受信バッファ・メモリを確認する

[root@tkcent1 ~]# cat /proc/sys/net/ipv4/tcp_rmem 
4096	87380	4100096
    • 値は左から、最小値、デフォルト値、最大値

たとえば、最小値とデフォルト値を2倍にしてみる

[root@tkcent1 ~]# echo '8192 174760 4100096' > /proc/sys/net/ipv4/tcp_rmem 
[root@tkcent1 ~]# cat /proc/sys/net/ipv4/tcp_rmem 
8192	174760	4100096
  • ソケット用メモリを増やす
    • TCPソケット用に割り当てるメモリを増やすことによって、より多くのTCPパケットを処理できるようになる

現在のソケット用メモリを確認する

[root@tkcent1 ~]# cat /proc/sys/net/ipv4/tcp_mem 
96096	128128	192192
    • 値は左から、最小値、メモリ圧縮を開始する値、最大値
    • 単位はページサイズ単位(通常は4KB単位)

すべての設定値を2倍にしてみる

[root@tkcent1 ~]# echo '192192 256256 384384' > /proc/sys/net/ipv4/tcp_mem 
[root@tkcent1 ~]# cat /proc/sys/net/ipv4/tcp_mem 
192192	256256	384384