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.