tcp udp socket程式設計異同

2021-09-06 14:15:11 字數 1088 閱讀 3326

一、tcpudp的區別

基於連線與無連線

對系統資源的要求(tcp較多,udp少)

udp程式結構較簡單

流模式與資料報模式

tcp保證資料正確性,udp可能丟包

tcp保證資料順序,udp不保證

部分滿足以下幾點要求時,應該採用udp 面向資料報方式 網路資料大多為短訊息

擁有大量client

對資料安全性無特殊要求

網路負擔非常重,但對響應速度要求高

具體程式設計時的區別 socket()的引數不同

udp server不需要呼叫listen和accept

udp收發資料用sendto/recvfrom函式

tcp:位址資訊在connect/accept時確定

udp:在sendto/recvfrom函式中每次均 需指定位址資訊

udp:shutdown函式無效

二、man----socket

三、程式設計區別

與之對應的udp程式設計步驟要簡單許多,分別如下:

udp程式設計的伺服器端一般步驟是:

1、建立乙個socket,用函式socket();

2、設定socket屬性,用函式setsockopt();* 可選

3、繫結ip位址、埠等資訊到socket上,用函式bind();

4、迴圈接收資料,用函式recvfrom();

5、關閉網路連線;

udp程式設計的客戶端一般步驟是:

1、建立乙個socket,用函式socket();

2、設定socket屬性,用函式setsockopt();* 可選

3、繫結ip位址、埠等資訊到socket上,用函式bind();* 可選

4、設定對方的ip位址和埠等屬性;

5、傳送資料,用函式sendto();

6、關閉網路連線;

iOS開發之TCP UDP Socket簡單介紹

1.udpudp 是一種不可靠的網路協議。qq用的是這個協議 udp是 user datagram protocol 的簡稱,中文名是使用者資料報協議,是 osi參考模型中一種無連線的傳輸層協議,提供面向事務的簡單不可靠資訊傳送服務,ietf rfc 768是 udp的正式規範。udp協議基本上是 ...

異或在C C 程式設計中的應用

本文主要介紹c c 程式設計中兩個巧用異或解決問題的方法。一 巧用異或進行取反運算 假設安排乙個周健身計畫表,每天的可選專案包括 running,riding,swimming。現用乙個enum表示周一到週日,如下 enum day 上述enum用二進位製上的一位,表示這一天是否有安排。不同位可以疊...

異或 異或相關

感謝 morning glory 贊助 異或異 或 de scri ptio ndes crip tion 給定 l,r l,r,求 i lr j lr i ji l r j l r i jl,r 1 09l,r 1 09 s olut ions olut ion 假設l 1,r 4l 1,r 4,...