[låten räknas ned: 7, 6, 5, 4, 3, 2, 1] Internet: paket, routing och pålitlighet
Hej, jag heter Lynn. Jag är mjukvaru- ingenjör här på Spotify och jag erkänner
att jag ofta tar internet gör givet. Den stora mängden information
som flyger runt på internet är förvånande. Men hur är det möjligt att varje bit av
data levereras till dig på ett pålitligt sätt? Om du vill lyssna på Spotify verkar
det som din dator ansluter direkt till Spotifys servrar och Spotify skickar låten
direkt, via en dedikerad linje. Men det är inte så internet fungerar. Om internet
bestod av direkta, dedikerade anslutningar skulle det inte fungera
med miljontals användare. Särskilt utan någon garanti att varje kabel och
dator fungerar hela tiden. Istället, överförs data på ett mycket mer
indirekt sätt. Många år sedan, i början av 70-talet började Bob Kahn och jag
arbeta med utformningen av det vi nu kallar internet. Bob och jag hade ansvaret
och möjligheten att utforma internet- protokoll och arkitektur. Så vi fortsatte
att delta i internets utveckling och evolution hela tiden fram till
nu. Sättet på vilket information överförs från en dator till en annan
är ganska intressant. Den behöver inte följa en fast väg och vägen kan ändras
mitt i kommunikationen mellan datorer. Information på internet skickas från en
dator till en annan i vad vi kallar paket och ett paket åker från en
plats till en annan på internet på ett sätt som liknar hur du kan åka
bil. Beroende på trafik eller väglag, kanske du väljer eller blir
tvungen att ta en annan väg för att hamna på rätt plats varje gång du reser. Och
precis som du kan transportera olika saker med bil, kan diverse digital information
skickas med IP-paket till en viss gräns. Vad händer om du till exempel ska flytta
en rymdraket från verkstaden till uppskjutningsplatsen. Rymdraketen
får inte plats en lastbil så att den måste monteras ner i delar och transportera med
flera lastbilar. De kan ta olika vägar och anlända till destinationen vid olika
tider. Men när alla delar anländer, kan de monteras ihop till en hel
raket som kan skjutas upp. På internet fungerar det på ett liknande sätt. Om
du har en mycket stor bild som du vill skicka eller ladda upp till en webbplats,
kan den bilden bestå av tiotals miljoner bitar med ettor och nollor, som inte får
plats i ett paket. Det rör sig om en dator, så datorn som skickar bilden kan
snabbt dela upp den i hundra- eller tusentals mindre delar som kallas paket.
Till skillnad från bilar eller lastbilar har paketen inga förare. Varje paket
har internetadressen den kom från och dit den ska. Särskilda datorer
på internet som kallas routrar hanterar trafiken så att paketen rör sig igenom
nätverket smidigt. Om en väg har köer, kan enskilda paket kan ta andra vägar
genom internet och kan anlända till destinationen vid olika tidpunkter
eller i fel ordning. Vi ser på hur det fungerar. Som del av internetprotokollet
håller routrar reda på flera vägar för att skicka paket, och väljer den billigaste
tillgängliga vägen för varje datapaket enligt destinationsadressen för paketet.
Billigast i det här fallet betyder inte kostnad, men tid och faktorer som politik
och relationer mellan företag. Ofta är den bästa vägen inte nödvändigtvis
den rakaste. Olika alternativ på vägar gör nätverket feltolerant. Det innebär att
nätverket kan fortsätta skicka paket även om något går mycket, mycket fel.
Det är grunden till en av internets huvud- principer: pålitlighet. Vad händer om
du begär data men inte allt levereras? T.ex. om du vill lyssna på en låt.
Hur kan du vara 100% säker på att alla data kan levereras så att låten spelas?
Vi presenterar din nya bästa vän, TCP. TCP hanterar sändningen
och mottagningen av alla dina data i paket. Som att skicka rekommenderad post.
När du begär en låt på din enhet, skickar Spotify den uppdelad i många paket.
När dina paket anländer gör TCP en fullst- ändig inventering och skickar bekräftelser
för varje mottaget paket. Om alla paket är där bekräftar TCP din leverans och allt är
klart. (låten spelas) Om TCP saknar paket, kommer inte leveransen bekräftas, eftersom
låten kanske inte låter bra eller delar av den saknas. Spotify kommer att skicka alla
inkompletta eller saknade paket igen. När TCP har bekräftat leverans av flera paket
för samma begäran kommer låten att börja spela. Det som är bra med TCP
och routersystem är att de är skalbara. De fungerar med 8 eller 8 miljarder enheter.
Dessa principer för feltolerans och redundans, lägger vi till fler routrar så
att internet blir mer pålitligt. Vi kan också skala upp och ner internet
utan att avbryta tjänsten för användare. Internet består av hundratusentals
nätverk och miljarder datorer och enheter som är anslutna fysiskt. De olika
systemen som utgör internet ansluter till varandra, kommunicerar med varandra,
och arbeta tillsammans enligt överenskomna standarder om hur data skickas på internet
Datorer, eller routrar på internet, ser till att alla paket kan ta sig till
destinationen där de monteras ihop, i rätt ordning. Det här händer miljarder
gånger om dagen, oavsett om du eller andra skickar e-post, besöker webbsidor, deltar
i videochatt i en mobilapp eller när sen- sorer eller enheter på internet pratar med
varandra.