Mobile applications have become the platform of choice for deploying innovative services. The interaction among users plays a central role in many of these novel applications, including multi-user games, applications for enhancing user experience in large events and touristic activities, among others. Traditional cloud-based architectures, where all interactions are mediated by servers lead to scalability and reliability issues.
In this project we propose adopting a decentralized architecture where mobile devices communicate directly and rely on cloud and edge resources for providing efficient, highly available and reliable solutions. To make these solutions a reality, we are focusing on the following three main challenges:
* Efficient communication among clients: we are developing efficient qnd robust overlay algorithms to support the communications among the elements of the system. These algorithms are combining the use of peer-to-peer connection among mobile client for fast interaction and the use of connections with edge and cloud node for providing robustness and ease management.
* Algorithms for partially replicated data: as each user is only interested in a small fraction of the data maintained by the system, and that the data evolves over time, it is necessary to develop algorithm for partial and dynamic replication.
* Security mechanisms: we are focusing primarily on preventing unauthorized operations, while still allowing fast peer-to-peer interaction among mobile nodes. In this context, we are working not only on algorithms for providing security guarantees but also on programming abstractions for dealing with the problem.