1.tcp(transmission control protocol,
傳輸控制協議
)是基於連線的協議,也就是說,在正式收發資料前,必須和對方建立可靠的連線。乙個tcp連線必須要經過三次「對話」才能建立起來.
2.udp(user data protocol,
使用者資料報協議
)是與tcp相對應的協議。它是面向非連線的協議,它不與對方建立連線,而是直接就把資料報傳送過去!
3.tcp與udp如何加以區分使用?
tcp用於在傳輸層有必要實現可靠性傳輸的情況。由於它是面向有連線並具備順序控制、重發控制等機制的。所以它可以為應用提供可靠傳輸。
另一方面,udp主要用於那些對高速傳輸和實時性有較高要求的通訊或廣播通訊。舉乙個ip**進行通話的例子。如果使用tcp,資料在傳送途中如果丟失會被重發,但是這樣無法流暢地傳輸通話人的聲音,會導致無法進行正常交流。而採用udp,它不會進行重發處理。從而也就不會有聲音大幅度延遲到達的問題。即使有部分資料丟失,也只是影響某一小部分的通話。此外,在多播與廣播通訊中也使用udp而不是tcp。rip、dhcp等基於廣播的協議也要依賴於udp。
tcp與udp的區別:
1.基於連線與無連線;
2.對系統資源的要求(tcp較多,udp少)(tcp首部開銷20位元組;udp的首部開銷小,只有8個位元組)
3.udp程式結構較簡單;
4.流模式與資料報模式 ;
5.tcp保證資料正確性,udp可能丟包,tcp保證資料順序,udp不保證;
6.每一條tcp連線只能是點到點的;udp支援一對一,一對多,多對一和多對多的互動通訊;
tcp協議三次握手過程分析
tcp是主機對主機層的傳輸控制協議,提供可靠的連線服務,採用三次握手確認建立乙個連線:
位碼即tcp標誌位,有6種標示:syn(synchronous建立聯機) ack(acknowledgement 確認) psh(push傳送) fin(finish結束) rst(reset重置) urg(urgent緊急)
sequence number(順序號碼) acknowledge number(確認號碼)
第一次握手:主機a傳送位碼為syn=1,隨機產生seq number=1234567的資料報到伺服器,主機b由syn=1知道,a要求建立聯機;
第二次握手:主機b收到請求後要確認聯機資訊,向a傳送ack number=(主機a的seq+1),syn=1,ack=1,隨機產生seq=7654321的包
第三次握手:主機a收到後檢查ack number是否正確,即第一次傳送的seq number+1,以及位碼ack是否為1,若正確,主機a會再傳送ack number=(主機b的seq+1),ack=1,主機b收到後確認seq值與ack=1則連線建立成功。
完成三次握手,主機a與主機b開始傳送資料。
tcp三次握手 tcpudp區別
3次握手 第一次握手 主機a傳送位碼為syn 1,隨機產生seq number x的資料報到伺服器,客戶端進入syn send狀態,等待伺服器的確認 主機b由syn 1知道,a要求建立聯機 第二次握手 主機b收到請求後要確認聯機資訊,向a傳送ack number 主機a的seq 1 syn 1,ac...
三次握手 四次揮手 TCP UDP
tcp transmission control protocol 和udp user datagram protocol 協議屬於傳輸層協議。其中tcp提供ip環境下的資料可靠傳輸,它提供的服務包括資料流傳送 可靠性 有效流控 全雙工操作和多路復用。通過面向連線 端到端和可靠的資料報傳送。通俗說,...
tcp三次握手 TCP 三次握手總結
tcp特點概述 tcp segment structure 段結構 step2 server host receives syn,replie with syn ack segment 答覆syn ack報文段 step3 client receives synack,replies with ac...