OS support for P2P programming: a case for TPS

S. Baehni1, P.T. Eugster1, R. Guerraoui1
1Distributed Programming Laboratory, Swiss Federal Institute of Technology, Lausanne, Switzerland

Tóm tắt

Just as the remote procedure call (RPC) turned out to be a very effective OS abstraction in building client-server applications over LANs, type-based publish-subscribe (TPS) can be viewed as a high-level candidate abstraction for building peer-to-peer (P2P) applications over WANs. This paper relates our preliminary, though positive, experience of implementing and using TPS over JXTA, which can be viewed as the P2P counterpart to sockets. We show that, at least for P2P applications with the Java type model, TPS provides a high-level programming support that ensures type safety and encapsulation, without hampering the decoupled nature of these applications. Furthermore, the loss of flexibility (inherent to the use of any high level abstraction) and the performance overhead, are negligible with respect to the simplicity gained by using TPS.

Từ khóa

#Computer aided software engineering #Encapsulation #Sockets #Libraries #Peer to peer computing #Safety #Protocols #Java #Internet #Operating systems

Tài liệu tham khảo

10.1145/286936.286957 rowstron, 2001, Pastry: Scalable, Decentralized Object Location, and Routing for Large-Scale Peer-to-Peer Systems, Proceedings of the 3rd Middleware conference (Middleware 2001), 10.1007/3-540-45518-3_18 10.1145/301308.301326 10.1145/380749.380767 clarke, 2000, Freenet: A Distributed Anonymous Information Storage and Retrieval Sys-tem, Proceedings of the International Computer Scientist Institute Workshop on Design Issues in Anonymity and Unobservability (ICSI'2000) 10.1145/343477.343622 10.1145/372202.372318 zinky, 1999, Vijayku-mar Krishnaswamy, Mustaque Ahamad. Pass-A service for Efficient Large Scale Dissemination of Time Varying Data Using CORBA, Proceedings of the 19th International Conference on Distributed Computing Systems (ICD-CS'99) eugster, 2001, Type-based publish/subscribe tanenbaum, 1996, Computer Networks 10.1109/ICDCS.2002.1022273 oki, 1993, The Information Bus - An Architecture for Extensible Distributed Systems, Proc 14th ACM Symp Operating Systems Principles (SOSP '93), 10.1145/173668.168624 1999, TIBCO TIB/Rendezvous White Paper 0, For the full source codes follow People/SebastienBaehni/Current work 2001 10.1145/800217.806609 2001