DirectAccess 容量规划
适用范围:Windows Server 2022、Windows Server 2019、Windows Server 2016
本文档是一份有关 Windows Server 2012 DirectAccess 服务器性能的报告。 测试的目的是为了确定使用高端和低端计算机硬件时的吞吐量。 高端和低端 CPU 性能取决于网络流量吞吐量和所用客户端的类型。 典型的 DirectAccess 部署(同时作为这些测试的基础)包括占数量 1/3 (30%) 的 IPHTTPS 客户端,以及占数量 2/3 (70%) 的 Teredo 客户端。 在某种程度上,Teredo 客户端的性能优于 IPHTTPS 客户端,原因是 Windows Server 2012 使用了接收方缩放 (RSS),从而可以利用所有的 CPU 核心。 在这些测试中,由于启用了 RSS,因此可禁用超线程。 此外,Windows Server 2012 中的 TCP/IP 支持 UDP 流量,使 Teredo 客户端能够在 CPU 之间平衡负载。
数据是从低端(4 核,4 G)服务器中,以及预期在高端(8 核,8 G)服务器上较常用的硬件中收集的。 下面是以大约 77 Mbps 运行的、装有 750 个客户端(562 个 Teredo,188 个 IPHTTPS)的低端硬件上的新式 Windows 8 任务管理器的屏幕截图。这是为了模拟无法提供智能卡凭据的用户。
这些测试结果表明,在 Windows 8 中,Teredo 的性能优于 IPHTTPS,但与 Windows 7 相比,Teredo 和 IPHTTPS 的带宽使用量都已提高。
高端硬件测试环境
下图显示了高端硬件性能测试环境的结果。 本文档详细说明了所有测试结果和分析。
配置 - 硬件 | 低端硬件(4GB RAM,4 核) | 高端硬件(8 GB,8 核) |
---|---|---|
双隧道 - PKI - 包括 DNS64/NAT64 |
750 个并发连接占用 50% 的 CPU 和 50% 的内存,Corpnet NIC 吞吐量为 75 Mbps。 扩展目标为 1000 个用户,占用 50% 的 CPU。 | 1500 个并发连接占用 50% 的 CPU 和 50% 的内存,Corpnet NIC 吞吐量为 150 Mbps。 |
测试环境
Perf Bench 拓扑
性能测试环境为 5 台计算机构成的试验台。 对于低端硬件测试,使用了一台 4 核 4G DirectAccess 服务器;对于高端硬件测试,使用了一台 8 核 16G DirectAccess 服务器。 对于低端和高端测试环境,使用了以下硬件:一台后端服务器(发送器)和两台客户端计算机(接收器)。 接收器在两台客户端计算机之间分割。 否则,接收器将受 CPU 的约束,并限制客户端数量和带宽。 接收端有一个模拟器用于模拟数百个客户端(模拟 HTTPS 或 Teredo 客户端)。 同时配置了 IPsec 和 DOSp。 已在 DirectAccess 服务器上启用 RSS。 RSS 队列大小设置为 8。 如果不配置 RSS,将有一个处理器维持在高利用率水平,而其他核心处于利用不足的状态。 另请注意,DirectAccess 服务器是关闭了超线程的 4 核计算机。 之所以关闭超线程,是因为 RSS 只能在物理核心上工作,并且使用超线程会生成有偏差的结果。 (这意味着,并非所有核心都承受了均衡的负载)。
低端硬件的测试结果:
测试是使用 1000 个和 750 个客户端执行的。 在所有方案中,都将 70% 的流量分割到了 Teredo,将 30% 的流量分割到了 IPHTTPS。 所有测试都为每个客户端使用 2 个 IPsec 隧道,通过 Nat64 传递 TCP 流量。 在所有测试中,内存利用率很低,CPU 利用率可接受。
各项测试结果:
以下部分描述了各项测试。 每个部分的标题突出显示了每项测试的关键要素,其后是结果的摘要描述,再后是显示详细结果数据的图表。
低端硬件性能:750 个客户端,70/30 分割比例,84.17 Mbps 吞吐量:
下列三项测试与低端硬件相关。 在以下测试运行中,有 750 个吞吐量为 84.17 Mbps 的客户端,流量分别分割到了 562 个 Teredo 和 188 个 IPHTTPS。 Teredo MTU 设置为 1472,已启用 Teredo 分流。 完成三项测试后,平均 CPU 利用率为 46.42%,平均内存利用率(以 4GB 总可用内存的提交字节百分比表示)为 25.95%。
方案 | CPUAvg(来自计数器) | Mbps(企业端) | Mbps(Internet 端) | 使用中的 QMSA | 使用中的 MMSA | 内存利用率(4G 系统) |
---|---|---|---|---|---|---|
低端硬件。 562 个 Teredo 客户端。 188 个 IPHTTPS 客户端。 | 47.7472542 | 84.3 | 119.13 | 1502.05 | 1502.1 | 26.27% |
低端硬件。 562 个 Teredo 客户端。 188 个 IPHTTPS 客户端。 | 46.3889778 | 84.146 | 118.73 | 1501.25 | 1501.2 | 25.90% |
低端硬件。 562 个 Teredo 客户端。 188 个 IPHTTPS 客户端。 | 45.113082 | 84.0494 | 118.43 | 1546.14 | 1546.1 | 25.68% |
1000 个客户端,70/30 分割比例,78 Mbps 吞吐量:
下列三项测试表明了低端硬件的性能。 在以下测试运行中,有 1000 个平均吞吐量大约为 78.64 Mbps 的客户端,流量分别分割到了 700 个 Teredo 和 300 个 IPHTTPS。 Teredo MTU 设置为 1472,已启用 Teredo 分流。 平均 CPU 利用率为大约 50.7%,平均内存利用率(以 4GB 总可用内存的提交字节百分比表示)为大约 28.7%。
方案 | CPUAvg(来自计数器) | Mbps(企业端) | Mbps(Internet 端) | 使用中的 QMSA | 使用中的 MMSA | 内存利用率(4G 系统) |
---|---|---|---|---|---|---|
低端硬件。 700 个 Teredo 客户端。 300 个 IPHTTPS 客户端。 | 51.28406247 | 78.6432 | 113.19 | 2002.42 | 1502.1 | 25.59% |
低端硬件。 700 个 Teredo 客户端。 300 个 IPHTTPS 客户端。 | 51.06993128 | 78.6402 | 113.22 | 2001.4 | 1501.2 | 30.87% |
低端硬件。 700 个 Teredo 客户端。 300 个 IPHTTPS 客户端。 | 49.75235617 | 78.6387 | 113.2 | 2002.6 | 1546.1 | 30.66% |
1000 个客户端,70/30 分割比例,109 Mbps 吞吐量:
在以下三项测试运行中,有 1000 个平均吞吐量大约为 109.2 Mbps 的客户端,流量分别分割到了 700 个 Teredo 和 300 个 IPHTTPS。 Teredo MTU 设置为 1472,已启用 Teredo 分流。 完成三项测试后,平均 CPU 利用率为大约 59.06%,平均内存利用率(以 4GB 总可用内存的提交字节百分比表示)为大约 27.34%。
方案 | CPUAvg(来自计数器) | Mbps(企业端) | Mbps(Internet 端) | 使用中的 QMSA | 使用中的 MMSA | 内存利用率(4G 系统) |
---|---|---|---|---|---|---|
低端硬件。 700 个 Teredo 客户端。 300 个 IPHTTPS 客户端。 | 59.81640675 | 108.305 | 153.14 | 2001.64 | 2001.6 | 24.38% |
低端硬件。 700 个 Teredo 客户端。 300 个 IPHTTPS 客户端。 | 59.46473798 | 110.969 | 157.53 | 2005.22 | 2005.2 | 28.72% |
低端硬件。 700 个 Teredo 客户端。 300 个 IPHTTPS 客户端。 | 57.89089768 | 108.305 | 153.14 | 1999.53 | 2018.3 | 24.38% |
高端硬件的测试结果:
测试是使用 1500 个客户端执行的。 将 70% 的流量分割到了 Teredo,将 30% 的流量分割到了 IPHTTPS。 所有测试都为每个客户端使用 2 个 IPsec 隧道,通过 Nat64 传递 TCP 流量。 在所有测试中,内存利用率很低,CPU 利用率可接受。
各项测试结果:
以下部分描述了各项测试。 每个部分的标题突出显示了每项测试的关键要素,其后是结果的摘要描述,再后是包含详细结果数据的图表。
1500 个客户端,70/30 分割比例,153.2 Mbps 吞吐量
下列五项测试与高端硬件相关。 在以下测试运行中,有 1500 个平均吞吐量为 153.2 Mbps 的客户端,流量分别分割到了 1050 个 Teredo 和 450 个 IPHTTPS。 完成五项测试后,平均 CPU 利用率为 50.68%,平均内存利用率(以 8GB 总可用内存的提交字节百分比表示)为 22.25%。
方案 | CPUAvg(来自计数器) | Mbps(企业端) | Mbps(Internet 端) | 使用中的 QMSA | 使用中的 MMSA | 内存利用率(4G 系统) |
---|---|---|---|---|---|---|
高端硬件。 1050 个 Teredo 客户端。 450 个 IPHTTPS 客户端。 | 51.712437 | 157.029 | 216.29 | 3000.31 | 3046 | 21.58% |
高端硬件。 1050 个 Teredo 客户端。 450 个 IPHTTPS 客户端。 | 48.86020205 | 151.012 | 206.53 | 3002.86 | 3045.3 | 21.15% |
高端硬件。 1050 个 Teredo 客户端。 450 个 IPHTTPS 客户端。 | 52.23979519 | 155.511 | 213.45 | 3001.15 | 3002.9 | 22.90% |
高端硬件。 1050 个 Teredo 客户端。 450 个 IPHTTPS 客户端。 | 51.26269767 | 155.09 | 212.92 | 3000.74 | 3002.4 | 22.91% |
高端硬件。 1050 个 Teredo 客户端。 450 个 IPHTTPS 客户端。 | 50.15751307 | 154.772 | 211.92 | 3000.9 | 3002.1 | 22.93% |
高端硬件。 1050 个 Teredo 客户端。 450 个 IPHTTPS 客户端。 | 49.83665607 | 145.994 | 201.92 | 3000.51 | 3006 | 22.03% |