tcp:是面向連線的,三次握手成功之後才能通訊,位元組流傳輸,效率低於udp,但是安全性高(因為採用了三次握手和四次揮手協議)。雙方需要建立連線才能通訊(傳送資料)。底層使用tcp協議,tcp底層是用http協議。
tcp三次握手四次揮手示意圖:
tcp通訊實現:
先建立伺服器端:
//tcp協議服務端
public class server
}
tcp客戶端:
//tcp客戶端
public class tcpclient
}
先執行伺服器端:
執行客戶端:
訊息傳送完成後,我們再看服務端列印的內容:
下面我們繼續寫一下伺服器接收到訊息後的反饋,伺服器端:
//tcp協議服務端
public class server catch (exception e) finally }}
客戶端:
//tcp客戶端
public class tcpclient catch (exception e) finally }}
先執行服務端:
再執行客戶端:
此時再看服務端:
udp實現:
先建立udp服務端:
//udp服務端
public class udpserver
}
建立udp客戶端:
//udp客戶端
public class udpclient
}
先啟動服務端:
再啟動客戶端:
再看服務端:
下面我們來驗證一下udp是無連線的,傳送訊息時不會關心服務端是否在。我們關掉服務端,啟動客戶端,此時不會出現異常錯誤,即驗證上述。然後我們關掉服務端和客戶端,再重新啟動服務端和客戶端時,剛才在服務端沒有啟動時傳送的資料已經被覆蓋掉了,所以服務端接收到的是它啟動之後的資料。
初學socket程式設計
做專案經查遇到socket 套接字 的地方,業務的地方大部分直接呼叫介面,讀取到內容後再返回給介面就ok了,但學習要深究其原理,因此決定學習下socket相關的內容,該文章參考了下面這位大佬的文章,不做搬運工,寫下自己的理解 linux上通訊和通訊協議tcp中的三次握手沒有直接聯絡,學習學的三次握手...
網路程式設計 Socket程式設計
一 網路部分 1.ip 2.埠號 在網路協議中使用埠號識別主機上不同的程序,不同的埠對應於不同的服務 應用程式 3.協議 tcp二 socket部門socket通訊基本流程圖 根據socket通訊基本流程圖,總結通訊的基本步驟 伺服器端 第一步 建立乙個用於監聽連線的socket對像 第二步 用指定...
socket網路程式設計的初學使用見解
所謂socket通常也稱作 套接字 應用程式通常通過 套接字 向網路發出請求或者應答網路請求。根據連線啟動的方式以及本地 套接字要連線的目標,套接字之間的連線過程可以分為三個步驟 伺服器監聽,客戶端請求,連線確認。伺服器監聽 是 伺服器端 套接字並不定位具體的 客戶端套接字,而是處於等待連線的狀態,...