日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

一、linux服務器上11種網絡連接狀態:

用netstat查看網絡狀態詳解

 

圖:TCP的狀態機

通常情況下:一個正常的TCP連接,都會有三個階段:1、TCP三次握手;2、數據傳送;3、TCP四次揮手

注:以下說明最好能結合”圖:TCP的狀態機”來理解。

SYN: (同步序列編號,Synchronize Sequence Numbers)該標志僅在三次握手建立TCP連接時有效。表示一個新的TCP連接請求。

ACK: (確認編號,Acknowledgement Number)是對TCP請求的確認標志,同時提示對端系統已經成功接收所有數據。

FIN: (結束標志,FINish)用來結束一個TCP回話.但對應端口仍處于開放狀態,準備接收后續數據。

1)、LISTEN:首先服務端需要打開一個socket進行監聽,狀態為LISTEN. /* The socket is listening for incoming connections. 偵聽來自遠方TCP端口的連接請求 */

2)、SYN_SENT:客戶端通過應用程序調用connect進行active open.于是客戶端tcp發送一個SYN以請求建立一個連接.之后狀態置為SYN_SENT.

/*The socket is actively attempting to establish a connection. 在發送連接請求后等待匹配的連接請求 */

3)、SYN_RECV:服務端應發出ACK確認客戶端的SYN,同時自己向客戶端發送一個SYN. 之后狀態置為SYN_RECV /* A connection request has been received from the network. 在收到和發送一個連接請求后等待對連接請求的確認 */

4)、ESTABLISHED: 代表一個打開的連接,雙方可以進行或已經在數據交互了。 /* The socket has an established connection. 代表一個打開的連接,數據可以傳送給用戶 */

5)、FIN_WAIT1:主動關閉(active close)端應用程序調用close,于是其TCP發出FIN請求主動關閉連接,之后進入FIN_WAIT1狀態. /* The socket is closed, and the connection is shutting down. 等待遠程TCP的連接中斷請求,或先前的連接中斷請求的確認 */

6)、CLOSE_WAIT:被動關閉(passive close)端TCP接到FIN后,就發出ACK以回應FIN請求(它的接收也作為文件結束符傳遞給上層應用程序),并進入CLOSE_WAIT. /* The remote end has shut down, waiting for the socket to close. 等待從本地用戶發來的連接中斷請求 */

7)、FIN_WAIT2:主動關閉端接到ACK后,就進入了FIN-WAIT-2 . /* Connection is closed, and the socket is waiting for a shutdown from the remote end. 從遠程TCP等待連接中斷請求 */

8)、LAST_ACK:被動關閉端一段時間后,接收到文件結束符的應用程序將調用CLOSE關閉連接。這導致它的TCP也發送一個 FIN,等待對方的ACK.就進入了LAST-ACK . /* The remote end has shut down, and the socket is closed. Waiting for acknowledgement. 等待原來發向遠程TCP的連接中斷請求的確認 */

9)、TIME_WAIT:在主動關閉端接收到FIN后,TCP就發送ACK包,并進入TIME-WAIT狀態。 /* The socket is waiting after close to handle packets still in the network.等待足夠的時間以確保遠程TCP接收到連接中斷請求的確認 */

10)、CLOSING: 比較少見. /* Both sockets are shut down but we still don’t have all our data sent. 等待遠程TCP對連接中斷的確認 */

11)、CLOSED: 被動關閉端在接受到ACK包后,就進入了closed的狀態。連接結束. /* The socket is not being used. 沒有任何連接狀態 */

TIME_WAIT狀態的形成只發生在主動關閉連接的一方。

主動關閉方在接收到被動關閉方的FIN請求后,發送成功給對方一個ACK后,將自己的狀態由FIN_WAIT2修改為TIME_WAIT,而必須再等2倍 的MSL(Maximum Segment Lifetime,MSL是一個數據報在internetwork中能存在的時間)時間之后雙方才能把狀態 都改為CLOSED以關閉連接。目前RHEL里保持TIME_WAIT狀態的時間為60秒。

當然上述很多TCP狀態在系統里都有對應的解釋或設置,可見man tcp

二、關于長連接和短連接:

通俗點講:短連接就是一次TCP請求得到結果后,連接馬上結束.而長連接并不馬上斷開,而一直保持著,直到長連接TIMEOUT(具體程序都有相關參數說明).長連接可以避免不斷的進行TCP三次握手和四次揮手.

長連接(keepalive)是需要靠雙方不斷的發送探測包來維持的,keepalive期間服務端和客戶端的TCP連接狀態是ESTABLISHED.目前http 1.1版本里默認都是keepalive(1.0版本默認是不keepalive的),ie6/7/8和firefox都默認用的是http 1.1版本了(如何查看當前瀏覽器用的是哪個版本,這里不再贅述)。Apache,JAVA

一個應用至于到底是該使用短連接還是長連接,應該視具體情況而定。一般的應用應該使用長連接。

1、Linux的相關keepalive參數

a、 tcp_keepalive_time - INTEGERHow often TCP sends out keepalive messages when keepalive is enabled.Default : 2hours .
b、 tcp_keepalive_probes - INTEGER
How many keepalive probes TCP sends out, until it decides that the
connection is broken. Default value : 9 .
c、 tcp_keepalive_intvl - INTEGER
How frequently the probes are send out. Multiplied by
tcp_keepalive_probes it is time to kill not responding connection,
after probes started. Default value : 75sec i.e. connection
will be aborted after ~ 11 minutes of retries.

2、F5負載均衡上的相關參數說明

a、Keep Alive IntervalSpecifies, when enabled, how frequently the system sends data over an idle TCP connection, to determine whether the connection is still valid.Specify : Specifies the interval at which the system sends data over an idle connection, to determine whether the connection is still valid. The default is 1800 milliseconds.
b、Time Wait
Specifies the length of time that a TCP connection remains in the TIME - WAIT state before entering the CLOSED state.
Specify : Specifies the number of milliseconds that a TCP connection can remain in the TIME - WAIT state. The default is 2000 .

c、Idle Timeout

Specifies the length of time that a connection is idle (has no traffic) before the connection is eligible for deletion.

Specify : Specifies a number of seconds that the TCP connection can remain idle before the system deletes it. The default

is

300

seconds.

3、Apache的相關參數說明

以下是Apache/2.0.61版本的默認參數和說明

a、KeepAlive :
default On.Whether or not to allow persistent connections (more than
one request per connection). Set to “Off” to deactivate.
b、MaxKeepAliveRequests :
default 100 .The maximum number of requests to allow
during a persistent connection. Set to 0 to allow an unlimited amount.
We recommend you leave this number high, for maximum performance.
c、KeepAliveTimeout :
default 15 . Number of seconds to wait for the next request from the
same client on the same connection.

分享到:
標簽:netstat
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定