vices. A cache allows the gateway to reduce forward-
ing of requests and to ensure that a value is always
returned, even when requested devices are sleeping.
In Section 4.1 we could see how cache may reduce
the communication overhead. In general, by avoiding
requests made to constrained devices, the gateway be-
comes suitable for them.
5 CONCLUSIONS
This paper proposed GoThings, a preliminary ar-
chitecture for creating gateways to interconnect
application-layer messaging protocols focused on In-
ternet of Things, and suitable for constrained de-
vices. In regard to message exchange pattern, the ar-
chitecture support both request-response and publish-
subscribe.
The main aspects of the architecture are interop-
erability, extensibility, generality and configurability.
GoThings allows transparent interoperability in a way
that devices can use its own protocol to have a het-
erogeneous communication. GoThings was designed
to be extensible: enabling a new protocol is only a
matter to install a new plugin. GoThings is generic
enough in the context of IoT problems, and the users
are able to change gateway behaviors through the use
of listeners.
Finally, there are some ongoing work. We are
looking for the best ways to specify the message
model in a manner that existing and possibly future
IoT protocols can be interconnected without losing
their semantics. When the message model is properly
specified we can work on plugin subsystem which in-
cludes the specification of communication manager
API. We plan to deploy our proof-of-concept gateway
implementation in a Raspberry Pi
5
. We will compare
performance with the achieved of native protocol im-
plementations. We expect to finish these work until
January 2016.
REFERENCES
Blair, G., Paolucci, M., Grace, P., and Georgantas, N.
(2011). Interoperability in Complex Distributed Sys-
tems. In Formal Methods for Eternal Networked Soft-
ware Systems. Springer Berlin Heidelberg.
Bromberg, Y.-D., Réveillère, L., Lawall, J., and Muller, G.
(2009). Automatic Generation of Network Protocol
Gateways. In ACM/IFIP/USENIX, 10th International
Middleware Conference.
5
http://www.raspberrypi.org/
Castellani, A., Fossati, T., and Loreto, S. (2012). HTTP-
CoAP cross protocol proxy: an implementation view-
point. In IEEE 9th International Conference on Mo-
bile Ad-Hoc and Sensor Systems.
Collina, M., Corazza, G. E., and Vanelli-Coralli, A. (2012).
Introducing the QEST broker: Scaling the IoT by
bridging MQTT and REST. In IEEE 23rd Interna-
tional Symposium on Personal, Indoor and Mobile
Radio Communications.
Dargie, W. and Poellabauer, C. (2010). Fundamentals of
wireless sensor networks: theory and practice. John
Wiley & Sons Ltd., United Kingdom.
Fielding, R. T. and Taylor, R. N. (2002). Principled design
of the modern Web architecture. ACM Transactions
on Internet Technology, 2:115–150.
Guinard, D., Trifa, V., and Wilde, E. (2010). A resource ori-
ented architecture for the Web of Things. In Internet
of Things (IOT), pages 1–8, Tokyo. IEEE.
Hornsby, A. and Bail, E. (2009). µXMPP: Lightweight im-
plementation for low power operating system Contiki.
In IEEE International Conference on Ultra Modern
Telecommunications & Workshops.
Hunkeler, U., Truong, H. L., and Stanford-Clark, A. (2008).
MQTT-S – A publish/subscribe protocol for Wireless
Sensor Networks. In 3rd IEEE International Confer-
ence on Communication Systems Software and Mid-
dleware and Workshops.
Issarny, V., Bennaceur, A., and Bromberg, Y.-D. (2011).
Middleware-Layer Connector Synthesis: Beyond
State of the Art in Middleware Interoperability. In
Formal Methods for Eternal Networked Software Sys-
tems. Springer Berlin Heidelberg.
Klauck, R. and Kirsche, M. (2012). Chatty things – Making
the Internet of Things readily usable for the masses
with XMPP. In 8th International Conference on Col-
laborative Computing, Pittsburgh, PA.
WEBIST2015-11thInternationalConferenceonWebInformationSystemsandTechnologies
140