10 networking linux performance bgp
我正在构建一个服务器,作为 ISP 中 100mbps 上行链路的 BGP 边界路由器。
我需要这些功能:
1) 双栈 BGP 对等/路由(至少 100Mbps,也许更多)。2) 潜在的完整互联网 BGP 馈送。3) 一些基本的 ACL 功能。
硬件是L3426/8G ram。网卡将是板载双端口 Broadcom 5716。
我以前广泛使用 Linux,它似乎能够处理 100mbps,但我听说 FreeBSD 在网络方面更快。我应该使用哪一种?我们是否有一些性能基准数据?
干杯。
Jon*_*oss 11
多年来,我们已经为关键基础设施做到了这一点。我们通过 Quagga 获取三个完整的上游 BGP 馈送bgpd,它使用高达 658MB 的 RAM 来运行整个系统。为此,根据我们的经验,Debian 比其他操作系统更可靠(并且它也需要更少的安全更新,其安装占用空间最小,导致重新启动的次数比我们尝试过的其他两个操作系统要少得多)。我们使用Ksplice,因此我们只针对关键的软件包更新进行引导。完全不用担心与您的 ISP 上的其他供应商的兼容性... RIPE RIR 使用 Quagga!
令人惊讶的是,硬件并不是那么重要,它是关于 NIC 的。快速 CPU 基本上只是意味着如果您刷新会话(假设您有 GB 的 RAM 并且它们加载到内存中),则前缀加载速度更快,因此入门级四核严重超标。我们花了很长时间尝试不同的 NIC,根据我们的经验,最好的是使用igb驱动程序的 Intel 卡(我们使用:82576,ET 双端口服务器适配器,大约 100 英镑/NIC)和e1000第二个。有一些考虑因素,例如您的入口和出口 NIC 如何与主板通信,但对于低于 250Mbps 的速度,如果您使用这些 NIC,您可能不会注意到。我们已经使用这种架构击退了复杂的 UDP DDoS 攻击(它使用了路由器难以处理的最小的 UDP 数据包)。请记住,您最关心的是能够处理最多数量的数据包,而不一定是吞吐量(以 Mbps 为单位)。我们用很少的钱指定了一个千兆多宿主路由器,它可以处理标准 Internet 大小的数据包,即正常操作,高达 850Mbps!
我从 Cisco 开始(它bgpd的配置几乎完全相同,因此如果您有使用 Cisco 套件的经验,那将是一个非常快速的过渡)但是因为 Linux 具有很强的延展性(例如,能够向您的路由器添加一些低资源脚本帮助进行报告和管理)恕我直言,对于这种类型的设置,它非常强大(并且被低估)。如果您仍然有任何疑问或需要进一步的帮助,那么阅读一些Nanog 邮件列表档案不会出错。
这应该可以让您在 Debian 上快速入门:Easy Quagga 教程
它们都是有能力的平台。在良好的服务器级硬件上运行可靠的东西,如 Debian 或 Centos。确保您使用英特尔服务器 NIC 指定服务器,它们在稳定性方面比 Broadcomm 好得多。
至于 BSD 与 Linux,这很容易.. 选择你最能胜任的那个。