Horizon Client는 원격 세션 도중 네트워크 품질을 모니터링하고 높은 지연 시간으로 인해 네트워크가 불안정해지면 알림 메시지를 표시할 수 있습니다. 네트워크 지연 시간은 TCP 연결에 대한 RTT(왕복 시간)와 BEAT 및 UDP 연결에 대한 RTT, 패킷 손실 및 RTTV(RTT 변형)를 기준으로 합니다.

Horizon Client 기본 설정을 사용하여 이러한 알림 메시지의 표시를 제어할 수 있습니다. 불안정한 네트워크를 식별하기 위해 Horizon Client에서 사용하는 임계값 매개 변수를 구성할 수도 있습니다.

네트워크 알림 표시 구성

VMware Blast 메뉴 항목을 사용하여 네트워크 알림 메시지의 표시를 제어할 수 있습니다.

  1. Horizon Client를 시작합니다.
  2. 메뉴 표시줄에서 VMware Horizon Client > 기본 설정을 선택하고 VMware Blast를 클릭합니다.
  3. 네트워크가 불안정할 때 알림 표시를 구성합니다.
    • 네트워크 알림을 켜려면 네트워크 상태 표시 사용 안 함 옵션을 선택 취소합니다. 기본적으로 이 옵션은 알림 표시를 허용하도록 선택 취소되어 있습니다.
    • 네트워크 알림을 해제하려면 네트워크 상태 표시 사용 안 함 옵션을 선택합니다.

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. 전역 설정: /Applications/VMware Horizon Client.app/Contents/Resources/VMware RemoteMKS.app/Contents/MacOS/vmware-remotemks/Contents/Library/settings
  2. 사용자 기본 설정: /Users/<user>/Library/Preferences/VMware Horizon View/preferences
  3. 사용자 기본값: /Users/<user>/Library/Preferences/VMware Horizon View/config
  4. 호스트 기본값: /Library/Application Support/VMware Horizon View/config
  5. 사이트 기본값: /Applications/VMware Horizon Client.app/Contents/Resources/VMware RemoteMKS.app/Contents/MacOS/vmware-remotemks/Contents/Library/config

Horizon Client는 나열된 순서대로 구성 파일을 검색하고 구성된 값이 있는 키를 찾는 즉시 중지합니다.

참고: 이러한 구성 키의 기본값을 변경할 경우 주의해야 합니다. 기본 임계값은 광범위한 내부 테스트를 통해 결정되었으며 일반적인 네트워크 환경에 적합한 결과를 제공하도록 설계되었습니다.
표 2. 네트워크 품질을 위한 구성 키

구성 키

허용되는 값 기본값 설명
vvc.NetworkStatsCheckEnabled 0, 1 1

네트워크 데이터 처리를 사용하도록 설정하여 네트워크 품질 점수를 계산할지 여부를 지정합니다.

  • 네트워크 데이터 처리를 사용하도록 설정하고 네트워크 품질 점수를 계산하려면 1을 지정합니다.
  • 네트워크 데이터 처리를 해제하려면 0을 지정합니다. Horizon Client는 네트워크 품질을 모니터링하거나 네트워크 품질 점수를 계산하지 않습니다.
vvc.NetworkStatsCheckPeriodSec 2보다 큰 양의 정수 15 네트워크 상태가 모니터링되는 시간 간격(초)을 지정합니다.
vvc.NetworkStatsQualityScoreTcpThresholdGood 0에서 100까지의 숫자 85

TCP 네트워크에 대해 양호 품질을 나타내는 데 필요한 최소 점수를 지정합니다.

지정한 값은 vvc.NetworkStatsQualityScoreTcpThresholdPoor 값보다 커야 합니다.

vvc.NetworkStatsQualityScoreTcpThresholdPoor 0에서 100까지의 숫자 40

TCP 네트워크에 대해 불량 품질을 나타내는 점수 범위의 상한을 지정합니다.

지정한 값은 vvc.NetworkStatsQualityScoreTcpThresholdGood 값보다 작아야 합니다.

vvc.NetworkStatsQualityScoreBeatThresholdGood 0에서 100까지의 숫자 75

BEAT 및 UDP 네트워크에 대해 양호 품질을 나타내는 데 필요한 최소 점수를 지정합니다.

지정한 값은 vvc.NetworkStatsQualityScoreBeatThresholdPoor 값보다 커야 합니다.

vvc.NetworkStatsQualityScoreBeatThresholdPoor 0에서 100까지의 숫자 45

BEAT 및 UDP 네트워크에 대해 불량 품질을 나타내는 점수 범위의 상한을 지정합니다.

지정한 값은 vvc.NetworkStatsQualityScoreBeatThresholdGood 값보다 작아야 합니다.

vvc.NetworkStatsTcpRttMSLow 양의 정수 2

TCP 네트워크의 품질 점수를 계산하는 데 사용되는 낮은 RTT 임계값(밀리초)을 지정합니다.

지정한 값은 vvc.NetworkStatsTcpRttMSHigh 값보다 작아야 합니다.

vvc.NetworkStatsTcpRttMSHigh 양의 정수 400

TCP 네트워크의 품질 점수를 계산하는 데 사용되는 높은 RTT 임계값(밀리초)을 지정합니다.

지정한 값은 vvc.NetworkStatsTcpRttMSLow 값보다 커야 합니다.

vvc.NetworkStatsTcpRttMSWeightPercent 0에서 100까지의 백분율 100

TCP 네트워크의 품질 점수를 계산하는 데 사용되는 RTT 값의 통계 가중치를 지정합니다.

참고: RTT는 현재 TCP 네트워크의 품질을 결정하는 데 사용되는 유일한 네트워크 계수이므로 이 키를 100으로 설정해야 합니다.
vvc.NetworkStatsBeatRttMSLow 양의 정수 2

BEAT 및 UDP 네트워크의 품질 점수를 계산하는 데 사용되는 낮은 RTT 임계값(밀리초)을 지정합니다.

지정한 값은 vvc.NetworkStatsBeatRttMSHigh 값보다 작아야 합니다.

vvc.NetworkStatsBeatRttMSHigh 양의 정수 400

BEAT 및 UDP 네트워크의 품질 점수를 계산하는 데 사용되는 높은 RTT 임계값(밀리초)을 지정합니다.

지정한 값은 vvc.NetworkStatsBeatRttMSLow 값보다 커야 합니다.

vvc.NetworkStatsBeatRttMSExtreme 양의 정수 250

불량 품질 BEAT 및 UDP 네트워크를 즉시 식별하는 데 사용되는 극한 RTT 임계값(밀리초)을 지정합니다.

감지된 RTT가 극한 임계값보다 크면 네트워크가 자동으로 불량으로 간주되고 다른 채점 계산이 수행되지 않습니다.

vvc.NetworkStatsBeatRttMSWeightPercent 0에서 100까지의 백분율 34

BEAT 및 UDP 네트워크의 품질 점수를 계산하는 데 사용되는 RTT 값의 통계 가중치를 지정합니다.

참고: vvc.NetworkStatsBeatRttMSWeightPercent, vvc.NetworkStatsBeatPkLossPercentWeightPercent 및 vvc.NetworkStatsBeatRttvMSWeightPercent를 합한 값은 100이어야 합니다.
vvc.NetworkStatsBeatPkLossPercentLow 0에서 100까지의 백분율 0.1

BEAT 및 UDP 네트워크의 품질 점수를 계산하는 데 사용되는 낮은 패킷 손실 임계값을 지정합니다.

지정한 값은 vvc.NetworkStatsBeatPkLossPercentHigh 값보다 작아야 합니다.

vvc.NetworkStatsBeatPkLossPercentHigh 0에서 100까지의 백분율 15

BEAT 및 UDP 네트워크의 품질 점수를 계산하는 데 사용되는 높은 패킷 손실 임계값을 지정합니다.

지정한 값은 vvc.NetworkStatsBeatPkLossPercentLow 값보다 커야 합니다.

vvc.NetworkStatsBeatPkLossPercentExtreme 0에서 100까지의 백분율 25

불량 품질 BEAT 및 UDP 네트워크를 즉시 식별하는 데 사용되는 극한 패킷 손실 임계값을 지정합니다.

감지된 패킷 손실이 극한 임계값보다 크면 네트워크가 자동으로 불량으로 간주되고 다른 채점 계산이 수행되지 않습니다.

vvc.NetworkStatsBeatPkLossPercentWeightPercent 0에서 100까지의 백분율 33

BEAT 및 UDP 네트워크의 품질 점수를 계산하는 데 사용되는 패키지 손실 값의 통계 가중치를 지정합니다.

참고: vvc.NetworkStatsBeatRttMSWeightPercent, vvc.NetworkStatsBeatPkLossPercentWeightPercent 및 vvc.NetworkStatsBeatRttvMSWeightPercent를 합한 값은 100이어야 합니다.
vvc.NetworkStatsBeatRttvMSLow 양의 정수 1

BEAT 및 UDP 네트워크의 품질 점수를 계산하는 데 사용되는 낮은 RTTV 임계값(밀리초)을 지정합니다.

지정한 값은 vvc.NetworkStatsBeatRttvMSHigh 값보다 작아야 합니다.

vvc.NetworkStatsBeatRttvMSHigh 양의 정수 30

BEAT 및 UDP 네트워크의 품질 점수를 계산하는 데 사용되는 높은 RTTV 임계값(밀리초)을 지정합니다.

지정한 값은 vvc.NetworkStatsBeatRttvMSLow 값보다 커야 합니다.

vvc.NetworkStatsBeatRttvMSWeightPercent 0에서 100까지의 백분율 33

BEAT 및 UDP 네트워크의 품질 점수를 계산하는 데 사용되는 RTTV 값의 통계 가중치를 지정합니다.

참고: vvc.NetworkStatsBeatRttMSWeightPercent, vvc.NetworkStatsBeatPkLossPercentWeightPercent 및 vvc.NetworkStatsBeatRttvMSWeightPercent를 합한 값은 100이어야 합니다.