網路程式設計socket理論一

2022-05-17 11:52:36 字數 1248 閱讀 4308

socket是應用層與tcp/ip協議族通訊的中間軟體抽象層,它是一組介面。在設計模式中,

socket

其實就是乙個門面模式,它把複雜的

tcp/ip

協議族隱藏在

socket

介面後面,對使用者來說,一組簡單的介面就是全部,讓

socket

去組織資料,以符合指定的協議。

乙個生活中的場景。你要打**給乙個朋友,先撥號,朋友聽到**鈴聲後提起**,這時你和你的朋友就建立起了連線,就可以講話了。等交流結束,結束通話**結束此次交談。

生活中的場景就解釋了這工作原理。

先看理論圖

這些都是底層實現的,

在socket

中都不用寫這些

,只需要明白其中原理就行

,三次握手:

三次握手:

客戶端先給服務端傳送乙個

syn請求

,如果客戶端收到就回覆乙個

ack,

客戶端收到服務端的訊息後

,也會回覆乙個

ack表示能收到對方的訊息

:其實三次握手就是:

保證服務端和客戶端都能接收到對方的訊息

四次揮手:

客戶端給服務端傳送訊息說:

自己傳送完了

,問服務端是否還有訊息

:服務端將資料傳送完畢

服務端傳送訊息說自己傳送完畢,

並準備關閉鏈結

客戶端也關閉鏈結

通俗的來說就是:

三次握手: 通俗的來講就是 a和b打**

第一次握手 : 你好, 我是a, 你能聽到我說話嗎

第二次握手 : 聽到了, 我是b, 你能聽到我說話嗎

第三次握手 : 聽到了, 我們可以開始聊天了

三次握手其實就是為了檢測雙方的傳送和接收能力是否正常, 你說呢?

四次揮手

第一次揮手 : a告訴b, 我沒資料發了, 準備關閉連線了, 你要傳送資料嗎

第二次揮手 : b傳送最後的資料

第三次揮手 : b告訴a, 我也要關閉連線了

第四次揮手 : a告訴b你可以關閉了, 我這邊也關閉了

Socket網路程式設計(一)

udp 漂流瓶,每個人都可以向大海裡面扔漂流瓶,不管有沒有人撿到。不管接收方有沒有,我只往指定的位址傳送東西,64kb以內 tcp 號 必須要雙方建立連線,才能開始通訊,也就是傳送資料 2 網路模型 應用層 http協議 傳輸層 tcp協議 網路層 ip協議 鏈路層 乙太網協議 3 區分客戶端和伺服...

網路程式設計理論

tcp ip協議族 是很多協議的總稱 四層協議 2.傳輸層 tcp udp 3.網路層 ip 4.介面層 mac 應用層 tcp ip mac 電子裝置在網路上的唯一標識 255.255.255.255 1111 1111.1111 1111.1111 1111.1111 1111 32位 4g 2...

網路程式設計理論

client 客戶端 sever 伺服器 優點 軟體使用穩定 節省網路資源 缺點 安裝麻煩,使用者體驗差 browser 瀏覽器 本質上也是乙個客戶端 sever 伺服器 優點 軟體使用方便 缺點 如果網路不穩定,軟體的使用就不穩定 ps b s架構比較流行,因為使用者體驗高 服務端 24小時不間斷...