国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 課堂 > 網(wǎng)絡(luò)協(xié)議 > 正文

TCP鏈接經(jīng)過的4次握手

2020-04-29 13:42:03
字體:
供稿:網(wǎng)友
  通常情況下:一個(gè)正常的TCP連接,都會(huì)有三個(gè)階段:1、TCP三次握手;2、數(shù)據(jù)傳送;3、TCP四次揮手

  里面的幾個(gè)概念:

  SYN: (同步序列編號(hào),Synchronize Sequence Numbers)

  ACK: (確認(rèn)編號(hào),Acknowledgement Number)

  FIN: (結(jié)束標(biāo)志,FINish)

  TCP三次握手(創(chuàng)建 OPEN)

  客戶端發(fā)起一個(gè)和服務(wù)創(chuàng)建TCP鏈接的請(qǐng)求,這里是SYN(J)

  服務(wù)端接受到客戶端的創(chuàng)建請(qǐng)求后,返回兩個(gè)信息: SYN(K) + ACK(J+1)

  客戶端在接受到服務(wù)端的ACK信息校驗(yàn)成功后(J與J+1),返回一個(gè)信息:ACK(K+1)

  服務(wù)端這時(shí)接受到客戶端的ACK信息校驗(yàn)成功后(K與K+1),不再返回信息,后面進(jìn)入數(shù)據(jù)通訊階段

  數(shù)據(jù)通訊

  客戶端/服務(wù)端 read/write數(shù)據(jù)包

  TCP四次握手(關(guān)閉 finish)

  客戶端發(fā)起關(guān)閉請(qǐng)求,發(fā)送一個(gè)信息:FIN(M)

  服務(wù)端接受到信息后,首先返回ACK(M+1),表明自己已經(jīng)收到消息。

  服務(wù)端在準(zhǔn)備好關(guān)閉之前,最后發(fā)送給客戶端一個(gè) FIN(N)消息,詢問客戶端是否準(zhǔn)備好關(guān)閉了

  客戶端接受到服務(wù)端發(fā)送的消息后,返回一個(gè)確認(rèn)信息: ACK(N+1)

  最后,服務(wù)端和客戶端在雙方都得到確認(rèn)時(shí),各自關(guān)閉或者回收對(duì)應(yīng)的TCP鏈接。

  詳細(xì)的狀態(tài)說明(以及l(fā)inux相關(guān)參數(shù)調(diào)整)

  SYN_SEND

  客戶端嘗試鏈接服務(wù)端,通過open方法。也就是TCP三次握手中的第1步之后,注意是客戶端狀態(tài)

  sysctl -w net.ipv4.tcp_syn_retries = 2 ,做為客戶端可以設(shè)置SYN包的重試次數(shù),默認(rèn)5次(大約180s)引用校長的話:僅僅重試2次,現(xiàn)代網(wǎng)絡(luò)夠了

  SYN_RECEIVED

  服務(wù)接受創(chuàng)建請(qǐng)求的SYN后,也就是TCP三次握手中的第2步,發(fā)送ACK數(shù)據(jù)包之前

  注意是服務(wù)端狀態(tài),一般15個(gè)左右正常,如果很大,懷疑遭受SYN_FLOOD攻擊

  sysctl -w net.ipv4.tcp_max_syn_backlog=4096 , 設(shè)置該狀態(tài)的等待隊(duì)列數(shù),默認(rèn)1024,調(diào)大后可適當(dāng)防止syn-flood,可參見man 7 tcp

  sysctl -w net.ipv4.tcp_syncookies=1 , 打開syncookie,在syn backlog隊(duì)列不足的時(shí)候,提供一種機(jī)制臨時(shí)將syn鏈接換出

  sysctl -w net.ipv4.tcp_synack_retries = 2 ,做為服務(wù)端返回ACK包的重試次數(shù),默認(rèn)5次(大約180s)引用校長的話:僅僅重試2次,現(xiàn)代網(wǎng)絡(luò)夠了

  ESTABLISHED

  客戶端接受到服務(wù)端的ACK包后的狀態(tài),服務(wù)端在發(fā)出ACK在一定時(shí)間后即為ESTABLISHED

  sysctl -w net.ipv4.tcp_keepalive_time = 1200 ,默認(rèn)為7200秒(2小時(shí)),系統(tǒng)針對(duì)空閑鏈接會(huì)進(jìn)行心跳檢查,如果超過net.ipv4.tcp_keepalive_probes * net.ipv4.tcp_keepalive_intvl = 默認(rèn)11分,終止對(duì)應(yīng)的tcp鏈接,可適當(dāng)調(diào)整心跳檢查頻率

  目前線上的監(jiān)控 waring:600 , critial : 800

  FIN_WAIT1

  主動(dòng)關(guān)閉的一方,在發(fā)出FIN請(qǐng)求之后,也就是在TCP四次握手的第1步

  CLOSE_WAIT

  被動(dòng)關(guān)閉的一方,在接受到客戶端的FIN后,也就是在TCP四次握手的第2步

  FIN_WAIT2

  主動(dòng)關(guān)閉的一方,在接受到被動(dòng)關(guān)閉一方的ACK后,也就是TCP四次握手的第2步

  sysctl -w net.ipv4.tcp_fin_timeout=30, 可以設(shè)定被動(dòng)關(guān)閉方返回FIN后的超時(shí)時(shí)間,有效回收鏈接,避免syn-flood.

  LASK_ACK

  被動(dòng)關(guān)閉的一方,在發(fā)送ACK后一段時(shí)間后(確保客戶端已收到),再發(fā)起一個(gè)FIN請(qǐng)求。也就是TCP四次握手的第3步
(責(zé)任編輯:VEVB)

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 老河口市| 巴林左旗| 育儿| 枞阳县| 天峻县| 和硕县| 新丰县| 通山县| 萨嘎县| 大理市| 沛县| 清镇市| 阿巴嘎旗| 乌恰县| 内丘县| 高平市| 丰镇市| 溧水县| 穆棱市| 舒城县| 新源县| 鹤山市| 宜兰市| 龙里县| 肇源县| 广汉市| 临城县| 郸城县| 北宁市| 舟山市| 老河口市| 大足县| 阳山县| 蚌埠市| 玛多县| 仁化县| 昌都县| 正宁县| 新蔡县| 六安市| 固镇县|