所有的tcp/ip調優引數都位於/proc/sys/net/目錄。例如, 下面是最重要的一些調優引數, 後面是它們的含義
:1. /proc/sys/net/core/rmem_max — 最大的tcp資料接收緩衝。
2. /proc/sys/net/core/wmem_max —
最大的tcp資料傳送緩衝。
3. /proc/sys/net/ipv4/tcp_timestamps —
時間戳在(請參考rfc 1323)tcp的包頭增加12個位元組。
4. /proc/sys/net/ipv4/tcp_sack —
有選擇的應答。
5. /proc/sys/net/ipv4/tcp_window_scaling —
支援更大的tcp視窗. 如果tcp視窗最大超過65535(64kb), 必須設定該數值為1。
6. rmem_default —
預設的接收視窗大小。
7. rmem_max —
接收視窗的最大大小。
8. wmem_default —
預設的傳送視窗大小。
9. wmem_max —
傳送視窗的最大大小。
/proc
目錄下的所有內容都是臨時性的, 所以重啟動系統後任何修改都會丟失。
建議在系統啟動時自動修改tcp/ip引數
:把下面**增加到/etc/rc.local檔案, 然後儲存檔案, 系統重新引導的時候會自動修改下面的tcp/ip引數
:echo 256960 > /proc/sys/net/core/rmem_default
echo 256960 > /proc/sys/net/core/rmem_max
echo 256960 > /proc/sys/net/core/wmem_default
echo 256960 > /proc/sys/net/core/wmem_max
echo 0 > /proc/sys/net/ipv4/tcp_timestamps
echo 1 > /proc/sys/net/ipv4/tcp_sack
echo 1 > /proc/sys/net/ipv4/tcp_window_scaling
tcp/ip引數都是自解釋的, tcp視窗大小設定為256960, 禁止tcp的時間戳(取消在每個資料報的頭中增加12位元組), 支援更大的tcp視窗和tcp有選擇的應答。
上面數值的設定是根據互連網連線和最大頻寬/延遲率來決定。
注: 上面例項中的數值可以實際應用, 但它只包含了一部分引數。
另外乙個方法: 使用 /etc/sysctl.conf 在系統啟動時把引數配置成您所設定的值
:net.core.rmem_default = 256960
net.core.rmem_max = 256960
net.core.wmem_default = 256960
net.core.wmem_max = 256960
net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_sack =1
net.ipv4.tcp_window_scaling = 1<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
設定linux
核心引數
配置linux
核心引數
(2種方法
),修改後不用重啟動更新
: /sbin/sysctl -p
第一種:
開啟/etc/sysctl.conf
複製如下內容
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default=262144
net.core.wmem_default=262144
net.core.rmem_max=262144
net.core.wmem_max=262144
第二種:
開啟終端
cat >> /etc/sysctl.conf<
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default=262144
net.core.wmem_default=262144
net.core.rmem_max=262144
net.core.wmem_max=262144
eof這裡,對每個引數值做個簡要的解釋和說明。(1
)shmmax
:該引數定義了共享記憶體段的最大尺寸(以位元組為單位)。預設為
<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />32m
,對於oracle
來說,該預設值太低了,通常將其設定為2g。
(2)shmmni
:這個核心引數用於設定系統範圍內共享記憶體段的最大數量。該引數的預設值是
4096
。通常不需要更改。(3
)shmall
:該引數表示系統一次可以使用的共享記憶體總量(以頁為單位)。預設值就是
2097152
,通常不需要修改。(4
)sem
:該引數表示設定的訊號量。(5
)file-max
:該引數表示檔案控制代碼的最大數量。檔案控制代碼設定表示在
linux
系統中可以開啟的檔案數量。
修改好核心以後,執行下面的命令使新的配置生效。
[root @linux1 /root]# /sbin/sysctl -p
以root
使用者身份執行以下命令來驗證您的設定:
/sbin/sysctl -a | grep shm
/sbin/sysctl -a | grep sem
/sbin/sysctl -a | grep file-max
/sbin/sysctl -a | grep ip_local_port_range
例如:# /sbin/sysctl -a | grep shm
kernel.shmmni = 4096
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shm-use-bigpages = 0
# /sbin/sysctl -a | grep sem
kernel.sem = 250 32000 100 128
# /sbin/sysctl -a | grep file-max
fs.file-max = 65536
# /sbin/sysctl -a | grep ip_local_port_range
net.ipv4.ip_local_port_range = 1024 65000
如果系統的引數設定的比上述引數值小,則編輯
/etc/sysctl.conf
檔案,新增或更改這些引數。完成後,執行以下命令啟用更改:
/sbin/sysctl -p
ps:通常用預設引數就可以了吧。。。
以上資料**網路。
Linux 系統網路引數調優設定
接收套接字緩衝區大小的預設值 以位元組為單位 net.core.rmem default 262144 接收套接字緩衝區大小的最大值 以位元組為單位 net.core.rmem max 16777216 傳送套接字緩衝區大小的預設值 以位元組為單位 net.core.wmem default 262...
tcp網路引數調優思路
1.設定向外連線可用埠範圍 2.設定time wait連線重用 3.設定快速 time wait連線 4.設定time wait的最大連線長度 5.啟用以一種比超時重發更精確的方法來啟用rtt的計算 rtt round trip time 乙個連線的往返時間,即資料傳送時刻到接收到確認的時刻的差值 ...
Tomcat網路處理 引數調優
1 bio 同步servlet tomcat7及之前使用,乙個請求,乙個工作執行緒,cpu利用率低 2 apr 非同步servlet apr apache可移植執行庫 是apache http伺服器的支援庫。jni的形式呼叫apache http伺服器的核心動態鏈結庫來處理檔案讀取或網路傳輸操作。t...