有没有人DIY的基于BSD / Linux的防火墙,可以处理千兆stream量,运行可靠多年? 有相当多的软件解决scheme,但有一个硬件基准来实现可靠的千兆位防火墙?
有人在开源防火墙或商业防火墙声称
“看一下Juniper SRX,你永远不会在戴尔上获得与pfSense相同的性能。”
他并不是说戴尔的pfSense甚至不能和480美元的SRX100相匹敌,对吧?
他可能指的是硬件和软件。
从上面查看
是的,某些时候所有的硬件防火墙都是软件,但是如果硬件正确,您可以重新编程硬件。 这通常是相当昂贵的操作,但是一旦硬件被重新编程,防火墙就可以线速运行。
在Linux中的性能
我们用GBit上行链路对我们的某个站点进行了DDOS攻击。 在正常情况下,我们完全能够以线速交付。 然而,攻击是一个简单的SYN-Flood,我们不能接受。
原因是只有一个接收队列的“糟糕的”卡。 这意味着Linux使用唯一的一个内核从卡上获取软件包。 这导致单核运行在100%的使用率下,处理所有软件包的速度太慢。 所以防火墙后面的服务器都很无聊,但是单个内核已经被刷新了(是的,我们有SYN-Flood保护function,但是因为在Linux甚至知道之前只有很多入站的软件包,所以我们不能接受)
一旦我们将硬件(只有网卡,而不是服务器中的其他任何东西)升级到具有更多接收队列的网卡,我们看到更多的内核被使用,这对我们的情况已经足够了。 硬件是(IIRC)16芯CPU睿,网卡上有8个队列。 突然之间,我们有8次的performance,这已经足够了。
话虽如此:
对于一个足够大的DDOS攻击,没有什么可以做的 – 我们只是幸运的,它不是更大,新的设置可以采取。
如果它意味着更好的掩护,我总是会select硬件防火墙:把技术规范放在一边,这只是风险pipe理的问题。 得到任何思科/瞻博networking/无论硬件和体面的支持合同,你将有人打电话谁必须解决这个问题或支付的损失,如果它不承诺。 当然,你需要为这样的事情得到预算,但是在某个时候,投资的钱可能只是预期收入的一小部分。 还有一个支持合同和其他人责怪是一个很好的掩护你后面的手段 🙂
编辑:如果在最后一段失踪。
我要提供一个服务器恐怖的反面,并扩大什么migabi说。 对于小到中等范围的设置,我真的很喜欢OpenBSD,不断发展的PF,CARP和朋友。 据我所知,FreeBSD(也就是pfSense)在获取最新的pf和CARP更新方面落后了。
诚然,你必须愿意做自己的testing,find体面的networking卡体面的系统,并意识到pf的局限性,但根据我的经验,所有的设置都有其局限性。 在硬件设备中启用一个特定的检查function可能会将吞吐量性能降低一半甚至更低。 你真的会在生产中部署一个商业解决scheme,而没有进行大量的testing来validation制造商的说法吗?
许多时候,你可以得到两个体面的故障转移盒,再加上三分之一的testing比你不得不支付一个商业替代。
最后,我并不乐意让他们正确地logging文件,弥补损失或修复产品中的错误,而只是花了一大笔钱来支持。 我现在感到特别的痛苦,没有源代码的痛苦不是我的事情。
你在这里回答你自己的问题。
是的,有可能build立一个高带宽的防火墙,可以提供多年的正常运行时间和高吞吐量,但是你不能仅仅使用垃圾硬件来获得最好的回报。
如果使用双PSU,SAS驱动器(或使用插在主板上的USB存储棒)得到HP DL360 G6(例如戴尔或IBM的类似规格),并将其放置在一个体面的UPS系统上并且容易清除Gigstream量(如果您想要授权,则板载NICS支持TOE),但是如果您使用带有realtek Nic和i3的家用主板,则可以从桌面的底部抽屉中获得,麻烦。
另外要知道体面的防火墙设备使用FPGA做了很多的事情,那就是线速逻辑,没有软件解决scheme能够达到这个效率,旋转2个四核至强将会有3年的成本! !
上述configuration是廉价的重新市场,如果你挂在这个防火墙的企业,你需要一个具有完整的现场保修的HP gen8(或equiv),并可能其中2个集群故障转移…
Welp,TIL Juniper的Junos基于FreeBSD,这就是他们的路由设备。 话虽如此,你可能会用杜松设备节省金钱和一点头痛,因为如果硬件失败,你可以得到它的支持。 但是,有些公司devise用于运行PFSense的设备,所有您需要知道的是您计划通过的大致stream量。
软件问题是值得商榷的,例如PFSense即使在企业环境中也有广泛的用途,所以它们是充满信息的论坛,您可以随时通过Serverfault.com进行PFSense帮助。
我有一些正在运行的主/从站,使用10 Gbit通过softare扼stream到2Gbit,现在需要1年半的时间。
他们是双CPU 6核Xeon与英特尔网卡。 我们当时select的英特尔网卡是重要的,但我忘记了确切的原因。 我知道这跟驱动程序有关,中断是在核心之间分配的。
我们也有要求路由不同的接口types。 在硬件防火墙中不能购买的东西,所以这是一个非常经济有效的解决scheme。
所以是的,这是非常可能的。 尽pipe使用服务器硬件。