Internet: HTTP ja HTML Olen Jasmine, XBOX One -tiimin ohjelmistopäällikkö. Yksi suurimmista ominaisuuksistamme on XBOX Live. Se on online-palvelu mikä yhdistää pelaajat ympäri maailmaa ja olemme riippuvaisia internetistä sen toiminnan varmistamiseksi. Tämä ei ole helppoa ja verhojen takana tapahtuu paljon asioita. Internet on muuttamassa miten ihmiset ovat vuorovaikutuksessa toistensa kanssa. Mutta miten se toimii? Miten tietokoneet ympäri maailmaa kommunikoivat? Puhutaan nettiselailusta. Ensin avaat selaimen, mikä on sovellus, jonka avulla selaat nettisivuja. Seuraavaksi, kirjoitat haluamasi sivuston osoitteen tai URL-osoitteen, mikä tarkoittaa Yhtenäinen Resurssienhakuri, kuten Tumlr.com. Hei olen David Karp, Tumblr.comin perustaja ja me tulemme keskustelemaan miten päivittäin käyttämämme nettiselaimet toimivat. Olet varmaan ihmetellyt, mitä tapahtuu kun kirjoitat nettisivun osoitteen selaimeesi. Se on yhtä hullua kuin kuvittelet. Samalla hetkellä tietokoneesi alkaa keskustelemaan muiden koneiden kanssa, joita kutsutaan pelvelimiksi ja ne ovat yleensä tuhansien kilometrien päässä. Tietokoneesi kysyy nettisivua millisekunneissa ja palvelin alkaa keskustella takaisin konellesi kielellä, mitä kutsutaan nimellä HTTP tai Hypertekstin Siirtoprotokolla. Voit ajatella sitä kielenä, millä tietokone kysyy toiselta koneelta dokumentteja. Ja se on itse asiassa hyvin simppeliä. Jos haluat tutkia keskustelua tietokoneesi ja Internet-palvelimen välillä, se koostuu pääasiassa niin kutsutuista "GET" -pyynnöistä. Pyyntö alkaa sanalla GET ja sen perään liitetään pyytämäsi asiakirjan nimi. Joten jos yrität kirjautua sisään Tumblr-tilillesi ja ladata kirjautumissivun, lähetät GET-pyynnön Tumblrin palvelimelle, joka sanoo GET / login. Tämä kertoo Tumblrin palvelimelle, että haluat kaikki Tumblrin kirjautumissivun HTML-koodit. HTML tarkoittaa "Hyper Text Markup Language" ja voit ajatella sitä kielenä, jota käytät kertomaan selaimelle miltä sen tulee näyttää. Jos mietit Wikipediaa, mikä on periaatteessa iso ja yksinkertainen dokumentti, HTML on se kieli millä teet dokumentin otsikosta lihavoidun, lisäät fontin, linkit muille sivuille, lihavoitat tietyt tekstit ja kursivoit toiset, asetat kuvat sivun keskelle, oikealle tai vasemmalle. Nettisivun teksti liitetään suoraan HTML-koodiin, mutta sivun muut osat kuten kuvat tai video ovat erillisiä tiedostoja omilla HTTP-pyynnöillään. Selain lähettää erilliset HTTP-pyynnöt jokaiselle kuvalle tai videolle ja näyttää ne sivulla tiedon saapuessa. Jos sivustolla on paljon kuvia, ne tarvitsevat erilliset HTTP-pyynnöt ja sivu lataa hitaammin. Joskus kun selaat nettiä, et pyydä vain GET-pyyntöjä, vaan lähetät informaatiota, kuten lomaketta tai hakulauseketta täyttäessäsi. Selaimesi lähettää tämän tiedot selaimelle tekstinä HTTP POST-pyynnön avulla. Jos kirjaudut sisään Tumblriin, teet ensin POST-pyynnön sisäänkirjautuaksesi sivustolle. Pyynnössä on sähköpostiosoitteesi ja salasanasi. Tiedot lähetetään Tumblrin palvelimelle, joka tarkistaa tiedot. Sen jälkeen palvelin lähettää selaimellesi sivun joka hyväksyy tiedot. Olet nyt kirjautunut sisään. Palvelin liittää nettisivuun näkymättömiä evästeitä, jotka selaimesi näkee ja tallentaa. Tämä on hyvin tärkeää, koska se on ainut tapa millä sivusto voi muistaa kuka olet. Evästeet ovat vain todistus Tumblrille. Se on numero, mikä tunnistaa sinut. Selaimesi muistaa tämän numeron ja seuraavan kerran kun palaat sivulle, selaimesi osaa automaattisesti liittää tämän tunnuksen Tumblrin palvelimeen lähetettävään pyyntöön. Nyt selain näkee saapuvan pyynnön ja tunnuksen ja tietää, että pyyntö on sinulle. - Internet on täysin avoin. Kaikki sen yhteydet on jaettu ja tiedot lähetetty tekstinä. Tämä sallii hakkereiden nuuskia yksityisiä tietojasi, joita lähetät netin välityksellä. Onneksi turvalliset nettisivut estävät tämän kysymällä selaintasi kommunikoimaan turvallisella kanavalla käyttäen Secure Sockets Layeria ja sen seuraajaa Transport Layer Securityä. Näiden lyhenne on SSL ja TLS ja voit ajatella niitä turvallisuuskääreenä tietojesi ympärillä suojellen niitä hakkereilta. SSL ja TLS ovat aktiivisia kun näet pienen lukon sivun osoitteen vieressä, HTTPS:sän vieressä. HTTPS varmistaa, että HTTP pyynnöt ovat suojattuja ja turvallisia. Kun nettisivu kysyy selaimeltasi suojattua liitäntää se tarjoaa siitä ensin digitaalisen varmenteen. Tämä todistus on kuin virallinen henkilö- kortti, joka todistaa sivun oikeellisuuden. Digitaalisia varmenteita julkaisevat varmentajaviranomaiset ovat luotettavia yksiköitä, jotka tarkastavat verkkosivustojen identiteetit ja myöntävät niille varmenteita. Samalla tavalla kuin valtio voi myöntää passin. Nyt jos verkkosivusto yrittää muodostaa suojatun yhteyden ilman asianmukaisesti annettua digitaalista varmennetta, selaimesi varoittaa sinua siitä. Nämä ovat internetin selailun perusteet! Se osa internetiä, mitä käytämme päivittäin. Tiivistettynä, HTTP ja DNS käsittelevät HTLM-koodin, mediatiedostojen tai muun lähetystä ja vastaanottoa. TCP/IP ja reititykset tekevät tästä mahdollista rikkomalla kuljetettavan tiedon pieniin osiin. Nämä osat on luotu binaarista, ykkösten ja nollien ketjuista jotka lähetetään fyysisesti sähköjohtojen, kuitukaapeleiden ja langattoman yhteyden avulla. Kun olet oppinut kuinka internetin yksi kerros toimii, voit nauttia siitä ilman, että sinun tulee muistaa yksityiskohtia. Ja voimme luottaa että kaikki kerrokset toimivat yhdessä tiedon lähettämiseksi luotettavasti.