>>

09-oktober-2016, min leestijd

Ericsson garandeert performance streaming media met Computest

Het testen van mediaplatformen kun je bijna een aparte discipline noemen. Je hebt altijd te maken met een indrukwekkende piekbelasting waarvoor het noodzakelijk is in de test vele duizenden potentiële gebruikers na te bootsen. Dit is ook het geval bij de performance testen die we bij Ericsson uitvoerden voor het streaming-platform dat zij inzetten voor een Nederlandse mediaorganisatie.

Ericsson levert sinds een jaar de ‘Ericsson Managed Player’. Daarmee kunnen mediabedrijven streaming content aanbieden via internet. Zo zendt een van de klanten van Ericsson live wedstrijden uit van een internationale voetbalcompetitie. Je ziet dat op een non lineaire manier content consumeren, zoals ook via Netflix gebeurt, snel toeneemt. En het succes van deze diensten valt of staat met een goede gebruikservaring.

Grootschalige testen

Ericsson zocht naar een partij die het systeem zou kunnen testen en daarnaast ook levensecht kon nabootsen hoe de consument de diensten ervaren. Omdat wij vrijwel de enige partij zijn die dergelijke grootschalige testen goed kan uitvoeren, kwam Ericsson bij Computest terecht.

Per voetbalwedstrijd die de klant van Ericsson uitzendt, zijn er zo’n 50.000 consumenten die gebruikmaken van het streaming-platform. Dit is belangrijke informatie als uitgangspunt voor je test. Voor de performance van het Ericsson-platform speelden twee factoren een belangrijke rol: werkt de origin (ofwel het verdeelstation) bij Ericsson naar behoren en kunnen de CDN’s (Content Delivery Network) van de providers het aan? We hebben beide zaken nader bekeken.

Bottleneck

Het testen van de origin is van belang omdat dit de bron is van hetgeen je uiteindelijk thuis te zien krijgt. Dit is dan ook het eerste wat je test. De origin moet geïsoleerd getest worden om goed te kunnen bepalen wat deze aankan, wat de mogelijke bottleneck is en hoe je deze eventueel nog verder kunt finetunen. Het CDN werkt weliswaar als een grote caching proxy waardoor niet iedere gebruiker rechtstreeks de video-files van de origin servers op hoeft te halen. Echter doordat er veel verschillende streams worden aangeboden en er veel CDN-servers zijn, wordt er toch een aanzienlijke load verwacht vanuit CDN naar de origin servers. Alleen een CDN voor je omgeving plaatsen is dus niet voldoende als je serieus veel gebruikers verwacht.

50.000 gebruikers nabootsen

Tijdens het testen hebben we samen met Ericsson echt de grens opgezocht van wat mogelijk was. Zo hebben we met een stresstest tot wel 50.000 kijkers nagebootst om zo de daadwerkelijke gebruikservaring te testen. We kunnen daarbij ook zien wat er bij het CDN en de keten verkeerd gaat. Zo vonden we onder andere dat bepaalde files niet ideaal werden gecached door het CDN vanwege een unieke timestamp in de URL. Elk verzoek zette een CDN-edge-server door naar de origin en daarmee werd de origin onnodig veel belast. Ook zagen we dat er soms fouten ontstonden, omdat files zogenaamd niet bestonden. Dit kwam door timing issues waar maar een paar procent van alle gebruikers last had. Iets wat je alleen vindt door het grote aantal direct op het CDN te simuleren. Samen met Ericsson hebben we dit goed kunnen testen en verbeterpunten kunnen vinden en oplossen. Tevens zijn we tot een record bandbreedte van 50 Gbps gekomen!

Loadfarm

Om de testen voor Ericsson te kunnen doen hebben we gebruikgemaakt van onze eigen loadfarm. Deze kan testen uitvoeren met meer dan 250.000 gelijktijdige gebruikers en miljoenen unieke gebruikers per uur. Met 50 Gbps netwerkcapaciteit en 2.000 unieke IP-adressen kunnen we zeer realistisch gebruikers simuleren. Bij het testen mag er technisch geen enkel verschil zijn met de praktijk; de geteste website mag dus geen verschil zien tussen echte gebruikers en onze gesimuleerde gebruikers. We letten dan ook niet alleen op wat we raken, maar ook op hoe.

Ervaring

Het bewijst zich altijd in de praktijk dat testen een essentieel onderdeel is voor diensten zoals Ericsson die levert. Ik heb ervaren dat geen enkele grote opzet in de praktijk in één keer goed werkte. Bedenk dus voordat je een dergelijke omgeving introduceert, dat je tijd in moet ruimen om te testen of het ook daadwerkelijk doet wat het moet doen. Wat is de bandbreedte die je wil halen en hoeveel gebruikers wil je getest hebben? Ook al gebruik je het CDN als je veel gebruikers op je platform verwacht, het gaat nooit gelijk probleemloos. Natuurlijk adviseren we hierbij graag. Aan ervaring ontbreekt het in ieder geval niet:-).