我正在尝试在各种条件下对 ASA 进行基准测试,但让我感到困惑的是,我的基准似乎很奇怪。我正尝试将 ASA 加载到满负荷状态。请参阅随附的拓扑图:
参赛选手如下:
- C1,Linux 客户端运行 300 GB 文件的连续下载,并从运行 HTTPD 的 Linux 服务器 S1 循环下载。
- Linux 客户端 C2 也运行 300 GB 文件的连续下载,并从运行 HTTPD 的 Linux 服务器 S2 循环下载。
- C3 运行 AB 以尝试生成更多连接。
ab -n100 -c99999999 http://10.0.0.57/
这是到 S3(运行 HTTPD 的 Linux 服务器)的连接。 - 运行 8.4 的 Cisco ASA 5520。
我觉得奇怪的是,即使所有这些都在进行,我看到的最大值也只是 500 Mbps 以上(通过 NLOAD 在两个 VM 盒物理接口上观察到)。这是正常的吗?一切都是千兆。一些问题:
- 是不是我的蹩脚 Linux 桌面交换机造成了瓶颈?
- NATing 真的会严重影响性能吗?还是有其他原因?调度进程的 CPU 负载为 30%。
- 这是否可能是磁盘问题,因为服务器只是尽可能快地读取文件?
- 我觉得奇怪的是,C1 无法全速传输,直到我让它从 S1 一次下载 3 份文件(此时约为 250 Mbps)。为什么从 S1 并行下载 3 次比单次下载更快?S1 难道不应该尽可能快地发送吗?
有没有更好的方法来加载测试网络设备?下载单个大文件似乎不太现实。我正在尝试模拟一个繁忙的网络来执行 Web 操作并将 ASA 加载到最大容量。
答案1
我建议采用以下方法来模拟网络流量。
隔离段可以帮助识别瓶颈,例如非管理型交换机。
启用日志记录或 IPSec 加密的 ACL 可能会降低吞吐量。
单次下载和并行下载之间的传输行为差异可能是网络驱动程序行为而不是网络中可用带宽的结果。