Technical Report Number
LimeLite is a new coordination model and middleware designed to support rapid development of applications entailing logical mobility of agents and physical mobility of hosts. Designed to function in open environments, LimeLite performs automatic agent discovery but ﬁlters the results to deﬁne for each agent an individualized acquaintance list in accordance with run-time policies speciﬁed at the application level. This asymmetry among participants in the coordination process is dictated by the need to accommodate settings involving large numbers of agents and hosts that come and go freely. It represents an important departure from coordination research in general. The coordination context is limited to the speciﬁc needs of the individual agent and its coordination activities are restricted to tuple spaces owned by peers present in the acquaintance list. Linda-like primitives typically used in coordination middleware are tailored in LimeLite to address the challenges of mobile environments. Among other things, this entails the elimination of remote blocking and data pushing operations since the aﬀected agents may no longer be within communication range. It also entails the addition of reactions that are triggered by the presence of information of interest on agents listed in the acquaintance list and not by events that could have occurred prior to discovery. Finally, to ensure both performance and ease of deployment on small devices the granularity of atomic operations and the reliance on transport layer guarantees have been minimized. This paper introduces LimeLite, explains its key features, illustrates its usage in application development, and explores its eﬀectiveness as a software engineering tool.
Roman, Gruia-Catalin and Fok, Chien-Liang, "A Lightweight Coordination Model and Middleware for Mobile Computing **Please see WUCSE-03-12**" Report Number: WUCSE-2002-47 (2002). All Computer Science and Engineering Research.