成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

每個(gè)開(kāi)發(fā)人員都應(yīng)該掌握的TCP知識(shí)

網(wǎng)絡(luò) 網(wǎng)絡(luò)管理
通過(guò)TCP(例如HTTP)發(fā)送數(shù)據(jù)時(shí),常見(jiàn)的誤解是帶寬與延遲無(wú)關(guān)。 但是,對(duì)于TCP,帶寬是延遲和時(shí)間的函數(shù)。 讓我們看看如何。

為什么需要將服務(wù)器在地理位置上靠近用戶? 原因之一是獲得較低的延遲。 當(dāng)您發(fā)送應(yīng)盡快傳送的短數(shù)據(jù)突發(fā)時(shí),這很有意義。 但是,大文件(例如視頻)呢? 接收第一個(gè)字節(jié)肯定會(huì)帶來(lái)延遲損失,但是在那之后難道不是一帆風(fēng)順嗎?

通過(guò)TCP(例如HTTP)發(fā)送數(shù)據(jù)時(shí),常見(jiàn)的誤解是帶寬與延遲無(wú)關(guān)。 但是,對(duì)于TCP,帶寬是延遲和時(shí)間的函數(shù)。 讓我們看看如何。

[[346048]]

握手

在客戶端可以開(kāi)始向服務(wù)器發(fā)送數(shù)據(jù)之前,它需要為T(mén)CP執(zhí)行一次握手,為T(mén)LS執(zhí)行一次握手。

TCP使用三向握手來(lái)創(chuàng)建新連接。

  • 發(fā)送方選擇一個(gè)隨機(jī)生成的序列號(hào)" x",并將SYN數(shù)據(jù)包發(fā)送給接收方。
  • 接收器遞增" x",選擇一個(gè)隨機(jī)生成的序列號(hào)" y",然后發(fā)回SYN / ACK數(shù)據(jù)包。
  • 發(fā)送方增加序列號(hào),并用ACK數(shù)據(jù)包和應(yīng)用程序數(shù)據(jù)的第一個(gè)字節(jié)進(jìn)行回復(fù)。

TCP使用序列號(hào)來(lái)確保按順序傳送數(shù)據(jù)且沒(méi)有空洞。

握手會(huì)引入完整的往返,這取決于基礎(chǔ)網(wǎng)絡(luò)的延遲。 TLS握手也最多需要兩次往返。 在TLS連接打開(kāi)之前,無(wú)法發(fā)送任何應(yīng)用程序數(shù)據(jù),這意味著在此之前您的帶寬出于所有目的和目的均為零。 往返時(shí)間越短,建立連接的速度就越快。

流量控制

流控制是一種退避機(jī)制,旨在防止發(fā)送方壓倒接收方。

接收器將等待應(yīng)用程序處理的傳入TCP數(shù)據(jù)包存儲(chǔ)到接收緩沖區(qū)中。

每當(dāng)接收方確認(rèn)數(shù)據(jù)包時(shí),接收方還將其大小發(fā)送回發(fā)送方。 如果發(fā)件人遵守協(xié)議,則應(yīng)避免發(fā)送更多可能容納在收件人緩沖區(qū)中的數(shù)據(jù)。

此機(jī)制與應(yīng)用程序級(jí)別的速率限制不太相似。 但是,TCP不是在API密鑰或IP地址上進(jìn)行速率限制,而是在連接級(jí)別上進(jìn)行速率限制。

發(fā)送方和接收方之間的往返時(shí)間(RTT)越短,發(fā)送方將其出站帶寬調(diào)整到接收方容量的速度就越快。

擁塞控制

TCP不僅可以防止接收器不堪重負(fù),還可以防止淹沒(méi)底層網(wǎng)絡(luò)。

發(fā)送者如何找出底層網(wǎng)絡(luò)的可用帶寬是多少? 估計(jì)它的唯一方法是根據(jù)經(jīng)驗(yàn)進(jìn)行測(cè)量。

這個(gè)想法是發(fā)送者維護(hù)一個(gè)所謂的"擁塞窗口"。 該窗口表示無(wú)需等待對(duì)方的確認(rèn)就可以發(fā)送的未完成數(shù)據(jù)包的總數(shù)。 接收器窗口的大小限制了擁塞窗口的最大大小。 擁塞窗口越小,在任何給定時(shí)間可以傳輸?shù)淖止?jié)越少,并且占用的帶寬越少。

建立新連接后,擁塞窗口的大小將設(shè)置為系統(tǒng)默認(rèn)值。 然后,對(duì)于每個(gè)確認(rèn)的數(shù)據(jù)包,該窗口的大小都會(huì)成倍增加。 這意味著建立連接后,我們無(wú)法立即使用網(wǎng)絡(luò)的全部容量。 同樣,往返時(shí)間越短,發(fā)件人就可以越快地開(kāi)始利用基礎(chǔ)網(wǎng)絡(luò)的帶寬。

如果丟包怎么辦? 當(dāng)發(fā)件人通過(guò)超時(shí)檢測(cè)到錯(cuò)過(guò)的確認(rèn)時(shí),就會(huì)啟動(dòng)一種稱(chēng)為"避免擁塞"的機(jī)制,從而減小擁塞窗口的大小。 從那時(shí)起,時(shí)間將窗口大小增加了一定數(shù)量,而超時(shí)又將窗口大小減少了一些。

如前所述,擁塞窗口的大小定義了無(wú)需等待確認(rèn)即可發(fā)送的最大位數(shù)。 發(fā)件人需要等待完整的往返行程才能獲得確認(rèn)。 因此,通過(guò)將擁塞窗口的大小除以往返時(shí)間,可以得到最大的理論帶寬:

這個(gè)簡(jiǎn)單的方程式表明帶寬是等待時(shí)間的函數(shù)。 TCP會(huì)盡力優(yōu)化窗口大小,因?yàn)樗鼰o(wú)法解決往返時(shí)間。 但是,這并不總是能產(chǎn)生最佳配置。

總之,擁塞控制是一種自適應(yīng)機(jī)制,用于推斷網(wǎng)絡(luò)的基礎(chǔ)帶寬和擁塞。 類(lèi)似的模式也可以應(yīng)用于應(yīng)用程序級(jí)別。 想一想當(dāng)您在Netflix上觀看電影時(shí)會(huì)發(fā)生什么。 開(kāi)始模糊; 然后,它會(huì)穩(wěn)定到合理的水平,直到出現(xiàn)打ic為止,然后質(zhì)量再次變差。 應(yīng)用于視頻流的這種機(jī)制稱(chēng)為自適應(yīng)比特率流。

記住這一點(diǎn)

如果您使用的是HTTP,那么您將受基礎(chǔ)協(xié)議的約束。 如果您不知道香腸的制作方法,就無(wú)法獲得最佳性能。

突發(fā)請(qǐng)求受到冷啟動(dòng)懲罰。 可能需要多次往返,才能發(fā)送帶有TCP和TLS握手的第一個(gè)字節(jié)。 而且由于擁塞控制的工作方式,往返時(shí)間越短,底層網(wǎng)絡(luò)的帶寬利用就越好。

關(guān)于此主題的所有書(shū)籍都已經(jīng)寫(xiě)好了,您可以做很多事情來(lái)壓縮每一盎司的帶寬。 但是,如果您必須記住關(guān)于TCP的一件事,那就這樣:

您發(fā)送數(shù)據(jù)的速度不能超過(guò)光速,但是您可以做的是使服務(wù)器離客戶端更近,并重新使用連接以避免冷啟動(dòng)的代價(jià)。

 

責(zé)任編輯:趙寧寧 來(lái)源: 今日頭條
相關(guān)推薦

2013-01-28 10:25:46

開(kāi)發(fā)人員設(shè)計(jì)技巧

2024-01-24 08:00:00

2023-03-08 15:13:32

Git工具開(kāi)發(fā)

2023-07-11 16:45:32

VS Code開(kāi)發(fā)技巧

2024-06-04 14:31:16

2022-09-08 08:07:21

編程語(yǔ)言程序員

2024-06-03 10:35:41

2024-10-21 13:15:03

2024-05-28 11:38:32

2020-09-22 12:19:25

JavaGithub倉(cāng)庫(kù)

2021-02-05 12:58:18

開(kāi)發(fā)人員CICD

2022-09-07 07:06:11

編程語(yǔ)言開(kāi)發(fā)人員

2020-01-27 16:28:57

開(kāi)發(fā)命令遠(yuǎn)程服務(wù)器

2022-10-13 15:19:33

JavaScript開(kāi)發(fā)編程語(yǔ)言

2023-02-08 08:32:58

2022-04-27 08:01:44

JavaThreadRunnable

2016-02-02 09:43:26

開(kāi)發(fā)人員架構(gòu)師

2022-08-28 16:10:37

軟件開(kāi)發(fā)AI工具

2022-02-21 00:11:24

Java工具開(kāi)發(fā)

2019-11-25 14:09:34

控制臺(tái)命令開(kāi)發(fā)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 91综合网| 午夜黄色影院 | 久久国产精品一区二区 | 欧美日韩最新 | 暖暖成人免费视频 | 久久91 | 2018中文字幕第一页 | 成人不卡| 久久久久国产 | 色综合久 | 国产精品99视频 | 国产日韩一区二区三区 | 国产高清视频在线播放 | 精品免费 | 天堂中文在线观看 | 91精品国产91久久久久久最新 | 国产一级一级毛片 | 欧美a区 | 国产一区二区欧美 | 在线观看av免费 | 男人天堂国产 | 久久久精品视频免费看 | 一级网站 | 久久新| 久久国产高清视频 | 国产高清在线精品一区二区三区 | 国产精品一区二区久久精品爱微奶 | 九九在线视频 | 中文久久 | 成人免费精品 | 黄色在线免费网站 | 国产一级视频在线观看 | 久久久精品网站 | 日韩视频免费在线 | 天天操天天天干 | 日韩欧美在线视频 | 天天久久 | 日韩在线一区视频 | 国产日韩欧美中文字幕 | 四虎在线视频 | 久久久久久久久国产成人免费 |