1 00:00:00,120 --> 00:00:07,950 [låten räknas ned: 7, 6, 5, 4, 3, 2, 1] Internet: paket, routing och pålitlighet 2 00:00:07,950 --> 00:00:13,650 Hej, jag heter Lynn. Jag är mjukvaru- ingenjör här på Spotify och jag erkänner 3 00:00:13,650 --> 00:00:18,970 att jag ofta tar internet gör givet. Den stora mängden information 4 00:00:18,970 --> 00:00:23,170 som flyger runt på internet är förvånande. Men hur är det möjligt att varje bit av 5 00:00:23,170 --> 00:00:29,080 data levereras till dig på ett pålitligt sätt? Om du vill lyssna på Spotify verkar 6 00:00:29,080 --> 00:00:33,989 det som din dator ansluter direkt till Spotifys servrar och Spotify skickar låten 7 00:00:33,989 --> 00:00:39,410 direkt, via en dedikerad linje. Men det är inte så internet fungerar. Om internet 8 00:00:39,410 --> 00:00:43,640 bestod av direkta, dedikerade anslutningar skulle det inte fungera 9 00:00:43,640 --> 00:00:48,050 med miljontals användare. Särskilt utan någon garanti att varje kabel och 10 00:00:48,050 --> 00:00:53,350 dator fungerar hela tiden. Istället, överförs data på ett mycket mer 11 00:00:53,350 --> 00:01:01,210 indirekt sätt. Många år sedan, i början av 70-talet började Bob Kahn och jag 12 00:01:01,210 --> 00:01:06,870 arbeta med utformningen av det vi nu kallar internet. Bob och jag hade ansvaret 13 00:01:06,870 --> 00:01:14,790 och möjligheten att utforma internet- protokoll och arkitektur. Så vi fortsatte 14 00:01:14,790 --> 00:01:20,000 att delta i internets utveckling och evolution hela tiden fram till 15 00:01:20,000 --> 00:01:25,500 nu. Sättet på vilket information överförs från en dator till en annan 16 00:01:25,500 --> 00:01:30,900 är ganska intressant. Den behöver inte följa en fast väg och vägen kan ändras 17 00:01:30,900 --> 00:01:36,100 mitt i kommunikationen mellan datorer. Information på internet skickas från en 18 00:01:36,100 --> 00:01:42,050 dator till en annan i vad vi kallar paket och ett paket åker från en 19 00:01:42,050 --> 00:01:46,360 plats till en annan på internet på ett sätt som liknar hur du kan åka 20 00:01:46,360 --> 00:01:51,420 bil. Beroende på trafik eller väglag, kanske du väljer eller blir 21 00:01:51,420 --> 00:01:59,000 tvungen att ta en annan väg för att hamna på rätt plats varje gång du reser. Och 22 00:01:59,000 --> 00:02:03,980 precis som du kan transportera olika saker med bil, kan diverse digital information 23 00:02:03,980 --> 00:02:10,359 skickas med IP-paket till en viss gräns. Vad händer om du till exempel ska flytta 24 00:02:10,359 --> 00:02:14,200 en rymdraket från verkstaden till uppskjutningsplatsen. Rymdraketen 25 00:02:14,200 --> 00:02:18,780 får inte plats en lastbil så att den måste monteras ner i delar och transportera med 26 00:02:18,780 --> 00:02:23,099 flera lastbilar. De kan ta olika vägar och anlända till destinationen vid olika 27 00:02:23,099 --> 00:02:28,109 tider. Men när alla delar anländer, kan de monteras ihop till en hel 28 00:02:28,109 --> 00:02:34,329 raket som kan skjutas upp. På internet fungerar det på ett liknande sätt. Om 29 00:02:34,329 --> 00:02:40,090 du har en mycket stor bild som du vill skicka eller ladda upp till en webbplats, 30 00:02:40,090 --> 00:02:44,819 kan den bilden bestå av tiotals miljoner bitar med ettor och nollor, som inte får 31 00:02:44,819 --> 00:02:49,810 plats i ett paket. Det rör sig om en dator, så datorn som skickar bilden kan 32 00:02:49,810 --> 00:02:55,719 snabbt dela upp den i hundra- eller tusentals mindre delar som kallas paket. 33 00:02:55,719 --> 00:03:00,230 Till skillnad från bilar eller lastbilar har paketen inga förare. Varje paket 34 00:03:00,230 --> 00:03:04,650 har internetadressen den kom från och dit den ska. Särskilda datorer 35 00:03:04,650 --> 00:03:09,430 på internet som kallas routrar hanterar trafiken så att paketen rör sig igenom 36 00:03:09,430 --> 00:03:15,239 nätverket smidigt. Om en väg har köer, kan enskilda paket kan ta andra vägar 37 00:03:15,239 --> 00:03:20,370 genom internet och kan anlända till destinationen vid olika tidpunkter 38 00:03:20,370 --> 00:03:26,569 eller i fel ordning. Vi ser på hur det fungerar. Som del av internetprotokollet 39 00:03:26,569 --> 00:03:31,169 håller routrar reda på flera vägar för att skicka paket, och väljer den billigaste 40 00:03:31,169 --> 00:03:37,079 tillgängliga vägen för varje datapaket enligt destinationsadressen för paketet. 41 00:03:37,079 --> 00:03:42,120 Billigast i det här fallet betyder inte kostnad, men tid och faktorer som politik 42 00:03:42,120 --> 00:03:47,499 och relationer mellan företag. Ofta är den bästa vägen inte nödvändigtvis 43 00:03:47,499 --> 00:03:53,150 den rakaste. Olika alternativ på vägar gör nätverket feltolerant. Det innebär att 44 00:03:53,150 --> 00:03:57,700 nätverket kan fortsätta skicka paket även om något går mycket, mycket fel. 45 00:03:57,700 --> 00:04:04,849 Det är grunden till en av internets huvud- principer: pålitlighet. Vad händer om 46 00:04:04,849 --> 00:04:09,349 du begär data men inte allt levereras? T.ex. om du vill lyssna på en låt. 47 00:04:09,349 --> 00:04:14,829 Hur kan du vara 100% säker på att alla data kan levereras så att låten spelas? 48 00:04:14,829 --> 00:04:21,440 Vi presenterar din nya bästa vän, TCP. TCP hanterar sändningen 49 00:04:21,440 --> 00:04:26,530 och mottagningen av alla dina data i paket. Som att skicka rekommenderad post. 50 00:04:26,530 --> 00:04:31,669 När du begär en låt på din enhet, skickar Spotify den uppdelad i många paket. 51 00:04:31,669 --> 00:04:37,210 När dina paket anländer gör TCP en fullst- ändig inventering och skickar bekräftelser 52 00:04:37,210 --> 00:04:42,840 för varje mottaget paket. Om alla paket är där bekräftar TCP din leverans och allt är 53 00:04:42,840 --> 00:04:54,819 klart. (låten spelas) Om TCP saknar paket, kommer inte leveransen bekräftas, eftersom 54 00:04:54,819 --> 00:04:59,930 låten kanske inte låter bra eller delar av den saknas. Spotify kommer att skicka alla 55 00:04:59,930 --> 00:05:05,930 inkompletta eller saknade paket igen. När TCP har bekräftat leverans av flera paket 56 00:05:05,930 --> 00:05:13,370 för samma begäran kommer låten att börja spela. Det som är bra med TCP 57 00:05:13,370 --> 00:05:19,220 och routersystem är att de är skalbara. De fungerar med 8 eller 8 miljarder enheter. 58 00:05:19,220 --> 00:05:23,449 Dessa principer för feltolerans och redundans, lägger vi till fler routrar så 59 00:05:23,449 --> 00:05:28,069 att internet blir mer pålitligt. Vi kan också skala upp och ner internet 60 00:05:28,069 --> 00:05:34,379 utan att avbryta tjänsten för användare. Internet består av hundratusentals 61 00:05:34,379 --> 00:05:39,280 nätverk och miljarder datorer och enheter som är anslutna fysiskt. De olika 62 00:05:39,280 --> 00:05:44,360 systemen som utgör internet ansluter till varandra, kommunicerar med varandra, 63 00:05:44,360 --> 00:05:51,289 och arbeta tillsammans enligt överenskomna standarder om hur data skickas på internet 64 00:05:51,289 --> 00:05:56,000 Datorer, eller routrar på internet, ser till att alla paket kan ta sig till 65 00:05:56,000 --> 00:06:02,789 destinationen där de monteras ihop, i rätt ordning. Det här händer miljarder 66 00:06:02,789 --> 00:06:08,889 gånger om dagen, oavsett om du eller andra skickar e-post, besöker webbsidor, deltar 67 00:06:08,889 --> 00:06:13,870 i videochatt i en mobilapp eller när sen- sorer eller enheter på internet pratar med 68 00:06:13,870 --> 00:06:14,910 varandra.