Home 기술 문서 서버 측에서 비디오 QoE 측정: 리버퍼링 예측
Applications

서버 측에서 비디오 QoE 측정: 리버퍼링 예측

About The Author

Outline

비디오 품질 및 리버퍼

비디오 스트리밍 초창기에는 시청자들이 독점 컨텐츠에 액세스하기 위해 실망스러운 재생 경험을 기꺼이 감당했습니다. 여러 디스트리뷰터 간에 콘텐츠를 공유하는 콘텐츠 제공업체의 수가 증가함에 따라 시청자 유지에 있어 체감 품질(QoE)이 필수적인 요소가 되었습니다.

체험 품질이란 사용자가 비디오 스트림을 시청하는 전반적인 경험을 말합니다. QoS(Quality of Service)와 달리 QoE는 보다 주관적인 문제이므로 특정 수준을 측정하거나 보장하기가 어렵습니다. QoE는 비디오 서비스가 플랫폼 성능을 명확하게 파악하기 위해 추적하는 여러 KPI(핵심 성과 지표)로 구성됩니다. 이러한 품질 지표는 리버퍼링 또는 광범위한 비트레이트 변동과 같은 특정 관심 영역으로 세분화될 수 있습니다.

다양한 지표 중에서 리버퍼링은 시청자가 가장 눈에 띄고 성가신 오류입니다. 그 작은 회전하는 바퀴는 나쁜 시청자 경험의 상징입니다. 비디오 업계의 연구 결과에 따르면 시청자는 리버퍼링이 발생하면 스트리밍을 이탈하는 것으로 나타났습니다. 리버퍼링 및 QoE 저하의 원인을 정확히 파악하기가 어려울 수 있습니다. 이는 시청자의 ISP(인터넷 서비스 공급자), CDN(콘텐츠 전송 네트워크), 클라이언트의 브라우저/플레이어 앱 또는 원래 게시자의 비디오 인프라 전반의 소스에서 비롯될 수 있습니다.

ISP 또는 게시자의 문제는 대부분 우리가 통제할 수 없는 문제이지만, 이제는 CDN에서 발생하는 QoE 문제를 식별하고 해결할 수 있는 실행 가능한 데이터를 캡처할 수 있습니다. 이를 위해 웹 서버 로그를 사용하여 비디오 QoE 문제를 식별하기 위해 “Estimate Rebuffer”라는 알고리즘을 개발했습니다. 이 실시간 모니터링 시스템은 세분화된 데이터를 사용하여 QoE 문제를 식별하고 드릴다운하여 근본 원인과 해당 해결 조치를 파악합니다. 이 게시물에서는 이 알고리즘이 QoE 문제를 결정하는 방법과 QoE를 개선하는 데 어떻게 사용할 수 있는지 살펴보겠습니다.

추정 리버퍼 알고리즘 개요

QoE를 추적하는 한 가지 방법은 플레이어가 QoE 데이터를 CDN으로 전송하는 것입니다. 이를 위해서는 플레이어와 클라이언트가 소프트웨어 개발 키트(SDK)를 채택해야 합니다. 또한 재생 장치의 다양성을 고려할 때 클라이언트측 QoE 지표를 일관성 있게 캡처하는 것은 거의 불가능합니다. Estimate Rebuffer 알고리즘은 플레이어/클라이언트 변경 또는 SDK 채택의 필요성을 줄여줍니다. 클라이언트 측에서 비콘을 통해 전송되는 정보가 필요하지 않기 때문에 추정치입니다. 그러나 데이터 센터와 전송 네트워크 전반에 걸쳐 광범위하게 제공되므로 클라이언트 측에 비해 QoE 문제의 근본 원인을 훨씬 더 명확하게 파악할 수 있습니다.

Estimate Rebuffer 도구는 플랫폼의 비디오 서비스에서 서버측 클라이언트 액세스 로그를 사용하여 QoE 문제를 식별합니다. QoE를 평가하기 위해 세 가지 정보를 사용합니다.

  • 클라이언트가 자산/비디오 스트림 청크를 요청한 타임스탬프
  • 자산/비디오 스트림 청크의 파일 이름
  • 세션 또는 클라이언트 식별자

타사 툴이 없어도 이 정보를 통해 Estimate Rebuffer 알고리즘은 다음을 포함하여 QoE에 영향을 미치는 주요 요소를 결정할 수 있습니다.

  • 리버퍼링 – 이 알고리즘은 클라이언트에서 관찰한 리버퍼 수, 리버퍼 이벤트 지속 시간 및 비디오 스트림 시청 시간에 대한 리버퍼링의 비율을 상세히 설명합니다.
  • 평균 비트 전송률 – 비디오 품질은 비디오 비트 전송률의 함수입니다. 평균 비트 전송률이 높을수록 비디오 화질이 향상되고, 사진이 선명하고 또렷하며, 색상이 풍부하고, 환경이 개선됩니다.
  • 변동률 – 시청자는 비트레이트의 변동에 부정적으로 반응하는 경향이 있으며, 일정한 비트레이트를 선호합니다. 이 메트릭은 비디오 스트림이 품질을 변경하는 횟수를 결정합니다.
  • 품질 분배 – 이를 통해 특정 클라이언트에게 제공되는 비디오의 비율을 결정할 수 있습니다. 예를 들어, 80%는 고품질, 10%는 중간, 10%는 낮은 품질로 제공되었습니다.

작동 방식

Estimate Rebuffer 알고리즘은 어떻게 두 가지 정보만으로 QoE를 평가할 수 있습니까? 한 번 살펴보겠습니다.

ABR(Adaptive Bitrate) 비디오 스트림은 많은 개별 비디오 청크 또는 자산으로 구성됩니다. 각 청크는 일반적으로 4초로 고정된 크기입니다. 예를 들어, 40초 ABR 비디오 스트림은 10개의 청크(40/4 = 10개의 청크)를 가진다.

각 청크의 이름은 A1.TS, A2.TS, A3.TS…A10.TS 등과 같이 순차적으로 지정됩니다. 첫 번째 문자는 품질 유형입니다. 우리의 경우 : A가 가장 낮고, B가 A보다 높고, C가 B보다 높습니다. 이러한 지식을 바탕으로 우리는 각 클라이언트의 요청을 살펴보고 순서대로 확인합니다. 예를 들어 A1.TS, B2.TS, A3.TS와 같이 품질이 변경되면 변동 속도 지표에 추가합니다.

클라이언트가 청크를 요청한 시기와 각 청크의 길이(4초)를 알고 있기 때문에 요청된 모든 청크에 대해 모든 시간/기간을 추가할 수 있습니다. 사이에 간격이 있으면, 플레이어가 과거에 요청한 청크 수보다 긴 간격을 요청하면, 버퍼에 있는 비디오인, 우리는 그것을 리버퍼로 계산합니다. 또한 버퍼링된 비디오 클라이언트가 CDN으로부터 새로운 청크 요청을 했을 때 얼마나 많이 시청했는지도 고려합니다.

이 알고리즘은 현재 Edgio인 Verizon Media에만 국한되지 않습니다. 유사한 파일 명명 규칙을 사용하는 한 Edgio 전송 네트워크의 다른 비디오 서비스로 확장할 수 있습니다.

애플리케이션

QoE 데이터를 활용하면 특정 문제를 디버깅하고 성능이 저하된 네트워크를 식별하는 등 여러 가지 방법으로 QoE를 개선할 수 있습니다. QoE 문제를 파악하고 나면 그 원인을 쉽게 파악할 수 있습니다.

QoE가 좋지 않을 경우 데이터센터별 QoE 지표를 살펴보고 어떤 데이터센터가 QoE가 좋지 않음을 확인했는지 파악할 수 있습니다. 데이터 센터를 식별한 후에는 드릴다운하여 원인을 파악하고 해결 방법을 권장할 수 있습니다. 예를 들어, 한 가지 해결 방법은 다음 라이브 비디오 스트림 동안 특정 네트워크를 사용하지 않는 것입니다. 해당 네트워크가 장애를 일으키기 쉽습니다. 일반적으로 리버퍼링 문제가 발생하면 이벤트가 새 트래픽을 위한 공간을 만들기 전에 트래픽을 수동으로 이동합니다. 추정 리버퍼 알고리즘의 데이터를 기반으로 트래픽 관리 팀은 게임이 시작되기 전에 용량 문제를 방지하기 위해 게임 전 버퍼를 만들어 트래픽을 이동할 수 있습니다.

또한 이 시스템은 실시간으로 작동할 수 있기 때문에 라이브 스트리밍 비디오를 시청하는 동안 사전에 시정 조치를 취할 수 있습니다. 예를 들어 QoE가 낮은 데이터 센터의 트래픽을 더 건강한 데이터 센터로 이동하는 일이 수반될 수 있습니다. 실시간 오류 감지 및 해결은 리버퍼링 또는 기타 문제가 발생하는 클라이언트 수를 줄이는 데 매우 효과적인 도구입니다.

두려운 회전 바퀴를 제거하는 것은 결코 가능하지 않을 수 있지만 Estimate Rebuffer 알고리즘과 같은 서버 측 분석 도구는 외관을 훨씬 덜 빈번하게 만들기 위해 먼 길을 간다.