Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 51 reacties

Skype heeft in een blogpost uitgelegd waarom de diensten van het bedrijf eerder deze maand voor langere tijd niet bereikbaar waren. Een bug in de Skype-client zorgde ervoor dat deze crashte, waardoor het aantal supernodes flink inzakte.

Skype-splashschermpjeOp 22 december werd een cluster servers dat zich bezighoudt met het afleveren van offline verstuurde berichten overbelast. Door deze overbelasting ontvingen sommige Skype-clients een vertraagde response van de server, wat bij bepaalde versies van de client een crash veroorzaakte. Omdat Skype via een peer-2-peer-systeem werkt, zorgde de uitval van deze clients ervoor dat er 25 tot 30 procent minder supernodes aanwezig waren op het netwerk. Dit zorgde voor een ongebruikelijk hoge belasting van de resterende supernodes.

Deze supernodes hebben een ingebouwd mechanisme dat de node uitschakelt als de belasting te hoog wordt, om zo het hostsysteem te beschermen. De hoge belasting zorgde voor een domino-effect waarbij steeds meer supernodes offline gingen en zo de resterende supernodes door verhoogde belasting met zich meenamen. Als gevolg hiervan lag het netwerk van Skype nagenoeg plat voor een periode van 24 uur.

Het bedrijf besloot daarop duizenden Skype-clients aan te melden, die daarna als supernode gingen fungeren en zo het netwerk begonnen te stabiliseren. In de nacht van 23 december nam de belasting op de inviduele supernodes van gebruikers af, mede omdat het bedrijf tijdelijk de videobelfunctie uitgeschakeld had. Op het moment van schrijven zijn een deel van de supernodes die Skype uit noodzaak toevoegde nog actief, omdat het bedrijf verwacht dat met oud & nieuw de belasting op het netwerk hoog op kan lopen.

Skype zegt maatregelen genomen te hebben die een dergelijke situatie in de toekomst moet voorkomen. Het bedrijf gaat zijn softwaretesting en updateprotocollen herzien zodat het bugs in clients sneller kan ontdekken en patchen. Voor 2011 had Skype al meer geld gereserveerd om aan uitbreiding van het netwerk te besteden.

Moderatie-faq Wijzig weergave

Reacties (51)

Des te opvallender is het dat Skype dan juist nu videobellen voor iOS introduceerd. Kunnen ze deze extra belasting nu dan wel aan vraag ik mij af?
Deze supernodes hebben een ingebouwd mechanisme dat de node uitschakelt als de belasting te hoog wordt, om zo het hostsysteem te beschermen. De hoge belasting zorgde voor een domino-effect
Ik snap het niet helemaal goed. Wanneer je het systeem als dusdanig ontwerpt, dan weet je toch dat je een domino aan het inbouwen bent?

Je hebt drie servers die automatisch elkaars taak over kunnen nemen. Dat is een mooie feature, tenzij deze drie servers altijd voor minimaal 70% belast zijn. En al helemaal niet wanneer je dan een fail-safe inschakelt die deze beide servers onbereikbaar maakt.

In dat geval moet er niet automatisch geswitcht worden (want dan wordt het dus 105% per server) maar moet je als beheerder kunnen ingrijpen.

Verder kun je natuurlijk kritiek hebben op het systeem van publieke supernodes an sich, want je legt de betrouwbaarheid van je netwerk een deels extern in handen. Skype heeft nu duizenden supernodes (zgn mega-supernodes) bij kunnen schakelen om het netwerk stabiel te krijgen. Dit betekent dat zij over die capaciteit beschikken. Ik neem aan dat hier kostenoverweging een rol speelt, maar of je dan in wilt boeten op kwalitiet/beschikbaarheid vraag ik mij af...

(
As we reported during the incident, in order to recover the core Skype functionality as quickly as possible, we utilized resources normally used to support Group Video Calling, to deploy supernodes
)

(Het doet me overigens een beetje denken aan die grote switch-storing (mei 2008, KPN en XS4ALL), waarbij door een bug ook een domino ingezet werd.)

[Reactie gewijzigd door Eagle Creek op 30 december 2010 15:16]

"Skype heeft nu duizenden supernodes (zgn mega-supernodes) bij kunnen schakelen om het netwerk stabiel te krijgen. Dit betekent dat zij over die capaciteit beschikken."

Dat waren de servers die ze normaal gebruiken om group videocalling mogelijk te maken. Dus die hebben ze niet "beschikbaar", die hebben ze beschikbaar "gemaakt". Nogal een wereld van verschil lijkt me :)
Ze hebben in de eerste plaats al honderden mega-supernodes bijgeschakeld. Voor zover ik kan lezen werd in dit stadium nog geen capaciteit van andere machines weggehaald.

Pas toen bleek dat dit niet voldoende was, hebben ze resources die voor groepsvideogesprekken bestemd zijn ingezet als mega-supernodes. Dan zou je er dus vanuit kunnen gaan dat die extra honderden uit het eerste stadium permanent bijgezet kunnen worden.

Feit blijft dat het mij een stuk praktischer lijkt dat Skype zelf meer mega-supernodes permanent in gebruik neemt om zo'n klap op te kunnen vangen. Maar zoals ik zei zal hier wel een kosten/baten-plaatje achter hangen.
Dat het netwerk uitviel heeft niets te maken met de reguliere belasting van hun netwerk. Als vloog uit doordat 25% van de supernodes uitvielen door een bug in een update en vervolgens ontstond een domino effect.

Dat betekent dus dat ze normaal altijd gewoon prima draaien
Dat wil dus wel zeggen dat de overige 75% van de nodes niet over de nodige vrije capaciteit beschikten om de extra 25% van de belasting te dragen. Als we even stellen dat elke supernode dezelfde specs heeft dan zou dat willen zeggen dat elke node een schamele 3% harder moest werken. We kunnen hier dus enkel uit besluiten dat het skype netwerk dicht aan zijn limieten zit.
een skype supernode is dus gewoon een client op jouw of mijn computer. het is maar goed dat er een limiter is ingebouwd in de client, want je wilt dus niet geDDOS't worden door je telefoonservice.

maar ... het impliceert dus wel, dat het slimme p2p schema dat skype heeft bedacht ook flink op z'n gat kan komen te liggen als de skype eigenaren geen dedicated server nodes online heeft. wat dus het geval was.

het zou slim zijn, om toch een aantal van deze nodes online te houden, zodat de service toch gegarandeerd kan blijven, en misschien om een signaal op te vangen dat er wat mis is met het netwerk. om dan proactief automatisch een extra aantal servernodes op te starten. zou ze sieren.

gelukkig dat er ook echte voip diensten bestaan.
Ach sip telefonie is al tig keer groter dan skype en op zich ook betrouwbaarder omdat het niet via p2p en gesloten protocol werkt.

Goede vraag is nu wat al er een ddos aanvalt komt op een paar supernodes, klapt het netwerk dan ook weer inelaakr. Gezien de bovenstaande verklaring lijkt dat een éénvoudige methode om het netwerk snel plat te krijgen inclusief dominoeffect.
Maar om dat effect te krijgen moet je dus wel eerst 25% van de super nodes ddosen. Dat gaat echt niet zomaar.
Want het moet wel gelijker tijd. Anders is het verkeer reeds overgenomen door een ander en is het schokeffect al verdwenen.

Op zich kan het, maar als je zo groot gaan ddossen kan je alles plat krijgen.
"een aantal" spernodes zei je? Ze hadden duizenden "mega" supernodes nodig van zichzelf (op zwaardere hardware die ze normaal voor videocalling gebruiken) nodig om het netwerk weer online te krijgen. Jouw en mijn pc zijn supernodes en zo zijn er tienduizenden in de wereld (als het geen honderdduizenden zijn, niet iedereen is supernode).

Dat zijn duizenden of zelfs tienduizenden targets om te DDossen, nuh, lijkt me niet heel praktisch :)
Als een kwart uitvalt moeten de overige nodes een kwart extra verkeer regelen, 4/3 van het normale verkeer is niet 3% maar 33% extra als ik me niet heel hard vergis ;)

Overigens kreeg ik netjes een bon voor 1 euro 'gratis' prepaid beltegoed van ze. Voor een dagje platliggen een best fijne oplossing :)
Hij zegt dat elke node afzonderlijk 3% hander moet werken, het lijkt lastig al elke node 33% harder moet werken aangezien je dan over de 100% uit komt.
De totale hoeveelheid werk wat die servers moeten verzetten wordt niet meer dan 100%. Er blijven ongeveer evenveel mensen inloggen en bellen. De hoeveelheid werk blijft hetzelfde. Maar als het werk van 100 servers wordt verdeeld over 75 servers, moet iedere server 1,33 keer zo hard werken (33%).

Dat betekent niet automatisch dat een server méér moet doen dan ie kán. Als een server maar op 5% van zijn kunnen werkt wat bandbreedte, geheugen gebruik en CPU time betreft om maar wat dingen te noemen, dan wordt ie daarna belast met 5 * 1,33 = 6,66%. Pas als die 33% extra werk buiten de beschikbare systeembronnen valt zal je lag of in dit geval crashes krijgen.

De enige conclusie die we kunnen trekken hieruit is dat supernodes blijkbaar voor méér dan 75% belast worden, en dat er dan niet 25% uit kan vallen. Bijvoorbeeld 75% * 1,33 = 100% en 76% * 1,33 = 101,33% belasting op een server. Een belasting per server van rond de 80% lijkt me nou niet abnormaal ofzo?

Overigens vind ik het vreemd dat nodes helemaal uitschakelen om de host te beschermen. Ze zouden gewoon de verbruikte bandbreedte en CPU time kunnen limiteren, zodat in ieder geval een deel van de gesprekken doorgang vindt, en niet alles op de rest van het overblijvende netwerk gedumpt wordt?

edit:

@cobis taba hieronder:

In het artikel spreken ze over de normale piek die ze dagelijks hebben:

"The initial crashes happened just before our usual daily peak-hour (1000 PST/1800 GMT)"

Die pieken vallen wat mij betreft onder normale verwachte belasting. Tenzij je het over pieken hebt zoals oud en nieuw, wanneer iedereen tegelijk probeert te bellen. Dat overbelast de GSM netwerken ook. Natuurlijk heeft alles eraan bijgedragen dat het als een domino effect plat ging, dat zal ik niet ontkennen. Maar normale dagelijkse pieken vind ik normale belasting, omdat je normaal tijdens dergelijke pieken geen overbelasting als in dit artikel beschreven zult zien. En dus stel ik die pieken gelijk aan 100% van het normale verkeer.

[Reactie gewijzigd door grasnek op 31 december 2010 09:56]

Je vergeet nog dat het aantal mensen net op dat moment wel steeg omdat het vlak voor piekuur begon. Dan loggen sowieso veel meer mensen in dan normaal. Veel van die mensen worden supernode, maar zijn dat nog niet direct. De combinatie van extra drukte + minder nodes maakte de crash mogelijk.

Algemene opmerking voor iedereen hier: lees even hele stuk van Skype als je dat nog niet gedaan hebt :)
Volgens mij zijn Supernodes geen servers maar gebruikers. Je wilt niet dat een app meer dan minimaal gebruik maakt van de PC terwijl de app niet gebruikt wordt.
neej, want


3/4 * 4/3 = 1

3/4 * 5/4 = 15/16, dat is minder dan 1 ;) blijft altijd lastig die breuken. Door de uitval moesten de overgebleven nodes dus 33% meer werk verzetten, dat is nogal wat. Allicht dat dit dus in de toekomst te voorkomen is door "reserve" supernodes achter de hand te houden.
Bedankt voor wiskunde lesje :+ .
Een 8 op rapport wiskunde en nog snap ik ze niet 8)7 . Blijft inderdaad erg moeilijk, die breuken.
Maar het klopt eigenlijk ook wel.
Een betere uitleg kan ik geven, nu jij me met de neus op het goede antwoord hebt gedrukt: De noemer (4) is de workload, de teller (3) zijn de beschikbare servers.
Je (ver)deeld de workload over 3 servers, dus mijn logisch denken was even naar de knoppen kennelijk }:O .
Dat wil dus wel zeggen dat de overige 75% van de nodes niet over de nodige vrije capaciteit beschikten om de extra 25% van de belasting te dragen.
Ik denk over het algemeen wel, maar omdat niet elke skype client eerst het hele netwerk van supernodes gaat nazoeken kwamen er (en dit is puur theorie) bij bepaalde supernodes wel teveel verzoeken binnen, waarna die zichzelf uitschakelden. In theorie zou een andere supernode het dan overnemen, maar omdat er in een keer 25% van die dingen uitvielen gingen er ook anderen mee toen ze ineens die 25% over moesten nemen. En van het een komt het ander.
Dan vraag ik me af of mobiele Skype apps ook als supernode fungeren.
nee. Je moet compleet bereikbaar zijn en genoeg bandbreedte hebben
Apart, dus de skype clients vormen op zich hun eigenskype netwerk, en er loopt verkeer van derden over jouw kskype sessie, of lees ik dat verkeerd?
Lijkt me alleen routeringen te doen aangezien skype hier 24/7 draait en toch niet echt een verhoogd bandbreedte slurpt ofzo... :9
Een node die lang aanstaat, en poorten heeft openstaan, kan inderdaad zomaar een supernode worden (zonder dat je het merkt) en dus veel verkeer voor derden (die achter een NAT zitten) gaan routeren.

Jouw node gaat dan inderdaad verkeer voor derden (encrypted welliswaar) routeren.
Apart, dus de skype clients vormen op zich hun eigenskype netwerk, en er loopt verkeer van derden over jouw kskype sessie, of lees ik dat verkeerd?
Nee, alleen over supernodes. Even zoeken, en hier staat (o.a.) wanneer je een supernode kunt worden (ten eerste moet je direct aan het internet zitten, dus niet via een NAT), en hoe je dat kunt voorkomen.

Ten tweede, er loopt geen verkeer van derden over je netwerk als je een supernode bent - het wordt alleen gebruikt om verbindingen met derden op te zetten. Beetje zoals een tracker werkt bij torrentverkeer.

[Reactie gewijzigd door YopY op 30 december 2010 14:28]

Interessant stukje! Fascinerend hoe zo'n p2p protocol organische trekjes kan vertonen...
Inderdaad een mooie uitleg. Ik vroeg mij al af wat het probleem was die dag.
Kan ik me alleen bij aansluiten. Niks geen onzin excuses maar een duidelijke uitleg over hoe en wat. Kunnen andere nog een voorbeeld aan nemen die meestal alleen maar wijzen naar andere en dan zeggen kunnen we niks aan doen.
Ze kennen (en wij ook) de zwakheden en ze hebben er ook op dat moment goed op gereageerd. Misschien moet de NS daar eens gaan kijken hoe ze dat soort zaken oplossen en niet idere jaar weer de winter de schuld geven van de problemen ;)
Vreemd, ik kon in die periode nog wel video bellen. Heeft het er misschien mee te maken dat ik dit gesprek al zeven uur open had staan?

Maar wel goed dat Skype dit gaat fixen. Is wel netjes voor een gratis dienst
Het is natuurlijk niet alleen maar de gratis dienst die er uit lag, het hele skype netwerk en dus ook alle mensen die het gebruiken om betaald naar vaste lijnen te bellen lagen er uit.
Wat ik dus zei maar misschien niet helder overkwam: ik heb in de periode dat skype down was gewoon met mijn vriendin zitten video skypen. Het ging niet echt lekker dat geef ik dan weer wel toe

[Reactie gewijzigd door sfranken op 30 december 2010 14:30]

Dat komt omdat de supernodes alleen nodig zijn om verbinding te maken, daarna wordt het signaal gewoon tussen jullie computers uitgewisseld zonder tussenkomst van anderen.
ik denk dat het lag aan versie verschil. ik had de nieuwe versie en ik lag er toen om half 6 s'avonds al uit. (en was net bezig met een gesprek, geen chat).

ik had en heb de nieuwste versie van skype
Opvallend: dit systeem lijkt enorm veel op het Nederlandse (en Europese) lichtnet.
Vind ik niet, het lichtnet is eenzijdig verkeer, zonder geretourneerde data. je kunt wel leveren, aan het lichtnet, maar je kunt geen stroom naar derden sturen. dus eigenlijk is het traditionele , zoals bijv tweakers werkt meer het lichtnet. natuurlijk wordt er wel samengewerkt, maar lichtnet heeft niks te maken met p2p, wel server to server (bijvluuen van tekorten uit het buitenland)

Bovendien is het volledige stroomnet in de handen van 'Professionals' en zal als er iets fout gaat, sowieso niet alle centrales crashen en zal het probleem snel verholpen zijn, omdat als je alle centrales weer volgens een procedure moet opstarten, dit sneller gaat dan bij de onwetende (en vaak ontechnische) burger.

[Reactie gewijzigd door martin149 op 30 december 2010 15:29]

Hoezo eenzijdig? Mijn zonnepanelen geven echt wel stroom terug aan mijn electriciteitsleverancier en mijn meter draait dan ook terug.
Dus allesbehalve eenzijdig.
das een speldenknopje op een containerlading. denk ook niet dat je panelen het leuk vinden als de hele straat van jou afhankelijk werd ;)
Zie het al voor me.
Skype gaat plat.
'Snel! Iedereen z'n Skype aanzetten als supernode!"

Zouden ze er nu ook een drill oefening voor hebben?
ik denk dat het eerder een uurtje of 20 heeft geduurt voordat iemand op nivo eens luisterde naar de beheerders zodat ze actie konden ondernemen. dat geintje met die client-supernodes is niet iets wat uit de lucht komt vallen, dat kenden ze al lang maar zo'n aanpassing op het netwerk is niet iets wat een simpele ITér op een serverparkje mag beslissen...

heel veel netwerken blijven onnodig lang offline of crashen omdat heren-met-stropdassen zich bemoeien met zaken waar ze niks vanaf weten...

[Reactie gewijzigd door flippy.nl op 30 december 2010 14:23]

juist ja, want even 1000 supernodes inzetten kan je ook met een klik op een knop na toestemming van je manager.....
denk dat de tijd die erover heen is gegaan vooral op is gegaan aan het regelen van zo'n grove 1000 machines(weet niet of het meer per server kan, dus server=supernode voor t gemak), het regelen van de financiering hiervoor(een techneut mag dit niet zomaar beslissen, maar gezien de impact zal dit een kwestie van 2-3 uur geweest zijn nadat ze de oplossing bedacht hadden) maar vergeet ook niet het coordineren en testen van de nodes! als je 'maar' 100 nodes in de lucht brengt en je hebt voor die 25% al 800 machines nodig, dan ga je nog t domino effect krijgen, dus alle 1000 zullen nagenoeg gelijktijdig moeten starten, liefst zonder problemen.
ik lees hierboven dat ze servers die normaal voor afhandeling van het opzetten van video gesprekken in bedrijf zijn tijdelijk ingezet hebben om het netwerk terug te "kickstarten"

m.a.w. de technische aanpassing zal zeker niet het fysiek plaatsen of zelfs extern inhuren van servercapaciteit geweest zijn.

ik neem aan dat de client voor dataverwerking als supernode niet geoptimaliseerd is voor multithreaded toepassingen, dus kan het best zijn dat ze per fysieke server 4, 6, 8, 16 etc instanties hebben laten lopen.


en waarschijnlijk hebben de mega-supernodes een technische aanpassing gehad waardoor ze in eerste instantie verbindingen hebben geaccepteerd van clients die voldoen aan de eisen voor supernodes. Zodoende zorgt het weer online komen van een deel van het netwerk in eerste instantie alleen maar tot meer capaciteit, in plaats dat de kickstart servers meteen overbelast raken met verkeer van non-supernode clients
Wow, nette uitleg! Ook leuk om te lezen hoe een en ander bij Skype werkt.
Ik heb de afgelopen week een aantal keer geprobeerd tegoed op mijn account te zetten, maar het wil steeds niet lukken.
Skype geeft aan dat het aan PayPal kan liggen en dat ik op mijn account daar moet kijken voor eventuele restricties, maar daar is niets te vinden.

Meer mensen hier last van?
deze supernodes hebben een ingebouwd mechanisme dat de node uitschakelt als de belasting te hoog wordt, om zo het hostsysteem te beschermen. De hoge belasting zorgde voor meer supernodes die offline gingen en zo de resterende supernodes door verhoogde belasting met zich meenamen. Als gevolg hiervan lag het netwerk van Skype nagenoeg plat voor een periode van 24 uur.
hoezo beschermen?? skype ging plat....
dat noem ik nou niet echt bescherming...

clusters schijnen nog donkere materie te zijn voor ict'ers.
iets faalt hier hard.....

[Reactie gewijzigd door mrc4nl op 31 december 2010 01:21]

iets faalt hier hard......
Jouw shift- en punt-toets?
En ondanks al deze wijsheid werkt het nog steeds abominabel slecht, nee ze zijn de weg kwijt bij skype.
het programma is bij mij niet mijn no 1 communicatie apparaat meer, het is teruggevallen naar een laatste plaats, alleen in geval de rest niet meer werkt eens kijken hoe het met skype gaat. de cleint software vind ik ook al een brug te ver ondertussen, wat een leuk programma was is nu een draak geworden,

PE1MMK
Neem een Nokia,doet het mits opgeladen altijd. Dat scheelt hier ook weer een rant.
Omdat ze 24 uur niet bereikbaar waren? Dude, get a life.

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True