C語言網路程式設計基礎

2021-05-12 15:07:13 字數 1542 閱讀 9471

一、基礎知識介紹

tcp(傳輸控制協議)和udp(使用者資料報協議是網路體系結構tcp/ip模型中傳輸層一層中的兩個不同的通訊協議。

tcp:傳輸控制協議,一種面向連線的協議,給使用者程序提供可靠的全雙工的位元組流,tcp套介面是位元組流套介面(stream socket)的一種。

udp:使用者資料報協議。udp是一種無連線協議。udp套介面是資料報套介面(datagram socket)的一種。

二、tcp和udp介紹(摘自學生大本營)

1)基本tcp客戶—伺服器程式設計基本框架

說明:(三路握手)

1.客戶端傳送乙個syn段(同步序號)指明客戶打算連線的伺服器端口,以及初始化序號(isn) 。

2.伺服器發回包含伺服器的初始序號的syn報文段作為應答。同時,將確認序號(ack)設定為客戶的isn加1以對客戶的syn 報文段進行確認。乙個syn將占用乙個序號。

3.客戶必須將確認序號設定為伺服器的isn加1以對伺服器的syn報文段進行確認。

2) 基本tcp客戶—伺服器程式設計基本框架流程圖

3) udp和tcp的對比:

從上面的流程圖比較我們可以很明顯的看出udp沒有三次握手過程。

簡單點說。udp處理的細節比tcp少。udp不能保證訊息被傳送到(它也報告訊息沒有傳送到)目的地。udp也不保證資料報的傳送順序。udp把資料發出去後只能希望它能夠抵達目的地。

tcp優缺點:

優點:1.tcp提供以認可的方式顯式地建立和終止連線。

2.tcp保證可靠的、順序的(資料報以傳送的順序接收)以及不會重複的資料傳輸。

3.tcp處理流控制。

4.允許資料優先

5.如果資料沒有傳送到,則tcp套介面返回乙個出錯狀態條件。

6.tcp通過保持連續並將資料塊分成更小的分片來處理大資料塊。—無需程式設計師知道

缺點: tcp在轉移資料時必須建立(並保持)乙個連線。這個連線給通訊程序增加了開銷,讓它比udp速度要慢。

udp優缺點:

1.udp不要求保持乙個連線

2.udp沒有因接收方認可收到資料報(或者當資料報沒有正確抵達而自動重傳)而帶來的開銷。

3.設計udp的目的是用於短應用和控制訊息

4.在乙個資料報連線乙個資料報的基礎上,udp要求的網路頻寬比tdp更小。

C語言網路程式設計基礎1 1

在有了前一章的基礎知識後,我想我們該進入下一步的學習了。一 socket的說明 二 internet套介面的兩種型別 一種是 stream sockets 另外一種是 datagram sockets 我們以後談到他們的時候也會用到 sock stream 和 sock dgram 流式套介面是可靠...

c 網路程式設計基礎

1 iphostentry iphost dns.gethostentry www.google.com.hk 2 ipaddress ip iphost.addresslist 獲取列表 3 endpoint ep new ipendpoint ip 0 80 建立結點 4 socket sock...

C語言網路程式設計

server 埠號碼 numero of port client server的ip位址,以及開放的埠號碼 3個parameters,domaine af inet ipv4 type socket stream protocole 當domaine有多種選擇的時候需要填寫,在tcp ip下,一般為...