📡 第五章 防火墙功能与防范威胁的对策
📄 一句话概括

「硬件型」指的不是「装在铁壳里」,是「转发面用专用芯片」。 控制面往往还是通用 CPU,只有转发那一层被硬化了。

📝 本节和前面几节的关系

上一节讲软件型,这一节讲它的反面。 注意:这两者的界线不在「有没有机箱」,在「包是谁在搬」。

一、先分清两个面

控制面:跑路由协议、处理配置、写日志、做管理。 这一层永远是 CPU 在跑软件,再贵的设备也一样。

转发面:一个个包从口进来、查表、从口出去。这一层才是「硬件不硬件」的分界。

层面 谁在干活 性能受什么限


控制面 通用 CPU + 软件 核数与算法 转发面 专用芯片 芯片流水线深度

所以「硬件防火墙」这个词有点误导:它不是说整台机器都是硬件,是说「搬包这件事不经过 CPU」。 这也是为什么它能做到「规则条数和吞吐基本无关」——因为规则被编译进了查表电路,不是一条条比。

二、三种实现方式

ASIC:为转发专门流片的芯片。最快、最省电,但功能写死在硅里,新功能要等下一代芯片。

FPGA:可编程逻辑。速度接近 ASIC,功能可以重配,代价是单芯片成本高、开发周期长。

网络处理器(NP):多核 + 可编程微引擎。折中方案,升级靠软件,性能介于 CPU 与 ASIC 之间。

这三条路的取舍是同一个三角:性能、灵活性、上市时间——三者只能取二。 所以真实产品往往是「ASIC 做转发 + NP 做新功能 + CPU 做管理」。

三、什么时候值这个钱

按 D122 那一档估算:专用芯片设备 40 Gbps、300 W、6 万元,合每 Gbps 15 W、1500 元。 通用 CPU 设备 10 Gbps、350 W、2 万元,合每 Gbps 35 W、2000 元。

注意这两个数很接近(1500 与 2000),所以「贵」不是买它的理由。 真正拉开差距的是三件事: 每 Gbps 的功耗(差 2.3 倍)、时延稳定性、以及「规则加到几千条之后吞吐还不掉」。

所以判断标准很实在: 百兆到几百兆的小网络,软件型完全够用;上了几个 Gbps 又要开一堆策略,才轮到硬件型。 而一旦上了 10 Gbps 以上,基本没有别的选择。

还有一条容易被忽略:硬件型的「功能上限」是芯片决定的, 所以买之前要问「我三年后要的功能,这块芯片支不支持」。 软件型没有这个问题,因为它是升级出来的。

四、动手 Demo:专用芯片与通用 CPU,差在哪三处

这段按「40 Gbps/300 W/6 万元」与「10 Gbps/350 W/2 万元」两档,算每 Gbps 的功耗与价格, 看差距到底在哪一项上。

for name, gbps, watt, price in plans:
    P(u"  %s:%d Gbps,%d W,%d 元。" % (name, gbps, watt, price))
    P(u"    每 Gbps 功耗 %.1f W,每 Gbps 价格 %d 元。"
      % (watt * 1.0 / gbps, price // gbps))

实跑输出:

--------------------------------------------------------------------
专用芯片与通用 CPU,差在哪三处
--------------------------------------------------------------------
**硬件型防火墙的「硬件」指转发面用专用芯片**,**控制面往往还是通用 CPU。**

  项目       专用芯片(ASIC/FPGA)     通用 CPU(x86)
  -----------------------------------------------------------
  转发       流水线,固定功能          软件循环,功能灵活
  吞吐       高且与规则数无关          随规则数下降
  时延       微秒级且稳定              抖动大
  新功能     等新芯片                  升级软件即可

**算一笔「每 Gbps 的功耗与价格」**(按一档常见水平估):

  专用芯片设备:40 Gbps,300 W,60,000 元。
    每 Gbps 功耗 7.5 W,每 Gbps 价格 1,500 元。
  通用 CPU 设备:10 Gbps,350 W,20,000 元。
    每 Gbps 功耗 35.0 W,每 Gbps 价格 2,000 元。

**专用芯片每 Gbps 的功耗只有通用 CPU 的九分之一**,**这就是机房里「一台顶十台」的由来。**

这段最重要的结论是「每 Gbps 价格其实差不多」:1500 与 2000 只差三成,不是数量级。 所以「硬件型贵」这个印象,多半来自「大设备总价高」,而不是「单位性能贵」。

真正的差距在功耗:每 Gbps 15 W 与 35 W,一个机柜几十台设备,电费与散热是真金白银。 这也是为什么数据中心更在意「每 Gbps 多少瓦」而不是「多少 Gbps」。

最后那句「三年后要的功能,芯片支不支持」要记住:硬件型设备的生命周期里,功能是「冻结」的, 买它等于买了一份「未来三年的功能承诺」。

30 秒实验

  1. 查一台你熟悉的防火墙的吞吐指标,换算成每 Gbps 的价格。
  2. 看它的规格书里有没有写「开启某功能后吞吐下降多少」。
  3. 想一想:为什么厂家总是把「最大吞吐」标得很大?

常见误区

  1. 以为硬件型就是「整机都是硬件」。控制面还是 CPU 跑软件。
  2. 以为硬件型一定更贵。折算到每 Gbps,两者差得不多。
  3. 以为硬件型功能更强。它的功能被芯片冻结,反而不如软件型灵活。
自测三问(点开对答案) 1. 「硬件型防火墙」里的「硬件」指的是哪一部分? —— 转发面,即搬包、查表、转发这一层用专用芯片完成。 2. ASIC、FPGA、NP 三者的取舍是什么? —— 性能、灵活性、上市时间三者只能取二,所以真实产品往往三者混用。 3. 为什么硬件型设备的「最大吞吐」指标要打折看? —— 因为它通常是不开任何功能时的裸转发能力,开功能后会显著下降。

下一节:把四代技术摆在一起看,差别在哪一个维度上。

相关笔记