Socket是什麼,通俗易懂點說

2022-06-06 12:27:08 字數 1085 閱讀 1767

網路由下往上分為 物理層 、資料鏈路層 、 網路層 、 傳輸層 、 會話層 、 表現層 和 應用層。
通過初步了解,我知道ip協議對應於網路層,tcp協議對應於傳輸層,而http協議對應於應用層。

tcp/ip協議是傳輸層協議,主要解決資料如何在網路中傳輸,而http協議是應用層協議,主要解決如何包裝資料。

關於tcp/ip和http協議的關係,網路有一段比較容易理解的介紹:

「我們在傳輸資料時,可以只使用(傳輸層)tcp/ip協議,但是那樣的話,如果沒有應用層,便無法識別資料內容。如果想要使傳輸的資料有意義,則必須使用到應用層協議。

應用層協議有很多,比如http、ftp、telnet等,也可以自己定義應用層協議。

web使用http協議作應用層協議,以封裝http文字資訊,然後使用tcp/ip做傳輸層協議將它發到網路上。」

什麼是socket

那麼我們平時說的最多的socket是什麼呢,實際上socket是對tcp/ip協議的封裝,它的出現只是使得程式設計師更方便地使用tcp/ip協議棧而已。socket本身並不是協議,它是應用層與tcp/ip協議族通訊的中間軟體抽象層,是一組呼叫介面(tcp/ip網路的api函式)

網路有一段關於socket和tcp/ip協議關係的說法比較容易理解:

「tcp/ip只是乙個協議棧,就像作業系統的執行機制一樣,必須要具體實現,同時還要提供對外的操作介面。

這個就像作業系統會提供標準的程式設計介面,比如win32程式設計介面一樣。

tcp/ip也要提供可供程式設計師做網路開發所用的介面,這就是socket程式設計介面。」

http是轎車,提供了封裝或者顯示資料的具體形式;socket是發動機,提供了網路通訊的能力。實際上,傳輸層的tcp是基於網路層的ip協議的,而應用層的http協議又是基於傳輸層的tcp協議的,而socket本身不算是協議,就像上面所說,它只是提供了乙個針對tcp或者udp程式設計的介面。

tomcat是什麼 tomcat通俗易懂的解釋

對於tomcat是什麼有什麼作用。曾經看到乙個大神是這樣解釋tomcat的,現在分享給大家 內容大體是 我家有一台機器,可以把石頭變成金子。你快遞給我一箱石頭,讓我把它們變成一箱金子再快遞給你。這個機器就是web專案。石頭是請求,金子是響應,我家就是伺服器。如果你把一箱石頭郵到我家,機器可不會自己接...

什麼是Socket 簡單點,通俗易懂的?

網路上的兩個程式通過乙個雙向的通訊連線實現資料的交換,這個連線的一端稱為乙個socket。建立網路通訊連線至少要一對埠號 socket socket本質是程式設計介面 api 對tcp ip的封裝,tcp ip也要提供可供程式設計師做網路開發所用的介面,這就是socket程式設計介面 http是轎車...

通俗易懂!什麼是MIMO?

01 mimo是什麼 在這個萬物互聯的時代,手機作為我們和外界聯絡的視窗,似乎已經成為了我們身體的一部分。而手機是無法自己上網的,和手機進行通訊的通訊網路,已經變得跟水和電一樣。暢快上網的時候,感覺不到這些幕後英雄的重要,一旦離開就感覺跟活不下去了一樣。按流量收費的時代,曾幾何時,1m流量收費一塊,...