iT邦幫忙

2023 iThome 鐵人賽

DAY 25
0
Modern Web

那些你可能要知道的前端知識系列 第 25

【day25】TCP、UDP 是什麼

  • 分享至 

  • xImage
  •  

https://ithelp.ithome.com.tw/upload/images/20230928/20148303yEHIlFFvr6.png


TCP、UDP兩者皆是網路通訊協議,它們決定了數據在網路上的傳送以及接收方式

https://ithelp.ithome.com.tw/upload/images/20230928/20148303QAryYHJaV4.png

TCP

TCP 確保數據以可靠方式傳送,並確保數據以它們發送的相同順序到達。

在數據開始傳送前,TCP會先在發送和接收裝置之間建立一個穩定的連接,接著它將數據分割成多個小的數據,並確保這些數據按照正確的順序傳送並且被接收。
因為TCP有重新發送的機制,所以這些被分割的小數據如果在傳送的途中丟失或錯誤,TCP會重新發送這些數據以確保數據的完整性,TCP經常使用的情境會是(例如:電子郵件、網頁瀏覽)

UDP

UDP是一種無連接的通訊協定,也因為UDP不會事前先建立穩定的通訊連結,也不會確保數據是否會按發送的順序到達,或數據是否完整,因此UDP提供了更快速的傳輸,因此它經常使用在實用性較高且可以接受少量數據丟失的資料傳輸(例如:影音串流)


TCP和UDP的差異

  • 可靠性
    TCP: 提供可靠的數據傳輸,確保所有數據依照發送的順序到達接收端,並且確保丟失或發生錯誤的數據會被重新傳輸
    UDP: 不保證數據的到達和順序,且有可能丟失數據
  • 速度
    TCP會需要管理連接和進行錯誤檢測和修復,TCP 的速度通常比UDP慢
  • 連接
    TCP:在傳輸數據前會進行裝置穩定的連接
    UDP:無連接通訊協定

使用哪一種通訊協定比較好

其實是視情況,沒有其中一種是“最好”的方式,假如現在的首要需求是速度至上,那麼選擇UDP相對會比較適合;如果傳輸的資料極度重要且不能有遺漏,選擇TCP會是比較有保障的


參考文章
TCP 與 UDP 是什麼?差異為何?
TCP 與 UDP:兩種協議有什麼區別?


上一篇
【day24】為什麼React渲染Array時要加上key
下一篇
【day26】什麼是 RESTful API
系列文
那些你可能要知道的前端知識30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言