TCP與UDP的區別

2021-09-25 03:38:38 字數 1427 閱讀 4871

為了方便開發網路應用程式,美國伯克利大學在unix上實現的一種應用程式訪問網路的通訊協議socket,socket的出現使程式設計師可以很方便的訪問tcp/ip。

使用tcp/ip的套接字(socket)進行通訊。

伺服器程式將乙個套接字繫結到乙個特定的埠,並通過此套接字等待和監聽客戶端到埠的連線請求。

客戶端程式根據伺服器程式所在的主機名和埠發出連線請求。

使用serversocket和socket實現伺服器端和客戶端的socket通訊

public

class

server

}

public

class

client

}

結果

udp是使用者資料報協議,基於udp的socket程式設計是一種非連線的socket通訊,它提供的是無連線、不可靠資訊傳送服務。

datagramsocket:用來傳送和接收資料報的套接字

datagrampacket:表示資料報

服務端步驟:

建立資料socket,指定乙個服務端埠號。

提供乙個byte陣列用於資料儲存。

呼叫datagrampacket的receive() 方法進行資料的接收;

呼叫datagrampacket的getdata()方法得到byte陣列的資料;

釋放資源。

public

class

server

}

客戶端步驟:

建立資料socket,指定乙個客戶端埠號。

提供乙個儲存了所傳送資料的byte陣列,提供服務端的ip位址和埠號。

呼叫datagrampacket的send()方法進行資料的傳送;

釋放資源。

public

class

client

}

結果

tcp面向連線,傳送資料前要先建立連線;udp是無連線的,傳送資料前不需要建立連線

tcp連線傳送的資料,安全性好,無差錯,不丟失,不重複,且按序到達;udp盡最大努力交付,不保證可靠交付;

udp有較好的實時性,效能高,效率比tcp高,適用於對高速傳輸和實時性較高的通訊或廣播通訊;

每一條tcp連線只能是點到點的;udp支援一對一,一對多,多對一和多對多的互動通訊。

TCP與UDP的區別

面向連線的tcp 面向連線 就是在正式通訊前必須要與對方建立起連線。比如你給別人打 必須等線路接通了 對方拿起話筒才能相互通話。tcp協議能為應用程式提供可靠的通訊連線,使一台計算機發出的位元組流無差錯地發往網路上的其他計算機,對可靠性要求高的資料通訊系統往往使用tcp協議傳輸資料。面向非連線的ud...

tcp 與udp 的區別

tcp提供面向連線 可靠的位元組流服務。udp提供面向資料報的傳輸層協議。1.tcp 提供客戶與伺服器之間的連線。tcp客戶與某個伺服器建立乙個連線,再跨跨該連線與伺服器交換資料,最後終止連線。2.tcp提供可靠性。當tcp向對端傳送資料時,要求對端返回乙個確認。如果沒收到確認,tcp就自動重傳資料...

TCP與UDP的區別

tcp transmission control protocol,傳輸控制協議 是基於連線的協議,也就是說,在正式收發資料前,必須和對方建立可靠的連線。乙個tcp連線必須要經過三次 對話 才能建立起來,其中的過程非常複雜,我們這裡只做簡單 形象的介紹,你只要做到能夠理解這個過程即可。我們來看看這三...