变态重口极致另类在线-波多久久夜色精品国产-波多野结衣在线观看一区-波多野结衣在线观看一区二区-污污的网站免费阅读-污污视频网址

當(dāng)前位置: 首頁IT技術(shù) → nagle算法在網(wǎng)絡(luò)編程的作用

nagle算法在網(wǎng)絡(luò)編程的作用

更多

TCP/IP協(xié)議中,無論發(fā)送多少數(shù)據(jù),總是要在數(shù)據(jù)前面加上協(xié)議頭,同時(shí),對方接收到數(shù)據(jù),也需要發(fā)送ACK表示確認(rèn)。為了盡可能的利用網(wǎng)絡(luò)帶寬,TCP總是希望盡可能的發(fā)送足夠大的數(shù)據(jù)。(一個(gè)連接會設(shè)置MSS參數(shù),因此,TCP/IP希望每次都能夠以MSS尺寸的數(shù)據(jù)塊來發(fā)送數(shù)據(jù))。

Nagle算法就是為了盡可能發(fā)送大塊數(shù)據(jù),避免網(wǎng)絡(luò)中充斥著許多小數(shù)據(jù)塊。

Nagle算法的基本定義是任意時(shí)刻,最多只能有一個(gè)未被確認(rèn)的小段。 所謂“小段”,指的是小于MSS尺寸的數(shù)據(jù)塊,所謂“未被確認(rèn)”,是指一個(gè)數(shù)據(jù)塊發(fā)送出去后,沒有收到對方發(fā)送的ACK確認(rèn)該數(shù)據(jù)已收到。

舉個(gè)例子,比如之前的blog中的實(shí)驗(yàn),一開始client端調(diào)用socket的write操作將一個(gè)int型數(shù)據(jù)(稱為A塊)寫入到網(wǎng)絡(luò)中,由于此時(shí)連接是空閑的(也就是說還沒有未被確認(rèn)的小段),因此這個(gè)int型數(shù)據(jù)會被馬上發(fā)送到server端,接著,client端又調(diào)用write操作寫入‘\r\n’(簡稱B塊),這個(gè)時(shí)候,A塊的ACK沒有返回,所以可以認(rèn)為已經(jīng)存在了一個(gè)未被確認(rèn)的小段,所以B塊沒有立即被發(fā)送,一直等待A塊的ACK收到(大概40ms之后),B塊才被發(fā)送。整個(gè)過程如圖所示:

這里還隱藏了一個(gè)問題,就是A塊數(shù)據(jù)的ACK為什么40ms之后才收到?這是因?yàn)門CP/IP中不僅僅有nagle算法,還有一個(gè)ACK延遲機(jī)制 。當(dāng)Server端收到數(shù)據(jù)之后,它并不會馬上向client端發(fā)送ACK,而是會將ACK的發(fā)送延遲一段時(shí)間(假設(shè)為t),它希望在t時(shí)間內(nèi)server端會向client端發(fā)送應(yīng)答數(shù)據(jù),這樣ACK就能夠和應(yīng)答數(shù)據(jù)一起發(fā)送,就像是應(yīng)答數(shù)據(jù)捎帶著ACK過去。在我之前的時(shí)間中,t大概就是40ms。這就解釋了為什么'\r\n'(B塊)總是在A塊之后40ms才發(fā)出。

如果你覺著nagle算法太搗亂了,那么可以通過設(shè)置TCP_NODELAY將其禁用 。當(dāng)然,更合理的方案還是應(yīng)該使用一次大數(shù)據(jù)的寫操作,而不是多次小數(shù)據(jù)的寫操作。

熱門評論
最新評論
發(fā)表評論 查看所有評論(0)
昵稱:
表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
字?jǐn)?shù): 0/500 (您的評論需要經(jīng)過審核才能顯示)
主站蜘蛛池模板: 欧美日韩在线观看视频 | 日韩亚洲一区中文字幕在线 | 青青草国产一区二区三区 | 日日爽夜夜操 | 欧美色片在线观看 | 国产精品动漫视频网站 | 日本一区二区免费在线观看 | 午夜成a人片在线观看 | 天天拍夜夜添久久精品中文 | 日韩国产午夜一区二区三区 | 久久99精品久久久久久园产越南 | 成年人色视频 | 一级毛片毛片毛片毛毛片 | 国产91成人 | 日韩天堂在线 | 国产伦精品一区二区三区免费 | 国产在线高清不卡免费播放 | 成人在线视频网站 | 成人小视频在线观看 | 欧美日韩中文在线视频 | 成人毛片高清视频观看 | 丝袜综合网 | 1024日本| 91最新免费地址入口 | 一级生活毛片 | 天天狠天天透 | 在线观看精品视频一区二区三区 | 一级片免费在线观看 | 国产成人短视频 | 一本久久道 | 三级国产精品一区二区 | 最近的中文字幕视频完整 | 乱系列h全文阅读小黄文肉 乱色美www女麻豆 | 天天拍拍天天爽免费视频 | 五月激情六月丁香 | 亚洲爱视频 | 永久免费看 | 日韩在线视频线视频免费网站 | 最近中文字幕大全 | 性freexxxxhd欧美在线 | 日韩中文字幕一区二区不卡 |