Presence-Aware Optimum Resource Allocation For Virtual Collaboration Web 3.0 Environments

Download Presence-Aware Optimum Resource Allocation For Virtual Collaboration Web 3.0 Environments

Post on 06-Apr-2018




0 download

Embed Size (px)


<ul><li><p>8/3/2019 Presence-Aware Optimum Resource Allocation For Virtual Collaboration Web 3.0 Environments</p><p> 1/5</p><p>Presence-aware Optimum Resource Allocation for</p><p>Virtual Collaboration Web 3.0 Environments</p><p>Michael G. Kallitsis , Robert D. Callaway , Michael Devetsikiotis and George Michailidis </p><p> Department of Electrical and Computer Engineering, NC State University, Raleigh, North Carolina 27695 IBM Datapower SOA Appliances, IBM, Research Triangle Park, North Carolina 27709</p><p> Department of Statistics, University of Michigan, Ann Arbor, Michigan 48109</p><p>,,,</p><p>AbstractIn this paper, we present a system that optimallyand dynamically allocates the available computing resources tovirtual machines that support virtual collaboration environments.Such environments are emerging fast via on-line social networks,virtual worlds, and the Web 3.0 or collaborative Webparadigm. We use a utility-based framework to differentiate theapplications hosted by the virtual machines based on both theirrelative profitability and their social distance information. Wedefine social distance as the importance of social interaction</p><p>between the participants of a virtual environment that utilize aparticular application and this interaction is a function of their</p><p>presence status. Presence is affected by the physical distance, theunderlying network and the social or business relationship ofthe participants. We use graph theory tools to represent usersconnectivity and extract the social distance information. Ouroptimization model involves a variation of the 2D Knapsackproblem and a nonlinear programming one.</p><p>I. INTRODUCTION</p><p>Combined advances in high speed networking, application</p><p>sharing, virtual world technologies and large scale event</p><p>processing are converging to create a new world of ubiquitous</p><p>presence of users, which offers tremendous potential for</p><p>social interaction. The communication networking and com-puting requirements of this converged human-centric environ-</p><p>ment are also increasing at an accelerated pace. In this new</p><p>environment, it is imperative that the much-needed networking</p><p>and computing resources align closely with the needs and</p><p>patterns dictated by the applications, social networks, and</p><p>indeed, by the upper-most human layer. It is believed that the</p><p>success of such socio-technical systems will hinge on the way</p><p>they capture and interact with human presence and location,</p><p>in all of its physical and virtual aspects.</p><p>We anticipate a cloud computing trend of hosting multi-</p><p>ple virtual machines responsible for several Online Social</p><p>Networks (OSN), as well as virtual worlds for education</p><p>or business collaboration purposes. We elaborate more usingthe example of a popular virtual world platform, the Qwaq</p><p>Forums. The suggested system architecture presents the Qwaq</p><p>server [3] hosted on a virtual machine which can be hosted on</p><p>a cloud (e.g., Amazon EC2 [1]). The cloud can support several</p><p>virtual machines that correspond to different virtual worlds</p><p>(i.e., Qwaq virtual rooms). Figure 1 shows a typical scenario: a</p><p>cloud is responsible for three different virtual rooms of NCSU</p><p>that serve different purposes and are visited by different groups</p><p>of people. Since resources are scarce, we need to answer</p><p>Fig. 1. Running multiple virtual worlds in the same cloud.</p><p>questions like which virtual machine to place for execution and</p><p>how to allocate the excess resources to those virtual machines.Other educational worlds that can share resources of a cloud</p><p>include the Second Classroom [4] world in Second Life, and</p><p>the Virtual Northstar project [2] based on Suns Wonderland.</p><p>In order to move towards presence-aware networks and</p><p>applications, we formulate and quantify key measures of socio-</p><p>technical presence and distance and their necessary interplay</p><p>with the control of the computing infrastructure. We introduce</p><p>the metric of social distance that represents the social inter-</p><p>action between the participants of a virtual environment that</p><p>utilize a particular application. We build a utility-based frame-</p><p>work that considers the social distance and the price of each</p><p>application, and optimally allocates the available computing</p><p>resources. Social distance is a function of the presence statusof each user; presence is influenced by the physical distance</p><p>(captured as round trip delay in our model), the underlying</p><p>network and the business distance of the participants. As an</p><p>example, consider the scenario in Figure 2. Assume that A is</p><p>the supervisor of B, they are communicating from somewhere</p><p>in the same city and they reside on a high-speed optical</p><p>network. On the other hand, C is just a regular colleague of D,</p><p>they have an interstate communication and D is connected via</p><p>a wireless network. Therefore, the business relationship of the</p><p>978-1-4244-5626-0/09/$26.00 2009 IEEE</p></li><li><p>8/3/2019 Presence-Aware Optimum Resource Allocation For Virtual Collaboration Web 3.0 Environments</p><p> 2/5</p><p>Fig. 2. Allocation of resources based on our social distance awareness model.</p><p>first couple is stronger, their round trip delay is smaller and</p><p>their network connection faster. Hence, their social interaction</p><p>is higher than the one of the other couple and this implies a</p><p>smaller social distance (see definition in Section II). Based on</p><p>our optimization framework, the application that users A and</p><p>B are working with would be assigned more resources than the</p><p>one of users C and D because their social distance is smaller.</p><p>The aforementioned framework is realized by our measure-</p><p>ment based optimal resource allocation (MBORA) system,</p><p>which is responsible for utilizing the information collected</p><p>from the social environment and allocating the available re-</p><p>sources. The employed system is comprised of three com-</p><p>ponents: (i) the measurement module, (ii) the optimization</p><p>module and (iii) the resource orchestrator module. The mod-ules interact amongst themselves in the following way: the</p><p>measurement module gathers information about the social</p><p>environment (see Section II). The optimization module re-</p><p>ceives this information and calculates the optimal allocation of</p><p>resources by solving various optimization problems discussed</p><p>in Section III. Finally, the calculated optimal solution is fed</p><p>to the resource orchestrator.</p><p>The concept of MBORA has been introduced in our ear-</p><p>lier work [7], where we studied the optimization issues of</p><p>network elements in service oriented networks (SON) and</p><p>suggested a distributed algorithm for optimal allocation of</p><p>network resources in directed acyclic network topologies.</p><p>In the current work, MBORA represents a hypervisor thatmanages the computing resources (CPU, memory) of virtual</p><p>machines. Related work on resource management and quality-</p><p>of-service (QoS) regarding virtual machines can be found</p><p>in [10]. Optimization problems similar to the ones we study in</p><p>this work appear in [8], [9]. In [8], the authors study algorithms</p><p>for dynamic placement of Web applications that maximize the</p><p>satisfied demand by solving a variant of the Class Constrained</p><p>Multiple-Knapsack Problem. In [9], another Knapsack-type</p><p>problem arises involving services composition under end-to-</p><p>end QoS constraints and distributed optimization algorithms</p><p>are proposed.</p><p>Resource allocation for virtual world environments is con-</p><p>sidered in [6], [12]. In [6], the authors propose the introduction</p><p>of users computers to support the computational demands</p><p>as the virtual worlds population rises. In [12], an economic</p><p>based resource allocation is approached, in which surplus</p><p>resources can be exchanged between collaborative peer-to-</p><p>peer environments. Optimization techniques for enhancing the</p><p>quality of experience in a virtual environment are addressed</p><p>in [5], [11].</p><p>The organization of the paper is as follows: in Section II,</p><p>we start by describing construction and use of the connectivity</p><p>graph that yields the required social distance information. In</p><p>Section III, we discuss our optimization problem formulation</p><p>and in Section IV we present a case-study and some numerical</p><p>results. Finally, we conclude and discuss some future work in</p><p>Section V.</p><p>I I . SOCIAL DISTANCE AND THE CONNECTIVITY GRAPH</p><p>We describe next a framework that extends the moretraditional network utility maximization to include presence</p><p>and distance-awareness in virtual collaboration environments</p><p>(VCEs) and similar social settings and goes beyond our</p><p>previous work on SONs. In this context, the presence aware</p><p>connectivity graph from which the users social distance</p><p>information will be obtained plays a crucial role.</p><p>Let G = (V, E) denote a weighted graph with node andedge set V and E, respectively, where the nodes correspondto the users (e.g., users i, j) and the edges to their connec-tivity in social space (see Figure 3(a)). The edge weights,</p><p>wij &gt; 0, are calculated so as to reflect the following factors:application used, bandwidth capabilities, physical and busi-</p><p>ness/interpersonal distance. We elaborate next on these factors:(i) Application factor: vertices of users accessing the same</p><p>application (or, more generally, the same virtual space) are</p><p>connected; i.e. eij E. (ii) Bandwidth availability of eachuser: the faster the network connection of a participating user,</p><p>the larger the allocation they should get. Assuming that user-ihas a connection of Ci Mbps and user-j one of Cj Mbps,then the corresponding edge weight should be proportional</p><p>to the minimum of those values, i.e.: wij min1(Ci, Cj).</p><p>The intuition is that it is pointless to allocate large amounts of</p><p>resources to connections with poor bandwidth capabilities. (iii)</p><p>Round trip delay (imitates real world distance), i.e.: wij dij.The reasoning is that we do not want to allocate more than the</p><p>absolutely necessary resources to a session of users that are farapart, since such connections usually experience larger end-</p><p>to-end delays (e.g., propagation, queueing delays) and thus</p><p>MBORA should prefer to allocate more resources to users that</p><p>are closer to each other. (iv) Business/interpersonal distance:</p><p>we want the social distance to be smaller when we deal with an</p><p>employee-manager communication, rather than an employee-</p><p>employee communication, i.e., wij r1ij where rij takes</p><p>discrete values that represent the relationship between user-</p><p>i and user-j. For example, rij {, , } with &lt; &lt; </p></li><li><p>8/3/2019 Presence-Aware Optimum Resource Allocation For Virtual Collaboration Web 3.0 Environments</p><p> 3/5</p><p>i</p><p>j</p><p>wij</p><p>(a) The connectivity graph used torepresent each virtual world. Notethat the graph should be complete;for visual brevity, here it is not.</p><p>(b) Passing the presence informa-tion of the graph. The databasepushes information to MBORAonly when social distance changes.</p><p>Fig. 3. Connectivity graph and data mining.</p><p>should depict someones relationship with an unknown person,</p><p>a friend and her/his manager correspondingly. Given the above</p><p>factors, the proposed edge weights are given by</p><p>wij = dij + L/ min(Ci, Cj)</p><p>rij(1)</p><p>where is a normalization constant and L is the size of adummy package. Other parameters (like the in-world popu-</p><p>lation or in-world distance) and other formulas for the edge</p><p>weights could also be considered and this constitutes ongoing</p><p>research.</p><p>The social distance between two nodes in the social net-</p><p>working environment S is dS(i, j) = wij . This holds only inthe case of two users collaborating in the same application. In a</p><p>multi-user, multi-application scenario we can use the diameter</p><p>of the graph, defined as the average shortest distance between</p><p>two vertices. Alternative metrics (e.g., clustering coefficient or</p><p>network flow) could also be used, if appropriate.</p><p>Given a database that contains the user connectivity patterns,the MBORA system needs to acquire that information through</p><p>a publisher-subscriber model (Figure 3(b)). We propose to use</p><p>a push model, so that MBORA will not have to update the</p><p>database. Since the distances amongst users would change</p><p>fairly frequently, the database needs to monitor them and</p><p>push updated information to MBORA only when significant</p><p>changes occur, so as to avoid excessive updates. We propose</p><p>to use exponential weighted moving average (EWMA) control</p><p>charts for this monitoring purpose. Such charts have proved</p><p>useful in previous work [7] for monitoring significant changes</p><p>in traffic parameters.</p><p>Suppose that time is divided into sequential intervals</p><p>(tn, tn+1), n = 0, 1, 2, . . . of duration . The samplingmodule has to sample distance information every inter-</p><p>val in order to obtain the sequence of distance variations</p><p>{i(1), i(2), . . .}. The EWMA statistic is i(n + 1) =i(n) + ( 1 )i(n), where i(n + 1) is the one-step-aheadpredictor of i(n + 1) and 0 &lt; 1 represents the weightthat the most recent estimation is assigned. The lower/upper</p><p>control limits are given as LCL/UCL = ici</p><p>2 where</p><p>parameter c &gt; 0 is a tuning variable that combined also withparameter can set the sensitivity level that the provider needs</p><p>to accomplish. An out-of-control signal is generated at time</p><p>slot n when i(n) &gt; UCL or i(n) &lt; LCL. At that moment,an update of distance information will be pushed to MBORA.</p><p>III. OPTIMUM ALLOCATION OF MULTIPLE RESOURCES</p><p>In principle, multiple computing and communication re-</p><p>sources might have to be allocated, including CPU cyclesand memory to the virtual machines (VM) running the re-</p><p>quired applications (or, more generally, the virtual machine</p><p>that hosts the virtual environment that users belong to). Our</p><p>proposed optimization framework consists of the following</p><p>two components: (i) A variation of the 2D Knapsack opti-</p><p>mization problem that decides which VMs would be placed</p><p>for execution according to the available resources and their</p><p>pricing parameters, (ii) a nonlinear programming problem that</p><p>allocates the excess resources to the VMs placed for execution.</p><p>We discuss next the first problem. We are given a set of</p><p>virtual machines, K, with each machine possessing amountof memory and amount of CPU power available. With</p><p>each virtual machine, we associate its demand values, 0kand 0k, which correspond to the machines memory and CPUrequirements, respectively. With each virtual machine we also</p><p>relate its social pricing parameter, pk, which is a function ofthe applications price, k (either a real price or just a priorityindication), and the social distance, dkS . In summary, we have</p><p>pk = pk(k, dkS) = k/dkS .</p><p>The placement problem is to find a vector I, where Ik is 1if the virtual machine is running on that host and 0 otherwise,</p><p>such that (a) allocation requirements are met, (b) capacity</p><p>limits are observed and (c) the social profit is maximized. The</p><p>problem can be formally stated as follows:</p><p>maxk</p><p>Ikpk subject to (2)</p><p>k</p><p>Ik0k and</p><p>k</p><p>Ik0k , Ik binary, k</p><p>This is an integer programming problem and the solution</p><p>can be found using branch and bound type algorithms. Once</p><p>we have placed the subset of virtual machines on the host</p><p>system, we can solve a nonlinear optimization problem, so</p><p>as to optimally allocate the excess resources of memory and</p><p>CPU power to the running vir...</p></li></ul>


View more >