With the rapid development of the Internet of Things, Wireless Sensor Networks (WSNs) are deployed increasingly all over the world, providing data that can help increase sustainable development. Currently in Uppsala, Sweden, the GreenIoT project monitors air pollution by using WSNs. The resource constrained nature of WSNs demand that special care is taken in the design of communication models and communication protocols. The publish-subscribe (pub/sub) model suits WSNs very well since it puts an intermediary the broker server between sensor nodes and clients, thus alleviating the workload of the sensor nodes. The IETF (Internet Engineering Task Force) is currently in the process of standardizing a pub/sub extension to the Constrained Application Protocol (CoAP). Since the extension is such a recent addition to CoAP and not yet standardized, there are very few actual implementations of it and little is known of how it would work in practice. The GreenIoT project is considering replacement of their current pub/sub broker with the CoAP pub/sub broker since its underlying implementation is likely to be more energy efficient and the standardizing organization behind CoAP is the well-esteemed IETF. On a general level, this report offers an investigation of the problems and challenges faced when implementing the CoAP pub/sub extension with respect to design choices, implementation and protocol ambiguities. More specifically, a CoAP pub/sub broker is implemented for the GreenIoT project. By means of carefully analyzing the CoAP protocol and CoAP pub/sub draft as well as other necessary protocols, then proceeding to make decisions of what programming language to use as well as what existing CoAP library to use, a broker server was implemented and tested iteratively as the work proceeded. The implementation gave rise to several questions regarding the pub/sub draft which are also discussed in the report. / Den hastiga utvecklingen av Sakernas Internet över hela världen har medfört ett ökat användande av trådlösa sensornätverk vars datainsamling kan bidra till en mer hållbar utveckling. För närvarande använder sig GreenIoT-projektet i Uppsala av trådlösa sensornätverk för att övervaka halterna av luftföroreningar. Resursbegränsningarna för dylika nätverk medför att särskild hänsyn måste tas vid design av såväl kommunikationsmodeller som kommunikationsprotokoll. Modellen Publicera-Prenumerera (pub/pre) passar ypperligt för trådlösa sensornätverk då en mellanhand placeras mellan klient och server en s.k. broker vilket får den positiva effekten att att sensornoderna avlastas. För närvarande är IETF (Internet Engineering Task Force) i färd med att standardisera en pub/pre-utvidgning av det redan standardiserade CoAP (Constrained Application Protocol). Eftersom att utvidgningen är så pass ny finns ytterst få implementationer av den och man vet därmed väldigt lite om hur den faktiskt fungerar i praktiken. GreenIoT-projektet överväger att ersätta sin nuvarande pub/pre-broker med en CoAP pub/pre-broker eftersom att energianvändningen kan antas bli lägre samt att standardiseringsorganisationen bakom CoAP är det välrenommerade IETF. Sett ur ett större perspektiv erbjuder denna rapport en undersökning av de problem och utmaningar man ställs inför vid implementation av CoAP pub/pre-utvidgningen med avseende på designval, implementationsval, och protokolltvetydigheter. Mer konkret implementeras en CoAP pub/pre-broker åt GreenIoT-projektet. Genom att först noggrant analysera CoAP-protokollet, CoAP pub/pre-utkastet, liksom andra nödvändiga protokoll, för att därefter bestämma vilket programmeringsspråk och vilket existerande CoAP-bibliotek som skulle användas, implementerades en broker server som testades iterativt under processens gång. Ett flertal frågor som uppstod rörande pub/pre-utkastet presenteras och diskuteras i rapporten.
Identifer | oai:union.ndltd.org:UPSALLA1/oai:DiVA.org:kth-232076 |
Date | January 2018 |
Creators | Oudishu, Ramcin, Gärdborn, Pethrus |
Publisher | KTH, Skolan för elektroteknik och datavetenskap (EECS) |
Source Sets | DiVA Archive at Upsalla University |
Language | English |
Detected Language | Swedish |
Type | Student thesis, info:eu-repo/semantics/bachelorThesis, text |
Format | application/pdf |
Rights | info:eu-repo/semantics/openAccess |
Relation | TRITA-EECS-EX ; 2018:161 |
Page generated in 0.0025 seconds