[odbrojavanje:7,6,5,4,3,2,1] Internet: Paketi, rutiranje i pouzdanost Bok, moje ime je Lynn. Ja sam softverski inženjer u Spotify-u i bit ću prva koje će priznati da često uzimam pouzdanost interneta zdravo za gotovo. Količina informacija koja struji internetom je zadivljujuća. Ali kako je moguće svaki dio podatka dostaviti vam pouzdano?Recimo da želite pustiti pjesmu sa Spotify-a. Doima se kao da se vaše računalo spaja izravno sa Spotify serverima i Spotify vam šalje pjesmu izravnom namjenskom linijom. Ali to nije način na koji internet radi. Kad bi internet bio sačinjen od izravnih namjenskih veza, bilo bi nemoguće održavati sve funkcionalnim kako se milijuni korisnika pridružuju. Pogotovo jer nema jamstva da sva žica i računalo rade u svakom trenutku. Umjesto toga, podaci na internetu uglavnom ne putuju izravnim putem.Prije mnogo godina, u ranim 1970ima, moj partner Bob Khan i ja počeli smo dizajnirati ono što danas zovem internet. Bob i ja smo imali odgovornost i priliku dizajnirati internet protokole njegovu arhitekturu. Stoga smo ustrajali na sudjelovanju u rastu interneta i njegovoj evoluciji čitavo ovo vrijeme sve do danas. Način na koji informacija biva prenesena s jednog računala na drugo je poprilično interesantan. Ne treba slijediti zacrtani put, zapravo, vaš put se može promijeniti uslijed komunikacije između računala. Informacija na internetu putuje s jednog računala na drugo u onome što zovemo paketom informacija i paket putuje s jednog mjesta na drugo internetom slično kao što vi možete doći s jednog mjesta na drugo autom. Ovisno o prometnoj gužvi ili uvjetima na cesti, postoji mogućnosti da izaberete ili da budete prisiljeni krenuti drugim putem da biste do došli na isto mjesto svaki put kad putujete. kad putujete I baš kao što možete prenijeti puno stvari u autu, puno vrsta digitalnih infromacija može biti poslano pomoći IP paketa ali postoje granice. Što kao, na primjer, trebate premjestiti svemirsku letjelicu s mjesta gdje je izgrađena na mjesto gdje će biti lansirana. Letjelica neće stati u jedan kamion i zato je treba rastaviti na dijelove, prevozeći je u nizu kamiona.Oni mogu koristiti različite rute i mogu doći na odredište u različito vrijeme. ali kad svi dijelovi stignu, možete ponovo sastaviti cijelu letjelicu i bit će spremna za lansiranje. Na internetu stvari funkcioniraju slično. Ako imate veliku sliku koju želite poslati prijatelju ili prenijeti na web stranicu, ta slika može biti sačinjena od 10ak milijuna bitova od 1ica i 0a, previše za slanje u jednom paketu.Budući da je to podatak na računalu, računalo koje šalje sliku može je brzo razložiti na stotine ili čak tisuće manjih dijelova koji se zovu paketi. Za razliku od auta i kamiona, ti paketi nemaju vozače i ne biraju svoje rute. Svaki paket ima internet adresu odakle je došao i kamo kamo ide. Posebna računala na internetu koje zovemo ruterima upravljaju prometom kako bi omogući da se paketi kreću mrežom neometano. Ako je jedna ruta blokirana, određeni paketi mogu putovati različitom rutom kroz internet i mogu stići na odredište u nešto različita vremena ili čak različitim redoslijedom.Razgovarajmo o tome kako to funkcionira. Kao dio internet protokola, svaki ruter bilježi višestruke puteve za slanje paketa, i on odabire najjeftiniji mogući put za svaki dio podatka na temelju odredišne IP adrese paketa. Najjeftinije se ne odnosi na trošak, već vrijeme i ne-tehničke faktore poput politike i odnosa između tvrtki. Često najbolja ruta za slanje podatka nije nužno i najizravnija.Činjenica da postoje opcije za putove čini mrežu tolerantnom na greške. Što znači da mreža može slati pakete čak i kad nešto pođe strašno, strašno po krivu. To je temelj za ključno načelo interneta: pouzdanost. Što ako zatražimo određene podatke i ne bude nam dostavljeno sve? Recimo da želite slušati pjesmu. kako možete biti 100% sigurni da će svi podaci biti dostavljeni tako da pjesma svira savršeno? Upoznajte svog novog najboljeg prijatelja, TCP (transmisijski kontrolni protokol). TCP upravlja slanjem i primanjem svih podataka kao paketa. Zamislite ga kao zajamčena poštanska usluga. Kada zatražite pjesmu na svom uređaju, Spotify šalje pjesmu razlučenu na puno paketa. Kad vaš paket stigne, TCP vrši cjelokupni pregled i šalje natrag potvrdu da je svaki paket primljen. Ako su svi paketi na broju, TCP potpisuje vašu dostavu i vi ste gotovi. (pjesma svira) Ako TCP zaključi da neki podaci nedostaju, neće potpisati, jer vaša pjesma neće zvučiti dobro ili će dijelovi pjesme nedostajati. Za svaki izgubljeni ili nepotpuni paket, Spotify će poslati novi- Kad TCP potvrdi dostavu svih paketa za vašu pjesmu, ona će početi svirati. Ono što je super kod TCP-a i ruterskog sustava je to što su skalabilni. Mogu raditis 8 ili 8 milijardi uređaja. Zapravo, zbog načela tolerancija na pogreške i pouzdanosti, što više rutera dodajemo to će internet postati pouzdaniji.Ono što također super je da možemo širiti i skalirati internet bez ometanja trenutnih korisnika. Internet je sačinjen od stotine tisuća mreža i milijardu fizički spojenih računala i uređaja. Ti se različiti sustavi koji čine internet međusobno povezuju, komuniciraju i rade zajedno zahvaljujući dogovorenim standardima o slanju podataka putem interneta. Računalni uređaji ili ruteri diljem interneta pomažu svim paketima da stignu do svog odredišta gdje se ponovo sastavljaju, ako je potrebno, po redu. To se događa milijardu puta dnevno, bio da vi ili netko drugi šalje mail, posjećuje web stranicu, sudjeluje u video razgovoru, koristi mobilnu aplikaciju ili kad senzori ili uređaji na internetu međusobno komuniciraju.