自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

OSI傳輸層功能及協(xié)議

網(wǎng)絡(luò) 網(wǎng)絡(luò)管理
與TCP的通信機制不同,由于UDP是無連接的協(xié)議,因此通信發(fā)生之前不建立會話。UDP是基于事務(wù)的,換言之,應(yīng)用程序要發(fā)送數(shù)據(jù)時,它僅是發(fā)送數(shù)據(jù)而已。

一、傳輸層的作用

1、 跟蹤各個會話

因為每臺主機上可能有多個進程進行通信,傳輸層需要將各個數(shù)據(jù)段發(fā)送給相應(yīng)的進程。這也可以理解,在傳輸層報頭中加入了源和目的進程號(其實就是端口號)。

2、 分段數(shù)據(jù)并管理每個分段(源)

3、 重組數(shù)據(jù)(目的)

4、 標識應(yīng)用程序

這一條和第一條類似,用端口號標識。

5、 流量控制

6、 錯誤恢復(fù)

7、 開始會話

二、端口號

類型:

公認端口——端口0到1023(210-1)

公認端口用于服務(wù)和應(yīng)用程序。都是一些常用的應(yīng)用程序所采用。

例如:FTP(端口20,21);HTTP(端口80);DNS(端口53)

已注冊端口——端口1024到49151

分配給用戶進程或應(yīng)用程序。這些應(yīng)用程序是用戶選擇安裝的一些應(yīng)用程序,不是已經(jīng)分配了公認端口的常用應(yīng)用程序。

這些端口在沒有被服務(wù)器資源占用時,可由客戶端動態(tài)選用為源端口。

例如:MSN Messenger(端口1812);HTTP備用(端口8008,8080)

動態(tài)或私有端口——端口49152到65535

也稱為臨時端口。這些端口往往在開始連接時被動態(tài)分配給客戶端應(yīng)用程序??蛻舳艘话愫苌偈褂脛討B(tài)或私有端口服務(wù)(只有一些點對點文件共享程序使用)。

三、TCP頭結(jié)構(gòu)

TCP協(xié)議頭最少20個字節(jié),包括以下的區(qū)域:

TCP源端口(SourcePort):16位的源端口其中包含初始化通信的端口。源端口和源IP地址的作用是標示報文的返回地址。

TCP目的端口(Destinationport):這個端口指明報文接收計算機上的應(yīng)用程序地址接口。

TCP序列號(序列碼,SequenceNumber):32位的序列號由接收端計算機使用,重新分段的報文成最初形式。當(dāng)SYN出現(xiàn),序列碼實際上是初始序列碼(ISN),而第一個數(shù)據(jù)字節(jié)是ISN+1.

確認號(Acknowledgment Number):32位的序列號由接收端計算機使用,重組分段的報文成最初形式。如果設(shè)置了ACK控制位,這個值表示一個準備接收的下一個包的序列碼。

注:可以將確認號簡單理解為準備接收地下一個包得序列碼。

數(shù)據(jù)偏移量(HLEN):4位包括TCP頭大小,指示何處數(shù)據(jù)開始。

保留(Reserved):6位值域,這些位必須是0.為了將來定義新的用途所保留。

標志(Code Bits):6位標志域。表示為:緊急標志、有意義的應(yīng)答標志、推、重置連接標志、同步序列號標志、完成發(fā)送數(shù)據(jù)標志。按照順序排列是:URG、ACK、PSH、RST、SYN、FIN.

窗口(Window):16位,用來表示窗口大小。

校驗位(Checksum):16位TCP頭。源機器基于數(shù)據(jù)內(nèi)容計算一個數(shù)值,收信息機要與源機器數(shù)值結(jié)果完全一樣,從而證明數(shù)據(jù)的有效性。

優(yōu)先指針(緊急,Urgent Pointer):16位,指向后面是優(yōu)先數(shù)據(jù)的字節(jié),在URG標志設(shè)置了時才有效。如果URG標志沒有被設(shè)置,緊急域作為填充。加快處理標示為緊急的數(shù)據(jù)段。

選項(Option):長度不定,但長度必須以字節(jié)。如果沒有選項就表示這個一字節(jié)的域等于0.

填充:不定長,填充的內(nèi)容必須為0,它是為了數(shù)學(xué)目的而存在。目的是確??臻g的可預(yù)測性。保證包頭的結(jié)合和數(shù)據(jù)的開始處偏移量能夠被32整除,一般額外的零以保證TCP頭是32位的整數(shù)倍。

[NextPage]

四、TCP三次握手

第一次握手(申請):建立連接時,客戶端發(fā)送SYN包(SYN=j)到服務(wù)器,并進入SYN_SENT狀態(tài),等待服務(wù)器確認;SYN:同步序列編號(Synchronize SequenceNumbers)。

第二次握手(回復(fù)+申請):服務(wù)器收到SYN包,必須確認客戶的SYN(ACK=j+1),同時自己也發(fā)送一個SYN包(SYN=k),即SYN+ACK包,此時服務(wù)器進入SYN_RECV狀態(tài);

第三次握手(回復(fù)):客戶端收到服務(wù)器的SYN+ACK包,向服務(wù)器發(fā)送確認包ACK(ACK=k+1),此包發(fā)送完畢,客戶端和服務(wù)器進入ESTABLISHED狀態(tài),完成三次握手。

五、通信中各種狀態(tài)

LISTENING:監(jiān)聽來自遠方TCP端口的連接請求。

SYN-SENT:在發(fā)送連接請求后等待匹配的連接請求。

SYN-RECE:在收到和發(fā)送一個連接請求后等待對連接請求的確認。

ESTABLISHED:代表一個打開的連接,數(shù)據(jù)可以傳送給用戶。

FIN-WAIT-1:等待遠程TCP的連接中斷請求,或先前的連接中斷請求的確認。

FIN-WAIT-2:從遠程TCP等待連接中斷請求。

CLOSE-WAIT:等待從本地用戶發(fā)來的連接中斷請求。

CLOSING:等待遠程TCP對連接中斷的確認。

LAST-ACK:等待原來發(fā)向遠程TCP的連接中斷請求的確認。

TIME-WAIT:等待足夠的時間以確保遠程TCP接收到連接中斷請求的確認。

CLOSED :沒有任何連接狀態(tài)。

可以用netstat命令查看一下主機現(xiàn)在建立的連接和狀態(tài)。

 

六、TCP會話終止

若要關(guān)閉連接,應(yīng)設(shè)置數(shù)據(jù)報頭重的FIN控制標志,需采用包含F(xiàn)IN數(shù)據(jù)段和ACK數(shù)據(jù)段的二次握手,因此要終止一個TCP支持的整個過程,需要實施4次交換,以終止兩個雙向會話。也可以用三次握手來終止(四次握手中的二、三兩次合并為一次)。

[NextPage]

七、TCP重傳

關(guān)于確認號的一個小細節(jié):如果接收到序列號為1500到3000以及3400到3500的數(shù)據(jù)段,那么確認號應(yīng)當(dāng)為3001.這是因為未接收到3001到3399之間的數(shù)據(jù)段,此時準備接收的下一個數(shù)據(jù)段的序列號為3001.

TCP的標準實施流程是:主機傳輸數(shù)據(jù)段,并將數(shù)據(jù)段的副本列入重新發(fā)送隊列,然后啟動計時器。當(dāng)接收到數(shù)據(jù)確認信息時,主機將從隊列中刪除對應(yīng)數(shù)據(jù)段;如果到及時器超時還沒有收到確認信息,將重新傳輸數(shù)據(jù)段。

現(xiàn)在的主機還有一項備選功能:選擇性確認。如果兩臺主機都支持選擇性確認功能,目的主機便可以確認間斷數(shù)據(jù)段中得數(shù)據(jù),那么源主機就只要傳輸丟失的數(shù)據(jù)。

八、TCP的擁塞控制

主要要清楚的就是動態(tài)窗口大小控制,來使得每個TCP會話有最佳的窗口大小。

九、UDP協(xié)議:低開銷通信

UDP是一種簡單協(xié)議,提供了基本的傳輸層功能。與TCP相比,UDP開銷極低,因為UDP是無連接的,并且不提供復(fù)雜的重新傳輸、排序和流量控制機制。

與TCP的通信機制不同,由于UDP是無連接的協(xié)議,因此通信發(fā)生之前不建立會話。UDP是基于事務(wù)的,換言之,應(yīng)用程序要發(fā)送數(shù)據(jù)時,它僅是發(fā)送數(shù)據(jù)而已。由于不建立會話,因此一旦數(shù)據(jù)和端口號準備就緒,UDP就可以生成數(shù)據(jù)報并遞交給網(wǎng)絡(luò)層,并在網(wǎng)絡(luò)上尋址和發(fā)送。

因為UDP不進行排序,所以數(shù)據(jù)到達的時候只是按先來后到的順序進行排列。如果數(shù)據(jù)的順序?qū)?yīng)用程序很重要,那么應(yīng)用程序只能自己標志數(shù)據(jù)的正確順序,并決定如何處理這些數(shù)據(jù)。

TCP與UDP的關(guān)鍵區(qū)別在于可靠性。

責(zé)任編輯:張存 來源: 紅黑聯(lián)盟
相關(guān)推薦

2010-07-05 11:32:54

HART協(xié)議

2023-10-09 18:28:12

2010-07-06 15:43:04

UDP協(xié)議

2010-07-09 11:37:29

動態(tài)路由選擇協(xié)議

2009-12-29 19:35:56

2011-02-21 11:15:12

2010-06-09 13:21:30

TCP傳輸層協(xié)議

2019-09-30 09:41:04

五層協(xié)議OSITCP

2016-11-29 15:22:47

協(xié)議應(yīng)用層安全層

2010-09-09 16:48:50

七層網(wǎng)絡(luò)協(xié)議

2021-10-11 10:41:14

TCP傳輸層協(xié)議網(wǎng)絡(luò)

2010-01-19 08:59:17

2014-06-17 09:30:14

OSI

2016-10-10 22:48:16

2010-06-30 12:40:47

Linux SNMP

2010-02-01 09:27:00

2011-11-21 09:55:31

2010-06-28 15:41:04

FTP文件傳輸協(xié)議

2016-10-10 23:00:18

2022-10-28 18:36:18

點贊
收藏

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