Skip to main content
이 항목을 통해 GDK 타이틀에서 서비스 품질(QoS)을 측정하는 방법을 이해할 수 있습니다. 멀티플레이어 타이틀의 경우 QoS 지연 시간을 측정하는 것이 중요합니다. P2P 연결의 경우 QoS 지연 시간 측정을 사용하여 다른 클라이언트와의 게임 플레이가 가능한지 판단할 수 있습니다. 클라이언트/서버 연결의 경우 QoS 지연 시간 측정을 사용하여 게임 플레이를 위한 최적의 데이터 센터 위치를 결정할 수 있습니다. XBOX One ERA 타이틀의 경우 보안 소켓에 지연 시간 및 대역폭 측정을 위한 QoS API가 포함되어 있었습니다. GDK 타이틀은 다음 섹션에 설명된 대로 동일한 기능을 달성할 수 있습니다.

P2P(피어 투 피어)

P2P 통신을 사용하는 타이틀은 타이틀 코드, 게임 엔진 또는 미들웨어에서 사용자 지정 QoS 구현을 사용할 수 있습니다. 모든 구현에 대해 타이틀은 다음 지침이 충족되도록 해야 합니다.
  • 보안 통신 모범 사례. 타이틀은 콘텐츠에 관계없이 모든 네트워크 통신을 보호하는 모범 사례를 따라야 합니다. 이는 P2P UDP QoS 프로브에도 적용되어야 합니다. 이러한 프로브는 보안 프로토콜 연결을 통해 수행되어야 합니다. 보안 프로토콜 모범 사례에 대한 자세한 내용은 Microsoft Game Development Kit 타이틀을 위한 보안 게임 메시 통신(NDA 항목)을 참조하세요.
  • UDP(User Datagram Protocol) 패킷 크기. UDP 통신의 경우 타이틀은 플랫폼 최대 MTU(Maximum Transmission Unit)를 초과하지 않도록 해야 합니다. XBOX 콘솔 및 Windows 10의 Microsoft Game Development Kit(GDK) 타이틀에서 패킷당 기본 최대 UDP 페이로드는 1,384바이트입니다. MTU를 초과하는 패킷은 조각화될 가능성이 있으며, 이로 인해 추가 지연 시간 또는 패킷 손실이 발생할 수 있습니다.
  • 일치하는 프로토콜 및 통신 채널. P2P QoS는 항상 게임 플레이 트래픽에 사용되는 동일한 통신 채널 및 프로토콜을 통해 수행되어야 합니다. 이는 모든 측정이 지연 및 대역폭을 포함한 게임 플레이 트래픽의 동작을 반영하도록 보장합니다.
  • 세션 검색 QoS 동작. 세션 검색 목록의 일부로 QoS를 사용하는 타이틀은 우발적으로 인기 있는 호스트에 QoS 플러딩을 일으킬 수 있습니다. 이는 세션 검색 목록이 모든 사용자에게 동일하며 자동 QoS 테스트를 포함할 때 발생합니다. 이 시나리오에서 세션 검색 목록을 보는 모든 사용자가 목록 상단의 호스트에 대해 QoS 테스트를 수행합니다. 이로 인해 부하가 심해지고 잠재적으로 호스트나 서버에 플러딩이 발생할 수 있습니다. 이 문제를 줄이기 위해 타이틀은 세션 검색 목록을 부분적으로 무작위화하는 것이 좋습니다.
  • 기타 타이틀 대역폭 사용량. 모든 QoS 측정은 다른 로컬 또는 원격 네트워크 동작의 영향을 받습니다. 타이틀은 다른 플랫폼이나 서브넷 트래픽 동작에 영향을 미칠 수 없습니다. 그러나 내부 타이틀 트래픽의 제어는 여전히 가능합니다. 타이틀은 이를 보장하고 QoS 측정을 수행할 때 타이틀 다운로드 또는 기타 네트워크 사용량을 최소화해야 합니다. 여러 병렬 QoS 측정에도 동일하게 적용됩니다.

클라이언트/서버

클라이언트/서버 통신을 사용하는 타이틀은 타이틀 코드, 게임 엔진 또는 미들웨어에서 사용자 지정 QoS 구현을 사용할 수 있습니다. P2P QoS 측정과 달리 클라이언트/서버 QoS 측정의 일반적인 목표는 특정 데이터 센터까지의 지연 시간을 결정하는 것입니다. 이 시나리오의 타이틀은 P2P QoS 측정과 동일한 지침을 준수해야 합니다. Azure PlayFab 멀티플레이어 서버를 사용하는 타이틀은 항상 QoS 측정을 위해 제공된 API를 사용해야 합니다. 자세한 내용은 QoS(서비스 품질) 비콘을 사용하여 Azure에 대한 플레이어 지연 시간 측정을 참조하세요.

QoS 메트릭 고려 사항

연결 품질을 결정하는 가장 일반적인 두 가지 QoS 메트릭은 패킷 지연 시간과 사용 가능한 링크 대역폭입니다.
  • 지연 시간 테스트. 지연 시간은 일반적으로 두 엔드포인트 사이에서 패킷별로 테스트됩니다. 모범 사례는 로컬 MTU 크기 미만의 소량 패킷을 원격 엔드포인트로 보내 패킷이 로컬 장치로 다시 반향되도록 하는 것입니다. 이는 패킷의 왕복 시간을 결정합니다. 측정을 위해 여러 패킷의 평균을 내야 합니다. 지연 시간 측정은 신속하게 수행할 수 있습니다.
  • 대역폭 테스트. 대역폭은 일반적으로 로컬 링크를 포화시키기 위해 다른 엔드포인트에 점점 높은 빈도로 대용량 데이터를 보내 테스트합니다. 링크 대역폭은 로컬 송신 및/또는 수신 버퍼 상태를 기반으로 추론할 수 있습니다. 버퍼 사용량이 증가한다는 것은 링크가 포화 상태임을 나타냅니다. 대역폭 측정은 더 긴 테스트 시간이 필요하며 로컬 링크 품질에 영향을 줄 수 있습니다.
지연 시간과 대역폭은 일반적으로 강하게 연결되어 있습니다. 대역폭이 제한되면 네트워크가 혼잡할 때 패킷이 로컬에 보관되기 때문에 패킷 지연 시간이 높아집니다. 낮은 지연 시간은 패킷이 로컬에 보관되지 않음을 나타내므로 더 많은 대역폭이 사용 가능함을 의미합니다. 따라서 타이틀은 게임 플레이 트래픽 QoS 목적으로만 지연 시간 측정을 수행해야 합니다. 대역폭 테스트는 일반적으로 게임 플레이 트래픽에 필요하지 않습니다.

QoS 테스트

XBOX One 개발 키트는 제한된 대역폭, 패킷 손실 및 지연 시간을 시뮬레이션하는 네트워크 시뮬레이션을 실행할 수 있습니다. 사용자 지정 QoS 구현 테스트 및 모든 QoS 기능의 종단 간 테스트에 이 기능을 강력히 권장합니다. 자세한 내용은 XBOX One 네트워크 스트레스를 참조하세요.

함께 보기

Windows Sockets 2(Winsock) PlayFab Party QoS(서비스 품질) 비콘을 사용하여 Azure에 대한 플레이어 지연 시간 측정
마지막 수정일 2026년 8월 24일