Design and Implementation of a Wide-Area Middleware Infrastructure for the Development of Distributed Applications in Structured Peer-to-Peer Environments

Distributed systems have evolved considerably in recent years. Depending on the scalability level required, several solutions can be found to develop distributed applications. If the number of users is relatively low, there are several centralized client-server models, with a rather simple subjacent architectural complexity, which provide an acceptable performance.

A hierarchical framework for peer-to peer systems: design and optimizations

A peer-to-peer (P2P) overlay network is a logical network, built on top of an underlying physical network, which facilitate the location of distributed resources without centralized control. These systems have emerged on the edges of the Internet thanks to the generalized growth of broadband Internet connections.

Development of distributed algorithms for data search and content distribution in structured peer-to-peer network

This thesis defines a generic framework that allows building high level services, of both data search and content distribution, for structured peer-to-peer networks (SPN). We consider a twofold genericity: (i) Extensible framework for services and applications, with a dynamic deploy over other P2P systems; and (ii) generic and portable framework over most of the SPNs.

Distributed aop middleware for large-scale scenarios

In this PhD dissertation we present a distributed middleware proposal for large-scale application development. Our main aim is to separate the distributed concerns of these applications, like replication, which can be integrated independently and transparently. Our approach is based on the implementation of these concerns using the paradigm of distributed aspects. In addition, our proposal benefits from the peer-to-peer (P2P) networks and aspect-oriented programming (AOP) substrates to provide these concerns in a decentralized, decoupled, efficient, and transparent way.

On the design and optimization of heterogeneous distributed storage systems

Over the last decade, users’ storage demands have been growing exponentially year over year. Besides demanding more storage capacity and more data reliability, today users also demand the possibility to access their data from any location and from any device. These new needs encourage users to move their personal data (e.g., E-mails, documents, pictures, etc.) to online storage services such as Gmail, Facebook, Flickr or Dropbox. Unfortunately, these online storage services are built upon expensive large datacenters that only a few big enterprises can afford.

On Personal Storage Systems: Architecture and Design Considerations

Nowadays, end-users require higher amounts of reliable and available on-line space to store their personal information (e.g., documents, pictures). This motivates researchers to devise and evaluate novel personal storage systems in order to cope with the growing storage demands of users. In this dissertation, we focus our efforts to study two emerging personal storage architectures: Personal Clouds and social storage systems. As one can easily infer, both architectures are radically different and pursue distinct goals.

With the ever increasing Internet traffic, peer-to-peer (P2P) content distribution has emerged as an alternative to the traditional client-server model, especially with the recent bandwidth soar on the edges of the Internet. Data centers with limited bandwidth budget can benefit from the upload speed of the clients interested in the same content to improve the overall Quality of Service (QoS). This can be done by introducing a P2P protocol, BitTorrent for instance, when the load on a certain content becomes high.

Enhancing the Programmability of Cloud Object Storage

In a world that is increasingly dependent on technology, digital data is generated in an unprecedented way. This makes companies that require large storage space, such as Netflix or Dropbox, use cloud storage solutions where data is remotely maintained, managed, and backed up, in an easy and cheap way. Particularly, cloud object stores are widely adopted and increasingly used for storing these huge amounts of data. This is mainly thanks to their built-in characteristics, such as simplicity, scalability and high-availability. Moreover, the evolution of cloud computing, in what refers, for example, to data analysis, make cloud object stores an important actor in today’s cloud ecosystem.

M.Sc. Thesis

Overlay Routing Protocols for Mobile Ad Hoc Networks

Mobile ad hoc networks (MANET) are wireless network which do not rely on any fixed infrastructure. The nodes in a MANET may not have all other nodes in radio range, so each node must act both as final node and as router. The interest in MANETs has grown with the increasing popularity of wireless enabled devices (laptops, PDA, mobile phones).

AGORA: an integrated approach for collaboration in MANETs

The objective of this project is to build a complete platform that allows spontaneous collaboration in mobile ad-hoc networks (MANETs) in an easy and flexible way. However, developing applications specially targeted for MANETs is not a trivial task. Devices’ limited resources together with dynamic and multihop network present a serious challenge which applications must face. In these terms, it seems reasonable that middleware for ad hoc networks will highly help in reducing the complexity of MANET application development. Middleware approaches provide high level services which application can use in order to construct more complex and flexible applications.

Mitigating Routing Attacks with Local Trust in DHTs

Distributed Hash Tables (DHTs) have been used as a common building block in many distributed applications, including Peer-to-Peer (P2P), Cloud and Grid Computing. However, there are still important security vulnerabilities that hinder their adoption in today’s large-scale computing platforms. For instance, routing vulnerabilities have been a subject of intensive research but existing solutions are mainly based on redundancy.

Resorting to the Cloud for improving performance on F2F storage: FriendBox as an example

Personal storage is a mainstream service used by millions of users. Among the existing alternatives, Friend-to-Friend (F2F) systems are nowadays an interesting research topic aimed to leverage a secure and private o-site storage service.

However, the specic characteristics of F2F storage systems (reduced node degree, correlated availabilities) represent a serious obstacle to their performance. Actually, it is extremely dicult for a F2F system to guarantee an acceptable storage service quality in terms of transference times and data availability to end users. In this landscape, we propose resorting to the Cloud for improving the storage service of a F2F system.