Sovellusprotokollat ja kommunikointiparadigmat web-integroidussa IoT-toteutuksessa - Syysvirta, Joonas (My University, 2018)
Internet of Things tuo miljardit laitteet Internetiin. Käytössä on kuitenkin valtava määrä protokollia, jotka eivät ole toistensa kanssa yhteensopivia. Keskenään hyvin erilaisten laitteiden ja lukuisten protokollien vuoksi laitteiden tarjoamaa dataa ja toiminnallisuutta hyödyntävien sovellusten ja palveluiden kehittäminen on haasteellista. World Wide Webin valmiilla infrastruktuurilla ja standardeilla onkin edellytykset toimia avainasemassa myös IoT:n sovellustasolla. Perinteiset web-tekniikat eivät kuitenkaan ominaisuuksiltaan ja vaatimuksiltaan sovi kaikkiin IoT-sovelluksiin. Tämän tutkielman tavoitteena on tutkia ja arvioida sovelluskerroksen kommunikointiprotokollien soveltuvuutta ja tiedonsiirron suorituskykyä reaaliaikaisessa sovelluksessa, jossa web-päätelaite toimii yhtenä asiakkaana keskitetyssä IoT-järjestelmässä. Työssä tutkitaan, kuinka tällainen ratkaisu voidaan sovellustasolla toteuttaa järjestelmän arkkitehtuurin, web-integraation, kommunikointiparadigmojen ja sovelluskerroksen protokollien osalta. Lisäksi tutkitaan, kuinka niin kutsuttua publish/subscribe-kommunikointimallia voitaisiin toteuttaa uudella HTTP/2-protokollalla. HTTP/2-protokollasta on olemassa hyvin vähän soveltavaa tutkimustietoa. Tavoitteena onkin muun muassa mittausten kautta selvittää HTTP/2-protokollan soveltuvuutta vaihtoehtona IoT:ssa yleisesti käytetylle MQTT-protokollalle. Työssä esitellään ja toteutetaan kaksi asetelmiensa puolesta vertailukelpoista publish/subscribe-mallin mukaista IoT-ratkaisua, joissa asiakkaina voivat toimia sekä IoT-laite että web-asiakas. Ensimmäisessä toteutuksessa sovellustason kommunikointiin käytetään MQTT- ja WebSocket-protokollia. Toinen toteutus tehdään HTTP/2-protokollalla. Empiirisen tutkimuksen kautta mitataan toteutusten tiedonsiirron tehokkuutta ja latensseja. Työn lopputuloksena esitetään tuloksiin pohjautuva arvio työssä käsiteltyjen sovellustason protokollien suorituskyvystä keskitetyssä World Wide Webiin liitetyssä IoT-ratkaisussa, sekä referenssimalli, jonka pohjalta tällainen ratkaisu voidaan toteuttaa HTTP/2-protokollalla.
Keywords: Internet of Things, Web of Things, Sovellusprotokollat, HTTP/2