Horizon Client 可以在远程会话期间监控网络质量,并在检测到由于高延迟而导致网络不稳定时显示通知消息。网络延迟基于 TCP 连接的往返时间 (Round-Trip Time, RTT),以及 BEAT 和 UDP 连接的 RTT、丢包率和 RTT 变化 (RTT Variation, RTTV)。
您可以使用 Horizon Client 设置或组策略对象 (GPO) 来控制这些通知消息的显示。您还可以配置 Horizon Client 用于确定不稳定网络的阈值参数。
使用“设置”窗口显示网络通知
您可以从“设置”窗口启用和禁用网络通知。
- 启动 Horizon Client。
- 单击菜单栏右上角的设置(齿轮图标),然后选择 VMware Blast。
- 配置网络不稳定时通知的显示。
- 要启用网络通知,请将禁止显示网络状态选项切换为“关”。默认情况下,此选项设置为“关”以允许显示通知。
- 要禁用网络通知,请将禁止显示网络状态选项切换为“开”。
使用客户端 GPO 显示网络通知
您还可以使用禁用显示网络状态 GPO 选项来启用和禁用网络通知。有关更多信息,请参阅使用组策略设置配置 Horizon Windows Client。
Horizon Client 如何确定网络质量
为确定网络连接的质量,Horizon Client 会将指定时间间隔内的网络条件与一对低阈值和高阈值进行比较,并计算 0% 到 100% 的质量评分。如果评分低于特定百分比,则网络将被视为高延迟且不稳定。
Horizon Client 根据使用的网络协议衡量以下网络条件。
协议 | 衡量的条件 |
---|---|
TCP |
|
BEAT 或 UDP |
|
然后,Horizon Client 使用以下规则计算网络质量评分:
TCP Connections Definitions: rtt = detected RTT value lowBound = RTT low threshold highBound = RTT high threshold score = overall network quality score Rules: If rtt >= highBound, then score = 0 (network is considered POOR) If rtt <= lowBound, then score = 100 (network is considered GOOD) If lowBound < rtt < highBound, then score = 100 * (rtt / (highBound - lowBound))
BEAT and UDP Connections Definitions: RTT = detected RTT value RTT_extreme = RTT extreme threshold RTT_lowBound = RTT low threshold RTT_highBound = RTT high threshold RTT_score = RTT quality score RTT_weight_percentage = weight of RTT quality score PkLoss = detected packet loss value PkLoss_extreme = packet loss extreme threshold PkLoss_lowBound = packet loss low threshold PkLoss_highBound = packet loss high threshold PkLoss_score = packet loss quality score PkLoss_weight_percentage = weight of packet loss quality score RTTV = detected RTT variation RTTV_lowBound = low RTTV threshold RTTV_highBound = high RTTV threshold RTTV_score = RTTV quality score RTTV_weight_percentage = weight of RTTV quality score score = overall network quality score Rules: If RTT > RTT_extreme, then score = 0 (network is automatically considered POOR, all other calculations are skipped) If RTT >= RTT_highBound, then RTT_score = 0 If RTT <= RTT_lowBound, then RTT_score = 100 If RTT_lowBound < RTT < RTT_highBound, then RTT_score = 100 * (rtt / (RTT_highBound - RTT_lowBound)) If PkLoss > PkLoss_extreme, then score = 0 (network is automatically considered POOR, all other calculations are skipped) If PkLoss >= PkLoss_highBound, then PkLoss_score = 0 If PkLoss <= PkLoss_lowBound, then PkLoss_score = 100 If PkLoss_lowBound < PkLoss < PkLoss_highBound, then PkLoss_score = 100 * (PkLoss / (PkLoss_highBound - PkLoss_lowBound)) If RTTV >= RTTV_highBound, then RTTV_score = 0 If RTTV <= RTTV_lowBound, then RTTV_score = 100 If RTTV_lowBound < RTTV < RTTV_highBound, then RTTV_score = 100 * (RTTV / (RTTV_highBound - RTTV_lowBound)) To calculate the overall score, take the weighted average of the three quality scores: score = RTT_score * RTT_weight_percentage / 100 + PkLoss_score * PkLoss_weight_percentage / 100 + RTTV_score * RTTV_weight_percentage / 100
然后,Horizon Client 使用以下规则确定网络稳定性:
Definitions: score = overall network quality score thresholdGood = minimum score indicating GOOD network stability thresholdPoor = high limit of score range indicating POOR network stability Rules: If score >= thresholdGood, the network is considered GOOD and no notification is displayed. If thresholdPoor < score < thresholdGood, the network is considered OK and no notification is displayed. If score <= thresholdPoor, the network is considered POOR and a notification is displayed.
配置网络质量的阈值参数
要自定义 Horizon Client 用于计算网络质量评分并确定网络稳定性的阈值参数,请在以下某个注册表文件中配置相应的项。
- HKEY_LOCAL_MACHINE\SOFTWARE\Policies\VMware, Inc.\VMware VDM\Client\vvc
- HKEY_LOCAL_MACHINE\SOFTWARE\VMware, Inc.\VMware VDM\Client\vvc
Horizon Client 将按所列顺序搜索注册表文件,并在找到具有已配置值的项时立即停止。
配置项
注: 所有密钥均为密钥类型 REG_SZ。
|
允许的值 | 默认值 | 说明 |
---|---|---|---|
NetworkStatsCheckEnabled | 0、1 | 1 | 指定是否启用网络数据处理以计算网络质量评分。
|
NetworkStatsCheckPeriodSec | 大于 2 的正整数 | 15 | 指定监控网络条件的时间间隔(以秒为单位)。 |
NetworkStatsQualityScoreTcpThresholdGood | 0 到 100 的数字 | 85 | 指定指示 TCP 网络质量良好所需的最低评分。 指定的值必须大于 NetworkStatsQualityScoreTcpThresholdPoor 值。 |
NetworkStatsQualityScoreTcpThresholdPoor | 0 到 100 的数字 | 40 | 指定指示 TCP 网络质量较差的评分范围上限。 指定的值必须小于 NetworkStatsQualityScoreTcpThresholdGood 值。 |
NetworkStatsQualityScoreBeatThresholdGood | 0 到 100 的数字 | 75 | 指定指示 BEAT 和 UDP 网络质量良好所需的最低评分。 指定的值必须大于 NetworkStatsQualityScoreBeatThresholdPoor 值。 |
NetworkStatsQualityScoreBeatThresholdPoor | 0 到 100 的数字 | 45 | 指定指示 BEAT 和 UDP 网络质量较差的评分范围上限。 指定的值必须小于 NetworkStatsQualityScoreBeatThresholdGood 值。 |
NetworkStatsTcpRttMSLow | 正整数 | 2 | 指定用于计算 TCP 网络质量评分的低 RTT 阈值(以毫秒为单位)。 指定的值必须小于 NetworkStatsTcpRttMSHigh 值。 |
NetworkStatsTcpRttMSHigh | 正整数 | 400 | 指定用于计算 TCP 网络质量评分的高 RTT 阈值(以毫秒为单位)。 指定的值必须大于 NetworkStatsTcpRttMSLow 值。 |
NetworkStatsTcpRttMSWeightPercent | 0 到 100 的百分比 | 100 | 指定用于计算 TCP 网络质量评分的 RTT 值的统计权重。
注: 由于 RTT 是当前用于确定 TCP 网络质量的唯一网络因素,因此此项必须设置为 100。
|
NetworkStatsBeatRttMSLow | 正整数 | 2 | 指定用于计算 BEAT 和 UDP 网络质量评分的低 RTT 阈值(以毫秒为单位)。 指定的值必须小于 NetworkStatsBeatRttMSHigh 值。 |
NetworkStatsBeatRttMSHigh | 正整数 | 400 | 指定用于计算 BEAT 和 UDP 网络质量评分的高 RTT 阈值(以毫秒为单位)。 指定的值必须大于 NetworkStatsBeatRttMSLow 值。 |
NetworkStatsBeatRttMSExtreme | 正整数 | 250 | 指定用于立即识别质量较差的 BEAT 和 UDP 网络的极端 RTT 阈值(以毫秒为单位)。 如果检测到的 RTT 大于极端阈值,则自动认定网络质量较差,且不会进行其他评分计算。 |
NetworkStatsBeatRttMSWeightPercent | 0 到 100 的百分比 | 34 | 指定用于计算 BEAT 和 UDP 网络质量评分的 RTT 值的统计权重。
注: NetworkStatsBeatRttMSWeightPercent、NetworkStatsBeatPkLossPercentWeightPercent 和 NetworkStatsBeatRttvMSWeightPercent 的组合值必须等于 100。
|
NetworkStatsBeatPkLossPercentLow | 0 到 100 的百分比 | 0.1 | 指定用于计算 BEAT 和 UDP 网络质量评分的低数据包丢失阈值。 指定的值必须小于 NetworkStatsBeatPkLossPercentHigh 值。 |
NetworkStatsBeatPkLossPercentHigh | 0 到 100 的百分比 | 15 | 指定用于计算 BEAT 和 UDP 网络质量评分的高数据包丢失阈值。 指定的值必须大于 NetworkStatsBeatPkLossPercentLow 值。 |
NetworkStatsBeatPkLossPercentExtreme | 0 到 100 的百分比 | 25 | 指定用于立即识别质量较差的 BEAT 和 UDP 网络的极端丢包率阈值。 如果检测到的丢包率大于极端阈值,则自动认定网络质量较差,且不会进行其他评分计算。 |
NetworkStatsBeatPkLossPercentWeightPercent | 0 到 100 的百分比 | 33 | 指定用于计算 BEAT 和 UDP 网络质量评分的丢包率值的统计权重。
注: NetworkStatsBeatRttMSWeightPercent、NetworkStatsBeatPkLossPercentWeightPercent 和 NetworkStatsBeatRttvMSWeightPercent 的组合值必须等于 100。
|
NetworkStatsBeatRttvMSLow | 正整数 | 1 | 指定用于计算 BEAT 和 UDP 网络质量评分的低 RTTV 阈值(以毫秒为单位)。 指定的值必须小于 NetworkStatsBeatRttvMSHigh 值。 |
NetworkStatsBeatRttvMSHigh | 正整数 | 30 | 指定用于计算 BEAT 和 UDP 网络质量评分的高 RTTV 阈值(以毫秒为单位)。 指定的值必须大于 NetworkStatsBeatRttvMSLow 值。 |
NetworkStatsBeatRttvMSWeightPercent | 0 到 100 的百分比 | 33 | 指定用于计算 BEAT 和 UDP 网络质量评分的 RTTV 值的统计权重。
注: NetworkStatsBeatRttMSWeightPercent、NetworkStatsBeatPkLossPercentWeightPercent 和 NetworkStatsBeatRttvMSWeightPercent 的组合值必须等于 100。
|