Skype och The Hacker Crackdown

Skype berättar vad som hände den 16 augusti.

On Thursday, 16th August 2007, the Skype peer-to-peer network became unstable and suffered a critical disruption.

Då jag själv aldrig använder Skype tänker jag inte på hur stort det egentligen är, men förra torsdagen och fredagen hörde jag folk prata om det. Det var människor som jag inte känner, som jag passerade på stan, det vill säga vanligt folk, inte som du och jag.

Det hela påminde om när USA:s telefonnät för långdistanssamtal låg nere en dag för 17 år sedan. Inte något jag kommer ihåg själv, men som beskrivs ingående i Bruce Sterlings bok The Hacker Crackdown, vars första kapitel inleds med

On January 15, 1990, AT&T’s long-distance telephone switching system crashed.

Det som gjorde att Skype mådde dåligt berodde på ett fel i deras kod som hanterar när Skype mår dåligt. Ni inser problemet. Så länge Skype mår bra, så mår Skype bra. Om Skype plötsligt börjar må dåligt, så inträffar felet som gör att Skype fortsätter att må dåligt. Det plötsliga inträffade tydligen när flera Windows-datorer startade om på grund av en säkerhetsuppdatering som Microsoft skickade ut.

The high number of restarts affected Skype’s network resources. This caused a flood of log-in requests, which, combined with the lack of peer-to-peer network resources, prompted a chain reaction that had a critical impact.

Normally Skype’s peer-to-peer network has an inbuilt ability to self-heal, however, this event revealed a previously unseen software bug within the network resource allocation algorithm which prevented the self-healing function from working quickly. Regrettably, as a result of this disruption, Skype was unavailable to the majority of its users for approximately two days.

En kedjereaktion i det självläkande systemet. Nästan som i USA för 17 år sedan. De hade precis uppgraderat större delen av sina servrar till System 7 med ett nytt fint växelsystem.

The 4ESS switch used its new software to monitor its fellow switches as they recovered from faults. As other switches came back on line after recovery, they would send their “OK” signals to the switch. The switch would make a little note to that effect in its “status map,” recognizing that the fellow switch was back and ready to go, and should be sent some calls and put back to regular work.

Unfortunately, while it was busy bookkeeping with the status map, the tiny flaw in the brand-new software came into play. The flaw caused the 4ESS switch to interacted, subtly but drastically, with incoming telephone calls from human users. If — and only if — two incoming phone- calls happened to hit the switch within a hundredth of a second, then a small patch of data would be garbled by the flaw.

But the switch had been programmed to monitor itself constantly for any possible damage to its data. When the switch perceived that its data had been somehow garbled, then it too would go down, for swift repairs to its software. It would signal its fellow switches not to send any more work. It would go into the fault recovery mode for four to six seconds. And then the switch would be fine again, and would send out its “OK, ready for work” signal.

However, the “OK, ready for work” signal was the very thing that had caused the switch to go down in the first place. And all the System 7 switches had the same flaw in their status-map software. As soon as they stopped to make the bookkeeping note that their fellow switch was “OK,” then they too would become vulnerable to the slight chance that two phone-calls would hit them within a hundredth of a second.

Telefonkraschen fick större konsekvenser än att folk blev arga på telefonbolagen. Secret service, som hade mest koll på datorbedrägerier då, var till en början övertygade om att någon hade hackat sig in och förstört telefonnätet och använde händelsen för att spåra upp och arrestera misstänkta och konfiskera misstänkt material, bland annat ett antal datorer, hårddiskar och floppydiskar, som tillhörde rollspelsföretaget Steve Jackson Games. Detta ledde i sin tur till ett långt och utdraget rättsfall och att Electronic Frontier Foundation skapades. Jag rekommenderar verkligen er att läsa The Hacker Crackdown (HTML-version) om ni vill veta mer.

Jag antar att Skype-kraschen bara kommer resultera i att folk blir lite tjuriga i någon vecka och att fri-mjukvarufolket fortsätter att utnyttja situationen för att förespråka något öppnare alternativ, själv hoppas jag på något Jingle-baserat.

Jag undrar dock vad som hade hänt för 17 år sedan om den där break-satsen inte satt fel.

As it happened, the problem itself — the problem per se — took this form. A piece of telco software had been written in C language, a standard language of the telco field. Within the C software was a long “do… while” construct. The “do… while” construct contained a “switch” statement. The “switch” statement contained an “if” clause. The “if” clause contained a “break.” The “break” was supposed to “break” the “if clause.” Instead, the “break” broke the “switch” statement.

That was the problem, the actual reason why people picking up phones on January 15, 1990, could not talk to one another.

One Response to “Skype och The Hacker Crackdown”

  1. Rasmus Says:

    Great text. Thanks!

Leave a Reply