-
[sang tæller ned: 7, 6, 5, 4, 3, 2, 1]
-
Internettet:
Pakker, routing og pålidelighed
-
Hej, mit navn er Lynn Root. Jeg er
softwareingeniør her hos Spotify, og jeg
-
må indrømme, at jeg ofte tager
internettets pålidelighed for givet.
-
Mængden af information, der suser omkring
internettet er utrolig.
-
Men hvordan er det muligt for hver stykke
data at blive sikkert leveret til dig?
-
Hvis du f.eks. ønsker at spille
en sang fra Spotify.
-
Det synes som om din computer forbinder
direkte til Spotify-serverne, og at
-
Spotify sender dig en sang på en direkte,
dedikeret linje.
-
Men faktisk virker internettet ikke sådan.
-
Hvis internettet var lavet af direke,
dedikerede forbindelser, ville det være
-
umuligt at holde ting kørende, når
millioner af brugere slutter sig til.
-
Særligt siden der ikke er nogen garanti
for at hver ledning og computer virker
-
hele tiden.
-
I stedet sendes data på internettet på en
meget mindre direkte facon.
-
For mange år siden i de tidlige 1970'ere
begyndte min partner Bob Kahn og jeg at
-
arbejde på designet af, hvad vi nu kalder
internettet. Bob og jeg havde ansvaret og
-
muligheden for at designe internettets
protokoller og dets arkitektur.
-
Så vi fortsatte med at deltage i
internettets vækst og udvikling hele tiden
-
frem til i dag.
-
Den måde information overføres fra én
computer til en anden er ret interessant.
-
Den behøver ikke følge en fast sti.
Faktisk kan din sti skifte midtvejs
-
i en samtale mellem computere.
-
Information på internettet går fra én
computer til en anden, i hvad vi kalder en
-
informationspakke, og en pakke overføres
fra ét sted til en anden på internettet på
-
meget samme manér, som du måske ville
tage fra ét sted til et andet sted i bil.
-
Afhængigt af trafikpropper og
vejbetingelser kunne du vælge eller blive
-
tvunget til at tage en anden rute for at
komme samme sted hen, hver gang du rejser.
-
Og på samme vis, som du kan transportere
al slags ting i en bil, kan mange slags
-
digital information sendes med IP-pakker,
men der er visse begrænsninger.
-
Hvad nu hvis du skulle flytte en rumfærge
fra der, hvor den blev bygget, til hvor
-
den skal affyres.
-
Færgen vil ikke passe i én lastbil, så den
skal brydes ned i dele og transporteres
-
med en flåde af lastbiler.
-
De kunne alle tage forskellige ruter og
ankomme på forskellige tider.
-
Men når alle delene er der, kan du
samle delene igen til den komplette færge,
-
og den vil være klar til at blive affyret.
-
På internettet virker tingene på meget
lignede vis.
-
Hvis du har et meget stort billede, som du
ønsker at sende til en ven eller uploade
-
til en webside, kan det billede bestå af
tusinder af millioner af 1'er og 0'er, alt
-
for mange til at sende i én pakke.
-
Da det er data på en computer, kan
computeren, der sender billedet, hurtigt
-
dele den op i hundredevis eller tusindvis
af mindre dele, der hedder pakker.
-
Til forskel fra biler og lastbiler, har
disse pakker ikke chauffører og vælger
-
ikke selv deres rute.
-
Hver pakke har internetadressen til
stedt, den kom fra, og hvor det skal hen.
-
Særlige computere på internettet, der
hedder routere agerer som trafikstyrere
-
for at sikre at pakkerne bevæger sig
gennem netværkene uden problem.
-
Hvis en rute er overlæsset, kan
individuelle pakker tage andre ruter
-
gennem internettet og kan ankomme ved
destinationen på lidt forskellige tider
-
eller sågar ikke i rækkefølge.
-
Lad os snakke om, hvordan det virker.
-
Som en del af internetprotokollen holder
hver router styr på flere stier til at
-
sende pakker, og den vælger den billigste
tilgængelige sti for hvert stykke data,
-
baseret på pakkens destinations-
IP-adresse.
-
I dette tilfælde betyder billig ikke pris,
men tid og ikke-tekniske faktorer såsom
-
politikker og forhold mellem virksomheder.
-
Ofte er dataenes bedste overførselsrute
ikke nødvendigvis den mest direkte.
-
Rute-valgmuligheder gør netværket
tolerante over for fejl.
-
Hvilket betyder at netværket kan sende
pakker, selv hvis noget går meget galt.
-
Det er grundlaget for et af internettets
hovedprincipper: pålidelighed.
-
Hvad nu hvis du ønsker at anmode om nogle
data, men ikke alt leveres?
-
Sig, for eksempel, du ønsker at lytte til
en sang.
-
Hvordan kan du være 100% sikker på, at
al dataen vil leveres,
-
så sangen spiller perfekt?
-
Sig hej til din nye bedste ven, TCP
(transmissionskontrol-protokol).
-
TCP tager sig af afsendelsen og
modtagelse af alle dine pakker som data.
-
Forestil dig det som værende en anbefalet
posttjeneste.
-
Når du anmoder om en sang på din enhed,
sender Spotify en sang
-
opdelt i mange pakker.
-
Når dine pakker ankommer, gør TCP komplet
status og sender bekræftelse for hver
-
modtagne pakke.
-
Hvis alle pakker er der, kvitterer TCP
for din leverence, og du er færdig.
-
(Sang spilles)
-
Hvis TCP opdager, at der mangler pakker,
vil den ikke kvittere.
-
Ellers ville din sang ikke lyde så god,
eller dele af sangen kunne mangle.
-
For hver manglende eller ufuldstændig
pakke, vil Spotify sende dem igen.
-
Når TCP bekræfter levering af mange af
pakkerne til den ene sanganmodning,
-
vil din sang begynde at spille.
-
Det fantastiske ved TCP- og router-
systemerne er, at de er skalerbare.
-
De kan virke med 8 eller 8 milliarder
enheder.
-
På grund af disse fejltolerence- og
redundansprincipper, bliver internettet
-
mere pålidelig, desto flere routere, vi
tilføjer.
-
En anden god ting er, at vi kan
udvide og opskalere internettet uden at
-
afbryde tjenesten for nogen,
der anvender den.
-
Internettet består af hundred tusind-vis
af netværk og milliarder af computere og
-
enheder, der er fysisk forbundne.
-
Disse forskellige systemer, som danner
internettet, forbinder til hinanden,
-
taler med hinanden og arbejder sammen, på
grund af aftalte standarder,
-
for hvordan data sendes omkring på
internettet.
-
Computerenheder eller routere på
internettet hjælper alle pakker på vej til
-
den destination, hvor de, om nødvendigt,
samles igen i rette rækkefølge.
-
Dette sker milliarder af gange om dagen,
uanset om du og andre sender en e-mail,
-
besøger en webside, holder en video-chat,
bruger en mobilapp, eller når sensorer
-
eller enheder på internettet taler
med hinanden.