選擇串口服務(wù)器的TCP/IP工作模式
- 2019-07-03 14:40:00
- 諾塔斯智能科技 原創(chuàng)
- 3840
TCP/IP是網(wǎng)際互聯(lián)的基本協(xié)議,TCP/IP實(shí)際涉及網(wǎng)絡(luò)協(xié)議的兩層:網(wǎng)絡(luò)層和傳輸層。IP屬于網(wǎng)絡(luò)層,而TCP屬于傳輸層,實(shí)際上TCP/IP協(xié)議還有另外部分協(xié)議即UDP協(xié)議,UDP協(xié)議和TCP協(xié)議共同組成了TCP/IP協(xié)議的傳輸層。而TCP協(xié)議有具有客戶端和服務(wù)端兩種工作模式。在RS232/RS485聯(lián)網(wǎng)模塊應(yīng)用中,主要在UDP、TCP客戶端、TCP服務(wù)器3種模式之間進(jìn)行選擇。
串口轉(zhuǎn)以太網(wǎng),并不是簡單物理層和數(shù)據(jù)鏈路層的轉(zhuǎn)化。由于串口協(xié)議本身不具有網(wǎng)絡(luò)層和傳輸層,串口轉(zhuǎn)以太網(wǎng),實(shí)際是將串口的數(shù)據(jù)作為TCP/IP的應(yīng)用層數(shù)據(jù),用TCP/IP封裝傳輸?shù)姆绞?。TCP/IP的應(yīng)用層數(shù)據(jù)是TCP/IP所要傳送的真正有效的數(shù)據(jù)。例如用戶通過socket的recv()和send()函數(shù)接收和發(fā)送的實(shí)際是應(yīng)用層數(shù)據(jù)。這樣通過串口轉(zhuǎn)TCP/IP用戶就可以用recv()和send()函數(shù)收發(fā)串口數(shù)據(jù)了。
但是TCP/IP并不只是recv()和send()這么簡單,根據(jù)工作模式的不同,它關(guān)系到連接、關(guān)閉、監(jiān)聽等,這是串口轉(zhuǎn)網(wǎng)口后需要增加處理的部分。TCP/IP的工作模式可以分為:TCP服務(wù)端模式(TCP Server)、TCP客戶端模式(TCP Client)、UDP模式。
UDP模式:UDP模式是基于非連接的模式,只要有數(shù)據(jù)發(fā)送即可發(fā)送,不需要事先連接。所以這種模式更加地接近于串口的通信方式。但是UDP協(xié)議無法保證數(shù)據(jù)不丟失,容易產(chǎn)生誤碼。
TCP模式:TCP模式采用數(shù)據(jù)可靠傳輸機(jī)制,所以可以保證數(shù)據(jù)基本不誤碼、不丟失。在TCP通信中,必然是由通信的兩端構(gòu)成,其中一方是TCP客戶端,一方是TCP服務(wù)端。TCP客戶端向TCP服務(wù)器端發(fā)起請求,TCP服務(wù)器端收到請求后要對其進(jìn)行回復(fù)。
如何選擇TCP/IP的工作模式?
TCP與UDP的選擇:盡量選擇TCP模式,特別是經(jīng)過internet的大數(shù)據(jù)量傳輸,udp容易誤碼和丟失。 選擇TCP客戶端還是TCP服務(wù)器端,請遵循以下原則:
原則一:發(fā)起數(shù)據(jù)發(fā)送的一方應(yīng)該選擇為客戶端。例如一個數(shù)據(jù)采集系統(tǒng),采集終端應(yīng)該為客戶端。這是因為當(dāng)TCP連接斷開的情況下,客戶端能夠在需要發(fā)送數(shù)據(jù)的時候主動建立連接。而TCP服務(wù)端,只能夠被動地接受連接,使得數(shù)據(jù)無法發(fā)送出去。
原則二:IP或者域名固定的一方為服務(wù)器端。例如在有多個數(shù)據(jù)采集終端,而只有一個中心服務(wù)器的情況下,中心服務(wù)器應(yīng)該為服務(wù)端。這是因為,中心服務(wù)器的IP或域名一般是固定的,而采集終端的IP是不斷增加和變化的。中心服務(wù)器難以記住所有的采集終端的IP,所以也難以發(fā)起連接;而采集終端尋找中央服務(wù)器就比較容易。
聯(lián)系人: | 張經(jīng)理 |
---|---|
電話: | 400-023-6659 |
傳真: | 023-68798110 |
Email: | 843718693@qq.com |
QQ: | 843718693 |
微信: | Lotus-Smart |
微博: | lotusreader |
旺旺: | 諾塔斯智能科技有限公司 |
地址: | 重慶市江北區(qū)宏帆路36號宏帆天地1棟6樓 |