---
# System prepended metadata

title: Switching（交換技術）
tags: [計算機網路, 網路, 網路概論, 電腦雜談, 計算機概論, 電腦, 電腦常識]

---

# Switching（交換技術）

[TOC]

Hello Guys, I'm LukeTseng. 本篇將來介紹什麼是路由器，若本篇文章有誤，歡迎各位指正，若你也喜歡這篇文章，不妨按下愛心跟追蹤我的個人頁面吧！

另外本篇文章主要針對上課內容製作筆記，斟酌參考～

## 簡介（Introduction）

> 交換技術（Switching）是指兩個節點透過網路中繼站進行資料傳輸的方式，主要目的是將資料正確且快速地從發送端（Sender）傳送到接收端（Receiver）。在網路通訊中，由於存在數種甚至數千萬種可能的傳輸路徑，交換技術就是為了管理這些傳輸路徑而制定的方法。

其中呢，網路中繼站是指在資料從發送端傳送到接收端的路徑上，負責接收、處理並轉發資料的中間節點設備。這個網路中繼站也有可能是以下這些設備：

- 路由器（Router）
- 交換器（Switch）
- 中繼器（Repeater）
- 集線器（Hub）

以傳統上來說，Switching 會分成兩種方法：

- Circuit switching（電路交換）
- Packet switching（封包交換）

## Circuit switching

![image](https://hackmd.io/_uploads/SkwKRMkG-g.png)

Image Source：https://www.geeksforgeeks.org/computer-networks/circuit-switching-in-computer-network/

電路交換是最古老的交換方式，源自早期的電話網絡（PSTN）。

這個技術要求通訊雙方在開始傳輸資料之前，必須先建立一條專用的實際連接線路。這條路徑在通訊結束前，資源（頻寬）是獨佔的，其他人無法使用。

電路交換的運作方式大致上有這以下三個階段：

- 建立連線（Circuit Establishment）：發送端（Sender）發出連線請求訊號，該訊號在網路上一站一站地尋找可到達目的地的可用路徑，找到後就把它佔為己有，直到建立完整的連線路徑。
- 資料傳輸（Data Exchange）：連線建立後，雙方沿著這條專用路徑進行資料傳輸。
- 切斷連線（Circuit Clearing）：通訊結束後，釋放整條連線供其他人使用。

優點：

- 效能很好：連線建立後頻寬是固定的，不會因為網路其他人變多而變慢。
- 無延遲抖動：資料傳輸速率穩定，適合即時語音通話。

缺點：

- 效率極低：如果兩個人在講電話時都不講話，占著茅坑不拉屎，那條線路依然被佔用，頻寬被浪費（Silent periods）。
- 建立時間長：開始傳輸前需要時間撥號建立連線。
- 超難用：如果路徑中間某個交換機壞了，連線就會中斷，必須重新撥號。

## Packet switching

![image](https://hackmd.io/_uploads/SJFj0M1Mbl.png)

Image Source：https://www.geeksforgeeks.org/computer-networks/packet-switching-and-delays-in-computer-network/

這是現代網際網路的基礎。

會限制每則訊息的單位大小，將資料切割成一個個封包（Packet）進行傳輸。

這個技術也需要建立連線，但用的是虛擬電路而非實體專用線路。

封包交換主要有兩種模式，最常用的是 Datagram（資料包 or 數據報）模式（即 IP 網路的運作方式）。

封包交換的運作流程如下：

* 工作站將訊息分割成若干個固定大小的封包並依序編號。
* 發送端發出連線請求，沿途的節點會記錄虛擬路徑資訊。
* 每個封包獨立傳輸，可能經過不同的網路節點和路徑到達目的地
* 封包在節點會被接收（Receive）、緩衝（Buffer）、等待（Queue）和重新傳送（Retransmit）。
* 到達目的地後重新組裝成完整訊息。

其實可以主要概括成以下三點：

1. 無須建立連線：發送端可直接將封包送出。
2. 獨立路由：每個封包獨立選擇最佳路徑。像封包 A 可能走這條路，封包 B 可能因為那條路塞車而走另一條路。
3. 資源共享：頻寬是動態分配的。誰有資料要傳，誰就佔用頻寬；沒資料時，頻寬就讓給別人用。

優點：

- 效率極高：頻寬由所有人共享，不會因為某人沈默而浪費資源。
- 自動導向：如果中間某條路斷了，路由器會自動將封包導向另一條路，通訊不斷。
- 成本低：不需要為每個用戶預留專屬硬體資源。

缺點：

- 不可預測的延遲：如果網路塞車，封包需要排隊，導致速度變慢。
- 會丟包：如果路由器緩衝區（Buffer）滿了，新來的封包會直接被蛋雕。
- 順序不一：封包可能因為走不同路徑，導致晚發的封包可能會先到，接收端需要重新重組。

## Datagram（資料包）

Datagram 是一種無連線式（Connectionless）的服務，類似於傳輸層（Transport Layer）的 UDP 協定 。

無連線就是不用跟接收端、網路中繼站那些東西有交流，想傳封包就傳封包。

Datagram 有獨立的路由（Independent Routing），這邊假設要送 3 個封包（A、B、C）給同一個目的地。

- 封包 A 可能走「路由器 1 -> 2 -> 5」。
- 封包 B 可能因為路由器 2 塞車，改走「路由器 1 -> 3 -> 5」。
- ***每個封包都是獨立的個體，路由器看到封包時，只看封包的目的地 IP，然後查路由表決定當下最好就往哪送。***

因為每個封包都要自己找路，所以每個封包的標頭（Header）裡都必須包含完整的來源與目的地 IP 位址。

總之 Datagram 就可以想像是一個郵差，自己要對好每一封信的地址，然後送上門來，就醬。

優點：

* 非常的靈活～：如果中間非常不幸的，有個路由器炸了，後面的封包會自動繞路，通訊不會中斷（這也是 Internet 當初為了軍事用途設計的初衷）。
* 建立速度快：不需要等待連線建立的時間。

缺點：

* 不保證順序：先發出的封包可能後到（因為繞遠路了），接收端勢必要把這些封包給重組。
* 標頭負擔大：每個封包都要背著長長的 IP 位址。

## Virtual Circuit（虛擬電路）

![image](https://hackmd.io/_uploads/rkvez71MWl.png)

Image Source：https://www.geeksforgeeks.org/computer-networks/virtual-circuit-in-computer-network/

Virtual Circuit 是一種從主機源頭（Source）到目的主機建立類似電路的邏輯連接路徑。

雖然是虛擬電路，但這個東東依然是屬於 Packet Switching 哦。

之所以叫「虛擬」，是因為它用軟體和邏輯的方式，模擬出像打電話一樣的連線感。

運作模式大致上有三種：

1. 連線導向 (Connection-oriented)：

跟電路交換一樣，必須經過三個階段：建立連線（Setup）->傳輸資料->拆除連線（Teardown）。

在傳資料前，封包會先發送一個探路的請求，確定一條路徑，並告訴沿途的路由器說：有封包要過，幫我記住這條路。

2. 固定路徑：

一旦連線建立，這條虛擬電路就固定了。後續所有的封包（A, B, C）都會走同一條路，不會亂跑。

3. 使用 VCI (虛擬電路識別碼)：

因為路徑已經講好了，所以封包不需要揹上那又臭又長的 IP 位址。

封包 header 只需要一個短短的號碼，稱為 VCI（Virtual Circuit Identifier）。

優點：

- 保證順序：因為走同一條路，所以先發先到。
- 轉發速度快：路由器只需要看精簡的 VCI 標籤，處理速度通常比查 IP 路由表快。
- 服務品質（QoS）：比較容易保留頻寬或控制延遲（因為路徑固定好管）。

缺點：

- 非常脆弱：如果路徑中某台路由器壞了，整條虛擬電路就斷了，必須重新建立連線（不像 Datagram 可以自動繞路）。
- 路由器負擔重：路由器必須記住每一條正在進行的虛擬電路狀態。如果是 Datagram，路由器不需要記住任何狀態，轉發完就不管它了。

## 總結

交換技術是為了在複雜多變的網路路徑中，讓資料能夠快速、準確地從發送端傳到接收端。資料在途中會經過多個中繼設備，例如 Router、Switch、Repeater、Hub。

交換方式主要分為兩大類：

* 電路交換（Circuit Switching）
* 封包交換（Packet Switching）

### Circuit Switching（電路交換）

源自早期電話網路，特色是先建立專屬路徑，再開始傳輸。

運作流程：

1. 建立連線（撥號、尋找可用路徑）
2. 專線傳輸資料（線路獨佔）
3. 結束後釋放資源

優點：

1. 連線品質穩定、無延遲抖動
2. 頻寬固定，適合語音等即時應用

缺點：

1. 資源利用差（不講話也佔頻寬）
2. 建立連線需要時間
3. 中途某設備故障會導致整條線路中斷

### Packet Switching（封包交換）

現代網路的核心技術。資料會被切成多個封包，每個封包依情況選擇路徑。

特性：

1. 無須建立實體專線
2. 每個封包獨立路由
3. 頻寬由所有使用者共享

優點：

1. 資源利用高
2. 可自動繞路不中斷
3. 成本低

缺點：

1. 延遲可能不穩定（排隊、塞車）
2. 封包可能掉落（Buffer 滿）
3. 抵達順序可能錯亂

### Datagram（資料包）

屬於封包交換的一種，無連線（Connectionless），類似 UDP。

特色：

1. 每個封包獨立傳輸
2. 每個封包 Header 需包含完整的來源與目的地 IP
3. 封包可能走不同路徑

優點：

1. 高彈性，可自動繞路
2. 不需建立連線，速度快

缺點：

1. 封包順序不保證
2. 每個封包 Header 較大

### Virtual Circuit（虛擬電路）

屬於封包交換，但具有像電話一樣的連線導向行為。

特性：

1. 需建立連線（Setup → 傳輸 → Teardown）
2. 固定路徑（所有封包走同一路）
3. 使用 VCI（Virtual Circuit Identifier）
4. Header 精簡，不需完整 IP

優點：

1. 封包順序固定
2. 轉發速度較快（查 VCI 速度勝過查 IP）
3. 可較容易維持 QoS

缺點：

1. 某節點壞掉會導致整條虛擬電路失效
2. 路由器需維護虛擬電路狀態，增加負擔

## 參考資料

[Virtual Circuit in Computer Network - GeeksforGeeks](https://www.geeksforgeeks.org/computer-networks/virtual-circuit-in-computer-network/)

[Circuit Switching in Computer Network - GeeksforGeeks](https://www.geeksforgeeks.org/computer-networks/circuit-switching-in-computer-network/)

[Packet Switching and Delays in Computer Network - GeeksforGeeks](https://www.geeksforgeeks.org/computer-networks/packet-switching-and-delays-in-computer-network/)

[User Datagram Protocol - UDP - GeeksforGeeks](https://www.geeksforgeeks.org/computer-networks/user-datagram-protocol-udp/)

[【資通】CH2. 交換（Switching）](https://vocus.cc/article/680d8a2ffd89780001a4c3d9)

[電路交換 - 維基百科，自由的百科全書](https://zh.wikipedia.org/zh-tw/%E7%94%B5%E8%B7%AF%E4%BA%A4%E6%8D%A2)

[電路交換技術](https://www.tsnien.idv.tw/Network_WebBook/chap4/4-2%20%E9%9B%BB%E8%B7%AF%E4%BA%A4%E6%8F%9B%E6%8A%80%E8%A1%93.html)

[a cai 雜記: Circuit Switching V.S. Packet switching](https://acai-hsieh.blogspot.com/2013/07/circuit-switching-vs-packet-switching.html)

[中繼器、集線器、橋接器、交換器 原理與介紹 - NotFalse 技術客](https://notfalse.net/66/repeater-hub-bridge-switch)

[網際網路架構 - HackMD](https://hackmd.io/@DpuBXDwLSDCIE6cNJSjUlg/S1N1Mwqmp)

[数据报（datagram）网络与虚电路（virtual-circuit）网络是典型两类分组交换网络。_compare datagram network and virtual-circuit netwo-CSDN博客](https://blog.csdn.net/qq_38998213/article/details/123984691)