TCP網路程式設計

2022-08-31 08:57:10 字數 1251 閱讀 3374

一。tcp 網路模型程式設計

1. 網路程式設計模型函式化

1.1 建立套接字       socket

1.2 繫結位址函式    bind

1.2.1 位址型別 

1.2.2 位址轉換

**  in_addr_t inet_addr(const char *cp)

範例: in_addr.saddr = inet_addr(「192.168.1.1」 );

1.2.3網路位元組序

1. uint32_t htonl(uint32_t hostlong);

將32位的資料從主機位元組序轉換為網路位元組序

in_addr.saddr = htonl(inaddr_any)

2. uint16_t htons(uint16_t hostshort);

將16位的資料從主機位元組序轉換為網路位元組序

3. uint32_t ntohl(uint32_t netlong);

將32位的資料從網路位元組序轉換為主機位元組序

4. uint16_t ntohs(uint16_t netshort);

將16位的資料從網路位元組序轉換為主機位元組序

1.3  設定監聽函式    listen

1.4  等待連線     accept

1.5  傳送資料         send

1.6  接受資料         receive

1.7  關閉連線    close

1.8 連線伺服器    connect

2. tcp通訊程式設計

2.1 伺服器的程式

2.2 客戶機程式

TCP網路程式設計

基於tcp 通訊模型 由上圖可以得出tcp通訊的步驟如下 服務端 1 建立乙個socket,用函式socket 2 繫結ip位址 埠等資訊到socket上,用函式bind 3 設定允許的最大連線數,用函式listen 4 等待來著客戶端的連線請求,用函式accept 5 收發資料,用函式send 和...

網路程式設計 TCP

客戶端 1.建立客戶端的socket服務,指定目的主機和埠 2.為了傳送資料,應該獲取socket中的輸出流 3.獲取socket中的輸入流來獲取服務端的反饋資料 4.關閉資源 服務端 1.建立服務端的serversocket服務,並監聽乙個埠 2.通過accept方法 等待並獲取連線過來的客戶端s...

網路程式設計 TCP

即有傳送緩衝區 接收緩衝區,傳送次數和接收次數不一定對等。報頭長,成本高,需要搭載更多的資料。1.三次握手 通過對ack的確認,建立可靠連線。有超時重傳機制 2.四次揮手 有可能伺服器處理資料的時間較短,即三次揮手 3.狀態圖 2 保證遲來的資料報能被識別並丟棄 4.tcp狀態轉移過程 5.tcp報...