天天看點

Java網絡程式設計-Socket簡介

推薦:​​Java網絡程式設計彙總​​

Java網絡程式設計-Socket簡介

基于java的socket程式設計​​

​什麼是socket:​

​​socket是BSD UNIX的通信機制,通常稱為​

​“套接字”​

​,其英文原意是“孔”或“插座”。顧名思義,socket正如其英文原意一樣,像是一個多孔插座,可以提供多個端口的連接配接服務。

為了更加直覺的了解socket,​

​可以用插座來比喻socket​

​。

如果說socket是一個多孔插座,插座是提供各種電器供電的地方,不同的電器工作時需要的電壓和電流也不一樣,但各種電器都有各自的一個插口,這個稱之為​

​“端口”​

​​。電器使用的電可以看做是網絡資源或者是各種“流”,電是由電線傳輸過來的,是以插座需要連接配接電線,這裡電線也就是伺服器和用戶端連接配接 ​

​“connection”​

​。 其中初始化socket的過程像是買來一個插座的安裝過程。

在插座這邊的是“用戶端”,電線那邊提供電的發電廠是“伺服器”。用戶端和伺服器都各自擁有一個位址,即“IP位址”。其中還有一套傳輸和用電的規則,比如傳輸電時,需要的電壓多少伏才能滿足需求,電器用電的技術參數,插孔需要幾個孔的等。這個便是“協定”,正常情況下我們是不會去管協定的内容是什麼,也就是說協定在我們面前是隐藏的。

了解下圖(圖摘自源碼工作室):

Java網絡程式設計-Socket簡介

繼續閱讀