HTTP-välityspalvelimen käyttö tapahtumien keräämiseen Tero Tähtinen Teknillinen korkeakoulu Tietoliikenneohjelmistojen ja multimedian laboratorio Diplomityöesitelmä
Johdanto Diplomityössä toteutettiin HTTP-välityspalvelin, jonka avulla tietoa eri WWW-palveluiden käytöstä voidaan tallentaa Tapahtumien keräämistä WWW-palveluista voidaan hyödyntää monella eri alueella, kuten: –Sovellustestauksessa –Tilastoinnissa –Käytettävyystestauksessa Diplomityössä jouduttiin selvittämään tapahtumien keräämiseen liittyviä ongelmia, kuten: –Miten tietyn käyttäjän tapahtumat kyetään yksilöimään kerätystä tiedosta –Miten ohitetaan erityyppiset välimuistien käyttö joka estää tapahtumien keräämisen –Mitä tietoja kerätään ylipäätään tulisi kerätä –Kerätyn tiedon analysointi
Taustaa - HTTP HTTP-protokolla on tyyppiesimerkki asiakas-palvelin – arkkitehtuuria käyttävästä tiedonsiirtoprotokollasta –Selain tekee palvelupyynnön palvelimelle, joka palauttaa vastauksen HTTP-viestit (palvelupyynnöt ja vastaukset) koostuvat otsikko- sekä sisältöosasta –Otsikoissa siirtyvät tiedot sisältöosan sisällöstä sekä tietoja selaimelle ja palvelimelle –Sisältöosassa siirtyvät HTML-sivut selaimelle näytettäväksi sekä lomaketiedot palvelimelle käsittelyä varten HTTP-protokolla määrittää miten tiedot selaimelta palvelimelle tulee välittää –Yhtenäinen tapa WWW-pohjaisten sovellusten kesken. Tämän avulla voidaan kerätä materiaalia useista eri tyyppisistä palveluista
Eri menetelmät tapahtumien keräämiseen
Eri keräysmenetelmät 1/2 Loki-pohjainen –Kaikki palvelinohjelmistot tukevat menetelmää –Selainriippumaton –Ei yksilöi käyttäjää Eväste- ja JavaScript –pohjainen –Asennettava osaksi sivun HTML-koodia –Kykenee yksilöimään käyttäjän tarkasti ja mahdollistaa pitkäaikaisen seurannan –Tarjoaa tarkempia tietoja käyttäjän koneesta –Vaatii tuen JavaScriptille
Eri keräysmenetelmät 2/2 Referer-viittauksiin perustuva –Selaimen välittämä tieto palvelimelle edellisestä sivusta –Käyttäjän liikkeiden seuranta sivustolla –Tietoa tapahtumista muilla sivustoilla –Ei yksilöi käyttäjää Asiakaspäässä tapahtuva tiedonkeräys –Eleiden ja perustelujen taltioiminen –Kerätyn tiedon indeksointi työlästä (videomateriaali) HTTP-välityspalvelin –Toimii selaimen ja palvelimen välillä –Tästä tarkemmin hieman myöhemmin esityksessä
Ongelmakohdat
Välimuistit 1/2 Haettua resurssia ei aina ladata suoraan palvelimelta –Selaimet –Välityspalvelimet Aiheuttaa ongelmia tapahtumien keräämisessä –Kaikkea tietoa ei voida tallentaa
Välimuistit 2/2
Käyttäjän yksilöiminen 1/2 Käyttäjän yksilöiminen tarkoittaa mahdollisuutta ryhmitellä kerättyjä tietoja käyttäjäkohtaisesti Yksilöiminen voidaan suorittaa seuraavien tietojen perusteella –IP-osoite (yksilöi tietyn verkkokortin) –Kirjautuminen (tarkka yksilöiminen) –Evästeet (yksilöivä tunniste) –Välimuistimenetelmä
Käyttäjän yksilöiminen 2/2
Toteutettu HTTP-välityspalvelin HTTP/1.1 määrityksen (RFC 2616) mukainen toteutus –Toteuttaa määrityksessä välityspalvelimelle annetut vaatimukset Voi muuttaa sekä vastauksen otsikkotietoja että sisältöä (HTML-sivua, kuvaa yms) –Tästä johtuen on voitu toteuttaa välityspalvelimeen tiedon keräystä helpottavia toimintoja, jotka käyttävät muiden tapahtumien keräysmenetelmien parhaita puolia Kerättyyn tietoon luotiin rajapinta –Rajapinnan avulla kerättyä tietoa voidaan analysoida ulkopuolisissa sovelluksissa
Käytettävyystutkimus Salomaa-yhtiöiden projektinhallintajärjestelmä Käytettävyystesteihin osallistui yhteensä 5 henkilöä, joista kahden testit videoitiin Testitehtävät liittyivät tiedon etsimiseen, tallentamiseen sekä muokkaamiseen Testin käyttöä tallennettiin muistiinpanovälineiden, videokameran sekä toteutetun välityspalvelimen avulla
Tulosten indeksointi Tuloksien indeksointia varten toteutettiin tiedon analysointirajapintaan sovellus –Mahdollistaa videon indeksoinin kytkemisen osaksi välityspalvelimen keräämiä tietoja Esimerkki
Kysymyksiä? Yhteystiedot: Tero Tähtinen
Lähteet mm. RFC Hypertext Transfer Protocol -- HTTP/1.1 Viitattu http:// Web Intermediaries (WBI) Viitattu Kattava lähdeluettelo diplomityön lopussa