XR-074: Xbox 및 파트너 서비스에 대한 연결 끊김 *
버전 1.3, 03/01/2025
타이틀은 Xbox 및 파트너 서비스 연결 오류를 안정적으로 처리해야 합니다. 타이틀은 오류가 발생한 후 Xbox 서비스에 대한 요청을 재시도하려고 할 때 Xbox에 설정된 재시도 정책을 준수해야 합니다. 타이틀은 서비스가 사용 불가능할 때 사용자에게 보내는 메시지를 적절하게 관리해야 합니다. 파트너 서비스를 사용할 수 없는 경우 게임에 Xbox 네트워크에 문제가 있다고 표시되어서는 안 됩니다. 네트워크 서비스가 느리거나 간헐적으로 사용 가능한 경우 타이틀이 충돌하거나 중단되지 않아야 합니다.
추가 정보
타이틀은 자체 네트워크 작업의 성능에 반응하거나 Windows.Xbox.Networking 네트워크 품질 API를 사용하여 현재 네트워크 상태를 파악해야 합니다. 또한 더 적은 데이터를 전송하거나, 적절한 사용자 역할을 선택하거나, 클라우드 서비스를 활용하여 안정적으로 문제를 완화시켜야 합니다.
Xbox 서비스가 아닌 다른 서비스의 문제 처리
일시적이지 않은 시간 초과 오류, 네트워크 API 오류, 누락된 서비스 구성 오류 등 문제가 있는 파트너 서비스로 인해 사용자 환경에 영향이 있는 경우, 타이틀에서 사용자에게 특정 기능이나 서비스를 사용할 수 없다는 경고를 표시해야 합니다. 타이틀은 사용자가 문제를 해결할 수 있는 안전한 상태로 매끄럽게 돌아가거나 사용자가 수동으로 재시도할 수 있는 상태로 돌아가야 합니다.
친근한 메시지의 예는 다음과 같습니다.
"죄송합니다. non-Microsoft service를 현재 사용할 수 없습니다. 나중에 다시 시도하세요. 자세한 내용은 비 Microsoft 지원 연락처 정보를 참조하세요."
Xbox 서비스의 문제 처리
Xbox 서비스 연결이 끊기면 일부 기능을 이용할 수 없게 될 수 있습니다. 이런 경우에 타이틀은 사용자와 소통하기 위해 분명하고 친근한 메시지를 사용해야 합니다.
서비스를 사용할 수 없는 경우 타이틀에서 요청을 다시 시도할 수 있지만 Xbox에서 허용하는 기준 내에서만 가능합니다. 필요한 HTTP 재시도와 차단 로직, 개별 서비스에 대한 상호 작용 지침을 포함하여 Xbox 콘솔 타이틀에 대한 서비스 복구에 대한 자세한 내용은 Xbox One 타이틀에서의 서비스 중단 복구를 참조하세요.
Xbox 연결 필요
Xbox 콘솔용으로 개발할 때 대부분의 기능에 대해 인터넷 또는 Xbox에 연결해야 하는 타이틀은 AppX 매니페스트에 부울 플래그 RequireXboxLive
를 포함할 수 있습니다. 이렇게 하면 Xbox를 사용할 수 없을 때 Xbox 콘솔에서 타이틀이 시작되지 않도록 차단되며, 연결이 끊어지면 타이틀이 일시 중단된 후 종료됩니다.
GDK를 사용한 네트워킹에 대한 자세한 내용은 네트워킹 섹션을 참조하세요.
인증 테스트 사례
074-01 Xbox 서비스에 대한 WAN 연결 끊기
테스트 단계
- Xbox 프로필에 로그인합니다.
- 다음 작업을 수행하는 동안 WAN 네트워크의 연결을 끊습니다. 이더넷 스위치/허브를 사용하는 경우 네트워크 디바이스에서 업링크 케이블의 연결을 끊습니다. 디바이스가 Wifi를 통해 연결된 경우 무선 액세스 지점 연결에서 업링크 케이블의 연결을 끊습니다.
- 새 저장 지점 만들기
- 저장 지점 로드
- 자동 저장 지점에 도달
- 저장된 게임 목록 열거
- 온라인 세션 검색 및 참가
- 온라인 세션 만들기 시도
- 순위표 보기(해당하는 경우)
- 오프라인으로 플레이
예상 결과
콘솔이 Xbox 서비스에 도달할 수 없는 경우 타이틀은 사용자에게 친숙한 오류 메시지로 응답해야 합니다.
통과 예시
- 타이틀에는 Xbox 서비스에 대한 네트워크 연결이 끊어진 것을 나타내는 오류 메시지가 표시됩니다.
- Xbox 서비스가 필요하지 않은 로컬 게임 모드를 실행하는 동안에는 오류 메시지가 타이틀에 표시되지 않습니다.
- AppX 매니페스트에 가
RequireXboxLive
있는 타이틀은 연결이 끊어지면 일시 중단된 다음 종료됩니다.
실패 예시
- 사용자가 온라인이 아닌 Xbox 게임 세션을 완료할 수 없습니다.
- 타이틀이 응답하지 않는 상태 또는 불안정한 상태가 됩니다.
074-02 직접 연결 끊기
테스트 단계
- 타이틀을 시작하고 Xbox 프로필에 로그인합니다.
- 타이틀에서 다음 작업을 수행하는 동안 디바이스에서 네트워크 케이블을 풀하거나 WAP 또는 무선 라우터에서 전원을 끕니다.
- 새 저장 지점 만들기.
- 저장 지점 로드.
- 자동 저장 지점에 도달.
- 저장된 게임 목록 열거.
- 온라인 세션 검색 및 참가.
- 온라인 세션 생성 시도.
- 순위표 보기(해당하는 경우).
- 오프라인으로 플레이.
예상 결과
장치와 Xbox 서비스의 연결이 끊기는 경우 타이틀은 사용자에게 친숙한 오류 메시지로 응답해야 합니다.
통과 예시
- 온라인 게임 모드 중에는 사용자에게 친숙한 메시지가 타이틀에 표시됩니다.
- 오프라인 게임 모드 중에는 타이틀의 게임 플레이가 중단되지 않습니다.
- AppX 매니페스트에 가
RequireXboxLive
있는 타이틀은 연결이 끊어지면 일시 중단된 다음 종료됩니다.
실패 예시
- 오프라인 게임 모드 중에 오류 메시지가 표시됩니다.
- 타이틀이 응답하지 않는 상태 또는 불안정한 상태로 전환됩니다.
- 네트워크가 오프라인으로 전환된 후 사용자가 온라인 메뉴를 보거나 버퍼링된 미디어를 볼 수 있습니다.
074-03 Xbox 서비스에 대한 연결 끊기 일시 중단
구성:
Xbox 장치의 경우 타이틀을 설치하고 를 사용하여 xbapp list
타이틀의 PFN(패키지 전체 이름)을 반환합니다.
테스트 단계
Xbox 프로필에 로그인하고 타이틀을 시작합니다.
기본 메뉴 또는 프런트 엔드 메뉴에 있는 동안 다음을 수행합니다.
- 콘솔에서 을 실행하여 타이틀을 일시 중단합니다.
xbapp suspend [PFN]
- PC에서 창을 최소화하거나 장치에서 Windows 단추를 눌러 타이틀을 일시 중단합니다.
- 콘솔에서 을 실행하여 타이틀을 일시 중단합니다.
타이틀이 완전히 일시 중단되고 일시 중단으로 인해 모든 HTTP 요청이 중단될 때까지 30초 동안 기다립니다.
타이틀을 계속합니다.
지원되는 경우 다음 추가 영역에서 2-4단계를 반복합니다.
- 단일 플레이어 게임 세션 중
- 온라인 멀티 플레이어 세션 중
- 게임 전 멀티 플레이어 로비에 있는 동안
- 온라인 순위표를 보는 동안
- 비디오 또는 오디오 재생 중.
예상 결과
콘솔이 일시 중단된 후 Xbox 서비스에 도달할 수 없는 경우 타이틀은 성공적으로 다시 활성화되고, 상황을 안정적으로 처리한 다음, 적절한 경우 사용자에게 친숙한 오류 메시지로 응답해야 합니다.
통과 예시
- 온라인 Xbox 멀티 플레이어 세션 중에 Xbox 서비스에 대한 네트워크 연결 끊김을 나타내는 오류 메시지가 타이틀에 표시됩니다.
- Xbox 서비스가 필요하지 않은 로컬 게임 모드를 실행하는 동안에는 오류 메시지가 타이틀에 표시되지 않습니다.
실패 예시
- 사용자가 온라인이 아닌 Xbox 게임 세션을 완료할 수 없습니다.
- 타이틀이 응답하지 않는 상태 또는 불안정한 상태로 전환됩니다.
- 다시 시작한 후 잘못 유도하거나 잘못된 오류 메시지가 표시됩니다.
074-04 일시 중단 중 Xbox 서비스 다시 연결
구성:
Xbox 장치의 경우 타이틀을 설치하고 를 사용하여 xbapp list
타이틀의 PFN(패키지 전체 이름)을 반환합니다.
테스트 단계
- Xbox 프로필에 로그인하고 콘솔이 홈으로 설정되어 있는지 확인합니다.
- Xbox에 연결하지 않고 로컬 네트워크 연결을 유지하면서 타이틀을 시작합니다.
- 이더넷 스위치/허브를 사용하는 경우 네트워크 디바이스에서 업링크 케이블의 연결을 끊습니다.
- 디바이스가 Wifi를 통해 연결된 경우 무선 액세스 지점에서 업링크 케이블의 연결을 끊습니다.
- 기본 메뉴 또는 프런트 엔드 메뉴에 있는 동안 다음을 수행합니다.
- 콘솔에서 을 실행하여 타이틀을 일시 중단합니다.
xbapp suspend [PFN]
- PC에서 창을 최소화하거나 장치에서 Windows 단추를 눌러 타이틀을 일시 중단합니다.
- 콘솔에서 을 실행하여 타이틀을 일시 중단합니다.
- 타이틀이 완전히 일시 중단되고 일시 중단으로 인해 모든 HTTP 요청이 중단될 때까지 30초 동안 기다립니다.
- 업링크 케이블을 다시 연결하고 콘솔이 Xbox에 다시 연결될 때까지 기다립니다.
- 타이틀을 계속합니다.
- 지원되는 경우 다음 추가 영역에서 2~6단계를 반복합니다.
- 단일 플레이어 게임 세션 중.
- 저장/로드 메뉴 내에서 게임을 저장/로드하기 전.
예상 결과
콘솔이 일시 중단된 후 Xbox 서비스에 도달할 수 없는 경우 타이틀은 성공적으로 다시 활성화되고, 상황을 안정적으로 처리한 다음, 적절한 경우 사용자에게 친숙한 오류 메시지로 응답해야 합니다.
통과 예시
- 사용자가 타이틀을 계속하여 오프라인 Xbox 게임 세션을 중단 없이 완료할 수 있습니다.
- 타이틀이 안정적인 상태를 유지하고 충돌하지 않습니다.
실패 예시
- 사용자가 온라인이 아닌 Xbox 게임 세션을 완료할 수 없습니다.
- 타이틀이 응답하지 않는 상태 또는 불안정한 상태로 전환됩니다.
- 다시 시작한 후 잘못 유도하거나 잘못된 오류 메시지가 표시됩니다.
074-05 일정하게 낮은 대역폭
필요한 도구:
GDK/XDK의 xbstress.exe.
구성:
xbstress.exe 명령줄 스트레스 도구에서 네트워크 시뮬레이션을 제어합니다. 이 도구는 네트워크 시뮬레이션을 비롯하여 다양한 본체 스트레스 요소를 구성합니다. 네트워크 관리 목적에 따라 xbstress.exe는 Xbox 장치에서 패킷을 삭제하고 지연 시간을 삽입하고 처리량을 제한하는 특수 드라이버를 제어합니다.
xbstress.exe에는 최소, 평균 및 우수로 중요한 네트워크 관리 시나리오를 쉽게 시뮬레이션할 수 있게 해주는 세 가지 미리 구성된 시뮬레이션 프로필이 포함되어 있습니다. 최소 프로필은 이 XR에 해당합니다.
테스트 단계
- 최소 프로필을 사용하여 Xbox 장치의 최소 운영 요구 사항에 대한 연결을 제한합니다.
- 다음과 같은 타이틀 관련 온라인 작업을 수행합니다.
- 모든 메뉴를 탐색합니다.
- 온라인 게임 세션을 플레이합니다.
예상 결과
사용자 인터넷 연결이 192Kbps 아래로 떨어질 때 타이틀이 작동 중단되거나 사용자 데이터 손실이 발생하지 않아야 합니다.
통과 예시
- 낮은 대역폭 때문에 온라인 플레이에 영향을 줄 수 있음을 나타내는 사용자에게 친숙한 메시지가 표시됩니다.
- 타이틀이 작동 중단되지 않고 사용자 데이터 손실이 발생하지 않습니다.
실패 예시
- 타이틀이 작동 중단되고 사용자 데이터 손실이 발생합니다.
074-06 불규칙하게 낮은 대역폭
필요한 도구:
GDK/XDK의 xbstress.exe.
구성:
xbstress.exe 명령줄 스트레스 도구에서 네트워크 시뮬레이션을 제어합니다. 이 도구는 네트워크 시뮬레이션을 비롯하여 다양한 본체 스트레스 요소를 구성합니다. 네트워크 관리 목적에 따라 xbstress.exe는 Xbox 장치에서 패킷을 삭제하고 지연 시간을 삽입하고 처리량을 제한하는 특수 드라이버를 제어합니다.
xbstress.exe에는 최소, 평균 및 우수로 중요한 네트워크 관리 시나리오를 쉽게 시뮬레이션할 수 있게 해주는 세 가지 미리 구성된 시뮬레이션 프로필이 포함되어 있습니다. 최소 프로필은 이 XR에 해당합니다.
테스트 단계
- xbstress.exe에서 모든 네트워크 제한을 사용하지 않도록 설정합니다 .
- 다음과 같은 타이틀 관련 온라인 작업을 수행합니다.
- 모든 메뉴를 탐색합니다.
- 온라인 게임 세션을 플레이합니다.
- 2단계를 수행하는 동안 xbstress 최소 프로필을 사용하도록 설정합니다.
예상 결과
사용자 인터넷 연결이 192Kbps 아래로 떨어질 때 타이틀이 작동 중단되거나 사용자 데이터 손실이 발생하지 않아야 합니다.
통과 예시
- 낮은 대역폭 때문에 온라인 플레이에 영향을 줄 수 있음을 나타내는 사용자에게 친숙한 메시지가 표시됩니다.
- 타이틀이 작동 중단되지 않고 사용자 데이터 손실이 발생하지 않습니다.
실패 예시
- 타이틀이 작동 중단되고 사용자 데이터 손실이 발생합니다.
074-07 동적 연결 끊김
필요한 도구:
- 콘텐츠 차단 추가 기능이 있는 Fiddler 클래식
콘텐츠 차단 추가 기능을 사용하여 파트너 서비스를 차단하도록 Fiddler 클래식 구성
- 콘솔에서 웹 서비스 호출을 디버그하도록 Fiddler를 설정합니다 .
- PC에서 Fiddler를 설정 하여 웹 서비스 호출 디버그
- Fiddler용 콘텐츠 차단 추가 기능 설치
- Fiddler에서 ContentBlock 및 "Enabled" 메뉴를 선택합니다.
팁
블록 목록을 구성하는 단계:
- Fiddler가 실행되면 타이틀을 시작하고 모든 메뉴를 탐색하고, 멀티 플레이어 세션을 완료하고, 모든 게임 모드로 로드하고, 다음을 포함하되 이에 국한되지 않는 타이틀의 모든 영역을 탐색합니다.
- 메뉴
- 순위표
- 서버(서버 만들기 및 다른 사용자의 참가)
- 친구 목록
- 타이틀 내 저장소
- 제한된 시간 이벤트
이렇게 하면 타이틀이 정상적인 게임 플레이 중에 모든 호스트에 연결됩니다.
Fiddler에서 Microsoft가 아닌 서비스인 호스트를 식별합니다.
- 호스트별로 세션 목록을 정렬하고 다음 중 어느 것을 포함하지 않는 호스트를 찾습니다.
microsoft, msft, xboxlive, xboxservices, live, PlayFabApi, msn, bing
- 호스트별로 세션 목록을 정렬하고 다음 중 어느 것을 포함하지 않는 호스트를 찾습니다.
Fiddler에서 비 Microsoft 호스트를 블록 목록에 추가합니다.
- Microsoft가 아닌 호스트를 마우스 오른쪽 단추로 클릭하고 '이 호스트 차단'을 선택합니다.
- 다른 모든 비 Microsoft 호스트에 대해 반복
동일한 호스트를 여러 번 차단할 필요가 없습니다.
차단 목록을 편집하려면 ContentBlock 메뉴와 "차단된 호스트 편집..."을 선택합니다.
이제 모든 비 Microsoft 호스트가 블록 목록에 추가되었으므로 테스트 사례를 계속 실행합니다.
테스트 단계
- Xbox 프로필에 로그인하고 타이틀을 시작합니다.
- 멀티 플레이어 세션을 완료하고, 모든 게임 모드로 로드하고, 다음을 포함하되 이에 국한되지 않는 타이틀의 모든 영역을 탐색합니다.
- 메뉴
- 순위표
- 서버(서버 만들기 및 다른 사용자의 참가)
- 친구 목록
- 타이틀 내 스토어
- 제한된 시간 이벤트
- 타이틀에 Xbox 네트워크 문제를 나타내는 오류 메시지가 표시되지 않는지 확인합니다.
예상 결과
타이틀은 타사 서비스에 대한 연결 끊김을 정상적으로 처리합니다.
통과 예시
- 파트너 호스팅 서비스에 대한 연결이 끊어질 때 타이틀이 중단되거나 충돌하지 않습니다.
실패 예시
- 표시되는 메시지는 Microsoft 서비스의 문제를 의미합니다.
- 설명이 없는 오류 메시지가 표시됩니다.
- 타이틀이 충돌하거나 불안정해지거나 콘솔이 다시 부팅됩니다.
074-08 시작 전 가동 중지 시간
필요한 도구:
- GDK/XDK의 xbstress.exe
- Windows 10의 경우 Fiddler
테스트 단계
- 콘솔에서 명령을 사용하여 비 Microsoft 트래픽에 대한 xbstress.exe 사용하여 손상된 네트워크 채널을 만듭니다.
xbstress set channel=0 network=broken addresses=[semicolon delimited list of addresses]
-
xbstress simulate network=channels
명령을 사용하여 네트워크 시뮬레이션을 시작합니다. - Windows 10에서 테스트하는 경우 fiddler를 사용하여 가동 중지 시간을 에뮬레이션합니다.
- Xbox 프로필에 로그인합니다.
- 타이틀을 시작합니다.
- 타사 온라인 기능에 액세스합니다.
예상 결과
타이틀이 타사 서비스에 도달하는 데 문제가 있음을 나타내는 사용자에게 친숙한 오류 메시지를 제공해야 하며 연결을 재시도할 수 있는 기회를 허용해야 합니다.
통과 예시
- 파트너 호스팅 서비스에 대한 연결이 끊어질 때 타이틀이 중단되거나 충돌하지 않습니다.
실패 예시
- 표시되는 오류가 Microsoft 서비스에 문제가 있음을 암시합니다.
- 설명이 없는 오류 메시지가 표시됩니다.
- 타이틀이 충돌하거나 불안정해지거나 콘솔이 다시 부팅됩니다.