tcp底層連線過程(c語言)

2022-03-15 17:42:36 字數 403 閱讀 8803

在用了多種上位機開發環境,包括mfc、qt、c#之後,發現它們的api都是對底層協議的(可以說是c語言)的封裝,所以了解了底層協議,任意換上位機開發環境都是沒問題的。

1、伺服器建立套接字socket,bind至指定位址和埠,listen,迴圈accpet等待客戶端接入,阻塞等待

2、客戶端建立套接字socket,(bind指定位址和埠,預設不bind,使系統自動分配),connect至伺服器(傳送syn包至伺服器,第一次握手連線),阻塞等待

3、伺服器接收到syn包傳送第二個syn包至客戶端,客戶端接收到此包確認建立連線,傳送ack包至伺服器

4、伺服器接收到ack包確認建立連線

TCP連線過程

1 建立連線協議 三次握手 1 客戶端傳送乙個帶syn標誌的tcp報文到伺服器。這是三次握手過程中的報文1.2 伺服器端回應客戶端的,這是三次握手中的第2個報文,這個報文同時帶ack標誌和syn標誌。因此它表示對剛才客戶端syn報文的回應 同時又標誌syn給客戶端,詢問客戶端是否準備好進行資料通訊。...

TCP協議連線過程詳解

1 建立連線協議 三次握手 1 客戶端傳送乙個帶syn標誌的tcp報文到伺服器。這是三次握手過程中的報文1.2 伺服器端回應客戶端的,這是三次握手中的第2個報文,這個報文同時帶ack標誌和syn標誌。因此它表示對剛才客戶端syn報文的回應 同時又標誌syn給客戶端,詢問客戶端是否準備好進行資料通訊。...

TCP連線解釋及連線過程描述

1.tcp連線的建立 設主機b執行乙個伺服器程序,它先發出乙個被動開啟命令,告訴它的tcp要準備接收客戶程序的連續請求,然後服務程序就處於聽的狀態。不斷檢測是否有客戶程序發起連續請求,如有,作出響應。設客戶程序執行在主機a中,他先向自己的tcp發出主動開啟的命令,表明要向某個ip位址的某個埠建立運輸...