tcp協議和ucp協議與tcp/ip協議的聯絡,一直都是說tcp/ip協議與udp協議的區別。所以我想解釋一點的是tcp/ip協議是乙個協議簇。裡面包括很多協議的。udp只是其中的乙個。之所以命名為tcp/ip協議,因為tcp,ip協議是兩個很重要的協議,就用他兩命名了。
那首先我們先總結幾個區別:
1.基於連線與無連線
2.tcp要求系統資源較多,udp較少
3.udp程式結構較簡單
4.流模式(tcp)與資料報模式(udp)
5.tcp保證資料正確性,udp可能丟包
6.tcp保證資料順序,udp不保證
我們肯定在網上或者**有聽過或者看到過,說tcp協議是可靠的,穩定的而反之
udp協議是不可靠的,不穩定的。那為什麼呢?我們有沒有想過?
確認機制、重傳機制、滑動視窗(有興趣的可以仔細研究一下)。
tcp協議的資源效率問題:
慢,效率低,占用系統資源高,易被攻擊,tcp在傳遞資料之前,要先建連線,這
會消耗時間,而且在資料傳遞時,確認機制、重傳機制、擁塞控制機制等都會消耗
大量的時間,而且要在每台裝置上維護所有的傳輸連線,事實上,每個連線都會佔
用系統的cpu、記憶體等硬體資源。而且,因為tcp有確認機制、三次握手機制,這
些也導致tcp容易被人利用,實現dos、ddos、cc等攻擊。
udp應用場景:
1.面向資料報方式
2.網路資料大多為短訊息
3.擁有大量client
4.對資料安全性無特殊要求
5.網路負擔非常重,但對響應速度要求高
最後著重突出一點的是 我看了一些blog上說ping命令的使用是傳送udp資料報,實際上不是這樣這種說法可能會誤導一些人,ping命令的實現是基於icmp協議的傳送的,有時間的話大家可以去了解了解。
具體程式設計要求我看了一篇blog寫的挺好的推薦一下
TCP協議與UDP協議的區別
tcp建立連線要進行3次握手,而斷開連線要進行4次 1 當主機a完成資料傳輸後,將控制位fin置1,提出停止tcp連線的請求 2 主機b收到fin後對其作出響應,確認這一方向上的tcp連線將關閉,將ack置1 3 由b 端再提出反方向的關閉請求,將fin置1 4 主機a對主機b的請求進行確認,將ac...
tcp協議與 udp協議的區別
網上很多文章都說tcp協議可靠,udp協議不可靠!為什麼前者可靠,後者不可靠呢?既然udp協議不可靠,為什麼還要使用它呢?所謂的tcp協議是面向連線的協議,面向連線是什麼呢?這篇文章,我們就是要弄懂以上問題!tcp和udp都是傳輸層的協議!從程式設計的角度看,就是兩個模組 模組就是 的集合,一系列 ...
TCP協議與UDP協議的區別
tcp協議與udp協議的區別 tcp面向位元組流,udp面向資料報 tcp協議較為複雜,udp協議較為簡單 tcp是可靠連線,udp不可靠 tcp的可靠性體現於 1.確認應答機制 三次握手,四次揮手 2.資料的按序到達 3.超時重傳 4.去重 1到4的保證利用32位序號和確認序號來保證 5.流量控制...