不是试图创建一个“圣战”线程,而是我试图就是否将 Linux 或 Windows 用于网络应用程序做出合理的决定。为此,我想更好地了解 Windows XP 主机和 Linux 主机的网络性能,并使用适当的指标对两者进行良好比较。
我需要做什么(或必须)来进行这种性能比较?假设机器的硬件规格相同,并且在任何一台机器上都没有运行不必要的应用程序或服务。
不是试图创建一个“圣战”线程,而是我试图就是否将 Linux 或 Windows 用于网络应用程序做出合理的决定。为此,我想更好地了解 Windows XP 主机和 Linux 主机的网络性能,并使用适当的指标对两者进行良好比较。
我需要做什么(或必须)来进行这种性能比较?假设机器的硬件规格相同,并且在任何一台机器上都没有运行不必要的应用程序或服务。
这取决于您正在进行的网络活动的类型。
我将使用您的用户将执行的典型任务设置测试,并使用秒表查看每个任务执行多长时间。
当然还有其他的方法,比如复制一个大文件并定时,但如果用户不复制大文件,也没关系。
也就是说,我怀疑性能将不取决于平台的网络功能,而是取决于应用程序。例如,如果特定应用程序的 Windows 版本更健谈或优化程度较低,它可能看起来比 Linux 版本慢。
一般来说,我会选择应用程序供应商最鼓励的平台。有一些线索,例如在一个或另一个平台上的更新速度,或者您可以简单地致电技术支持(如果他们有的话)或发布该应用程序的论坛消息,询问该应用程序的主要平台是什么。
iperf是测试最大带宽的好工具。它不使用磁盘,因此您将真正获得操作系统/硬件能够在最佳状态下提供的功能。
术语“网络性能”对不同的人有不同的含义。正如 AdamB 所说,这取决于你想做什么。至少可以说,测试在某些方面是一个模糊的概念有点困难。就操作系统的选择而言,我建议出于网络性能以外的原因进行此操作,因为在该领域,任何操作系统的性能都不太可能比其他操作系统差得多。
示例:运行 Web 服务器?如果它是 Apache,我建议在 Linux 上运行它,因为 Windows 版本的开发总是有点落后,而且并不总是运行得很好。当然,如果您想运行 IIS,则别无选择,它必须是 Windows。
文件服务器?基于客户的选择。例如,使用 Active Directory 身份验证在 Linux 机器上共享 Samba 仍然不够完美。从 Windows 到 Windows、从 Linux 到 Linux 或从 Mac 到 Mac 都是有意义的。
我会说使用 iperf 或 ttcp。
我会在您的机器之前进行测试,因此您不会干扰该工具的性能。大多数防火墙设备都会为您测量带宽,这样您的测量就不会依赖于操作系统。
例如,我使用 Zenoss 监控办公室防火墙上的 WAN 流量。在家里,我在 WRT54G 上安装了番茄,它有一个带宽图。
但是,我怀疑您的网络性能将更多地取决于您的应用程序而不是您的操作系统。
我在 Mac OS X、Windows、Linux 和 FreeBSD 上看到了饱和的千兆以太网链路。他们都很有能力。
我认为网络性能不太可能成为您可能正在做的大多数事情的瓶颈,您应该使用其他标准(熟悉度、支持、成本)来选择您的操作系统。