一、TCP工作原理
TCP建立連接的過程
TCP是一種可靠的,面向連接的全雙工傳輸層協(xié)議。 TCP連接的建立是一個(gè)三次握手的過程。
1、主機(jī)A(通常也稱為客戶端)發(fā)送一個(gè)標(biāo)識(shí)了SYN的數(shù)據(jù)段,表示期望與服務(wù)器A建立連接, 此數(shù)據(jù)段的序列號(hào)(seq)為a。
2、服務(wù)器A回復(fù)標(biāo)識(shí)了SYN+ ACK的數(shù)據(jù)段,此數(shù)據(jù)段的序列號(hào)(seq)為b,確認(rèn)序列號(hào)為主機(jī)A的序列號(hào)加1(a+1),以此作為對(duì)主機(jī)A的SYN報(bào)文的確認(rèn)。
3、主機(jī)A發(fā)送一個(gè)標(biāo)識(shí)了ACK的數(shù)據(jù)段,此數(shù)據(jù)段的序列號(hào)(seq)為a+1,確認(rèn)序列號(hào)為服務(wù)器A的序列號(hào)加1(b+1),以此作為對(duì)服務(wù)器A的SYN報(bào)文的確認(rèn)。
TCP傳輸過程
TCP的可靠傳輸還體現(xiàn)在TCP使用了確認(rèn)技術(shù)來確保目的設(shè)備收到了從源設(shè)備發(fā)來的數(shù)據(jù)并且是準(zhǔn)確無誤的。
確認(rèn)技術(shù)的工作原理如下:
目的設(shè)備接收到源設(shè)備發(fā)送的數(shù)據(jù)段時(shí),會(huì)向源端發(fā)送確認(rèn)報(bào)文,源設(shè)備收到確認(rèn)報(bào)文后繼續(xù)發(fā)送數(shù)據(jù)段,如此重復(fù)。
TCP流量控制
滑動(dòng)窗口機(jī)制運(yùn)用TCP報(bào)文段中的窗口大小字段來控制,發(fā)送方的發(fā)送窗口不可以大于接收方發(fā)回的窗口大小。
考慮一種特殊的情況,就是接收方若沒有緩存足夠使用,就會(huì)發(fā)送零窗口大小的報(bào)文,此時(shí)發(fā)送放將發(fā)送窗口設(shè)置為0,停止發(fā)送數(shù)據(jù)。
TCP關(guān)閉連接
主機(jī)在關(guān)閉連接之前,要確認(rèn)收到來自對(duì)方的ACK。
TCP支持全雙工模式傳輸數(shù)據(jù),這意味著同一時(shí)刻兩個(gè)方向都可以進(jìn)行數(shù)據(jù)的傳輸。在傳輸數(shù)據(jù)之前,TCP通過三次握手建立的實(shí)際上是兩個(gè)方向的連接,因此在傳輸完畢后,兩個(gè)方向的連接必須都關(guān)閉。TCP連接的建立是一個(gè)三次握手的過程,而TCP連接的終止則要經(jīng)過四次握手。
二、UDP工作原理
UDP傳輸過程
使用UDP傳輸數(shù)據(jù)時(shí),由應(yīng)用程序根據(jù)需要提供報(bào)文到達(dá)確認(rèn)、排序、流量控制等功能。
通常情況下,UDP采用實(shí)時(shí)傳輸機(jī)制和時(shí)間戳來傳輸語音和視頻數(shù)據(jù)。
UDP不提供重傳機(jī)制,占用資源小,處理效率高。
-
服務(wù)器
+關(guān)注
關(guān)注
12文章
9160瀏覽量
85415 -
TCP
+關(guān)注
關(guān)注
8文章
1353瀏覽量
79070 -
UDP
+關(guān)注
關(guān)注
0文章
325瀏覽量
33937
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論