Managing communication in pervasive environments is a difficult challenge because of characteristics such as: no central server and frequent disconnections. Furthermore, services to be composed for coordination are sometimes distributed in multiple networks. In that case, intermediate nodes linking these networks have to route communication data toward appropriate destinations. However, incorporating such routing protocols into applications significantly increases complexity of the code. In this paper we propose AmbientTalk/M, a concurrent distributed programming language for coordination of services among multiple networks. The language provides powerful support for creating routing frameworks to hook up two or more networks. With the language support, we can express how service information is propagated or how messages are routed using high-level abstraction over underlying network technology. We show the language is flexible enough to express a variety of routing frameworks with respect to robustness, traffic efficiency, and security. Because the frameworks are installed reflectively, they are completely separated from application code. To the best of our knowledge, this is the first attempt to integrate routing semantics among multiple networks into a programming language reflection.
|8th IEEE International Workshop on Middleware and System Support for Pervasive Computing (PERWARE 2011)
|Published - mrt 2011