GDG on Campus: SSWU 6th/Winter Blog Challenge

[Winter Blog Challenge] 리그 오브 레전드 - 매칭 시스템과 서버 기술 (Team Member 이현진)

gdgoc-sswu 2025. 2. 24. 04:51

안녕하세요! GDGoC Chapter Core 이현진입니다.

 

저는 윈터블로그 내용을 무엇을 써야할까 고민하다가 제가 좋아하는 것과 연관된 것을 쓰면 좋을 것 같아 제가 주로 하는 게임인 리그 오브 레전드의 매칭 시스템과 서버 기술에 대해 공유해 드리려고 합니다.

 

"왜 항상 우리 팀만 약한 것 같을까?"

 

롤을 즐기는 모든 플레이어가 한 번쯤 가져본 의문일 것입니다. 사실 저도 항상 게임을 하면서 팀운 망했다! 라는 이야기를 주로 하는데요. LoL의 매칭 시스템은 단순히 랜덤으로 이루어지지 않는다고 합니다. 매칭 뒤에는 플레이어의 실력과 공정한 팀 구성을 보장하기 위한 복잡한 알고리즘이 숨어 있습니다.

 

이번 글에서는 Riot Games가 어떤 기술로 LoL의 매칭 시스템을 설계했는지, 그리고 안정적이고 빠른 게임 환경을 제공하기 위해 어떤 서버 기술을 사용하는지 작성해보겠습니다


매칭 시스템: MMR의 비밀

LoL의 매칭 시스템은 MMR(Matchmaking Rating)이라는 숨겨진 점수를 기반으로 작동합니다. 이는 플레이어의 실력을 수치화한 값으로, 승패와 게임 내 활약도에 따라 조정됩니다. Riot Games는 단순한 Elo 시스템을 넘어 MOBA 게임에 최적화된 매칭 방식을 설계했습니다.

 

🎯 MMR의 작동 원리

 
1. 개인 실력 기반 매칭
  • MMR은 기본적으로 승패에 따라 변동되지만, Riot은 더 세부적인 데이터를 활용합니다.예: 포지션별 활약도, KDA, CS, 게임 시간 등 다양한 요소가 점수에 영향을 미칩니다.

2. 역할 기반 매칭

  • LoL은 플레이어의 선호 역할(탑, 미드, 정글 등)을 바탕으로 팀을 구성합니다.이를 통해 "자신이 잘하는 역할"에서 플레이하도록 매칭하며, 팀의 조화를 고려합니다.

3. 공정성과 대기 시간의 균형

  • 높은 공정성을 유지하기 위해 MMR 간격을 좁게 설정하지만, 이로 인해 대기 시간이 길어질 수 있습니다.이를 해결하기 위해 Riot은 동적 MMR 확장 알고리즘을 도입했습니다:
    • 대기 시간이 길어질수록 점차 MMR 범위를 넓혀 매칭을 빠르게 완료.

게임 서버 기술: 글로벌 네트워크와 분산 시스템

MOBA 게임은 초 단위의 정확한 데이터 처리가 필수적입니다. 특히 LoL은 전 세계 수백만 명의 플레이어가 동시에 접속하므로, 지연 시간을 최소화하고 안정성을 유지하는 것이 핵심입니다.

 

🌐 Riot Direct: 전용 글로벌 네트워크

Riot Games는 일반 인터넷 경로를 사용하는 대신, 자체 전용 네트워크인 Riot Direct를 운영합니다.  

  • 주요 특징:
    • ISP(인터넷 서비스 제공자)와 직접 협력해 데이터 전송 경로를 최적화.
    • 플레이어의 데이터를 가장 빠른 경로로 전송하며, 네트워크 혼잡을 줄임.
    • 실시간 경로 모니터링 및 조정으로 지연 시간을 최소화.

💻 분산 서버 아키텍처

LoL의 서버는 각 단계별로 분리된 분산 아키텍처를 사용합니다.

  1. 매칭 서버: 플레이어 데이터를 수집해 공정한 팀 구성을 처리.
  2. 게임 서버: 플레이 중 발생하는 모든 실시간 이벤트를 관리.
  3. 리플레이 및 통계 서버: 게임 기록 및 데이터를 저장하여 리플레이와 통계를 제공합니다.

분산 구조 덕분에 한 서버가 과부하 상태가 되더라도 다른 기능은 정상적으로 작동합니다.


Riot API: 데이터의 활용과 분석

Riot Games는 Riot API를 통해 플레이어와 개발자에게 데이터를 공개합니다. 이를 활용하면 플레이어의 게임 기록, 매칭 데이터 등을 분석하거나 독창적인 애플리케이션을 만들 수 있습니다.

 

📊 Riot API로 할 수 있는 일

  1. 매칭 기록 분석
    • 팀 평균 MMR, 상대 팀과의 밸런스 등을 확인 가능.
  2. 챔피언 및 플레이어 데이터 시각화
    • 챔피언 픽률, 승률을 기반으로 메타 분석.
  3. AI 모델 학습 데이터
    • 플레이어 행동 데이터를 기반으로 게임 전략 예측 모델을 만들 수 있습니다.

매칭과 기술의 도전 과제

⌛ 긴 대시 시간 문제

  • 높은 티어(챌린저, 마스터)에서는 공정한 매칭을 위해 더 많은 시간이 필요합니다.Riot은 이를 해결하기 위해 대기 시간이 길어질수록 MMR 범위를 유연하게 조정하는 동적 매칭 알고리즘을 적용하고 있습니다.

🤖 AI를 활용한 매칭 및 안티 치트

  • Riot은 플레이어 행동 데이터를 분석하기 위해 AI를 적극적으로 활용합니다:
    • 트롤링, 탈주와 같은 비정상적 행동을 실시간으로 탐지.
    • AI 기반 알고리즘으로 더 나은 매칭과 팀 밸런스를 제공합니다.

이렇게 저도 사실 Riot Games 기술 블로그가 있다는 사실을 처음 알았는데요https://technology.riotgames.com/ 여기에 많은 내용이 담겨있으니 궁금하신 분들은 살펴보시면 좋을 것 같습니다.

 

마지막으로 사심을 담아보자면 티원 화이팅 ! 우승해줘~ :>