Skip to main content
멀티플레이어 시스템에는 멀티플레이어 세션, MPSD(Multiplayer Session Directory), SmartMatch 매치메이킹 및 QoS(Quality of Service)가 포함됩니다. 이 항목에서는 XBOX services 문서에서 자주 사용되는 여러 중요한 멀티플레이어 용어와 개념을 설명합니다. 이러한 용어와 개념을 잘 이해하면 XBOX services 멀티플레이어의 작동 방식을 이해하는 데 도움이 됩니다.

멀티플레이어 세션

멀티플레이어 세션은 XBOX services 플레이어 그룹과 그들과 관련된 속성을 나타냅니다. 세션은 타이틀에서 생성 및 유지되며, XBOX services 클라우드에 있는 안전한 JSON 문서로 표현됩니다. 세션 문서 자체에는 세션에 연결된 XBOX services 플레이어에 대한 정보, 사용 가능한 자리 수, (세션 및 각 세션 멤버에 대한) 사용자 지정 메타데이터 및 게임 세션과 관련된 기타 정보가 포함되어 있습니다. 각 세션은 세션 템플릿을 기반으로 합니다. 세션 템플릿은 게임 개발자가 정의하며 타이틀 인스턴스에 대한 XBOX services 구성에서 설정됩니다. 타이틀은 세션을 생성하고 업데이트할 수 있지만, 세션을 직접 삭제할 수는 없습니다. 대신, 모든 플레이어가 세션에서 제거된 후 XBOX services 멀티플레이어 서비스가 지정된 시간 초과 후 자동으로 세션을 삭제합니다. 타이틀은 여러 세션을 사용하도록 선택할 수 있지만, 일반적인 멀티플레이어 구현은 다음 두 가지 세션을 사용합니다.
  • 로비 세션(Lobby session): 여러 라운드, 레벨, 맵 등 게임 전반에 걸쳐 함께 있고 싶어하는 친구 그룹을 나타냅니다.
  • 게임 세션(Game session): 라운드, 매치, 레벨과 같은 게임의 특정 세션 인스턴스에서 플레이 중인 사람들을 나타냅니다. 이 세션은 일반적으로 매치메이킹 서비스를 통해 함께 세션 인스턴스에 참여한 여러 로비 세션의 멤버를 포함할 수 있습니다.
멀티플레이어 세션에 대한 자세한 내용은 멀티플레이어 세션 고급 항목을 참조하세요.

예제 시나리오

이 예제 시나리오에서는 Tereza가 친구인 Sergio 및 Alejandra와 함께 멀티플레이어 게임을 하고 싶어합니다.
  1. Tereza가 게임을 시작한 다음 Sergio와 Alejandra를 자신의 게임에 초대합니다.
  2. 그들이 참여한 후 Tereza, Sergio, Alejandra는 모두 로비 세션에 있습니다.
  3. 이 세션에서 그들은 다른 사람들과 온라인 매치를 하기로 결정합니다.
    1. 게임이 게임 세션을 생성합니다. 나머지 플레이어 슬롯을 다른 XBOX services 플레이어로 채우기 위해 XBOX services 매치메이킹 서비스를 사용합니다.
    2. Ermal과 Miguel이 그들과 매치되었다고 가정하면, 다섯 명이 함께 라운드를 플레이합니다.
  4. 라운드가 끝난 후 Tereza, Sergio, Alejandra는 게임 세션을 떠나지만 여전히 로비 세션(Ermal과 Miguel 없이)에 함께 있습니다. 세 친구는 다른 라운드를 플레이하거나 다른 게임 모드로 전환할 수 있습니다.

세션 멤버

세션 멤버는 세션의 일부인 XBOX services 플레이어입니다.

아비터(Arbiter)

아비터는 게임의 세션 상태를 관리하는 콘솔 또는 디바이스입니다. 예를 들어 아비터는 더 많은 플레이어를 찾기 위해 매치메이킹에 게임 세션을 광고하는 역할을 담당합니다. 아비터는 타이틀이 설정합니다. 아비터와 게임 호스트는 동일할 수 있지만, 반드시 그럴 필요는 없습니다.

세션 호스트

세션 호스트는 호스트 기반 P2P 네트워크 아키텍처에 기반한 타이틀에서 게임 플레이 시뮬레이션을 실행하는 콘솔 또는 디바이스입니다. 이 콘솔 또는 디바이스는 일반적으로 아비터와 동일하지만, 반드시 그럴 필요는 없습니다.

MPSD(Multiplayer Session Directory)

XBOX services 멀티플레이어 서비스는 XBOX services 클라우드에서 작동합니다. 이 서비스는 여러 클라이언트에 걸쳐 게임의 멀티플레이어 시스템 메타데이터를 중앙 집중화합니다. 이 메타데이터를 추적하는 시스템을 *MPSD(Multiplayer Session Directory)*라고 합니다. MPSD는 활성 게임 세션의 라이브러리로 생각할 수 있습니다. 게임에서 타이틀과 관련된 활성 세션을 추가, 검색, 수정 또는 제거할 수 있습니다. MPSD는 또한 세션 상태를 관리하고 필요에 따라 세션을 업데이트합니다. MPSD를 사용하면 타이틀에서 플레이어 그룹을 연결하는 데 필요한 기본 정보를 공유할 수 있습니다. 세션 기능이 동기화되고 일관성이 유지되도록 보장합니다. MPSD는 초대 보내기/수락 및 게이머카드를 통한 참여에서 셸 및 XBOX One(또는 그 이상) 콘솔 OS와 조율됩니다.

세션 핸들

세션은 MPSD에서 다음의 데이터 조각을 조합하여 고유하게 식별됩니다.
  • 타이틀의 서비스 구성 식별자(SCID)
  • 세션 생성에 사용된 세션 템플릿의 이름
  • 세션의 이름
세션 핸들은 MPSD에 존재하는 특정 세션에 대한 참조를 포함하는 JSON 객체입니다. 세션 핸들을 사용하면 XBOX services 멤버가 기존 세션에 참여할 수 있습니다. 각 세션 핸들에는 핸들을 고유하게 식별하는 GUID가 포함되어 있어, 타이틀이 단일 GUID를 사용하여 세션을 참조할 수 있습니다. 세션 핸들은 다음과 같습니다.

초대 핸들(Invite handle)

초대 핸들은 멤버가 게임에 참여하도록 초대받을 때 전달됩니다. 초대 핸들에는 초대받은 멤버의 게임이 올바른 세션에 참여할 수 있는 정보가 포함되어 있습니다.

검색 핸들(Search handle)

검색 핸들에는 세션에 대한 추가 메타데이터가 포함되며, 타이틀이 선택된 기준을 충족하는 세션을 검색할 수 있게 해줍니다.

활동 핸들(Activity handle)

활동 핸들을 통해 멤버는 자신의 소셜 네트워크에 있는 다른 멤버들이 무엇을 플레이하고 있는지 볼 수 있습니다. 이 핸들은 친구의 게임에 참여하는 데 사용할 수 있습니다.

상관 관계 핸들(Correlation handle)

상관 관계 핸들은 사실상 세션의 별칭으로 작동하여 게임이 상관 관계 핸들의 ID만 사용하여 세션을 참조할 수 있게 해줍니다.

전송 핸들(Transfer handle)

전송 핸들은 플레이어를 하나의 세션에서 다른 세션으로 이동하는 데 사용됩니다.

초대(Invites)

XBOX services는 멀티플레이어 서비스가 지원하는 초대 시스템을 제공합니다. 이 서비스를 통해 플레이어가 다른 플레이어를 자신의 게임 세션에 초대할 수 있습니다. 초대된 플레이어는 게임 초대를 받습니다. 타이틀은 이 정보를 사용하여 기존 세션 및 멀티플레이어 경험에 참여합니다. 타이틀은 초대 흐름과 초대를 보낼 수 있는 시점을 제어합니다. 초대는 플레이어가 셸을 통해 보내거나 타이틀에서 직접 보낼 수 있습니다. 초대의 알림 텍스트는 타이틀에서 동적으로 설정하여 초대받은 플레이어에게 더 많은 정보를 제공할 수 있습니다. 초대에는 플레이어에게 보이지 않는 타이틀에 대한 추가 데이터를 포함할 수도 있으며, 추가 정보를 전달하는 데 사용할 수 있습니다.

진행 중 참여(Join-in-progress)

초대 외에도 XBOX services는 플레이어가 친구나 다른 알려진 플레이어의 활성 게임 플레이 세션에 참여할 수 있는 셸 옵션도 제공합니다. 이는 활성 게임 세션에 참여하는 또 다른 경로를 제공하며 MPSD에 의해 구동됩니다. 타이틀은 세션이 참여 가능한 시점과 진행 중 참여용으로 노출할 세션을 제어합니다.

프로토콜 활성화(Protocol activation)

Tereza가 Alejandra에게 자신의 게임에 참여하도록 초대를 보내면, Alejandra는 자신의 디바이스에서 수락하거나 거부할 수 있는 알림을 받습니다. Alejandra가 초대를 수락하면 게임이 실행되지 않은 경우 OS가 게임 실행을 시도합니다. OS는 게임이 활성화된 이유와 추가 세부 정보를 포함하는 활성화 이벤트를 트리거합니다. (예를 들어 초대의 경우 세부 정보에는 멤버를 초대한 플레이어의 ID와 멤버가 초대된 세션이 포함됩니다.) 이 이벤트를 처리하는 프로세스를 프로토콜 활성화라고 합니다. 활성화 이벤트 인수에 자세히 설명된 대로 게임이 자동으로 특정 상태로 전환되어야 함을 나타냅니다. 멤버가 멀티플레이어 게임에 참여하는 경우 세션 핸들 ID가 인수 중 하나로 지정됩니다. Alejandra의 경우 초대를 수락하면 (필요한 경우) 게임이 자동으로 시작되고 Tereza가 있는 동일한 게임 세션에 그녀가 참여하게 됩니다. 이 작업은 Alejandra가 추가로 다른 작업을 수행할 필요 없이 이루어집니다. 프로토콜 활성화는 초대 수락, 프로필 카드를 통한 다른 멤버의 게임 참여 또는 딥링크된 업적 선택을 통해 트리거될 수 있습니다.

SmartMatch 매치메이킹

SmartMatch는 익명 매치메이킹을 위한 XBOX services 서비스의 이름입니다. 이 서비스는 구성 가능한 매치 규칙 집합을 기반으로 동일한 게임의 플레이어를 매칭합니다. 매치메이킹 서비스는 MPSD와 긴밀히 협력하며 매치메이킹 입력 및 출력에 세션을 사용합니다. 매치메이킹은 서비스에서 수행되므로 타이틀은 매치메이킹 흐름 중에 다른 경험(예: 타이틀 내 싱글플레이어)을 쉽게 제공할 수 있습니다. 매치메이킹에 진입하려는 개인 또는 그룹은 매치 티켓 세션을 생성한 다음 매치메이킹 서비스에 매치를 구성할 다른 플레이어를 찾도록 요청합니다. 그 결과 일정 기간 동안 매치메이킹 서비스 내(매치 호퍼상)에 있는 임시 “매치 티켓”이 생성됩니다. 매치메이킹 서비스는 규칙 구성, 각 플레이어에 대해 저장된 통계 및 매치 요청 시 제공된 추가 정보를 기반으로 함께 플레이할 세션을 선택합니다. 그런 다음 서비스는 매치된 모든 플레이어를 포함하는 매치 대상 세션을 생성하고 플레이어의 타이틀에 매치를 알립니다. 대상 세션이 준비되면 타이틀은 QoS 검사를 수행하여 그룹이 함께 플레이할 수 있는지 확인하거나 플레이어를 세션에 참여시켜 게임 플레이를 시작할 수 있습니다. QoS 프로세스 및 매치된 게임 플레이 동안 타이틀은 MPSD 내에서 세션 상태를 최신으로 유지하고, 세션의 변경 사항에 대한 알림을 MPSD로부터 받습니다. 이러한 변경 사항에는 플레이어의 참여 또는 이탈과 세션 아비터의 변경이 포함됩니다.

매치 티켓 세션

매치 티켓 세션은 매치를 만들려는 플레이어의 클라이언트를 나타냅니다. 일반적으로 로비에 함께 있는 플레이어 그룹이나 다른 타이틀별 플레이어 그룹을 기반으로 생성됩니다. 경우에 따라 티켓 세션은 더 많은 플레이어를 찾고 있는 이미 진행 중인 게임 세션일 수도 있습니다.

매치 티켓

티켓 세션을 매치메이킹에 제출하면 매치메이킹 시도를 추적하는 매치 티켓이 생성됩니다. 게임 맵이나 플레이어 레벨과 같은 속성을 티켓에 추가할 수 있습니다. 이러한 속성은 티켓 세션의 플레이어 속성과 함께 매치를 결정하는 데 사용됩니다.

호퍼(Hoppers)

호퍼는 매치 티켓이 수집되고 매치메이킹 시작 시 지정되는 논리적 위치입니다. 동일한 호퍼 내의 티켓만 매치될 수 있습니다. 타이틀은 여러 호퍼를 가질 수 있습니다. 그러나 한 번에 하나의 호퍼에서만 매치메이킹을 시작할 수 있습니다. 예를 들어 타이틀은 플레이어 스킬이 매칭에 가장 중요한 항목인 호퍼 하나를 생성할 수 있습니다. 타이틀은 플레이어가 동일한 다운로드 콘텐츠를 구매한 경우에만 매치되는 또 다른 호퍼를 사용할 수 있습니다. 서비스 구성에서 매치메이킹용 호퍼를 구성합니다.

QoS(Quality of Service)

게이머가 온라인에서 멀티플레이어 게임을 할 때 게임의 품질은 게임을 호스팅하는 디바이스 간의 네트워크 통신 품질에 영향을 받습니다. 네트워크 상태가 좋지 않으면 대기 시간이나 대역폭 부족으로 인해 랙이나 연결 끊김과 같은 바람직하지 않은 게임 경험이 발생할 수 있습니다. QoS는 모든 플레이어가 충분한 네트워크 연결 품질을 갖추도록 하기 위해 플레이어 간의 온라인 연결 강도(대기 시간 및 대역폭)를 측정하는 것을 의미합니다. 이는 매치메이킹 중에 매치된 플레이어에게 특히 중요하며 네트워크 연결로 인한 좋은 경험을 보장하기 위한 것입니다. QoS는 친구가 함께 플레이하고 일반적으로 좋지 않은 연결의 결과를 감수할 의향이 있는 초대에는 덜 적용됩니다. 특정 기준에 따라 QoS를 자동으로 처리하도록 세션을 구성할 수 있습니다. 또한 게임에서 누군가 세션에 참여할 때마다 QoS 측정을 처리할 수도 있습니다.
마지막 수정일 2026년 8월 25일