tcp連接和http連接的區(qū)別
?? http是基于tcp的,客戶端往服務(wù)端發(fā)送一個(gè)http請(qǐng)求的第一部就是要建立和服務(wù)端的tcp連接锥余,也就是三次握手
http基于tcp
tcp連接和socket連接的區(qū)別
??socket是在tcp/udp傳輸層上做的接口層像鸡,也就是socket連接可以基于tcp也可以基于udp
??基于tcp協(xié)議的socket連接,也需要三次握手哈恰,是可靠的
??基于udp協(xié)議的socket連接不需要建立連接過程只估,直接發(fā)送過去,不可靠着绷,即時(shí)通訊大都是后者
socket也基于tcp
http連接和socket連接的區(qū)別
??http是短連接蛔钙,socket(基于tcp協(xié)議的)是長連接
??http連接服務(wù)端無法主動(dòng)發(fā)消息,socket連接雙方請(qǐng)求無先后限制
什么時(shí)候用http荠医,什么時(shí)候用socket
?? http:雙方不需要保持時(shí)刻在線吁脱,比如客戶端獲取信息桑涎,上傳下載等
?? socket:大部分用于即時(shí)通訊,聊天室等
總結(jié)
實(shí)質(zhì)上來說
- http是應(yīng)用層協(xié)議兼贡,封裝數(shù)據(jù)再使用tcp/ip協(xié)議進(jìn)行傳輸
- socket是一個(gè)調(diào)用接口攻冷,通過socket來使用tcp/ip協(xié)議
建立連接的三次握手和解除連接的四次揮手
三次握手.png
四次揮手.png