Avalon으로 돌아가기
DEVELOPMENT

개발 현황

Avalon의 현재 기능, 사용 방법, 알려진 제한 사항과 개발 상태를 확인하세요.

출처README-ko.md
NETWORK사이트 내 백업 사본
READMEAvalonStream/AvalonStream · bundled fallback
Avalon

하나의 Windows 10/11 x64 PC. 여러 개의 독립된 데스크톱.

한 대의 Windows 10/11 x64 컴퓨터를 디스플레이, 입력, 오디오, 애플리케이션, 원격 스트리밍 연결을 각각 독립적으로 갖는 여러 데스크톱 인스턴스로 확장합니다.

하나의 호스트. 여러 인스턴스.

English · 简体中文


Avalon이란?

Avalon은 Windows 10/11 x64용 멀티 세션 데스크톱 스트리밍 플랫폼입니다.

한 PC가 하나의 대화형 데스크톱만 제공하는 대신, 동일한 Windows 호스트에서 여러 개의 독립된 Windows 인스턴스를 동시에 실행할 수 있도록 합니다.

각 인스턴스는 다음 항목을 독립적으로 가질 수 있습니다.

  • Windows 데스크톱 세션
  • 가상 디스플레이
  • 해상도와 주사율
  • 입력 스트림
  • 오디오 스트림
  • 애플리케이션과 게임
  • Moonlight 원격 연결

사용자마다 완전한 가상 머신을 실행하지 않고도 한 대의 고성능 PC를 여러 대의 원격 컴퓨터처럼 사용할 수 있습니다.


실제 구성은 어떻게 보이나요?

한 대의 Windows 10/11 x64 PC에서 세 개의 Avalon 인스턴스를 실행한다고 가정해 봅시다.

                Windows 10/11 x64 Host
                       │
                ┌──────┴──────┐
                │    Avalon    │
                └──────┬──────┘
                       │
         ┌─────────────┼─────────────┐
         │             │             │
         ▼             ▼             ▼
    Instance 01    Instance 02    Instance 03
         │             │             │
         ▼             ▼             ▼
     Moonlight      Moonlight      Moonlight
        TV            Tablet         Laptop

각 클라이언트는 자신만의 Windows 데스크톱에 연결합니다.

인스턴스들은 같은 데스크톱, 마우스 커서, 오디오 출력, 애플리케이션 세션을 공유하지 않고 나란히 실행됩니다.


왜 Avalon인가요?

일반적인 원격 데스크톱 도구는 대개 한 사용자가 하나의 데스크톱을 제어하는 모델을 중심으로 설계됩니다.

가상 머신은 강한 격리를 제공하지만 추가 운영체제, 메모리 오버헤드, 저장공간 사용, GPU 구성 복잡성, 관리 비용도 함께 증가합니다.

Avalon은 다른 접근을 사용합니다.

Windows 세션, 가상 디스플레이, 독립 스트리밍 프로세스, 중앙화된 수명 주기 관리를 조합해 여러 대화형 데스크톱이 하나의 Windows 10/11 x64 호스트에서 공존하도록 합니다.

복잡한 부분은 Avalon 내부에서 처리합니다. 사용자가 이해해야 하는 흐름은 단순합니다.

인스턴스 생성
        ↓
디스플레이와 페어링 설정
        ↓
Moonlight 실행
        ↓
연결

핵심 기능

여러 독립 인스턴스

한 호스트에서 여러 Windows 데스크톱 세션을 동시에 실행할 수 있습니다.

각 인스턴스는 독립적인 대화형 데스크톱 환경처럼 동작합니다.

독립 스트리밍

각 인스턴스는 자체 스트리밍 컨텍스트를 가지며 Moonlight 클라이언트로 개별 연결할 수 있습니다.

TV가 한 인스턴스에 연결된 동안 태블릿이나 다른 PC가 다른 인스턴스에 동시에 연결할 수 있습니다.

독립 디스플레이

각 인스턴스는 해상도와 주사율을 포함한 자체 가상 디스플레이 구성을 사용할 수 있습니다.

인스턴스마다 물리 모니터를 준비할 필요 없이 Avalon이 디스플레이 환경을 관리합니다.

독립 입력

키보드와 마우스 입력은 모든 인스턴스에 공유되지 않고 대상 Windows 세션으로 전달됩니다.

입력 스택이 발전함에 따라 Avalon은 인스턴스별 장치 격리를 더욱 완성하는 방향으로 설계되고 있습니다.

독립 오디오

각 인스턴스는 자체 Windows 세션 오디오 경로를 사용하므로 서로 다른 애플리케이션이나 게임의 소리가 단순히 섞이지 않습니다.

세션 수명 주기 관리

Avalon이 세션을 직접 생성하고 유지합니다.

인스턴스를 유지하기 위해 외부 RDP 클라이언트를 계속 연결해 둘 필요가 없습니다.

Web 관리

하나의 Web 인터페이스에서 모든 인스턴스를 관리합니다.

일반적인 작업은 다음과 같습니다.

  • 인스턴스 생성 및 제거
  • 인스턴스 시작 및 중지
  • 해상도와 주사율 설정
  • Moonlight 클라이언트 페어링
  • 연결 상태 확인
  • 진단 정보 확인
  • 호스트 수준 설정 관리

일상적인 사용에 명령줄이 필요하지 않습니다.


익숙한 Moonlight 사용

Avalon은 기존 Moonlight 스트리밍 경험을 그대로 활용하도록 설계되었습니다.

다음과 같은 장치에서 Moonlight를 계속 사용할 수 있습니다.

  • Windows
  • Linux
  • macOS
  • Android
  • iOS / iPadOS
  • Android TV
  • Moonlight가 지원하는 스마트 TV와 스트리밍 장치

Avalon이 바꾸는 것은 호스트 쪽 구성입니다. 완전히 새로운 스트리밍 클라이언트를 배울 필요가 없습니다.


사용 사례

가정용 게임

한 대의 게이밍 PC를 가족 구성원들이 동시에 사용할 수 있는 여러 독립 게임 환경으로 만들 수 있습니다.

한 사람이 거실 TV에서 플레이하는 동안 다른 사용자가 휴대용 기기나 노트북에서 별도의 인스턴스에 연결할 수 있습니다.

멀티 계정 및 멀티 인스턴스

같은 컴퓨터에서 서로 다른 애플리케이션, 계정, 게임 세션을 분리된 Windows 환경으로 실행할 수 있습니다.

원격 워크스테이션

한 대의 고성능 데스크톱을 개별적으로 접근 가능한 여러 원격 작업 공간으로 사용할 수 있습니다.

테스트와 개발

소프트웨어 테스트, 자동화, 호환성 검증, 분리된 사용자 환경을 위해 여러 Windows 세션을 유지할 수 있습니다.

Homelab 및 셀프 호스팅

고성능 Windows 시스템을 중앙에서 관리되는 다중 사용자 원격 컴퓨팅 호스트로 활용할 수 있습니다.


Avalon의 동작 방식

Avalon은 내부적으로 여러 계층을 조정합니다.

Web Management
      │
      ▼
Avalon Control Service
      │
      ▼
Windows Sessions
Virtual Displays
Streaming Processes
Input / Audio Routing
      │
      ▼
Moonlight Clients

일반 사용자는 이 내부 구현을 이해할 필요가 없습니다.

인스턴스를 만들면 Avalon이 세션, 디스플레이, 스트리밍 환경, 수명 주기를 준비하고 사용자는 클라이언트에서 연결합니다.


격리 모델

Avalon은 Windows 세션 수준의 격리를 제공합니다.

각 인스턴스는 자체 Windows 세션, 데스크톱, 애플리케이션, 디스플레이, 입력 경로, 오디오 경로를 가집니다.

하지만 Avalon 인스턴스는 완전한 가상 머신이 아닙니다.

다음 리소스는 공유됩니다.

  • 동일한 Windows 호스트 설치
  • 동일한 커널
  • 동일한 물리 CPU
  • 동일한 물리 GPU
  • 동일한 호스트 하드웨어 자원

따라서 Avalon을 VM 수준의 보안 경계로 간주해서는 안 됩니다.

목표는 하드웨어 가상화가 아니라 효율적인 다중 사용자·다중 데스크톱 스트리밍입니다.


현재 상태

Avalon은 현재 Alpha 단계입니다.

아키텍처, 관리 인터페이스, 호환성 계층, 장치 스택이 계속 발전하고 있습니다.

현재는 다음과 같은 사항이 발생할 수 있습니다.

  • 호환성을 깨는 변경
  • 불완전한 하드웨어 호환성
  • UI 변경
  • 드라이버 및 세션의 예외 상황
  • 안정 버전 이전에 변경될 기능 동작

현재 Avalon을 중요한 프로덕션 인프라로 사용하는 것은 권장하지 않습니다.

테스트 결과, 로그, 재현 가능한 버그 보고, 실제 사용 피드백이 매우 중요합니다.


플랫폼

현재 대상 플랫폼은 다음과 같습니다.

Windows 10 x64 / Windows 11 x64

Avalon은 Windows 데스크톱, 세션, 그래픽 모델을 중심으로 설계됩니다.

다른 호스트 운영체제 지원은 현재 주요 개발 목표가 아닙니다.


성능

실제 스트리밍 성능은 다음과 같은 여러 요소에 따라 달라집니다.

  • GPU
  • 인코더 지원
  • 그래픽 드라이버
  • 해상도
  • 주사율
  • 코덱
  • 네트워크 품질
  • 클라이언트 디코딩 성능
  • 동시에 실행되는 인스턴스 수

Avalon은 모든 시스템에서 특정 해상도, 주사율, HDR 모드, 동시 인스턴스 수를 보장하지 않습니다.

테스트 범위가 넓어짐에 따라 호환성 문서를 계속 상세화할 예정입니다.


프로젝트 철학

Avalon은 단순한 생각에서 출발합니다.

강력한 PC가 항상 하나의 화면, 하나의 데스크톱, 한 명의 사용자에게만 제한될 필요는 없다.

호스트는 한 대일 수 있지만 그 위에서 실행되는 경험은 하나일 필요가 없습니다.


개발

이 README는 Avalon의 안정적인 제품 소개로 유지합니다.

실시간 개발 진행 상황과 프로젝트 메시지는 devlog.md를 확인하세요.

버그 보고, 질문, 기능 요청은 GitHub Issues를 이용하세요.


Avalon

하나의 호스트. 여러 인스턴스.