=Paper= {{Paper |id=Vol-3052/paper20 |storemode=property |title=A Privacy-aware Computation Offloading Method for Virtual Reality Application |pdfUrl=https://ceur-ws.org/Vol-3052/paper20.pdf |volume=Vol-3052 |authors=Kai Peng,,Peichen Liu,,Tao Huang |dblpUrl=https://dblp.org/rec/conf/cikm/PengLH21 }} ==A Privacy-aware Computation Offloading Method for Virtual Reality Application== https://ceur-ws.org/Vol-3052/paper20.pdf
A Privacy-aware Computation Offloading Method for
Virtual Reality Application
Kai Peng1 , Peichen Liu2 and Tao Huang3
1
  College of Engineering, Huaqiao University, Quanzhou, China
1
  College of Engineering, Huaqiao University, Quanzhou, China
2
  School of Computer Science and Technology, Silicon Lake College, Suzhou, China


                                     Abstract
                                     As a new technology, virtual reality (VR) is constantly enriching people’s experience. VR application has high requirements
                                     for the performance VR devices, but the computing resources of VR devices are limited. Mobile edge computing provides an
                                     effective solution to solve the above issue by offloading VR application to edge servers (ESs) for processing. Nevertheless, the
                                     resources of ESs are limited and heterogeneous. And thus, it is necessary to consider the load balancing of ESs. In addition,
                                     user privacy protection in the process of computation offloading is another issue that needs to take into consideration. In
                                     view of this, in this paper, we investigate the computation offloading for VR applications with privacy protection. Technically,
                                     we propose a privacy-aware computation offloading method based on multi-objective optimization genetic algorithm to
                                     obtain the optimal strategy for VR application. Finally, it is shown that the proposed method is effective through extensive
                                     experiments.

                                     Keywords
                                     LATEX Mobile Edge Computing, Virtual Reality, Privacy Protection, Computation Offloading



1. Introduction                                                                                               promising distributed computing paradigm ([7],[8]).
                                                                                                              Computation offloading of MEC has been well studied in
     With the development of communication and net-                                                           ([9]-[10]). Inspired by this, offloading the VR application
working, the number of mobile users is increasing in a                                                        to edge servers (ESs), the time and energy consumption
staggering speed. According to Oracle, there are more                                                         of VD can be significantly reduced. However, computing
than 10 billion mobile devices connected to the Internet,                                                     resources of the ES are limited, it will increase the waiting
and that number will grow to 22 billion by 2025 [1]. The                                                      time and energy consumption of VDs when the number
explosive growth of mobile devices leads to a large re-                                                       of tasks performed exceeds computing capacity of the ES
quest and the promising application prospect [2]. New                                                         [11]. Meanwhile, the resources of ESs are heterogeneous,
technologies are beginning to be applied to mobile de-                                                        the tasks should be reasonably distributed on ES cluster
vices, such as virtual reality (VR), artificial intelligence                                                  to avoid some of the ESs are overload [12]. Meanwhile,
(AI) and the Internet of Vehicles (IoV) [3]. Among these,                                                     when the VU interacts with the VD, the application will
as a prospective technology, VR is constantly enriching                                                       collect the VU’s private information, such as location,
people’s experience ([4],[5]). In practice, the VR applica-                                                   posture [13]. If placing data with privacy conflicts on the
tions are usually run over a wearable VR devices (VDs),                                                       same ES, it is easy to cause the leakage of VU privacy in-
which can record information about the movement and                                                           formation [14]. Therefore, it is necessary to consider the
activity of VR users (VUs). Equipment manufacturers                                                           load balancing and the privacy constraints of placement
of VD usually need to consider physical size constraint,                                                      of computation offloading for VR application.
which equips with a small CPU and GPU with low-power                                                                To address above issues, the computation offloading
consumption and low-capacity battery [6]. However, due                                                        considering privacy protection for VR applications are
to VR application requires real-time processing, it will                                                      investigated in this work. The contributions of this paper
consume a lot of computing resources. This poses a big                                                        can be summarized as follows.
challenge to VDs.                                                                                                   1) We model the computation offloading problem as
     Fortunately, mobile edge computing (MEC) is a                                                            a multi-objective optimization issue, where the motion-
                                                                                                              to-photons latency and energy consumption of VD, as
Woodstock’21: Symposium on the irreproducible science, June 07–11,
2021, Woodstock, NY
                                                                                                              well as load balancing of ES are considered as the opti-
 pkbupt@gmail.com (K. Peng); 18734166683@163.com (P. Liu);                                                   mization objectives, and privacy protection is considered
nuisthuangtao@163.com (T. Huang)                                                                              as a constraint.
 https://yamadharma.github.io/ (K. Peng)                                                                           2) A computation offloading method for VR appli-
 0000-0002-0877-7063 (K. Peng); 0000-0001-7116-9338 (P. Liu);                                                cations based on multi-objective optimization genetic
0000-0002-9421-8566 (T. Huang)
                               © 2021 Copyright for this paper by its authors. Use permitted under Creative   algorithm, named MCOVR, is proposed to address the
                               Commons License Attribution 4.0 International (CC BY 4.0).
    CEUR
    Wor
    Pr
       ks
        hop
     oceedi
          ngs
                ht
                I
                 tp:
                   //
                    ceur
                       -
                SSN1613-
                        ws
                         .or
                       0073
                           g

                               CEUR Workshop Proceedings (CEUR-WS.org)                                        above issue.
Figure 1: MEC-Enabled VR application architecture.



      3) We conduct a large number of comparative ex-             the offloading strategies of v-th application from y-th
periments to prove that MCOVR can obtain the optimal              VU. jy,v = 0 represents that the application is run
computation offloading strategy for VR application.               by VD, jy,v ∈ (1, 2, ..., x) indicates the application is
      The remaining of the paper is describe as follows.          offloaded to ES, jy,v = x + 1 represents the application
Firstly, section 2 describes the system model and defines         is offloaded to cloud for processing.
the problem formulation. Secondly, section 3 introduces
our proposed multi-objective computation offloading of
VR application method. Then, section 4 demonstrates               2.1. Virtual Reality Application Model
the experiment results. Finally, section 5 introduces the
related work and section 6 describes the conclusion and                In general, Augmented reality (AR) application can
the future work.                                                  be represented as a directed acyclic graph(DAG) [15].
                                                                  Similarly, VR can also be represented by a DAG. As
                                                                  shown in Figure 2, the VR model can be represented as
2. System Model and Problem                                       follows. The VR application contains three independent
   Formulation                                                    operations, namely, rendering, calibration and process-
                                                                  ing. Thus, we use a layer containing three operations to
     In this section, the architecture of MEC-enabled VR          represent each video frame, namely node. In addition,
application is firstly introduced. Then, the model of VR          there are k video frames in a VR application, the nodek
application is established. Finally, the system model and         represents the k−th node in application.
problem formulation are described.
      The MEC-enabled VR application architecture is              2.2. Motion-to-Photons Latency Model
shown in Figure 1. We assume that the cloud has infinite
computing resources, and resources of ESs are finite              2.2.1. Executing latency
and heterogeneous. These VR applications are executed                  Execution latency is the time cost of processing VR
by VDs or offloaded to the ES or to the cloud. VUs                applications on the three platforms, namely, VD, ESs, and
communicate with ESs via local area network (LAN) and             cloud center. In this part, the executing time of v-th VR
with the cloud via wide area network (WAN).                       application of y-th user is represented as
     Y is a set of VU, which is defined as
Y = {1, 2, ..., y}. There are vn applications in                                  ⎧ ry,v
                                                                                  ⎪
                                                                                  ⎨ fl      jy,v = 0
V , which is defined as V = {v 1 , v 2 , ..., v vn }. The task
                                                                     S e (jy,v ) = rfy,v    jy,v = 1 or 2, or . . . or x (1)
length requested by the v-th application of y-th user is                          ⎪
                                                                                  ⎩ ry,v
                                                                                       e

denoted as ly,v , and the task workload is denoted as ry,v .                          fc
                                                                                            jy,v = x + 1.
Let X be the set of ES, denoted as X = {1, 2, ..., x}.
In each ES, the computing resources of ES are rep-                2.2.2. Transmission latency
resented as a number of i virtual machine(VM) xn,
represented as xn = {xn1 , xn2 , ..., xni }. J is a set of             The transmission latency is related to the compu-
computation offloading strategies, which is defined as            tation offloading strategy of the two tasks. Let P c (c ∈
J = {j1,1 , ..., j1,v , j2,1 , ..., jy,v }. And jy,v represents
Figure 2: VR Application Model.



{1, 2, 3}) be the flag between two strategies, which are      2.2.4. Total latency
defined as
                                                                    The total time S(jy,v ) is represented as the sum of
          ⎧
          ⎪ T wo applications are executed                    all time, including the executing latency S e (jy,v ), the
          ⎪
          ⎪
          ⎪
          ⎪                                                   transmission latency S t (jy,v ) , and the waiting latency
          ⎪
          ⎪ by same platf orm                     c = 1,
          ⎪
          ⎨V D and ES                                         S w (jy,v ). The total latency is represented as
   Pc =                                                             S(jy,v ) = S e (jy,v ) + S t (jy,v ) + S w (jy,v ).   (6)
          ⎪
          ⎪ of f loading                          c = 2,
          ⎪
          ⎪
          ⎪
          ⎪Cloud and
          ⎪
          ⎪
          ⎩                                                   2.3. Energy Consumption Model
            other platf orms of f loading         c = 3.
                                                        (2)   2.3.1. Executing energy consumption
According to transmission strategy P c , the transmission
time S t (jy,v ) of the v-th application of the y-th VU is         The executing energy of MDs is related to the exe-
shown as                                                      cuting time, the executing time of v-th VR application of
                                    ly,v                      y-th user is represented as
                      S t (jy,v ) =      ,              (3)                ⎧ ry,v
                                     B
                                                                           ⎨ fl · ℘
                                                                           ⎪           active
                                                                                              jy,v = 0
where B represents the transmission bandwidth. The              e             ry,v
                                                              S (jy,v ) =          · ℘ idle
                                                                                              jy,v = 1 or 2, or . . . or x
transmission bandwidth is divided into three cases which                   ⎪   fe
                                                                           ⎩ ry,v
is denoted as                                                                  fc
                                                                                   ·℘  idle
                                                                                              jy,v = x + 1.
                          ⎧                                                                                             (7)
                          ⎪
                          ⎨∞ P = 1,
                                     c
                                                              where ℘active represents active state of VD energy con-
                    B = B P c = 2,
                               e
                                                        (4)   sumption and ℘idle represents idle state of VD energy
                          ⎪
                          ⎩ c                                 consumption.
                             B P c = 3.

2.2.3. Waiting latency                                        2.3.2. Transmission energy consumption

     When the number of applications offloaded to the ES          N t () represents transmission energy consumption,
exceeds the number of VM xn, the newly coming tasks           which can be obtained by multiplying the transmission
need to wait for the previous task to complete execution.     power by the transmission time. N t () can be calculated
The i-th VM in x-th ES is represented as a double-tuple       by
xnxi = (vmwk, tnum), where vmwk represents the i-                          N t (jy,v ) = S t (jy,v ) · ℘trans ,     (8)
th VM collection and the tnum represents the number of        where ℘trans represents the energy consumption of
applications in VM. When the offloading strategy jy,v =       transmission.
x, ry,v is offloaded to VM of x-th ES. Then, the vmwk
is updated by vmwk = vmwk + ly,v and the tnum =
tnum + 1. Finally, the S w (jy,v ) of v-th application from   2.3.3. Waiting energy consumption
y-th VU is calculated as
                                                                   Waiting energy consumption is the energy consump-
          S w (jy,v ) = S e (pre(jy,v )) · ψy,v,q ,     (5)   tion of VD when the task waits for the execution of the
                                                              previous task. Waiting energy consumption is related to
where ψy,v,q is to determine whether ry,v needs to            waiting time which can be obtained as
wait for the previous task, and the execution latency of
                                                                           N W (jy,v ) = S W (jy,v ) · ℘idle .            (9)
previous task is represented as S e (pre(jy,v )).
2.3.4. Total energy consumption                                 2.5. Privacy Model
     The total energy consumption N (jy,v ) is repre-                 As VR applications need to collect user information,
sented as the sum of all energy consumptions which              VR privacy conflicts need to be considered. In this pa-
includes the executing energy consumption N e (jy,v ),          per, we address privacy conflicts by placing applications
the transmission energy consumption N t (jy,v ), and the        on different ESs to avoid privacy leakage [14]. A graph
waiting energy consumption N w (jy,v ). The total energy         = (RW, CT ) is used to describe the privacy conflicts,
consumption can be calculated by                                where RW represents the a set of computing services and
                                                                CT denotes a set of privacy conflicting relation. A pair
  N (jy,v ) = N e (jy,v ) + N t (jy,v ) + N w (jy,v ).   (10)   of conflict relations (rwy , rwy∗ )(rwy , rwy∗ ∈ RW ) are
                                                                used to indicate that VU information with privacy con-
2.4. Load Balancing Model                                       flicts cannot be placed in the same ES. The conflict appli-
                                                                cation of rwv are represented as
      The ESs are heterogeneous means that the com-
puting resources of ESs are not equal. Therefore, the              rwv |(rwy , rwy∗ ) ∈ CT, y∗ = {1, 2, ..., Y }.            (17)
workload of ESs needs to be balanced. And, ζv is a
binary number to calculate the occupation of ES, which          HS = hs1 , hs2 , ..., hsy (hs ∈ Y ) represents the place-
is calculated by                                                ment location ES for executing the applications. After-
                                                               wards, based on the acquired conflicting service set, the
                   1, if ex is occupied                         placed destination hsy has a conflicting ES set, which is
            ζv =                                  (11)
                   0, Otherwise.                                calculated by
    And, ηv is a flag to represent whether the ES is
                                                                    hy |(esx esx ) ∈ rwq , x = {1, 2, ..., |rwv |}.         (18)
occupied, which is represented as
                
                    1, if v existed in ex                       2.6. Problem Formulation
           ηv =                                 (12)
                    0, Otherwise.
                                                                     The main objectives of this study are to decrease the
     Firstly, the number of ES that are utilized is defined     motion-to-photons latency and energy consumption of
as U E(j), which is represented as                              VDs, as well as the load balancing of ESs while preserving
                                                                the VU’s privacy. The problem formulations are defined
                                
                                V
                                                                as follows.
                    U E(j) =          ζv .               (13)
                                v=1                                        
                                                                           Y 
                                                                             V

     τ represent the amount of occupied ESs which is                M in             S(jy,v ); ∀j ∈ {1, 2, 3, . . . , x}.    (19)
                                                                           y=1 v=1
calculated by
         1 V Y                                                          
                                                                           Y 
                                                                             V
   τ =     oi   v=1    y=1 gy,v · ηv ,  ζv = 1
                                                                   M in              N (jy,v ); ∀j ∈ {1, 2, 3, . . . , x}.   (20)
           0,                           Otherwise.                         y=1 v=1
                                                    (14)
     According to the resource utilization of each ES,                     
                                                                           Y 
                                                                             V

the average resource utilization α(j) can be obtained by           M in              F (jy,v ); ∀j ∈ {1, 2, 3, . . . , x}.   (21)
                                                                           y=1 v=1

                             1 
                                V
                                                                              s.t.jy,v ∈ {0, 1, 2, ..., x + 1}.              (22)
                    α(j) =    ·    τ.                    (15)
                             μ v=1                                                         hsy ∈
                                                                                               / hy .                        (23)
     Finally, the load balancing of each ES is calculated                       
                                                                                Y 
                                                                                  V
by the squared difference between the resource utiliza-                                     S(jy,v ) ≤ S QoS .               (24)
tion of each ES and the average resource utilization. The                       y=1 v=1
loading balancing F (J) is calculated by
                                                                3. Method Design
                   1 
                      V
         F (j) =    ·    [α(jy,v ) − τ (jy,v )]2 ).      (16)
                   μ v=1                                             In this section, we describe the details of our pro-
                                                                posed multi-objective computation offloading of VR ap-
                                                                plication (MCOVR). MCOVR is based on MOMBI [16].
3.1. Initialization                                              3.4. Tournament Selection
      The initialization of the algorithm includes the defi-          The two populations Zd and Zd∗ generated by the
nition of key parameters and the generation of the initial       algorithm need to select the number of tz as the next-
population. Firstly, the first-generation population Z0 of       generation population Zd+1 , where d