›› 2011, Vol. 26 ›› Issue (4): 600-615.doi: 10.1007/s11390-011-1160-5

Special Issue: Computer Architecture and Systems; Computer Networks and Distributed Computing

• Special Section on Perspectives on Future Computer Science • Previous Articles     Next Articles

A Programming Language Approach to Internet-Based Virtual Computing Environment

Ji Wang (王戟), Senior Member, CCF, Member, IEEE, Rui Shen (沈锐), Student Member,IEEE and Huai-Min Wang (王怀民), Senior Member, CCF, Member, IEEE   

  1. National Laboratory for Parallel and Distributed Processing, School of Computer, National University of Defense Technology Changsha 410073, China
  • Received:2011-02-20 Revised:2011-05-26 Online:2011-07-05 Published:2011-07-05
  • Supported by:

    Supported by the National Basic Research 973 Program of China under Grant Nos. 2005CB321800 and 2011CB302600, and the National Natural Science Foundation of China under Grant Nos. 90612009, 60725206 and 60625203.

There is an increasing need to build scalable distributed systems over the Internet infrastructure. However, the development of distributed scalable applications suffers from lack of a wide accepted virtual computing environment. Users have to take great efforts on the management and sharing of the involved resources over Internet, whose characteristics are intrinsic growth, autonomy and diversity. To deal with this challenge, Internet-based Virtual Computing Environment (iVCE) is proposed and developed to serve as a platform for distributed scalable applications over the open infrastructure, whose kernel mechanisms are on-demand aggregation and autonomic collaboration of resources. In this paper, we present a programming language for iVCE named Owlet. Owlet conforms with the conceptual model of iVCE, and exposes the iVCE to application developers. As an interaction language based on peer-to-peer content-based publish/subscribe scheme, Owlet abstracts the Internet as an environment for the roles to interact, and uses roles to build a relatively stable view of resources for the on-demand resource aggregation. It provides language constructs to use 1) distributed event driven rules to describe interaction protocols among different roles, 2) conversations to correlate events and rules into a common context, and 3) resource pooling to do fault tolerance and load balancing among networked nodes. We have implemented an Owlet compiler and its runtime environment according to the architecture of iVCE, and built several Owlet applications, including a peer-to-peer file sharing application. Experimental results show that, with iVCE, the separation of resource aggregation logic and business logic significantly eases the process of building scalable distributed applications.

[1] Gong L. JXTA: A network programming environment. IEEEInternet Computing, 2001, 5(3): 88-95.

[2] Lu X, Wang H, Wang J. Internet-based virtual computingenvironment (iVCE): Concepts and architecture. Science in ChinaSeries F, 2006, 49(6): 681-701.

[3] Alves A, Arkin A et al. Web services business processexecution language version 2.0. OASIS Standard, 2007.

[4] Florescu D, Grünhagen A, Kossmann D. XL: An XMLprogramming language for Web service specification and composition. Computer Networks, 2003, 42(5): 641-660.

[5] Jennings N R. An agent-based approach for building complexsoftware systems. Comm. ACM, 2001, 44(4): 35-41.

[6] Platon E, Mamei M, Sabouret N, Honiden S, ParunakH V D. Mechanisms for environments in multi-agent systems: Survey andopportunities. Autonomous Agents and Multi-Agent Systems, 2007,14(1): 31-47.

[7] Desai N, Mallya A U, Chopra A K, Singh M P. Interactionprotocols as design abstractions for business processes. IEEETrans. Software Engineering, 2005, 31(12): 1015-1027.

[8] Doi T, Tahara Y, Honiden S. IOM/T: An interactiondescription language for multi-agent systems. In Proc. the 4th Int.Joint Conf. Autonomous Agent and Multi-Agent Systems(AAMAS,2005), Utrecht, The Netherlands, Jul.25-29, 2005, pp.778-785.

[9] Androutsellis-Theotokis S, Spinellis D. A survey ofpeer-to-peer content distribution technologies. ACM ComputingSurveys, 2004, 36(4): 335-371.

[10] Eugster P, Felber P, Guerraoui R, Kermarrec A. The manyfaces of publish/subscribe. ACM Computing Surveys, 2003, 35(2): 114-131.

[11] Clark J, DeRose S. XML path language (XPath) version 1.0,W3C Recommendation, 1999.

[12] Shen R, Wang J, Zhang S, Shen S, Fan P. A framework forconstructing peer-to-peer overlay networks in Java. In Proc. 7thInt. Conf. Principles and Practice of Programming in Java(PPPJ,2009), Calgary, Canada, Aug.27-28, 2009, pp.40-48.

[13] Stoica I, Morris R, Karger D, Kaashoek M F,Balakrishnan H. Chord: A scalable peer-to-peer lookup service forInternet applications. In Proc. Conf. Applications,Technologies, Architectures, and Protocols for Computer Comm.(SIGCOMM,2001), San Diego, USA, Aug.27-31, 2001, pp.149-160.

[14] Li D, Lu X, Wu J. FISSIONE: A scalable constant degreeand low congestion DHT scheme based on Kautz graphs. In Proc. 24thAnnual Joint Conf. of the IEEE Computer and Comm. Societies(INFOCOMM,2005), Philadelphia, USA, Aug.22-26, 2005, pp.1677-1688.

[15] Zhu Y, Hu Y. Ferry: A P2P-based architecture forcontent-based publish/subscribe services. IEEE Trans.Parallel and Distributed Systems, 2007, 18(5): 672-685.

[16] Zhang S, Wang J, Shen R, Xu J. Towards building efficientcontent-based publish/subscribe systems over structured P2P overlays.In Proc. the 39th Int. Conf. Parallel Processing (ICPP,2010),San Diego, USA, Sept.13-16, 2010, pp.258-266.

[17] Welsh M, Culler D, Brewer E. SEDA: An architecture forwell-conditioned, scalable internet services. In Proc. ACMSymposium on Operating Systems Principles (SOSP,2001), Banff, Canada,Oct.21-24, 2001, pp.230-243.

[18] Killian C, Anderson J W, Braud R, Jhala R, Vahdat A.Mace: Language support for building distributed systems. In Proc.2007 ACM SIGPLAN Conf. Programming Language Design andImplementation (PLDI,2007), San Diego, USA, Jun.10-13, 2007, pp.179-188.

[19] Paurobally S, Jennings N R. Protocol engineering for webservices conversations. Engineering Applications of ArtificialIntelligence, 2005, 18(2): 237-254.

[20] Cooney D, Dumas M, Roe P. GPSL: A programming language forservice implementation. In Proc. the 9th Int. Conf. FundamentalApproaches to Software Engineering (FASE,2006), Vienna, Austria,Mar.27-28, 2006, pp.3-17.

[21] Huhns M N. Interaction-oriented programming. In Proc. 1stInt. Workshop on Agent Oriented Software Engineering (AOSE,2000),Limerick, Ireland, Jun.10, 2000, pp.29-44.

[22] Wang J, Shen R, Zhu H. Agent-oriented programming based onSLABS. In Proc. the 29th Annual Int. Computer Software andApplications Conf. (COMPSAC,2005), Edinburgh, UK, Jul.25-28, 2005,pp.127-132.

[23] Kaneko Y, Harumoto K et al. A location-based peer-to-peernetwork for context-aware services in a ubiquitous environment. In Proc. 2005 IEEE/IPSJ Int. Symp. Applications and the Internet(SAINT,2005) Workshops, Trento, Italy, Jan.31-Feb.4, 2005, pp.208-211.

[24] Busetta P, Dona A, Nori M. Channeled multicast for groupcommunications. In Proc. the 1st Int. Joint Conf. AutonomousAgents and Multi Agent Systems (AAMAS,2002), Bologna, Italy, Jul.15-19,2002, pp.1280-1287.

[25] Anderson D P. BOINC: A system for public-resource computingand storage. In Proc. the 5th Int. Workshop on Grid Computing(GRID,2004), Pittsburgh, USA, 2004, pp.4-10.

[26] Caromel D, di Costanzo A, Mathieu C. Peer-to-peer forcomputational grids: Mixing clusters and desktop machines. Parallel Computing, 2007, 33(4/5): 275-288.

[27] Zheng Z, Lyu M R. WS-DREAM: A distributed reliabilityassessment mechanism for Web services. In Proc. the 38th AnnualIEEE/IFIP Int. Conf. Dependable Systems and Networks (DSN,2008),Anchorage, USA, Jun.24-27, 2008, pp.392-397.
No related articles found!
Full text



[1] Zhou Chaochen; Liu Xinxin;. Denote CSP with Temporal Formulas[J]. , 1990, 5(1): 17 -23 .
[2] QI Yuesheng; WANG Baozhong; KANG Lishan;. Genetic Programming with Simple Loops[J]. , 1999, 14(4): 429 -433 .
[3] PENG wei; LU Xicheng;. An Approach to Support IP Multicasting in Networks with Mobile Hosts[J]. , 1999, 14(6): 529 -538 .
[4] Chiou-Yng Lee, Yung-Hui Chen, Che-Wun Chiou, and Jim-Min Lin. Unified Parallel Systolic Multiplier Over GF(2^m)[J]. , 2007, 22(1): 28 -38 .
[5] Yong-Xi Gong, Yu Liu, Lun Wu, and Yu-Bo Xie. Boolean Operations on Conic Polygons[J]. , 2009, 24(3): 568 -577 .
[6] Dong Wang, Member, IEEE, Javier Tejedor, Simon King, Senior Member, IEEE and Joe Frankel, Member, IEEE. Term-Dependent Confidence Normalisation for Out-of-Vocabulary Spoken Term Detection[J]. , 2012, (2): 358 -375 .
[7] Mathu Soothana S. Kumar Retna Swami and Muneeswaran Karuppiah. Optimal Feature Extraction Using Greedy Approach for Random Image Components and Subspace Approach in Face Recognition[J]. , 2013, 28(2): 322 -328 .
[8] Li-Feng He, Yu-Yan Chao, and Kenji Suzuki. An Algorithm for Connected-Component Labeling, Hole Labeling and Euler Number Computing[J]. , 2013, 28(3): 468 -478 .
[9] Liang-Jun Zang, Cong Cao, Ya-Nan Cao, Yu-Ming Wu, and Cun-Gen Cao. A Survey of Commonsense Knowledge Acquisition[J]. , 2013, 28(4): 689 -719 .
[10] Hui Li, Jiang-Tao Cui, Jian-Feng Ma. Social Influence Study in Online Networks: A Three-Level Review[J]. , 2015, 30(1): 184 -199 .

ISSN 1000-9000(Print)

CN 11-2296/TP

Editorial Board
Author Guidelines
Journal of Computer Science and Technology
Institute of Computing Technology, Chinese Academy of Sciences
P.O. Box 2704, Beijing 100190 P.R. China
E-mail: jcst@ict.ac.cn
  Copyright ©2015 JCST, All Rights Reserved