成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁 > 知識庫 > TCP socket SYN隊列和Accept隊列區(qū)別原理解析

TCP socket SYN隊列和Accept隊列區(qū)別原理解析

熱門標(biāo)簽:企業(yè)辦理400電話收費標(biāo)準(zhǔn) 百度地圖底圖標(biāo)注 新鄉(xiāng)牧野400電話申請 智能電銷機(jī)器人真的有用么 中國地圖標(biāo)注上各個省 撫州市城區(qū)地圖標(biāo)注 激光標(biāo)記地圖標(biāo)注 高德地圖標(biāo)注足跡怎么打標(biāo) 電銷智能機(jī)器人試用

首先我們必須明白,處于“LISTENING”狀態(tài)的TCP socket,有兩個獨立的隊列:

  • SYN隊列(SYN Queue)
  • Accept隊列(Accept Queue)

這兩個術(shù)語有時也被稱為“reqsk_queue”,“ACK backlog”,“l(fā)isten backlog”,甚至“TCP backlog”,但是這篇文章中我們使用上面兩個術(shù)語以免造成混淆。

SYN隊列

SYN隊列存儲了收到SYN包的連接(對應(yīng)內(nèi)核代碼的結(jié)構(gòu)體:struct inet_request_sock)。它的職責(zé)是回復(fù)SYN+ACK包,并且在沒有收到ACK包時重傳,直到超時。在Linux下,重傳的次數(shù)為:

$ sysctl net.ipv4.tcp_synack_retries

net.ipv4.tcp_synack_retries = 5

文檔中對tcp_synack_retries的描述如下:

 tcp_synack_retries - int整型
 對于一個被動TCP連接,重傳SYNACKs的次數(shù)。該值不能超過255。
 默認(rèn)值為5,如果初始RTO是1秒,那么對應(yīng)的最后一次重傳是31秒。
 對應(yīng)的最后一次超時是63秒之后。

發(fā)送完SYN+ACK之后,SYN隊列等待從客戶端發(fā)出的ACK包(也即三次握手的最后一個包)。當(dāng)收到ACK包時,首先找到對應(yīng)的SYN隊列,再在對應(yīng)的SYN隊列中檢查相關(guān)的數(shù)據(jù)看是否匹配,如果匹配,內(nèi)核將該連接相關(guān)的數(shù)據(jù)從SYN隊列中移除,創(chuàng)建一個完整的連接(對應(yīng)內(nèi)核代碼的結(jié)構(gòu)體:struct inet_sock),并將這個連接加入Accept隊列。

Accept隊列

Accept隊列中存放的是已建立好的連接,也即等待被上層應(yīng)用程序取走的連接。當(dāng)進(jìn)程調(diào)用accept(),這個socket從隊列中取出,傳遞給上層應(yīng)用程序。

這就是Linux處理SYN包的一個簡單描述。順便一提,當(dāng)socket開啟了TCP_DEFER_ACCEPT和TCP_FASTOPEN時,工作方式將會有細(xì)微不同,本文不做介紹。

隊列大小限制

應(yīng)用程序通過調(diào)用系統(tǒng)調(diào)用listen(2),傳入backlog參數(shù),來設(shè)置SYN隊列和Accept隊列的最大大小。比如下面這樣,將SYN隊列和Accept隊列的最大大小同時設(shè)置為1024:

listen(sfd, 1024)

注意,在4.3版本之前的內(nèi)核,SYN隊列的大小是用另一種方式計算。

SYN隊列的最大大小以前是用net.ipv4.tcp_max_syn_backlog來配置,但是現(xiàn)在已經(jīng)不再使用了?,F(xiàn)在用net.core.somaxconn來同時表示SYN隊列和Accept隊列的最大大小。在我們的服務(wù)器上,我們將它設(shè)置為16k:

$ sysctl net.core.somaxconn

net.core.somaxconn = 16384

知道了上面這些信息后,你可能會問,隊列設(shè)置為多大合適?隊列設(shè)置為多大合適

答案是:看情況。對于大多數(shù)的TCP服務(wù)來說,這并不太重要。比如,Go語言1.11版本之前,并沒有提供設(shè)置隊列大小的方法。

盡管如此,也存在一些合理的原因,需要增大隊列的大?。?/p>

  • 當(dāng)建立連接的請求速度確實很大時,即使是對于一個高性能的服務(wù)來說,SYN隊列也可能需要設(shè)置的大一些。
  • SYN隊列的大小,換言之就是等待ACK包的連接數(shù)。也即與客戶端的平均往返時間越大,堆積在SYN隊列中的連接就越多。對于那些大部分客戶端都距離服務(wù)器很遠(yuǎn)的場景,比如說往返時間幾百毫秒以上,可以將隊列大小設(shè)置的大一些。
  • TCP_DEFER_ACCEPT選項如果打開了,會導(dǎo)致socket在SYN-RECV狀態(tài)下維持更長的時間,也即增大了處于SYN隊列中的時間。

但是,將backlog設(shè)置的過大也會帶來不好的影響:SYN隊列中的每一個槽位都需要占用一些內(nèi)存。當(dāng)遇到SYN Flood攻擊時,我們沒有必要為這些發(fā)起攻擊的包浪費資源。SYN隊列中的inet_request_sock結(jié)構(gòu)體,在4.14內(nèi)核下,每個將占用256字節(jié)的內(nèi)存。

linux下,如果想查看SYN隊列的當(dāng)前狀態(tài),我們可以使用ss命令來查詢SYN-RECV狀態(tài)的socket。比如如下執(zhí)行結(jié)果,表示80端口的SYN隊列中當(dāng)前有119個元素,443端口則為78。

 $ ss -n state syn-recv sport = :80 | wc -l
 119
 $ ss -n state syn-recv sport = :443 | wc -l
 78

假如程序調(diào)用accept()不夠快?還可以通過我們的SystemTap腳本來觀察這個數(shù)據(jù):resq.stp

如果程序調(diào)用accept()不夠快會發(fā)生什么呢?

  • 后續(xù)收到的SYN包,不會被SYN隊列處理
  • 后續(xù)收到的(用于建立連接的)ACK包,不會被SYN隊列處理
  • TcpExtListenOverflows / LINUX_MIB_LISTENOVERFLOWS計數(shù)增加
  • TcpExtListenDrops / LINUX_MIB_LISTENDROPS計數(shù)增加

發(fā)生這種情況時,我們只能寄希望于程序的處理性能稍后能恢復(fù)正常,客戶端重新發(fā)送被服務(wù)端丟棄的包。

內(nèi)核的這種表現(xiàn)對于大部分服務(wù)來說是可接受的。順便一提,可以通過調(diào)整net.ipv4.tcp_abort_on_overflow這個全局參數(shù)來修改這種表現(xiàn),但是最好還是不要改這個參數(shù)。

可以通過查看nstat的計數(shù)來觀察Accept隊列溢出的狀態(tài):

 $ nstat -az TcpExtListenDrops
 TcpExtListenDrops 49199 0.0

但是這是一個全局的計數(shù)。觀察起來不夠直觀,比如有時我們觀察到它在增長,但是所有的服務(wù)程序看起來都是正常的。此時我們可以使用ss命令來觀察單個監(jiān)聽端口的Accept隊列大?。?/p>

 $ ss -plnt sport = :6443|cat
 State Recv-Q Send-Q Local Address:Port Peer Address:Port
 LISTEN 0 1024 *:6443 *:*

Recv-Q這一列顯示的是處于Accept隊列中的socket數(shù)量,Send-Q顯示的是隊列的最大大小。在上面的例子中,我們發(fā)現(xiàn)并沒有未被程序accept()的socket,但是我們依然發(fā)現(xiàn)ListenDrops計數(shù)在增長。

這是因為我們的程序只是周期性的短暫卡住不處理新的連接,而非永久性的不處理,過段時間程序又恢復(fù)了正常。這種情況下,用ss命令比較難觀察這種現(xiàn)象,因此我們寫了一個SystemTap腳本,它會hook進(jìn)內(nèi)核,把被丟棄的SYN包打印出來:

$ sudo stap -v acceptq.stp
time (us)    acceptq qmax local addr  remote_addr
1495634198449075 1025  1024 0.0.0.0:6443 10.0.1.92:28585
1495634198449253 1025  1024 0.0.0.0:6443 10.0.1.92:50500
1495634198450062 1025  1024 0.0.0.0:6443 10.0.1.92:65434
...

通過上面的操作,可以觀察到哪些SYN包被ListenDrops影響了。從而我們也就可以知道哪些程序在丟失連接。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

標(biāo)簽:西安 臨汾 南通 辛集 忻州 海西 邯鄲 延安

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《TCP socket SYN隊列和Accept隊列區(qū)別原理解析》,本文關(guān)鍵詞  TCP,socket,SYN,隊列,和,Accept,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《TCP socket SYN隊列和Accept隊列區(qū)別原理解析》相關(guān)的同類信息!
  • 本頁收集關(guān)于TCP socket SYN隊列和Accept隊列區(qū)別原理解析的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    中文乱码免费一区二区| 亚洲精品久久久久久久久久久久久| 欧美高清视频一二三区| 美女呻吟一区| 成人xxx免费视频播放| 国产免费av高清在线| av动漫在线播放| 欧美尺度大的性做爰视频| 中文字幕在线播放日韩| 激情综合电影网| 在线看国产一区| 在线免费看黄视频| 日韩中文字幕在线一区| 奇米影视7777精品一区二区| 手机看片福利在线| 久久久精品性| 在线成人av影院| 国产原创av在线| 香蕉成人伊视频在线观看| 在线看你懂得| 欧美视频在线第一页| 免费人成视频在线| 欧美色18zzzzxxxxx| 一区二区三区91| 中文字幕欧美激情一区| 性中国xxx极品hd| 国产精品资源网站| 国产精品极品国产中出| 亚洲专区一二三| 欧美麻豆久久久久久中文| 欧美牲交a欧美牲交| 久久久夜色精品| 色老板在线视频一区二区| 一级黄色a视频| 日本一本在线视频| 日韩欧美国产一二三区| 黄色精品在线看| 日韩有吗在线观看| 麻豆网站免费在线观看| 日本一二三不卡视频| 亚洲黄页一区| 国产模特精品视频久久久久| аⅴ成人天堂中文在线| 日韩黄色a级片| 欧美美女视频| 精品网站999| 日本女优在线视频一区二区| 欧美疯狂性受xxxxx另类| 亚洲精品国产一区| av资源站一区| 视频免费1区二区三区| 欧美性三三影院| 美女搞黄视频在线观看| 成人欧美一区二区三区| 91精品国产高清一区二区三蜜臀| 国产视频xxx| 国产99久久久精品| 免费网站你懂的| 一级黄色免费在线观看| porn视频在线观看| 国产中文字幕在线视频| 日韩一级片在线观看| 国产资源一区| 精品在线观看视频| 亚洲欧美一区二区三区| 黄频视频在线观看| 91超碰在线播放| 亚洲ⅴ国产v天堂a无码二区| 青青草国产精品亚洲专区无| 国产二区三区在线| 久草视频在线资源站| 久久久久久久av| 国产精品一区视频网站| 国产一区二区三区四区hd| 成人春色在线观看免费网站| 波多野结衣av一区二区全免费观看| 精品人妻一区二区三区蜜桃| 97aⅴ精品视频一二三区| 亚洲午夜影视影院在线观看| 91亚洲精华国产精华精华液| 亚洲精品进入| 三上悠亚一区二区三区| 中文字幕一区在线| 777a∨成人精品桃花网| 亚洲国产精品成人无久久精品| 波多野结衣综合网| 久久久久久久久久久成人| 成人免费高清视频| 免费在线观看a级片| 亚洲精品天堂在线| 久久精品免视看国产成人| 91久久在线视频| 2019中文字幕在线视频| 久久久久久中文| 久久影视电视剧免费网站清宫辞电视| 国产精品边吃奶边做爽| 91丨九色丨国产在线| 无码国产精品久久一区免费| 久久成人精品一区二区三区| 亚洲欧美日韩中文字幕在线观看| 欧美日韩视频精品一区二区| 女同性一区二区三区人了人一| 国产在线观看你懂的| 亚洲国产日韩在线一区| 亚洲国产av一区二区| 国产成人aaaa| 能看毛片的网站| 女人高潮特级毛片| japan乱配videos老少配| 国产精品日韩一区二区免费视频| 国产午夜精品久久久| 色中色在线视频| 视频一区视频二区中文字幕| 亲爱的老师6电影韩剧| 中文成人av在线| 污污的网站在线免费观看| 在线成人欧美| 四虎成人精品在永久在线观看| 99这里都是精品| 日本成人超碰在线观看| 欧美大片一区二区三区| 久久精品magnetxturnbtih| 日本一区二区免费在线观看视频| 伊人影院在线播放| 中日韩美女免费视频网址在线观看| 成人影院入口| 不卡大黄网站免费看| 久草在线国产| 精品人妻二区中文字幕| 国产精品老女人| 9l国产精品久久久久麻豆| 国产成人无码精品久在线观看| 欧美一区二区三区在线| 亚洲免费一级电影| 亚洲另类欧美自拍| 免费看黄色一级大片| 国产一区二区欧美| 欧美性受xxxx黑人猛交88| 欧美成人tv| 少妇激情av一区二区| 99久久综合狠狠综合久久| 亚洲人成电影在在线观看网色| 亚洲在线视频免费观看| 国产专区中文字幕| 久热这里只有精品6| 久久蜜桃资源一区二区老牛| 国产欧美1区2区3区| 亚洲在线第一页| 蜜臀av免费在线观看| 不卡的国产精品| 色窝窝无码一区二区三区| 免费看的国产视频网站| 你懂得影院夜精品a| 色999日韩国产欧美一区二区| 母乳一区在线观看| 久久这里有精品视频| 成人黄色激情网| 思思99热久久精品在线6| 老汉色影院首页| 五月婷婷六月综合| 啦啦啦啦免费高清视频在线观看1| 精品人妻无码一区二区三区| 四虎成人精品在永久免费| 国产精品网友自拍| 一区三区视频| 性欧美在线视频| 91精品国产乱码久久久久久久| 精品综合久久88少妇激情| 日韩一区在线看| 欧美精品一区二区在线观看| 欧美一卡在线观看| 国产精品免费视频一区二区三区| 99鲁鲁精品一区二区三区| 国产福利在线视频| 9.1国产丝袜在线观看| 亚洲欧洲成人av每日更新| 女明星视频黄又免费| 成人精品视频一区二区三区| 污视频网站免费观看| 久久精品成人| 日本最新中文字幕| 欧美激情精品久久久六区热门| 天天色天天综合| 精品一区2区三区| 精品久久久久久久久久久久久久久久久| 亚洲欧洲成人自拍| 欧美精品一级二级三级| 日韩一二三在线视频播| 国产精品福利观看| 在线观看三级视频欧美| 激情欧美亚洲| 97在线视频免费观看| 久操视频在线| 欧美一级特黄aaaaaa大片在线观看| 婷婷综合国产| 丁香花高清视频完整版在线观看| 超免费在线视频| 国产欧美日韩视频一区二区三区| 日韩精品资源| 国产l精品国产亚洲区在线观看| 中文字幕在线永久在线视频2020| 在线观看网站黄| 欧美日韩不卡合集视频| 特级西西444www高清大视频| 伊人久久一区二区| 亚洲最大在线| www..com国产| 中文字幕在线免费观看视频| 亚洲制服中文字幕| 日本一区二区三区四区视频| 亚洲成人国产精品| 免费黄色a网站| 日韩极品精品视频免费观看| 日韩在线欧美在线国产在线| 日韩精品电影在线观看| 免费高清在线一区| 久久大胆人体视频| 国产一区二区电影在线观看| 欧美日韩一区二区三区不卡视频| 日本一区二区三区视频在线观看| 亚洲成人中文字幕| 亚洲一区二区三区四区在线| 在线不卡视频一区二区| 视频二区欧美毛片免费观看| 亚洲欧美福利一区二区| 欧美激情一区二区视频| 国产精品久久久精品四季影院| 国产精品美女主播| 日韩专区av| 欧美日韩 一区二区三区| 国产精品久久久精品a级小说| 日韩av在线综合| 欧美一区二区精品| 一区二区三国产精华液| 亚洲福利一区| 欧美日韩一区二区三区在线看| 99精品国产视频| 国产日韩中文在线| 成人动漫视频在线观看免费| 性欧美1819sex性高清| 亚洲永久精品国产| 99久久精品国产一区色| 天堂av8在线| 欧美视频在线播放一区| 欧美成人午夜电影| 在线观看你懂的视频| 久久精品国产亚洲一区二区| 久久青草福利网站| 中文字幕人妻一区二区三区在线视频| 欧美一级视频免费观看| 国产天堂第一区| 99久久久精品免费观看国产蜜| 亚洲深夜激情| 免费日本黄色网址| 尤物免费看在线视频| 99re6这里只有精品视频在线观看| 给我免费播放日韩视频| 亚洲国产精品成人一区二区在线| 国产成人精品免高潮在线观看| 九九热精品视频在线观看| 欧美女人交a| 樱花在线免费观看| 亚洲丝袜精品| 成人亚洲欧美| 色婷婷视频在线| 日韩一级av毛片| www.国产毛片| 精品精品国产高清a毛片牛牛| 欧洲美女精品免费观看视频| 色婷婷综合久色| 国产96在线 | 亚洲| 丰满女人性猛交| 无码一区二区三区视频| 性色av一区二区三区| 国产精品蜜臀av| 亚洲精品成人精品456| 日韩一区二区三区xxxx| 青青草原综合久久大伊人精品| 久久婷婷国产综合尤物精品| 日本三级在线播放完整版| 999这里只有精品| 国产精品一区二区在线看| 99久久自偷自偷国产精品不卡| 麻豆9191精品国产| 天天躁日日躁aaaxxⅹ| 亚洲国产成人av在线| 波多野结衣91| 日韩不卡av在线| 国产亚洲女人久久久久毛片| 欧美精品aaaa| 一级二级在线观看| 奇米四色中文综合久久| 成人18精品视频| 欧美日韩在线观看成人| 亚洲一区二区福利| 午夜激情电影在线播放| 天堂在线免费av| 国产黄在线观看免费观看不卡| 最好2018中文免费视频| a级片国产精品自在拍在线播放| www.黄在线| 欧美日韩中字一区| 日韩欧美精品在线观看| 国产视频第一区| 久久香蕉频线观| 中文字幕在线观看一区| 黄色av片三级三级三级免费看| 91精品国产色综合久久不卡粉嫩| 九色视频成人自拍| 久久久久国产精品麻豆| 亚洲色图校园春色| 欧美三级欧美一级| 一区二区三视频| 中国特黄一级片| 黑人狂躁日本娇小| 丁香花在线影院| 欧美日韩精品免费观看视欧美高清免费大片| 91成人在线精品视频| 激情六月婷婷综合| 91视频在线观看免费| 欧美色国产精品| 国产成人免费视频一区| 久久精品视频9| 强制捆绑调教一区二区| 欧美日韩精品一区| 日韩精品水蜜桃| 成人在线分类| 亚洲国产激情av|