TCP:面向有連接威创,建立連接需要三次握手,斷開連接需要四次揮手谎懦,報(bào)頭至少需要20字節(jié)肚豺,TCP無邊界。
UDP:面向無連接界拦,不需要三次握手和四次揮手吸申,報(bào)頭至少需要8字節(jié),UDP有邊界享甸。
TCP的優(yōu)點(diǎn)和缺點(diǎn)
優(yōu)點(diǎn):因?yàn)橛腥挝帐纸夭辏钥煽糠€(wěn)定,傳遞數(shù)據(jù)時(shí)蛉威,有確認(rèn)日丹、窗口、重傳蚯嫌、擁塞機(jī)制哲虾。
缺點(diǎn):易被攻擊,浪費(fèi)時(shí)間齐帚,傳輸慢妒牙,效率低。
UDP的優(yōu)點(diǎn)和缺點(diǎn)
優(yōu)點(diǎn):效率快对妄,不用建立連接湘今,較安全,沒有TCP的機(jī)制剪菱,易被攻擊的漏洞就少 摩瞎。
缺點(diǎn):不可靠,不穩(wěn)定孝常,網(wǎng)絡(luò)不好時(shí)容易丟包旗们。
為什么TCP比UDP可靠?
TCP是面向有連接构灸,建立連接之后才發(fā)送數(shù)據(jù)上渴;而UDP不建立連接也會(huì)發(fā)送數(shù)據(jù)。
TCP有確認(rèn)機(jī)制喜颁,接收端每收到一個(gè)正確包都會(huì)回應(yīng)給發(fā)送端稠氮。超時(shí)或者數(shù)據(jù)包不完整的話發(fā)送端會(huì)重傳。UDP沒有半开。因此可能丟包隔披。
為什么UDP比TCP快?
UDP沒有三次握手寂拆,沒有阻塞機(jī)制奢米。
什么什么時(shí)候用UDP抓韩,什么時(shí)候用TCP?
UDP:一般用于視頻傳輸鬓长,要速度谒拴,對(duì)質(zhì)量要求不是很高。
TCP:當(dāng)對(duì)網(wǎng)絡(luò)通訊質(zhì)量有要求的時(shí)候痢士。