在计算机网络的分组交换(Packet Switching)技术中,存在两种基本的网络层架构设计思路:数据报网络(Datagram Network)与虚电路网络(Virtual Circuit Network)。虽然现代互联网(Internet)主要基于数据报模式(即 IP 协议),但在核心骨干网、电信级传输网络以及现代数据中心网络中,虚电路的设计思想依然占据着至关重要的地位。
本文将从原理机制、工作流程、与数据报的对比以及现代演进(如 MPLS)四个维度,深入剖析虚电路技术。
1. 虚电路的定义与核心思想
虚电路(Virtual Circuit, VC) 是一种面向连接(Connection-Oriented)的分组交换服务。它的核心思想是:在数据传输开始之前,必须在源主机和目的主机之间建立一条逻辑上的连接(即虚电路)。
这里的"虚"字非常关键,它用于区分传统的电话网络中的"电路交换"(Circuit Switching):
- 电路交换:在物理层通过频分复用(FDM)或时分复用(TDM)预留固定的物理带宽资源。
- 虚电路 :在链路层或网络层建立逻辑路径。分组依然采用 存储-转发(Store-and-Forward) 机制,但在转发时不需要为每个分组独立进行路由决策,而是沿着预先建立的路径传输。
2. 虚电路的工作机制
虚电路网络的工作过程严格遵循三个阶段:建立连接(Setup) 、数据传输(Data Transfer) 、连接释放(Teardown)。
2.1 虚电路标识符 (VCI)
在虚电路网络中,分组不需要携带完整的源 IP 地址和目的 IP 地址,而是携带一个简短的标识符,称为虚电路标识符(Virtual Circuit Identifier, VCI)。
关键科学特性 :VCI 具有链路本地性(Link-Local Scope) 。
这意味着 VCI 的数值仅在一段特定的链路上有效,而不是全局唯一的。当分组从一台交换机转发到下一台交换机时,其 VCI 通常会被修改。

虚电路标识符的链路本地性示意图
2.2 转发表与标签交换
虚电路交换机维护着一张转发表(Forwarding Table),也被称为 VC 表。与数据报网络中基于"目的地址"的最长前缀匹配不同,虚电路交换机基于"入接口 + 入 VCI"进行精确匹配。
转发表的每一项通常包含四个字段:
{Input Interface,Input VCI,Output Interface,Output VCI} \{ \text{Input Interface}, \text{Input VCI}, \text{Output Interface}, \text{Output VCI} \} {Input Interface,Input VCI,Output Interface,Output VCI}
转发逻辑如下:
- 分组到达交换机的输入接口 IinI_{in}Iin,携带 VCI 为 VinV_{in}Vin。
- 交换机查询转发表,找到匹配项 (Iin,Vin)(I_{in}, V_{in})(Iin,Vin)。
- 交换机将分组的 VCI 重写为表项中对应的 VoutV_{out}Vout。
- 将分组转发到输出接口 IoutI_{out}Iout。
这种机制被称为标签交换(Label Swapping)。
2.3 三个阶段的详细流程
-
建立连接 (Setup):
- 源主机发送一个"呼叫请求"(Call Request)分组。
- 该分组包含目的地址。网络中的交换机根据路由算法选择路径,并在沿途每台交换机的转发表中创建条目,分配未使用的 VCI。
- 资源预留:在此阶段,高级的虚电路网络可以预留带宽、缓冲区等资源,从而保证服务质量(QoS)。
-
数据传输 (Data Transfer):
- 所有数据分组仅携带 VCI。
- 分组严格按照建立的路径顺序到达,不会乱序。
- 路由器无需进行复杂的路由查找,只需进行简单的查表和替换操作,转发效率极高。
-
连接释放 (Teardown):
- 通信结束后,源主机发送"释放请求"。
- 沿途交换机删除对应的转发表条目,释放 VCI 和预留的资源。
3. 虚电路与数据报网络的科学对比
为了严谨地理解虚电路,必须将其与数据报(Datagram)模式进行对比:
| 特性 | 虚电路 (Virtual Circuit) | 数据报 (Datagram) |
|---|---|---|
| 连接方式 | 面向连接 (Connection-Oriented) | 无连接 (Connectionless) |
| 状态信息 | 交换机需维护每条连接的状态 (Stateful) | 交换机无连接状态 (Stateless) |
| 分组头部 | 开销小 (仅含 VCI) | 开销大 (含完整源/目地址) |
| 路由决策 | 仅在建立连接时进行一次 | 每个分组独立进行路由 |
| 分组顺序 | 保证按序到达 | 可能乱序,需上层重组 |
| 故障适应性 | 弱:若节点故障,经过该节点的虚电路全部中断 | 强:节点故障后,分组可自动绕行其他路径 |
| QoS 支持 | 易于实现 (可预留资源) | 较难实现 (尽力而为服务) |
深入分析 :
虚电路的致命弱点在于状态信息的维护。在核心网络中,如果有数百万条并发连接,交换机需要维护巨大的状态表,且一旦设备重启,所有经过的连接都会断开。这违背了互联网设计初期追求的"生存性"原则,因此 IP 协议选择了数据报模式。
4. 虚电路的现代演进与应用:从 ATM 到 MPLS
虽然纯粹的虚电路网络(如历史上的 X.25 和 ATM)在与 IP 的竞争中失去了通用网络层的主导地位,但虚电路的思想在现代核心网技术中得到了重生和升华。
4.1 历史背景:ATM (Asynchronous Transfer Mode)
在 20 世纪 90 年代,ATM 被视为下一代网络核心技术。它是一种典型的虚电路技术,使用固定的 53 字节信元(Cell)。ATM 试图将电信网的 QoS 优势与计算机网的灵活性结合,但因协议过于复杂(被称为"该死的复杂技术")且 IP 技术飞速发展而未能普及到终端。
4.2 现代应用:MPLS (Multiprotocol Label Switching)
MPLS 是虚电路思想在现代 TCP/IP 网络中的完美应用。
MPLS 位于第 2 层(链路层)和第 3 层(网络层)之间,通常被称为"2.5 层协议"。
- 标签即 VCI:MPLS 给 IP 分组加上一个 32 位的标签头(Label Header)。这个标签在功能上等同于虚电路中的 VCI。
- LSR 即虚电路交换机:MPLS 的路由器称为标签交换路由器(LSR),通过查找标签转发表(LFIB)进行转发,通过标签分发协议(LDP)或 RSVP-TE 来建立路径。
- 流量工程 (Traffic Engineering):IP 路由通常基于最短路径优先(SPF),这可能导致某些链路拥塞而其他链路空闲。MPLS 允许网络管理员显式地建立一条跨越网络的"虚电路"(称为 LSP,标签交换路径),强制流量走指定的路径,从而优化网络资源利用率。

MPLS 标签交换路径示意图
4.3 软件定义网络 (SDN) 中的流表
在现代 SDN 架构(如 OpenFlow)中,虽然不一定显式使用 VCI 术语,但其"流(Flow)"的概念与虚电路异曲同工。控制器下发流表项,交换机对匹配特定"流"的数据包执行统一动作。这也是一种逻辑上的连接建立与转发分离的思想。
5. 总结
虚电路不仅仅是一个历史名词,它代表了一种高效、可控的数据转发哲学。
- 核心机制:通过连接建立、资源预留和标签交换(VCI),实现高效转发。
- 科学权衡:以维护网络状态为代价,换取了更低的分组头部开销和更强的 QoS 保证能力。
- 技术演进 :虽然纯 IP 网络赢得了边缘接入,但在互联网的骨干核心,基于虚电路思想的 MPLS 和 Segment Routing 依然是支撑全球流量调度的基石。
对于专业学习者而言,理解虚电路不仅是为了了解 X.25 或 ATM 的历史,更是为了掌握 MPLS、VPN 以及现代数据中心流量调度背后的底层逻辑。