TCP和UDP的聯系和用途


一.區別
       二者都是有用的和常用的,如果純粹從概念上區分二者就比較費解了,我們直接從功能上進行區分,簡單明了:
       這兩種傳輸協議也就是合於適配不同的業務和不同的硬件終端。
       在使用中,類似於圖像、聲音等對可靠性要求沒有那么高的業務可以用UDP,他們不需要准確存儲對准確性無要求但要求速度快。     
       類似於文本、程序、文件等要求可靠的數據最好就用TCP,但會犧牲一些速度。
       對系統資源的要求:CP較多,UDP少。
       程序結構:UDP程序結構較簡單,TCP復雜。
       流模式與數據報模式:TCP保證數據正確性,UDP可能丟包; TCP保證數據順序,UDP不保證
 
二.用途
       TCP是面向連接的,有比較高的可靠性,一些要求比較高的服務一般使用這個協議,如FTP、Telnet、SMTP、HTTP、POP3等,而 UDP是面向無連接的,使用這個協議的常見服務有DNS、SNMP、QQ等。對於QQ必須另外說明一下,QQ2003以前是只使用UDP協議的,其服務器 使用8000端口,偵聽是否有信息傳來,客戶端使用4000端口,向外發送信息(這也就不難理解在一般的顯IP的QQ版本中顯示好友的IP地址信息中端口 常為4000或其后續端口的原因了),即QQ程序既接受服務又提供服務,在以后的QQ版本中也支持使用TCP協議了。
       Udp是一種面向無連接的通信協議,該協議使得數據傳輸的速度得到大幅度的提高。視頻聊天語音聊天基本都是用UPD協議。

 

 

我的總結:
一、UDP:
                1
、將數據源和目的地封裝到數據包中,不需要建立連接
                2
、每個數據包的大小限制在64k以內
                3
、因無連接,是不可靠協議
                4
、不需要建立連接,速度快

 

例子:聊天、對講機就是UDP的,面向無連接(不管在不在,知不知道,只管發送,求速度),丟數據也不管。速度快。數據被分成包

 

 


二、TCP:
                1
、建立連接,形成傳輸數據的通道
                2
、在連接中進行大量數據的傳輸
                3
、通過三次握手完成連接、是可靠協議
                4
、必須建立連接,效率會稍低

 

例子:電話通話,必須連接,對方同意才可以發送數據(不然就等待),不能丟失數據。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM