Middleware Approaches to Societal Scale Information Sharing

Author(s): Zhao, Ye | Advisor(s): Venkatasubramanian, Nalini | Abstract: Over the years, Internet users have exhibited an increasing demand for sharing information in a variety of application domains, and a large number of applications have emerged.Despite advances in Internet technologies, the following remain key challenges: (a) dynamicity of user context (e.g., locations and activities) causes rapid changes in terms of what to share and who to share with; (b) diverse performance requirements of information sharing applications (in terms of reliability, timeliness, accuracy and efficiency); (c) limitations in infrastructure (e.g., unreliable yet changing networks and resourced limited end devices). These challenges are further aggravated by large number of mobile users distributed over a wide geography.In this thesis, we study information sharing at societal scale involving a large group of people across a large geography. We exploit the knowledge of geographical and social relationships between users to address the above challenges. We adopt a middleware approach that is resilient to the heterogeneity of the communication environments (i.e., networks and devices) and offers adaptive services to a verity of applications. We scope our work along 2 dimensions. Firstly, along the dimension of system layers our focus is on two layers: 1) the information layer - what to share: determine specificity of contents and accurately target information consumers and providers. 2) the dissemination layer - how to share: determine dissemination mechanisms to deliver information from its source to targeted receivers to meet the performance goals. Secondly, along the dimension of timing constraints we consider two classes of applications: 1) instant information sharing and 2) delay-tolerant information sharing applications. We develop sharing techniques for multiple use cases.Specifically, for instant sharing we design two systems. At the information layer, we propose and design DYNATOPS, a dynamic topic based publish/subscribe middleware to efficiently keep trak of the large scale dynamic information interests of users, and provide efficient event notifications to subscribers. DYNATOPS organizes pub/sub brokers into a structured overlay. To adapt to the subscription dynamics and to maintain efficient event notifications, it strategically and moderately reposition pub/sub users on brokers and reposition brokers on the overlay. At the dissemination layer, we propose and design GSFord, a reliable notification middleware that aims to provide timely and reliable instant information dissemination in extreme situations (e.g., catastrophic disasters). GSFord builds robust geo-aware P2P overlays and provides reliable storage of geo-social information of users under extreme regional failures. It reliably delivers messages to unfailing recipients who are either geographically or socially correlated to the event and exploits a targeted social diffusion through diverse out-of-band channels to reach those in failed regions on a best efforts basis.For delay-tolerant information sharing, at the information layer, we propose and implement SmartSource, a crowdsourcing based mobile Question a Answer (QaA) middleware. SmartSource aims to provide mobile information seekers with timely, trustworthy and accurate answers while ensuring that information providers are not inappropriately burdened. It takes advantage of both static and dynamic context and semantics from mobile users (e.g., geolocation, social network, expertise/interest, device sensor profiles, battery level) to identify sources of information (i.e., providers) that are trusted by the user and accurate enough for the questions at hand. At the dissemination layer, we propose O2SM middleware that aims to enable mobile users to access to online social media contents anytime anyplace without requiring to be online all the time. We develop the middleware to (i) rank the social media streams by estimating probability that a given user views a given content item and (ii) invest the limited resources (network, energy and storage) on prefetching only those social media streams that are most likely to be watched when mobile devices have good Internet connectivity. As a proof of concept we implement an Android app, oFacebook, to provide mobile users with uninterrupted access to Facebook.