☰
普通网络 vs VLAN vs VXLAN:概念、报文、搭建与对比
2026/10/23 2:56:50 网站建设 项目流程

本文以“两台服务器 A1/A2 + 25G 网卡 + bond1 + VXLAN 单播”的测试组网为背景,系统梳理普通网络(无 VLAN、无 VXLAN)、VLAN、VXLAN三种网络模型的原理、报文结构、搭建命令和性能差异,并给出可直接落地的配置与排障步骤。


一、先给结论

模型一句话报文额外开销隔离规模典型场景
普通网络裸以太网帧直接转发0无隔离(一个广播域)直连测试、管理网、小网络
VLAN二层帧插 4 字节 802.1Q Tag+4 B4094企业接入层网段隔离
VXLAN二层帧封装进 UDP,跑在三层上+50 B(IPv4) / +70 B(IPv6)约 1600 万云/数据中心 Overlay

核心关系:VXLAN 不是替代普通网络,而是叠加在普通网络(underlay)之上的逻辑隧道;VLAN 可以出现在 underlay 物理链路上,与 VXLAN 分层共存。


二、三种网络模型是什么

2.1 普通网络(无 VLAN、无 VXLAN)

最朴素的二层网络。业务报文就是原始以太网帧,交换机按 MAC 表直接转发。

[以太网头 14B][IP头 20B][TCP/UDP头][业务数据]
  • 没有隔离概念,所有设备在一个广播域

  • 配置最简单,性能最好(无额外开销)

  • 规模一大,广播风暴、地址冲突问题突出

2.2 VLAN(802.1Q)

在以太网帧的源 MAC 之后插入4 字节 802.1Q Tag,用 12 位 VLAN ID 划分广播域。

[以太网头 14B][VLAN Tag 4B][IP头 20B][TCP/UDP头][业务数据]
  • 最多 4094 个 VLAN(0 和 4095 保留)

  • 仍受物理二层域限制,跨三层需要路由

  • 交换机端口分Access(单 VLAN、不打 Tag)和Trunk(多 VLAN、带 Tag)

2.3 VXLAN(Overlay)

把完整的二层以太网帧封装进 UDP 报文,在三层网络上传输。两端是VTEP(隧道端点),用 24 位VNI标识网络。

[外层Eth 14B][外层IP 20B][UDP 8B][VXLAN 8B][原始以太网帧(含内层IP/TCP)]
  • VNI 约 1600 万个,隔离能力远超 VLAN

  • 可跨三层路由,突破物理二层域边界

  • 封装开销大,对 MTU 敏感

  • 对端发现方式:单播(静态 remote)/ 组播 / 头端复制 / EVPN


三、报文结构逐层对比

以承载一个普通 IP 报文为例:

① 普通网络 ┌────────┬────────┬──────────┬──────────┐ │ Eth 14 │ IP 20 │ TCP/UDP │ Payload │ └────────┴────────┴──────────┴──────────┘ ② VLAN ┌────────┬──────────┬────────┬──────────┬──────────┐ │ Eth 14 │ VLAN 4 │ IP 20 │ TCP/UDP │ Payload │ └────────┴──────────┴────────┴──────────┴──────────┘ ③ VXLAN(无 VLAN) ┌────────┬────────┬────────┬────────┬─────────────────────────┐ │ Eth 14 │ IP 20 │ UDP 8 │VXLAN 8 │ 原始以太网帧(含内层IP/TCP) │ └────────┴────────┴────────┴────────┴─────────────────────────┘ 外层头(underlay) 内层(overlay 原始帧) ④ VXLAN + VLAN ┌────────┬──────────┬────────┬────────┬────────┬─────────────────────────┐ │ Eth 14 │ VLAN 4 │ IP 20 │ UDP 8 │VXLAN 8 │ 原始以太网帧 │ └────────┴──────────┴────────┴────────┴────────┴─────────────────────────┘

MTU 计算表(underlay 物理链路 MTU 建议值):

场景封装开销建议 MTU
普通网络01500
VLAN4 B1504+
VXLAN(IPv4)50 B≥1550
VXLAN(IPv6)70 B≥1570(建议1600)
VXLAN + VLAN(IPv4)54 B≥1560
VXLAN + VLAN(IPv6)74 B≥1600

⚠️ MTU 不调大,VXLAN 封装报文会分片,TCP 吞吐暴跌、UDP 丢包率飙升——这是 VXLAN 测试最常见的“性能杀手”。


四、搭建实操

以下以两台服务器A1 / A2、网口bond1、underlay 地址192.168.1.11/22、overlay 地址172.16.1.11/22为例。

4.1 普通网络(直连,无 VLAN 无 VXLAN)

服务器 A1:

ip addr add 192.168.1.11/24 dev bond1 ip link set bond1 up

服务器 A2:

ip addr add 192.168.1.22/24 dev bond1 ip link set bond1 up

验证:

ping 192.168.1.22 # A1 上执行

交换机(若接交换机):四个口配 Access 同 VLAN:

interface 25GE1/0/9 port link-type access port default vlan 10 undo shutdown

4.2 VLAN 网络

方式 A:Access(服务器不打 Tag,推荐基准测试)

交换机(四个口一致):

vlan 10 interface 25GE1/0/9 port link-type access port default vlan 10 undo shutdown

服务器:与 4.1 完全相同,underlay 地址直接配 bond1,服务器无感知 VLAN。

方式 B:Trunk + 服务器打 Tag

交换机(四个口一致):

vlan 10 interface 25GE1/0/9 port link-type trunk port trunk allow-pass vlan 10 port trunk pvid vlan 10 # 关键:PVID 必须是 10 undo shutdown

服务器 A1:

ip link add link bond1 name bond1.10 type vlan id 10 ip addr add 192.168.1.11/24 dev bond1.10 ip link set bond1.10 up

服务器 A2:

ip link add link bond1 name bond1.10 type vlan id 10 ip addr add 192.168.1.22/24 dev bond1.10 ip link set bond1.10 up

⚠️经典坑:Trunk 口pvid vlan 1+allow-pass vlan 10,服务器不打 Tag → 帧被打上 VLAN 1 但不在 allow-pass 列表 →被丢弃。必须让 PVID 与 allow-pass 的 VLAN 一致,或服务器侧打 Tag。


4.3 VXLAN 网络(单播模式)

VXLAN 单播= 用remote参数静态指定对端 VTEP 的 underlay IP,封装后的 UDP 报文一对一单播发出。不依赖组播/EVPN,点对点最简单。

服务器 A1:

# 1. 创建 VXLAN 接口:VNI 100,对端 underlay 192.168.1.22,出口 bond1

服务器 A2(remote

ip link add vxlan100 type vxlan id 100 remote 192.168.1.22 dev bond1 dstport 4789 ip link set vxlan100 up 2. 创建网桥 br0 ip link add br0 type bridge ip link set br0 up 3. vxlan100 和 bond1 桥接到 br0 ip link set vxlan100 master br0 ip link set bond1 master br0 4. overlay 地址配在 br0 ip addr add 172.16.1.11/24 dev br0

指向 A1,其余对称):

ip link add vxlan100 type vxlan id 100 remote 192.168.1.11 dev bond1 dstport 4789 ip link set vxlan100 up ip link add br0 type bridge ip link set br0 up ip link set vxlan100 master br0 ip link set bond1 master br0 ip addr add 172.16.1.22/24 dev br0

💡 顺序细节:ip link set bond1 master br0之后,underlay 地址192.168.1.x要配在bond1上(或 bond1 的 VLAN 子接口上),且 bond1 加入网桥后仍可保留 IP(Linux 桥允许成员口带 IP,但更推荐把 underlay 配在独立接口或 bond1 上并开启bridge vlan相关设置;测试环境直接配 bond1 即可)。

验证顺序:

# 1. 先确认 underlay 互通 ping 192.168.1.22 2. 再确认 overlay 互通(说明 VXLAN 隧道 OK) ping 172.16.1.22 3. 查看 VXLAN 接口详情 ip -d link show vxlan100 应看到 vxlan id 100 ... remote 192.168.1.22 ... dev bond1 ... dstport 4789

关键参数对照:

参数含义注意
id 100VNI两端必须一致
remote对端 VTEP 的underlayIP写对端 bond1 地址,不是br0 地址
dev bond1本机出口网口写本机聚合口,不是物理成员口
dstport 4789目的 UDP 端口两端一致;默认 8472/4789 视内核

五、三种模型对比总表

维度普通网络VLANVXLAN
作用层二层裸转发二层(插 Tag)Overlay,跑在三层
隔离标识无VLAN ID(12 位,4094 个)VNI(24 位,~1600 万)
报文开销0+4 B+50 B(IPv4) / +70 B(IPv6)
MTU 要求1500≥1504≥1550 / ≥1600
跨三层传二层帧❌❌✅ 核心能力
交换机配置Access 同 VLANAccess / Trunk 配置仅需普通转发 + MTU 调大
服务器配置配 IPAccess 无感 / Trunk 加 Tag创建 vxlan 接口 + 网桥 + overlay IP
配置复杂度★★★★★★★
排障难度低中高(分段排查)
25G 吞吐接近线速略降(<1%)降幅取决于封装/MTU/网桥,需实测
典型场景直连测试、管理网企业接入层隔离云/数据中心租户 Overlay

六、性能测试实践(结合 25G + bond1 + VXLAN 用例)

6.1 测试拓扑

A2 (client) A1 (server) iperf/netperf client iperf/netperf server │ │ br0 172.16.1.22/24 br0 172.16.1.11/24 ← overlay 测试地址 │ │ vxlan100 (VNI 100, remote 192.168.1.11) vxlan100 (VNI 100, remote 192.168.1.22) │ 封装为 UDP 4789 │ bond1 192.168.1.22/24 ←──── 25G ──────→ bond1 192.168.1.11/24 ← underlay │ │ [交换机 Access VLAN 10,端口 MTU ≥1600] [交换机 Access VLAN 10]

6.2 测试步骤(分层递进,便于定位)

  1. 基线:普通网络直跑

    • bond1 上直接配 underlay IP,跑 iperf,确认 25G 基础吞吐正常

  2. 加 VXLAN

    • 创建 vxlan100 + br0,overlay ping 通后跑 iperf,对比基线的性能损耗

  3. 换 IPv6

    • underlay/overlay 换 IPv6,重复 1~2。注意封装开销从 50B 变 70B,MTU 要求更高

  4. 多进程/多流

    • iperf-P n(n=1,2,4,8…);netperfUDP_STREAM改 server/client 进程数,记录丢包率 <1% 时的稳定吞吐

  5. (仅 100G)Bond4 双端口多流

    • 25G 卡跳过此步;若要做,交换机必须配 LACP Eth-Trunk

6.3 常用命令

(A1 server) iperf -s # TCP 吞吐(A2 client,n 进程数) iperf -c 172.16.1.11 -P 4 -t 60 # UDP 吞吐(A1 server) netperf # UDP 吞吐(A2 client) netperf -H 172.16.1.11 -l 60 -t UDP_STREAM

6.4 25G 卡特别说明

  • 方案中步骤 7(Bond4 双端口多流)仅针对 100G 网卡,25G 卡不执行。

  • 因此 25G 卡测试不需要交换机配 LACP,Bond1 主备模式直连或 Access 接入即可。

  • 若强行测 Bond4,则必须有支持 LACP 的交换机并配置 Eth-Trunk。


七、常见坑与排障清单

7.1 配置类

现象可能原因排查
underlay ping 不通交换机 VLAN/PVID 不匹配;MTU 不够display port vlan;确认 Access/Trunk 与服务器是否打 Tag 配套
Trunk 接不打 Tag 的服务器丢包PVID ≠ allow-pass VLANPVID 改成目标 VLAN,或服务器打 Tag
VXLAN 接口创建报错dev接口不存在或未 upip link show bond1;确认先 up 再创建
overlay ping 不通对端没配 vxlan;VNI/dstport 不一致;remote 写错两端ip -d link show vxlan100对照

7.2 性能类

现象可能原因处理
VXLAN 吞吐远低于基线MTU 未调大导致分片交换机端口 + 服务器 bond1 MTU ≥1560/1600
UDP 丢包率高流控未开、MTU 分片、CPU 软封装瓶颈开流控;调 MTU;确认网卡 VXLAN offload
IPv6 比 IPv4 慢封装开销 70B vs 50B,MTU 余量更紧MTU 提到 1600;属正常现象
多进程吞吐不线性单流受限于单核/单队列调 RSS/多队列;确认-P与队列匹配

7.3 排障口诀

先 underlay,再 overlay,最后业务。
underlay 不通查 VLAN/MTU/链路;overlay 不通查 VXLAN 参数;都通了再跑 iperf/netperf。


八、总结

  1. 普通网络是基线:裸帧转发、零开销、无隔离,适合直连测试和基准对比。

  2. VLAN是二层隔离:+4 字节 Tag、4094 个域,Access 对服务器无感、Trunk 需打 Tag,PVID 与 allow-pass 必须配套。

  3. VXLAN是 Overlay:+50/70 字节封装、~1600 万 VNI、可跨三层,单播模式用remote静态指定对端,交换机只当普通网络转发,MTU 必须调大。

  4. 三者不是替代关系,而是分层共存:VXLAN 跑在普通网络(underlay)之上,underlay 可带可不带 VLAN。

  5. 性能测试要分层递进:普通网络基线 → 加 VXLAN → 换 IPv6 → 多流,每层对比,才能准确定位损耗来源。


本文基于两台服务器 + 25G 网卡 + bond1 + VXLAN 单播的测试组网整理,交换机配置示例以华为 25GE 接口命令为参考,其他品牌命令语义一致、语法略有差异。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询