偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

終于把TCP傳輸層協(xié)議搞明白了

網(wǎng)絡(luò)
TCP既管理來(lái)自各上層的數(shù)據(jù)報(bào)流,也管理來(lái)自IP層的數(shù)據(jù)報(bào)流。同時(shí)它還必須兼顧優(yōu)先級(jí)和安全性。

傳輸控制協(xié)議(TCP)

傳輸控制協(xié)議可向IP層及其上各層提供大量服務(wù)。最為重要的是它可向各上層提供面向連接的服務(wù),使各上層啟動(dòng)應(yīng)用程序,以確保網(wǎng)絡(luò)上所發(fā)送的數(shù)據(jù)報(bào)被完整接收。就這種作用而言,TCP的作用是提供可靠通信的有效報(bào)文協(xié)議。一旦數(shù)據(jù)報(bào)被破壞或丟失,通常是TCP(不是高層中的應(yīng)用程序)將其重新傳輸。

TCP既管理來(lái)自各上層的數(shù)據(jù)報(bào)流,也管理來(lái)自IP層的數(shù)據(jù)報(bào)流。同時(shí)它還必須兼顧優(yōu)先級(jí)和安全性。TCP必須能夠處理它上面的應(yīng)用程序的終端,該終端正等待著進(jìn)入的數(shù)據(jù)報(bào)以及各低層中的故障。TCP還必須維護(hù)TCP層內(nèi)外所有數(shù)據(jù)流的狀態(tài)表。獨(dú)立層內(nèi)的這些服務(wù)的隔離能夠啟動(dòng)要設(shè)計(jì)的應(yīng)用程序,而不必考慮控制或報(bào)文的可靠性。如果沒(méi)有TCP層,每個(gè)應(yīng)用程序都必須處理這些服務(wù)本身,這是一種資源浪費(fèi)。

TCP駐留在傳輸層,位于IP之上,但在各上層及其應(yīng)用程序之下,如圖7-1所示。TCP只駐留在實(shí)際處理數(shù)據(jù)報(bào)的設(shè)備中,以確保數(shù)據(jù)報(bào)從源計(jì)算機(jī)傳輸?shù)侥繕?biāo)計(jì)算機(jī)。它不駐留在僅路由數(shù)據(jù)報(bào)的設(shè)備上,所以網(wǎng)關(guān)中沒(méi)有TCP層。這是很有意義的,因?yàn)樵诰W(wǎng)關(guān)上,數(shù)據(jù)報(bào)在分層模式中不必比IP層傳輸?shù)阶罡邔印?/p>

因?yàn)門CP是面向連接的協(xié)議,它負(fù)責(zé)保證數(shù)據(jù)從源計(jì)算機(jī)到目標(biāo)計(jì)算機(jī)的傳輸(即終端對(duì)終端通信),因此,TCP必須從信宿計(jì)算機(jī)接收通信信息,以確認(rèn)數(shù)據(jù)報(bào)的接收。虛擬電路這一術(shù)語(yǔ)通常用于指示在這兩個(gè)終端計(jì)算機(jī)之間傳輸?shù)男盘?hào)握手,它們大多數(shù)是簡(jiǎn)單的確認(rèn)報(bào)文(接收確認(rèn)或故障代碼)和數(shù)據(jù)報(bào)序號(hào)。

圖:TCP提供終端對(duì)終端的通信

為了描述TCP的作用,有必要跟蹤兩臺(tái)計(jì)算機(jī)之間的一個(gè)樣本報(bào)文。報(bào)文由應(yīng)用程序生成,它從體系結(jié)構(gòu)的下一個(gè)高層通過(guò)某些協(xié)議(通常指上層協(xié)議或ULP,以指明它駐留在TCP之上)傳輸?shù)絋CP。報(bào)文按流傳輸,流是非同步發(fā)送的單個(gè)字符序列。這與大多數(shù)協(xié)議是有區(qū)別的,大多數(shù)協(xié)議通常都使用固定的數(shù)據(jù)塊。程序只處理常規(guī)構(gòu)造的數(shù)據(jù)塊或固定尺寸的報(bào)文,所以這里涉及到某些轉(zhuǎn)換問(wèn)題。

TCP接收字節(jié)流并將它們集中到TCP數(shù)據(jù)段或包。在組合數(shù)據(jù)段的過(guò)程中,要加上頭標(biāo)信息。每個(gè)數(shù)據(jù)段都有已計(jì)算的校驗(yàn)和,并嵌入在頭標(biāo)中,如果整個(gè)報(bào)文中包括不止一個(gè)數(shù)據(jù)段,則它還有序號(hào)。該數(shù)據(jù)段的長(zhǎng)度通常由TCP或系統(tǒng)管理員設(shè)置的系統(tǒng)值來(lái)決定。

如果要求雙向通信(如與Telnet或FTP通信),并且為了路由在將數(shù)據(jù)段傳輸?shù)絀P之前,則需在發(fā)送和接收計(jì)算機(jī)之間建立連接(虛擬電路)。首先發(fā)送TCP的軟件向接收計(jì)算機(jī)提出建立TCP連接的請(qǐng)求,請(qǐng)求報(bào)文中有個(gè)唯一數(shù)(稱為插口號(hào)),用以標(biāo)識(shí)發(fā)送計(jì)算機(jī)的連接。接收TCP的軟件指定它自己的唯一插口號(hào),并將它發(fā)回到源計(jì)算機(jī)。在虛擬電路終止之前,這兩個(gè)唯一數(shù)定義兩臺(tái)計(jì)算機(jī)之間的連接。

虛擬電路建立之后,TCP將數(shù)據(jù)段發(fā)送到IP軟件,IP軟件將其作為數(shù)據(jù)報(bào)通過(guò)網(wǎng)絡(luò)發(fā)送該報(bào)文。經(jīng)過(guò)網(wǎng)絡(luò)上的復(fù)雜過(guò)程之后,接收計(jì)算機(jī)的IP將接收到的數(shù)據(jù)段傳輸?shù)浇邮沼?jì)算機(jī)的TCP層,在此處理該數(shù)據(jù)段,并使用上層協(xié)議將其傳輸?shù)剿厦娴膽?yīng)用程序。

如果報(bào)文包括多個(gè)數(shù)據(jù)段,接收TCP軟件根據(jù)每個(gè)數(shù)據(jù)段頭標(biāo)中包含的序號(hào)將報(bào)文分解。如果數(shù)據(jù)丟失或損壞(可通過(guò)校驗(yàn)和確定),TCP將文件中帶有錯(cuò)誤序號(hào)的報(bào)文返回,然后,源發(fā)送TCP軟件重新發(fā)送這個(gè)錯(cuò)誤數(shù)據(jù)段。

如果整個(gè)報(bào)文只有一個(gè)數(shù)據(jù)段,在與該段的校驗(yàn)和重新計(jì)算的值比較之后,接收TCP軟件產(chǎn)生肯定確認(rèn)(ACK)或請(qǐng)求重新發(fā)送該數(shù)據(jù)段,并將其發(fā)回到發(fā)送層。

接收計(jì)算機(jī)TCP的實(shí)施可以執(zhí)行簡(jiǎn)單的流控制,以防止緩沖器過(guò)載。它通過(guò)向發(fā)送計(jì)算機(jī)發(fā)送一個(gè)窗口值來(lái)實(shí)現(xiàn)這種控制,然后,發(fā)送計(jì)算機(jī)發(fā)送合適的字節(jié)填充該窗口。這樣可在兩臺(tái)計(jì)算機(jī)之間提供一個(gè)信息交換的協(xié)議,盡管這樣確實(shí)會(huì)降低傳輸速度并使網(wǎng)絡(luò)信息量稍有增加。

與大多數(shù)基于連接的協(xié)議一樣,定時(shí)器是TCP的一個(gè)很重要的方面。定時(shí)器的使用可確保在等待ACK或重復(fù)ACK報(bào)文,避免不必要的時(shí)間耽擱。如果定時(shí)器到時(shí),定時(shí)處理程序通常會(huì)造成從源計(jì)算機(jī)重發(fā)數(shù)據(jù)報(bào)。

使用TCP時(shí),定時(shí)器也會(huì)導(dǎo)致一些麻煩。TCP規(guī)范只提供確認(rèn)正確接收的最大數(shù)據(jù)報(bào)號(hào),但這樣不能正確處理零散的接收。如果報(bào)文由多個(gè)順序混亂的數(shù)據(jù)報(bào)組成,該規(guī)范說(shuō)明在接收到所有數(shù)據(jù)報(bào)之前,TCP無(wú)法確認(rèn)報(bào)文是否被接收。所以,即使該序列中部的一個(gè)數(shù)據(jù)報(bào)幾乎接收成功,定時(shí)處理程序也可能執(zhí)行,并使所有數(shù)據(jù)報(bào)必須重新發(fā)送。對(duì)于大型報(bào)文,這樣可能造成網(wǎng)絡(luò)通信量激增。

如果接收TCP軟件接收到重復(fù)的數(shù)據(jù)報(bào)(定時(shí)期滿后重新傳輸),TCP的接收方案將放棄任何重復(fù)數(shù)據(jù)報(bào),不發(fā)送重復(fù)ACK報(bào)文,發(fā)送系統(tǒng)只關(guān)心報(bào)文是否被接收,并不關(guān)心對(duì)方收到多少份。

TCP沒(méi)有否定確認(rèn)(NAK)功能,它根據(jù)定時(shí)程序來(lái)指明沒(méi)有確認(rèn)。如果定時(shí)程序在發(fā)送數(shù)據(jù)報(bào)后未接收確認(rèn)便執(zhí)行,則認(rèn)為該數(shù)據(jù)報(bào)已經(jīng)丟失,并重新傳輸。發(fā)送TCP軟件在正確確認(rèn)之前,在緩沖器中保存多份所有未確認(rèn)的數(shù)據(jù)報(bào)。當(dāng)確認(rèn)證實(shí)后,重發(fā)定時(shí)程序中止運(yùn)行,從緩沖器中刪除該數(shù)據(jù)報(bào)。

TCP支持來(lái)自上層協(xié)議的進(jìn)棧功能。應(yīng)用程序希望立即發(fā)送數(shù)據(jù),并且證實(shí)傳輸?shù)絋CP的報(bào)文已被傳輸成功,這時(shí)可以使用進(jìn)棧功能,為此,在ULP連接中設(shè)置一個(gè)進(jìn)棧標(biāo)志,通知TCP盡快將應(yīng)用程序中的緩存信息發(fā)送到信宿(相反,在準(zhǔn)備發(fā)送之前一直保存在緩沖器中)。

 

責(zé)任編輯:趙寧寧 來(lái)源: 廈門微思網(wǎng)絡(luò)
相關(guān)推薦

2022-02-15 08:30:04

TCP三次握手四次揮手

2021-06-13 12:03:46

SaaS軟件即服務(wù)

2021-10-09 00:02:04

DevOps敏捷開(kāi)發(fā)

2022-03-27 20:32:28

Knative容器事件模型

2021-10-17 20:38:30

微服務(wù)內(nèi)存組件

2021-03-25 11:24:25

爬蟲(chóng)技術(shù)開(kāi)發(fā)

2020-11-03 07:04:39

云計(jì)算公有云私有云

2022-04-27 18:25:02

數(shù)據(jù)采集維度

2021-10-12 18:31:40

流量運(yùn)營(yíng)前端

2021-12-03 18:25:56

數(shù)據(jù)指標(biāo)本質(zhì)

2021-03-03 21:31:24

量化投資利潤(rùn)

2022-01-05 18:27:44

數(shù)據(jù)挖掘工具

2021-06-29 11:21:41

數(shù)據(jù)安全網(wǎng)絡(luò)安全黑客

2020-11-30 08:34:44

大數(shù)據(jù)數(shù)據(jù)分析技術(shù)

2022-04-22 11:26:55

數(shù)據(jù)管理架構(gòu)

2021-02-14 00:21:37

區(qū)塊鏈數(shù)字貨幣金融

2022-04-12 18:29:41

元數(shù)據(jù)系統(tǒng)架構(gòu)

2022-07-31 20:29:28

日志系統(tǒng)測(cè)

2010-06-09 13:21:30

TCP傳輸層協(xié)議

2021-01-26 10:17:48

智能語(yǔ)音大數(shù)據(jù)機(jī)器學(xué)習(xí)
點(diǎn)贊
收藏

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