一、基礎知識介紹
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下,一般為...