TCP與UDP是兩個(gè)最常用的通訊協(xié)議。
TCP是面向連接的協(xié)議,需要在收發(fā)數(shù)據(jù)前與對方建立可靠的連接,建立連接的過程為3次握手,斷開連接的過程為4次揮手,確保數(shù)據(jù)傳輸?shù)目煽啃浴?/p>
UDP是一種面向無連接的協(xié)議,它在數(shù)據(jù)傳輸之前不需要建立連接。發(fā)送端可以直接將數(shù)據(jù)報(bào)文(數(shù)據(jù)段)扔到網(wǎng)絡(luò)上,而接收端則從網(wǎng)絡(luò)中接收數(shù)據(jù),并從消息隊(duì)列中讀取數(shù)據(jù)段。UDP不提供可靠性和順序保證,因此在某些應(yīng)用場景下,如實(shí)時(shí)音視頻傳輸或簡單查詢等,UDP更為適用。
大多數(shù)需要通過網(wǎng)絡(luò)通訊的設(shè)備都支持TCP和UDP兩種協(xié)議。本教程將詳細(xì)講解這兩個(gè)協(xié)議在調(diào)試過程中的使用方法以及區(qū)別。
「TCP」
首先,我們先了解TCP的兩種模式,分別是TCP客戶端(TCPC)和TCP服務(wù)端(TCPS)。
「TCP服務(wù)端」
TCP服務(wù)端指的是設(shè)備建立TCP服務(wù)器,允許其他設(shè)備通過訪問設(shè)備的IP和端口進(jìn)行通訊。在設(shè)置設(shè)備為TCP服務(wù)端時(shí),需要配置服務(wù)器的IP地址和通訊端口。其他客戶端設(shè)備可以對服務(wù)器進(jìn)行訪問,并且支持多臺設(shè)備進(jìn)行連接。
「TCP客戶端」
TCP客戶端是指設(shè)備作為一個(gè)客戶端去訪問服務(wù)器。設(shè)備工作在客戶端模式時(shí),需要設(shè)置客戶端訪問的服務(wù)器IP和端口。在網(wǎng)絡(luò)連接正常的情況下,設(shè)備可以與服務(wù)器建立連接。
「UDP」
在使用UDP通訊時(shí),不需要區(qū)分客戶端和服務(wù)端,但在通訊過程中,我們可以將發(fā)送端定義為服務(wù)端,接收端定義為客戶端。因此,在配置UDP通訊時(shí),我們只需要開啟本機(jī)端口即可。在發(fā)送數(shù)據(jù)時(shí),需要設(shè)置接收的IP地址和端口。UDP模式下,任意一端都可以發(fā)送數(shù)據(jù),只需要在發(fā)送端添加目標(biāo)IP和端口即可。
「模擬通訊」
接下來,我們使用兩個(gè)實(shí)際設(shè)備模擬兩種協(xié)議在實(shí)際使用中的配置。我們使用兩個(gè)網(wǎng)絡(luò)調(diào)試助手來進(jìn)行演示。
「TCP模擬通訊」
首先,打開兩個(gè)網(wǎng)絡(luò)調(diào)試助手,為了二者能正常進(jìn)行連接,需要將一方設(shè)置為TCP客戶端。
我們先設(shè)置TCP服務(wù)器,打開軟件后將協(xié)議類型選擇為TCP Server,此時(shí)界面將會有本地主機(jī)地址和本地主機(jī)端口兩個(gè)選項(xiàng),IP地址可以選擇電腦當(dāng)前IP地址,端口可以指定任意端口,此處以1234為例,點(diǎn)擊打開。
此時(shí),TCP服務(wù)器建立完成,TCP客戶端可以向該服務(wù)器發(fā)起連接,此處我們同樣以網(wǎng)絡(luò)調(diào)試助手來模擬TCP客戶端。向TCP服務(wù)器連接前,需要知道服務(wù)器的IP及端口(及上述服務(wù)器的本地主機(jī)地址與本地主機(jī)端口(192.168.0.100:1234))。
將TCP軟件協(xié)議類型選擇TCP Client,遠(yuǎn)程主機(jī)地址為服務(wù)器的本地主機(jī)地址,遠(yuǎn)程主機(jī)端口設(shè)置為服務(wù)器的本地主機(jī)端口,點(diǎn)擊連接。
此時(shí)連接建立,就可以進(jìn)行通信了,適用設(shè)備連接時(shí)同理進(jìn)行。
「UDP模擬通訊」
接下來,我們使用UDP進(jìn)行通訊模擬。跟TCP類似,通信時(shí)需要先找到目標(biāo)的IP地址與端口號。
先打開網(wǎng)絡(luò)調(diào)試助手軟件,選擇協(xié)議類型為UDP,本地主機(jī)地址為電腦IP地址,本地主機(jī)端口設(shè)置為1234。同樣方法設(shè)置通信另一端,注意如IP相同則同一局域網(wǎng)設(shè)備端口不能一致。
在下方遠(yuǎn)程主機(jī)中輸入需要通信的對方的IP:端口,即可發(fā)送數(shù)據(jù)。
如通信雙方為設(shè)備,同理配置即可。
-
數(shù)據(jù)傳輸
+關(guān)注
關(guān)注
9文章
1891瀏覽量
64601 -
通信
+關(guān)注
關(guān)注
18文章
6032瀏覽量
135992 -
TCP
+關(guān)注
關(guān)注
8文章
1353瀏覽量
79074 -
UDP
+關(guān)注
關(guān)注
0文章
325瀏覽量
33939
發(fā)布評論請先 登錄
相關(guān)推薦
評論