TCP和UDP的區別(面試必問)

2022-06-06 06:33:09 字數 1213 閱讀 7906

udp和tcp作為運輸層的兩大協議,大家可以把它兩形象的比喻成為程序提供服務的管家,udp是不靠譜的乙個管家,而tcp是靠譜的管家。

二---udp和tcp的不同點

a:通訊即時性的不同

使用udp通訊協議的雙方隨時可以進行通訊,而使用tcp協議的雙方,必須要經過三次握手之後才能進行通訊,並且在通訊完成後要經歷四次揮手斷開連線。

b:面向(或者說操作的)物件不同

udp是面向應用報文的:

使用udp協議的傳送方,收到來自應用程序的報文後,加上udp首部(源埠,目的埠,長度,檢驗和),udp接收收到報文後,拆除首部,然後將資料部分交給相應的程序(根據首部的目的埠號)。

tcp是面向位元組流的(這是實現可靠傳輸,流量控制,擁塞控制的基礎):

使用tcp協議的傳送方,把應用程序發下來的報文看做位元組流,然後對其乙個個編號裝到傳送快取中,根據傳送規則,提取一定的位元組,將其打包成tcp報文段進行傳送(想象一下寄快遞過程)。接收方接收到報文段,然後取出其中的資料載荷部分(把打包的盒子拆開),存到接收快取中。一部分交付給應用程序

c:通訊的雙方數量不同

udp支援單播,多播,廣播(一對一,一對多,一對全的通訊)。

tcp之間僅支援單播(一對一)。

d:對資料的責任感不同

若用tcp協議,通訊雙方不會出現誤碼,丟失,亂序,重複等情況(檔案傳輸)

e:首部對比

udp的首部僅僅包含源埠,目的埠,長度,檢驗和,每個佔2個位元組,首部也就是8個位元組。

而tcp因為提供的是可靠的,面向連線的,具有流量控制和擁塞控制,於是tcp的首部要複雜的多,如下圖所示。

面試必問 GET和POST的區別

get在瀏覽器回退時是無害的,而post會再次提交請求 get產生的url位址可以被bookmark,而post不可以。get請求會被瀏覽器主動cache,而post不會,除非手動設定。get請求只能進行url編碼,而post支援多種編碼方式。get請求引數會被完整保留在瀏覽器歷史記錄裡,而post...

TCP與UDP區別(面試)

1.1 tcp的優點 可靠,穩定。tcp的可靠體現在tcp在傳遞資料之前,會有三次握手來建立連線,而且在資料傳遞時,有確認 視窗 重傳 擁塞控制機制,在資料傳完後,還會斷開連線用來節約系統資源。1.2 tcp的缺點 慢,效率低,占用系統資源高,易被攻擊。tcp在傳遞資料之前,要先建連線,這會消耗時間...

TCP和UDP的區別

tcp transimission control protocol 傳輸控制協議 和udp user datagram protocol 是傳輸層的兩種實現版本!它們之間提供基本的服務又各有所長。因此,根據對特定服務質量的要求,應用層軟體單元可以選擇通過傳輸層的tcp版本或者udp版本來傳輸資料。...