Journal of Network and Computer Applications (1999) 22, 91–118 Article No. jnca.1999.0085, available online at http://www.idealibrary.com on
Information access and QoS issues in a mobile computing environment M. KumarŁ , S. VenkateshŁ , K.-Y. LimŁ and H. Santoso† Ł Department of Computer Science Curtin University of Technology GPO Box U 1987, Perth WA 6001, Australia; E-mail: kumar svetha
[email protected] † Universitas Bina Nu Santara, Jakarta 11 480, Indonesia; E-mail:
[email protected]
Efficient access to coherent information files is an important issue in mobile computing. In this paper we consider performance analysis of information access in a mobile computing environment. We employ a distributed directory scheme that permits uninterrupted use under disconnected and low bandwidth connections and minimizes invalidation and false sharing. This scheme allows for two invalidation schemes that avoid false sharing, and a mechanism for efficient maintenance of file details. We analyse the performance of the directory scheme in terms of time taken and energy consumed in executing operations such as read/write, connection, disconnection, and hoarding in mobile environments. The directory scheme is employed for facilitating efficient transfer of partially updated files in hierarchical networks. We also investigate quality of service issues related to file accesses in the mobile computing environment discussed in the paper. However, the scheme can be extended to any mobile computing environment. 1999 Academic Press
1. Introduction In the recent past, technological trends in computers, electronics, and VLSI design have led to the decreasing size and increasing power of portable computers [2]. On the other hand, recent trends in telecommunications have led to the wide spread use of personal communication systems. More recently, the advent of mobile computers—a marriage of the above two trends has emerged as the focus of interest in research, industry, business and commerce. Mobile computers (MCs) will be used to access commercial data bases such as traffic data, international and domestic news, medical records, banking information, voice mail, and video data bases such as entertainment and educational media. Mobile computing applications demand two types of information availability, i) continuity of coherent access to location-independent files (e.g. bank accounts, e-mail etc.) and ii) access to updated location-dependent information (e.g. traffic data, weather prediction, etc.). Access to information databases in a mobile environment is different from that in stationary computers. A mobile computer’s address changes dynamically as its current location affects configuration parameters as well as answers to user queries [3]. In distributed computing environments, NFS and AFS ensure access to distributed file systems under normal operating conditions [6]. However, such 1084–8045/99/040091 C 28 $30.00/0
1999 Academic Press
92 M. Kumar et al.
file systems do not support disconnected operation. The file system in a mobile computing environment should adapt to changing spatial distribution of MCs by dynamic replication of data and services. Transparent access to information files is a very important issue in the development and usage of mobile computers. The coda and odyssey file systems [9] support disconnected operations. Mobile computers pose new challenges since they depend on wireless communication as well as wired communication. Wireless communication faces more obstacles than wired communication because the surrounding environment interferes with the signal and introduces noise [4]. Wireless communication is characterized by relatively low bandwidth, high error rate, large latency, and frequent disconnections [1]. Current wireless networks can cover areas ranging from a few metres to hundreds of kilometres with varying bandwidth and support [2]. Owing to their small size and the need to access a wide range of information, mobile computers are inevitably dependent on remote resources [5]. MCs communicate with a base station (BS) or server via a wireless network in order to access files/data. In addition, the BS may be required to access locally unavailable files/data from other remote BSs. The mobility problems can be illustrated with the help of Fig. 1. When a MC moves from area (or cell) C1 to area C2, the communication link is disconnected from the BS in C1 (typically, wired LAN) and reconnected to a BS in C2. As a result the MC has a new host and the new host is required to provide the necessary files/data to the MC. All transfers among BSs are carried out via the wired communication network whereas all communications between MCs and BSs are carried out via the wireless channels. As such, mobility, disconnection and other associated issues come into consideration for communication between MCs and BSs. Wireless communication faces more obstacles than wired communication. Mobility makes certain data dynamic and it may be desirable to have the distributed directories move from one BS to another as MCs shift their geographic locations. In addition, experimental studies show that wireless transmission consumes more power than reception [3]. Hence, it is desirable to have the BSs
BS
BS
BS
BS
LAN1
C1
Figure 1.
BS
BS
LAN2
MC
Mobile environment.
C2
MC
Mobile computing environment issues 93
transmit directory updates periodically so that MCs can conserve their power. Information files are likely to be replicated in two or more BSs other than the home repository. Thus the transmission is carried out at the BS where power conservation is not an issue. In this paper, we discuss design aspects to a dynamic distributed directory scheme (DDS) that facilitates efficient and transparent access to information files in mobile environments. The DDS comprises a hierarchical directory that enables efficient search of requested files. The DDS keeps track of update versions of files; in Section 5 we demonstrate how this information can be used to address quality of service issues in mobile computing environments. Some aspects of the DDS are similar to those in coda and odyssey file systems [8]. The emphasis of this paper is on the performance analysis and information access aspects of the DDS in mobile computing environments. We analyse the performance of this scheme in terms of costs for connection, reconnection, disconnection, hoarding, and read/write operations performed by a mobile computer. We present results of simulations to evaluate the performance of the mobile computing environment when the files are distributed across the network. The paper is organized as follows. A brief overview of the distributed directory scheme is presented in Section 2. Performance analysis of information access operations is carried out in Section 3. In Section 4 we discuss results of analytical and simulation studies. Quality of service issues are investigated in Section 5.
2. Distributed directory architecture The design of the directory is described in detail in [7]. Here, a given geographical area is divided into k regions or cells 1, 2, 3, . . . , k as shown in Fig. 2. Each cell has one or more BSs fitted with wireless communication hardware. Now, a MC
Dp
D1 D3
C1 C2 C3 C4 D4
DBS
D2
BS
BS BS LAN4
Figure 2.
Directory architecture.
BS
D4
DMC
94 M. Kumar et al.
in cell i.1ik/ can connect to one of the BSs in cell i; likewise, if the MC moves to cell j.j6D i, 1jk/, it will reconnect to a BS in cell j. We present a brief overview of the distributed directory structure in this section. At the lowest level of the hierarchy, there is a subdirectory at each MC and it is represented by DMC . The DMC s are the leaves of the overall distributed directory. Each DMC contains information regarding all files currently available on that MC. At the next level of hierarchy is a directory at the BS, DBS , DBS consists of entries (or records) for all files residing in the BS’s memory and those available at all MCs connected to that BS. The BSs are interconnected by means of a wired local area network (LAN) or wide area network (WAN). Further, the directories of BSs of the same cell such as C1 are accumulated into one cell (or area) directory such as D1 . Directories D1 , D2 , D3 , . . . , Dk are connected to another BS such as P, which is at a higher level of hierarchy. The directory at P, referred to as Dp contains details regarding all files available in its memory, at its child nodes .D1 , D2 , D3 , . . . , Dk / and those available at all the MCs in the cells 1, 2, . . . , k. The hierarchical nature of the directory ensures very low access and transfer times. Basically, the topology of directories at BSs is that of a ki -ary tree, where i is the level of the tree. For simplicity we consider ki D4 for all levels in our examples. Files are classified into two types: read only files (ROF) and read/write files (RWF). Every file has a home BS, represented by BSh , writes and invalidations of a RWF file are carried out through its BSh . A file is referred by its address: file address comprises the file name prefixed by the address of the file’s BSh . Each directory at a BS is divided into two sub directories, one for incoming and the other for outgoing files as shown in Fig. 3. Information about an incoming file includes, file address, file status, and address of the MC holding a copy of the file. Information about outgoing files includes, file name, file status, and the address of the remote station that has requested a copy of the file with RWF status. Thus, in the section of the directory related to outgoing files, the BSh of a file contains Incoming Read Only Files File Address Incoming Read/Write Files File Address Outgoing Read/Write Files File Address
Figure 3.
Address of MC
Status
Update file address
Mobile computer address
Address of logfile
Status Address of logfile Valid Invalid Stale
Format of the directory at a BS.
Update version
Update version Address of update file
Update version Address of BS
Mobile computing environment issues 95
the addresses of remote BSs that have accessed this file with RWF status. In addition, at the remote BS, the file address in the incoming part of the directory gives the address of the file’s BSh . A data file could be in one of three states: valid, stale or invalid. A valid state implies that it is the most recent version of the file. If there are two or more versions of a file, then the most recent version of the file is in the valid state whereas all other versions are in stale state. A file with invalid status is not to be used. All ROF files are valid files. If the status of a RWF is valid, the entry for that file in it’s BSh links to a log-entry for that file and the log-entry in turn points to the address of the file or the update file. On the other hand if the status of a RWF is stale, the entry for that file in the BS indicates the address of the log-entry for the stale file. The log-entry contains information about the file version, and address of the BSx holding the valid copy of the file. We represent a file X of version m by X.m. A file X may exist in different versions: for example stale copies X.4 and X.5 in MCi and BSx respectively and a valid copy X.7 in a remote BS, BSy. The difference between two files X.m and X.p, where p>m is represented by diff(X.p, X.m). The valid copy or most recent version of the file is represented by X.r. Let us assume that MCi already has X.m (m>v) and desires to read (or read/write) X.7.DX.v/. Then MCi initiates a request probe. The request probe looks for a more up-to-date version of X. When it encounters X.p in BSx where m
96 M. Kumar et al. Directory at a higher level Probe X
Address of nearest BS holding a copy of X Remote BS
Wired LAN
Requesting BS
Wireless Probe X C1 MC
Figure 4.
Read operation of a remote information file.
ž a portion of directory (related to the disconnected MC) is transmitted from BS1 to BS2,
ž all files of the disconnected MC are transmitted from BS1 to BS2, ž directory changes at BS1 and BS2 are reflected at their ancestral nodes. Prior to disconnection, a MC should cache the required files from the BS and write back modified files at a new BS upon reconnection if the file access status is read/write. In the following sections, we discuss read and read/write operations in detail. 2.1 The read operation A request originating from a MC or a BS could be a read request or a read/write request. In the remainder of this section we describe the operations involved with respect to a typical read operation. In order to reduce power consumption at the MCs, we use a combination of polling and interrupt requests to establish connection with a BS. Each BS broadcasts a connectbroadcast message to all the MCs in its region. The MCs listen to the broadcast and will either connect to the BS or store address of the BS in a last-in-first-out stack. At any given time, the top of the stack gives the address of the most recently available BS. Once connection is established, the MC transmits a read request to its parent BS. The BS performs the search and supplies the requested file to the MC. As the MC performs only one transmission of request probe the power consumption at the MC is minimal. As shown in Fig. 6, a MC in one cell requests for a file X. First, MC will tune into the channel to see if X is available at BS1. If X is unavailable at BS1, a probe is sent to its parent node D. The probe will propagate through the hierarchy until it encounters an entry for X. Upon receipt of the address of the remote BS containing X, the BS in area A will initiate transfer of X from the remote station to BS1 via the shortest available path on the wired LAN. The file X is transmitted
Mobile computing environment issues 97
over the wireless LAN from BS1 to MC. The algorithm to perform read operation is shown below.
Procedure read (X); /Ł At the mobile computersŁ / f if MC is not connected to a BS then if the request is of high priority interrupt the most recently available BS else wait for a connectbroadcast from a BS send request(X) to BS g
Algorithm 1a /Ł At the BS on receipt of XŁ / f if most recent version of X is not available in its memory probe(X) Transmit (X) to the requesting MC g probe (X) f propagate request(X) to the remote BS via the least common ancestor /Ł remote BS has the most recent version of XŁ / receive(X) from neighbouring BS or parent node g
Algorithm 1b 2.2 The read/write operation Unlike read access, at any given time only one system can obtain read/write access of a file. A RWF file can be obtained with immediate invalidate (II ) status or delayed invalidate (DI ) status. If the request is of type II, then all copies of requested file should be invalidated immediately, while if the request is of DI type, then copies of the requested file are invalidated after the MC issues an invalidate command. When a read/write request for file X is made from a MC to a BS, BS will issue a probe(X). Probe(X) returns the address of the closest remote BS that contains X. If X is of ROF type, then remote BS returns an error. If X is of RWF type and the request is II, then the remote BS executes an invalidate-update operation. This results in a broadcast of invalidation notice to all remote stations holding copies of X. The home BS notes the address of the requesting BS in its directory. The remote BS transmits a copy of the update file to the home BS. If X is a RWF, and the request is DI, the file status at all BSs (including BS) holding a copies of X is changed to ROF and the home BS records the address of the requesting BS. In all cases, X or its update file is transmitted from the closest remote station holding a copy of X to the requesting BS via wired LAN and the BS transmits X to the MC via wireless LAN. When the MC completes the write operation of the file, it will issue a invalidate-update
98 M. Kumar et al.
described later. The BS in turn transmits X (or update of X) to the home BS and the home BS issues an invalidation command to all other BSs holding copies of X and change the status of X from ROF to RWF.
3. Performance analysis In a distributed environment, it is important to have a scheme that takes minimal time to locate a requested file. In our directory scheme, a file’s address has the address of its host BS as its prefix. The home BS of any file either has the latest version of the file or the address of the BS holding the latest version of the file. As a result the search time complexity in each directory is O(1). Since logically, the distributed directory has a tree structure of height l, any request probe will visit a maximum of l number of directories. In mobile environments, the battery power should be conserved so that MCs can be used for longer periods. In view of this, we determine the time taken by the MCs and the BSs to perform various functions such as establishing connections, copying files, initiating invalidations, updating files etc. We also determine the energy consumed at MCs while performing the above functions. We use the following notations in the rest of this paper. P W L g Ls l m a b w x y d F f q d l
length of acknowledge, connect, disconnect, and connectbroadcast message transmitted by MC bandwidth of the wireless network in bytes/second bandwidth of the wired network in bytes/second waiting time in seconds expected number of MCs waiting for connection to the BS arrival rate of requests service rate at BSs transmission/reception constant at BS transmission/reception constant at MC power cost in watts ratio of power cost for transmission and normal operation ratio of power cost for reception and normal operation. delay in the wired LAN for each connection size of the file in bytes (size of update portion)/(size of file) number of files held by a MC length of each directory entry in bytes number of hierarchical levels in the directory
3.1 Connection by polling Each cell has one or more BSs acting as servers to the MCs. We determine the time and power complexities when a MC connects to a BS. We consider two
Mobile computing environment issues 99
cases, i) when only one BS is available in the region, and ii) when k>1 BSs are available. 3.1.1 Case (i) MC can connect to one BS. If and when the MC wants to establish connection with a BS, it sends a connect message to the BS and connection is established in g seconds, where g is the waiting time of a MC. For our analysis we treat this scenario as an M/M/1 queue. The total waiting time is given by g DLs /l, where Ls is given by, Ls D r/.1 r/ and r D l/m. Time spent by the BS, Time spent by the MC,
Energy consumption at the MC,
T1BS D..a/W/.2P/C g/ seconds P P 1 Cg TMC D b C b W W D.b/W/.2P/C g seconds Q1 D..b/W/P.y Cx/C g/w Joules
.3.1/
.3.2/ .3.3/
3.1.2 Case (ii) MC can connect to one of k number of BSs. Each BS makes a connectbroadcast (of length P bytes) to all the MCs in its region whenever it is free to accept requests. The MCs record the address of the broadcasting BS and transmit a connect request if required. We assume that total number of requests are divided equally among the BSs. The analysis is similar to that in the first case, however the request rate considered for each BS is reduced due to k BSs. Time spent by the BS, TkBS D..a/W/.2P/C g/ seconds. Even though k BSs send connect messages the MC listens to one of them. Hence, the time spent by the MC is given by, P P k C gk D.b/.W//2PC gk TMC D b C b W W seconds, where gk is given by l/k. Energy consumption at the MC,
Qk D..b/W/P.yk Cx/C g/w Joules
.3.4/
For our experimental work we use the following parameter values. The service rate (m) is assumed to be 2500 per second for every BS. The effective request rate (l) varies from 2000 to 4500 per second. The bandwidth of wireless communication (W) is 2 Mbits per second. In some cases it is assumed to be less than 2 Mbits per second. The bandwidth of wired communication (L) is 10 Mbits per second. The length of short messages such as request and acknowledge (P) is assumed to be 53 bytes. The size of the information file (F) is one Mbyte. The battery power consumption under normal conditions (w) is 0.1 Watt. The power consumption during transmission and reception are 15 times (x) and 8 times (y) larger than those under normal conditions. The time taken to connect by request and polling as given by eq. (3.4) is plotted against L in Fig. 5. To validate our
100 M. Kumar et al. (a) 0.003 'k = 1' 'k = 2' 'k = 3' 'k = 4'
0.0028 0.0026
Time (s)
0.0024 0.0022 0.002 0.0018 0.0016 0.0014 0.0012 1000
1200
1400
1600
1800
2000
λ (b) 0.003 0.0028
'k = 2' 'k = 3' 'k = 4'
0.0026
Total time (s)
0.0024 0.0022 0.002 0.0018 0.0016 0.0014 0.0012 2000
2500
3000
3500
4000
λ
Figure 5.
Time for connection by polling and request. (a) l D1000 to 2000; (b) l D2000 to 4500.
4500
Mobile computing environment issues 101
analytical results, we carried out a series of simulation experiments. The results of the simulation studies are discussed in Section 5. 3.2 Connection by interrupt To compare the performance of connection by polling to that by interrupts we need to compute the energy consumption when connection is established by interrupts. The MC sends connect requests to BSs and connects if any BS is free. The MC makes at most k requests. Time spent by the BS, TIBS D.a/W/2P seconds P kP I Time spent by the MC, TMC D b C b W W D.b/W/P.1Ck/ seconds Energy consumption at the MC,
QI D..b/W/P.y Cxk//w Joules
.3.5/
In the above equations, it should be noted that k>1, and x>y. Comparing eqns (3.4) and (3.5) it is clear that polling is less expensive than interrupts in terms of energy consumption if the requesting MC is required to probe a number of BSs. 3.3 Copying files In the following we assume that connections between MCs and BSs are established by polling and each MC can connect to one of k BSs. We determine the time and power consumption at the MCs only. i) Copy a ROF: the requested file is not available in the MC. It is required to fetch the file from the host BS or from another BS in the wired network. We assume that the MC is currently not connected to any BS. The MC sends a connect request to the BS to which it is not previously connected, establishes connection, and requests the BS for the file, X. The effective time spent is given by, k Tread copy DTMC CC.bF//W seconds,
.3.6/
where is the time involved in searching for X and transmitting X from the home or remote BS to the requesting BS on the wired network. is given by, D.search timeCtime for transfer of F on the wired network), the request probe will look for an entry of X in a maximum of l directories. Hence, D.l 1/d C d C.F/L/Dld CF/L seconds And hence,
Tread copy D.b/W/.P.k C1/CF/C g Cld CF/L
seconds
.3.7/ .3.8/
102 M. Kumar et al.
The corresponding energy consumption is given by, read Qcopy D.TkMC CC.b/W/yF/w Joules read Qcopy D...b/W/.ykPCxSCyF/CCCld CF/L//w Joules
.3.9/
It is clear from eqns (3.8) and (3.9) that the cost of copying a file is dependent on the request rates and file size. ii) Copy a RWF with read access: currently the MC has an invalid copy of the file X, and it needs to update the file. It connects with a BS and sends a request for copying the updates of file X giving information regarding the version of file X available in its memory. In this case, the BS requests for the update files only and hence transmit only a fraction f of X to the MC. The time taken to complete k this operation is given by, Tread fraction DTMC Cf C.bfF//W, where 0f1, and f is the time involved in searching for X and transmitting the update files to the requesting BS on the wired network. f is given by, f D.l 1/d C d C.fF/L/Dld C.fF/L/ seconds and hence Tread fraction D.b/W/.P.k C1/CfF/C g Cld C.fF//L seconds
.3.10/
The corresponding energy consumption is given by, read Qfraction D.TkMC CC.b/W/yfF/w Joules read Qfraction D..b/W/.ykPCxSCyfF/CCCld C.fF/L//w Joules
.3.11/
iii) Copy a RWF with write access: the cost of copying the file is the same as that in reading a RWF. However, the MC and BS have to propagate invalidation signals to the home BS and other BSs holding copies of the file X. There are two types of invalidations, II and DI. If it is a DI, all copies of the file X are rendered ROF. On completion of the write operation, the MC initiates an invalidate-update operation. On the other hand if the access is of type II, the MC executes an invalidate-update operation via its host BS. During the invalidateupdate operation all copies of X are invalidated. The host BS transmits the update file to the home BS. The time taken to perform the invalidate-update operation is given by, Tiu D.b/W/fF seconds and the corresponding energy consumption is given by, Qiu D.b/W/yfF Joules
.3.12/
Mobile computing environment issues 103
The total time taken and energy consumed for completing the write operation write D Qread are given by, Twrite D Tread fraction C Tiu seconds and Q fraction C Qiu Joules respectively. 3.4 Power saving due to transferring update files The energy saving due to transmitting updated portions of files rather than entire files is considerable in terms of time as well as energy. We determine the savings for typical read and write operations. 3.4.1 Read operation. The saving in time consumed is given by, b 1 read read Tread C D.T T /DF .1 f/ seconds save copy fraction W L The saving in the energy consumption is given by, yb 1 read read read Qsave D.Qcopy Qfraction /DF C .1 f/w Joules W L
.3.13/
.3.14/
read is evaluated for different values of W and f. The power The saving Qgain consumption is considerably low for high values of W.
3.4.2 Write operation. The saving in time is the sum of the gain in reading the file and the gain in executing the invalidate-update operation. b write read iu iu Tsave DTsave CTsave , where Tsave D F.1 f/ seconds, W therefore Twrite save DF
b 1 C W L
b .1 f/C W
F.1 f/DF
2b 1 C W L
.1 f/ seconds .3.15/
and the corresponding saving in energy consumption is given by, y b xb 1 write Qsave DF .1 f/w Joules C C W W L Similarly, for write operations, the energy saving is more than that in read operations as the power for transmission is more than that for reception. An inspection of eqns (3.7) and (3.8) reveals that the savings in time and energy are both dependent on the fraction f. Further, the advantage of this scheme is the hierarchical nature of the directories and transfer mechanisms. In the remainder of this section, we determine the time taken and energy consumption for operations unique to mobile computers. Prior to disconnections,
104 M. Kumar et al.
the user of a MC hoards some data files, disconnects from one BS and reconnects to another BS. 3.4.3 Hoarding. The MC copies all the required files. However, for some of the files it copies only the update files. We assume that the MC wants to copy g number of complete files and h number of file updates. The time for copying those files is given by, read Thoard Dg/Tread copy Ch/Tfraction seconds.
The corresponding energy consumption is given by, read read Ch/Qfraction Joules. Qhoard Dg/Qcopy
The saving in time and saving in energy consumption due to use of update files are given by the following equations. read Thoard save Dh.Tcopy
hoard read Tread fraction /, Qsave Dh.Qcopy
read Qfraction / seconds
.3.16/
3.4.4 Reconnection. The cost of reconnection is the sum of the cost for connection and for transferring updated files. Transmission of files from the MC to the BS is expensive. However, the use of update files for transferring these files reduces power costs as only a fraction of the files are transmitted. The time taken for reconnection is given by, b reconnect k DTMC ChÐ fF seconds. T W The energy consumption during reconnection is given by, b reconnect k Q DQMC ChÐ xfF Joules. W And the corresponding savings in time and energy due to the use of update files are given by the following equations. xb b reconnect reconnect DhÐF .1 f/ seconds and Qgain DhÐF .1 f/ Joules Tgain W W .3.17/ The total cost due to the movement of a MC is the sum of the costs due to hoarding, disconnection and reconnection. However, at the higher level, the files and directory entries corresponding to the MC are moved from one BS to another. The time taken for moving the associated directory entries and the files is given by, 1 mobility Dq.dCF/ seconds .3.18/ TBS L
Mobile computing environment issues 105
It is evident from eqns (3.16) and (3.17) that the time taken and power consumption for operations such as hoarding and reconnection are dependent of f. 3.5 Effect of file locality on access time Each MC has its own memory, and wireless access to a BSs memory and remote access via the BS to other BSs in the network. Requests for files, may be internal requests: to its local memory, to a file in the BSs memory, or to read/write a file from a remote station. Likewise, a BS may receive requests from MCs in its cell area or from MCs/BSs located elsewhere in the network. In a given cycle a MC submits a file request with some given probability and waits until the response file is received. The MC is in one of two states: busy and waiting. We assume that during one cycle, the time during which the MC is busy is Tb and the waiting time is Tw . In addition, we define the following additional parameters. N p m pb pr h q z Mu pð.1
pð.1 pð.1 pð.1
: number of MCs in a cell : probability that a MC submits a file request during Tb : probability that a MC requests its local memory provided it has made a file request : probability that the request is to the base station provided it is not a local request : probability that the request is to a remote station provided it has made a file request : expected delay for a local file request to be served : expected delay for a file from the host base station to be served : expected delay for a remote file request to be served : wait factorDTw /.Tb CTw / m/ : probability that the requested file is not available in local memory : probability that the requested file is available in any m/ðpb one of the base stations in the cell 1 m/ðpb ð : probability that the requested file is available in the k home base station m/ð.1 pb / : probability that the requested file is in a remote station
The performance of the network will be carried out under the following assumptions. Requests are generated at the source MC by independent and identically distributed random processes. At any point of time a MC is busy doing some information processing or is waiting for a response to a file request. If there is no pending request, each MC generates a request with probability p at
106 M. Kumar et al.
each cycle On the average, it takes 1/p cycles to send out a request from a MC. In this section, we consider the ideal situation where requests and transfers do not wait in queues and are serviced immediately. The host BS if necessary communicates with other BSs in the wired network and will interrupt the MC after locating the requested file. The MC is not required to wait on the wireless channel. We consider queues and associated delays at the BSs in the following section. The MC wait factor, Mu , defined as the fraction of time a MC is waiting, will be determined by the waiting time and service time faced by the request at various service centres (BSs). As the requested file is searched by the network of BSs, the MC utilization is expected to be high. The waiting time Tw is given by, Tw D h C q C z and the MC utilization is given by, Mu D.Tw /.Tb CTw //. The derivation of terms h, q and z are presented below. These terms depend on (a) the routing strategy, (b) amount of traffic in the network, and (c) the service demand at the BSs. Local memory requests: the delay here is due to the memory access time .dm / at the mobile computer’s local memory. Given that the probabilities for a file request and for a local request are p and m respectively, the expected delay is given by, h Dpðmðdm . Host BS memory requests: The delay here is due to the requests originating from the MC and the waiting time at the BS. For this case, the expected delay is given by, q Dp.1 m/pb .db / where, db is given by db D g Cdm . Remote BS memory requests: the delay here is due to the request originating at the MC and the waiting times in 2 or more queues along the path from the host BS to the remote BS. For this case the expected delay is given by, z Dp.1 m/.1 pb /.dr / where, dr is given by, dr D d Cdm . The time taken for servicing a local file request will depend on the type of processor and memory used by the MC and the size of the file to be transferred. The time for accessing information from host and remote BSs will depend upon such factors as, i) type of connection, ii) type of operation—read or write, iii) size of the file to be copied, iv) bandwidth of wired and wireless networks, and v) the memory transfer times. As a result the values for db and dr vary according to the type of connection and operation. MC utilization is evaluated for varying probabilities of m and pb . As mentioned before, each MC can connect to one of k BSs in its region. For a BS, both local (MCs in its cell area) and external requests arrive at a memory queue. At any given time, only one of them is selected for service on a first-come-first-served (FCFS) basis while the remaining requests are queued at the buffer of the memory. After receiving a request, a BS will either send an acknowledge signal, followed by the requested file to the requesting BS/MC or to another BS through the wired network depending on whether the request is to a file in it’s own memory or to a file in another BS’s memory. We will analyse the performance of the network under the assumption of infinite buffers.
Mobile computing environment issues 107
The utilization factor will depend on such factors as request rates generated at various mobile computers, number of MCs contending for a BS, and the wireless network bandwidth.
4. Experimental results In the rest of this section we present the results of our analytical and simulation studies and discuss the outcomes. 4.1 Connection by polling and request We carried out tests for a wide range of arrival rates. The results presented in Fig. 5 show that for low arrival rates, number of BSs per cell does not affect connection time. However, as the arrival rate increases, the time taken increases significantly for k D1 and k D2. The results of the simulation studies shown in Table 1, validate our analytical results. We conducted these experiments under four different test cases. The test cases are as follows: Test case I: 10 MCs; each MC sends a request immediately after a reply in a continuous fashion. Test case II: 10 MCs; There is a time gap between a reply and a subsequent request. Test case III: same as I with 50 MCs. Test case IV: same as II with 100 MCs. In Table 2 we study the performance of the system with varying numbers of MCs and BSs per cell. It is evident that with large number of MCs we require more than one base station to service calls. 4.2 Copying files The plots in Figs 6(a) and (b) show the time in seconds for copying files of different sizes from BSs located in other cells of the environment. Table 3 presents results of study for comparing file transfer times under two cases. In the first case (R), the requested file is not available in the host BS, however, it is available Table 1. Time in micro seconds Test case
1 BS
2 BSs
3 BSs
4 BSs
I II III IV
2.73 4.86 4.92 60.82
2.37 4.46 4.67 55.86
1.30 3.95 3.77 50.16
1.30 3.85 — —
108 M. Kumar et al. (a) 0.014
0.0138
'l = 1' 'l = 2' 'l = 3'
Time (s)
0.0136
0.0134
0.0132
0.013
0.0128
0.0126 1000
1200
1400
1600
1800
2000
λ (b) 0.14
0.12 'F = 100 Kbytes' 'F = 50 Kbytes' 'F = 10 Kbytes' 'F = 5 Kbytes'
Time (s)
0.1
0.08
0.06
0.04
0.02
0 2000
2500
3000
3500 λ
Figure 6.
Time for reading files. (a) FD10 K Bytes; (b) lD2.
4000
4500
Mobile computing environment issues 109 Table 2. Time in micro seconds Number of MCs
1 BS
2 BSs
3 BSs
10 20 30 40 50
2.72 9.05 18.92 32.31 49.24
2.25 8.08 17.44 30.34 46.77
1.97 6.37 13.14 22.22 33.74
Table 3. Packet size
1 M bytes
64 K bytes
File size
R
I
R
I
R
I
— 3.69 8.00 13.40 24.18 56.54
— 3.95 9.30 16.00 29.37 69.58
0.91 1.68 7.79 15.44 30.72 76.58
1.47 2.74 12.89 25.58 50.97 127.11
4.83 8.74 43.66 87.30 174.59 436.44
10.93 21.80 108.76 217.45 434.83 1087.0
0.5 M bytes 1.0 M bytes 5.0 M bytes 10 M bytes 20 M bytes 50 M bytes
4 K bytes
256 bytes R
I
61.97 164.53 123.94 329.00 619.65 1644.8 1239.3 3289.4 2478.6 6578.8 6196.4 16 446
R: reconnect to another BS, I: indirect transfer via host BS; Time in seconds
in a remote BS. The MC disconnects from its host and connects to a new host which has a copy of the requested file. The file is downloaded over the wireless network from the new host to the MC directly. In the second case (I), the host BS copies the file from the remote BS and the transmits the file to MC via the wireless link. Our studies reveal that it is less expensive to disconnect from the present host and reconnect to a new host which has a copy of the file, particularly when the file size is large. We conducted this study for various packet sizes and the results are presented in Table 3. 4.3 Power saving due to copying portions of files The time taken for transmitting a file is dependent on the wireless bandwidth and the file size. As discussed in Section 3, we propose that certain files can be updated by appending the updated portions with the older version. We carried out tests to determine the saving in a mobile computer’s power under varying file sizes and wireless bandwidths. The power saving is insignificant when the bandwidth is high whereas it is considerable at low bandwidths. The results of the simulation study for tranferring portions of a file of size 512 kbytes are shown in Table 4.
110 M. Kumar et al. Table 4. Wireless bandwidth for Read/Write Portion of file 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
512 Kbps Read/Write 2.16 1.92 1.68 1.44 1.20 0.96 0.72 0.48 0.24
4.05 3.60 3.15 2.70 2.25 1.80 1.35 0.90 0.45
1 Mbps Read/Write 1.10 0.98 0.86 0.73 0.61 0.49 0.36 0.24 0.12
2.07 1.84 1.61 1.38 1.15 0.92 0.69 0.46 0.23
2 Mbps Read/Write 0.46 0.41 0.36 0.31 0.25 0.20 0.15 0.10 0.05
0.86 0.77 0.67 0.57 0.47 0.38 0.29 0.19 0.10
4 Mbps Read/Write 0.14 0.12 0.11 0.09 0.07 0.06 0.05 0.03 0.01
0.26 0.23 0.20 0.17 0.14 0.12 0.09 0.06 0.03
Power saving in Watts due to copying updated portions
4.4 Effect of file locality In this section we present results of our studies on the effect of file locality on overall time spent by MC waiting for requests to be serviced. The results of our analytical studies are shown in Fig. 7, where Tb is the time during which the MC is busy transferring a file. The plots in Fig. 7 indicate that the utilization of the MC (defined in Section 3.7) increases with high values of m and pb . The simulation results shown in Fig. 8, validate analytical results. We have plotted total time consumption for varying values of m, pb , and job arrival rates.
5. Quality of service in mobile information files The quality of service in the context of general multimedia presentations allow control of trade-offs between information loss and presentation timing. We propose that when access to a read-only access is made to a file, a user should be able to specify a similar set of parameters that guarantee a certain level of performance that the user is willing to accept and pay for. In the case of text files, there are two relevant issues; first, the version number of the file, and second, the cost incurred in searching for this file and transmitting this file over the wireless network. Suppose, a user who has version i of a file in the local memory of the MC makes a request for an update, and the most recent version the file X is n. Now, obtain the recent most version of X the time and power costs involved are read given by Tread fraction and Qfraction respectively. However, the user may not want to wait for this amount of time and/or spend the battery power. On the other hand he/she may settle for an intermediate version (say j, where ijn) of the file that entails lower costs. The quality of the file is defined by k Dj/n. If k D1, the user gets the most recent version of the file and the best quality. If k <1 then the quality of service is poor and it gets poorer as k reduces; the user gets
Mobile computing environment issues 111 1
(a)
0.9
'T_b = 0.00005' 'T_b = 0.0001' 'T_b= 0.0008' 'T_b = 0.002'
Utilization
0.8
0.7
0.6
0.5
0.4
0.3 0.1 1
0.2
0.3
0.4
0.5 p_b
0.6
0.7
0.8
0.9
0.8
0.9
(b)
0.9 'T_b = 0.00005' 'T_b = 0.0001' 'T_b= 0.0008' 'T_b = 0.002'
0.8
Utilization
0.7 0.6 0.5 0.4 0.3 0.2 0.1
Figure 7.
0.2
0.3
0.4
0.5 m
0.6
0.7
Utilization of MC with varying probabilities. (a) mD0.9; (b) Pb D0.7.
112 M. Kumar et al. (a) 8 m = 0.5, job arrival rate = 100/s m = 0.8, job arrival rate = 100/s m = 0.9, job arrival rate = 100/s m = 0.8, job arrival rate = 500/s
7
Total time consumed (s)
6
5
4
3
2
1
0 0.1
0.2
0.3
0.4
0.5 Pb
0.6
0.7
0.8
0.9
(b) Pb = 0.5, job arrival rate = 100/s Pb = 0.7, job arrival rate = 100/s Pb = 0.9, job arrival rate = 100/s
4 3.5
Total time consumed (s)
3 2.5 2 1.5 1 0.5 0 0.1
0.2
0.3
0.4
0.5 m
0.6
0.7
0.8
0.9
Figure 8. Total service time with varying probabilities. (a) Pb varying and constant values of m; (b) m varying and constant values of Pb .
Mobile computing environment issues 113
older versions of files. The quality of service required depends on the type of information file requested. Suppose the user wants to browse a routine news item or a weather report, then a low quality file may be acceptable. On the other hand if the requested information is critical, such as stock rates or traffic patterns then the user may desire a quality of service of k D1. The time taken to provide the information with k D1 is given by eqn (3.10). Tread fraction D.b/W/.P.k C1/CfF/C g Cld C.fF//L. It is clear from the equation that the time taken is dependent on request arrival rates, number of hierarchical levels, and f, the fraction of the file to be transferred. If we consider current wireless communication bandwidths (around 1–2 Mbytes s 1 ), 1/W is the most significant factor, and Tread fraction is proportional to fF/W and hence f. In the above equation, f corresponds to version n and quality k D1. For lower values of k, f is replaced by f0 where f1
5.1 Transfer of files with QoS options The term ‘difference’ or simply diff here refers to the difference between two versions of a file. The diff could be considered as the updated portion of a file while it has more than one version. In this experiment, we experiment with transfer of diff files. The old version of the file (say X.i) is available in the parent BS, whereas X.j and X.k are located in neighboring BS and in a remote cell, respectively. In this experiment, j and k are the more recent versions of X, that is i
114 M. Kumar et al.
In single-hop transfer, the diff(X.n, X.j) is transmitted from the remote station to the parent BS directly over the wired channel. Since there are several versions of a file in the network, the parent BS can also provide information about the time consumed to transmit each version. The user then chooses the version based on his needs and financial capacity. The simulation results of transferring the difference file are shown in Fig. 9. When the portion of file to be transferred is small, the graph is more stable. As the diff(X.j, X.i) is greater than diff(X.k, X.i) the total time consumed increases. In this simulation, file X.i and X.j are located in the same cell as the requesting MC. On the other hand, file X.k can be located in any remote station. With this condition there is a higher probability of the first cell getting overloaded with unserviced jobs than the other cell, especially if the size of diff(X.j, X.i) larger than diff(X.k, X.i). The results for transferring the difference files based on four quality of service parameters are are presented. The four qualities are shown in Fig. 10. In the simulation study we considered single-hop and multi-hop transfers with job arrival rates varying between 0 to 1000 and a service rate of 1000 jobs/s 1 . The results are shown in Fig. 11, where Method A represents multihop transfer and single-hop transfer is represented by Method B. The difference between multi-hop and single-hop is not very significant for qualities 3 and 4
6
5 diff (X.j,X.i) = diff (X.k,X.i) = 10% diff (X.j,X.i) = 10%, diff (X.k,X.i) = 30% diff (X.j,X.i) = 30%, diff (X.k,X.i) = 10% diff (X.j,X.i) = 90%, diff (X.k,X.i) = 10% diff (X.j,X.i) = 10%, diff (X.k,X.i) = 90%
Total time (s)
4
3
2
1
0
2
4
6 Number of BS
Figure 9.
Total service time in seconds when transferring diff files.
8
10
Mobile computing environment issues 115 (a) P
C1
B11
B12
X.2
X.3
C2
Bk
Ck
B21
Bk
Bk
X.5
X.4 b
c
B31
a
d
Quality-1: a + b + c + d Quality-2: b + c + d Quality-3: c + d Quality-4: d
X.1
a : diff(X.5, X.4) b : diff(X.4, X.3) c : diff(X.3, X.2) d : diff(X.2, X.1)
(b) P
C1
B11
C2
B12
X.2
c
Bk
B21
X.3
X.4
Ck
Bk
B31
Bk
X.5
b a
d
X.1
Figure 10.
Quality-1: a + d Quality-2: b + d Quality-3: c + d Quality-4: d
a : diff(X.5, X.2) b : diff(X.4, X.2) c : diff(X.3, X.2) d : diff(X.2, X.1)
Transfer with QoS options. (a) Multi-hop transfer; (b) Single-hop transfer.
116 M. Kumar et al. 8000
Method A Quality 1 Method A Quality 2 Method A Quality 3 Method A Quality 4 Method B Quality 1 Method B Quality 2 Method B Quality 3 Method B Quality 4
7000
Total time consumed (s)
6000
5000
4000
3000
2000
1000
0
Figure 11.
200
400 600 Job arrival rate
800
1000
Total service time for single-hop and multi-hop transfers.
because there is not much difference in the mode of transfers. On the other hand for qualities 1 and 2 single-hop transfer scheme requires less waiting time than multi-hop transfer scheme and hence single-hop transfer consumes less time.
6. Conclusions In this paper our emphasis has been on the time taken and energy consumption during various operations. It is clear from the analytical results of the previous chapter that the time taken to execute various operations and hence the energy consumption are dependent on the fraction f. In addition the hierarchical nature of the directory reduces search time and hastens update operations. We have validated these analytical findings with simulation studies. The time for search and transferring of files in the above scheme is given by eq. (3.8). In the absence of a logical hierarchical directory, the term lŁ d in eqn (3.8) will be replaced by nŁ d0 , where n .n×l/ is the number of BSs in the system and the d0 .d0 × d/ is the delay involved. Likewise the corresponding power costs would be higher. The distributed directory scheme is being evaluated to determine its (1) reliability, (2) scalability, (3) portability, (4) ability to maintain coherence, and (5) speed. In most file sharing instances with regard to RWF files, a client with read/write
Mobile computing environment issues 117
access modifies only a small portion of the accessed file. As a result it is sufficient if the file update mechanism modifies the affected portion of the file rather than the entire file. This would result in enormous reduction in communication overheads and hence power consumption. Further, invalidation of a file actually means locking the file until next update. The file is not purged at any BS it is updated when the network is not busy or when there is a request for the file at the BS. This improved invalidate-update procedure reduces overheads significantly. On the other hand purging of files at MCs on a priority basis has a negative effect on invalidate-update procedure. We investigated the effect of file locality on access time and power consumption. Quality of service issues with regard to transfer of text files were studied in great detail under varying conditions of bandwidth, file size, service rates and job arrival rates.
References 1. E. Buitenwerf, G. Colombo, H. Mitts and P. Wright (1995). UMTS: Fixed Network Issues and Design Options, IEEE Personal Communications, February 1995, 30–37. 2. D. Dunchamp, S. K. Fiener and G. Q. Maguire, Jr. (1991). Software Technology for Mobile Computing, IEEE Network Magazine, November, 1991, 12–18. 3. G. H. Forman and J. Zahorjan (1994). The Challenges of Mobile Computing. IEEE Computer 27, (4), 38–48. 4. D. J. Goodman (1991). Trends in Cellular and Cordless Communications. IEEE Communications Magazine, June 1991, 31–40. 5. T. Imielinski and B. R. Badrinath (1994). Wireless Computing. Communications of the ACM, 37, (10), 19–28. 6. J. J. Kistler and M. Satyanarayanan (1992). Disconnected Operation in the Coda File System. ACM Transactions on Computer Systems, 10, (1) 3–25. 7. M. J. Kumar, S. Venkatesh and S. Panchanathan (1996). A Distributed Directory Scheme for Information Access in Mobile Computing Environments. IEEE Intl. Conf. on High Performance Computing, Trivandrum, India, December 19–22, 1996, 138–143. 8. L. B. Mummert, M. R. Ebling and M. Satyanarayanan (1995). Exploiting Weak Connectivity for Mobile File Access. Proc. of the Fifth ACM Symposium on Operating Systems Principles, Copper Mountain Resort, Colorado, December 1995. 9. M. Sathyanarayanan (1996). Mobile Information Access. IEEE Personal Communications, February 1996.
Mohan Kumar is a Senior Lecturer at the School of Computing Science, Curtin University of Technology which he joined in 1992. Kumar’s career includes six years as a Scientific Officer during 1986–92 at the Indian Institute of Science. He was the Program Chair for the Second Australasian Conference on Parallel and Real-Time systems. He has guest edited special issues of The Computer Journal, is a referee to several international journals and has served on the programme committes of numerous international conferences. Kumar has published over 50 articles in refereed journals and conference proceedings in the areas of parallel and distributed computing and mobile computing. He was elected Senior Member of IEEE in 1995 and awarded the Alumni Medal of the Indian Institute of Science for the Doctoral thesis in 1993.
118 M. Kumar et al. Svetha Venkatesh is a Professor at the School of Computing at Curtin University of Technology, Perth, Western Australia. She is currently the Chair of the Computer Science Department. Her research is in the areas of active vision, biological based vision systems, image understanding and applications of computer vision to image and video database indexing and retrieval. She is the author of about 100 research papers in these areas and is a senior member of the IEEE.
Kok-Young Lim is currently working for his PhD degree in Computer Science at Curtin University of Technology. He completed his Masters degree by research and the Bachelor of Science in Computer Science also from the Curtin University of Technology. His interests include, Mobile Computing and Computer Networks.
Hanny Santoso is a Lecturer at the Universitas Bina Nu Santara, Jakarta, Indonesia. Santoso completed his Master’s degree by research at the Curtin University of Technology in 1998. His research interests include Mobile Computing and Computer Networks.