A Decentralized Middleware for Groupware Applications

  • Pablo Gotthelf
  • Alejandro Zunino
  • Marcelo Campo
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4715)


Many advances have been done to allow groups of people to work together and collaborate in the Internet. Most of these advances rely on a single server or other centralized communication topologies. However, pure decentralized approaches can bring many benefits to groupware applications, such as scalability, robustness, availability and easy deployment. In this paper, a decentralized middleware for groupware applications is presented, which enables people to join and cooperate in groups in a robust and easy deployable way, without relying on a central server or requiring any other special infrastructure. Two applications, one for synchronous groupware and other for asynchronous collaboration are shown as examples of successful experiences. This groupware middleware is based on a binary tree as overlay structure, which implements all groupware communication functionality, including membership management and packet forwarding, at application level, making it suitable for the Internet. Comparisons with other approaches in aspects such as throughput, protocol overhead, resource utilization and group bandwidth, shows that this middleware is a scalable and robust communication scheme to synchronous or asynchronous groups in the Internet.


Binary Tree Overlay Network Control Message Distribute Hash Table Failure Recovery 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Ellis, C.A., Gibbs, S.J., Rein, G.: Groupware: some issues and experiences. Commun. ACM 34(1), 39–58 (1991)CrossRefGoogle Scholar
  2. 2.
    Wheeler, B.C., Dennis, A.R., Press, L.I.: Groupware comes to the internet: charting a new world. SIGMIS Database 30(3-4), 8–21 (1999)CrossRefGoogle Scholar
  3. 3.
    Ma, J., Shizuka, M., Lee, J., Huang, R.: A p2p groupware system with decentralized topology for supporting synchronous collaborations. In: Proc. of the International Conference on Cyberworlds, Washington, DC, USA, p. 54. IEEE Computer Society Press, Los Alamitos (2003)Google Scholar
  4. 4.
    Ehrlich, S.F., Bikson, T., Mackay, W., Tang, J.C.: Tools for supporting cooperative work near and far: highlights from the cscw conference. In: Proc. of the ACM Human Factors in Computing Systems Conference, pp. 353–356. ACM Press, New York (1989)Google Scholar
  5. 5.
    Scalem, M., Bandyopadhyay, S., Sircar, A.K.: An Approach Towards a Decentralised Disaster Management Information Network (2004)Google Scholar
  6. 6.
    Chu, Y.-H., Rao, S.G., Zhang, H.: A case for end system multicast. IEEE J. Sel. Areas Commun. (2002)Google Scholar
  7. 7.
    Eriksson, H.: MBONE: the multicast backbone. Commun. ACM 37(8), 54–60 (1994)CrossRefMathSciNetGoogle Scholar
  8. 8.
    Stoica, I., Ng, T.S.E., Zhang, H.: REUNITE: A Recursive Unicast Approach to Multicast. In: Proc. of INFOCOM 2000, pp. 1644–1653. IEEE Computer Society Press, Los Alamitos (2000)Google Scholar
  9. 9.
    Ripeanu, M., Iamnitchi, A., Foster, I.: Mapping the gnutella network. IEEE Internet Computing 6(1), 50–57 (2002)CrossRefGoogle Scholar
  10. 10.
    Rowstron, A., Druschel, P.: Pastry: Scalable, decentralized object location and routing for large-scale peer-to-peer systems. In: Guerraoui, R. (ed.) Middleware 2001. LNCS, vol. 2218, pp. 329–350. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  11. 11.
    Stoica, I., Morris, R., Liben-Nowell, D., Karger, D.R., Kaashoek, M.F., Dabek, F., Balakrishnan, H.: Chord: A scalable peer-to-peer lookup service for internet applications. IEEE/ACM Transactions on Networking 11(1), 17–32 (2003)CrossRefGoogle Scholar
  12. 12.
    Gotthelf, P., Mendoza, M., Zunino, A., Mateos, C.: GMAC: An Overlay Multicast Network for Mobile Agents. In: Proc. of the VI Argentine Symposium on Computing Technology (AST 2005 - 34 JAIIO) (2005)Google Scholar
  13. 13.
    Jannotti, J., Gifford, D.K., Johnson, K.L., Kaashoek, M.F., O’Toole, Jr., J.W.: Overcast: Reliable Multicasting with an Overlay Network. In: Proc. of the 4th USENIX symposium on Operating Systems Design and Implementation, Berkeley, CA, USA USENIX (2000)Google Scholar
  14. 14.
    Chawathe, Y.: Scattercast: an adaptable broadcast distribution framework. Multimedia Systems 9(1), 104–118 (2003)CrossRefGoogle Scholar
  15. 15.
    Pendarakis, D., Shi, S., Verma, D., Waldvogel, M.: ALMI: An application level multicast infrastructure. In: Proc. of the 3rd USENIX Symposium on Internet Technologies and Systems, USENIX (2001)Google Scholar
  16. 16.
    Banerjee, S., Bhattacharjee, B., Kommareddy, C.: Scalable application layer multicast. In: SIGCOMM 2002. Proc. of the 2002 conference on Applications, technologies, architectures, and protocols for computer communications, pp. 205–217. ACM Press, New York (2002)CrossRefGoogle Scholar
  17. 17.
    Kandula, S., Lee, J.K., Hou, J.C.: Lark: a light-weight, resilient application-level multicast protocol. In: IEEE 18 Annual Workshop on computer Communications, IEEE Computer Society Press, Los Alamitos (2003)Google Scholar
  18. 18.
    Gkantsidis, C., Mihail, M., Saberi, A.: Random walks in peer-to-peer networks. In: INFOCOM (2004)Google Scholar
  19. 19.
    Dabek, F., Kaashoek, M.F., Karger, D.R., Morris, R., Stoica, I.: Wide-area cooperative storage with CFS. In: SOSP, pp. 202–215 (2001)Google Scholar
  20. 20.
    Kubiatowicz, J., Bindel, D., Chen, Y., Czerwinski, S.E., Eaton, P.R., Geels, D., Gummadi, R., Rhea, S.C., Weatherspoon, H., Weimer, W., Wells, C., Zhao, B.Y.: Oceanstore: An architecture for global-scale persistent storage. In: ASPLOS, pp. 190–201 (2000)Google Scholar
  21. 21.
    Eikemeier, C., Lechner, U.: Peer-to-peer and group collaboration - do they always match? In: Proc. of the 13th WETICE, pp. 101–106 (2004)Google Scholar
  22. 22.
    Vassileva, J.: Harnessing p2p power in the classroom. In: Proc. of Intelligent Tutoring Systems, pp. 305–314 (2004)Google Scholar
  23. 23.
    Nejdl, W., Wolf, B., Qu, C., Decker, S., Sintek, M., Naeve, A., Nilsson, M., Palmér, M., Risch, T.: Edutella: a p2p networking infrastructure based on rdf. In: Proc. of the 11th international conference on WWW, pp. 604–615. ACM Press, New York, NY, USA (2002)Google Scholar
  24. 24.
    Mitchell, T.: Machine Learning. McGraw-Hill, New York (1997)MATHGoogle Scholar
  25. 25.
    Feldman, M., Chuang, J.: Overcoming free-riding behavior in peer-to-peer systems. SIGecom Exch. 5(4), 41–50 (2005)CrossRefGoogle Scholar
  26. 26.
    Adar, E., Huberman, B.A.: Free riding on gnutella. First Monday (2000)Google Scholar
  27. 27.
    Jin, S., Bestavros, A.: Small-World Internet Topologies: Possible Causes and Implications on Scalability of End-System Multicast. Computer Networks 50(6), 648–666 (2006)MATHCrossRefGoogle Scholar
  28. 28.
    Castro, M., Druschel, P., Kermarrec, A.-M., Rowstron, A.I.T.: Scribe: A large-scale and decentralized application-level multicast infrastructure. IEEE J. Sel. Areas Commun. 20(8), 1489–1499 (2002)CrossRefGoogle Scholar
  29. 29.
    Zhao, B.Y., Huang, L., Stribling, J., Rhea, S.C., Joseph, A.D., Kubiatowicz, J.D.: Tapestry: A resilient global-scale overlay for service deployment. IEEE J. Sel. Areas Commun. 22(1), 41–53 (2004)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Pablo Gotthelf
    • 1
    • 2
  • Alejandro Zunino
    • 1
    • 2
  • Marcelo Campo
    • 1
    • 2
  1. 1.ISISTAN Research Institute. UNICEN University. Campus Universitario, Tandil (B7001BBO), Buenos AiresArgentina.
  2. 2.Consejo Nacional de Investigaciones Científicas y Técnicas Conicet 

Personalised recommendations