Horizon Client 可以在遠端工作階段期間監控網路品質,並在偵測到由於高延遲而導致網路不穩定時顯示通知訊息。網路延遲是依 TCP 連線的來回行程時間 (RTT),以及 BEAT 和 UDP 連線的 RTT、封包遺失和 RTT 變化 (RTTV) 來衡量。

您可以使用 Horizon Client 設定或群組原則物件 (GPO) 來控制這些通知訊息的顯示。您也可以設定 Horizon Client 用來確定不穩定網路的臨界值參數。

使用 [設定] 視窗顯示網路通知

您可以從 [設定] 視窗開啟或關閉網路通知。

  1. 啟動 Horizon Client
  2. 按一下功能表列右上角的設定 (齒輪圖示),然後選取 VMware Blast

    VMware Blast 設定包含用來顯示網路通知的控制項
  3. 設定網路不穩定時通知的顯示。
    • 若要關閉網路通知,請將停用網路狀態顯示選項切換為關閉。依預設,此選項設定為關閉以允許顯示通知。
    • 若要關閉網路通知,請將停用網路狀態顯示選項切換為開啟。

使用用戶端 GPO 顯示網路通知

您還可以使用停用網路狀態顯示 GPO 選項來開啟或關閉網路通知。如需詳細資訊,請參閱使用群組原則設定來設定 Horizon Client

Horizon Client 判定網路品質的方式

為判定網路連線的品質,Horizon Client 會將指定時間間隔內的網路條件與一對低臨界值和高臨界值進行比較,並計算從 0% 到 100% 的品質分數。如果分數低於特定百分比,則會將網路視為高延遲且不穩定。

Horizon Client 根據使用的網路通訊協定來衡量以下網路條件。

表 1. Horizon Client 衡量的網路因素
通訊協定 衡量的條件
TCP
  • RTT
BEAT 或 UDP
  • RTT
  • 封包遺失
  • RTT 變化 (也稱為 RTTV 或抖動)

然後,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 用來計算網路品質分數並判定網路穩定性的臨界值參數,請在以下某個登錄檔中設定對應的機碼。

  1. HKEY_LOCAL_MACHINE\SOFTWARE\Policies\VMware, Inc.\VMware VDM\Client\vvc
  2. HKEY_LOCAL_MACHINE\SOFTWARE\VMware, Inc.\VMware VDM\Client\vvc

Horizon Client 將按所列順序搜尋登錄檔,並在找到具有已設定值的機碼時立即停止。

備註: 在變更這些組態機碼的預設值時,請小心。預設臨界值是透過完整的內部測試確定的,旨在為一般網路環境產生合理的結果。
表 2. 網路品質的組態機碼

組態機碼

備註: 所有機碼均為機碼類型 REG_SZ。
允許的值 預設值 說明
NetworkStatsCheckEnabled 0、1 1

指定是否啟用網路資料的處理,以計算網路品質分數。

  • 指定 1 將啟用網路資料處理並計算網路品質分數。
  • 指定 0 將關閉網路資料的處理。Horizon Client 將不會監控網路品質或計算網路品質分數。
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。