最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

TCP面向字節(jié)流和報(bào)文段的關(guān)系是什么

2023-08-24 14:08 作者:BYYYSJX  | 我要投稿

問題的關(guān)鍵在于TCP是有緩沖區(qū),作為對比,UDP面向報(bào)文段是沒有緩沖區(qū)的。

?TCP發(fā)送報(bào)文時(shí),是將應(yīng)用層數(shù)據(jù)寫入TCP緩沖區(qū)中,然后由TCP協(xié)議來控制發(fā)送這里面的數(shù)據(jù),而發(fā)送的狀態(tài)是按字節(jié)流的方式發(fā)送的,跟應(yīng)用層寫下來的報(bào)文長度沒有任何關(guān)系,所以說是流。

作為對比的UDP,它沒有緩沖區(qū),應(yīng)用層寫的報(bào)文數(shù)據(jù)會直接加包頭交給網(wǎng)絡(luò)層,由網(wǎng)絡(luò)層負(fù)責(zé)分片,所以是面向報(bào)文段的。

而基于TCP Socket編程,比如客戶端使用HTTP請求服務(wù)器的主頁,服務(wù)器生成了自己的主頁,一共300K byte數(shù)據(jù),包括Header + Payload,為了更清晰說明問題,假設(shè)TCP最多一次只能發(fā)送1K byte的數(shù)據(jù),服務(wù)器端程序首先要將300K數(shù)據(jù)按照順序砍成300塊 (Segment),按照從頭到尾編號,1-300,然后調(diào)用send()函數(shù)300次,嚴(yán)格按照時(shí)間順序,第一次調(diào)用發(fā)編號1,第二次調(diào)用發(fā)編號2,…第三百次調(diào)用發(fā)編號300,這個(gè)不復(fù)雜,只要編寫一個(gè)循環(huán)程序(300次)即可,只要每次調(diào)用的返回值都OK,應(yīng)用程序的任務(wù)就算完成了。

并且:

  1. 每一層都有pdu如應(yīng)用層報(bào)文、tcp報(bào)文段、ip數(shù)據(jù)報(bào)、以太網(wǎng)幀。

  2. tcp字節(jié)流指在發(fā)送方把從應(yīng)用層發(fā)下來的所有報(bào)文組成一個(gè)字節(jié)流(而非報(bào)文流),根據(jù)擁塞控制和流量控制(由os的協(xié)議棧實(shí)現(xiàn))切割出tcp報(bào)文段下交給網(wǎng)絡(luò)層;接收方把從網(wǎng)絡(luò)層收到的所有tcp報(bào)文段組成一個(gè)字節(jié)流(而非數(shù)據(jù)報(bào)流),切割出報(bào)文上交給應(yīng)用層。

  3. 因此會導(dǎo)致發(fā)送方5層交給4層的包和接收方4層交給5層的包的長度不同,即所謂的tcp粘包,接收方的應(yīng)用層必須有能力解決這一信息不對等的問題??偨Y(jié),兩端5層的每個(gè)報(bào)文可能不同,4層的字節(jié)流和3層的ip數(shù)據(jù)報(bào)一定相同。


WRITE-BUG研發(fā)團(tuán)隊(duì)衷心希望【W(wǎng)RITE-BUG數(shù)字空間】可以給每位同學(xué)一個(gè)屬于自己的秘密空間,同時(shí)祝愿大家在“公開圈子”世界里,遇見志同道合的伙伴們,因?yàn)槲覀兣c大家一樣,都曾孤獨(dú)前行著。


TCP面向字節(jié)流和報(bào)文段的關(guān)系是什么的評論 (共 條)

分享到微博請遵守國家法律
平邑县| 吴川市| 汉中市| 建阳市| 石渠县| 迁安市| 定远县| 嘉义县| 临朐县| 巴塘县| 怀集县| 青铜峡市| 于田县| 泰兴市| 新疆| 罗定市| 邹平县| 佛山市| 荆门市| 乌兰县| 锦屏县| 同德县| 晋城| 安龙县| 灵台县| 金塔县| 普兰县| 策勒县| 山东省| 普兰店市| 东方市| 专栏| 唐山市| 靖宇县| 嘉禾县| 日照市| 土默特右旗| 建宁县| 苏尼特右旗| 洞头县| 昔阳县|