學習重點總覽(先建立地圖)
一條「上網」流程線
- 你輸入網域名稱 → DNS 解析得到伺服器 IP。
- 瀏覽器用通訊埠連到伺服器上的服務(常見:HTTP 80、HTTPS 443)。
- 資料被拆成封包傳送;IP負責位址與路由。
- 若用 TCP:TCP 會排序、重傳、重組,確保資料可靠交付。
- 伺服器回應後,你看到網頁內容。
最易混淆的四對概念
- TCP(可靠交付) vs IP(位址與路由)
- DNS(網域名稱→IP) vs URL(資源位置描述)
- HTTP(規則) vs HTTPS(加密/驗證)
- 通訊埠(主機內服務入口) vs IP 位址(主機/介面位置)
1) 傳輸控制協定(TCP)與互聯網協定(IP):分工與合作
重點
- TCP處理「可靠傳輸」:分段、序號、確認(ACK)、重傳、重新排序與重組。
- IP處理「位址與路由」:每個封包有來源/目的 IP,路由器按路由表轉發。
- TCP 與 IP 是分層合作:資料逐層封裝,抵達後逐層解封裝。
- 常見混淆:DNS只做網域名稱解析;HTTPS主要做加密/驗證;它們不是 TCP/IP 的替代品。
定義
- 傳輸控制協定(TCP):傳輸層協定,目標是把資料可靠、有序地交付到接收端應用程式。
- 互聯網協定(IP):網絡層協定,目標是為封包提供位址並支援跨網絡路由/轉發。
原理/運作
- 應用程式產生資料(例如瀏覽器送出請求)。
- TCP 把資料分段,每段加上序號,以便排序與偵測遺失。
- 接收端回覆確認(ACK);若發送端在限時內收不到 ACK,會重傳遺失段。
- IP 為每個封包加上來源 IP與目的 IP,路由器按路由表決定下一跳。
- 接收端最後按序號重新排序並重組成完整資料交給應用程式。
例子
你打開一個網站(以 HTTPS 為例):
- DNS:把網域名稱解析成伺服器 IP。
- TCP:與伺服器建立連線,並連到正確通訊埠(常見:443)。
- IP:把封包送往伺服器 IP(可能經過多個路由器、路徑可改變)。
- HTTPS/TLS:在 TCP 之上加密與驗證,降低竊聽與冒充風險。
比較
- TCP vs IP:TCP 管「可靠交付」;IP 管「位址與路由」。
- TCP vs UDP:TCP 重可靠;UDP 較輕量、延遲低,但不保證可靠/次序(常見於部分即時應用)。
常見錯誤
- 把「IP = 一定送到」:錯。IP 多為盡力而為(best effort)。
- 把「DNS = 傳網頁內容」:錯。DNS 只提供「網域名稱對應 IP」。
- 把「通訊埠 = IP 的一部分」:錯。通訊埠用來指向主機內的服務,屬傳輸層概念。
為何單靠 IP 不能保證可靠傳輸?
在互聯網通訊中,IP 的工作是把封包盡力送到目的地;然而互聯網沒有為每段通訊保留固定通道, 途中可能發生擁塞、路線改變或封包遺失,因此單靠 IP 並不能保證資料「到得齊、到得啱次序」。
當應用需要完整性(例如下載檔案、提交功課、登入資料),TCP 就在 IP 之上提供可靠傳輸機制。 TCP 透過序號、確認(ACK)、重傳等方法,讓接收端可以把到達次序不同的資料重新排序與重組, 最終交付給應用程式使用。
因此,答題時只要清楚分工:IP 管位址與路由;TCP 管可靠與次序,你就能用同一套思路解釋很多互聯網現象。
互動活動:扮演 TCP / IP(以 1 MB 檔案為例)
以下活動以「簡化模型」示範 TCP/IP 的分層合作。請依序完成三個角色: 發送端 TCP(分段與加入序號)→ IP(選擇較佳路徑並轉發封包)→ 接收端 TCP(重新排序並重組)。
步驟 1:你是發送端 TCP(分段+序號)
檔案大小固定為 1 MB(本活動以 1,024 KB 表示)。
步驟 2:你是 IP(選擇較佳路徑)
路由器會按路由表與網絡狀況選擇下一跳。本活動用簡化數據比較「帶寬」與「延遲」,估算把 1 MB 檔案送到對方的大約時間。 你的任務:選擇估計傳送時間最短的路徑。
封包到達次序(可能亂序)
步驟 3:你是接收端 TCP(排序+重組)
請把下列段落拖曳排序,令序號由小到大,模擬 TCP 在接收端重新排序與重組檔案。
Check Point:小測
2) 封包與可靠傳輸:為何要分割?為何會亂序?
重點
- 互聯網通常採用封包交換:資料會被分割成多個封包個別傳送。
- 封包可能走不同路徑,所以到達次序可能不同,甚至有封包遺失。
- TCP可用序號、ACK 與重傳處理遺失,並在接收端重新排序與重組。
定義
- 封包:網絡上運送資料的一個小單位,通常包含標頭(header)與有效載荷(payload)。
- 封包交換:訊息被拆成封包,每個封包可獨立被路由器轉發。
原理/運作
為何要分割成封包?常見原因包括:
- 共享更公平:封包較細,可讓多個使用者輪流佔用鏈路,避免「一個人霸線」。
- 更易處理錯誤:若遺失,只需重傳遺失的封包/段,不一定要整段重傳。
- 網絡限制:不同網絡媒介有最大傳輸單元(MTU)的限制(概念層面理解即可)。
封包可走不同路徑,是因為路由器會按當刻路由表與網絡狀況(例如擁塞/故障)作轉發決策。
例子
你上載一份功課 PDF:檔案會被拆成大量小段與封包傳送。若中途掉了一些封包:
- IP 仍會把其他封包送到目的地;
- TCP 會發現缺失並重傳;
- 最後接收端把所有段按序號重組回完整檔案。
比較
封包交換(互聯網常見) vs 固定通道(直覺比喻):
- 封包交換:不預留固定通道,封包可改道,韌性高。
- 固定通道:先建立一條專用路徑再傳資料(概念比喻),較穩定但成本高。
常見錯誤
- 以為封包一定按次序到:錯,可能亂序。
- 以為封包一定走同一路:錯,可能改道。
- 以為「掉封包 = 一定失敗」:對 TCP 而言,掉封包多數是「需要重傳」,不必然等於失敗。
封包交換為何會導致亂序與遺失?
互聯網把訊息分割成封包後,每個封包都可以獨立被轉發。這種設計令互聯網可以同時服務大量使用者, 亦能在局部擁塞或故障時改道維持通訊。
代價是:封包可能延遲不同、到達次序不同,甚至遺失。這就是為何很多應用會使用 TCP: TCP 以序號追蹤段落次序,以 ACK 確認到達,以重傳補回遺失,並在接收端排序與重組。
小遊戲:封包亂序與遺失(要求重傳)
在封包交換網絡中,封包可能亂序到達,甚至遺失。 以下小遊戲用 10 個封包(1–10)模擬傳送過程。你的任務是扮演發送者:觀察接收端實際收到的封包,找出缺失的封包並要求重傳, 直到接收端可以把封包按序號重組成完整訊息。
(A)開始傳送
提示:第一次傳送會隨機出現「亂序」及「遺失」;重傳階段將確保被選封包成功到達。
(B)接收端:實際收到的封包(可能亂序)
你可以把「應該收到的封包」視為 1–10。請比較後判斷哪些缺失。
(C)發送端:選擇要重傳的封包
請勾選你判斷「遺失」的封包號碼,再按「重傳」。目標是用最少不必要重傳完成重組。
Check Point:小測
3) IP 位址與版本:IPv4、IPv6,以及為何沒有 IPv5
重點
- IP 位址用來識別網絡上的裝置(更準確:網絡介面),讓封包知道目的地。
- IPv4位址空間有限(32-bit),難以應付裝置數量增長,因此出現 IPv6。
- IPv6位址空間大(128-bit),常以十六進制與冒號表示。
- 「沒有 IPv5」屬歷史原因:部分編號曾用於實驗性串流協定,未成為主流互聯網版本。
定義
- IP 位址:網絡層用來定位目的地的編號。
- IPv4:常見寫法如 203.0.113.8(四組 0–255)。
- IPv6:常見寫法如 2001:db8:85a3::8a2e:370:7334(八組十六進制,可縮寫)。
原理/運作
- 封包的 IP 標頭至少包含來源 IP 與目的 IP。
- 路由器按目的 IP 查路由表,決定下一跳,逐站把封包送近目的地。
- IPv4 位址空間為 2^32,數量有限;IPv6 為 2^128,大幅擴展。
例子
同一部手機在不同情境可能出現不同 IP:
- 連家中 Wi‑Fi:多數取得內網(私有)IPv4 位址,對外再經路由器做 NAT。
- 用流動數據:由電訊商分配另一個位址(可能是 IPv4 或 IPv6)。
因此 IP 位址並不一定是「永久不變」的身份,常會因連線方式與網絡設定而改變。
比較
- IPv4:較短、普及,但位址緊張。
- IPv6:位址空間大,支援更長遠的裝置增長;表示法較長,需要適應。
常見錯誤
- 以為 IPv6「只係換格式」:其核心是擴大位址空間;格式只是表達方式。
- 以為「IPv5 係未推出」:並非等待推出,而是版本編號曾用於其他用途,最終主流由 IPv4 走到 IPv6。
IPv4 位址不足與 IPv6 的必要性
IP 位址可視為互聯網上的「定位座標」。當封包要跨網絡傳送時,路由器會用目的 IP 去查路由表, 並逐站把封包轉發到更接近目的地的方向。
由於 IPv4 位址空間有限,全球裝置數量急增時就出現位址不足問題。 IPv6 透過更大的位址空間提供長遠解決方向;你不需要在本章背誦所有細節,但應能說出「IPv4 不足 → IPv6 擴展」的因果。 至於 IPv5,重點是知道它不是「漏了一版」,而是歷史上曾出現以同一編號作實驗用途的情況,結果主流版本最終由 IPv4 過渡到 IPv6。
小遊戲:IPv4 位址不足 → 為何需要 IPv6?
IPv4 與 IPv6 的核心差異之一是位址空間大小: IPv4 以 32 位元表示位址(2^32),IPv6 以 128 位元表示位址(2^128)。 位元數每增加 1,位址數量就會翻倍,因此由 32 位元擴展到 128 位元,位址數量會呈指數級增加。
(A)位址空間:由位元數推算位址數量
| 版本 | 位元數 | 理論位址數量 | 常見寫法 |
|---|---|---|---|
| IPv4 | 32 | 2^32 ≈ 4,294,967,296(約 43 億) | 203.0.113.8 |
| IPv6 | 128 | 2^128 ≈ 3.4 × 1038 | 2001:db8::1 |
(B)縮尺模型:位址池分配模擬
為了讓你「看見」耗盡,本模型把位址池縮小,但保留同一個概念:位元數越少 → 位址池越快耗盡。
Check Point:小測
4) 網域名稱系統(DNS):把網域名稱轉換成 IP 位址
重點
- 網域名稱系統(DNS)把人類易記的網域名稱轉換為電腦可用的IP 位址。
- 網域名稱以 . 分隔多個標籤(label);一般可由右至左辨認頂級網域(TLD)、二級網域、三級網域等層級。
- 頂級網域大致可分為通用頂級網域(例如 .com)及國家/地區頂級網域(例如 .hk)。部分國家/地區頂級網域之下會再劃分常見的「類別二級網域」(例如 com.hk、edu.hk)。
- DNS 解析失效時,瀏覽器可能無法以網域名稱存取網站;直接輸入 IP 有時可作排錯,但不一定可代替網域名稱(例如虛擬主機、HTTPS 憑證等因素)。
定義
網域名稱系統(DNS)是一套分散式系統,用來把網域名稱(例如 www.example.com)轉換成 IP 位址。
網域名稱結構:如何判斷?
一般而言,網域名稱由多個標籤(label)組成,並以 . 分隔。判斷方法:
- 最右側通常是頂級網域(TLD),例如 .com、.org、.hk。
- TLD 左邊的一段,通常可稱為二級網域(例如 example.com 中的 example)。
- 再往左的一段,可稱為三級網域(例如 www.example.com 中的 www)。
- 主機名稱常用來表示某一項服務/主機(例如 www、mail、ftp)。在網頁情境中,URL 的主機(host)就是瀏覽器實際要連接的主機名稱。
頂級網域類型
通用頂級網域(gTLD):常見例子:
- .com(商業機構常用)
- .org(非牟利機構常用)
- .net(網絡服務相關常用)
- .edu(教育相關常用)
- .gov(政府機構常用)
- .mil(軍事機構常用)
- .info(資訊類常用)
- .biz(商業類常用)
國家/地區頂級網域(ccTLD):常見例子:
- .hk(香港)、.cn(中國內地)、.tw(台灣)
- .jp(日本)、.kr(韓國)、.sg(新加坡)
- .uk(英國)、.us(美國)、.au(澳洲)
- .ca(加拿大)、.de(德國)、.fr(法國)
例子:google.com.hk
在某些國家/地區頂級網域之下,管理機構會再劃分常見「類別二級網域」,例如 com.hk、edu.hk。
- .hk:國家/地區頂級網域(TLD)
- com.hk:常見類別二級網域(表示商業類別)
- google:在 com.hk 之下註冊的網域名稱(可視為三級網域)
- 若是 www.google.com.hk,則 www 是主機名稱/子網域
解析流程與常見錯誤
- 你在瀏覽器輸入網域名稱。
- 電腦先查本機/瀏覽器快取;若沒有,再詢問 DNS 解析器(常由 ISP 或路由器提供)。
- 解析器向 DNS 伺服器查詢,取得對應 IP 位址並回覆。
- 瀏覽器拿到 IP 後,才開始用 TCP/HTTPS 等建立連線。
常見錯誤
- 把 DNS 當成「傳送網頁內容」:錯。DNS 只提供「網域名稱對應 IP 位址」資訊。
- 把 DNS 當成「加密」:錯。加密/驗證主要由 HTTPS/TLS 處理。
- 以為「知道 IP 就一定入到網站」:不一定。現代網站可能依賴正確主機名稱與憑證才能提供正確內容。
網域名稱為何「易記又可更換」?
網域名稱之所以重要,是因為它把「容易記」與「可更換」結合起來:使用者記住的是網域名稱,而網站營運者可以在背後更換伺服器 IP 位址。 只要 DNS 記錄更新並被使用者查詢到,使用者就能連到新位置。
另一方面,若 DNS 解析失效,瀏覽器就難以知道要連到哪個 IP 位址。 直接輸入 IP 有時可作排錯,但在現代網站架構中,許多網站依賴網域名稱來判斷要提供哪一個站點內容, 因此「用 IP 代替網域名稱」並非永遠可行。
互動活動:輸入真實網址進行「網域名稱分析」
請輸入一條真實的網頁網址(URL)或網域名稱。系統會先從 URL 提取主機(host)部分, 再把主機拆解為頂級網域、二級網域、三級網域及主機名稱/子網域。
注意:本活動會先示範「拆解與判斷」,並可透過 HTTPS 向公開 DNS 解析服務查詢 A / AAAA 記錄,以取得對應的 IP 位址。 若裝置未能連接互聯網、網絡政策限制外部查詢,或目標網域設有特殊設定,查詢結果可能無法顯示,或會隨時間與網絡位置而改變。
(A)輸入
(B)練習:請填寫各部分(再核對)
(C)系統分析結果
(D)DNS 查詢結果(IP 位址)
系統會透過 HTTPS 向公開 DNS 解析服務查詢 A(IPv4)及 AAAA(IPv6)記錄,以取得主機對應的 IP 位址。 查詢結果可能包含多個 IP 位址,亦可能因負載分配與網絡位置而有所不同。
Check Point:小測
5) 劃一資源定位(URL):由哪些部分組成?
重點
- 劃一資源定位(URL)描述「要用甚麼規則去到哪一部伺服器、取得哪個資源」。
- 常見部分:通訊協定、網域名稱或 IP、通訊埠、路徑、檔案名稱。
- 若未指定檔案,伺服器通常會回傳預設檔案(例如 index.html)。
- 在許多網站中,/index.html 是預設首頁;因此 https://school.example.edu/index.html 往往可簡寫為 https://school.example.edu/(以伺服器設定為準)。
定義
劃一資源定位(URL)用來定位互聯網上的資源(例如網頁、圖片、檔案)。日常亦常稱為「網址」。
原理/運作:URL 結構
以以下為例:
- 通訊協定(Protocol):https(定義通訊規則)。
- 主機(Host):www.example.com(網域名稱或 IP)。
- 通訊埠(Port):443(指定主機內要連接的服務)。
- 路徑(Path):/folder/(伺服器內的資源位置)。
- 檔案名稱:page.html(實際被存取的檔案)。
例子:未指定檔案時會怎樣?
在許多網站中,以下兩者常常等效(以伺服器設定為準):
- https://school.example.edu/
- https://school.example.edu/index.html
原因是:當 URL 只到資料夾層級而未指定檔案名稱時,伺服器通常會回傳預設首頁檔案,例如 index.html(具體名稱由伺服器設定而定)。
比較
- URL:描述整個資源位置(協定 + 主機 + 路徑…)。
- DNS:只負責把網域名稱轉成 IP,並不包含路徑與檔案資訊。
常見錯誤
- 把「通訊協定」與「通訊埠」混為一談:協定是規則;通訊埠是入口。
- 以為 URL 任何部分都會「傳到伺服器」:某些部分(例如 fragment #)主要供瀏覽器處理,未必會送到伺服器(延伸概念)。
URL 結構與預設首頁(index)
URL 的重點,是把「如何連線」與「要取甚麼資源」放在同一條字串中。 協定決定通訊規則;主機(網域名稱或 IP)決定要連到哪一部伺服器;通訊埠決定連到主機內哪個服務; 路徑與檔案名稱則指向伺服器內的資源位置。
因此,當你理解 URL 的各部分,就能解釋很多常見現象: 例如為何 https:// 與 http:// 有不同預設通訊埠; 為何未寫檔案名稱時會自動出現首頁;以及為何某些服務要在 URL 明確寫出通訊埠(例如 :8080)。
示範:資料夾結構與 URL 的關係
網站內容通常以資料夾與檔案方式儲存於伺服器上。一般而言,URL 的「路徑(path)」會對應伺服器上的資料夾/檔案位置。 以下示範結構包含:主目錄、預設首頁(index.html),以及三個資料夾(每個資料夾至少三個檔案)。
(A)點選資料夾/檔案
你可以先點選資料夾(例如 /images/),再點選其中檔案(例如 logo.png),觀察 URL 的變化。
(B)對應的 URL
反向挑戰:看資料夾結構寫出 URL
現在改為「反向思考」:系統會在右側資料夾結構中以粗體方框標示一個檔案,你需要根據資料夾結構與基礎網址,寫出該檔案的完整 URL。
(A)題目
(按「下一題」開始)
(B)你的答案
Check Point:小測
6) 常見互聯網協定與通訊埠:HTTP/HTTPS、電郵、FTP
重點
- 超文本傳輸協定(HTTP)用於網頁資料傳送;HTTPS在其上加入加密/驗證。
- 電郵常見協定:簡單郵遞傳送協定(SMTP)多用於「寄出」;郵局協定(POP)與網絡信息存取協定(IMAP)多用於「收取/存取」。
- 檔案傳輸協定(FTP)用於檔案上載/下載(現代亦常見更安全的替代方案,但此處掌握基本用途即可)。
- 通訊埠讓同一部主機可同時提供多個服務(例如 80/443/25/110/143/21)。
定義
- 超文本傳輸協定(HTTP):網頁資料傳送的規則。
- HTTPS:一般可理解為「HTTP + 加密/驗證(TLS)」的安全版本。
- 簡單郵遞傳送協定(SMTP):電郵傳送(常用於寄出)。
- 郵局協定(POP)、網絡信息存取協定(IMAP):電郵收取/存取(模式不同)。
- 檔案傳輸協定(FTP):檔案傳輸。
原理/運作
協定通常以通訊埠作為「入口」:
- HTTP:80;HTTPS:443
- SMTP:25;POP:110;IMAP:143
- FTP:21
通訊埠的作用,是讓同一部主機上的不同服務程序(例如網頁伺服器、郵件伺服器)同時運作而不互相混淆。
例子
- 你在瀏覽器打開網頁:多數使用 HTTPS(443)。
- 你用電郵軟件寄信:常用 SMTP 把郵件送到郵件伺服器。
- 你用電郵軟件在多部裝置同步信件:IMAP 較能保留伺服器端信箱結構(概念理解)。
比較
- HTTP vs HTTPS:HTTPS 多了加密/驗證,能降低被竊聽與被冒充風險。
- POP vs IMAP:POP 偏向把郵件下載到本機;IMAP 偏向在伺服器端管理與同步(概念層面)。
常見錯誤
- 把「協定」與「應用」混為一談:協定是規則;瀏覽器/電郵軟件是使用規則的應用程式。
- 以為「HTTPS = 網站一定安全」:HTTPS 主要保護傳輸途中;網站本身是否安全仍取決於伺服器與系統設計(延伸)。
協定與通訊埠的配對思路
協定可以理解為「溝通規則」。同一條網絡連線上可以跑很多不同服務,通訊埠就像把一棟大廈分成不同單位: 你要去網頁服務,就走到 80/443;你要寄電郵,就走到 25;你要取信,就走到 110/143。
在答題時,不必死背大量通訊埠,但應能說出「通訊埠用來指向主機內服務」。 至於 HTTP/HTTPS、SMTP/POP/IMAP、FTP,你至少要能說出它們的用途,並能配合一個生活例子。