Internet & Networking Terminology 網路名詞小筆記

TCP(Transmission Control Protocol,傳輸控制協定)

TCP 是一種可靠的資料傳輸協定,負責確保資料在傳送過程中不遺漏、不重複,並且按照正確的順序送達對方。這也是為什麼我們說 TCP 是「有連線」、「可靠」的通訊協定。

三次握手(Three-way Handshake)

在 TCP 傳輸開始之前,會先經過「三次握手」來建立連線,確保雙方都準備好開始資料傳輸。整個過程就像雙方互相確認:「我準備好了,你也準備好了,那我們開始吧!」

三次握手的過程簡化如下:

  • Client:嗨,我要傳資料囉!(SYN)
  • Server:我準備好了,你準備好了嗎?(SYN-ACK)
  • Client:我真的準備好了!(ACK)

連線建立後,資料才會開始傳輸。

適用場景:

  • 瀏覽網頁
  • 檔案下載
  • 資料庫連線

只要是需要資料正確、不能遺失的應用場景,通常都會使用 TCP。

進階補充(TCP)

  • 屬於 OSI 模型第 4 層:傳輸層
  • 屬於 面向連線(connection-oriented) 的協定
  • 提供封包編號、確認回應(ACK)、重傳機制
  • 擁有擁塞控制、流量控制、檢查碼等機制
  • 常見欄位:Sequence Number、ACK Number、SYN、ACK、FIN

UDP(User Datagram Protocol,用戶資料報協定)

UDP 是一種輕量、快速的資料傳輸協定,但它不保證封包順序、不確認是否送達,也不會重傳。就像你把一張明信片丟進郵筒,並不會知道對方有沒有收到。

適用場景:

  • 線上直播
  • 即時線上遊戲
  • VoIP 語音通話

這些應用場景不要求每一筆資料都完美送達,而是更重視即時性。

進階補充(UDP)

  • 屬於 OSI 模型第 4 層(傳輸層)
  • 無需建立連線(connectionless)
  • 封包可能亂序、遺失、不會重傳
  • 適合即時性高、可容忍少量資料遺失的應用

ICMP(Internet Control Message Protocol)

ICMP 並不負責傳輸資料,而是用來傳送網路控制訊息與錯誤回報。像是我們熟悉的 pingtraceroute 指令,就是利用 ICMP 來運作的。

舉例來說,當你在終端機輸入:

1
ping google.com

電腦其實是透過 ICMP 傳送一個「我可以連到你嗎?」的訊息,然後等對方回應。

進階補充(ICMP)

  • 屬於 OSI 模型第 3 層(網路層)
  • 常見用途:
    • ping:傳送 Echo Request,接收 Echo Reply
    • traceroute:利用 TTL 遞減引發 Time Exceeded 錯誤回報
  • 用來傳送控制訊息,而非實際應用層資料

DNS(Domain Name System)

DNS 就像網際網路的電話簿,負責將人類容易記憶的網址(如 google.com)轉換成電腦能理解的 IP 位址(如 142.250.72.14)。

當你輸入網址時,電腦會詢問 DNS:「請問這個網址對應的 IP 是多少?」查詢到對應的位址後,才能進一步建立連線。

進階補充(DNS)

  • 屬於 OSI 模型的應用層協定,使用 Port 53
  • 常見查詢方式:
    • 遞迴查詢:由 Resolver 全權幫忙找到結果
    • 迭代查詢:DNS Server 間分層合作,逐步查詢
  • 常見記錄類型:
    • A(IPv4)、AAAA(IPv6)、CNAME、MX、NS…
  • 支援 TTL 快取,可減少查詢次數

Nameserver(名稱伺服器)

Nameserver 是專門負責回應 DNS 查詢請求的伺服器,當你註冊一個網域名稱時,會需要指定對應的 Nameserver,告訴全世界「要找這個網域的 IP 位址,請來問這台伺服器。」

例如:

  • google.com 的 nameserver 會回答「google.com 對應的 IP 是什麼?」
  • 當你更換主機供應商時,也需要一併更新 nameserver 設定,才能讓 DNS 正確解析新的位置。

進階補充(Nameserver)

  • 屬於 DNS 架構中的授權名稱伺服器
  • 負責管理特定網域的解析記錄
  • 註冊網域時必須指定至少兩組 Nameserver(可使用 Cloudflare 等服務)

URL(Uniform Resource Locator,統一資源定位符)

URL 是網路世界的門牌地址,告訴瀏覽器該去哪裡、存取什麼資源、並以哪種方式傳輸。

結構範例

https://www.example.com:443/path/to/page?query=value#section1

URL 結構說明

區塊 名稱 說明
https 協定 http / https / ftp…
www.example.com 主機名稱 DNS 會解析成 IP 位址
:443 埠號 預設 http:80 / https:443
/path/... 路徑 網頁或資源的位置
?query=value 查詢參數 用來傳資料(GET 請求)
#section1 錨點 指向頁面內特定位置

範例解析

https://www.youtube.com/watch?v=dQw4w9WgXcQ

  • 協定:HTTPS
  • 主機名稱:YouTube
  • 路徑:/watch
  • 查詢參數:v=dQw4w9WgXcQ(這是影片 ID)

概念總整理

名詞 功能 特性
TCP 傳送穩定資料 有連線、可靠、三次握手、重傳、擁塞控制
UDP 快速傳輸資料 無連線、不保證資料到達、適合即時應用
ICMP 診斷與錯誤通訊 用於 ping、錯誤回報、屬於網路層
DNS 將網址轉成 IP 網路的電話簿、支援快取、多種記錄類型
Nameserver 回應 DNS 查詢 管理授權網域、與 DNS 協作
URL 指定網路資源位置 協定、主機、路徑、參數、錨點等結構資訊

📌 本文為網路入門筆記,如果你對 TCP/IP、DNS 運作原理或 OSI 模型有興趣,歡迎留言分享,也可以期待下一篇延伸說明!