Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
En jämförelse mellan HTTP Long Polling och Websocket ur ett batteriperspektiv
Jönköping University, School of Engineering, JTH, Computer Science and Informatics.
Jönköping University, School of Engineering, JTH, Computer Science and Informatics.
2018 (Swedish)Independent thesis Basic level (degree of Bachelor), 10 credits / 15 HE creditsStudent thesisAlternative title
A Comparision Between HTTP Long Polling and Websocket from a Battery Perspective (English)
Abstract [en]

Mobile applications are having a bigger role in our society than ever before. Many of these applications is relying heavily on internet usage, and due to the fact that smartphones have a limited battery capacity it is crucial that these network consuming applications are energy efficient. The traditional usage for communicating with a server is by using the HTTP protocol and a request/response model, but this can be rather limited because the server cannot send out data without the client's request. There are several ways to solve this problem, one widely used method is HTTP-Long Polling. Another protocol that has grown in popularity during the last years is the Websocket protocol, which works in a slightly different manner. The Websocket protocol supports two-way communication, commonly referred to as duplex, by default. This means that both the server and the client can send data to each other simultaneously and without the other parts request. Websocket has been proven more effective in many areas in various benchmarks, but whether it is more energy efficient on mobile platforms remains unclear and will thus be the topic of this thesis. To compare these protocols a mobile application has been developed for iOS and Android. These applications examine the energy efficiency of the two protocols by receiving short messages in a frequent interval from a server application written in Node.js. To measure energy impact of these protocols XCode Energy Report were used for iOS and Android’s built in battery monitor for Android. The result shows that the Websocket protocol was the more energy efficient alternative, especially for iOS. The implementation for Android shown that the choice of protocol did not have too much of an impact the energy consumption.

Abstract [sv]

I dagens samhälle används mobilapplikationer i en större utsträckning än aldrig förr. Många av dessa mobilapplikationer använder sig friskt av mobiltelefonens nätverk, och eftersom mobiltelefoner har en begränsad batterikapacitet är det extra viktigt att dessa nätverkskrävande mobilapplikationer är så energisnåla som möjligt. Traditionellt sett har nätverksprotokollet HTTP använts för att skicka och ta emot data, men detta kan bli problematiskt då servern är beroende av att klienten frågar om data innan den kan skickas ut. Detta innebär att servern själv inte kan initiera en kommunikation med klienten. För att lösa detta problem finns det olika sätt som har kommit fram under åren; HTTP-Long Polling är en av dem. Ett annat protokoll som har växt sig populärt de senaste åren är Websocket, som fungerar på ett annat sätt. Websockets har standardiserat stöd för tvåvägskommunikation, eller duplex, vilket innebär att servern och klienten kan skicka data till varandra samtidigt och oberoende av att den andra parten har frågat om den. Websocket har visat sig vara effektivare inom många områden, men hur dessa kan påverka energiförbrukning när de implementeras på mobiltelefoner står oklart, det är detta den här studien syftar till att undersöka. För att undersöka denna skillnad har två mobilapplikationer utvecklats, en till Android och en till iOS. Dessa mobilapplikationer undersöker de olika protokollens energieffektivitet genom att ta emot meddelanden frekvent från en server skriven i Node.js. För att mäta hur väl de olika protokollen presterade användes XCode Energy Report för iOS och Androids inbyggda batteriförbruknings-översikt. Resultaten som erhölls var att Websocket var det mest energieffektiva alternativet, denna skillnad var dock extra tydlig på implementationen för iOS. Implementationen för Android visade att valet av protokoll inte hade en allt för stor betydelse för mobilapplikationens energiförbrukning, det bibliotek som användes för Websocket var väldigt mycket mindre effektivt än det som testades på iOS.

Place, publisher, year, edition, pages
2018. , p. 50
Keywords [en]
HTTP, Long Polling, Websocket, battery, duplex, mobile applications
Keywords [sv]
HTTP, Long Polling, Websocket, batteri, duplex, mobilapplikation
National Category
Engineering and Technology
Identifiers
URN: urn:nbn:se:hj:diva-41361ISRN: JU-JTH-DTA-1-20180057OAI: oai:DiVA.org:hj-41361DiVA, id: diva2:1245726
External cooperation
Infospread AB
Subject / course
JTH, Computer Engineering
Supervisors
Examiners
Available from: 2018-09-27 Created: 2018-09-05 Last updated: 2018-09-27Bibliographically approved

Open Access in DiVA

fulltext(2294 kB)181 downloads
File information
File name FULLTEXT01.pdfFile size 2294 kBChecksum SHA-512
9ab3b22ce773fff92cc1d6c7cb087ad516249367488a9aa614c2a44aa3fed089be22cf614f5bf738c23f01b849b908f4d6bc9b50d4b1cbcfc5312c1af754659d
Type fulltextMimetype application/pdf

By organisation
JTH, Computer Science and Informatics
Engineering and Technology

Search outside of DiVA

GoogleGoogle Scholar
Total: 181 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

urn-nbn

Altmetric score

urn-nbn
Total: 795 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf