TCP與UDP是兩個(gè)最常用的通訊協(xié)議。
TCP是面向連接的協(xié)議,需要在收發(fā)數(shù)據(jù)前與對(duì)方建立可靠的連接,建立連接的過程為3次握手,斷開連接的過程為4次揮手,確保數(shù)據(jù)傳輸?shù)目煽啃浴?/span>
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客戶端(TCPC)和TCP服務(wù)端(TCPS)。
TCP服務(wù)端
TCP服務(wù)端指的是設(shè)備建立TCP服務(wù)器,允許其他設(shè)備通過訪問設(shè)備的IP和端口進(jìn)行通訊。在設(shè)置設(shè)備為TCP服務(wù)端時(shí),需要配置服務(wù)器的IP地址和通訊端口。其他客戶端設(shè)備可以對(duì)服務(wù)器進(jìn)行訪問,并且支持多臺(tái)設(shè)備進(jìn)行連接。
TCP客戶端
TCP客戶端是指設(shè)備作為一個(gè)客戶端去訪問服務(wù)器。設(shè)備工作在客戶端模式時(shí),需要設(shè)置客戶端訪問的服務(wù)器IP和端口。在網(wǎng)絡(luò)連接正常的情況下,設(shè)備可以與服務(wù)器建立連接。
在使用UDP通訊時(shí),不需要區(qū)分客戶端和服務(wù)端,但在通訊過程中,我們可以將發(fā)送端定義為服務(wù)端,接收端定義為客戶端。因此,在配置UDP通訊時(shí),我們只需要開啟本機(jī)端口即可。在發(fā)送數(shù)據(jù)時(shí),需要設(shè)置接收的IP地址和端口。UDP模式下,任意一端都可以發(fā)送數(shù)據(jù),只需要在發(fā)送端添加目標(biāo)IP和端口即可。
接下來,我們使用兩個(gè)NE2-T1M超級(jí)網(wǎng)口以太網(wǎng)模組實(shí)際設(shè)備模擬兩種協(xié)議在實(shí)際使用中的配置。我們使用兩個(gè)網(wǎng)絡(luò)調(diào)試助手來進(jìn)行演示。
首先,打開兩個(gè)網(wǎng)絡(luò)調(diào)試助手,為了兩個(gè)能正常進(jìn)行連接,需要將一個(gè)設(shè)置為TCP客戶端。
我們先設(shè)置TCP服務(wù)器,打開軟件后將協(xié)議類型選擇為TCP Server,此時(shí)界面將會(huì)有本地主機(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進(jìn)行通訊模擬。跟TCP類似,通信時(shí)需要先找到目標(biāo)的IP地址與端口號(hào)。
先打開網(wǎng)絡(luò)調(diào)試助手軟件,選擇協(xié)議類型為UDP,本地主機(jī)地址為電腦IP地址,本地主機(jī)端口設(shè)置為1234。同樣方法設(shè)置通信另一端,注意如IP相同則同一局域網(wǎng)設(shè)備端口不能一致。
再下方遠(yuǎn)程主機(jī)中輸入需要通信的對(duì)方的IP:端口,即可發(fā)送數(shù)據(jù)。
如通信雙方為設(shè)備,如同理配置即可。
NE2-T1M產(chǎn)品鏈接:http://twohalves.cn/product/2173.html
NE2-T1M超級(jí)網(wǎng)口模塊是實(shí)現(xiàn)串口數(shù)據(jù)與以太網(wǎng)數(shù)據(jù)互相傳輸?shù)拇谵D(zhuǎn)以太網(wǎng)模塊。該串口轉(zhuǎn)以太網(wǎng)模塊自帶RJ45接口,全包網(wǎng)口封裝,同時(shí)支持TCP、UDP協(xié)議。該超級(jí)網(wǎng)口模塊可滿足各類TTL電平串口設(shè)備、MCU的聯(lián)網(wǎng)功能。
今天的分享就到這里啦,EBYTE每一天都致力于更好的助力物聯(lián)化、智能化、自動(dòng)化的發(fā)展,提升資源利用率,更多以太網(wǎng)模組產(chǎn)品更多資料,感興趣的小伙伴可以登錄我們的億佰特官網(wǎng)和企業(yè)公眾號(hào)(微信號(hào):cdebyte)進(jìn)行了解,也可以直接撥打400電話咨詢技術(shù)專員!
相關(guān)閱讀:
1、什么是TCP/UDP協(xié)議?TCP和UDP有什么區(qū)別?
2、基于UDP設(shè)計(jì)和傳統(tǒng)TCP設(shè)計(jì)的可靠傳輸協(xié)議優(yōu)缺點(diǎn)詳解
7 X 24 銷售服務(wù)熱線
4000-330-990深圳辦事處柯經(jīng)理:18218726658 南京辦事處葛經(jīng)理:17626012283
無錫辦事處劉經(jīng)理:13558641933
成都總部銷售經(jīng)理:
秦 科(無線模塊):18884314654 馮子恒(無線模塊):18828049434
蔡友銀(無線模塊):13882211021 葛宇龍(通信設(shè)備):19138800613
胡兵(外貿(mào)銷售經(jīng)理):18584911141、 sales06@ebyte.com
業(yè)務(wù)郵箱:support@cdebyte.com 全國銷售投訴電話:19934352316
地址:四川省成都市高新西區(qū)西區(qū)大道199號(hào)B5棟(前臺(tái)座機(jī):028-61543675)
?? 成都億佰特電子科技有限公司【版權(quán)所有】 蜀ICP備13019384號(hào)