• 沒有找到結果。

Effects of cache mechanism on wireless data access

N/A
N/A
Protected

Academic year: 2021

Share "Effects of cache mechanism on wireless data access"

Copied!
12
0
0

加載中.... (立即查看全文)

全文

(1)

Effects of Cache Mechanism on Wireless Data Access

Yi-Bing Lin, Fellow, IEEE, Wei-Ru Lai, and Jen-Jee Chen

Abstract—In wireless data transmission, the capacity of wireless links is typically limited. Since many applications exhibit temporal locality for data access, the cache mechanism can be built in a wire-less terminal to effectively reduce the data access time. This paper studies the cache performance of the wireless terminal by consid-ering a business-card application. We investigate the least-recently used replacement policy and two strongly consistent data access algorithms called poll-each-read and callback. An analytic model is proposed to derive the effective hit ratio of data access, which is used to validate against simulation experiments. Our study reports how the data access rate and the data update distribution affect the cache performance in a wireless terminal.

Index Terms—Cache, strong consistency, temporal locality, wireless data.

I. INTRODUCTION

M

ODERN mobile networks support wireless data applica-tions. In the past, wireless data services were marketed as wireless modem access for laptops or notebooks to offer so called “portable computing.” As advanced wireless infrastruc-tures become available and the inexpensive wireless handheld devices (e.g., wireless personal data assistant (PDA) and wire-less smart phones) become popular, the mobile subscribers can enjoy instant wireless Internet access. Several wireless appli-cation platforms have been developed to support wireless In-ternet applications. Examples include wireless application pro-tocol (WAP), [21], [23], [24] and iSMS [15]. A typical wireless application platform is illustrated in Fig. 1. In this architecture, the wireless application gateway (e.g., the WAP Gateway) in-terworks the wireless network with the Internet protocol (IP) network, which allows a wireless terminal to obtain data from an application server (e.g., an origin server in WAP). To con-verge wireless data with the Internet, the WAPs may integrate a light-weight web browser into wireless terminals with limited computing and memory capacities. The WAPs implemented in the wireless application gateway and the wireless terminal en-able a mobile user to access Internet web applications through a client–server model. A client application running on the wire-less terminal may repeatedly access a data object received from the application server. To speed up wireless data access, cache Manuscript received July 2, 2002; revised September 16, 2002; accepted Oc-tober 1, 2002. The editor coordinating the review of this paper and approving it for publication is G. Cao. This work was supported in part by the MOE Pro-gram for Promoting Academic Excellence of Universities under Grant 89-E-FA04-1-4, by IIS, Academia Sinica, by FarEastone, and by the Lee and MTI Center for Networking Research, National Chiao Tung University.

Y.-B. Lin and J.-J. Chen are with the Department of Computer Sci-ence and Information Engineering, National Chiao Tung University, Hsinchu, Taiwan 30050, R.O.C. (e-mail: [email protected]; [email protected]).

W.-R. Lai is with the Department of Electrical Engineering, Yuan Ze Univer-sity, Chung-Li, Taiwan 320, R.O.C. (e-mail: [email protected]).

Digital Object Identifier 10.1109/TWC.2003.819019

mechanisms have been proposed. For example, the WAP user agent caching model [22] tailors the hypertext transfer protocol caching model to support wireless terminals with limited func-tions. In this model, a cache in the wireless terminal is used to buffer frequently used data objects sent from the WAP Gateway. When the data objects in the application server are modified, the cached objects in the wireless terminals are obsolete. To guar-antee that the data presented to the user at the terminal are the same as that in the application server, a strongly consistent data access protocol [25] must be exercised. Furthermore, the cache size in a wireless terminal is typically small, and a cache re-placement policy is required to accommodate appropriate data objects in the cache. We will elaborate on cache replacement and two strongly consistent data access protocols in Section III. Then we utilize both analytic analysis and simulation experi-ments to investigate how the strongly consistent data access al-gorithms and the replacement policy affect the performance for wireless data access (i.e., the cache hit ratio and the transmission cost). We use a business-card service as the application for our wireless data access study. The business-card service is a gener-alization of the phone book feature in mobile handsets, which is one of the most popular features in mobile handsets. The busi-ness-card application will be elaborated in Section II.

II. BUSINESS-CARDAPPLICATION

Many applications such as mobile bank transactions and stock trades can utilize strongly consistent cache mechanisms. For purpose of illustration, this section uses a business-card application to study the performance for wireless data access. This application is similar to the address book feature built in most mobile handsets. Unlike the phone book, the business cards are stored and maintained in a business-card database in the network, and the most-frequently used (MFU) business cards are cached in the wireless terminal. This application offers four major advantages over the phone book feature in mobile handsets. First, when a user changes the handset, the phone book may not be conveniently transferred to the new handset. This is particularly true when the old handset is broken, and the phone book is lost. With our business-card service, the user can access his/her “private” phone book from any handset. Second, besides the private phone book, the business-card service can also maintain a “public” phone book database (just like yellow page) in the application server. Third, after a phone conversation, the business-card service allows the call parties to exchange their business cards that provide much more information than the phone numbers in the phone book feature. Finally, when the information (e.g., phone number) of a user is changed, it will not automatically reflect to the phone books of other users. With the business-card service, a user can update the business card in the database of the business-card 1536-1276/03$17.00 © 2003 IEEE

(2)

Fig. 1. Example of wireless application platform.

TABLE I

VCARDFORMAT IN THEiSMS-BASEDBUSINESSCARDSERVICE

* The CALENDAR field is not defined in the vCard standard.

application server (typically through Internet), and other users always access the correct information.

We have implemented the business-card service in iSMS [15], a platform that integrates IP networks with the short message services (SMSs) in mobile telephone systems. iSMS provides a generic gateway for creating and hosting wireless data services for mobile stations (i.e., wireless terminals). The iSMS gateway is equivalent to the wireless application gateway in Fig. 1. This approach does not require any modification to the mobile tele-phone system architecture. Therefore, the iSMS system can be quickly developed and operated by a third party or an end user without involvement of mobile equipment manufacturers and telecom operators. In the iSMS-based business-card applica-tion, the format of the business card follows the vCard stan-dard [5], as illustrated in Table I. In this format, the FN field is used to specify the vCard object. The N field is a single struc-tured text value, which corresponds, in sequence, to the family name, given name, additional names, honorific prefixes, and honorific suffixes. A person may have several telephone num-bers; e.g., work phone number, fax number, and cellular tele-phone number. In vCard, these numbers are included in the TEL field. We also include a CALENDAR field that allows the user to fill in the schedule of public events he/she wants to share with others. In our iSMS implementation, the size of a vCard can be unlimited in the iSMS application server. However, the vCard is tailored to be of fixed size when it is delivered to the wire-less terminal. The length of each field in our implementation is shown in Table I. The appearance of an iSMS business card in PDA is illustrated in Fig. 2. An iSMS business card can be up-dated, added to or removed from the database by the application server or by the wireless terminal. The access of a business card is based on the algorithms described in Section III.

Fig. 2. iSMS business card shown in PDA.

III. CACHEDDATAACCESS ANDREPLACEMENTALGORITHMS We consider two strongly consistent algorithms for wireless data access: poll-each-read (PER) and callback (CB) [25], [18]. In both algorithms, when a data object (a business card in our example) is updated at the wireless application server, the valid object is not immediately sent to update the cached copies in the wireless terminal. Instead, the valid object is delivered to a wireless terminal only when a data access operation is ac-tually performed. Several time-to-live (TTL)-based algorithms were proposed for weakly consistent caching, which are out of the scope of this paper. For more details, the reader is re-ferred to [11] and the reference therein. Cao [2], [3] proposed an IR-based cache invalidation algorithm, which efficiently uti-lizes the broadcast bandwidth to intelligently broadcast the data requested by clients. Kahol et al. [7] used synchronous inval-idation reports to maintain cache consistency, i.e., reports are broadcast by their server only when some data changes. These

(3)

Fig. 3. Data access in PER.

Fig. 4. Data access in CB.

schemes are implemented in lower layers of the wireless pro-tocol stacks, which may perform well in wireless local area net-works, but typically cannot be implemented in existing com-mercial mobile telecommunications networks such as the global system for mobile communication (GSM), general packet radio service, and universal mobile telecommunications systems. This paper considers PER and call-back that can be implemented at the application layer without modifying the core network pro-tocols.

In PER [6], at a data access request [see Fig. 3(b) and (e)], the wireless terminal always asks the wireless application server to check if the cached object is valid. If so, the wireless application server responds affirmatively [Fig. 3(f)] and the user accesses the object in the cache of the wireless terminal [Fig. 3(g)]. If the data object is updated before the access [see Fig. 3(a) and (b)], the wireless application server sends the current data ob-ject to the wireless terminal [Fig. 3(c)], and this obob-ject is stored in the cache of the wireless terminal [Fig. 3(d)]. In this approach, when an object is found in the cache, the wireless terminal still needs to obtain from the wireless application server if has been invalidated. Thus, a cache hit may not be beneficial to PER. Define effective hit ratio as the probability that for an access to object , a cache hit occurs in the wireless terminal and the cached object is valid. In PER, the cost for accessing an object with effective cache hit is a cache affirmative request and acknowledgment exchange between the wireless applica-tion server and the wireless terminal (msg3 and msg4 in Fig. 3).

For a cache miss or a cache hit where the data object is invali-dated, the access cost is a request message sent from the wireless terminal (msg1 in Fig. 3) and a data object transmission from the wireless application server to the wireless terminal (msg2 in Fig. 3).

In the CB approach [6], [14], whenever a data object is modified, the wireless application server sends a message to invalidate the corresponding cached object in the wireless terminals [see Fig. 4(a)]. The cache storage of the invalidated object is reclaimed to accommodate other data objects, and the wireless terminal sends an acknowledgment to inform the application server that the invalidation is successful [see Fig. 4(b)]. During the period between Fig. 4(a) and (d), if other updates to this object occur, no invalidation message needs to be sent to the wireless terminal (because no invalidated copy will be found in the cache). In this approach, all objects stored in the cache are valid, and a cache hit is always an effective hit (if the message transmission delay is ignored). In a data access, if a cache hit occurs, the cached object is used without any communication between the application server and the wireless terminal [Fig. 4(f)]. For a cache miss, the access cost is a request message (msg3 in Fig. 4) sent from the wireless terminal and a data object transmission (msg4 in Fig. 4) from the application server to the wireless terminal. It is required to invalidate a cached object at the wireless terminal (if exists) when the object in the application server is updated (msg1 and msg2 in Fig. 4).

(4)

Fig. 5. Timing diagram I.

The typical cache size in a wireless terminal is not large. When the cache is full, some cached objects must be removed to accommodate new objects. We consider the least-recently used (LRU) replacement policy. This policy is often utilized to manage cache memory in computer architecture [20], vir-tual memory in operating systems [19], and location tracking in mobile phone networks [10]. LRU uses the recent past as an approximation of the near future, and replaces the cached object that has not been used for the longest period of time. LRU asso-ciates with each cached object the time of its last use. When a cached object must be replaced, LRU chooses the object that has not been used for the longest period of time. Therefore, every object in the cache has a rank. If a cached object has the Rank 1, it means that the object is most recently used. If an object has a Rank , it means that objects are more recently used than is. If , where is the size of the cache, then has been removed out of the cache.

The number of data objects in the application server is much larger than the cache size in the wireless terminal. However, our experience in exercising wireless applications [16] indicated that for an observed period, only a small number of data ob-jects in the wireless application server are potentially accessed by a wireless terminal. Although the objects to be accessed vary from time to time, the number is not significantly larger than the cache size of the wireless terminal. That is, the data ac-cess pattern of a wireless terminal exhibits temporal locality [20], which is the tendency for a wireless terminal to access in the near future those data objects referenced in the recent past. Temporal locality may not be observed in wireline Internet ac-cess because the desktop users typically navigate through sev-eral web sites at the same time. On the other hand, the restricted user interface of wireless terminal only allows a user to access a small region of data objects for instant information acquisition. Thus, cache can effectively reduce the data access time for the wireless terminals. In Section IV, we propose an analytic model to investigate the cache performance for the wireless terminals.

IV. ANALYTICMODELING

This section proposes analytic models for the business-card application based on PER and CB. Note that our model is appli-cable to other general remote caching scenarios. We first model the wireless data access when LRU is exercised with PER. To

simplify our discussion, we assume that the sizes of data objects are the same. This assumption is justified for the iSMS busi-ness-card application where the size of a vCard is fixed. Con-sider a data object in the cache of a wireless terminal. Based on the LRU policy, when is accessed, it is moved to the top of the cache. Between the previous and the next accesses to , if the wireless terminal accesses to distinct data objects other than , then is moved to the th position of the cache. If , then is removed from the cache before the next access to arrives. In this case, a cache miss to occurs. Con-sider the timing diagram in Fig. 5, where the current access to occurs at time . If the previous access to occurs at time , then the interdata access time to is . Assume that accesses to a data object are a Poisson process with rate .

In this section, we assume that for .

In other words, the access patterns for all objects are the same. In our simulation experiments, this assumption will be relaxed (see Sections V and VI). Therefore, is exponentially distributed with mean . Consider the accesses to another data object . After the access at , is stored in the cache with Rank 1. Suppose that the last access to before occurs at , and the first access to after occurs at . Then, has the same distribution as . Furthermore, data access to at is a random observer to (property of the Poisson process). From the excess life theorem [17] and the memoryless property of the exponential distribution, the period has the same distribution as . If (i.e., ), then the access to

will increment the rank of by one before the access to

occurs at time . Let . Then

(1)

Let be the probability that and ’s

rank is increased to in the period . In other words, distinct data objects other than are accessed during . For

, from (1), we have

(5)

Fig. 6. Timing diagram II.

When the wireless terminal accesses at time , the cached copy of may have already been obsolete due to updates to the original copy at the wireless application server. Consider the timing diagram in Fig. 6. Suppose that the last update to before occurs at , and the first update to after occurs at

. Assume that the interupdate time has a general distribution with the density function , the mean , and the Laplace transform

Since the accesses to are a Poisson stream, is a random observer of . From the excess life theorem [17],

has the density function

the distribution , and the Laplace transform

(3) In PER, the cached copy of is not invalidated during the period if . Let be the effective cache hit ratio or the probability that when LRU is exercised with PER, the cached copy of exists and is not obsolete. Suppose that the cache size of the wireless terminal is and (where ) is the number of objects in the wireless application server. Suppose that distinct objects other than are accessed during . The cached copy of still exists in the cache at time if . Therefore, from (2), we have

(4)

(5)

where

and

Using (3), (5) can be computed numerically by a computer pro-gram. If is exponentially distributed, then is also expo-nentially distributed with the same mean . In this case, (4) can be expressed as (6), shown at the bottom of the page. Let

. Then, we have

and (6) is rewritten as

(7)

When LRU is exercised with CB, the cache position ranking of is not affected by an access to another object if is invalidated after the access. Consider the timing diagram in Fig. 5. Suppose that the previous update to before occurs at , and the first update to after occurs at . As we dis-cussed before, the interupdate time has the density function , and the period has the density function . Under CB, the updates to during will affect the ranking of the cached entry for if the last access to occurs at and the last update to occurs at , where (i.e., ). Let be the probability that the above situation occurs under the condition that . We have

(8) Let be the probability that data objects other than will have smaller ranks (higher priorities) in the cache during

when . Therefore

(9)

(6)

Let be the probability that when CB is exercised, an effec-tive cache hit occurs at time . From (9) we have (10), shown at the bottom of the page. If is exponentially distributed, then (8) is rewritten as

and (9) is rewritten as

Therefore, (10) is derived as (11), shown at the bottom of the

page. Let . Then

(12) From (12), (11) is rewritten as (13), shown at the bottom

of the page. Let , we have

, and (13) is rewritten as (14) shown at the bottom of the page. Let , (14) is rewritten as

(15) The probabilities and will be used to compute the wireless data access costs that consist of the following compo-nents:

• : the transmission cost of a data access request mes-sage (e.g., msg1 and msg3 in Fig. 3, and msg3 in Fig. 4); • : the transmission cost of an affirmative message in PER (i.e., msg4 in Fig. 3) or an invalidation acknowledg-ment message in CB (i.e., msg2 in Fig. 4);

• : the transmission cost of an invalidation message in CB (i.e., msg1 in Fig. 4);

• : the transmission cost of a data object (i.e., msg2 in Fig. 3 and msg4 in Fig. 4).

Consider a long time interval. In this interval, data accesses are observed. For CB, invalidation messages are sent.

(10)

(11)

(13)

(7)

Fig. 7. Simulation flowchart for CB.

From Figs. 3 and 4, the net wireless transmission costs of PER and CB (during the observation period) are expressed as

(16)

(17) Consider the per access cost for PER. From (16)

(18) From (17), the per access cost for CB can be expressed as

(19) where is the probability that for a data object, one or more updates to this object occurring during the period between two data accesses; that is, the probability that

in Fig. 6. Therefore

(20) which is the same as (3) where .

V. SIMULATIONMODEL

We utilize discrete event simulation to model wireless data access. In the simulation two types of events are defined: Access

and Update. There are data objects in the application server and the cache size in a wireless terminal is . The inter-Access event arrival times for an object are drawn from an expo-nential distribution with rate , based on (23), which will be elaborated in Section VI. Note that the exponential restriction can be easily relaxed in our simulation model. The

inter-Up-date event arrival times for are drawn from a Gamma distri-bution with mean and the variance . We are particularly interested in the Gamma distribution. It has been shown that the distribution of any positive random variable can be approx-imated by a mixture of Gamma distributions (see [8, Lemma 3.9]). When , the Gamma distribution becomes an ex-ponential distribution, which can be used to provide the mean value analysis [9]. It suffices to use the Gamma distributions with different shape and scale parameters to represent different interupdate arrival time distributions [13]. We first describe the CB simulation. The output measures of the simulation are (the number of data accesses), (the number of data ac-cesses that result in data object transmissions from the applica-tion server to the wireless terminal), and (the number of invalidations). In the CB simulation, these output measures are used to compute and as follows:

and (21)

The flowchart of the CB simulation is shown in Fig. 7, and is described as follows.

Step 1. Initially, all data objects are marked valid. The first Update and Access

(8)

events are generated. The timestamps of these events are computed based on the interarrival time distributions previ-ously mentioned. The events are inserted in the event list in the nondecreasing timestamp order.

Step 2. The event at the head of the event list is processed.

Step 3. If the event type of is Access, then Step 6 is executed. Otherwise Step 4 is executed.

Step 4. The updated object is marked in-valid. For CB, if the object is in the cache, the cache entry is purged.

Step 5. The next Update event is generated and inserted in the event list.

Step 6. If the event type of is Access at Step 3, then is incremented by one. Step 7. If 10 000 000 Access events have

been processed, then Step 8 is executed. Otherwise, the simulation proceeds to Step 10. In our simulation experiments, the confidence intervals of the 99% con-fidence levels are within 3% of the mean values in most cases.

Steps 8 and 9. The output measures and are computed by using (21), and the cost can be computed by using (21) and (19). Then the simulation run termi-nates.

Steps 10–14. If the cached object is in-valid at Step 10, then is incre-mented by one. The valid copy is sent from the application server to the cache, and the cached object is set to valid at Step 11. In this case, the object is ob-tained from the application server and

is incremented by one at Step 13. The object is placed in the head of the cache according to the LRU policy at Step 14. Then the simulation flow proceeds to Step 15. If the object is valid, then two cases are considered at Step 12. If the object is in the cache, then it is an effective cache hit, and the flow jumps to Step 14. If the object is not in the cache at Step 12, it implies that the object has been removed from the cache before it is accessed again. Steps 13 and 14 are executed.

Step 15. The next Access event is gener-ated and inserted in the event list.

The simulation flowchart for PER is similar to that in Fig. 7 except that at Step 4, the invalid object is not removed from the cache. Also the variable at Step 11 is not needed in the PER simulation.

Fig. 8. Cutoff Zipf-like distribution (N = 100).

Note that Step 14 can be modified to simulate different cache replacement policies. In [4], similar results were observed for policies including LRU, MFU, First In First Out, Second Chance, and TTL. This paper only considers LRU. The effects of other replacement policies are out of the scope of this paper, and the reader is referred to [4] and the references therein.

VI. NUMERICALEXAMPLES

This section uses the business-card service to illustrate the performance of wireless data access. Our study assumes that the relative frequency with which the data objects are accessed follows a generalization of Zipf’s law [1], [26]. Let the data objects (of the application server) be ranked in order of their popularity where is the th most popular object. Let be the probability that an incoming access is for . If has a “cutoff” Zipf-like distribution, then for

where (22)

If the net access rate to data objects is , then from (22), the data access rate to is

(23) Fig. 8 plots as a function of . It is clear that the larger the value, the better the temporal locality. In [1], the values are reported to be in the range of 0.64–0.98. When , (22) is simplified as for all , and the data access rates to all objects are the same, which is the situation we considered in Section IV. Table II shows that for , the analytic and simu-lation models are consistent. [In this table, is defined in (24)]. Therefore, both the analytic model and the simulation imple-mentation are validated. Since the cache performance is better for a larger value, the analytic analysis in Section IV (where ) can also be considered as a worst case analysis. For , the derivations in the analytic model will become very tedious. In this case, we investigate the performance of wireless data access through the simulation model.

(9)

TABLE II

THEp ANDp VALUES: ANALYTICANALYSISVERSUSSIMULATION (N = 100, K = 50, ff = 1= ). (a) THEEFFECTIVEHITRATIO FOR

PER. (b) THEEFFECTIVEHITRATIO FORCB

(a)

(b)

TABLE III

THEp VALUES: ANALYTICANALYSISVERSUSSIMULATION (N = 100, = 0:8)

As mentioned in Section V, we assume that the inter-Update arrival times for are drawn from a Gamma distribution with mean and the variance . The variance may have signifi-cant impact on . By varying , we compare the values of simulation and (20). Table III indicates that the analytic and the simulation results are consistent. In this table, the parameter is defined as follows. Since we assume that the update rate to a data object is , the net update rate to the business-card data-base is , and the access-to-update ratio for the whole system can be defined as

(24) In the business-card application, the standard vCard information is seldom modified. On the other hand, the CALENDAR field may be frequently updated. Therefore, may range from 0.01 (e.g., the CALENDAR field is updated daily) to 100 (e.g., the

CALENDAR field is not provided and the address information

is infrequently updated).

In iSMS, the information exchanged between the application server and the wireless terminal is delivered through short

sages. The maximum size of the user data in a GSM short mes-sage is 140 B [12]. By including the SMS header overhead and considering the maximum size of the user data field, we have

B and B (25)

Note that the access request, invalidation, invalidation acknowl-edgment, and affirmative messages are delivered by single short messages. The vCard transmission is done via multiple mes-sages using the SMS concatenation technique. Also note that the uplink transmission cost may be different from the down-link transmission cost. For simplicity, we assume the updown-link and downlink transmission costs are the same.

Based on the above discussion, we investigate the effects of and as follows. This study assumes . For other values, similar results are observed and will not be pre-sented.

A. Effects of and

Fig. 9 plots and against with various values. When is small (e.g., ), it is likely that a data object has been updated before the next access arrives. Therefore, the cache performance is dominated by the update frequency, and the cache sizes only insignificantly affect the effective hit ra-tios. When is large (e.g., ), updates occur infrequently, which do not have significant impact on the effective hit ratio. Therefore, the effective hit ratio is only affected by the cache size. In this case, if we increase the cache size from to , the effective hit ratio is improved by 20%. If the cache size is increased from to , the improvement is 30%. The curves in Fig. 9 show an interesting

phenom-enon that when , for a small , and

for a large . This phenomenon can be explained by the fact that decreases as increases (see Table III). Let , and the wireless transmission costs satisfy (25). Then from (18) and (19), we have

if where

B. Effects of

Fig. 10 indicates that the effective hit ratio increases as increases. The effect of is significant when . The slopes of the curves are relatively flat when , which implies that the change of only has insignificant impact on the effective hit ratios. In other words, when , not enough temporal locality can be explored to increase the effective hit ratio. The curves in Fig. 10 shows similar results as that in Fig. 9: when is small, and

when is large, which is independent of the values. When , we observe that when is small, . When

is large, .

C. Effects of the Object Size

Fig. 11 indicates that PER is more likely to outperform CB when the object size is small. For example, when ,

for , and the result reverses for .

(10)

Fig. 9. Effects ofK and  (N = 100; = 0:8;  = 1= ).

Fig. 10. Effects of (N = 100; K = 20;  = 1= ).

D. Effects of

Fig. 12 shows that the effective hit ratio increases as the vari-ance of the interdata update intervals increases. When in-creases, more long and short interdata update intervals are ob-served. That is, it is likely to either find many updates occur-ring between two data accesses or no update is found between the two accesses. Therefore, as increases, decreases (see Table III) and the effective hit ratio increases. This effect is sig-nificant when is small (when the update frequency is high).

The curves in Fig. 12 indicate that for , no matter how changes. For ,

when is small, and when is large. This phenomenon can be explained by (18) and (19) and the fact that

decreases as increases.

E. Effects of PER and CB on the Effective Hit Ratio

It is clear that the inequality always holds be-cause invalid data objects may exist in the cache when LRU is

(11)

Fig. 11. Effects of the object size (N = 100; K = 20;  = 1;  = 1= ).

Fig. 12. Effects of (N = 100; K = 20; = 0:8).

exercised with PER. In this case, valid data objects may be re-moved from the cache while the invalid objects are kept in the cache. Fig. 9 indicates that both and have similar per-formance when or . As we mentioned before, when is large, the effective hit ratio is only affected by the cache size, and when is small, the effective hit ratio is only affected by the data update frequency. Therefore, the CB and PER protocols have different effects on the hit ratios only when . Fig. 10 indicates that the discrepancy between and becomes insignificant when is large. In this case, temporal locality is high, and no matter which data access protocol is exercised, only a few objects are accessed. These accesses are likely to be cache hits. Fig. 12 shows that when , the discrepancy between and becomes sig-nificant as increases. On the other hand, when , this discrepancy becomes less significant as increases. These op-posite phenomena are due to complicated interactions between

and .

Let and be the “cost improvements” of PER and CB over the case when there is no cache in the wireless terminal.

Fig. 13. Improvements of PER and CB over the cases when there is no cache (N = 100, = 0:8,  = 1= ).

Let be the cost of accessing an object when there is no cache. Then

and

Note that from (25), B. Fig. 13 plots

and against . The figure indicates that PER is al-ways better than the case when there is no cache. When , CB’s performance is worse than the case when there is no cache.

When , the improvements and can be in

the range of 40%–70%. In this case, . That is, 40%–70% of the wireless bandwidth can be saved by exercising the strongly consistent data access protocols with LRU cache re-placement.

VII. CONCLUSION

This paper investigated the performance of wireless data ac-cess with cache. The LRU replacement policy is considered in our study. To support strongly consistent data access, two data access algorithms, PER and CB, were studied. The cache per-formance is measured by the effective cache hit ratio ( and ) and the wireless transmission costs ( and ). We used the business-card service to illustrate the performance of wireless data access. This application is a generalization of phone book, a popular feature of mobile terminals. Let be the access-to-update ratio [see (24)]. Our study indicated the fol-lowing.

• When is small, the effective cache hit ratio is affected by the data updates and is insignificantly affected by the cache size. On the other hand, when is large, the effective hit ratio is affected by the cache size, and is insignificantly affected by the data update frequency.

• When is very large or very small, the effective hit ratios and have similar performance. When has a moderate value (e.g., ), the data access pro-tocols PER and CB have different effects on the effective hit ratios. In particular, is always larger than . • For the wireless transmission costs and ,

ex-cept for a very large , we observed that when the tem-poral locality is small, . When is large

(12)

. is always smaller than (the cost for the case when there is no cache). When is very small, it is possible that . When is very large, significant improvements of PER and CB are ob-served over the case when there is no cache. In this case,

.

As we mentioned before, many wireless applications exhibit temporal locality, and the number of the potential data ob-jects that may be accessed by a wireless terminal is not signifi-cantly larger than the cache size. Our study indicated that if is no more than twice of the cache size and the data access is reasonably frequent, then more than 50% of effective cache hit ratio can be observed. This result is consistent with the experi-ments reported in the WAP white paper [23].

ACKNOWLEDGMENT

The authors would like to thank the three anonymous reviewers. Their comments have significantly improved the quality of this paper. Partial work of this paper was developed by K. H. Chang under the guidance of Y.-B. Lin.

REFERENCES

[1] L. Berslau, P. Cao, L. Fan, G. Phillips, and Shenker, “Web caching and Zipf-like distributions: Evidence and implications,” in Proc. IEEE

IN-FOCOM, vol. 1, Mar. 1999, pp. 126–134.

[2] G. Cao, “A scalable low-latency cache invalidation strategy for mobile environments,” in ACM Mobicom, Aug. 6–11, 2000, pp. 200–209. [3] G. H. Cao, “Proactive power-aware cache management for mobile

com-puting systems,” IEEE Trans. Comput., vol. 51, pp. 608–621, June 2002. [4] K.-H. Chang, “Effects of cache size on data access for wireless applica-tion protocol (WAP),” M.S. thesis, Dept. Comput. Sci. and Inform. Eng., National Chiao Tung Univ., Hsinchu, Taiwan, R.O.C., 2001.

[5] F. Dawson, “vCard MIME Directory Profile,” Internet Engineering Task Force, RFC 2426, 1998.

[6] J. Howard, M. Kazar, S. Menees, D. Nichols, M. Satyanarayanan, R. Sidebotham, and M. West, “Scale and performance in a distributed file system,” ACM Trans. Comput. Syst., vol. 6, no. 1, pp. 51–58, Feb. 1988. [7] A. Kahol, S. Khurana, S. Gupta, and P. Srimani, “An efficient cache maintenance scheme for mobile environment,” in Proc. Int. Conf.

Dis-tributed Computing Systems, Apr. 2000, pp. 530–537.

[8] F. P. Kelly, Reversibility and Stochastic Networks. New York: Wiley, 1979.

[9] E. D. Lazowska, J. Zahorjan, G. S. Graham, and K. C. Sevcik,

Quantita-tive System Performance. Englewood Cliffs, NJ: Prentice-Hall, 1984. [10] Y.-B. Lin, “Determining the user locations for personal communications networks,” IEEE Trans. Veh. Technol., vol. 43, pp. 466–473, Aug. 1994. [11] Y.-B. Lin and Y.-C. Chang, “Modeling frequently accessed wireless data with weak consistency,” J. Inform. Sci. Eng., vol. 18, pp. 581–600, 2002. [12] Y.-B. Lin and I. Chlamtac, Wireless and Mobile Network

Architec-tures. New York: Wiley, 2001.

[13] Y.-B. Lin, W. R. Lai, and R. J. Chen, “Performance analysis for dual band PCS networks,” IEEE Trans. Comput., vol. 49, pp. 148–159, Feb. 2000.

[14] M. Nelson, B. Welch, and J. Ousterhout, “Caching in the sprite network file system,” ACM Trans. Comput. Syst., vol. 6, no. 1, pp. 134–154, Feb. 1988.

[15] C. H. Rao, D.-F. Chang, and Y.-B. Lin, “iSMS: An integration platform for short message service and IP networks,” IEEE Network, vol. 15, pp. 48–55, Mar./Apr. 2001.

[16] C. H. Rao, Y.-H. Cheng, K.-H. Chang, and Y.-B. Lin, “iMail: A WAP mail retrieving system,” Inform. Sci., vol. 151, pp. 71–91, 2002. [17] S. M. Ross, Stochastic Processes. New York: Wiley, 1996.

[18] M. Satyanarayanan et al., “Coda: A highly available file system for a distributed workstation environment,” IEEE Trans. Comput., vol. 39, pp. 447–459, Apr. 1990.

[19] A. Silberschatz, J. L. Peterson, and P. Galvin, Operating System

Con-cepts, 3rd ed. Reading, MA: Addison-Wesley, 1991.

[20] H. Stone, High-Performance Computer Architecture. Reading, MA: Addison-Wesley, 1990.

[21] (1998) Wireless Application Protocol Architecture Specification. WAP Forum Tech. Report. [Online]Available: http://www.wapforum.org [22] (1998) Wireless Application Protocol Cache Model Specification. WAP

Forum Tech. Report. [Online]Available: http://www.wapforum.org [23] (1999) Wireless Application Protocol White Paper. WAP Forum Tech.

Report. [Online]Available: http://www.wapforum.org

[24] (1999) Wireless Application Protocol V1.1 to V1.2. WAP Forum Tech. Report. [Online]Available: http://www.wapforum.org

[25] J. Yin, L. Alvisi, M. Dahlin, and C. Lin, “Volume leases for consistency in large-scale systems,” IEEE Trans. Knowledge Data Eng., vol. 11, pp. 563–576, July/Aug. 1999.

[26] G. K. Zipf, “Relative frequency as a determinant of phonetic change,”

Reprinted from the Harvard Studies in Classical Philiology, vol. XL,

1929.

Yi-Bing Lin (M’96–S’96–F’03) received the B.S.E.E. degree from National Cheng Kung Univer-sity, Tainan, Taiwan, R.O.C., in 1983, and the Ph.D. degree in computer science from the University of Washington, Seattle, in 1990.

From 1990 to 1995, he was with the Applied Research Area at Bell Communications Research (Bellcore), Morristown, NJ. In 1995, he was appointed Professor in the Department of Computer Science and Information Engineering (CSIE), National Chiao Tung University (NCTU), Hsinchu, Taiwan, R.O.C. In 1996, he was appointed as Deputy Director of Micro-electronics and Information Systems Research Center, NCTU. From 1997 to 1999, he was the Chairman of the CSIE, NCTU. His current research interests include design and analysis of personal communications services network, mobile computing, distributed simulation, and performance modeling. He has published over 150 journal articles and more than 200 conference papers.

Wei-Ru Lai received the B.E. degree and the

Ph.D. degree in computer science and information engineering from the National Chiao Tung Univer-sity, Hsinchu, Taiwan, R.O.C., in 1991 and 1999, respectively.

From 1999 to 2001, she was an Assistant Professor in the Department of Information Management, Chin-Min College, Miaoli, Taiwan, R.O.C. From 1999 to 2000, she was the Chairman of that de-partment. She is currently an Assistant Professor in the Electrical Engineering Department, Yuan Ze University, Chun-Li, Taiwan, R.O.C. Her current research interests include design and analysis of personal communications service networks.

Jen-Jee Chen received the B.E. degree in computer

science and information engineering from the National Chiao Tung University (NCTU), Hsinchu, Taiwan, R.O.C., in 2001. He is currently working toward the Ph.D. degree at NCTU.

His research interests include design and analysis of a personal communications services network, computer telephony integration, mobile computing, and performance modeling.

數據

Fig. 1. Example of wireless application platform.
Fig. 3. Data access in PER.
Fig. 5. Timing diagram I.
Fig. 6. Timing diagram II.
+6

參考文獻

相關文件

– Local miss rate— misses in this cache divided by the total number of memory accesses to this cache (Miss rate L2 ). – Global miss rate—misses in this cache divided by the total

– The The readLine readLine method is the same method used to read method is the same method used to read  from the keyboard, but in this case it would read from a 

• The memory storage unit holds instructions and data for a running program.. • A bus is a group of wires that transfer data from one part to another (data,

Consequently, these data are not directly useful in understanding the effects of disk age on failure rates (the exception being the first three data points, which are dominated by

Bootstrapping is a general approach to statistical in- ference based on building a sampling distribution for a statistic by resampling from the data at hand.. • The

(a) The magnitude of the gravitational force exerted by the planet on an object of mass m at its surface is given by F = GmM / R 2 , where M is the mass of the planet and R is

● In computer science, a data structure is a data organization, management, and storage format that enables efficient access and

The Model-Driven Simulation (MDS) derives performance information based on the application model by analyzing the data flow, working set, cache utilization, work- load, degree