Self sustained service independent P2P networks
aim to serve as a cheap alternative to traditional cloud providers. In such networks, users who add resources to the network are given strong (typically monetary) incentives to keep their devices connected for long periods of time. Further, in such networks, there is a decoupling between the machines that form the P2P network and the devices used to consume services from the network. In particular, users may access services offered by the network through their mobile devices. In fact, a user may obtain services even if he did not donate any resources, but is willing to pay for the services he consumes either through a service fee or by viewing ads, similarly to cloud services.
This work introduces Postman, a publish/subscribe architecture tailored for self sustained service independent P2P networks. Postman is designed to provide its users with a self-organizing, scalable, efficient and churn resilient publish/subscribe service. Postman achieves this using a novel client/mailbox architecture where a publish/subscribe system delivers content to a highly diverse set of mailboxes. Mailboxes are hosted on elastically selected set of peers and each mailbox accumulates multiple topics from many clients. Clients then fulfill their subscriptions by polling the relevant mailboxes, while the mailboxes act as subscribers of the actual publish/subscribe mechanism. Our experimental results show that the client/mailbox architecture significantly reduces the number of subscriptions the publish/subscribe mechanism handles. In addition, the publish/subscribe mechanism handles a much more uniform subscription pattern than the real subscription pattern, obtains very high delivery rates and is highly robust to failures and churn.