Lorenzo Bettini, Michele Loreti, Rosario Pugliese
Dipartimento di Sistemi e Informatica, Universita' di Firenze
The structure of open nets, like the Internet, is highly dynamic, as the topology of component networks continuously evolves. In this context, node connectivity is a key aspect and a language for distributed network-aware mobile applications should provide explicit mechanisms to handle it. In this paper, we address the problem of expressing dynamic changes of node connectivity at linguistic level and, in particular, we focus on a slight extension of the language Klaim, that is targeted to this aim. The extension consists of the introduction of a new category of processes that, in addition to the standard process operations, can execute a few new coordination operations for establishing new connections, accepting connection requests and removing connections. Our extension puts forward a clean separation between the coordinator level and the user level and, hence, it is modular enough to be easily applicable also to other network-aware languages. We will also show that our approach can be used as a guide for actual distributed (i.e. without a single centralized server) implementations of mobile systems.