Хмарні ігри: стрес-тест 5 хмарних ігрових сервісів поганим інтернетом

Хмарні ігри: стрес-тест 5 хмарних ігрових сервісів поганим інтернетом

Близько року тому я публікувала статтю "Хмарні ігри: оцінка можливостей сервісів для гри на слабких ПК з перших рук". У ній аналізувалися плюси та мінуси різних сервісів для хмарних ігор на слабких ПК. Я в ході гри тестувала кожен сервіс і поділилася загальним враженням.

У коментарях до тієї та інших подібних статей читачі часто ділилися враженнями про різні ігрові сервіси. Нерідко зустрічалися протилежні думки про одне й те саме. У когось все ідеально, а хтось грати не може через лаги та фризи. Тоді у мене виникла ідея оцінити якість роботи цих сервісів у різних умовах – від ідеальних до жахливих. Йдеться про якість мереж, адже далеко не завжди користувач може похвалитися швидким та безпроблемним каналом зв'язку, вірно? Загалом, під катом оцінка сервісів із симуляцією різної якості роботи мережі.

У чому взагалі проблема?

Як і говорилося вище - як зв'язок. А точніше — у втраті пакетів під час гри. Чим вище втрати, тим більше проблем у геймера, тим менше він задоволений грою. Адже рідко у кого є ідеальний канал зв'язку на кшталт оптоволокна до пристрою, причому з виділеним, а не пошареним на всіх мешканців багатоквартирного будинку інтернетом.

Для довідки - при швидкості з'єднання 25 Мбіт/с для передачі 1 кадру/кадра потрібно 40-50 пакетів даних. Чим більше пакетів губиться, тим менш якісною стає картинка, і тим сильніше помітні лаги та фризи. В особливо важких випадках грати просто неможливо.

Звичайно, сам хмарний сервіс ніяк не може вплинути на ширину і стабільність каналу користувача (хоча було б добре, звичайно). Але можна передбачити різні способи нівелювання проблем зв'язку. Які послуги справляються з проблемою найкраще — побачимо нижче.

Що саме порівнюємо?

Звичайний ПК (Intel i3-8100, GTX 1060 6 GB, 8GB RAM), GeForce Now (його російську версію NFG з серверами у Москві), Loudplay, Вихровий, клавіша відтворення, Стадії. На всіх сервісах, крім Stadia, вивчаємо якість гри в «Відьмаку». Google Stadia на момент написання статті цієї гри не мав, тому довелося тестувати іншу — «Одіссею».

Які умови та методика тестування?

Тестуємо із Москви. Провайдер — МГТС, тариф 500 Мбіт/с, кабельне підключення, не WiFi. Налаштування якості графіки в сервісах беремо за замовчуванням, роздільна здатність - FullHD.

За допомогою програми сокирний моделюємо проблеми з мережею, а саме, втрати пакетів різного виду та обсягу.

Помірні одиночні втрати. Це коли губиться всього 1 пакет і втрати розподілені більш-менш рівномірно. Так, рівномірні втрати 10% означають, що на 100 пакетів кожен 10-й втрачається, але завжди лише 1 пакет. Проблема зазвичай проявляється під час спотворень (екранування) на каналі від клієнта до сервера.

Тестуємо рівномірні втрати 5%, 10%, 25%.

Нерівномірні масові втрати, коли в якийсь момент відразу губиться 40-70 пакетів поспіль. Такі втрати найчастіше виникають при проблемах з мережевим обладнанням (роутерами тощо) у користувача чи провайдера. Можуть бути пов'язані з переповненням буфера мережного обладнання лінії зв'язку «користувач — сервер». WiFi з товстими стінами теж може спричинити такі втрати. Завантаження бездротової мережі через наявність великої кількості пристроїв — ще одна причина, дуже характерна для офісів та багатоквартирних будинків.

Тестуємо нерівномірні втрати 0,01%, 0,1%, 0,5%.

Нижче я аналізую всі ці кейси та прикладаю відеопорівняння для наочності. А наприкінці статті даю посилання на сирі, немонтовані відео геймплей з усіх сервісів і кейсів — там можна детальніше розглянути артефакти, а також технічну інформацію (у всіх сервісах, крім Stadia, записані дані технічної консолі; Stadia таких не знайшла).

Поїхали!

Нижче – 7 сценаріїв стрес-тесту та відео з таймстампами (відео одне й те саме, для зручності в кожному пункті перегляд починається з потрібного моменту). Наприкінці посту - вихідні ролики для кожного з сервісів. Відео мені допоміг зробити хороший знайомий, за що йому дякую!

Сценарій №1. Ідеальні умови. Нульові втрати у мережі

Все, як і має бути в ідеальному світі. Проблем зі зв'язком немає, розривів - жодного, перешкод немає, ваша точка доступу - світильник інтернету. У таких тепличних умовах майже всі учасники тестування показують себе гідно.


ПК

У кожен сценарій ми взяли кадри з гри на ПК як стандарт. Зрозуміло, що на нього якість мережі не впливає, гра запускається на ПК локально. Наявність цих кадрів відповідає питанням “а чи відчувається різниця під час гри у хмарі проти грою своєму ПК”. В ідеальних умовах у нашому випадку не відчувається у більшості сервісів. Нижче про ПК вже нічого не будемо писати, просто запам'ятайте, що він є.

GeForce Now

Все добре, зображення чітке, процес йде гладко, без фризів.

Вихровий

Ось Vortex псує наш бездоганний світ. У нього відразу ж почалися проблеми — картинка гірша, ніж решта, плюс добре помітні «гальма». Можлива проблема - ігрові сервери розташовані далеко від Москви плюс залізо на ігрових серверах, схоже, слабше і FullHD погано вивозить. У всіх тестах Vortex показав себе погано. Якщо хтось має позитивний досвід гри з Vortex — пишіть у коментарях, поділіться, з якого місця грали і наскільки добре все склалося.

клавіша відтворення

Все добре, прямо як на локальному ПК. Видимих ​​проблем на кшталт фризів, лагів тощо. ні.

Loudplay

Сервіс демонструє чудову картинку, видимих ​​проблем немає.

Стадії

Ігровий сервіс від Google працює відмінно, незважаючи на те, що серверів у РФ у нього немає, та й взагалі офіційно Stadia не працює в Росії. Тим не менш, все гаразд. Шкода, звичайно, що «Відьмака» у Stadia не було на момент гри, але що вдієш, взяли "Одіссею" - теж вимоглива, теж про мужика, який рубає людей і тварин.

Сценарій №2. Рівномірні втрати 5%

У цьому тесті зі 100 пакетів втрачається приблизно кожен 20-й. Нагадаю, що для малювання одного кадру потрібно 40-50 пакетів.


GeForce Now

У сервісу від Nvidia все гаразд, проблем немає. Картинка трохи більш замилена, ніж у Playkey, але «Відьмак», як і раніше, грабельний.

Вихровий

Тут усе стало ще гірше. Чому — не зовсім незрозуміло, швидше за все, не передбачена надмірність чи мінімальна. Надмірність - це завадостійке кодування даних, що пересилаються (FEC - Forward Error Correction). Ця технологія відновлює дані при частковій втраті через проблеми в мережі. Реалізувати та налаштувати її можна по-різному, і, судячи з результатів, творці Vortex у цьому не досягли успіху. Навіть із мізерними рівномірними втратами грати не вийде. Під час наступних тестів Vortex просто «помер».

клавіша відтворення

Все гаразд, особливої ​​різниці з ідеальними умовами немає. Можливо, допомагає те, що сервери компанії розташовані навіть у Москві, звідки проводилися випробування. Ну і, можливо, краще налаштована вищезазначена надмірність.

Loudplay

Сервіс різко став неграбним, незважаючи на відносно малі втрати пакетів. У чому може бути справа? Припустимо, що Loudplay працює з TCP-протоколом. У цьому випадку, поки немає підтвердження отримання пакета, інші пакети не надсилаються, система чекає на підтвердження про доставку. Відповідно, якщо пакет загубився, підтвердження про його доставку не буде, нові пакети не вирушать, картинка стане колом, кінець історії.

А ось якщо використовувати UDP, то підтвердження отримання пакета не знадобиться. Наскільки можна судити, решта сервісів, крім Loudplay, використовують UDP-протокол. Якщо це не так, виправте мене, будь ласка, в коментарях.

Стадії

Все грабельно. Іноді пікселізується картинка, є мінімальні затримки відгуку. Можливо, неідеально відпрацьовує завадостійке кодування, звідси незначні артефакти при грабельному в цілому потоці.

Сценарій №3. Рівномірні втрати 10%

Втрачаємо кожен 10-й пакет на сотню. Це вже виклик для сервісів. Щоб ефективно справлятися з такими втратами, потрібні технологи відновлення та/або повторної відправки втрачених даних.


GeForce Now

У Geforce спостерігаються невеликі просідання як відеопоток. Наскільки можна судити, GFN реагує на проблеми в мережі, намагаючись зменшити їх. Сервіс зменшує бітрейт, тобто кількість біт передачі даних. Так він намагається знизити навантаження на недостатньо якісну, на його думку, мережу та зберегти стабільне з'єднання. І до стабільності питань дійсно немає, але якість відео страждає відчутно. Бачимо значну пікселізацію картинки. Ну а оскільки моделювання передбачає постійну втрату 10% пакетів, зниження бітрейту не особливо допомагає, ситуація в норму не приходить.

У реальному житті картинка, швидше за все, буде не стабільно поганою, а плаваючою. Збільшилися втрати - зображення розмилилося; втрати скоротилися - зображення повернулося в норму і таке інше. Ігровий досвід це не на користь, звичайно.

клавіша відтворення

Особливих проблем немає. Ймовірно, алгоритм детектує проблеми на мережі, визначає рівень втрат і більше спирається на надмірність, а не на зниження бітрейту. Виходить, за 10% рівномірних втрат якість картинки практично не змінюється, користувач такі втрати навряд чи помітить.

Loudplay

Непрацездатний, він просто не запустився. У ході подальших тестів ситуація повторилася. Наскільки можна судити, цей сервіс ніяк не підлаштовується під проблеми з мережею. Можливо, саме TCP-протокол у тому винні. Найменші втрати паралізують сервіс повністю. Не дуже практичне для реального життя, звичайно.

Вихровий

Теж великі проблеми. Грати в таких умовах не можна, хоча картинка ще є і персонаж продовжує тікати, щоправда, ривками. Думаю, справа все в тій же погано реалізованій чи відсутній надмірності. Пакети губляться часто і не відновлюються. Через війну якість зображення деградує до неграбального рівня.

Стадії

На жаль, тут усе погано. Спостерігається розрив потоку, через що події на екрані відбуваються ривками, грати дуже складно. Можна припустити, що проблема виникла, як і у випадку з Vortex, через мінімальну надмірність або її відсутність. Я проконсультувалася з парою знайомих, які «в темі», вони заявили, що Stadia, швидше за все, чекає на повне складання кадру. На відміну від GFN, вона намагається врятувати становище тотальним зниженням бітрейту. У результаті артефактів немає, але з'являються фризи та лаги (у GFN, навпаки, фризів/лагів менше, але через низький бітрейт картинка зовсім неприваблива).

Інші послуги теж, схоже, не чекають повного складання кадру, замінюючи зниклу частину фрагментом старого кадру. Це хороше рішення, в більшості випадків користувач не помітить каверзи (у секунду змінюється 30+ кадрів), хоча часом можуть виникати артефакти.

Сценарій №4. Рівномірні втрати 25%

Втрачається кожен четвертий пакет. Стає дедалі страшніше цікавіше. Взагалі, при такому "дірявому" поєднанні нормальна гра в хмарі навряд чи можлива. Хоча деякі учасники порівняння справляються, хай не є ідеальним.


NFG

Проблеми вже дуже помітні. Картинка пікселізована та замилена. Грати ще можна, але це вже зовсім не те, що пропонував GFN на самому початку. І точно не те, як потрібно грати у гарні ігри. Красу вже не оцінити.

клавіша відтворення

Ігровий процес йде непогано. Плавність є, хоча картинка небагато і страждає. До речі, ліворуч угорі — цифри, скільки відновлюється втрачених пакетів. Як бачимо, відновлюється 96% пакетів.

Loudplay

Не запустився.

Вихровий

Грати не можна навіть за дуже великого бажання, фризи (зупинка зображення, відновлення відеопотоку з нового фрагмента) ще помітніше.

Стадії

Сервіс практично неграбальний. Причини вже називалися вищими. Чекає на складання кадру, надмірність мінімальна, за таких втрат її не вистачає.

Сценарій №5. Нерівномірні втрати 0,01%.

На 10 000 пакетів 1 раз втрачається 40-70 пакетів поспіль. Тобто втрачаємо приблизно 1 із 200 кадрів. Буває, якщо буфер мережі переповнений і всі нові пакети просто викидаються (дропаються), поки буфер не звільниться. Всі учасники порівняння, окрім Loudplay, такі втрати тією чи іншою мірою відпрацювали.


NFG

Картинка зовсім трохи втратила якість, стала дещо каламутною, але все цілком грабельно.

клавіша відтворення

Все дуже непогано. Картинка плавна, зображення хороше. Грати можна без проблем.

Loudplay

Перші кілька секунд картинка була, герой навіть побіг. Але зв'язок із сервером майже відразу ж було втрачено. Ох цей TCP-протокол. Перша ж втрата зрубала сервіс на корені.

Вихровий

Спостерігаються звичайні проблеми. Фризи, лаги і це все. Грати було б дуже складно за таких умов.

Стадії

Грабельно. Помітні невеликі просідання, картинка іноді пікселізується.

Сценарій №6. Нерівномірні втрати 0,1%

На 10 000 пакетів 10 разів губиться 40-70 пакетів поспіль. Виходить, що втрачаємо 10 із 200 кадрів.

Відразу скажу, що помітні проблеми виникли у більшості сервісів. Наприклад, смикається картинка, тож надмірність тут уже не допомагає. Тобто позитивний ефект у разі використання технології надмірності є, але він невеликий.

Справа в тому, що час реакції на дії користувача та самої гри обмежений, відеопотік повинен бути безперервним. Відновити потік до прийнятної якості не можна незважаючи на жодні зусилля сервісів.

З'являються артефакти (спроба компенсувати втрату пакетів, даних не вистачає) та ривки зображення.


NFG

Якість картинки помітно впала, явно знижений бітрейт, причому дуже значно.

клавіша відтворення

Справляється краще — мабуть тому, що добре налаштована надмірність, плюс алгоритм бітрейту вважає втрати не дуже високими і не перетворює картинку на пікселізовану кашу.

Loudplay

Не запустився.

Вихровий

Запустився, але з жахливою якістю картинки. Дуже помітні ривки та просідання. Грати за таких умов навряд чи можливо.

Стадії

Добре помітні ривки, це чіткий показник, що надмірності не вистачає. Зображення завмирає, потім з'являються інші кадри, виникає обрив відеопотоку. Грати, в принципі, можна, якщо є велике бажання та клінічна схильність до самокатування.

Сценарій №7. Нерівномірні втрати 0,5%

На 10 000 пакетів 50 разів втрачається 40-70 пакетів поспіль. Втрачаємо 50 кадрів із 200.

Ситуація класу "формний пі***ц". Ваш роутер іскрити, у провайдера аварія, дроти погризли миші, але ви все одно хочете грати у хмарі. Який сервіс вам вибрати?


NFG

Грати вже дуже складно, якщо взагалі можливо, дуже знижений бітрейт. Втрачаються кадри, замість нормальної картинки ми бачимо «мило». Кадри не відновлюються – інформації для відновлення не вистачає. Якщо GFN відновлення взагалі передбачено. Те, як агресивно сервіс намагається рятувати становище бітрейтом, викликає сумніви щодо його готовності працювати з надмірністю.

клавіша відтворення

Є спотворення кадру, зображення посмикується, тобто повторюються елементи окремих кадрів. Видно, що більшість “битого” кадру було відновлено зі шматків попереднього. Тобто, у нових кадрах є частини старих кадрів. Але зображення при цьому більш-менш чітке. Управляти можна, але в динамічних сценах, наприклад, у бійці, де потрібна хороша реакція, — складно.

Loudplay

Не запустився.

Вихровий

Запустився, але краще не запускався — грати в це не можна.

Стадії

Сервіс у таких умовах неграбальний. Причини - необхідність чекати на складання кадру і слабка надмірність.

Хто переможець?

Рейтинг, звісно, ​​суб'єктивний. У коментарях можна посперечатися. Ну і перше місце, звісно, ​​за локальним ПК. Саме через те, що хмарні сервіси вкрай чутливі до якості мережі, а якість це досить нестабільна у реальному світі, власний ігровий ПК залишається поза конкуренцією. Але якщо його з якихось причин немає, дивіться рейтинг.

  1. Локальний ПК. Очікувано.
  2. клавіша відтворення
  3. GeForce Now
  4. Google Stadia
  5. Вихровий
  6. Loudplay

Як висновок ще раз нагадаю, що відіграє головну роль у хмарному геймінгу в плані стійкості до проблем на мережі:

  • Який мережевий протокол використовується. Для передачі відеопотоку найкраще використовувати UDP. Підозрюю, що Loudplay використовує TCP, хоча достовірно це мені невідомо. Але результати тестування ви бачили.
  • Чи реалізовано завадостійке кодування (FEC - Forward Error Correction, воно ж надмірність). Також важливим є спосіб її підстроювання під втрати пакетів. Як ми побачили, від реалізації якість картинки значно залежить.
  • Як настроєно адаптацію бітрейту. Якщо сервіс рятує ситуацію насамперед бітрейтом, це сильніше впливає на картинку. Запорука успіху — тендітна рівновага між маніпуляціями бітрейтом та надмірністю.
  • Як настроєно постобробку. Якщо виникають проблеми, кадри або скидаються, або відновлюються, або дозбираються фрагментами старих кадрів.
  • Близькість серверів до геймера та потужність заліза теж значно впливають на якість гри, але це правильно і для ідеальної мережі. Якщо пінг до серверів дуже високий, навіть на бездоганній мережі комфортно не пограєш. З пінгом у цьому дослідженні ми не експериментували.

Як і обіцяла, ось посилання на сирі відео з різних сервісів у всіх кейсах.

Джерело: habr.com

Додати коментар або відгук