A Peer-to-Peer Approach to Enhance Middleware Connectivity

  • Erik Klintskog
  • Valentin Mesaros
  • Zacharias El Banna
  • Per Brand
  • Seif Haridi
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3144)


One of the problems of middleware for shared state is that they are designed, explicitly or implicitly, for symmetric networks. However, since the Internet is not symmetric, end-to-end process connectivity cannot be guaranteed. Our solution to this is to provide the middleware with a network abstraction layer that masks the asymmetry of the network and provides the illusion of a symmetric network. We describe the communication service of our middleware, the Distribution Subsystem (DSS), which carefully separates connections to remote processes from the protocols that communicate over them. This separation is used to plug-in a peer-to-peer module to provide symmetric and persistent connectivity. The P2P module can provide both up-to-date addresses for mobile processes as well as route discovery to overcome asymmetric links.


Overlay Network Protocol Layer Abstract Entity Shared State Virtual Circuit 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Herlihy, M., Warres, M.: A tale of two directories: implementing distributed shared objects in Java. Concurrency: Practice and Experience 12, 555–572 (2000)zbMATHCrossRefGoogle Scholar
  2. 2.
    Tilevich, E., Smaragdakis, Y.: NRMI: Natural and efficient middleware. In: 23rd International Conference on Distributed Computing Systems, p. 252 (2003)Google Scholar
  3. 3.
    Maassen, J., Kielmann, T., Bal, H.: Efficient replicated method invocation in Java. In: ACM 2000 Java Grande Conference, pp. 88–96 (2000)Google Scholar
  4. 4.
    Aridor, Y., Factor, M., Teperman, A.: cJVM: A single system image of a JVM on a cluster. In: International Conference on Parallel Processing, pp. 4–11 (1999)Google Scholar
  5. 5.
    Holder, O., Ben-Shaul, I., Gazit, H.: Dynamic layout of distributed applications in FarGo. In: International Conference on Software Engineering, pp. 163–173 (1999)Google Scholar
  6. 6.
    Waldo, J., Wyant, G., Wollrath, A., Kendall, S.: A note on distributed computing. In: Mobile Object Systems. In: Tschudin, C.F., Vitek, J. (eds.) MOS 1996. LNCS, vol. 1222, pp. 49–64. Springer, Heidelberg (1997)Google Scholar
  7. 7.
    Maltz, D.A., Bhagwat, P.: MSOCKS: An architecture for transport layer mobility. In: 7th Conference on Computer Communications, pp. 1037–1045 (1998)Google Scholar
  8. 8.
    Perkins, C.: IP mobility support, RFC 2002 (1996) Google Scholar
  9. 9.
    O’Toole, J., Gifford, D.: Names should mean what, not where. In: 5th ACM European Workshop on Distributed Systems (1992)Google Scholar
  10. 10.
    Snoeren, A., Balakrishnan, H., Kaashoek, M.: Reconsidering internet mobility. In: 8th Workshop on Hot Topics in Operating Systems (2001)Google Scholar
  11. 11.
    Stoica, I., Morris, R., Krager, D., Kaashoek, M., Balakrishnan, H.: Chord: A scalable peer-to-peer lookup service for internet applications. In: ACM SIGCOMM, pp. 149–160 (2001)Google Scholar
  12. 12.
    Ratnasamy, S., Handley, M., Karp, R., Shenker, S.: Application-level multicast using content-addressable network. In: Crowcroft, J., Hofmann, M. (eds.) NGC 2001. LNCS, vol. 2233, pp. 14–29. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  13. 13.
    Stoica, I., Adkins, D., Zhuang, S., Shenker, S., Surana, S.: Internet Indirection Infrastructure. In: ACM SIGCOMM, pp. 73–88 (2002)Google Scholar
  14. 14.
    Klintskog, E., Banna, Z.E., Brand, P., Haridi, S.: The design and evaluation of a middleware library for distribution of language entities. In: 8th Asian Computing Conference, pp. 243–259 (2003)Google Scholar
  15. 15.
    Onana, L., El-Ansary, S., Haridi, P.B.: Dks (n, k, f): A family of low communication, scalable and fault-tolerant infrastructures for p2p applications. In: 3rd IEEE International Symposium on Cluster Computing and the Grid, pp. 344–350 (2003)Google Scholar
  16. 16.
    Adjie-Winoto, W., Schwartz, E., Balakrishnan, H., Lilley, J.: The design and implementation of an intentional naming system. In: 17th ACM Symposium on Operating System Principles, pp. 186–201 (1999)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2004

Authors and Affiliations

  • Erik Klintskog
    • 1
  • Valentin Mesaros
    • 2
  • Zacharias El Banna
    • 1
    • 3
  • Per Brand
    • 1
  • Seif Haridi
    • 3
  1. 1.Distributed Systems Lab., Swedish Institute of Computer Science, KistaSweden
  2. 2.Computer Science Dpt.Univ. catholique de LouvainLouvain-la-NeuveBelgium
  3. 3.IMIT – Royal Institute of Technology, KistaSweden

Personalised recommendations