On Github viitasusi / viitasusi.github.io
Esityksen omistaa Ville / @villehietanen
Seuraavat sivut käsittelevät mielestäni kiinnsotavimpia protokollia
HTTP (HyperText Transfer Protocol) on TCP/IP -protokollapinon sovellustason protokolla, jota web-palvelimet ja selaimet käyttävät kommunikointiin. HTTP-protokolla perustuu asiakas-palvelin malliin, jossa jokaista pyyntöä kohden on yksi vastaus. Käytännössä selain lähettää HTTP-viestin HTTP-palvelimelle, joka palauttaa HTTP-vastauksen.
Asiakas-palvelin -mallissa (Client-Server model) asiakkaat käyttävät palvelimen tarjoamia palveluja. Kommunikointi asiakkaan ja palvelimen välillä tapahtuu siten, että asiakasohjelmisto ja palvelinohjelmisto sijaitsevat erillisissä fyysisissä sijainneissa. Palvelinohjelmisto tarjoaa yhden tai useamman palvelun, joita asiakasohjelmisto käyttää.
HTTP-protokollan yli lähetettävät viestit ovat tekstimuotoisia. Viestit koostuvat riveistä jotka muodostavat otsakkeen, sekä riveistä jotka muodostavat viestin rungon. Viestin runkoa ei ole pakko olla olemassa. Viestin loppuminen ilmoitetaan kahdella peräkkäisellä rivinvaihdolla.
Palvelimelle lähetettävän viestin, eli kyselyn, ensimmäisellä rivillä on pyyntötapa, halutun resurssin polku ja HTTP-protokollan versionumero.Pyyntötapa ilmaisee HTTP-protokollassa käytettävän pyynnön tavan (esim. GET tai POST), polku haluttuun resurssiin kertoo haettavan resurssin sijainnin palvelimella (esim. /index.html), ja HTTP-versio kertoo käytettävän version (esim. HTTP/1.0).Esimerkki viestistä: GET /index.html HTTP/1.0
SOAP on yksi Web Service ohjelmistojärjestelmän protokolla, jonka tehtävä on kuljettaa XML-dokumentteja tietoverkkojen yli. SOAP-protokolla rakentuu HTTP:n päälle
SOAP-protokollaa käytetään yleisesti esimerkiksi kahen järjestelmän väliseen tietojenvaihtoon. Järjestelmän voivat kommunikoia keskenään ja ohjata toisiaan XML-dokumenttien välityksellä. SOAP-protokollaa ei juuri käytetä avoimessa internetissä. Sen sijaan esimerkiksi monien verkkopalvelujen taustajärjestelmät kommunikoivat SOAP-protokollaa käyttäen.
SOAP-viestin rakenne on erittäin yksinkertainen. Viesti sisältää juurielementin nimeltä Envelope. Tämän elementin sisällä kuljetetaan koko SOAP-viesti. Envelope-elementti sisältää vapaavalintaisen Header-elementin ja pakollisen Body-elementin.
TCP on tiedonsiirtoprotokolla, jolla luodaan yhteyksiä tietokoneiden välille. TCP-yhteyksien avulla tietokoneet voivat lähettää toisilleen tavujonoja luotettavasti. TCP-protokolla pitää myös huolta, että paketit saapuvat perille oikeassa järjestyksessä. Tarvittaessa hävinnyt paketti voidaan lähettää uudestaan. Suurin osa Internetin liikenteestä perustuu TCP-protokollaan ja koko TCP/IP-protokollaperhe on saanut nimensä TCP-protokollan perusteella. HTTP-protokolla toimii TCP:n päällä.
TCP-yhteys voidaan jakaa kolmeen osaan:
Pakettien katoaminen johtuu yleensä ruuhkasta internetin reitittimillä. Näissä tilanteissa reitittimelle saapuu enemmän paketteja kuin se ehtii välittämään eteenpäin. Kun reitittimen puskuri täyttyy, ylimääräiset paketit joudutaan hylkäämään. Jos datan lähettäjä vain itsepintaisesti uudelleenlähettäisi paketit, se lisäisi reitittimen ruuhkaa entisestään. Sitä varten TCP-protokollaan on kehitetty ruuhkanhallintamekanismeja. Ruuhkanhallintamekanismit ovat pitäneet internetin käyttökelpoisena, vaikka liikenteen määrä on kasvanut vuosien saatossa räjähdysmäisesti.
Botti, joka loggaa irc-kanavan keskustelua
Lähdekoodin kloonaaminen git-reposta: rhc app create irclokki nodejs-0.10 --from-code https://github.com/jvanhalen/irclokki.git